(()=>{var e={6734:function(e,t,r){"use strict";// EXPORTS
r.d(t,{A:()=>/* binding */eO});// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+sheet@1.4.0/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js
var n=false;/*

Based off glamor's StyleSheet, thanks Sunil ❤️

high performance StyleSheet for css-in-js systems

- uses multiple style tags behind the scenes for millions of rules
- uses `insertRule` for appending in production for *much* faster performance

// usage

import { StyleSheet } from '@emotion/sheet'

let styleSheet = new StyleSheet({ key: '', container: document.head })

styleSheet.insert('#box { border: 1px solid red; }')
- appends a css rule into the stylesheet

styleSheet.flush()
- empties the stylesheet of all its contents

*/function i(e){if(e.sheet){return e.sheet}// this weirdness brought to you by firefox
/* istanbul ignore next */for(var t=0;t<document.styleSheets.length;t++){if(document.styleSheets[t].ownerNode===e){return document.styleSheets[t]}}// this function should always return with a value
// TS can't understand it though so we make it stop complaining here
return undefined}function a(e){var t=document.createElement("style");t.setAttribute("data-emotion",e.key);if(e.nonce!==undefined){t.setAttribute("nonce",e.nonce)}t.appendChild(document.createTextNode(""));t.setAttribute("data-s","");return t}var o=/*#__PURE__*/function(){// Using Node instead of HTMLElement since container may be a ShadowRoot
function e(e){var t=this;this._insertTag=function(e){var r;if(t.tags.length===0){if(t.insertionPoint){r=t.insertionPoint.nextSibling}else if(t.prepend){r=t.container.firstChild}else{r=t.before}}else{r=t.tags[t.tags.length-1].nextSibling}t.container.insertBefore(e,r);t.tags.push(e)};this.isSpeedy=e.speedy===undefined?!n:e.speedy;this.tags=[];this.ctr=0;this.nonce=e.nonce;// key is the value of the data-emotion attribute, it's used to identify different sheets
this.key=e.key;this.container=e.container;this.prepend=e.prepend;this.insertionPoint=e.insertionPoint;this.before=null}var t=e.prototype;t.hydrate=function e(e){e.forEach(this._insertTag)};t.insert=function e(e){// the max length is how many rules we have per style tag, it's 65000 in speedy mode
// it's 1 in dev because we insert source maps that map a single rule to a location
// and you can only have one source map per style tag
if(this.ctr%(this.isSpeedy?65e3:1)===0){this._insertTag(a(this))}var t=this.tags[this.tags.length-1];if(this.isSpeedy){var r=i(t);try{// this is the ultrafast version, works across browsers
// the big drawback is that the css won't be editable in devtools
r.insertRule(e,r.cssRules.length)}catch(e){}}else{t.appendChild(document.createTextNode(e))}this.ctr++};t.flush=function e(){this.tags.forEach(function(e){var t;return(t=e.parentNode)==null?void 0:t.removeChild(e)});this.tags=[];this.ctr=0};return e}();// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Utility.js
/**
 * @param {number}
 * @return {number}
 */var s=Math.abs;/**
 * @param {number}
 * @return {string}
 */var l=String.fromCharCode;/**
 * @param {object}
 * @return {object}
 */var u=Object.assign;/**
 * @param {string} value
 * @param {number} length
 * @return {number}
 */function c(e,t){return v(e,0)^45?(((t<<2^v(e,0))<<2^v(e,1))<<2^v(e,2))<<2^v(e,3):0}/**
 * @param {string} value
 * @return {string}
 */function d(e){return e.trim()}/**
 * @param {string} value
 * @param {RegExp} pattern
 * @return {string?}
 */function f(e,t){return(e=t.exec(e))?e[0]:e}/**
 * @param {string} value
 * @param {(string|RegExp)} pattern
 * @param {string} replacement
 * @return {string}
 */function p(e,t,r){return e.replace(t,r)}/**
 * @param {string} value
 * @param {string} search
 * @return {number}
 */function h(e,t){return e.indexOf(t)}/**
 * @param {string} value
 * @param {number} index
 * @return {number}
 */function v(e,t){return e.charCodeAt(t)|0}/**
 * @param {string} value
 * @param {number} begin
 * @param {number} end
 * @return {string}
 */function g(e,t,r){return e.slice(t,r)}/**
 * @param {string} value
 * @return {number}
 */function m(e){return e.length}/**
 * @param {any[]} value
 * @return {number}
 */function b(e){return e.length}/**
 * @param {any} value
 * @param {any[]} array
 * @return {any}
 */function _(e,t){return t.push(e),e}/**
 * @param {string[]} array
 * @param {function} callback
 * @return {string}
 */function y(e,t){return e.map(t).join("")};// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Tokenizer.js
var w=1;var x=1;var A=0;var E=0;var k=0;var I="";/**
 * @param {string} value
 * @param {object | null} root
 * @param {object | null} parent
 * @param {string} type
 * @param {string[] | string} props
 * @param {object[] | string} children
 * @param {number} length
 */function C(e,t,r,n,i,a,o){return{value:e,root:t,parent:r,type:n,props:i,children:a,line:w,column:x,length:o,return:""}}/**
 * @param {object} root
 * @param {object} props
 * @return {object}
 */function Y(e,t){return u(C("",null,null,"",null,null,0),e,{length:-e.length},t)}/**
 * @return {number}
 */function S(){return k}/**
 * @return {number}
 */function T(){k=E>0?v(I,--E):0;if(x--,k===10)x=1,w--;return k}/**
 * @return {number}
 */function O(){k=E<A?v(I,E++):0;if(x++,k===10)x=1,w++;return k}/**
 * @return {number}
 */function D(){return v(I,E)}/**
 * @return {number}
 */function F(){return E}/**
 * @param {number} begin
 * @param {number} end
 * @return {string}
 */function P(e,t){return g(I,e,t)}/**
 * @param {number} type
 * @return {number}
 */function R(e){switch(e){// \0 \t \n \r \s whitespace token
case 0:case 9:case 10:case 13:case 32:return 5;// ! + , / > @ ~ isolate token
case 33:case 43:case 44:case 47:case 62:case 64:case 126:// ; { } breakpoint token
case 59:case 123:case 125:return 4;// : accompanied token
case 58:return 3;// " ' ( [ opening delimit token
case 34:case 39:case 40:case 91:return 2;// ) ] closing delimit token
case 41:case 93:return 1}return 0}/**
 * @param {string} value
 * @return {any[]}
 */function H(e){return w=x=1,A=m(I=e),E=0,[]}/**
 * @param {any} value
 * @return {any}
 */function M(e){return I="",e}/**
 * @param {number} type
 * @return {string}
 */function N(e){return d(P(E-1,U(e===91?e+2:e===40?e+1:e)))}/**
 * @param {string} value
 * @return {string[]}
 */function L(e){return M(q(H(e)))}/**
 * @param {number} type
 * @return {string}
 */function K(e){while(k=D())if(k<33)O();else break;return R(e)>2||R(k)>3?"":" "}/**
 * @param {string[]} children
 * @return {string[]}
 */function q(e){while(O())switch(R(k)){case 0:append(V(E-1),e);break;case 2:append(N(k),e);break;default:append(from(k),e)}return e}/**
 * @param {number} index
 * @param {number} count
 * @return {string}
 */function B(e,t){while(--t&&O())// not 0-9 A-F a-f
if(k<48||k>102||k>57&&k<65||k>70&&k<97)break;return P(e,F()+(t<6&&D()==32&&O()==32))}/**
 * @param {number} type
 * @return {number}
 */function U(e){while(O())switch(k){// ] ) " '
case e:return E;// " '
case 34:case 39:if(e!==34&&e!==39)U(k);break;// (
case 40:if(e===41)U(e);break;// \
case 92:O();break}return E}/**
 * @param {number} type
 * @param {number} index
 * @return {number}
 */function j(e,t){while(O())// //
if(e+k===47+10)break;else if(e+k===42+42&&D()===47)break;return"/*"+P(t,E-1)+"*"+l(e===47?e:O())}/**
 * @param {number} index
 * @return {string}
 */function V(e){while(!R(D()))O();return P(e,E)};// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Enum.js
var W="-ms-";var z="-moz-";var G="-webkit-";var Q="comm";var $="rule";var X="decl";var J="@page";var Z="@media";var ee="@import";var et="@charset";var er="@viewport";var en="@supports";var ei="@document";var ea="@namespace";var eo="@keyframes";var es="@font-face";var el="@counter-style";var eu="@font-feature-values";var ec="@layer";// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Serializer.js
/**
 * @param {object[]} children
 * @param {function} callback
 * @return {string}
 */function ed(e,t){var r="";var n=b(e);for(var i=0;i<n;i++)r+=t(e[i],i,e,t)||"";return r}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 * @param {function} callback
 * @return {string}
 */function ef(e,t,r,n){switch(e.type){case ec:if(e.children.length)break;case ee:case X:return e.return=e.return||e.value;case Q:return"";case eo:return e.return=e.value+"{"+ed(e.children,n)+"}";case $:e.value=e.props.join(",")}return m(r=ed(e.children,n))?e.return=e.value+"{"+r+"}":""};// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Middleware.js
/**
 * @param {function[]} collection
 * @return {function}
 */function ep(e){var t=b(e);return function(r,n,i,a){var o="";for(var s=0;s<t;s++)o+=e[s](r,n,i,a)||"";return o}}/**
 * @param {function} callback
 * @return {function}
 */function eh(e){return function(t){if(!t.root){if(t=t.return)e(t)}}}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 * @param {function} callback
 */function ev(e,t,r,n){if(e.length>-1){if(!e.return)switch(e.type){case DECLARATION:e.return=prefix(e.value,e.length,r);return;case KEYFRAMES:return serialize([copy(e,{value:replace(e.value,"@","@"+WEBKIT)})],n);case RULESET:if(e.length)return combine(e.props,function(t){switch(match(t,/(::plac\w+|:read-\w+)/)){// :read-(only|write)
case":read-only":case":read-write":return serialize([copy(e,{props:[replace(t,/:(read-\w+)/,":"+MOZ+"$1")]})],n);// :placeholder
case"::placeholder":return serialize([copy(e,{props:[replace(t,/:(plac\w+)/,":"+WEBKIT+"input-$1")]}),copy(e,{props:[replace(t,/:(plac\w+)/,":"+MOZ+"$1")]}),copy(e,{props:[replace(t,/:(plac\w+)/,MS+"input-$1")]})],n)}return""})}}}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 */function eg(e){switch(e.type){case RULESET:e.props=e.props.map(function(t){return combine(tokenize(t),function(t,r,n){switch(charat(t,0)){// \f
case 12:return substr(t,1,strlen(t));// \0 ( + > ~
case 0:case 40:case 43:case 62:case 126:return t;// :
case 58:if(n[++r]==="global")n[r]="",n[++r]="\f"+substr(n[r],r=1,-1);// \s
case 32:return r===1?"":t;default:switch(r){case 0:e=t;return sizeof(n)>1?"":t;case r=sizeof(n)-1:case 2:return r===2?t+e+e:t+e;default:return t}}})})}};// CONCATENATED MODULE: ./node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Parser.js
/**
 * @param {string} value
 * @return {object[]}
 */function em(e){return M(eb("",null,null,null,[""],e=H(e),0,[0],e))}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {string[]} rule
 * @param {string[]} rules
 * @param {string[]} rulesets
 * @param {number[]} pseudo
 * @param {number[]} points
 * @param {string[]} declarations
 * @return {object}
 */function eb(e,t,r,n,i,a,o,s,u){var c=0;var d=0;var f=o;var g=0;var b=0;var y=0;var w=1;var x=1;var A=1;var E=0;var k="";var I=i;var C=a;var Y=n;var S=k;while(x)switch(y=E,E=O()){// (
case 40:if(y!=108&&v(S,f-1)==58){if(h(S+=p(N(E),"&","&\f"),"&\f")!=-1)A=-1;break}// " ' [
case 34:case 39:case 91:S+=N(E);break;// \t \n \r \s
case 9:case 10:case 13:case 32:S+=K(y);break;// \
case 92:S+=B(F()-1,7);continue;// /
case 47:switch(D()){case 42:case 47:_(ey(j(O(),F()),t,r),u);break;default:S+="/"}break;// {
case 123*w:s[c++]=m(S)*A;// } ; \0
case 125*w:case 59:case 0:switch(E){// \0 }
case 0:case 125:x=0;// ;
case 59+d:if(A==-1)S=p(S,/\f/g,"");if(b>0&&m(S)-f)_(b>32?ew(S+";",n,r,f-1):ew(p(S," ","")+";",n,r,f-2),u);break;// @ ;
case 59:S+=";";// { rule/at-rule
default:_(Y=e_(S,t,r,c,d,i,s,k,I=[],C=[],f),a);if(E===123)if(d===0)eb(S,t,Y,Y,I,a,f,s,C);else switch(g===99&&v(S,3)===110?100:g){// d l m s
case 100:case 108:case 109:case 115:eb(e,Y,Y,n&&_(e_(e,Y,Y,0,0,i,s,k,i,I=[],f),C),i,C,f,s,n?I:C);break;default:eb(S,Y,Y,Y,[""],C,0,s,C)}}c=d=b=0,w=A=1,k=S="",f=o;break;// :
case 58:f=1+m(S),b=y;default:if(w<1){if(E==123)--w;else if(E==125&&w++==0&&T()==125)continue}switch(S+=l(E),E*w){// &
case 38:A=d>0?1:(S+="\f",-1);break;// ,
case 44:s[c++]=(m(S)-1)*A,A=1;break;// @
case 64:// -
if(D()===45)S+=N(O());g=D(),d=f=m(k=S+=V(F())),E++;break;// -
case 45:if(y===45&&m(S)==2)w=0}}return a}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {number} index
 * @param {number} offset
 * @param {string[]} rules
 * @param {number[]} points
 * @param {string} type
 * @param {string[]} props
 * @param {string[]} children
 * @param {number} length
 * @return {object}
 */function e_(e,t,r,n,i,a,o,l,u,c,f){var h=i-1;var v=i===0?a:[""];var m=b(v);for(var _=0,y=0,w=0;_<n;++_)for(var x=0,A=g(e,h+1,h=s(y=o[_])),E=e;x<m;++x)if(E=d(y>0?v[x]+" "+A:p(A,/&\f/g,v[x])))u[w++]=E;return C(e,t,r,i===0?$:l,u,c,f)}/**
 * @param {number} value
 * @param {object} root
 * @param {object?} parent
 * @return {object}
 */function ey(e,t,r){return C(e,t,r,Q,l(S()),g(e,2,-2),0)}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {number} length
 * @return {object}
 */function ew(e,t,r,n){return C(e,t,r,X,g(e,0,n),g(e,n+1,-1),n)};// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+cache@11.14.0/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js
var ex=function e(e,t,r){var n=0;var i=0;while(true){n=i;i=D();// &\f
if(n===38&&i===12){t[r]=1}if(R(i)){break}O()}return P(e,E)};var eA=function e(e,t){// pretend we've started with a comma
var r=-1;var n=44;do{switch(R(n)){case 0:// &\f
if(n===38&&D()===12){// this is not 100% correct, we don't account for literal sequences here - like for example quoted strings
// stylis inserts \f after & to know when & where it should replace this sequence with the context selector
// and when it should just concatenate the outer and inner selectors
// it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here
t[r]=1}e[r]+=ex(E-1,t,r);break;case 2:e[r]+=N(n);break;case 4:// comma
if(n===44){// colon
e[++r]=D()===58?"&\f":"";t[r]=e[r].length;break}// fallthrough
default:e[r]+=l(n)}}while(n=O())return e};var eE=function e(e,t){return M(eA(H(e),t))};// WeakSet would be more appropriate, but only WeakMap is supported in IE11
var ek=/* #__PURE__ */new WeakMap;var eI=function e(e){if(e.type!=="rule"||!e.parent||// positive .length indicates that this rule contains pseudo
// negative .length indicates that this rule has been already prefixed
e.length<1){return}var t=e.value;var r=e.parent;var n=e.column===r.column&&e.line===r.line;while(r.type!=="rule"){r=r.parent;if(!r)return}// short-circuit for the simplest case
if(e.props.length===1&&t.charCodeAt(0)!==58&&!ek.get(r)){return}// if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)
// then the props has already been manipulated beforehand as they that array is shared between it and its "rule parent"
if(n){return}ek.set(e,true);var i=[];var a=eE(t,i);var o=r.props;for(var s=0,l=0;s<a.length;s++){for(var u=0;u<o.length;u++,l++){e.props[l]=i[s]?a[s].replace(/&\f/g,o[u]):o[u]+" "+a[s]}}};var eC=function e(e){if(e.type==="decl"){var t=e.value;if(t.charCodeAt(0)===108&&// charcode for b
t.charCodeAt(2)===98){// this ignores label
e["return"]="";e.value=""}}};/* eslint-disable no-fallthrough */function eY(e,t){switch(c(e,t)){// color-adjust
case 5103:return G+"print-"+e+e;// animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return G+e+e;// appearance, user-select, transform, hyphens, text-size-adjust
case 5349:case 4246:case 4810:case 6968:case 2756:return G+e+z+e+W+e+e;// flex, flex-direction
case 6828:case 4268:return G+e+W+e+e;// order
case 6165:return G+e+W+"flex-"+e+e;// align-items
case 5187:return G+e+p(e,/(\w+).+(:[^]+)/,G+"box-$1$2"+W+"flex-$1$2")+e;// align-self
case 5443:return G+e+W+"flex-item-"+p(e,/flex-|-self/,"")+e;// align-content
case 4675:return G+e+W+"flex-line-pack"+p(e,/align-content|flex-|-self/,"")+e;// flex-shrink
case 5548:return G+e+W+p(e,"shrink","negative")+e;// flex-basis
case 5292:return G+e+W+p(e,"basis","preferred-size")+e;// flex-grow
case 6060:return G+"box-"+p(e,"-grow","")+G+e+W+p(e,"grow","positive")+e;// transition
case 4554:return G+p(e,/([^-])(transform)/g,"$1"+G+"$2")+e;// cursor
case 6187:return p(p(p(e,/(zoom-|grab)/,G+"$1"),/(image-set)/,G+"$1"),e,"")+e;// background, background-image
case 5495:case 3959:return p(e,/(image-set\([^]*)/,G+"$1"+"$`$1");// justify-content
case 4968:return p(p(e,/(.+:)(flex-)?(.*)/,G+"box-pack:$3"+W+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+G+e+e;// (margin|padding)-inline-(start|end)
case 4095:case 3583:case 4068:case 2532:return p(e,/(.+)-inline(.+)/,G+"$1$2")+e;// (min|max)?(width|height|inline-size|block-size)
case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:// stretch, max-content, min-content, fill-available
if(m(e)-1-t>6)switch(v(e,t+1)){// (m)ax-content, (m)in-content
case 109:// -
if(v(e,t+4)!==45)break;// (f)ill-available, (f)it-content
case 102:return p(e,/(.+:)(.+)-([^]+)/,"$1"+G+"$2-$3"+"$1"+z+(v(e,t+3)==108?"$3":"$2-$3"))+e;// (s)tretch
case 115:return~h(e,"stretch")?eY(p(e,"stretch","fill-available"),t)+e:e}break;// position: sticky
case 4949:// (s)ticky?
if(v(e,t+1)!==115)break;// display: (flex|inline-flex)
case 6444:switch(v(e,m(e)-3-(~h(e,"!important")&&10))){// stic(k)y
case 107:return p(e,":",":"+G)+e;// (inline-)?fl(e)x
case 101:return p(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+G+(v(e,14)===45?"inline-":"")+"box$3"+"$1"+G+"$2$3"+"$1"+W+"$2box$3")+e}break;// writing-mode
case 5936:switch(v(e,t+11)){// vertical-l(r)
case 114:return G+e+W+p(e,/[svh]\w+-[tblr]{2}/,"tb")+e;// vertical-r(l)
case 108:return G+e+W+p(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;// horizontal(-)tb
case 45:return G+e+W+p(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return G+e+W+e+e}return e}var eS=function e(e,t,r,n){if(e.length>-1){if(!e["return"])switch(e.type){case X:e["return"]=eY(e.value,e.length);break;case eo:return ed([Y(e,{value:p(e.value,"@","@"+G)})],n);case $:if(e.length)return y(e.props,function(t){switch(f(t,/(::plac\w+|:read-\w+)/)){// :read-(only|write)
case":read-only":case":read-write":return ed([Y(e,{props:[p(t,/:(read-\w+)/,":"+z+"$1")]})],n);// :placeholder
case"::placeholder":return ed([Y(e,{props:[p(t,/:(plac\w+)/,":"+G+"input-$1")]}),Y(e,{props:[p(t,/:(plac\w+)/,":"+z+"$1")]}),Y(e,{props:[p(t,/:(plac\w+)/,W+"input-$1")]})],n)}return""})}}};var eT=[eS];var eO=function e(e){var t=e.key;if(t==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");// get SSRed styles out of the way of React's hydration
// document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)
// note this very very intentionally targets all style elements regardless of the key to ensure
// that creating a cache works inside of render of a React component
Array.prototype.forEach.call(r,function(e){// we want to only move elements which have a space in the data-emotion attribute value
// because that indicates that it is an Emotion 11 server-side rendered style elements
// while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector
// Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)
// so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles
// will not result in the Emotion 10 styles being destroyed
var t=e.getAttribute("data-emotion");if(t.indexOf(" ")===-1){return}document.head.appendChild(e);e.setAttribute("data-s","")})}var n=e.stylisPlugins||eT;var i={};var a;var s=[];{a=e.container||document.head;Array.prototype.forEach.call(// means that the style elements we're looking at are only Emotion 11 server-rendered style elements
document.querySelectorAll('style[data-emotion^="'+t+' "]'),function(e){var t=e.getAttribute("data-emotion").split(" ");for(var r=1;r<t.length;r++){i[t[r]]=true}s.push(e)})}var l;var u=[eI,eC];{var c;var d=[ef,eh(function(e){c.insert(e)})];var f=ep(u.concat(n,d));var p=function e(e){return ed(em(e),f)};l=function e(e,t,r,n){c=r;p(e?e+"{"+t.styles+"}":t.styles);if(n){h.inserted[t.name]=true}}}var h={key:t,sheet:new o({key:t,container:a,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:i,registered:{},insert:l};h.sheet.hydrate(s);return h}},2517:function(e,t,r){"use strict";r.d(t,{C:()=>f,E:()=>I,T:()=>v,c:()=>A,h:()=>w,i:()=>c,w:()=>h});/* import */var n=r(1594);/* import */var i=/*#__PURE__*/r.n(n);/* import */var a=r(6734);/* import */var o=r(3595);/* import */var s=r(5631);/* import */var l=r(5035);var u=false;var c=typeof document!=="undefined";var d=/* #__PURE__ */n.createContext(// because this module is primarily intended for the browser and node
// but it's also required in react native and similar environments sometimes
// and we could have a special build just for that
// but this is much easier and the native packages
// might use a different theme context in the future anyway
typeof HTMLElement!=="undefined"?/* #__PURE__ */(0,a/* ["default"] */.A)({key:"css"}):null);var f=d.Provider;var p=function e(){return useContext(d)};var h=function e(e){return/*#__PURE__*/(0,n.forwardRef)(function(t,r){// the cache will never be null in the browser
var i=(0,n.useContext)(d);return e(t,i,r)})};if(!c){h=function e(e){return function(t){var r=(0,n.useContext)(d);if(r===null){// yes, we're potentially creating this on every render
// it doesn't actually matter though since it's only on the server
// so there will only every be a single render
// that could change in the future because of suspense and etc. but for now,
// this works and i don't want to optimise for a future thing that we aren't sure about
r=(0,a/* ["default"] */.A)({key:"css"});return /*#__PURE__*/n.createElement(d.Provider,{value:r},e(t,r))}else{return e(t,r)}}}}var v=/* #__PURE__ */n.createContext({});var g=function e(){return React.useContext(v)};var m=function e(e,t){if(typeof t==="function"){var r=t(e);return r}return _extends({},e,t)};var b=/* #__PURE__ *//* unused pure expression or super */null&&weakMemoize(function(e){return weakMemoize(function(t){return m(e,t)})});var _=function e(e){var t=React.useContext(v);if(e.theme!==t){t=b(t)(e.theme)}return /*#__PURE__*/React.createElement(v.Provider,{value:t},e.children)};function y(e){var t=e.displayName||e.name||"Component";var r=/*#__PURE__*/React.forwardRef(function t(t,r){var n=React.useContext(v);return /*#__PURE__*/React.createElement(e,_extends({theme:n,ref:r},t))});r.displayName="WithTheme("+t+")";return hoistNonReactStatics(r,e)}var w={}.hasOwnProperty;var x="__EMOTION_TYPE_PLEASE_DO_NOT_USE__";var A=function e(e,t){var r={};for(var n in t){if(w.call(t,n)){r[n]=t[n]}}r[x]=e;// Runtime labeling is an opt-in feature because:
return r};var E=function e(e){var t=e.cache,r=e.serialized,i=e.isStringTag;(0,o/* .registerStyles */.SF)(t,r,i);var a=(0,l/* .useInsertionEffectAlwaysWithSyncFallback */.s)(function(){return(0,o/* .insertStyles */.sk)(t,r,i)});if(!c&&a!==undefined){var s;var u=r.name;var d=r.next;while(d!==undefined){u+=" "+d.name;d=d.next}return /*#__PURE__*/n.createElement("style",(s={},s["data-emotion"]=t.key+" "+u,s.dangerouslySetInnerHTML={__html:a},s.nonce=t.sheet.nonce,s))}return null};var k=/* #__PURE__ */h(function(e,t,r){var i=e.css;// so that using `css` from `emotion` and passing the result to the css prop works
// not passing the registered cache to serializeStyles because it would
// make certain babel optimisations not possible
if(typeof i==="string"&&t.registered[i]!==undefined){i=t.registered[i]}var a=e[x];var l=[i];var c="";if(typeof e.className==="string"){c=(0,o/* .getRegisteredStyles */.Rk)(t.registered,l,e.className)}else if(e.className!=null){c=e.className+" "}var d=(0,s/* .serializeStyles */.J)(l,undefined,n.useContext(v));c+=t.key+"-"+d.name;var f={};for(var p in e){if(w.call(e,p)&&p!=="css"&&p!==x&&!u){f[p]=e[p]}}f.className=c;if(r){f.ref=r}return /*#__PURE__*/n.createElement(n.Fragment,null,/*#__PURE__*/n.createElement(E,{cache:t,serialized:d,isStringTag:typeof a==="string"}),/*#__PURE__*/n.createElement(a,f))});var I=k},5757:function(e,t,r){"use strict";r.d(t,{AH:()=>h,i7:()=>v,mL:()=>p});/* import */var n=r(2517);/* import */var i=r(1594);/* import */var a=/*#__PURE__*/r.n(i);/* import */var o=r(3595);/* import */var s=r(5035);/* import */var l=r(5631);/* import */var u=r(6734);/* import */var c=r(1035);/* import */var d=/*#__PURE__*/r.n(c);var f=function e(e,t){// eslint-disable-next-line prefer-rest-params
var r=arguments;if(t==null||!n.h.call(t,"css")){return i.createElement.apply(undefined,r)}var a=r.length;var o=new Array(a);o[0]=n.E;o[1]=(0,n.c)(e,t);for(var s=2;s<a;s++){o[s]=r[s]}return i.createElement.apply(null,o)};(function(e){var t;(function(e){})(t||(t=e.JSX||(e.JSX={})))})(f||(f={}));// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild
// initial client-side render from SSR, use place of hydrating tag
var p=/* #__PURE__ */(0,n.w)(function(e,t){var r=e.styles;var a=(0,l/* .serializeStyles */.J)([r],undefined,i.useContext(n.T));if(!n.i){var u;var c=a.name;var d=a.styles;var f=a.next;while(f!==undefined){c+=" "+f.name;d+=f.styles;f=f.next}var p=t.compat===true;var h=t.insert("",{name:c,styles:d},t.sheet,p);if(p){return null}return /*#__PURE__*/i.createElement("style",(u={},u["data-emotion"]=t.key+"-global "+c,u.dangerouslySetInnerHTML={__html:h},u.nonce=t.sheet.nonce,u))}// yes, i know these hooks are used conditionally
// but it is based on a constant that will never change at runtime
// it's effectively like having two implementations and switching them out
// so it's not actually breaking anything
var v=i.useRef();(0,s/* .useInsertionEffectWithLayoutFallback */.i)(function(){var e=t.key+"-global";// use case of https://github.com/emotion-js/emotion/issues/2675
var r=new t.sheet.constructor({key:e,nonce:t.sheet.nonce,container:t.sheet.container,speedy:t.sheet.isSpeedy});var n=false;var i=document.querySelector('style[data-emotion="'+e+" "+a.name+'"]');if(t.sheet.tags.length){r.before=t.sheet.tags[0]}if(i!==null){n=true;// clear the hash so this node won't be recognizable as rehydratable by other <Global/>s
i.setAttribute("data-emotion",e);r.hydrate([i])}v.current=[r,n];return function(){r.flush()}},[t]);(0,s/* .useInsertionEffectWithLayoutFallback */.i)(function(){var e=v.current;var r=e[0],n=e[1];if(n){e[1]=false;return}if(a.next!==undefined){// insert keyframes
(0,o/* .insertStyles */.sk)(t,a.next,true)}if(r.tags.length){// if this doesn't exist then it will be null so the style element will be appended
var i=r.tags[r.tags.length-1].nextElementSibling;r.before=i;r.flush()}t.insert("",a,r,false)},[t,a.name]);return null});function h(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return(0,l/* .serializeStyles */.J)(t)}function v(){var e=h.apply(void 0,arguments);var t="animation-"+e.name;return{name:t,styles:"@keyframes "+t+"{"+e.styles+"}",anim:1,toString:function e(){return"_EMO_"+this.name+"_"+this.styles+"_EMO_"}}}var g=function e(t){var r=t.length;var n=0;var i="";for(;n<r;n++){var a=t[n];if(a==null)continue;var o=void 0;switch(typeof a){case"boolean":break;case"object":{if(Array.isArray(a)){o=e(a)}else{o="";for(var s in a){if(a[s]&&s){o&&(o+=" ");o+=s}}}break}default:{o=a}}if(o){i&&(i+=" ");i+=o}}return i};function m(e,t,r){var n=[];var i=getRegisteredStyles(e,n,r);if(n.length<2){return r}return i+t(n)}var b=function e(e){var t=e.cache,r=e.serializedArr;var n=useInsertionEffectAlwaysWithSyncFallback(function(){var e="";for(var n=0;n<r.length;n++){var i=insertStyles(t,r[n],false);if(!isBrowser&&i!==undefined){e+=i}}if(!isBrowser){return e}});if(!isBrowser&&n.length!==0){var i;return /*#__PURE__*/React.createElement("style",(i={},i["data-emotion"]=t.key+" "+r.map(function(e){return e.name}).join(" "),i.dangerouslySetInnerHTML={__html:n},i.nonce=t.sheet.nonce,i))}return null};var _=/* #__PURE__ *//* unused pure expression or super */null&&withEmotionCache(function(e,t){var r=false;var n=[];var i=function e(){if(r&&isDevelopment){throw new Error("css can only be used during render")}for(var e=arguments.length,i=new Array(e),a=0;a<e;a++){i[a]=arguments[a]}var o=serializeStyles(i,t.registered);n.push(o);// registration has to happen here as the result of this might get consumed by `cx`
registerStyles(t,o,false);return t.key+"-"+o.name};var a=function e(){if(r&&isDevelopment){throw new Error("cx can only be used during render")}for(var e=arguments.length,n=new Array(e),a=0;a<e;a++){n[a]=arguments[a]}return m(t.registered,i,g(n))};var o={css:i,cx:a,theme:React.useContext(ThemeContext)};var s=e.children(o);r=true;return /*#__PURE__*/React.createElement(React.Fragment,null,/*#__PURE__*/React.createElement(b,{cache:t,serializedArr:n}),s)})},2025:function(e,t,r){"use strict";r.d(t,{FD:()=>p,FK:()=>d,Y:()=>f});/* import */var n=r(6070);/* import */var i=r(2517);/* import */var a=r(1594);/* import */var o=/*#__PURE__*/r.n(a);/* import */var s=r(6734);/* import */var l=r(1035);/* import */var u=/*#__PURE__*/r.n(l);/* import */var c=r(5035);var d=n.Fragment;var f=function e(e,t,r){if(!i.h.call(t,"css")){return n.jsx(e,t,r)}return n.jsx(i.E,(0,i.c)(e,t),r)};var p=function e(e,t,r){if(!i.h.call(t,"css")){return n.jsxs(e,t,r)}return n.jsxs(i.E,(0,i.c)(e,t),r)}},5631:function(e,t,r){"use strict";// EXPORTS
r.d(t,{J:()=>/* binding */b});// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+hash@0.9.2/node_modules/@emotion/hash/dist/emotion-hash.esm.js
/* eslint-disable */// Inspired by https://github.com/garycourt/murmurhash-js
// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
function n(e){// 'm' and 'r' are mixing constants generated offline.
// They're not really 'magic', they just happen to work well.
// const m = 0x5bd1e995;
// const r = 24;
// Initialize the hash
var t=0;// Mix 4 bytes at a time into the hash
var r,n=0,i=e.length;for(;i>=4;++n,i-=4){r=e.charCodeAt(n)&255|(e.charCodeAt(++n)&255)<<8|(e.charCodeAt(++n)&255)<<16|(e.charCodeAt(++n)&255)<<24;r=/* Math.imul(k, m): */(r&65535)*0x5bd1e995+((r>>>16)*59797<<16);r^=/* k >>> r: */r>>>24;t=/* Math.imul(k, m): */(r&65535)*0x5bd1e995+((r>>>16)*59797<<16)^/* Math.imul(h, m): */(t&65535)*0x5bd1e995+((t>>>16)*59797<<16)}// Handle the last few bytes of the input array
switch(i){case 3:t^=(e.charCodeAt(n+2)&255)<<16;case 2:t^=(e.charCodeAt(n+1)&255)<<8;case 1:t^=e.charCodeAt(n)&255;t=/* Math.imul(h, m): */(t&65535)*0x5bd1e995+((t>>>16)*59797<<16)}// Do a few final mixes of the hash to ensure the last few
// bytes are well-incorporated.
t^=t>>>13;t=/* Math.imul(h, m): */(t&65535)*0x5bd1e995+((t>>>16)*59797<<16);return((t^t>>>15)>>>0).toString(36)};// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+unitless@0.10.0/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js
var i={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,// SVG-related properties
fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+memoize@0.9.0/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js
function a(e){var t=Object.create(null);return function(r){if(t[r]===undefined)t[r]=e(r);return t[r]}};// CONCATENATED MODULE: ./node_modules/.pnpm/@emotion+serialize@1.3.3/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js
var o=false;var s=/[A-Z]|^ms/g;var l=/_EMO_([^_]+?)_([^]*?)_EMO_/g;var u=function e(e){return e.charCodeAt(1)===45};var c=function e(e){return e!=null&&typeof e!=="boolean"};var d=/* #__PURE__ */a(function(e){return u(e)?e:e.replace(s,"-$&").toLowerCase()});var f=function e(e,t){switch(e){case"animation":case"animationName":{if(typeof t==="string"){return t.replace(l,function(e,t,r){m={name:t,styles:r,next:m};return t})}}}if(i[e]!==1&&!u(e)&&typeof t==="number"&&t!==0){return t+"px"}return t};var p="Component selectors can only be used in conjunction with "+"@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware "+"compiler transform.";function h(e,t,r){if(r==null){return""}var n=r;if(n.__emotion_styles!==undefined){return n}switch(typeof r){case"boolean":{return""}case"object":{var i=r;if(i.anim===1){m={name:i.name,styles:i.styles,next:m};return i.name}var a=r;if(a.styles!==undefined){var o=a.next;if(o!==undefined){// not the most efficient thing ever but this is a pretty rare case
// and there will be very few iterations of this generally
while(o!==undefined){m={name:o.name,styles:o.styles,next:m};o=o.next}}var s=a.styles+";";return s}return v(e,t,r)}case"function":{if(e!==undefined){var l=m;var u=r(e);m=l;return h(e,t,u)}break}}// finalize string values (regular strings and functions interpolated into css calls)
var c=r;if(t==null){return c}var d=t[c];return d!==undefined?d:c}function v(e,t,r){var n="";if(Array.isArray(r)){for(var i=0;i<r.length;i++){n+=h(e,t,r[i])+";"}}else{for(var a in r){var s=r[a];if(typeof s!=="object"){var l=s;if(t!=null&&t[l]!==undefined){n+=a+"{"+t[l]+"}"}else if(c(l)){n+=d(a)+":"+f(a,l)+";"}}else{if(a==="NO_COMPONENT_SELECTOR"&&o){throw new Error(p)}if(Array.isArray(s)&&typeof s[0]==="string"&&(t==null||t[s[0]]===undefined)){for(var u=0;u<s.length;u++){if(c(s[u])){n+=d(a)+":"+f(a,s[u])+";"}}}else{var v=h(e,t,s);switch(a){case"animation":case"animationName":{n+=d(a)+":"+v+";";break}default:{n+=a+"{"+v+"}"}}}}}}return n}var g=/label:\s*([^\s;{]+)\s*(;|$)/g;// this is the cursor for keyframes
// keyframes are stored on the SerializedStyles object as a linked list
var m;function b(e,t,r){if(e.length===1&&typeof e[0]==="object"&&e[0]!==null&&e[0].styles!==undefined){return e[0]}var i=true;var a="";m=undefined;var o=e[0];if(o==null||o.raw===undefined){i=false;a+=h(r,t,o)}else{var s=o;a+=s[0]}// we start at 1 since we've already handled the first arg
for(var l=1;l<e.length;l++){a+=h(r,t,e[l]);if(i){var u=o;a+=u[l]}}// using a global regex with .exec is stateful so lastIndex has to be reset each time
g.lastIndex=0;var c="";var d;// https://esbench.com/bench/5b809c2cf2949800a0f61fb5
while((d=g.exec(a))!==null){c+="-"+d[1]}var f=n(a)+c;return{name:f,styles:a,next:m}}},5035:function(e,t,r){"use strict";r.d(t,{i:()=>l,s:()=>s});/* import */var n=r(1594);/* import */var i=/*#__PURE__*/r.n(n);var a=function e(e){return e()};var o=n["useInsertion"+"Effect"]?n["useInsertion"+"Effect"]:false;var s=o||a;var l=o||n.useLayoutEffect},3595:function(e,t,r){"use strict";r.d(t,{Rk:()=>i,SF:()=>a,sk:()=>o});var n=true;function i(e,t,r){var n="";r.split(" ").forEach(function(r){if(e[r]!==undefined){t.push(e[r]+";")}else if(r){n+=r+" "}});return n}var a=function e(e,t,r){var i=e.key+"-"+t.name;if(// class name could be used further down
// the tree but if it's a string tag, we know it won't
// so we don't have to add it to registered cache.
// this improves memory usage since we can avoid storing the whole style string
(r===false||// we need to always store it if we're in compat mode and
// in node since emotion-server relies on whether a style is in
// the registered cache to know whether a style is global or not
// also, note that this check will be dead code eliminated in the browser
n===false)&&e.registered[i]===undefined){e.registered[i]=t.styles}};var o=function e(e,t,r){a(e,t,r);var n=e.key+"-"+t.name;if(e.inserted[t.name]===undefined){var i=t;do{e.insert(t===i?"."+n:"",i,e.sheet,true);i=i.next}while(i!==undefined)}}},1035:function(e,t,r){"use strict";var n=r(5959);/**
 * Copyright 2015, Yahoo! Inc.
 * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
 */var i={childContextTypes:true,contextType:true,contextTypes:true,defaultProps:true,displayName:true,getDefaultProps:true,getDerivedStateFromError:true,getDerivedStateFromProps:true,mixins:true,propTypes:true,type:true};var a={name:true,length:true,prototype:true,caller:true,callee:true,arguments:true,arity:true};var o={"$$typeof":true,render:true,defaultProps:true,displayName:true,propTypes:true};var s={"$$typeof":true,compare:true,defaultProps:true,displayName:true,propTypes:true,type:true};var l={};l[n.ForwardRef]=o;l[n.Memo]=s;function u(e){// React v16.11 and below
if(n.isMemo(e)){return s}// React v16.12 and above
return l[e["$$typeof"]]||i}var c=Object.defineProperty;var d=Object.getOwnPropertyNames;var f=Object.getOwnPropertySymbols;var p=Object.getOwnPropertyDescriptor;var h=Object.getPrototypeOf;var v=Object.prototype;function g(e,t,r){if(typeof t!=="string"){// don't hoist over string (html) components
if(v){var n=h(t);if(n&&n!==v){g(e,n,r)}}var i=d(t);if(f){i=i.concat(f(t))}var o=u(e);var s=u(t);for(var l=0;l<i.length;++l){var m=i[l];if(!a[m]&&!(r&&r[m])&&!(s&&s[m])&&!(o&&o[m])){var b=p(t,m);try{// Avoid failures from read-only properties
c(e,m,b)}catch(e){}}}}return e}e.exports=g},9576:function(e,t,r){"use strict";var n=r(5206);if(true){t.createRoot=n.createRoot;t.hydrateRoot=n.hydrateRoot}else{var i}},5843:function(e,t){"use strict";/** @license React v16.13.1
 * react-is.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var r="function"===typeof Symbol&&Symbol.for,n=r?Symbol.for("react.element"):60103,i=r?Symbol.for("react.portal"):60106,a=r?Symbol.for("react.fragment"):60107,o=r?Symbol.for("react.strict_mode"):60108,s=r?Symbol.for("react.profiler"):60114,l=r?Symbol.for("react.provider"):60109,u=r?Symbol.for("react.context"):60110,c=r?Symbol.for("react.async_mode"):60111,d=r?Symbol.for("react.concurrent_mode"):60111,f=r?Symbol.for("react.forward_ref"):60112,p=r?Symbol.for("react.suspense"):60113,h=r?Symbol.for("react.suspense_list"):60120,v=r?Symbol.for("react.memo"):60115,g=r?Symbol.for("react.lazy"):60116,m=r?Symbol.for("react.block"):60121,b=r?Symbol.for("react.fundamental"):60117,_=r?Symbol.for("react.responder"):60118,y=r?Symbol.for("react.scope"):60119;function w(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case n:switch(e=e.type,e){case c:case d:case a:case s:case o:case p:return e;default:switch(e=e&&e.$$typeof,e){case u:case f:case g:case v:case l:return e;default:return t}}case i:return t}}}function x(e){return w(e)===d}t.AsyncMode=c;t.ConcurrentMode=d;t.ContextConsumer=u;t.ContextProvider=l;t.Element=n;t.ForwardRef=f;t.Fragment=a;t.Lazy=g;t.Memo=v;t.Portal=i;t.Profiler=s;t.StrictMode=o;t.Suspense=p;t.isAsyncMode=function(e){return x(e)||w(e)===c};t.isConcurrentMode=x;t.isContextConsumer=function(e){return w(e)===u};t.isContextProvider=function(e){return w(e)===l};t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===n};t.isForwardRef=function(e){return w(e)===f};t.isFragment=function(e){return w(e)===a};t.isLazy=function(e){return w(e)===g};t.isMemo=function(e){return w(e)===v};t.isPortal=function(e){return w(e)===i};t.isProfiler=function(e){return w(e)===s};t.isStrictMode=function(e){return w(e)===o};t.isSuspense=function(e){return w(e)===p};t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===a||e===d||e===s||e===o||e===p||e===h||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===v||e.$$typeof===l||e.$$typeof===u||e.$$typeof===f||e.$$typeof===b||e.$$typeof===_||e.$$typeof===y||e.$$typeof===m)};t.typeOf=w},5959:function(e,t,r){"use strict";if(true){e.exports=r(5843)}else{}},7462:function(e,t,r){"use strict";/**
 * @license React
 * react-jsx-runtime.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */var n=r(1594),i=Symbol.for("react.element"),a=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,l={key:!0,ref:!0,__self:!0,__source:!0};function u(e,t,r){var n,a={},u=null,c=null;void 0!==r&&(u=""+r);void 0!==t.key&&(u=""+t.key);void 0!==t.ref&&(c=t.ref);for(n in t)o.call(t,n)&&!l.hasOwnProperty(n)&&(a[n]=t[n]);if(e&&e.defaultProps)for(n in t=e.defaultProps,t)void 0===a[n]&&(a[n]=t[n]);return{$$typeof:i,type:e,key:u,ref:c,props:a,_owner:s.current}}t.Fragment=a;t.jsx=u;t.jsxs=u},6070:function(e,t,r){"use strict";if(true){e.exports=r(7462)}else{}},234:function(e,t){/*!
 * CSSJanus. https://www.mediawiki.org/wiki/CSSJanus
 *
 * Copyright 2014 Trevor Parscal
 * Copyright 2010 Roan Kattouw
 * Copyright 2008 Google Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */var r;/**
 * Create a tokenizer object.
 *
 * This utility class is used by CSSJanus to protect strings by replacing them temporarily with
 * tokens and later transforming them back.
 *
 * @class
 * @constructor
 * @param {RegExp} regex Regular expression whose matches to replace by a token
 * @param {string} token Placeholder text
 */function n(e,t){var r=[],n=0;/**
	 * Add a match.
	 *
	 * @private
	 * @param {string} match Matched string
	 * @return {string} Token to leave in the matched string's place
	 */function i(e){r.push(e);return t}/**
	 * Get a match.
	 *
	 * @private
	 * @return {string} Original matched string to restore
	 */function a(){return r[n++]}return{/**
		 * Replace matching strings with tokens.
		 *
		 * @param {string} str String to tokenize
		 * @return {string} Tokenized string
		 */tokenize:function(t){return t.replace(e,i)},/**
		 * Restores tokens to their original values.
		 *
		 * @param {string} str String previously run through tokenize()
		 * @return {string} Original string
		 */detokenize:function(e){return e.replace(new RegExp("("+t+")","g"),a)}}}/**
 * Create a CSSJanus object.
 *
 * CSSJanus transforms CSS rules with horizontal relevance so that a left-to-right stylesheet can
 * become a right-to-left stylesheet automatically. Processing can be bypassed for an entire rule
 * or a single property by adding a / * @noflip * / comment above the rule or property.
 *
 * @class
 * @constructor
 */function i(){var // Tokens
e="`TMP`",t="`TMPLTR`",r="`TMPRTL`",i="`NOFLIP_SINGLE`",a="`NOFLIP_CLASS`",o="`COMMENT`",// Patterns
s="[^\\u0020-\\u007e]",l="(?:(?:\\\\[0-9a-f]{1,6})(?:\\r\\n|\\s)?)",u="(?:[0-9]*\\.[0-9]+|[0-9]+)",c="(?:em|ex|px|cm|mm|in|pt|pc|deg|rad|grad|ms|s|hz|khz|%)",d="direction\\s*:\\s*",f="[!#$%&*-~]",p="['\"]?\\s*",h="(^|[^a-zA-Z])",v="[^\\}]*?",g="\\/\\*\\!?\\s*@noflip\\s*\\*\\/",m="\\/\\*[^*]*\\*+([^\\/*][^*]*\\*+)*\\/",b="(?:"+l+"|\\\\[^\\r\\n\\f0-9a-f])",_="(?:[_a-z]|"+s+"|"+b+")",y="(?:[_a-z0-9-]|"+s+"|"+b+")",w="-?"+_+y+"*",x=u+"(?:\\s*"+c+"|"+w+")?",A="((?:-?"+x+")|(?:inherit|auto))",E="(?:-?"+u+"(?:\\s*"+c+")?)",k="(?:\\+|\\-|\\*|\\/)",I="(?:\\(|\\)|\\t| )",C="(?:"+I+"|"+E+"|"+k+"){3,}",Y="(?:calc\\((?:"+C+")\\))",S="((?:-?"+x+")|(?:inherit|auto)|"+Y+")",T="((?:margin|padding|border-width)\\s*:\\s*)",O="((?:-color|border-style)\\s*:\\s*)",D="(#?"+y+"+|(?:rgba?|hsla?)\\([ \\d.,%-]+\\))",// The use of a lazy match ("*?") may cause a backtrack limit to be exceeded before finding
// the intended match. This affects 'urlCharsPattern' and 'lookAheadNotOpenBracePattern'.
// We have not yet found this problem on Node.js, but we have on PHP 7, where it was
// mitigated by using a possessive quantifier ("*+"), which are not supported in JS.
// See <https://phabricator.wikimedia.org/T215746#4944830>.
F="(?:"+f+"|"+s+"|"+b+")*?",P="(?![a-zA-Z])",R="(?!("+y+"|\\r?\\n|\\s|#|\\:|\\.|\\,|\\+|>|~|\\(|\\)|\\[|\\]|=|\\*=|~=|\\^=|'[^']*'|\"[^\"]*\"|"+o+")*?{)",H="(?!"+F+p+"\\))",M="(?="+F+p+"\\))",N="(\\s*(?:!important\\s*)?[;}])",// Regular expressions
L=/`TMP`/g,K=/`TMPLTR`/g,q=/`TMPRTL`/g,B=new RegExp(m,"gi"),U=new RegExp("("+g+R+"[^;}]+;?)","gi"),j=new RegExp("("+g+v+"})","gi"),V=new RegExp("("+d+")ltr","gi"),W=new RegExp("("+d+")rtl","gi"),z=new RegExp(h+"(left)"+P+H+R,"gi"),G=new RegExp(h+"(right)"+P+H+R,"gi"),Q=new RegExp(h+"(left)"+M,"gi"),$=new RegExp(h+"(right)"+M,"gi"),X=/(:dir\( *)ltr( *\))/g,J=/(:dir\( *)rtl( *\))/g,Z=new RegExp(h+"(ltr)"+M,"gi"),ee=new RegExp(h+"(rtl)"+M,"gi"),et=new RegExp(h+"([ns]?)e-resize","gi"),er=new RegExp(h+"([ns]?)w-resize","gi"),en=new RegExp(T+S+"(\\s+)"+S+"(\\s+)"+S+"(\\s+)"+S+N,"gi"),ei=new RegExp(O+D+"(\\s+)"+D+"(\\s+)"+D+"(\\s+)"+D+N,"gi"),ea=new RegExp("(background(?:-position)?\\s*:\\s*(?:[^:;}\\s]+\\s+)*?)("+x+")","gi"),eo=new RegExp("(background-position-x\\s*:\\s*)(-?"+u+"%)","gi"),// border-radius: <length or percentage>{1,4} [optional: / <length or percentage>{1,4} ]
es=new RegExp("(border-radius\\s*:\\s*)"+A+"(?:(?:\\s+"+A+")(?:\\s+"+A+")?(?:\\s+"+A+")?)?"+"(?:(?:(?:\\s*\\/\\s*)"+A+")(?:\\s+"+A+")?(?:\\s+"+A+")?(?:\\s+"+A+")?)?"+N,"gi"),el=new RegExp("(box-shadow\\s*:\\s*(?:inset\\s*)?)"+A,"gi"),eu=new RegExp("(text-shadow\\s*:\\s*)"+A+"(\\s*)"+D,"gi"),ec=new RegExp("(text-shadow\\s*:\\s*)"+D+"(\\s*)"+A,"gi"),ed=new RegExp("(text-shadow\\s*:\\s*)"+A,"gi"),ef=new RegExp("(transform\\s*:[^;}]*)(translateX\\s*\\(\\s*)"+A+"(\\s*\\))","gi"),ep=new RegExp("(transform\\s*:[^;}]*)(translate\\s*\\(\\s*)"+A+"((?:\\s*,\\s*"+A+"){0,2}\\s*\\))","gi");/**
	 * Invert the horizontal value of a background position property.
	 *
	 * @private
	 * @param {string} match Matched property
	 * @param {string} pre Text before value
	 * @param {string} value Horizontal value
	 * @return {string} Inverted property
	 */function eh(e,t,r){var n,i;if(r.slice(-1)==="%"){n=r.indexOf(".");if(n!==-1){// Two off, one for the "%" at the end, one for the dot itself
i=r.length-n-2;r=100-parseFloat(r);r=r.toFixed(i)+"%"}else{r=100-parseFloat(r)+"%"}}return t+r}/**
	 * Invert a set of border radius values.
	 *
	 * @private
	 * @param {Array} values Matched values
	 * @return {string} Inverted values
	 */function ev(e){switch(e.length){case 4:e=[e[1],e[0],e[3],e[2]];break;case 3:e=[e[1],e[0],e[1],e[2]];break;case 2:e=[e[1],e[0]];break;case 1:e=[e[0]];break}return e.join(" ")}/**
	 * Invert a set of border radius values.
	 *
	 * @private
	 * @param {string} match Matched property
	 * @param {string} pre Text before value
	 * @param {string} [firstGroup1]
	 * @param {string} [firstGroup2]
	 * @param {string} [firstGroup3]
	 * @param {string} [firstGroup4]
	 * @param {string} [secondGroup1]
	 * @param {string} [secondGroup2]
	 * @param {string} [secondGroup3]
	 * @param {string} [secondGroup4]
	 * @param {string} [post] Text after value
	 * @return {string} Inverted property
	 */function eg(e,t){var r,n=[].slice.call(arguments),i=n.slice(2,6).filter(function(e){return e}),a=n.slice(6,10).filter(function(e){return e}),o=n[10]||"";if(a.length){r=ev(i)+" / "+ev(a)}else{r=ev(i)}return t+r+o}/**
	 * Flip the sign of a CSS value, possibly with a unit.
	 *
	 * We can't just negate the value with unary minus due to the units.
	 *
	 * @private
	 * @param {string} value
	 * @return {string}
	 */function em(e){if(parseFloat(e)===0){// Don't mangle zeroes
return e}if(e[0]==="-"){return e.slice(1)}return"-"+e}/**
	 * @private
	 * @param {string} match
	 * @param {string} property
	 * @param {string} offset
	 * @return {string}
	 */function eb(e,t,r){return t+em(r)}/**
	 * @private
	 * @param {string} match
	 * @param {string} property
	 * @param {string} prefix
	 * @param {string} offset
	 * @param {string} suffix
	 * @return {string}
	 */function e_(e,t,r,n,i){return t+r+em(n)+i}/**
	 * @private
	 * @param {string} match
	 * @param {string} property
	 * @param {string} color
	 * @param {string} space
	 * @param {string} offset
	 * @return {string}
	 */function ey(e,t,r,n,i){return t+r+n+em(i)}return{/**
		 * Transform a left-to-right stylesheet to right-to-left.
		 *
		 * @param {string} css Stylesheet to transform
		 * @param {Object} options Options
		 * @param {boolean} [options.transformDirInUrl=false] Transform directions in URLs
		 * (e.g. 'ltr', 'rtl')
		 * @param {boolean} [options.transformEdgeInUrl=false] Transform edges in URLs
		 * (e.g. 'left', 'right')
		 * @return {string} Transformed stylesheet
		 */"transform":function(s,l){// Use single quotes in this object literal key for closure compiler.
// Tokenizers
var u=new n(U,i),c=new n(j,a),d=new n(B,o);// Tokenize
s=d.tokenize(c.tokenize(u.tokenize(// We wrap tokens in ` , not ~ like the original implementation does.
// This was done because ` is not a legal character in CSS and can only
// occur in URLs, where we escape it to %60 before inserting our tokens.
s.replace("`","%60"))));// Transform URLs
if(l.transformDirInUrl){// Replace 'ltr' with 'rtl' and vice versa in background URLs
s=s.replace(X,"$1"+t+"$2").replace(J,"$1"+r+"$2").replace(Z,"$1"+e).replace(ee,"$1ltr").replace(L,"rtl").replace(K,"ltr").replace(q,"rtl")}if(l.transformEdgeInUrl){// Replace 'left' with 'right' and vice versa in background URLs
s=s.replace(Q,"$1"+e).replace($,"$1left").replace(L,"right")}// Transform rules
s=s// Replace direction: ltr; with direction: rtl; and vice versa.
.replace(V,"$1"+e).replace(W,"$1ltr").replace(L,"rtl")// Flip rules like left: , padding-right: , etc.
.replace(z,"$1"+e).replace(G,"$1left").replace(L,"right")// Flip East and West in rules like cursor: nw-resize;
.replace(et,"$1$2"+e).replace(er,"$1$2e-resize").replace(L,"w-resize")// Border radius
.replace(es,eg)// Shadows
.replace(el,eb).replace(eu,ey).replace(ec,ey).replace(ed,eb)// Translate
.replace(ef,e_).replace(ep,e_)// Swap the second and fourth parts in four-part notation rules
// like padding: 1px 2px 3px 4px;
.replace(en,"$1$2$3$8$5$6$7$4$9").replace(ei,"$1$2$3$8$5$6$7$4$9")// Flip horizontal background percentages
.replace(ea,eh).replace(eo,eh);// Detokenize
s=u.detokenize(c.detokenize(d.detokenize(s)));return s}}}/* Initialization */r=new i;/* Exports */if(true&&e.exports){/**
	 * Transform a left-to-right stylesheet to right-to-left.
	 *
	 * This function is a static wrapper around the transform method of an instance of CSSJanus.
	 *
	 * @param {string} css Stylesheet to transform
	 * @param {Object|boolean} [options] Options object, or transformDirInUrl option (back-compat)
	 * @param {boolean} [options.transformDirInUrl=false] Transform directions in URLs
	 * (e.g. 'ltr', 'rtl')
	 * @param {boolean} [options.transformEdgeInUrl=false] Transform edges in URLs
	 * (e.g. 'left', 'right')
	 * @param {boolean} [transformEdgeInUrl] Back-compat parameter
	 * @return {string} Transformed stylesheet
	 */t.transform=function(e,t,n){var i;if(typeof t==="object"){i=t}else{i={};if(typeof t==="boolean"){i.transformDirInUrl=t}if(typeof n==="boolean"){i.transformEdgeInUrl=n}}return r.transform(e,i)}}else if(typeof window!=="undefined"){/* global window */// Allow cssjanus to be used in a browser.
// eslint-disable-next-line dot-notation
window["cssjanus"]=r}},875:function(e,t,r){"use strict";t.__esModule=true;t["default"]=v;var n=o(r(4489));var i=o(r(7261));var a=o(r(8675));function o(e){return e&&e.__esModule?e:{"default":e}}var s=/^#[a-fA-F0-9]{6}$/;var l=/^#[a-fA-F0-9]{8}$/;var u=/^#[a-fA-F0-9]{3}$/;var c=/^#[a-fA-F0-9]{4}$/;var d=/^rgb\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*\)$/i;var f=/^rgb(?:a)?\(\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,)?\s*(\d{1,3})\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;var p=/^hsl\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*\)$/i;var h=/^hsl(?:a)?\(\s*(\d{0,3}[.]?[0-9]+(?:deg)?)\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,)?\s*(\d{1,3}[.]?[0-9]?)%\s*(?:,|\/)\s*([-+]?\d*[.]?\d+[%]?)\s*\)$/i;/**
 * Returns an RgbColor or RgbaColor object. This utility function is only useful
 * if want to extract a color component. With the color util `toColorString` you
 * can convert a RgbColor or RgbaColor object back to a string.
 *
 * @example
 * // Assigns `{ red: 255, green: 0, blue: 0 }` to color1
 * const color1 = parseToRgb('rgb(255, 0, 0)');
 * // Assigns `{ red: 92, green: 102, blue: 112, alpha: 0.75 }` to color2
 * const color2 = parseToRgb('hsla(210, 10%, 40%, 0.75)');
 */function v(e){if(typeof e!=="string"){throw new a["default"](3)}var t=(0,i["default"])(e);if(t.match(s)){return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16)}}if(t.match(l)){var r=parseFloat((parseInt(""+t[7]+t[8],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[2],16),green:parseInt(""+t[3]+t[4],16),blue:parseInt(""+t[5]+t[6],16),alpha:r}}if(t.match(u)){return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16)}}if(t.match(c)){var o=parseFloat((parseInt(""+t[4]+t[4],16)/255).toFixed(2));return{red:parseInt(""+t[1]+t[1],16),green:parseInt(""+t[2]+t[2],16),blue:parseInt(""+t[3]+t[3],16),alpha:o}}var v=d.exec(t);if(v){return{red:parseInt(""+v[1],10),green:parseInt(""+v[2],10),blue:parseInt(""+v[3],10)}}var g=f.exec(t.substring(0,50));if(g){return{red:parseInt(""+g[1],10),green:parseInt(""+g[2],10),blue:parseInt(""+g[3],10),alpha:parseFloat(""+g[4])>1?parseFloat(""+g[4])/100:parseFloat(""+g[4])}}var m=p.exec(t);if(m){var b=parseInt(""+m[1],10);var _=parseInt(""+m[2],10)/100;var y=parseInt(""+m[3],10)/100;var w="rgb("+(0,n["default"])(b,_,y)+")";var x=d.exec(w);if(!x){throw new a["default"](4,t,w)}return{red:parseInt(""+x[1],10),green:parseInt(""+x[2],10),blue:parseInt(""+x[3],10)}}var A=h.exec(t.substring(0,50));if(A){var E=parseInt(""+A[1],10);var k=parseInt(""+A[2],10)/100;var I=parseInt(""+A[3],10)/100;var C="rgb("+(0,n["default"])(E,k,I)+")";var Y=d.exec(C);if(!Y){throw new a["default"](4,t,C)}return{red:parseInt(""+Y[1],10),green:parseInt(""+Y[2],10),blue:parseInt(""+Y[3],10),alpha:parseFloat(""+A[4])>1?parseFloat(""+A[4])/100:parseFloat(""+A[4])}}throw new a["default"](5)}e.exports=t["default"]},4299:function(e,t,r){"use strict";t.__esModule=true;t["default"]=s;var n=o(r(2084));var i=o(r(3355));var a=o(r(8675));function o(e){return e&&e.__esModule?e:{"default":e}}/**
 * Returns a string value for the color. The returned result is the smallest possible hex notation.
 *
 * @example
 * // Styles as object usage
 * const styles = {
 *   background: rgb(255, 205, 100),
 *   background: rgb({ red: 255, green: 205, blue: 100 }),
 * }
 *
 * // styled-components usage
 * const div = styled.div`
 *   background: ${rgb(255, 205, 100)};
 *   background: ${rgb({ red: 255, green: 205, blue: 100 })};
 * `
 *
 * // CSS in JS Output
 *
 * element {
 *   background: "#ffcd64";
 *   background: "#ffcd64";
 * }
 */function s(e,t,r){if(typeof e==="number"&&typeof t==="number"&&typeof r==="number"){return(0,n["default"])("#"+(0,i["default"])(e)+(0,i["default"])(t)+(0,i["default"])(r))}else if(typeof e==="object"&&t===undefined&&r===undefined){return(0,n["default"])("#"+(0,i["default"])(e.red)+(0,i["default"])(e.green)+(0,i["default"])(e.blue))}throw new a["default"](6)}e.exports=t["default"]},8212:function(e,t,r){"use strict";t.__esModule=true;t["default"]=s;var n=o(r(875));var i=o(r(4299));var a=o(r(8675));function o(e){return e&&e.__esModule?e:{"default":e}}/**
 * Returns a string value for the color. The returned result is the smallest possible rgba or hex notation.
 *
 * Can also be used to fade a color by passing a hex value or named CSS color along with an alpha value.
 *
 * @example
 * // Styles as object usage
 * const styles = {
 *   background: rgba(255, 205, 100, 0.7),
 *   background: rgba({ red: 255, green: 205, blue: 100, alpha: 0.7 }),
 *   background: rgba(255, 205, 100, 1),
 *   background: rgba('#ffffff', 0.4),
 *   background: rgba('black', 0.7),
 * }
 *
 * // styled-components usage
 * const div = styled.div`
 *   background: ${rgba(255, 205, 100, 0.7)};
 *   background: ${rgba({ red: 255, green: 205, blue: 100, alpha: 0.7 })};
 *   background: ${rgba(255, 205, 100, 1)};
 *   background: ${rgba('#ffffff', 0.4)};
 *   background: ${rgba('black', 0.7)};
 * `
 *
 * // CSS in JS Output
 *
 * element {
 *   background: "rgba(255,205,100,0.7)";
 *   background: "rgba(255,205,100,0.7)";
 *   background: "#ffcd64";
 *   background: "rgba(255,255,255,0.4)";
 *   background: "rgba(0,0,0,0.7)";
 * }
 */function s(e,t,r,o){if(typeof e==="string"&&typeof t==="number"){var s=(0,n["default"])(e);return"rgba("+s.red+","+s.green+","+s.blue+","+t+")"}else if(typeof e==="number"&&typeof t==="number"&&typeof r==="number"&&typeof o==="number"){return o>=1?(0,i["default"])(e,t,r):"rgba("+e+","+t+","+r+","+o+")"}else if(typeof e==="object"&&t===undefined&&r===undefined&&o===undefined){return e.alpha>=1?(0,i["default"])(e.red,e.green,e.blue):"rgba("+e.red+","+e.green+","+e.blue+","+e.alpha+")"}throw new a["default"](7)}e.exports=t["default"]},8675:function(e,t){"use strict";t.__esModule=true;t["default"]=void 0;function r(e){if(e===void 0){throw new ReferenceError("this hasn't been initialised - super() hasn't been called")}return e}function n(e,t){e.prototype=Object.create(t.prototype);e.prototype.constructor=e;l(e,t)}function i(e){var t=typeof Map==="function"?new Map:undefined;i=function e(e){if(e===null||!s(e))return e;if(typeof e!=="function"){throw new TypeError("Super expression must either be null or a function")}if(typeof t!=="undefined"){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return a(e,arguments,u(this).constructor)}r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});return l(r,e)};return i(e)}function a(e,t,r){if(o())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var i=new(e.bind.apply(e,n));return r&&l(i,r.prototype),i}function o(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(o=function t(){return!!e})()}function s(e){try{return Function.toString.call(e).indexOf("[native code]")!==-1}catch(t){return typeof e==="function"}}function l(e,t){l=Object.setPrototypeOf?Object.setPrototypeOf.bind():function e(e,t){e.__proto__=t;return e};return l(e,t)}function u(e){u=Object.setPrototypeOf?Object.getPrototypeOf.bind():function e(e){return e.__proto__||Object.getPrototypeOf(e)};return u(e)}// based on https://github.com/styled-components/styled-components/blob/fcf6f3804c57a14dd7984dfab7bc06ee2edca044/src/utils/error.js
/**
 * Parse errors.md and turn it into a simple hash of code: message
 * @private
 */var c=/* unused pure expression or super */null&&{"1":"Passed invalid arguments to hsl, please pass multiple numbers e.g. hsl(360, 0.75, 0.4) or an object e.g. rgb({ hue: 255, saturation: 0.4, lightness: 0.75 }).\n\n","2":"Passed invalid arguments to hsla, please pass multiple numbers e.g. hsla(360, 0.75, 0.4, 0.7) or an object e.g. rgb({ hue: 255, saturation: 0.4, lightness: 0.75, alpha: 0.7 }).\n\n","3":"Passed an incorrect argument to a color function, please pass a string representation of a color.\n\n","4":"Couldn't generate valid rgb string from %s, it returned %s.\n\n","5":"Couldn't parse the color string. Please provide the color as a string in hex, rgb, rgba, hsl or hsla notation.\n\n","6":"Passed invalid arguments to rgb, please pass multiple numbers e.g. rgb(255, 205, 100) or an object e.g. rgb({ red: 255, green: 205, blue: 100 }).\n\n","7":"Passed invalid arguments to rgba, please pass multiple numbers e.g. rgb(255, 205, 100, 0.75) or an object e.g. rgb({ red: 255, green: 205, blue: 100, alpha: 0.75 }).\n\n","8":"Passed invalid argument to toColorString, please pass a RgbColor, RgbaColor, HslColor or HslaColor object.\n\n","9":"Please provide a number of steps to the modularScale helper.\n\n","10":"Please pass a number or one of the predefined scales to the modularScale helper as the ratio.\n\n","11":'Invalid value passed as base to modularScale, expected number or em string but got "%s"\n\n',"12":'Expected a string ending in "px" or a number passed as the first argument to %s(), got "%s" instead.\n\n',"13":'Expected a string ending in "px" or a number passed as the second argument to %s(), got "%s" instead.\n\n',"14":'Passed invalid pixel value ("%s") to %s(), please pass a value like "12px" or 12.\n\n',"15":'Passed invalid base value ("%s") to %s(), please pass a value like "12px" or 12.\n\n',"16":"You must provide a template to this method.\n\n","17":"You passed an unsupported selector state to this method.\n\n","18":"minScreen and maxScreen must be provided as stringified numbers with the same units.\n\n","19":"fromSize and toSize must be provided as stringified numbers with the same units.\n\n","20":"expects either an array of objects or a single object with the properties prop, fromSize, and toSize.\n\n","21":"expects the objects in the first argument array to have the properties `prop`, `fromSize`, and `toSize`.\n\n","22":"expects the first argument object to have the properties `prop`, `fromSize`, and `toSize`.\n\n","23":"fontFace expects a name of a font-family.\n\n","24":"fontFace expects either the path to the font file(s) or a name of a local copy.\n\n","25":"fontFace expects localFonts to be an array.\n\n","26":"fontFace expects fileFormats to be an array.\n\n","27":"radialGradient requries at least 2 color-stops to properly render.\n\n","28":"Please supply a filename to retinaImage() as the first argument.\n\n","29":"Passed invalid argument to triangle, please pass correct pointingDirection e.g. 'right'.\n\n","30":"Passed an invalid value to `height` or `width`. Please provide a pixel based unit.\n\n","31":"The animation shorthand only takes 8 arguments. See the specification for more information: http://mdn.io/animation\n\n","32":"To pass multiple animations please supply them in arrays, e.g. animation(['rotate', '2s'], ['move', '1s'])\nTo pass a single animation please supply them in simple values, e.g. animation('rotate', '2s')\n\n","33":"The animation shorthand arrays can only have 8 elements. See the specification for more information: http://mdn.io/animation\n\n","34":"borderRadius expects a radius value as a string or number as the second argument.\n\n","35":'borderRadius expects one of "top", "bottom", "left" or "right" as the first argument.\n\n',"36":"Property must be a string value.\n\n","37":"Syntax Error at %s.\n\n","38":"Formula contains a function that needs parentheses at %s.\n\n","39":"Formula is missing closing parenthesis at %s.\n\n","40":"Formula has too many closing parentheses at %s.\n\n","41":"All values in a formula must have the same unit or be unitless.\n\n","42":"Please provide a number of steps to the modularScale helper.\n\n","43":"Please pass a number or one of the predefined scales to the modularScale helper as the ratio.\n\n","44":"Invalid value passed as base to modularScale, expected number or em/rem string but got %s.\n\n","45":"Passed invalid argument to hslToColorString, please pass a HslColor or HslaColor object.\n\n","46":"Passed invalid argument to rgbToColorString, please pass a RgbColor or RgbaColor object.\n\n","47":"minScreen and maxScreen must be provided as stringified numbers with the same units.\n\n","48":"fromSize and toSize must be provided as stringified numbers with the same units.\n\n","49":"Expects either an array of objects or a single object with the properties prop, fromSize, and toSize.\n\n","50":"Expects the objects in the first argument array to have the properties prop, fromSize, and toSize.\n\n","51":"Expects the first argument object to have the properties prop, fromSize, and toSize.\n\n","52":"fontFace expects either the path to the font file(s) or a name of a local copy.\n\n","53":"fontFace expects localFonts to be an array.\n\n","54":"fontFace expects fileFormats to be an array.\n\n","55":"fontFace expects a name of a font-family.\n\n","56":"linearGradient requries at least 2 color-stops to properly render.\n\n","57":"radialGradient requries at least 2 color-stops to properly render.\n\n","58":"Please supply a filename to retinaImage() as the first argument.\n\n","59":"Passed invalid argument to triangle, please pass correct pointingDirection e.g. 'right'.\n\n","60":"Passed an invalid value to `height` or `width`. Please provide a pixel based unit.\n\n","61":"Property must be a string value.\n\n","62":"borderRadius expects a radius value as a string or number as the second argument.\n\n","63":'borderRadius expects one of "top", "bottom", "left" or "right" as the first argument.\n\n',"64":"The animation shorthand only takes 8 arguments. See the specification for more information: http://mdn.io/animation.\n\n","65":"To pass multiple animations please supply them in arrays, e.g. animation(['rotate', '2s'], ['move', '1s'])\\nTo pass a single animation please supply them in simple values, e.g. animation('rotate', '2s').\n\n","66":"The animation shorthand arrays can only have 8 elements. See the specification for more information: http://mdn.io/animation.\n\n","67":"You must provide a template to this method.\n\n","68":"You passed an unsupported selector state to this method.\n\n","69":'Expected a string ending in "px" or a number passed as the first argument to %s(), got %s instead.\n\n',"70":'Expected a string ending in "px" or a number passed as the second argument to %s(), got %s instead.\n\n',"71":'Passed invalid pixel value %s to %s(), please pass a value like "12px" or 12.\n\n',"72":'Passed invalid base value %s to %s(), please pass a value like "12px" or 12.\n\n',"73":"Please provide a valid CSS variable.\n\n","74":"CSS variable not found and no default was provided.\n\n","75":"important requires a valid style object, got a %s instead.\n\n","76":"fromSize and toSize must be provided as stringified numbers with the same units as minScreen and maxScreen.\n\n","77":'remToPx expects a value in "rem" but you provided it in "%s".\n\n',"78":'base must be set in "px" or "%" but you set it in "%s".\n'};/**
 * super basic version of sprintf
 * @private
 */function d(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n=t[0];var i=[];var a;for(a=1;a<t.length;a+=1){i.push(t[a])}i.forEach(function(e){n=n.replace(/%[a-z]/,e)});return n}/**
 * Create an error file out of errors.md for development and a simple web link to the full errors
 * in production mode.
 * @private
 */var f=t["default"]=/*#__PURE__*/function(e){n(t,e);function t(t){var n;if(true){n=e.call(this,"An error occurred. See https://github.com/styled-components/polished/blob/main/src/internalHelpers/errors.md#"+t+" for more information.")||this}else{var i,a,o}return r(n)}return t}(/*#__PURE__*/i(Error));e.exports=t["default"]},4489:function(e,t){"use strict";t.__esModule=true;t["default"]=void 0;function r(e){return Math.round(e*255)}function n(e,t,n){return r(e)+","+r(t)+","+r(n)}function i(e,t,r,i){if(i===void 0){i=n}if(t===0){// achromatic
return i(r,r,r)}// formulae from https://en.wikipedia.org/wiki/HSL_and_HSV
var a=(e%360+360)%360/60;var o=(1-Math.abs(2*r-1))*t;var s=o*(1-Math.abs(a%2-1));var l=0;var u=0;var c=0;if(a>=0&&a<1){l=o;u=s}else if(a>=1&&a<2){l=s;u=o}else if(a>=2&&a<3){u=o;c=s}else if(a>=3&&a<4){u=s;c=o}else if(a>=4&&a<5){l=s;c=o}else if(a>=5&&a<6){l=o;c=s}var d=r-o/2;var f=l+d;var p=u+d;var h=c+d;return i(f,p,h)}var a=t["default"]=i;e.exports=t["default"]},7261:function(e,t){"use strict";t.__esModule=true;t["default"]=void 0;var r={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"639",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"};/**
 * Checks if a string is a CSS named color and returns its equivalent hex value, otherwise returns the original color.
 * @private
 */function n(e){if(typeof e!=="string")return e;var t=e.toLowerCase();return r[t]?"#"+r[t]:e}var i=t["default"]=n;e.exports=t["default"]},3355:function(e,t){"use strict";t.__esModule=true;t["default"]=void 0;function r(e){var t=e.toString(16);return t.length===1?"0"+t:t}var n=t["default"]=r;e.exports=t["default"]},2084:function(e,t){"use strict";t.__esModule=true;t["default"]=void 0;/**
 * Reduces hex values if possible e.g. #ff8866 to #f86
 * @private
 */var r=function e(e){if(e.length===7&&e[1]===e[2]&&e[3]===e[4]&&e[5]===e[6]){return"#"+e[1]+e[3]+e[5]}return e};var n=t["default"]=r;e.exports=t["default"]},6129:function(e){"use strict";// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.
// If obj.hasOwnProperty has been overridden, then calling
// obj.hasOwnProperty(prop) will break.
// See: https://github.com/joyent/node/issues/1707
function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,r,n,i){r=r||"&";n=n||"=";var a={};if(typeof e!=="string"||e.length===0){return a}var o=/\+/g;e=e.split(r);var s=1e3;if(i&&typeof i.maxKeys==="number"){s=i.maxKeys}var l=e.length;// maxKeys <= 0 means that we should not limit keys count
if(s>0&&l>s){l=s}for(var u=0;u<l;++u){var c=e[u].replace(o,"%20"),d=c.indexOf(n),f,p,h,v;if(d>=0){f=c.substr(0,d);p=c.substr(d+1)}else{f=c;p=""}h=decodeURIComponent(f);v=decodeURIComponent(p);if(!t(a,h)){a[h]=v}else if(Array.isArray(a[h])){a[h].push(v)}else{a[h]=[a[h],v]}}return a}},8137:function(e){"use strict";// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
// copy of this software and associated documentation files (the
// "Software"), to deal in the Software without restriction, including
// without limitation the rights to use, copy, modify, merge, publish,
// distribute, sublicense, and/or sell copies of the Software, and to permit
// persons to whom the Software is furnished to do so, subject to the
// following conditions:
//
// The above copyright notice and this permission notice shall be included
// in all copies or substantial portions of the Software.
//
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
// USE OR OTHER DEALINGS IN THE SOFTWARE.
var t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,r,n,i){r=r||"&";n=n||"=";if(e===null){e=undefined}if(typeof e==="object"){return Object.keys(e).map(function(i){var a=encodeURIComponent(t(i))+n;if(Array.isArray(e[i])){return e[i].map(function(e){return a+encodeURIComponent(t(e))}).join(r)}else{return a+encodeURIComponent(t(e[i]))}}).filter(Boolean).join(r)}if(!i)return"";return encodeURIComponent(t(i))+n+encodeURIComponent(t(e))}},9919:function(e,t,r){"use strict";var n;n=/* unused reexport */r(6129);n=t.stringify=r(8137)},9878:function(e,t,r){"use strict";r.d(t,{A:()=>w});/* import */var n=r(33);/* import */var i=r(1303);/* import */var a=r(2473);/* import */var o=r(690);/* import */var s=r(2025);/* import */var l=r(1594);/* import */var u=/*#__PURE__*/r.n(l);/* import */var c=r(5757);/* import */var d=r(4485);/* import */var f=r(7764);/* import */var p=r(983);/* import */var h=r(7367);/* import */var v=r(4958);function g(){var e=(0,o._)(["\n      color: transparent;\n    "]);g=function t(){return e};return e}function m(){var e=(0,o._)(["\n      margin-right: 0;\n      margin-left: ",";\n    "]);m=function t(){return e};return e}function b(){var e=(0,o._)(["\n      opacity: 0;\n    "]);b=function t(){return e};return e}function _(){var e=(0,o._)(["\n      margin-inline: 0;\n    "]);_=function t(){return e};return e}var y=/*#__PURE__*/u().forwardRef((e,t)=>{var{variant:r="primary",isOutlined:o=false,size:l="regular",loading:u=false,children:c,disabled:f=false,icon:p,iconPosition:h="left",buttonCss:v,buttonContentCss:g,as:m="button",tabIndex:b,isIconOnly:_=false}=e,y=(0,a._)(e,["variant","isOutlined","size","loading","children","disabled","icon","iconPosition","buttonCss","buttonContentCss","as","tabIndex","isIconOnly"]);var w=[k({variant:r,outlined:o?r:"none",size:l,isLoading:u?"true":"false",iconOnly:_?"true":"false"}),v];var x=/*#__PURE__*/(0,s/* .jsxs */.FD)(s/* .Fragment */.FK,{children:[u&&!f&&/*#__PURE__*/(0,s/* .jsx */.Y)("span",{css:E.spinner,children:/*#__PURE__*/(0,s/* .jsx */.Y)(d/* ["default"] */.A,{name:"spinner",width:18,height:18})}),/*#__PURE__*/(0,s/* .jsxs */.FD)("span",{css:[E.buttonContent({loading:u,disabled:f}),g],children:[p&&h==="left"&&/*#__PURE__*/(0,s/* .jsx */.Y)("span",{css:E.buttonIcon({iconPosition:h,loading:u,hasChildren:!!c}),children:p}),c,p&&h==="right"&&/*#__PURE__*/(0,s/* .jsx */.Y)("span",{css:E.buttonIcon({iconPosition:h,loading:u,hasChildren:!!c}),children:p})]})]});if(m==="a"){var{href:A,target:I,rel:C,download:Y,onClick:S}=y,T=(0,a._)(y,["href","target","rel","download","onClick"]);// Auto-add security attributes for external links
var O=typeof A==="string"&&(A.startsWith("http")||A.startsWith("//"));var D=I==="_blank"&&O?"".concat(C?"".concat(C," "):"","noopener noreferrer"):C;return/*#__PURE__*/(0,s/* .jsx */.Y)("a",(0,i._)((0,n._)({ref:t,css:w,href:f||u?undefined:A,target:f||u?undefined:I,rel:D,download:f||u?undefined:Y,tabIndex:f||u?-1:b,"aria-disabled":f||u,onClick:f||u?e=>e.preventDefault():S,role:"button","data-size":l},T),{children:x}))}var{type:F="button",onClick:P,form:R,name:H,value:M}=y,N=(0,a._)(y,["type","onClick","form","name","value"]);return/*#__PURE__*/(0,s/* .jsx */.Y)("button",(0,i._)((0,n._)({ref:t,type:F,css:w,disabled:f||u,tabIndex:b,onClick:P,form:R,name:H,value:M,"data-size":l},N),{children:x}))});y.displayName="Button";/* export default */const w=y;var x=/*#__PURE__*/(0,c/* .keyframes */.i7)("0%{transform:rotate(0);}100%{transform:rotate(360deg);}");var A={notOutlined:/*#__PURE__*/(0,c/* .css */.AH)("&:disabled,&[aria-disabled='true']{background-color:",f/* .colorTokens.action.primary.disable */.I6.action.primary.disable,";color:",f/* .colorTokens.text.disable */.I6.text.disable,";svg{color:",f/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"],";}}"),outlined:/*#__PURE__*/(0,c/* .css */.AH)("&:disabled,&[aria-disabled='true']{background-color:transparent;border:none;box-shadow:inset 0px 0px 0px 1px ",f/* .colorTokens.action.outline.disable */.I6.action.outline.disable,";color:",f/* .colorTokens.text.disable */.I6.text.disable,";svg{color:",f/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"],";}}"),text:/*#__PURE__*/(0,c/* .css */.AH)("&:disabled,&[aria-disabled='true']{color:",f/* .colorTokens.text.disable */.I6.text.disable,";svg{color:",f/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"],";}}")};var E={base:/*#__PURE__*/(0,c/* .css */.AH)(v/* .styleUtils.resetButton */.x.resetButton,";",v/* .styleUtils.display.inlineFlex */.x.display.inlineFlex(),";justify-content:center;align-items:center;",p/* .typography.caption */.I.caption("medium"),";",v/* .styleUtils.text.align.center */.x.text.align.center,";color:",f/* .colorTokens.text.white */.I6.text.white,";text-decoration:none;vertical-align:middle;cursor:pointer;user-select:none;background-color:transparent;border:0;padding:",f/* .spacing["8"] */.YK["8"]," ",f/* .spacing["32"] */.YK["32"],";border-radius:",f/* .borderRadius["6"] */.Vq["6"],";z-index:",f/* .zIndex.level */.fE.level,";transition:all 150ms ease-in-out;position:relative;svg{color:",f/* .colorTokens.icon.white */.I6.icon.white,";}&:disabled,&[aria-disabled='true']{cursor:not-allowed;}&:not(:disabled):not([aria-disabled='true']){&:focus{box-shadow:",f/* .shadow.focus */.r7.focus,";}&:focus-visible{box-shadow:none;outline:2px solid ",f/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}}"),variant:{primary:/*#__PURE__*/(0,c/* .css */.AH)("background-color:",f/* .colorTokens.action.primary["default"] */.I6.action.primary["default"],";",A.notOutlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{color:",f/* .colorTokens.text.white */.I6.text.white,";background-color:",f/* .colorTokens.action.primary.hover */.I6.action.primary.hover,";}&:active{background-color:",f/* .colorTokens.action.primary.active */.I6.action.primary.active,";color:",f/* .colorTokens.text.white */.I6.text.white,";svg{color:",f/* .colorTokens.icon.white */.I6.icon.white,";}}}"),secondary:/*#__PURE__*/(0,c/* .css */.AH)("background-color:",f/* .colorTokens.action.secondary["default"] */.I6.action.secondary["default"],";color:",f/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",f/* .colorTokens.icon.brand */.I6.icon.brand,";}",A.notOutlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.action.secondary.hover */.I6.action.secondary.hover,";color:",f/* .colorTokens.text.brand */.I6.text.brand,";}&:active{background-color:",f/* .colorTokens.action.secondary.active */.I6.action.secondary.active,";color:",f/* .colorTokens.text.brand */.I6.text.brand,";}}"),tertiary:/*#__PURE__*/(0,c/* .css */.AH)("box-shadow:inset 0px 0px 0px 1px ",f/* .colorTokens.stroke["default"] */.I6.stroke["default"],";color:",f/* .colorTokens.text.subdued */.I6.text.subdued,";svg{color:",f/* .colorTokens.icon.hints */.I6.icon.hints,";}",A.outlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.background.hover */.I6.background.hover,";box-shadow:inset 0px 0px 0px 1px ",f/* .colorTokens.stroke.hover */.I6.stroke.hover,";color:",f/* .colorTokens.text.title */.I6.text.title,";svg{color:",f/* .colorTokens.icon.brand */.I6.icon.brand,";}}&:active{background-color:",f/* .colorTokens.background.active */.I6.background.active,";svg{color:",f/* .colorTokens.icon.hints */.I6.icon.hints,";}}}"),danger:/*#__PURE__*/(0,c/* .css */.AH)("background-color:",f/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail,";color:",f/* .colorTokens.text.error */.I6.text.error,";svg{color:",f/* .colorTokens.icon.error */.I6.icon.error,";}",A.notOutlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus,&:active{background-color:",f/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail,";color:",f/* .colorTokens.text.error */.I6.text.error,";}}"),WP:/*#__PURE__*/(0,c/* .css */.AH)("background-color:",f/* .colorTokens.action.primary.wp */.I6.action.primary.wp,";",A.notOutlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.action.primary.wp_hover */.I6.action.primary.wp_hover,";color:",f/* .colorTokens.text.white */.I6.text.white,";}&:active{background-color:",f/* .colorTokens.action.primary.wp */.I6.action.primary.wp,";}}"),text:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;color:",f/* .colorTokens.text.subdued */.I6.text.subdued,";padding:",f/* .spacing["8"] */.YK["8"],";svg{color:",f/* .colorTokens.icon.hints */.I6.icon.hints,";}",A.text,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:transparent;color:",f/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",f/* .colorTokens.icon.brand */.I6.icon.brand,";}}&:active{background-color:transparent;color:",f/* .colorTokens.text.subdued */.I6.text.subdued,";}}")},outlined:{primary:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;box-shadow:inset 0px 0px 0px 1px ",f/* .colorTokens.stroke.brand */.I6.stroke.brand,";color:",f/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",f/* .colorTokens.icon.brand */.I6.icon.brand,";}",A.outlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{color:",f/* .colorTokens.text.white */.I6.text.white,";svg{color:",f/* .colorTokens.icon.white */.I6.icon.white,";}}}"),secondary:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;box-shadow:inset 0px 0px 0px 1px ",f/* .colorTokens.stroke.brand */.I6.stroke.brand,";color:",f/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",f/* .colorTokens.icon.brand */.I6.icon.brand,";}",A.outlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.action.secondary.hover */.I6.action.secondary.hover,";}}"),tertiary:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;",A.outlined,";"),danger:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;border:1px solid ",f/* .colorTokens.stroke.danger */.I6.stroke.danger,";",A.outlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail,";}}"),WP:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;border:1px solid ",f/* .colorTokens.action.primary.wp */.I6.action.primary.wp,";color:",f/* .colorTokens.action.primary.wp */.I6.action.primary.wp,";svg{color:",f/* .colorTokens.icon.wp */.I6.icon.wp,";}",A.outlined,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{background-color:",f/* .colorTokens.action.primary.wp_hover */.I6.action.primary.wp_hover,";color:",f/* .colorTokens.text.white */.I6.text.white,";svg{color:",f/* .colorTokens.icon.white */.I6.icon.white,";}}}"),text:/*#__PURE__*/(0,c/* .css */.AH)("background-color:transparent;border:none;color:",f/* .colorTokens.text.primary */.I6.text.primary,";",A.text,";&:not(:disabled):not([aria-disabled='true']){&:hover,&:focus{color:",f/* .colorTokens.text.brand */.I6.text.brand,";}}"),none:/*#__PURE__*/(0,c/* .css */.AH)()},size:{regular:/*#__PURE__*/(0,c/* .css */.AH)("padding:",f/* .spacing["8"] */.YK["8"]," ",f/* .spacing["32"] */.YK["32"],";",p/* .typography.caption */.I.caption("medium"),";color:",f/* .colorTokens.text.white */.I6.text.white,";min-height:40px;"),large:/*#__PURE__*/(0,c/* .css */.AH)("padding:",f/* .spacing["12"] */.YK["12"]," ",f/* .spacing["40"] */.YK["40"],";",p/* .typography.body */.I.body("medium"),";color:",f/* .colorTokens.text.white */.I6.text.white,";min-height:48px;"),small:/*#__PURE__*/(0,c/* .css */.AH)("padding:",f/* .spacing["6"] */.YK["6"]," ",f/* .spacing["16"] */.YK["16"],";",p/* .typography.small */.I.small("medium"),";color:",f/* .colorTokens.text.white */.I6.text.white,";min-height:32px;")},isIconOnly:{true:/*#__PURE__*/(0,c/* .css */.AH)("aspect-ratio:1 / 1;&[data-size='regular']{padding:",f/* .spacing["8"] */.YK["8"],";width:40px;}&[data-size='large']{padding:",f/* .spacing["12"] */.YK["12"],";width:48px;}&[data-size='small']{padding:",f/* .spacing["6"] */.YK["6"],";width:32px;}"),false:/*#__PURE__*/(0,c/* .css */.AH)()},isLoading:{true:/*#__PURE__*/(0,c/* .css */.AH)("opacity:0.8;cursor:wait;"),false:/*#__PURE__*/(0,c/* .css */.AH)()},iconWrapper:{left:/*#__PURE__*/(0,c/* .css */.AH)("order:-1;"),right:/*#__PURE__*/(0,c/* .css */.AH)("order:1;")},buttonContent:e=>{var{loading:t,disabled:r,isIconOnly:n}=e;return/*#__PURE__*/(0,c/* .css */.AH)(v/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;",n&&"justify-content: center;"," ",t&&!r&&(0,c/* .css */.AH)(g()))},buttonIcon:e=>{var{iconPosition:t,loading:r,hasChildren:n=true}=e;return/*#__PURE__*/(0,c/* .css */.AH)("display:grid;place-items:center;margin-right:",f/* .spacing["4"] */.YK["4"],";",t==="right"&&(0,c/* .css */.AH)(m(),f/* .spacing["4"] */.YK["4"])," ",r&&(0,c/* .css */.AH)(b())," ",!n&&(0,c/* .css */.AH)(_()))},spinner:/*#__PURE__*/(0,c/* .css */.AH)("position:absolute;visibility:visible;display:flex;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);& svg{animation:",x," 1s linear infinite;}")};var k=(0,h/* .createVariation */.s)({variants:{size:{regular:E.size.regular,large:E.size.large,small:E.size.small},isLoading:{true:E.isLoading.true,false:E.isLoading.false},iconOnly:{true:E.isIconOnly.true,false:E.isIconOnly.false},variant:{primary:E.variant.primary,secondary:E.variant.secondary,tertiary:E.variant.tertiary,danger:E.variant.danger,WP:E.variant.WP,text:E.variant.text},outlined:{primary:E.outlined.primary,secondary:E.outlined.secondary,tertiary:E.outlined.tertiary,danger:E.outlined.danger,WP:E.outlined.WP,text:E.outlined.text,none:E.outlined.none}},defaultVariants:{variant:"primary",outlined:"none",size:"regular",isLoading:"false",iconOnly:"false"}},E.base)},4485:function(e,t,r){"use strict";r.d(t,{A:()=>m});/* import */var n=r(33);/* import */var i=r(1303);/* import */var a=r(2473);/* import */var o=r(690);/* import */var s=r(2025);/* import */var l=r(1594);/* import */var u=/*#__PURE__*/r.n(l);/* import */var c=r(5757);/* import */var d=r(4336);/* import */var f=r(9612);function p(){var e=(0,o._)(["\n      filter: grayscale(100%);\n    "]);p=function t(){return e};return e}var h={};var v=e=>{var{name:t,width:r=16,height:o=16,style:u,isColorIcon:c=false,ignoreKids:d}=e,p=(0,a._)(e,["name","width","height","style","isColorIcon","ignoreKids"]);var v,m;var{supportKidsIcon:_}=(0,f/* .useSVGIconConfig */.J)();var y=d!==null&&d!==void 0?d:!_;var w=y?"".concat(t,"-ignoreKids"):t;var[x,A]=(0,l.useState)(((v=h[w])===null||v===void 0?void 0:v.icon)||null);var[E,k]=(0,l.useState)(!((m=h[w])===null||m===void 0?void 0:m.icon));(0,l.useEffect)(()=>{var e;if((e=h[w])===null||e===void 0?void 0:e.icon){A(h[w].icon);k(false);return}k(true);g(t,w,r,o,y).then(e=>{A(e)}).catch(()=>{A(null)}).finally(()=>{k(false)})},[t,r,o,y,w]);var I=(0,n._)({},c&&{"data-colorize":true},p);var C=x?x.viewBox:"0 0 ".concat(r," ").concat(o);var Y=x?x.fill:"none";if(!x&&!E){return/*#__PURE__*/(0,s/* .jsx */.Y)("svg",{viewBox:C,children:/*#__PURE__*/(0,s/* .jsx */.Y)("rect",{width:r,height:o,fill:"transparent"})})}return/*#__PURE__*/(0,s/* .jsx */.Y)("svg",(0,i._)((0,n._)({css:[u,{width:r,height:o},b.svg({isColorIcon:c})],xmlns:"http://www.w3.org/2000/svg",viewBox:C,fill:Y},I),{role:"presentation","aria-hidden":true,dangerouslySetInnerHTML:{__html:x?x.icon:""}}))};function g(e,t,r,n,i){var a,o,s;if((a=h[t])===null||a===void 0?void 0:a.icon){// Icon already loaded
return Promise.resolve(h[t].icon)}if((o=h[t])===null||o===void 0?void 0:o.promise){// Fetch already in progress, return existing promise
return h[t].promise}var l=e.trim().replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([a-zA-Z])(\d+)/g,"$1-$2").toLowerCase();var u=!i&&d/* .tutorConfig.is_kids_mode */.P.is_kids_mode&&((s=d/* .tutorConfig.kids_icons_registry */.P.kids_icons_registry)===null||s===void 0?void 0:s.includes(l));var c=u?"assets/icons/kids/":"assets/icons/";var f="".concat(d/* .tutorConfig.tutor_url */.P.tutor_url).concat(c).concat(l,".svg");var p=fetch(f).then(t=>{if(!t.ok){throw new Error("Failed to load icon: ".concat(e))}return t.text()}).then(e=>{var i=new DOMParser;var a=i.parseFromString(e,"image/svg+xml");var o=a.querySelector("svg");var s=(o===null||o===void 0?void 0:o.getAttribute("viewBox"))||"0 0 ".concat(r," ").concat(n);var l=(o===null||o===void 0?void 0:o.getAttribute("fill"))||"none";var u=(o===null||o===void 0?void 0:o.innerHTML)||"";var c={viewBox:s,fill:l,icon:u};h[t]={icon:c};return c}).catch(e=>{h[t]={error:e};throw e});h[t]={loading:true,promise:p};return p}v.displayName="SVGIcon";/* export default */const m=/*#__PURE__*/(0,l.memo)(v,(e,t)=>{var r,n;return e.name===t.name&&e.height===t.height&&e.width===t.width&&e.isColorIcon===t.isColorIcon&&e.ignoreKids===t.ignoreKids&&((r=e.style)===null||r===void 0?void 0:r.name)===((n=t.style)===null||n===void 0?void 0:n.name)});var b={svg:e=>{var{isColorIcon:t=false}=e;return/*#__PURE__*/(0,c/* .css */.AH)("transition:filter 0.3s ease-in-out;",t&&(0,c/* .css */.AH)(p()),";")}}},5570:function(e,t,r){"use strict";// EXPORTS
r.d(t,{A:()=>/* binding */m});// EXTERNAL MODULE: ./node_modules/.pnpm/@emotion+react@11.14.0_@types+react@18.3.1_react@18.3.1/node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js
var n=r(2025);// EXTERNAL MODULE: external "React"
var i=r(1594);// EXTERNAL MODULE: ./node_modules/.pnpm/@emotion+react@11.14.0_@types+react@18.3.1_react@18.3.1/node_modules/@emotion/react/dist/emotion-react.esm.js
var a=r(5757);// EXTERNAL MODULE: external "wp.i18n"
var o=r(2470);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/atoms/Button.tsx
var s=r(9878);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/atoms/SVGIcon.tsx
var l=r(4485);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/config.ts
var u=r(4336);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/styles.ts
var c=r(7764);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/typography.ts
var d=r(983);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/controls/Show.tsx
var f=r(6025);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/style-utils.ts
var p=r(4958);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/production-error.webp
const h=r.p+"images/production-error-24158233.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/production-error-2x.webp
const v=r.p+"images/production-error-2x-dc6519df.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/ErrorBoundaryProd.tsx
class g extends i.Component{static getDerivedStateFromError(){return{hasError:true}}componentDidCatch(e,t){// eslint-disable-next-line no-console
console.error(e,t)}render(){if(this.state.hasError){return/*#__PURE__*/(0,n/* .jsx */.Y)("div",{css:b.container,children:/*#__PURE__*/(0,n/* .jsxs */.FD)("div",{css:b.productionErrorWrapper,children:[/*#__PURE__*/(0,n/* .jsxs */.FD)("div",{css:b.productionErrorHeader,children:[/*#__PURE__*/(0,n/* .jsx */.Y)("img",{src:h,srcSet:"".concat(v," 2x"),alt:(0,o.__)("Error","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)("h5",{css:d/* .typography.heading5 */.I.heading5("medium"),children:(0,o.__)("Oops! Something went wrong","tutor-pro")}),/*#__PURE__*/(0,n/* .jsxs */.FD)("div",{css:b.instructions,children:[/*#__PURE__*/(0,n/* .jsx */.Y)("p",{children:(0,o.__)("Try the following steps to resolve the issue:","tutor-pro")}),/*#__PURE__*/(0,n/* .jsxs */.FD)("ul",{children:[/*#__PURE__*/(0,n/* .jsx */.Y)("li",{children:(0,o.__)("Refresh the page.","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)("li",{children:(0,o.__)("Clear your browser cache.","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)(f/* ["default"] */.A,{when:u/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url,children:/*#__PURE__*/(0,n/* .jsx */.Y)("li",{children:(0,o.__)("Ensure the Free and Pro plugins are on the same version.","tutor-pro")})})]})]})]}),/*#__PURE__*/(0,n/* .jsxs */.FD)("div",{css:b.productionFooter,children:[/*#__PURE__*/(0,n/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,n/* .jsx */.Y)(s/* ["default"] */.A,{variant:"secondary",icon:/*#__PURE__*/(0,n/* .jsx */.Y)(l/* ["default"] */.A,{name:"refresh",height:24,width:24}),onClick:()=>window.location.reload(),children:(0,o.__)("Reload","tutor-pro")})}),/*#__PURE__*/(0,n/* .jsxs */.FD)("div",{css:b.support,children:[/*#__PURE__*/(0,n/* .jsx */.Y)("span",{children:(0,o.__)("Still having trouble?","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)("span",{children:(0,o.__)("Contact","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)("a",{href:u/* ["default"].TUTOR_SUPPORT_PAGE_URL */.A.TUTOR_SUPPORT_PAGE_URL,children:(0,o.__)("Support","tutor-pro")}),/*#__PURE__*/(0,n/* .jsx */.Y)("span",{children:(0,o.__)("for assistance.","tutor-pro")})]})]})]})})}return this.props.children}constructor(e){super(e);this.state={hasError:false}}}/* export default */const m=g;var b={container:/*#__PURE__*/(0,a/* .css */.AH)("width:100%;height:auto;display:flex;justify-content:center;align-items:center;"),productionErrorWrapper:/*#__PURE__*/(0,a/* .css */.AH)(p/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",c/* .spacing["20"] */.YK["20"],";max-width:500px;width:100%;"),productionErrorHeader:/*#__PURE__*/(0,a/* .css */.AH)(p/* .styleUtils.display.flex */.x.display.flex("column"),";align-items:center;padding:",c/* .spacing["32"] */.YK["32"],";background:",c/* .colorTokens.background.white */.I6.background.white,";border-radius:",c/* .borderRadius["12"] */.Vq["12"],";box-shadow:0px -4px 0px 0px #ff0000;gap:",c/* .spacing["16"] */.YK["16"],";h5{text-align:center;}img{height:104px;width:101px;object-position:center;object-fit:contain;}"),instructions:/*#__PURE__*/(0,a/* .css */.AH)("width:100%;max-width:333px;p{width:100%;",d/* .typography.caption */.I.caption(),";margin-bottom:",c/* .spacing["4"] */.YK["4"],";}ul{padding-left:",c/* .spacing["16"] */.YK["16"],";li{",d/* .typography.caption */.I.caption(),";color:",c/* .colorTokens.text.title */.I6.text.title,";list-style:unset;margin-bottom:",c/* .spacing["2"] */.YK["2"],";&::marker{color:",c/* .colorTokens.icon["default"] */.I6.icon["default"],";}}}"),productionFooter:/*#__PURE__*/(0,a/* .css */.AH)(p/* .styleUtils.display.flex */.x.display.flex("column"),";align-items:center;gap:",c/* .spacing["12"] */.YK["12"],";"),support:/*#__PURE__*/(0,a/* .css */.AH)(p/* .styleUtils.flexCenter */.x.flexCenter("row"),";text-align:center;flex-wrap:wrap;gap:",c/* .spacing["4"] */.YK["4"],";",d/* .typography.caption */.I.caption(),";color:",c/* .colorTokens.text.title */.I6.text.title,";a{color:",c/* .colorTokens.text.brand */.I6.text.brand,";text-decoration:none;}")}},4336:function(e,t,r){"use strict";r.d(t,{A:()=>l,P:()=>o});/* eslint-disable @typescript-eslint/no-explicit-any */var n,i;var a={ID:0,ajaxurl:"",site_url:"",home_url:"",site_title:"",base_path:"",tutor_url:"",tutor_pro_url:"",dashboard_url:"",nonce_key:"",_tutor_nonce:"",loading_icon_url:"",placeholder_img_src:"",enable_lesson_classic_editor:"",tutor_frontend_dashboard_url:"",backend_course_list_url:"",backend_bundle_list_url:"",frontend_course_list_url:"",frontend_bundle_list_url:"",wp_date_format:"",wp_rest_nonce:"",is_admin:"",is_admin_bar_showing:"",max_upload_size:"",content_change_event:"",is_tutor_course_edit:"",assignment_max_file_allowed:"",current_page:"",quiz_answer_display_time:"",is_ssl:"",course_list_page_url:"",course_post_type:"",local:"",tutor_pn_vapid_key:"",tutor_pn_client_id:"",tutor_pn_subscription_saved:"",difficulty_levels:[],supported_video_sources:[],edd_products:[],bp_groups:[],timezones:{},addons_data:[],kids_icons_registry:[],is_kids_mode:false,user_preferences:{auto_play_next:false,contrast:"",font_scale:1,learning_mood:"modern",motion_effects:"auto",theme:"light",vision:"normal"},is_legacy_learning_mode:false,current_user:{data:{id:"",user_login:"",user_pass:"",user_nicename:"",user_email:"",user_url:"",user_registered:"",user_activation_key:"",user_status:"",display_name:""},caps:{},cap_key:"",roles:[],allcaps:{},filter:null},settings:{learning_mode:"",monetize_by:"tutor",enable_course_marketplace:"off",course_permalink_base:"",supported_video_sources:"",enrollment_expiry_enabled:"off",enable_q_and_a_on_course:"off",instructor_can_delete_course:"off",instructor_can_change_course_author:"off",instructor_can_manage_co_instructors:"off",chatgpt_enable:"off",course_builder_logo_url:"",chatgpt_key_exist:false,hide_admin_bar_for_users:"off",enable_redirect_on_course_publish_from_frontend:"off",instructor_can_publish_course:"off",youtube_api_key_exist:false,membership_only_mode:false,enable_tax:false,enable_individual_tax_control:false,is_tax_included_in_price:false,pagination_per_page:10,has_active_membership_plans:false},tutor_currency:{symbol:"",currency:"",position:"",thousand_separator:"",decimal_separator:"",no_of_decimal:""},visibility_control:{course_builder:{}}};var o=window._tutorobject||a;window.ajaxurl=o.ajaxurl;var s={TUTOR_SITE_URL:o.site_url,WP_AJAX_BASE_URL:o.ajaxurl,WP_API_BASE_URL:"".concat(((n=window.wpApiSettings)===null||n===void 0?void 0:n.root)||"").concat(((i=window.wpApiSettings)===null||i===void 0?void 0:i.versionString)||""),VIDEO_SOURCES_SETTINGS_URL:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor_settings&tab_page=course#field_supported_video_sources"),MONETIZATION_SETTINGS_URL:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor_settings&tab_page=monetization"),TUTOR_PRICING_PAGE:"https://tutorlms.com/pricing/",TUTOR_ADDONS_PAGE:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor-addons"),CHATGPT_PLATFORM_URL:"https://platform.openai.com/account/api-keys",TUTOR_MY_COURSES_PAGE_URL:"".concat(o.tutor_frontend_dashboard_url,"/my-courses"),TUTOR_SUPPORT_PAGE_URL:"https://tutorlms.com/support",TUTOR_SUBSCRIPTIONS_PAGE:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor-subscriptions"),TUTOR_ENROLLMENTS_PAGE:"".concat(o.site_url,"/wp-admin/admin.php?page=enrollments"),TUTOR_COUPONS_PAGE:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor_coupons"),TUTOR_IMPORT_EXPORT_PAGE:"".concat(o.site_url,"/wp-admin/admin.php?page=tutor-tools&sub_page=import_export")};/* export default */const l=s},7461:function(e,t,r){"use strict";r.d(t,{I4:()=>m,TF:()=>b,UA:()=>k,V8:()=>g,cW:()=>T,gt:()=>A,j8:()=>C,oW:()=>I,re:()=>u,vN:()=>y,yl:()=>w});/* import */var n=r(2470);/* import */var i=/*#__PURE__*/r.n(n);/* import */var a=r(7764);var o=/* unused pure expression or super */null&&5*1024*1024;var s=/* unused pure expression or super */null&&["image/jpeg","image/png","image/gif"];var l=10;var u=10;var c=48;var d=7;var f=3;var p="/product";var h="/category";var v="/tag";var g=document.dir==="rtl";var m="32px";var b="46px";var _=window.innerWidth;var y={isAboveDesktop:_>=a/* .DesktopBreakpoint */.cH,isAboveTablet:_>=a/* .TabletBreakpoint */.uh,isAboveMobile:_>=a/* .MobileBreakpoint */.G2,isAboveSmallMobile:_>=a/* .SmallMobileBreakpoint */.PB};var w={HEADER_HEIGHT:56,MARGIN_TOP:88,BASIC_MODAL_HEADER_HEIGHT:50,BASIC_MODAL_MAX_WIDTH:1218};var x=/* unused pure expression or super */null&&{MIN_NOTEBOOK_HEIGHT:430,MIN_NOTEBOOK_WIDTH:360,NOTEBOOK_HEADER:50};var A={ADMINISTRATOR:"administrator",TUTOR_INSTRUCTOR:"tutor_instructor",SUBSCRIBER:"subscriber"};var E=/*#__PURE__*//* unused pure expression or super */null&&function(e){e["notebook"]="tutor_course_builder_notebook";return e}({});var k=/*#__PURE__*/function(e){e["day"]="dd";e["month"]="MMM";e["year"]="yyyy";e["yearMonthDay"]="yyyy-LL-dd";e["monthDayYear"]="MMM dd, yyyy";e["hoursMinutes"]="hh:mm a";e["yearMonthDayHourMinuteSecond"]="yyyy-MM-dd hh:mm:ss";e["yearMonthDayHourMinuteSecond24H"]="yyyy-MM-dd HH:mm:ss";e["monthDayYearHoursMinutes"]="MMM dd, yyyy, hh:mm a";e["localMonthDayYearHoursMinutes"]="PPp";e["activityDate"]="MMM dd, yyyy hh:mm aa";e["validityDate"]="dd MMMM yyyy";e["dayMonthYear"]="do MMMM, yyyy";return e}({});var I=/*#__PURE__*/function(e){e["COURSE_BUNDLE"]="course-bundle";e["SUBSCRIPTION"]="subscription";e["SOCIAL_LOGIN"]="social-login";e["CONTENT_DRIP"]="content-drip";e["TUTOR_MULTI_INSTRUCTORS"]="tutor-multi-instructors";e["TUTOR_ASSIGNMENTS"]="tutor-assignments";e["TUTOR_COURSE_PREVIEW"]="tutor-course-preview";e["TUTOR_COURSE_ATTACHMENTS"]="tutor-course-attachments";e["TUTOR_GOOGLE_MEET_INTEGRATION"]="google-meet";e["TUTOR_REPORT"]="tutor-report";e["EMAIL"]="tutor-email";e["CALENDAR"]="calendar";e["NOTIFICATIONS"]="tutor-notifications";e["GOOGLE_CLASSROOM_INTEGRATION"]="google-classroom";e["TUTOR_ZOOM_INTEGRATION"]="tutor-zoom";e["QUIZ_EXPORT_IMPORT"]="quiz-import-export";e["ENROLLMENT"]="enrollments";e["TUTOR_CERTIFICATE"]="tutor-certificate";e["GRADEBOOK"]="gradebook";e["TUTOR_PREREQUISITES"]="tutor-prerequisites";e["BUDDYPRESS"]="buddypress";e["WOOCOMMERCE_SUBSCRIPTIONS"]="wc-subscriptions";e["PAID_MEMBERSHIPS_PRO"]="pmpro";e["RESTRICT_CONTENT_PRO"]="restrict-content-pro";e["WEGLOT"]="tutor-weglot";e["WPML_MULTILINGUAL_CMS"]="tutor-wpml";e["H5P_INTEGRATION"]="h5p";e["CONTENT_BANK"]="content-bank";return e}({});var C={YOUTUBE:/^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#&?]*).*/,VIMEO:/^.*(vimeo\.com\/)((channels\/[A-z]+\/)|(groups\/[A-z]+\/videos\/))?([0-9]+)/,// eslint-disable-next-line no-useless-escape
EXTERNAL_URL:/(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/,SHORTCODE:/^\[.*\]$/};var Y=[{label:(0,n.__)("Public","tutor-pro"),value:"publish"},{label:(0,n.__)("Password Protected","tutor-pro"),value:"password_protected"},{label:(0,n.__)("Private","tutor-pro"),value:"private"}];var S={COURSE_BUILDER:{BASICS:{FEATURED_IMAGE:"course_builder.basics_featured_image",INTRO_VIDEO:"course_builder.basics_intro_video",SCHEDULING_OPTIONS:"course_builder.basics_scheduling_options",PRICING_OPTIONS:"course_builder.basics_pricing_options",CATEGORIES:"course_builder.basics_categories",TAGS:"course_builder.basics_tags",AUTHOR:"course_builder.basics_author",INSTRUCTORS:"course_builder.basics_instructors",OPTIONS:{GENERAL:"course_builder.basics_options_general",CONTENT_DRIP:"course_builder.basics_options_content_drip",ENROLLMENT:"course_builder.basics_options_enrollment"}},CURRICULUM:{LESSON:{FEATURED_IMAGE:"course_builder.curriculum_lesson_featured_image",VIDEO:"course_builder.curriculum_lesson_video",VIDEO_PLAYBACK_TIME:"course_builder.curriculum_lesson_video_playback_time",EXERCISE_FILES:"course_builder.curriculum_lesson_exercise_files",LESSON_PREVIEW:"course_builder.curriculum_lesson_lesson_preview"}},ADDITIONAL:{COURSE_BENEFITS:"course_builder.additional_course_benefits",COURSE_TARGET_AUDIENCE:"course_builder.additional_course_target_audience",TOTAL_COURSE_DURATION:"course_builder.additional_total_course_duration",COURSE_MATERIALS_INCLUDES:"course_builder.additional_course_material_includes",COURSE_REQUIREMENTS:"course_builder.additional_course_requirements",CERTIFICATES:"course_builder.additional_certificate",ATTACHMENTS:"course_builder.additional_attachments",SCHEDULE_LIVE_CLASS:"course_builder.additional_schedule_live_class"}}};var T={NEW:"new",UPDATE:"update",NO_CHANGE:"no_change"};var O=/* unused pure expression or super */null&&{name:"checkbox",// eslint-disable-next-line @typescript-eslint/no-explicit-any
value:"",onChange:()=>{},onBlur:()=>{},ref:()=>{}};var D=/* unused pure expression or super */null&&{invalid:false,isTouched:false,isDirty:false,isValidating:false,error:undefined}},7764:function(e,t,r){"use strict";r.d(t,{EA:()=>y,G2:()=>m,I6:()=>s,J:()=>u,K_:()=>d,PB:()=>g,Vq:()=>h,Wy:()=>c,YK:()=>l,cH:()=>_,fE:()=>v,iL:()=>w,mw:()=>o,oU:()=>f,r7:()=>p,uh:()=>b});var n=64;var i=355;var a=56;var o={inter:"'Inter', sans-serif;",roboto:"'Roboto', sans-serif;",sfProDisplay:"'SF Pro Display', sans-serif;"};var s={brand:{blue:"#0049f8",black:"#092844"},ai:{gradient_1:"linear-gradient(73.09deg, #FF9645 18.05%, #FF6471 30.25%, #CF6EBD 55.42%, #A477D1 71.66%, #3E64DE 97.9%)",gradient_1_rtl:"linear-gradient(73.09deg, #3E64DE 97.9%, #A477D1 28.34%, #CF6EBD 44.58%, #FF6471 69.75%, #FF9645 81.95%)",gradient_2:"linear-gradient(71.97deg, #FF9645 18.57%, #FF6471 63.71%, #CF6EBD 87.71%, #9B62D4 107.71%, #3E64DE 132.85%)",gradient_2_rtl:"linear-gradient(71.97deg, #3E64DE -67.15%, #9B62D4 -92.29%, #CF6EBD 87.71%, #FF6471 36.29%, #FF9645 81.43%)"},text:{primary:"#212327",title:"#41454f",subdued:"#5b616f",hints:"#767c8e",disable:"#a4a8b2",white:"#ffffff",brand:"#3a62e0",success:"#239c46",warning:"#bd7e00",error:"#f44337",status:{processing:"#007a66",pending:"#a8710d",failed:"#cc1213",completed:"#097336",onHold:"#ac0640",cancelled:"#6f7073",primary:"#3e64de"},wp:"#2271b1",magicAi:"#484F66",ai:{purple:"#9D50FF",gradient:"linear-gradient(73.09deg, #FF9645 18.05%, #FF6471 30.25%, #CF6EBD 55.42%, #A477D1 71.66%, #3E64DE 97.9%)"}},surface:{tutor:"#ffffff",wordpress:"#f1f1f1",navbar:"#F5F5F5",courseBuilder:"#F8F8F8"},background:{brand:"#3e64de",white:"#ffffff",black:"#000000",default:"#f4f6f9",hover:"#f5f6fa",active:"#f0f1f5",disable:"#ebecf0",modal:"#161616",dark10:"#212327",dark20:"#31343b",dark30:"#41454f",null:"#ffffff",success:{fill30:"#F5FBF7",fill40:"#E5F5EB"},warning:{fill40:"#FDF4E3"},status:{success:"#e5f5eb",warning:"#fdf4e3",drip:"#e9edfb",onHold:"#fae8ef",processing:"#e5f9f6",errorFail:"#ffebeb",cancelled:"#eceef2",refunded:"#e5f5f5"},magicAi:{default:"#FBF6FF",skeleton:"#FEF4FF",8:"rgba(201, 132, 254, 0.08)"}},icon:{default:"#9197a8",hover:"#4b505c",subdued:"#7e838f",hints:"#b6b9c2",disable:{default:"#b8bdcc",background:"#cbced6",muted:"#dedede"},white:"#ffffff",brand:"#446ef5",wp:"#007cba",error:"#f55e53",warning:"#ffb505",success:"#22a848",drop:"#4761b8",processing:"#00a388"},stroke:{default:"#c3c5cb",hover:"#9095a3",bold:"#41454f",disable:"#dcdfe5",divider:"#e0e2ea",border:"#cdcfd5",white:"#ffffff",brand:"#577fff",neutral:"#7391f0",success:{default:"#4eba6d",fill70:"#6AC088"},warning:"#f5ba63",danger:"#ff9f99",status:{success:"#c8e5d2",warning:"#fae5c5",processing:"#c3e5e0",onHold:"#f1c1d2",cancelled:"#e1e1e8",refunded:"#ccebea",fail:"#fdd9d7"},magicAi:"#C984FE"},border:{neutral:"#C8C8C8",tertiary:"#F5F5F5"},action:{primary:{default:"#3e64de",hover:"#3a5ccc",focus:"#00cceb",active:"#3453b8",disable:"#e3e6eb",wp:"#2271b1",wp_hover:"#135e96"},secondary:{default:"#e9edfb",hover:"#d6dffa",active:"#d0d9f2",gray:"#f0f1f1"},outline:{default:"#ffffff",hover:"#e9edfb",active:"#e1e7fa",disable:"#cacfe0"}},wordpress:{primary:"#2271b1",primaryLight:"#007cba",hoverShape:"#7faee6",sidebarChildText:"#4ea2e6",childBg:"#2d3337",mainBg:"#1e2327",text:"#b5bcc2"},design:{dark:"#1a1b1e",grey:"#41454f",white:"#ffffff",brand:"#3e64de",success:"#24a148",warning:"#ed9700",error:"#f44337"},primary:{main:"#3e64de",100:"#28408e",90:"#395bca",80:"#6180e4",70:"#95aaed",60:"#bdcaf1",50:"#d2dbf5",40:"#e9edfb",30:"#f6f8fd"},color:{black:{main:"#212327",100:"#0b0c0e",90:"#1a1b1e",80:"#31343b",70:"#41454f",60:"#5b616f",50:"#727889",40:"#9ca0ac",30:"#b4b7c0",20:"#c0c3cb",10:"#cdcfd5",8:"#e3e6eb",5:"#eff1f6",3:"#f4f6f9",2:"#fcfcfd",0:"#ffffff"},danger:{main:"#f44337",100:"#c62828",90:"#e53935",80:"#ef5350",70:"#e57373",60:"#fbb4af",50:"#fdd9d7",40:"#feeceb",30:"#fff7f7"},success:{main:"#24a148",100:"#075a2a",90:"#007a38",80:"#3aaa5a",70:"#6ac088",60:"#99d4ae",50:"#cbe9d5",40:"#e5f5eb",30:"#f5fbf7"},warning:{main:"#ed9700",100:"#895800",90:"#e08e00",80:"#f3a33c",70:"#f5ba63",60:"#f9d093",50:"#fce7c7",40:"#fdf4e3",30:"#fefbf4"}},bg:{gray20:"#e3e5eb",white:"#ffffff",error:"#f46363",success:"#24a148",light:"#f9fafc",brand:"#E6ECFF"},ribbon:{red:"linear-gradient(to bottom, #ee0014 0%,#c10010 12.23%,#ee0014 100%)",orange:"linear-gradient(to bottom, #ff7c02 0%,#df6c00 12.23%,#f78010 100%)",green:"linear-gradient(to bottom, #02ff49 0%,#00bb35 12.23%,#04ca3c 100%)",blue:"linear-gradient(to bottom, #0267ff 3.28%,#004bbb 12.23%,#0453ca 100%)"},additionals:{lightMint:"#ebfffb",lightPurple:"#f4e8f8",lightRed:"#ffebeb",lightYellow:"#fffaeb",lightCoffee:"#fcf4ee",lightPurple2:"#f7ebfe",lightBlue:"#edf1fd"}};var l={0:"0",2:"2px",4:"4px",6:"6px",8:"8px",10:"10px",12:"12px",16:"16px",20:"20px",24:"24px",28:"28px",32:"32px",36:"36px",40:"40px",48:"48px",56:"56px",64:"64px",72:"72px",96:"96px",128:"128px",256:"256px",512:"512px"};var u={10:"0.625rem",11:"0.688rem",12:"0.75rem",13:"0.813rem",14:"0.875rem",15:"0.938rem",16:"1rem",18:"1.125rem",20:"1.25rem",24:"1.5rem",28:"1.75rem",30:"1.875rem",32:"2rem",36:"2.25rem",40:"2.5rem",48:"3rem",56:"3.5rem",60:"3.75rem",64:"4rem",80:"5rem"};var c={thin:100,extraLight:200,light:300,regular:400,medium:500,semiBold:600,bold:700,extraBold:800,black:900};var d={12:"0.5rem",14:"0.75rem",15:"0.90rem",16:"1rem",18:"1.125rem",20:"1.25rem",21:"1.313rem",22:"1.375rem",24:"1.5rem",26:"1.625rem",28:"1.75rem",32:"2rem",30:"1.875rem",34:"2.125rem",36:"2.25rem",40:"2.5rem",44:"2.75rem",48:"3rem",56:"3.5rem",58:"3.625rem",64:"4rem",70:"4.375rem",81:"5.063rem"};var f={tight:"-0.05em",normal:"0",wide:"0.05em",extraWide:"0.1em"};var p={focus:"0px 0px 0px 0px rgba(255, 255, 255, 1), 0px 0px 0px 3px rgba(0, 73, 248, 0.9)",button:"0px 1px 0.25px rgba(17, 18, 19, 0.08), inset 0px -1px 0.25px rgba(17, 18, 19, 0.24)",combinedButton:"0px 1px 0px rgba(0, 0, 0, 0.05), inset 0px -1px 0px #bcbfc3, inset 1px 0px 0px #bbbfc3, inset 0px 1px 0px #bbbfc3",combinedButtonExtend:"0px 1px 0px rgba(0, 0, 0, 0.05), inset 0px -1px 0px #bcbfc3, inset 1px 0px 0px #bbbfc3, inset 0px 1px 0px #bbbfc3, inset -1px 0px 0px #bbbfc3",insetButtonPressed:"inset 0px 2px 0px rgba(17, 18, 19, 0.08)",card:"0px 2px 1px rgba(17, 18, 19, 0.05), 0px 0px 1px rgba(17, 18, 19, 0.25)",popover:"0px 6px 22px rgba(17, 18, 19, 0.08), 0px 4px 10px rgba(17, 18, 19, 0.1)",modal:"0px 0px 2px rgba(17, 18, 19, 0.2), 0px 30px 72px rgba(17, 18, 19, 0.2)",base:"0px 1px 3px rgba(17, 18, 19, 0.15)",input:"0px 1px 0px rgba(17, 18, 19, 0.05)",switch:"0px 2px 4px 0px #0000002A",tabs:"inset 0px -1px 0px #dbdcdf",dividerTop:"inset 0px 1px 0px #E4E5E7",underline:"0px 1px 0px #C9CBCF",drag:"3px 7px 8px 0px #00000014",dropList:"0px 6px 20px 0px rgba(28, 49, 104, 0.1)",notebook:"0 0 4px 0 rgba(0, 30, 43, 0.16)",scrollable:"0px -2px 2px 0px #00000014",footer:"0px 1px 0px 0px #E4E5E7 inset"};var h={2:"2px",4:"4px",5:"5px",6:"6px",8:"8px",10:"10px",12:"12px",14:"14px",20:"20px",24:"24px",30:"30px",40:"40px",50:"50px",54:"54px",circle:"50%",card:"8px",min:"4px",input:"6px"};var v={negative:-1,positive:1,dropdown:2,level:0,sidebar:9,header:10,footer:10,modal:25,notebook:1e5,highest:99999,toast:100001};var g=480;var m=782;var b=992;var _=1280;var y={smallMobile:"@media(max-width: ".concat(g,"px)"),mobile:"@media(max-width: ".concat(m,"px)"),smallTablet:"@media(max-width: ".concat(b-1,"px)"),tablet:"@media(max-width: ".concat(_-1,"px)"),desktop:"@media(min-width: ".concat(_,"px)")};var w=1006},983:function(e,t,r){"use strict";r.d(t,{I:()=>a});/* import */var n=r(5757);/* import */var i=r(7764);var a={heading1:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["80"] */.J["80"],";line-height:",i/* .lineHeight["81"] */.K_["81"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},heading2:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["60"] */.J["60"],";line-height:",i/* .lineHeight["70"] */.K_["70"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},heading3:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["40"] */.J["40"],";line-height:",i/* .lineHeight["48"] */.K_["48"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},heading4:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["30"] */.J["30"],";line-height:",i/* .lineHeight["40"] */.K_["40"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},heading5:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["24"] */.J["24"],";line-height:",i/* .lineHeight["34"] */.K_["34"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},heading6:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["20"] */.J["20"],";line-height:",i/* .lineHeight["30"] */.K_["30"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},body:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["16"] */.J["16"],";line-height:",i/* .lineHeight["26"] */.K_["26"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},caption:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["15"] */.J["15"],";line-height:",i/* .lineHeight["24"] */.K_["24"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},small:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["13"] */.J["13"],";line-height:",i/* .lineHeight["18"] */.K_["18"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")},tiny:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"regular";return/*#__PURE__*/(0,n/* .css */.AH)("font-size:",i/* .fontSize["11"] */.J["11"],";line-height:",i/* .lineHeight["16"] */.K_["16"],";color:",i/* .colorTokens.text.primary */.I6.text.primary,";font-weight:",i/* .fontWeight */.Wy[e],";font-family:",i/* .fontFamily.inter */.mw.inter,";")}}},9612:function(e,t,r){"use strict";r.d(t,{J:()=>l,j:()=>u});/* import */var n=r(2025);/* import */var i=r(1594);/* import */var a=/*#__PURE__*/r.n(i);var o={supportKidsIcon:false};var s=/*#__PURE__*/a().createContext(o);var l=()=>(0,i.useContext)(s);var u=e=>{var{children:t,supportKidsIcon:r=false}=e;return/*#__PURE__*/(0,n/* .jsx */.Y)(s.Provider,{value:{supportKidsIcon:r},children:t})}},6025:function(e,t,r){"use strict";r.d(t,{A:()=>o});/* import */var n=r(8638);var i=e=>{return(0,n/* .isDefined */.O9)(e)&&!!e};var a=e=>{var{when:t,children:r,fallback:n=null}=e;var a=i(t);if(a){return typeof r==="function"?r(t):r}return n};/* export default */const o=a},7367:function(e,t,r){"use strict";r.d(t,{s:()=>a});/* import */var n=r(8638);/* import */var i=r(2927);var a=(e,t)=>{return r=>{var{variants:a,defaultVariants:o}=e;var s=[];if((0,n/* .isDefined */.O9)(t)){s.push(t)}var l=(0,i/* .getObjectKeys */.Co)(a).map(e=>{var t=r[e];var n=o[e];if(t===null){return null}var i=t||n;return a[e][i]});s.push(...l.filter(n/* .isDefined */.O9));return s}}},4958:function(e,t,r){"use strict";r.d(t,{v:()=>c,x:()=>d});/* import */var n=r(690);/* import */var i=r(5757);/* import */var a=r(7764);/* import */var o=r(983);function s(){var e=(0,n._)(["\n      flex-direction: column;\n    "]);s=function t(){return e};return e}function l(){var e=(0,n._)(["\n      background-color: ",";\n    "]);l=function t(){return e};return e}function u(){var e=(0,n._)(["\n      cursor: grabbing;\n    "]);u=function t(){return e};return e}var c=()=>/*#__PURE__*/(0,i/* .css */.AH)("body.tutor-backend-tutor-content-bank{@media screen and (max-width:600px){#wpadminbar{position:fixed;}}}*,::after,::before{box-sizing:border-box;}html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0;font-family:",a/* .fontFamily.inter */.mw.inter,";height:100%;}main{display:block;}h1{font-size:2em;margin:0.67em 0;}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace,monospace;font-size:1em;}a{background-color:transparent;&:hover{color:inherit;}}li{list-style:none;margin:0;}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder;}code,kbd,samp{font-family:monospace,monospace;font-size:1em;}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sub{bottom:-0.25em;}sup{top:-0.5em;}img{border-style:none;}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible;}button,select{text-transform:none;}button,[type='button'],[type='reset'],[type='submit']{-webkit-appearance:button;}button::-moz-focus-inner,[type='button']::-moz-focus-inner,[type='reset']::-moz-focus-inner,[type='submit']::-moz-focus-inner{border-style:none;padding:0;}button:-moz-focusring,[type='button']:-moz-focusring,[type='reset']:-moz-focusring,[type='submit']:-moz-focusring{outline:1px dotted ButtonText;}fieldset{padding:0.35em 0.75em 0.625em;}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline;}textarea{overflow:auto;height:auto;}[type='checkbox'],[type='radio']{box-sizing:border-box;padding:0;}[type='number']::-webkit-inner-spin-button,[type='number']::-webkit-outer-spin-button{height:auto;}[type='search']{-webkit-appearance:textfield;outline-offset:-2px;}[type='search']::-webkit-search-decoration{-webkit-appearance:none;}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block;}summary{display:list-item;}template{display:none;}[hidden]{display:none;}:is(h1,h2,h3,h4,h5,h6,p){padding:0;margin:0;text-transform:unset;}table{th{text-align:-webkit-match-parent;}}");var d={centeredFlex:/*#__PURE__*/(0,i/* .css */.AH)("display:flex;justify-content:center;align-items:center;width:100%;height:100%;"),flexCenter:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"row";return/*#__PURE__*/(0,i/* .css */.AH)("display:flex;justify-content:center;align-items:center;flex-direction:row;",e==="column"&&(0,i/* .css */.AH)(s()))},boxReset:/*#__PURE__*/(0,i/* .css */.AH)("padding:0;"),ulReset:/*#__PURE__*/(0,i/* .css */.AH)("list-style:none;padding:0;margin:0;"),resetButton:/*#__PURE__*/(0,i/* .css */.AH)("background:none;border:none;outline:none;box-shadow:none;padding:0;margin:0;text-align:inherit;font-family:",a/* .fontFamily.inter */.mw.inter,";cursor:pointer;"),cardInnerSection:/*#__PURE__*/(0,i/* .css */.AH)("padding:",a/* .spacing["20"] */.YK["20"]," ",a/* .spacing["20"] */.YK["20"]," ",a/* .spacing["24"] */.YK["24"]," ",a/* .spacing["20"] */.YK["20"],";display:flex;flex-direction:column;gap:",a/* .spacing["24"] */.YK["24"],";"),fieldGroups:e=>/*#__PURE__*/(0,i/* .css */.AH)("display:flex;flex-direction:column;gap:",a/* .spacing */.YK[e],";"),titleAliasWrapper:/*#__PURE__*/(0,i/* .css */.AH)("display:flex;flex-direction:column;gap:",a/* .spacing["12"] */.YK["12"],";"),inlineSwitch:/*#__PURE__*/(0,i/* .css */.AH)("display:flex;justify-content:space-between;align-items:center;"),overflowYAuto:/*#__PURE__*/(0,i/* .css */.AH)("overflow-y:auto;scrollbar-gutter:stable;::-webkit-scrollbar{background-color:",a/* .colorTokens.primary["40"] */.I6.primary["40"],";width:3px;}::-webkit-scrollbar-thumb{background-color:",a/* .colorTokens.design.brand */.I6.design.brand,";border-radius:",a/* .borderRadius["30"] */.Vq["30"],";}"),overflowXAuto:/*#__PURE__*/(0,i/* .css */.AH)("overflow-x:auto;scrollbar-gutter:stable;::-webkit-scrollbar{background-color:",a/* .colorTokens.primary["40"] */.I6.primary["40"],";height:3px;}::-webkit-scrollbar-thumb{background-color:",a/* .colorTokens.design.brand */.I6.design.brand,";border-radius:",a/* .borderRadius["30"] */.Vq["30"],";}"),textEllipsis:/*#__PURE__*/(0,i/* .css */.AH)("text-overflow:ellipsis;overflow:hidden;white-space:nowrap;"),container:/*#__PURE__*/(0,i/* .css */.AH)("width:",a/* .containerMaxWidth */.iL,"px;margin:0 auto;"),display:{flex:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"row";return/*#__PURE__*/(0,i/* .css */.AH)("display:flex;flex-direction:",e,";")},inlineFlex:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"row";return/*#__PURE__*/(0,i/* .css */.AH)("display:inline-flex;flex-direction:",e,";")},none:/*#__PURE__*/(0,i/* .css */.AH)("display:none;"),block:/*#__PURE__*/(0,i/* .css */.AH)("display:block;"),inlineBlock:/*#__PURE__*/(0,i/* .css */.AH)("display:inline-block;")},text:{ellipsis:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1;return/*#__PURE__*/(0,i/* .css */.AH)("white-space:normal;display:-webkit-box;-webkit-line-clamp:",e,";-webkit-box-orient:vertical;overflow:hidden;-webkit-box-pack:end;")},align:{center:/*#__PURE__*/(0,i/* .css */.AH)("text-align:center;"),left:/*#__PURE__*/(0,i/* .css */.AH)("text-align:left;"),right:/*#__PURE__*/(0,i/* .css */.AH)("text-align:right;"),justify:/*#__PURE__*/(0,i/* .css */.AH)("text-align:justify;")}},inputFocus:/*#__PURE__*/(0,i/* .css */.AH)("box-shadow:none;border-color:",a/* .colorTokens.stroke["default"] */.I6.stroke["default"],";outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;"),dateAndTimeWrapper:/*#__PURE__*/(0,i/* .css */.AH)("display:grid;grid-template-columns:5.5fr 4.5fr;border-radius:",a/* .borderRadius["6"] */.Vq["6"],";position:relative;&::before{content:'';position:absolute;top:0;left:0;right:0;height:40px;outline:2px solid transparent;outline-offset:1px;border-radius:",a/* .borderRadius["6"] */.Vq["6"],";pointer-events:none;z-index:1;transition:outline-color 0.2s ease-in-out;}&:focus-within::before{outline-color:",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";}> div{&:first-of-type{input{border-top-right-radius:0;border-bottom-right-radius:0;&:focus{box-shadow:none;outline:none;}}}&:last-of-type{input{border-top-left-radius:0;border-bottom-left-radius:0;border-left:none;&:focus{box-shadow:none;outline:none;}}}}"),inputCurrencyStyle:/*#__PURE__*/(0,i/* .css */.AH)("font-size:",a/* .fontSize["18"] */.J["18"],";color:",a/* .colorTokens.icon.subdued */.I6.icon.subdued,";"),crossButton:/*#__PURE__*/(0,i/* .css */.AH)("border:none;outline:none;padding:0;margin:0;text-align:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:",a/* .borderRadius.circle */.Vq.circle,";background:",a/* .colorTokens.background.white */.I6.background.white,";transition:opacity 0.3s ease-in-out;svg{color:",a/* .colorTokens.icon["default"] */.I6.icon["default"],";transition:color 0.3s ease-in-out;}:hover{svg{color:",a/* .colorTokens.icon.hover */.I6.icon.hover,";}}:focus{box-shadow:",a/* .shadow.focus */.r7.focus,";}"),aiGradientText:/*#__PURE__*/(0,i/* .css */.AH)("background:",a/* .colorTokens.text.ai.gradient */.I6.text.ai.gradient,";background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;"),actionButton:/*#__PURE__*/(0,i/* .css */.AH)("background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;color:",a/* .colorTokens.icon["default"] */.I6.icon["default"],";display:flex;cursor:pointer;transition:color 0.3s ease-in-out;:hover:not(:disabled),:focus:not(:disabled),:active:not(:disabled){background:none;color:",a/* .colorTokens.icon.brand */.I6.icon.brand,";}:disabled{color:",a/* .colorTokens.icon.disable.background */.I6.icon.disable.background,";cursor:not-allowed;}:focus-visible{outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;border-radius:",a/* .borderRadius["2"] */.Vq["2"],";}"),backButton:/*#__PURE__*/(0,i/* .css */.AH)("background-color:transparent;width:32px;height:32px;padding:0;margin:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid ",a/* .colorTokens.border.neutral */.I6.border.neutral,";border-radius:",a/* .borderRadius["4"] */.Vq["4"],";outline:none;color:",a/* .colorTokens.icon["default"] */.I6.icon["default"],";transition:color 0.3s ease-in-out;cursor:pointer;:hover{color:",a/* .colorTokens.icon.hover */.I6.icon.hover,";}&:focus-visible{outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}"),optionCheckButton:/*#__PURE__*/(0,i/* .css */.AH)("background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;font-family:",a/* .fontFamily.inter */.mw.inter,";cursor:pointer;height:32px;width:32px;border-radius:",a/* .borderRadius.circle */.Vq.circle,";opacity:0;:focus-visible{outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";}"),optionCounter:e=>{var{isEditing:t,isSelected:r=false}=e;return/*#__PURE__*/(0,i/* .css */.AH)("height:",a/* .spacing["24"] */.YK["24"],";width:",a/* .spacing["24"] */.YK["24"],";border-radius:",a/* .borderRadius.min */.Vq.min,";",o/* .typography.caption */.I.caption("medium"),";color:",a/* .colorTokens.text.subdued */.I6.text.subdued,";background-color:",a/* .colorTokens.background["default"] */.I6.background["default"],";text-align:center;",r&&!t&&(0,i/* .css */.AH)(l(),a/* .colorTokens.bg.white */.I6.bg.white))},optionDragButton:e=>{var{isOverlay:t}=e;return/*#__PURE__*/(0,i/* .css */.AH)("background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;font-family:",a/* .fontFamily.inter */.mw.inter,";cursor:grab;display:flex;align-items:center;justify-content:center;transform:rotate(90deg);color:",a/* .colorTokens.icon["default"] */.I6.icon["default"],";cursor:grab;place-self:center center;border-radius:",a/* .borderRadius["2"] */.Vq["2"],";&:focus,&:active,&:hover{background:none;color:",a/* .colorTokens.icon["default"] */.I6.icon["default"],";}:focus-visible{outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}",t&&(0,i/* .css */.AH)(u()))},optionInputWrapper:/*#__PURE__*/(0,i/* .css */.AH)("display:flex;flex-direction:column;width:100%;gap:",a/* .spacing["12"] */.YK["12"],";input,textarea{background:none;border:none;outline:none;padding:0;margin:0;text-align:inherit;font-family:",a/* .fontFamily.inter */.mw.inter,";",o/* .typography.caption */.I.caption(),";flex:1;color:",a/* .colorTokens.text.subdued */.I6.text.subdued,";padding:",a/* .spacing["4"] */.YK["4"]," ",a/* .spacing["10"] */.YK["10"],";border:1px solid ",a/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:",a/* .borderRadius["6"] */.Vq["6"],";resize:vertical;cursor:text;&:focus{box-shadow:none;border-color:",a/* .colorTokens.stroke["default"] */.I6.stroke["default"],";outline:2px solid ",a/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}}"),objectFit:function(){var{fit:e,position:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{fit:"cover",position:"center"};return/*#__PURE__*/(0,i/* .css */.AH)("object-fit:",e,";object-position:",t,";")},inputClearButton:/*#__PURE__*/(0,i/* .css */.AH)("position:absolute;top:50%;right:",a/* .spacing["4"] */.YK["4"],";transform:translateY(-50%);background-color:",a/* .colorTokens.background.white */.I6.background.white,";border-radius:",a/* .borderRadius["2"] */.Vq["2"],";&:not(:disabled):not([aria-disabled='true']):hover,&:not(:disabled):not([aria-disabled='true']):focus{background-color:",a/* .colorTokens.background.hover */.I6.background.hover,";}")}},8638:function(e,t,r){"use strict";r.d(t,{$X:()=>f,Et:()=>u,Gv:()=>d,Kg:()=>o,Lm:()=>c,O9:()=>a,cW:()=>p});var n=(e,t)=>{return t in e};var i=e=>{return e.isAxiosError};var a=e=>{return e!==undefined&&e!==null};function o(e){return typeof e==="string"||e instanceof String}function s(e){return!!e&&Array.isArray(e)&&(!e.length||typeof e[0]!=="object")}function l(e){return s(e)&&(!e.length||typeof e[0]==="string"||e[0]instanceof String)}function u(e){return typeof e==="number"||e instanceof Number}function c(e){return typeof e==="boolean"||e instanceof Boolean}function d(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var f=e=>{return e instanceof Blob||e instanceof File};var p={NEW:"new",UPDATE:"update",NO_CHANGE:"no_change"}},2927:function(e,t,r){"use strict";// EXPORTS
r.d(t,{lQ:()=>/* binding */_,Ak:()=>/* binding */E,y1:()=>/* binding */y,G0:()=>/* binding */F,EW:()=>/* binding */$,uu:()=>/* binding */es,GR:()=>/* binding */et,TW:()=>/* binding */K,Co:()=>/* binding */j,lW:()=>/* binding */X,w9:()=>/* binding */W,EL:()=>/* binding */J});// UNUSED EXPORTS: getCategoryLeftBarHeight, getFileExtensionFromName, assertIsDefined, getValueInArray, makeFirstCharacterUpperCase, convertToGMT, extractIdOnly, decodeHtmlEntities, mapInBetween, determinePostStatus, throttle, formatSubscriptionRepeatUnit, jsonParse, objectToQueryParams, hasDuplicateEntries, arrayRange, convertToSlug, convertGMTtoLocalDate, formatSeconds, findSlotFields, wait, arrayIntersect, fetchImageUrlAsBase64, getObjectValues, formatBytes, generateCouponCode, isFileOrBlob, moveTo, transformParams, formatReadAbleBytesToBytes, generateTree
// EXTERNAL MODULE: external "wp.i18n"
var n=r(2470);// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/native.js
const i=typeof crypto!=="undefined"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);/* export default */const a={randomUUID:i};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/rng.js
// Unique ID creation requires a high quality random # generator. In the browser we therefore
// require the crypto API and do not support built-in fallback to lower quality random number
// generators (like Math.random()).
let o;const s=new Uint8Array(16);function l(){// lazy load so that environments that need to polyfill have a chance to do so
if(!o){// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation.
o=typeof crypto!=="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto);if(!o){throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported")}}return o(s)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/stringify.js
/**
 * Convert array of 16 byte values to UUID string format of the form:
 * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
 */const u=[];for(let e=0;e<256;++e){u.push((e+256).toString(16).slice(1))}function c(e,t=0){// Note: Be careful editing this code!  It's been tuned for performance
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
return u[e[t+0]]+u[e[t+1]]+u[e[t+2]]+u[e[t+3]]+"-"+u[e[t+4]]+u[e[t+5]]+"-"+u[e[t+6]]+u[e[t+7]]+"-"+u[e[t+8]]+u[e[t+9]]+"-"+u[e[t+10]]+u[e[t+11]]+u[e[t+12]]+u[e[t+13]]+u[e[t+14]]+u[e[t+15]]}function d(e,t=0){const r=c(e,t);// Consistency check for valid UUID.  If this throws, it's likely due to one
// of the following:
// - One or more input array values don't map to a hex octet (leading to
// "undefined" in the uuid)
// - Invalid input values for the RFC `version` or `variant` fields
if(!validate(r)){throw TypeError("Stringified UUID is invalid")}return r}/* export default */const f=/* unused pure expression or super */null&&d;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/v4.js
function p(e,t,r){if(a.randomUUID&&!t&&!e){return a.randomUUID()}e=e||{};const n=e.random||(e.rng||l)();// Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
n[6]=n[6]&15|64;n[8]=n[8]&63|128;// Copy bytes to buffer, if provided
if(t){r=r||0;for(let e=0;e<16;++e){t[r+e]=n[e]}return t}return c(n)}/* export default */const h=p;// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/config.ts
var v=r(4336);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/constants.ts
var g=r(7461);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/types.ts
var m=r(8638);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/util.ts
function b(e,t){if(e===undefined||e===null){throw new Error(t)}}var _=()=>{};var y=e=>Array.from(Array(e).keys());var w=(e,t)=>Array.from({length:t-e},(t,r)=>r+e);var x=e=>{return e instanceof Blob||e instanceof File};var A=e=>{return Array.isArray(e)?e:e?[e]:[]};// Generate unique id
var E=()=>h();// Generate coupon code
var k=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:8;var t=e;var r="MSOP0123456789ABCDEFGHNRVUKYTJLZXIW";var n="";while(t--){n+=r[Math.random()*35|0]}return n};// Useful for mock api call
var I=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return new Promise(t=>setTimeout(t,e))};/**
 * Move one array item from one index to another index
 * (don't change the original array) instead return a new one.
 *
 * @param arr Array
 * @param fromIndex Number
 * @param toIndex Number
 * @returns new Array
 */var C=(e,t,r)=>{var n=[...e];var i=t;var a=r;if(t<0){i=e.length+t}if(t>=0&&t<e.length){if(r<0){a=e.length+r}var[o]=n.splice(i,1);if(o){n.splice(a,0,o)}}return n};var Y=e=>{var t=e.split(".");var r=t.pop();return r?".".concat(r):""};var S=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:true;var n={};for(var i of e){var a,o;var s=t(i);s=r?s:s.toString().toLowerCase();(a=n)[o=s]||(a[o]=0);n[s]++;var l=n[s];if(l&&l>1){return true}}return false};var T=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new Set;var n=new Set(e.map(e=>e.id));var i=e.filter(e=>{if(r.has(e.id)){return false}if(t===0){return e.parent===0||!n.has(e.parent)}return e.parent===t});return i.reduce((t,n)=>{r.add(n.id);var i=T(e,n.id,r);return[...t,_object_spread_props(_object_spread({},n),{children:i})]},[])};var O=(e,t)=>{var r="0";if(!e){r="100%"}else if(e&&t>0){if(t>1){r="".concat(23+32*(t-1),"px")}else{r="23px"}}return r};var D=e=>{var t,r;var n=((t=e.sort)===null||t===void 0?void 0:t.direction)==="desc"?"-":"";return _object_spread({limit:e.limit,offset:e.offset,sort:((r=e.sort)===null||r===void 0?void 0:r.property)&&"".concat(n).concat(e.sort.property)},e.filter)};var F=(e,t)=>Math.floor(Math.random()*(t-e))+e;var P=(e,t,r,n,i)=>{return(e-t)*(i-n)/(r-t)+n};var R=e=>{return e.map(e=>e.id)};var H=(e,t)=>{var r=new Set(e);var n=new Set(t);var i=[];for(var a of r){if(n.has(a)){i.push(a)}}return i};var M=e=>{if(!e)return e;var t=e.charAt(0).toUpperCase();var r=e.slice(1);return"".concat(t).concat(r)};var N=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2;if(!e||e<=1){return __("0 Bytes","tutor-pro")}var r=1024;var n=Math.max(0,t);var i=[__("Bytes","tutor-pro"),__("KB","tutor-pro"),__("MB","tutor-pro"),__("GB","tutor-pro"),__("TB","tutor-pro"),__("PB","tutor-pro"),__("EB","tutor-pro"),__("ZB","tutor-pro"),__("YB","tutor-pro")];var a=Math.floor(Math.log(e)/Math.log(r));return"".concat(Number.parseFloat((e/r**a).toFixed(n))," ").concat(i[a])};var L=e=>{if(!e||typeof e!=="string"){return 0}var[t,r]=e.split(" ");var n=parseFloat(t);var i=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"];var a=i.indexOf(r);if(a===-1){return 0}return n*1024**a};var K=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:false,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:false;return e.replace(r?t?/[^0-9-]/g:/[^0-9]/g:t?/[^0-9.-]/g:/[^0-9.]/g,"").replace(/(?!^)-/g,"").replace(r?/\./g:/(\..*)\./g,"$1")};var q=(e,t)=>{var r=false;return function n(){for(var n=arguments.length,i=new Array(n),a=0;a<n;a++){i[a]=arguments[a]}if(!r){e.apply(this,i);r=true;setTimeout(()=>{r=false},t)}}};var B=e=>{return JSON.parse(e)};var U=e=>{var t=Math.floor(e/3600).toString().padStart(2,"0");var r=Math.floor(e%3600/60).toString().padStart(2,"0");var n=Math.floor(e%60);if(t==="00"){return"".concat(r,":").concat(n," mins")}return"".concat(t,":").concat(r,":").concat(n," hrs")};var j=e=>{if(!(0,m/* .isDefined */.O9)(e)||!(0,m/* .isObject */.Gv)(e)){return[]}return Object.keys(e)};var V=e=>{return Object.values(e)};var W=e=>{return Object.entries(e)};function z(e){var t=new URLSearchParams;for(var r in e){if(r in e){t.append(r,e[r])}}return t.toString()}var G=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:DateFormats.yearMonthDayHourMinuteSecond24H;var r=e.getTimezoneOffset();var n=addMinutes(e,r);return format(n,t)};var Q=e=>{var t=new Date(e);var r=t.getTimezoneOffset();return addMinutes(t,-r)};var $=e=>{return(e||"").replace(/\r\n/g,"\n")};var X=e=>{return new Promise((t,r)=>{if(navigator.clipboard&&window.isSecureContext){navigator.clipboard.writeText(e).then(()=>t()).catch(e=>r(e))}else{var n=document.createElement("textarea");n.value=e;document.body.appendChild(n);n.select();try{// if navigator.clipboard is not available, use document.execCommand('copy')
document.execCommand("copy");t()}catch(e){r(e)}finally{document.body.removeChild(n);// Clean up
}}})};var J=e=>{if(!e||!e.response||!e.response.data){return(0,n.__)("Something went wrong","tutor-pro")}var t=e.response.data.message;if(e.response.data.status_code===422&&e.response.data.data){t=e.response.data.data[Object.keys(e.response.data.data)[0]]}return t||(0,n.__)("Something went wrong","tutor-pro")};var Z=e=>_async_to_generator(function*(){try{var t=yield fetch(e);var r=yield t.blob();var n=new FileReader;return new Promise((e,t)=>{n.readAsDataURL(r);n.onload=()=>e(n.result);n.onerror=e=>t(e)})}catch(e){throw new Error("Failed to fetch and convert image: ".concat(e))}})();var ee=(e,t)=>{if(e==="trash"){return"trash"}if(t==="private"){return"private"}if(e==="future"){return"future"}if(t==="password_protected"&&e!=="draft"){return"publish"}return e};var et=e=>{var t;return!!((t=v/* .tutorConfig.addons_data.find */.P.addons_data.find(t=>t.base_name===e))===null||t===void 0?void 0:t.is_enabled)};var er=e=>{if(!e||typeof e!=="string"){return""}return e.normalize("NFKD")// Normalize accented characters into base forms + diacritics
.replace(/[\u0300-\u036f]/g,"")// Remove combining diacritical marks
.toLowerCase()// Remove special characters !~@#$%^&*(){}[]|\;:"',./?
// Remove characters that are NOT:
// - Basic Latin letters and numbers (a-z, 0-9)
// - Spaces and hyphens
// - Latin Extended (À-ž, etc.)
// - Greek and Coptic (Α-ω)
// - Cyrillic (А-я)
// - Hebrew (א-ת)
// - Arabic (ا-ي)
// - Devanagari (Hindi)
// - Thai
// - Tamil
// - Georgian
// - Hangul Jamo (Korean building blocks)
// - Hiragana (Japanese)
// - Katakana (Japanese)
// - CJK Unified Ideographs (Chinese/Japanese/Korean characters)
// - Hangul Syllables (Korean)
// - Hangul Compatibility Jamo
// - Hangul Jamo Extended-A
// - Hangul Jamo Extended-B
.replace(/[^a-z0-9\s\-\u00C0-\u024F\u0370-\u03FF\u0400-\u04FF\u0590-\u05FF\u0600-\u06FF\u0900-\u097F\u0E00-\u0E7F\u0B80-\u0BFF\u10A0-\u10FF\u1100-\u11FF\u3130-\u318F\u3040-\u309F\u30A0-\u30FF\u4E00-\u9FFF\uA960-\uA97F\uAC00-\uD7AF\uD7B0-\uD7FF]/g,"").replace(/\s+/g,"-")// Replace multiple spaces with single dash
.replace(/-+/g,"-")// Replace multiple dashes with single dash
.replace(/^-+|-+$/g,"")// Remove leading and trailing dashes
};var en=function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}var n=[];t.forEach(e=>{if(e.slotKey){e.fields[e.slotKey].forEach(e=>{n.push(e.name)})}else{Object.keys(e.fields).forEach(t=>{e.fields[t].forEach(e=>{n.push(e.name)})})}});return n};var ei=e=>{var t=new DOMParser;var r=t.parseFromString(e,"text/html");return r.body.textContent||""};var ea=e=>{var{unit:t="hour",value:r,useLySuffix:n=false,capitalize:i=true,showSingular:a=false}=e;if(t==="until_cancellation"){var o=__("Until Cancellation","tutor-pro");return i?eo(o):o}var s={hour:{// translators: %d: number of hours
plural:__("%d hours","tutor-pro"),// translators: %d: number of hours
singular:__("%d hour","tutor-pro"),suffix:__("hourly","tutor-pro"),base:__("hour","tutor-pro")},day:{// translators: %d: number of days
plural:__("%d days","tutor-pro"),// translators: %d: number of days
singular:__("%d day","tutor-pro"),suffix:__("daily","tutor-pro"),base:__("day","tutor-pro")},week:{// translators: %d is the number of weeks
plural:__("%d weeks","tutor-pro"),// translators: %d is the number of weeks
singular:__("%d week","tutor-pro"),suffix:__("weekly","tutor-pro"),base:__("week","tutor-pro")},month:{// translators: %d is the number of months
plural:__("%d months","tutor-pro"),// translators: %d is the number of months
singular:__("%d month","tutor-pro"),suffix:__("monthly","tutor-pro"),base:__("month","tutor-pro")},year:{// translators: %d is the number of years
plural:__("%d years","tutor-pro"),// translators: %d is the number of years
singular:__("%d year","tutor-pro"),suffix:__("yearly","tutor-pro"),base:__("year","tutor-pro")}};if(!s[t]){return""}var l="";if(r>1){l=sprintf(s[t].plural,r)}else if(a){l=sprintf(s[t].singular,r)}else if(n){l=s[t].suffix}else{l=s[t].base}return i?eo(l):l};var eo=e=>{return e.split(" ").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")};var es=e=>{var t=Math.floor(e/3600);var r=Math.floor(e%3600/60);var n=e%60;return{hours:t,minutes:r,seconds:n}}},1594:function(e){"use strict";e.exports=React},5206:function(e){"use strict";e.exports=ReactDOM},2470:function(e){"use strict";e.exports=wp.i18n},33:function(e,t,r){"use strict";// EXPORTS
r.d(t,{_:()=>/* binding */i});// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_define_property.js
function n(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else e[t]=r;return e};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_spread.js
function i(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var i=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){i=i.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}i.forEach(function(t){n(e,t,r[t])})}return e}},1303:function(e,t,r){"use strict";r.d(t,{_:()=>i});function n(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function i(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors)Object.defineProperties(e,Object.getOwnPropertyDescriptors(t));else{n(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}},2473:function(e,t,r){"use strict";// EXPORTS
r.d(t,{_:()=>/* binding */i});// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_without_properties_loose.js
function n(e,t){if(e==null)return{};var r={};var n=Object.keys(e);var i,a;for(a=0;a<n.length;a++){i=n[a];if(t.indexOf(i)>=0)continue;r[i]=e[i]}return r};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_without_properties.js
function i(e,t){if(e==null)return{};var r=n(e,t);var i,a;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(a=0;a<o.length;a++){i=o[a];if(t.indexOf(i)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(e,i))continue;r[i]=e[i]}}return r}},690:function(e,t,r){"use strict";r.d(t,{_:()=>n});function n(e,t){if(!t)t=e.slice(0);return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}}};// The module cache
var t={};// The require function
function r(n){// Check if module is in cache
var i=t[n];if(i!==undefined){return i.exports}// Create a new module (and put it into the cache)
var a=t[n]={exports:{}};// Execute the module function
e[n](a,a.exports,r);// Return the exports of the module
return a.exports}// webpack/runtime/compat_get_default_export
(()=>{// getDefaultExport function for compatibility with non-ESM modules
r.n=e=>{var t=e&&e.__esModule?()=>e["default"]:()=>e;r.d(t,{a:t});return t}})();// webpack/runtime/define_property_getters
(()=>{r.d=(e,t)=>{for(var n in t){if(r.o(t,n)&&!r.o(e,n)){Object.defineProperty(e,n,{enumerable:true,get:t[n]})}}}})();// webpack/runtime/global
(()=>{r.g=(()=>{if(typeof globalThis==="object")return globalThis;try{return this||new Function("return this")()}catch(e){if(typeof window==="object")return window}})()})();// webpack/runtime/has_own_property
(()=>{r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();// webpack/runtime/make_namespace_object
(()=>{// define __esModule on exports
r.r=e=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})}})();// webpack/runtime/rspack_version
(()=>{r.rv=()=>"1.6.5"})();// webpack/runtime/auto_public_path
(()=>{var e;if(r.g.importScripts)e=r.g.location+"";var t=r.g.document;if(!e&&t){// Technically we could use `document.currentScript instanceof window.HTMLScriptElement`,
// but an attacker could try to inject `<script>HTMLScriptElement = HTMLImageElement</script>`
// and use `<img name="currentScript" src="https://attacker.controlled.server/"></img>`
if(t.currentScript&&t.currentScript.tagName.toUpperCase()==="SCRIPT")e=t.currentScript.src;if(!e){var n=t.getElementsByTagName("script");if(n.length){var i=n.length-1;while(i>-1&&(!e||!/^http(s?):/.test(e)))e=n[i--].src}}}// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration",
// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.',
if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");r.p=e})();// webpack/runtime/rspack_unique_id
(()=>{r.ruid="bundler=rspack@1.6.5"})();var n={};// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
(()=>{"use strict";// NAMESPACE OBJECT: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/common/utils.js
var e={};r.r(e);r.d(e,{hasBrowserEnv:()=>ur,hasStandardBrowserEnv:()=>ui,hasStandardBrowserWebWorkerEnv:()=>ua,navigator:()=>un,origin:()=>uo});// EXTERNAL MODULE: ./node_modules/.pnpm/@emotion+react@11.14.0_@types+react@18.3.1_react@18.3.1/node_modules/@emotion/react/jsx-runtime/dist/emotion-react-jsx-runtime.esm.js
var t=r(2025);// EXTERNAL MODULE: external "React"
var n=r(1594);var i=/*#__PURE__*/r.n(n);// EXTERNAL MODULE: ./node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/client.js
var a=r(9576);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/ErrorBoundary.tsx
var o;if(false){}else{// eslint-disable-next-line @typescript-eslint/no-require-imports
o=r(5570)/* ["default"] */.A}var s=e=>{var{children:r}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(o,{children:r})};/* export default */const l=s;// EXTERNAL MODULE: ./node_modules/.pnpm/@emotion+react@11.14.0_@types+react@18.3.1_react@18.3.1/node_modules/@emotion/react/dist/emotion-react.esm.js
var u=r(5757);// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/utils.js
// src/utils.ts
var c=typeof window==="undefined"||"Deno"in globalThis;function d(){}function f(e,t){return typeof e==="function"?e(t):e}function p(e){return typeof e==="number"&&e>=0&&e!==Infinity}function h(e,t){return Math.max(e+(t||0)-Date.now(),0)}function v(e,t){return typeof e==="function"?e(t):e}function g(e,t){return typeof e==="function"?e(t):e}function m(e,t){const{type:r="all",exact:n,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(n){if(t.queryHash!==_(o,t.options)){return false}}else if(!w(t.queryKey,o)){return false}}if(r!=="all"){const e=t.isActive();if(r==="active"&&!e){return false}if(r==="inactive"&&e){return false}}if(typeof s==="boolean"&&t.isStale()!==s){return false}if(i&&i!==t.state.fetchStatus){return false}if(a&&!a(t)){return false}return true}function b(e,t){const{exact:r,status:n,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey){return false}if(r){if(y(t.options.mutationKey)!==y(a)){return false}}else if(!w(t.options.mutationKey,a)){return false}}if(n&&t.state.status!==n){return false}if(i&&!i(t)){return false}return true}function _(e,t){const r=t?.queryKeyHashFn||y;return r(e)}function y(e){return JSON.stringify(e,(e,t)=>k(t)?Object.keys(t).sort().reduce((e,r)=>{e[r]=t[r];return e},{}):t)}function w(e,t){if(e===t){return true}if(typeof e!==typeof t){return false}if(e&&t&&typeof e==="object"&&typeof t==="object"){return!Object.keys(t).some(r=>!w(e[r],t[r]))}return false}function x(e,t){if(e===t){return e}const r=E(e)&&E(t);if(r||k(e)&&k(t)){const n=r?e:Object.keys(e);const i=n.length;const a=r?t:Object.keys(t);const o=a.length;const s=r?[]:{};let l=0;for(let i=0;i<o;i++){const o=r?i:a[i];if((!r&&n.includes(o)||r)&&e[o]===void 0&&t[o]===void 0){s[o]=void 0;l++}else{s[o]=x(e[o],t[o]);if(s[o]===e[o]&&e[o]!==void 0){l++}}}return i===o&&l===i?e:s}return t}function A(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length){return false}for(const r in e){if(e[r]!==t[r]){return false}}return true}function E(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function k(e){if(!I(e)){return false}const t=e.constructor;if(t===void 0){return true}const r=t.prototype;if(!I(r)){return false}if(!r.hasOwnProperty("isPrototypeOf")){return false}if(Object.getPrototypeOf(e)!==Object.prototype){return false}return true}function I(e){return Object.prototype.toString.call(e)==="[object Object]"}function C(e){return new Promise(t=>{setTimeout(t,e)})}function Y(e,t,r){if(typeof r.structuralSharing==="function"){return r.structuralSharing(e,t)}else if(r.structuralSharing!==false){if(false){}return x(e,t)}return t}function S(e){return e}function T(e,t,r=0){const n=[...e,t];return r&&n.length>r?n.slice(1):n}function O(e,t,r=0){const n=[t,...e];return r&&n.length>r?n.slice(0,-1):n}var D=Symbol();function F(e,t){if(false){}if(!e.queryFn&&t?.initialPromise){return()=>t.initialPromise}if(!e.queryFn||e.queryFn===D){return()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`))}return e.queryFn}//# sourceMappingURL=utils.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/notifyManager.js
// src/notifyManager.ts
function P(){let e=[];let t=0;let r=e=>{e()};let n=e=>{e()};let i=e=>setTimeout(e,0);const a=n=>{if(t){e.push(n)}else{i(()=>{r(n)})}};const o=()=>{const t=e;e=[];if(t.length){i(()=>{n(()=>{t.forEach(e=>{r(e)})})})}};return{batch:e=>{let r;t++;try{r=e()}finally{t--;if(!t){o()}}return r},/**
     * All calls to the wrapped function will be batched.
     */batchCalls:e=>{return(...t)=>{a(()=>{e(...t)})}},schedule:a,/**
     * Use this method to set a custom notify function.
     * This can be used to for example wrap notifications with `React.act` while running tests.
     */setNotifyFunction:e=>{r=e},/**
     * Use this method to set a custom function to batch notifications together into a single tick.
     * By default React Query will use the batch function provided by ReactDOM or React Native.
     */setBatchNotifyFunction:e=>{n=e},setScheduler:e=>{i=e}}}var R=P();//# sourceMappingURL=notifyManager.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/subscribable.js
// src/subscribable.ts
var H=class{constructor(){this.listeners=/* @__PURE__ */new Set;this.subscribe=this.subscribe.bind(this)}subscribe(e){this.listeners.add(e);this.onSubscribe();return()=>{this.listeners.delete(e);this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};//# sourceMappingURL=subscribable.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/focusManager.js
// src/focusManager.ts
var M=class extends H{#e;#t;#r;constructor(){super();this.#r=e=>{if(!c&&window.addEventListener){const t=()=>e();window.addEventListener("visibilitychange",t,false);return()=>{window.removeEventListener("visibilitychange",t)}}return}}onSubscribe(){if(!this.#t){this.setEventListener(this.#r)}}onUnsubscribe(){if(!this.hasListeners()){this.#t?.();this.#t=void 0}}setEventListener(e){this.#r=e;this.#t?.();this.#t=e(e=>{if(typeof e==="boolean"){this.setFocused(e)}else{this.onFocus()}})}setFocused(e){const t=this.#e!==e;if(t){this.#e=e;this.onFocus()}}onFocus(){const e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){if(typeof this.#e==="boolean"){return this.#e}return globalThis.document?.visibilityState!=="hidden"}};var N=new M;//# sourceMappingURL=focusManager.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/onlineManager.js
// src/onlineManager.ts
var L=class extends H{#n=true;#t;#r;constructor(){super();this.#r=e=>{if(!c&&window.addEventListener){const t=()=>e(true);const r=()=>e(false);window.addEventListener("online",t,false);window.addEventListener("offline",r,false);return()=>{window.removeEventListener("online",t);window.removeEventListener("offline",r)}}return}}onSubscribe(){if(!this.#t){this.setEventListener(this.#r)}}onUnsubscribe(){if(!this.hasListeners()){this.#t?.();this.#t=void 0}}setEventListener(e){this.#r=e;this.#t?.();this.#t=e(this.setOnline.bind(this))}setOnline(e){const t=this.#n!==e;if(t){this.#n=e;this.listeners.forEach(t=>{t(e)})}}isOnline(){return this.#n}};var K=new L;//# sourceMappingURL=onlineManager.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/thenable.js
// src/thenable.ts
function q(){let e;let t;const r=new Promise((r,n)=>{e=r;t=n});r.status="pending";r.catch(()=>{});function n(e){Object.assign(r,e);delete r.resolve;delete r.reject}r.resolve=t=>{n({status:"fulfilled",value:t});e(t)};r.reject=e=>{n({status:"rejected",reason:e});t(e)};return r}//# sourceMappingURL=thenable.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/retryer.js
// src/retryer.ts
function B(e){return Math.min(1e3*2**e,3e4)}function U(e){return(e??"online")==="online"?K.isOnline():true}var j=class extends Error{constructor(e){super("CancelledError");this.revert=e?.revert;this.silent=e?.silent}};function V(e){return e instanceof j}function W(e){let t=false;let r=0;let n=false;let i;const a=q();const o=t=>{if(!n){p(new j(t));e.abort?.()}};const s=()=>{t=true};const l=()=>{t=false};const u=()=>N.isFocused()&&(e.networkMode==="always"||K.isOnline())&&e.canRun();const d=()=>U(e.networkMode)&&e.canRun();const f=t=>{if(!n){n=true;e.onSuccess?.(t);i?.();a.resolve(t)}};const p=t=>{if(!n){n=true;e.onError?.(t);i?.();a.reject(t)}};const h=()=>{return new Promise(t=>{i=e=>{if(n||u()){t(e)}};e.onPause?.()}).then(()=>{i=void 0;if(!n){e.onContinue?.()}})};const v=()=>{if(n){return}let i;const a=r===0?e.initialPromise:void 0;try{i=a??e.fn()}catch(e){i=Promise.reject(e)}Promise.resolve(i).then(f).catch(i=>{if(n){return}const a=e.retry??(c?0:3);const o=e.retryDelay??B;const s=typeof o==="function"?o(r,i):o;const l=a===true||typeof a==="number"&&r<a||typeof a==="function"&&a(r,i);if(t||!l){p(i);return}r++;e.onFail?.(r,i);C(s).then(()=>{return u()?void 0:h()}).then(()=>{if(t){p(i)}else{v()}})})};return{promise:a,cancel:o,continue:()=>{i?.();return a},cancelRetry:s,continueRetry:l,canStart:d,start:()=>{if(d()){v()}else{h().then(v)}return a}}}//# sourceMappingURL=retryer.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/removable.js
// src/removable.ts
var z=class{#i;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout();if(p(this.gcTime)){this.#i=setTimeout(()=>{this.optionalRemove()},this.gcTime)}}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(c?Infinity:5*60*1e3))}clearGcTimeout(){if(this.#i){clearTimeout(this.#i);this.#i=void 0}}};//# sourceMappingURL=removable.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/query.js
// src/query.ts
var G=class extends z{#a;#o;#s;#l;#u;#c;constructor(e){super();this.#c=false;this.#u=e.defaultOptions;this.setOptions(e.options);this.observers=[];this.#s=e.cache;this.queryKey=e.queryKey;this.queryHash=e.queryHash;this.#a=$(this.options);this.state=e.state??this.#a;this.scheduleGc()}get meta(){return this.options.meta}get promise(){return this.#l?.promise}setOptions(e){this.options={...this.#u,...e};this.updateGcTime(this.options.gcTime)}optionalRemove(){if(!this.observers.length&&this.state.fetchStatus==="idle"){this.#s.remove(this)}}setData(e,t){const r=Y(this.state.data,e,this.options);this.#d({data:r,type:"success",dataUpdatedAt:t?.updatedAt,manual:t?.manual});return r}setState(e,t){this.#d({type:"setState",state:e,setStateOptions:t})}cancel(e){const t=this.#l?.promise;this.#l?.cancel(e);return t?t.then(d).catch(d):Promise.resolve()}destroy(){super.destroy();this.cancel({silent:true})}reset(){this.destroy();this.setState(this.#a)}isActive(){return this.observers.some(e=>g(e.options.enabled,this)!==false)}isDisabled(){if(this.getObserversCount()>0){return!this.isActive()}return this.options.queryFn===D||this.state.dataUpdateCount+this.state.errorUpdateCount===0}isStale(){if(this.state.isInvalidated){return true}if(this.getObserversCount()>0){return this.observers.some(e=>e.getCurrentResult().isStale)}return this.state.data===void 0}isStaleByTime(e=0){return this.state.isInvalidated||this.state.data===void 0||!h(this.state.dataUpdatedAt,e)}onFocus(){const e=this.observers.find(e=>e.shouldFetchOnWindowFocus());e?.refetch({cancelRefetch:false});this.#l?.continue()}onOnline(){const e=this.observers.find(e=>e.shouldFetchOnReconnect());e?.refetch({cancelRefetch:false});this.#l?.continue()}addObserver(e){if(!this.observers.includes(e)){this.observers.push(e);this.clearGcTimeout();this.#s.notify({type:"observerAdded",query:this,observer:e})}}removeObserver(e){if(this.observers.includes(e)){this.observers=this.observers.filter(t=>t!==e);if(!this.observers.length){if(this.#l){if(this.#c){this.#l.cancel({revert:true})}else{this.#l.cancelRetry()}}this.scheduleGc()}this.#s.notify({type:"observerRemoved",query:this,observer:e})}}getObserversCount(){return this.observers.length}invalidate(){if(!this.state.isInvalidated){this.#d({type:"invalidate"})}}fetch(e,t){if(this.state.fetchStatus!=="idle"){if(this.state.data!==void 0&&t?.cancelRefetch){this.cancel({silent:true})}else if(this.#l){this.#l.continueRetry();return this.#l.promise}}if(e){this.setOptions(e)}if(!this.options.queryFn){const e=this.observers.find(e=>e.options.queryFn);if(e){this.setOptions(e.options)}}if(false){}const r=new AbortController;const n=e=>{Object.defineProperty(e,"signal",{enumerable:true,get:()=>{this.#c=true;return r.signal}})};const i=()=>{const e=F(this.options,t);const r={queryKey:this.queryKey,meta:this.meta};n(r);this.#c=false;if(this.options.persister){return this.options.persister(e,r,this)}return e(r)};const a={fetchOptions:t,options:this.options,queryKey:this.queryKey,state:this.state,fetchFn:i};n(a);this.options.behavior?.onFetch(a,this);this.#o=this.state;if(this.state.fetchStatus==="idle"||this.state.fetchMeta!==a.fetchOptions?.meta){this.#d({type:"fetch",meta:a.fetchOptions?.meta})}const o=e=>{if(!(V(e)&&e.silent)){this.#d({type:"error",error:e})}if(!V(e)){this.#s.config.onError?.(e,this);this.#s.config.onSettled?.(this.state.data,e,this)}this.scheduleGc()};this.#l=W({initialPromise:t?.initialPromise,fn:a.fetchFn,abort:r.abort.bind(r),onSuccess:e=>{if(e===void 0){if(false){}o(new Error(`${this.queryHash} data is undefined`));return}try{this.setData(e)}catch(e){o(e);return}this.#s.config.onSuccess?.(e,this);this.#s.config.onSettled?.(e,this.state.error,this);this.scheduleGc()},onError:o,onFail:(e,t)=>{this.#d({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#d({type:"pause"})},onContinue:()=>{this.#d({type:"continue"})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>true});return this.#l.start()}#d(e){const t=t=>{switch(e.type){case"failed":return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case"pause":return{...t,fetchStatus:"paused"};case"continue":return{...t,fetchStatus:"fetching"};case"fetch":return{...t,...Q(t.data,this.options),fetchMeta:e.meta??null};case"success":return{...t,data:e.data,dataUpdateCount:t.dataUpdateCount+1,dataUpdatedAt:e.dataUpdatedAt??Date.now(),error:null,isInvalidated:false,status:"success",...!e.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};case"error":const r=e.error;if(V(r)&&r.revert&&this.#o){return{...this.#o,fetchStatus:"idle"}}return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:"idle",status:"error"};case"invalidate":return{...t,isInvalidated:true};case"setState":return{...t,...e.state}}};this.state=t(this.state);R.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()});this.#s.notify({query:this,type:"updated",action:e})})}};function Q(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:U(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function $(e){const t=typeof e.initialData==="function"?e.initialData():e.initialData;const r=t!==void 0;const n=r?typeof e.initialDataUpdatedAt==="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:r?n??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:false,status:r?"success":"pending",fetchStatus:"idle"}}//# sourceMappingURL=query.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/queryCache.js
// src/queryCache.ts
var X=class extends H{constructor(e={}){super();this.config=e;this.#f=/* @__PURE__ */new Map}#f;build(e,t,r){const n=t.queryKey;const i=t.queryHash??_(n,t);let a=this.get(i);if(!a){a=new G({cache:this,queryKey:n,queryHash:i,options:e.defaultQueryOptions(t),state:r,defaultOptions:e.getQueryDefaults(n)});this.add(a)}return a}add(e){if(!this.#f.has(e.queryHash)){this.#f.set(e.queryHash,e);this.notify({type:"added",query:e})}}remove(e){const t=this.#f.get(e.queryHash);if(t){e.destroy();if(t===e){this.#f.delete(e.queryHash)}this.notify({type:"removed",query:e})}}clear(){R.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#f.get(e)}getAll(){return[...this.#f.values()]}find(e){const t={exact:true,...e};return this.getAll().find(e=>m(t,e))}findAll(e={}){const t=this.getAll();return Object.keys(e).length>0?t.filter(t=>m(e,t)):t}notify(e){R.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){R.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){R.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}};//# sourceMappingURL=queryCache.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/mutation.js
// src/mutation.ts
var J=class extends z{#p;#h;#l;constructor(e){super();this.mutationId=e.mutationId;this.#h=e.mutationCache;this.#p=[];this.state=e.state||Z();this.setOptions(e.options);this.scheduleGc()}setOptions(e){this.options=e;this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){if(!this.#p.includes(e)){this.#p.push(e);this.clearGcTimeout();this.#h.notify({type:"observerAdded",mutation:this,observer:e})}}removeObserver(e){this.#p=this.#p.filter(t=>t!==e);this.scheduleGc();this.#h.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){if(!this.#p.length){if(this.state.status==="pending"){this.scheduleGc()}else{this.#h.remove(this)}}}continue(){return this.#l?.continue()??// continuing a mutation assumes that variables are set, mutation must have been dehydrated before
this.execute(this.state.variables)}async execute(e){this.#l=W({fn:()=>{if(!this.options.mutationFn){return Promise.reject(new Error("No mutationFn found"))}return this.options.mutationFn(e)},onFail:(e,t)=>{this.#d({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#d({type:"pause"})},onContinue:()=>{this.#d({type:"continue"})},retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#h.canRun(this)});const t=this.state.status==="pending";const r=!this.#l.canStart();try{if(!t){this.#d({type:"pending",variables:e,isPaused:r});await this.#h.config.onMutate?.(e,this);const t=await this.options.onMutate?.(e);if(t!==this.state.context){this.#d({type:"pending",context:t,variables:e,isPaused:r})}}const n=await this.#l.start();await this.#h.config.onSuccess?.(n,e,this.state.context,this);await this.options.onSuccess?.(n,e,this.state.context);await this.#h.config.onSettled?.(n,null,this.state.variables,this.state.context,this);await this.options.onSettled?.(n,null,e,this.state.context);this.#d({type:"success",data:n});return n}catch(t){try{await this.#h.config.onError?.(t,e,this.state.context,this);await this.options.onError?.(t,e,this.state.context);await this.#h.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this);await this.options.onSettled?.(void 0,t,e,this.state.context);throw t}finally{this.#d({type:"error",error:t})}}finally{this.#h.runNext(this)}}#d(e){const t=t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:true};case"continue":return{...t,isPaused:false};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:false};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:false,status:"error"}}};this.state=t(this.state);R.batch(()=>{this.#p.forEach(t=>{t.onMutationUpdate(e)});this.#h.notify({mutation:this,type:"updated",action:e})})}};function Z(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:false,status:"idle",variables:void 0,submittedAt:0}}//# sourceMappingURL=mutation.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/mutationCache.js
// src/mutationCache.ts
var ee=class extends H{constructor(e={}){super();this.config=e;this.#v=/* @__PURE__ */new Set;this.#g=/* @__PURE__ */new Map;this.#m=0}#v;#g;#m;build(e,t,r){const n=new J({mutationCache:this,mutationId:++this.#m,options:e.defaultMutationOptions(t),state:r});this.add(n);return n}add(e){this.#v.add(e);const t=et(e);if(typeof t==="string"){const r=this.#g.get(t);if(r){r.push(e)}else{this.#g.set(t,[e])}}this.notify({type:"added",mutation:e})}remove(e){if(this.#v.delete(e)){const t=et(e);if(typeof t==="string"){const r=this.#g.get(t);if(r){if(r.length>1){const t=r.indexOf(e);if(t!==-1){r.splice(t,1)}}else if(r[0]===e){this.#g.delete(t)}}}}this.notify({type:"removed",mutation:e})}canRun(e){const t=et(e);if(typeof t==="string"){const r=this.#g.get(t);const n=r?.find(e=>e.state.status==="pending");return!n||n===e}else{return true}}runNext(e){const t=et(e);if(typeof t==="string"){const r=this.#g.get(t)?.find(t=>t!==e&&t.state.isPaused);return r?.continue()??Promise.resolve()}else{return Promise.resolve()}}clear(){R.batch(()=>{this.#v.forEach(e=>{this.notify({type:"removed",mutation:e})});this.#v.clear();this.#g.clear()})}getAll(){return Array.from(this.#v)}find(e){const t={exact:true,...e};return this.getAll().find(e=>b(t,e))}findAll(e={}){return this.getAll().filter(t=>b(e,t))}notify(e){R.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){const e=this.getAll().filter(e=>e.state.isPaused);return R.batch(()=>Promise.all(e.map(e=>e.continue().catch(d))))}};function et(e){return e.options.scope?.id}//# sourceMappingURL=mutationCache.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js
// src/infiniteQueryBehavior.ts
function er(e){return{onFetch:(t,r)=>{const n=t.options;const i=t.fetchOptions?.meta?.fetchMore?.direction;const a=t.state.data?.pages||[];const o=t.state.data?.pageParams||[];let s={pages:[],pageParams:[]};let l=0;const u=async()=>{let r=false;const u=e=>{Object.defineProperty(e,"signal",{enumerable:true,get:()=>{if(t.signal.aborted){r=true}else{t.signal.addEventListener("abort",()=>{r=true})}return t.signal}})};const c=F(t.options,t.fetchOptions);const d=async(e,n,i)=>{if(r){return Promise.reject()}if(n==null&&e.pages.length){return Promise.resolve(e)}const a={queryKey:t.queryKey,pageParam:n,direction:i?"backward":"forward",meta:t.options.meta};u(a);const o=await c(a);const{maxPages:s}=t.options;const l=i?O:T;return{pages:l(e.pages,o,s),pageParams:l(e.pageParams,n,s)}};if(i&&a.length){const e=i==="backward";const t=e?ei:en;const r={pages:a,pageParams:o};const l=t(n,r);s=await d(r,l,e)}else{const t=e??a.length;do{const e=l===0?o[0]??n.initialPageParam:en(n,s);if(l>0&&e==null){break}s=await d(s,e);l++}while(l<t)}return s};if(t.options.persister){t.fetchFn=()=>{return t.options.persister?.(u,{queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r)}}else{t.fetchFn=u}}}}function en(e,{pages:t,pageParams:r}){const n=t.length-1;return t.length>0?e.getNextPageParam(t[n],t,r[n],r):void 0}function ei(e,{pages:t,pageParams:r}){return t.length>0?e.getPreviousPageParam?.(t[0],t,r[0],r):void 0}function ea(e,t){if(!t)return false;return en(e,t)!=null}function eo(e,t){if(!t||!e.getPreviousPageParam)return false;return ei(e,t)!=null}//# sourceMappingURL=infiniteQueryBehavior.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/queryClient.js
// src/queryClient.ts
var es=class{#b;#h;#u;#_;#y;#w;#x;#A;constructor(e={}){this.#b=e.queryCache||new X;this.#h=e.mutationCache||new ee;this.#u=e.defaultOptions||{};this.#_=/* @__PURE__ */new Map;this.#y=/* @__PURE__ */new Map;this.#w=0}mount(){this.#w++;if(this.#w!==1)return;this.#x=N.subscribe(async e=>{if(e){await this.resumePausedMutations();this.#b.onFocus()}});this.#A=K.subscribe(async e=>{if(e){await this.resumePausedMutations();this.#b.onOnline()}})}unmount(){this.#w--;if(this.#w!==0)return;this.#x?.();this.#x=void 0;this.#A?.();this.#A=void 0}isFetching(e){return this.#b.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#h.findAll({...e,status:"pending"}).length}getQueryData(e){const t=this.defaultQueryOptions({queryKey:e});return this.#b.get(t.queryHash)?.state.data}ensureQueryData(e){const t=this.defaultQueryOptions(e);const r=this.#b.build(this,t);const n=r.state.data;if(n===void 0){return this.fetchQuery(e)}if(e.revalidateIfStale&&r.isStaleByTime(v(t.staleTime,r))){void this.prefetchQuery(t)}return Promise.resolve(n)}getQueriesData(e){return this.#b.findAll(e).map(({queryKey:e,state:t})=>{const r=t.data;return[e,r]})}setQueryData(e,t,r){const n=this.defaultQueryOptions({queryKey:e});const i=this.#b.get(n.queryHash);const a=i?.state.data;const o=f(t,a);if(o===void 0){return void 0}return this.#b.build(this,n).setData(o,{...r,manual:true})}setQueriesData(e,t,r){return R.batch(()=>this.#b.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,r)]))}getQueryState(e){const t=this.defaultQueryOptions({queryKey:e});return this.#b.get(t.queryHash)?.state}removeQueries(e){const t=this.#b;R.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){const r=this.#b;const n={type:"active",...e};return R.batch(()=>{r.findAll(e).forEach(e=>{e.reset()});return this.refetchQueries(n,t)})}cancelQueries(e,t={}){const r={revert:true,...t};const n=R.batch(()=>this.#b.findAll(e).map(e=>e.cancel(r)));return Promise.all(n).then(d).catch(d)}invalidateQueries(e,t={}){return R.batch(()=>{this.#b.findAll(e).forEach(e=>{e.invalidate()});if(e?.refetchType==="none"){return Promise.resolve()}const r={...e,type:e?.refetchType??e?.type??"active"};return this.refetchQueries(r,t)})}refetchQueries(e,t={}){const r={...t,cancelRefetch:t.cancelRefetch??true};const n=R.batch(()=>this.#b.findAll(e).filter(e=>!e.isDisabled()).map(e=>{let t=e.fetch(void 0,r);if(!r.throwOnError){t=t.catch(d)}return e.state.fetchStatus==="paused"?Promise.resolve():t}));return Promise.all(n).then(d)}fetchQuery(e){const t=this.defaultQueryOptions(e);if(t.retry===void 0){t.retry=false}const r=this.#b.build(this,t);return r.isStaleByTime(v(t.staleTime,r))?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(d).catch(d)}fetchInfiniteQuery(e){e.behavior=er(e.pages);return this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(d).catch(d)}ensureInfiniteQueryData(e){e.behavior=er(e.pages);return this.ensureQueryData(e)}resumePausedMutations(){if(K.isOnline()){return this.#h.resumePausedMutations()}return Promise.resolve()}getQueryCache(){return this.#b}getMutationCache(){return this.#h}getDefaultOptions(){return this.#u}setDefaultOptions(e){this.#u=e}setQueryDefaults(e,t){this.#_.set(y(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){const t=[...this.#_.values()];const r={};t.forEach(t=>{if(w(e,t.queryKey)){Object.assign(r,t.defaultOptions)}});return r}setMutationDefaults(e,t){this.#y.set(y(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){const t=[...this.#y.values()];let r={};t.forEach(t=>{if(w(e,t.mutationKey)){r={...r,...t.defaultOptions}}});return r}defaultQueryOptions(e){if(e._defaulted){return e}const t={...this.#u.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:true};if(!t.queryHash){t.queryHash=_(t.queryKey,t)}if(t.refetchOnReconnect===void 0){t.refetchOnReconnect=t.networkMode!=="always"}if(t.throwOnError===void 0){t.throwOnError=!!t.suspense}if(!t.networkMode&&t.persister){t.networkMode="offlineFirst"}if(t.queryFn===D){t.enabled=false}return t}defaultMutationOptions(e){if(e?._defaulted){return e}return{...this.#u.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:true}}clear(){this.#b.clear();this.#h.clear()}};//# sourceMappingURL=queryClient.js.map
// EXTERNAL MODULE: ./node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js
var el=r(6070);// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/QueryClientProvider.js
"use client";// src/QueryClientProvider.tsx
var eu=n.createContext(void 0);var ec=e=>{const t=n.useContext(eu);if(e){return e}if(!t){throw new Error("No QueryClient set, use QueryClientProvider to set one")}return t};var ed=({client:e,children:t})=>{n.useEffect(()=>{e.mount();return()=>{e.unmount()}},[e]);return/* @__PURE__ */(0,el.jsx)(eu.Provider,{value:e,children:t})};//# sourceMappingURL=QueryClientProvider.js.map
// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_spread.js + 1 modules
var ef=r(33);// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_spread_props.js
var ep=r(1303);// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_tagged_template_literal.js
var eh=r(690);// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@react-spring+rafz@9.7.5/node_modules/@react-spring/rafz/dist/react-spring_rafz.modern.mjs
// src/index.ts
var ev=eD();var eg=e=>eC(e,ev);var em=eD();eg.write=e=>eC(e,em);var eb=eD();eg.onStart=e=>eC(e,eb);var e_=eD();eg.onFrame=e=>eC(e,e_);var ey=eD();eg.onFinish=e=>eC(e,ey);var ew=[];eg.setTimeout=(e,t)=>{const r=eg.now()+t;const n=()=>{const e=ew.findIndex(e=>e.cancel==n);if(~e)ew.splice(e,1);ek-=~e?1:0};const i={time:r,handler:e,cancel:n};ew.splice(ex(r),0,i);ek+=1;eY();return i};var ex=e=>~(~ew.findIndex(t=>t.time>e)||~ew.length);eg.cancel=e=>{eb.delete(e);e_.delete(e);ey.delete(e);ev.delete(e);em.delete(e)};eg.sync=e=>{eI=true;eg.batchedUpdates(e);eI=false};eg.throttle=e=>{let t;function r(){try{e(...t)}finally{t=null}}function n(...e){t=e;eg.onStart(r)}n.handler=e;n.cancel=()=>{eb.delete(r);t=null};return n};var eA=typeof window!="undefined"?window.requestAnimationFrame:// eslint-disable-next-line @typescript-eslint/no-empty-function
()=>{};eg.use=e=>eA=e;eg.now=typeof performance!="undefined"?()=>performance.now():Date.now;eg.batchedUpdates=e=>e();eg.catch=console.error;eg.frameLoop="always";eg.advance=()=>{if(eg.frameLoop!=="demand"){console.warn("Cannot call the manual advancement of rafz whilst frameLoop is not set as demand")}else{eO()}};var eE=-1;var ek=0;var eI=false;function eC(e,t){if(eI){t.delete(e);e(0)}else{t.add(e);eY()}}function eY(){if(eE<0){eE=0;if(eg.frameLoop!=="demand"){eA(eT)}}}function eS(){eE=-1}function eT(){if(~eE){eA(eT);eg.batchedUpdates(eO)}}function eO(){const e=eE;eE=eg.now();const t=ex(eE);if(t){eF(ew.splice(0,t),e=>e.handler());ek-=t}if(!ek){eS();return}eb.flush();ev.flush(e?Math.min(64,eE-e):16.667);e_.flush();em.flush();ey.flush()}function eD(){let e=/* @__PURE__ */new Set;let t=e;return{add(r){ek+=t==e&&!e.has(r)?1:0;e.add(r)},delete(r){ek-=t==e&&e.has(r)?1:0;return e.delete(r)},flush(r){if(t.size){e=/* @__PURE__ */new Set;ek-=t.size;eF(t,t=>t(r)&&e.add(t));ek+=e.size;t=e}}}}function eF(e,t){e.forEach(e=>{try{t(e)}catch(e){eg.catch(e)}})}var eP=/* unused pure expression or super */null&&{/** The number of pending tasks */count(){return ek},/** Whether there's a raf update loop running */isRunning(){return eE>=0},/** Clear internal state. Never call from update loop! */clear(){eE=-1;ew=[];eb=eD();ev=eD();e_=eD();em=eD();ey=eD();ek=0}};//# sourceMappingURL=react-spring_rafz.modern.mjs.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@react-spring+shared@9.7.5_react@18.3.1/node_modules/@react-spring/shared/dist/react-spring_shared.modern.mjs
var eR=Object.defineProperty;var eH=(e,t)=>{for(var r in t)eR(e,r,{get:t[r],enumerable:true})};// src/globals.ts
var eM={};eH(eM,{assign:()=>eZ,colors:()=>e$,createStringInterpolator:()=>eG,skipAnimation:()=>eX,to:()=>eQ,willAdvance:()=>eJ});// src/helpers.ts
function eN(){}var eL=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:true,configurable:true});var eK={arr:Array.isArray,obj:e=>!!e&&e.constructor.name==="Object",fun:e=>typeof e==="function",str:e=>typeof e==="string",num:e=>typeof e==="number",und:e=>e===void 0};function eq(e,t){if(eK.arr(e)){if(!eK.arr(t)||e.length!==t.length)return false;for(let r=0;r<e.length;r++){if(e[r]!==t[r])return false}return true}return e===t}var eB=(e,t)=>e.forEach(t);function eU(e,t,r){if(eK.arr(e)){for(let n=0;n<e.length;n++){t.call(r,e[n],`${n}`)}return}for(const n in e){if(e.hasOwnProperty(n)){t.call(r,e[n],n)}}}var ej=e=>eK.und(e)?[]:eK.arr(e)?e:[e];function eV(e,t){if(e.size){const r=Array.from(e);e.clear();eB(r,t)}}var eW=(e,...t)=>eV(e,e=>e(...t));var ez=()=>typeof window==="undefined"||!window.navigator||/ServerSideRendering|^Deno\//.test(window.navigator.userAgent);// src/globals.ts
var eG;var eQ;var e$=null;var eX=false;var eJ=eN;var eZ=e=>{if(e.to)eQ=e.to;if(e.now)eg.now=e.now;if(e.colors!==void 0)e$=e.colors;if(e.skipAnimation!=null)eX=e.skipAnimation;if(e.createStringInterpolator)eG=e.createStringInterpolator;if(e.requestAnimationFrame)eg.use(e.requestAnimationFrame);if(e.batchedUpdates)eg.batchedUpdates=e.batchedUpdates;if(e.willAdvance)eJ=e.willAdvance;if(e.frameLoop)eg.frameLoop=e.frameLoop};// src/FrameLoop.ts
var e0=/* @__PURE__ */new Set;var e1=[];var e2=[];var e6=0;var e4={get idle(){return!e0.size&&!e1.length},/** Advance the given animation on every frame until idle. */start(e){if(e6>e.priority){e0.add(e);eg.onStart(e5)}else{e3(e);eg(e9)}},/** Advance all animations by the given time. */advance:e9,/** Call this when an animation's priority changes. */sort(e){if(e6){eg.onFrame(()=>e4.sort(e))}else{const t=e1.indexOf(e);if(~t){e1.splice(t,1);e8(e)}}},/**
   * Clear all animations. For testing purposes.
   *
   * ☠️ Never call this from within the frameloop.
   */clear(){e1=[];e0.clear()}};function e5(){e0.forEach(e3);e0.clear();eg(e9)}function e3(e){if(!e1.includes(e))e8(e)}function e8(e){e1.splice(e7(e1,t=>t.priority>e.priority),0,e)}function e9(e){const t=e2;for(let r=0;r<e1.length;r++){const n=e1[r];e6=n.priority;if(!n.idle){eJ(n);n.advance(e);if(!n.idle){t.push(n)}}}e6=0;e2=e1;e2.length=0;e1=t;return e1.length>0}function e7(e,t){const r=e.findIndex(t);return r<0?e.length:r}// src/clamp.ts
var te=(e,t,r)=>Math.min(Math.max(r,e),t);// src/colors.ts
var tt={transparent:0,aliceblue:0xf0f8ffff,antiquewhite:0xfaebd7ff,aqua:0xffffff,aquamarine:0x7fffd4ff,azure:0xf0ffffff,beige:0xf5f5dcff,bisque:0xffe4c4ff,black:255,blanchedalmond:0xffebcdff,blue:65535,blueviolet:0x8a2be2ff,brown:0xa52a2aff,burlywood:0xdeb887ff,burntsienna:0xea7e5dff,cadetblue:0x5f9ea0ff,chartreuse:0x7fff00ff,chocolate:0xd2691eff,coral:0xff7f50ff,cornflowerblue:0x6495edff,cornsilk:0xfff8dcff,crimson:0xdc143cff,cyan:0xffffff,darkblue:35839,darkcyan:9145343,darkgoldenrod:0xb8860bff,darkgray:0xa9a9a9ff,darkgreen:6553855,darkgrey:0xa9a9a9ff,darkkhaki:0xbdb76bff,darkmagenta:0x8b008bff,darkolivegreen:0x556b2fff,darkorange:0xff8c00ff,darkorchid:0x9932ccff,darkred:0x8b0000ff,darksalmon:0xe9967aff,darkseagreen:0x8fbc8fff,darkslateblue:0x483d8bff,darkslategray:0x2f4f4fff,darkslategrey:0x2f4f4fff,darkturquoise:0xced1ff,darkviolet:0x9400d3ff,deeppink:0xff1493ff,deepskyblue:0xbfffff,dimgray:0x696969ff,dimgrey:0x696969ff,dodgerblue:0x1e90ffff,firebrick:0xb22222ff,floralwhite:0xfffaf0ff,forestgreen:0x228b22ff,fuchsia:0xff00ffff,gainsboro:0xdcdcdcff,ghostwhite:0xf8f8ffff,gold:0xffd700ff,goldenrod:0xdaa520ff,gray:0x808080ff,green:8388863,greenyellow:0xadff2fff,grey:0x808080ff,honeydew:0xf0fff0ff,hotpink:0xff69b4ff,indianred:0xcd5c5cff,indigo:0x4b0082ff,ivory:0xfffff0ff,khaki:0xf0e68cff,lavender:0xe6e6faff,lavenderblush:0xfff0f5ff,lawngreen:0x7cfc00ff,lemonchiffon:0xfffacdff,lightblue:0xadd8e6ff,lightcoral:0xf08080ff,lightcyan:0xe0ffffff,lightgoldenrodyellow:0xfafad2ff,lightgray:0xd3d3d3ff,lightgreen:0x90ee90ff,lightgrey:0xd3d3d3ff,lightpink:0xffb6c1ff,lightsalmon:0xffa07aff,lightseagreen:0x20b2aaff,lightskyblue:0x87cefaff,lightslategray:0x778899ff,lightslategrey:0x778899ff,lightsteelblue:0xb0c4deff,lightyellow:0xffffe0ff,lime:0xff00ff,limegreen:0x32cd32ff,linen:0xfaf0e6ff,magenta:0xff00ffff,maroon:0x800000ff,mediumaquamarine:0x66cdaaff,mediumblue:52735,mediumorchid:0xba55d3ff,mediumpurple:0x9370dbff,mediumseagreen:0x3cb371ff,mediumslateblue:0x7b68eeff,mediumspringgreen:0xfa9aff,mediumturquoise:0x48d1ccff,mediumvioletred:0xc71585ff,midnightblue:0x191970ff,mintcream:0xf5fffaff,mistyrose:0xffe4e1ff,moccasin:0xffe4b5ff,navajowhite:0xffdeadff,navy:33023,oldlace:0xfdf5e6ff,olive:0x808000ff,olivedrab:0x6b8e23ff,orange:0xffa500ff,orangered:0xff4500ff,orchid:0xda70d6ff,palegoldenrod:0xeee8aaff,palegreen:0x98fb98ff,paleturquoise:0xafeeeeff,palevioletred:0xdb7093ff,papayawhip:0xffefd5ff,peachpuff:0xffdab9ff,peru:0xcd853fff,pink:0xffc0cbff,plum:0xdda0ddff,powderblue:0xb0e0e6ff,purple:0x800080ff,rebeccapurple:0x663399ff,red:0xff0000ff,rosybrown:0xbc8f8fff,royalblue:0x4169e1ff,saddlebrown:0x8b4513ff,salmon:0xfa8072ff,sandybrown:0xf4a460ff,seagreen:0x2e8b57ff,seashell:0xfff5eeff,sienna:0xa0522dff,silver:0xc0c0c0ff,skyblue:0x87ceebff,slateblue:0x6a5acdff,slategray:0x708090ff,slategrey:0x708090ff,snow:0xfffafaff,springgreen:0xff7fff,steelblue:0x4682b4ff,tan:0xd2b48cff,teal:8421631,thistle:0xd8bfd8ff,tomato:0xff6347ff,turquoise:0x40e0d0ff,violet:0xee82eeff,wheat:0xf5deb3ff,white:0xffffffff,whitesmoke:0xf5f5f5ff,yellow:0xffff00ff,yellowgreen:0x9acd32ff};// src/colorMatchers.ts
var tr="[-+]?\\d*\\.?\\d+";var tn=tr+"%";function ti(...e){return"\\(\\s*("+e.join(")\\s*,\\s*(")+")\\s*\\)"}var ta=new RegExp("rgb"+ti(tr,tr,tr));var to=new RegExp("rgba"+ti(tr,tr,tr,tr));var ts=new RegExp("hsl"+ti(tr,tn,tn));var tl=new RegExp("hsla"+ti(tr,tn,tn,tr));var tu=/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;var tc=/^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;var td=/^#([0-9a-fA-F]{6})$/;var tf=/^#([0-9a-fA-F]{8})$/;// src/normalizeColor.ts
function tp(e){let t;if(typeof e==="number"){return e>>>0===e&&e>=0&&e<=0xffffffff?e:null}if(t=td.exec(e))return parseInt(t[1]+"ff",16)>>>0;if(e$&&e$[e]!==void 0){return e$[e]}if(t=ta.exec(e)){return(tg(t[1])<<24|// r
tg(t[2])<<16|// g
tg(t[3])<<8|// b
255)>>>// a
0}if(t=to.exec(e)){return(tg(t[1])<<24|// r
tg(t[2])<<16|// g
tg(t[3])<<8|// b
tb(t[4]))>>>// a
0}if(t=tu.exec(e)){return parseInt(t[1]+t[1]+// r
t[2]+t[2]+// g
t[3]+t[3]+// b
"ff",// a
16)>>>0}if(t=tf.exec(e))return parseInt(t[1],16)>>>0;if(t=tc.exec(e)){return parseInt(t[1]+t[1]+// r
t[2]+t[2]+// g
t[3]+t[3]+// b
t[4]+t[4],// a
16)>>>0}if(t=ts.exec(e)){return(tv(tm(t[1]),// h
t_(t[2]),// s
t_(t[3]))|255)>>>// a
0}if(t=tl.exec(e)){return(tv(tm(t[1]),// h
t_(t[2]),// s
t_(t[3]))|tb(t[4]))>>>// a
0}return null}function th(e,t,r){if(r<0)r+=1;if(r>1)r-=1;if(r<1/6)return e+(t-e)*6*r;if(r<1/2)return t;if(r<2/3)return e+(t-e)*(2/3-r)*6;return e}function tv(e,t,r){const n=r<.5?r*(1+t):r+t-r*t;const i=2*r-n;const a=th(i,n,e+1/3);const o=th(i,n,e);const s=th(i,n,e-1/3);return Math.round(a*255)<<24|Math.round(o*255)<<16|Math.round(s*255)<<8}function tg(e){const t=parseInt(e,10);if(t<0)return 0;if(t>255)return 255;return t}function tm(e){const t=parseFloat(e);return(t%360+360)%360/360}function tb(e){const t=parseFloat(e);if(t<0)return 0;if(t>1)return 255;return Math.round(t*255)}function t_(e){const t=parseFloat(e);if(t<0)return 0;if(t>100)return 1;return t/100}// src/colorToRgba.ts
function ty(e){let t=tp(e);if(t===null)return e;t=t||0;const r=(t&0xff000000)>>>24;const n=(t&0xff0000)>>>16;const i=(t&65280)>>>8;const a=(t&255)/255;return`rgba(${r}, ${n}, ${i}, ${a})`}// src/createInterpolator.ts
var tw=(e,t,r)=>{if(eK.fun(e)){return e}if(eK.arr(e)){return tw({range:e,output:t,extrapolate:r})}if(eK.str(e.output[0])){return eG(e)}const n=e;const i=n.output;const a=n.range||[0,1];const o=n.extrapolateLeft||n.extrapolate||"extend";const s=n.extrapolateRight||n.extrapolate||"extend";const l=n.easing||(e=>e);return e=>{const t=tA(e,a);return tx(e,a[t],a[t+1],i[t],i[t+1],l,o,s,n.map)}};function tx(e,t,r,n,i,a,o,s,l){let u=l?l(e):e;if(u<t){if(o==="identity")return u;else if(o==="clamp")u=t}if(u>r){if(s==="identity")return u;else if(s==="clamp")u=r}if(n===i)return n;if(t===r)return e<=t?n:i;if(t===-Infinity)u=-u;else if(r===Infinity)u=u-t;else u=(u-t)/(r-t);u=a(u);if(n===-Infinity)u=-u;else if(i===Infinity)u=u+n;else u=u*(i-n)+n;return u}function tA(e,t){for(var r=1;r<t.length-1;++r)if(t[r]>=e)break;return r-1}// src/easings.ts
var tE=(e,t="end")=>r=>{r=t==="end"?Math.min(r,.999):Math.max(r,.001);const n=r*e;const i=t==="end"?Math.floor(n):Math.ceil(n);return te(0,1,i/e)};var tk=1.70158;var tI=tk*1.525;var tC=tk+1;var tY=2*Math.PI/3;var tS=2*Math.PI/4.5;var tT=e=>{const t=7.5625;const r=2.75;if(e<1/r){return t*e*e}else if(e<2/r){return t*(e-=1.5/r)*e+.75}else if(e<2.5/r){return t*(e-=2.25/r)*e+.9375}else{return t*(e-=2.625/r)*e+.984375}};var tO={linear:e=>e,easeInQuad:e=>e*e,easeOutQuad:e=>1-(1-e)*(1-e),easeInOutQuad:e=>e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2,easeInCubic:e=>e*e*e,easeOutCubic:e=>1-Math.pow(1-e,3),easeInOutCubic:e=>e<.5?4*e*e*e:1-Math.pow(-2*e+2,3)/2,easeInQuart:e=>e*e*e*e,easeOutQuart:e=>1-Math.pow(1-e,4),easeInOutQuart:e=>e<.5?8*e*e*e*e:1-Math.pow(-2*e+2,4)/2,easeInQuint:e=>e*e*e*e*e,easeOutQuint:e=>1-Math.pow(1-e,5),easeInOutQuint:e=>e<.5?16*e*e*e*e*e:1-Math.pow(-2*e+2,5)/2,easeInSine:e=>1-Math.cos(e*Math.PI/2),easeOutSine:e=>Math.sin(e*Math.PI/2),easeInOutSine:e=>-(Math.cos(Math.PI*e)-1)/2,easeInExpo:e=>e===0?0:Math.pow(2,10*e-10),easeOutExpo:e=>e===1?1:1-Math.pow(2,-10*e),easeInOutExpo:e=>e===0?0:e===1?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2,easeInCirc:e=>1-Math.sqrt(1-Math.pow(e,2)),easeOutCirc:e=>Math.sqrt(1-Math.pow(e-1,2)),easeInOutCirc:e=>e<.5?(1-Math.sqrt(1-Math.pow(2*e,2)))/2:(Math.sqrt(1-Math.pow(-2*e+2,2))+1)/2,easeInBack:e=>tC*e*e*e-tk*e*e,easeOutBack:e=>1+tC*Math.pow(e-1,3)+tk*Math.pow(e-1,2),easeInOutBack:e=>e<.5?Math.pow(2*e,2)*((tI+1)*2*e-tI)/2:(Math.pow(2*e-2,2)*((tI+1)*(e*2-2)+tI)+2)/2,easeInElastic:e=>e===0?0:e===1?1:-Math.pow(2,10*e-10)*Math.sin((e*10-10.75)*tY),easeOutElastic:e=>e===0?0:e===1?1:Math.pow(2,-10*e)*Math.sin((e*10-.75)*tY)+1,easeInOutElastic:e=>e===0?0:e===1?1:e<.5?-(Math.pow(2,20*e-10)*Math.sin((20*e-11.125)*tS))/2:Math.pow(2,-20*e+10)*Math.sin((20*e-11.125)*tS)/2+1,easeInBounce:e=>1-tT(1-e),easeOutBounce:tT,easeInOutBounce:e=>e<.5?(1-tT(1-2*e))/2:(1+tT(2*e-1))/2,steps:tE};// src/fluids.ts
var tD=Symbol.for("FluidValue.get");var tF=Symbol.for("FluidValue.observers");var tP=e=>Boolean(e&&e[tD]);var tR=e=>e&&e[tD]?e[tD]():e;var tH=e=>e[tF]||null;function tM(e,t){if(e.eventObserved){e.eventObserved(t)}else{e(t)}}function tN(e,t){const r=e[tF];if(r){r.forEach(e=>{tM(e,t)})}}var tL=class{constructor(e){if(!e&&!(e=this.get)){throw Error("Unknown getter")}tK(this,e)}};tD,tF;var tK=(e,t)=>tU(e,tD,t);function tq(e,t){if(e[tD]){let r=e[tF];if(!r){tU(e,tF,r=/* @__PURE__ */new Set)}if(!r.has(t)){r.add(t);if(e.observerAdded){e.observerAdded(r.size,t)}}}return t}function tB(e,t){const r=e[tF];if(r&&r.has(t)){const n=r.size-1;if(n){r.delete(t)}else{e[tF]=null}if(e.observerRemoved){e.observerRemoved(n,t)}}}var tU=(e,t,r)=>Object.defineProperty(e,t,{value:r,writable:true,configurable:true});// src/regexs.ts
var tj=/[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g;var tV=/(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi;var tW=new RegExp(`(${tj.source})(%|[a-z]+)`,"i");var tz=/rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi;var tG=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;// src/variableToRgba.ts
var tQ=e=>{const[t,r]=t$(e);if(!t||ez()){return e}const n=window.getComputedStyle(document.documentElement).getPropertyValue(t);if(n){return n.trim()}else if(r&&r.startsWith("--")){const t=window.getComputedStyle(document.documentElement).getPropertyValue(r);if(t){return t}else{return e}}else if(r&&tG.test(r)){return tQ(r)}else if(r){return r}return e};var t$=e=>{const t=tG.exec(e);if(!t)return[,];const[,r,n]=t;return[r,n]};// src/stringInterpolation.ts
var tX;var tJ=(e,t,r,n,i)=>`rgba(${Math.round(t)}, ${Math.round(r)}, ${Math.round(n)}, ${i})`;var tZ=e=>{if(!tX)tX=e$?// match color names, ignore partial matches
new RegExp(`(${Object.keys(e$).join("|")})(?!\\w)`,"g"):// never match
/^\b$/;const t=e.output.map(e=>{return tR(e).replace(tG,tQ).replace(tV,ty).replace(tX,ty)});const r=t.map(e=>e.match(tj).map(Number));const n=r[0].map((e,t)=>r.map(e=>{if(!(t in e)){throw Error('The arity of each "output" value must be equal')}return e[t]}));const i=n.map(t=>tw({...e,output:t}));return e=>{const r=!tW.test(t[0])&&t.find(e=>tW.test(e))?.replace(tj,"");let n=0;return t[0].replace(tj,()=>`${i[n++](e)}${r||""}`).replace(tz,tJ)}};// src/deprecations.ts
var t0="react-spring: ";var t1=e=>{const t=e;let r=false;if(typeof t!="function"){throw new TypeError(`${t0}once requires a function parameter`)}return(...e)=>{if(!r){t(...e);r=true}}};var t2=t1(console.warn);function t6(){t2(`${t0}The "interpolate" function is deprecated in v9 (use "to" instead)`)}var t4=t1(console.warn);function t5(){t4(`${t0}Directly calling start instead of using the api object is deprecated in v9 (use ".start" instead), this will be removed in later 0.X.0 versions`)}// src/isAnimatedString.ts
function t3(e){return eK.str(e)&&(e[0]=="#"||/\d/.test(e)||// Do not identify a CSS variable as an AnimatedString if its SSR
!ez()&&tG.test(e)||e in(e$||{}))}// src/dom-events/scroll/index.ts
// src/dom-events/resize/resizeElement.ts
var t8;var t9=/* @__PURE__ */new WeakMap;var t7=e=>e.forEach(({target:e,contentRect:t})=>{return t9.get(e)?.forEach(e=>e(t))});function re(e,t){if(!t8){if(typeof ResizeObserver!=="undefined"){t8=new ResizeObserver(t7)}}let r=t9.get(t);if(!r){r=/* @__PURE__ */new Set;t9.set(t,r)}r.add(e);if(t8){t8.observe(t)}return()=>{const r=t9.get(t);if(!r)return;r.delete(e);if(!r.size&&t8){t8.unobserve(t)}}}// src/dom-events/resize/resizeWindow.ts
var rt=/* @__PURE__ */new Set;var rr;var rn=()=>{const e=()=>{rt.forEach(e=>e({width:window.innerWidth,height:window.innerHeight}))};window.addEventListener("resize",e);return()=>{window.removeEventListener("resize",e)}};var ri=e=>{rt.add(e);if(!rr){rr=rn()}return()=>{rt.delete(e);if(!rt.size&&rr){rr();rr=void 0}}};// src/dom-events/resize/index.ts
var ra=(e,{container:t=document.documentElement}={})=>{if(t===document.documentElement){return ri(e)}else{return re(e,t)}};// src/progress.ts
var ro=(e,t,r)=>t-e===0?1:(r-e)/(t-e);// src/dom-events/scroll/ScrollHandler.ts
var rs=/* unused pure expression or super */null&&{x:{length:"Width",position:"Left"},y:{length:"Height",position:"Top"}};var rl=class{constructor(e,t){this.createAxis=()=>({current:0,progress:0,scrollLength:0});this.updateAxis=e=>{const t=this.info[e];const{length:r,position:n}=rs[e];t.current=this.container[`scroll${n}`];t.scrollLength=this.container[`scroll${r}`]-this.container[`client${r}`];t.progress=ro(0,t.scrollLength,t.current)};this.update=()=>{this.updateAxis("x");this.updateAxis("y")};this.sendEvent=()=>{this.callback(this.info)};this.advance=()=>{this.update();this.sendEvent()};this.callback=e;this.container=t;this.info={time:0,x:this.createAxis(),y:this.createAxis()}}};// src/dom-events/scroll/index.ts
var ru=/* @__PURE__ */new WeakMap;var rc=/* @__PURE__ */new WeakMap;var rd=/* @__PURE__ */new WeakMap;var rf=e=>e===document.documentElement?window:e;var rp=(e,{container:t=document.documentElement}={})=>{let r=rd.get(t);if(!r){r=/* @__PURE__ */new Set;rd.set(t,r)}const n=new rl(e,t);r.add(n);if(!ru.has(t)){const e=()=>{r?.forEach(e=>e.advance());return true};ru.set(t,e);const n=rf(t);window.addEventListener("resize",e,{passive:true});if(t!==document.documentElement){rc.set(t,ra(e,{container:t}))}n.addEventListener("scroll",e,{passive:true})}const i=ru.get(t);raf3(i);return()=>{raf3.cancel(i);const e=rd.get(t);if(!e)return;e.delete(n);if(e.size)return;const r=ru.get(t);ru.delete(t);if(r){rf(t).removeEventListener("scroll",r);window.removeEventListener("resize",r);rc.get(t)?.()}}};// src/hooks/useConstant.ts
function rh(e){const t=useRef(null);if(t.current===null){t.current=e()}return t.current}// src/hooks/useForceUpdate.ts
// src/hooks/useIsMounted.ts
// src/hooks/useIsomorphicLayoutEffect.ts
var rv=ez()?n.useEffect:n.useLayoutEffect;// src/hooks/useIsMounted.ts
var rg=()=>{const e=(0,n.useRef)(false);rv(()=>{e.current=true;return()=>{e.current=false}},[]);return e};// src/hooks/useForceUpdate.ts
function rm(){const e=(0,n.useState)()[1];const t=rg();return()=>{if(t.current){e(Math.random())}}}// src/hooks/useMemoOne.ts
function rb(e,t){const[r]=(0,n.useState)(()=>({inputs:t,result:e()}));const i=(0,n.useRef)();const a=i.current;let o=a;if(o){const r=Boolean(t&&o.inputs&&r_(t,o.inputs));if(!r){o={inputs:t,result:e()}}}else{o=r}(0,n.useEffect)(()=>{i.current=o;if(a==r){r.inputs=r.result=void 0}},[o]);return o.result}function r_(e,t){if(e.length!==t.length){return false}for(let r=0;r<e.length;r++){if(e[r]!==t[r]){return false}}return true}// src/hooks/useOnce.ts
var ry=e=>(0,n.useEffect)(e,rw);var rw=[];// src/hooks/usePrev.ts
function rx(e){const t=(0,n.useRef)();(0,n.useEffect)(()=>{t.current=e});return t.current}// src/hooks/useReducedMotion.ts
var rA=()=>{const[e,t]=useState3(null);rv(()=>{const e=window.matchMedia("(prefers-reduced-motion)");const r=e=>{t(e.matches);eZ({skipAnimation:e.matches})};r(e);if(e.addEventListener){e.addEventListener("change",r)}else{e.addListener(r)}return()=>{if(e.removeEventListener){e.removeEventListener("change",r)}else{e.removeListener(r)}}},[]);return e};// src/index.ts
//# sourceMappingURL=react-spring_shared.modern.mjs.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@react-spring+animated@9.7.5_react@18.3.1/node_modules/@react-spring/animated/dist/react-spring_animated.modern.mjs
// src/Animated.ts
var rE=Symbol.for("Animated:node");var rk=e=>!!e&&e[rE]===e;var rI=e=>e&&e[rE];var rC=(e,t)=>eL(e,rE,t);var rY=e=>e&&e[rE]&&e[rE].getPayload();var rS=class{constructor(){rC(this,this)}/** Get every `AnimatedValue` used by this node. */getPayload(){return this.payload||[]}};// src/AnimatedValue.ts
var rT=class extends rS{constructor(e){super();this._value=e;this.done=true;this.durationProgress=0;if(eK.num(this._value)){this.lastPosition=this._value}}/** @internal */static create(e){return new rT(e)}getPayload(){return[this]}getValue(){return this._value}setValue(e,t){if(eK.num(e)){this.lastPosition=e;if(t){e=Math.round(e/t)*t;if(this.done){this.lastPosition=e}}}if(this._value===e){return false}this._value=e;return true}reset(){const{done:e}=this;this.done=false;if(eK.num(this._value)){this.elapsedTime=0;this.durationProgress=0;this.lastPosition=this._value;if(e)this.lastVelocity=null;this.v0=null}}};// src/AnimatedString.ts
var rO=class extends rT{constructor(e){super(0);this._string=null;this._toString=tw({output:[e,e]})}/** @internal */static create(e){return new rO(e)}getValue(){const e=this._string;return e==null?this._string=this._toString(this._value):e}setValue(e){if(eK.str(e)){if(e==this._string){return false}this._string=e;this._value=1}else if(super.setValue(e)){this._string=null}else{return false}return true}reset(e){if(e){this._toString=tw({output:[this.getValue(),e]})}this._value=0;super.reset()}};// src/AnimatedArray.ts
// src/AnimatedObject.ts
// src/context.ts
var rD={dependencies:null};// src/AnimatedObject.ts
var rF=class extends rS{constructor(e){super();this.source=e;this.setValue(e)}getValue(e){const t={};eU(this.source,(r,n)=>{if(rk(r)){t[n]=r.getValue(e)}else if(tP(r)){t[n]=tR(r)}else if(!e){t[n]=r}});return t}/** Replace the raw object data */setValue(e){this.source=e;this.payload=this._makePayload(e)}reset(){if(this.payload){eB(this.payload,e=>e.reset())}}/** Create a payload set. */_makePayload(e){if(e){const t=/* @__PURE__ */new Set;eU(e,this._addToPayload,t);return Array.from(t)}}/** Add to a payload set. */_addToPayload(e){if(rD.dependencies&&tP(e)){rD.dependencies.add(e)}const t=rY(e);if(t){eB(t,e=>this.add(e))}}};// src/AnimatedArray.ts
var rP=class extends rF{constructor(e){super(e)}/** @internal */static create(e){return new rP(e)}getValue(){return this.source.map(e=>e.getValue())}setValue(e){const t=this.getPayload();if(e.length==t.length){return t.map((t,r)=>t.setValue(e[r])).some(Boolean)}super.setValue(e.map(rR));return true}};function rR(e){const t=t3(e)?rO:rT;return t.create(e)}// src/getAnimatedType.ts
function rH(e){const t=rI(e);return t?t.constructor:eK.arr(e)?rP:t3(e)?rO:rT}// src/createHost.ts
// src/withAnimated.tsx
var rM=(e,t)=>{const r=// Function components must use "forwardRef" to avoid being
// re-rendered on every animation frame.
!eK.fun(e)||e.prototype&&e.prototype.isReactComponent;return(0,n.forwardRef)((i,a)=>{const o=(0,n.useRef)(null);const s=r&&// eslint-disable-next-line react-hooks/rules-of-hooks
(0,n.useCallback)(e=>{o.current=rK(a,e)},[a]);const[l,u]=rL(i,t);const c=rm();const d=()=>{const e=o.current;if(r&&!e){return}const n=e?t.applyAnimatedValues(e,l.getValue(true)):false;if(n===false){c()}};const f=new rN(d,u);const p=(0,n.useRef)();rv(()=>{p.current=f;eB(u,e=>tq(e,f));return()=>{if(p.current){eB(p.current.deps,e=>tB(e,p.current));eg.cancel(p.current.update)}}});(0,n.useEffect)(d,[]);ry(()=>()=>{const e=p.current;eB(e.deps,t=>tB(t,e))});const h=t.getComponentProps(l.getValue());return /* @__PURE__ */n.createElement(e,{...h,ref:s})})};var rN=class{constructor(e,t){this.update=e;this.deps=t}eventObserved(e){if(e.type=="change"){eg.write(this.update)}}};function rL(e,t){const r=/* @__PURE__ */new Set;rD.dependencies=r;if(e.style)e={...e,style:t.createAnimatedStyle(e.style)};e=new rF(e);rD.dependencies=null;return[e,r]}function rK(e,t){if(e){if(eK.fun(e))e(t);else e.current=t}return t}// src/createHost.ts
var rq=Symbol.for("AnimatedComponent");var rB=(e,{applyAnimatedValues:t=()=>false,createAnimatedStyle:r=e=>new rF(e),getComponentProps:n=e=>e}={})=>{const i={applyAnimatedValues:t,createAnimatedStyle:r,getComponentProps:n};const a=e=>{const t=rU(e)||"Anonymous";if(eK.str(e)){e=a[e]||(a[e]=rM(e,i))}else{e=e[rq]||(e[rq]=rM(e,i))}e.displayName=`Animated(${t})`;return e};eU(e,(t,r)=>{if(eK.arr(e)){r=rU(t)}a[r]=a(t)});return{animated:a}};var rU=e=>eK.str(e)?e:e&&eK.str(e.displayName)?e.displayName:eK.fun(e)&&e.name||null;//# sourceMappingURL=react-spring_animated.modern.mjs.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@react-spring+core@9.7.5_react@18.3.1/node_modules/@react-spring/core/dist/react-spring_core.modern.mjs
// src/hooks/useChain.ts
// src/helpers.ts
function rj(e,...t){return eK.fun(e)?e(...t):e}var rV=(e,t)=>e===true||!!(t&&e&&(eK.fun(e)?e(t):ej(e).includes(t)));var rW=(e,t)=>eK.obj(e)?t&&e[t]:e;var rz=(e,t)=>e.default===true?e[t]:e.default?e.default[t]:void 0;var rG=e=>e;var rQ=(e,t=rG)=>{let r=r$;if(e.default&&e.default!==true){e=e.default;r=Object.keys(e)}const n={};for(const i of r){const r=t(e[i],i);if(!eK.und(r)){n[i]=r}}return n};var r$=["config","onProps","onStart","onChange","onPause","onResume","onRest"];var rX={config:1,from:1,to:1,ref:1,loop:1,reset:1,pause:1,cancel:1,reverse:1,immediate:1,default:1,delay:1,onProps:1,onStart:1,onChange:1,onPause:1,onResume:1,onRest:1,onResolve:1,// Transition props
items:1,trail:1,sort:1,expires:1,initial:1,enter:1,update:1,leave:1,children:1,onDestroyed:1,// Internal props
keys:1,callId:1,parentId:1};function rJ(e){const t={};let r=0;eU(e,(e,n)=>{if(!rX[n]){t[n]=e;r++}});if(r){return t}}function rZ(e){const t=rJ(e);if(t){const r={to:t};eU(e,(e,n)=>n in t||(r[n]=e));return r}return{...e}}function r0(e){e=tR(e);return eK.arr(e)?e.map(r0):t3(e)?eM.createStringInterpolator({range:[0,1],output:[e,e]})(1):e}function r1(e){for(const t in e)return true;return false}function r2(e){return eK.fun(e)||eK.arr(e)&&eK.obj(e[0])}function r6(e,t){e.ref?.delete(e);t?.delete(e)}function r4(e,t){if(t&&e.ref!==t){e.ref?.delete(e);t.add(e);e.ref=t}}// src/hooks/useChain.ts
function r5(e,t,r=1e3){useIsomorphicLayoutEffect(()=>{if(t){let n=0;each(e,(e,i)=>{const a=e.current;if(a.length){let o=r*t[i];if(isNaN(o))o=n;else n=o;each(a,e=>{each(e.queue,e=>{const t=e.delay;e.delay=e=>o+rj(t||0,e)})});e.start()}})}else{let t=Promise.resolve();each(e,e=>{const r=e.current;if(r.length){const n=r.map(e=>{const t=e.queue;e.queue=[];return t});t=t.then(()=>{each(r,(e,t)=>each(n[t]||[],t=>e.queue.push(t)));return Promise.all(e.start())})}})}})}// src/hooks/useSpring.ts
// src/hooks/useSprings.ts
// src/SpringValue.ts
// src/AnimationConfig.ts
// src/constants.ts
var r3={default:{tension:170,friction:26},gentle:{tension:120,friction:14},wobbly:{tension:180,friction:12},stiff:{tension:210,friction:20},slow:{tension:280,friction:60},molasses:{tension:280,friction:120}};// src/AnimationConfig.ts
var r8={...r3.default,mass:1,damping:1,easing:tO.linear,clamp:false};var r9=class{constructor(){/**
     * The initial velocity of one or more values.
     *
     * @default 0
     */this.velocity=0;Object.assign(this,r8)}};function r7(e,t,r){if(r){r={...r};ne(r,t);t={...r,...t}}ne(e,t);Object.assign(e,t);for(const t in r8){if(e[t]==null){e[t]=r8[t]}}let{frequency:n,damping:i}=e;const{mass:a}=e;if(!eK.und(n)){if(n<.01)n=.01;if(i<0)i=0;e.tension=Math.pow(2*Math.PI/n,2)*a;e.friction=4*Math.PI*i*a/n}return e}function ne(e,t){if(!eK.und(t.decay)){e.duration=void 0}else{const r=!eK.und(t.tension)||!eK.und(t.friction);if(r||!eK.und(t.frequency)||!eK.und(t.damping)||!eK.und(t.mass)){e.duration=void 0;e.decay=void 0}if(r){e.frequency=void 0}}}// src/Animation.ts
var nt=[];var nr=class{constructor(){this.changed=false;this.values=nt;this.toValues=null;this.fromValues=nt;this.config=new r9;this.immediate=false}};// src/scheduleProps.ts
function nn(e,{key:t,props:r,defaultProps:n,state:i,actions:a}){return new Promise((o,s)=>{let l;let u;let c=rV(r.cancel??n?.cancel,t);if(c){p()}else{if(!eK.und(r.pause)){i.paused=rV(r.pause,t)}let e=n?.pause;if(e!==true){e=i.paused||rV(e,t)}l=rj(r.delay||0,t);if(e){i.resumeQueue.add(f);a.pause()}else{a.resume();f()}}function d(){i.resumeQueue.add(f);i.timeouts.delete(u);u.cancel();l=u.time-eg.now()}function f(){if(l>0&&!eM.skipAnimation){i.delayed=true;u=eg.setTimeout(p,l);i.pauseQueue.add(d);i.timeouts.add(u)}else{p()}}function p(){if(i.delayed){i.delayed=false}i.pauseQueue.delete(d);i.timeouts.delete(u);if(e<=(i.cancelId||0)){c=true}try{a.start({...r,callId:e,cancel:c},o)}catch(e){s(e)}}})}// src/runAsync.ts
// src/AnimationResult.ts
var ni=(e,t)=>t.length==1?t[0]:t.some(e=>e.cancelled)?ns(e.get()):t.every(e=>e.noop)?na(e.get()):no(e.get(),t.every(e=>e.finished));var na=e=>({value:e,noop:true,finished:true,cancelled:false});var no=(e,t,r=false)=>({value:e,finished:t,cancelled:r});var ns=e=>({value:e,cancelled:true,finished:false});// src/runAsync.ts
function nl(e,t,r,n){const{callId:i,parentId:a,onRest:o}=t;const{asyncTo:s,promise:l}=r;if(!a&&e===s&&!t.reset){return l}return r.promise=(async()=>{r.asyncId=i;r.asyncTo=e;const u=rQ(t,(e,t)=>// The `onRest` prop is only called when the `runAsync` promise is resolved.
    t==="onRest"?void 0:e);let c;let d;const f=new Promise((e,t)=>(c=e,d=t));const p=e=>{const t=// The `cancel` prop or `stop` method was used.
i<=(r.cancelId||0)&&ns(n)||// The async `to` prop was replaced.
i!==r.asyncId&&no(n,false);if(t){e.result=t;d(e);throw e}};const h=(e,t)=>{const a=new nc;const o=new nd;return(async()=>{if(eM.skipAnimation){nu(r);o.result=no(n,false);d(o);throw o}p(a);const s=eK.obj(e)?{...e}:{...t,to:e};s.parentId=i;eU(u,(e,t)=>{if(eK.und(s[t])){s[t]=e}});const l=await n.start(s);p(a);if(r.paused){await new Promise(e=>{r.resumeQueue.add(e)})}return l})()};let v;if(eM.skipAnimation){nu(r);return no(n,false)}try{let t;if(eK.arr(e)){t=(async e=>{for(const t of e){await h(t)}})(e)}else{t=Promise.resolve(e(h,n.stop.bind(n)))}await Promise.all([t.then(c),f]);v=no(n.get(),true,false)}catch(e){if(e instanceof nc){v=e.result}else if(e instanceof nd){v=e.result}else{throw e}}finally{if(i==r.asyncId){r.asyncId=a;r.asyncTo=a?s:void 0;r.promise=a?l:void 0}}if(eK.fun(o)){eg.batchedUpdates(()=>{o(v,n,n.item)})}return v})()}function nu(e,t){eV(e.timeouts,e=>e.cancel());e.pauseQueue.clear();e.resumeQueue.clear();e.asyncId=e.asyncTo=e.promise=void 0;if(t)e.cancelId=t}var nc=class extends Error{constructor(){super("An async animation has been interrupted. You see this error because you forgot to use `await` or `.catch(...)` on its returned promise.")}};var nd=class extends Error{constructor(){super("SkipAnimationSignal")}};// src/FrameValue.ts
var nf=e=>e instanceof nh;var np=1;var nh=class extends tL{constructor(){super(...arguments);this.id=np++;this._priority=0}get priority(){return this._priority}set priority(e){if(this._priority!=e){this._priority=e;this._onPriorityChange(e)}}/** Get the current value */get(){const e=rI(this);return e&&e.getValue()}/** Create a spring that maps our value to another value */to(...e){return eM.to(this,e)}/** @deprecated Use the `to` method instead. */interpolate(...e){t6();return eM.to(this,e)}toJSON(){return this.get()}observerAdded(e){if(e==1)this._attach()}observerRemoved(e){if(e==0)this._detach()}/** Called when the first child is added. */_attach(){}/** Called when the last child is removed. */_detach(){}/** Tell our children about our new value */_onChange(e,t=false){tN(this,{type:"change",parent:this,value:e,idle:t})}/** Tell our children about our new priority */_onPriorityChange(e){if(!this.idle){e4.sort(this)}tN(this,{type:"priority",parent:this,priority:e})}};// src/SpringPhase.ts
var nv=Symbol.for("SpringPhase");var ng=1;var nm=2;var nb=4;var n_=e=>(e[nv]&ng)>0;var ny=e=>(e[nv]&nm)>0;var nw=e=>(e[nv]&nb)>0;var nx=(e,t)=>t?e[nv]|=nm|ng:e[nv]&=~nm;var nA=(e,t)=>t?e[nv]|=nb:e[nv]&=~nb;// src/SpringValue.ts
var nE=class extends nh{constructor(e,t){super();/** The animation state */this.animation=new nr;/** Some props have customizable default values */this.defaultProps={};/** The state for `runAsync` calls */this._state={paused:false,delayed:false,pauseQueue:/* @__PURE__ */new Set,resumeQueue:/* @__PURE__ */new Set,timeouts:/* @__PURE__ */new Set};/** The promise resolvers of pending `start` calls */this._pendingCalls=/* @__PURE__ */new Set;/** The counter for tracking `scheduleProps` calls */this._lastCallId=0;/** The last `scheduleProps` call that changed the `to` prop */this._lastToId=0;this._memoizedDuration=0;if(!eK.und(e)||!eK.und(t)){const r=eK.obj(e)?{...e}:{...t,from:e};if(eK.und(r.default)){r.default=true}this.start(r)}}/** Equals true when not advancing on each frame. */get idle(){return!(ny(this)||this._state.asyncTo)||nw(this)}get goal(){return tR(this.animation.to)}get velocity(){const e=rI(this);return e instanceof rT?e.lastVelocity||0:e.getPayload().map(e=>e.lastVelocity||0)}/**
   * When true, this value has been animated at least once.
   */get hasAnimated(){return n_(this)}/**
   * When true, this value has an unfinished animation,
   * which is either active or paused.
   */get isAnimating(){return ny(this)}/**
   * When true, all current and future animations are paused.
   */get isPaused(){return nw(this)}/**
   *
   *
   */get isDelayed(){return this._state.delayed}/** Advance the current animation by a number of milliseconds */advance(e){let t=true;let r=false;const n=this.animation;let{toValues:i}=n;const{config:a}=n;const o=rY(n.to);if(!o&&tP(n.to)){i=ej(tR(n.to))}n.values.forEach((s,l)=>{if(s.done)return;const u=// Animated strings always go from 0 to 1.
s.constructor==rO?1:o?o[l].lastPosition:i[l];let c=n.immediate;let d=u;if(!c){d=s.lastPosition;if(a.tension<=0){s.done=true;return}let t=s.elapsedTime+=e;const r=n.fromValues[l];const i=s.v0!=null?s.v0:s.v0=eK.arr(a.velocity)?a.velocity[l]:a.velocity;let o;const f=a.precision||(r==u?.005:Math.min(1,Math.abs(u-r)*.001));if(!eK.und(a.duration)){let n=1;if(a.duration>0){if(this._memoizedDuration!==a.duration){this._memoizedDuration=a.duration;if(s.durationProgress>0){s.elapsedTime=a.duration*s.durationProgress;t=s.elapsedTime+=e}}n=(a.progress||0)+t/this._memoizedDuration;n=n>1?1:n<0?0:n;s.durationProgress=n}d=r+a.easing(n)*(u-r);o=(d-s.lastPosition)/e;c=n==1}else if(a.decay){const e=a.decay===true?.998:a.decay;const n=Math.exp(-(1-e)*t);d=r+i/(1-e)*(1-n);c=Math.abs(s.lastPosition-d)<=f;o=i*n}else{o=s.lastVelocity==null?i:s.lastVelocity;const t=a.restVelocity||f/10;const n=a.clamp?0:a.bounce;const l=!eK.und(n);const p=r==u?s.v0>0:r<u;let h;let v=false;const g=1;const m=Math.ceil(e/g);for(let e=0;e<m;++e){h=Math.abs(o)>t;if(!h){c=Math.abs(u-d)<=f;if(c){break}}if(l){v=d==u||d>u==p;if(v){o=-o*n;d=u}}const e=-a.tension*1e-6*(d-u);const r=-a.friction*.001*o;const i=(e+r)/a.mass;o=o+i*g;d=d+o*g}}s.lastVelocity=o;if(Number.isNaN(d)){console.warn(`Got NaN while animating:`,this);c=true}}if(o&&!o[l].done){c=false}if(c){s.done=true}else{t=false}if(s.setValue(d,a.round)){r=true}});const s=rI(this);const l=s.getValue();if(t){const e=tR(n.to);if((l!==e||r)&&!a.decay){s.setValue(e);this._onChange(e)}else if(r&&a.decay){this._onChange(l)}this._stop()}else if(r){this._onChange(l)}}/** Set the current value, while stopping the current animation */set(e){eg.batchedUpdates(()=>{this._stop();this._focus(e);this._set(e)});return this}/**
   * Freeze the active animation in time, as well as any updates merged
   * before `resume` is called.
   */pause(){this._update({pause:true})}/** Resume the animation if paused. */resume(){this._update({pause:false})}/** Skip to the end of the current animation. */finish(){if(ny(this)){const{to:e,config:t}=this.animation;eg.batchedUpdates(()=>{this._onStart();if(!t.decay){this._set(e,false)}this._stop()})}return this}/** Push props into the pending queue. */update(e){const t=this.queue||(this.queue=[]);t.push(e);return this}start(e,t){let r;if(!eK.und(e)){r=[eK.obj(e)?e:{...t,to:e}]}else{r=this.queue||[];this.queue=[]}return Promise.all(r.map(e=>{const t=this._update(e);return t})).then(e=>ni(this,e))}/**
   * Stop the current animation, and cancel any delayed updates.
   *
   * Pass `true` to call `onRest` with `cancelled: true`.
   */stop(e){const{to:t}=this.animation;this._focus(this.get());nu(this._state,e&&this._lastCallId);eg.batchedUpdates(()=>this._stop(t,e));return this}/** Restart the animation. */reset(){this._update({reset:true})}/** @internal */eventObserved(e){if(e.type=="change"){this._start()}else if(e.type=="priority"){this.priority=e.priority+1}}/**
   * Parse the `to` and `from` range from the given `props` object.
   *
   * This also ensures the initial value is available to animated components
   * during the render phase.
   */_prepareNode(e){const t=this.key||"";let{to:r,from:n}=e;r=eK.obj(r)?r[t]:r;if(r==null||r2(r)){r=void 0}n=eK.obj(n)?n[t]:n;if(n==null){n=void 0}const i={to:r,from:n};if(!n_(this)){if(e.reverse)[r,n]=[n,r];n=tR(n);if(!eK.und(n)){this._set(n)}else if(!rI(this)){this._set(r)}}return i}/** Every update is processed by this method before merging. */_update({...e},t){const{key:r,defaultProps:n}=this;if(e.default)Object.assign(n,rQ(e,(e,t)=>/^on/.test(t)?rW(e,r):e));nO(this,e,"onProps");nD(this,"onProps",e,this);const i=this._prepareNode(e);if(Object.isFrozen(this)){throw Error("Cannot animate a `SpringValue` object that is frozen. Did you forget to pass your component to `animated(...)` before animating its props?")}const a=this._state;return nn(++this._lastCallId,{key:r,props:e,defaultProps:n,state:a,actions:{pause:()=>{if(!nw(this)){nA(this,true);eW(a.pauseQueue);nD(this,"onPause",no(this,nk(this,this.animation.to)),this)}},resume:()=>{if(nw(this)){nA(this,false);if(ny(this)){this._resume()}eW(a.resumeQueue);nD(this,"onResume",no(this,nk(this,this.animation.to)),this)}},start:this._merge.bind(this,i)}}).then(r=>{if(e.loop&&r.finished&&!(t&&r.noop)){const t=nI(e);if(t){return this._update(t,true)}}return r})}/** Merge props into the current animation */_merge(e,t,r){if(t.cancel){this.stop(true);return r(ns(this))}const n=!eK.und(e.to);const i=!eK.und(e.from);if(n||i){if(t.callId>this._lastToId){this._lastToId=t.callId}else{return r(ns(this))}}const{key:a,defaultProps:o,animation:s}=this;const{to:l,from:u}=s;let{to:c=l,from:d=u}=e;if(i&&!n&&(!t.default||eK.und(c))){c=d}if(t.reverse)[c,d]=[d,c];const f=!eq(d,u);if(f){s.from=d}d=tR(d);const p=!eq(c,l);if(p){this._focus(c)}const h=r2(t.to);const{config:v}=s;const{decay:g,velocity:m}=v;if(n||i){v.velocity=0}if(t.config&&!h){r7(v,rj(t.config,a),// Avoid calling the same "config" prop twice.
t.config!==o.config?rj(o.config,a):void 0)}let b=rI(this);if(!b||eK.und(c)){return r(no(this,true))}const _=// When `reset` is undefined, the `from` prop implies `reset: true`,
// except for declarative updates. When `reset` is defined, there
// must exist a value to animate from.
eK.und(t.reset)?i&&!t.default:!eK.und(d)&&rV(t.reset,a);const y=_?d:this.get();const w=r0(c);const x=eK.num(w)||eK.arr(w)||t3(w);const A=!h&&(!x||rV(o.immediate||t.immediate,a));if(p){const e=rH(c);if(e!==b.constructor){if(A){b=this._set(w)}else throw Error(`Cannot animate between ${b.constructor.name} and ${e.name}, as the "to" prop suggests`)}}const E=b.constructor;let k=tP(c);let I=false;if(!k){const e=_||!n_(this)&&f;if(p||e){I=eq(r0(y),w);k=!I}if(!eq(s.immediate,A)&&!A||!eq(v.decay,g)||!eq(v.velocity,m)){k=true}}if(I&&ny(this)){if(s.changed&&!_){k=true}else if(!k){this._stop(l)}}if(!h){if(k||tP(l)){s.values=b.getPayload();s.toValues=tP(c)?null:E==rO?[1]:ej(w)}if(s.immediate!=A){s.immediate=A;if(!A&&!_){this._set(l)}}if(k){const{onRest:e}=s;eB(nT,e=>nO(this,t,e));const n=no(this,nk(this,l));eW(this._pendingCalls,n);this._pendingCalls.add(r);if(s.changed)eg.batchedUpdates(()=>{s.changed=!_;e?.(n,this);if(_){rj(o.onRest,n)}else{s.onStart?.(n,this)}})}}if(_){this._set(y)}if(h){r(nl(t.to,t,this._state,this))}else if(k){this._start()}else if(ny(this)&&!p){this._pendingCalls.add(r)}else{r(na(y))}}/** Update the `animation.to` value, which might be a `FluidValue` */_focus(e){const t=this.animation;if(e!==t.to){if(tH(this)){this._detach()}t.to=e;if(tH(this)){this._attach()}}}_attach(){let e=0;const{to:t}=this.animation;if(tP(t)){tq(t,this);if(nf(t)){e=t.priority+1}}this.priority=e}_detach(){const{to:e}=this.animation;if(tP(e)){tB(e,this)}}/**
   * Update the current value from outside the frameloop,
   * and return the `Animated` node.
   */_set(e,t=true){const r=tR(e);if(!eK.und(r)){const e=rI(this);if(!e||!eq(r,e.getValue())){const n=rH(r);if(!e||e.constructor!=n){rC(this,n.create(r))}else{e.setValue(r)}if(e){eg.batchedUpdates(()=>{this._onChange(r,t)})}}}return rI(this)}_onStart(){const e=this.animation;if(!e.changed){e.changed=true;nD(this,"onStart",no(this,nk(this,e.to)),this)}}_onChange(e,t){if(!t){this._onStart();rj(this.animation.onChange,e,this)}rj(this.defaultProps.onChange,e,this);super._onChange(e,t)}// This method resets the animation state (even if already animating) to
// ensure the latest from/to range is used, and it also ensures this spring
// is added to the frameloop.
_start(){const e=this.animation;rI(this).reset(tR(e.to));if(!e.immediate){e.fromValues=e.values.map(e=>e.lastPosition)}if(!ny(this)){nx(this,true);if(!nw(this)){this._resume()}}}_resume(){if(eM.skipAnimation){this.finish()}else{e4.start(this)}}/**
   * Exit the frameloop and notify `onRest` listeners.
   *
   * Always wrap `_stop` calls with `batchedUpdates`.
   */_stop(e,t){if(ny(this)){nx(this,false);const r=this.animation;eB(r.values,e=>{e.done=true});if(r.toValues){r.onChange=r.onPause=r.onResume=void 0}tN(this,{type:"idle",parent:this});const n=t?ns(this.get()):no(this.get(),nk(this,e??r.to));eW(this._pendingCalls,n);if(r.changed){r.changed=false;nD(this,"onRest",n,this)}}}};function nk(e,t){const r=r0(t);const n=r0(e.get());return eq(n,r)}function nI(e,t=e.loop,r=e.to){const n=rj(t);if(n){const i=n!==true&&rZ(n);const a=(i||e).reverse;const o=!i||i.reset;return nC({...e,loop:t,// Avoid updating default props when looping.
default:false,// Never loop the `pause` prop.
pause:void 0,// For the "reverse" prop to loop as expected, the "to" prop
// must be undefined. The "reverse" prop is ignored when the
// "to" prop is an array or function.
to:!a||r2(r)?r:void 0,// Ignore the "from" prop except on reset.
from:o?e.from:void 0,reset:o,// The "loop" prop can return a "useSpring" props object to
// override any of the original props.
...i})}}function nC(e){const{to:t,from:r}=e=rZ(e);const n=/* @__PURE__ */new Set;if(eK.obj(t))nS(t,n);if(eK.obj(r))nS(r,n);e.keys=n.size?Array.from(n):null;return e}function nY(e){const t=nC(e);if(eK.und(t.default)){t.default=rQ(t)}return t}function nS(e,t){eU(e,(e,r)=>e!=null&&t.add(r))}var nT=["onStart","onRest","onChange","onPause","onResume"];function nO(e,t,r){e.animation[r]=t[r]!==rz(t,r)?rW(t[r],e.key):void 0}function nD(e,t,...r){e.animation[t]?.(...r);e.defaultProps[t]?.(...r)}// src/Controller.ts
var nF=["onStart","onChange","onRest"];var nP=1;var nR=class{constructor(e,t){this.id=nP++;/** The animated values */this.springs={};/** The queue of props passed to the `update` method. */this.queue=[];/** The counter for tracking `scheduleProps` calls */this._lastAsyncId=0;/** The values currently being animated */this._active=/* @__PURE__ */new Set;/** The values that changed recently */this._changed=/* @__PURE__ */new Set;/** Equals false when `onStart` listeners can be called */this._started=false;/** State used by the `runAsync` function */this._state={paused:false,pauseQueue:/* @__PURE__ */new Set,resumeQueue:/* @__PURE__ */new Set,timeouts:/* @__PURE__ */new Set};/** The event queues that are flushed once per frame maximum */this._events={onStart:/* @__PURE__ */new Map,onChange:/* @__PURE__ */new Map,onRest:/* @__PURE__ */new Map};this._onFrame=this._onFrame.bind(this);if(t){this._flush=t}if(e){this.start({default:true,...e})}}/**
   * Equals `true` when no spring values are in the frameloop, and
   * no async animation is currently active.
   */get idle(){return!this._state.asyncTo&&Object.values(this.springs).every(e=>{return e.idle&&!e.isDelayed&&!e.isPaused})}get item(){return this._item}set item(e){this._item=e}/** Get the current values of our springs */get(){const e={};this.each((t,r)=>e[r]=t.get());return e}/** Set the current values without animating. */set(e){for(const t in e){const r=e[t];if(!eK.und(r)){this.springs[t].set(r)}}}/** Push an update onto the queue of each value. */update(e){if(e){this.queue.push(nC(e))}return this}/**
   * Start the queued animations for every spring, and resolve the returned
   * promise once all queued animations have finished or been cancelled.
   *
   * When you pass a queue (instead of nothing), that queue is used instead of
   * the queued animations added with the `update` method, which are left alone.
   */start(e){let{queue:t}=this;if(e){t=ej(e).map(nC)}else{this.queue=[]}if(this._flush){return this._flush(this,t)}nB(this,t);return nH(this,t)}/** @internal */stop(e,t){if(e!==!!e){t=e}if(t){const r=this.springs;eB(ej(t),t=>r[t].stop(!!e))}else{nu(this._state,this._lastAsyncId);this.each(t=>t.stop(!!e))}return this}/** Freeze the active animation in time */pause(e){if(eK.und(e)){this.start({pause:true})}else{const t=this.springs;eB(ej(e),e=>t[e].pause())}return this}/** Resume the animation if paused. */resume(e){if(eK.und(e)){this.start({pause:false})}else{const t=this.springs;eB(ej(e),e=>t[e].resume())}return this}/** Call a function once per spring value */each(e){eU(this.springs,e)}/** @internal Called at the end of every animation frame */_onFrame(){const{onStart:e,onChange:t,onRest:r}=this._events;const n=this._active.size>0;const i=this._changed.size>0;if(n&&!this._started||i&&!this._started){this._started=true;eV(e,([e,t])=>{t.value=this.get();e(t,this,this._item)})}const a=!n&&this._started;const o=i||a&&r.size?this.get():null;if(i&&t.size){eV(t,([e,t])=>{t.value=o;e(t,this,this._item)})}if(a){this._started=false;eV(r,([e,t])=>{t.value=o;e(t,this,this._item)})}}/** @internal */eventObserved(e){if(e.type=="change"){this._changed.add(e.parent);if(!e.idle){this._active.add(e.parent)}}else if(e.type=="idle"){this._active.delete(e.parent)}else return;eg.onFrame(this._onFrame)}};function nH(e,t){return Promise.all(t.map(t=>nM(e,t))).then(t=>ni(e,t))}async function nM(e,t,r){const{keys:n,to:i,from:a,loop:o,onRest:s,onResolve:l}=t;const u=eK.obj(t.default)&&t.default;if(o){t.loop=false}if(i===false)t.to=null;if(a===false)t.from=null;const c=eK.arr(i)||eK.fun(i)?i:void 0;if(c){t.to=void 0;t.onRest=void 0;if(u){u.onRest=void 0}}else{eB(nF,r=>{const n=t[r];if(eK.fun(n)){const i=e["_events"][r];t[r]=({finished:e,cancelled:t})=>{const r=i.get(n);if(r){if(!e)r.finished=false;if(t)r.cancelled=true}else{i.set(n,{value:null,finished:e||false,cancelled:t||false})}};if(u){u[r]=t[r]}}})}const d=e["_state"];if(t.pause===!d.paused){d.paused=t.pause;eW(t.pause?d.pauseQueue:d.resumeQueue)}else if(d.paused){t.pause=true}const f=(n||Object.keys(e.springs)).map(r=>e.springs[r].start(t));const p=t.cancel===true||rz(t,"cancel")===true;if(c||p&&d.asyncId){f.push(nn(++e["_lastAsyncId"],{props:t,state:d,actions:{pause:eN,resume:eN,start(t,r){if(p){nu(d,e["_lastAsyncId"]);r(ns(e))}else{t.onRest=s;r(nl(c,t,d,e))}}}}))}if(d.paused){await new Promise(e=>{d.resumeQueue.add(e)})}const h=ni(e,await Promise.all(f));if(o&&h.finished&&!(r&&h.noop)){const r=nI(t,o,i);if(r){nB(e,[r]);return nM(e,r,true)}}if(l){eg.batchedUpdates(()=>l(h,e,e.item))}return h}function nN(e,t){const r={...e.springs};if(t){eB(ej(t),e=>{if(eK.und(e.keys)){e=nC(e)}if(!eK.obj(e.to)){e={...e,to:void 0}}nq(r,e,e=>{return nK(e)})})}nL(e,r);return r}function nL(e,t){eU(t,(t,r)=>{if(!e.springs[r]){e.springs[r]=t;tq(t,e)}})}function nK(e,t){const r=new nE;r.key=e;if(t){tq(r,t)}return r}function nq(e,t,r){if(t.keys){eB(t.keys,n=>{const i=e[n]||(e[n]=r(n));i["_prepareNode"](t)})}}function nB(e,t){eB(t,t=>{nq(e.springs,t,t=>{return nK(t,e)})})}// src/SpringContext.tsx
var nU=({children:e,...t})=>{const r=(0,n.useContext)(nj);const i=t.pause||!!r.pause,a=t.immediate||!!r.immediate;t=rb(()=>({pause:i,immediate:a}),[i,a]);const{Provider:o}=nj;return /* @__PURE__ */n.createElement(o,{value:t},e)};var nj=nV(nU,{});nU.Provider=nj.Provider;nU.Consumer=nj.Consumer;function nV(e,t){Object.assign(e,n.createContext(t));e.Provider._context=e;e.Consumer._context=e;return e}// src/SpringRef.ts
var nW=()=>{const e=[];const t=function(t){t5();const n=[];eB(e,(e,i)=>{if(eK.und(t)){n.push(e.start())}else{const a=r(t,e,i);if(a){n.push(e.start(a))}}});return n};t.current=e;t.add=function(t){if(!e.includes(t)){e.push(t)}};t.delete=function(t){const r=e.indexOf(t);if(~r)e.splice(r,1)};t.pause=function(){eB(e,e=>e.pause(...arguments));return this};t.resume=function(){eB(e,e=>e.resume(...arguments));return this};t.set=function(t){eB(e,(e,r)=>{const n=eK.fun(t)?t(r,e):t;if(n){e.set(n)}})};t.start=function(t){const r=[];eB(e,(e,n)=>{if(eK.und(t)){r.push(e.start())}else{const i=this._getProps(t,e,n);if(i){r.push(e.start(i))}}});return r};t.stop=function(){eB(e,e=>e.stop(...arguments));return this};t.update=function(t){eB(e,(e,r)=>e.update(this._getProps(t,e,r)));return this};const r=function(e,t,r){return eK.fun(e)?e(r,t):e};t._getProps=r;return t};// src/hooks/useSprings.ts
function nz(e,t,r){const i=eK.fun(t)&&t;if(i&&!r)r=[];const a=(0,n.useMemo)(()=>i||arguments.length==3?nW():void 0,[]);const o=(0,n.useRef)(0);const s=rm();const l=(0,n.useMemo)(()=>({ctrls:[],queue:[],flush(e,t){const r=nN(e,t);const n=o.current>0&&!l.queue.length&&!Object.keys(r).some(t=>!e.springs[t]);return n?nH(e,t):new Promise(n=>{nL(e,r);l.queue.push(()=>{n(nH(e,t))});s()})}}),[]);const u=(0,n.useRef)([...l.ctrls]);const c=[];const d=rx(e)||0;(0,n.useMemo)(()=>{eB(u.current.slice(e,d),e=>{r6(e,a);e.stop(true)});u.current.length=e;f(d,e)},[e]);(0,n.useMemo)(()=>{f(0,Math.min(d,e))},r);function f(e,r){for(let n=e;n<r;n++){const e=u.current[n]||(u.current[n]=new nR(null,l.flush));const r=i?i(n,e):t[n];if(r){c[n]=nY(r)}}}const p=u.current.map((e,t)=>nN(e,c[t]));const h=(0,n.useContext)(nU);const v=rx(h);const g=h!==v&&r1(h);rv(()=>{o.current++;l.ctrls=u.current;const{queue:e}=l;if(e.length){l.queue=[];eB(e,e=>e())}eB(u.current,(e,t)=>{a?.add(e);if(g){e.start({default:h})}const r=c[t];if(r){r4(e,r.ref);if(e.ref){e.queue.push(r)}else{e.start(r)}}})});ry(()=>()=>{eB(l.ctrls,e=>e.stop(true))});const m=p.map(e=>({...e}));return a?[m,a]:m}// src/hooks/useSpring.ts
function nG(e,t){const r=eK.fun(e);const[[n],i]=nz(1,r?e:[e],r?t||[]:t);return r||arguments.length==2?[n,i]:n}// src/hooks/useSpringRef.ts
var nQ=()=>nW();var n$=()=>useState(nQ)[0];// src/hooks/useSpringValue.ts
var nX=(e,t)=>{const r=useConstant(()=>new nE(e,t));useOnce2(()=>()=>{r.stop()});return r};// src/hooks/useTrail.ts
function nJ(e,t,r){const n=is10.fun(t)&&t;if(n&&!r)r=[];let i=true;let a=void 0;const o=nz(e,(e,r)=>{const o=n?n(e,r):t;a=o.ref;i=i&&o.reverse;return o},// Ensure the props function is called when no deps exist.
// This works around the 3 argument rule.
r||[{}]);useIsomorphicLayoutEffect3(()=>{each6(o[1].current,(e,t)=>{const r=o[1].current[t+(i?1:-1)];r4(e,a);if(e.ref){if(r){e.update({to:r.springs})}return}if(r){e.start({to:r.springs})}else{e.start()}})},r);if(n||arguments.length==3){const e=a??o[1];e["_getProps"]=(t,r,n)=>{const i=is10.fun(t)?t(n,r):t;if(i){const t=e.current[n+(i.reverse?1:-1)];if(t)i.to=t.springs;return i}};return o}return o[0]}// src/hooks/useTransition.tsx
function nZ(e,t,r){const i=eK.fun(t)&&t;const{reset:a,sort:o,trail:s=0,expires:l=true,exitBeforeEnter:u=false,onDestroyed:c,ref:d,config:f}=i?i():t;const p=(0,n.useMemo)(()=>i||arguments.length==3?nW():void 0,[]);const h=ej(e);const v=[];const g=(0,n.useRef)(null);const m=a?null:g.current;rv(()=>{g.current=v});ry(()=>{eB(v,e=>{p?.add(e.ctrl);e.ctrl.ref=p});return()=>{eB(g.current,e=>{if(e.expired){clearTimeout(e.expirationId)}r6(e.ctrl,p);e.ctrl.stop(true)})}});const b=n1(h,i?i():t,m);const _=a&&g.current||[];rv(()=>eB(_,({ctrl:e,item:t,key:r})=>{r6(e,p);rj(c,t,r)}));const y=[];if(m)eB(m,(e,t)=>{if(e.expired){clearTimeout(e.expirationId);_.push(e)}else{t=y[t]=b.indexOf(e.key);if(~t)v[t]=e}});eB(h,(e,t)=>{if(!v[t]){v[t]={key:b[t],item:e,phase:"mount"/* MOUNT */,ctrl:new nR};v[t].ctrl.item=e}});if(y.length){let e=-1;const{leave:r}=i?i():t;eB(y,(t,n)=>{const i=m[n];if(~t){e=v.indexOf(i);v[e]={...i,item:h[t]}}else if(r){v.splice(++e,0,i)}})}if(eK.fun(o)){v.sort((e,t)=>o(e.item,t.item))}let w=-s;const x=rm();const A=rQ(t);const E=/* @__PURE__ */new Map;const k=(0,n.useRef)(/* @__PURE__ */new Map);const I=(0,n.useRef)(false);eB(v,(e,r)=>{const n=e.key;const a=e.phase;const o=i?i():t;let c;let p;const h=rj(o.delay||0,n);if(a=="mount"/* MOUNT */){c=o.enter;p="enter"/* ENTER */}else{const e=b.indexOf(n)<0;if(a!="leave"/* LEAVE */){if(e){c=o.leave;p="leave"/* LEAVE */}else if(c=o.update){p="update"/* UPDATE */}else return}else if(!e){c=o.enter;p="enter"/* ENTER */}else return}c=rj(c,e.item,r);c=eK.obj(c)?rZ(c):{to:c};if(!c.config){const t=f||A.config;c.config=rj(t,e.item,r,p)}w+=s;const v={...A,// we need to add our props.delay value you here.
delay:h+w,ref:d,immediate:o.immediate,// This prevents implied resets.
reset:false,// Merge any phase-specific props.
...c};if(p=="enter"/* ENTER */&&eK.und(v.from)){const n=i?i():t;const a=eK.und(n.initial)||m?n.from:n.initial;v.from=rj(a,e.item,r)}const{onResolve:_}=v;v.onResolve=e=>{rj(_,e);const t=g.current;const r=t.find(e=>e.key===n);if(!r)return;if(e.cancelled&&r.phase!="update"/* UPDATE */){return}if(r.ctrl.idle){const e=t.every(e=>e.ctrl.idle);if(r.phase=="leave"/* LEAVE */){const t=rj(l,r.item);if(t!==false){const n=t===true?0:t;r.expired=true;if(!e&&n>0){if(n<=0x7fffffff)r.expirationId=setTimeout(x,n);return}}}if(e&&t.some(e=>e.expired)){k.current.delete(r);if(u){I.current=true}x()}}};const y=nN(e.ctrl,v);if(p==="leave"/* LEAVE */&&u){k.current.set(e,{phase:p,springs:y,payload:v})}else{E.set(e,{phase:p,springs:y,payload:v})}});const C=(0,n.useContext)(nU);const Y=rx(C);const S=C!==Y&&r1(C);rv(()=>{if(S){eB(v,e=>{e.ctrl.start({default:C})})}},[C]);eB(E,(e,t)=>{if(k.current.size){const e=v.findIndex(e=>e.key===t.key);v.splice(e,1)}});rv(()=>{eB(k.current.size?k.current:E,({phase:e,payload:t},r)=>{const{ctrl:n}=r;r.phase=e;p?.add(n);if(S&&e=="enter"/* ENTER */){n.start({default:C})}if(t){r4(n,t.ref);if((n.ref||p)&&!I.current){n.update(t)}else{n.start(t);if(I.current){I.current=false}}}})},a?void 0:r);const T=e=>/* @__PURE__ */n.createElement(n.Fragment,null,v.map((t,r)=>{const{springs:i}=E.get(t)||t.ctrl;const a=e({...i},t.item,t,r);return a&&a.type?/* @__PURE__ */n.createElement(a.type,{...a.props,key:eK.str(t.key)||eK.num(t.key)?t.key:t.ctrl.id,ref:a.ref}):a}));return p?[T,p]:T}var n0=1;function n1(e,{key:t,keys:r=t},n){if(r===null){const t=/* @__PURE__ */new Set;return e.map(e=>{const r=n&&n.find(r=>r.item===e&&r.phase!=="leave"/* LEAVE */&&!t.has(r));if(r){t.add(r);return r.key}return n0++})}return eK.und(r)?e:eK.fun(r)?e.map(r):ej(r)}// src/hooks/useScroll.ts
var n2=({container:e,...t}={})=>{const[r,n]=nG(()=>({scrollX:0,scrollY:0,scrollXProgress:0,scrollYProgress:0,...t}),[]);useIsomorphicLayoutEffect5(()=>{const t=onScroll(({x:e,y:t})=>{n.start({scrollX:e.current,scrollXProgress:e.progress,scrollY:t.current,scrollYProgress:t.progress})},{container:e?.current||void 0});return()=>{each8(Object.values(r),e=>e.stop());t()}},[]);return r};// src/hooks/useResize.ts
var n6=({container:e,...t})=>{const[r,n]=nG(()=>({width:0,height:0,...t}),[]);useIsomorphicLayoutEffect6(()=>{const t=onResize(({width:e,height:t})=>{n.start({width:e,height:t,immediate:r.width.get()===0||r.height.get()===0})},{container:e?.current||void 0});return()=>{each9(Object.values(r),e=>e.stop());t()}},[]);return r};// src/hooks/useInView.ts
var n4=/* unused pure expression or super */null&&{any:0,all:1};function n5(e,t){const[r,n]=useState2(false);const i=useRef3();const a=is12.fun(e)&&e;const o=a?a():{};const{to:s={},from:l={},...u}=o;const c=a?t:e;const[d,f]=nG(()=>({from:l,...u}),[]);useIsomorphicLayoutEffect7(()=>{const e=i.current;const{root:t,once:a,amount:o="any",...u}=c??{};if(!e||a&&r||typeof IntersectionObserver==="undefined")return;const d=/* @__PURE__ */new WeakMap;const p=()=>{if(s){f.start(s)}n(true);const e=()=>{if(l){f.start(l)}n(false)};return a?void 0:e};const h=e=>{e.forEach(e=>{const t=d.get(e.target);if(e.isIntersecting===Boolean(t)){return}if(e.isIntersecting){const t=p();if(is12.fun(t)){d.set(e.target,t)}else{v.unobserve(e.target)}}else if(t){t();d.delete(e.target)}})};const v=new IntersectionObserver(h,{root:t&&t.current||void 0,threshold:typeof o==="number"||Array.isArray(o)?o:n4[o],...u});v.observe(e);return()=>v.unobserve(e)},[c]);if(a){return[i,d]}return[i,r]}// src/components/Spring.tsx
function n3({children:e,...t}){return e(nG(t))}// src/components/Trail.tsx
function n8({items:e,children:t,...r}){const n=nJ(e.length,r);return e.map((e,r)=>{const i=t(e,r);return is13.fun(i)?i(n[r]):i})}// src/components/Transition.tsx
function n9({items:e,children:t,...r}){return nZ(e,r)(t)}// src/interpolate.ts
// src/Interpolation.ts
var n7=class extends nh{constructor(e,t){super();this.source=e;/** Equals false when in the frameloop */this.idle=true;/** The inputs which are currently animating */this._active=/* @__PURE__ */new Set;this.calc=tw(...t);const r=this._get();const n=rH(r);rC(this,n.create(r))}advance(e){const t=this._get();const r=this.get();if(!eq(t,r)){rI(this).setValue(t);this._onChange(t,this.idle)}if(!this.idle&&it(this._active)){ir(this)}}_get(){const e=eK.arr(this.source)?this.source.map(tR):ej(tR(this.source));return this.calc(...e)}_start(){if(this.idle&&!it(this._active)){this.idle=false;eB(rY(this),e=>{e.done=false});if(eM.skipAnimation){eg.batchedUpdates(()=>this.advance());ir(this)}else{e4.start(this)}}}// Observe our sources only when we're observed.
_attach(){let e=1;eB(ej(this.source),t=>{if(tP(t)){tq(t,this)}if(nf(t)){if(!t.idle){this._active.add(t)}e=Math.max(e,t.priority+1)}});this.priority=e;this._start()}// Stop observing our sources once we have no observers.
_detach(){eB(ej(this.source),e=>{if(tP(e)){tB(e,this)}});this._active.clear();ir(this)}/** @internal */eventObserved(e){if(e.type=="change"){if(e.idle){this.advance()}else{this._active.add(e.parent);this._start()}}else if(e.type=="idle"){this._active.delete(e.parent)}else if(e.type=="priority"){this.priority=ej(this.source).reduce((e,t)=>Math.max(e,(nf(t)?t.priority:0)+1),0)}}};function ie(e){return e.idle!==false}function it(e){return!e.size||Array.from(e).every(ie)}function ir(e){if(!e.idle){e.idle=true;eB(rY(e),e=>{e.done=true});tN(e,{type:"idle",parent:e})}}// src/interpolate.ts
var ii=(e,...t)=>new n7(e,t);var ia=(e,...t)=>(deprecateInterpolate2(),new n7(e,t));// src/globals.ts
eM.assign({createStringInterpolator:tZ,to:(e,t)=>new n7(e,t)});var io=e4.advance;// src/index.ts
//# sourceMappingURL=react-spring_core.modern.mjs.map
// EXTERNAL MODULE: external "ReactDOM"
var is=r(5206);// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@react-spring+web@9.7.5_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@react-spring/web/dist/react-spring_web.modern.mjs
// src/index.ts
// src/applyAnimatedValues.ts
var il=/^--/;function iu(e,t){if(t==null||typeof t==="boolean"||t==="")return"";if(typeof t==="number"&&t!==0&&!il.test(e)&&!(ip.hasOwnProperty(e)&&ip[e]))return t+"px";return(""+t).trim()}var ic={};function id(e,t){if(!e.nodeType||!e.setAttribute){return false}const r=e.nodeName==="filter"||e.parentNode&&e.parentNode.nodeName==="filter";const{className:n,style:i,children:a,scrollTop:o,scrollLeft:s,viewBox:l,...u}=t;const c=Object.values(u);const d=Object.keys(u).map(t=>r||e.hasAttribute(t)?t:ic[t]||(ic[t]=t.replace(/([A-Z])/g,// Attributes are written in dash case
    e=>"-"+e.toLowerCase())));if(a!==void 0){e.textContent=a}for(const t in i){if(i.hasOwnProperty(t)){const r=iu(t,i[t]);if(il.test(t)){e.style.setProperty(t,r)}else{e.style[t]=r}}}d.forEach((t,r)=>{e.setAttribute(t,c[r])});if(n!==void 0){e.className=n}if(o!==void 0){e.scrollTop=o}if(s!==void 0){e.scrollLeft=s}if(l!==void 0){e.setAttribute("viewBox",l)}}var ip={animationIterationCount:true,borderImageOutset:true,borderImageSlice:true,borderImageWidth:true,boxFlex:true,boxFlexGroup:true,boxOrdinalGroup:true,columnCount:true,columns:true,flex:true,flexGrow:true,flexPositive:true,flexShrink:true,flexNegative:true,flexOrder:true,gridRow:true,gridRowEnd:true,gridRowSpan:true,gridRowStart:true,gridColumn:true,gridColumnEnd:true,gridColumnSpan:true,gridColumnStart:true,fontWeight:true,lineClamp:true,lineHeight:true,opacity:true,order:true,orphans:true,tabSize:true,widows:true,zIndex:true,zoom:true,// SVG-related properties
fillOpacity:true,floodOpacity:true,stopOpacity:true,strokeDasharray:true,strokeDashoffset:true,strokeMiterlimit:true,strokeOpacity:true,strokeWidth:true};var ih=(e,t)=>e+t.charAt(0).toUpperCase()+t.substring(1);var iv=["Webkit","Ms","Moz","O"];ip=Object.keys(ip).reduce((e,t)=>{iv.forEach(r=>e[ih(r,t)]=e[t]);return e},ip);// src/AnimatedStyle.ts
var ig=/^(matrix|translate|scale|rotate|skew)/;var im=/^(translate)/;var ib=/^(rotate|skew)/;var i_=(e,t)=>eK.num(e)&&e!==0?e+t:e;var iy=(e,t)=>eK.arr(e)?e.every(e=>iy(e,t)):eK.num(e)?e===t:parseFloat(e)===t;var iw=class extends rF{constructor({x:e,y:t,z:r,...n}){const i=[];const a=[];if(e||t||r){i.push([e||0,t||0,r||0]);a.push(e=>[`translate3d(${e.map(e=>i_(e,"px")).join(",")})`,// prettier-ignore
    iy(e,0)])}eU(n,(e,t)=>{if(t==="transform"){i.push([e||""]);a.push(e=>[e,e===""])}else if(ig.test(t)){delete n[t];if(eK.und(e))return;const r=im.test(t)?"px":ib.test(t)?"deg":"";i.push(ej(e));a.push(t==="rotate3d"?([e,t,n,i])=>[`rotate3d(${e},${t},${n},${i_(i,r)})`,iy(i,0)]:e=>[`${t}(${e.map(e=>i_(e,r)).join(",")})`,iy(e,t.startsWith("scale")?1:0)])}});if(i.length){n.transform=new ix(i,a)}super(n)}};var ix=class extends tL{constructor(e,t){super();this.inputs=e;this.transforms=t;this._value=null}get(){return this._value||(this._value=this._get())}_get(){let e="";let t=true;eB(this.inputs,(r,n)=>{const i=tR(r[0]);const[a,o]=this.transforms[n](eK.arr(i)?i:r.map(tR));e+=" "+a;t=t&&o});return t?"none":e}// Start observing our inputs once we have an observer.
observerAdded(e){if(e==1)eB(this.inputs,e=>eB(e,e=>tP(e)&&tq(e,this)))}// Stop observing our inputs once we have no observers.
observerRemoved(e){if(e==0)eB(this.inputs,e=>eB(e,e=>tP(e)&&tB(e,this)))}eventObserved(e){if(e.type=="change"){this._value=null}tN(this,e)}};// src/primitives.ts
var iA=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","big","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","keygen","label","legend","li","link","main","map","mark","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rp","rt","ruby","s","samp","script","section","select","small","source","span","strong","style","sub","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr",// SVG
"circle","clipPath","defs","ellipse","foreignObject","g","image","line","linearGradient","mask","path","pattern","polygon","polyline","radialGradient","rect","stop","svg","text","tspan"];// src/index.ts
eM.assign({batchedUpdates:is.unstable_batchedUpdates,createStringInterpolator:tZ,colors:tt});var iE=rB(iA,{applyAnimatedValues:id,createAnimatedStyle:e=>new iw(e),// eslint-disable-next-line @typescript-eslint/no-unused-vars
getComponentProps:({scrollTop:e,scrollLeft:t,...r})=>r});var ik=iE.animated;//# sourceMappingURL=react-spring_web.modern.mjs.map
// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/styles.ts
var iI=r(7764);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/typography.ts
var iC=r(983);// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_without_properties.js + 1 modules
var iY=r(2473);// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/react-use-measure@2.1.7_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/react-use-measure/dist/index.js
function iS(e,t){let r;return(...n)=>{window.clearTimeout(r),r=window.setTimeout(()=>e(...n),t)}}function iT({debounce:e,scroll:t,polyfill:r,offsetSize:i}={debounce:0,scroll:!1,offsetSize:!1}){const a=r||(typeof window=="undefined"?class{}:window.ResizeObserver);if(!a)throw new Error("This browser does not support ResizeObserver out of the box. See: https://github.com/react-spring/react-use-measure/#resize-observer-polyfills");const[o,s]=(0,n.useState)({left:0,top:0,width:0,height:0,bottom:0,right:0,x:0,y:0}),l=(0,n.useRef)({element:null,scrollContainers:null,resizeObserver:null,lastBounds:o,orientationHandler:null}),u=e?typeof e=="number"?e:e.scroll:null,c=e?typeof e=="number"?e:e.resize:null,d=(0,n.useRef)(!1);(0,n.useEffect)(()=>(d.current=!0,()=>void(d.current=!1)));const[f,p,h]=(0,n.useMemo)(()=>{const e=()=>{if(!l.current.element)return;const{left:e,top:t,width:r,height:n,bottom:a,right:o,x:u,y:c}=l.current.element.getBoundingClientRect(),f={left:e,top:t,width:r,height:n,bottom:a,right:o,x:u,y:c};l.current.element instanceof HTMLElement&&i&&(f.height=l.current.element.offsetHeight,f.width=l.current.element.offsetWidth),Object.freeze(f),d.current&&!iR(l.current.lastBounds,f)&&s(l.current.lastBounds=f)};return[e,c?iS(e,c):e,u?iS(e,u):e]},[s,i,u,c]);function v(){l.current.scrollContainers&&(l.current.scrollContainers.forEach(e=>e.removeEventListener("scroll",h,!0)),l.current.scrollContainers=null),l.current.resizeObserver&&(l.current.resizeObserver.disconnect(),l.current.resizeObserver=null),l.current.orientationHandler&&("orientation"in screen&&"removeEventListener"in screen.orientation?screen.orientation.removeEventListener("change",l.current.orientationHandler):"onorientationchange"in window&&window.removeEventListener("orientationchange",l.current.orientationHandler))}function g(){l.current.element&&(l.current.resizeObserver=new a(h),l.current.resizeObserver.observe(l.current.element),t&&l.current.scrollContainers&&l.current.scrollContainers.forEach(e=>e.addEventListener("scroll",h,{capture:!0,passive:!0})),l.current.orientationHandler=()=>{h()},"orientation"in screen&&"addEventListener"in screen.orientation?screen.orientation.addEventListener("change",l.current.orientationHandler):"onorientationchange"in window&&window.addEventListener("orientationchange",l.current.orientationHandler))}const m=e=>{!e||e===l.current.element||(v(),l.current.element=e,l.current.scrollContainers=iF(e),g())};return iD(h,!!t),iO(p),(0,n.useEffect)(()=>{v(),g()},[t,h,p]),(0,n.useEffect)(()=>v,[]),[m,o,f]}function iO(e){(0,n.useEffect)(()=>{const t=e;return window.addEventListener("resize",t),()=>void window.removeEventListener("resize",t)},[e])}function iD(e,t){(0,n.useEffect)(()=>{if(t){const t=e;return window.addEventListener("scroll",t,{capture:!0,passive:!0}),()=>void window.removeEventListener("scroll",t,!0)}},[e,t])}function iF(e){const t=[];if(!e||e===document.body)return t;const{overflow:r,overflowX:n,overflowY:i}=window.getComputedStyle(e);return[r,n,i].some(e=>e==="auto"||e==="scroll")&&t.push(e),[...t,...iF(e.parentElement)]}const iP=["x","y","top","bottom","left","right","width","height"],iR=(e,t)=>iP.every(r=>e[r]===t[r]);//# sourceMappingURL=index.js.map
;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useAnimation.tsx
var iH=/*#__PURE__*/function(e){e[e["slideDown"]=0]="slideDown";e[e["slideUp"]=1]="slideUp";e[e["slideLeft"]=2]="slideLeft";e[e["slideRight"]=3]="slideRight";e[e["collapseExpand"]=4]="collapseExpand";e[e["zoomIn"]=5]="zoomIn";e[e["zoomOut"]=6]="zoomOut";e[e["fadeIn"]=7]="fadeIn";e[e["sidebar"]=8]="sidebar";return e}({});var iM=100;var iN=e=>{var{data:t,animationType:r=4,slideThreshold:n=20,animationDuration:i=150,minOpacity:a=0,maxOpacity:o=1,easing:s=tO.easeInOutQuad,debounceMeasure:l=false,keys:u}=e;var c=Array.isArray(t)?t.length>0:!!t;var[d,f]=iT({debounce:l?i+iM:0});var p=nG({from:{height:0,opacity:a,y:0},to:{height:c?f.height:0,opacity:c?o:a,y:c?0:n*-1},config:{duration:i,easing:s}});var h=nG({from:{x:0},to:{x:c?0:n*-1},config:{duration:i,easing:s}});var v={x:0,y:0};switch(r){case 0:v.y=n*-1;v.x=0;break;case 1:v.y=n;v.x=0;break;case 2:v.x=n;v.y=0;break;case 3:v.x=n*-1;v.y=0;break}var g=nZ(t,{keys:u||(e=>{return e}),from:(0,ef._)({opacity:a},v,r===5&&{transform:"scale(0.8)"},r===6&&{transform:"scale(1.2)"},r===7&&{opacity:0}),enter:(0,ef._)({opacity:o,x:0,y:0},r===5&&{transform:"scale(1)"},r===6&&{transform:"scale(1)"},r===7&&{opacity:1}),leave:(0,ef._)({opacity:a},v,r===5&&{transform:"scale(0.8)"},r===6&&{transform:"scale(1.2)"},r===7&&{opacity:0}),config:{duration:i,easing:s}});return{animationStyle:r===8?h:p,ref:d,transitions:g}};var iL=e=>{var{children:r,style:n,hideOnOverflow:i=true}=e,a=(0,iY._)(e,["children","style","hideOnOverflow"]);return/*#__PURE__*/(0,t/* .jsx */.Y)(ik.div,(0,ep._)((0,ef._)({},a),{style:(0,ep._)((0,ef._)({},n),{overflow:i?"hidden":"initial"}),children:r}))};// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/types.ts
var iK=r(8638);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/util.ts + 4 modules
var iq=r(2927);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/atoms/Button.tsx
var iB=r(9878);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/atoms/SVGIcon.tsx
var iU=r(4485);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Toast.tsx
function ij(){var e=(0,eh._)(["\n      left: ",";\n      top: calc("," + 60px);\n    "]);ij=function t(){return e};return e}function iV(){var e=(0,eh._)(["\n      right: ",";\n      top: calc("," + 60px);\n    "]);iV=function t(){return e};return e}function iW(){var e=(0,eh._)(["\n      left: 50%;\n      top: calc("," + 60px);\n      transform: translateX(-50%);\n    "]);iW=function t(){return e};return e}function iz(){var e=(0,eh._)(["\n      left: ",";\n      bottom: ",";\n    "]);iz=function t(){return e};return e}function iG(){var e=(0,eh._)(["\n      right: ",";\n      bottom: ",";\n    "]);iG=function t(){return e};return e}function iQ(){var e=(0,eh._)(["\n      left: 50%;\n      bottom: ",";\n      transform: translateX(-50%);\n    "]);iQ=function t(){return e};return e}function i$(){var e=(0,eh._)(["\n      background: ",";\n    "]);i$=function t(){return e};return e}function iX(){var e=(0,eh._)(["\n      background: ",";\n    "]);iX=function t(){return e};return e}function iJ(){var e=(0,eh._)(["\n      background: ",";\n    "]);iJ=function t(){return e};return e}function iZ(){var e=(0,eh._)(["\n      background: ",";\n\n      h5 {\n        color: ",";\n      }\n\n      svg > path {\n        color: ",";\n      }\n    "]);iZ=function t(){return e};return e}var i0={type:"dark",message:"",autoCloseDelay:3e3,position:"bottom-right"};var i1=/*#__PURE__*/i().createContext({showToast:()=>{}});var i2=()=>(0,n.useContext)(i1);var i6=e=>{var{children:r,position:i="bottom-right"}=e;var[a,o]=(0,n.useState)([]);var s=nZ(a,{from:{opacity:0,y:-40},enter:{opacity:1,y:0},leave:{opacity:.5,y:100},config:{duration:300}});var l=(0,n.useCallback)(e=>{var t=(0,ep._)((0,ef._)({},i0,e),{id:(0,iq/* .nanoid */.Ak)()});o(e=>[t,...e]);var r;if(!(0,iK/* .isBoolean */.Lm)(t.autoCloseDelay)&&t.autoCloseDelay){r=setTimeout(()=>{o(e=>e.slice(0,-1))},t.autoCloseDelay)}return()=>{clearTimeout(r)}},[]);return/*#__PURE__*/(0,t/* .jsxs */.FD)(i1.Provider,{value:{showToast:l},children:[r,/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:i5.toastWrapper(i),children:s((e,r)=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)(iL,{"data-cy":"tutor-toast",style:e,css:i5.toastItem(r.type),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h5",{css:i5.message,children:r.message}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:()=>{o(e=>e.filter(e=>e.id!==r.id))},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"timesAlt",width:16,height:16})})]},r.id)})})]})};/* export default */const i4=i6;var i5={toastWrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";max-width:400px;position:fixed;z-index:",iI/* .zIndex.toast */.fE.toast,";",e==="top-left"&&(0,u/* .css */.AH)(ij(),iI/* .spacing["20"] */.YK["20"],iI/* .spacing["20"] */.YK["20"])," ",e==="top-right"&&(0,u/* .css */.AH)(iV(),iI/* .spacing["20"] */.YK["20"],iI/* .spacing["20"] */.YK["20"])," ",e==="top-center"&&(0,u/* .css */.AH)(iW(),iI/* .spacing["20"] */.YK["20"])," ",e==="bottom-left"&&(0,u/* .css */.AH)(iz(),iI/* .spacing["20"] */.YK["20"],iI/* .spacing["20"] */.YK["20"])," ",e==="bottom-right"&&(0,u/* .css */.AH)(iG(),iI/* .spacing["20"] */.YK["20"],iI/* .spacing["20"] */.YK["20"])," ",e==="bottom-center"&&(0,u/* .css */.AH)(iQ(),iI/* .spacing["20"] */.YK["20"])),toastItem:e=>/*#__PURE__*/(0,u/* .css */.AH)("width:100%;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:",iI/* .spacing["16"] */.YK["16"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";padding:",iI/* .spacing["16"] */.YK["16"],";svg > path{color:",iI/* .colorTokens.icon.white */.I6.icon.white,";}",e==="dark"&&(0,u/* .css */.AH)(i$(),iI/* .colorTokens.color.black.main */.I6.color.black.main)," ",e==="danger"&&(0,u/* .css */.AH)(iX(),iI/* .colorTokens.design.error */.I6.design.error)," ",e==="success"&&(0,u/* .css */.AH)(iJ(),iI/* .colorTokens.design.success */.I6.design.success)," ",e==="warning"&&(0,u/* .css */.AH)(iZ(),iI/* .colorTokens.color.warning["70"] */.I6.color.warning["70"],iI/* .colorTokens.text.primary */.I6.text.primary,iI/* .colorTokens.text.primary */.I6.text.primary)),message:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.white */.I6.text.white,";"),timesIcon:/*#__PURE__*/(0,u/* .css */.AH)("path{color:",iI/* .colorTokens.icon.white */.I6.icon.white,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/Modal.tsx
function i3(){var e=(0,eh._)(["\n      background: linear-gradient(\n        73.09deg,\n        rgba(255, 150, 69, 0.4) 18.05%,\n        rgba(255, 100, 113, 0.4) 30.25%,\n        rgba(207, 110, 189, 0.4) 55.42%,\n        rgba(164, 119, 209, 0.4) 71.66%,\n        rgba(62, 100, 222, 0.4) 97.9%\n      );\n      opacity: 1;\n      backdrop-filter: blur(10px);\n    "]);i3=function t(){return e};return e}var i8={backdrop:e=>{var{magicAi:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:fixed;background-color:",iI/* .colorTokens.background.modal */.I6.background.modal,";opacity:0.7;inset:0;z-index:",iI/* .zIndex.negative */.fE.negative,";",t&&(0,u/* .css */.AH)(i3()))},container:/*#__PURE__*/(0,u/* .css */.AH)("z-index:",iI/* .zIndex.highest */.fE.highest,";position:fixed;display:flex;justify-content:center;top:0;left:0;width:100%;height:100%;")};var i9=/*#__PURE__*/i().createContext({showModal:()=>Promise.resolve({action:"CLOSE"}),closeModal:iq/* .noop */.lQ,updateModal:iq/* .noop */.lQ,hasModalOnStack:false});var i7=()=>(0,n.useContext)(i9);var ae=e=>{var{children:r}=e;var[a,o]=(0,n.useState)({modals:[]});var s=(0,n.useCallback)(e=>{var{component:t,props:r,closeOnOutsideClick:n=false,closeOnEscape:i=true,isMagicAi:a=false,depthIndex:s=iI/* .zIndex.modal */.fE.modal,id:l}=e;return new Promise(e=>{o(o=>(0,ep._)((0,ef._)({},o),{modals:[...o.modals,{component:t,props:r,resolve:e,closeOnOutsideClick:n,closeOnEscape:i,id:l||(0,iq/* .nanoid */.Ak)(),depthIndex:s,isMagicAi:a}]}))})},[]);var l=(0,n.useCallback)(function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{action:"CLOSE"};o(t=>{var r=t.modals[t.modals.length-1];r===null||r===void 0?void 0:r.resolve(e);return(0,ep._)((0,ef._)({},t),{modals:t.modals.slice(0,t.modals.length-1)})})},[]);var u=(0,n.useCallback)((e,t)=>{o(r=>{var n=r.modals.findIndex(t=>t.id===e);if(n===-1)return r;var i=[...r.modals];var a=i[n];i[n]=(0,ep._)((0,ef._)({},a),{props:(0,ef._)({},a.props,t)});return(0,ep._)((0,ef._)({},r),{modals:i})})},[]);var{transitions:c}=iN({keys:e=>e.id,data:a.modals,animationType:iH.slideUp,animationDuration:250});var d=(0,n.useMemo)(()=>{return a.modals.length>0},[a.modals]);(0,n.useEffect)(()=>{var e=e=>{var t;var r=document.querySelectorAll(".tutor-portal-popover");var n=!!document.body.classList.contains("modal-open");if(e.key==="Escape"&&((t=a.modals[a.modals.length-1])===null||t===void 0?void 0:t.closeOnEscape)&&!r.length&&!n){l({action:"CLOSE"})}};if(a.modals.length>0){document.addEventListener("keydown",e,true)}return()=>{document.removeEventListener("keydown",e,true)};// eslint-disable-next-line react-hooks/exhaustive-deps
},[a.modals.length,l]);return/*#__PURE__*/(0,t/* .jsxs */.FD)(i9.Provider,{value:{showModal:s,closeModal:l,updateModal:u,hasModalOnStack:d},children:[r,c((e,r,n,a)=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-cy":"tutor-modal",css:[i8.container,{zIndex:r.depthIndex||iI/* .zIndex.modal */.fE.modal+a}],children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iL,{style:(0,ep._)((0,ef._)({},e),{width:"100%"}),hideOnOverflow:false,children:/*#__PURE__*/i().createElement(r.component,(0,ep._)((0,ef._)({},r.props),{closeModal:l}))}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:i8.backdrop({magicAi:r.isMagicAi}),onKeyUp:iq/* .noop */.lQ,tabIndex:-1,// This is not ideal to attach a click event on a non-interactive element like div,
// but in this case we have to do it.
onClick:()=>{if(r.closeOnOutsideClick){l({action:"CLOSE"})}}})]},r.id)})]})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@emotion+sheet@1.4.0/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js
var at=false;/*

Based off glamor's StyleSheet, thanks Sunil ❤️

high performance StyleSheet for css-in-js systems

- uses multiple style tags behind the scenes for millions of rules
- uses `insertRule` for appending in production for *much* faster performance

// usage

import { StyleSheet } from '@emotion/sheet'

let styleSheet = new StyleSheet({ key: '', container: document.head })

styleSheet.insert('#box { border: 1px solid red; }')
- appends a css rule into the stylesheet

styleSheet.flush()
- empties the stylesheet of all its contents

*/function ar(e){if(e.sheet){return e.sheet}// this weirdness brought to you by firefox
/* istanbul ignore next */for(var t=0;t<document.styleSheets.length;t++){if(document.styleSheets[t].ownerNode===e){return document.styleSheets[t]}}// this function should always return with a value
// TS can't understand it though so we make it stop complaining here
return undefined}function an(e){var t=document.createElement("style");t.setAttribute("data-emotion",e.key);if(e.nonce!==undefined){t.setAttribute("nonce",e.nonce)}t.appendChild(document.createTextNode(""));t.setAttribute("data-s","");return t}var ai=/*#__PURE__*/function(){// Using Node instead of HTMLElement since container may be a ShadowRoot
function e(e){var t=this;this._insertTag=function(e){var r;if(t.tags.length===0){if(t.insertionPoint){r=t.insertionPoint.nextSibling}else if(t.prepend){r=t.container.firstChild}else{r=t.before}}else{r=t.tags[t.tags.length-1].nextSibling}t.container.insertBefore(e,r);t.tags.push(e)};this.isSpeedy=e.speedy===undefined?!at:e.speedy;this.tags=[];this.ctr=0;this.nonce=e.nonce;// key is the value of the data-emotion attribute, it's used to identify different sheets
this.key=e.key;this.container=e.container;this.prepend=e.prepend;this.insertionPoint=e.insertionPoint;this.before=null}var t=e.prototype;t.hydrate=function e(e){e.forEach(this._insertTag)};t.insert=function e(e){// the max length is how many rules we have per style tag, it's 65000 in speedy mode
// it's 1 in dev because we insert source maps that map a single rule to a location
// and you can only have one source map per style tag
if(this.ctr%(this.isSpeedy?65e3:1)===0){this._insertTag(an(this))}var t=this.tags[this.tags.length-1];if(this.isSpeedy){var r=ar(t);try{// this is the ultrafast version, works across browsers
// the big drawback is that the css won't be editable in devtools
r.insertRule(e,r.cssRules.length)}catch(e){}}else{t.appendChild(document.createTextNode(e))}this.ctr++};t.flush=function e(){this.tags.forEach(function(e){var t;return(t=e.parentNode)==null?void 0:t.removeChild(e)});this.tags=[];this.ctr=0};return e}();// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Utility.js
/**
 * @param {number}
 * @return {number}
 */var aa=Math.abs;/**
 * @param {number}
 * @return {string}
 */var ao=String.fromCharCode;/**
 * @param {object}
 * @return {object}
 */var as=Object.assign;/**
 * @param {string} value
 * @param {number} length
 * @return {number}
 */function al(e,t){return ap(e,0)^45?(((t<<2^ap(e,0))<<2^ap(e,1))<<2^ap(e,2))<<2^ap(e,3):0}/**
 * @param {string} value
 * @return {string}
 */function au(e){return e.trim()}/**
 * @param {string} value
 * @param {RegExp} pattern
 * @return {string?}
 */function ac(e,t){return(e=t.exec(e))?e[0]:e}/**
 * @param {string} value
 * @param {(string|RegExp)} pattern
 * @param {string} replacement
 * @return {string}
 */function ad(e,t,r){return e.replace(t,r)}/**
 * @param {string} value
 * @param {string} search
 * @return {number}
 */function af(e,t){return e.indexOf(t)}/**
 * @param {string} value
 * @param {number} index
 * @return {number}
 */function ap(e,t){return e.charCodeAt(t)|0}/**
 * @param {string} value
 * @param {number} begin
 * @param {number} end
 * @return {string}
 */function ah(e,t,r){return e.slice(t,r)}/**
 * @param {string} value
 * @return {number}
 */function av(e){return e.length}/**
 * @param {any[]} value
 * @return {number}
 */function ag(e){return e.length}/**
 * @param {any} value
 * @param {any[]} array
 * @return {any}
 */function am(e,t){return t.push(e),e}/**
 * @param {string[]} array
 * @param {function} callback
 * @return {string}
 */function ab(e,t){return e.map(t).join("")};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Tokenizer.js
var a_=1;var ay=1;var aw=0;var ax=0;var aA=0;var aE="";/**
 * @param {string} value
 * @param {object | null} root
 * @param {object | null} parent
 * @param {string} type
 * @param {string[] | string} props
 * @param {object[] | string} children
 * @param {number} length
 */function ak(e,t,r,n,i,a,o){return{value:e,root:t,parent:r,type:n,props:i,children:a,line:a_,column:ay,length:o,return:""}}/**
 * @param {object} root
 * @param {object} props
 * @return {object}
 */function aI(e,t){return as(ak("",null,null,"",null,null,0),e,{length:-e.length},t)}/**
 * @return {number}
 */function aC(){return aA}/**
 * @return {number}
 */function aY(){aA=ax>0?ap(aE,--ax):0;if(ay--,aA===10)ay=1,a_--;return aA}/**
 * @return {number}
 */function aS(){aA=ax<aw?ap(aE,ax++):0;if(ay++,aA===10)ay=1,a_++;return aA}/**
 * @return {number}
 */function aT(){return ap(aE,ax)}/**
 * @return {number}
 */function aO(){return ax}/**
 * @param {number} begin
 * @param {number} end
 * @return {string}
 */function aD(e,t){return ah(aE,e,t)}/**
 * @param {number} type
 * @return {number}
 */function aF(e){switch(e){// \0 \t \n \r \s whitespace token
case 0:case 9:case 10:case 13:case 32:return 5;// ! + , / > @ ~ isolate token
case 33:case 43:case 44:case 47:case 62:case 64:case 126:// ; { } breakpoint token
case 59:case 123:case 125:return 4;// : accompanied token
case 58:return 3;// " ' ( [ opening delimit token
case 34:case 39:case 40:case 91:return 2;// ) ] closing delimit token
case 41:case 93:return 1}return 0}/**
 * @param {string} value
 * @return {any[]}
 */function aP(e){return a_=ay=1,aw=av(aE=e),ax=0,[]}/**
 * @param {any} value
 * @return {any}
 */function aR(e){return aE="",e}/**
 * @param {number} type
 * @return {string}
 */function aH(e){return au(aD(ax-1,aq(e===91?e+2:e===40?e+1:e)))}/**
 * @param {string} value
 * @return {string[]}
 */function aM(e){return aR(aL(aP(e)))}/**
 * @param {number} type
 * @return {string}
 */function aN(e){while(aA=aT())if(aA<33)aS();else break;return aF(e)>2||aF(aA)>3?"":" "}/**
 * @param {string[]} children
 * @return {string[]}
 */function aL(e){while(aS())switch(aF(aA)){case 0:append(aU(ax-1),e);break;case 2:append(aH(aA),e);break;default:append(from(aA),e)}return e}/**
 * @param {number} index
 * @param {number} count
 * @return {string}
 */function aK(e,t){while(--t&&aS())// not 0-9 A-F a-f
if(aA<48||aA>102||aA>57&&aA<65||aA>70&&aA<97)break;return aD(e,aO()+(t<6&&aT()==32&&aS()==32))}/**
 * @param {number} type
 * @return {number}
 */function aq(e){while(aS())switch(aA){// ] ) " '
case e:return ax;// " '
case 34:case 39:if(e!==34&&e!==39)aq(aA);break;// (
case 40:if(e===41)aq(e);break;// \
case 92:aS();break}return ax}/**
 * @param {number} type
 * @param {number} index
 * @return {number}
 */function aB(e,t){while(aS())// //
if(e+aA===47+10)break;else if(e+aA===42+42&&aT()===47)break;return"/*"+aD(t,ax-1)+"*"+ao(e===47?e:aS())}/**
 * @param {number} index
 * @return {string}
 */function aU(e){while(!aF(aT()))aS();return aD(e,ax)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Enum.js
var aj="-ms-";var aV="-moz-";var aW="-webkit-";var az="comm";var aG="rule";var aQ="decl";var a$="@page";var aX="@media";var aJ="@import";var aZ="@charset";var a0="@viewport";var a1="@supports";var a2="@document";var a6="@namespace";var a4="@keyframes";var a5="@font-face";var a3="@counter-style";var a8="@font-feature-values";var a9="@layer";// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Serializer.js
/**
 * @param {object[]} children
 * @param {function} callback
 * @return {string}
 */function a7(e,t){var r="";var n=ag(e);for(var i=0;i<n;i++)r+=t(e[i],i,e,t)||"";return r}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 * @param {function} callback
 * @return {string}
 */function oe(e,t,r,n){switch(e.type){case a9:if(e.children.length)break;case aJ:case aQ:return e.return=e.return||e.value;case az:return"";case a4:return e.return=e.value+"{"+a7(e.children,n)+"}";case aG:e.value=e.props.join(",")}return av(r=a7(e.children,n))?e.return=e.value+"{"+r+"}":""};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Middleware.js
/**
 * @param {function[]} collection
 * @return {function}
 */function ot(e){var t=ag(e);return function(r,n,i,a){var o="";for(var s=0;s<t;s++)o+=e[s](r,n,i,a)||"";return o}}/**
 * @param {function} callback
 * @return {function}
 */function or(e){return function(t){if(!t.root){if(t=t.return)e(t)}}}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 * @param {function} callback
 */function on(e,t,r,n){if(e.length>-1){if(!e.return)switch(e.type){case DECLARATION:e.return=prefix(e.value,e.length,r);return;case KEYFRAMES:return serialize([copy(e,{value:replace(e.value,"@","@"+WEBKIT)})],n);case RULESET:if(e.length)return combine(e.props,function(t){switch(match(t,/(::plac\w+|:read-\w+)/)){// :read-(only|write)
case":read-only":case":read-write":return serialize([copy(e,{props:[replace(t,/:(read-\w+)/,":"+MOZ+"$1")]})],n);// :placeholder
case"::placeholder":return serialize([copy(e,{props:[replace(t,/:(plac\w+)/,":"+WEBKIT+"input-$1")]}),copy(e,{props:[replace(t,/:(plac\w+)/,":"+MOZ+"$1")]}),copy(e,{props:[replace(t,/:(plac\w+)/,MS+"input-$1")]})],n)}return""})}}}/**
 * @param {object} element
 * @param {number} index
 * @param {object[]} children
 */function oi(e){switch(e.type){case RULESET:e.props=e.props.map(function(t){return combine(tokenize(t),function(t,r,n){switch(charat(t,0)){// \f
case 12:return substr(t,1,strlen(t));// \0 ( + > ~
case 0:case 40:case 43:case 62:case 126:return t;// :
case 58:if(n[++r]==="global")n[r]="",n[++r]="\f"+substr(n[r],r=1,-1);// \s
case 32:return r===1?"":t;default:switch(r){case 0:e=t;return sizeof(n)>1?"":t;case r=sizeof(n)-1:case 2:return r===2?t+e+e:t+e;default:return t}}})})}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis@4.2.0/node_modules/stylis/src/Parser.js
/**
 * @param {string} value
 * @return {object[]}
 */function oa(e){return aR(oo("",null,null,null,[""],e=aP(e),0,[0],e))}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {string[]} rule
 * @param {string[]} rules
 * @param {string[]} rulesets
 * @param {number[]} pseudo
 * @param {number[]} points
 * @param {string[]} declarations
 * @return {object}
 */function oo(e,t,r,n,i,a,o,s,l){var u=0;var c=0;var d=o;var f=0;var p=0;var h=0;var v=1;var g=1;var m=1;var b=0;var _="";var y=i;var w=a;var x=n;var A=_;while(g)switch(h=b,b=aS()){// (
case 40:if(h!=108&&ap(A,d-1)==58){if(af(A+=ad(aH(b),"&","&\f"),"&\f")!=-1)m=-1;break}// " ' [
case 34:case 39:case 91:A+=aH(b);break;// \t \n \r \s
case 9:case 10:case 13:case 32:A+=aN(h);break;// \
case 92:A+=aK(aO()-1,7);continue;// /
case 47:switch(aT()){case 42:case 47:am(ol(aB(aS(),aO()),t,r),l);break;default:A+="/"}break;// {
case 123*v:s[u++]=av(A)*m;// } ; \0
case 125*v:case 59:case 0:switch(b){// \0 }
case 0:case 125:g=0;// ;
case 59+c:if(m==-1)A=ad(A,/\f/g,"");if(p>0&&av(A)-d)am(p>32?ou(A+";",n,r,d-1):ou(ad(A," ","")+";",n,r,d-2),l);break;// @ ;
case 59:A+=";";// { rule/at-rule
default:am(x=os(A,t,r,u,c,i,s,_,y=[],w=[],d),a);if(b===123)if(c===0)oo(A,t,x,x,y,a,d,s,w);else switch(f===99&&ap(A,3)===110?100:f){// d l m s
case 100:case 108:case 109:case 115:oo(e,x,x,n&&am(os(e,x,x,0,0,i,s,_,i,y=[],d),w),i,w,d,s,n?y:w);break;default:oo(A,x,x,x,[""],w,0,s,w)}}u=c=p=0,v=m=1,_=A="",d=o;break;// :
case 58:d=1+av(A),p=h;default:if(v<1){if(b==123)--v;else if(b==125&&v++==0&&aY()==125)continue}switch(A+=ao(b),b*v){// &
case 38:m=c>0?1:(A+="\f",-1);break;// ,
case 44:s[u++]=(av(A)-1)*m,m=1;break;// @
case 64:// -
if(aT()===45)A+=aH(aS());f=aT(),c=d=av(_=A+=aU(aO())),b++;break;// -
case 45:if(h===45&&av(A)==2)v=0}}return a}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {number} index
 * @param {number} offset
 * @param {string[]} rules
 * @param {number[]} points
 * @param {string} type
 * @param {string[]} props
 * @param {string[]} children
 * @param {number} length
 * @return {object}
 */function os(e,t,r,n,i,a,o,s,l,u,c){var d=i-1;var f=i===0?a:[""];var p=ag(f);for(var h=0,v=0,g=0;h<n;++h)for(var m=0,b=ah(e,d+1,d=aa(v=o[h])),_=e;m<p;++m)if(_=au(v>0?f[m]+" "+b:ad(b,/&\f/g,f[m])))l[g++]=_;return ak(e,t,r,i===0?aG:s,l,u,c)}/**
 * @param {number} value
 * @param {object} root
 * @param {object?} parent
 * @return {object}
 */function ol(e,t,r){return ak(e,t,r,az,ao(aC()),ah(e,2,-2),0)}/**
 * @param {string} value
 * @param {object} root
 * @param {object?} parent
 * @param {number} length
 * @return {object}
 */function ou(e,t,r,n){return ak(e,t,r,aQ,ah(e,0,n),ah(e,n+1,-1),n)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@emotion+cache@11.14.0/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js
var oc=function e(e,t,r){var n=0;var i=0;while(true){n=i;i=aT();// &\f
if(n===38&&i===12){t[r]=1}if(aF(i)){break}aS()}return aD(e,ax)};var od=function e(e,t){// pretend we've started with a comma
var r=-1;var n=44;do{switch(aF(n)){case 0:// &\f
if(n===38&&aT()===12){// this is not 100% correct, we don't account for literal sequences here - like for example quoted strings
// stylis inserts \f after & to know when & where it should replace this sequence with the context selector
// and when it should just concatenate the outer and inner selectors
// it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here
t[r]=1}e[r]+=oc(ax-1,t,r);break;case 2:e[r]+=aH(n);break;case 4:// comma
if(n===44){// colon
e[++r]=aT()===58?"&\f":"";t[r]=e[r].length;break}// fallthrough
default:e[r]+=ao(n)}}while(n=aS())return e};var of=function e(e,t){return aR(od(aP(e),t))};// WeakSet would be more appropriate, but only WeakMap is supported in IE11
var op=/* #__PURE__ */new WeakMap;var oh=function e(e){if(e.type!=="rule"||!e.parent||// positive .length indicates that this rule contains pseudo
// negative .length indicates that this rule has been already prefixed
e.length<1){return}var t=e.value;var r=e.parent;var n=e.column===r.column&&e.line===r.line;while(r.type!=="rule"){r=r.parent;if(!r)return}// short-circuit for the simplest case
if(e.props.length===1&&t.charCodeAt(0)!==58&&!op.get(r)){return}// if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)
// then the props has already been manipulated beforehand as they that array is shared between it and its "rule parent"
if(n){return}op.set(e,true);var i=[];var a=of(t,i);var o=r.props;for(var s=0,l=0;s<a.length;s++){for(var u=0;u<o.length;u++,l++){e.props[l]=i[s]?a[s].replace(/&\f/g,o[u]):o[u]+" "+a[s]}}};var ov=function e(e){if(e.type==="decl"){var t=e.value;if(t.charCodeAt(0)===108&&// charcode for b
t.charCodeAt(2)===98){// this ignores label
e["return"]="";e.value=""}}};/* eslint-disable no-fallthrough */function og(e,t){switch(al(e,t)){// color-adjust
case 5103:return aW+"print-"+e+e;// animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)
case 5737:case 4201:case 3177:case 3433:case 1641:case 4457:case 2921:case 5572:case 6356:case 5844:case 3191:case 6645:case 3005:case 6391:case 5879:case 5623:case 6135:case 4599:case 4855:case 4215:case 6389:case 5109:case 5365:case 5621:case 3829:return aW+e+e;// appearance, user-select, transform, hyphens, text-size-adjust
case 5349:case 4246:case 4810:case 6968:case 2756:return aW+e+aV+e+aj+e+e;// flex, flex-direction
case 6828:case 4268:return aW+e+aj+e+e;// order
case 6165:return aW+e+aj+"flex-"+e+e;// align-items
case 5187:return aW+e+ad(e,/(\w+).+(:[^]+)/,aW+"box-$1$2"+aj+"flex-$1$2")+e;// align-self
case 5443:return aW+e+aj+"flex-item-"+ad(e,/flex-|-self/,"")+e;// align-content
case 4675:return aW+e+aj+"flex-line-pack"+ad(e,/align-content|flex-|-self/,"")+e;// flex-shrink
case 5548:return aW+e+aj+ad(e,"shrink","negative")+e;// flex-basis
case 5292:return aW+e+aj+ad(e,"basis","preferred-size")+e;// flex-grow
case 6060:return aW+"box-"+ad(e,"-grow","")+aW+e+aj+ad(e,"grow","positive")+e;// transition
case 4554:return aW+ad(e,/([^-])(transform)/g,"$1"+aW+"$2")+e;// cursor
case 6187:return ad(ad(ad(e,/(zoom-|grab)/,aW+"$1"),/(image-set)/,aW+"$1"),e,"")+e;// background, background-image
case 5495:case 3959:return ad(e,/(image-set\([^]*)/,aW+"$1"+"$`$1");// justify-content
case 4968:return ad(ad(e,/(.+:)(flex-)?(.*)/,aW+"box-pack:$3"+aj+"flex-pack:$3"),/s.+-b[^;]+/,"justify")+aW+e+e;// (margin|padding)-inline-(start|end)
case 4095:case 3583:case 4068:case 2532:return ad(e,/(.+)-inline(.+)/,aW+"$1$2")+e;// (min|max)?(width|height|inline-size|block-size)
case 8116:case 7059:case 5753:case 5535:case 5445:case 5701:case 4933:case 4677:case 5533:case 5789:case 5021:case 4765:// stretch, max-content, min-content, fill-available
if(av(e)-1-t>6)switch(ap(e,t+1)){// (m)ax-content, (m)in-content
case 109:// -
if(ap(e,t+4)!==45)break;// (f)ill-available, (f)it-content
case 102:return ad(e,/(.+:)(.+)-([^]+)/,"$1"+aW+"$2-$3"+"$1"+aV+(ap(e,t+3)==108?"$3":"$2-$3"))+e;// (s)tretch
case 115:return~af(e,"stretch")?og(ad(e,"stretch","fill-available"),t)+e:e}break;// position: sticky
case 4949:// (s)ticky?
if(ap(e,t+1)!==115)break;// display: (flex|inline-flex)
case 6444:switch(ap(e,av(e)-3-(~af(e,"!important")&&10))){// stic(k)y
case 107:return ad(e,":",":"+aW)+e;// (inline-)?fl(e)x
case 101:return ad(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+aW+(ap(e,14)===45?"inline-":"")+"box$3"+"$1"+aW+"$2$3"+"$1"+aj+"$2box$3")+e}break;// writing-mode
case 5936:switch(ap(e,t+11)){// vertical-l(r)
case 114:return aW+e+aj+ad(e,/[svh]\w+-[tblr]{2}/,"tb")+e;// vertical-r(l)
case 108:return aW+e+aj+ad(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;// horizontal(-)tb
case 45:return aW+e+aj+ad(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return aW+e+aj+e+e}return e}var om=function e(e,t,r,n){if(e.length>-1){if(!e["return"])switch(e.type){case aQ:e["return"]=og(e.value,e.length);break;case a4:return a7([aI(e,{value:ad(e.value,"@","@"+aW)})],n);case aG:if(e.length)return ab(e.props,function(t){switch(ac(t,/(::plac\w+|:read-\w+)/)){// :read-(only|write)
case":read-only":case":read-write":return a7([aI(e,{props:[ad(t,/:(read-\w+)/,":"+aV+"$1")]})],n);// :placeholder
case"::placeholder":return a7([aI(e,{props:[ad(t,/:(plac\w+)/,":"+aW+"input-$1")]}),aI(e,{props:[ad(t,/:(plac\w+)/,":"+aV+"$1")]}),aI(e,{props:[ad(t,/:(plac\w+)/,aj+"input-$1")]})],n)}return""})}}};var ob=[om];var o_=function e(e){var t=e.key;if(t==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");// get SSRed styles out of the way of React's hydration
// document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)
// note this very very intentionally targets all style elements regardless of the key to ensure
// that creating a cache works inside of render of a React component
Array.prototype.forEach.call(r,function(e){// we want to only move elements which have a space in the data-emotion attribute value
// because that indicates that it is an Emotion 11 server-side rendered style elements
// while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector
// Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)
// so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles
// will not result in the Emotion 10 styles being destroyed
var t=e.getAttribute("data-emotion");if(t.indexOf(" ")===-1){return}document.head.appendChild(e);e.setAttribute("data-s","")})}var n=e.stylisPlugins||ob;var i={};var a;var o=[];{a=e.container||document.head;Array.prototype.forEach.call(// means that the style elements we're looking at are only Emotion 11 server-rendered style elements
document.querySelectorAll('style[data-emotion^="'+t+' "]'),function(e){var t=e.getAttribute("data-emotion").split(" ");for(var r=1;r<t.length;r++){i[t[r]]=true}o.push(e)})}var s;var l=[oh,ov];{var u;var c=[oe,or(function(e){u.insert(e)})];var d=ot(l.concat(n,c));var f=function e(e){return a7(oa(e),d)};s=function e(e,t,r,n){u=r;f(e?e+"{"+t.styles+"}":t.styles);if(n){p.inserted[t.name]=true}}}var p={key:t,sheet:new ai({key:t,container:a,nonce:e.nonce,speedy:e.speedy,prepend:e.prepend,insertionPoint:e.insertionPoint}),nonce:e.nonce,inserted:i,registered:{},insert:s};p.sheet.hydrate(o);return p};// EXTERNAL MODULE: ./node_modules/.pnpm/@emotion+react@11.14.0_@types+react@18.3.1_react@18.3.1/node_modules/@emotion/react/dist/emotion-element-d59e098f.esm.js
var oy=r(2517);// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/cssjanus@2.3.0/node_modules/cssjanus/src/cssjanus.js
var ow=r(234);var ox=/*#__PURE__*/r.n(ow);// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/stylis-plugin-rtl@2.1.1_stylis@4.2.0/node_modules/stylis-plugin-rtl/dist/stylis-rtl.js
function oA(e,t,r){switch(e.type){case aJ:case aQ:case az:return e.return=e.return||e.value;case aG:{e.value=Array.isArray(e.props)?e.props.join(","):e.props;if(Array.isArray(e.children)){e.children.forEach(function(e){if(e.type===az)e.children=e.value})}}}var n=a7(Array.prototype.concat(e.children),oA);return av(n)?e.return=e.value+"{"+n+"}":""}function oE(e,t,r,n){if(e.type===a4||e.type===a1||e.type===aG&&(!e.parent||e.parent.type===aX||e.parent.type===aG)){var i=ox().transform(oA(e,t,r));e.children=i?oa(i)[0].children:[];e.return=""}}// stable identifier that will not be dropped by minification unless the whole module
// is unused
Object.defineProperty(oE,"name",{value:"stylisRTLPlugin"});/* export default */const ok=oE;//# sourceMappingURL=stylis-rtl.js.map
// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/constants.ts
var oI=r(7461);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/RTLProvider.tsx
var oC=o_({stylisPlugins:[ok],key:"rtl"});var oY=e=>{var{children:r}=e;if(oI/* .isRTL */.V8){return/*#__PURE__*/(0,t/* .jsx */.Y)(oy.C,{value:oC,children:r})}return/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:r})};/* export default */const oS=oY;// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/contexts/SVGIconConfigContext.tsx
var oT=r(9612);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/style-utils.ts
var oO=r(4958);// CONCATENATED MODULE: ./node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_define_property.js
function oD(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else e[t]=r;return e};// CONCATENATED MODULE: ./node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_spread.js
function oF(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};var n=Object.keys(r);if(typeof Object.getOwnPropertySymbols==="function"){n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))}n.forEach(function(t){oD(e,t,r[t])})}return e};// CONCATENATED MODULE: ./node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_object_spread_props.js
function oP(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);if(t){n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})}r.push.apply(r,n)}return r}function oR(e,t){t=t!=null?t:{};if(Object.getOwnPropertyDescriptors)Object.defineProperties(e,Object.getOwnPropertyDescriptors(t));else{oP(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e};// CONCATENATED MODULE: ./node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_tagged_template_literal.js
function oH(e,t){if(!t)t=e.slice(0);return Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}// EXTERNAL MODULE: external "wp.i18n"
var oM=r(2470);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/LoadingSpinner.tsx
var oN=/*#__PURE__*/(0,u/* .keyframes */.i7)("0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}");var oL=/*#__PURE__*/(0,u/* .keyframes */.i7)("0%{stroke-dashoffset:180;transform:rotate(0deg);}50%{stroke-dashoffset:",180/4,";transform:rotate(135deg);}100%{stroke-dashoffset:180;transform:rotate(360deg);}");var oK=/*#__PURE__*/(0,u/* .keyframes */.i7)("	0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}");var oq={fullscreen:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:center;height:100vh;width:100vw;"),loadingOverlay:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:0;bottom:0;right:0;left:0;display:flex;align-items:center;justify-content:center;"),loadingSection:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:100px;display:flex;justify-content:center;align-items:center;"),svg:/*#__PURE__*/(0,u/* .css */.AH)("animation:",oN," 1.4s linear infinite;"),spinnerPath:/*#__PURE__*/(0,u/* .css */.AH)("stroke-dasharray:180;stroke-dashoffset:0;transform-origin:center;animation:",oL," 1.4s linear infinite;"),spinGradient:/*#__PURE__*/(0,u/* .css */.AH)("transition:transform;transform-origin:center;animation:",oK," 1s infinite linear;")};var oB=e=>{var{size:r=30,color:n=iI/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"]}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)("svg",{width:r,height:r,css:oq.svg,viewBox:"0 0 86 86",xmlns:"http://www.w3.org/2000/svg",children:/*#__PURE__*/(0,t/* .jsx */.Y)("circle",{css:oq.spinnerPath,fill:"none",stroke:n,strokeWidth:"6",strokeLinecap:"round",cx:"43",cy:"43",r:"30"})})};var oU=()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oq.loadingOverlay,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oB,{})})};var oj=()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oq.loadingSection,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oB,{})})};var oV=()=>{return /*#__PURE__*/_jsx("div",{css:oq.fullscreen,children:/*#__PURE__*/_jsx(oB,{})})};var oW=e=>{var{size:t=24}=e;return /*#__PURE__*/_jsxs("svg",{width:t,height:t,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[/*#__PURE__*/_jsx("path",{d:"M12 3C10.22 3 8.47991 3.52784 6.99987 4.51677C5.51983 5.50571 4.36628 6.91131 3.68509 8.55585C3.0039 10.2004 2.82567 12.01 3.17294 13.7558C3.5202 15.5016 4.37737 17.1053 5.63604 18.364C6.89472 19.6226 8.49836 20.4798 10.2442 20.8271C11.99 21.1743 13.7996 20.9961 15.4442 20.3149C17.0887 19.6337 18.4943 18.4802 19.4832 17.0001C20.4722 15.5201 21 13.78 21 12",stroke:"url(#paint0_linear_2402_3559)",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",css:oq.spinGradient}),/*#__PURE__*/_jsx("defs",{children:/*#__PURE__*/_jsxs("linearGradient",{id:"paint0_linear_2402_3559",x1:"4.50105",y1:"12",x2:"21.6571",y2:"6.7847",gradientUnits:"userSpaceOnUse",children:[/*#__PURE__*/_jsx("stop",{stopColor:"#FF9645"}),/*#__PURE__*/_jsx("stop",{offset:"0.152804",stopColor:"#FF6471"}),/*#__PURE__*/_jsx("stop",{offset:"0.467993",stopColor:"#CF6EBD"}),/*#__PURE__*/_jsx("stop",{offset:"0.671362",stopColor:"#A477D1"}),/*#__PURE__*/_jsx("stop",{offset:"1",stopColor:"#3E64DE"})]})})]})};/* export default */const oz=oB;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Skeleton.tsx
function oG(){var e=(0,eh._)(["\n      border-radius: ",";\n    "]);oG=function t(){return e};return e}function oQ(){var e=(0,eh._)(["\n          background: linear-gradient(89.17deg, #fef4ff 0.2%, #f9d3ff 50.09%, #fef4ff 96.31%);\n        "]);oQ=function t(){return e};return e}function o$(){var e=(0,eh._)(["\n      :after {\n        content: '';\n        background: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.05), transparent);\n        position: absolute;\n        transform: translateX(-100%);\n        inset: 0;\n        ","\n\n        animation: ","s linear 0.5s infinite normal none running ",";\n      }\n    "]);o$=function t(){return e};return e}var oX=/*#__PURE__*/(0,n.forwardRef)((e,r)=>{var{width:n="100%",height:i=16,animation:a=false,isMagicAi:o=false,isRound:s=false,animationDuration:l=1.6,className:u}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)("span",{ref:r,css:o0.skeleton(n,i,a,o,s,l),className:u})});/* export default */const oJ=oX;var oZ={wave:/*#__PURE__*/(0,u/* .keyframes */.i7)("0%{transform:translateX(-100%);}50%{transform:translateX(0%);}100%{transform:translateX(100%);}")};var o0={skeleton:(e,t,r,n,i,a)=>/*#__PURE__*/(0,u/* .css */.AH)("display:block;width:",(0,iK/* .isNumber */.Et)(e)?"".concat(e,"px"):e,";height:",(0,iK/* .isNumber */.Et)(t)?"".concat(t,"px"):t,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";background-color:",!n?"rgba(0, 0, 0, 0.11)":iI/* .colorTokens.background.magicAi.skeleton */.I6.background.magicAi.skeleton,";position:relative;-webkit-mask-image:-webkit-radial-gradient(center,white,black);overflow:hidden;",i&&(0,u/* .css */.AH)(oG(),iI/* .borderRadius.circle */.Vq.circle)," ",r&&(0,u/* .css */.AH)(o$(),n&&(0,u/* .css */.AH)(oQ()),a,oZ.wave))};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/TextInput.tsx
function o1(){var e=(0,eh._)(["\n      flex-direction: row;\n      align-items: center;\n      gap: ",";\n      justify-content: space-between;\n      height: 32px;\n    "]);o1=function t(){return e};return e}function o2(){var e=(0,eh._)(["\n      color: ",";\n    "]);o2=function t(){return e};return e}function o6(){var e=(0,eh._)(["\n        padding-left: ",";\n      "]);o6=function t(){return e};return e}function o4(){var e=(0,eh._)(["\n        height: 32px;\n        min-height: 32px;\n      "]);o4=function t(){return e};return e}var o5=e=>{var{label:r,isInlineLabel:i,type:a="text",value:o,disabled:s,readOnly:l,placeholder:u,onChange:c,onBlur:d,onKeyDown:f,onFocus:p,isClearable:h,handleMediaIconClick:v,variant:g="regular",focusOnMount:m=false,inputCss:b,autoFocus:_=false,size:y="regular"}=e;var w=(0,n.useId)();var x=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!m||!x.current){return}x.current.focus()},[m]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:o8.inputContainer(i),children:[!!r&&/*#__PURE__*/(0,t/* .jsx */.Y)("label",{htmlFor:w,css:o8.label(i),children:r}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:o8.inputWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",{ref:x,id:w,type:"text",css:[o8.input(g,y),b],value:o||"",autoFocus:_,onChange:e=>{var{value:t}=e.target;var r=a==="number"?(0,iq/* .parseNumberOnly */.TW)(t):t;c(r)},onKeyDown:e=>{f===null||f===void 0?void 0:f(e.key,e)},onBlur:e=>{var{value:t}=e.target;var r=a==="number"?(0,iq/* .parseNumberOnly */.TW)(t):t;d===null||d===void 0?void 0:d(r)},onFocus:e=>{p===null||p===void 0?void 0:p(e)},placeholder:u,readOnly:l,disabled:s,autoComplete:"off","data-input":true}),g==="search"&&/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:o8.searchIcon,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"search",width:24,height:24})}),h&&!!o&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:o8.rightIconButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>c(""),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",width:24,height:24})})}),!!v&&g!=="search"&&!o&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:o8.rightIconButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:v,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"upload"})})})]})]})};/* export default */const o3=o5;var o8={inputContainer:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:false;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["4"] */.YK["4"],";width:100%;",e&&(0,u/* .css */.AH)(o1(),iI/* .spacing["12"] */.YK["12"]))},label:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:false;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption()," ",e&&(0,u/* .css */.AH)(o2(),iI/* .colorTokens.text.primary */.I6.text.primary))},inputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;"),input:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)("&[data-input]{",iC/* .typography.body */.I.body(),"      width:100%;height:40px;min-height:auto;border-radius:",iI/* .borderRadius["5"] */.Vq["5"],";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";padding:0 ",iI/* .spacing["32"] */.YK["32"]," 0 ",iI/* .spacing["12"] */.YK["12"],";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";appearance:textfield;:focus{",oO/* .styleUtils.inputFocus */.x.inputFocus,";}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";}",e==="search"&&(0,u/* .css */.AH)(o6(),iI/* .spacing["36"] */.YK["36"])," ",t==="small"&&(0,u/* .css */.AH)(o4()),"}"),rightIconButton:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;right:",iI/* .spacing["4"] */.YK["4"],";top:",iI/* .spacing["4"] */.YK["4"],";button{padding:",iI/* .spacing["4"] */.YK["4"],";border-radius:",iI/* .borderRadius["2"] */.Vq["2"],";}"),searchIcon:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:50%;left:",iI/* .spacing["8"] */.YK["8"],";transform:translateY(-50%);color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";line-height:0;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/controls/For.tsx
var o9=e=>{var{each:t,children:r,fallback:n=null}=e;if(t.length===0){return n}return t.map((e,t)=>{return r(e,t)})};/* export default */const o7=o9;// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/controls/Show.tsx
var se=r(6025);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useDebounce.ts
var st=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:300;var[r,i]=(0,n.useState)(e);(0,n.useEffect)(()=>{var r=setTimeout(()=>{i(e)},t);return()=>{clearTimeout(r)}},[e,t]);return r};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useIntersectionObserver.ts
var sr=function(){var{threshold:e=0,root:t=null,rootMargin:r="0%",freezeOnceVisible:i=false,dependencies:a=[]}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var o=(0,n.useRef)(null);var[s,l]=(0,n.useState)();var u=(s===null||s===void 0?void 0:s.isIntersecting)&&i;var c=e=>{var[t]=e;l(t)};(0,n.useEffect)(()=>{var n=o.current;var i=(0,iK/* .isDefined */.O9)(window.IntersectionObserver);if(!i||u||!n){if(!n){l(undefined)}return}var a={threshold:e,root:t,rootMargin:r};var s=new IntersectionObserver(c,a);s.observe(n);return()=>s.disconnect();// eslint-disable-next-line react-hooks/exhaustive-deps
},[o.current,e,t,r,u,...a]);return{intersectionEntry:s,intersectionElementRef:o}};/* export default */const sn=sr;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/molecules/EmptyState.tsx
function si(){var e=(0,eh._)(["\n      border: 1px solid ",";\n      border-radius: ",";\n      background-color: ",";\n    "]);si=function t(){return e};return e}function sa(){var e=(0,eh._)(["\n      gap: ",";\n      padding: ",";\n      padding-bottom: ",";\n    "]);sa=function t(){return e};return e}function so(){var e=(0,eh._)(["\n        max-width: 282px;\n      "]);so=function t(){return e};return e}function ss(){var e=(0,eh._)(["\n      gap: ",";\n    "]);ss=function t(){return e};return e}function sl(){var e=(0,eh._)(["\n      ",";\n      color: ",";\n    "]);sl=function t(){return e};return e}function su(){var e=(0,eh._)(["\n      ",";\n      color: ",";\n    "]);su=function t(){return e};return e}function sc(){var e=(0,eh._)(["\n      gap: ",";\n      margin-top: ",";\n    "]);sc=function t(){return e};return e}var sd=e=>{var{emptyStateImage:r,emptyStateImage2x:n,imageAltText:i,title:a,size:o="medium",description:s,actions:l,removeBorder:u=true,wrapperCss:c}=e;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[sp.bannerWrapper(o,u,!!(0,iK/* .isDefined */.O9)(r)),c],children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r,children:/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:r,alt:i,srcSet:n?"".concat(n," 2x"):""})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:sp.messageWrapper(o),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h5",{css:sp.title(o),children:a}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:s,children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:sp.description(o),children:s})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-actions":true,css:sp.actionWrapper(o),children:l})})]})]})};/* export default */const sf=sd;var sp={bannerWrapper:(e,t,r)=>/*#__PURE__*/(0,u/* .css */.AH)("display:grid;place-items:center;justify-content:center;gap:",iI/* .spacing["36"] */.YK["36"],";padding:",r?"".concat(iI/* .spacing["16"] */.YK["16"]," ").concat(iI/* .spacing["20"] */.YK["20"]):"".concat(iI/* .spacing["20"] */.YK["20"]),";",!t&&(0,u/* .css */.AH)(si(),iI/* .colorTokens.stroke.divider */.I6.stroke.divider,iI/* .borderRadius.card */.Vq.card,iI/* .colorTokens.background.white */.I6.background.white)," ",e==="small"&&(0,u/* .css */.AH)(sa(),iI/* .spacing["12"] */.YK["12"],r?iI/* .spacing["12"] */.YK["12"]:iI/* .spacing["16"] */.YK["16"],r?iI/* .spacing["24"] */.YK["24"]:undefined),"    & img{max-width:640px;width:100%;height:auto;border-radius:",e==="small"?iI/* .borderRadius["6"] */.Vq["6"]:iI/* .borderRadius["10"] */.Vq["10"],";overflow:hidden;object-position:center;object-fit:cover;",e==="small"&&(0,u/* .css */.AH)(so()),"}"),messageWrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;max-width:566px;width:100%;gap:",iI/* .spacing["12"] */.YK["12"],";text-align:center;",e==="small"&&(0,u/* .css */.AH)(ss(),iI/* .spacing["8"] */.YK["8"])),title:e=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading5 */.I.heading5(),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";",e==="small"&&(0,u/* .css */.AH)(sl(),iC/* .typography.caption */.I.caption("medium"),iI/* .colorTokens.text.primary */.I6.text.primary)),description:e=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";",e==="small"&&(0,u/* .css */.AH)(su(),iC/* .typography.tiny */.I.tiny(),iI/* .colorTokens.text.hints */.I6.text.hints)),actionWrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("margin-top:",iI/* .spacing["20"] */.YK["20"],";display:flex;justify-content:center;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";",e==="small"&&(0,u/* .css */.AH)(sc(),iI/* .spacing["8"] */.YK["8"],iI/* .spacing["8"] */.YK["8"]))};// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/queryObserver.js
// src/queryObserver.ts
var sh=class extends H{constructor(e,t){super();this.options=t;this.#E=e;this.#k=null;this.#I=q();if(!this.options.experimental_prefetchInRender){this.#I.reject(new Error("experimental_prefetchInRender feature flag is not enabled"))}this.bindMethods();this.setOptions(t)}#E;#C=void 0;#Y=void 0;#S=void 0;#T;#O;#I;#k;#D;#F;// This property keeps track of the last query with defined data.
// It will be used to pass the previous data and query to the placeholder function between renders.
#P;#R;#H;#M;#N=/* @__PURE__ */new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){if(this.listeners.size===1){this.#C.addObserver(this);if(sg(this.#C,this.options)){this.#L()}else{this.updateResult()}this.#K()}}onUnsubscribe(){if(!this.hasListeners()){this.destroy()}}shouldFetchOnReconnect(){return sm(this.#C,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return sm(this.#C,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=/* @__PURE__ */new Set;this.#q();this.#B();this.#C.removeObserver(this)}setOptions(e,t){const r=this.options;const n=this.#C;this.options=this.#E.defaultQueryOptions(e);if(this.options.enabled!==void 0&&typeof this.options.enabled!=="boolean"&&typeof this.options.enabled!=="function"&&typeof g(this.options.enabled,this.#C)!=="boolean"){throw new Error("Expected enabled to be a boolean or a callback that returns a boolean")}this.#U();this.#C.setOptions(this.options);if(r._defaulted&&!A(this.options,r)){this.#E.getQueryCache().notify({type:"observerOptionsUpdated",query:this.#C,observer:this})}const i=this.hasListeners();if(i&&sb(this.#C,n,this.options,r)){this.#L()}this.updateResult(t);if(i&&(this.#C!==n||g(this.options.enabled,this.#C)!==g(r.enabled,this.#C)||v(this.options.staleTime,this.#C)!==v(r.staleTime,this.#C))){this.#j()}const a=this.#V();if(i&&(this.#C!==n||g(this.options.enabled,this.#C)!==g(r.enabled,this.#C)||a!==this.#M)){this.#W(a)}}getOptimisticResult(e){const t=this.#E.getQueryCache().build(this.#E,e);const r=this.createResult(t,e);if(sy(this,r)){this.#S=r;this.#O=this.options;this.#T=this.#C.state}return r}getCurrentResult(){return this.#S}trackResult(e,t){const r={};Object.keys(e).forEach(n=>{Object.defineProperty(r,n,{configurable:false,enumerable:true,get:()=>{this.trackProp(n);t?.(n);return e[n]}})});return r}trackProp(e){this.#N.add(e)}getCurrentQuery(){return this.#C}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){const t=this.#E.defaultQueryOptions(e);const r=this.#E.getQueryCache().build(this.#E,t);return r.fetch().then(()=>this.createResult(r,t))}fetch(e){return this.#L({...e,cancelRefetch:e.cancelRefetch??true}).then(()=>{this.updateResult();return this.#S})}#L(e){this.#U();let t=this.#C.fetch(this.options,e);if(!e?.throwOnError){t=t.catch(d)}return t}#j(){this.#q();const e=v(this.options.staleTime,this.#C);if(c||this.#S.isStale||!p(e)){return}const t=h(this.#S.dataUpdatedAt,e);const r=t+1;this.#R=setTimeout(()=>{if(!this.#S.isStale){this.updateResult()}},r)}#V(){return(typeof this.options.refetchInterval==="function"?this.options.refetchInterval(this.#C):this.options.refetchInterval)??false}#W(e){this.#B();this.#M=e;if(c||g(this.options.enabled,this.#C)===false||!p(this.#M)||this.#M===0){return}this.#H=setInterval(()=>{if(this.options.refetchIntervalInBackground||N.isFocused()){this.#L()}},this.#M)}#K(){this.#j();this.#W(this.#V())}#q(){if(this.#R){clearTimeout(this.#R);this.#R=void 0}}#B(){if(this.#H){clearInterval(this.#H);this.#H=void 0}}createResult(e,t){const r=this.#C;const n=this.options;const i=this.#S;const a=this.#T;const o=this.#O;const s=e!==r;const l=s?e.state:this.#Y;const{state:u}=e;let c={...u};let d=false;let f;if(t._optimisticResults){const i=this.hasListeners();const a=!i&&sg(e,t);const o=i&&sb(e,r,t,n);if(a||o){c={...c,...Q(u.data,e.options)}}if(t._optimisticResults==="isRestoring"){c.fetchStatus="idle"}}let{error:p,errorUpdatedAt:h,status:v}=c;if(t.select&&c.data!==void 0){if(i&&c.data===a?.data&&t.select===this.#D){f=this.#F}else{try{this.#D=t.select;f=t.select(c.data);f=Y(i?.data,f,t);this.#F=f;this.#k=null}catch(e){this.#k=e}}}else{f=c.data}if(t.placeholderData!==void 0&&f===void 0&&v==="pending"){let e;if(i?.isPlaceholderData&&t.placeholderData===o?.placeholderData){e=i.data}else{e=typeof t.placeholderData==="function"?t.placeholderData(this.#P?.state.data,this.#P):t.placeholderData;if(t.select&&e!==void 0){try{e=t.select(e);this.#k=null}catch(e){this.#k=e}}}if(e!==void 0){v="success";f=Y(i?.data,e,t);d=true}}if(this.#k){p=this.#k;f=this.#F;h=Date.now();v="error"}const g=c.fetchStatus==="fetching";const m=v==="pending";const b=v==="error";const _=m&&g;const y=f!==void 0;const w={status:v,fetchStatus:c.fetchStatus,isPending:m,isSuccess:v==="success",isError:b,isInitialLoading:_,isLoading:_,data:f,dataUpdatedAt:c.dataUpdatedAt,error:p,errorUpdatedAt:h,failureCount:c.fetchFailureCount,failureReason:c.fetchFailureReason,errorUpdateCount:c.errorUpdateCount,isFetched:c.dataUpdateCount>0||c.errorUpdateCount>0,isFetchedAfterMount:c.dataUpdateCount>l.dataUpdateCount||c.errorUpdateCount>l.errorUpdateCount,isFetching:g,isRefetching:g&&!m,isLoadingError:b&&!y,isPaused:c.fetchStatus==="paused",isPlaceholderData:d,isRefetchError:b&&y,isStale:s_(e,t),refetch:this.refetch,promise:this.#I};const x=w;if(this.options.experimental_prefetchInRender){const t=e=>{if(x.status==="error"){e.reject(x.error)}else if(x.data!==void 0){e.resolve(x.data)}};const n=()=>{const e=this.#I=x.promise=q();t(e)};const i=this.#I;switch(i.status){case"pending":if(e.queryHash===r.queryHash){t(i)}break;case"fulfilled":if(x.status==="error"||x.data!==i.value){n()}break;case"rejected":if(x.status!=="error"||x.error!==i.reason){n()}break}}return x}updateResult(e){const t=this.#S;const r=this.createResult(this.#C,this.options);this.#T=this.#C.state;this.#O=this.options;if(this.#T.data!==void 0){this.#P=this.#C}if(A(r,t)){return}this.#S=r;const n={};const i=()=>{if(!t){return true}const{notifyOnChangeProps:e}=this.options;const r=typeof e==="function"?e():e;if(r==="all"||!r&&!this.#N.size){return true}const n=new Set(r??this.#N);if(this.options.throwOnError){n.add("error")}return Object.keys(this.#S).some(e=>{const r=e;const i=this.#S[r]!==t[r];return i&&n.has(r)})};if(e?.listeners!==false&&i()){n.listeners=true}this.#z({...n,...e})}#U(){const e=this.#E.getQueryCache().build(this.#E,this.options);if(e===this.#C){return}const t=this.#C;this.#C=e;this.#Y=e.state;if(this.hasListeners()){t?.removeObserver(this);e.addObserver(this)}}onQueryUpdate(){this.updateResult();if(this.hasListeners()){this.#K()}}#z(e){R.batch(()=>{if(e.listeners){this.listeners.forEach(e=>{e(this.#S)})}this.#E.getQueryCache().notify({query:this.#C,type:"observerResultsUpdated"})})}};function sv(e,t){return g(t.enabled,e)!==false&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===false)}function sg(e,t){return sv(e,t)||e.state.data!==void 0&&sm(e,t,t.refetchOnMount)}function sm(e,t,r){if(g(t.enabled,e)!==false){const n=typeof r==="function"?r(e):r;return n==="always"||n!==false&&s_(e,t)}return false}function sb(e,t,r,n){return(e!==t||g(n.enabled,e)===false)&&(!r.suspense||e.state.status!=="error")&&s_(e,r)}function s_(e,t){return g(t.enabled,e)!==false&&e.isStaleByTime(v(t.staleTime,e))}function sy(e,t){if(!A(e.getCurrentResult(),t)){return true}return false}//# sourceMappingURL=queryObserver.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/QueryErrorResetBoundary.js
"use client";// src/QueryErrorResetBoundary.tsx
function sw(){let e=false;return{clearReset:()=>{e=false},reset:()=>{e=true},isReset:()=>{return e}}}var sx=n.createContext(sw());var sA=()=>n.useContext(sx);var sE=({children:e})=>{const[t]=React.useState(()=>sw());return /* @__PURE__ */jsx(sx.Provider,{value:t,children:typeof e==="function"?e(t):e})};//# sourceMappingURL=QueryErrorResetBoundary.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/utils.js
// src/utils.ts
function sk(e,t){if(typeof e==="function"){return e(...t)}return!!e}function sI(){}//# sourceMappingURL=utils.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/errorBoundaryUtils.js
"use client";// src/errorBoundaryUtils.ts
var sC=(e,t)=>{if(e.suspense||e.throwOnError||e.experimental_prefetchInRender){if(!t.isReset()){e.retryOnMount=false}}};var sY=e=>{n.useEffect(()=>{e.clearReset()},[e])};var sS=({result:e,errorResetBoundary:t,throwOnError:r,query:n})=>{return e.isError&&!t.isReset()&&!e.isFetching&&n&&sk(r,[e.error,n])};//# sourceMappingURL=errorBoundaryUtils.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/isRestoring.js
"use client";// src/isRestoring.ts
var sT=n.createContext(false);var sO=()=>n.useContext(sT);var sD=sT.Provider;//# sourceMappingURL=isRestoring.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/suspense.js
// src/suspense.ts
var sF=(e,t)=>t.state.data===void 0;var sP=e=>{const t=e.staleTime;if(e.suspense){e.staleTime=typeof t==="function"?(...e)=>Math.max(t(...e),1e3):Math.max(t??1e3,1e3);if(typeof e.gcTime==="number"){e.gcTime=Math.max(e.gcTime,1e3)}}};var sR=(e,t)=>e.isLoading&&e.isFetching&&!t;var sH=(e,t)=>(e==null?void 0:e.suspense)&&t.isPending;var sM=(e,t,r)=>t.fetchOptimistic(e).catch(()=>{r.clearReset()});//# sourceMappingURL=suspense.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/useBaseQuery.js
"use client";// src/useBaseQuery.ts
function sN(e,t,r){var i,a,o,s,l;if(false){}const u=ec(r);const d=sO();const f=sA();const p=u.defaultQueryOptions(e);(a=(i=u.getDefaultOptions().queries)==null?void 0:i._experimental_beforeQuery)==null?void 0:a.call(i,p);p._optimisticResults=d?"isRestoring":"optimistic";sP(p);sC(p,f);sY(f);const h=!u.getQueryCache().get(p.queryHash);const[v]=n.useState(()=>new t(u,p));const g=v.getOptimisticResult(p);n.useSyncExternalStore(n.useCallback(e=>{const t=d?sI:v.subscribe(R.batchCalls(e));v.updateResult();return t},[v,d]),()=>v.getCurrentResult(),()=>v.getCurrentResult());n.useEffect(()=>{v.setOptions(p,{listeners:false})},[p,v]);if(sH(p,g)){throw sM(p,v,f)}if(sS({result:g,errorResetBoundary:f,throwOnError:p.throwOnError,query:u.getQueryCache().get(p.queryHash)})){throw g.error};(s=(o=u.getDefaultOptions().queries)==null?void 0:o._experimental_afterQuery)==null?void 0:s.call(o,p,g);if(p.experimental_prefetchInRender&&!c&&sR(g,d)){const e=h?// Fetch immediately on render in order to ensure `.promise` is resolved even if the component is unmounted
sM(p,v,f):// subscribe to the "cache promise" so that we can finalize the currentThenable once data comes in
(l=u.getQueryCache().get(p.queryHash))==null?void 0:l.promise;e==null?void 0:e.catch(sI).finally(()=>{v.updateResult()})}return!p.notifyOnChangeProps?v.trackResult(g):g}//# sourceMappingURL=useBaseQuery.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/useQuery.js
"use client";// src/useQuery.ts
function sL(e,t){return sN(e,sh,t)}//# sourceMappingURL=useQuery.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/infiniteQueryObserver.js
// src/infiniteQueryObserver.ts
var sK=class extends sh{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods();this.fetchNextPage=this.fetchNextPage.bind(this);this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e,t){super.setOptions({...e,behavior:er()},t)}getOptimisticResult(e){e.behavior=er();return super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){const{state:r}=e;const n=super.createResult(e,t);const{isFetching:i,isRefetching:a,isError:o,isRefetchError:s}=n;const l=r.fetchMeta?.fetchMore?.direction;const u=o&&l==="forward";const c=i&&l==="forward";const d=o&&l==="backward";const f=i&&l==="backward";const p={...n,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:ea(t,r.data),hasPreviousPage:eo(t,r.data),isFetchNextPageError:u,isFetchingNextPage:c,isFetchPreviousPageError:d,isFetchingPreviousPage:f,isRefetchError:s&&!u&&!d,isRefetching:a&&!c&&!f};return p}};//# sourceMappingURL=infiniteQueryObserver.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/useInfiniteQuery.js
"use client";// src/useInfiniteQuery.ts
function sq(e,t){return sN(e,sK,t)}//# sourceMappingURL=useInfiniteQuery.js.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/bind.js
/**
 * Create a bound version of a function with a specified `this` context
 *
 * @param {Function} fn - The function to bind
 * @param {*} thisArg - The value to be passed as the `this` parameter
 * @returns {Function} A new function that will call the original function with the specified `this` context
 */function sB(e,t){return function r(){return e.apply(t,arguments)}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/utils.js
// utils is a library of generic helper functions non-specific to axios
const{toString:sU}=Object.prototype;const{getPrototypeOf:sj}=Object;const{iterator:sV,toStringTag:sW}=Symbol;const sz=(e=>t=>{const r=sU.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null));const sG=e=>{e=e.toLowerCase();return t=>sz(t)===e};const sQ=e=>t=>typeof t===e;/**
 * Determine if a value is an Array
 *
 * @param {Object} val The value to test
 *
 * @returns {boolean} True if value is an Array, otherwise false
 */const{isArray:s$}=Array;/**
 * Determine if a value is undefined
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if the value is undefined, otherwise false
 */const sX=sQ("undefined");/**
 * Determine if a value is a Buffer
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a Buffer, otherwise false
 */function sJ(e){return e!==null&&!sX(e)&&e.constructor!==null&&!sX(e.constructor)&&s2(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}/**
 * Determine if a value is an ArrayBuffer
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is an ArrayBuffer, otherwise false
 */const sZ=sG("ArrayBuffer");/**
 * Determine if a value is a view on an ArrayBuffer
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
 */function s0(e){let t;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){t=ArrayBuffer.isView(e)}else{t=e&&e.buffer&&sZ(e.buffer)}return t}/**
 * Determine if a value is a String
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a String, otherwise false
 */const s1=sQ("string");/**
 * Determine if a value is a Function
 *
 * @param {*} val The value to test
 * @returns {boolean} True if value is a Function, otherwise false
 */const s2=sQ("function");/**
 * Determine if a value is a Number
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a Number, otherwise false
 */const s6=sQ("number");/**
 * Determine if a value is an Object
 *
 * @param {*} thing The value to test
 *
 * @returns {boolean} True if value is an Object, otherwise false
 */const s4=e=>e!==null&&typeof e==="object";/**
 * Determine if a value is a Boolean
 *
 * @param {*} thing The value to test
 * @returns {boolean} True if value is a Boolean, otherwise false
 */const s5=e=>e===true||e===false;/**
 * Determine if a value is a plain Object
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a plain Object, otherwise false
 */const s3=e=>{if(sz(e)!=="object"){return false}const t=sj(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(sW in e)&&!(sV in e)};/**
 * Determine if a value is an empty object (safely handles Buffers)
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is an empty object, otherwise false
 */const s8=e=>{// Early return for non-objects or Buffers to prevent RangeError
if(!s4(e)||sJ(e)){return false}try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch(e){// Fallback for any other objects that might cause RangeError with Object.keys()
return false}};/**
 * Determine if a value is a Date
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a Date, otherwise false
 */const s9=sG("Date");/**
 * Determine if a value is a File
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a File, otherwise false
 */const s7=sG("File");/**
 * Determine if a value is a Blob
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a Blob, otherwise false
 */const le=sG("Blob");/**
 * Determine if a value is a FileList
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a File, otherwise false
 */const lt=sG("FileList");/**
 * Determine if a value is a Stream
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a Stream, otherwise false
 */const lr=e=>s4(e)&&s2(e.pipe);/**
 * Determine if a value is a FormData
 *
 * @param {*} thing The value to test
 *
 * @returns {boolean} True if value is an FormData, otherwise false
 */const ln=e=>{let t;return e&&(typeof FormData==="function"&&e instanceof FormData||s2(e.append)&&((t=sz(e))==="formdata"||// detect form-data instance
t==="object"&&s2(e.toString)&&e.toString()==="[object FormData]"))};/**
 * Determine if a value is a URLSearchParams object
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a URLSearchParams object, otherwise false
 */const li=sG("URLSearchParams");const[la,lo,ls,ll]=["ReadableStream","Request","Response","Headers"].map(sG);/**
 * Trim excess whitespace off the beginning and end of a string
 *
 * @param {String} str The String to trim
 *
 * @returns {String} The String freed of excess whitespace
 */const lu=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");/**
 * Iterate over an Array or an Object invoking a function for each item.
 *
 * If `obj` is an Array callback will be called passing
 * the value, index, and complete array for each item.
 *
 * If 'obj' is an Object callback will be called passing
 * the value, key, and complete object for each property.
 *
 * @param {Object|Array} obj The object to iterate
 * @param {Function} fn The callback to invoke for each item
 *
 * @param {Boolean} [allOwnKeys = false]
 * @returns {any}
 */function lc(e,t,{allOwnKeys:r=false}={}){// Don't bother if no value provided
if(e===null||typeof e==="undefined"){return}let n;let i;// Force an array if not already something iterable
if(typeof e!=="object"){/*eslint no-param-reassign:0*/e=[e]}if(s$(e)){// Iterate over array values
for(n=0,i=e.length;n<i;n++){t.call(null,e[n],n,e)}}else{// Buffer check
if(sJ(e)){return}// Iterate over object keys
const i=r?Object.getOwnPropertyNames(e):Object.keys(e);const a=i.length;let o;for(n=0;n<a;n++){o=i[n];t.call(null,e[o],o,e)}}}function ld(e,t){if(sJ(e)){return null}t=t.toLowerCase();const r=Object.keys(e);let n=r.length;let i;while(n-- >0){i=r[n];if(t===i.toLowerCase()){return i}}return null}const lf=(()=>{/*eslint no-undef:0*/if(typeof globalThis!=="undefined")return globalThis;return typeof self!=="undefined"?self:typeof window!=="undefined"?window:global})();const lp=e=>!sX(e)&&e!==lf;/**
 * Accepts varargs expecting each argument to be an object, then
 * immutably merges the properties of each object and returns result.
 *
 * When multiple objects contain the same key the later object in
 * the arguments list will take precedence.
 *
 * Example:
 *
 * ```js
 * var result = merge({foo: 123}, {foo: 456});
 * console.log(result.foo); // outputs 456
 * ```
 *
 * @param {Object} obj1 Object to merge
 *
 * @returns {Object} Result of all merge properties
 */function lh(){const{caseless:e,skipUndefined:t}=lp(this)&&this||{};const r={};const n=(n,i)=>{const a=e&&ld(r,i)||i;if(s3(r[a])&&s3(n)){r[a]=lh(r[a],n)}else if(s3(n)){r[a]=lh({},n)}else if(s$(n)){r[a]=n.slice()}else if(!t||!sX(n)){r[a]=n}};for(let e=0,t=arguments.length;e<t;e++){arguments[e]&&lc(arguments[e],n)}return r}/**
 * Extends object a by mutably adding to it the properties of object b.
 *
 * @param {Object} a The object to be extended
 * @param {Object} b The object to copy properties from
 * @param {Object} thisArg The object to bind function to
 *
 * @param {Boolean} [allOwnKeys]
 * @returns {Object} The resulting value of object a
 */const lv=(e,t,r,{allOwnKeys:n}={})=>{lc(t,(t,n)=>{if(r&&s2(t)){e[n]=sB(t,r)}else{e[n]=t}},{allOwnKeys:n});return e};/**
 * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
 *
 * @param {string} content with BOM
 *
 * @returns {string} content value without BOM
 */const lg=e=>{if(e.charCodeAt(0)===65279){e=e.slice(1)}return e};/**
 * Inherit the prototype methods from one constructor into another
 * @param {function} constructor
 * @param {function} superConstructor
 * @param {object} [props]
 * @param {object} [descriptors]
 *
 * @returns {void}
 */const lm=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n);e.prototype.constructor=e;Object.defineProperty(e,"super",{value:t.prototype});r&&Object.assign(e.prototype,r)};/**
 * Resolve object with deep prototype chain to a flat object
 * @param {Object} sourceObj source object
 * @param {Object} [destObj]
 * @param {Function|Boolean} [filter]
 * @param {Function} [propFilter]
 *
 * @returns {Object}
 */const lb=(e,t,r,n)=>{let i;let a;let o;const s={};t=t||{};// eslint-disable-next-line no-eq-null,eqeqeq
if(e==null)return t;do{i=Object.getOwnPropertyNames(e);a=i.length;while(a-- >0){o=i[a];if((!n||n(o,e,t))&&!s[o]){t[o]=e[o];s[o]=true}}e=r!==false&&sj(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype)return t};/**
 * Determines whether a string ends with the characters of a specified string
 *
 * @param {String} str
 * @param {String} searchString
 * @param {Number} [position= 0]
 *
 * @returns {boolean}
 */const l_=(e,t,r)=>{e=String(e);if(r===undefined||r>e.length){r=e.length}r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r};/**
 * Returns new array from array like object or null if failed
 *
 * @param {*} [thing]
 *
 * @returns {?Array}
 */const ly=e=>{if(!e)return null;if(s$(e))return e;let t=e.length;if(!s6(t))return null;const r=new Array(t);while(t-- >0){r[t]=e[t]}return r};/**
 * Checking if the Uint8Array exists and if it does, it returns a function that checks if the
 * thing passed in is an instance of Uint8Array
 *
 * @param {TypedArray}
 *
 * @returns {Array}
 */// eslint-disable-next-line func-names
const lw=(e=>{// eslint-disable-next-line func-names
return t=>{return e&&t instanceof e}})(typeof Uint8Array!=="undefined"&&sj(Uint8Array));/**
 * For each entry in the object, call the function with the key and value.
 *
 * @param {Object<any, any>} obj - The object to iterate over.
 * @param {Function} fn - The function to call for each entry.
 *
 * @returns {void}
 */const lx=(e,t)=>{const r=e&&e[sV];const n=r.call(e);let i;while((i=n.next())&&!i.done){const r=i.value;t.call(e,r[0],r[1])}};/**
 * It takes a regular expression and a string, and returns an array of all the matches
 *
 * @param {string} regExp - The regular expression to match against.
 * @param {string} str - The string to search.
 *
 * @returns {Array<boolean>}
 */const lA=(e,t)=>{let r;const n=[];while((r=e.exec(t))!==null){n.push(r)}return n};/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */const lE=sG("HTMLFormElement");const lk=e=>{return e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function e(e,t,r){return t.toUpperCase()+r})};/* Creating a function that will check if an object has a property. */const lI=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype);/**
 * Determine if a value is a RegExp object
 *
 * @param {*} val The value to test
 *
 * @returns {boolean} True if value is a RegExp object, otherwise false
 */const lC=sG("RegExp");const lY=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e);const n={};lc(r,(r,i)=>{let a;if((a=t(r,i,e))!==false){n[i]=a||r}});Object.defineProperties(e,n)};/**
 * Makes all methods read-only
 * @param {Object} obj
 */const lS=e=>{lY(e,(t,r)=>{// skip restricted props in strict mode
if(s2(e)&&["arguments","caller","callee"].indexOf(r)!==-1){return false}const n=e[r];if(!s2(n))return;t.enumerable=false;if("writable"in t){t.writable=false;return}if(!t.set){t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")}}})};const lT=(e,t)=>{const r={};const n=e=>{e.forEach(e=>{r[e]=true})};s$(e)?n(e):n(String(e).split(t));return r};const lO=()=>{};const lD=(e,t)=>{return e!=null&&Number.isFinite(e=+e)?e:t};/**
 * If the thing is a FormData object, return true, otherwise return false.
 *
 * @param {unknown} thing - The thing to check.
 *
 * @returns {boolean}
 */function lF(e){return!!(e&&s2(e.append)&&e[sW]==="FormData"&&e[sV])}const lP=e=>{const t=new Array(10);const r=(e,n)=>{if(s4(e)){if(t.indexOf(e)>=0){return}//Buffer check
if(sJ(e)){return e}if(!("toJSON"in e)){t[n]=e;const i=s$(e)?[]:{};lc(e,(e,t)=>{const a=r(e,n+1);!sX(a)&&(i[t]=a)});t[n]=undefined;return i}}return e};return r(e,0)};const lR=sG("AsyncFunction");const lH=e=>e&&(s4(e)||s2(e))&&s2(e.then)&&s2(e.catch);// original code
// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34
const lM=((e,t)=>{if(e){return setImmediate}return t?((e,t)=>{lf.addEventListener("message",({source:r,data:n})=>{if(r===lf&&n===e){t.length&&t.shift()()}},false);return r=>{t.push(r);lf.postMessage(e,"*")}})(`axios@${Math.random()}`,[]):e=>setTimeout(e)})(typeof setImmediate==="function",s2(lf.postMessage));const lN=typeof queueMicrotask!=="undefined"?queueMicrotask.bind(lf):typeof process!=="undefined"&&process.nextTick||lM;// *********************
const lL=e=>e!=null&&s2(e[sV]);/* export default */const lK={isArray:s$,isArrayBuffer:sZ,isBuffer:sJ,isFormData:ln,isArrayBufferView:s0,isString:s1,isNumber:s6,isBoolean:s5,isObject:s4,isPlainObject:s3,isEmptyObject:s8,isReadableStream:la,isRequest:lo,isResponse:ls,isHeaders:ll,isUndefined:sX,isDate:s9,isFile:s7,isBlob:le,isRegExp:lC,isFunction:s2,isStream:lr,isURLSearchParams:li,isTypedArray:lw,isFileList:lt,forEach:lc,merge:lh,extend:lv,trim:lu,stripBOM:lg,inherits:lm,toFlatObject:lb,kindOf:sz,kindOfTest:sG,endsWith:l_,toArray:ly,forEachEntry:lx,matchAll:lA,isHTMLForm:lE,hasOwnProperty:lI,hasOwnProp:lI,reduceDescriptors:lY,freezeMethods:lS,toObjectSet:lT,toCamelCase:lk,noop:lO,toFiniteNumber:lD,findKey:ld,global:lf,isContextDefined:lp,isSpecCompliantForm:lF,toJSONObject:lP,isAsyncFn:lR,isThenable:lH,setImmediate:lM,asap:lN,isIterable:lL};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosError.js
/**
 * Create an Error with the specified message, config, error code, request and response.
 *
 * @param {string} message The error message.
 * @param {string} [code] The error code (for example, 'ECONNABORTED').
 * @param {Object} [config] The config.
 * @param {Object} [request] The request.
 * @param {Object} [response] The response.
 *
 * @returns {Error} The created error.
 */function lq(e,t,r,n,i){Error.call(this);if(Error.captureStackTrace){Error.captureStackTrace(this,this.constructor)}else{this.stack=new Error().stack}this.message=e;this.name="AxiosError";t&&(this.code=t);r&&(this.config=r);n&&(this.request=n);if(i){this.response=i;this.status=i.status?i.status:null}}lK.inherits(lq,Error,{toJSON:function e(){return{// Standard
message:this.message,name:this.name,// Microsoft
description:this.description,number:this.number,// Mozilla
fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,// Axios
config:lK.toJSONObject(this.config),code:this.code,status:this.status}}});const lB=lq.prototype;const lU={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{lU[e]={value:e}});Object.defineProperties(lq,lU);Object.defineProperty(lB,"isAxiosError",{value:true});// eslint-disable-next-line func-names
lq.from=(e,t,r,n,i,a)=>{const o=Object.create(lB);lK.toFlatObject(e,o,function e(e){return e!==Error.prototype},e=>{return e!=="isAxiosError"});const s=e&&e.message?e.message:"Error";// Prefer explicit code; otherwise copy the low-level error's code (e.g. ECONNREFUSED)
const l=t==null&&e?e.code:t;lq.call(o,s,l,r,n,i);// Chain the original error on the standard field; non-enumerable to avoid JSON noise
if(e&&o.cause==null){Object.defineProperty(o,"cause",{value:e,configurable:true})}o.name=e&&e.name||"Error";a&&Object.assign(o,a);return o};/* export default */const lj=lq;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/null.js
// eslint-disable-next-line strict
/* export default */const lV=null;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toFormData.js
// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored
/**
 * Determines if the given thing is a array or js object.
 *
 * @param {string} thing - The object or array to be visited.
 *
 * @returns {boolean}
 */function lW(e){return lK.isPlainObject(e)||lK.isArray(e)}/**
 * It removes the brackets from the end of a string
 *
 * @param {string} key - The key of the parameter.
 *
 * @returns {string} the key without the brackets.
 */function lz(e){return lK.endsWith(e,"[]")?e.slice(0,-2):e}/**
 * It takes a path, a key, and a boolean, and returns a string
 *
 * @param {string} path - The path to the current key.
 * @param {string} key - The key of the current object being iterated over.
 * @param {string} dots - If true, the key will be rendered with dots instead of brackets.
 *
 * @returns {string} The path to the current key.
 */function lG(e,t,r){if(!e)return t;return e.concat(t).map(function e(e,t){// eslint-disable-next-line no-param-reassign
e=lz(e);return!r&&t?"["+e+"]":e}).join(r?".":"")}/**
 * If the array is an array and none of its elements are visitable, then it's a flat array.
 *
 * @param {Array<any>} arr - The array to check
 *
 * @returns {boolean}
 */function lQ(e){return lK.isArray(e)&&!e.some(lW)}const l$=lK.toFlatObject(lK,{},null,function e(e){return/^is[A-Z]/.test(e)});/**
 * Convert a data object to FormData
 *
 * @param {Object} obj
 * @param {?Object} [formData]
 * @param {?Object} [options]
 * @param {Function} [options.visitor]
 * @param {Boolean} [options.metaTokens = true]
 * @param {Boolean} [options.dots = false]
 * @param {?Boolean} [options.indexes = false]
 *
 * @returns {Object}
 **//**
 * It converts an object into a FormData object
 *
 * @param {Object<any, any>} obj - The object to convert to form data.
 * @param {string} formData - The FormData object to append to.
 * @param {Object<string, any>} options
 *
 * @returns
 */function lX(e,t,r){if(!lK.isObject(e)){throw new TypeError("target must be an object")}// eslint-disable-next-line no-param-reassign
t=t||new(lV||FormData);// eslint-disable-next-line no-param-reassign
r=lK.toFlatObject(r,{metaTokens:true,dots:false,indexes:false},false,function e(e,t){// eslint-disable-next-line no-eq-null,eqeqeq
return!lK.isUndefined(t[e])});const n=r.metaTokens;// eslint-disable-next-line no-use-before-define
const i=r.visitor||c;const a=r.dots;const o=r.indexes;const s=r.Blob||typeof Blob!=="undefined"&&Blob;const l=s&&lK.isSpecCompliantForm(t);if(!lK.isFunction(i)){throw new TypeError("visitor must be a function")}function u(e){if(e===null)return"";if(lK.isDate(e)){return e.toISOString()}if(lK.isBoolean(e)){return e.toString()}if(!l&&lK.isBlob(e)){throw new lj("Blob is not supported. Use a Buffer instead.")}if(lK.isArrayBuffer(e)||lK.isTypedArray(e)){return l&&typeof Blob==="function"?new Blob([e]):Buffer.from(e)}return e}/**
   * Default visitor.
   *
   * @param {*} value
   * @param {String|Number} key
   * @param {Array<String|Number>} path
   * @this {FormData}
   *
   * @returns {boolean} return true to visit the each prop of the value recursively
   */function c(e,r,i){let s=e;if(e&&!i&&typeof e==="object"){if(lK.endsWith(r,"{}")){// eslint-disable-next-line no-param-reassign
r=n?r:r.slice(0,-2);// eslint-disable-next-line no-param-reassign
e=JSON.stringify(e)}else if(lK.isArray(e)&&lQ(e)||(lK.isFileList(e)||lK.endsWith(r,"[]"))&&(s=lK.toArray(e))){// eslint-disable-next-line no-param-reassign
r=lz(r);s.forEach(function e(e,n){!(lK.isUndefined(e)||e===null)&&t.append(// eslint-disable-next-line no-nested-ternary
o===true?lG([r],n,a):o===null?r:r+"[]",u(e))});return false}}if(lW(e)){return true}t.append(lG(i,r,a),u(e));return false}const d=[];const f=Object.assign(l$,{defaultVisitor:c,convertValue:u,isVisitable:lW});function p(e,r){if(lK.isUndefined(e))return;if(d.indexOf(e)!==-1){throw Error("Circular reference detected in "+r.join("."))}d.push(e);lK.forEach(e,function e(e,n){const a=!(lK.isUndefined(e)||e===null)&&i.call(t,e,lK.isString(n)?n.trim():n,r,f);if(a===true){p(e,r?r.concat(n):[n])}});d.pop()}if(!lK.isObject(e)){throw new TypeError("data must be an object")}p(e);return t}/* export default */const lJ=lX;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/AxiosURLSearchParams.js
/**
 * It encodes a string by replacing all characters that are not in the unreserved set with
 * their percent-encoded equivalents
 *
 * @param {string} str - The string to encode.
 *
 * @returns {string} The encoded string.
 */function lZ(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function e(e){return t[e]})}/**
 * It takes a params object and converts it to a FormData object
 *
 * @param {Object<string, any>} params - The parameters to be converted to a FormData object.
 * @param {Object<string, any>} options - The options object passed to the Axios constructor.
 *
 * @returns {void}
 */function l0(e,t){this._pairs=[];e&&lJ(e,this,t)}const l1=l0.prototype;l1.append=function e(e,t){this._pairs.push([e,t])};l1.toString=function e(e){const t=e?function(t){return e.call(this,t,lZ)}:lZ;return this._pairs.map(function e(e){return t(e[0])+"="+t(e[1])},"").join("&")};/* export default */const l2=l0;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/buildURL.js
/**
 * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their
 * URI encoded counterparts
 *
 * @param {string} val The value to be encoded.
 *
 * @returns {string} The encoded value.
 */function l6(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}/**
 * Build a URL by appending params to the end
 *
 * @param {string} url The base of the url (e.g., http://www.google.com)
 * @param {object} [params] The params to be appended
 * @param {?(object|Function)} options
 *
 * @returns {string} The formatted url
 */function l4(e,t,r){/*eslint no-param-reassign:0*/if(!t){return e}const n=r&&r.encode||l6;if(lK.isFunction(r)){r={serialize:r}}const i=r&&r.serialize;let a;if(i){a=i(t,r)}else{a=lK.isURLSearchParams(t)?t.toString():new l2(t,r).toString(n)}if(a){const t=e.indexOf("#");if(t!==-1){e=e.slice(0,t)}e+=(e.indexOf("?")===-1?"?":"&")+a}return e};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/InterceptorManager.js
class l5{constructor(){this.handlers=[]}/**
   * Add a new interceptor to the stack
   *
   * @param {Function} fulfilled The function to handle `then` for a `Promise`
   * @param {Function} rejected The function to handle `reject` for a `Promise`
   *
   * @return {Number} An ID used to remove interceptor later
   */use(e,t,r){this.handlers.push({fulfilled:e,rejected:t,synchronous:r?r.synchronous:false,runWhen:r?r.runWhen:null});return this.handlers.length-1}/**
   * Remove an interceptor from the stack
   *
   * @param {Number} id The ID that was returned by `use`
   *
   * @returns {void}
   */eject(e){if(this.handlers[e]){this.handlers[e]=null}}/**
   * Clear all interceptors from the stack
   *
   * @returns {void}
   */clear(){if(this.handlers){this.handlers=[]}}/**
   * Iterate over all the registered interceptors
   *
   * This method is particularly useful for skipping over any
   * interceptors that may have become `null` calling `eject`.
   *
   * @param {Function} fn The function to call for each interceptor
   *
   * @returns {void}
   */forEach(e){lK.forEach(this.handlers,function t(t){if(t!==null){e(t)}})}}/* export default */const l3=l5;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/transitional.js
/* export default */const l8={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js
/* export default */const l9=typeof URLSearchParams!=="undefined"?URLSearchParams:l2;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/FormData.js
/* export default */const l7=typeof FormData!=="undefined"?FormData:null;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/classes/Blob.js
/* export default */const ue=typeof Blob!=="undefined"?Blob:null;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/browser/index.js
/* export default */const ut={isBrowser:true,classes:{URLSearchParams:l9,FormData:l7,Blob:ue},protocols:["http","https","file","blob","url","data"]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/common/utils.js
const ur=typeof window!=="undefined"&&typeof document!=="undefined";const un=typeof navigator==="object"&&navigator||undefined;/**
 * Determine if we're running in a standard browser environment
 *
 * This allows axios to run in a web worker, and react-native.
 * Both environments support XMLHttpRequest, but not fully standard globals.
 *
 * web workers:
 *  typeof window -> undefined
 *  typeof document -> undefined
 *
 * react-native:
 *  navigator.product -> 'ReactNative'
 * nativescript
 *  navigator.product -> 'NativeScript' or 'NS'
 *
 * @returns {boolean}
 */const ui=ur&&(!un||["ReactNative","NativeScript","NS"].indexOf(un.product)<0);/**
 * Determine if we're running in a standard browser webWorker environment
 *
 * Although the `isStandardBrowserEnv` method indicates that
 * `allows axios to run in a web worker`, the WebWorker will still be
 * filtered out due to its judgment standard
 * `typeof window !== 'undefined' && typeof document !== 'undefined'`.
 * This leads to a problem when axios post `FormData` in webWorker
 */const ua=(()=>{return typeof WorkerGlobalScope!=="undefined"&&// eslint-disable-next-line no-undef
self instanceof WorkerGlobalScope&&typeof self.importScripts==="function"})();const uo=ur&&window.location.href||"http://localhost";// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/platform/index.js
/* export default */const us={...e,...ut};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/toURLEncodedForm.js
function ul(e,t){return lJ(e,new us.classes.URLSearchParams,{visitor:function(e,t,r,n){if(us.isNode&&lK.isBuffer(e)){this.append(t,e.toString("base64"));return false}return n.defaultVisitor.apply(this,arguments)},...t})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/formDataToJSON.js
/**
 * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']
 *
 * @param {string} name - The name of the property to get.
 *
 * @returns An array of strings.
 */function uu(e){// foo[x][y][z]
// foo.x.y.z
// foo-x-y-z
// foo x y z
return lK.matchAll(/\w+|\[(\w*)]/g,e).map(e=>{return e[0]==="[]"?"":e[1]||e[0]})}/**
 * Convert an array to an object.
 *
 * @param {Array<any>} arr - The array to convert to an object.
 *
 * @returns An object with the same keys and values as the array.
 */function uc(e){const t={};const r=Object.keys(e);let n;const i=r.length;let a;for(n=0;n<i;n++){a=r[n];t[a]=e[a]}return t}/**
 * It takes a FormData object and returns a JavaScript object
 *
 * @param {string} formData The FormData object to convert to JSON.
 *
 * @returns {Object<string, any> | null} The converted object.
 */function ud(e){function t(e,r,n,i){let a=e[i++];if(a==="__proto__")return true;const o=Number.isFinite(+a);const s=i>=e.length;a=!a&&lK.isArray(n)?n.length:a;if(s){if(lK.hasOwnProp(n,a)){n[a]=[n[a],r]}else{n[a]=r}return!o}if(!n[a]||!lK.isObject(n[a])){n[a]=[]}const l=t(e,r,n[a],i);if(l&&lK.isArray(n[a])){n[a]=uc(n[a])}return!o}if(lK.isFormData(e)&&lK.isFunction(e.entries)){const r={};lK.forEachEntry(e,(e,n)=>{t(uu(e),n,r,0)});return r}return null}/* export default */const uf=ud;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/defaults/index.js
/**
 * It takes a string, tries to parse it, and if it fails, it returns the stringified version
 * of the input
 *
 * @param {any} rawValue - The value to be stringified.
 * @param {Function} parser - A function that parses a string into a JavaScript object.
 * @param {Function} encoder - A function that takes a value and returns a string.
 *
 * @returns {string} A stringified version of the rawValue.
 */function up(e,t,r){if(lK.isString(e)){try{(t||JSON.parse)(e);return lK.trim(e)}catch(e){if(e.name!=="SyntaxError"){throw e}}}return(r||JSON.stringify)(e)}const uh={transitional:l8,adapter:["xhr","http","fetch"],transformRequest:[function e(e,t){const r=t.getContentType()||"";const n=r.indexOf("application/json")>-1;const i=lK.isObject(e);if(i&&lK.isHTMLForm(e)){e=new FormData(e)}const a=lK.isFormData(e);if(a){return n?JSON.stringify(uf(e)):e}if(lK.isArrayBuffer(e)||lK.isBuffer(e)||lK.isStream(e)||lK.isFile(e)||lK.isBlob(e)||lK.isReadableStream(e)){return e}if(lK.isArrayBufferView(e)){return e.buffer}if(lK.isURLSearchParams(e)){t.setContentType("application/x-www-form-urlencoded;charset=utf-8",false);return e.toString()}let o;if(i){if(r.indexOf("application/x-www-form-urlencoded")>-1){return ul(e,this.formSerializer).toString()}if((o=lK.isFileList(e))||r.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return lJ(o?{"files[]":e}:e,t&&new t,this.formSerializer)}}if(i||n){t.setContentType("application/json",false);return up(e)}return e}],transformResponse:[function e(e){const t=this.transitional||uh.transitional;const r=t&&t.forcedJSONParsing;const n=this.responseType==="json";if(lK.isResponse(e)||lK.isReadableStream(e)){return e}if(e&&lK.isString(e)&&(r&&!this.responseType||n)){const r=t&&t.silentJSONParsing;const i=!r&&n;try{return JSON.parse(e,this.parseReviver)}catch(e){if(i){if(e.name==="SyntaxError"){throw lj.from(e,lj.ERR_BAD_RESPONSE,this,null,this.response)}throw e}}}return e}],/**
   * A timeout in milliseconds to abort a request. If set to 0 (default) a
   * timeout is not created.
   */timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:us.classes.FormData,Blob:us.classes.Blob},validateStatus:function e(e){return e>=200&&e<300},headers:{common:{"Accept":"application/json, text/plain, */*","Content-Type":undefined}}};lK.forEach(["delete","get","head","post","put","patch"],e=>{uh.headers[e]={}});/* export default */const uv=uh;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseHeaders.js
// RawAxiosHeaders whose duplicates are ignored by node
// c.f. https://nodejs.org/api/http.html#http_message_headers
const ug=lK.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);/**
 * Parse headers into an object
 *
 * ```
 * Date: Wed, 27 Aug 2014 08:58:49 GMT
 * Content-Type: application/json
 * Connection: keep-alive
 * Transfer-Encoding: chunked
 * ```
 *
 * @param {String} rawHeaders Headers needing to be parsed
 *
 * @returns {Object} Headers parsed into an object
 *//* export default */const um=e=>{const t={};let r;let n;let i;e&&e.split("\n").forEach(function e(e){i=e.indexOf(":");r=e.substring(0,i).trim().toLowerCase();n=e.substring(i+1).trim();if(!r||t[r]&&ug[r]){return}if(r==="set-cookie"){if(t[r]){t[r].push(n)}else{t[r]=[n]}}else{t[r]=t[r]?t[r]+", "+n:n}});return t};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/AxiosHeaders.js
const ub=Symbol("internals");function u_(e){return e&&String(e).trim().toLowerCase()}function uy(e){if(e===false||e==null){return e}return lK.isArray(e)?e.map(uy):String(e)}function uw(e){const t=Object.create(null);const r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;while(n=r.exec(e)){t[n[1]]=n[2]}return t}const ux=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function uA(e,t,r,n,i){if(lK.isFunction(n)){return n.call(this,t,r)}if(i){t=r}if(!lK.isString(t))return;if(lK.isString(n)){return t.indexOf(n)!==-1}if(lK.isRegExp(n)){return n.test(t)}}function uE(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(e,t,r)=>{return t.toUpperCase()+r})}function uk(e,t){const r=lK.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(e,r,i){return this[n].call(this,t,e,r,i)},configurable:true})})}class uI{constructor(e){e&&this.set(e)}set(e,t,r){const n=this;function i(e,t,r){const i=u_(t);if(!i){throw new Error("header name must be a non-empty string")}const a=lK.findKey(n,i);if(!a||n[a]===undefined||r===true||r===undefined&&n[a]!==false){n[a||t]=uy(e)}}const a=(e,t)=>lK.forEach(e,(e,r)=>i(e,r,t));if(lK.isPlainObject(e)||e instanceof this.constructor){a(e,t)}else if(lK.isString(e)&&(e=e.trim())&&!ux(e)){a(um(e),t)}else if(lK.isObject(e)&&lK.isIterable(e)){let r={},n,i;for(const t of e){if(!lK.isArray(t)){throw TypeError("Object iterator must return a key-value pair")}r[i=t[0]]=(n=r[i])?lK.isArray(n)?[...n,t[1]]:[n,t[1]]:t[1]}a(r,t)}else{e!=null&&i(t,e,r)}return this}get(e,t){e=u_(e);if(e){const r=lK.findKey(this,e);if(r){const e=this[r];if(!t){return e}if(t===true){return uw(e)}if(lK.isFunction(t)){return t.call(this,e,r)}if(lK.isRegExp(t)){return t.exec(e)}throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){e=u_(e);if(e){const r=lK.findKey(this,e);return!!(r&&this[r]!==undefined&&(!t||uA(this,this[r],r,t)))}return false}delete(e,t){const r=this;let n=false;function i(e){e=u_(e);if(e){const i=lK.findKey(r,e);if(i&&(!t||uA(r,r[i],i,t))){delete r[i];n=true}}}if(lK.isArray(e)){e.forEach(i)}else{i(e)}return n}clear(e){const t=Object.keys(this);let r=t.length;let n=false;while(r--){const i=t[r];if(!e||uA(this,this[i],i,e,true)){delete this[i];n=true}}return n}normalize(e){const t=this;const r={};lK.forEach(this,(n,i)=>{const a=lK.findKey(r,i);if(a){t[a]=uy(n);delete t[i];return}const o=e?uE(i):String(i).trim();if(o!==i){delete t[i]}t[o]=uy(n);r[o]=true});return this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);lK.forEach(this,(r,n)=>{r!=null&&r!==false&&(t[n]=e&&lK.isArray(r)?r.join(", "):r)});return t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([e,t])=>e+": "+t).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const r=new this(e);t.forEach(e=>r.set(e));return r}static accessor(e){const t=this[ub]=this[ub]={accessors:{}};const r=t.accessors;const n=this.prototype;function i(e){const t=u_(e);if(!r[t]){uk(n,e);r[t]=true}}lK.isArray(e)?e.forEach(i):i(e);return this}}uI.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);// reserved names hotfix
lK.reduceDescriptors(uI.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);// map `set` => `Set`
return{get:()=>e,set(e){this[r]=e}}});lK.freezeMethods(uI);/* export default */const uC=uI;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/transformData.js
/**
 * Transform the data for a request or a response
 *
 * @param {Array|Function} fns A single function or Array of functions
 * @param {?Object} response The response object
 *
 * @returns {*} The resulting transformed data
 */function uY(e,t){const r=this||uv;const n=t||r;const i=uC.from(n.headers);let a=n.data;lK.forEach(e,function e(e){a=e.call(r,a,i.normalize(),t?t.status:undefined)});i.normalize();return a};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/isCancel.js
function uS(e){return!!(e&&e.__CANCEL__)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CanceledError.js
/**
 * A `CanceledError` is an object that is thrown when an operation is canceled.
 *
 * @param {string=} message The message.
 * @param {Object=} config The config.
 * @param {Object=} request The request.
 *
 * @returns {CanceledError} The created error.
 */function uT(e,t,r){// eslint-disable-next-line no-eq-null,eqeqeq
lj.call(this,e==null?"canceled":e,lj.ERR_CANCELED,t,r);this.name="CanceledError"}lK.inherits(uT,lj,{__CANCEL__:true});/* export default */const uO=uT;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/settle.js
/**
 * Resolve or reject a Promise based on response status.
 *
 * @param {Function} resolve A function that resolves the promise.
 * @param {Function} reject A function that rejects the promise.
 * @param {object} response The response.
 *
 * @returns {object} The response.
 */function uD(e,t,r){const n=r.config.validateStatus;if(!r.status||!n||n(r.status)){e(r)}else{t(new lj("Request failed with status code "+r.status,[lj.ERR_BAD_REQUEST,lj.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/parseProtocol.js
function uF(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/speedometer.js
/**
 * Calculate data maxRate
 * @param {Number} [samplesCount= 10]
 * @param {Number} [min= 1000]
 * @returns {Function}
 */function uP(e,t){e=e||10;const r=new Array(e);const n=new Array(e);let i=0;let a=0;let o;t=t!==undefined?t:1e3;return function s(s){const l=Date.now();const u=n[a];if(!o){o=l}r[i]=s;n[i]=l;let c=a;let d=0;while(c!==i){d+=r[c++];c=c%e}i=(i+1)%e;if(i===a){a=(a+1)%e}if(l-o<t){return}const f=u&&l-u;return f?Math.round(d*1e3/f):undefined}}/* export default */const uR=uP;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/throttle.js
/**
 * Throttle decorator
 * @param {Function} fn
 * @param {Number} freq
 * @return {Function}
 */function uH(e,t){let r=0;let n=1e3/t;let i;let a;const o=(t,n=Date.now())=>{r=n;i=null;if(a){clearTimeout(a);a=null}e(...t)};const s=(...e)=>{const t=Date.now();const s=t-r;if(s>=n){o(e,t)}else{i=e;if(!a){a=setTimeout(()=>{a=null;o(i)},n-s)}}};const l=()=>i&&o(i);return[s,l]}/* export default */const uM=uH;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/progressEventReducer.js
const uN=(e,t,r=3)=>{let n=0;const i=uR(50,250);return uM(r=>{const a=r.loaded;const o=r.lengthComputable?r.total:undefined;const s=a-n;const l=i(s);const u=a<=o;n=a;const c={loaded:a,total:o,progress:o?a/o:undefined,bytes:s,rate:l?l:undefined,estimated:l&&o&&u?(o-a)/l:undefined,event:r,lengthComputable:o!=null,[t?"download":"upload"]:true};e(c)},r)};const uL=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]};const uK=e=>(...t)=>lK.asap(()=>e(...t));// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isURLSameOrigin.js
/* export default */const uq=us.hasStandardBrowserEnv?((e,t)=>r=>{r=new URL(r,us.origin);return e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)})(new URL(us.origin),us.navigator&&/(msie|trident)/i.test(us.navigator.userAgent)):()=>true;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/cookies.js
/* export default */const uB=us.hasStandardBrowserEnv?// Standard browser envs support document.cookie
{write(e,t,r,n,i,a,o){if(typeof document==="undefined")return;const s=[`${e}=${encodeURIComponent(t)}`];if(lK.isNumber(r)){s.push(`expires=${new Date(r).toUTCString()}`)}if(lK.isString(n)){s.push(`path=${n}`)}if(lK.isString(i)){s.push(`domain=${i}`)}if(a===true){s.push("secure")}if(lK.isString(o)){s.push(`SameSite=${o}`)}document.cookie=s.join("; ")},read(e){if(typeof document==="undefined")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:// Non-standard browser env (web workers, react-native) lack needed support.
{write(){},read(){return null},remove(){}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAbsoluteURL.js
/**
 * Determines whether the specified URL is absolute
 *
 * @param {string} url The URL to test
 *
 * @returns {boolean} True if the specified URL is absolute, otherwise false
 */function uU(e){// A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
// RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
// by any combination of letters, digits, plus, period, or hyphen.
return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/combineURLs.js
/**
 * Creates a new URL by combining the specified URLs
 *
 * @param {string} baseURL The base URL
 * @param {string} relativeURL The relative URL
 *
 * @returns {string} The combined URL
 */function uj(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/buildFullPath.js
/**
 * Creates a new URL by combining the baseURL with the requestedURL,
 * only when the requestedURL is not already an absolute URL.
 * If the requestURL is absolute, this function returns the requestedURL untouched.
 *
 * @param {string} baseURL The base URL
 * @param {string} requestedURL Absolute or relative URL to combine
 *
 * @returns {string} The combined full path
 */function uV(e,t,r){let n=!uU(t);if(e&&(n||r==false)){return uj(e,t)}return t};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/mergeConfig.js
const uW=e=>e instanceof uC?{...e}:e;/**
 * Config-specific merge-function which creates a new config-object
 * by merging two configuration objects together.
 *
 * @param {Object} config1
 * @param {Object} config2
 *
 * @returns {Object} New object resulting from merging config2 to config1
 */function uz(e,t){// eslint-disable-next-line no-param-reassign
t=t||{};const r={};function n(e,t,r,n){if(lK.isPlainObject(e)&&lK.isPlainObject(t)){return lK.merge.call({caseless:n},e,t)}else if(lK.isPlainObject(t)){return lK.merge({},t)}else if(lK.isArray(t)){return t.slice()}return t}// eslint-disable-next-line consistent-return
function i(e,t,r,i){if(!lK.isUndefined(t)){return n(e,t,r,i)}else if(!lK.isUndefined(e)){return n(undefined,e,r,i)}}// eslint-disable-next-line consistent-return
function a(e,t){if(!lK.isUndefined(t)){return n(undefined,t)}}// eslint-disable-next-line consistent-return
function o(e,t){if(!lK.isUndefined(t)){return n(undefined,t)}else if(!lK.isUndefined(e)){return n(undefined,e)}}// eslint-disable-next-line consistent-return
function s(r,i,a){if(a in t){return n(r,i)}else if(a in e){return n(undefined,r)}}const l={url:a,method:a,data:a,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:s,headers:(e,t,r)=>i(uW(e),uW(t),r,true)};lK.forEach(Object.keys({...e,...t}),function n(n){const a=l[n]||i;const o=a(e[n],t[n],n);lK.isUndefined(o)&&a!==s||(r[n]=o)});return r};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/resolveConfig.js
/* export default */const uG=e=>{const t=uz({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:i,xsrfCookieName:a,headers:o,auth:s}=t;t.headers=o=uC.from(o);t.url=l4(uV(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer);// HTTP basic authentication
if(s){o.set("Authorization","Basic "+btoa((s.username||"")+":"+(s.password?unescape(encodeURIComponent(s.password)):"")))}if(lK.isFormData(r)){if(us.hasStandardBrowserEnv||us.hasStandardBrowserWebWorkerEnv){o.setContentType(undefined);// browser handles it
}else if(lK.isFunction(r.getHeaders)){// Node.js FormData (like form-data package)
const e=r.getHeaders();// Only set safe headers to avoid overwriting security headers
const t=["content-type","content-length"];Object.entries(e).forEach(([e,r])=>{if(t.includes(e.toLowerCase())){o.set(e,r)}})}}// Add xsrf header
// This is only done if running in a standard browser environment.
// Specifically not if we're in a web worker, or react-native.
if(us.hasStandardBrowserEnv){n&&lK.isFunction(n)&&(n=n(t));if(n||n!==false&&uq(t.url)){// Add xsrf header
const e=i&&a&&uB.read(a);if(e){o.set(i,e)}}}return t};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/xhr.js
const uQ=typeof XMLHttpRequest!=="undefined";/* export default */const u$=uQ&&function(e){return new Promise(function t(t,r){const n=uG(e);let i=n.data;const a=uC.from(n.headers).normalize();let{responseType:o,onUploadProgress:s,onDownloadProgress:l}=n;let u;let c,d;let f,p;function h(){f&&f();// flush events
p&&p();// flush events
n.cancelToken&&n.cancelToken.unsubscribe(u);n.signal&&n.signal.removeEventListener("abort",u)}let v=new XMLHttpRequest;v.open(n.method.toUpperCase(),n.url,true);// Set the request timeout in MS
v.timeout=n.timeout;function g(){if(!v){return}// Prepare the response
const n=uC.from("getAllResponseHeaders"in v&&v.getAllResponseHeaders());const i=!o||o==="text"||o==="json"?v.responseText:v.response;const a={data:i,status:v.status,statusText:v.statusText,headers:n,config:e,request:v};uD(function e(e){t(e);h()},function e(e){r(e);h()},a);// Clean up request
v=null}if("onloadend"in v){// Use onloadend if available
v.onloadend=g}else{// Listen for ready state to emulate onloadend
v.onreadystatechange=function e(){if(!v||v.readyState!==4){return}// The request errored out and we didn't get a response, this will be
// handled by onerror instead
// With one exception: request that using file: protocol, most browsers
// will return status as 0 even though it's a successful request
if(v.status===0&&!(v.responseURL&&v.responseURL.indexOf("file:")===0)){return}// readystate handler is calling before onerror or ontimeout handlers,
// so we should call onloadend on the next 'tick'
setTimeout(g)}}// Handle browser request cancellation (as opposed to a manual cancellation)
v.onabort=function t(){if(!v){return}r(new lj("Request aborted",lj.ECONNABORTED,e,v));// Clean up request
v=null};// Handle low level network errors
v.onerror=function t(t){// Browsers deliver a ProgressEvent in XHR onerror
// (message may be empty; when present, surface it)
// See https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/error_event
const n=t&&t.message?t.message:"Network Error";const i=new lj(n,lj.ERR_NETWORK,e,v);// attach the underlying event for consumers who want details
i.event=t||null;r(i);v=null};// Handle timeout
v.ontimeout=function t(){let t=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded";const i=n.transitional||l8;if(n.timeoutErrorMessage){t=n.timeoutErrorMessage}r(new lj(t,i.clarifyTimeoutError?lj.ETIMEDOUT:lj.ECONNABORTED,e,v));// Clean up request
v=null};// Remove Content-Type if data is undefined
i===undefined&&a.setContentType(null);// Add headers to the request
if("setRequestHeader"in v){lK.forEach(a.toJSON(),function e(e,t){v.setRequestHeader(t,e)})}// Add withCredentials to request if needed
if(!lK.isUndefined(n.withCredentials)){v.withCredentials=!!n.withCredentials}// Add responseType to request if needed
if(o&&o!=="json"){v.responseType=n.responseType}// Handle progress if needed
if(l){[d,p]=uN(l,true);v.addEventListener("progress",d)}// Not all browsers support upload events
if(s&&v.upload){[c,f]=uN(s);v.upload.addEventListener("progress",c);v.upload.addEventListener("loadend",f)}if(n.cancelToken||n.signal){// Handle cancellation
// eslint-disable-next-line func-names
u=t=>{if(!v){return}r(!t||t.type?new uO(null,e,v):t);v.abort();v=null};n.cancelToken&&n.cancelToken.subscribe(u);if(n.signal){n.signal.aborted?u():n.signal.addEventListener("abort",u)}}const m=uF(n.url);if(m&&us.protocols.indexOf(m)===-1){r(new lj("Unsupported protocol "+m+":",lj.ERR_BAD_REQUEST,e));return}// Send the request
v.send(i||null)})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/composeSignals.js
const uX=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let r=new AbortController;let n;const i=function(e){if(!n){n=true;o();const t=e instanceof Error?e:this.reason;r.abort(t instanceof lj?t:new uO(t instanceof Error?t.message:t))}};let a=t&&setTimeout(()=>{a=null;i(new lj(`timeout ${t} of ms exceeded`,lj.ETIMEDOUT))},t);const o=()=>{if(e){a&&clearTimeout(a);a=null;e.forEach(e=>{e.unsubscribe?e.unsubscribe(i):e.removeEventListener("abort",i)});e=null}};e.forEach(e=>e.addEventListener("abort",i));const{signal:s}=r;s.unsubscribe=()=>lK.asap(o);return s}};/* export default */const uJ=uX;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/trackStream.js
const uZ=function*(e,t){let r=e.byteLength;if(!t||r<t){yield e;return}let n=0;let i;while(n<r){i=n+t;yield e.slice(n,i);n=i}};const u0=async function*(e,t){for await(const r of u1(e)){yield*uZ(r,t)}};const u1=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:e,value:r}=await t.read();if(e){break}yield r}}finally{await t.cancel()}};const u2=(e,t,r,n)=>{const i=u0(e,t);let a=0;let o;let s=e=>{if(!o){o=true;n&&n(e)}};return new ReadableStream({async pull(e){try{const{done:t,value:n}=await i.next();if(t){s();e.close();return}let o=n.byteLength;if(r){let e=a+=o;r(e)}e.enqueue(new Uint8Array(n))}catch(e){s(e);throw e}},cancel(e){s(e);return i.return()}},{highWaterMark:2})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/fetch.js
const u6=64*1024;const{isFunction:u4}=lK;const u5=(({Request:e,Response:t})=>({Request:e,Response:t}))(lK.global);const{ReadableStream:u3,TextEncoder:u8}=lK.global;const u9=(e,...t)=>{try{return!!e(...t)}catch(e){return false}};const u7=e=>{e=lK.merge.call({skipUndefined:true},u5,e);const{fetch:t,Request:r,Response:n}=e;const i=t?u4(t):typeof fetch==="function";const a=u4(r);const o=u4(n);if(!i){return false}const s=i&&u4(u3);const l=i&&(typeof u8==="function"?(e=>t=>e.encode(t))(new u8):async e=>new Uint8Array(await new r(e).arrayBuffer()));const u=a&&s&&u9(()=>{let e=false;const t=new r(us.origin,{body:new u3,method:"POST",get duplex(){e=true;return"half"}}).headers.has("Content-Type");return e&&!t});const c=o&&s&&u9(()=>lK.isReadableStream(new n("").body));const d={stream:c&&(e=>e.body)};i&&(()=>{["text","arrayBuffer","blob","formData","stream"].forEach(e=>{!d[e]&&(d[e]=(t,r)=>{let n=t&&t[e];if(n){return n.call(t)}throw new lj(`Response type '${e}' is not supported`,lj.ERR_NOT_SUPPORT,r)})})})();const f=async e=>{if(e==null){return 0}if(lK.isBlob(e)){return e.size}if(lK.isSpecCompliantForm(e)){const t=new r(us.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}if(lK.isArrayBufferView(e)||lK.isArrayBuffer(e)){return e.byteLength}if(lK.isURLSearchParams(e)){e=e+""}if(lK.isString(e)){return(await l(e)).byteLength}};const p=async(e,t)=>{const r=lK.toFiniteNumber(e.getContentLength());return r==null?f(t):r};return async e=>{let{url:i,method:o,data:s,signal:l,cancelToken:f,timeout:h,onDownloadProgress:v,onUploadProgress:g,responseType:m,headers:b,withCredentials:_="same-origin",fetchOptions:y}=uG(e);let w=t||fetch;m=m?(m+"").toLowerCase():"text";let x=uJ([l,f&&f.toAbortSignal()],h);let A=null;const E=x&&x.unsubscribe&&(()=>{x.unsubscribe()});let k;try{if(g&&u&&o!=="get"&&o!=="head"&&(k=await p(b,s))!==0){let e=new r(i,{method:"POST",body:s,duplex:"half"});let t;if(lK.isFormData(s)&&(t=e.headers.get("content-type"))){b.setContentType(t)}if(e.body){const[t,r]=uL(k,uN(uK(g)));s=u2(e.body,u6,t,r)}}if(!lK.isString(_)){_=_?"include":"omit"}// Cloudflare Workers throws when credentials are defined
// see https://github.com/cloudflare/workerd/issues/902
const t=a&&"credentials"in r.prototype;const l={...y,signal:x,method:o.toUpperCase(),headers:b.normalize().toJSON(),body:s,duplex:"half",credentials:t?_:undefined};A=a&&new r(i,l);let f=await (a?w(A,y):w(i,l));const h=c&&(m==="stream"||m==="response");if(c&&(v||h&&E)){const e={};["status","statusText","headers"].forEach(t=>{e[t]=f[t]});const t=lK.toFiniteNumber(f.headers.get("content-length"));const[r,i]=v&&uL(t,uN(uK(v),true))||[];f=new n(u2(f.body,u6,r,()=>{i&&i();E&&E()}),e)}m=m||"text";let I=await d[lK.findKey(d,m)||"text"](f,e);!h&&E&&E();return await new Promise((t,r)=>{uD(t,r,{data:I,headers:uC.from(f.headers),status:f.status,statusText:f.statusText,config:e,request:A})})}catch(t){E&&E();if(t&&t.name==="TypeError"&&/Load failed|fetch/i.test(t.message)){throw Object.assign(new lj("Network Error",lj.ERR_NETWORK,e,A),{cause:t.cause||t})}throw lj.from(t,t&&t.code,e,A)}}};const ce=new Map;const ct=e=>{let t=e&&e.env||{};const{fetch:r,Request:n,Response:i}=t;const a=[n,i,r];let o=a.length,s=o,l,u,c=ce;while(s--){l=a[s];u=c.get(l);u===undefined&&c.set(l,u=s?new Map:u7(t));c=u}return u};const cr=ct();/* export default */const cn=/* unused pure expression or super */null&&cr;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/adapters/adapters.js
/**
 * Known adapters mapping.
 * Provides environment-specific adapters for Axios:
 * - `http` for Node.js
 * - `xhr` for browsers
 * - `fetch` for fetch API-based requests
 * 
 * @type {Object<string, Function|Object>}
 */const ci={http:lV,xhr:u$,fetch:{get:ct}};// Assign adapter names for easier debugging and identification
lK.forEach(ci,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){// eslint-disable-next-line no-empty
}Object.defineProperty(e,"adapterName",{value:t})}});/**
 * Render a rejection reason string for unknown or unsupported adapters
 * 
 * @param {string} reason
 * @returns {string}
 */const ca=e=>`- ${e}`;/**
 * Check if the adapter is resolved (function, null, or false)
 * 
 * @param {Function|null|false} adapter
 * @returns {boolean}
 */const co=e=>lK.isFunction(e)||e===null||e===false;/**
 * Get the first suitable adapter from the provided list.
 * Tries each adapter in order until a supported one is found.
 * Throws an AxiosError if no adapter is suitable.
 * 
 * @param {Array<string|Function>|string|Function} adapters - Adapter(s) by name or function.
 * @param {Object} config - Axios request configuration
 * @throws {AxiosError} If no suitable adapter is available
 * @returns {Function} The resolved adapter function
 */function cs(e,t){e=lK.isArray(e)?e:[e];const{length:r}=e;let n;let i;const a={};for(let o=0;o<r;o++){n=e[o];let r;i=n;if(!co(n)){i=ci[(r=String(n)).toLowerCase()];if(i===undefined){throw new lj(`Unknown adapter '${r}'`)}}if(i&&(lK.isFunction(i)||(i=i.get(t)))){break}a[r||"#"+o]=i}if(!i){const e=Object.entries(a).map(([e,t])=>`adapter ${e} `+(t===false?"is not supported by the environment":"is not available in the build"));let t=r?e.length>1?"since :\n"+e.map(ca).join("\n"):" "+ca(e[0]):"as no adapter specified";throw new lj(`There is no suitable adapter to dispatch the request `+t,"ERR_NOT_SUPPORT")}return i}/**
 * Exports Axios adapters and utility to resolve an adapter
 *//* export default */const cl={/**
   * Resolve an adapter from a list of adapter names or functions.
   * @type {Function}
   */getAdapter:cs,/**
   * Exposes all known adapters
   * @type {Object<string, Function|Object>}
   */adapters:ci};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/dispatchRequest.js
/**
 * Throws a `CanceledError` if cancellation has been requested.
 *
 * @param {Object} config The config that is to be used for the request
 *
 * @returns {void}
 */function cu(e){if(e.cancelToken){e.cancelToken.throwIfRequested()}if(e.signal&&e.signal.aborted){throw new uO(null,e)}}/**
 * Dispatch a request to the server using the configured adapter.
 *
 * @param {object} config The config that is to be used for the request
 *
 * @returns {Promise} The Promise to be fulfilled
 */function cc(e){cu(e);e.headers=uC.from(e.headers);// Transform request data
e.data=uY.call(e,e.transformRequest);if(["post","put","patch"].indexOf(e.method)!==-1){e.headers.setContentType("application/x-www-form-urlencoded",false)}const t=cl.getAdapter(e.adapter||uv.adapter,e);return t(e).then(function t(t){cu(e);// Transform response data
t.data=uY.call(e,e.transformResponse,t);t.headers=uC.from(t.headers);return t},function t(t){if(!uS(t)){cu(e);// Transform response data
if(t&&t.response){t.response.data=uY.call(e,e.transformResponse,t.response);t.response.headers=uC.from(t.response.headers)}}return Promise.reject(t)})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/env/data.js
const cd="1.13.2";// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/validator.js
const cf={};// eslint-disable-next-line func-names
["object","boolean","number","function","string","symbol"].forEach((e,t)=>{cf[e]=function r(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const cp={};/**
 * Transitional option validator
 *
 * @param {function|boolean?} validator - set to false if the transitional option has been removed
 * @param {string?} version - deprecated version / removed since version
 * @param {string?} message - some message with additional info
 *
 * @returns {function}
 */cf.transitional=function e(e,t,r){function n(e,t){return"[Axios v"+cd+"] Transitional option '"+e+"'"+t+(r?". "+r:"")}// eslint-disable-next-line func-names
return(r,i,a)=>{if(e===false){throw new lj(n(i," has been removed"+(t?" in "+t:"")),lj.ERR_DEPRECATED)}if(t&&!cp[i]){cp[i]=true;// eslint-disable-next-line no-console
console.warn(n(i," has been deprecated since v"+t+" and will be removed in the near future"))}return e?e(r,i,a):true}};cf.spelling=function e(e){return(t,r)=>{// eslint-disable-next-line no-console
console.warn(`${r} is likely a misspelling of ${e}`);return true}};/**
 * Assert object's properties type
 *
 * @param {object} options
 * @param {object} schema
 * @param {boolean?} allowUnknown
 *
 * @returns {object}
 */function ch(e,t,r){if(typeof e!=="object"){throw new lj("options must be an object",lj.ERR_BAD_OPTION_VALUE)}const n=Object.keys(e);let i=n.length;while(i-- >0){const a=n[i];const o=t[a];if(o){const t=e[a];const r=t===undefined||o(t,a,e);if(r!==true){throw new lj("option "+a+" must be "+r,lj.ERR_BAD_OPTION_VALUE)}continue}if(r!==true){throw new lj("Unknown option "+a,lj.ERR_BAD_OPTION)}}}/* export default */const cv={assertOptions:ch,validators:cf};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/core/Axios.js
const cg=cv.validators;/**
 * Create a new instance of Axios
 *
 * @param {Object} instanceConfig The default config for the instance
 *
 * @return {Axios} A new instance of Axios
 */class cm{constructor(e){this.defaults=e||{};this.interceptors={request:new l3,response:new l3}}/**
   * Dispatch a request
   *
   * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)
   * @param {?Object} config
   *
   * @returns {Promise} The Promise to be fulfilled
   */async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;// slice off the Error: ... line
const r=t.stack?t.stack.replace(/^.+\n/,""):"";try{if(!e.stack){e.stack=r;// match without the 2 top stack lines
}else if(r&&!String(e.stack).endsWith(r.replace(/^.+\n.+\n/,""))){e.stack+="\n"+r}}catch(e){// ignore the case where "stack" is an un-writable property
}}throw e}}_request(e,t){/*eslint no-param-reassign:0*/// Allow for axios('example/url'[, config]) a la fetch API
if(typeof e==="string"){t=t||{};t.url=e}else{t=e||{}}t=uz(this.defaults,t);const{transitional:r,paramsSerializer:n,headers:i}=t;if(r!==undefined){cv.assertOptions(r,{silentJSONParsing:cg.transitional(cg.boolean),forcedJSONParsing:cg.transitional(cg.boolean),clarifyTimeoutError:cg.transitional(cg.boolean)},false)}if(n!=null){if(lK.isFunction(n)){t.paramsSerializer={serialize:n}}else{cv.assertOptions(n,{encode:cg.function,serialize:cg.function},true)}}// Set config.allowAbsoluteUrls
if(t.allowAbsoluteUrls!==undefined){// do nothing
}else if(this.defaults.allowAbsoluteUrls!==undefined){t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls}else{t.allowAbsoluteUrls=true}cv.assertOptions(t,{baseUrl:cg.spelling("baseURL"),withXsrfToken:cg.spelling("withXSRFToken")},true);// Set config.method
t.method=(t.method||this.defaults.method||"get").toLowerCase();// Flatten headers
let a=i&&lK.merge(i.common,i[t.method]);i&&lK.forEach(["delete","get","head","post","put","patch","common"],e=>{delete i[e]});t.headers=uC.concat(a,i);// filter out skipped interceptors
const o=[];let s=true;this.interceptors.request.forEach(function e(e){if(typeof e.runWhen==="function"&&e.runWhen(t)===false){return}s=s&&e.synchronous;o.unshift(e.fulfilled,e.rejected)});const l=[];this.interceptors.response.forEach(function e(e){l.push(e.fulfilled,e.rejected)});let u;let c=0;let d;if(!s){const e=[cc.bind(this),undefined];e.unshift(...o);e.push(...l);d=e.length;u=Promise.resolve(t);while(c<d){u=u.then(e[c++],e[c++])}return u}d=o.length;let f=t;while(c<d){const e=o[c++];const t=o[c++];try{f=e(f)}catch(e){t.call(this,e);break}}try{u=cc.call(this,f)}catch(e){return Promise.reject(e)}c=0;d=l.length;while(c<d){u=u.then(l[c++],l[c++])}return u}getUri(e){e=uz(this.defaults,e);const t=uV(e.baseURL,e.url,e.allowAbsoluteUrls);return l4(t,e.params,e.paramsSerializer)}}// Provide aliases for supported request methods
lK.forEach(["delete","get","head","options"],function e(e){/*eslint func-names:0*/cm.prototype[e]=function(t,r){return this.request(uz(r||{},{method:e,url:t,data:(r||{}).data}))}});lK.forEach(["post","put","patch"],function e(e){/*eslint func-names:0*/function t(t){return function r(r,n,i){return this.request(uz(i||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:r,data:n}))}}cm.prototype[e]=t();cm.prototype[e+"Form"]=t(true)});/* export default */const cb=cm;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/cancel/CancelToken.js
/**
 * A `CancelToken` is an object that can be used to request cancellation of an operation.
 *
 * @param {Function} executor The executor function.
 *
 * @returns {CancelToken}
 */class c_{constructor(e){if(typeof e!=="function"){throw new TypeError("executor must be a function.")}let t;this.promise=new Promise(function e(e){t=e});const r=this;// eslint-disable-next-line func-names
this.promise.then(e=>{if(!r._listeners)return;let t=r._listeners.length;while(t-- >0){r._listeners[t](e)}r._listeners=null});// eslint-disable-next-line func-names
this.promise.then=e=>{let t;// eslint-disable-next-line func-names
const n=new Promise(e=>{r.subscribe(e);t=e}).then(e);n.cancel=function e(){r.unsubscribe(t)};return n};e(function e(e,n,i){if(r.reason){// Cancellation has already been requested
return}r.reason=new uO(e,n,i);t(r.reason)})}/**
   * Throws a `CanceledError` if cancellation has been requested.
   */throwIfRequested(){if(this.reason){throw this.reason}}/**
   * Subscribe to the cancel signal
   */subscribe(e){if(this.reason){e(this.reason);return}if(this._listeners){this._listeners.push(e)}else{this._listeners=[e]}}/**
   * Unsubscribe from the cancel signal
   */unsubscribe(e){if(!this._listeners){return}const t=this._listeners.indexOf(e);if(t!==-1){this._listeners.splice(t,1)}}toAbortSignal(){const e=new AbortController;const t=t=>{e.abort(t)};this.subscribe(t);e.signal.unsubscribe=()=>this.unsubscribe(t);return e.signal}/**
   * Returns an object that contains a new `CancelToken` and a function that, when called,
   * cancels the `CancelToken`.
   */static source(){let e;const t=new c_(function t(t){e=t});return{token:t,cancel:e}}}/* export default */const cy=c_;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/spread.js
/**
 * Syntactic sugar for invoking a function and expanding an array for arguments.
 *
 * Common use case would be to use `Function.prototype.apply`.
 *
 *  ```js
 *  function f(x, y, z) {}
 *  var args = [1, 2, 3];
 *  f.apply(null, args);
 *  ```
 *
 * With `spread` this example can be re-written.
 *
 *  ```js
 *  spread(function(x, y, z) {})([1, 2, 3]);
 *  ```
 *
 * @param {Function} callback
 *
 * @returns {Function}
 */function cw(e){return function t(t){return e.apply(null,t)}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/isAxiosError.js
/**
 * Determines whether the payload is an error thrown by Axios
 *
 * @param {*} payload The value to test
 *
 * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false
 */function cx(e){return lK.isObject(e)&&e.isAxiosError===true};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/helpers/HttpStatusCode.js
const cA={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(cA).forEach(([e,t])=>{cA[t]=e});/* export default */const cE=cA;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/axios@1.13.2/node_modules/axios/lib/axios.js
/**
 * Create an instance of Axios
 *
 * @param {Object} defaultConfig The default config for the instance
 *
 * @returns {Axios} A new instance of Axios
 */function ck(e){const t=new cb(e);const r=sB(cb.prototype.request,t);// Copy axios.prototype to instance
lK.extend(r,cb.prototype,t,{allOwnKeys:true});// Copy context to instance
lK.extend(r,t,null,{allOwnKeys:true});// Factory for creating new instances
r.create=function t(t){return ck(uz(e,t))};return r}// Create the default instance to be exported
const cI=ck(uv);// Expose Axios class to allow class inheritance
cI.Axios=cb;// Expose Cancel & CancelToken
cI.CanceledError=uO;cI.CancelToken=cy;cI.isCancel=uS;cI.VERSION=cd;cI.toFormData=lJ;// Expose AxiosError class
cI.AxiosError=lj;// alias for CanceledError for backward compatibility
cI.Cancel=cI.CanceledError;// Expose all/spread
cI.all=function e(e){return Promise.all(e)};cI.spread=cw;// Expose isAxiosError
cI.isAxiosError=cx;// Expose mergeConfig
cI.mergeConfig=uz;cI.AxiosHeaders=uC;cI.formToJSON=e=>uf(lK.isHTMLForm(e)?new FormData(e):e);cI.getAdapter=cl.getAdapter;cI.HttpStatusCode=cE;cI.default=cI;// this module should only have a default export
/* export default */const cC=cI;// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/querystring@0.2.1/node_modules/querystring/index.js
var cY=r(9919);// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/config/config.ts
var cS=r(4336);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/form.ts
var cT=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return Object.keys(e).reduce((r,n)=>{var i=e[n];if(typeof i==="object"&&!isPrimitivesArray(i)&&!isFileOrBlob(i)){return _object_spread({},r,cT(_object_spread({},i),"".concat(t).concat(n,".")))}return _object_spread_props(_object_spread({},r),{["".concat(t).concat(n)]:i})},{})};var cO=(e,t)=>{var r=e;if(r.status===404||r.status===403||r.status===500){return{nonFieldErrors:["Unexpected error!"]}}var n=cT(t);var i=cT(r.data);var{non_field_errors:a}=i,o=_object_without_properties(i,["non_field_errors"]);var s=isStringArray(a)?a:[];for(var l of Object.keys(o)){if(!(l in n)){var u=i[l];if(isStringArray(u)){s.push(...u)}}}return{nonFieldErrors:s.map(translateBeErrorMessage),fieldErrors:Object.keys(i).filter(e=>e in n).reduce((e,t)=>{var r=i[t];if(isStringArray(r)){return _object_spread_props(_object_spread({},e),{[t]:r.map(translateBeErrorMessage)})}return e},{})}};var cD=(e,t,r)=>{if(!isAxiosError(e)||!e.response){throw e}var{fieldErrors:n,nonFieldErrors:i}=cO(e.response,r);if(i===null||i===void 0?void 0:i.length){t.setSubmitError(i[0])}if(n){for(var a of Object.keys(n)){var o=n[a];if(o.length>0){t.setError(a,{message:o[0]})}}}};var cF=(e,t)=>{return r=>_async_to_generator(function*(){e.setSubmitError(undefined);try{yield t(r)}catch(t){cD(t,e,r)}})()};var cP=(e,t)=>{var r=function(t){var r=e[t];if(Array.isArray(r)){r.forEach((e,r)=>{if((0,iK/* .isFileOrBlob */.$X)(e)||(0,iK/* .isString */.Kg)(e)){n.append("".concat(t,"[").concat(r,"]"),e)}else if((0,iK/* .isBoolean */.Lm)(e)||(0,iK/* .isNumber */.Et)(e)){n.append("".concat(t,"[").concat(r,"]"),e.toString())}else if(typeof e==="object"&&e!==null){n.append("".concat(t,"[").concat(r,"]"),JSON.stringify(e))}else{n.append("".concat(t,"[").concat(r,"]"),e)}})}else{if((0,iK/* .isFileOrBlob */.$X)(r)||(0,iK/* .isString */.Kg)(r)){n.append(t,r)}else if((0,iK/* .isBoolean */.Lm)(r)){n.append(t,r.toString())}else if((0,iK/* .isNumber */.Et)(r)){n.append(t,"".concat(r))}else if(typeof r==="object"&&r!==null){n.append(t,JSON.stringify(r))}else{n.append(t,r)}}};var n=new FormData;for(var i of Object.keys(e))r(i);n.append("_method",t.toUpperCase());return n};var cR=e=>{var t={};for(var r in e){var n=e[r];if(!(0,iK/* .isDefined */.O9)(n)){t[r]="null"}else if((0,iK/* .isBoolean */.Lm)(n)){t[r]=n===true?"true":"false"}else{t[r]=n}}return t};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/api.ts
cC.defaults.paramsSerializer=e=>{return cY.stringify(e)};var cH=cC.create({baseURL:cS/* ["default"].WP_API_BASE_URL */.A.WP_API_BASE_URL});cH.interceptors.request.use(e=>{var t;(t=e).headers||(t.headers={});e.headers["X-WP-Nonce"]=cS/* .tutorConfig.wp_rest_nonce */.P.wp_rest_nonce;if(e.method&&["post","put","patch"].includes(e.method.toLocaleLowerCase())){if(e.data){e.data=cP(e.data,e.method)}if(["put","patch"].includes(e.method.toLowerCase())){e.method="POST"}}if(e.params){e.params=cR(e.params)}if(e.method&&["get","delete"].includes(e.method.toLowerCase())){e.params=(0,ep._)((0,ef._)({},e.params),{_method:e.method})}return e},e=>{return Promise.reject(e)});cH.interceptors.response.use(e=>{return Promise.resolve(e).then(e=>e)});var cM=cC.create({baseURL:cS/* ["default"].WP_AJAX_BASE_URL */.A.WP_AJAX_BASE_URL});cM.interceptors.request.use(e=>{var t,r;(t=e).headers||(t.headers={});// config.headers['X-WP-Nonce'] = tutorConfig._tutor_nonce;
// We will use REST methods while using but wp ajax only sent via post method.
e.method="POST";if(e.params){e.params=cR(e.params)}(r=e).data||(r.data={});var n=cS/* .tutorConfig.nonce_key */.P.nonce_key;var i=cS/* .tutorConfig._tutor_nonce */.P._tutor_nonce;e.data=(0,ep._)((0,ef._)({},e.data,e.params),{action:e.url,[n]:i});e.data=cP(e.data,e.method);e.params={};e.url=undefined;return e},e=>Promise.reject(e));cM.interceptors.response.use(e=>Promise.resolve(e).then(e=>e.data));// CONCATENATED MODULE: ../tutor/assets/core/ts/utils/endpoints.ts
var cN={ADMIN_AJAX:"wp-admin/admin-ajax.php",TAGS:"course-tag",CATEGORIES:"course-category",USERS:"users",USERS_LIST:"tutor_user_list",ORDER_DETAILS:"tutor_order_details",ADMIN_COMMENT:"tutor_order_comment",ORDER_MARK_AS_PAID:"tutor_order_paid",ORDER_REFUND:"tutor_order_refund",ORDER_CANCEL:"tutor_order_cancel",ADD_ORDER_DISCOUNT:"tutor_order_discount",COURSE_LIST:"course_list",BUNDLE_LIST:"tutor_get_bundle_list",CATEGORY_LIST:"category_list",CREATED_COURSE:"tutor_create_course",TUTOR_INSTRUCTOR_SEARCH:"tutor_course_instructor_search",CREATE_DRAFT_COURSE:"tutor_create_new_draft_course",TUTOR_YOUTUBE_VIDEO_DURATION:"tutor_youtube_video_duration",TUTOR_UNLINK_PAGE_BUILDER:"tutor_unlink_page_builder",// AI CONTENT GENERATION
GENERATE_AI_IMAGE:"tutor_pro_generate_image",MAGIC_FILL_AI_IMAGE:"tutor_pro_magic_fill_image",MAGIC_TEXT_GENERATION:"tutor_pro_generate_text_content",MAGIC_AI_MODIFY_CONTENT:"tutor_pro_modify_text_content",USE_AI_GENERATED_IMAGE:"tutor_pro_use_magic_image",OPEN_AI_SAVE_SETTINGS:"tutor_pro_chatgpt_save_settings",GENERATE_COURSE_CONTENT:"tutor_pro_generate_course_content",GENERATE_COURSE_TOPIC_CONTENT:"tutor_pro_generate_course_topic_content",SAVE_AI_GENERATED_COURSE_CONTENT:"tutor_pro_ai_course_create",GENERATE_QUIZ_QUESTIONS:"tutor_pro_generate_quiz_questions",GENERATE_AI_QUIZ_QUESTIONS:"tutor_pro_ai_generate_questions",// SUBSCRIPTION
GET_SUBSCRIPTIONS_LIST:"tutor_subscription_plans",SAVE_SUBSCRIPTION:"tutor_subscription_plan_save",DELETE_SUBSCRIPTION:"tutor_subscription_plan_delete",DUPLICATE_SUBSCRIPTION:"tutor_subscription_plan_duplicate",SORT_SUBSCRIPTION:"tutor_subscription_plan_sort",UPDATE_SUBSCRIPTION_STATUS:"tutor_subscription_status_update",RESUME_SUBSCRIPTION:"tutor_subscription_resume",EARLY_RENEW_SUBSCRIPTION:"tutor_subscription_early_renew",// COURSE
GET_COURSE_DETAILS:"tutor_course_details",UPDATE_COURSE:"tutor_update_course",GET_COURSE_LIST:"tutor_course_list",RESET_COURSE_PROGRESS:"tutor_reset_course_progress",TUTOR_COMPLETE_COURSE:"tutor_complete_course",// WOO COMMERCE PRODUCTS
GET_WC_PRODUCTS:"tutor_get_wc_products",GET_WC_PRODUCT_DETAILS:"tutor_get_wc_product",// QUIZ
GET_QUIZ_DETAILS:"tutor_quiz_details",SAVE_QUIZ:"tutor_quiz_builder_save",QUIZ_IMPORT_DATA:"quiz_import_data",QUIZ_EXPORT_DATA:"quiz_export_data",DELETE_QUIZ:"tutor_quiz_delete",START_QUIZ:"tutor_start_quiz",QUIZ_ABANDON:"tutor_quiz_abandon",QUIZ_TIMEOUT:"tutor_quiz_timeout",QUIZ_ATTEMPT_SUBMIT:"tutor_answering_quiz_question",REVIEW_QUIZ_ANSWERS:"tutor_review_quiz_answers",INSTRUCTOR_FEEDBACK:"tutor_instructor_feedback",// ZOOM
GET_ZOOM_MEETING_DETAILS:"tutor_zoom_meeting_details",SAVE_ZOOM_MEETING:"tutor_zoom_save_meeting",DELETE_ZOOM_MEETING:"tutor_zoom_delete_meeting",ZOOM_SAVE_API:"tutor_save_zoom_api",ZOOM_SAVE_SETTINGS:"tutor_save_zoom_settings",// GOOGLE MEET
GET_GOOGLE_MEET_DETAILS:"tutor_google_meet_meeting_details",SAVE_GOOGLE_MEET:"tutor_google_meet_new_meeting",DELETE_GOOGLE_MEET:"tutor_google_meet_delete",UPLOAD_GOOGLE_MEET_CREDENTIALS:"tutor_pro_google_meet_credential_upload",RESET_GOOGLE_MEET_CREDENTIALS:"tutor_google_meet_reset_cred",UPDATE_GOOGLE_MEET_SETTINGS:"tutor_update_google_meet_settings",// TOPIC
GET_COURSE_CONTENTS:"tutor_course_contents",SAVE_TOPIC:"tutor_save_topic",DELETE_TOPIC:"tutor_delete_topic",DELETE_TOPIC_CONTENT:"tutor_delete_lesson",UPDATE_COURSE_CONTENT_ORDER:"tutor_update_course_content_order",DUPLICATE_CONTENT:"tutor_duplicate_content",ADD_CONTENT_BANK_CONTENT_TO_COURSE:"tutor_content_bank_add_content_to_course",DELETE_CONTENT_BANK_CONTENT_FROM_COURSE:"tutor_content_bank_remove_content_from_course",// LESSON
GET_LESSON_DETAILS:"tutor_lesson_details",SAVE_LESSON:"tutor_save_lesson",LOAD_LESSON_COMMENTS:"tutor_load_lesson_comments",CREATE_LESSON_COMMENT:"tutor_create_lesson_comment",UPDATE_LESSON_COMMENT:"tutor_update_lesson_comment",DELETE_LESSON_COMMENT:"tutor_delete_lesson_comment",REPLY_LESSON_COMMENT:"tutor_reply_lesson_comment",LOAD_COMMENT_REPLIES:"tutor_load_comment_replies",// Q&A
QNA_SINGLE_ACTION:"tutor_qna_single_action",DELETE_DASHBOARD_QNA:"tutor_delete_dashboard_question",CREATE_UPDATE_QNA:"tutor_qna_create_update",UPDATE_QNA:"tutor_qna_update",LOAD_QNA_REPLIES:"tutor_qna_load_replies",// ASSIGNMENT
GET_ASSIGNMENT_DETAILS:"tutor_assignment_details",SAVE_ASSIGNMENT:"tutor_assignment_save",ASSIGNMENT_SUBMIT:"tutor_assignment_submit",REMOVE_ATTACHMENT:"tutor_remove_assignment_attachment",REMOVE_ASSIGNMENT_ATTEMPT:"tutor_remove_assignment_attempt",// TAX SETTINGS
GET_TAX_SETTINGS:"tutor_get_tax_settings",GET_H5P_QUIZ_CONTENT:"tutor_h5p_list_quiz_contents",GET_H5P_LESSON_CONTENT:"tutor_h5p_list_lesson_contents",GET_H5P_QUIZ_CONTENT_BY_ID:"tutor_h5p_quiz_content_by_id",// PAYMENT SETTINGS
GET_PAYMENT_SETTINGS:"tutor_payment_settings",GET_PAYMENT_GATEWAYS:"tutor_payment_gateways",INSTALL_PAYMENT_GATEWAY:"tutor_install_payment_gateway",REMOVE_PAYMENT_GATEWAY:"tutor_remove_payment_gateway",// ADDON LIST
GET_ADDON_LIST:"tutor_get_all_addons",ADDON_ENABLE_DISABLE:"addon_enable_disable",// INSTALL PLUGIN
TUTOR_INSTALL_PLUGIN:"tutor_install_plugin",// COUPON
GET_COUPON_DETAILS:"tutor_coupon_details",CREATE_COUPON:"tutor_coupon_create",UPDATE_COUPON:"tutor_coupon_update",COUPON_APPLIES_TO:"tutor_coupon_applies_to_list",// ENROLLMENT
CREATE_ENROLLMENT:"tutor_enroll_bulk_student",GET_COURSE_BUNDLE_LIST:"tutor_course_bundle_list",GET_UNENROLLED_USERS:"tutor_unenrolled_users",// MEMBERSHIP
GET_MEMBERSHIP_PLANS:"tutor_membership_plans",SAVE_MEMBERSHIP_PLAN:"tutor_membership_plan_save",DUPLICATE_MEMBERSHIP_PLAN:"tutor_membership_plan_duplicate",DELETE_MEMBERSHIP_PLAN:"tutor_membership_plan_delete",// COURSE BUNDLE
GET_BUNDLE_DETAILS:"tutor_get_course_bundle_data",UPDATE_BUNDLE:"tutor_create_course_bundle",ADD_REMOVE_COURSE_TO_BUNDLE:"tutor_add_remove_course_to_bundle",// IMPORT EXPORT
GET_EXPORTABLE_CONTENT:"tutor_pro_exportable_contents",EXPORT_CONTENTS:"tutor_pro_export",EXPORT_SETTINGS_FREE:"tutor_export_settings",IMPORT_CONTENTS:"tutor_pro_import",IMPORT_SETTINGS_FREE:"tutor_import_settings",GET_IMPORT_EXPORT_HISTORY:"tutor_pro_export_import_history",DELETE_IMPORT_EXPORT_HISTORY:"tutor_pro_delete_export_import_history",// CONTENT BANK
GET_CONTENT_BANK_COLLECTIONS:"tutor_content_bank_collections",SAVE_CONTENT_BANK_COLLECTION:"tutor_content_bank_collection_save",DELETE_CONTENT_BANK_COLLECTION:"tutor_content_bank_collection_delete",GET_CONTENT_BANK_CONTENTS:"tutor_content_bank_contents",DELETE_CONTENT_BANK_CONTENTS:"tutor_content_bank_content_delete",GET_CONTENT_DETAILS:"tutor_pro_get_content_details",GET_CONTENT_BANK_LESSON_DETAILS:"tutor_content_bank_lesson_details",GET_CONTENT_BANK_ASSIGNMENT_DETAILS:"tutor_content_bank_assignment_details",SAVE_CONTENT_BANK_LESSON_CONTENT:"tutor_content_bank_lesson_save",SAVE_CONTENT_BANK_ASSIGNMENT_CONTENT:"tutor_content_bank_assignment_save",SAVE_QUESTION_CONTENT:"tutor_content_bank_question_save",GET_CONTENT_BANK_QUESTION_DETAILS:"tutor_content_bank_question_details",DUPLICATE_CONTENT_BANK_CONTENT:"tutor_content_bank_content_duplicate",MOVE_CONTENT_BANK_CONTENT:"tutor_content_bank_content_move",DUPLICATE_CONTENT_BANK_COLLECTION:"tutor_content_bank_collection_duplicate",IMPORT_FROM_COURSES:"tutor_content_bank_content_synchronize",// Calendar
GET_CALENDAR_EVENTS:"get_calendar_materials",// Announcement
CREATE_ANNOUNCEMENT:"tutor_announcement_create",DELETE_ANNOUNCEMENT:"tutor_announcement_delete",// Notifications
PUSH_NOTIFICATION_SAVE_SUBSCRIPTION:"tutor_pn_save_subscription",GET_ALL_NOTIFICATIONS:"tutor_get_all_notifications",MARK_ALL_NOTIFICATIONS_AS_READ:"toggle_all_notifications_status_as_read",MARK_SINGLE_NOTIFICATION_AS_READ:"toggle_single_notification_status_as_read",MARK_ALL_NOTIFICATIONS_AS_UNREAD:"tutor_mark_all_notifications_as_unread",//Reviews
PLACE_RATING:"tutor_place_rating",DELETE_REVIEW:"delete_tutor_review",CLEAR_REVIEW_POPUP_DATA:"tutor_clear_review_popup_data",// Settings
FETCH_COUNTRIES:"/assets/json/countries.json",UPLOAD_PROFILE_PHOTO:"tutor_user_photo_upload",REMOVE_PROFILE_PHOTO:"tutor_user_photo_remove",UPDATE_PROFILE:"tutor_update_profile",SAVE_SOCIAL_PROFILE:"tutor_social_profile",SAVE_BILLING_INFO:"tutor_save_billing_info",SAVE_WITHDRAW_METHOD:"tutor_save_withdraw_account",RESET_PASSWORD:"tutor_profile_password_reset",UPDATE_PROFILE_NOTIFICATION:"tutor_save_notification_preference",UPDATE_USER_PREFERENCES:"tutor_save_user_preferences",RESET_USER_PREFERENCES:"tutor_reset_user_preferences",REMOVE_DEVICE_MANUALLY:"tutor_remove_device_manually",REMOVE_ALL_ACTIVE_LOGINS:"tutor_remove_all_active_logins",// Withdrawals
MAKE_AN_WITHDRAW:"tutor_make_an_withdraw",// Certificate
VERIFY_CERTIFICATE:"tutor_verify_certificate",// Instructor Dashboard
SAVE_INSTRUCTOR_HOME_SECTIONS_ORDER:"tutor_save_instructor_home_sections_order",SAVE_INSTRUCTOR_HOME_SECTIONS_VISIBILITY:"tutor_save_instructor_home_sections_visibility",// Tour
COMPLETE_TOUR:"tutor_complete_tour"};/* export default */const cL=cN;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/content-bank.ts
var cK=e=>{return cM.get(cL.GET_CONTENT_BANK_COLLECTIONS,{params:e}).then(e=>e.data)};var cq=e=>{return sL({queryKey:["ContentBankCollections",e],queryFn:()=>cK((0,ef._)({},e)),placeholderData:e=>e,enabled:!!e.page&&!!e.per_page})};var cB=e=>{return sq({queryKey:["ContentBankCollectionsInfinity",e],queryFn:t=>{var{pageParam:r=1}=t;return cK((0,ep._)((0,ef._)({},e),{page:r}))},getNextPageParam:e=>e.current_page<e.total_page?e.current_page+1:undefined,initialPageParam:1,enabled:e.isEnabled&&!!e.per_page})};var cU=e=>{return cM.get(cL.GET_CONTENT_BANK_CONTENTS,{params:e}).then(e=>e.data)};var cj=e=>{return sL({queryFn:()=>cU(e),queryKey:["ContentBankContents",e],placeholderData:e=>e,enabled:!!e.collection_id})};var cV={"cb-lesson":(0,oM.__)("Lesson","tutor-pro"),"cb-assignment":(0,oM.__)("Assignment","tutor-pro"),"cb-question":(0,oM.__)("Question","tutor-pro")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/assets/images/empty-state.webp
const cW=r.p+"images/empty-state-d3d689b5.webp";// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/assets/images/empty-state-2x.webp
const cz=r.p+"images/empty-state-2x-1b8aa1e4.webp";// CONCATENATED MODULE: ./node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_async_to_generator.js
function cG(e,t,r,n,i,a,o){try{var s=e[a](o);var l=s.value}catch(e){r(e);return}if(s.done)t(l);else Promise.resolve(l).then(n,i)}function cQ(e){return function(){var t=this,r=arguments;return new Promise(function(n,i){var a=e.apply(t,r);function o(e){cG(a,n,i,o,s,"next",e)}function s(e){cG(a,n,i,o,s,"throw",e)}o(undefined)})}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/FocusTrap.tsx
var c$=e=>{var{children:t,blurPrevious:r=false}=e;var i=(0,n.useRef)(null);var a=(0,n.useRef)(null);(0,n.useEffect)(()=>{var e=i.current;if(!e){return}a.current=document.activeElement;if(r&&a.current&&a.current!==document.body){a.current.blur()}var t=e=>{if(!e||!e.isConnected){return false}var t=getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"&&!e.hidden&&e.offsetParent!==null};var n=()=>{var r='a[href], button, textarea, input, select, [tabindex]:not([tabindex="-1"])';return Array.from(e.querySelectorAll(r)).filter(e=>{return!e.hasAttribute("disabled")&&t(e)})};var o=()=>{var t=document.querySelectorAll('[data-focus-trap="true"]');return t.length>0&&t[t.length-1]===e};var s=t=>{if(!o()||t.key!=="Tab"){return}var r=n();if(r.length===0){return}var i=r[0];var a=r[r.length-1];var s=document.activeElement;if(!e.contains(s)&&document.body!==s){t.preventDefault();i.focus();return}if(t.shiftKey&&s===i){t.preventDefault();a.focus();return}if(!t.shiftKey&&s===a){t.preventDefault();i.focus();return}};document.addEventListener("keydown",s,true);return()=>{document.removeEventListener("keydown",s,true);if(a.current&&t(a.current)){a.current.focus()}};// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,n.cloneElement)(n.Children.only(t),{ref:i,"data-focus-trap":"true",tabIndex:-1})};/* export default */const cX=c$;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useScrollLock.ts
var cJ=null;var cZ=[];var c0=null;var c1=()=>{if(cJ!==null)return cJ;var e=document.createElement("div");e.style.visibility="hidden";e.style.overflow="scroll";e.style.width="100px";document.body.appendChild(e);var t=document.createElement("div");t.style.width="100%";e.appendChild(t);cJ=e.offsetWidth-t.offsetWidth;document.body.removeChild(e);return cJ};var c2=()=>{if(c0){return}var e=c1();var t=window.innerWidth>document.documentElement.clientWidth;c0={overflow:document.body.style.overflow,paddingRight:document.body.style.paddingRight};document.body.style.overflow="hidden";if(t&&e>0){var r=parseInt(window.getComputedStyle(document.body).paddingRight||"0",10);document.body.style.paddingRight="".concat(r+e,"px")}};var c6=()=>{if(!c0){return}document.body.style.overflow=c0.overflow;document.body.style.paddingRight=c0.paddingRight;c0=null};var c4=()=>{var e=Symbol("scroll-lock");cZ.push(e);if(cZ.length===1){c2()}return e};var c5=new Set;var c3=e=>{var t=cZ.indexOf(e);if(t===-1){return}cZ.splice(t,1);c5.delete(e);if(cZ.length===0&&c5.size===0){c6()}};var c8=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:true;var t=(0,n.useRef)(null);(0,n.useEffect)(()=>{if(!e){if(t.current){c3(t.current);t.current=null}return}t.current=c4();return()=>{if(t.current){var e=t.current;t.current=null;c5.add(e);requestAnimationFrame(()=>{c3(e)})}}},[e])};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/usePortalPopover.tsx
var c9={SAFE_MARGIN:12,MAX_OFFSET_VERTICAL:6,MAX_OFFSET_HORIZONTAL:12,CENTER_OFFSET:8};var c7=4;var de={TOP:"top",TOP_LEFT:"topLeft",TOP_RIGHT:"topRight",RIGHT:"right",RIGHT_TOP:"rightTop",RIGHT_BOTTOM:"rightBottom",BOTTOM:"bottom",BOTTOM_LEFT:"bottomLeft",BOTTOM_RIGHT:"bottomRight",LEFT:"left",LEFT_TOP:"leftTop",LEFT_BOTTOM:"leftBottom",MIDDLE:"middle",ABSOLUTE_CENTER:"absoluteCenter"};var dt=e=>{var t={[de.TOP]:de.TOP,[de.TOP_LEFT]:de.TOP_RIGHT,[de.TOP_RIGHT]:de.TOP_LEFT,[de.RIGHT]:de.LEFT,[de.RIGHT_TOP]:de.LEFT_TOP,[de.RIGHT_BOTTOM]:de.LEFT_BOTTOM,[de.BOTTOM]:de.BOTTOM,[de.BOTTOM_LEFT]:de.BOTTOM_RIGHT,[de.BOTTOM_RIGHT]:de.BOTTOM_LEFT,[de.LEFT]:de.RIGHT,[de.LEFT_TOP]:de.RIGHT_TOP,[de.LEFT_BOTTOM]:de.RIGHT_BOTTOM,[de.MIDDLE]:de.MIDDLE,[de.ABSOLUTE_CENTER]:de.ABSOLUTE_CENTER};return t[e]||e};var dr=e=>{return{top:e.top,left:-e.left}};var dn=(e,t)=>{var{width:r,height:n}=t;return{top:e.top<0,bottom:e.top+n>window.innerHeight,left:e.left<0,right:e.left+r>window.innerWidth}};var di=(e,t)=>{return e.startsWith("top")&&t.top||e.startsWith("bottom")&&t.bottom||e.startsWith("left")&&t.left||e.startsWith("right")&&t.right};var da=(e,t,r,n,i)=>{var{width:a,height:o}=r;var{top:s,left:l}=i;var u=t.left+t.width/2-a/2;var c=t.top+t.height/2-o/2;var d={[de.TOP]:{top:t.top-o-n,left:u},[de.TOP_LEFT]:{top:t.top-o-n,left:t.left},[de.TOP_RIGHT]:{top:t.top-o-n,left:t.right-a},[de.BOTTOM]:{top:t.bottom+n,left:u},[de.BOTTOM_LEFT]:{top:t.bottom+n,left:t.left},[de.BOTTOM_RIGHT]:{top:t.bottom+n,left:t.right-a},[de.LEFT]:{top:c,left:t.left-a-n},[de.LEFT_TOP]:{top:t.top,left:t.left-a-n},[de.LEFT_BOTTOM]:{top:t.bottom-o,left:t.left-a-n},[de.RIGHT]:{top:c,left:t.right+n},[de.RIGHT_TOP]:{top:t.top,left:t.right+n},[de.RIGHT_BOTTOM]:{top:t.bottom-o,left:t.right+n},[de.MIDDLE]:{top:c,left:u},[de.ABSOLUTE_CENTER]:{top:window.innerHeight/2-o/2,left:window.innerWidth/2-a/2}};var f=d[e]||d[de.BOTTOM];return{top:f.top+s,left:f.left+l}};var ds=(e,t,r,n,i,a)=>{var o={[de.TOP]:de.BOTTOM,[de.TOP_LEFT]:de.BOTTOM_LEFT,[de.TOP_RIGHT]:de.BOTTOM_RIGHT,[de.BOTTOM]:de.TOP,[de.BOTTOM_LEFT]:de.TOP_LEFT,[de.BOTTOM_RIGHT]:de.TOP_RIGHT,[de.LEFT]:de.RIGHT,[de.LEFT_TOP]:de.RIGHT_TOP,[de.LEFT_BOTTOM]:de.RIGHT_BOTTOM,[de.RIGHT]:de.LEFT,[de.RIGHT_TOP]:de.LEFT_TOP,[de.RIGHT_BOTTOM]:de.LEFT_BOTTOM,[de.MIDDLE]:de.MIDDLE,[de.ABSOLUTE_CENTER]:de.ABSOLUTE_CENTER};var s=dn(e,r);var l=di(t,s);if(!l){return{position:e,placement:t}}// Try opposite placement
var u=o[t];var c=da(u,n,r,i,a);var d=dn(c,r);var f=di(u,d);if(!f){return{position:c,placement:u}}return{position:e,placement:t}};var dl=(e,t,r,n)=>{var{width:i,height:a}=n;// Skip arrow for covered triggers or special placements
var o=[de.MIDDLE,de.ABSOLUTE_CENTER].includes(e);var s=r.left<t.left+c9.SAFE_MARGIN&&r.left+i>t.right-c9.SAFE_MARGIN&&r.top<t.top+c9.SAFE_MARGIN&&r.top+a>t.bottom-c9.SAFE_MARGIN;if(o||s)return{};var l=e.startsWith("top")||e.startsWith("bottom");var u=e.startsWith("left")||e.startsWith("right");if(l){var c=t.left+t.width/2;var d=Math.max(c9.SAFE_MARGIN,Math.min(i-c9.MAX_OFFSET_VERTICAL,c-r.left))-c9.CENTER_OFFSET;if(oI/* .isRTL */.V8){d=i-d-c9.CENTER_OFFSET*2}return{arrowLeft:d}}if(u){var f=t.top+t.height/2;var p=Math.max(c9.SAFE_MARGIN,Math.min(a-c9.MAX_OFFSET_HORIZONTAL,f-r.top))-c9.CENTER_OFFSET;return{arrowTop:p}}return{}};var du=function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:c7;var{width:n,height:i}=t;return{left:Math.max(r,Math.min(window.innerWidth-n-r,e.left)),top:Math.max(r,Math.min(window.innerHeight-i-r,e.top))}};var dc=e=>{var{isOpen:t,triggerRef:r,placement:i=de.BOTTOM,arrow:a=false,gap:o=10,autoAdjustOverflow:s=true,positionModifier:l={top:0,left:0},dependencies:u=[]}=e;var c=(0,n.useMemo)(()=>r||{current:null},[r]);var d=(0,n.useRef)(null);var[f,p]=(0,n.useState)(0);var[h,v]=(0,n.useState)({left:0,top:0,placement:de.BOTTOM});var g=(0,n.useMemo)(()=>{return oI/* .isRTL */.V8?dt(i):i},[i]);var m=(0,n.useMemo)(()=>{return oI/* .isRTL */.V8?dr(l):l},[l]);(0,n.useEffect)(()=>{if(!c.current)return;p(c.current.getBoundingClientRect().width)},[c]);(0,n.useEffect)(()=>{if(!t||!c.current||!d.current)return;var e=c.current.getBoundingClientRect();var r=d.current.getBoundingClientRect();var n={width:r.width||e.width,height:r.height};var i=da(g,e,n,o,m);var l=g;if(s){var u=ds(i,g,n,e,o,m);i=u.position;l=u.placement}i=du(i,n);var f=a?dl(l,e,i,n):{};v((0,ef._)((0,ep._)((0,ef._)({},i),{placement:l}),f))},[c,d,t,g,m,o,a,s,// eslint-disable-next-line react-hooks/exhaustive-deps
...u]);return{position:h,triggerWidth:f,triggerRef:c,popoverRef:d}};var dd=e=>{var{isOpen:r,children:i,onClickOutside:a,onEscape:o,animationType:s=iH.slideDown}=e;var{hasModalOnStack:l}=i7();c8(r);(0,n.useEffect)(()=>{var e=e=>{if(e.key==="Escape"){o===null||o===void 0?void 0:o()}};if(!r)return;document.addEventListener("keydown",e,true);return()=>{document.removeEventListener("keydown",e,true)}},[r,l,o]);var{transitions:u}=iN({data:r,animationType:s});return u((e,r)=>{if(!r){return null}return/*#__PURE__*/(0,is.createPortal)(/*#__PURE__*/(0,t/* .jsx */.Y)(iL,{css:df.wrapper,style:e,children:/*#__PURE__*/(0,t/* .jsx */.Y)(cX,{children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{className:"tutor-portal-popover",role:"presentation",children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:df.backdrop,onKeyUp:iq/* .noop */.lQ,onClick:e=>{e.stopPropagation();a===null||a===void 0?void 0:a()}}),i]})})}),document.body)})};var df={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:fixed;z-index:",iI/* .zIndex.highest */.fE.highest,";inset:0;"),backdrop:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.centeredFlex */.x.centeredFlex,";position:fixed;inset:0;z-index:",iI/* .zIndex.negative */.fE.negative,";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/molecules/Popover.tsx
function dp(){var e=(0,eh._)(["\n              border-left: 8px solid transparent;\n              border-right: 8px solid transparent;\n              border-top: 8px solid ",";\n              border-bottom: none;\n              left: ",";\n              bottom: -8px;\n              transform: ",";\n            "]);dp=function t(){return e};return e}function dh(){var e=(0,eh._)(["\n              border-left: 8px solid transparent;\n              border-right: 8px solid transparent;\n              border-bottom: 8px solid ",";\n              border-top: none;\n              left: ",";\n              top: -8px;\n              transform: ",";\n            "]);dh=function t(){return e};return e}function dv(){var e=(0,eh._)(["\n              border-top: 8px solid transparent;\n              border-bottom: 8px solid transparent;\n              border-left: 8px solid ",";\n              border-right: none;\n              right: -8px;\n              top: ",";\n              transform: ",";\n            "]);dv=function t(){return e};return e}function dg(){var e=(0,eh._)(["\n              border-top: 8px solid transparent;\n              border-bottom: 8px solid transparent;\n              border-right: 8px solid ",";\n              border-left: none;\n              left: -8px;\n              top: ",";\n              transform: ",";\n            "]);dg=function t(){return e};return e}function dm(){var e=(0,eh._)(["\n            content: '';\n            position: absolute;\n            width: 0;\n            height: 0;\n            border-color: transparent;\n            border-style: solid;\n            ","\n            ","\n            ","\n            ","\n          "]);dm=function t(){return e};return e}var db=e=>{var{children:r,placement:n=de.BOTTOM,triggerRef:i,isOpen:a,gap:o,maxWidth:s,closePopover:l,closeOnEscape:u=true,animationType:c=iH.slideLeft,arrow:d=false,border:f=false,autoAdjustOverflow:p=true,positionModifier:h={top:0,left:0},dependencies:v=[]}=e;var{position:g,triggerWidth:m,popoverRef:b}=dc({triggerRef:i,isOpen:a,autoAdjustOverflow:p,placement:n,arrow:d,gap:o,positionModifier:h,dependencies:v});return/*#__PURE__*/(0,t/* .jsx */.Y)(dd,{isOpen:a,onClickOutside:l,animationType:c,onEscape:u?l:undefined,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:d_.wrapper({placement:oI/* .isRTL */.V8?dt(g.placement):g.placement,hideArrow:!d||g.arrowLeft===undefined&&g.arrowTop===undefined,arrowLeft:g.arrowLeft,arrowTop:g.arrowTop}),style:{left:g.left,top:g.top,maxWidth:s!==null&&s!==void 0?s:m},ref:b,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:d_.content({border:f}),children:r})})})};var d_={wrapper:e=>{var{placement:t,hideArrow:r,arrowLeft:n,arrowTop:i}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;width:100%;z-index:",iI/* .zIndex.dropdown */.fE.dropdown,";&::before{",t&&!r?(0,u/* .css */.AH)(dm(),t.startsWith("top")&&(0,u/* .css */.AH)(dp(),iI/* .colorTokens.stroke.white */.I6.stroke.white,n!==undefined?"".concat(n,"px"):"50%",n===undefined?"translateX(-50%)":"none"),t.startsWith("bottom")&&(0,u/* .css */.AH)(dh(),iI/* .colorTokens.stroke.white */.I6.stroke.white,n!==undefined?"".concat(n,"px"):"50%",n===undefined?"translateX(-50%)":"none"),t.startsWith("left")&&(0,u/* .css */.AH)(dv(),iI/* .colorTokens.stroke.white */.I6.stroke.white,i!==undefined?"".concat(i,"px"):"50%",i===undefined?"translateY(-50%)":"none"),t.startsWith("right")&&(0,u/* .css */.AH)(dg(),iI/* .colorTokens.stroke.white */.I6.stroke.white,i!==undefined?"".concat(i,"px"):"50%",i===undefined?"translateY(-50%)":"none")):"","}")},content:e=>{var{border:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background.white */.I6.background.white,";box-shadow:",iI/* .shadow.popover */.r7.popover,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border:",t?"1px solid ".concat(iI/* .colorTokens.stroke.divider */.I6.stroke.divider):"none",";::-webkit-scrollbar{background-color:",iI/* .colorTokens.background.white */.I6.background.white,";width:10px;}::-webkit-scrollbar-thumb{background-color:",iI/* .colorTokens.action.secondary["default"] */.I6.action.secondary["default"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";}")}};/* export default */const dy=db;// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/assets/images/empty-state-content.webp
const dw=r.p+"images/empty-state-content-08ff97d3.webp";// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/assets/images/empty-state-content-2x.webp
const dx=r.p+"images/empty-state-content-2x-ce2b4891.webp";// CONCATENATED MODULE: external "wp.date"
const dA=wp.date;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/CheckBox.tsx
function dE(){var e=(0,eh._)(["\n      cursor: not-allowed;\n    "]);dE=function t(){return e};return e}function dk(){var e=(0,eh._)(["\n      color: ",";\n    "]);dk=function t(){return e};return e}function dI(){var e=(0,eh._)(["\n        margin-right: ",";\n      "]);dI=function t(){return e};return e}function dC(){var e=(0,eh._)(["\n        background-color: ",";\n      "]);dC=function t(){return e};return e}function dY(){var e=(0,eh._)(["\n      & + span::before {\n        background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='2' fill='none'%3E%3Crect width='10' height='1.5' y='.25' fill='%23fff' rx='.75'/%3E%3C/svg%3E\");\n        background-repeat: no-repeat;\n        background-size: 10px;\n        background-position: center center;\n        background-color: ",";\n        border: 0.5px solid ",";\n      }\n    "]);dY=function t(){return e};return e}function dS(){var e=(0,eh._)(["\n      & + span {\n        cursor: not-allowed;\n\n        &::before {\n          border-color: ",";\n        }\n      }\n    "]);dS=function t(){return e};return e}var dT=/*#__PURE__*/i().forwardRef((e,r)=>{var{id:n=(0,iq/* .nanoid */.Ak)(),name:a,labelCss:o,inputCss:s,label:l="",checked:u,value:c,disabled:d=false,onChange:f,onBlur:p,isIndeterminate:h=false}=e;var v=e=>{f===null||f===void 0?void 0:f(!h?e.target.checked:true,e)};var g=e=>{if(typeof e==="string"){return e}if(typeof e==="number"||typeof e==="boolean"||e===null){return String(e)}if(e===undefined){return""}if(/*#__PURE__*/i().isValidElement(e)){var t;var r=(t=e.props)===null||t===void 0?void 0:t.children;if(typeof r==="string"){return r}if(Array.isArray(r)){return r.map(e=>typeof e==="string"?e:"").filter(Boolean).join(" ")}}return""};return/*#__PURE__*/(0,t/* .jsxs */.FD)("label",{htmlFor:n,css:[dO.container({disabled:d}),o],children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},e),{ref:r,id:n,name:a,type:"checkbox",value:c,checked:!!u,disabled:d,"aria-invalid":e["aria-invalid"],onChange:v,onBlur:p,css:[s,dO.checkbox({label:!!l,isIndeterminate:h,disabled:d})]})),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:[dO.label({isDisabled:d}),o],title:g(l),children:l})]})});var dO={container:e=>{var{disabled:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;align-items:center;cursor:pointer;user-select:none;color:",iI/* .colorTokens.text.title */.I6.text.title,";",t&&(0,u/* .css */.AH)(dE()))},label:e=>{var{isDisabled:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.title */.I6.text.title,";",t&&(0,u/* .css */.AH)(dk(),iI/* .colorTokens.text.disable */.I6.text.disable))},checkbox:e=>{var{label:t,isIndeterminate:r,disabled:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;display:none !important;opacity:0 !important;height:0;width:0;& + span{position:relative;cursor:pointer;display:inline-flex;align-items:center;",t&&(0,u/* .css */.AH)(dI(),iI/* .spacing["10"] */.YK["10"]),"}& + span::before{content:'';background-color:",iI/* .colorTokens.background.white */.I6.background.white,";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:3px;width:20px;height:20px;}&:checked + span::before{background-image:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEyIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0wLjE2NTM0NCA0Ljg5OTQ2QzAuMTEzMjM1IDQuODQ0OTcgMC4wNzE3MzQ2IDQuNzgxMTUgMC4wNDI5ODg3IDQuNzExM0MtMC4wMTQzMjk2IDQuNTU1NjQgLTAuMDE0MzI5NiA0LjM4NDQ5IDAuMDQyOTg4NyA0LjIyODg0QzAuMDcxMTU0OSA0LjE1ODY4IDAuMTEyNzIzIDQuMDk0NzUgMC4xNjUzNDQgNC4wNDA2OEwxLjAzMzgyIDMuMjAzNkMxLjA4NDkzIDMuMTQzNCAxLjE0ODkgMy4wOTU1NyAxLjIyMDk2IDMuMDYzNjlDMS4yOTAzMiAzLjAzMjEzIDEuMzY1NTQgMy4wMTU2OSAxLjQ0MTY3IDMuMDE1NDRDMS41MjQxOCAzLjAxMzgzIDEuNjA2MDUgMy4wMzAyOSAxLjY4MTU5IDMuMDYzNjlDMS43NTYyNiAzLjA5NzA3IDEuODIzODYgMy4xNDQ1NyAxLjg4MDcxIDMuMjAzNkw0LjUwMDU1IDUuODQyNjhMMTAuMTI0MSAwLjE4ODIwNUMxMC4xNzk0IDAuMTI5NTQ0IDEwLjI0NTQgMC4wODIwNTQyIDEwLjMxODQgMC4wNDgyOTA4QzEwLjM5NDEgMC4wMTU0NjYxIDEwLjQ3NTkgLTAuMDAwOTcyMDU3IDEwLjU1ODMgNC40NDIyOGUtMDVDMTAuNjM1NyAwLjAwMDQ3NTMxOCAxMC43MTIxIDAuMDE3NDc5NSAxMC43ODI0IDAuMDQ5OTI0MkMxMC44NTI3IDAuMDgyMzY4OSAxMC45MTU0IDAuMTI5NTA5IDEwLjk2NjIgMC4xODgyMDVMMTEuODM0NyAxLjAzNzM0QzExLjg4NzMgMS4wOTE0MiAxMS45Mjg4IDEuMTU1MzQgMTEuOTU3IDEuMjI1NUMxMi4wMTQzIDEuMzgxMTYgMTIuMDE0MyAxLjU1MjMxIDExLjk1NyAxLjcwNzk2QzExLjkyODMgMS43Nzc4MSAxMS44ODY4IDEuODQxNjMgMTEuODM0NyAxLjg5NjEzTDQuOTIyOCA4LjgwOTgyQzQuODcxMjkgOC44NzAyMSA0LjgwNzQ3IDguOTE4NzUgNC43MzU2NiA4Ljk1MjE1QzQuNTgyMDIgOS4wMTU5NSA0LjQwOTQ5IDkuMDE1OTUgNC4yNTU4NCA4Ljk1MjE1QzQuMTg0MDQgOC45MTg3NSA0LjEyMDIyIDguODcwMjEgNC4wNjg3MSA4LjgwOTgyTDAuMTY1MzQ0IDQuODk5NDZaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K');background-repeat:no-repeat;background-size:10px 10px;background-position:center center;border-color:transparent;background-color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";",n&&(0,u/* .css */.AH)(dC(),iI/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"]),"}",r&&(0,u/* .css */.AH)(dY(),iI/* .colorTokens.brand.blue */.I6.brand.blue,iI/* .colorTokens.stroke.white */.I6.stroke.white)," ",n&&(0,u/* .css */.AH)(dS(),iI/* .colorTokens.stroke.disable */.I6.stroke.disable),"    &:focus-visible{& + span{border-radius:",iI/* .borderRadius["2"] */.Vq["2"],";outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}}")}};/* export default */const dD=dT;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Select.tsx
function dF(){var e=(0,eh._)(["\n      display: flex;\n      flex-direction: row;\n      align-items: center;\n      justify-content: space-between;\n\n      > div {\n        flex: 1;\n      }\n    "]);dF=function t(){return e};return e}function dP(){var e=(0,eh._)(["\n      flex: 1;\n    "]);dP=function t(){return e};return e}function dR(){var e=(0,eh._)(["\n        cursor: pointer;\n      "]);dR=function t(){return e};return e}function dH(){var e=(0,eh._)(["\n        height: 32px;\n      "]);dH=function t(){return e};return e}function dM(){var e=(0,eh._)(["\n        color: ",";\n\n        &:hover {\n          text-decoration: underline;\n        }\n      "]);dM=function t(){return e};return e}function dN(){var e=(0,eh._)(["\n      pointer-events: none;\n\n      > button {\n        color: ",";\n      }\n    "]);dN=function t(){return e};return e}function dL(){var e=(0,eh._)(["\n      > button {\n        ",";\n      }\n    "]);dL=function t(){return e};return e}function dK(){var e=(0,eh._)(["\n      background-color: ",";\n      position: relative;\n\n      &::before {\n        content: '';\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 3px;\n        height: 100%;\n        background-color: ",";\n        border-radius: 0 "," "," 0;\n      }\n    "]);dK=function t(){return e};return e}function dq(){var e=(0,eh._)(["\n      transform: rotate(180deg);\n    "]);dq=function t(){return e};return e}function dB(){var e=(0,eh._)(["\n      display: none;\n    "]);dB=function t(){return e};return e}var dU=20;var dj=e=>{var{options:r,onChange:i=iq/* .noop */.lQ,clearOption:a=iq/* .noop */.lQ,label:o,placeholder:s="",readOnly:l,isSearchable:u=false,isClearable:c=true,isInlineLabel:d=false,isFontWeight:f=false,value:p,caretSize:h=20,infiniteScroll:v=false,wrapperStyle:g,inputCss:m,disabled:b,size:_="regular",optionsStyleVariant:y="regular"}=e;var w=(0,iq/* .nanoid */.Ak)();var[x,A]=(0,n.useState)("");var[E,k]=(0,n.useState)("");var[I,C]=(0,n.useState)(false);var[Y,S]=(0,n.useState)([]);var T=(0,n.useRef)(null);var O=st(E);(0,n.useEffect)(()=>{var e;var t;var n=(t=(e=r.find(e=>String(e.value)===String(p===null||p===void 0?void 0:p.value)))===null||e===void 0?void 0:e.label)!==null&&t!==void 0?t:"";A(n)},[r,p]);var D=(0,n.useMemo)(()=>{S([]);if(u){return r.filter(e=>{var{label:t}=e;return t.toLowerCase().startsWith(O.toLowerCase())})}return r},[O,u,r]);var{intersectionEntry:F,intersectionElementRef:P}=sn();var R=D.length>Y.length;(0,n.useEffect)(()=>{if(!v){S(D);return}if(!(F===null||F===void 0?void 0:F.isIntersecting)||!R){return}var e=Y.length;var t=e+dU;S(r=>[...r,...D.slice(e,t)]);// eslint-disable-next-line react-hooks/exhaustive-deps
},[D,F===null||F===void 0?void 0:F.isIntersecting]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[dW.mainWrapper,g],children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:dW.inputLabelWrapper(d),ref:T,children:[!!o&&/*#__PURE__*/(0,t/* .jsx */.Y)("label",{htmlFor:w,css:dW.label(d),children:o}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[dW.inputWrapper,m],children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",{id:w,onClick:()=>C(e=>!e),css:dW.input({isSearchable:u,size:_}),autoComplete:"off",readOnly:l||!u,placeholder:s,value:x,onChange:e=>{A(e.target.value);k(e.target.value)},disabled:b,"data-select":true}),/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:dW.caretButton,onClick:()=>{C(e=>!e)},disabled:b||l||r.length===0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"chevronDown",width:h,height:h,style:dW.toggleIcon({isOpen:I})})})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)(dy,{triggerRef:T,isOpen:I,closePopover:()=>C(false),animationType:iH.slideDown,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("ul",{css:dW.options,children:[Y.map(e=>/*#__PURE__*/(0,t/* .jsx */.Y)("li",{css:dW.optionItem({isSelected:e.value===(p===null||p===void 0?void 0:p.value),optionsStyleVariant:y,isDisabled:!!e.disabled}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",buttonCss:dW.optionButton({fontWeight:f?e.value:"inherit"}),onClick:()=>{A(e.label);k("");i(e);C(false)},children:e.label})},String(e.value))),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{ref:P,css:dW.spinnerWrapper({isVisible:R}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{})})]}),c&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:dW.clearButton({isDisabled:x===""}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",disabled:x==="",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete"}),onClick:()=>{a();A("");k("");C(false)},children:(0,oM.__)("Clear","tutor-pro")})})]})]})};/* export default */const dV=dj;var dW={mainWrapper:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;"),inputLabelWrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("width:100%;display:flex;flex-direction:column;gap:",iI/* .spacing["4"] */.YK["4"],";",e&&(0,u/* .css */.AH)(dF())),label:e=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption()," ",e&&(0,u/* .css */.AH)(dP())),inputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;position:relative;"),input:e=>{var{isSearchable:t,size:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("&[data-select]{",iC/* .typography.body */.I.body(),";width:100%;height:40px;background-color:",iI/* .colorTokens.background.white */.I6.background.white,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";box-shadow:",iI/* .shadow.input */.r7.input,";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["32"] */.YK["32"]," ",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";appearance:textfield;transition:all 0.15s ease-in-out;",!t&&(0,u/* .css */.AH)(dR()),":focus{",oO/* .styleUtils.inputFocus */.x.inputFocus,";}:disabled{color:",iI/* .colorTokens.text.disable */.I6.text.disable,";cursor:not-allowed;}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";}",r==="small"&&(0,u/* .css */.AH)(dH()),"}")},clearButton:e=>{var{isDisabled:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";border-top:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";display:flex;justify-content:center;min-height:40px;& > button{padding:0;width:100%;font-size:",iI/* .fontSize["12"] */.J["12"],";> span{justify-content:center;}",!t&&(0,u/* .css */.AH)(dM(),iI/* .colorTokens.text.title */.I6.text.title),"}")},options:/*#__PURE__*/(0,u/* .css */.AH)("list-style-type:none;max-height:500px;padding:",iI/* .spacing["4"] */.YK["4"]," 0;margin:0;",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,";"),optionItem:e=>{var{isSelected:t=false,isDisabled:r=false,optionsStyleVariant:n="regular"}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:pointer;",r&&(0,u/* .css */.AH)(dN(),iI/* .colorTokens.text.disable */.I6.text.disable),"    &:hover{background-color:",iI/* .colorTokens.background.hover */.I6.background.hover,";}",n==="small"&&(0,u/* .css */.AH)(dL(),iC/* .typography.caption */.I.caption())," ",t&&(0,u/* .css */.AH)(dK(),iI/* .colorTokens.background.active */.I6.background.active,iI/* .colorTokens.brand.blue */.I6.brand.blue,iI/* .borderRadius["6"] */.Vq["6"],iI/* .borderRadius["6"] */.Vq["6"]))},optionButton:e=>{var{fontWeight:t="inherit"}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;justify-content:start;padding:",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["12"] */.YK["12"],";font-weight:",t,";color:",iI/* .colorTokens.text.title */.I6.text.title,";:hover{text-decoration:none;}:focus{box-shadow:none;}")},toggleIcon:e=>{var{isOpen:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";transition:transform 0.3s ease-in-out;",t&&(0,u/* .css */.AH)(dq()))},optionsContainer:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;overflow:hidden auto;min-width:16px;min-height:16px;max-width:calc(100% - 32px);max-height:calc(100% - 32px);"),caretButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";position:absolute;top:0;bottom:0;right:",iI/* .spacing["8"] */.YK["8"],";margin:auto 0;display:flex;align-items:center;"),spinnerWrapper:e=>{var{isVisible:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;display:flex;justify-content:center;align-items:center;",!t&&(0,u/* .css */.AH)(dB()))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/BasicModalWrapper.tsx
function dz(){var e=(0,eh._)(["\n      max-width: 100vw;\n      width: 100vw;\n      height: 95vh;\n    "]);dz=function t(){return e};return e}function dG(){var e=(0,eh._)(["\n      position: absolute;\n      right: ",";\n      top: ",";\n    "]);dG=function t(){return e};return e}function dQ(){var e=(0,eh._)(["\n      height: calc(100% - ","px);\n    "]);dQ=function t(){return e};return e}var d$=e=>{var{children:r,onClose:n,title:i,subtitle:a,icon:o,entireHeader:s,actions:u,fullScreen:c,modalStyle:d,maxWidth:f=oI/* .modal.BASIC_MODAL_MAX_WIDTH */.yl.BASIC_MODAL_MAX_WIDTH,isCloseAble:p=true,blurTriggerElement:h=true}=e;c8();return/*#__PURE__*/(0,t/* .jsx */.Y)(cX,{blurPrevious:h,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[dJ.container({isFullScreen:c}),d],style:{maxWidth:"".concat(f,"px")},children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:dJ.header({hasEntireHeader:!!s}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!s,fallback:s,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:dJ.headerContent,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:dJ.iconWithTitle,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:o,children:o}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i,children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:dJ.title,children:i})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:dJ.subtitle,children:a})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:dJ.actionsWrapper({hasEntireHeader:!!s}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:p,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{"data-cy":"close-modal",type:"button",css:dJ.closeButton,onClick:n,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"timesThin",width:24,height:24})})}),children:u})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:dJ.content({isFullScreen:c}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(l,{children:r})})]})})};/* export default */const dX=d$;var dJ={container:e=>{var{isFullScreen:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;background:",iI/* .colorTokens.background.white */.I6.background.white,";box-shadow:",iI/* .shadow.modal */.r7.modal,";border-radius:",iI/* .borderRadius["10"] */.Vq["10"],";overflow:hidden;top:50%;left:50%;transform:translate(-50%,-50%);",t&&(0,u/* .css */.AH)(dz())," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{width:90%;}")},header:e=>{var{hasEntireHeader:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;width:100%;height:",!t?"".concat(oI/* .modal.BASIC_MODAL_HEADER_HEIGHT */.yl.BASIC_MODAL_HEADER_HEIGHT,"px"):"auto",";background:",iI/* .colorTokens.background.white */.I6.background.white,";border-bottom:",!t?"1px solid ".concat(iI/* .colorTokens.stroke.divider */.I6.stroke.divider):"none",";padding-inline:",iI/* .spacing["16"] */.YK["16"],";")},headerContent:/*#__PURE__*/(0,u/* .css */.AH)("place-self:center start;display:inline-flex;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),iconWithTitle:/*#__PURE__*/(0,u/* .css */.AH)("display:inline-flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";"),subtitle:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1)," ",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),actionsWrapper:e=>{var{hasEntireHeader:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("place-self:center end;display:inline-flex;gap:",iI/* .spacing["16"] */.YK["16"],";",t&&(0,u/* .css */.AH)(dG(),iI/* .spacing["16"] */.YK["16"],iI/* .spacing["16"] */.YK["16"]))},closeButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";background:",iI/* .colorTokens.background.white */.I6.background.white,";&:focus,&:active,&:hover{background:",iI/* .colorTokens.background.white */.I6.background.white,";}svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";transition:color 0.3s ease-in-out;}:hover{svg{color:",iI/* .colorTokens.icon.hover */.I6.icon.hover,";}}:focus{box-shadow:",iI/* .shadow.focus */.r7.focus,";}"),content:e=>{var{isFullScreen:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background.white */.I6.background.white,";overflow-y:auto;max-height:90vh;",t&&(0,u/* .css */.AH)(dQ(),oI/* .modal.BASIC_MODAL_HEADER_HEIGHT */.yl.BASIC_MODAL_HEADER_HEIGHT))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/ConfirmationModal.tsx
var dZ=e=>{var{title:r,description:n,confirmButtonText:i,cancelButtonText:a,confirmButtonVariant:o,closeModal:s,onConfirm:l,isLoading:u=false,icon:c,maxWidth:d=460}=e;return/*#__PURE__*/(0,t/* .jsxs */.FD)(dX,{icon:c,onClose:()=>s({action:"CLOSE"}),title:r,maxWidth:d,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:d1.content,children:n!==null&&n!==void 0?n:(0,oM.__)("Once you perform this action this can’t be undone.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:d1.footerWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:()=>s({action:"CLOSE"}),size:"small",children:a!==null&&a!==void 0?a:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:o!==null&&o!==void 0?o:"danger",size:"small",loading:u,onClick:()=>{if(l){l()}else{s({action:"CONFIRM"})}},children:i!==null&&i!==void 0?i:(0,oM.__)("Delete","tutor-pro")})]})]})};/* export default */const d0=dZ;var d1={content:/*#__PURE__*/(0,u/* .css */.AH)("font-size:",iI/* .fontSize["14"] */.J["14"],";line-height:",iI/* .lineHeight["20"] */.K_["20"],";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding:",iI/* .spacing["20"] */.YK["20"],";"),footerWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:end;gap:",iI/* .spacing["8"] */.YK["8"],";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";box-shadow:",iI/* .shadow.dividerTop */.r7.dividerTop,";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/molecules/Paginator.tsx
var d2=e=>{var{currentPage:r,onPageChange:i,totalItems:a,itemsPerPage:o}=e;var s=Math.max(Math.ceil(a/o),1);var[l,u]=(0,n.useState)("");(0,n.useEffect)(()=>{u(r.toString())},[r]);var c=e=>{if(e<1||e>s){return}i(e)};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:d4.wrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:d4.pageStatus,children:[(0,oM.__)("Page","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:/*#__PURE__*/(0,t/* .jsx */.Y)("input",{type:"text",css:d4.paginationInput,value:l,onChange:e=>{var{value:t}=e.currentTarget;var r=t.replace(/[^0-9]/g,"");var n=Number(r);if(n>0&&n<=s){u(r);i(n)}else if(!r){u(r)}},autoComplete:"off"})}),(0,oM.__)("of","tutor-pro")," ",/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:s})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:d4.pageController,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:d4.paginationButton,onClick:()=>c(r-1),disabled:r===1,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:!oI/* .isRTL */.V8?"chevronLeft":"chevronRight",width:32,height:32})}),/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:d4.paginationButton,onClick:()=>c(r+1),disabled:r===s,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:!oI/* .isRTL */.V8?"chevronRight":"chevronLeft",width:32,height:32})})]})]})};/* export default */const d6=d2;var d4={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:end;align-items:center;flex-wrap:wrap;gap:",iI/* .spacing["8"] */.YK["8"],";height:36px;"),pageStatus:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),"    color:",iI/* .colorTokens.text.title */.I6.text.title,";min-width:100px;"),paginationInput:/*#__PURE__*/(0,u/* .css */.AH)("outline:0;border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";margin:0 ",iI/* .spacing["8"] */.YK["8"],";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding:8px 12px;width:72px;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:",iI/* .spacing["0"] */.YK["0"],";}&[type='number']{-moz-appearance:textfield;}"),pageController:/*#__PURE__*/(0,u/* .css */.AH)("gap:",iI/* .spacing["8"] */.YK["8"],";display:flex;justify-content:center;align-items:center;height:100%;"),paginationButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";background:",iI/* .colorTokens.background.white */.I6.background.white,";color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";height:32px;width:32px;display:grid;place-items:center;transition:background-color 0.2s ease-in-out,color 0.3s ease-in-out;svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}&:hover{background:",iI/* .colorTokens.background["default"] */.I6.background["default"],";& > svg{color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";}}&:disabled{background:",iI/* .colorTokens.background.white */.I6.background.white,";& > svg{color:",iI/* .colorTokens.icon.disable["default"] */.I6.icon.disable["default"],";}}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/molecules/Table.tsx
function d5(){var e=(0,eh._)(["\n      border: 1px solid ",";\n      border-radius: ",";\n    "]);d5=function t(){return e};return e}function d3(){var e=(0,eh._)(["\n      border-bottom: 1px solid ",";\n    "]);d3=function t(){return e};return e}function d8(){var e=(0,eh._)(["\n      &:nth-of-type(even) {\n        background-color: ",";\n      }\n    "]);d8=function t(){return e};return e}function d9(){var e=(0,eh._)(["\n        background-color: ",";\n      "]);d9=function t(){return e};return e}function d7(){var e=(0,eh._)(["\n        background-color: ",";\n      "]);d7=function t(){return e};return e}function fe(){var e=(0,eh._)(["\n        :last-of-type {\n          border-bottom: none;\n        }\n      "]);fe=function t(){return e};return e}var ft={bodyRowSelected:iI/* .colorTokens.background.active */.I6.background.active,bodyRowHover:iI/* .colorTokens.background.hover */.I6.background.hover};var fr=e=>{var{columns:r,data:n,entireHeader:i=null,headerHeight:a=60,noHeader:o=false,isStriped:s=false,isRounded:l=false,stripedBySelectedIndex:c=[],colors:d={},isBordered:f=true,loading:p=false,itemsPerPage:h=1,querySortProperties:v,querySortDirections:g={},onSortClick:m,renderInLastRow:b,rowStyle:_,sortIcons:y={asc:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"sortAsc",height:16,width:16}),desc:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"sortDesc",height:16,width:16})}}=e;var w=(e,n)=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("tr",{css:[fi.tableRow({isBordered:f,isStriped:s}),fi.bodyTr({colors:d,isSelected:c.includes(e),isRounded:l}),_],children:r.map((e,r)=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("td",{css:[fi.td,{width:e.width}],children:n(e)},r)})},e)};var x=e=>{var r=null;var n=e.sortProperty;if(!n){return e.Header}if(v===null||v===void 0?void 0:v.includes(n)){if((g===null||g===void 0?void 0:g[n])==="asc"){r=y.asc}else{r=y.desc}}return/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:fi.headerWithIcon,onClick:()=>m===null||m===void 0?void 0:m(n),children:[e.Header,r&&r]})};var A=()=>{if(i){return/*#__PURE__*/(0,t/* .jsx */.Y)("th",{css:fi.th,colSpan:r.length,children:i})}return r.map((e,r)=>{if(e.Header!==null){return/*#__PURE__*/(0,t/* .jsx */.Y)("th",{css:[fi.th,e.css,{width:e.width}],colSpan:e.headerColSpan,children:x(e)},r)}})};var E=()=>{if(p){return(0,iq/* .range */.y1)(h).map(e=>w(e,()=>/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,height:20,width:"".concat((0,iq/* .getRandom */.G0)(40,80),"%")})))}if(!n.length){return/*#__PURE__*/(0,t/* .jsx */.Y)("tr",{css:fi.tableRow({isBordered:false,isStriped:false}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("td",{colSpan:r.length,css:[fi.td,/*#__PURE__*/(0,u/* .css */.AH)("text-align:center;")],children:"No Data!"})})}var e=n.map((e,t)=>{return w(t,r=>{return"Cell"in r?r.Cell(e,t):r.accessor(e,t)})});if(b){b=/*#__PURE__*/(0,t/* .jsx */.Y)("tr",{children:/*#__PURE__*/(0,t/* .jsx */.Y)("td",{css:fi.td,children:b})},e.length);e.push(b)}return e};return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:fi.tableContainer({isRounded:l}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("table",{css:fi.table,children:[!o&&/*#__PURE__*/(0,t/* .jsx */.Y)("thead",{children:/*#__PURE__*/(0,t/* .jsx */.Y)("tr",{css:[fi.tableRow({isBordered:f,isStriped:s}),{height:a}],children:A()})}),/*#__PURE__*/(0,t/* .jsx */.Y)("tbody",{children:E()})]})})};/* export default */const fn=fr;var fi={tableContainer:e=>{var{isRounded:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:block;width:100%;overflow-x:auto;",t&&(0,u/* .css */.AH)(d5(),iI/* .colorTokens.stroke.divider */.I6.stroke.divider,iI/* .borderRadius["6"] */.Vq["6"]))},headerWithIcon:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";display:flex;gap:",iI/* .spacing["8"] */.YK["8"],";align-items:center;svg{color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}"),table:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;border-collapse:collapse;border:none;"),tableRow:e=>{var{isBordered:t,isStriped:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)(t&&(0,u/* .css */.AH)(d3(),iI/* .colorTokens.stroke.divider */.I6.stroke.divider)," ",r&&(0,u/* .css */.AH)(d8(),iI/* .colorTokens.background.active */.I6.background.active))},th:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";padding:0 ",iI/* .spacing["16"] */.YK["16"],";border:none;"),bodyTr:e=>{var{colors:t,isSelected:r,isRounded:n}=e;var{bodyRowDefault:i,bodyRowSelectedHover:a,bodyRowHover:o=ft.bodyRowHover,bodyRowSelected:s=ft.bodyRowSelected}=t;return/*#__PURE__*/(0,u/* .css */.AH)(i&&(0,u/* .css */.AH)(d9(),i),"      &:hover{background-color:",r&&a?a:o,";}",r&&(0,u/* .css */.AH)(d7(),s)," ",n&&(0,u/* .css */.AH)(fe()))},td:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";padding:",iI/* .spacing["16"] */.YK["16"],";border:none;")};// EXTERNAL MODULE: ../tutor/node_modules/.pnpm/polished@4.3.1/node_modules/polished/lib/color/rgba.js
var fa=r(8212);var fo=/*#__PURE__*/r.n(fa);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/molecules/ThreeDots.tsx
function fs(){var e=(0,eh._)(["\n      padding-block: ",";\n    "]);fs=function t(){return e};return e}function fl(){var e=(0,eh._)(["\n      padding: "," ",";\n      ",";\n    "]);fl=function t(){return e};return e}function fu(){var e=(0,eh._)(["\n      color: ",";\n      svg {\n        color: ",";\n      }\n\n      &:hover:not(:disabled) {\n        color: ",";\n        background-color: ",";\n\n        svg {\n          color: ",";\n        }\n      }\n\n      &:active {\n        color: ",";\n        background-color: ",";\n\n        svg {\n          color: ",";\n        }\n      }\n    "]);fu=function t(){return e};return e}function fc(){var e=(0,eh._)(["\n      background-color: ",";\n      svg {\n        color: ",";\n      }\n    "]);fc=function t(){return e};return e}function fd(){var e=(0,eh._)(["\n      background-color: ",";\n      :hover {\n        background-color: ",";\n        svg {\n          color: ",";\n        }\n      }\n    "]);fd=function t(){return e};return e}var ff=e=>{var{text:r,icon:n,onClick:i,onClosePopover:a,isTrash:o=false,size:s="medium",buttonCss:l,disabled:u}=e,c=(0,iY._)(e,["text","icon","onClick","onClosePopover","isTrash","size","buttonCss","disabled"]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("button",(0,ep._)((0,ef._)({type:"button",css:[fv.option({isTrash:o,size:s}),l],onClick:e=>{if(i){i(e)}if(a){a()}},disabled:u},c),{children:[n&&n,/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:r})]}))};var fp=e=>{var{onClick:r,isOpen:a,disabled:o=false,closePopover:s,placement:l=de.BOTTOM_RIGHT,children:u,animationType:c=iH.slideLeft,dotsOrientation:d="horizontal",maxWidth:f="148px",isInverse:p=false,arrow:h=false,size:v="medium",closeOnEscape:g=true,wrapperCss:m}=e,b=(0,iY._)(e,["onClick","isOpen","disabled","closePopover","placement","children","animationType","dotsOrientation","maxWidth","isInverse","arrow","size","closeOnEscape","wrapperCss"]);var _=(0,n.useRef)(null);return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({type:"button",ref:_,onClick:r,css:[fv.button({isOpen:a,isInverse:p,isDisabled:o}),m],disabled:o},b),{children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:d==="horizontal"?"threeDots":"threeDotsVertical",width:32,height:32})})),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{gap:13,maxWidth:f,placement:l,triggerRef:_,isOpen:a,closePopover:s,animationType:c,arrow:h,closeOnEscape:g,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:fv.wrapper({size:v}),children:i().Children.map(u,e=>{if(/*#__PURE__*/i().isValidElement(e)){var t={size:v};return /*#__PURE__*/i().cloneElement(e,t)}return e})})})]})};fp.Option=ff;/* export default */const fh=fp;var fv={wrapper:e=>{var{size:t="medium"}=e;return/*#__PURE__*/(0,u/* .css */.AH)("padding-block:",iI/* .spacing["8"] */.YK["8"],";position:relative;",t==="small"&&(0,u/* .css */.AH)(fs(),iI/* .spacing["4"] */.YK["4"]))},option:e=>{var{isTrash:t=false,size:r="medium"}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.body */.I.body(),";width:100%;padding:",iI/* .spacing["10"] */.YK["10"]," ",iI/* .spacing["20"] */.YK["20"],";transition:background-color 0.3s ease-in-out;cursor:pointer;display:flex;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";&:focus,&:active,&:hover{background:none;color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}svg{flex-shrink:0;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}",r==="small"&&(0,u/* .css */.AH)(fl(),iI/* .spacing["8"] */.YK["8"],iI/* .spacing["16"] */.YK["16"],iC/* .typography.small */.I.small("medium")),":hover:not(:disabled){background-color:",iI/* .colorTokens.background.hover */.I6.background.hover,";color:",iI/* .colorTokens.text.title */.I6.text.title,";svg{color:",iI/* .colorTokens.icon.hover */.I6.icon.hover,";filter:grayscale(0%);}}:disabled{cursor:not-allowed;color:",iI/* .colorTokens.text.disable */.I6.text.disable,";svg{color:",iI/* .colorTokens.icon.disable.background */.I6.icon.disable.background,";}}",t&&(0,u/* .css */.AH)(fu(),iI/* .colorTokens.text.error */.I6.text.error,iI/* .colorTokens.icon.error */.I6.icon.error,iI/* .colorTokens.text.error */.I6.text.error,fo()(iI/* .colorTokens.bg.error */.I6.bg.error,.1),iI/* .colorTokens.icon.error */.I6.icon.error,iI/* .colorTokens.text.error */.I6.text.error,iI/* .colorTokens.color.danger["40"] */.I6.color.danger["40"],iI/* .colorTokens.icon.error */.I6.icon.error),":focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:-4px;border-radius:",iI/* .borderRadius.input */.Vq.input,";}")},button:e=>{var{isOpen:t=false,isInverse:r=false,isDisabled:n=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";width:32px;height:32px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";display:flex;justify-content:center;align-items:center;transition:background-color 0.3s ease-in-out;svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";flex-shrink:0;}:hover{background-color:",iI/* .colorTokens.background.hover */.I6.background.hover,";svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}}&:focus,&:active{background:none;}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}",t&&(0,u/* .css */.AH)(fc(),iI/* .colorTokens.background.hover */.I6.background.hover,iI/* .colorTokens.icon.brand */.I6.icon.brand)," ",r&&(0,u/* .css */.AH)(fd(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.background.white */.I6.background.white,!n&&iI/* .colorTokens.icon.brand */.I6.icon.brand),":disabled{cursor:not-allowed;}")}};// CONCATENATED MODULE: ./node_modules/.pnpm/react-hook-form@7.67.0_react@18.3.1/node_modules/react-hook-form/dist/index.esm.mjs
var fg=e=>e.type==="checkbox";var fm=e=>e instanceof Date;var fb=e=>e==null;const f_=e=>typeof e==="object";var fy=e=>!fb(e)&&!Array.isArray(e)&&f_(e)&&!fm(e);var fw=e=>fy(e)&&e.target?fg(e.target)?e.target.checked:e.target.value:e;var fx=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e;var fA=(e,t)=>e.has(fx(t));var fE=e=>{const t=e.constructor&&e.constructor.prototype;return fy(t)&&t.hasOwnProperty("isPrototypeOf")};var fk=typeof window!=="undefined"&&typeof window.HTMLElement!=="undefined"&&typeof document!=="undefined";function fI(e){let t;const r=Array.isArray(e);const n=typeof FileList!=="undefined"?e instanceof FileList:false;if(e instanceof Date){t=new Date(e)}else if(!(fk&&(e instanceof Blob||n))&&(r||fy(e))){t=r?[]:Object.create(Object.getPrototypeOf(e));if(!r&&!fE(e)){t=e}else{for(const r in e){if(e.hasOwnProperty(r)){t[r]=fI(e[r])}}}}else{return e}return t}var fC=e=>/^\w*$/.test(e);var fY=e=>e===undefined;var fS=e=>Array.isArray(e)?e.filter(Boolean):[];var fT=e=>fS(e.replace(/["|']|\]/g,"").split(/\.|\[/));var fO=(e,t,r)=>{if(!t||!fy(e)){return r}const n=(fC(t)?[t]:fT(t)).reduce((e,t)=>fb(e)?e:e[t],e);return fY(n)||n===e?fY(e[t])?r:e[t]:n};var fD=e=>typeof e==="boolean";var fF=(e,t,r)=>{let n=-1;const i=fC(t)?[t]:fT(t);const a=i.length;const o=a-1;while(++n<a){const t=i[n];let a=r;if(n!==o){const r=e[t];a=fy(r)||Array.isArray(r)?r:!isNaN(+i[n+1])?[]:{}}if(t==="__proto__"||t==="constructor"||t==="prototype"){return}e[t]=a;e=e[t]}};const fP={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"};const fR={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"};const fH={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};const fM=n.createContext(null);fM.displayName="HookFormContext";/**
 * This custom hook allows you to access the form context. useFormContext is intended to be used in deeply nested structures, where it would become inconvenient to pass the context as a prop. To be used with {@link FormProvider}.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)
 *
 * @returns return all useForm methods
 *
 * @example
 * ```tsx
 * function App() {
 *   const methods = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   return (
 *     <FormProvider {...methods} >
 *       <form onSubmit={methods.handleSubmit(onSubmit)}>
 *         <NestedInput />
 *         <input type="submit" />
 *       </form>
 *     </FormProvider>
 *   );
 * }
 *
 *  function NestedInput() {
 *   const { register } = useFormContext(); // retrieve all hook methods
 *   return <input {...register("test")} />;
 * }
 * ```
 */const fN=()=>n.useContext(fM);/**
 * A provider component that propagates the `useForm` methods to all children components via [React Context](https://react.dev/reference/react/useContext) API. To be used with {@link useFormContext}.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)
 *
 * @param props - all useForm methods
 *
 * @example
 * ```tsx
 * function App() {
 *   const methods = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   return (
 *     <FormProvider {...methods} >
 *       <form onSubmit={methods.handleSubmit(onSubmit)}>
 *         <NestedInput />
 *         <input type="submit" />
 *       </form>
 *     </FormProvider>
 *   );
 * }
 *
 *  function NestedInput() {
 *   const { register } = useFormContext(); // retrieve all hook methods
 *   return <input {...register("test")} />;
 * }
 * ```
 */const fL=e=>{const{children:t,...r}=e;return n.createElement(fM.Provider,{value:r},t)};var fK=(e,t,r,n=true)=>{const i={defaultValues:t._defaultValues};for(const a in e){Object.defineProperty(i,a,{get:()=>{const i=a;if(t._proxyFormState[i]!==fR.all){t._proxyFormState[i]=!n||fR.all}r&&(r[i]=true);return e[i]}})}return i};const fq=typeof window!=="undefined"?n.useLayoutEffect:n.useEffect;/**
 * This custom hook allows you to subscribe to each form state, and isolate the re-render at the custom hook level. It has its scope in terms of form state subscription, so it would not affect other useFormState and useForm. Using this hook can reduce the re-render impact on large and complex form application.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformstate) • [Demo](https://codesandbox.io/s/useformstate-75xly)
 *
 * @param props - include options on specify fields to subscribe. {@link UseFormStateReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, handleSubmit, control } = useForm({
 *     defaultValues: {
 *     firstName: "firstName"
 *   }});
 *   const { dirtyFields } = useFormState({
 *     control
 *   });
 *   const onSubmit = (data) => console.log(data);
 *
 *   return (
 *     <form onSubmit={handleSubmit(onSubmit)}>
 *       <input {...register("firstName")} placeholder="First Name" />
 *       {dirtyFields.firstName && <p>Field is dirty.</p>}
 *       <input type="submit" />
 *     </form>
 *   );
 * }
 * ```
 */function fB(e){const t=fN();const{control:r=t.control,disabled:i,name:a,exact:o}=e||{};const[s,l]=n.useState(r._formState);const u=n.useRef({isDirty:false,isLoading:false,dirtyFields:false,touchedFields:false,validatingFields:false,isValidating:false,isValid:false,errors:false});fq(()=>r._subscribe({name:a,formState:u.current,exact:o,callback:e=>{!i&&l({...r._formState,...e})}}),[a,i,o]);n.useEffect(()=>{u.current.isValid&&r._setValid(true)},[r]);return n.useMemo(()=>fK(s,r,u.current,false),[s,r])}var fU=e=>typeof e==="string";var fj=(e,t,r,n,i)=>{if(fU(e)){n&&t.watch.add(e);return fO(r,e,i)}if(Array.isArray(e)){return e.map(e=>(n&&t.watch.add(e),fO(r,e)))}n&&(t.watchAll=true);return r};var fV=e=>fb(e)||!f_(e);function fW(e,t,r=new WeakSet){if(fV(e)||fV(t)){return Object.is(e,t)}if(fm(e)&&fm(t)){return e.getTime()===t.getTime()}const n=Object.keys(e);const i=Object.keys(t);if(n.length!==i.length){return false}if(r.has(e)||r.has(t)){return true}r.add(e);r.add(t);for(const a of n){const n=e[a];if(!i.includes(a)){return false}if(a!=="ref"){const e=t[a];if(fm(n)&&fm(e)||fy(n)&&fy(e)||Array.isArray(n)&&Array.isArray(e)?!fW(n,e,r):!Object.is(n,e)){return false}}}return true}/**
 * Custom hook to subscribe to field change and isolate re-rendering at the component level.
 *
 * @remarks
 *
 * [API](https://react-hook-form.com/docs/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)
 *
 * @example
 * ```tsx
 * const { control } = useForm();
 * const values = useWatch({
 *   name: "fieldName"
 *   control,
 * })
 * ```
 */function fz(e){const t=fN();const{control:r=t.control,name:i,defaultValue:a,disabled:o,exact:s,compute:l}=e||{};const u=n.useRef(a);const c=n.useRef(l);const d=n.useRef(undefined);const f=n.useRef(r);const p=n.useRef(i);c.current=l;const[h,v]=n.useState(()=>{const e=r._getWatch(i,u.current);return c.current?c.current(e):e});const g=n.useCallback(e=>{const t=fj(i,r._names,e||r._formValues,false,u.current);return c.current?c.current(t):t},[r._formValues,r._names,i]);const m=n.useCallback(e=>{if(!o){const t=fj(i,r._names,e||r._formValues,false,u.current);if(c.current){const e=c.current(t);if(!fW(e,d.current)){v(e);d.current=e}}else{v(t)}}},[r._formValues,r._names,o,i]);fq(()=>{if(f.current!==r||!fW(p.current,i)){f.current=r;p.current=i;m()}return r._subscribe({name:i,formState:{values:true},exact:s,callback:e=>{m(e.values)}})},[r,s,i,m]);n.useEffect(()=>r._removeUnmounted());// If name or control changed for this render, synchronously reflect the
// latest value so callers (like useController) see the correct value
// immediately on the same render.
// Optimize: Check control reference first before expensive deepEqual
const b=f.current!==r;const _=p.current;// Cache the computed output to avoid duplicate calls within the same render
// We include shouldReturnImmediate in deps to ensure proper recomputation
const y=n.useMemo(()=>{if(o){return null}const e=!b&&!fW(_,i);const t=b||e;return t?g():null},[o,b,i,_,g]);return y!==null?y:h}/**
 * Custom hook to work with controlled component, this function provide you with both form and field level state. Re-render is isolated at the hook level.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usecontroller) • [Demo](https://codesandbox.io/s/usecontroller-0o8px)
 *
 * @param props - the path name to the form field value, and validation rules.
 *
 * @returns field properties, field and form state. {@link UseControllerReturn}
 *
 * @example
 * ```tsx
 * function Input(props) {
 *   const { field, fieldState, formState } = useController(props);
 *   return (
 *     <div>
 *       <input {...field} placeholder={props.name} />
 *       <p>{fieldState.isTouched && "Touched"}</p>
 *       <p>{formState.isSubmitted ? "submitted" : ""}</p>
 *     </div>
 *   );
 * }
 * ```
 */function fG(e){const t=fN();const{name:r,disabled:i,control:a=t.control,shouldUnregister:o,defaultValue:s,exact:l=true}=e;const u=fA(a._names.array,r);const c=n.useMemo(()=>fO(a._formValues,r,fO(a._defaultValues,r,s)),[a,r,s]);const d=fz({control:a,name:r,defaultValue:c,exact:l});const f=fB({control:a,name:r,exact:l});const p=n.useRef(e);const h=n.useRef(undefined);const v=n.useRef(a.register(r,{...e.rules,value:d,...fD(e.disabled)?{disabled:e.disabled}:{}}));p.current=e;const g=n.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:true,get:()=>!!fO(f.errors,r)},isDirty:{enumerable:true,get:()=>!!fO(f.dirtyFields,r)},isTouched:{enumerable:true,get:()=>!!fO(f.touchedFields,r)},isValidating:{enumerable:true,get:()=>!!fO(f.validatingFields,r)},error:{enumerable:true,get:()=>fO(f.errors,r)}}),[f,r]);const m=n.useCallback(e=>v.current.onChange({target:{value:fw(e),name:r},type:fP.CHANGE}),[r]);const b=n.useCallback(()=>v.current.onBlur({target:{value:fO(a._formValues,r),name:r},type:fP.BLUR}),[r,a._formValues]);const _=n.useCallback(e=>{const t=fO(a._fields,r);if(t&&e){t._f.ref={focus:()=>e.focus&&e.focus(),select:()=>e.select&&e.select(),setCustomValidity:t=>e.setCustomValidity(t),reportValidity:()=>e.reportValidity()}}},[a._fields,r]);const y=n.useMemo(()=>({name:r,value:d,...fD(i)||f.disabled?{disabled:f.disabled||i}:{},onChange:m,onBlur:b,ref:_}),[r,i,f.disabled,m,b,_,d]);n.useEffect(()=>{const e=a._options.shouldUnregister||o;const t=h.current;if(t&&t!==r&&!u){a.unregister(t)}a.register(r,{...p.current.rules,...fD(p.current.disabled)?{disabled:p.current.disabled}:{}});const n=(e,t)=>{const r=fO(a._fields,e);if(r&&r._f){r._f.mount=t}};n(r,true);if(e){const e=fI(fO(a._options.defaultValues,r,p.current.defaultValue));fF(a._defaultValues,r,e);if(fY(fO(a._formValues,r))){fF(a._formValues,r,e)}}!u&&a.register(r);h.current=r;return()=>{(u?e&&!a._state.action:e)?a.unregister(r):n(r,false)}},[r,a,u,o]);n.useEffect(()=>{a._setDisabledField({disabled:i,name:r})},[i,r,a]);return n.useMemo(()=>({field:y,formState:f,fieldState:g}),[y,f,g])}/**
 * Component based on `useController` hook to work with controlled component.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usecontroller/controller) • [Demo](https://codesandbox.io/s/react-hook-form-v6-controller-ts-jwyzw) • [Video](https://www.youtube.com/watch?v=N2UNk_UCVyA)
 *
 * @param props - the path name to the form field value, and validation rules.
 *
 * @returns provide field handler functions, field and form state.
 *
 * @example
 * ```tsx
 * function App() {
 *   const { control } = useForm<FormValues>({
 *     defaultValues: {
 *       test: ""
 *     }
 *   });
 *
 *   return (
 *     <form>
 *       <Controller
 *         control={control}
 *         name="test"
 *         render={({ field: { onChange, onBlur, value, ref }, formState, fieldState }) => (
 *           <>
 *             <input
 *               onChange={onChange} // send value to hook form
 *               onBlur={onBlur} // notify when input is touched
 *               value={value} // return updated value
 *               ref={ref} // set ref for focus management
 *             />
 *             <p>{formState.isSubmitted ? "submitted" : ""}</p>
 *             <p>{fieldState.isTouched ? "touched" : ""}</p>
 *           </>
 *         )}
 *       />
 *     </form>
 *   );
 * }
 * ```
 */const fQ=e=>e.render(fG(e));const f$=e=>{const t={};for(const r of Object.keys(e)){if(f_(e[r])&&e[r]!==null){const n=f$(e[r]);for(const e of Object.keys(n)){t[`${r}.${e}`]=n[e]}}else{t[r]=e[r]}}return t};const fX="post";/**
 * Form component to manage submission.
 *
 * @param props - to setup submission detail. {@link FormProps}
 *
 * @returns form component or headless render prop.
 *
 * @example
 * ```tsx
 * function App() {
 *   const { control, formState: { errors } } = useForm();
 *
 *   return (
 *     <Form action="/api" control={control}>
 *       <input {...register("name")} />
 *       <p>{errors?.root?.server && 'Server error'}</p>
 *       <button>Submit</button>
 *     </Form>
 *   );
 * }
 * ```
 */function fJ(e){const t=fN();const[r,n]=React.useState(false);const{control:i=t.control,onSubmit:a,children:o,action:s,method:l=fX,headers:u,encType:c,onError:d,render:f,onSuccess:p,validateStatus:h,...v}=e;const g=async t=>{let r=false;let n="";await i.handleSubmit(async e=>{const o=new FormData;let f="";try{f=JSON.stringify(e)}catch(e){}const v=f$(i._formValues);for(const e in v){o.append(e,v[e])}if(a){await a({data:e,event:t,method:l,formData:o,formDataJson:f})}if(s){try{const e=[u&&u["Content-Type"],c].some(e=>e&&e.includes("json"));const t=await fetch(String(s),{method:l,headers:{...u,...c&&c!=="multipart/form-data"?{"Content-Type":c}:{}},body:e?f:o});if(t&&(h?!h(t.status):t.status<200||t.status>=300)){r=true;d&&d({response:t});n=String(t.status)}else{p&&p({response:t})}}catch(e){r=true;d&&d({error:e})}}})(t);if(r&&e.control){e.control._subjects.state.next({isSubmitSuccessful:false});e.control.setError("root.server",{type:n})}};React.useEffect(()=>{n(true)},[]);return f?React.createElement(React.Fragment,null,f({submit:g})):React.createElement("form",{noValidate:r,action:s,method:l,encType:c,onSubmit:g,...v},o)}var fZ=(e,t,r,n,i)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||true}}:{};var f0=e=>Array.isArray(e)?e:[e];var f1=()=>{let e=[];const t=t=>{for(const r of e){r.next&&r.next(t)}};const r=t=>{e.push(t);return{unsubscribe:()=>{e=e.filter(e=>e!==t)}}};const n=()=>{e=[]};return{get observers(){return e},next:t,subscribe:r,unsubscribe:n}};function f2(e,t){const r={};for(const n in e){if(e.hasOwnProperty(n)){const i=e[n];const a=t[n];if(i&&fy(i)&&a){const e=f2(i,a);if(fy(e)){r[n]=e}}else if(e[n]){r[n]=a}}}return r}var f6=e=>fy(e)&&!Object.keys(e).length;var f4=e=>e.type==="file";var f5=e=>typeof e==="function";var f3=e=>{if(!fk){return false}const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)};var f8=e=>e.type===`select-multiple`;var f9=e=>e.type==="radio";var f7=e=>f9(e)||fg(e);var pe=e=>f3(e)&&e.isConnected;function pt(e,t){const r=t.slice(0,-1).length;let n=0;while(n<r){e=fY(e)?n++:e[t[n++]]}return e}function pr(e){for(const t in e){if(e.hasOwnProperty(t)&&!fY(e[t])){return false}}return true}function pn(e,t){const r=Array.isArray(t)?t:fC(t)?[t]:fT(t);const n=r.length===1?e:pt(e,r);const i=r.length-1;const a=r[i];if(n){delete n[a]}if(i!==0&&(fy(n)&&f6(n)||Array.isArray(n)&&pr(n))){pn(e,r.slice(0,-1))}return e}var pi=e=>{for(const t in e){if(f5(e[t])){return true}}return false};function pa(e){return Array.isArray(e)||fy(e)&&!pi(e)}function po(e,t={}){for(const r in e){const n=e[r];if(pa(n)){t[r]=Array.isArray(n)?[]:{};po(n,t[r])}else if(!fY(n)){t[r]=true}}return t}function ps(e,t,r){if(!r){r=po(t)}for(const n in e){const i=e[n];if(pa(i)){if(fY(t)||fV(r[n])){r[n]=po(i,Array.isArray(i)?[]:{})}else{ps(i,fb(t)?{}:t[n],r[n])}}else{const e=t[n];r[n]=!fW(i,e)}}return r}const pl={value:false,isValid:false};const pu={value:true,isValid:true};var pc=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!fY(e[0].attributes.value)?fY(e[0].value)||e[0].value===""?pu:{value:e[0].value,isValid:true}:pu:pl}return pl};var pd=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>fY(e)?e:t?e===""?NaN:e?+e:e:r&&fU(e)?new Date(e):n?n(e):e;const pf={isValid:false,value:null};var pp=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:true,value:t.value}:e,pf):pf;function ph(e){const t=e.ref;if(f4(t)){return t.files}if(f9(t)){return pp(e.refs).value}if(f8(t)){return[...t.selectedOptions].map(({value:e})=>e)}if(fg(t)){return pc(e.refs).value}return pd(fY(t.value)?e.ref.value:t.value,e)}var pv=(e,t,r,n)=>{const i={};for(const r of e){const e=fO(t,r);e&&fF(i,r,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}};var pg=e=>e instanceof RegExp;var pm=e=>fY(e)?e:pg(e)?e.source:fy(e)?pg(e.value)?e.value.source:e.value:e;var pb=e=>({isOnSubmit:!e||e===fR.onSubmit,isOnBlur:e===fR.onBlur,isOnChange:e===fR.onChange,isOnAll:e===fR.all,isOnTouch:e===fR.onTouched});const p_="AsyncFunction";var py=e=>!!e&&!!e.validate&&!!(f5(e.validate)&&e.validate.constructor.name===p_||fy(e.validate)&&Object.values(e.validate).find(e=>e.constructor.name===p_));var pw=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);var px=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))));const pA=(e,t,r,n)=>{for(const i of r||Object.keys(e)){const r=fO(e,i);if(r){const{_f:e,...a}=r;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!n){return true}else if(e.ref&&t(e.ref,e.name)&&!n){return true}else{if(pA(a,t)){break}}}else if(fy(a)){if(pA(a,t)){break}}}}return};function pE(e,t,r){const n=fO(e,r);if(n||fC(r)){return{error:n,name:r}}const i=r.split(".");while(i.length){const n=i.join(".");const a=fO(t,n);const o=fO(e,n);if(a&&!Array.isArray(a)&&r!==n){return{name:r}}if(o&&o.type){return{name:n,error:o}}if(o&&o.root&&o.root.type){return{name:`${n}.root`,error:o.root}}i.pop()}return{name:r}}var pk=(e,t,r,n)=>{r(e);const{name:i,...a}=e;return f6(a)||Object.keys(a).length>=Object.keys(t).length||Object.keys(a).find(e=>t[e]===(!n||fR.all))};var pI=(e,t,r)=>!e||!t||e===t||f0(e).some(e=>e&&(r?e===t:e.startsWith(t)||t.startsWith(e)));var pC=(e,t,r,n,i)=>{if(i.isOnAll){return false}else if(!r&&i.isOnTouch){return!(t||e)}else if(r?n.isOnBlur:i.isOnBlur){return!e}else if(r?n.isOnChange:i.isOnChange){return e}return true};var pY=(e,t)=>!fS(fO(e,t)).length&&pn(e,t);var pS=(e,t,r)=>{const n=f0(fO(e,r));fF(n,"root",t[r]);fF(e,r,n);return e};function pT(e,t,r="validate"){if(fU(e)||Array.isArray(e)&&e.every(fU)||fD(e)&&!e){return{type:r,message:fU(e)?e:"",ref:t}}}var pO=e=>fy(e)&&!pg(e)?e:{value:e,message:""};var pD=async(e,t,r,n,i,a)=>{const{ref:o,refs:s,required:l,maxLength:u,minLength:c,min:d,max:f,pattern:p,validate:h,name:v,valueAsNumber:g,mount:m}=e._f;const b=fO(r,v);if(!m||t.has(v)){return{}}const _=s?s[0]:o;const y=e=>{if(i&&_.reportValidity){_.setCustomValidity(fD(e)?"":e||"");_.reportValidity()}};const w={};const x=f9(o);const A=fg(o);const E=x||A;const k=(g||f4(o))&&fY(o.value)&&fY(b)||f3(o)&&o.value===""||b===""||Array.isArray(b)&&!b.length;const I=fZ.bind(null,v,n,w);const C=(e,t,r,n=fH.maxLength,i=fH.minLength)=>{const a=e?t:r;w[v]={type:e?n:i,message:a,ref:o,...I(e?n:i,a)}};if(a?!Array.isArray(b)||!b.length:l&&(!E&&(k||fb(b))||fD(b)&&!b||A&&!pc(s).isValid||x&&!pp(s).isValid)){const{value:e,message:t}=fU(l)?{value:!!l,message:l}:pO(l);if(e){w[v]={type:fH.required,message:t,ref:_,...I(fH.required,t)};if(!n){y(t);return w}}}if(!k&&(!fb(d)||!fb(f))){let e;let t;const r=pO(f);const i=pO(d);if(!fb(b)&&!isNaN(b)){const n=o.valueAsNumber||(b?+b:b);if(!fb(r.value)){e=n>r.value}if(!fb(i.value)){t=n<i.value}}else{const n=o.valueAsDate||new Date(b);const a=e=>new Date(new Date().toDateString()+" "+e);const s=o.type=="time";const l=o.type=="week";if(fU(r.value)&&b){e=s?a(b)>a(r.value):l?b>r.value:n>new Date(r.value)}if(fU(i.value)&&b){t=s?a(b)<a(i.value):l?b<i.value:n<new Date(i.value)}}if(e||t){C(!!e,r.message,i.message,fH.max,fH.min);if(!n){y(w[v].message);return w}}}if((u||c)&&!k&&(fU(b)||a&&Array.isArray(b))){const e=pO(u);const t=pO(c);const r=!fb(e.value)&&b.length>+e.value;const i=!fb(t.value)&&b.length<+t.value;if(r||i){C(r,e.message,t.message);if(!n){y(w[v].message);return w}}}if(p&&!k&&fU(b)){const{value:e,message:t}=pO(p);if(pg(e)&&!b.match(e)){w[v]={type:fH.pattern,message:t,ref:o,...I(fH.pattern,t)};if(!n){y(t);return w}}}if(h){if(f5(h)){const e=await h(b,r);const t=pT(e,_);if(t){w[v]={...t,...I(fH.validate,t.message)};if(!n){y(t.message);return w}}}else if(fy(h)){let e={};for(const t in h){if(!f6(e)&&!n){break}const i=pT(await h[t](b,r),_,t);if(i){e={...i,...I(t,i.message)};y(i.message);if(n){w[v]=e}}}if(!f6(e)){w[v]={ref:_,...e};if(!n){return w}}}}y(true);return w};const pF={mode:fR.onSubmit,reValidateMode:fR.onChange,shouldFocusError:true};function pP(e={}){let t={...pF,...e};let r={submitCount:0,isDirty:false,isReady:false,isLoading:f5(t.defaultValues),isValidating:false,isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||false};let n={};let i=fy(t.defaultValues)||fy(t.values)?fI(t.defaultValues||t.values)||{}:{};let a=t.shouldUnregister?{}:fI(i);let o={action:false,mount:false,watch:false};let s={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set};let l;let u=0;const c={isDirty:false,dirtyFields:false,validatingFields:false,touchedFields:false,isValidating:false,isValid:false,errors:false};let d={...c};const f={array:f1(),state:f1()};const p=t.criteriaMode===fR.all;const h=e=>t=>{clearTimeout(u);u=setTimeout(e,t)};const v=async e=>{if(!t.disabled&&(c.isValid||d.isValid||e)){const e=t.resolver?f6((await A()).errors):await k(n,true);if(e!==r.isValid){f.state.next({isValid:e})}}};const g=(e,n)=>{if(!t.disabled&&(c.isValidating||c.validatingFields||d.isValidating||d.validatingFields)){(e||Array.from(s.mount)).forEach(e=>{if(e){n?fF(r.validatingFields,e,n):pn(r.validatingFields,e)}});f.state.next({validatingFields:r.validatingFields,isValidating:!f6(r.validatingFields)})}};const m=(e,s=[],l,u,p=true,h=true)=>{if(u&&l&&!t.disabled){o.action=true;if(h&&Array.isArray(fO(n,e))){const t=l(fO(n,e),u.argA,u.argB);p&&fF(n,e,t)}if(h&&Array.isArray(fO(r.errors,e))){const t=l(fO(r.errors,e),u.argA,u.argB);p&&fF(r.errors,e,t);pY(r.errors,e)}if((c.touchedFields||d.touchedFields)&&h&&Array.isArray(fO(r.touchedFields,e))){const t=l(fO(r.touchedFields,e),u.argA,u.argB);p&&fF(r.touchedFields,e,t)}if(c.dirtyFields||d.dirtyFields){r.dirtyFields=ps(i,a)}f.state.next({name:e,isDirty:C(e,s),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else{fF(a,e,s)}};const b=(e,t)=>{fF(r.errors,e,t);f.state.next({errors:r.errors})};const _=e=>{r.errors=e;f.state.next({errors:r.errors,isValid:false})};const y=(e,t,r,s)=>{const l=fO(n,e);if(l){const n=fO(a,e,fY(r)?fO(i,e):r);fY(n)||s&&s.defaultChecked||t?fF(a,e,t?n:ph(l._f)):T(e,n);o.mount&&!o.action&&v()}};const w=(e,n,a,o,s)=>{let l=false;let u=false;const p={name:e};if(!t.disabled){if(!a||o){if(c.isDirty||d.isDirty){u=r.isDirty;r.isDirty=p.isDirty=C();l=u!==p.isDirty}const t=fW(fO(i,e),n);u=!!fO(r.dirtyFields,e);t?pn(r.dirtyFields,e):fF(r.dirtyFields,e,true);p.dirtyFields=r.dirtyFields;l=l||(c.dirtyFields||d.dirtyFields)&&u!==!t}if(a){const t=fO(r.touchedFields,e);if(!t){fF(r.touchedFields,e,a);p.touchedFields=r.touchedFields;l=l||(c.touchedFields||d.touchedFields)&&t!==a}}l&&s&&f.state.next(p)}return l?p:{}};const x=(e,n,i,a)=>{const o=fO(r.errors,e);const s=(c.isValid||d.isValid)&&fD(n)&&r.isValid!==n;if(t.delayError&&i){l=h(()=>b(e,i));l(t.delayError)}else{clearTimeout(u);l=null;i?fF(r.errors,e,i):pn(r.errors,e)}if((i?!fW(o,i):o)||!f6(a)||s){const t={...a,...s&&fD(n)?{isValid:n}:{},errors:r.errors,name:e};r={...r,...t};f.state.next(t)}};const A=async e=>{g(e,true);const r=await t.resolver(a,t.context,pv(e||s.mount,n,t.criteriaMode,t.shouldUseNativeValidation));g(e);return r};const E=async e=>{const{errors:t}=await A(e);if(e){for(const n of e){const e=fO(t,n);e?fF(r.errors,n,e):pn(r.errors,n)}}else{r.errors=t}return t};const k=async(e,n,i={valid:true})=>{for(const o in e){const l=e[o];if(l){const{_f:e,...o}=l;if(e){const o=s.array.has(e.name);const u=l._f&&py(l._f);if(u&&c.validatingFields){g([e.name],true)}const d=await pD(l,s.disabled,a,p,t.shouldUseNativeValidation&&!n,o);if(u&&c.validatingFields){g([e.name])}if(d[e.name]){i.valid=false;if(n){break}}!n&&(fO(d,e.name)?o?pS(r.errors,d,e.name):fF(r.errors,e.name,d[e.name]):pn(r.errors,e.name))}!f6(o)&&await k(o,n,i)}}return i.valid};const I=()=>{for(const e of s.unMount){const t=fO(n,e);t&&(t._f.refs?t._f.refs.every(e=>!pe(e)):!pe(t._f.ref))&&U(e)}s.unMount=new Set};const C=(e,r)=>!t.disabled&&(e&&r&&fF(a,e,r),!fW(H(),i));const Y=(e,t,r)=>fj(e,s,{...o.mount?a:fY(t)?i:fU(e)?{[e]:t}:t},r,t);const S=e=>fS(fO(o.mount?a:i,e,t.shouldUnregister?fO(i,e,[]):[]));const T=(e,t,r={})=>{const i=fO(n,e);let o=t;if(i){const r=i._f;if(r){!r.disabled&&fF(a,e,pd(t,r));o=f3(r.ref)&&fb(t)?"":t;if(f8(r.ref)){[...r.ref.options].forEach(e=>e.selected=o.includes(e.value))}else if(r.refs){if(fg(r.ref)){r.refs.forEach(e=>{if(!e.defaultChecked||!e.disabled){if(Array.isArray(o)){e.checked=!!o.find(t=>t===e.value)}else{e.checked=o===e.value||!!o}}})}else{r.refs.forEach(e=>e.checked=e.value===o)}}else if(f4(r.ref)){r.ref.value=""}else{r.ref.value=o;if(!r.ref.type){f.state.next({name:e,values:fI(a)})}}}}(r.shouldDirty||r.shouldTouch)&&w(e,o,r.shouldTouch,r.shouldDirty,true);r.shouldValidate&&R(e)};const O=(e,t,r)=>{for(const i in t){if(!t.hasOwnProperty(i)){return}const a=t[i];const o=e+"."+i;const l=fO(n,o);(s.array.has(e)||fy(a)||l&&!l._f)&&!fm(a)?O(o,a,r):T(o,a,r)}};const D=(e,t,l={})=>{const u=fO(n,e);const p=s.array.has(e);const h=fI(t);fF(a,e,h);if(p){f.array.next({name:e,values:fI(a)});if((c.isDirty||c.dirtyFields||d.isDirty||d.dirtyFields)&&l.shouldDirty){f.state.next({name:e,dirtyFields:ps(i,a),isDirty:C(e,h)})}}else{u&&!u._f&&!fb(h)?O(e,h,l):T(e,h,l)}px(e,s)&&f.state.next({...r,name:e});f.state.next({name:o.mount?e:undefined,values:fI(a)})};const F=async e=>{o.mount=true;const i=e.target;let u=i.name;let h=true;const m=fO(n,u);const b=e=>{h=Number.isNaN(e)||fm(e)&&isNaN(e.getTime())||fW(e,fO(a,u,e))};const _=pb(t.mode);const y=pb(t.reValidateMode);if(m){let o;let E;const I=i.type?ph(m._f):fw(e);const C=e.type===fP.BLUR||e.type===fP.FOCUS_OUT;const Y=!pw(m._f)&&!t.resolver&&!fO(r.errors,u)&&!m._f.deps||pC(C,fO(r.touchedFields,u),r.isSubmitted,y,_);const S=px(u,s,C);fF(a,u,I);if(C){if(!i||!i.readOnly){m._f.onBlur&&m._f.onBlur(e);l&&l(0)}}else if(m._f.onChange){m._f.onChange(e)}const T=w(u,I,C);const O=!f6(T)||S;!C&&f.state.next({name:u,type:e.type,values:fI(a)});if(Y){if(c.isValid||d.isValid){if(t.mode==="onBlur"){if(C){v()}}else if(!C){v()}}return O&&f.state.next({name:u,...S?{}:T})}!C&&S&&f.state.next({...r});if(t.resolver){const{errors:e}=await A([u]);b(I);if(h){const t=pE(r.errors,n,u);const i=pE(e,n,t.name||u);o=i.error;u=i.name;E=f6(e)}}else{g([u],true);o=(await pD(m,s.disabled,a,p,t.shouldUseNativeValidation))[u];g([u]);b(I);if(h){if(o){E=false}else if(c.isValid||d.isValid){E=await k(n,true)}}}if(h){m._f.deps&&(!Array.isArray(m._f.deps)||m._f.deps.length>0)&&R(m._f.deps);x(u,E,o,T)}}};const P=(e,t)=>{if(fO(r.errors,t)&&e.focus){e.focus();return 1}return};const R=async(e,i={})=>{let a;let o;const l=f0(e);if(t.resolver){const t=await E(fY(e)?e:l);a=f6(t);o=e?!l.some(e=>fO(t,e)):a}else if(e){o=(await Promise.all(l.map(async e=>{const t=fO(n,e);return await k(t&&t._f?{[e]:t}:t)}))).every(Boolean);!(!o&&!r.isValid)&&v()}else{o=a=await k(n)}f.state.next({...!fU(e)||(c.isValid||d.isValid)&&a!==r.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:r.errors});i.shouldFocus&&!o&&pA(n,P,e?l:s.mount);return o};const H=(e,t)=>{let n={...o.mount?a:i};if(t){n=f2(t.dirtyFields?r.dirtyFields:r.touchedFields,n)}return fY(e)?n:fU(e)?fO(n,e):e.map(e=>fO(n,e))};const M=(e,t)=>({invalid:!!fO((t||r).errors,e),isDirty:!!fO((t||r).dirtyFields,e),error:fO((t||r).errors,e),isValidating:!!fO(r.validatingFields,e),isTouched:!!fO((t||r).touchedFields,e)});const N=e=>{e&&f0(e).forEach(e=>pn(r.errors,e));f.state.next({errors:e?r.errors:{}})};const L=(e,t,i)=>{const a=(fO(n,e,{_f:{}})._f||{}).ref;const o=fO(r.errors,e)||{};// Don't override existing error messages elsewhere in the object tree.
const{ref:s,message:l,type:u,...c}=o;fF(r.errors,e,{...c,...t,ref:a});f.state.next({name:e,errors:r.errors,isValid:false});i&&i.shouldFocus&&a&&a.focus&&a.focus()};const K=(e,t)=>f5(e)?f.state.subscribe({next:r=>"values"in r&&e(Y(undefined,t),r)}):Y(e,t,true);const q=e=>f.state.subscribe({next:t=>{if(pI(e.name,t.name,e.exact)&&pk(t,e.formState||c,Z,e.reRenderRoot)){e.callback({values:{...a},...r,...t,defaultValues:i})}}}).unsubscribe;const B=e=>{o.mount=true;d={...d,...e.formState};return q({...e,formState:d})};const U=(e,o={})=>{for(const l of e?f0(e):s.mount){s.mount.delete(l);s.array.delete(l);if(!o.keepValue){pn(n,l);pn(a,l)}!o.keepError&&pn(r.errors,l);!o.keepDirty&&pn(r.dirtyFields,l);!o.keepTouched&&pn(r.touchedFields,l);!o.keepIsValidating&&pn(r.validatingFields,l);!t.shouldUnregister&&!o.keepDefaultValue&&pn(i,l)}f.state.next({values:fI(a)});f.state.next({...r,...!o.keepDirty?{}:{isDirty:C()}});!o.keepIsValid&&v()};const j=({disabled:e,name:t})=>{if(fD(e)&&o.mount||!!e||s.disabled.has(t)){e?s.disabled.add(t):s.disabled.delete(t)}};const V=(e,r={})=>{let a=fO(n,e);const l=fD(r.disabled)||fD(t.disabled);fF(n,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:true,...r}});s.mount.add(e);if(a){j({disabled:fD(r.disabled)?r.disabled:t.disabled,name:e})}else{y(e,true,r.value)}return{...l?{disabled:r.disabled||t.disabled}:{},...t.progressive?{required:!!r.required,min:pm(r.min),max:pm(r.max),minLength:pm(r.minLength),maxLength:pm(r.maxLength),pattern:pm(r.pattern)}:{},name:e,onChange:F,onBlur:F,ref:l=>{if(l){V(e,r);a=fO(n,e);const t=fY(l.value)?l.querySelectorAll?l.querySelectorAll("input,select,textarea")[0]||l:l:l;const o=f7(t);const s=a._f.refs||[];if(o?s.find(e=>e===t):t===a._f.ref){return}fF(n,e,{_f:{...a._f,...o?{refs:[...s.filter(pe),t,...Array.isArray(fO(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}});y(e,false,undefined,t)}else{a=fO(n,e,{});if(a._f){a._f.mount=false}(t.shouldUnregister||r.shouldUnregister)&&!(fA(s.array,e)&&o.action)&&s.unMount.add(e)}}}};const W=()=>t.shouldFocusError&&pA(n,P,s.mount);const z=e=>{if(fD(e)){f.state.next({disabled:e});pA(n,(t,r)=>{const i=fO(n,r);if(i){t.disabled=i._f.disabled||e;if(Array.isArray(i._f.refs)){i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e})}}},0,false)}};const G=(e,i)=>async o=>{let l=undefined;if(o){o.preventDefault&&o.preventDefault();o.persist&&o.persist()}let u=fI(a);f.state.next({isSubmitting:true});if(t.resolver){const{errors:e,values:t}=await A();r.errors=e;u=fI(t)}else{await k(n)}if(s.disabled.size){for(const e of s.disabled){pn(u,e)}}pn(r.errors,"root");if(f6(r.errors)){f.state.next({errors:{}});try{await e(u,o)}catch(e){l=e}}else{if(i){await i({...r.errors},o)}W();setTimeout(W)}f.state.next({isSubmitted:true,isSubmitting:false,isSubmitSuccessful:f6(r.errors)&&!l,submitCount:r.submitCount+1,errors:r.errors});if(l){throw l}};const Q=(e,t={})=>{if(fO(n,e)){if(fY(t.defaultValue)){D(e,fI(fO(i,e)))}else{D(e,t.defaultValue);fF(i,e,fI(t.defaultValue))}if(!t.keepTouched){pn(r.touchedFields,e)}if(!t.keepDirty){pn(r.dirtyFields,e);r.isDirty=t.defaultValue?C(e,fI(fO(i,e))):C()}if(!t.keepError){pn(r.errors,e);c.isValid&&v()}f.state.next({...r})}};const $=(e,l={})=>{const u=e?fI(e):i;const d=fI(u);const p=f6(e);const h=p?i:d;if(!l.keepDefaultValues){i=u}if(!l.keepValues){if(l.keepDirtyValues){const e=new Set([...s.mount,...Object.keys(ps(i,a))]);for(const t of Array.from(e)){fO(r.dirtyFields,t)?fF(h,t,fO(a,t)):D(t,fO(h,t))}}else{if(fk&&fY(e)){for(const e of s.mount){const t=fO(n,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(f3(e)){const t=e.closest("form");if(t){t.reset();break}}}}}if(l.keepFieldsRef){for(const e of s.mount){D(e,fO(h,e))}}else{n={}}}a=t.shouldUnregister?l.keepDefaultValues?fI(i):{}:fI(h);f.array.next({values:{...h}});f.state.next({values:{...h}})}s={mount:l.keepDirtyValues?s.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:false,focus:""};o.mount=!c.isValid||!!l.keepIsValid||!!l.keepDirtyValues||!t.shouldUnregister&&!f6(h);o.watch=!!t.shouldUnregister;f.state.next({submitCount:l.keepSubmitCount?r.submitCount:0,isDirty:p?false:l.keepDirty?r.isDirty:!!(l.keepDefaultValues&&!fW(e,i)),isSubmitted:l.keepIsSubmitted?r.isSubmitted:false,dirtyFields:p?{}:l.keepDirtyValues?l.keepDefaultValues&&a?ps(i,a):r.dirtyFields:l.keepDefaultValues&&e?ps(i,e):l.keepDirty?r.dirtyFields:{},touchedFields:l.keepTouched?r.touchedFields:{},errors:l.keepErrors?r.errors:{},isSubmitSuccessful:l.keepIsSubmitSuccessful?r.isSubmitSuccessful:false,isSubmitting:false,defaultValues:i})};const X=(e,t)=>$(f5(e)?e(a):e,t);const J=(e,t={})=>{const r=fO(n,e);const i=r&&r._f;if(i){const e=i.refs?i.refs[0]:i.ref;if(e.focus){e.focus();t.shouldSelect&&f5(e.select)&&e.select()}}};const Z=e=>{r={...r,...e}};const ee=()=>f5(t.defaultValues)&&t.defaultValues().then(e=>{X(e,t.resetOptions);f.state.next({isLoading:false})});const et={control:{register:V,unregister:U,getFieldState:M,handleSubmit:G,setError:L,_subscribe:q,_runSchema:A,_focusError:W,_getWatch:Y,_getDirty:C,_setValid:v,_setFieldArray:m,_setDisabledField:j,_setErrors:_,_getFieldArray:S,_reset:$,_resetDefaultValues:ee,_removeUnmounted:I,_disableForm:z,_subjects:f,_proxyFormState:c,get _fields(){return n},get _formValues(){return a},get _state(){return o},set _state(value){o=value},get _defaultValues(){return i},get _names(){return s},set _names(value){s=value},get _formState(){return r},get _options(){return t},set _options(value){t={...t,...value}}},subscribe:B,trigger:R,register:V,handleSubmit:G,watch:K,setValue:D,getValues:H,reset:X,resetField:Q,clearErrors:N,unregister:U,setError:L,setFocus:J,getFieldState:M};return{...et,formControl:et}}var pR=()=>{if(typeof crypto!=="undefined"&&crypto.randomUUID){return crypto.randomUUID()}const e=typeof performance==="undefined"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const r=(Math.random()*16+e)%16|0;return(t=="x"?r:r&3|8).toString(16)})};var pH=(e,t,r={})=>r.shouldFocus||fY(r.shouldFocus)?r.focusName||`${e}.${fY(r.focusIndex)?t:r.focusIndex}.`:"";var pM=(e,t)=>[...e,...f0(t)];var pN=e=>Array.isArray(e)?e.map(()=>undefined):undefined;function pL(e,t,r){return[...e.slice(0,t),...f0(r),...e.slice(t)]}var pK=(e,t,r)=>{if(!Array.isArray(e)){return[]}if(fY(e[r])){e[r]=undefined}e.splice(r,0,e.splice(t,1)[0]);return e};var pq=(e,t)=>[...f0(t),...f0(e)];function pB(e,t){let r=0;const n=[...e];for(const e of t){n.splice(e-r,1);r++}return fS(n).length?n:[]}var pU=(e,t)=>fY(t)?[]:pB(e,f0(t).sort((e,t)=>e-t));var pj=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]};var pV=(e,t,r)=>{e[t]=r;return e};/**
 * A custom hook that exposes convenient methods to perform operations with a list of dynamic inputs that need to be appended, updated, removed etc. • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn) • [Video](https://youtu.be/4MrbfGSFY2A)
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usefieldarray) • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn)
 *
 * @param props - useFieldArray props
 *
 * @returns methods - functions to manipulate with the Field Arrays (dynamic inputs) {@link UseFieldArrayReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, control, handleSubmit, reset, trigger, setError } = useForm({
 *     defaultValues: {
 *       test: []
 *     }
 *   });
 *   const { fields, append } = useFieldArray({
 *     control,
 *     name: "test"
 *   });
 *
 *   return (
 *     <form onSubmit={handleSubmit(data => console.log(data))}>
 *       {fields.map((item, index) => (
 *          <input key={item.id} {...register(`test.${index}.firstName`)}  />
 *       ))}
 *       <button type="button" onClick={() => append({ firstName: "bill" })}>
 *         append
 *       </button>
 *       <input type="submit" />
 *     </form>
 *   );
 * }
 * ```
 */function pW(e){const t=fN();const{control:r=t.control,name:i,keyName:a="id",shouldUnregister:o,rules:s}=e;const[l,u]=n.useState(r._getFieldArray(i));const c=n.useRef(r._getFieldArray(i).map(pR));const d=n.useRef(false);r._names.array.add(i);n.useMemo(()=>s&&l.length>=0&&r.register(i,s),[r,i,l.length,s]);fq(()=>r._subjects.array.subscribe({next:({values:e,name:t})=>{if(t===i||!t){const t=fO(e,i);if(Array.isArray(t)){u(t);c.current=t.map(pR)}}}}).unsubscribe,[r,i]);const f=n.useCallback(e=>{d.current=true;r._setFieldArray(i,e)},[r,i]);const p=(e,t)=>{const n=f0(fI(e));const a=pM(r._getFieldArray(i),n);r._names.focus=pH(i,a.length-1,t);c.current=pM(c.current,n.map(pR));f(a);u(a);r._setFieldArray(i,a,pM,{argA:pN(e)})};const h=(e,t)=>{const n=f0(fI(e));const a=pq(r._getFieldArray(i),n);r._names.focus=pH(i,0,t);c.current=pq(c.current,n.map(pR));f(a);u(a);r._setFieldArray(i,a,pq,{argA:pN(e)})};const v=e=>{const t=pU(r._getFieldArray(i),e);c.current=pU(c.current,e);f(t);u(t);!Array.isArray(fO(r._fields,i))&&fF(r._fields,i,undefined);r._setFieldArray(i,t,pU,{argA:e})};const g=(e,t,n)=>{const a=f0(fI(t));const o=pL(r._getFieldArray(i),e,a);r._names.focus=pH(i,e,n);c.current=pL(c.current,e,a.map(pR));f(o);u(o);r._setFieldArray(i,o,pL,{argA:e,argB:pN(t)})};const m=(e,t)=>{const n=r._getFieldArray(i);pj(n,e,t);pj(c.current,e,t);f(n);u(n);r._setFieldArray(i,n,pj,{argA:e,argB:t},false)};const b=(e,t)=>{const n=r._getFieldArray(i);pK(n,e,t);pK(c.current,e,t);f(n);u(n);r._setFieldArray(i,n,pK,{argA:e,argB:t},false)};const _=(e,t)=>{const n=fI(t);const a=pV(r._getFieldArray(i),e,n);c.current=[...a].map((t,r)=>!t||r===e?pR():c.current[r]);f(a);u([...a]);r._setFieldArray(i,a,pV,{argA:e,argB:n},true,false)};const y=e=>{const t=f0(fI(e));c.current=t.map(pR);f([...t]);u([...t]);r._setFieldArray(i,[...t],e=>e,{},true,false)};n.useEffect(()=>{r._state.action=false;px(i,r._names)&&r._subjects.state.next({...r._formState});if(d.current&&(!pb(r._options.mode).isOnSubmit||r._formState.isSubmitted)&&!pb(r._options.reValidateMode).isOnSubmit){if(r._options.resolver){r._runSchema([i]).then(e=>{const t=fO(e.errors,i);const n=fO(r._formState.errors,i);if(n?!t&&n.type||t&&(n.type!==t.type||n.message!==t.message):t&&t.type){t?fF(r._formState.errors,i,t):pn(r._formState.errors,i);r._subjects.state.next({errors:r._formState.errors})}})}else{const e=fO(r._fields,i);if(e&&e._f&&!(pb(r._options.reValidateMode).isOnSubmit&&pb(r._options.mode).isOnSubmit)){pD(e,r._names.disabled,r._formValues,r._options.criteriaMode===fR.all,r._options.shouldUseNativeValidation,true).then(e=>!f6(e)&&r._subjects.state.next({errors:pS(r._formState.errors,e,i)}))}}}r._subjects.state.next({name:i,values:fI(r._formValues)});r._names.focus&&pA(r._fields,(e,t)=>{if(r._names.focus&&t.startsWith(r._names.focus)&&e.focus){e.focus();return 1}return});r._names.focus="";r._setValid();d.current=false},[l,i,r]);n.useEffect(()=>{!fO(r._formValues,i)&&r._setFieldArray(i);return()=>{const e=(e,t)=>{const n=fO(r._fields,e);if(n&&n._f){n._f.mount=t}};r._options.shouldUnregister||o?r.unregister(i):e(i,false)}},[i,r,a,o]);return{swap:n.useCallback(m,[f,i,r]),move:n.useCallback(b,[f,i,r]),prepend:n.useCallback(h,[f,i,r]),append:n.useCallback(p,[f,i,r]),remove:n.useCallback(v,[f,i,r]),insert:n.useCallback(g,[f,i,r]),update:n.useCallback(_,[f,i,r]),replace:n.useCallback(y,[f,i,r]),fields:n.useMemo(()=>l.map((e,t)=>({...e,[a]:c.current[t]||pR()})),[l,a])}}/**
 * Custom hook to manage the entire form.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useform) • [Demo](https://codesandbox.io/s/react-hook-form-get-started-ts-5ksmm) • [Video](https://www.youtube.com/watch?v=RkXv4AXXC_4)
 *
 * @param props - form configuration and validation parameters.
 *
 * @returns methods - individual functions to manage the form state. {@link UseFormReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, handleSubmit, watch, formState: { errors } } = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   console.log(watch("example"));
 *
 *   return (
 *     <form onSubmit={handleSubmit(onSubmit)}>
 *       <input defaultValue="test" {...register("example")} />
 *       <input {...register("exampleRequired", { required: true })} />
 *       {errors.exampleRequired && <span>This field is required</span>}
 *       <button>Submit</button>
 *     </form>
 *   );
 * }
 * ```
 */function pz(e={}){const t=n.useRef(undefined);const r=n.useRef(undefined);const[i,a]=n.useState({isDirty:false,isValidating:false,isLoading:f5(e.defaultValues),isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||false,isReady:false,defaultValues:f5(e.defaultValues)?undefined:e.defaultValues});if(!t.current){if(e.formControl){t.current={...e.formControl,formState:i};if(e.defaultValues&&!f5(e.defaultValues)){e.formControl.reset(e.defaultValues,e.resetOptions)}}else{const{formControl:r,...n}=pP(e);t.current={...n,formState:i}}}const o=t.current.control;o._options=e;fq(()=>{const e=o._subscribe({formState:o._proxyFormState,callback:()=>a({...o._formState}),reRenderRoot:true});a(e=>({...e,isReady:true}));o._formState.isReady=true;return e},[o]);n.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]);n.useEffect(()=>{if(e.mode){o._options.mode=e.mode}if(e.reValidateMode){o._options.reValidateMode=e.reValidateMode}},[o,e.mode,e.reValidateMode]);n.useEffect(()=>{if(e.errors){o._setErrors(e.errors);o._focusError()}},[o,e.errors]);n.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]);n.useEffect(()=>{if(o._proxyFormState.isDirty){const e=o._getDirty();if(e!==i.isDirty){o._subjects.state.next({isDirty:e})}}},[o,i.isDirty]);n.useEffect(()=>{var t;if(e.values&&!fW(e.values,r.current)){o._reset(e.values,{keepFieldsRef:true,...o._options.resetOptions});if(!((t=o._options.resetOptions)===null||t===void 0?void 0:t.keepIsValid)){o._setValid()}r.current=e.values;a(e=>({...e}))}else{o._resetDefaultValues()}},[o,e.values]);n.useEffect(()=>{if(!o._state.mount){o._setValid();o._state.mount=true}if(o._state.watch){o._state.watch=false;o._subjects.state.next({...o._formState})}o._removeUnmounted()});t.current.formState=fK(i,o);return t.current}/**
 * Watch component that subscribes to form field changes and re-renders when watched fields update.
 *
 * @param control - The form control object from useForm
 * @param names - Array of field names to watch for changes
 * @param render - The function that receives watched values and returns ReactNode
 * @returns The result of calling render function with watched values
 *
 * @example
 * The `Watch` component only re-render when the values of `foo`, `bar`, and `baz.qux` change.
 * The types of `foo`, `bar`, and `baz.qux` are precisely inferred.
 *
 * ```tsx
 * const { control } = useForm();
 *
 * <Watch
 *   control={control}
 *   names={['foo', 'bar', 'baz.qux']}
 *   render={([foo, bar, baz_qux]) => <div>{foo}{bar}{baz_qux}</div>}
 * />
 * ```
 */const pG=({control:e,names:t,render:r})=>r(fz({control:e,name:t}));//# sourceMappingURL=index.esm.mjs.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getWindow.js
function pQ(e){if(e==null){return window}if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t?t.defaultView||window:window}return e};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/instanceOf.js
function p$(e){var t=pQ(e).Element;return e instanceof t||e instanceof Element}function pX(e){var t=pQ(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function pJ(e){// IE 11 has no ShadowRoot
if(typeof ShadowRoot==="undefined"){return false}var t=pQ(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/math.js
var pZ=Math.max;var p0=Math.min;var p1=Math.round;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/userAgent.js
function p2(){var e=navigator.userAgentData;if(e!=null&&e.brands&&Array.isArray(e.brands)){return e.brands.map(function(e){return e.brand+"/"+e.version}).join(" ")}return navigator.userAgent};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js
function p6(){return!/^((?!chrome|android).)*safari/i.test(p2())};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js
function p4(e,t,r){if(t===void 0){t=false}if(r===void 0){r=false}var n=e.getBoundingClientRect();var i=1;var a=1;if(t&&pX(e)){i=e.offsetWidth>0?p1(n.width)/e.offsetWidth||1:1;a=e.offsetHeight>0?p1(n.height)/e.offsetHeight||1:1}var o=p$(e)?pQ(e):window,s=o.visualViewport;var l=!p6()&&r;var u=(n.left+(l&&s?s.offsetLeft:0))/i;var c=(n.top+(l&&s?s.offsetTop:0))/a;var d=n.width/i;var f=n.height/a;return{width:d,height:f,top:c,right:u+d,bottom:c+f,left:u,x:u,y:c}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js
function p5(e){var t=pQ(e);var r=t.pageXOffset;var n=t.pageYOffset;return{scrollLeft:r,scrollTop:n}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js
function p3(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js
function p8(e){if(e===pQ(e)||!pX(e)){return p5(e)}else{return p3(e)}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getNodeName.js
function p9(e){return e?(e.nodeName||"").toLowerCase():null};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js
function p7(e){// $FlowFixMe[incompatible-return]: assume body is always available
return((p$(e)?e.ownerDocument:e.document)||window.document).documentElement};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js
function he(e){// If <html> has a CSS width greater than the viewport, then this will be
// incorrect for RTL.
// Popper 1 is broken in this case and never had a bug report so let's assume
// it's not an issue. I don't think anyone ever specifies width on <html>
// anyway.
// Browsers where the left scrollbar doesn't cause an issue report `0` for
// this (e.g. Edge 2019, IE11, Safari)
return p4(p7(e)).left+p5(e).scrollLeft};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js
function ht(e){return pQ(e).getComputedStyle(e)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js
function hr(e){// Firefox wants us to check `-x` and `-y` variations as well
var t=ht(e),r=t.overflow,n=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(r+i+n)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js
function hn(e){var t=e.getBoundingClientRect();var r=p1(t.width)/e.offsetWidth||1;var n=p1(t.height)/e.offsetHeight||1;return r!==1||n!==1}// Returns the composite rect of an element relative to its offsetParent.
// Composite means it takes into account transforms as well as layout.
function hi(e,t,r){if(r===void 0){r=false}var n=pX(t);var i=pX(t)&&hn(t);var a=p7(t);var o=p4(e,i,r);var s={scrollLeft:0,scrollTop:0};var l={x:0,y:0};if(n||!n&&!r){if(p9(t)!=="body"||// https://github.com/popperjs/popper-core/issues/1078
hr(a)){s=p8(t)}if(pX(t)){l=p4(t,true);l.x+=t.clientLeft;l.y+=t.clientTop}else if(a){l.x=he(a)}}return{x:o.left+s.scrollLeft-l.x,y:o.top+s.scrollTop-l.y,width:o.width,height:o.height}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js
// Returns the layout rect of an element relative to its offsetParent. Layout
// means it doesn't take into account transforms.
function ha(e){var t=p4(e);// Use the clientRect sizes if it's not been transformed.
// Fixes https://github.com/popperjs/popper-core/issues/1223
var r=e.offsetWidth;var n=e.offsetHeight;if(Math.abs(t.width-r)<=1){r=t.width}if(Math.abs(t.height-n)<=1){n=t.height}return{x:e.offsetLeft,y:e.offsetTop,width:r,height:n}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getParentNode.js
function ho(e){if(p9(e)==="html"){return e}return(// $FlowFixMe[incompatible-return]
// $FlowFixMe[prop-missing]
e.assignedSlot||// step into the shadow DOM of the parent of a slotted node
e.parentNode||(pJ(e)?e.host:null)||// ShadowRoot detected
// $FlowFixMe[incompatible-call]: HTMLElement is a Node
p7(e)// fallback
)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js
function hs(e){if(["html","body","#document"].indexOf(p9(e))>=0){// $FlowFixMe[incompatible-return]: assume body is always available
return e.ownerDocument.body}if(pX(e)&&hr(e)){return e}return hs(ho(e))};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js
/*
given a DOM element, return the list of all scroll parents, up the list of ancesors
until we get to the top window object. This list is what we attach scroll listeners
to, because if any of these parent elements scroll, we'll need to re-calculate the
reference element's position.
*/function hl(e,t){var r;if(t===void 0){t=[]}var n=hs(e);var i=n===((r=e.ownerDocument)==null?void 0:r.body);var a=pQ(n);var o=i?[a].concat(a.visualViewport||[],hr(n)?n:[]):n;var s=t.concat(o);return i?s:s.concat(hl(ho(o)))};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/isTableElement.js
function hu(e){return["table","td","th"].indexOf(p9(e))>=0};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js
function hc(e){if(!pX(e)||// https://github.com/popperjs/popper-core/issues/837
ht(e).position==="fixed"){return null}return e.offsetParent}// `.offsetParent` reports `null` for fixed elements, while absolute elements
// return the containing block
function hd(e){var t=/firefox/i.test(p2());var r=/Trident/i.test(p2());if(r&&pX(e)){// In IE 9, 10 and 11 fixed elements containing block is always established by the viewport
var n=ht(e);if(n.position==="fixed"){return null}}var i=ho(e);if(pJ(i)){i=i.host}while(pX(i)&&["html","body"].indexOf(p9(i))<0){var a=ht(i);// This is non-exhaustive but covers the most common CSS properties that
// create a containing block.
// https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
if(a.transform!=="none"||a.perspective!=="none"||a.contain==="paint"||["transform","perspective"].indexOf(a.willChange)!==-1||t&&a.willChange==="filter"||t&&a.filter&&a.filter!=="none"){return i}else{i=i.parentNode}}return null}// Gets the closest ancestor positioned element. Handles some edge cases,
// such as table ancestors and cross browser bugs.
function hf(e){var t=pQ(e);var r=hc(e);while(r&&hu(r)&&ht(r).position==="static"){r=hc(r)}if(r&&(p9(r)==="html"||p9(r)==="body"&&ht(r).position==="static")){return t}return r||hd(e)||t};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/enums.js
var hp="top";var hh="bottom";var hv="right";var hg="left";var hm="auto";var hb=[hp,hh,hv,hg];var h_="start";var hy="end";var hw="clippingParents";var hx="viewport";var hA="popper";var hE="reference";var hk=/*#__PURE__*/hb.reduce(function(e,t){return e.concat([t+"-"+h_,t+"-"+hy])},[]);var hI=/*#__PURE__*/[].concat(hb,[hm]).reduce(function(e,t){return e.concat([t,t+"-"+h_,t+"-"+hy])},[]);// modifiers that need to read the DOM
var hC="beforeRead";var hY="read";var hS="afterRead";// pure-logic modifiers
var hT="beforeMain";var hO="main";var hD="afterMain";// modifier with the purpose to write to the DOM (or write into a framework state)
var hF="beforeWrite";var hP="write";var hR="afterWrite";var hH=[hC,hY,hS,hT,hO,hD,hF,hP,hR];// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/orderModifiers.js
// source: https://stackoverflow.com/questions/49875255
function hM(e){var t=new Map;var r=new Set;var n=[];e.forEach(function(e){t.set(e.name,e)});// On visiting object, check for its dependencies and visit them recursively
function i(e){r.add(e.name);var a=[].concat(e.requires||[],e.requiresIfExists||[]);a.forEach(function(e){if(!r.has(e)){var n=t.get(e);if(n){i(n)}}});n.push(e)}e.forEach(function(e){if(!r.has(e.name)){// check for visited object
i(e)}});return n}function hN(e){// order based on dependencies
var t=hM(e);// order based on phase
return hH.reduce(function(e,r){return e.concat(t.filter(function(e){return e.phase===r}))},[])};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/debounce.js
function hL(e){var t;return function(){if(!t){t=new Promise(function(r){Promise.resolve().then(function(){t=undefined;r(e())})})}return t}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/mergeByName.js
function hK(e){var t=e.reduce(function(e,t){var r=e[t.name];e[t.name]=r?Object.assign({},r,t,{options:Object.assign({},r.options,t.options),data:Object.assign({},r.data,t.data)}):t;return e},{});// IE11 does not support Object.values
return Object.keys(t).map(function(e){return t[e]})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/createPopper.js
var hq={placement:"bottom",modifiers:[],strategy:"absolute"};function hB(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return!t.some(function(e){return!(e&&typeof e.getBoundingClientRect==="function")})}function hU(e){if(e===void 0){e={}}var t=e,r=t.defaultModifiers,n=r===void 0?[]:r,i=t.defaultOptions,a=i===void 0?hq:i;return function e(e,t,r){if(r===void 0){r=a}var i={placement:"bottom",orderedModifiers:[],options:Object.assign({},hq,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}};var o=[];var s=false;var l={state:i,setOptions:function r(r){var o=typeof r==="function"?r(i.options):r;c();i.options=Object.assign({},a,i.options,o);i.scrollParents={reference:p$(e)?hl(e):e.contextElement?hl(e.contextElement):[],popper:hl(t)};// Orders the modifiers based on their dependencies and `phase`
// properties
var s=hN(hK([].concat(n,i.options.modifiers)));// Strip out disabled modifiers
i.orderedModifiers=s.filter(function(e){return e.enabled});u();return l.update()},// Sync update – it will always be executed, even if not necessary. This
// is useful for low frequency updates where sync behavior simplifies the
// logic.
// For high frequency updates (e.g. `resize` and `scroll` events), always
// prefer the async Popper#update method
forceUpdate:function e(){if(s){return}var e=i.elements,t=e.reference,r=e.popper;// Don't proceed if `reference` or `popper` are not valid elements
// anymore
if(!hB(t,r)){return}// Store the reference and popper rects to be read by modifiers
i.rects={reference:hi(t,hf(r),i.options.strategy==="fixed"),popper:ha(r)};// Modifiers have the ability to reset the current update cycle. The
// most common use case for this is the `flip` modifier changing the
// placement, which then needs to re-run all the modifiers, because the
// logic was previously ran for the previous placement and is therefore
// stale/incorrect
i.reset=false;i.placement=i.options.placement;// On each update cycle, the `modifiersData` property for each modifier
// is filled with the initial data specified by the modifier. This means
// it doesn't persist and is fresh on each update.
// To ensure persistent data, use `${name}#persistent`
i.orderedModifiers.forEach(function(e){return i.modifiersData[e.name]=Object.assign({},e.data)});for(var n=0;n<i.orderedModifiers.length;n++){if(i.reset===true){i.reset=false;n=-1;continue}var a=i.orderedModifiers[n],o=a.fn,u=a.options,c=u===void 0?{}:u,d=a.name;if(typeof o==="function"){i=o({state:i,options:c,name:d,instance:l})||i}}},// Async and optimistically optimized update – it will not be executed if
// not necessary (debounced to run at most once-per-tick)
update:hL(function(){return new Promise(function(e){l.forceUpdate();e(i)})}),destroy:function e(){c();s=true}};if(!hB(e,t)){return l}l.setOptions(r).then(function(e){if(!s&&r.onFirstUpdate){r.onFirstUpdate(e)}});// Modifiers have the ability to execute arbitrary code before the first
// update cycle runs. They will be executed in the same order as the update
// cycle. This is useful when a modifier adds some persistent data that
// other modifiers need to use, but the modifier is run after the dependent
// one.
function u(){i.orderedModifiers.forEach(function(e){var t=e.name,r=e.options,n=r===void 0?{}:r,a=e.effect;if(typeof a==="function"){var s=a({state:i,name:t,instance:l,options:n});var u=function e(){};o.push(s||u)}})}function c(){o.forEach(function(e){return e()});o=[]}return l}}var hj=/*#__PURE__*//* unused pure expression or super */null&&hU();// eslint-disable-next-line import/no-unused-modules
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/eventListeners.js
// eslint-disable-next-line import/no-unused-modules
var hV={passive:true};function hW(e){var t=e.state,r=e.instance,n=e.options;var i=n.scroll,a=i===void 0?true:i,o=n.resize,s=o===void 0?true:o;var l=pQ(t.elements.popper);var u=[].concat(t.scrollParents.reference,t.scrollParents.popper);if(a){u.forEach(function(e){e.addEventListener("scroll",r.update,hV)})}if(s){l.addEventListener("resize",r.update,hV)}return function(){if(a){u.forEach(function(e){e.removeEventListener("scroll",r.update,hV)})}if(s){l.removeEventListener("resize",r.update,hV)}}}// eslint-disable-next-line import/no-unused-modules
/* export default */const hz={name:"eventListeners",enabled:true,phase:"write",fn:function e(){},effect:hW,data:{}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getBasePlacement.js
function hG(e){return e.split("-")[0]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getVariation.js
function hQ(e){return e.split("-")[1]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js
function h$(e){return["top","bottom"].indexOf(e)>=0?"x":"y"};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/computeOffsets.js
function hX(e){var t=e.reference,r=e.element,n=e.placement;var i=n?hG(n):null;var a=n?hQ(n):null;var o=t.x+t.width/2-r.width/2;var s=t.y+t.height/2-r.height/2;var l;switch(i){case hp:l={x:o,y:t.y-r.height};break;case hh:l={x:o,y:t.y+t.height};break;case hv:l={x:t.x+t.width,y:s};break;case hg:l={x:t.x-r.width,y:s};break;default:l={x:t.x,y:t.y}}var u=i?h$(i):null;if(u!=null){var c=u==="y"?"height":"width";switch(a){case h_:l[u]=l[u]-(t[c]/2-r[c]/2);break;case hy:l[u]=l[u]+(t[c]/2-r[c]/2);break;default:}}return l};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/popperOffsets.js
function hJ(e){var t=e.state,r=e.name;// Offsets are the actual position the popper needs to have to be
// properly positioned near its reference element
// This is the most basic placement, and will be adjusted by
// the modifiers in the next step
t.modifiersData[r]=hX({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}// eslint-disable-next-line import/no-unused-modules
/* export default */const hZ={name:"popperOffsets",enabled:true,phase:"read",fn:hJ,data:{}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/computeStyles.js
// eslint-disable-next-line import/no-unused-modules
var h0={top:"auto",right:"auto",bottom:"auto",left:"auto"};// Round the offsets to the nearest suitable subpixel based on the DPR.
// Zooming can change the DPR, but it seems to report a value that will
// cleanly divide the values into the appropriate subpixels.
function h1(e,t){var r=e.x,n=e.y;var i=t.devicePixelRatio||1;return{x:p1(r*i)/i||0,y:p1(n*i)/i||0}}function h2(e){var t;var r=e.popper,n=e.popperRect,i=e.placement,a=e.variation,o=e.offsets,s=e.position,l=e.gpuAcceleration,u=e.adaptive,c=e.roundOffsets,d=e.isFixed;var f=o.x,p=f===void 0?0:f,h=o.y,v=h===void 0?0:h;var g=typeof c==="function"?c({x:p,y:v}):{x:p,y:v};p=g.x;v=g.y;var m=o.hasOwnProperty("x");var b=o.hasOwnProperty("y");var _=hg;var y=hp;var w=window;if(u){var x=hf(r);var A="clientHeight";var E="clientWidth";if(x===pQ(r)){x=p7(r);if(ht(x).position!=="static"&&s==="absolute"){A="scrollHeight";E="scrollWidth"}}// $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it
x=x;if(i===hp||(i===hg||i===hv)&&a===hy){y=hh;var k=d&&x===w&&w.visualViewport?w.visualViewport.height:x[A];v-=k-n.height;v*=l?1:-1}if(i===hg||(i===hp||i===hh)&&a===hy){_=hv;var I=d&&x===w&&w.visualViewport?w.visualViewport.width:x[E];p-=I-n.width;p*=l?1:-1}}var C=Object.assign({position:s},u&&h0);var Y=c===true?h1({x:p,y:v},pQ(r)):{x:p,y:v};p=Y.x;v=Y.y;if(l){var S;return Object.assign({},C,(S={},S[y]=b?"0":"",S[_]=m?"0":"",S.transform=(w.devicePixelRatio||1)<=1?"translate("+p+"px, "+v+"px)":"translate3d("+p+"px, "+v+"px, 0)",S))}return Object.assign({},C,(t={},t[y]=b?v+"px":"",t[_]=m?p+"px":"",t.transform="",t))}function h6(e){var t=e.state,r=e.options;var n=r.gpuAcceleration,i=n===void 0?true:n,a=r.adaptive,o=a===void 0?true:a,s=r.roundOffsets,l=s===void 0?true:s;var u={placement:hG(t.placement),variation:hQ(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};if(t.modifiersData.popperOffsets!=null){t.styles.popper=Object.assign({},t.styles.popper,h2(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:l})))}if(t.modifiersData.arrow!=null){t.styles.arrow=Object.assign({},t.styles.arrow,h2(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:l})))}t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}// eslint-disable-next-line import/no-unused-modules
/* export default */const h4={name:"computeStyles",enabled:true,phase:"beforeWrite",fn:h6,data:{}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/applyStyles.js
// This modifier takes the styles prepared by the `computeStyles` modifier
// and applies them to the HTMLElements such as popper and arrow
function h5(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var r=t.styles[e]||{};var n=t.attributes[e]||{};var i=t.elements[e];// arrow is optional + virtual elements
if(!pX(i)||!p9(i)){return}// Flow doesn't support to extend this property, but it's the most
// effective way to apply styles to an HTMLElement
// $FlowFixMe[cannot-write]
Object.assign(i.style,r);Object.keys(n).forEach(function(e){var t=n[e];if(t===false){i.removeAttribute(e)}else{i.setAttribute(e,t===true?"":t)}})})}function h3(e){var t=e.state;var r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,r.popper);t.styles=r;if(t.elements.arrow){Object.assign(t.elements.arrow.style,r.arrow)}return function(){Object.keys(t.elements).forEach(function(e){var n=t.elements[e];var i=t.attributes[e]||{};var a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:r[e]);// Set all values to an empty string to unset them
var o=a.reduce(function(e,t){e[t]="";return e},{});// arrow is optional + virtual elements
if(!pX(n)||!p9(n)){return}Object.assign(n.style,o);Object.keys(i).forEach(function(e){n.removeAttribute(e)})})}}// eslint-disable-next-line import/no-unused-modules
/* export default */const h8={name:"applyStyles",enabled:true,phase:"write",fn:h5,effect:h3,requires:["computeStyles"]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/offset.js
// eslint-disable-next-line import/no-unused-modules
function h9(e,t,r){var n=hG(e);var i=[hg,hp].indexOf(n)>=0?-1:1;var a=typeof r==="function"?r(Object.assign({},t,{placement:e})):r,o=a[0],s=a[1];o=o||0;s=(s||0)*i;return[hg,hv].indexOf(n)>=0?{x:s,y:o}:{x:o,y:s}}function h7(e){var t=e.state,r=e.options,n=e.name;var i=r.offset,a=i===void 0?[0,0]:i;var o=hI.reduce(function(e,r){e[r]=h9(r,t.rects,a);return e},{});var s=o[t.placement],l=s.x,u=s.y;if(t.modifiersData.popperOffsets!=null){t.modifiersData.popperOffsets.x+=l;t.modifiersData.popperOffsets.y+=u}t.modifiersData[n]=o}// eslint-disable-next-line import/no-unused-modules
/* export default */const ve={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:h7};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getOppositePlacement.js
var vt={left:"right",right:"left",bottom:"top",top:"bottom"};function vr(e){return e.replace(/left|right|bottom|top/g,function(e){return vt[e]})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js
var vn={start:"end",end:"start"};function vi(e){return e.replace(/start|end/g,function(e){return vn[e]})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js
function va(e,t){var r=pQ(e);var n=p7(e);var i=r.visualViewport;var a=n.clientWidth;var o=n.clientHeight;var s=0;var l=0;if(i){a=i.width;o=i.height;var u=p6();if(u||!u&&t==="fixed"){s=i.offsetLeft;l=i.offsetTop}}return{width:a,height:o,x:s+he(e),y:l}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js
// Gets the entire size of the scrollable document area, even extending outside
// of the `<html>` and `<body>` rect bounds if horizontally scrollable
function vo(e){var t;var r=p7(e);var n=p5(e);var i=(t=e.ownerDocument)==null?void 0:t.body;var a=pZ(r.scrollWidth,r.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0);var o=pZ(r.scrollHeight,r.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0);var s=-n.scrollLeft+he(e);var l=-n.scrollTop;if(ht(i||r).direction==="rtl"){s+=pZ(r.clientWidth,i?i.clientWidth:0)-a}return{width:a,height:o,x:s,y:l}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/contains.js
function vs(e,t){var r=t.getRootNode&&t.getRootNode();// First, attempt with faster native method
if(e.contains(t)){return true}else if(r&&pJ(r)){var n=t;do{if(n&&e.isSameNode(n)){return true}// $FlowFixMe[prop-missing]: need a better way to handle this...
n=n.parentNode||n.host}while(n)}// Give up, the result is false
return false};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/rectToClientRect.js
function vl(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js
function vu(e,t){var r=p4(e,false,t==="fixed");r.top=r.top+e.clientTop;r.left=r.left+e.clientLeft;r.bottom=r.top+e.clientHeight;r.right=r.left+e.clientWidth;r.width=e.clientWidth;r.height=e.clientHeight;r.x=r.left;r.y=r.top;return r}function vc(e,t,r){return t===hx?vl(va(e,r)):p$(t)?vu(t,r):vl(vo(p7(e)))}// A "clipping parent" is an overflowable container with the characteristic of
// clipping (or hiding) overflowing elements with a position different from
// `initial`
function vd(e){var t=hl(ho(e));var r=["absolute","fixed"].indexOf(ht(e).position)>=0;var n=r&&pX(e)?hf(e):e;if(!p$(n)){return[]}// $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414
return t.filter(function(e){return p$(e)&&vs(e,n)&&p9(e)!=="body"})}// Gets the maximum area that the element is visible in due to any number of
// clipping parents
function vf(e,t,r,n){var i=t==="clippingParents"?vd(e):[].concat(t);var a=[].concat(i,[r]);var o=a[0];var s=a.reduce(function(t,r){var i=vc(e,r,n);t.top=pZ(i.top,t.top);t.right=p0(i.right,t.right);t.bottom=p0(i.bottom,t.bottom);t.left=pZ(i.left,t.left);return t},vc(e,o,n));s.width=s.right-s.left;s.height=s.bottom-s.top;s.x=s.left;s.y=s.top;return s};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getFreshSideObject.js
function vp(){return{top:0,right:0,bottom:0,left:0}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/mergePaddingObject.js
function vh(e){return Object.assign({},vp(),e)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/expandToHashMap.js
function vv(e,t){return t.reduce(function(t,r){t[r]=e;return t},{})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/detectOverflow.js
// eslint-disable-next-line import/no-unused-modules
function vg(e,t){if(t===void 0){t={}}var r=t,n=r.placement,i=n===void 0?e.placement:n,a=r.strategy,o=a===void 0?e.strategy:a,s=r.boundary,l=s===void 0?hw:s,u=r.rootBoundary,c=u===void 0?hx:u,d=r.elementContext,f=d===void 0?hA:d,p=r.altBoundary,h=p===void 0?false:p,v=r.padding,g=v===void 0?0:v;var m=vh(typeof g!=="number"?g:vv(g,hb));var b=f===hA?hE:hA;var _=e.rects.popper;var y=e.elements[h?b:f];var w=vf(p$(y)?y:y.contextElement||p7(e.elements.popper),l,c,o);var x=p4(e.elements.reference);var A=hX({reference:x,element:_,strategy:"absolute",placement:i});var E=vl(Object.assign({},_,A));var k=f===hA?E:x;// positive = overflowing the clipping rect
// 0 or negative = within the clipping rect
var I={top:w.top-k.top+m.top,bottom:k.bottom-w.bottom+m.bottom,left:w.left-k.left+m.left,right:k.right-w.right+m.right};var C=e.modifiersData.offset;// Offsets can be applied only to the popper element
if(f===hA&&C){var Y=C[i];Object.keys(I).forEach(function(e){var t=[hv,hh].indexOf(e)>=0?1:-1;var r=[hp,hh].indexOf(e)>=0?"y":"x";I[e]+=Y[r]*t})}return I};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js
function vm(e,t){if(t===void 0){t={}}var r=t,n=r.placement,i=r.boundary,a=r.rootBoundary,o=r.padding,s=r.flipVariations,l=r.allowedAutoPlacements,u=l===void 0?hI:l;var c=hQ(n);var d=c?s?hk:hk.filter(function(e){return hQ(e)===c}):hb;var f=d.filter(function(e){return u.indexOf(e)>=0});if(f.length===0){f=d}// $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
var p=f.reduce(function(t,r){t[r]=vg(e,{placement:r,boundary:i,rootBoundary:a,padding:o})[hG(r)];return t},{});return Object.keys(p).sort(function(e,t){return p[e]-p[t]})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/flip.js
// eslint-disable-next-line import/no-unused-modules
function vb(e){if(hG(e)===hm){return[]}var t=vr(e);return[vi(e),t,vi(t)]}function v_(e){var t=e.state,r=e.options,n=e.name;if(t.modifiersData[n]._skip){return}var i=r.mainAxis,a=i===void 0?true:i,o=r.altAxis,s=o===void 0?true:o,l=r.fallbackPlacements,u=r.padding,c=r.boundary,d=r.rootBoundary,f=r.altBoundary,p=r.flipVariations,h=p===void 0?true:p,v=r.allowedAutoPlacements;var g=t.options.placement;var m=hG(g);var b=m===g;var _=l||(b||!h?[vr(g)]:vb(g));var y=[g].concat(_).reduce(function(e,r){return e.concat(hG(r)===hm?vm(t,{placement:r,boundary:c,rootBoundary:d,padding:u,flipVariations:h,allowedAutoPlacements:v}):r)},[]);var w=t.rects.reference;var x=t.rects.popper;var A=new Map;var E=true;var k=y[0];for(var I=0;I<y.length;I++){var C=y[I];var Y=hG(C);var S=hQ(C)===h_;var T=[hp,hh].indexOf(Y)>=0;var O=T?"width":"height";var D=vg(t,{placement:C,boundary:c,rootBoundary:d,altBoundary:f,padding:u});var F=T?S?hv:hg:S?hh:hp;if(w[O]>x[O]){F=vr(F)}var P=vr(F);var R=[];if(a){R.push(D[Y]<=0)}if(s){R.push(D[F]<=0,D[P]<=0)}if(R.every(function(e){return e})){k=C;E=false;break}A.set(C,R)}if(E){// `2` may be desired in some cases – research later
var H=h?3:1;var M=function e(e){var t=y.find(function(t){var r=A.get(t);if(r){return r.slice(0,e).every(function(e){return e})}});if(t){k=t;return"break"}};for(var N=H;N>0;N--){var L=M(N);if(L==="break")break}}if(t.placement!==k){t.modifiersData[n]._skip=true;t.placement=k;t.reset=true}}// eslint-disable-next-line import/no-unused-modules
/* export default */const vy={name:"flip",enabled:true,phase:"main",fn:v_,requiresIfExists:["offset"],data:{_skip:false}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/getAltAxis.js
function vw(e){return e==="x"?"y":"x"};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/utils/within.js
function vx(e,t,r){return pZ(e,p0(t,r))}function vA(e,t,r){var n=vx(e,t,r);return n>r?r:n};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/preventOverflow.js
function vE(e){var t=e.state,r=e.options,n=e.name;var i=r.mainAxis,a=i===void 0?true:i,o=r.altAxis,s=o===void 0?false:o,l=r.boundary,u=r.rootBoundary,c=r.altBoundary,d=r.padding,f=r.tether,p=f===void 0?true:f,h=r.tetherOffset,v=h===void 0?0:h;var g=vg(t,{boundary:l,rootBoundary:u,padding:d,altBoundary:c});var m=hG(t.placement);var b=hQ(t.placement);var _=!b;var y=h$(m);var w=vw(y);var x=t.modifiersData.popperOffsets;var A=t.rects.reference;var E=t.rects.popper;var k=typeof v==="function"?v(Object.assign({},t.rects,{placement:t.placement})):v;var I=typeof k==="number"?{mainAxis:k,altAxis:k}:Object.assign({mainAxis:0,altAxis:0},k);var C=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null;var Y={x:0,y:0};if(!x){return}if(a){var S;var T=y==="y"?hp:hg;var O=y==="y"?hh:hv;var D=y==="y"?"height":"width";var F=x[y];var P=F+g[T];var R=F-g[O];var H=p?-E[D]/2:0;var M=b===h_?A[D]:E[D];var N=b===h_?-E[D]:-A[D];// We need to include the arrow in the calculation so the arrow doesn't go
// outside the reference bounds
var L=t.elements.arrow;var K=p&&L?ha(L):{width:0,height:0};var q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:vp();var B=q[T];var U=q[O];// If the reference length is smaller than the arrow length, we don't want
// to include its full size in the calculation. If the reference is small
// and near the edge of a boundary, the popper can overflow even if the
// reference is not overflowing as well (e.g. virtual elements with no
// width or height)
var j=vx(0,A[D],K[D]);var V=_?A[D]/2-H-j-B-I.mainAxis:M-j-B-I.mainAxis;var W=_?-A[D]/2+H+j+U+I.mainAxis:N+j+U+I.mainAxis;var z=t.elements.arrow&&hf(t.elements.arrow);var G=z?y==="y"?z.clientTop||0:z.clientLeft||0:0;var Q=(S=C==null?void 0:C[y])!=null?S:0;var $=F+V-Q-G;var X=F+W-Q;var J=vx(p?p0(P,$):P,F,p?pZ(R,X):R);x[y]=J;Y[y]=J-F}if(s){var Z;var ee=y==="x"?hp:hg;var et=y==="x"?hh:hv;var er=x[w];var en=w==="y"?"height":"width";var ei=er+g[ee];var ea=er-g[et];var eo=[hp,hg].indexOf(m)!==-1;var es=(Z=C==null?void 0:C[w])!=null?Z:0;var el=eo?ei:er-A[en]-E[en]-es+I.altAxis;var eu=eo?er+A[en]+E[en]-es-I.altAxis:ea;var ec=p&&eo?vA(el,er,eu):vx(p?el:ei,er,p?eu:ea);x[w]=ec;Y[w]=ec-er}t.modifiersData[n]=Y}// eslint-disable-next-line import/no-unused-modules
/* export default */const vk={name:"preventOverflow",enabled:true,phase:"main",fn:vE,requiresIfExists:["offset"]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/arrow.js
// eslint-disable-next-line import/no-unused-modules
var vI=function e(e,t){e=typeof e==="function"?e(Object.assign({},t.rects,{placement:t.placement})):e;return vh(typeof e!=="number"?e:vv(e,hb))};function vC(e){var t;var r=e.state,n=e.name,i=e.options;var a=r.elements.arrow;var o=r.modifiersData.popperOffsets;var s=hG(r.placement);var l=h$(s);var u=[hg,hv].indexOf(s)>=0;var c=u?"height":"width";if(!a||!o){return}var d=vI(i.padding,r);var f=ha(a);var p=l==="y"?hp:hg;var h=l==="y"?hh:hv;var v=r.rects.reference[c]+r.rects.reference[l]-o[l]-r.rects.popper[c];var g=o[l]-r.rects.reference[l];var m=hf(a);var b=m?l==="y"?m.clientHeight||0:m.clientWidth||0:0;var _=v/2-g/2;// Make sure the arrow doesn't overflow the popper if the center point is
// outside of the popper bounds
var y=d[p];var w=b-f[c]-d[h];var x=b/2-f[c]/2+_;var A=vx(y,x,w);// Prevents breaking syntax highlighting...
var E=l;r.modifiersData[n]=(t={},t[E]=A,t.centerOffset=A-x,t)}function vY(e){var t=e.state,r=e.options;var n=r.element,i=n===void 0?"[data-popper-arrow]":n;if(i==null){return}// CSS selector
if(typeof i==="string"){i=t.elements.popper.querySelector(i);if(!i){return}}if(!vs(t.elements.popper,i)){return}t.elements.arrow=i}// eslint-disable-next-line import/no-unused-modules
/* export default */const vS={name:"arrow",enabled:true,phase:"main",fn:vC,effect:vY,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/modifiers/hide.js
function vT(e,t,r){if(r===void 0){r={x:0,y:0}}return{top:e.top-t.height-r.y,right:e.right-t.width+r.x,bottom:e.bottom-t.height+r.y,left:e.left-t.width-r.x}}function vO(e){return[hp,hv,hh,hg].some(function(t){return e[t]>=0})}function vD(e){var t=e.state,r=e.name;var n=t.rects.reference;var i=t.rects.popper;var a=t.modifiersData.preventOverflow;var o=vg(t,{elementContext:"reference"});var s=vg(t,{altBoundary:true});var l=vT(o,n);var u=vT(s,i,a);var c=vO(l);var d=vO(u);t.modifiersData[r]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:c,hasPopperEscaped:d};t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":d})}// eslint-disable-next-line import/no-unused-modules
/* export default */const vF={name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:vD};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@popperjs+core@2.11.8/node_modules/@popperjs/core/lib/popper.js
var vP=[hz,hZ,h4,h8,ve,vy,vk,vS,vF];var vR=/*#__PURE__*/hU({defaultModifiers:vP});// eslint-disable-next-line import/no-unused-modules
// eslint-disable-next-line import/no-unused-modules
// eslint-disable-next-line import/no-unused-modules
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/tippy.js@6.3.7/node_modules/tippy.js/headless/dist/tippy-headless.esm.js
/**!
* tippy.js v6.3.7
* (c) 2017-2021 atomiks
* MIT License
*/var vH='<svg width="16" height="6" xmlns="http://www.w3.org/2000/svg"><path d="M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z"></svg>';var vM="tippy-content";var vN="tippy-backdrop";var vL="tippy-arrow";var vK="tippy-svg-arrow";var vq={passive:true,capture:true};var vB=function e(){return document.body};function vU(e,t){return({}).hasOwnProperty.call(e,t)}function vj(e,t,r){if(Array.isArray(e)){var n=e[t];return n==null?Array.isArray(r)?r[t]:r:n}return e}function vV(e,t){var r=({}).toString.call(e);return r.indexOf("[object")===0&&r.indexOf(t+"]")>-1}function vW(e,t){return typeof e==="function"?e.apply(void 0,t):e}function vz(e,t){// Avoid wrapping in `setTimeout` if ms is 0 anyway
if(t===0){return e}var r;return function(n){clearTimeout(r);r=setTimeout(function(){e(n)},t)}}function vG(e,t){var r=Object.assign({},e);t.forEach(function(e){delete r[e]});return r}function vQ(e){return e.split(/\s+/).filter(Boolean)}function v$(e){return[].concat(e)}function vX(e,t){if(e.indexOf(t)===-1){e.push(t)}}function vJ(e){return e.filter(function(t,r){return e.indexOf(t)===r})}function vZ(e){return e.split("-")[0]}function v0(e){return[].slice.call(e)}function v1(e){return Object.keys(e).reduce(function(t,r){if(e[r]!==undefined){t[r]=e[r]}return t},{})}function v2(){return document.createElement("div")}function v6(e){return["Element","Fragment"].some(function(t){return vV(e,t)})}function v4(e){return vV(e,"NodeList")}function v5(e){return vV(e,"MouseEvent")}function v3(e){return!!(e&&e._tippy&&e._tippy.reference===e)}function v8(e){if(v6(e)){return[e]}if(v4(e)){return v0(e)}if(Array.isArray(e)){return e}return v0(document.querySelectorAll(e))}function v9(e,t){e.forEach(function(e){if(e){e.style.transitionDuration=t+"ms"}})}function v7(e,t){e.forEach(function(e){if(e){e.setAttribute("data-state",t)}})}function ge(e){var t;var r=v$(e),n=r[0];// Elements created via a <template> have an ownerDocument with no reference to the body
return n!=null&&(t=n.ownerDocument)!=null&&t.body?n.ownerDocument:document}function gt(e,t){var r=t.clientX,n=t.clientY;return e.every(function(e){var t=e.popperRect,i=e.popperState,a=e.props;var o=a.interactiveBorder;var s=vZ(i.placement);var l=i.modifiersData.offset;if(!l){return true}var u=s==="bottom"?l.top.y:0;var c=s==="top"?l.bottom.y:0;var d=s==="right"?l.left.x:0;var f=s==="left"?l.right.x:0;var p=t.top-n+u>o;var h=n-t.bottom-c>o;var v=t.left-r+d>o;var g=r-t.right-f>o;return p||h||v||g})}function gr(e,t,r){var n=t+"EventListener";// some browsers apparently support `transition` (unprefixed) but only fire
// `webkitTransitionEnd`...
["transitionend","webkitTransitionEnd"].forEach(function(t){e[n](t,r)})}/**
 * Compared to xxx.contains, this function works for dom structures with shadow
 * dom
 */function gn(e,t){var r=t;while(r){var n;if(e.contains(r)){return true}r=r.getRootNode==null?void 0:(n=r.getRootNode())==null?void 0:n.host}return false}var gi={isTouch:false};var ga=0;/**
 * When a `touchstart` event is fired, it's assumed the user is using touch
 * input. We'll bind a `mousemove` event listener to listen for mouse input in
 * the future. This way, the `isTouch` property is fully dynamic and will handle
 * hybrid devices that use a mix of touch + mouse input.
 */function go(){if(gi.isTouch){return}gi.isTouch=true;if(window.performance){document.addEventListener("mousemove",gs)}}/**
 * When two `mousemove` event are fired consecutively within 20ms, it's assumed
 * the user is using mouse input again. `mousemove` can fire on touch devices as
 * well, but very rarely that quickly.
 */function gs(){var e=performance.now();if(e-ga<20){gi.isTouch=false;document.removeEventListener("mousemove",gs)}ga=e}/**
 * When an element is in focus and has a tippy, leaving the tab/window and
 * returning causes it to show again. For mouse users this is unexpected, but
 * for keyboard use it makes sense.
 * TODO: find a better technique to solve this problem
 */function gl(){var e=document.activeElement;if(v3(e)){var t=e._tippy;if(e.blur&&!t.state.isVisible){e.blur()}}}function gu(){document.addEventListener("touchstart",go,vq);window.addEventListener("blur",gl)}var gc=typeof window!=="undefined"&&typeof document!=="undefined";var gd=gc?!!window.msCrypto:false;function gf(e){var t=e==="destroy"?"n already-":" ";return[e+"() was called on a"+t+"destroyed instance. This is a no-op but","indicates a potential memory leak."].join(" ")}function gp(e){var t=/[ \t]{2,}/g;var r=/^[ \t]*/gm;return e.replace(t," ").replace(r,"").trim()}function gh(e){return gp("\n  %ctippy.js\n\n  %c"+gp(e)+"\n\n  %c👷‍ This is a development-only message. It will be removed in production.\n  ")}function gv(e){return[gh(e),"color: #00C584; font-size: 1.3em; font-weight: bold;","line-height: 1.5","color: #a6a095;"]}// Assume warnings and errors never have the same message
var gg;if(false){}function gm(){gg=new Set}function gb(e,t){if(e&&!gg.has(t)){var r;gg.add(t);(r=console).warn.apply(r,gv(t))}}function g_(e,t){if(e&&!gg.has(t)){var r;gg.add(t);(r=console).error.apply(r,gv(t))}}function gy(e){var t=!e;var r=Object.prototype.toString.call(e)==="[object Object]"&&!e.addEventListener;g_(t,["tippy() was passed","`"+String(e)+"`","as its targets (first) argument. Valid types are: String, Element,","Element[], or NodeList."].join(" "));g_(r,["tippy() was passed a plain object which is not supported as an argument","for virtual positioning. Use props.getReferenceClientRect instead."].join(" "))}var gw={animateFill:false,followCursor:false,inlinePositioning:false,sticky:false};var gx={allowHTML:false,animation:"fade",arrow:true,content:"",inertia:false,maxWidth:350,role:"tooltip",theme:"",zIndex:9999};var gA=Object.assign({appendTo:vB,aria:{content:"auto",expanded:"auto"},delay:0,duration:[300,250],getReferenceClientRect:null,hideOnClick:true,ignoreAttributes:false,interactive:false,interactiveBorder:2,interactiveDebounce:0,moveTransition:"",offset:[0,10],onAfterUpdate:function e(){},onBeforeUpdate:function e(){},onCreate:function e(){},onDestroy:function e(){},onHidden:function e(){},onHide:function e(){},onMount:function e(){},onShow:function e(){},onShown:function e(){},onTrigger:function e(){},onUntrigger:function e(){},onClickOutside:function e(){},placement:"top",plugins:[],popperOptions:{},render:null,showOnCreate:false,touch:true,trigger:"mouseenter focus",triggerTarget:null},gw,gx);var gE=Object.keys(gA);var gk=function e(e){/* istanbul ignore else */if(false){}var t=Object.keys(e);t.forEach(function(t){gA[t]=e[t]})};function gI(e){var t=e.plugins||[];var r=t.reduce(function(t,r){var n=r.name,i=r.defaultValue;if(n){var a;t[n]=e[n]!==undefined?e[n]:(a=gA[n])!=null?a:i}return t},{});return Object.assign({},e,r)}function gC(e,t){var r=t?Object.keys(gI(Object.assign({},gA,{plugins:t}))):gE;var n=r.reduce(function(t,r){var n=(e.getAttribute("data-tippy-"+r)||"").trim();if(!n){return t}if(r==="content"){t[r]=n}else{try{t[r]=JSON.parse(n)}catch(e){t[r]=n}}return t},{});return n}function gY(e,t){var r=Object.assign({},t,{content:vW(t.content,[e])},t.ignoreAttributes?{}:gC(e,t.plugins));r.aria=Object.assign({},gA.aria,r.aria);r.aria={expanded:r.aria.expanded==="auto"?t.interactive:r.aria.expanded,content:r.aria.content==="auto"?t.interactive?null:"describedby":r.aria.content};return r}function gS(e,t){if(e===void 0){e={}}if(t===void 0){t=[]}var r=Object.keys(e);r.forEach(function(e){var r=vG(gA,Object.keys(gw));var n=!vU(r,e);// Check if the prop exists in `plugins`
if(n){n=t.filter(function(t){return t.name===e}).length===0}gb(n,["`"+e+"`","is not a valid prop. You may have spelled it incorrectly, or if it's","a plugin, forgot to pass it in an array as props.plugins.","\n\n","All props: https://atomiks.github.io/tippyjs/v6/all-props/\n","Plugins: https://atomiks.github.io/tippyjs/v6/plugins/"].join(" "))})}function gT(e){var t=e.firstElementChild;var r=v0(t.children);return{box:t,content:r.find(function(e){return e.classList.contains(vM)}),arrow:r.find(function(e){return e.classList.contains(vL)||e.classList.contains(vK)}),backdrop:r.find(function(e){return e.classList.contains(vN)})}}var gO=1;var gD=[];// Used by `hideAll()`
var gF=[];function gP(e,t){var r=gY(e,Object.assign({},gA,gI(v1(t))));// ===========================================================================
// 🔒 Private members
// ===========================================================================
var n;var i;var a;var o=false;var s=false;var l=false;var u=false;var c;var d;var f;var p=[];var h=vz($,r.interactiveDebounce);var v;// ===========================================================================
// 🔑 Public members
// ===========================================================================
var g=gO++;var m=null;var b=vJ(r.plugins);var _={// Is the instance currently enabled?
isEnabled:true,// Is the tippy currently showing and not transitioning out?
isVisible:false,// Has the instance been destroyed?
isDestroyed:false,// Is the tippy currently mounted to the DOM?
isMounted:false,// Has the tippy finished transitioning in?
isShown:false};var y={// properties
id:g,reference:e,popper:v2(),popperInstance:m,props:r,state:_,plugins:b,// methods
clearDelayTimeouts:el,setProps:eu,setContent:ec,show:ed,hide:ef,hideWithInteractivity:ep,enable:eo,disable:es,unmount:eh,destroy:ev};// TODO: Investigate why this early return causes a TDZ error in the tests —
// it doesn't seem to happen in the browser
/* istanbul ignore if */if(!r.render){if(false){}return y}// ===========================================================================
// Initial mutations
// ===========================================================================
var w=r.render(y),x=w.popper,A=w.onUpdate;x.setAttribute("data-tippy-root","");x.id="tippy-"+y.id;y.popper=x;e._tippy=y;x._tippy=y;var E=b.map(function(e){return e.fn(y)});var k=e.hasAttribute("aria-expanded");z();H();F();P("onCreate",[y]);if(r.showOnCreate){ei()}// Prevent a tippy with a delay from hiding if the cursor left then returned
// before it started hiding
x.addEventListener("mouseenter",function(){if(y.props.interactive&&y.state.isVisible){y.clearDelayTimeouts()}});x.addEventListener("mouseleave",function(){if(y.props.interactive&&y.props.trigger.indexOf("mouseenter")>=0){T().addEventListener("mousemove",h)}});return y;// ===========================================================================
// 🔒 Private methods
// ===========================================================================
function I(){var e=y.props.touch;return Array.isArray(e)?e:[e,0]}function C(){return I()[0]==="hold"}function Y(){var e;// @ts-ignore
return!!((e=y.props.render)!=null&&e.$$tippy)}function S(){return v||e}function T(){var e=S().parentNode;return e?ge(e):document}function O(){return gT(x)}function D(e){// For touch or keyboard input, force `0` delay for UX reasons
// Also if the instance is mounted but not visible (transitioning out),
// ignore delay
if(y.state.isMounted&&!y.state.isVisible||gi.isTouch||c&&c.type==="focus"){return 0}return vj(y.props.delay,e?0:1,gA.delay)}function F(e){if(e===void 0){e=false}x.style.pointerEvents=y.props.interactive&&!e?"":"none";x.style.zIndex=""+y.props.zIndex}function P(e,t,r){if(r===void 0){r=true}E.forEach(function(r){if(r[e]){r[e].apply(r,t)}});if(r){var n;(n=y.props)[e].apply(n,t)}}function R(){var t=y.props.aria;if(!t.content){return}var r="aria-"+t.content;var n=x.id;var i=v$(y.props.triggerTarget||e);i.forEach(function(e){var t=e.getAttribute(r);if(y.state.isVisible){e.setAttribute(r,t?t+" "+n:n)}else{var i=t&&t.replace(n,"").trim();if(i){e.setAttribute(r,i)}else{e.removeAttribute(r)}}})}function H(){if(k||!y.props.aria.expanded){return}var t=v$(y.props.triggerTarget||e);t.forEach(function(e){if(y.props.interactive){e.setAttribute("aria-expanded",y.state.isVisible&&e===S()?"true":"false")}else{e.removeAttribute("aria-expanded")}})}function M(){T().removeEventListener("mousemove",h);gD=gD.filter(function(e){return e!==h})}function N(t){// Moved finger to scroll instead of an intentional tap outside
if(gi.isTouch){if(l||t.type==="mousedown"){return}}var r=t.composedPath&&t.composedPath()[0]||t.target;// Clicked on interactive popper
if(y.props.interactive&&gn(x,r)){return}// Clicked on the event listeners target
if(v$(y.props.triggerTarget||e).some(function(e){return gn(e,r)})){if(gi.isTouch){return}if(y.state.isVisible&&y.props.trigger.indexOf("click")>=0){return}}else{P("onClickOutside",[y,t])}if(y.props.hideOnClick===true){y.clearDelayTimeouts();y.hide();// `mousedown` event is fired right before `focus` if pressing the
// currentTarget. This lets a tippy with `focus` trigger know that it
// should not show
s=true;setTimeout(function(){s=false});// The listener gets added in `scheduleShow()`, but this may be hiding it
// before it shows, and hide()'s early bail-out behavior can prevent it
// from being cleaned up
if(!y.state.isMounted){B()}}}function L(){l=true}function K(){l=false}function q(){var e=T();e.addEventListener("mousedown",N,true);e.addEventListener("touchend",N,vq);e.addEventListener("touchstart",K,vq);e.addEventListener("touchmove",L,vq)}function B(){var e=T();e.removeEventListener("mousedown",N,true);e.removeEventListener("touchend",N,vq);e.removeEventListener("touchstart",K,vq);e.removeEventListener("touchmove",L,vq)}function U(e,t){V(e,function(){if(!y.state.isVisible&&x.parentNode&&x.parentNode.contains(x)){t()}})}function j(e,t){V(e,t)}function V(e,t){var r=O().box;function n(e){if(e.target===r){gr(r,"remove",n);t()}}// Make callback synchronous if duration is 0
// `transitionend` won't fire otherwise
if(e===0){return t()}gr(r,"remove",d);gr(r,"add",n);d=n}function W(t,r,n){if(n===void 0){n=false}var i=v$(y.props.triggerTarget||e);i.forEach(function(e){e.addEventListener(t,r,n);p.push({node:e,eventType:t,handler:r,options:n})})}function z(){if(C()){W("touchstart",Q,{passive:true});W("touchend",X,{passive:true})}vQ(y.props.trigger).forEach(function(e){if(e==="manual"){return}W(e,Q);switch(e){case"mouseenter":W("mouseleave",X);break;case"focus":W(gd?"focusout":"blur",J);break;case"focusin":W("focusout",J);break}})}function G(){p.forEach(function(e){var t=e.node,r=e.eventType,n=e.handler,i=e.options;t.removeEventListener(r,n,i)});p=[]}function Q(e){var t;var r=false;if(!y.state.isEnabled||Z(e)||s){return}var n=((t=c)==null?void 0:t.type)==="focus";c=e;v=e.currentTarget;H();if(!y.state.isVisible&&v5(e)){// If scrolling, `mouseenter` events can be fired if the cursor lands
// over a new target, but `mousemove` events don't get fired. This
// causes interactive tooltips to get stuck open until the cursor is
// moved
gD.forEach(function(t){return t(e)})}// Toggle show/hide when clicking click-triggered tooltips
if(e.type==="click"&&(y.props.trigger.indexOf("mouseenter")<0||o)&&y.props.hideOnClick!==false&&y.state.isVisible){r=true}else{ei(e)}if(e.type==="click"){o=!r}if(r&&!n){ea(e)}}function $(e){var t=e.target;var n=S().contains(t)||x.contains(t);if(e.type==="mousemove"&&n){return}var i=en().concat(x).map(function(e){var t;var n=e._tippy;var i=(t=n.popperInstance)==null?void 0:t.state;if(i){return{popperRect:e.getBoundingClientRect(),popperState:i,props:r}}return null}).filter(Boolean);if(gt(i,e)){M();ea(e)}}function X(e){var t=Z(e)||y.props.trigger.indexOf("click")>=0&&o;if(t){return}if(y.props.interactive){y.hideWithInteractivity(e);return}ea(e)}function J(e){if(y.props.trigger.indexOf("focusin")<0&&e.target!==S()){return}// If focus was moved to within the popper
if(y.props.interactive&&e.relatedTarget&&x.contains(e.relatedTarget)){return}ea(e)}function Z(e){return gi.isTouch?C()!==e.type.indexOf("touch")>=0:false}function ee(){et();var t=y.props,r=t.popperOptions,n=t.placement,i=t.offset,a=t.getReferenceClientRect,o=t.moveTransition;var s=Y()?gT(x).arrow:null;var l=a?{getBoundingClientRect:a,contextElement:a.contextElement||S()}:e;var u={name:"$$tippy",enabled:true,phase:"beforeWrite",requires:["computeStyles"],fn:function e(e){var t=e.state;if(Y()){var r=O(),n=r.box;["placement","reference-hidden","escaped"].forEach(function(e){if(e==="placement"){n.setAttribute("data-placement",t.placement)}else{if(t.attributes.popper["data-popper-"+e]){n.setAttribute("data-"+e,"")}else{n.removeAttribute("data-"+e)}}});t.attributes.popper={}}}};var c=[{name:"offset",options:{offset:i}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5}},{name:"computeStyles",options:{adaptive:!o}},u];if(Y()&&s){c.push({name:"arrow",options:{element:s,padding:3}})}c.push.apply(c,(r==null?void 0:r.modifiers)||[]);y.popperInstance=vR(l,x,Object.assign({},r,{placement:n,onFirstUpdate:f,modifiers:c}))}function et(){if(y.popperInstance){y.popperInstance.destroy();y.popperInstance=null}}function er(){var e=y.props.appendTo;var t;// By default, we'll append the popper to the triggerTargets's parentNode so
// it's directly after the reference element so the elements inside the
// tippy can be tabbed to
// If there are clipping issues, the user can specify a different appendTo
// and ensure focus management is handled correctly manually
var r=S();if(y.props.interactive&&e===vB||e==="parent"){t=r.parentNode}else{t=vW(e,[r])}// The popper element needs to exist on the DOM before its position can be
// updated as Popper needs to read its dimensions
if(!t.contains(x)){t.appendChild(x)}y.state.isMounted=true;ee();/* istanbul ignore else */if(false){}}function en(){return v0(x.querySelectorAll("[data-tippy-root]"))}function ei(e){y.clearDelayTimeouts();if(e){P("onTrigger",[y,e])}q();var t=D(true);var r=I(),i=r[0],a=r[1];if(gi.isTouch&&i==="hold"&&a){t=a}if(t){n=setTimeout(function(){y.show()},t)}else{y.show()}}function ea(e){y.clearDelayTimeouts();P("onUntrigger",[y,e]);if(!y.state.isVisible){B();return}// For interactive tippies, scheduleHide is added to a document.body handler
// from onMouseLeave so must intercept scheduled hides from mousemove/leave
// events when trigger contains mouseenter and click, and the tip is
// currently shown as a result of a click.
if(y.props.trigger.indexOf("mouseenter")>=0&&y.props.trigger.indexOf("click")>=0&&["mouseleave","mousemove"].indexOf(e.type)>=0&&o){return}var t=D(false);if(t){i=setTimeout(function(){if(y.state.isVisible){y.hide()}},t)}else{// Fixes a `transitionend` problem when it fires 1 frame too
// late sometimes, we don't want hide() to be called.
a=requestAnimationFrame(function(){y.hide()})}}// ===========================================================================
// 🔑 Public methods
// ===========================================================================
function eo(){y.state.isEnabled=true}function es(){// Disabling the instance should also hide it
// https://github.com/atomiks/tippy.js-react/issues/106
y.hide();y.state.isEnabled=false}function el(){clearTimeout(n);clearTimeout(i);cancelAnimationFrame(a)}function eu(t){/* istanbul ignore else */if(false){}if(y.state.isDestroyed){return}P("onBeforeUpdate",[y,t]);G();var r=y.props;var n=gY(e,Object.assign({},r,v1(t),{ignoreAttributes:true}));y.props=n;z();if(r.interactiveDebounce!==n.interactiveDebounce){M();h=vz($,n.interactiveDebounce)}// Ensure stale aria-expanded attributes are removed
if(r.triggerTarget&&!n.triggerTarget){v$(r.triggerTarget).forEach(function(e){e.removeAttribute("aria-expanded")})}else if(n.triggerTarget){e.removeAttribute("aria-expanded")}H();F();if(A){A(r,n)}if(y.popperInstance){ee();// Fixes an issue with nested tippies if they are all getting re-rendered,
// and the nested ones get re-rendered first.
// https://github.com/atomiks/tippyjs-react/issues/177
// TODO: find a cleaner / more efficient solution(!)
en().forEach(function(e){// React (and other UI libs likely) requires a rAF wrapper as it flushes
// its work in one
requestAnimationFrame(e._tippy.popperInstance.forceUpdate)})}P("onAfterUpdate",[y,t])}function ec(e){y.setProps({content:e})}function ed(){/* istanbul ignore else */if(false){}// Early bail-out
var e=y.state.isVisible;var t=y.state.isDestroyed;var r=!y.state.isEnabled;var n=gi.isTouch&&!y.props.touch;var i=vj(y.props.duration,0,gA.duration);if(e||t||r||n){return}// Normalize `disabled` behavior across browsers.
// Firefox allows events on disabled elements, but Chrome doesn't.
// Using a wrapper element (i.e. <span>) is recommended.
if(S().hasAttribute("disabled")){return}P("onShow",[y],false);if(y.props.onShow(y)===false){return}y.state.isVisible=true;if(Y()){x.style.visibility="visible"}F();q();if(!y.state.isMounted){x.style.transition="none"}// If flipping to the opposite side after hiding at least once, the
// animation will use the wrong placement without resetting the duration
if(Y()){var a=O(),o=a.box,s=a.content;v9([o,s],0)}f=function e(){var e;if(!y.state.isVisible||u){return}u=true;// reflow
void x.offsetHeight;x.style.transition=y.props.moveTransition;if(Y()&&y.props.animation){var t=O(),r=t.box,n=t.content;v9([r,n],i);v7([r,n],"visible")}R();H();vX(gF,y);// certain modifiers (e.g. `maxSize`) require a second update after the
// popper has been positioned for the first time
(e=y.popperInstance)==null?void 0:e.forceUpdate();P("onMount",[y]);if(y.props.animation&&Y()){j(i,function(){y.state.isShown=true;P("onShown",[y])})}};er()}function ef(){/* istanbul ignore else */if(false){}// Early bail-out
var e=!y.state.isVisible;var t=y.state.isDestroyed;var r=!y.state.isEnabled;var n=vj(y.props.duration,1,gA.duration);if(e||t||r){return}P("onHide",[y],false);if(y.props.onHide(y)===false){return}y.state.isVisible=false;y.state.isShown=false;u=false;o=false;if(Y()){x.style.visibility="hidden"}M();B();F(true);if(Y()){var i=O(),a=i.box,s=i.content;if(y.props.animation){v9([a,s],n);v7([a,s],"hidden")}}R();H();if(y.props.animation){if(Y()){U(n,y.unmount)}}else{y.unmount()}}function ep(e){/* istanbul ignore else */if(false){}T().addEventListener("mousemove",h);vX(gD,h);h(e)}function eh(){/* istanbul ignore else */if(false){}if(y.state.isVisible){y.hide()}if(!y.state.isMounted){return}et();// If a popper is not interactive, it will be appended outside the popper
// tree by default. This seems mainly for interactive tippies, but we should
// find a workaround if possible
en().forEach(function(e){e._tippy.unmount()});if(x.parentNode){x.parentNode.removeChild(x)}gF=gF.filter(function(e){return e!==y});y.state.isMounted=false;P("onHidden",[y])}function ev(){/* istanbul ignore else */if(false){}if(y.state.isDestroyed){return}y.clearDelayTimeouts();y.unmount();G();delete e._tippy;y.state.isDestroyed=true;P("onDestroy",[y])}}function gR(e,t){if(t===void 0){t={}}var r=gA.plugins.concat(t.plugins||[]);/* istanbul ignore else */if(false){}gu();var n=Object.assign({},t,{plugins:r});var i=v8(e);/* istanbul ignore else */if(false){var a,o}var s=i.reduce(function(e,t){var r=t&&gP(t,n);if(r){e.push(r)}return e},[]);return v6(e)?s[0]:s}gR.defaultProps=gA;gR.setDefaultProps=gk;gR.currentInput=gi;var gH=function e(e){var t=e===void 0?{}:e,r=t.exclude,n=t.duration;gF.forEach(function(e){var t=false;if(r){t=v3(r)?e.reference===r:e.popper===r.popper}if(!t){var i=e.props.duration;e.setProps({duration:n});e.hide();if(!e.state.isDestroyed){e.setProps({duration:i})}}})};// every time the popper is destroyed (i.e. a new target), removing the styles
// and causing transitions to break for singletons when the console is open, but
// most notably for non-transform styles being used, `gpuAcceleration: false`.
var gM=Object.assign({},h8,{effect:function e(e){var t=e.state;var r={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};Object.assign(t.elements.popper.style,r.popper);t.styles=r;if(t.elements.arrow){Object.assign(t.elements.arrow.style,r.arrow)}// intentionally return no cleanup function
// return () => { ... }
}});var gN=function e(e,t){var r;if(t===void 0){t={}}/* istanbul ignore else */if(false){}var n=e;var i=[];var a=[];var o;var s=t.overrides;var l=[];var u=false;function c(){a=n.map(function(e){return v$(e.props.triggerTarget||e.reference)}).reduce(function(e,t){return e.concat(t)},[])}function d(){i=n.map(function(e){return e.reference})}function f(e){n.forEach(function(t){if(e){t.enable()}else{t.disable()}})}function p(e){return n.map(function(t){var r=t.setProps;t.setProps=function(n){r(n);if(t.reference===o){e.setProps(n)}};return function(){t.setProps=r}})}// have to pass singleton, as it maybe undefined on first call
function h(e,t){var r=a.indexOf(t);// bail-out
if(t===o){return}o=t;var l=(s||[]).concat("content").reduce(function(e,t){e[t]=n[r].props[t];return e},{});e.setProps(Object.assign({},l,{getReferenceClientRect:typeof l.getReferenceClientRect==="function"?l.getReferenceClientRect:function(){var e;return(e=i[r])==null?void 0:e.getBoundingClientRect()}}))}f(false);d();c();var v={fn:function e(){return{onDestroy:function e(){f(true)},onHidden:function e(){o=null},onClickOutside:function e(e){if(e.props.showOnCreate&&!u){u=true;o=null}},onShow:function e(e){if(e.props.showOnCreate&&!u){u=true;h(e,i[0])}},onTrigger:function e(e,t){h(e,t.currentTarget)}}}};var g=gR(v2(),Object.assign({},vG(t,["overrides"]),{plugins:[v].concat(t.plugins||[]),triggerTarget:a,popperOptions:Object.assign({},t.popperOptions,{modifiers:[].concat(((r=t.popperOptions)==null?void 0:r.modifiers)||[],[gM])})}));var m=g.show;g.show=function(e){m();// first time, showOnCreate or programmatic call with no params
// default to showing first instance
if(!o&&e==null){return h(g,i[0])}// triggered from event (do nothing as prepareInstance already called by onTrigger)
// programmatic call with no params when already visible (do nothing again)
if(o&&e==null){return}// target is index of instance
if(typeof e==="number"){return i[e]&&h(g,i[e])}// target is a child tippy instance
if(n.indexOf(e)>=0){var t=e.reference;return h(g,t)}// target is a ReferenceElement
if(i.indexOf(e)>=0){return h(g,e)}};g.showNext=function(){var e=i[0];if(!o){return g.show(0)}var t=i.indexOf(o);g.show(i[t+1]||e)};g.showPrevious=function(){var e=i[i.length-1];if(!o){return g.show(e)}var t=i.indexOf(o);var r=i[t-1]||e;g.show(r)};var b=g.setProps;g.setProps=function(e){s=e.overrides||s;b(e)};g.setInstances=function(e){f(true);l.forEach(function(e){return e()});n=e;f(false);d();c();l=p(g);g.setProps({triggerTarget:a})};l=p(g);return g};var gL=/* unused pure expression or super */null&&{mouseover:"mouseenter",focusin:"focus",click:"click"};/**
 * Creates a delegate instance that controls the creation of tippy instances
 * for child elements (`target` CSS selector).
 */function gK(e,t){/* istanbul ignore else */if(false){}var r=[];var n=[];var i=false;var a=t.target;var o=vG(t,["target"]);var s=Object.assign({},o,{trigger:"manual",touch:false});var l=Object.assign({touch:gA.touch},o,{showOnCreate:true});var u=gR(e,s);var c=v$(u);function d(e){if(!e.target||i){return}var r=e.target.closest(a);if(!r){return}// Get relevant trigger with fallbacks:
// 1. Check `data-tippy-trigger` attribute on target node
// 2. Fallback to `trigger` passed to `delegate()`
// 3. Fallback to `defaultProps.trigger`
var o=r.getAttribute("data-tippy-trigger")||t.trigger||gA.trigger;// @ts-ignore
if(r._tippy){return}if(e.type==="touchstart"&&typeof l.touch==="boolean"){return}if(e.type!=="touchstart"&&o.indexOf(gL[e.type])<0){return}var s=gR(r,l);if(s){n=n.concat(s)}}function f(e,t,n,i){if(i===void 0){i=false}e.addEventListener(t,n,i);r.push({node:e,eventType:t,handler:n,options:i})}function p(e){var t=e.reference;f(t,"touchstart",d,vq);f(t,"mouseover",d);f(t,"focusin",d);f(t,"click",d)}function h(){r.forEach(function(e){var t=e.node,r=e.eventType,n=e.handler,i=e.options;t.removeEventListener(r,n,i)});r=[]}function v(e){var t=e.destroy;var r=e.enable;var a=e.disable;e.destroy=function(e){if(e===void 0){e=true}if(e){n.forEach(function(e){e.destroy()})}n=[];h();t()};e.enable=function(){r();n.forEach(function(e){return e.enable()});i=false};e.disable=function(){a();n.forEach(function(e){return e.disable()});i=true};p(e)}c.forEach(v);return u}var gq=/* unused pure expression or super */null&&{name:"animateFill",defaultValue:false,fn:function e(e){var t;// @ts-ignore
if(!((t=e.props.render)!=null&&t.$$tippy)){if(false){}return{}}var r=gT(e.popper),n=r.box,i=r.content;var a=e.props.animateFill?gB():null;return{onCreate:function t(){if(a){n.insertBefore(a,n.firstElementChild);n.setAttribute("data-animatefill","");n.style.overflow="hidden";e.setProps({arrow:false,animation:"shift-away"})}},onMount:function e(){if(a){var e=n.style.transitionDuration;var t=Number(e.replace("ms",""));// The content should fade in after the backdrop has mostly filled the
// tooltip element. `clip-path` is the other alternative but is not
// well-supported and is buggy on some devices.
i.style.transitionDelay=Math.round(t/10)+"ms";a.style.transitionDuration=e;v7([a],"visible")}},onShow:function e(){if(a){a.style.transitionDuration="0ms"}},onHide:function e(){if(a){v7([a],"hidden")}}}}};function gB(){var e=v2();e.className=vN;v7([e],"hidden");return e}var gU=/* unused pure expression or super */null&&{clientX:0,clientY:0};var gj=/* unused pure expression or super */null&&[];function gV(e){var t=e.clientX,r=e.clientY;gU={clientX:t,clientY:r}}function gW(e){e.addEventListener("mousemove",gV)}function gz(e){e.removeEventListener("mousemove",gV)}var gG=/* unused pure expression or super */null&&{name:"followCursor",defaultValue:false,fn:function e(e){var t=e.reference;var r=ge(e.props.triggerTarget||t);var n=false;var i=false;var a=true;var o=e.props;function s(){return e.props.followCursor==="initial"&&e.state.isVisible}function l(){r.addEventListener("mousemove",d)}function u(){r.removeEventListener("mousemove",d)}function c(){n=true;e.setProps({getReferenceClientRect:null});n=false}function d(r){// If the instance is interactive, avoid updating the position unless it's
// over the reference element
var n=r.target?t.contains(r.target):true;var i=e.props.followCursor;var a=r.clientX,o=r.clientY;var s=t.getBoundingClientRect();var l=a-s.left;var u=o-s.top;if(n||!e.props.interactive){e.setProps({// @ts-ignore - unneeded DOMRect properties
getReferenceClientRect:function e(){var e=t.getBoundingClientRect();var r=a;var n=o;if(i==="initial"){r=e.left+l;n=e.top+u}var s=i==="horizontal"?e.top:n;var c=i==="vertical"?e.right:r;var d=i==="horizontal"?e.bottom:n;var f=i==="vertical"?e.left:r;return{width:c-f,height:d-s,top:s,right:c,bottom:d,left:f}}})}}function f(){if(e.props.followCursor){gj.push({instance:e,doc:r});gW(r)}}function p(){gj=gj.filter(function(t){return t.instance!==e});if(gj.filter(function(e){return e.doc===r}).length===0){gz(r)}}return{onCreate:f,onDestroy:p,onBeforeUpdate:function t(){o=e.props},onAfterUpdate:function t(t,r){var a=r.followCursor;if(n){return}if(a!==undefined&&o.followCursor!==a){p();if(a){f();if(e.state.isMounted&&!i&&!s()){l()}}else{u();c()}}},onMount:function t(){if(e.props.followCursor&&!i){if(a){d(gU);a=false}if(!s()){l()}}},onTrigger:function e(e,t){if(v5(t)){gU={clientX:t.clientX,clientY:t.clientY}}i=t.type==="focus"},onHidden:function t(){if(e.props.followCursor){c();u();a=true}}}}};function gQ(e,t){var r;return{popperOptions:Object.assign({},e.popperOptions,{modifiers:[].concat((((r=e.popperOptions)==null?void 0:r.modifiers)||[]).filter(function(e){var r=e.name;return r!==t.name}),[t])})}}var g$=/* unused pure expression or super */null&&{name:"inlinePositioning",defaultValue:false,fn:function e(e){var t=e.reference;function r(){return!!e.props.inlinePositioning}var n;var i=-1;var a=false;var o=[];var s={name:"tippyInlinePositioning",enabled:true,phase:"afterWrite",fn:function t(t){var i=t.state;if(r()){if(o.indexOf(i.placement)!==-1){o=[]}if(n!==i.placement&&o.indexOf(i.placement)===-1){o.push(i.placement);e.setProps({// @ts-ignore - unneeded DOMRect properties
getReferenceClientRect:function e(){return l(i.placement)}})}n=i.placement}}};function l(e){return gX(vZ(e),t.getBoundingClientRect(),v0(t.getClientRects()),i)}function u(t){a=true;e.setProps(t);a=false}function c(){if(!a){u(gQ(e.props,s))}}return{onCreate:c,onAfterUpdate:c,onTrigger:function t(t,r){if(v5(r)){var n=v0(e.reference.getClientRects());var a=n.find(function(e){return e.left-2<=r.clientX&&e.right+2>=r.clientX&&e.top-2<=r.clientY&&e.bottom+2>=r.clientY});var o=n.indexOf(a);i=o>-1?o:i}},onHidden:function e(){i=-1}}}};function gX(e,t,r,n){// Not an inline element, or placement is not yet known
if(r.length<2||e===null){return t}// There are two rects and they are disjoined
if(r.length===2&&n>=0&&r[0].left>r[1].right){return r[n]||t}switch(e){case"top":case"bottom":{var i=r[0];var a=r[r.length-1];var o=e==="top";var s=i.top;var l=a.bottom;var u=o?i.left:a.left;var c=o?i.right:a.right;var d=c-u;var f=l-s;return{top:s,bottom:l,left:u,right:c,width:d,height:f}}case"left":case"right":{var p=Math.min.apply(Math,r.map(function(e){return e.left}));var h=Math.max.apply(Math,r.map(function(e){return e.right}));var v=r.filter(function(t){return e==="left"?t.left===p:t.right===h});var g=v[0].top;var m=v[v.length-1].bottom;var b=p;var _=h;var y=_-b;var w=m-g;return{top:g,bottom:m,left:b,right:_,width:y,height:w}}default:{return t}}}var gJ=/* unused pure expression or super */null&&{name:"sticky",defaultValue:false,fn:function e(e){var t=e.reference,r=e.popper;function n(){return e.popperInstance?e.popperInstance.state.elements.reference:t}function i(t){return e.props.sticky===true||e.props.sticky===t}var a=null;var o=null;function s(){var t=i("reference")?n().getBoundingClientRect():null;var l=i("popper")?r.getBoundingClientRect():null;if(t&&gZ(a,t)||l&&gZ(o,l)){if(e.popperInstance){e.popperInstance.update()}}a=t;o=l;if(e.state.isMounted){requestAnimationFrame(s)}}return{onMount:function t(){if(e.props.sticky){s()}}}}};function gZ(e,t){if(e&&t){return e.top!==t.top||e.right!==t.right||e.bottom!==t.bottom||e.left!==t.left}return true}gR.setDefaultProps({animation:false});/* export default */const g0=gR;//# sourceMappingURL=tippy-headless.esm.js.map
;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@tippyjs+react@4.2.6_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@tippyjs/react/headless/dist/tippy-react-headless.esm.js
function g1(e,t){if(e==null)return{};var r={};var n=Object.keys(e);var i,a;for(a=0;a<n.length;a++){i=n[a];if(t.indexOf(i)>=0)continue;r[i]=e[i]}return r}var g2=typeof window!=="undefined"&&typeof document!=="undefined";function g6(e,t){if(e){if(typeof e==="function"){e(t)}if(({}).hasOwnProperty.call(e,"current")){e.current=t}}}function g4(){return g2&&document.createElement("div")}function g5(e){var t={"data-placement":e.placement};if(e.referenceHidden){t["data-reference-hidden"]=""}if(e.escaped){t["data-escaped"]=""}return t}function g3(e,t){if(e===t){return true}else if(typeof e==="object"&&e!=null&&typeof t==="object"&&t!=null){if(Object.keys(e).length!==Object.keys(t).length){return false}for(var r in e){if(t.hasOwnProperty(r)){if(!g3(e[r],t[r])){return false}}else{return false}}return true}else{return false}}function g8(e){var t=[];e.forEach(function(e){if(!t.find(function(t){return g3(e,t)})){t.push(e)}});return t}function g9(e,t){var r,n;return Object.assign({},t,{popperOptions:Object.assign({},e.popperOptions,t.popperOptions,{modifiers:g8([].concat(((r=e.popperOptions)==null?void 0:r.modifiers)||[],((n=t.popperOptions)==null?void 0:n.modifiers)||[]))})})}var g7=g2?n.useLayoutEffect:n.useEffect;function me(e){// Using refs instead of state as it's recommended to not store imperative
// values in state due to memory problems in React(?)
var t=(0,n.useRef)();if(!t.current){t.current=typeof e==="function"?e():e}return t.current}function mt(e,t,r){r.split(/\s+/).forEach(function(r){if(r){e.classList[t](r)}})}var mr={name:"className",defaultValue:"",fn:function e(e){var t=e.popper.firstElementChild;var r=function t(){var t;return!!((t=e.props.render)==null?void 0:t.$$tippy)};function n(){if(e.props.className&&!r()){if(false){}return}mt(t,"add",e.props.className)}function i(){if(r()){mt(t,"remove",e.props.className)}}return{onCreate:n,onBeforeUpdate:i,onAfterUpdate:n}}};function mn(e){function t(t){var r=t.children,a=t.content,o=t.visible,s=t.singleton,l=t.render,u=t.reference,c=t.disabled,d=c===void 0?false:c,f=t.ignoreAttributes,p=f===void 0?true:f,h=t.__source,v=t.__self,g=g1(t,["children","content","visible","singleton","render","reference","disabled","ignoreAttributes","__source","__self"]);var m=o!==undefined;var b=s!==undefined;var _=(0,n.useState)(false),y=_[0],w=_[1];var x=(0,n.useState)({}),A=x[0],E=x[1];var k=(0,n.useState)(),I=k[0],C=k[1];var Y=me(function(){return{container:g4(),renders:1}});var S=Object.assign({ignoreAttributes:p},g,{content:Y.container});if(m){if(false){}S.trigger="manual";S.hideOnClick=false}if(b){d=true}var T=S;var O=S.plugins||[];if(l){T=Object.assign({},S,{plugins:b&&s.data!=null?[].concat(O,[{fn:function e(){return{onTrigger:function e(e,t){var r=s.data.children.find(function(e){var r=e.instance;return r.reference===t.currentTarget});e.state.$$activeSingletonInstance=r.instance;C(r.content)}}}}]):O,render:function e(){return{popper:Y.container}}})}var D=[u].concat(r?[r.type]:[]);// CREATE
g7(function(){var t=u;if(u&&u.hasOwnProperty("current")){t=u.current}var r=e(t||Y.ref||g4(),Object.assign({},T,{plugins:[mr].concat(S.plugins||[])}));Y.instance=r;if(d){r.disable()}if(o){r.show()}if(b){s.hook({instance:r,content:a,props:T,setSingletonContent:C})}w(true);return function(){r.destroy();s==null?void 0:s.cleanup(r)}},D);// UPDATE
g7(function(){var e;// Prevent this effect from running on 1st render
if(Y.renders===1){Y.renders++;return}var t=Y.instance;t.setProps(g9(t.props,T));// Fixes #264
(e=t.popperInstance)==null?void 0:e.forceUpdate();if(d){t.disable()}else{t.enable()}if(m){if(o){t.show()}else{t.hide()}}if(b){s.hook({instance:t,content:a,props:T,setSingletonContent:C})}});g7(function(){var e;if(!l){return}var t=Y.instance;t.setProps({popperOptions:Object.assign({},t.props.popperOptions,{modifiers:[].concat((((e=t.props.popperOptions)==null?void 0:e.modifiers)||[]).filter(function(e){var t=e.name;return t!=="$$tippyReact"}),[{name:"$$tippyReact",enabled:true,phase:"beforeWrite",requires:["computeStyles"],fn:function e(e){var t;var r=e.state;var n=(t=r.modifiersData)==null?void 0:t.hide;// WARNING: this is a high-risk path that can cause an infinite
// loop. This expression _must_ evaluate to false when required
if(A.placement!==r.placement||A.referenceHidden!==(n==null?void 0:n.isReferenceHidden)||A.escaped!==(n==null?void 0:n.hasPopperEscaped)){E({placement:r.placement,referenceHidden:n==null?void 0:n.isReferenceHidden,escaped:n==null?void 0:n.hasPopperEscaped})}r.attributes.popper={}}}])})})},[A.placement,A.referenceHidden,A.escaped].concat(D));return /*#__PURE__*/i().createElement(i().Fragment,null,r?/*#__PURE__*/(0,n.cloneElement)(r,{ref:function e(e){Y.ref=e;g6(r.ref,e)}}):null,y&&/*#__PURE__*/(0,is.createPortal)(l?l(g5(A),I,Y.instance):a,Y.container))}return t}function mi(e){return function t(t){var r=t===void 0?{}:t,n=r.disabled,i=n===void 0?false:n,a=r.overrides,o=a===void 0?[]:a;var s=useState(false),l=s[0],u=s[1];var c=me({children:[],renders:1});g7(function(){if(!l){u(true);return}var t=c.children,r=c.sourceData;if(!r){if(false){}return}var n=e(t.map(function(e){return e.instance}),Object.assign({},r.props,{popperOptions:r.instance.props.popperOptions,overrides:o,plugins:[mr].concat(r.props.plugins||[])}));c.instance=n;if(i){n.disable()}return function(){n.destroy();c.children=t.filter(function(e){var t=e.instance;return!t.state.isDestroyed})}},[l]);g7(function(){if(!l){return}if(c.renders===1){c.renders++;return}var e=c.children,t=c.instance,r=c.sourceData;if(!(t&&r)){return}var n=r.props,a=n.content,s=g1(n,["content"]);t.setProps(g9(t.props,Object.assign({},s,{overrides:o})));t.setInstances(e.map(function(e){return e.instance}));if(i){t.disable()}else{t.enable()}});return useMemo(function(){var e={data:c,hook:function e(e){c.sourceData=e;c.setSingletonContent=e.setSingletonContent},cleanup:function e(){c.sourceData=null}};var t={hook:function e(e){var t,r;c.children=c.children.filter(function(t){var r=t.instance;return e.instance!==r});c.children.push(e);if(((t=c.instance)==null?void 0:t.state.isMounted)&&((r=c.instance)==null?void 0:r.state.$$activeSingletonInstance)===e.instance){c.setSingletonContent==null?void 0:c.setSingletonContent(e.content)}if(c.instance&&!c.instance.state.isDestroyed){c.instance.setInstances(c.children.map(function(e){return e.instance}))}},cleanup:function e(e){c.children=c.children.filter(function(t){return t.instance!==e});if(c.instance&&!c.instance.state.isDestroyed){c.instance.setInstances(c.children.map(function(e){return e.instance}))}}};return[e,t]},[])}}var ma=function(e,t){return/*#__PURE__*/(0,n.forwardRef)(function r(r,a){var o=r.children,s=g1(r,["children"]);return(/*#__PURE__*/// If I spread them separately here, Babel adds the _extends ponyfill for
// some reason
i().createElement(e,Object.assign({},t,s),o?/*#__PURE__*/(0,n.cloneElement)(o,{ref:function e(e){g6(a,e);g6(o.ref,e)}}):null))})};var mo=/*#__PURE__*//* unused pure expression or super */null&&mi(createSingleton);var ms=/*#__PURE__*/ma(/*#__PURE__*/mn(g0),{render:function e(){return""}});/* export default */const ml=ms;//# sourceMappingURL=tippy-react-headless.esm.js.map
;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Tooltip.tsx
function mu(){var e=(0,eh._)(["\n        bottom: auto;\n        left: -4px;\n        top: 50%;\n        transform: translateY(-50%) rotate(45deg);\n      "]);mu=function t(){return e};return e}function mc(){var e=(0,eh._)(["\n        bottom: auto;\n        top: -4px;\n        left: 50%;\n        transform: translateX(-50%) rotate(45deg);\n      "]);mc=function t(){return e};return e}function md(){var e=(0,eh._)(["\n        bottom: auto;\n        top: 50%;\n        left: auto;\n        right: -4px;\n        transform: translateY(-50%) rotate(45deg);\n      "]);md=function t(){return e};return e}var mf={opacity:0,transform:"scale(0.8)"};var mp={tension:300,friction:15};var mh=e=>{var{children:r,content:n,allowHTML:i,placement:a="top",hideOnClick:o,delay:s=0,disabled:l=false,visible:u,wrapperCss:c}=e;var[d,f]=nG(()=>mf);if(l)return r;var p=()=>{f.start({opacity:1,transform:"scale(1)",config:mp})};var h=e=>{var{unmount:t}=e;f.start((0,ep._)((0,ef._)({},mf),{onRest:t,config:(0,ep._)((0,ef._)({},mp),{clamp:true})}))};return/*#__PURE__*/(0,t/* .jsx */.Y)(ml,{render:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(iL,(0,ep._)((0,ef._)({style:d,hideOnOverflow:false},e),{css:mg.contentBox(a),children:n}))},animation:true,onMount:p,onHide:h,allowHTML:i,delay:[s,100],hideOnClick:o,placement:a,visible:u,zIndex:iI/* .zIndex.highest */.fE.highest,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:c,children:r})})};/* export default */const mv=mh;var mg={contentBox:e=>/*#__PURE__*/(0,u/* .css */.AH)("max-width:250px;width:100%;background-color:",iI/* .colorTokens.color.black.main */.I6.color.black.main,";color:",iI/* .colorTokens.text.white */.I6.text.white,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";font-size:",iI/* .fontSize["15"] */.J["15"],";line-height:",iI/* .lineHeight["20"] */.K_["20"],";position:relative;&::before{content:'';height:8px;width:8px;background-color:",iI/* .colorTokens.color.black.main */.I6.color.black.main,";position:absolute;bottom:-4px;left:50%;transform:translateX(-50%) rotate(45deg);",e==="right"&&(0,u/* .css */.AH)(mu())," ",e==="bottom"&&(0,u/* .css */.AH)(mc())," ",e==="left"&&(0,u/* .css */.AH)(md()),"}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormFieldWrapper.tsx
function mm(){var e=(0,eh._)(["\n      opacity: 0.5;\n    "]);mm=function t(){return e};return e}function mb(){var e=(0,eh._)(["\n      display: none;\n    "]);mb=function t(){return e};return e}function m_(){var e=(0,eh._)(["\n      flex-direction: row;\n      align-items: center;\n      justify-content: space-between;\n      gap: ",";\n    "]);m_=function t(){return e};return e}function my(){var e=(0,eh._)(["\n        padding: 0 "," 0 ",";\n      "]);my=function t(){return e};return e}function mw(){var e=(0,eh._)(["\n        border-radius: 0;\n        border: none;\n        box-shadow: none;\n      "]);mw=function t(){return e};return e}function mx(){var e=(0,eh._)(["\n        border-color: transparent;\n      "]);mx=function t(){return e};return e}function mA(){var e=(0,eh._)(["\n          outline-color: ",";\n          background-color: ",";\n        "]);mA=function t(){return e};return e}function mE(){var e=(0,eh._)(["\n          border-color: ",";\n        "]);mE=function t(){return e};return e}function mk(){var e=(0,eh._)(["\n          color: ",";\n        "]);mk=function t(){return e};return e}function mI(){var e=(0,eh._)(["\n        border-color: ",";\n        background-color: ",";\n      "]);mI=function t(){return e};return e}function mC(){var e=(0,eh._)(["\n        border-color: ",";\n        background-color: ",";\n      "]);mC=function t(){return e};return e}function mY(){var e=(0,eh._)(["\n      justify-content: end;\n    "]);mY=function t(){return e};return e}function mS(){var e=(0,eh._)(["\n      color: ",";\n    "]);mS=function t(){return e};return e}function mT(){var e=(0,eh._)(["\n      ",";\n    "]);mT=function t(){return e};return e}var mO=e=>{var{field:r,fieldState:n,children:i,disabled:a=false,readOnly:o=false,label:s,isInlineLabel:l=false,variant:u,loading:c,placeholder:d,helpText:f,isHidden:p=false,removeBorder:h=false,characterCount:v,isSecondary:g=false,inputStyle:m,wrapperCss:b,inputContainerCss:_,onClickAiButton:y,isMagicAi:w=false,generateWithAi:x=false,replaceEntireLabel:A=false}=e;var E;var k=(0,iq/* .nanoid */.Ak)();var I=[mF.input({variant:u,hasFieldError:!!n.error,removeBorder:h,readOnly:o,hasHelpText:!!f,isSecondary:g,isMagicAi:w})];if((0,iK/* .isDefined */.O9)(m)){I.push(m)}var C=/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mF.inputWrapper,children:[i({id:k,name:r.name,css:I,"aria-invalid":n.error?"true":"false",disabled:a,readOnly:o,placeholder:d,className:"tutor-input-field"}),c&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:mF.loader,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:20,color:iI/* .colorTokens.icon["default"] */.I6.icon["default"]})})]});return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[mF.container({disabled:a,isHidden:p}),b],"data-cy":"form-field-wrapper",children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[mF.inputContainer(l),_],children:[(s||f)&&/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mF.labelContainer,children:[s&&/*#__PURE__*/(0,t/* .jsxs */.FD)("label",{htmlFor:k,css:mF.label(l,A),children:[s,/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:x,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",onClick:()=>{y===null||y===void 0?void 0:y()},css:mF.aiButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiColorize",width:32,height:32})})})]}),f&&!A&&/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:f,placement:"top",allowHTML:true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",width:20,height:20})})]}),v?/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{placement:"right",hideOnClick:false,content:v.maxLimit-v.inputCharacter>=0?v.maxLimit-v.inputCharacter:(0,oM.__)("Limit exceeded","tutor-pro"),children:C}):C]}),((E=n.error)===null||E===void 0?void 0:E.message)&&/*#__PURE__*/(0,t/* .jsxs */.FD)("p",{css:mF.errorLabel(!!n.error,l),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{style:mF.alertIcon,name:"info",width:20,height:20})," ",n.error.message]})]})};/* export default */const mD=mO;var mF={container:e=>{var{disabled:t,isHidden:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;position:relative;background:inherit;width:100%;",t&&(0,u/* .css */.AH)(mm())," ",r&&(0,u/* .css */.AH)(mb()))},inputContainer:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["4"] */.YK["4"],";width:100%;",e&&(0,u/* .css */.AH)(m_(),iI/* .spacing["12"] */.YK["12"])),input:e=>/*#__PURE__*/(0,u/* .css */.AH)("&.tutor-input-field{",iC/* .typography.body */.I.body("regular"),";width:100%;border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";color:",iI/* .colorTokens.text.title */.I6.text.title,";appearance:textfield;&:not(textarea){height:40px;}",e.hasHelpText&&(0,u/* .css */.AH)(my(),iI/* .spacing["32"] */.YK["32"],iI/* .spacing["12"] */.YK["12"])," ",e.removeBorder&&(0,u/* .css */.AH)(mw())," ",e.isSecondary&&(0,u/* .css */.AH)(mx()),":focus{",oO/* .styleUtils.inputFocus */.x.inputFocus,";",e.isMagicAi&&(0,u/* .css */.AH)(mA(),iI/* .colorTokens.stroke.magicAi */.I6.stroke.magicAi,iI/* .colorTokens.background.magicAi["8"] */.I6.background.magicAi["8"])," ",e.hasFieldError&&(0,u/* .css */.AH)(mE(),iI/* .colorTokens.stroke.danger */.I6.stroke.danger),"}::-webkit-outer-spin-button,::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}::placeholder{",iC/* .typography.caption */.I.caption("regular"),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";",e.isSecondary&&(0,u/* .css */.AH)(mk(),iI/* .colorTokens.text.hints */.I6.text.hints),"}",e.hasFieldError&&(0,u/* .css */.AH)(mI(),iI/* .colorTokens.stroke.danger */.I6.stroke.danger,iI/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail)," ",e.readOnly&&(0,u/* .css */.AH)(mC(),iI/* .colorTokens.background.disable */.I6.background.disable,iI/* .colorTokens.background.disable */.I6.background.disable),"}"),errorLabel:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";line-height:",iI/* .lineHeight["20"] */.K_["20"],";display:flex;align-items:start;margin-top:",iI/* .spacing["4"] */.YK["4"],";",t&&(0,u/* .css */.AH)(mY())," ",e&&(0,u/* .css */.AH)(mS(),iI/* .colorTokens.text.status.onHold */.I6.text.status.onHold),"    & svg{margin-right:",iI/* .spacing["2"] */.YK["2"],";transform:rotate(180deg);}"),labelContainer:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";> div{display:flex;color:",iI/* .colorTokens.color.black["30"] */.I6.color.black["30"],";}"),label:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";margin:0px;width:",t?"100%":"auto",";color:",iI/* .colorTokens.text.title */.I6.text.title,";display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";",e&&(0,u/* .css */.AH)(mT(),iC/* .typography.caption */.I.caption())),aiButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";width:32px;height:32px;border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";display:flex;align-items:center;justify-content:center;:disabled{cursor:not-allowed;}&:focus,&:active,&:hover{background:none;}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";}"),inputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;"),loader:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:50%;right:",iI/* .spacing["12"] */.YK["12"],";transform:translateY(-50%);display:flex;"),alertIcon:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useVisibilityControl.tsx
/**
 * Custom hook to control the visibility of fields based on the provided visibility key and context.
 *
 * @param {string} visibilityKey - The key used to determine the visibility of the field.
 * @returns {boolean} - Returns true if the field should be visible, false otherwise.
 */var mP=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return(0,n.useMemo)(()=>{var t;// If no visibility key provided, always show the field
if(!(0,iK/* .isDefined */.O9)(e)){return true}var[r,n]=(e===null||e===void 0?void 0:e.split("."))||[];if(!(0,iK/* .isDefined */.O9)(r)||!(0,iK/* .isDefined */.O9)(n)){return true}var i=cS/* .tutorConfig */.P===null||cS/* .tutorConfig */.P===void 0?void 0:(t=cS/* .tutorConfig.visibility_control */.P.visibility_control)===null||t===void 0?void 0:t[r];if(!i){return true}var a=cS/* .tutorConfig.current_user.roles */.P.current_user.roles;var o=a.includes("administrator")?"admin":"instructor";var s="".concat(n,"_").concat(o);if(!Object.keys(i).includes(s)){return true}return i[s]==="on"},[e])};/* export default */const mR=mP;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hoc/withVisibilityControl.tsx
var mH=e=>{return r=>{var{visibilityKey:n}=r,i=(0,iY._)(r,["visibilityKey"]);var a=mR(n);if(!a){return null}// @ts-ignore
return/*#__PURE__*/(0,t/* .jsx */.Y)(e,(0,ef._)({},i))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useWpMedia.ts
var mM=e=>{var{options:t={},onChange:r,initialFiles:i}=e;var{showToast:a}=i2();var o=(0,n.useMemo)(()=>i?Array.isArray(i)?i:[i]:[],[i]);var s=(0,n.useMemo)(()=>(0,ep._)((0,ef._)({},t,t.type?{library:{type:t.type}}:{}),{multiple:t.multiple?t.multiple===true?"add":t.multiple:false}),[t]);var[l,u]=(0,n.useState)(o);(0,n.useEffect)(()=>{if(o&&!l.length){u(o)}},[l,o]);var c=(0,n.useCallback)(()=>{var e;if(!((e=window.wp)===null||e===void 0?void 0:e.media)){// eslint-disable-next-line no-console
console.error("WordPress media library is not available");return}var t=window.wp.media(s);t.on("close",()=>{if(t.$el){t.$el.parent().parent().remove()}});t.on("open",()=>{var e=t.state().get("selection");t.$el.attr("data-focus-trap","true");e.reset();l.forEach(t=>{var r=window.wp.media.attachment(t.id);if(r){r.fetch();e.add(r)}})});t.on("select",()=>{var e=t.state().get("selection").toJSON();var n=new Set(e.map(e=>e.id));var i=l.filter(e=>n.has(e.id));var o=e.reduce((e,t)=>{if(i.some(e=>e.id===t.id)){return e}if(s.maxFileSize&&t.filesizeInBytes>s.maxFileSize){a({// translators: %s is the file title
message:(0,oM.sprintf)((0,oM.__)("%s size exceeds the maximum allowed size","tutor-pro"),t.title),type:"danger"});return e}var r={id:t.id,title:t.title,url:t.url,name:t.title,size:t.filesizeHumanReadable,size_bytes:t.filesizeInBytes,ext:t.filename.split(".").pop()||""};e.push(r);return e},[]);var c=s.multiple?[...i,...o]:o.slice(0,1);if(s.maxFiles&&c.length>s.maxFiles){a({// translators: %d is the maximum number of files allowed.
message:(0,oM.sprintf)((0,oM.__)("Cannot select more than %d files","tutor-pro"),s.maxFiles),type:"warning"});return}u(c);r===null||r===void 0?void 0:r(s.multiple?c:c[0]||null);t.close()});t.open()},[s,r,l,a]);var d=(0,n.useCallback)(()=>{u([]);r===null||r===void 0?void 0:r(s.multiple?[]:null)},[s.multiple,r]);return{openMediaLibrary:c,existingFiles:l,resetFiles:d}};/* export default */const mN=mM;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormFileUploader.tsx
function mL(){var e=(0,eh._)(["\n      background-color: ",";\n      padding: "," 0 "," ",";\n      border: 1px solid ",";\n      border-radius: ",";\n      gap: ",";\n    "]);mL=function t(){return e};return e}function mK(){var e=(0,eh._)(["\n      margin-right: ",";\n    "]);mK=function t(){return e};return e}var mq={iso:["iso"],dwg:["dwg"],pdf:["pdf"],doc:["doc","docx"],csv:["csv"],xls:["xls","xlsx"],ppt:["ppt","pptx"],zip:["zip"],archive:["rar","7z","tar","gz"],txt:["txt"],rtf:["rtf"],text:["log"],jpg:["jpg"],png:["png"],image:["jpeg","gif","webp","avif"],mp3:["mp3"],fla:["fla"],audio:["ogg","wav","wma"],mp4:["mp4"],avi:["avi"],ai:["ai"],videoFile:["mkv","mpeg","flv","mov","wmv"],svg:["svg"],css:["css"],javascript:["js"],xml:["xml"],html:["html"],exe:["exe"],psd:["psd"],jsonFile:["json"],dbf:["dbf"]};var mB=e=>{for(var[t,r]of Object.entries(mq)){if(r.includes(e)){return t}}return"file"};var mU=e=>{var{field:r,fieldState:n,label:i,helpText:a,buttonText:o=(0,oM.__)("Upload Media","tutor-pro"),selectMultiple:s=false,onChange:l,maxFileSize:u,maxFiles:c}=e;var d=r.value;var{openMediaLibrary:f,resetFiles:p}=mN({options:{multiple:s,maxFiles:c,maxFileSize:u},onChange:e=>{r.onChange(e);if(l){l(e)}},initialFiles:d?Array.isArray(d)?d:[d]:[]});var h=()=>{f()};var v=e=>{p();if(s){var t=(Array.isArray(d)?d:d?[d]:[]).filter(t=>t.id!==e);r.onChange(t.length>0?t:null);if(l){l(t.length>0?t:null)}}else{r.onChange(null);if(l){l(null)}}};return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:i,field:r,fieldState:n,helpText:a,children:()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:d,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:mV.uploadButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"attach",height:24,width:24}),variant:"secondary",onClick:h,children:o}),children:e=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mV.wrapper({hasFiles:Array.isArray(e)?e.length>0:e!==null}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:mV.attachmentsWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:Array.isArray(e)?e:[e],children:e=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mV.attachmentCardWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mV.attachmentCard,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{style:mV.fileIcon,name:mB(e.ext||"file"),height:40,width:40}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mV.attachmentCardBody,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:mV.attachmentCardTitle,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{title:e.title,css:oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),children:e.title}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:mV.fileExtension,children:".".concat(e.ext)})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:mV.attachmentCardSubtitle,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:"".concat((0,oM.__)("Size","tutor-pro"),": ").concat(e.size)})})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:mV.removeButton,onClick:()=>{v(e.id)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",height:24,width:24})})]},e.id)})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:mV.uploadButtonWrapper({hasFiles:Array.isArray(e)?e.length>0:e!==null}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:mV.uploadButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"attach",height:24,width:24}),variant:"secondary",onClick:h,"data-cy":"upload-media",children:o})})]})})}})};/* export default */const mj=mH(mU);var mV={wrapper:e=>{var{hasFiles:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;position:relative;",t&&(0,u/* .css */.AH)(mL(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .spacing["16"] */.YK["16"],iI/* .spacing["16"] */.YK["16"],iI/* .spacing["16"] */.YK["16"],iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],iI/* .borderRadius.card */.Vq.card,iI/* .spacing["8"] */.YK["8"]))},attachmentsWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-height:260px;padding-right:",iI/* .spacing["16"] */.YK["16"],";",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,";"),attachmentCardWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;gap:",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["4"] */.YK["4"]," 0;border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";button{opacity:0;}&:hover,&:focus-within{background:",iI/* .colorTokens.background.hover */.I6.background.hover,";button{opacity:1;}}",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{button{opacity:1;}}"),attachmentCard:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";overflow:hidden;"),attachmentCardBody:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";"),attachmentCardTitle:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),"    word-break:break-all;"),fileExtension:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;"),attachmentCardSubtitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny("regular")," ",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}"),uploadButtonWrapper:e=>{var{hasFiles:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(t&&(0,u/* .css */.AH)(mK(),iI/* .spacing["16"] */.YK["16"]))},uploadButton:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;"),fileIcon:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";"),removeButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.crossButton */.x.crossButton,";background:none;transition:none;flex-shrink:0;")};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_async_to_generator.js
function mW(e,t,r,n,i,a,o){try{var s=e[a](o);var l=s.value}catch(e){r(e);return}if(s.done)t(l);else Promise.resolve(l).then(n,i)}function mz(e){return function(){var t=this,r=arguments;return new Promise(function(n,i){var a=e.apply(t,r);function o(e){mW(a,n,i,o,s,"next",e)}function s(e){mW(a,n,i,o,s,"throw",e)}o(undefined)})}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/react-hook-form@7.67.0_react@18.3.1/node_modules/react-hook-form/dist/index.esm.mjs
var mG=e=>e.type==="checkbox";var mQ=e=>e instanceof Date;var m$=e=>e==null;const mX=e=>typeof e==="object";var mJ=e=>!m$(e)&&!Array.isArray(e)&&mX(e)&&!mQ(e);var mZ=e=>mJ(e)&&e.target?mG(e.target)?e.target.checked:e.target.value:e;var m0=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e;var m1=(e,t)=>e.has(m0(t));var m2=e=>{const t=e.constructor&&e.constructor.prototype;return mJ(t)&&t.hasOwnProperty("isPrototypeOf")};var m6=typeof window!=="undefined"&&typeof window.HTMLElement!=="undefined"&&typeof document!=="undefined";function m4(e){let t;const r=Array.isArray(e);const n=typeof FileList!=="undefined"?e instanceof FileList:false;if(e instanceof Date){t=new Date(e)}else if(!(m6&&(e instanceof Blob||n))&&(r||mJ(e))){t=r?[]:Object.create(Object.getPrototypeOf(e));if(!r&&!m2(e)){t=e}else{for(const r in e){if(e.hasOwnProperty(r)){t[r]=m4(e[r])}}}}else{return e}return t}var m5=e=>/^\w*$/.test(e);var m3=e=>e===undefined;var m8=e=>Array.isArray(e)?e.filter(Boolean):[];var m9=e=>m8(e.replace(/["|']|\]/g,"").split(/\.|\[/));var m7=(e,t,r)=>{if(!t||!mJ(e)){return r}const n=(m5(t)?[t]:m9(t)).reduce((e,t)=>m$(e)?e:e[t],e);return m3(n)||n===e?m3(e[t])?r:e[t]:n};var be=e=>typeof e==="boolean";var bt=(e,t,r)=>{let n=-1;const i=m5(t)?[t]:m9(t);const a=i.length;const o=a-1;while(++n<a){const t=i[n];let a=r;if(n!==o){const r=e[t];a=mJ(r)||Array.isArray(r)?r:!isNaN(+i[n+1])?[]:{}}if(t==="__proto__"||t==="constructor"||t==="prototype"){return}e[t]=a;e=e[t]}};const br={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"};const bn={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"};const bi={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"};const ba=n.createContext(null);ba.displayName="HookFormContext";/**
 * This custom hook allows you to access the form context. useFormContext is intended to be used in deeply nested structures, where it would become inconvenient to pass the context as a prop. To be used with {@link FormProvider}.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)
 *
 * @returns return all useForm methods
 *
 * @example
 * ```tsx
 * function App() {
 *   const methods = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   return (
 *     <FormProvider {...methods} >
 *       <form onSubmit={methods.handleSubmit(onSubmit)}>
 *         <NestedInput />
 *         <input type="submit" />
 *       </form>
 *     </FormProvider>
 *   );
 * }
 *
 *  function NestedInput() {
 *   const { register } = useFormContext(); // retrieve all hook methods
 *   return <input {...register("test")} />;
 * }
 * ```
 */const bo=()=>n.useContext(ba);/**
 * A provider component that propagates the `useForm` methods to all children components via [React Context](https://react.dev/reference/react/useContext) API. To be used with {@link useFormContext}.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformcontext) • [Demo](https://codesandbox.io/s/react-hook-form-v7-form-context-ytudi)
 *
 * @param props - all useForm methods
 *
 * @example
 * ```tsx
 * function App() {
 *   const methods = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   return (
 *     <FormProvider {...methods} >
 *       <form onSubmit={methods.handleSubmit(onSubmit)}>
 *         <NestedInput />
 *         <input type="submit" />
 *       </form>
 *     </FormProvider>
 *   );
 * }
 *
 *  function NestedInput() {
 *   const { register } = useFormContext(); // retrieve all hook methods
 *   return <input {...register("test")} />;
 * }
 * ```
 */const bs=e=>{const{children:t,...r}=e;return n.createElement(ba.Provider,{value:r},t)};var bl=(e,t,r,n=true)=>{const i={defaultValues:t._defaultValues};for(const a in e){Object.defineProperty(i,a,{get:()=>{const i=a;if(t._proxyFormState[i]!==bn.all){t._proxyFormState[i]=!n||bn.all}r&&(r[i]=true);return e[i]}})}return i};const bu=typeof window!=="undefined"?n.useLayoutEffect:n.useEffect;/**
 * This custom hook allows you to subscribe to each form state, and isolate the re-render at the custom hook level. It has its scope in terms of form state subscription, so it would not affect other useFormState and useForm. Using this hook can reduce the re-render impact on large and complex form application.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useformstate) • [Demo](https://codesandbox.io/s/useformstate-75xly)
 *
 * @param props - include options on specify fields to subscribe. {@link UseFormStateReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, handleSubmit, control } = useForm({
 *     defaultValues: {
 *     firstName: "firstName"
 *   }});
 *   const { dirtyFields } = useFormState({
 *     control
 *   });
 *   const onSubmit = (data) => console.log(data);
 *
 *   return (
 *     <form onSubmit={handleSubmit(onSubmit)}>
 *       <input {...register("firstName")} placeholder="First Name" />
 *       {dirtyFields.firstName && <p>Field is dirty.</p>}
 *       <input type="submit" />
 *     </form>
 *   );
 * }
 * ```
 */function bc(e){const t=bo();const{control:r=t.control,disabled:i,name:a,exact:o}=e||{};const[s,l]=n.useState(r._formState);const u=n.useRef({isDirty:false,isLoading:false,dirtyFields:false,touchedFields:false,validatingFields:false,isValidating:false,isValid:false,errors:false});bu(()=>r._subscribe({name:a,formState:u.current,exact:o,callback:e=>{!i&&l({...r._formState,...e})}}),[a,i,o]);n.useEffect(()=>{u.current.isValid&&r._setValid(true)},[r]);return n.useMemo(()=>bl(s,r,u.current,false),[s,r])}var bd=e=>typeof e==="string";var bf=(e,t,r,n,i)=>{if(bd(e)){n&&t.watch.add(e);return m7(r,e,i)}if(Array.isArray(e)){return e.map(e=>(n&&t.watch.add(e),m7(r,e)))}n&&(t.watchAll=true);return r};var bp=e=>m$(e)||!mX(e);function bh(e,t,r=new WeakSet){if(bp(e)||bp(t)){return Object.is(e,t)}if(mQ(e)&&mQ(t)){return e.getTime()===t.getTime()}const n=Object.keys(e);const i=Object.keys(t);if(n.length!==i.length){return false}if(r.has(e)||r.has(t)){return true}r.add(e);r.add(t);for(const a of n){const n=e[a];if(!i.includes(a)){return false}if(a!=="ref"){const e=t[a];if(mQ(n)&&mQ(e)||mJ(n)&&mJ(e)||Array.isArray(n)&&Array.isArray(e)?!bh(n,e,r):!Object.is(n,e)){return false}}}return true}/**
 * Custom hook to subscribe to field change and isolate re-rendering at the component level.
 *
 * @remarks
 *
 * [API](https://react-hook-form.com/docs/usewatch) • [Demo](https://codesandbox.io/s/react-hook-form-v7-ts-usewatch-h9i5e)
 *
 * @example
 * ```tsx
 * const { control } = useForm();
 * const values = useWatch({
 *   name: "fieldName"
 *   control,
 * })
 * ```
 */function bv(e){const t=bo();const{control:r=t.control,name:i,defaultValue:a,disabled:o,exact:s,compute:l}=e||{};const u=n.useRef(a);const c=n.useRef(l);const d=n.useRef(undefined);const f=n.useRef(r);const p=n.useRef(i);c.current=l;const[h,v]=n.useState(()=>{const e=r._getWatch(i,u.current);return c.current?c.current(e):e});const g=n.useCallback(e=>{const t=bf(i,r._names,e||r._formValues,false,u.current);return c.current?c.current(t):t},[r._formValues,r._names,i]);const m=n.useCallback(e=>{if(!o){const t=bf(i,r._names,e||r._formValues,false,u.current);if(c.current){const e=c.current(t);if(!bh(e,d.current)){v(e);d.current=e}}else{v(t)}}},[r._formValues,r._names,o,i]);bu(()=>{if(f.current!==r||!bh(p.current,i)){f.current=r;p.current=i;m()}return r._subscribe({name:i,formState:{values:true},exact:s,callback:e=>{m(e.values)}})},[r,s,i,m]);n.useEffect(()=>r._removeUnmounted());// If name or control changed for this render, synchronously reflect the
// latest value so callers (like useController) see the correct value
// immediately on the same render.
// Optimize: Check control reference first before expensive deepEqual
const b=f.current!==r;const _=p.current;// Cache the computed output to avoid duplicate calls within the same render
// We include shouldReturnImmediate in deps to ensure proper recomputation
const y=n.useMemo(()=>{if(o){return null}const e=!b&&!bh(_,i);const t=b||e;return t?g():null},[o,b,i,_,g]);return y!==null?y:h}/**
 * Custom hook to work with controlled component, this function provide you with both form and field level state. Re-render is isolated at the hook level.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usecontroller) • [Demo](https://codesandbox.io/s/usecontroller-0o8px)
 *
 * @param props - the path name to the form field value, and validation rules.
 *
 * @returns field properties, field and form state. {@link UseControllerReturn}
 *
 * @example
 * ```tsx
 * function Input(props) {
 *   const { field, fieldState, formState } = useController(props);
 *   return (
 *     <div>
 *       <input {...field} placeholder={props.name} />
 *       <p>{fieldState.isTouched && "Touched"}</p>
 *       <p>{formState.isSubmitted ? "submitted" : ""}</p>
 *     </div>
 *   );
 * }
 * ```
 */function bg(e){const t=bo();const{name:r,disabled:i,control:a=t.control,shouldUnregister:o,defaultValue:s,exact:l=true}=e;const u=m1(a._names.array,r);const c=n.useMemo(()=>m7(a._formValues,r,m7(a._defaultValues,r,s)),[a,r,s]);const d=bv({control:a,name:r,defaultValue:c,exact:l});const f=bc({control:a,name:r,exact:l});const p=n.useRef(e);const h=n.useRef(undefined);const v=n.useRef(a.register(r,{...e.rules,value:d,...be(e.disabled)?{disabled:e.disabled}:{}}));p.current=e;const g=n.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:true,get:()=>!!m7(f.errors,r)},isDirty:{enumerable:true,get:()=>!!m7(f.dirtyFields,r)},isTouched:{enumerable:true,get:()=>!!m7(f.touchedFields,r)},isValidating:{enumerable:true,get:()=>!!m7(f.validatingFields,r)},error:{enumerable:true,get:()=>m7(f.errors,r)}}),[f,r]);const m=n.useCallback(e=>v.current.onChange({target:{value:mZ(e),name:r},type:br.CHANGE}),[r]);const b=n.useCallback(()=>v.current.onBlur({target:{value:m7(a._formValues,r),name:r},type:br.BLUR}),[r,a._formValues]);const _=n.useCallback(e=>{const t=m7(a._fields,r);if(t&&e){t._f.ref={focus:()=>e.focus&&e.focus(),select:()=>e.select&&e.select(),setCustomValidity:t=>e.setCustomValidity(t),reportValidity:()=>e.reportValidity()}}},[a._fields,r]);const y=n.useMemo(()=>({name:r,value:d,...be(i)||f.disabled?{disabled:f.disabled||i}:{},onChange:m,onBlur:b,ref:_}),[r,i,f.disabled,m,b,_,d]);n.useEffect(()=>{const e=a._options.shouldUnregister||o;const t=h.current;if(t&&t!==r&&!u){a.unregister(t)}a.register(r,{...p.current.rules,...be(p.current.disabled)?{disabled:p.current.disabled}:{}});const n=(e,t)=>{const r=m7(a._fields,e);if(r&&r._f){r._f.mount=t}};n(r,true);if(e){const e=m4(m7(a._options.defaultValues,r,p.current.defaultValue));bt(a._defaultValues,r,e);if(m3(m7(a._formValues,r))){bt(a._formValues,r,e)}}!u&&a.register(r);h.current=r;return()=>{(u?e&&!a._state.action:e)?a.unregister(r):n(r,false)}},[r,a,u,o]);n.useEffect(()=>{a._setDisabledField({disabled:i,name:r})},[i,r,a]);return n.useMemo(()=>({field:y,formState:f,fieldState:g}),[y,f,g])}/**
 * Component based on `useController` hook to work with controlled component.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usecontroller/controller) • [Demo](https://codesandbox.io/s/react-hook-form-v6-controller-ts-jwyzw) • [Video](https://www.youtube.com/watch?v=N2UNk_UCVyA)
 *
 * @param props - the path name to the form field value, and validation rules.
 *
 * @returns provide field handler functions, field and form state.
 *
 * @example
 * ```tsx
 * function App() {
 *   const { control } = useForm<FormValues>({
 *     defaultValues: {
 *       test: ""
 *     }
 *   });
 *
 *   return (
 *     <form>
 *       <Controller
 *         control={control}
 *         name="test"
 *         render={({ field: { onChange, onBlur, value, ref }, formState, fieldState }) => (
 *           <>
 *             <input
 *               onChange={onChange} // send value to hook form
 *               onBlur={onBlur} // notify when input is touched
 *               value={value} // return updated value
 *               ref={ref} // set ref for focus management
 *             />
 *             <p>{formState.isSubmitted ? "submitted" : ""}</p>
 *             <p>{fieldState.isTouched ? "touched" : ""}</p>
 *           </>
 *         )}
 *       />
 *     </form>
 *   );
 * }
 * ```
 */const bm=e=>e.render(bg(e));const bb=e=>{const t={};for(const r of Object.keys(e)){if(mX(e[r])&&e[r]!==null){const n=bb(e[r]);for(const e of Object.keys(n)){t[`${r}.${e}`]=n[e]}}else{t[r]=e[r]}}return t};const b_="post";/**
 * Form component to manage submission.
 *
 * @param props - to setup submission detail. {@link FormProps}
 *
 * @returns form component or headless render prop.
 *
 * @example
 * ```tsx
 * function App() {
 *   const { control, formState: { errors } } = useForm();
 *
 *   return (
 *     <Form action="/api" control={control}>
 *       <input {...register("name")} />
 *       <p>{errors?.root?.server && 'Server error'}</p>
 *       <button>Submit</button>
 *     </Form>
 *   );
 * }
 * ```
 */function by(e){const t=bo();const[r,n]=React.useState(false);const{control:i=t.control,onSubmit:a,children:o,action:s,method:l=b_,headers:u,encType:c,onError:d,render:f,onSuccess:p,validateStatus:h,...v}=e;const g=async t=>{let r=false;let n="";await i.handleSubmit(async e=>{const o=new FormData;let f="";try{f=JSON.stringify(e)}catch(e){}const v=bb(i._formValues);for(const e in v){o.append(e,v[e])}if(a){await a({data:e,event:t,method:l,formData:o,formDataJson:f})}if(s){try{const e=[u&&u["Content-Type"],c].some(e=>e&&e.includes("json"));const t=await fetch(String(s),{method:l,headers:{...u,...c&&c!=="multipart/form-data"?{"Content-Type":c}:{}},body:e?f:o});if(t&&(h?!h(t.status):t.status<200||t.status>=300)){r=true;d&&d({response:t});n=String(t.status)}else{p&&p({response:t})}}catch(e){r=true;d&&d({error:e})}}})(t);if(r&&e.control){e.control._subjects.state.next({isSubmitSuccessful:false});e.control.setError("root.server",{type:n})}};React.useEffect(()=>{n(true)},[]);return f?React.createElement(React.Fragment,null,f({submit:g})):React.createElement("form",{noValidate:r,action:s,method:l,encType:c,onSubmit:g,...v},o)}var bw=(e,t,r,n,i)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[n]:i||true}}:{};var bx=e=>Array.isArray(e)?e:[e];var bA=()=>{let e=[];const t=t=>{for(const r of e){r.next&&r.next(t)}};const r=t=>{e.push(t);return{unsubscribe:()=>{e=e.filter(e=>e!==t)}}};const n=()=>{e=[]};return{get observers(){return e},next:t,subscribe:r,unsubscribe:n}};function bE(e,t){const r={};for(const n in e){if(e.hasOwnProperty(n)){const i=e[n];const a=t[n];if(i&&mJ(i)&&a){const e=bE(i,a);if(mJ(e)){r[n]=e}}else if(e[n]){r[n]=a}}}return r}var bk=e=>mJ(e)&&!Object.keys(e).length;var bI=e=>e.type==="file";var bC=e=>typeof e==="function";var bY=e=>{if(!m6){return false}const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)};var bS=e=>e.type===`select-multiple`;var bT=e=>e.type==="radio";var bO=e=>bT(e)||mG(e);var bD=e=>bY(e)&&e.isConnected;function bF(e,t){const r=t.slice(0,-1).length;let n=0;while(n<r){e=m3(e)?n++:e[t[n++]]}return e}function bP(e){for(const t in e){if(e.hasOwnProperty(t)&&!m3(e[t])){return false}}return true}function bR(e,t){const r=Array.isArray(t)?t:m5(t)?[t]:m9(t);const n=r.length===1?e:bF(e,r);const i=r.length-1;const a=r[i];if(n){delete n[a]}if(i!==0&&(mJ(n)&&bk(n)||Array.isArray(n)&&bP(n))){bR(e,r.slice(0,-1))}return e}var bH=e=>{for(const t in e){if(bC(e[t])){return true}}return false};function bM(e){return Array.isArray(e)||mJ(e)&&!bH(e)}function bN(e,t={}){for(const r in e){const n=e[r];if(bM(n)){t[r]=Array.isArray(n)?[]:{};bN(n,t[r])}else if(!m3(n)){t[r]=true}}return t}function bL(e,t,r){if(!r){r=bN(t)}for(const n in e){const i=e[n];if(bM(i)){if(m3(t)||bp(r[n])){r[n]=bN(i,Array.isArray(i)?[]:{})}else{bL(i,m$(t)?{}:t[n],r[n])}}else{const e=t[n];r[n]=!bh(i,e)}}return r}const bK={value:false,isValid:false};const bq={value:true,isValid:true};var bB=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!m3(e[0].attributes.value)?m3(e[0].value)||e[0].value===""?bq:{value:e[0].value,isValid:true}:bq:bK}return bK};var bU=(e,{valueAsNumber:t,valueAsDate:r,setValueAs:n})=>m3(e)?e:t?e===""?NaN:e?+e:e:r&&bd(e)?new Date(e):n?n(e):e;const bj={isValid:false,value:null};var bV=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:true,value:t.value}:e,bj):bj;function bW(e){const t=e.ref;if(bI(t)){return t.files}if(bT(t)){return bV(e.refs).value}if(bS(t)){return[...t.selectedOptions].map(({value:e})=>e)}if(mG(t)){return bB(e.refs).value}return bU(m3(t.value)?e.ref.value:t.value,e)}var bz=(e,t,r,n)=>{const i={};for(const r of e){const e=m7(t,r);e&&bt(i,r,e._f)}return{criteriaMode:r,names:[...e],fields:i,shouldUseNativeValidation:n}};var bG=e=>e instanceof RegExp;var bQ=e=>m3(e)?e:bG(e)?e.source:mJ(e)?bG(e.value)?e.value.source:e.value:e;var b$=e=>({isOnSubmit:!e||e===bn.onSubmit,isOnBlur:e===bn.onBlur,isOnChange:e===bn.onChange,isOnAll:e===bn.all,isOnTouch:e===bn.onTouched});const bX="AsyncFunction";var bJ=e=>!!e&&!!e.validate&&!!(bC(e.validate)&&e.validate.constructor.name===bX||mJ(e.validate)&&Object.values(e.validate).find(e=>e.constructor.name===bX));var bZ=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);var b0=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))));const b1=(e,t,r,n)=>{for(const i of r||Object.keys(e)){const r=m7(e,i);if(r){const{_f:e,...a}=r;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!n){return true}else if(e.ref&&t(e.ref,e.name)&&!n){return true}else{if(b1(a,t)){break}}}else if(mJ(a)){if(b1(a,t)){break}}}}return};function b2(e,t,r){const n=m7(e,r);if(n||m5(r)){return{error:n,name:r}}const i=r.split(".");while(i.length){const n=i.join(".");const a=m7(t,n);const o=m7(e,n);if(a&&!Array.isArray(a)&&r!==n){return{name:r}}if(o&&o.type){return{name:n,error:o}}if(o&&o.root&&o.root.type){return{name:`${n}.root`,error:o.root}}i.pop()}return{name:r}}var b6=(e,t,r,n)=>{r(e);const{name:i,...a}=e;return bk(a)||Object.keys(a).length>=Object.keys(t).length||Object.keys(a).find(e=>t[e]===(!n||bn.all))};var b4=(e,t,r)=>!e||!t||e===t||bx(e).some(e=>e&&(r?e===t:e.startsWith(t)||t.startsWith(e)));var b5=(e,t,r,n,i)=>{if(i.isOnAll){return false}else if(!r&&i.isOnTouch){return!(t||e)}else if(r?n.isOnBlur:i.isOnBlur){return!e}else if(r?n.isOnChange:i.isOnChange){return e}return true};var b3=(e,t)=>!m8(m7(e,t)).length&&bR(e,t);var b8=(e,t,r)=>{const n=bx(m7(e,r));bt(n,"root",t[r]);bt(e,r,n);return e};function b9(e,t,r="validate"){if(bd(e)||Array.isArray(e)&&e.every(bd)||be(e)&&!e){return{type:r,message:bd(e)?e:"",ref:t}}}var b7=e=>mJ(e)&&!bG(e)?e:{value:e,message:""};var _e=async(e,t,r,n,i,a)=>{const{ref:o,refs:s,required:l,maxLength:u,minLength:c,min:d,max:f,pattern:p,validate:h,name:v,valueAsNumber:g,mount:m}=e._f;const b=m7(r,v);if(!m||t.has(v)){return{}}const _=s?s[0]:o;const y=e=>{if(i&&_.reportValidity){_.setCustomValidity(be(e)?"":e||"");_.reportValidity()}};const w={};const x=bT(o);const A=mG(o);const E=x||A;const k=(g||bI(o))&&m3(o.value)&&m3(b)||bY(o)&&o.value===""||b===""||Array.isArray(b)&&!b.length;const I=bw.bind(null,v,n,w);const C=(e,t,r,n=bi.maxLength,i=bi.minLength)=>{const a=e?t:r;w[v]={type:e?n:i,message:a,ref:o,...I(e?n:i,a)}};if(a?!Array.isArray(b)||!b.length:l&&(!E&&(k||m$(b))||be(b)&&!b||A&&!bB(s).isValid||x&&!bV(s).isValid)){const{value:e,message:t}=bd(l)?{value:!!l,message:l}:b7(l);if(e){w[v]={type:bi.required,message:t,ref:_,...I(bi.required,t)};if(!n){y(t);return w}}}if(!k&&(!m$(d)||!m$(f))){let e;let t;const r=b7(f);const i=b7(d);if(!m$(b)&&!isNaN(b)){const n=o.valueAsNumber||(b?+b:b);if(!m$(r.value)){e=n>r.value}if(!m$(i.value)){t=n<i.value}}else{const n=o.valueAsDate||new Date(b);const a=e=>new Date(new Date().toDateString()+" "+e);const s=o.type=="time";const l=o.type=="week";if(bd(r.value)&&b){e=s?a(b)>a(r.value):l?b>r.value:n>new Date(r.value)}if(bd(i.value)&&b){t=s?a(b)<a(i.value):l?b<i.value:n<new Date(i.value)}}if(e||t){C(!!e,r.message,i.message,bi.max,bi.min);if(!n){y(w[v].message);return w}}}if((u||c)&&!k&&(bd(b)||a&&Array.isArray(b))){const e=b7(u);const t=b7(c);const r=!m$(e.value)&&b.length>+e.value;const i=!m$(t.value)&&b.length<+t.value;if(r||i){C(r,e.message,t.message);if(!n){y(w[v].message);return w}}}if(p&&!k&&bd(b)){const{value:e,message:t}=b7(p);if(bG(e)&&!b.match(e)){w[v]={type:bi.pattern,message:t,ref:o,...I(bi.pattern,t)};if(!n){y(t);return w}}}if(h){if(bC(h)){const e=await h(b,r);const t=b9(e,_);if(t){w[v]={...t,...I(bi.validate,t.message)};if(!n){y(t.message);return w}}}else if(mJ(h)){let e={};for(const t in h){if(!bk(e)&&!n){break}const i=b9(await h[t](b,r),_,t);if(i){e={...i,...I(t,i.message)};y(i.message);if(n){w[v]=e}}}if(!bk(e)){w[v]={ref:_,...e};if(!n){return w}}}}y(true);return w};const _t={mode:bn.onSubmit,reValidateMode:bn.onChange,shouldFocusError:true};function _r(e={}){let t={..._t,...e};let r={submitCount:0,isDirty:false,isReady:false,isLoading:bC(t.defaultValues),isValidating:false,isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,touchedFields:{},dirtyFields:{},validatingFields:{},errors:t.errors||{},disabled:t.disabled||false};let n={};let i=mJ(t.defaultValues)||mJ(t.values)?m4(t.defaultValues||t.values)||{}:{};let a=t.shouldUnregister?{}:m4(i);let o={action:false,mount:false,watch:false};let s={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set};let l;let u=0;const c={isDirty:false,dirtyFields:false,validatingFields:false,touchedFields:false,isValidating:false,isValid:false,errors:false};let d={...c};const f={array:bA(),state:bA()};const p=t.criteriaMode===bn.all;const h=e=>t=>{clearTimeout(u);u=setTimeout(e,t)};const v=async e=>{if(!t.disabled&&(c.isValid||d.isValid||e)){const e=t.resolver?bk((await A()).errors):await k(n,true);if(e!==r.isValid){f.state.next({isValid:e})}}};const g=(e,n)=>{if(!t.disabled&&(c.isValidating||c.validatingFields||d.isValidating||d.validatingFields)){(e||Array.from(s.mount)).forEach(e=>{if(e){n?bt(r.validatingFields,e,n):bR(r.validatingFields,e)}});f.state.next({validatingFields:r.validatingFields,isValidating:!bk(r.validatingFields)})}};const m=(e,s=[],l,u,p=true,h=true)=>{if(u&&l&&!t.disabled){o.action=true;if(h&&Array.isArray(m7(n,e))){const t=l(m7(n,e),u.argA,u.argB);p&&bt(n,e,t)}if(h&&Array.isArray(m7(r.errors,e))){const t=l(m7(r.errors,e),u.argA,u.argB);p&&bt(r.errors,e,t);b3(r.errors,e)}if((c.touchedFields||d.touchedFields)&&h&&Array.isArray(m7(r.touchedFields,e))){const t=l(m7(r.touchedFields,e),u.argA,u.argB);p&&bt(r.touchedFields,e,t)}if(c.dirtyFields||d.dirtyFields){r.dirtyFields=bL(i,a)}f.state.next({name:e,isDirty:C(e,s),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else{bt(a,e,s)}};const b=(e,t)=>{bt(r.errors,e,t);f.state.next({errors:r.errors})};const _=e=>{r.errors=e;f.state.next({errors:r.errors,isValid:false})};const y=(e,t,r,s)=>{const l=m7(n,e);if(l){const n=m7(a,e,m3(r)?m7(i,e):r);m3(n)||s&&s.defaultChecked||t?bt(a,e,t?n:bW(l._f)):T(e,n);o.mount&&!o.action&&v()}};const w=(e,n,a,o,s)=>{let l=false;let u=false;const p={name:e};if(!t.disabled){if(!a||o){if(c.isDirty||d.isDirty){u=r.isDirty;r.isDirty=p.isDirty=C();l=u!==p.isDirty}const t=bh(m7(i,e),n);u=!!m7(r.dirtyFields,e);t?bR(r.dirtyFields,e):bt(r.dirtyFields,e,true);p.dirtyFields=r.dirtyFields;l=l||(c.dirtyFields||d.dirtyFields)&&u!==!t}if(a){const t=m7(r.touchedFields,e);if(!t){bt(r.touchedFields,e,a);p.touchedFields=r.touchedFields;l=l||(c.touchedFields||d.touchedFields)&&t!==a}}l&&s&&f.state.next(p)}return l?p:{}};const x=(e,n,i,a)=>{const o=m7(r.errors,e);const s=(c.isValid||d.isValid)&&be(n)&&r.isValid!==n;if(t.delayError&&i){l=h(()=>b(e,i));l(t.delayError)}else{clearTimeout(u);l=null;i?bt(r.errors,e,i):bR(r.errors,e)}if((i?!bh(o,i):o)||!bk(a)||s){const t={...a,...s&&be(n)?{isValid:n}:{},errors:r.errors,name:e};r={...r,...t};f.state.next(t)}};const A=async e=>{g(e,true);const r=await t.resolver(a,t.context,bz(e||s.mount,n,t.criteriaMode,t.shouldUseNativeValidation));g(e);return r};const E=async e=>{const{errors:t}=await A(e);if(e){for(const n of e){const e=m7(t,n);e?bt(r.errors,n,e):bR(r.errors,n)}}else{r.errors=t}return t};const k=async(e,n,i={valid:true})=>{for(const o in e){const l=e[o];if(l){const{_f:e,...o}=l;if(e){const o=s.array.has(e.name);const u=l._f&&bJ(l._f);if(u&&c.validatingFields){g([e.name],true)}const d=await _e(l,s.disabled,a,p,t.shouldUseNativeValidation&&!n,o);if(u&&c.validatingFields){g([e.name])}if(d[e.name]){i.valid=false;if(n){break}}!n&&(m7(d,e.name)?o?b8(r.errors,d,e.name):bt(r.errors,e.name,d[e.name]):bR(r.errors,e.name))}!bk(o)&&await k(o,n,i)}}return i.valid};const I=()=>{for(const e of s.unMount){const t=m7(n,e);t&&(t._f.refs?t._f.refs.every(e=>!bD(e)):!bD(t._f.ref))&&U(e)}s.unMount=new Set};const C=(e,r)=>!t.disabled&&(e&&r&&bt(a,e,r),!bh(H(),i));const Y=(e,t,r)=>bf(e,s,{...o.mount?a:m3(t)?i:bd(e)?{[e]:t}:t},r,t);const S=e=>m8(m7(o.mount?a:i,e,t.shouldUnregister?m7(i,e,[]):[]));const T=(e,t,r={})=>{const i=m7(n,e);let o=t;if(i){const r=i._f;if(r){!r.disabled&&bt(a,e,bU(t,r));o=bY(r.ref)&&m$(t)?"":t;if(bS(r.ref)){[...r.ref.options].forEach(e=>e.selected=o.includes(e.value))}else if(r.refs){if(mG(r.ref)){r.refs.forEach(e=>{if(!e.defaultChecked||!e.disabled){if(Array.isArray(o)){e.checked=!!o.find(t=>t===e.value)}else{e.checked=o===e.value||!!o}}})}else{r.refs.forEach(e=>e.checked=e.value===o)}}else if(bI(r.ref)){r.ref.value=""}else{r.ref.value=o;if(!r.ref.type){f.state.next({name:e,values:m4(a)})}}}}(r.shouldDirty||r.shouldTouch)&&w(e,o,r.shouldTouch,r.shouldDirty,true);r.shouldValidate&&R(e)};const O=(e,t,r)=>{for(const i in t){if(!t.hasOwnProperty(i)){return}const a=t[i];const o=e+"."+i;const l=m7(n,o);(s.array.has(e)||mJ(a)||l&&!l._f)&&!mQ(a)?O(o,a,r):T(o,a,r)}};const D=(e,t,l={})=>{const u=m7(n,e);const p=s.array.has(e);const h=m4(t);bt(a,e,h);if(p){f.array.next({name:e,values:m4(a)});if((c.isDirty||c.dirtyFields||d.isDirty||d.dirtyFields)&&l.shouldDirty){f.state.next({name:e,dirtyFields:bL(i,a),isDirty:C(e,h)})}}else{u&&!u._f&&!m$(h)?O(e,h,l):T(e,h,l)}b0(e,s)&&f.state.next({...r,name:e});f.state.next({name:o.mount?e:undefined,values:m4(a)})};const F=async e=>{o.mount=true;const i=e.target;let u=i.name;let h=true;const m=m7(n,u);const b=e=>{h=Number.isNaN(e)||mQ(e)&&isNaN(e.getTime())||bh(e,m7(a,u,e))};const _=b$(t.mode);const y=b$(t.reValidateMode);if(m){let o;let E;const I=i.type?bW(m._f):mZ(e);const C=e.type===br.BLUR||e.type===br.FOCUS_OUT;const Y=!bZ(m._f)&&!t.resolver&&!m7(r.errors,u)&&!m._f.deps||b5(C,m7(r.touchedFields,u),r.isSubmitted,y,_);const S=b0(u,s,C);bt(a,u,I);if(C){if(!i||!i.readOnly){m._f.onBlur&&m._f.onBlur(e);l&&l(0)}}else if(m._f.onChange){m._f.onChange(e)}const T=w(u,I,C);const O=!bk(T)||S;!C&&f.state.next({name:u,type:e.type,values:m4(a)});if(Y){if(c.isValid||d.isValid){if(t.mode==="onBlur"){if(C){v()}}else if(!C){v()}}return O&&f.state.next({name:u,...S?{}:T})}!C&&S&&f.state.next({...r});if(t.resolver){const{errors:e}=await A([u]);b(I);if(h){const t=b2(r.errors,n,u);const i=b2(e,n,t.name||u);o=i.error;u=i.name;E=bk(e)}}else{g([u],true);o=(await _e(m,s.disabled,a,p,t.shouldUseNativeValidation))[u];g([u]);b(I);if(h){if(o){E=false}else if(c.isValid||d.isValid){E=await k(n,true)}}}if(h){m._f.deps&&(!Array.isArray(m._f.deps)||m._f.deps.length>0)&&R(m._f.deps);x(u,E,o,T)}}};const P=(e,t)=>{if(m7(r.errors,t)&&e.focus){e.focus();return 1}return};const R=async(e,i={})=>{let a;let o;const l=bx(e);if(t.resolver){const t=await E(m3(e)?e:l);a=bk(t);o=e?!l.some(e=>m7(t,e)):a}else if(e){o=(await Promise.all(l.map(async e=>{const t=m7(n,e);return await k(t&&t._f?{[e]:t}:t)}))).every(Boolean);!(!o&&!r.isValid)&&v()}else{o=a=await k(n)}f.state.next({...!bd(e)||(c.isValid||d.isValid)&&a!==r.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:r.errors});i.shouldFocus&&!o&&b1(n,P,e?l:s.mount);return o};const H=(e,t)=>{let n={...o.mount?a:i};if(t){n=bE(t.dirtyFields?r.dirtyFields:r.touchedFields,n)}return m3(e)?n:bd(e)?m7(n,e):e.map(e=>m7(n,e))};const M=(e,t)=>({invalid:!!m7((t||r).errors,e),isDirty:!!m7((t||r).dirtyFields,e),error:m7((t||r).errors,e),isValidating:!!m7(r.validatingFields,e),isTouched:!!m7((t||r).touchedFields,e)});const N=e=>{e&&bx(e).forEach(e=>bR(r.errors,e));f.state.next({errors:e?r.errors:{}})};const L=(e,t,i)=>{const a=(m7(n,e,{_f:{}})._f||{}).ref;const o=m7(r.errors,e)||{};// Don't override existing error messages elsewhere in the object tree.
const{ref:s,message:l,type:u,...c}=o;bt(r.errors,e,{...c,...t,ref:a});f.state.next({name:e,errors:r.errors,isValid:false});i&&i.shouldFocus&&a&&a.focus&&a.focus()};const K=(e,t)=>bC(e)?f.state.subscribe({next:r=>"values"in r&&e(Y(undefined,t),r)}):Y(e,t,true);const q=e=>f.state.subscribe({next:t=>{if(b4(e.name,t.name,e.exact)&&b6(t,e.formState||c,Z,e.reRenderRoot)){e.callback({values:{...a},...r,...t,defaultValues:i})}}}).unsubscribe;const B=e=>{o.mount=true;d={...d,...e.formState};return q({...e,formState:d})};const U=(e,o={})=>{for(const l of e?bx(e):s.mount){s.mount.delete(l);s.array.delete(l);if(!o.keepValue){bR(n,l);bR(a,l)}!o.keepError&&bR(r.errors,l);!o.keepDirty&&bR(r.dirtyFields,l);!o.keepTouched&&bR(r.touchedFields,l);!o.keepIsValidating&&bR(r.validatingFields,l);!t.shouldUnregister&&!o.keepDefaultValue&&bR(i,l)}f.state.next({values:m4(a)});f.state.next({...r,...!o.keepDirty?{}:{isDirty:C()}});!o.keepIsValid&&v()};const j=({disabled:e,name:t})=>{if(be(e)&&o.mount||!!e||s.disabled.has(t)){e?s.disabled.add(t):s.disabled.delete(t)}};const V=(e,r={})=>{let a=m7(n,e);const l=be(r.disabled)||be(t.disabled);bt(n,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:true,...r}});s.mount.add(e);if(a){j({disabled:be(r.disabled)?r.disabled:t.disabled,name:e})}else{y(e,true,r.value)}return{...l?{disabled:r.disabled||t.disabled}:{},...t.progressive?{required:!!r.required,min:bQ(r.min),max:bQ(r.max),minLength:bQ(r.minLength),maxLength:bQ(r.maxLength),pattern:bQ(r.pattern)}:{},name:e,onChange:F,onBlur:F,ref:l=>{if(l){V(e,r);a=m7(n,e);const t=m3(l.value)?l.querySelectorAll?l.querySelectorAll("input,select,textarea")[0]||l:l:l;const o=bO(t);const s=a._f.refs||[];if(o?s.find(e=>e===t):t===a._f.ref){return}bt(n,e,{_f:{...a._f,...o?{refs:[...s.filter(bD),t,...Array.isArray(m7(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}});y(e,false,undefined,t)}else{a=m7(n,e,{});if(a._f){a._f.mount=false}(t.shouldUnregister||r.shouldUnregister)&&!(m1(s.array,e)&&o.action)&&s.unMount.add(e)}}}};const W=()=>t.shouldFocusError&&b1(n,P,s.mount);const z=e=>{if(be(e)){f.state.next({disabled:e});b1(n,(t,r)=>{const i=m7(n,r);if(i){t.disabled=i._f.disabled||e;if(Array.isArray(i._f.refs)){i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e})}}},0,false)}};const G=(e,i)=>async o=>{let l=undefined;if(o){o.preventDefault&&o.preventDefault();o.persist&&o.persist()}let u=m4(a);f.state.next({isSubmitting:true});if(t.resolver){const{errors:e,values:t}=await A();r.errors=e;u=m4(t)}else{await k(n)}if(s.disabled.size){for(const e of s.disabled){bR(u,e)}}bR(r.errors,"root");if(bk(r.errors)){f.state.next({errors:{}});try{await e(u,o)}catch(e){l=e}}else{if(i){await i({...r.errors},o)}W();setTimeout(W)}f.state.next({isSubmitted:true,isSubmitting:false,isSubmitSuccessful:bk(r.errors)&&!l,submitCount:r.submitCount+1,errors:r.errors});if(l){throw l}};const Q=(e,t={})=>{if(m7(n,e)){if(m3(t.defaultValue)){D(e,m4(m7(i,e)))}else{D(e,t.defaultValue);bt(i,e,m4(t.defaultValue))}if(!t.keepTouched){bR(r.touchedFields,e)}if(!t.keepDirty){bR(r.dirtyFields,e);r.isDirty=t.defaultValue?C(e,m4(m7(i,e))):C()}if(!t.keepError){bR(r.errors,e);c.isValid&&v()}f.state.next({...r})}};const $=(e,l={})=>{const u=e?m4(e):i;const d=m4(u);const p=bk(e);const h=p?i:d;if(!l.keepDefaultValues){i=u}if(!l.keepValues){if(l.keepDirtyValues){const e=new Set([...s.mount,...Object.keys(bL(i,a))]);for(const t of Array.from(e)){m7(r.dirtyFields,t)?bt(h,t,m7(a,t)):D(t,m7(h,t))}}else{if(m6&&m3(e)){for(const e of s.mount){const t=m7(n,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(bY(e)){const t=e.closest("form");if(t){t.reset();break}}}}}if(l.keepFieldsRef){for(const e of s.mount){D(e,m7(h,e))}}else{n={}}}a=t.shouldUnregister?l.keepDefaultValues?m4(i):{}:m4(h);f.array.next({values:{...h}});f.state.next({values:{...h}})}s={mount:l.keepDirtyValues?s.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:false,focus:""};o.mount=!c.isValid||!!l.keepIsValid||!!l.keepDirtyValues||!t.shouldUnregister&&!bk(h);o.watch=!!t.shouldUnregister;f.state.next({submitCount:l.keepSubmitCount?r.submitCount:0,isDirty:p?false:l.keepDirty?r.isDirty:!!(l.keepDefaultValues&&!bh(e,i)),isSubmitted:l.keepIsSubmitted?r.isSubmitted:false,dirtyFields:p?{}:l.keepDirtyValues?l.keepDefaultValues&&a?bL(i,a):r.dirtyFields:l.keepDefaultValues&&e?bL(i,e):l.keepDirty?r.dirtyFields:{},touchedFields:l.keepTouched?r.touchedFields:{},errors:l.keepErrors?r.errors:{},isSubmitSuccessful:l.keepIsSubmitSuccessful?r.isSubmitSuccessful:false,isSubmitting:false,defaultValues:i})};const X=(e,t)=>$(bC(e)?e(a):e,t);const J=(e,t={})=>{const r=m7(n,e);const i=r&&r._f;if(i){const e=i.refs?i.refs[0]:i.ref;if(e.focus){e.focus();t.shouldSelect&&bC(e.select)&&e.select()}}};const Z=e=>{r={...r,...e}};const ee=()=>bC(t.defaultValues)&&t.defaultValues().then(e=>{X(e,t.resetOptions);f.state.next({isLoading:false})});const et={control:{register:V,unregister:U,getFieldState:M,handleSubmit:G,setError:L,_subscribe:q,_runSchema:A,_focusError:W,_getWatch:Y,_getDirty:C,_setValid:v,_setFieldArray:m,_setDisabledField:j,_setErrors:_,_getFieldArray:S,_reset:$,_resetDefaultValues:ee,_removeUnmounted:I,_disableForm:z,_subjects:f,_proxyFormState:c,get _fields(){return n},get _formValues(){return a},get _state(){return o},set _state(value){o=value},get _defaultValues(){return i},get _names(){return s},set _names(value){s=value},get _formState(){return r},get _options(){return t},set _options(value){t={...t,...value}}},subscribe:B,trigger:R,register:V,handleSubmit:G,watch:K,setValue:D,getValues:H,reset:X,resetField:Q,clearErrors:N,unregister:U,setError:L,setFocus:J,getFieldState:M};return{...et,formControl:et}}var _n=()=>{if(typeof crypto!=="undefined"&&crypto.randomUUID){return crypto.randomUUID()}const e=typeof performance==="undefined"?Date.now():performance.now()*1e3;return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const r=(Math.random()*16+e)%16|0;return(t=="x"?r:r&3|8).toString(16)})};var _i=(e,t,r={})=>r.shouldFocus||m3(r.shouldFocus)?r.focusName||`${e}.${m3(r.focusIndex)?t:r.focusIndex}.`:"";var _a=(e,t)=>[...e,...bx(t)];var _o=e=>Array.isArray(e)?e.map(()=>undefined):undefined;function _s(e,t,r){return[...e.slice(0,t),...bx(r),...e.slice(t)]}var _l=(e,t,r)=>{if(!Array.isArray(e)){return[]}if(m3(e[r])){e[r]=undefined}e.splice(r,0,e.splice(t,1)[0]);return e};var _u=(e,t)=>[...bx(t),...bx(e)];function _c(e,t){let r=0;const n=[...e];for(const e of t){n.splice(e-r,1);r++}return m8(n).length?n:[]}var _d=(e,t)=>m3(t)?[]:_c(e,bx(t).sort((e,t)=>e-t));var _f=(e,t,r)=>{[e[t],e[r]]=[e[r],e[t]]};var _p=(e,t,r)=>{e[t]=r;return e};/**
 * A custom hook that exposes convenient methods to perform operations with a list of dynamic inputs that need to be appended, updated, removed etc. • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn) • [Video](https://youtu.be/4MrbfGSFY2A)
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/usefieldarray) • [Demo](https://codesandbox.io/s/react-hook-form-usefieldarray-ssugn)
 *
 * @param props - useFieldArray props
 *
 * @returns methods - functions to manipulate with the Field Arrays (dynamic inputs) {@link UseFieldArrayReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, control, handleSubmit, reset, trigger, setError } = useForm({
 *     defaultValues: {
 *       test: []
 *     }
 *   });
 *   const { fields, append } = useFieldArray({
 *     control,
 *     name: "test"
 *   });
 *
 *   return (
 *     <form onSubmit={handleSubmit(data => console.log(data))}>
 *       {fields.map((item, index) => (
 *          <input key={item.id} {...register(`test.${index}.firstName`)}  />
 *       ))}
 *       <button type="button" onClick={() => append({ firstName: "bill" })}>
 *         append
 *       </button>
 *       <input type="submit" />
 *     </form>
 *   );
 * }
 * ```
 */function _h(e){const t=bo();const{control:r=t.control,name:n,keyName:i="id",shouldUnregister:a,rules:o}=e;const[s,l]=React.useState(r._getFieldArray(n));const u=React.useRef(r._getFieldArray(n).map(_n));const c=React.useRef(false);r._names.array.add(n);React.useMemo(()=>o&&s.length>=0&&r.register(n,o),[r,n,s.length,o]);bu(()=>r._subjects.array.subscribe({next:({values:e,name:t})=>{if(t===n||!t){const t=m7(e,n);if(Array.isArray(t)){l(t);u.current=t.map(_n)}}}}).unsubscribe,[r,n]);const d=React.useCallback(e=>{c.current=true;r._setFieldArray(n,e)},[r,n]);const f=(e,t)=>{const i=bx(m4(e));const a=_a(r._getFieldArray(n),i);r._names.focus=_i(n,a.length-1,t);u.current=_a(u.current,i.map(_n));d(a);l(a);r._setFieldArray(n,a,_a,{argA:_o(e)})};const p=(e,t)=>{const i=bx(m4(e));const a=_u(r._getFieldArray(n),i);r._names.focus=_i(n,0,t);u.current=_u(u.current,i.map(_n));d(a);l(a);r._setFieldArray(n,a,_u,{argA:_o(e)})};const h=e=>{const t=_d(r._getFieldArray(n),e);u.current=_d(u.current,e);d(t);l(t);!Array.isArray(m7(r._fields,n))&&bt(r._fields,n,undefined);r._setFieldArray(n,t,_d,{argA:e})};const v=(e,t,i)=>{const a=bx(m4(t));const o=_s(r._getFieldArray(n),e,a);r._names.focus=_i(n,e,i);u.current=_s(u.current,e,a.map(_n));d(o);l(o);r._setFieldArray(n,o,_s,{argA:e,argB:_o(t)})};const g=(e,t)=>{const i=r._getFieldArray(n);_f(i,e,t);_f(u.current,e,t);d(i);l(i);r._setFieldArray(n,i,_f,{argA:e,argB:t},false)};const m=(e,t)=>{const i=r._getFieldArray(n);_l(i,e,t);_l(u.current,e,t);d(i);l(i);r._setFieldArray(n,i,_l,{argA:e,argB:t},false)};const b=(e,t)=>{const i=m4(t);const a=_p(r._getFieldArray(n),e,i);u.current=[...a].map((t,r)=>!t||r===e?_n():u.current[r]);d(a);l([...a]);r._setFieldArray(n,a,_p,{argA:e,argB:i},true,false)};const _=e=>{const t=bx(m4(e));u.current=t.map(_n);d([...t]);l([...t]);r._setFieldArray(n,[...t],e=>e,{},true,false)};React.useEffect(()=>{r._state.action=false;b0(n,r._names)&&r._subjects.state.next({...r._formState});if(c.current&&(!b$(r._options.mode).isOnSubmit||r._formState.isSubmitted)&&!b$(r._options.reValidateMode).isOnSubmit){if(r._options.resolver){r._runSchema([n]).then(e=>{const t=m7(e.errors,n);const i=m7(r._formState.errors,n);if(i?!t&&i.type||t&&(i.type!==t.type||i.message!==t.message):t&&t.type){t?bt(r._formState.errors,n,t):bR(r._formState.errors,n);r._subjects.state.next({errors:r._formState.errors})}})}else{const e=m7(r._fields,n);if(e&&e._f&&!(b$(r._options.reValidateMode).isOnSubmit&&b$(r._options.mode).isOnSubmit)){_e(e,r._names.disabled,r._formValues,r._options.criteriaMode===bn.all,r._options.shouldUseNativeValidation,true).then(e=>!bk(e)&&r._subjects.state.next({errors:b8(r._formState.errors,e,n)}))}}}r._subjects.state.next({name:n,values:m4(r._formValues)});r._names.focus&&b1(r._fields,(e,t)=>{if(r._names.focus&&t.startsWith(r._names.focus)&&e.focus){e.focus();return 1}return});r._names.focus="";r._setValid();c.current=false},[s,n,r]);React.useEffect(()=>{!m7(r._formValues,n)&&r._setFieldArray(n);return()=>{const e=(e,t)=>{const n=m7(r._fields,e);if(n&&n._f){n._f.mount=t}};r._options.shouldUnregister||a?r.unregister(n):e(n,false)}},[n,r,i,a]);return{swap:React.useCallback(g,[d,n,r]),move:React.useCallback(m,[d,n,r]),prepend:React.useCallback(p,[d,n,r]),append:React.useCallback(f,[d,n,r]),remove:React.useCallback(h,[d,n,r]),insert:React.useCallback(v,[d,n,r]),update:React.useCallback(b,[d,n,r]),replace:React.useCallback(_,[d,n,r]),fields:React.useMemo(()=>s.map((e,t)=>({...e,[i]:u.current[t]||_n()})),[s,i])}}/**
 * Custom hook to manage the entire form.
 *
 * @remarks
 * [API](https://react-hook-form.com/docs/useform) • [Demo](https://codesandbox.io/s/react-hook-form-get-started-ts-5ksmm) • [Video](https://www.youtube.com/watch?v=RkXv4AXXC_4)
 *
 * @param props - form configuration and validation parameters.
 *
 * @returns methods - individual functions to manage the form state. {@link UseFormReturn}
 *
 * @example
 * ```tsx
 * function App() {
 *   const { register, handleSubmit, watch, formState: { errors } } = useForm();
 *   const onSubmit = data => console.log(data);
 *
 *   console.log(watch("example"));
 *
 *   return (
 *     <form onSubmit={handleSubmit(onSubmit)}>
 *       <input defaultValue="test" {...register("example")} />
 *       <input {...register("exampleRequired", { required: true })} />
 *       {errors.exampleRequired && <span>This field is required</span>}
 *       <button>Submit</button>
 *     </form>
 *   );
 * }
 * ```
 */function _v(e={}){const t=n.useRef(undefined);const r=n.useRef(undefined);const[i,a]=n.useState({isDirty:false,isValidating:false,isLoading:bC(e.defaultValues),isSubmitted:false,isSubmitting:false,isSubmitSuccessful:false,isValid:false,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||false,isReady:false,defaultValues:bC(e.defaultValues)?undefined:e.defaultValues});if(!t.current){if(e.formControl){t.current={...e.formControl,formState:i};if(e.defaultValues&&!bC(e.defaultValues)){e.formControl.reset(e.defaultValues,e.resetOptions)}}else{const{formControl:r,...n}=_r(e);t.current={...n,formState:i}}}const o=t.current.control;o._options=e;bu(()=>{const e=o._subscribe({formState:o._proxyFormState,callback:()=>a({...o._formState}),reRenderRoot:true});a(e=>({...e,isReady:true}));o._formState.isReady=true;return e},[o]);n.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]);n.useEffect(()=>{if(e.mode){o._options.mode=e.mode}if(e.reValidateMode){o._options.reValidateMode=e.reValidateMode}},[o,e.mode,e.reValidateMode]);n.useEffect(()=>{if(e.errors){o._setErrors(e.errors);o._focusError()}},[o,e.errors]);n.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]);n.useEffect(()=>{if(o._proxyFormState.isDirty){const e=o._getDirty();if(e!==i.isDirty){o._subjects.state.next({isDirty:e})}}},[o,i.isDirty]);n.useEffect(()=>{var t;if(e.values&&!bh(e.values,r.current)){o._reset(e.values,{keepFieldsRef:true,...o._options.resetOptions});if(!((t=o._options.resetOptions)===null||t===void 0?void 0:t.keepIsValid)){o._setValid()}r.current=e.values;a(e=>({...e}))}else{o._resetDefaultValues()}},[o,e.values]);n.useEffect(()=>{if(!o._state.mount){o._setValid();o._state.mount=true}if(o._state.watch){o._state.watch=false;o._subjects.state.next({...o._formState})}o._removeUnmounted()});t.current.formState=bl(i,o);return t.current}/**
 * Watch component that subscribes to form field changes and re-renders when watched fields update.
 *
 * @param control - The form control object from useForm
 * @param names - Array of field names to watch for changes
 * @param render - The function that receives watched values and returns ReactNode
 * @returns The result of calling render function with watched values
 *
 * @example
 * The `Watch` component only re-render when the values of `foo`, `bar`, and `baz.qux` change.
 * The types of `foo`, `bar`, and `baz.qux` are precisely inferred.
 *
 * ```tsx
 * const { control } = useForm();
 *
 * <Watch
 *   control={control}
 *   names={['foo', 'bar', 'baz.qux']}
 *   render={([foo, bar, baz_qux]) => <div>{foo}{bar}{baz_qux}</div>}
 * />
 * ```
 */const _g=({control:e,names:t,render:r})=>r(bv({control:e,name:t}));//# sourceMappingURL=index.esm.mjs.map
// EXTERNAL MODULE: ../tutor/assets/src/js/v3/shared/utils/create-variation.ts
var _m=r(7367);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/MagicButton.tsx
var _b=/*#__PURE__*/i().forwardRef((e,r)=>{var{className:n,variant:i,size:a,children:o,type:s="button",disabled:l=false,roundedFull:u=true,loading:c}=e,d=(0,iY._)(e,["className","variant","size","children","type","disabled","roundedFull","loading"]);return/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({type:s,ref:r,css:_x({variant:i,size:a,rounded:u?"true":"false"}),className:n,disabled:l},d),{children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:_w.buttonSpan,children:c?/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:24}):o})}))});/* export default */const _y=_b;var _w={buttonSpan:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";z-index:",iI/* .zIndex.positive */.fE.positive,";"),base:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.small */.I.small("medium"),";display:flex;gap:",iI/* .spacing["4"] */.YK["4"],";width:100%;justify-content:center;align-items:center;white-space:nowrap;position:relative;overflow:hidden;transition:box-shadow 0.5s ease;&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}&:disabled{cursor:not-allowed;background:",iI/* .colorTokens.action.primary.disable */.I6.action.primary.disable,";pointer-events:none;color:",iI/* .colorTokens.text.disable */.I6.text.disable,";border-color:",iI/* .colorTokens.stroke.disable */.I6.stroke.disable,";}"),default:e=>/*#__PURE__*/(0,u/* .css */.AH)("background:",!e?iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1:iI/* .colorTokens.ai.gradient_1_rtl */.I6.ai.gradient_1_rtl,";color:",iI/* .colorTokens.text.white */.I6.text.white,";&::before{content:'';position:absolute;inset:0;background:",!e?iI/* .colorTokens.ai.gradient_2 */.I6.ai.gradient_2:iI/* .colorTokens.ai.gradient_2_rtl */.I6.ai.gradient_2_rtl,";opacity:0;transition:opacity 0.5s ease;}&:hover::before{opacity:1;}"),secondary:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.action.secondary["default"] */.I6.action.secondary["default"],";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";&:hover{background-color:",iI/* .colorTokens.action.secondary.hover */.I6.action.secondary.hover,";}"),outline:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;&::before{content:'';position:absolute;inset:0;background:",iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1,";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";border:1px solid transparent;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;}&:hover{&::before{background:",iI/* .colorTokens.ai.gradient_2 */.I6.ai.gradient_2,";}}"),primaryOutline:/*#__PURE__*/(0,u/* .css */.AH)("border:1px solid ",iI/* .colorTokens.brand.blue */.I6.brand.blue,";color:",iI/* .colorTokens.brand.blue */.I6.brand.blue,";&:hover{background-color:",iI/* .colorTokens.brand.blue */.I6.brand.blue,";color:",iI/* .colorTokens.text.white */.I6.text.white,";}"),primary:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.brand.blue */.I6.brand.blue,";color:",iI/* .colorTokens.text.white */.I6.text.white,";"),ghost:/*#__PURE__*/(0,u/* .css */.AH)("background-color:transparent;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";&:hover{color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}"),plain:/*#__PURE__*/(0,u/* .css */.AH)("span{background:",!oI/* .isRTL */.V8?iI/* .colorTokens.text.ai.gradient */.I6.text.ai.gradient:iI/* .colorTokens.ai.gradient_1_rtl */.I6.ai.gradient_1_rtl,";background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;&:hover{background:",!oI/* .isRTL */.V8?iI/* .colorTokens.ai.gradient_2 */.I6.ai.gradient_2:iI/* .colorTokens.ai.gradient_2_rtl */.I6.ai.gradient_2_rtl,";background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;}}"),size:{default:/*#__PURE__*/(0,u/* .css */.AH)("height:32px;padding-inline:",iI/* .spacing["12"] */.YK["12"],";padding-block:",iI/* .spacing["4"] */.YK["4"],";"),sm:/*#__PURE__*/(0,u/* .css */.AH)("height:24px;padding-inline:",iI/* .spacing["10"] */.YK["10"],";"),icon:/*#__PURE__*/(0,u/* .css */.AH)("width:32px;height:32px;")},rounded:{true:/*#__PURE__*/(0,u/* .css */.AH)("border-radius:",iI/* .borderRadius["54"] */.Vq["54"],";&::before{border-radius:",iI/* .borderRadius["54"] */.Vq["54"],";}"),false:/*#__PURE__*/(0,u/* .css */.AH)("border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";&::before{border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";}")}};var _x=(0,_m/* .createVariation */.s)({variants:{variant:{default:_w.default(oI/* .isRTL */.V8),primary:_w.primary,secondary:_w.secondary,outline:_w.outline,primary_outline:_w.primaryOutline,ghost:_w.ghost,plain:_w.plain},size:{default:_w.size.default,sm:_w.size.sm,icon:_w.size.icon},rounded:{true:_w.rounded.true,false:_w.rounded.false}},defaultVariants:{variant:"default",size:"default",rounded:"true"}},_w.base);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormTextareaInput.tsx
function _A(){var e=(0,eh._)(["\n        resize: vertical;\n      "]);_A=function t(){return e};return e}var _E=6;var _k=e=>{var{label:r,rows:i=_E,columns:a,maxLimit:o,field:s,fieldState:l,disabled:u,readOnly:c,loading:d,placeholder:f,helpText:p,onChange:h,onKeyDown:v,isHidden:g,enableResize:m=true,isSecondary:b=false,isMagicAi:_=false,inputCss:y,maxHeight:w,autoResize:x=false}=e;var A;var E=(A=s.value)!==null&&A!==void 0?A:"";var k=(0,n.useRef)(null);var I=undefined;if(o){I={maxLimit:o,inputCharacter:E.toString().length}}var C=()=>{if(k.current){if(w){k.current.style.maxHeight="".concat(w,"px")}k.current.style.height="auto";k.current.style.height="".concat(k.current.scrollHeight,"px")}};(0,n.useLayoutEffect)(()=>{if(x){C()}// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:r,field:s,fieldState:l,disabled:u,readOnly:c,loading:d,placeholder:f,helpText:p,isHidden:g,characterCount:I,isSecondary:b,isMagicAi:_,children:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:_C.container(m,y),children:/*#__PURE__*/(0,t/* .jsx */.Y)("textarea",(0,ep._)((0,ef._)({},s,e),{ref:e=>{s.ref(e);// @ts-ignore
k.current=e;// this is not ideal but it is the only way to set ref to the input element
},style:{maxHeight:w?"".concat(w,"px"):"none"},className:"tutor-input-field",value:E,onChange:e=>{var{value:t}=e.target;if(o&&t.trim().length>o){return}s.onChange(t);if(h){h(t)}if(x){C()}},onKeyDown:e=>{v===null||v===void 0?void 0:v(e.key)},autoComplete:"off",rows:i,cols:a}))})})}})};/* export default */const _I=mH(_k);var _C={container:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:false,t=arguments.length>1?arguments[1]:void 0;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;textarea{",iC/* .typography.body */.I.body(),";height:auto;padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";resize:none;",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,";&.tutor-input-field{",t,";}",e&&(0,u/* .css */.AH)(_A()),"}")}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-content/OptionList.tsx
var _Y=e=>{var{options:r,onChange:n}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:_S.wrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:r,children:(e,r)=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",onClick:()=>n(e.value),css:_S.item,children:e.label},r)}})})};var _S={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;padding-block:",iI/* .spacing["8"] */.YK["8"],";max-height:400px;overflow-y:auto;"),item:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.caption */.I.caption(),";width:100%;padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["16"] */.YK["16"],";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";display:flex;align-items:center;&:hover{background-color:",iI/* .colorTokens.background.hover */.I6.background.hover,";color:",iI/* .colorTokens.text.title */.I6.text.title,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useSelectKeyboardNavigation.ts
var _T=e=>{var{options:t,isOpen:r,onSelect:i,onClose:a,selectedValue:o}=e;var[s,l]=(0,n.useState)(-1);var u=(0,n.useCallback)(e=>{if(!r)return;var n=(e,r)=>{var n;var i=e;var a=r==="down"?1:-1;do{i+=a;if(i<0)i=t.length-1;if(i>=t.length)i=0}while(i>=0&&i<t.length&&t[i].disabled)if((n=t[i])===null||n===void 0?void 0:n.disabled){return e}return i};switch(e.key){case"ArrowDown":e.preventDefault();l(e=>{var t=n(e===-1?0:e,"down");return t});break;case"ArrowUp":e.preventDefault();l(e=>{var t=n(e===-1?0:e,"up");return t});break;case"Enter":e.preventDefault();e.stopPropagation();if(s>=0&&s<t.length){var o=t[s];if(!o.disabled){a();i(o)}}break;case"Escape":e.preventDefault();e.stopPropagation();a();break;default:break}},[r,t,s,i,a]);(0,n.useEffect)(()=>{if(r){if(s===-1){var e=t.findIndex(e=>e.value===o);var n=e>=0?e:t.findIndex(e=>!e.disabled);l(n)}document.addEventListener("keydown",u,true);return()=>document.removeEventListener("keydown",u,true)}},[r,u,t,o,s]);(0,n.useEffect)(()=>{if(!r){l(-1)}},[r]);var c=(0,n.useCallback)(e=>{var r;if(!((r=t[e])===null||r===void 0?void 0:r.disabled)){l(e)}},[t]);return{activeIndex:s,setActiveIndex:c}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormSelectInput.tsx
function _O(){var e=(0,eh._)(["\n      &::before {\n        content: '';\n        position: absolute;\n        inset: 0;\n        background: ",";\n        color: ",";\n        border: 1px solid transparent;\n        -webkit-mask:\n          linear-gradient(#fff 0 0) padding-box,\n          linear-gradient(#fff 0 0);\n        -webkit-mask-composite: xor;\n        mask-composite: exclude;\n        border-radius: 6px;\n      }\n    "]);_O=function t(){return e};return e}function _D(){var e=(0,eh._)(["\n        height: 32px;\n        padding-top: ",";\n        padding-bottom: ",";\n      "]);_D=function t(){return e};return e}function _F(){var e=(0,eh._)(["\n        padding-left: ",";\n      "]);_F=function t(){return e};return e}function _P(){var e=(0,eh._)(["\n          height: 48px;\n          padding-bottom: ",";\n        "]);_P=function t(){return e};return e}function _R(){var e=(0,eh._)(["\n        height: 56px;\n        padding-bottom: ",";\n\n        ","\n      "]);_R=function t(){return e};return e}function _H(){var e=(0,eh._)(["\n        background-color: ",";\n      "]);_H=function t(){return e};return e}function _M(){var e=(0,eh._)(["\n        position: relative;\n        border: none;\n        background: transparent;\n      "]);_M=function t(){return e};return e}function _N(){var e=(0,eh._)(["\n          outline-color: ",";\n          background-color: ",";\n        "]);_N=function t(){return e};return e}function _L(){var e=(0,eh._)(["\n          border-color: ",";\n          background-color: ",";\n        "]);_L=function t(){return e};return e}function _K(){var e=(0,eh._)(["\n      bottom: ",";\n    "]);_K=function t(){return e};return e}function _q(){var e=(0,eh._)(["\n      padding-left: calc("," + 1px);\n    "]);_q=function t(){return e};return e}function _B(){var e=(0,eh._)(["\n        color: ",";\n\n        &:hover {\n          text-decoration: underline;\n        }\n      "]);_B=function t(){return e};return e}function _U(){var e=(0,eh._)(["\n      min-width: 200px;\n    "]);_U=function t(){return e};return e}function _j(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);_j=function t(){return e};return e}function _V(){var e=(0,eh._)(["\n      background-color: ",";\n      position: relative;\n\n      &::before {\n        content: '';\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 3px;\n        height: 100%;\n        background-color: ",";\n        border-radius: 0 "," "," 0;\n      }\n    "]);_V=function t(){return e};return e}function _W(){var e=(0,eh._)(["\n      transform: rotate(180deg);\n    "]);_W=function t(){return e};return e}var _z=e=>{var{size:r="regular",leftIconPadding:i=48,wrapperCss:a,options:o,field:s,fieldState:l,onChange:u=iq/* .noop */.lQ,label:c,placeholder:d="",disabled:f,readOnly:p,loading:h,isSearchable:v=false,isInlineLabel:g,hideCaret:m,listLabel:b,isClearable:_=false,helpText:y,removeOptionsMinWidth:w=false,leftIcon:x,iconSize:A,removeBorder:E,dataAttribute:k,isSecondary:I=false,isMagicAi:C=false,isAiOutline:Y=false,selectOnFocus:S,optionItemCss:T}=e;var O;var D=A!==null&&A!==void 0?A:r==="small"?20:32;var F=(0,n.useCallback)(()=>o.find(e=>e.value===s.value)||{label:"",value:"",description:""},[s.value,o]);var P=(0,n.useMemo)(()=>o.some(e=>(0,iK/* .isDefined */.O9)(e.description)),[o]);var[R,H]=(0,n.useState)((O=F())===null||O===void 0?void 0:O.label);var[M,N]=(0,n.useState)(false);var[L,K]=(0,n.useState)("");var[q,B]=(0,n.useState)(false);var U=(0,n.useRef)(null);var j=(0,n.useRef)(null);var V=(0,n.useRef)(null);var W=(0,n.useRef)(null);var z=(0,n.useMemo)(()=>{if(v){return o.filter(e=>{var{label:t}=e;return t.toLowerCase().includes(L.toLowerCase())})}return o},[L,v,o]);var G=(0,n.useMemo)(()=>{return o.find(e=>e.value===s.value)},[s.value,o]);var Q=(0,ef._)({},(0,iK/* .isDefined */.O9)(k)&&{[k]:true});(0,n.useEffect)(()=>{var e;H((e=F())===null||e===void 0?void 0:e.label)},[s.value,F]);(0,n.useEffect)(()=>{if(q){var e;H((e=F())===null||e===void 0?void 0:e.label)}},[F,q]);var $=(e,t)=>{t===null||t===void 0?void 0:t.stopPropagation();if(!e.disabled){B(false);N(false);K("");s.onChange(e.value);u(e)}};var{activeIndex:X,setActiveIndex:J}=_T({options:z,isOpen:q,selectedValue:s.value,onSelect:$,onClose:()=>{B(false);N(false);K("")}});(0,n.useEffect)(()=>{if(q&&X>=0&&W.current){W.current.scrollIntoView({block:"nearest",behavior:"smooth"})}},[q,X]);return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{fieldState:l,field:s,label:c,disabled:f||o.length===0,readOnly:p,loading:h,isInlineLabel:g,helpText:y,removeBorder:E,isSecondary:I,isMagicAi:C,children:e=>{var n,u;var{css:c}=e,g=(0,iY._)(e,["css"]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_Q.mainWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_Q.inputWrapper(Y),ref:j,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_Q.leftIcon,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:x,children:x}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:G===null||G===void 0?void 0:G.icon,children:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:e,width:D,height:D})})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:{width:"100%"},children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},g,Q),{ref:e=>{s.ref(e);// @ts-ignore
U.current=e;// this is not ideal but it is the only way to set ref to the input element
},className:"tutor-input-field",css:[c,a,_Q.input({hasLeftIcon:!!x||!!(G===null||G===void 0?void 0:G.icon),leftIconPadding:i,hasDescription:P,hasError:!!l.error,isMagicAi:C,isAiOutline:Y,size:r})],autoComplete:"off",readOnly:p||!v,placeholder:d,value:M?L:R,title:R,onClick:e=>{var t;e.stopPropagation();B(e=>!e);(t=U.current)===null||t===void 0?void 0:t.focus()},onKeyDown:e=>{if(e.key==="Enter"){var t;e.preventDefault();B(e=>!e);(t=U.current)===null||t===void 0?void 0:t.focus()}if(e.key==="Tab"){B(false)}},onFocus:S&&v?e=>{e.target.select()}:undefined,onChange:e=>{H(e.target.value);if(v){N(true);K(e.target.value)}},"data-select":true})),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:P,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:_Q.description({hasLeftIcon:!!x,leftIconPadding:i,size:r}),title:(n=F())===null||n===void 0?void 0:n.description,children:(u=F())===null||u===void 0?void 0:u.description})})]}),!m&&!h&&/*#__PURE__*/(0,t/* .jsx */.Y)("button",{tabIndex:-1,type:"button",css:_Q.caretButton({isOpen:q}),onClick:()=>{var e;B(e=>!e);(e=U.current)===null||e===void 0?void 0:e.focus()},disabled:f||p||o.length===0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"chevronDown",width:r==="small"?16:20,height:r==="small"?16:20})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{triggerRef:j,isOpen:q,dependencies:[z.length],animationType:iH.slideDown,closePopover:()=>{B(false);N(false);K("")},children:/*#__PURE__*/(0,t/* .jsxs */.FD)("ul",{css:[_Q.options(w)],children:[!!b&&/*#__PURE__*/(0,t/* .jsx */.Y)("li",{css:_Q.listLabel,children:b}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:z.length>0,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("li",{css:_Q.emptyState,children:(0,oM.__)("No options available","tutor-pro")}),children:z.map((e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)("li",{ref:e.value===s.value?V:X===r?W:null,css:[_Q.optionItem({isSelected:e.value===s.value,isActive:r===X,isDisabled:!!e.disabled}),T],children:/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:_Q.label,onClick:t=>{if(!e.disabled){$(e,t)}},disabled:e.disabled,title:e.label,onMouseOver:()=>J(r),onMouseLeave:()=>r!==X&&J(-1),onFocus:()=>J(r),"aria-selected":X===r,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:e.icon,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:e.icon,width:D,height:D})}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:e.label})]})},String(e.value)))}),_&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:_Q.clearButton({isDisabled:R===""}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",disabled:R==="",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete"}),onClick:()=>{s.onChange(null);H("");K("");B(false)},children:(0,oM.__)("Clear","tutor-pro")})})]})})]})}})};/* export default */const _G=_z;var _Q={mainWrapper:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;"),inputWrapper:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:false;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;display:flex;justify-content:space-between;align-items:center;position:relative;",e&&(0,u/* .css */.AH)(_O(),iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1,iI/* .colorTokens.text.primary */.I6.text.primary))},leftIcon:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;left:",iI/* .spacing["8"] */.YK["8"],";",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;height:100%;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";z-index:",iI/* .zIndex.positive */.fE.positive,";"),input:e=>{var{hasLeftIcon:t,leftIconPadding:r,hasDescription:n,hasError:i=false,isMagicAi:a=false,isAiOutline:o=false,size:s}=e;return/*#__PURE__*/(0,u/* .css */.AH)("&.tutor-input-field:not(textarea){",iC/* .typography.body */.I.body(),";width:100%;cursor:pointer;padding-right:",iI/* .spacing["32"] */.YK["32"],";",oO/* .styleUtils.textEllipsis */.x.textEllipsis,";background-color:transparent;background-color:",iI/* .colorTokens.background.white */.I6.background.white,";",s==="small"&&(0,u/* .css */.AH)(_D(),iI/* .spacing["6"] */.YK["6"],iI/* .spacing["6"] */.YK["6"])," ",t&&(0,u/* .css */.AH)(_F(),iI/* .spacing */.YK[r])," ",n&&(0,u/* .css */.AH)(_R(),iI/* .spacing["24"] */.YK["24"],s==="small"&&(0,u/* .css */.AH)(_P(),iI/* .spacing["20"] */.YK["20"]))," ",i&&(0,u/* .css */.AH)(_H(),iI/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail)," ",o&&(0,u/* .css */.AH)(_M()),":focus{",oO/* .styleUtils.inputFocus */.x.inputFocus,";",a&&(0,u/* .css */.AH)(_N(),iI/* .colorTokens.stroke.magicAi */.I6.stroke.magicAi,iI/* .colorTokens.background.magicAi["8"] */.I6.background.magicAi["8"])," ",i&&(0,u/* .css */.AH)(_L(),iI/* .colorTokens.stroke.danger */.I6.stroke.danger,iI/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail),"}}")},description:e=>{var{hasLeftIcon:t,leftIconPadding:r,size:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";",oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),"    color:",iI/* .colorTokens.text.hints */.I6.text.hints,";position:absolute;bottom:",iI/* .spacing["8"] */.YK["8"],";padding-inline:calc(",iI/* .spacing["16"] */.YK["16"]," + 1px) ",iI/* .spacing["32"] */.YK["32"],";",n==="small"&&(0,u/* .css */.AH)(_K(),iI/* .spacing["4"] */.YK["4"])," ",t&&(0,u/* .css */.AH)(_q(),iI/* .spacing */.YK[r]))},listLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";min-height:40px;display:flex;align-items:center;padding-left:",iI/* .spacing["16"] */.YK["16"],";"),clearButton:e=>{var{isDisabled:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";border-top:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";& > button{padding:0;width:100%;font-size:",iI/* .fontSize["12"] */.J["12"],";> span{justify-content:center;}",!t&&(0,u/* .css */.AH)(_B(),iI/* .colorTokens.text.title */.I6.text.title),"}")},options:e=>/*#__PURE__*/(0,u/* .css */.AH)("z-index:",iI/* .zIndex.dropdown */.fE.dropdown,";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";list-style-type:none;box-shadow:",iI/* .shadow.popover */.r7.popover,";padding:",iI/* .spacing["4"] */.YK["4"]," 0;margin:0;max-height:500px;border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,";scrollbar-gutter:auto;",!e&&(0,u/* .css */.AH)(_U())),optionItem:e=>{var{isSelected:t=false,isActive:r=false,isDisabled:n=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";min-height:36px;height:100%;width:100%;display:flex;align-items:center;transition:background-color 0.3s ease-in-out;cursor:",n?"not-allowed":"pointer",";opacity:",n?.5:1,";",r&&(0,u/* .css */.AH)(_j(),iI/* .colorTokens.background.hover */.I6.background.hover),"    &:hover{background-color:",!n&&iI/* .colorTokens.background.hover */.I6.background.hover,";}",!n&&t&&(0,u/* .css */.AH)(_V(),iI/* .colorTokens.background.active */.I6.background.active,iI/* .colorTokens.action.primary["default"] */.I6.action.primary["default"],iI/* .borderRadius["6"] */.Vq["6"],iI/* .borderRadius["6"] */.Vq["6"]))},label:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),";color:",iI/* .colorTokens.text.title */.I6.text.title,";width:100%;height:100%;display:flex;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";margin:0 ",iI/* .spacing["12"] */.YK["12"],";padding:",iI/* .spacing["6"] */.YK["6"]," 0;text-align:left;line-height:",iI/* .lineHeight["24"] */.K_["24"],";word-break:break-all;cursor:pointer;&:hover,&:focus,&:active{background-color:transparent;color:",iI/* .colorTokens.text.title */.I6.text.title,";}span{flex-shrink:0;",oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),"      width:100%;}svg{flex-shrink:0;}"),arrowUpDown:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";display:flex;justify-content:center;align-items:center;margin-top:",iI/* .spacing["2"] */.YK["2"],";"),optionsContainer:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;overflow:hidden auto;min-width:16px;max-width:calc(100% - 32px);"),caretButton:e=>{var{isOpen:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";position:absolute;right:",iI/* .spacing["4"] */.YK["4"],";display:flex;align-items:center;transition:transform 0.3s ease-in-out;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";padding:",iI/* .spacing["6"] */.YK["6"],";height:100%;&:focus,&:active,&:hover{background:none;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";}",t&&(0,u/* .css */.AH)(_W()))},emptyState:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";padding:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/config/magic-ai.ts
var _$=[{label:"English",value:"english"},{label:"简体中文",value:"simplified-chinese"},{label:"繁體中文",value:"traditional-chinese"},{label:"Español",value:"spanish"},{label:"Français",value:"french"},{label:"日本語",value:"japanese"},{label:"Deutsch",value:"german"},{label:"Português",value:"portuguese"},{label:"العربية",value:"arabic"},{label:"Русский",value:"russian"},{label:"Italiano",value:"italian"},{label:"한국어",value:"korean"},{label:"हिन्दी",value:"hindi"},{label:"Nederlands",value:"dutch"},{label:"Polski",value:"polish"},{label:"አማርኛ",value:"amharic"},{label:"Български",value:"bulgarian"},{label:"বাংলা",value:"bengali"},{label:"Čeština",value:"czech"},{label:"Dansk",value:"danish"},{label:"Ελληνικά",value:"greek"},{label:"Eesti",value:"estonian"},{label:"فارسی",value:"persian"},{label:"Filipino",value:"filipino"},{label:"Hrvatski",value:"croatian"},{label:"Magyar",value:"hungarian"},{label:"Bahasa Indonesia",value:"indonesian"},{label:"Lietuvių",value:"lithuanian"},{label:"Latviešu",value:"latvian"},{label:"Melayu",value:"malay"},{label:"Norsk",value:"norwegian"},{label:"Română",value:"romanian"},{label:"Slovenčina",value:"slovak"},{label:"Slovenščina",value:"slovenian"},{label:"Српски",value:"serbian"},{label:"Svenska",value:"swedish"},{label:"ภาษาไทย",value:"thai"},{label:"Türkçe",value:"turkish"},{label:"Українська",value:"ukrainian"},{label:"اردو",value:"urdu"},{label:"Tiếng Việt",value:"vietnamese"}];var _X=[{label:(0,oM.__)("Formal","tutor-pro"),value:"formal"},{label:(0,oM.__)("Casual","tutor-pro"),value:"casual"},{label:(0,oM.__)("Professional","tutor-pro"),value:"professional"},{label:(0,oM.__)("Enthusiastic","tutor-pro"),value:"enthusiastic"},{label:(0,oM.__)("Informational","tutor-pro"),value:"informational"},{label:(0,oM.__)("Funny","tutor-pro"),value:"funny"}];var _J=[{label:(0,oM.__)("Title","tutor-pro"),value:"title"},{label:(0,oM.__)("Essay","tutor-pro"),value:"essay"},{label:(0,oM.__)("Paragraph","tutor-pro"),value:"paragraph"},{label:(0,oM.__)("Outline","tutor-pro"),value:"outline"}];// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-content/PromptControls.tsx
var _Z=e=>{var{form:r}=e;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_0.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:r.control,name:"characters",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,(0,ep._)((0,ef._)({},e),{isMagicAi:true,label:(0,oM.__)("Character Limit","tutor-pro"),type:"number"}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:r.control,name:"language",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},e),{isMagicAi:true,label:(0,oM.__)("Language","tutor-pro"),options:_$}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:r.control,name:"tone",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},e),{isMagicAi:true,options:_X,label:(0,oM.__)("Tone","tutor-pro")}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:r.control,name:"format",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},e),{isMagicAi:true,label:(0,oM.__)("Format","tutor-pro"),options:_J}))})]})};var _0={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:repeat(2,1fr);gap:",iI/* .spacing["16"] */.YK["16"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-content/SkeletonLoader.tsx
var _1=()=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_6.container,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_6.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"20%",height:"12px"}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"100%",height:"12px"}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"100%",height:"12px"}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"40%",height:"12px"})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:_6.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"80%",height:"12px"}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"100%",height:"12px"}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{animation:true,isMagicAi:true,width:"80%",height:"12px"})]})]})};/* export default */const _2=_1;var _6={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";"),container:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["32"] */.YK["32"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useFormWithGlobalError.ts
var _4=e=>{var[t,r]=(0,n.useState)();var i=_v(e);return(0,ep._)((0,ef._)({},i),{submitError:t,setSubmitError:r})};// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+query-core@5.62.15/node_modules/@tanstack/query-core/build/modern/mutationObserver.js
// src/mutationObserver.ts
var _5=class extends H{#E;#S=void 0;#G;#Q;constructor(e,t){super();this.#E=e;this.setOptions(t);this.bindMethods();this.#$()}bindMethods(){this.mutate=this.mutate.bind(this);this.reset=this.reset.bind(this)}setOptions(e){const t=this.options;this.options=this.#E.defaultMutationOptions(e);if(!A(this.options,t)){this.#E.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#G,observer:this})}if(t?.mutationKey&&this.options.mutationKey&&y(t.mutationKey)!==y(this.options.mutationKey)){this.reset()}else if(this.#G?.state.status==="pending"){this.#G.setOptions(this.options)}}onUnsubscribe(){if(!this.hasListeners()){this.#G?.removeObserver(this)}}onMutationUpdate(e){this.#$();this.#z(e)}getCurrentResult(){return this.#S}reset(){this.#G?.removeObserver(this);this.#G=void 0;this.#$();this.#z()}mutate(e,t){this.#Q=t;this.#G?.removeObserver(this);this.#G=this.#E.getMutationCache().build(this.#E,this.options);this.#G.addObserver(this);return this.#G.execute(e)}#$(){const e=this.#G?.state??Z();this.#S={...e,isPending:e.status==="pending",isSuccess:e.status==="success",isError:e.status==="error",isIdle:e.status==="idle",mutate:this.mutate,reset:this.reset}}#z(e){R.batch(()=>{if(this.#Q&&this.hasListeners()){const t=this.#S.variables;const r=this.#S.context;if(e?.type==="success"){this.#Q.onSuccess?.(e.data,t,r);this.#Q.onSettled?.(e.data,null,t,r)}else if(e?.type==="error"){this.#Q.onError?.(e.error,t,r);this.#Q.onSettled?.(void 0,e.error,t,r)}}this.listeners.forEach(e=>{e(this.#S)})})}};//# sourceMappingURL=mutationObserver.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@tanstack+react-query@5.62.15_react@18.3.1/node_modules/@tanstack/react-query/build/legacy/useMutation.js
"use client";// src/useMutation.ts
function _3(e,t){const r=ec(t);const[i]=n.useState(()=>new _5(r,e));n.useEffect(()=>{i.setOptions(e)},[i,e]);const a=n.useSyncExternalStore(n.useCallback(e=>i.subscribe(R.batchCalls(e)),[i]),()=>i.getCurrentResult(),()=>i.getCurrentResult());const o=n.useCallback((e,t)=>{i.mutate(e,t).catch(sI)},[i]);if(a.error&&sk(i.options.throwOnError,[a.error])){throw a.error}return{...a,mutate:o,mutateAsync:a.mutate}}//# sourceMappingURL=useMutation.js.map
;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/magic-ai.ts
var _8=e=>{return cM.post(cL.GENERATE_AI_IMAGE,e)};var _9=()=>{return _3({mutationFn:_8})};var _7=e=>{return cM.post(cL.MAGIC_FILL_AI_IMAGE,e).then(e=>e.data.data[0].b64_json)};var ye=()=>{var{showToast:e}=i2();return _3({mutationFn:_7,onError:t=>{e({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(t)})}})};var yt=e=>{return cM.post(cL.MAGIC_TEXT_GENERATION,e)};var yr=()=>{var{showToast:e}=i2();return _3({mutationFn:yt,onError:t=>{e({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(t)})}})};var yn=e=>{return cM.post(cL.MAGIC_AI_MODIFY_CONTENT,e)};var yi=()=>{var{showToast:e}=i2();return _3({mutationFn:yn,onError:t=>{e({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(t)})}})};var ya=e=>{return cM.post(cL.USE_AI_GENERATED_IMAGE,e)};var yo=()=>{var{showToast:e}=i2();return _3({mutationFn:ya,onError:t=>{e({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(t)})}})};var ys=e=>{return wpAjaxInstance.post(endpoints.GENERATE_COURSE_CONTENT,e,{signal:e.signal})};var yl=e=>{var{showToast:t}=useToast();return useMutation({mutationKey:["GenerateCourseContent",e],mutationFn:ys,onError:e=>{t({type:"danger",message:convertToErrorMessage(e)})}})};var yu=e=>{return wpAjaxInstance.post(endpoints.GENERATE_COURSE_CONTENT,e,{signal:e.signal})};var yc=()=>{var{showToast:e}=useToast();return useMutation({mutationFn:yu,onError:t=>{e({type:"danger",message:convertToErrorMessage(t)})}})};var yd=e=>{return wpAjaxInstance.post(endpoints.GENERATE_COURSE_TOPIC_CONTENT,e,{signal:e.signal})};var yf=()=>{var{showToast:e}=useToast();return useMutation({mutationFn:yd,onError:t=>{e({type:"danger",message:convertToErrorMessage(t)})}})};var yp=e=>{return wpAjaxInstance.post(endpoints.SAVE_AI_GENERATED_COURSE_CONTENT,e)};var yh=()=>{var{showToast:e}=useToast();var t=useQueryClient();return useMutation({mutationFn:yp,onSuccess(){t.invalidateQueries({queryKey:["CourseDetails"]})},onError:t=>{e({type:"danger",message:convertToErrorMessage(t)})}})};var yv=e=>{return wpAjaxInstance.post(endpoints.GENERATE_QUIZ_QUESTIONS,e,{signal:e.signal})};var yg=()=>{var{showToast:e}=useToast();return useMutation({mutationFn:yv,onError:t=>{e({type:"danger",message:convertToErrorMessage(t)})}})};var ym=e=>{return wpAjaxInstance.post(endpoints.GENERATE_AI_QUIZ_QUESTIONS,e,{signal:e.signal})};var yb=()=>{var{showToast:e}=useToast();return useMutation({mutationFn:ym,onError:t=>{e({type:"danger",message:convertToErrorMessage(t)})}})};var y_=e=>{return cM.post(cL.OPEN_AI_SAVE_SETTINGS,(0,ef._)({},e))};var yy=()=>{var{showToast:e}=i2();return _3({mutationFn:y_,onSuccess:t=>{e({type:"success",message:t.message})},onError:t=>{e({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(t)})}})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/AITextModal.tsx
var yw=[(0,oM.__)("Mastering Digital Marketing: A Complete Guide","tutor-pro"),(0,oM.__)("The Ultimate Photoshop Course for Beginners","tutor-pro"),(0,oM.__)("Python Programming: From Zero to Hero","tutor-pro"),(0,oM.__)("Creative Writing Essentials: Unlock Your Storytelling Potential","tutor-pro"),(0,oM.__)("The Complete Guide to Web Development with React","tutor-pro"),(0,oM.__)("Master Public Speaking: Deliver Powerful Presentations","tutor-pro"),(0,oM.__)("Excel for Business: From Basics to Advanced Analytics","tutor-pro"),(0,oM.__)("Fitness Fundamentals: Build Strength and Confidence","tutor-pro"),(0,oM.__)("Photography Made Simple: Capture Stunning Shots","tutor-pro"),(0,oM.__)("Financial Freedom: Learn the Basics of Investing","tutor-pro")];var yx=e=>{var{title:r,icon:i,closeModal:a,field:o,format:s="essay",characters:l=250,is_html:c=false,fieldLabel:d="",fieldPlaceholder:f=""}=e;var p=_4({defaultValues:{prompt:"",characters:l,language:"english",tone:"formal",format:s}});var h=yr();var v=yi();var[g,m]=(0,n.useState)([]);var[b,_]=(0,n.useState)(0);var[y,w]=(0,n.useState)(false);var[x,A]=(0,n.useState)(null);var E=(0,n.useRef)(null);var k=(0,n.useRef)(null);var I=(0,n.useMemo)(()=>{return g[b]},[g,b]);var C=p.watch("prompt");function Y(e){m(t=>[e,...t]);_(0)}function S(e,t){return mz(function*(){if(g.length===0){return}var r=g[b];if(e==="translation"&&!!t){var n=yield v.mutateAsync({type:"translation",content:r,language:t,is_html:c});if(n.data){Y(n.data)}return}if(e==="change_tone"&&!!t){var i=yield v.mutateAsync({type:"change_tone",content:r,tone:t,is_html:c});if(i.data){Y(i.data)}return}var a=yield v.mutateAsync({type:e,content:r,is_html:c});if(a.data){Y(a.data)}})()}(0,n.useEffect)(()=>{p.setFocus("prompt");// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:a,title:r,icon:i,maxWidth:524,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("form",{onSubmit:p.handleSubmit(e=>mz(function*(){var t=yield h.mutateAsync((0,ep._)((0,ef._)({},e),{is_html:c}));if(t.data){Y(t.data)}})()),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yE.container,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yE.fieldsWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:p.control,name:"prompt",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_I,(0,ep._)((0,ef._)({},e),{label:d||(0,oM.__)("Craft Your Course Description","tutor-pro"),placeholder:f||(0,oM.__)("Provide a brief overview of your course topic, target audience, and key takeaways","tutor-pro"),rows:4,isMagicAi:true}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:yE.inspireButton,onClick:()=>{var e=yw.length;var t=Math.floor(Math.random()*e);p.reset((0,ep._)((0,ef._)({},p.getValues()),{prompt:yw[t]}))},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"bulbLine"}),(0,oM.__)("Inspire Me","tutor-pro")]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!h.isPending&&!v.isPending,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(_2,{}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:g.length>0,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(_Z,{form:p}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yE.actionBar,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:yE.navigation,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:g.length>1,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:()=>_(e=>Math.max(0,e-1)),disabled:b===0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:!oI/* .isRTL */.V8?"chevronLeft":"chevronRight",width:20,height:20})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yE.pageInfo,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:b+1})," / ",g.length]}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:()=>_(e=>Math.min(g.length-1,e+1)),disabled:b===g.length-1,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:!oI/* .isRTL */.V8?"chevronRight":"chevronLeft",width:20,height:20})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:()=>mz(function*(){if(g.length===0){return}var e=g[b];yield(0,iq/* .copyToClipboard */.lW)(e);w(true);setTimeout(()=>{w(false)},1500)})(),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:y,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copy",width:20,height:20}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"checkFilled",width:20,height:20,style:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.success */.I6.text.success," !important;")})})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:yE.content,dangerouslySetInnerHTML:{__html:I}})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yE.otherActions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",roundedFull:false,onClick:()=>S("rephrase"),children:(0,oM.__)("Rephrase","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",roundedFull:false,onClick:()=>S("make_shorter"),children:(0,oM.__)("Make Shorter","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{variant:"outline",roundedFull:false,ref:E,onClick:()=>A("tone"),children:[(0,oM.__)("Change Tone","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"chevronDown",width:16,height:16})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{variant:"outline",roundedFull:false,ref:k,onClick:()=>A("translate"),children:[(0,oM.__)("Translate to","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"chevronDown",width:16,height:16})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",roundedFull:false,onClick:()=>S("write_as_bullets"),children:(0,oM.__)("Write as Bullets","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",roundedFull:false,onClick:()=>S("make_longer"),children:(0,oM.__)("Make Longer","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",roundedFull:false,onClick:()=>S("simplify_language"),children:(0,oM.__)("Simplify Language","tutor-pro")})]})]})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{isOpen:x==="tone",triggerRef:E,arrow:true,closePopover:()=>A(null),maxWidth:"160px",animationType:iH.slideDown,children:/*#__PURE__*/(0,t/* .jsx */.Y)(_Y,{options:_X,onChange:e=>mz(function*(){A(null);yield S("change_tone",e)})()})}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{isOpen:x==="translate",triggerRef:k,closePopover:()=>A(null),maxWidth:"160px",animationType:iH.slideDown,children:/*#__PURE__*/(0,t/* .jsx */.Y)(_Y,{options:_$,onChange:e=>mz(function*(){A(null);yield S("translation",e)})()})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:yE.footer,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:g.length>0,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{type:"submit",disabled:h.isPending||!C||v.isPending,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicWand",width:24,height:24}),(0,oM.__)("Generate Now","tutor-pro")]}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"outline",type:"submit",disabled:h.isPending||!C||v.isPending,children:(0,oM.__)("Generate Again","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"primary",disabled:h.isPending||g.length===0||v.isPending,onClick:()=>{o.onChange(g[b]);a()},children:(0,oM.__)("Use This","tutor-pro")})]})})]})})};/* export default */const yA=yx;var yE={container:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"],";display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";"),fieldsWrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;textarea{padding-bottom:",iI/* .spacing["40"] */.YK["40"]," !important;}"),footer:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";display:flex;align-items:center;justify-content:end;gap:",iI/* .spacing["10"] */.YK["10"],";box-shadow:0px 1px 0px 0px #e4e5e7 inset;button{width:fit-content;}"),pageInfo:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";& > span{font-weight:",iI/* .fontWeight.medium */.Wy.medium,";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}"),inspireButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.small */.I.small(),";position:absolute;height:28px;bottom:",iI/* .spacing["12"] */.YK["12"],";left:",iI/* .spacing["12"] */.YK["12"],";border:1px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";padding-inline:",iI/* .spacing["12"] */.YK["12"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";&:hover{background-color:",iI/* .colorTokens.background.brand */.I6.background.brand,";color:",iI/* .colorTokens.text.white */.I6.text.white,";}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}&:disabled{background-color:",iI/* .colorTokens.background.disable */.I6.background.disable,";color:",iI/* .colorTokens.text.disable */.I6.text.disable,";}"),navigation:/*#__PURE__*/(0,u/* .css */.AH)("margin-left:-",iI/* .spacing["8"] */.YK["8"],";display:flex;align-items:center;"),content:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";height:180px;overflow-y:auto;background-color:",iI/* .colorTokens.background.magicAi["default"] */.I6.background.magicAi["default"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";padding:",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["12"] */.YK["12"],";color:",iI/* .colorTokens.text.magicAi */.I6.text.magicAi,";"),actionBar:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;"),otherActions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;gap:",iI/* .spacing["10"] */.YK["10"],";flex-wrap:wrap;& > button{width:fit-content;}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/ProIdentifierModal.tsx
var yk={title:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[(0,oM.__)("Upgrade to Tutor LMS Pro today and experience the power of ","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:oO/* .styleUtils.aiGradientText */.x.aiGradientText,children:(0,oM.__)("AI Studio","tutor-pro")})]}),message:(0,oM.__)("Upgrade your plan to access the AI feature","tutor-pro"),featuresTitle:(0,oM.__)("Don’t miss out on this game-changing feature!","tutor-pro"),features:[(0,oM.__)("Generate a complete course outline in seconds!","tutor-pro"),(0,oM.__)("Let the AI Studio create Quizzes on your behalf and give your brain a well-deserved break.","tutor-pro"),(0,oM.__)("Generate images, customize backgrounds, and even remove unwanted objects with ease.","tutor-pro"),(0,oM.__)("Say goodbye to typos and grammar errors with AI-powered copy editing.","tutor-pro")],footer:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{onClick:()=>window.open(cS/* ["default"].TUTOR_PRICING_PAGE */.A.TUTOR_PRICING_PAGE,"_blank","noopener"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"crown",width:24,height:24}),children:(0,oM.__)("Get Tutor LMS Pro","tutor-pro")})};var yI=e=>{var{title:r=yk.title,message:n=yk.message,featuresTitle:i=yk.featuresTitle,features:a=yk.features,closeModal:o,image:s,image2x:l,footer:u=yk.footer}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:o,entireHeader:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:yY.message,children:n}),maxWidth:496,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yY.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r,children:/*#__PURE__*/(0,t/* .jsx */.Y)("h4",{css:yY.title,children:r})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:s,children:/*#__PURE__*/(0,t/* .jsx */.Y)("img",{css:yY.image,src:s,alt:typeof r==="string"?r:(0,oM.__)("Illustration","tutor-pro"),srcSet:l?"".concat(s," ").concat(l," 2x"):undefined})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i,children:/*#__PURE__*/(0,t/* .jsx */.Y)("h6",{css:yY.featuresTiTle,children:i})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a.length,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:yY.features,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:a,children:(e,r)=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yY.feature,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"materialCheck",width:20,height:20,style:yY.checkIcon}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:e})]},r)})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u,children:u})]})})};/* export default */const yC=yI;var yY={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("padding:0 ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["32"] */.YK["32"]," ",iI/* .spacing["24"] */.YK["24"],";",oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";"),message:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding-left:",iI/* .spacing["8"] */.YK["8"],";padding-top:",iI/* .spacing["24"] */.YK["24"],";padding-bottom:",iI/* .spacing["4"] */.YK["4"],";"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading6 */.I.heading6("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";text-wrap:pretty;"),image:/*#__PURE__*/(0,u/* .css */.AH)("height:270px;width:100%;object-fit:cover;object-position:center;border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";"),featuresTiTle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";text-wrap:pretty;"),features:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";padding-right:",iI/* .spacing["48"] */.YK["48"],";"),feature:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["12"] */.YK["12"],";",iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.title */.I6.text.title,";span{text-wrap:pretty;}"),checkIcon:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;color:",iI/* .colorTokens.text.success */.I6.text.success,";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Alert.tsx
var yS={text:{warning:"#D47E00",success:"#D47E00",danger:"#f44337",info:"#D47E00",primary:"#D47E00"},icon:{warning:"#FAB000",success:"#FAB000",danger:"#f55e53",info:"#FAB000",primary:"#FAB000"},background:{warning:"#FBFAE9",success:"#FBFAE9",danger:"#fdd9d7",info:"#FBFAE9",primary:"#FBFAE9"}};var yT=e=>{var{children:r,type:n="warning",icon:i}=e;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yD.wrapper({type:n}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i,children:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{style:yD.icon({type:n}),name:e,height:24,width:24})}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:r})]})};/* export default */const yO=yT;var yD={wrapper:e=>{var{type:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";display:flex;align-items:start;padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";gap:",iI/* .spacing["4"] */.YK["4"],";background-color:",yS.background[t],";color:",yS.text[t],";")},icon:e=>{var{type:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("color:",yS.icon[t],";flex-shrink:0;")}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Switch.tsx
function yF(){var e=(0,eh._)(["\n        width: 26px;\n        height: 16px;\n      "]);yF=function t(){return e};return e}function yP(){var e=(0,eh._)(["\n          top: 2px;\n          left: 3px;\n          width: 12px;\n          height: 12px;\n        "]);yP=function t(){return e};return e}function yR(){var e=(0,eh._)(["\n            left: 11px;\n          "]);yR=function t(){return e};return e}function yH(){var e=(0,eh._)(["\n      right: 3px;\n    "]);yH=function t(){return e};return e}function yM(){var e=(0,eh._)(["\n      left: 3px;\n    "]);yM=function t(){return e};return e}var yN={switchStyles:e=>/*#__PURE__*/(0,u/* .css */.AH)("&[data-input]{all:unset;appearance:none;border:0;width:40px;height:24px;background:",iI/* .colorTokens.color.black["10"] */.I6.color.black["10"],";border-radius:12px;position:relative;display:inline-block;vertical-align:middle;cursor:pointer;transition:background-color 0.25s cubic-bezier(0.785,0.135,0.15,0.86);",e==="small"&&(0,u/* .css */.AH)(yF()),"      &::before{display:none !important;}&:focus{border:none;outline:none;box-shadow:none;}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}&:after{content:'';position:absolute;top:3px;left:",iI/* .spacing["4"] */.YK["4"],";width:18px;height:18px;background:",iI/* .colorTokens.background.white */.I6.background.white,";border-radius:",iI/* .borderRadius.circle */.Vq.circle,";box-shadow:",iI/* .shadow["switch"] */.r7["switch"],";transition:left 0.25s cubic-bezier(0.785,0.135,0.15,0.86);",e==="small"&&(0,u/* .css */.AH)(yP()),"}&:checked{background:",iI/* .colorTokens.primary.main */.I6.primary.main,";&:after{left:18px;",e==="small"&&(0,u/* .css */.AH)(yR()),"}}&:disabled{pointer-events:none;filter:none;opacity:0.5;}}"),labelStyles:e=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",e?iI/* .colorTokens.text.title */.I6.text.title:iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),wrapperStyle:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;width:fit-content;flex-direction:",e==="left"?"row":"row-reverse",";column-gap:",iI/* .spacing["12"] */.YK["12"],";position:relative;"),spinner:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;position:absolute;top:50%;transform:translateY(-50%);",e&&(0,u/* .css */.AH)(yH())," ",!e&&(0,u/* .css */.AH)(yM()))};var yL=/*#__PURE__*/i().forwardRef((e,r)=>{var{id:n=(0,iq/* .nanoid */.Ak)(),name:i,label:a,value:o,checked:s,disabled:l,loading:u,onChange:c,labelPosition:d="left",labelCss:f,size:p="regular"}=e;var h=e=>{c===null||c===void 0?void 0:c(e.target.checked,e)};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:yN.wrapperStyle(d),children:[a&&/*#__PURE__*/(0,t/* .jsx */.Y)("label",{css:[yN.labelStyles(s||false),f],htmlFor:n,children:a}),/*#__PURE__*/(0,t/* .jsx */.Y)("input",{ref:r,value:o?String(o):undefined,type:"checkbox",name:i,id:n,checked:!!s,disabled:l,css:yN.switchStyles(p),onChange:h,"data-input":true}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:yN.spinner(!!s),children:/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:p==="small"?12:20})})})]})});/* export default */const yK=yL;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormSwitch.tsx
var yq=e=>{var{field:r,fieldState:n,label:i,disabled:a,loading:o,labelPosition:s="left",helpText:l,isHidden:u,labelCss:c,onChange:d}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:i,field:r,fieldState:n,loading:o,helpText:l,isHidden:u,isInlineLabel:true,children:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:yU.wrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(yK,(0,ep._)((0,ef._)({},r,e),{disabled:a,checked:r.value,labelCss:c,labelPosition:s,onChange:()=>{r.onChange(!r.value);d===null||d===void 0?void 0:d(!r.value)}}))})}})};/* export default */const yB=mH(yq);var yU={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;gap:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/validation.ts
var yj=()=>({required:{value:true,message:(0,oM.__)("This field is required","tutor-pro")}});var yV=e=>{var{maxValue:t,message:r}=e;return{maxLength:{value:t,message:r||__("Max. value should be ".concat(t),"tutor-pro")}}};var yW=()=>({validate:e=>{if((e===null||e===void 0?void 0:e.amount)===undefined){return __("The field is required","tutor-pro")}return undefined}});var yz=e=>{if(!isValid(new Date(e||""))){return __("Invalid date entered!","tutor-pro")}return undefined};var yG=e=>({validate:t=>{if(t&&e<t.length){return(0,oM.__)("Maximum ".concat(e," character supported"),"tutor-pro")}return undefined}});var yQ=e=>{if(!e){return undefined}var t=__("Invalid time entered!","tutor-pro");var[r,n]=e.split(":");if(!r||!n){return t}var[i,a]=n.split(" ");if(!i||!a){return t}if(r.length!==2||i.length!==2){return t}if(Number(r)<1||Number(r)>12){return t}if(Number(i)<0||Number(i)>59){return t}if(!["am","pm"].includes(a.toLowerCase())){return t}return undefined};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/SetupOpenAiModal.tsx
function y$(){var e=(0,eh._)(["\n      padding: ",";\n      padding-top: ",";\n    "]);y$=function t(){return e};return e}var yX,yJ;var yZ=((yX=cS/* .tutorConfig.settings */.P.settings)===null||yX===void 0?void 0:yX.chatgpt_enable)==="on";var y0=(yJ=cS/* .tutorConfig.current_user.roles */.P.current_user.roles)===null||yJ===void 0?void 0:yJ.includes(oI/* .TutorRoles.ADMINISTRATOR */.gt.ADMINISTRATOR);var y1=e=>{var{closeModal:r,image:i,image2x:a}=e;var o=_4({defaultValues:{openAIApiKey:"",enable_open_ai:yZ},shouldFocusError:true});var s=yy();var l=e=>mz(function*(){var t=yield s.mutateAsync({chatgpt_api_key:e.openAIApiKey,chatgpt_enable:e.enable_open_ai?1:0});if(t.status_code===200){r({action:"CONFIRM"});window.location.reload()}})();(0,n.useEffect)(()=>{o.setFocus("openAIApiKey");// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:()=>r({action:"CLOSE"}),title:y0?(0,oM.__)("Set OpenAI API key","tutor-pro"):undefined,entireHeader:y0?undefined:/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:" "}),maxWidth:560,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:y6.wrapper({isCurrentUserAdmin:y0}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:y0,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{css:y6.image,src:i,srcSet:a?"".concat(i," 1x, ").concat(a," 2x"):"".concat(i," 1x"),alt:(0,oM.__)("Connect API KEY","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:y6.message,children:(0,oM.__)("API is not connected","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:y6.title,children:(0,oM.__)("Please, ask your Admin to connect the API with Tutor LMS Pro.","tutor-pro")})]})]}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("form",{css:y6.formWrapper,onSubmit:o.handleSubmit(l),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:y6.infoText,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{dangerouslySetInnerHTML:{/* translators: %1$s and %2$s are opening and closing anchor tags for the "OpenAI User settings" link */__html:(0,oM.sprintf)((0,oM.__)("Find your Secret API key in your %1$sOpenAI User settings%2$s and paste it here to connect OpenAI with your Tutor LMS website.","tutor-pro"),'<a href="'.concat(cS/* ["default"].CHATGPT_PLATFORM_URL */.A.CHATGPT_PLATFORM_URL,'" target="_blank" rel="noopener noreferrer">'),"</a>")}}),/*#__PURE__*/(0,t/* .jsx */.Y)(yO,{type:"info",icon:"warning",children:(0,oM.__)("The page will reload after submission. Make sure to save the course information.","tutor-pro")})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{name:"openAIApiKey",control:o.control,rules:yj(),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,(0,ep._)((0,ef._)({},e),{type:"password",isPassword:true,label:(0,oM.__)("OpenAI API key","tutor-pro"),placeholder:(0,oM.__)("Enter your OpenAI API key","tutor-pro")}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{name:"enable_open_ai",control:o.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,(0,ep._)((0,ef._)({},e),{label:(0,oM.__)("Enable OpenAI","tutor-pro")}))})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:y6.formFooter,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{onClick:()=>r({action:"CLOSE"}),variant:"text",size:"small",children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",onClick:o.handleSubmit(l),loading:s.isPending,children:(0,oM.__)("Save","tutor-pro")})]})]})})})})};/* export default */const y2=y1;var y6={wrapper:e=>{var{isCurrentUserAdmin:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["20"] */.YK["20"],";",!t&&(0,u/* .css */.AH)(y$(),iI/* .spacing["24"] */.YK["24"],iI/* .spacing["6"] */.YK["6"]))},formWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["16"] */.YK["16"]," 0 ",iI/* .spacing["16"] */.YK["16"],";"),infoText:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";",oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["8"] */.YK["8"],";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";a{",oO/* .styleUtils.resetButton */.x.resetButton,"      color:",iI/* .colorTokens.text.brand */.I6.text.brand,";}"),formFooter:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:flex-end;gap:",iI/* .spacing["16"] */.YK["16"],";border-top:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";padding:",iI/* .spacing["16"] */.YK["16"],";"),image:/*#__PURE__*/(0,u/* .css */.AH)("height:310px;width:100%;object-fit:cover;object-position:center;border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";"),message:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading4 */.I.heading4("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";margin-top:",iI/* .spacing["4"] */.YK["4"],";text-wrap:pretty;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/pro-placeholders/generate-text.webp
const y4=r.p+"images/generate-text-269f7e17.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/pro-placeholders/generate-text-2x.webp
const y5=r.p+"images/generate-text-2x-45983f4c.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormInput.tsx
function y3(){var e=(0,eh._)(["\n        height: 32px;\n        padding: "," ",";\n      "]);y3=function t(){return e};return e}function y8(){var e=(0,eh._)(["\n      svg {\n        color: ",";\n      }\n    "]);y8=function t(){return e};return e}var y9;var y7=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var we=(y9=cS/* .tutorConfig.settings */.P.settings)===null||y9===void 0?void 0:y9.chatgpt_key_exist;var wt=e=>{var{size:r="regular",label:i,type:a="text",maxLimit:o,field:s,fieldState:l,disabled:u,readOnly:c,loading:d,placeholder:f,helpText:p,onChange:h,onKeyDown:v,isHidden:g,isClearable:m=false,isSecondary:b=false,removeBorder:_,dataAttribute:y,isInlineLabel:w=false,isPassword:x=false,style:A,formFieldWrapperCss:E,inputContainerCss:k,selectOnFocus:I=false,autoFocus:C=false,generateWithAi:Y=false,isMagicAi:S=false,allowNegative:T=false,onClickAiButton:O}=e;var[D,F]=(0,n.useState)(a);var{showModal:P}=i7();var R=(0,n.useRef)(null);var H;var M=(H=s.value)!==null&&H!==void 0?H:"";var N=undefined;if(D==="number"){M=(0,iq/* .parseNumberOnly */.TW)("".concat(M),T).replace(/(\..*)\./g,"$1")}if(o){N={maxLimit:o,inputCharacter:M.toString().length}}var L=(0,ef._)({},(0,iK/* .isDefined */.O9)(y)&&{[y]:true});var K=()=>{if(!y7){P({component:yC,props:{image:y4,image2x:y5}})}else if(!we){P({component:y2,props:{image:y4,image2x:y5}})}else{P({component:yA,isMagicAi:true,props:{title:(0,oM.__)("AI Studio","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiColorize",width:24,height:24}),characters:120,field:s,fieldState:l,format:"title",is_html:false,fieldLabel:(0,oM.__)("Create a Compelling Title","tutor-pro"),fieldPlaceholder:(0,oM.__)("Describe the main focus of your course in a few words","tutor-pro")}});O===null||O===void 0?void 0:O()}};return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:i,field:s,fieldState:l,disabled:u,readOnly:c,loading:d,placeholder:f,helpText:p,isHidden:g,characterCount:N,isSecondary:b,removeBorder:_,isInlineLabel:w,inputStyle:A,wrapperCss:E,inputContainerCss:k,generateWithAi:Y,onClickAiButton:K,isMagicAi:S,children:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wn.container(m||x),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},s,e,L),{css:[e.css,wn.input(r)],type:D==="number"?"text":D,value:M,autoFocus:C,onChange:e=>{var{value:t}=e.target;var r=D==="number"?(0,iq/* .parseNumberOnly */.TW)(t):t;s.onChange(r);if(h){h(r)}},onClick:e=>{e.stopPropagation()},onKeyDown:e=>{e.stopPropagation();v===null||v===void 0?void 0:v(e.key)},autoComplete:"off",ref:e=>{s.ref(e);// @ts-ignore
R.current=e;// this is not ideal but it is the only way to set ref to the input element
},onFocus:()=>{if(!I||!R.current){return}R.current.select()}})),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:x,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{isIconOnly:true,variant:"text",size:"small",onClick:()=>F(e=>e==="password"?"text":"password"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"eye",width:24,height:24}),"aria-label":(0,oM.__)("Show/Hide Password","tutor-pro"),buttonCss:wn.eyeButton({type:D})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:m&&!!s.value&&D!=="password",children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{isIconOnly:true,variant:"text",size:"small",onClick:()=>s.onChange(""),buttonCss:oO/* .styleUtils.inputClearButton */.x.inputClearButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",width:24,height:24}),"aria-label":(0,oM.__)("Clear","tutor-pro")})})]})})}})};/* export default */const wr=mH(wt);var wn={input:e=>/*#__PURE__*/(0,u/* .css */.AH)("&.tutor-input-field:not(textarea){min-height:auto;",e==="small"&&(0,u/* .css */.AH)(y3(),iI/* .spacing["6"] */.YK["6"],iI/* .spacing["12"] */.YK["12"]),"}"),container:e=>/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;input{&.tutor-input-field{",e&&"padding-right: ".concat(iI/* .spacing["36"] */.YK["36"],";"),";}}"),eyeButton:e=>{var{type:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.inputClearButton */.x.inputClearButton,";",t!=="password"&&(0,u/* .css */.AH)(y8(),iI/* .colorTokens.icon.brand */.I6.icon.brand))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormInputWithContent.tsx
function wi(){var e=(0,eh._)(["\n      border: 1px solid ",";\n      border-radius: ",";\n      box-shadow: ",";\n      background-color: ",";\n    "]);wi=function t(){return e};return e}function wa(){var e=(0,eh._)(["\n      border-color: ",";\n      background-color: ",";\n    "]);wa=function t(){return e};return e}function wo(){var e=(0,eh._)(["\n        border-color: ",";\n      "]);wo=function t(){return e};return e}function ws(){var e=(0,eh._)(["\n          padding-",": ",";\n        "]);ws=function t(){return e};return e}function wl(){var e=(0,eh._)(["\n            padding-",": ",";\n          "]);wl=function t(){return e};return e}function wu(){var e=(0,eh._)(["\n          font-size: ",";\n          font-weight: ",";\n          height: 34px;\n          ",";\n        "]);wu=function t(){return e};return e}function wc(){var e=(0,eh._)(["\n            padding-",": ",";\n          "]);wc=function t(){return e};return e}function wd(){var e=(0,eh._)(["\n          font-size: ",";\n          height: 32px;\n          ",";\n        "]);wd=function t(){return e};return e}function wf(){var e=(0,eh._)(["\n      ","\n    "]);wf=function t(){return e};return e}function wh(){var e=(0,eh._)(["\n      min-width: 32px;\n      height: 32px;\n      padding-inline: ",";\n    "]);wh=function t(){return e};return e}function wv(){var e=(0,eh._)(["\n      border-right: 1px solid ",";\n    "]);wv=function t(){return e};return e}function wg(){var e=(0,eh._)(["\n      ","\n    "]);wg=function t(){return e};return e}function wm(){var e=(0,eh._)(["\n      height: 32px;\n      min-width: 32px;\n      padding-inline: ",";\n    "]);wm=function t(){return e};return e}function wb(){var e=(0,eh._)(["\n      border-left: 1px solid ",";\n    "]);wb=function t(){return e};return e}var w_=e=>{var{label:r,content:i,contentPosition:a="left",showVerticalBar:o=true,size:s="regular",type:l="text",field:u,fieldState:c,disabled:d,readOnly:f,loading:p,placeholder:h,helpText:v,onChange:g,onKeyDown:m,isHidden:b,wrapperCss:_,contentCss:y,removeBorder:w=false,selectOnFocus:x=false,isInlineLabel:A=false}=e;var E=(0,n.useRef)(null);return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:r,field:u,fieldState:c,disabled:d,readOnly:f,loading:p,placeholder:h,helpText:v,isHidden:b,removeBorder:w,isInlineLabel:A,children:e=>{var{css:r}=e,n=(0,iY._)(e,["css"]);var d;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[ww.inputWrapper(!!c.error,w),_],children:[a==="left"&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:[ww.inputLeftContent(o,s),y],children:i}),/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},u,n),{type:"text",value:(d=u.value)!==null&&d!==void 0?d:"",onChange:e=>{var t=l==="number"?e.target.value.replace(/[^0-9.]/g,"").replace(/(\..*)\./g,"$1"):e.target.value;u.onChange(t);if(g){g(t)}},onKeyDown:e=>m===null||m===void 0?void 0:m(e.key),css:[r,ww.input(a,o,s)],autoComplete:"off",ref:e=>{u.ref(e);// @ts-ignore
E.current=e;// this is not ideal but it is the only way to set ref to the input element
},onFocus:()=>{if(!x||!E.current){return}E.current.select()},"data-input":true})),a==="right"&&/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:[ww.inputRightContent(o,s),y],children:i})]})}})};/* export default */const wy=mH(w_);var ww={inputWrapper:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;",!t&&(0,u/* .css */.AH)(wi(),iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],iI/* .borderRadius["6"] */.Vq["6"],iI/* .shadow.input */.r7.input,iI/* .colorTokens.background.white */.I6.background.white)," ",e&&(0,u/* .css */.AH)(wa(),iI/* .colorTokens.stroke.danger */.I6.stroke.danger,iI/* .colorTokens.background.status.errorFail */.I6.background.status.errorFail),";&:focus-within{",oO/* .styleUtils.inputFocus */.x.inputFocus,";",e&&(0,u/* .css */.AH)(wo(),iI/* .colorTokens.stroke.danger */.I6.stroke.danger),"}"),input:(e,t,r)=>/*#__PURE__*/(0,u/* .css */.AH)("&.tutor-input-field:not(textarea){",iC/* .typography.body */.I.body(),";border:none;box-shadow:none;background-color:transparent;padding-",e,":0;",t&&(0,u/* .css */.AH)(ws(),e,iI/* .spacing["10"] */.YK["10"]),";",r==="large"&&(0,u/* .css */.AH)(wu(),iI/* .fontSize["24"] */.J["24"],iI/* .fontWeight.medium */.Wy.medium,t&&(0,u/* .css */.AH)(wl(),e,iI/* .spacing["12"] */.YK["12"]))," ",r==="small"&&(0,u/* .css */.AH)(wd(),iI/* .fontSize["16"] */.J["16"],t&&(0,u/* .css */.AH)(wc(),e,iI/* .spacing["4"] */.YK["4"])),"  \n      &:focus{box-shadow:none;outline:none;}}"),inputLeftContent:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small()," ",oO/* .styleUtils.flexCenter */.x.flexCenter(),"    height:40px;min-width:48px;color:",iI/* .colorTokens.icon.subdued */.I6.icon.subdued,";padding-inline:",iI/* .spacing["12"] */.YK["12"],";",t==="large"&&(0,u/* .css */.AH)(wf(),iC/* .typography.body */.I.body())," ",t==="small"&&(0,u/* .css */.AH)(wh(),iI/* .spacing["4"] */.YK["4"])," ",e&&(0,u/* .css */.AH)(wv(),iI/* .colorTokens.stroke["default"] */.I6.stroke["default"])),inputRightContent:(e,t)=>/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small()," ",oO/* .styleUtils.flexCenter */.x.flexCenter(),"    height:40px;min-width:48px;color:",iI/* .colorTokens.icon.subdued */.I6.icon.subdued,";padding-inline:",iI/* .spacing["12"] */.YK["12"],";",t==="large"&&(0,u/* .css */.AH)(wg(),iC/* .typography.body */.I.body())," ",t==="small"&&(0,u/* .css */.AH)(wm(),iI/* .spacing["4"] */.YK["4"])," ",e&&(0,u/* .css */.AH)(wb(),iI/* .colorTokens.stroke["default"] */.I6.stroke["default"]))};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/WPEditor.tsx
function wx(){var e=(0,eh._)(["\n        ","\n      "]);wx=function t(){return e};return e}function wA(){var e=(0,eh._)(["\n        border-top-right-radius: ",";\n      "]);wA=function t(){return e};return e}function wE(){var e=(0,eh._)(["\n          ","\n        "]);wE=function t(){return e};return e}function wk(){var e=(0,eh._)(["\n      .mce-tinymce.mce-container {\n        border: ",";\n        border-radius: ",";\n\n        ","\n      }\n    "]);wk=function t(){return e};return e}var wI=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;// Without getDefaultSettings function editor does not initiate
if(!window.wp.editor.getDefaultSettings){window.wp.editor.getDefaultSettings=()=>({})}function wC(e,t,r,n,i,a,o,s,l,u,c,d,f){var p=d!==null&&d!==void 0?d:n?"bold italic underline | image | ".concat(wI?"codesample":""):"formatselect bold italic underline | bullist numlist | blockquote | alignleft aligncenter alignright | link unlink | wp_more ".concat(wI?" codesample":""," | wp_adv");var h=f!==null&&f!==void 0?f:"strikethrough hr | forecolor pastetext removeformat | charmap | outdent indent | undo redo | wp_help | fullscreen";p=c?p:p.replaceAll(" | "," ");return{tinymce:{wpautop:true,menubar:false,autoresize_min_height:l||200,autoresize_max_height:u||500,wp_autoresize_on:true,browser_spellcheck:!s,convert_urls:false,end_container_on_empty_block:true,entities:"38,amp,60,lt,62,gt",entity_encoding:"raw",fix_list_elements:true,indent:false,relative_urls:0,remove_script_host:0,plugins:"charmap,colorpicker,hr,lists,image,media,paste,tabfocus,textcolor,fullscreen,wordpress,wpautoresize,wpeditimage,wpemoji,wpgallery,wplink,wpdialogs,wptextpattern,wpview".concat(wI?",codesample":""),skin:"light",skin_url:"".concat(cS/* .tutorConfig.site_url */.P.site_url,"/wp-content/plugins/tutor/assets/lib/tinymce/light"),submit_patch:true,link_context_toolbar:false,theme:"modern",toolbar:!s,toolbar1:p,toolbar2:n?false:h,content_css:"".concat(cS/* .tutorConfig.site_url */.P.site_url,"/wp-includes/css/dashicons.min.css,").concat(cS/* .tutorConfig.site_url */.P.site_url,"/wp-includes/js/tinymce/skins/wordpress/wp-content.css,").concat(cS/* .tutorConfig.site_url */.P.site_url,"/wp-content/plugins/tutor/assets/lib/tinymce/light/content.min.css"),statusbar:!s,branding:false,// eslint-disable-next-line @typescript-eslint/no-explicit-any
setup:n=>{n.on("init",()=>{if(e&&!s){n.getBody().focus()}if(s){n.setMode("readonly");var t=n.contentDocument.querySelector(".mce-content-body");t.style.backgroundColor="transparent";setTimeout(()=>{var e=t.scrollHeight;if(e){n.iframeElement.style.height="".concat(e,"px")}},500)}});n.on("change keyup paste",()=>{t(n.getContent())});n.on("focus",()=>{r(true)});n.on("blur",()=>r(false));n.on("FullscreenStateChanged",e=>{var t=document.getElementById("tutor-course-builder");var r=document.getElementById("tutor-course-bundle-builder-root");var n=t||r;if(n){if(e.state){n.style.position="relative";n.style.zIndex="100000"}else{n.removeAttribute("style")}}o===null||o===void 0?void 0:o(e.state)})},wp_keep_scroll_position:false,wpeditimage_html5_captions:true},mediaButtons:!i&&!n&&!s,drag_drop_upload:true,quicktags:a||n||s?false:{buttons:["strong","em","block","del","ins","img","ul","ol","li","code","more","close"]}}}var wY=e=>{var{value:r="",onChange:i,isMinimal:a,hideMediaButtons:o,hideQuickTags:s,autoFocus:l=false,onFullScreenChange:u,readonly:c=false,min_height:d,max_height:f,toolbar1:p,toolbar2:h}=e;var v=(0,n.useRef)(null);var{current:g}=(0,n.useRef)((0,iq/* .nanoid */.Ak)());var[m,b]=(0,n.useState)(l);var _=e=>{var t=e.target;i(t.value)};var y=(0,n.useCallback)(e=>{var{tinymce:t}=window;if(!t||m){return}var r=window.tinymce.get(g);if(r){if(e!==r.getContent()){r.setContent(e)}}},[g,m]);(0,n.useEffect)(()=>{y(r);// eslint-disable-next-line react-hooks/exhaustive-deps
},[r]);(0,n.useEffect)(()=>{var e=v.current;if(typeof window.wp!=="undefined"&&window.wp.editor){var t=wC(m,i,b,a,o,s,u,c,d,f,oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile,p,h);// When rendered inside an iframe (e.g., via createPortal),
// wp.editor.initialize() fails because it uses document.getElementById()
// which only searches the parent document. Additionally, standard TinyMCE
// mode creates a content iframe internally using parent document DOM APIs,
// causing editor.getBody() to return undefined in cross-document contexts.
// Using inline mode with the `target` option avoids both issues:
// TinyMCE renders directly into the target element without a content iframe.
var n=e&&e.ownerDocument!==document;if(n){var l,y;var w=window.tinymce.get(g);if(w){w.remove()}// TinyMCE inline mode requires a block-level element (not textarea).
// Create a div in the iframe's document to serve as the inline editor target.
var x=e.ownerDocument;var A=x.createElement("div");A.id=g;A.innerHTML=r;// Hide textarea and transfer its id to the div (TinyMCE uses element id for registration)
e.removeAttribute("id");e.style.display="none";(l=e.parentNode)===null||l===void 0?void 0:l.insertBefore(A,e.nextSibling);// Filter out plugins that require TinyMCE's content iframe (unavailable in inline mode)
var E=["wpautoresize","fullscreen","tabfocus"];var k=(y=t.tinymce.plugins)===null||y===void 0?void 0:y.split(",").map(e=>e.trim()).filter(e=>!E.includes(e)).join(",");window.tinymce.init((0,ep._)((0,ef._)({},t.tinymce),{target:A,inline:true,plugins:k,// Simplified setup: inline mode has no iframeElement or contentDocument
// eslint-disable-next-line @typescript-eslint/no-explicit-any
setup:e=>{e.on("init",()=>{if(c){e.setMode("readonly")}var t=e.getBody();if(t){t.style.backgroundColor="transparent"}if(m&&!c){t===null||t===void 0?void 0:t.focus()}});e.on("change keyup paste",()=>{i(e.getContent())});e.on("focus",()=>b(true));e.on("blur",()=>b(false))}}));return()=>{var t=window.tinymce.get(g);if(t){t.remove()}A.remove();// Restore textarea
if(e){e.id=g;e.style.display=""}}}window.wp.editor.remove(g);window.wp.editor.initialize(g,t);e===null||e===void 0?void 0:e.addEventListener("change",_);e===null||e===void 0?void 0:e.addEventListener("input",_);return()=>{window.wp.editor.remove(g);e===null||e===void 0?void 0:e.removeEventListener("change",_);e===null||e===void 0?void 0:e.removeEventListener("input",_)}}// eslint-disable-next-line react-hooks/exhaustive-deps
},[c]);return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wT.wrapper({hideQuickTags:s,isMinimal:a,isFocused:m,isReadOnly:c}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("textarea",{"data-cy":"tutor-tinymce",ref:v,id:g,defaultValue:r})})};/* export default */const wS=wY;var wT={wrapper:e=>{var{hideQuickTags:t,isMinimal:r,isFocused:n,isReadOnly:i}=e;return/*#__PURE__*/(0,u/* .css */.AH)("flex:1;.wp-editor-tools{z-index:auto;}.wp-editor-container{border-top-left-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border-bottom-left-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border-bottom-right-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",n&&!i&&(0,u/* .css */.AH)(wx(),oO/* .styleUtils.inputFocus */.x.inputFocus),":focus-within{",!i&&oO/* .styleUtils.inputFocus */.x.inputFocus,"}}.wp-switch-editor{height:auto;border:1px solid #dcdcde;border-radius:0px;border-top-left-radius:",iI/* .borderRadius["4"] */.Vq["4"],";border-top-right-radius:",iI/* .borderRadius["4"] */.Vq["4"],";top:2px;padding:3px 8px 4px;font-size:13px;color:#646970;&:focus,&:active,&:hover{background:#f0f0f1;color:#646970;}}.mce-btn button{&:focus,&:active,&:hover{background:none;color:#50575e;}}.mce-toolbar-grp,.quicktags-toolbar{border-top-left-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",(t||r)&&(0,u/* .css */.AH)(wA(),iI/* .borderRadius["6"] */.Vq["6"]),"}.mce-top-part::before{display:none;}.mce-statusbar{border-bottom-left-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border-bottom-right-radius:",iI/* .borderRadius["6"] */.Vq["6"],";}.mce-tinymce{box-shadow:none;background-color:transparent;}.mce-edit-area{background-color:unset;}",(t||r)&&(0,u/* .css */.AH)(wk(),!i?"1px solid ".concat(iI/* .colorTokens.stroke["default"] */.I6.stroke["default"]):"none",iI/* .borderRadius["6"] */.Vq["6"],n&&!i&&(0,u/* .css */.AH)(wE(),oO/* .styleUtils.inputFocus */.x.inputFocus)),"    textarea{visibility:visible !important;width:100%;resize:none;border:none;outline:none;padding:",iI/* .spacing["10"] */.YK["10"],";}")}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormWPEditor.tsx
function wO(){var e=(0,eh._)(["\n      overflow: hidden;\n      border-radius: ",";\n    "]);wO=function t(){return e};return e}var wD;var wF={droip:"droipColorized",elementor:"elementorColorized",gutenberg:"gutenbergColorized",divi:"diviColorized"};var wP=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var wR=(wD=cS/* .tutorConfig.settings */.P.settings)===null||wD===void 0?void 0:wD.chatgpt_key_exist;var wH=e=>{var{editorUsed:r,onBackToWPEditorClick:i,onCustomEditorButtonClick:a}=e;var{showModal:o}=i7();var[s,l]=(0,n.useState)("");return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wL.editorOverlay,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r.name!=="gutenberg",children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:"small",buttonCss:wL.editWithButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"arrowLeft",height:24,width:24}),loading:s==="back_to",onClick:()=>mz(function*(){var{action:e}=yield o({component:d0,props:{title:(0,oM.__)("Back to WordPress Editor","tutor-pro"),description:/*#__PURE__*/(0,t/* .jsx */.Y)(yO,{type:"warning",icon:"warning",children:(0,oM.__)("Warning: Switching to the WordPress default editor may cause issues with your current layout, design, and content.","tutor-pro")}),confirmButtonText:(0,oM.__)("Confirm","tutor-pro"),confirmButtonVariant:"primary"},depthIndex:iI/* .zIndex.highest */.fE.highest});if(e==="CONFIRM"){try{l("back_to");yield i===null||i===void 0?void 0:i(r.name)}finally{l("")}}})(),children:(0,oM.__)("Back to WordPress Editor","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:"small",buttonCss:wL.editWithButton,loading:s==="edit_with",icon:wF[r.name]&&/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:wF[r.name],height:24,width:24}),onClick:()=>mz(function*(){try{l("edit_with");yield a===null||a===void 0?void 0:a(r);window.location.href=r.link}finally{l("")}})(),children:/* translators: %s is the editor name */(0,oM.sprintf)((0,oM.__)("Edit with %s","tutor-pro"),r===null||r===void 0?void 0:r.label)})]})};var wM=e=>{var{label:r,field:i,fieldState:a,disabled:o,readOnly:s,loading:l,placeholder:u,helpText:c,onChange:d,generateWithAi:f=false,onClickAiButton:p,hasCustomEditorSupport:h=false,isMinimal:v=false,hideMediaButtons:g=false,hideQuickTags:m=false,editors:b=[],editorUsed:_={name:"classic",label:"Classic Editor",link:""},isMagicAi:y=false,autoFocus:w=false,onCustomEditorButtonClick:x,onBackToWPEditorClick:A,onFullScreenChange:E,min_height:k,max_height:I,toolbar1:C,toolbar2:Y}=e;var S,T,O,D,F;var{showModal:P}=i7();var R=((S=cS/* .tutorConfig.settings */.P.settings)===null||S===void 0?void 0:S.hide_admin_bar_for_users)==="off";var H=(O=cS/* .tutorConfig.current_user */.P.current_user)===null||O===void 0?void 0:(T=O.roles)===null||T===void 0?void 0:T.includes(oI/* .TutorRoles.ADMINISTRATOR */.gt.ADMINISTRATOR);var M=(F=cS/* .tutorConfig.current_user */.P.current_user)===null||F===void 0?void 0:(D=F.roles)===null||D===void 0?void 0:D.includes(oI/* .TutorRoles.TUTOR_INSTRUCTOR */.gt.TUTOR_INSTRUCTOR);var[N,L]=(0,n.useState)(null);var K=b.filter(e=>H||M&&R||e.name==="droip");var q=h&&K.length>0;var B=q&&_.name!=="classic";var U=()=>{if(!wP){P({component:yC,props:{image:y4,image2x:y5}})}else if(!wR){P({component:y2,props:{image:y4,image2x:y5}})}else{P({component:yA,isMagicAi:true,props:{title:(0,oM.__)("AI Studio","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiColorize",width:24,height:24}),characters:1e3,field:i,fieldState:a,is_html:true}});p===null||p===void 0?void 0:p()}};var j=/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wL.editorLabel,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{css:wL.labelWithAi,children:[r,/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:f,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:wL.aiButton,onClick:U,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiColorize",width:32,height:32})})})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wL.editorsButtonWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:(0,oM.__)("Edit with","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wL.customEditorButtons,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:K,children:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:e.label,delay:200,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:wL.customEditorButton,disabled:N===e.name,onClick:()=>mz(function*(){try{L(e.name);yield x===null||x===void 0?void 0:x(e);window.location.href=e.link}finally{L(null)}})(),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:N===e.name,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:wF[e.name],height:24,width:24})]})},e.name)})})]})]});return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:q?j:r,field:i,fieldState:a,disabled:o,readOnly:s,placeholder:u,helpText:c,isMagicAi:y,generateWithAi:!q&&f,onClickAiButton:U,replaceEntireLabel:q,children:()=>{if(l){return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oO/* .styleUtils.flexCenter */.x.flexCenter(),children:/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:20,color:iI/* .colorTokens.icon["default"] */.I6.icon["default"]})})}var e;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wL.wrapper({isOverlayVisible:B}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:B,children:/*#__PURE__*/(0,t/* .jsx */.Y)(wH,{editorUsed:_,onBackToWPEditorClick:A,onCustomEditorButtonClick:x})}),/*#__PURE__*/(0,t/* .jsx */.Y)(wS,{value:(e=i.value)!==null&&e!==void 0?e:"",onChange:e=>{i.onChange(e);if(d){d(e)}},isMinimal:v,hideMediaButtons:g,hideQuickTags:m,autoFocus:w,onFullScreenChange:E,readonly:s,min_height:k,max_height:I,toolbar1:C,toolbar2:Y})]})}})};/* export default */const wN=wM;var wL={wrapper:e=>{var{isOverlayVisible:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;",t&&(0,u/* .css */.AH)(wO(),iI/* .borderRadius["6"] */.Vq["6"]))},editorLabel:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;width:100%;align-items:center;justify-content:space-between;"),aiButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",oO/* .styleUtils.flexCenter */.x.flexCenter(),";width:32px;height:32px;border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";:disabled{cursor:not-allowed;}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";}"),labelWithAi:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";"),editorsButtonWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),customEditorButtons:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";"),customEditorButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,"    display:flex;align-items:center;justify-content:center;position:relative;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}"),editorOverlay:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;height:100%;width:100%;",oO/* .styleUtils.flexCenter */.x.flexCenter(),";gap:",iI/* .spacing["8"] */.YK["8"],";background-color:",fo()(iI/* .colorTokens.background.modal */.I6.background.modal,.6),";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";z-index:",iI/* .zIndex.positive */.fE.positive,";backdrop-filter:blur(8px);"),editWithButton:/*#__PURE__*/(0,u/* .css */.AH)("background:",iI/* .colorTokens.action.secondary["default"] */.I6.action.secondary["default"],";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";box-shadow:inset 0 -1px 0 0 ",fo()("#1112133D",.24),",0 1px 0 0 ",fo()("#1112133D",.8),";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/ModalWrapper.tsx
function wK(){var e=(0,eh._)(["\n      max-width: 100vw;\n      width: 100vw;\n      height: 100vh;\n      margin-top: ",";\n    "]);wK=function t(){return e};return e}function wq(){var e=(0,eh._)(["\n      height: calc(100% - ","px);\n    "]);wq=function t(){return e};return e}var wB=e=>{var{children:r,onClose:n,title:i,subtitle:a,icon:o,headerChildren:s,entireHeader:u,actions:c,maxWidth:d=1218,blurTriggerElement:f=true,fullScreen:p=false}=e;c8();return/*#__PURE__*/(0,t/* .jsx */.Y)(cX,{blurPrevious:f,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wj.container({maxWidth:d,isFullScreen:p}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wj.header({hasHeaderChildren:!!s}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wj.headerContent,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:wj.iconWithTitle,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:o,children:o}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i,children:/*#__PURE__*/(0,t/* .jsx */.Y)("h6",{css:wj.title,title:typeof i==="string"?i:"",children:i})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:wj.subtitle,children:a})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wj.headerChildren,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:s,children:s})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wj.actionsWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:c,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:wj.closeButton,onClick:n,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"times",width:14,height:14})}),children:c})})]}),children:u})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:wj.content({isFullScreen:p}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(l,{children:r})})]})})};/* export default */const wU=wB;var wj={container:e=>{var{maxWidth:t,isFullScreen:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;background:",iI/* .colorTokens.background.white */.I6.background.white,";margin:",oI/* .modal.MARGIN_TOP */.yl.MARGIN_TOP,"px auto ",iI/* .spacing["24"] */.YK["24"],";height:100%;max-width:",t,"px;box-shadow:",iI/* .shadow.modal */.r7.modal,";border-radius:",iI/* .borderRadius["10"] */.Vq["10"],";overflow:hidden;bottom:0;z-index:",iI/* .zIndex.modal */.fE.modal,";width:100%;",r&&(0,u/* .css */.AH)(wK(),oI/* .WP_ADMIN_BAR_HEIGHT */.I4)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{width:90%;}")},header:e=>{var{hasHeaderChildren:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:",t?"1fr auto 1fr":"1fr auto auto",";gap:",iI/* .spacing["8"] */.YK["8"],";align-items:center;width:100%;height:",oI/* .modal.HEADER_HEIGHT */.yl.HEADER_HEIGHT,"px;background:",iI/* .colorTokens.background.white */.I6.background.white,";border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";position:sticky;")},headerContent:/*#__PURE__*/(0,u/* .css */.AH)("place-self:center start;display:inline-flex;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";padding-left:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["16"] */.YK["16"],";}"),headerChildren:/*#__PURE__*/(0,u/* .css */.AH)("place-self:center center;"),iconWithTitle:/*#__PURE__*/(0,u/* .css */.AH)("display:inline-flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";flex-shrink:0;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading6 */.I.heading6("medium"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";text-transform:none;letter-spacing:normal;"),subtitle:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1)," ",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";padding-left:",iI/* .spacing["12"] */.YK["12"],";border-left:1px solid ",iI/* .colorTokens.icon.hints */.I6.icon.hints,";"),actionsWrapper:/*#__PURE__*/(0,u/* .css */.AH)("place-self:center end;display:inline-flex;gap:",iI/* .spacing["16"] */.YK["16"],";padding-right:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-right:",iI/* .spacing["16"] */.YK["16"],";}"),closeButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";background:",iI/* .colorTokens.background.white */.I6.background.white,";&:focus,&:active,&:hover{background:",iI/* .colorTokens.background.white */.I6.background.white,";}svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";transition:color 0.3s ease-in-out;}:hover{svg{color:",iI/* .colorTokens.icon.hover */.I6.icon.hover,";}}:focus{box-shadow:",iI/* .shadow.focus */.r7.focus,";}"),content:e=>{var{isFullScreen:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("height:calc(100% - ",oI/* .modal.HEADER_HEIGHT */.yl.HEADER_HEIGHT+oI/* .modal.MARGIN_TOP */.yl.MARGIN_TOP,"px);background-color:",iI/* .colorTokens.surface.courseBuilder */.I6.surface.courseBuilder,";overflow-x:hidden;",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto," ",t&&(0,u/* .css */.AH)(wq(),oI/* .modal.HEADER_HEIGHT */.yl.HEADER_HEIGHT))}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/services/content-bank.ts
var wV=e=>{return cM.post(cL.SAVE_CONTENT_BANK_COLLECTION,e)};var wW=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:wV,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankCollections"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});e.invalidateQueries({queryKey:["ContentBankContents"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var wz=e=>{return cM.post(cL.DELETE_CONTENT_BANK_COLLECTION,{id:e})};var wG=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:wz,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankCollections"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var wQ=e=>{return cM.post(cL.DELETE_CONTENT_BANK_CONTENTS,{collection_id:e.collectionId,content_ids:e.contentIds})};var w$=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:wQ,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var wX=e=>{return cM.get(cL.GET_CONTENT_BANK_LESSON_DETAILS,{params:{lesson_id:e}}).then(e=>e.data)};var wJ=e=>{return sL({queryFn:()=>wX(Number(e)),queryKey:["GetLessonContentDetails",e],enabled:!!e})};var wZ=(e,t,r)=>{var n;var i;return oR(oF(oR(oF({},t&&{lesson_id:t}),{collection_id:r,title:e.title,description:e.description,thumbnail_id:(i=(n=e.thumbnail)===null||n===void 0?void 0:n.id)!==null&&i!==void 0?i:null}),e.video?Object.fromEntries(Object.entries(e.video).map(t=>{var[r,n]=t;var i;return["video[".concat(r,"]"),r==="source"&&!n?"-1":r==="poster_url"&&!((i=e.video)===null||i===void 0?void 0:i.poster)?"":n]})):{}),{"video[runtime][hours]":e.duration.hour||0,"video[runtime][minutes]":e.duration.minute||0,"video[runtime][seconds]":e.duration.second||0,tutor_attachments:(e.tutor_attachments||[]).map(e=>e.id)})};var w0=e=>{return cM.post(cL.SAVE_CONTENT_BANK_LESSON_CONTENT,e)};var w1=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:w0,onSuccess:(r,n)=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["GetLessonContentDetails",n.lesson_id]});if(!n.lesson_id){e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]})}t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var w2=e=>{return cM.get(cL.GET_CONTENT_BANK_ASSIGNMENT_DETAILS,{params:{assignment_id:e}}).then(e=>e.data)};var w6=e=>{return sL({queryFn:()=>w2(Number(e)),queryKey:["GetAssignmentsContentDetails",e],enabled:!!e})};var w4=(e,t,r)=>{return oR(oF({},t&&{assignment_id:t}),{collection_id:r,title:e.title,summary:e.summary,attachments:(e.attachments||[]).map(e=>e.id),"assignment_option[time_duration][time]":e.time_duration.time,"assignment_option[time_duration][value]":e.time_duration.value,"assignment_option[deadline_from_start]":e.deadline_from_start?"1":"0","assignment_option[total_mark]":e.total_mark,"assignment_option[pass_mark]":e.pass_mark,"assignment_option[upload_files_limit]":e.upload_files_limit,"assignment_option[upload_file_size_limit]":e.upload_file_size_limit})};var w5=e=>{return cM.post(cL.SAVE_CONTENT_BANK_ASSIGNMENT_CONTENT,e)};var w3=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:w5,onSuccess:(r,n)=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["GetAssignmentContentDetails",n.assignment_id]});if(!n.assignment_id){e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]})}t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var w8=e=>{return cM.get(cL.GET_CONTENT_BANK_QUESTION_DETAILS,{params:{question_id:e}}).then(e=>e.data)};var w9=e=>{return sL({queryFn:()=>w8(e),queryKey:["GetQuestionContentDetails",e],enabled:!!e})};var w7=e=>{return cM.post(cL.SAVE_QUESTION_CONTENT,{payload:e})};var xe=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:w7,onSuccess:(r,n)=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["GetQuestionContentDetails",n.question_id]});if(!n.question_id){e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]})}t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var xt=e=>{return cM.post(cL.DUPLICATE_CONTENT_BANK_COLLECTION,{id:e})};var xr=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:xt,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankCollections"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var xn=e=>{var{contentIds:t}=e;return cM.post(cL.DUPLICATE_CONTENT_BANK_CONTENT,{content_ids:t})};var xi=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:xn,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var xa=e=>{var{collectionId:t,contentIds:r}=e;return cM.post(cL.MOVE_CONTENT_BANK_CONTENT,{collection_id:t,content_ids:r})};var xo=()=>{var e=ec();var{showToast:t}=i2();return _3({mutationFn:xa,onSuccess:r=>{e.invalidateQueries({queryKey:["ContentBankContents"]});e.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]});t({type:"success",message:r.message})},onError:e=>{t({type:"danger",message:(0,iq/* .convertToErrorMessage */.EL)(e)})}})};var xs=e=>{return cM.post(cL.IMPORT_FROM_COURSES,e)};var xl=()=>{return _3({mutationFn:xs})};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/AssignmentModal.tsx
var xu=[{label:(0,oM.__)("Weeks","tutor-pro"),value:"weeks"},{label:(0,oM.__)("Days","tutor-pro"),value:"days"},{label:(0,oM.__)("Hours","tutor-pro"),value:"hours"}];var xc=e=>{var{contentId:r="",collectionId:i,closeModal:a,subtitle:o}=e;var s;var l=((s=cS/* .tutorConfig.settings */.P.settings)===null||s===void 0?void 0:s.chatgpt_enable)==="on";var u=w6(Number(r));var c=w3();var{data:d}=u;var f=pz({defaultValues:{title:"",summary:"",attachments:[],time_duration:{value:"0",time:"weeks"},deadline_from_start:false,total_mark:10,pass_mark:5,upload_files_limit:1,upload_file_size_limit:2,content_drip_settings:{unlock_date:"",after_xdays_of_enroll:"",prerequisites:[]}},shouldFocusError:true,mode:"onChange"});var p=f.formState.dirtyFields&&Object.keys(f.formState.dirtyFields).length>0;(0,n.useEffect)(()=>{if(d){f.reset({title:d.post_title||"",summary:(0,iq/* .normalizeLineEndings */.EW)(d.post_content)||"",attachments:d.attachments||[],time_duration:{value:d.assignment_option.time_duration.value||"0",time:d.assignment_option.time_duration.time||"weeks"},deadline_from_start:d.assignment_option.deadline_from_start==="1"?true:false,total_mark:d.assignment_option.total_mark||10,pass_mark:d.assignment_option.pass_mark||5,upload_files_limit:d.assignment_option.upload_files_limit||1,upload_file_size_limit:d.assignment_option.upload_file_size_limit||2})}var e=setTimeout(()=>{f.setFocus("title")},250);return()=>{clearTimeout(e)};// eslint-disable-next-line react-hooks/exhaustive-deps
},[d]);var h=e=>cQ(function*(){var t=w4(e,Number(r),Number(i));var n=yield c.mutateAsync(t);if(n.status_code===200||n.status_code===201){a({action:"CONFIRM"})}})();return/*#__PURE__*/(0,t/* .jsx */.Y)(wU,{onClose:()=>a({action:"CLOSE"}),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:p?"warning":"assignment",width:24,height:24}),title:p?oI/* .CURRENT_VIEWPORT.isAboveDesktop */.vN.isAboveDesktop?(0,oM.__)("Unsaved Changes","tutor-pro"):"":(0,oM.__)("Assignment","tutor-pro"),subtitle:o&&(oI/* .CURRENT_VIEWPORT.isAboveSmallMobile */.vN.isAboveSmallMobile?(0,oM.sprintf)((0,oM.__)("Collection: %s","tutor-pro"),o):""),maxWidth:1070,actions:p&&/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{if(r){f.reset()}else{a({action:"CLOSE"})}},children:r?(0,oM.__)("Discard Changes","tutor-pro"):(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"save-assignment",loading:c.isPending,variant:"primary",size:"small",onClick:f.handleSubmit(h),children:r?(0,oM.__)("Update","tutor-pro"):(0,oM.__)("Save","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:xf.wrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!u.isLoading,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:xf.assignmentInfo,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"title",control:f.control,rules:oF({required:(0,oM.__)("Assignment title is required","tutor-pro")},yG(255)),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{label:(0,oM.__)("Title","tutor-pro"),placeholder:(0,oM.__)("Enter Assignment Title","tutor-pro"),generateWithAi:l,isClearable:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"summary",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wN,oR(oF({},e),{label:(0,oM.__)("Content","tutor-pro"),placeholder:(0,oM.__)("Enter Assignment Content","tutor-pro"),generateWithAi:l}))})]})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:xf.rightPanel,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"attachments",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(mj,oR(oF({},e),{label:(0,oM.__)("Attachments","tutor-pro"),buttonText:(0,oM.__)("Upload Attachment","tutor-pro"),selectMultiple:true}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:xf.timeLimit,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"time_duration.value",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{type:"number",label:(0,oM.__)("Time Limit","tutor-pro"),placeholder:"0",dataAttribute:"data-time-limit",selectOnFocus:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"time_duration.time",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,oR(oF({},e),{options:xu,removeOptionsMinWidth:true,dataAttribute:"data-time-limit-unit"}))})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"deadline_from_start",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},e),{label:(0,oM.__)("Set Deadline From Assignment Start Time","tutor-pro"),helpText:(0,oM.__)("Each student will get their own deadline based on when they start the assignment.","tutor-pro")}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"total_mark",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{type:"number",label:(0,oM.__)("Total Points","tutor-pro"),placeholder:"0",selectOnFocus:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"pass_mark",control:f.control,rules:{validate:e=>{if(Number(e)>Number(f.getValues("total_mark"))){return(0,oM.__)("Pass mark cannot be greater than total mark","tutor-pro")}return true}},render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{type:"number",label:(0,oM.__)("Minimum Pass Points","tutor-pro"),placeholder:"0",selectOnFocus:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"upload_files_limit",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{placeholder:"0",type:"number",label:(0,oM.__)("File Upload Limit","tutor-pro"),helpText:(0,oM.__)("Define the number of files that a student can upload in this assignment. Input 0 to disable the option to upload.","tutor-pro"),selectOnFocus:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"upload_file_size_limit",control:f.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,oR(oF({},e),{type:"number",label:(0,oM.__)("Maximum File Size Limit","tutor-pro"),placeholder:"0",content:(0,oM.__)("MB","tutor-pro"),contentPosition:"right"}))})]})]})})})};/* export default */const xd=xc;var xf={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin:0 auto;display:grid;grid-template-columns:1fr 338px;width:100%;height:100%;padding-inline:",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{grid-template-columns:1fr;padding-inline:",iI/* .spacing["24"] */.YK["24"],";}",iI/* .Breakpoint.mobile */.EA.mobile,"{padding-inline:",iI/* .spacing["16"] */.YK["16"],";}"),assignmentInfo:/*#__PURE__*/(0,u/* .css */.AH)("padding-block:",iI/* .spacing["24"] */.YK["24"],";padding-right:",iI/* .spacing["32"] */.YK["32"],";display:flex;flex-direction:column;gap:",iI/* .spacing["24"] */.YK["24"],";position:sticky;top:0;z-index:",iI/* .zIndex.positive */.fE.positive,";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{position:unset;padding-right:0;}"),rightPanel:/*#__PURE__*/(0,u/* .css */.AH)("border-left:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";padding-block:",iI/* .spacing["24"] */.YK["24"],";padding-left:",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{border-left:none;padding-left:0;}"),timeLimit:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;align-items:end;grid-template-columns:1fr 100px;& input{border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";&[data-time-limit]{border-radius:",iI/* .borderRadius["6"] */.Vq["6"]," 0 0 ",iI/* .borderRadius["6"] */.Vq["6"],";border-right:none;&:focus{border-right:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";z-index:",iI/* .zIndex.positive */.fE.positive,";}}&[data-time-limit-unit]{border-radius:0 ",iI/* .borderRadius["6"] */.Vq["6"]," ",iI/* .borderRadius["6"] */.Vq["6"]," 0;}}"),uploadAttachment:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";"),uploadLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),"    color:",iI/* .colorTokens.text.title */.I6.text.title,";"),contentDripLabel:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;svg{margin-right:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.icon.success */.I6.icon.success,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/ImageInput.tsx
function xp(){var e=(0,eh._)(["\n      width: 168px;\n    "]);xp=function t(){return e};return e}function xh(){var e=(0,eh._)(["\n      width: 168px;\n    "]);xh=function t(){return e};return e}var xv={large:"regular",regular:"small",small:"small"};var xg=e=>{var{buttonText:r=(0,oM.__)("Upload Media","tutor-pro"),infoText:n,size:i="regular",value:a,uploadHandler:o,clearHandler:s,emptyImageCss:l,previewImageCss:c,overlayCss:d,replaceButtonText:f,loading:p,disabled:h=false,isClearAble:v=true}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!p,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:xb.emptyMedia({size:i,isDisabled:h}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a===null||a===void 0?void 0:a.url,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"aria-disabled":h,css:[xb.emptyMedia({size:i,isDisabled:h}),l],onClick:e=>{e.stopPropagation();if(h){return}o()},onKeyDown:e=>{if(!h&&e.key==="Enter"){e.preventDefault();o()}},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"addImage",width:32,height:32}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{disabled:h,size:xv[i],variant:"secondary",buttonContentCss:xb.buttonText,"data-cy":"upload-media",children:r}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:n,children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:xb.infoTexts,children:n})})]}),children:e=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[xb.previewWrapper({size:i,isDisabled:h}),c],"data-cy":"media-preview",children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:e,alt:a===null||a===void 0?void 0:a.title,css:xb.imagePreview}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:[xb.hoverPreview,d],"data-hover-buttons-wrapper":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{disabled:h,variant:"secondary",size:xv[i],buttonCss:/*#__PURE__*/(0,u/* .css */.AH)("margin-top:",v&&iI/* .spacing["16"] */.YK["16"],";"),onClick:e=>{e.stopPropagation();o()},"data-cy":"replace-media",children:f||(0,oM.__)("Replace Image","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:v,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{disabled:h,variant:"text",size:xv[i],onClick:e=>{e.stopPropagation();s()},"data-cy":"clear-media",children:(0,oM.__)("Remove","tutor-pro")})})]})]})}})})};/* export default */const xm=xg;var xb={emptyMedia:e=>{var{size:t,isDisabled:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:168px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:",iI/* .spacing["8"] */.YK["8"],";border:1px dashed ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";background-color:",iI/* .colorTokens.bg.white */.I6.bg.white,";overflow:hidden;cursor:",r?"not-allowed":"pointer",";",t==="small"&&(0,u/* .css */.AH)(xp()),"    svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}&:hover svg{color:",!r&&iI/* .colorTokens.brand.blue */.I6.brand.blue,";}")},buttonText:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";"),infoTexts:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";text-align:center;"),previewWrapper:e=>{var{size:t,isDisabled:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:168px;border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";overflow:hidden;position:relative;background-color:",iI/* .colorTokens.bg.white */.I6.bg.white,";",t==="small"&&(0,u/* .css */.AH)(xh()),"    &:hover{[data-hover-buttons-wrapper]{display:",r?"none":"flex",";opacity:",r?0:1,";}}")},imagePreview:/*#__PURE__*/(0,u/* .css */.AH)("height:100%;width:100%;object-fit:contain;"),hoverPreview:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;justify-content:center;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";opacity:0;position:absolute;inset:0;background-color:",fo()(iI/* .colorTokens.color.black.main */.I6.color.black.main,.6),";button:first-of-type{box-shadow:",iI/* .shadow.button */.r7.button,";}button:last-of-type:not(:only-of-type){color:",iI/* .colorTokens.text.white */.I6.text.white,";box-shadow:none;}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/ImageContext.tsx
var x_=[(0,oM.__)("A serene classroom setting with books and a chalkboard","tutor-pro"),(0,oM.__)("An abstract representation of innovation and creativity","tutor-pro"),(0,oM.__)("A vibrant workspace with a laptop and coffee cup","tutor-pro"),(0,oM.__)("A modern design with digital learning icons","tutor-pro"),(0,oM.__)("A futuristic cityscape with a glowing pathway","tutor-pro"),(0,oM.__)("A peaceful nature scene with soft colors","tutor-pro"),(0,oM.__)("A professional boardroom with sleek visuals","tutor-pro"),(0,oM.__)("A stack of books with warm, inviting lighting","tutor-pro"),(0,oM.__)("A dynamic collage of technology and education themes","tutor-pro"),(0,oM.__)("A bold and minimalistic design with striking colors","tutor-pro")];// eslint-disable-next-line @typescript-eslint/no-explicit-any
var xy=/*#__PURE__*/i().createContext(null);var xw=()=>{var e=(0,n.useContext)(xy);if(!e){throw new Error("useMagicImageGeneration must be used within MagicImageGenerationProvider.")}return e};var xx=e=>{var{children:r,field:i,fieldState:a,onCloseModal:o}=e;var s=_4({defaultValues:{prompt:"",style:"none"}});var[l,u]=(0,n.useState)("generation");var[c,d]=(0,n.useState)("");var[f,p]=(0,n.useState)([null,null,null,null]);var h=(0,n.useCallback)(e=>{u(e)},[]);return/*#__PURE__*/(0,t/* .jsx */.Y)(xy.Provider,{value:{state:l,onDropdownMenuChange:h,images:f,setImages:p,currentImage:c,setCurrentImage:d,field:i,fieldState:a,onCloseModal:o},children:/*#__PURE__*/(0,t/* .jsx */.Y)(bs,(0,ep._)((0,ef._)({},s),{children:r}))})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormImageRadioGroup.tsx
function xA(){var e=(0,eh._)(["\n        img {\n          border-color: ",";\n        }\n      "]);xA=function t(){return e};return e}function xE(){var e=(0,eh._)(["\n        outline-color: ",";\n      "]);xE=function t(){return e};return e}var xk=e=>{var{field:r,fieldState:n,label:i,options:a=[],disabled:o}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{field:r,fieldState:n,label:i,disabled:o,children:()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:xC.wrapper,children:a.map((e,n)=>/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:xC.item(r.value===e.value),onClick:()=>{r.onChange(e.value)},disabled:o,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:e.image,alt:e.label,width:64,height:64}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:e.label})]},n))})}})};/* export default */const xI=xk;var xC={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:repeat(4,minmax(64px,1fr));gap:",iI/* .spacing["12"] */.YK["12"],";margin-top:",iI/* .spacing["4"] */.YK["4"],";"),item:e=>/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";display:flex;flex-direction:column;gap:",iI/* .spacing["4"] */.YK["4"],";align-items:center;width:100%;cursor:pointer;input{appearance:none;}p{",iC/* .typography.small */.I.small(),";width:100%;",oO/* .styleUtils.textEllipsis */.x.textEllipsis,";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";text-align:center;}&:hover,&:focus-visible{",!e&&(0,u/* .css */.AH)(xA(),iI/* .colorTokens.stroke.hover */.I6.stroke.hover),"}img{border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";border:2px solid ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";outline:2px solid transparent;outline-offset:2px;transition:border-color 0.3s ease;",e&&(0,u/* .css */.AH)(xE(),iI/* .colorTokens.stroke.magicAi */.I6.stroke.magicAi),"}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/3d.png
const xY=r.p+"images/3d-d74232c4.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/black-and-white.png
const xS=r.p+"images/black-and-white-a1d197c0.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/concept.png
const xT=r.p+"images/concept-ad427b25.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/dreamy.png
const xO=r.p+"images/dreamy-72eab497.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/filmic.png
const xD=r.p+"images/filmic-91db8802.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/illustration.png
const xF=r.p+"images/illustration-19074f05.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/neon.png
const xP=r.p+"images/neon-bfde2ac7.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/none.jpg
const xR=r.p+"images/none-2088b52b.jpg";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/painting.png
const xH=r.p+"images/painting-db63dd8a.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/photo.png
const xM=r.p+"images/photo-7d69e05e.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/retro.png
const xN=r.p+"images/retro-bcc8eda3.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/ai-types/sketch.png
const xL=r.p+"images/sketch-319bbedf.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/magic-ai.ts
function xK(e,t){e.lineTo(t.x,t.y);e.stroke()}function xq(e,t){var r=t.x-e.x;var n=t.y-e.y;return Math.sqrt(r*r+n*n)}function xB(e){var t=atob(e.split(",")[1]);var r=e.split(",")[0].split(":")[1].split(";")[0];var n=new ArrayBuffer(t.length);var i=new Uint8Array(n);for(var a=0;a<t.length;a++){i[a]=t.charCodeAt(a)}return new Blob([n],{type:r})}function xU(e,t){var r=xB(e);var n=document.createElement("a");n.href=URL.createObjectURL(r);n.download=t;document.body.appendChild(n);n.click();document.body.removeChild(n)}function xj(e,t){var r=document.createElement("canvas");r.width=1024;r.height=1024;var n=r.getContext("2d");n===null||n===void 0?void 0:n.putImageData(e,0,0);n===null||n===void 0?void 0:n.drawImage(r,0,0,1024,1024);return new Promise(e=>{r.toBlob(r=>{if(!r){e(null);return}e(new File([r],t,{type:"image/png"}))})})}var xV=e=>{if(e&&typeof e!=="function"&&e.current){var t=e.current;var r=t.getContext("2d");return{canvas:t,context:r}}return{canvas:null,context:null}};var xW=e=>{return e.toDataURL("image/png")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/ImageItem.tsx
function xz(){var e=(0,eh._)(["\n      background-position: top left;\n    "]);xz=function t(){return e};return e}function xG(){var e=(0,eh._)(["\n      background-position: top right;\n      animation-delay: 0.5s;\n    "]);xG=function t(){return e};return e}function xQ(){var e=(0,eh._)(["\n      background-position: bottom left;\n      animation-delay: 1.5s;\n    "]);xQ=function t(){return e};return e}function x$(){var e=(0,eh._)(["\n      background-position: bottom right;\n      animation-delay: 1s;\n    "]);x$=function t(){return e};return e}function xX(){var e=(0,eh._)(["\n      outline-color: ",";\n\n      [data-actions] {\n        opacity: 1;\n      }\n    "]);xX=function t(){return e};return e}var xJ=[{label:(0,oM.__)("Magic Fill","tutor-pro"),value:"magic-fill",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicWand",width:24,height:24})},// @TODO: will be implemented in the future
// {
//   label: __('Object eraser', __TUTOR_TEXT_DOMAIN__),
//   value: 'magic-erase',
//   icon: <SVGIcon name="eraser" width={24} height={24} />,
// },
// {
//   label: __('Variations', __TUTOR_TEXT_DOMAIN__),
//   value: 'variations',
//   icon: <SVGIcon name="reload" width={24} height={24} />,
// },
{label:(0,oM.__)("Download","tutor-pro"),value:"download",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"download",width:24,height:24})}];var xZ=e=>{var{src:r,loading:i,index:a}=e;var o=(0,n.useRef)(null);var[s,l]=(0,n.useState)(false);var{onDropdownMenuChange:u,setCurrentImage:c,onCloseModal:d,field:f}=xw();var p=yo();if(i||!r){return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x1.loader(a+1)})}return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:x1.image({isActive:p.isPending}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:r,alt:(0,oM.__)("Generated Image","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-actions":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x1.useButton,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{variant:"primary",disabled:p.isPending,onClick:()=>mz(function*(){if(!r){return}var e=yield p.mutateAsync({image:r});if(e.data){f.onChange(e.data);d()}})(),loading:p.isPending,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"download",width:24,height:24}),(0,oM.__)("Use This","tutor-pro")]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"primary",size:"icon",css:x1.threeDots,ref:o,onClick:()=>l(true),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"threeDotsVertical",width:24,height:24})})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{triggerRef:o,isOpen:s,arrow:true,closePopover:()=>{l(false)},animationType:iH.slideDown,maxWidth:"160px",children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x1.dropdownOptions,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:xJ,children:(e,n)=>/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:x1.dropdownItem,onClick:()=>{switch(e.value){case"magic-fill":{c(r);u(e.value);break}case"download":{var t="".concat((0,iq/* .nanoid */.Ak)(),".png");xU(r,t);break}default:break}l(false)},children:[e.icon,e.label]},n)})})})]})};var x0=/*#__PURE__*/(0,u/* .keyframes */.i7)("		0%{opacity:0.3;}25%{opacity:0.5;}50%{opacity:0.7;}75%{opacity:0.5;}100%{opacity:0.3;}");var x1={loader:e=>/*#__PURE__*/(0,u/* .css */.AH)("border-radius:",iI/* .borderRadius["12"] */.Vq["12"],";background:linear-gradient(\n      73.09deg,#ff9645 18.05%,#ff6471 30.25%,#cf6ebd 55.42%,#a477d1 71.66%,#3e64de 97.9%\n    );position:relative;width:100%;height:100%;background-size:612px 612px;opacity:0.3;transition:opacity 0.5s ease;animation:",x0," 2s linear infinite;",e===1&&(0,u/* .css */.AH)(xz())," ",e===2&&(0,u/* .css */.AH)(xG()),"		",e===3&&(0,u/* .css */.AH)(xQ()),"		",e===4&&(0,u/* .css */.AH)(x$())),image:e=>{var{isActive:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:100%;overflow:hidden;border-radius:",iI/* .borderRadius["12"] */.Vq["12"],";position:relative;outline:2px solid transparent;outline-offset:2px;transition:border-radius 0.3s ease;[data-actions]{opacity:0;transition:opacity 0.3s ease;}img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}",t&&(0,u/* .css */.AH)(xX(),iI/* .colorTokens.stroke.brand */.I6.stroke.brand),"    &:hover,&:focus-within{outline-color:",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";[data-actions]{opacity:1;}}")},threeDots:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:",iI/* .spacing["8"] */.YK["8"],";right:",iI/* .spacing["8"] */.YK["8"],";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";"),useButton:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;left:50%;bottom:",iI/* .spacing["12"] */.YK["12"],";transform:translateX(-50%);button{display:inline-flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";}"),dropdownOptions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;padding-block:",iI/* .spacing["8"] */.YK["8"],";"),dropdownItem:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";",oO/* .styleUtils.resetButton */.x.resetButton,";height:40px;display:flex;gap:",iI/* .spacing["10"] */.YK["10"],";align-items:center;transition:background-color 0.3s ease;color:",iI/* .colorTokens.text.title */.I6.text.title,";padding-inline:",iI/* .spacing["8"] */.YK["8"],";cursor:pointer;svg{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}&:hover{background-color:",iI/* .colorTokens.background.hover */.I6.background.hover,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/styles.ts
var x2={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("min-width:1000px;display:grid;grid-template-columns:1fr 330px;",iI/* .Breakpoint.tablet */.EA.tablet,"{min-width:auto;grid-template-columns:1fr;width:100%;}"),left:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:center;align-items:center;background-color:#f7f7f7;z-index:",iI/* .zIndex.level */.fE.level,";"),right:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"],";display:flex;flex-direction:column;align-items:space-between;z-index:",iI/* .zIndex.positive */.fE.positive,";"),rightFooter:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";margin-top:auto;padding-top:80px;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/ImageGeneration.tsx
var x6=[{label:(0,oM.__)("None","tutor-pro"),value:"none",image:xR},{label:(0,oM.__)("Photo","tutor-pro"),value:"photo",image:xM},{label:(0,oM.__)("Neon","tutor-pro"),value:"neon",image:xP},{label:(0,oM.__)("3D","tutor-pro"),value:"3d",image:xY},{label:(0,oM.__)("Painting","tutor-pro"),value:"painting",image:xH},{label:(0,oM.__)("Sketch","tutor-pro"),value:"sketch",image:xL},{label:(0,oM.__)("Concept","tutor-pro"),value:"concept_art",image:xT},{label:(0,oM.__)("Illustration","tutor-pro"),value:"illustration",image:xF},{label:(0,oM.__)("Dreamy","tutor-pro"),value:"dreamy",image:xO},{label:(0,oM.__)("Filmic","tutor-pro"),value:"filmic",image:xD},{label:(0,oM.__)("Retro","tutor-pro"),value:"retrowave",image:xN},{label:(0,oM.__)("Black & White","tutor-pro"),value:"black-and-white",image:xS}];var x4=()=>{var e=_v({defaultValues:{style:"none",prompt:""}});var{images:r,setImages:i}=xw();var a=_9();var{showToast:o}=i2();var[s,l]=(0,n.useState)(r.every(e=>e===null));var[u,c]=(0,n.useState)([false,false,false,false]);var d=e.watch("style");var f=e.watch("prompt");var p=!d||!f;var h=r.some(iK/* .isDefined */.O9);(0,n.useEffect)(()=>{if(a.isError){o({type:"danger",message:a.error.response.data.message})}// eslint-disable-next-line react-hooks/exhaustive-deps
},[a.isError]);(0,n.useEffect)(()=>{e.setFocus("prompt");// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("form",{css:x2.wrapper,onSubmit:e.handleSubmit(e=>mz(function*(){c([true,true,true,true]);l(false);try{yield Promise.all(Array.from({length:4}).map((t,r)=>{return a.mutateAsync(e).then(e=>{i(t=>{var n,i;var a=[...t];var o;a[r]=(o=(i=e.data.data)===null||i===void 0?void 0:(n=i[0])===null||n===void 0?void 0:n.b64_json)!==null&&o!==void 0?o:null;return a});c(e=>{var t=[...e];t[r]=false;return t})}).catch(e=>{c(e=>{var t=[...e];t[r]=false;return t});throw e})}))}catch(e){c([false,false,false,false]);l(true)}})()),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x2.left,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!s,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiPlaceholder",width:72,height:72}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x5.images,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:r,children:(e,r)=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(xZ,{src:e,loading:u[r],index:r},r)}})})})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:x2.right,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:x5.fields,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:x5.promptWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:e.control,name:"prompt",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_I,(0,ep._)((0,ef._)({},e),{label:(0,oM.__)("Visualize Your Course","tutor-pro"),placeholder:(0,oM.__)("Describe the image you want for your course thumbnail","tutor-pro"),rows:4,isMagicAi:true,disabled:a.isPending,enableResize:false}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:x5.inspireButton,onClick:()=>{var t=x_.length;var r=Math.floor(Math.random()*t);e.reset((0,ep._)((0,ef._)({},e.getValues()),{prompt:x_[r]}))},disabled:a.isPending,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"bulbLine"}),(0,oM.__)("Inspire Me","tutor-pro")]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:e.control,name:"style",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(xI,(0,ep._)((0,ef._)({},e),{label:(0,oM.__)("Styles","tutor-pro"),options:x6,disabled:a.isPending}))})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x2.rightFooter,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{type:"submit",disabled:a.isPending||p,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:h?"reload":"magicAi",width:24,height:24}),h?(0,oM.__)("Generate Again","tutor-pro"):(0,oM.__)("Generate Now","tutor-pro")]})})]})]})};var x5={images:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));grid-template-rows:repeat(2,minmax(150px,1fr));gap:",iI/* .spacing["12"] */.YK["12"],";align-self:start;padding:",iI/* .spacing["24"] */.YK["24"],";width:100%;height:100%;> div{aspect-ratio:1 / 1;}"),fields:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["12"] */.YK["12"],";"),promptWrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;textarea{padding-bottom:",iI/* .spacing["40"] */.YK["40"]," !important;}"),inspireButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.small */.I.small(),";position:absolute;height:28px;bottom:",iI/* .spacing["12"] */.YK["12"],";left:",iI/* .spacing["12"] */.YK["12"],";border:1px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";padding-inline:",iI/* .spacing["12"] */.YK["12"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";&:hover{background-color:",iI/* .colorTokens.background.brand */.I6.background.brand,";color:",iI/* .colorTokens.text.white */.I6.text.white,";}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}&:disabled{background-color:",iI/* .colorTokens.background.disable */.I6.background.disable,";color:",iI/* .colorTokens.text.disable */.I6.text.disable,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/Separator.tsx
var x3=/*#__PURE__*/i().forwardRef((e,r)=>{var{className:n,variant:i}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{className:n,ref:r,css:x9({variant:i})})});x3.displayName="Separator";var x8={horizontal:/*#__PURE__*/(0,u/* .css */.AH)("height:1px;width:100%;"),vertical:/*#__PURE__*/(0,u/* .css */.AH)("height:100%;width:1px;"),base:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;background-color:",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";")};var x9=(0,_m/* .createVariation */.s)({variants:{variant:{horizontal:x8.horizontal,vertical:x8.vertical}},defaultVariants:{variant:"horizontal"}},x8.base);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormRangeSliderField.tsx
function x7(){var e=(0,eh._)(["\n      border: 1px solid ",";\n      border-radius: ",";\n      padding: "," "," "," ",";\n    "]);x7=function t(){return e};return e}function Ae(){var e=(0,eh._)(["\n      background: ",";\n    "]);Ae=function t(){return e};return e}function At(e,t,r,n){if(!t.current){return 0}var i=t.current.getBoundingClientRect();var a=i.width;var o=e-i.left;var s=Math.max(0,Math.min(o,a));var l=s/a*100;var u=Math.floor(r+l/100*(n-r));return u}var Ar=e=>{var{field:r,fieldState:i,label:a,min:o=0,max:s=100,isMagicAi:l=false,hasBorder:u=false}=e;var c=(0,n.useRef)(null);var d;var[f,p]=(0,n.useState)((d=r.value)!==null&&d!==void 0?d:0);var h=(0,n.useRef)(null);var v=(0,n.useRef)(null);var g=st(f);(0,n.useEffect)(()=>{r.onChange(g);// eslint-disable-next-line react-hooks/exhaustive-deps
},[g,r.onChange]);(0,n.useEffect)(()=>{var e=false;var t=t=>{if(t.target!==v.current){return}e=true;document.body.style.userSelect="none"};var r=t=>{if(!e||!h.current){return}p(At(t.clientX,h,o,s))};var n=()=>{e=false;document.body.style.userSelect="auto"};window.addEventListener("mousedown",t);window.addEventListener("mousemove",r);window.addEventListener("mouseup",n);return()=>{window.removeEventListener("mousedown",t);window.removeEventListener("mousemove",r);window.removeEventListener("mouseup",n)}},[o,s]);var m=(0,n.useMemo)(()=>{return Math.floor((f-o)/(s-o)*100)},[f,o,s]);return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{field:r,fieldState:i,label:a,isMagicAi:l,children:()=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ai.wrapper(u),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ai.track,ref:h,onKeyDown:iq/* .noop */.lQ,onClick:e=>{p(At(e.clientX,h,o,s))},children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ai.fill,style:{width:"".concat(m,"%")}}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ai.thumb(l),style:{left:"".concat(m,"%")},ref:v})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("input",{type:"text",css:Ai.input,value:String(f),onChange:e=>{p(Number(e.target.value))},ref:c,onFocus:()=>{var e;(e=c.current)===null||e===void 0?void 0:e.select()}})]})})};/* export default */const An=Ar;var Ai={wrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr 45px;gap:",iI/* .spacing["20"] */.YK["20"],";align-items:center;",e&&(0,u/* .css */.AH)(x7(),iI/* .colorTokens.stroke.disable */.I6.stroke.disable,iI/* .borderRadius["6"] */.Vq["6"],iI/* .spacing["12"] */.YK["12"],iI/* .spacing["10"] */.YK["10"],iI/* .spacing["12"] */.YK["12"],iI/* .spacing["16"] */.YK["16"])),track:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;height:4px;background-color:",iI/* .colorTokens.bg.gray20 */.I6.bg.gray20,";border-radius:",iI/* .borderRadius["50"] */.Vq["50"],";width:100%;flex-shrink:0;cursor:pointer;"),fill:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;left:0;top:0;height:100%;background:",iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1,";width:50%;border-radius:",iI/* .borderRadius["50"] */.Vq["50"],";"),thumb:e=>/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:50%;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";&::before{content:'';position:absolute;top:50%;left:50%;width:8px;height:8px;transform:translate(-50%,-50%);border-radius:",iI/* .borderRadius.circle */.Vq.circle,";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";cursor:pointer;}",e&&(0,u/* .css */.AH)(Ae(),iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1)),input:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("medium"),";height:32px;border:1px solid ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";text-align:center;color:",iI/* .colorTokens.text.primary */.I6.text.primary,";&:focus-visible{",oO/* .styleUtils.inputFocus */.x.inputFocus,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/DrawingCanvas.tsx
var Aa=/*#__PURE__*/i().forwardRef((e,r)=>{var{src:i,width:a,height:o,brushSize:s,trackStack:l,pointer:u,setTrackStack:c,setPointer:d}=e;var[f,p]=(0,n.useState)(false);var[h,v]=(0,n.useState)({x:0,y:0});var g=(0,n.useRef)(null);var m=e=>{var{canvas:t,context:n}=xV(r);if(!t||!n){return}var i=t.getBoundingClientRect();var a=(e.clientX-i.left)*(t.width/i.width);var o=(e.clientY-i.top)*(t.height/i.height);n.globalCompositeOperation="destination-out";n.beginPath();n.moveTo(a,o);p(true);v({x:a,y:o})};var b=e=>{var{canvas:t,context:n}=xV(r);if(!t||!n||!g.current){return}var i=t.getBoundingClientRect();var a={x:(e.clientX-i.left)*(t.width/i.width),y:(e.clientY-i.top)*(t.height/i.height)};if(f){xK(n,a)}g.current.style.left="".concat(a.x,"px");g.current.style.top="".concat(a.y,"px")};var _=e=>{var{canvas:t,context:n}=xV(r);if(!n||!t){return}p(false);n.closePath();var i=t.getBoundingClientRect();var a={x:(e.clientX-i.left)*(t.width/i.width),y:(e.clientY-i.top)*(t.height/i.height)};// Check if the mouse is just clicked but not drag for drawing a path, then draw a circle
if(xq(h,a)===0){xK(n,{x:a.x+1,y:a.y+1})}c(e=>{var t=e.slice(0,u);return[...t,n.getImageData(0,0,1024,1024)]});d(e=>e+1)};var y=()=>{var{canvas:e,context:t}=xV(r);if(!e||!t){return}var n=new Image;n.src=i;n.onload=()=>{t.clearRect(0,0,e.width,e.height);var r=n.width/n.height;var i=e.width/e.height;var a;var o;if(i>r){o=e.height;a=e.height*r}else{a=e.width;o=e.width/r}var s=(e.width-a)/2;var u=(e.height-o)/2;t.drawImage(n,s,u,a,o);if(l.length===0){c([t.getImageData(0,0,e.width,e.height)])}};t.lineJoin="round";t.lineCap="round"};var w=()=>{if(!g.current){return}document.body.style.cursor="none";g.current.style.display="block"};var x=()=>{if(!g.current){return}document.body.style.cursor="auto";g.current.style.display="none"};(0,n.useEffect)(()=>{y();// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ao.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("canvas",{ref:r,width:a,height:o,onMouseDown:m,onMouseMove:b,onMouseUp:_,onMouseEnter:w,onMouseLeave:x}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{ref:g,css:Ao.customCursor(s)})]})});var Ao={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;"),customCursor:e=>/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;width:",e,"px;height:",e,"px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";background:linear-gradient(\n      73.09deg,rgba(255,150,69,0.4) 18.05%,rgba(255,100,113,0.4) 30.25%,rgba(207,110,189,0.4) 55.42%,rgba(164,119,209,0.4) 71.66%,rgba(62,100,222,0.4) 97.9%\n    );border:3px solid ",iI/* .colorTokens.stroke.white */.I6.stroke.white,";pointer-events:none;transform:translate(-50%,-50%);z-index:",iI/* .zIndex.highest */.fE.highest,";display:none;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/magic-ai-image/MagicFill.tsx
var As=620;var Al=620;var Au=()=>{var e=_4({defaultValues:{brush_size:40,prompt:""}});var r=ye();var i=(0,n.useRef)(null);var{onDropdownMenuChange:a,currentImage:o,field:s,onCloseModal:l}=xw();var c=yo();var d=st(e.watch("brush_size",40));var[f,p]=(0,n.useState)([]);var[h,v]=(0,n.useState)(1);var g=(0,n.useCallback)((e,t)=>{var r;var n=(r=i.current)===null||r===void 0?void 0:r.getContext("2d");if(!n){return}for(var a of t.slice(0,e)){n.putImageData(a,0,0)}},[]);(0,n.useEffect)(()=>{var e;var t=(e=i.current)===null||e===void 0?void 0:e.getContext("2d");if(!t){return}t.lineWidth=d},[d]);(0,n.useEffect)(()=>{var e=e=>{if(e.metaKey){if(e.shiftKey&&e.key.toUpperCase()==="Z"){g(h+1,f);v(e=>Math.min(e+1,f.length));return}if(e.key.toUpperCase()==="Z"){g(h-1,f);v(e=>Math.max(e-1,1));return}}};window.addEventListener("keydown",e);return()=>{window.removeEventListener("keydown",e)}},[h,f,g]);if(!o){return null}return/*#__PURE__*/(0,t/* .jsxs */.FD)("form",{css:x2.wrapper,onSubmit:e.handleSubmit(e=>mz(function*(){var t=i.current;var n=t===null||t===void 0?void 0:t.getContext("2d");if(!t||!n){return}var a={prompt:e.prompt,image:xW(t)};var o=yield r.mutateAsync(a);if(o){var s=new Image;s.onload=()=>{t.width=As;t.height=Al;n.drawImage(s,0,0,t.width,t.height);n.lineWidth=d;n.lineJoin="round";n.lineCap="round"};s.src=o}})()),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:x2.left,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.leftWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.actionBar,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.backButtonWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:Af.backButton,onClick:()=>a("generation"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"arrowLeft"})}),(0,oM.__)("Magic Fill","tutor-pro")]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.actions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"ghost",disabled:f.length===0,onClick:()=>{g(1,f);p(f.slice(0,1));v(1)},children:(0,oM.__)("Revert to Original","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(x3,{variant:"vertical",css:/*#__PURE__*/(0,u/* .css */.AH)("min-height:16px;")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.undoRedo,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"ghost",size:"icon",disabled:h<=1,onClick:()=>{g(h-1,f);v(e=>Math.max(e-1,1))},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"undo",width:20,height:20})}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"ghost",size:"icon",disabled:h===f.length,onClick:()=>{g(h+1,f);v(e=>Math.min(e+1,f.length))},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"redo",width:20,height:20})})]})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.canvasAndLoading,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(Aa,{ref:i,width:As,height:Al,src:o,brushSize:d,trackStack:f,pointer:h,setTrackStack:p,setPointer:v}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r.isPending,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Af.loading})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Af.footerActions,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Af.footerActionsLeft,children:/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"secondary",onClick:()=>{var e="".concat((0,iq/* .nanoid */.Ak)(),".png");var{canvas:t}=xV(i);if(!t)return;xU(xW(t),e)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"download",width:24,height:24})})})})]})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:x2.right,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.fields,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:e.control,name:"brush_size",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(An,(0,ep._)((0,ef._)({},e),{label:"Brush Size",min:1,max:100,isMagicAi:true,hasBorder:true}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:e.control,name:"prompt",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_I,(0,ep._)((0,ef._)({},e),{label:(0,oM.__)("Describe the Fill","tutor-pro"),placeholder:(0,oM.__)("Write 5 words to describe...","tutor-pro"),rows:4,isMagicAi:true}))})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:[x2.rightFooter,/*#__PURE__*/(0,u/* .css */.AH)("margin-top:auto;")],children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Af.footerButtons,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)(_y,{type:"submit",disabled:r.isPending||!e.watch("prompt"),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicWand",width:24,height:24}),(0,oM.__)("Generative Erase","tutor-pro")]}),/*#__PURE__*/(0,t/* .jsx */.Y)(_y,{variant:"primary_outline",disabled:r.isPending,loading:c.isPending,onClick:()=>mz(function*(){var{canvas:e}=xV(i);if(!e)return;var t=yield c.mutateAsync({image:xW(e)});if(t.data){s.onChange(t.data);l()}})(),children:(0,oM.__)("Use Image","tutor-pro")})]})})]})]})};/* export default */const Ac=Au;var Ad={loading:/*#__PURE__*/(0,u/* .keyframes */.i7)("0%{opacity:0;}50%{opacity:0.6;}100%{opacity:0;}"),walker:/*#__PURE__*/(0,u/* .keyframes */.i7)("0%{left:0%;}100%{left:100%;}")};var Af={canvasAndLoading:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;z-index:",iI/* .zIndex.positive */.fE.positive,";"),loading:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:0;left:0;width:100%;height:100%;background:",iI/* .colorTokens.ai.gradient_1 */.I6.ai.gradient_1,";opacity:0.6;transition:0.5s ease opacity;animation:",Ad.loading," 1s linear infinite;z-index:0;&::before{content:'';position:absolute;top:0;left:0;width:200px;height:100%;background:linear-gradient(\n        270deg,rgba(255,255,255,0) 0%,rgba(255,255,255,0.6) 51.13%,rgba(255,255,255,0) 100%\n      );animation:",Ad.walker," 1s linear infinite;}"),actionBar:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;"),fields:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["12"] */.YK["12"],";"),leftWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";padding-block:",iI/* .spacing["16"] */.YK["16"],";"),footerButtons:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";"),footerActions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:space-between;"),footerActionsLeft:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),actions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["16"] */.YK["16"],";"),undoRedo:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),backButtonWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";",iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";"),backButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";width:24px;height:24px;border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";display:flex;align-items:center;justify-content:center;"),image:/*#__PURE__*/(0,u/* .css */.AH)("width:492px;height:498px;position:relative;img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;}"),canvasWrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;"),customCursor:e=>/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;width:",e,"px;height:",e,"px;border-radius:",iI/* .borderRadius.circle */.Vq.circle,";background:linear-gradient(\n      73.09deg,rgba(255,150,69,0.4) 18.05%,rgba(255,100,113,0.4) 30.25%,rgba(207,110,189,0.4) 55.42%,rgba(164,119,209,0.4) 71.66%,rgba(62,100,222,0.4) 97.9%\n    );border:3px solid ",iI/* .colorTokens.stroke.white */.I6.stroke.white,";pointer-events:none;transform:translate(-50%,-50%);z-index:",iI/* .zIndex.highest */.fE.highest,";display:none;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/AiImageModal.tsx
function Ap(){var{state:e}=xw();switch(e){case"generation":return/*#__PURE__*/(0,t/* .jsx */.Y)(x4,{});case"magic-fill":return/*#__PURE__*/(0,t/* .jsx */.Y)(Ac,{});default:return null}}var Ah=e=>{var{title:r,icon:n,closeModal:i,field:a,fieldState:o}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:i,title:r,icon:n,maxWidth:1e3,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xx,{field:a,fieldState:o,onCloseModal:i,children:/*#__PURE__*/(0,t/* .jsx */.Y)(Ap,{})})})};/* export default */const Av=Ah;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/pro-placeholders/generate-image.webp
const Ag=r.p+"images/generate-image-3e5f50a6.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/pro-placeholders/generate-image-2x.webp
const Am=r.p+"images/generate-image-2x-7d387dcf.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormImageInput.tsx
var Ab;var A_=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var Ay=(Ab=cS/* .tutorConfig.settings */.P.settings)===null||Ab===void 0?void 0:Ab.chatgpt_key_exist;var Aw=e=>{var{field:r,fieldState:n,label:i,size:a,helpText:o,buttonText:s=(0,oM.__)("Upload Media","tutor-pro"),infoText:l,onChange:u,generateWithAi:c=false,previewImageCss:d,loading:f,onClickAiButton:p}=e;var{showModal:h}=i7();var{openMediaLibrary:v,resetFiles:g}=mN({options:{type:"image",multiple:false},onChange:e=>{if(e&&!Array.isArray(e)){var{id:t,url:n,title:i}=e;r.onChange({id:t,url:n,title:i});if(u){u({id:t,url:n,title:i})}}},initialFiles:r.value});var m;var b=(m=r.value)!==null&&m!==void 0?m:null;var _=()=>{v()};var y=()=>{g();r.onChange(null);if(u){u(null)}};var w=()=>{if(!A_){h({component:yC,props:{image:Ag,image2x:Am}})}else if(!Ay){h({component:y2,props:{image:Ag,image2x:Am}})}else{h({component:Av,isMagicAi:true,props:{title:(0,oM.__)("AI Studio","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"magicAiColorize",width:24,height:24}),field:r,fieldState:n}});p===null||p===void 0?void 0:p()}};return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:i,field:r,fieldState:n,helpText:o,onClickAiButton:w,generateWithAi:c,children:()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{size:a,value:b,uploadHandler:_,clearHandler:y,buttonText:s,infoText:l,previewImageCss:d,loading:f})})}})};/* export default */const Ax=mH(Aw);// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/video.ts
var AA=e=>{return cM.post(cL.TUTOR_YOUTUBE_VIDEO_DURATION,{video_id:e})};var AE=()=>{return _3({mutationFn:AA})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/video.ts
function Ak(e){return mz(function*(){var t=/^.*(vimeo\.com\/)((channels\/[A-z]+\/)|(groups\/[A-z]+\/videos\/))?([0-9]+)/;var r=e.match(t);var n=r?r[5]:null;var i="https://vimeo.com/api/v2/video/".concat(n,".xml");try{var a=yield fetch(i);if(!a.ok){throw new Error((0,oM.__)("Failed to fetch the video data","tutor-pro"))}var o=yield a.text();var s=new DOMParser;var l=s.parseFromString(o,"application/xml");var u=l.getElementsByTagName("duration")[0];if(!u||!u.textContent){return null}var c=Number.parseInt(u.textContent,10);return c;// in seconds
}catch(e){// eslint-disable-next-line no-console
console.error("Error fetching video duration:",e);return null}})()}var AI=e=>mz(function*(){var t=document.createElement("video");t.src=e;t.preload="metadata";return new Promise(e=>{t.onloadedmetadata=()=>{e(t.duration)}})})();var AC=e=>{var t=e.match(/PT(\d+H)?(\d+M)?(\d+S)?/);if(!t){return 0}var r=t[1]?Number(t[1].replace("H","")):0;var n=t[2]?Number(t[2].replace("M","")):0;var i=t[3]?Number(t[3].replace("S","")):0;return r*3600+n*60+i};/**
 * Generates a thumbnail from different video sources
 * @param {string} source - Video source type ('youtube', 'vimeo', 'external_url', 'html5')
 * @param {string} url - Video URL
 * @returns {Promise<string>} - Base64 encoded thumbnail image
 */var AY=(e,t)=>mz(function*(){if(e==="youtube"){var r=t.match(oI/* .VideoRegex.YOUTUBE */.j8.YOUTUBE);var n=r&&r[7].length===11?r[7]:"";return"https://img.youtube.com/vi/".concat(n,"/maxresdefault.jpg")}if(e==="vimeo"){try{var i=t.split("/").pop();var a=yield fetch("https://vimeo.com/api/v2/video/".concat(i,".json"));var o=yield a.json();return o[0].thumbnail_large}catch(e){throw new Error("Failed to get Vimeo thumbnail. Error: ".concat(e))}}if(e==="external_url"||e==="html5"){return new Promise((e,r)=>{try{// Create video element
    var n=document.createElement("video");n.muted=true;n.style.cssText="position: fixed; left: 0; top: 0; width: 1px; height: 1px; object-fit: contain; z-index: -1;";n.crossOrigin="Anonymous";// Create canvas element
    var i=document.createElement("canvas");// Track loading states
    var a=false;var o=false;var s=false;var l=false;var u=()=>{n.src="";n.remove();i.remove();clearTimeout(d)};var c=()=>{if(a&&o&&s&&l){try{i.height=n.videoHeight;i.width=n.videoWidth;var t=i.getContext("2d");if(!t){throw new Error((0,oM.__)("Failed to get canvas context","tutor-pro"))}t.drawImage(n,0,0);var c=i.toDataURL("image/png");u();e(c)}catch(e){u();var d=e instanceof Error?e.message:(0,oM.__)("Unknown error occurred","tutor-pro");r(new Error("Thumbnail generation failed: ".concat(d)))}}};// Setup event listeners
    n.addEventListener("loadedmetadata",()=>{a=true;if(!n.currentTime||n.currentTime<2){n.currentTime=2;// Take snapshot at 2 seconds
    }});n.addEventListener("loadeddata",()=>{o=true;c()});n.addEventListener("suspend",()=>{s=true;c()});n.addEventListener("seeked",()=>{l=true;c()});n.addEventListener("error",e=>{u();r(new Error("Video loading failed: ".concat(e.message)))});// Set timeout
    // 30 seconds is a reasonable maximum time to wait for video metadata and frame capture
    var d=setTimeout(()=>{u();r(new Error((0,oM.__)("Thumbnail generation timed out","tutor-pro")))},3e4);// Add elements to DOM
    document.body.appendChild(n);document.body.appendChild(i);// Start loading the video
    n.src=t}catch(e){var f=e instanceof Error?e.message:"Unknown error occurred";r(new Error("Thumbnail generation failed: ".concat(f)))}})}throw new Error((0,oM.__)("Unsupported video source","tutor-pro"))})();// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormVideoInput.tsx
function AS(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);AS=function t(){return e};return e}function AT(){var e=(0,eh._)(["\n      ",";\n    "]);AT=function t(){return e};return e}var AO=cS/* .tutorConfig.supported_video_sources */.P.supported_video_sources||[];var AD=AO.filter(e=>e.value!=="html5");var AF=AO.map(e=>e.value);var AP=["vimeo","youtube","html5"];var AR={youtube:(0,oM.__)("Paste YouTube Video URL","tutor-pro"),vimeo:(0,oM.__)("Paste Vimeo Video URL","tutor-pro"),external_url:(0,oM.__)("Paste External Video URL","tutor-pro"),shortcode:(0,oM.__)("Paste Video Shortcode","tutor-pro"),embedded:(0,oM.__)("Paste Embedded Video Code","tutor-pro")};var AH={youtube:"youtube",vimeo:"vimeo",shortcode:"shortcode",embedded:"coding"};var AM=(e,t)=>{var r={source:"",source_video_id:"",poster:"",poster_url:"",source_html5:"",source_external_url:"",source_shortcode:"",source_youtube:"",source_vimeo:"",source_embedded:""};return e?(0,ef._)({},e,t):(0,ef._)({},r,t)};var AN={youtube:e=>{var t=e.match(oI/* .VideoRegex.YOUTUBE */.j8.YOUTUBE);return t&&t[7].length===11?t[7]:null},vimeo:e=>{var t=e.match(oI/* .VideoRegex.VIMEO */.j8.VIMEO);return(t===null||t===void 0?void 0:t[5])||null},shortcode:e=>{return e.match(oI/* .VideoRegex.SHORTCODE */.j8.SHORTCODE)?e:null},url:e=>{return e.match(oI/* .VideoRegex.EXTERNAL_URL */.j8.EXTERNAL_URL)?e:null}};var AL=e=>{var{source:t,url:r,getYouTubeVideoDurationMutation:n}=e;return mz(function*(){try{var e=0;switch(t){case"vimeo":var i;e=(i=yield Ak(r))!==null&&i!==void 0?i:0;break;case"html5":case"external_url":var a;e=(a=yield AI(r))!==null&&a!==void 0?a:0;break;case"youtube":{var o=AN.youtube(r);if(o){var s=yield n.mutateAsync(o);e=AC(s.data.duration)}break}}if(e){var l=(0,iq/* .covertSecondsToHMS */.uu)(Math.floor(e));return l}return null}catch(e){// eslint-disable-next-line no-console
console.error("Error getting video duration:",e);return null}})()};var AK=e=>{var{field:r,fieldState:i,label:a,helpText:o,buttonText:s=(0,oM.__)("Upload Media","tutor-pro"),infoText:l,onChange:c,supportedFormats:d,loading:f,onGetDuration:p}=e;var h,v,g;var m=_4({defaultValues:{videoSource:((h=AD[0])===null||h===void 0?void 0:h.value)||"",videoUrl:""}});var b=AE();var[_,y]=(0,n.useState)(false);var[w,x]=(0,n.useState)({hours:0,minutes:0,seconds:0});var[A,E]=(0,n.useState)("");var[k,I]=(0,n.useState)(false);var C=(0,n.useRef)(null);var Y=e=>mz(function*(){if(!e){return}var t=Array.isArray(e)?e[0]:e;var n={source:"html5",source_video_id:t.id.toString(),source_html5:t.url};var i;r.onChange(AM((i=r.value)!==null&&i!==void 0?i:null,n));var a;c===null||c===void 0?void 0:c(AM((a=r.value)!==null&&a!==void 0?a:null,n));try{y(true);D();var o=yield AY("external_url",t.url);var s=yield AI(t.url);if(!s){return}x((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(s)));if(p){p((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(s)))}if(o){E(o)}}finally{y(false)}})();var{openMediaLibrary:S,resetFiles:T}=mN({options:{type:(d===null||d===void 0?void 0:d.length)?d.map(e=>"video/".concat(e)).join(","):"video"},onChange:Y});var{openMediaLibrary:O,resetFiles:D}=mN({options:{type:"image"},onChange:e=>{if(!e){return}var t=Array.isArray(e)?e[0]:e;var n={poster:t.id.toString(),poster_url:t.url};var i;r.onChange(AM((i=r.value)!==null&&i!==void 0?i:null,n));var a;c===null||c===void 0?void 0:c(AM((a=r.value)!==null&&a!==void 0?a:null,n))},initialFiles:((v=r.value)===null||v===void 0?void 0:v.poster)?{id:Number(r.value.poster),url:r.value.poster_url,title:""}:null});var F=m.watch("videoSource")||"";var P=r.value;(0,n.useEffect)(()=>{var e;if(!P){return}if(!P.source){var t,n;m.setValue("videoSource",(t=AD[0])===null||t===void 0?void 0:t.value);m.setValue("videoUrl",P["source_".concat((n=AD[0])===null||n===void 0?void 0:n.value)]||"");return}var i=AF.includes(P.source);if(!i){r.onChange(AM(P,{source:""}));return}m.setValue("videoSource",P.source);m.setValue("videoUrl",P["source_".concat(P.source)]||"");if(!P.poster_url&&AP.includes(P.source)){var a=P.source;y(true);AY(a,P["source_".concat(a)]||"").then(e=>{y(false);E(e)}).finally(()=>{y(false)})}if(Object.values(w).some(e=>e>0)){return}if(P.source==="vimeo"){Ak(P["source_vimeo"]||"").then(e=>{if(!e){return}x((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(e)));if(p){p((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(e)))}})}if(["external_url","html5"].includes(P.source)){AI(P["source_".concat(P.source)]||"").then(e=>{if(!e){return}x((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(e)));if(p){p((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(e)))}})}if(P.source==="youtube"&&((e=cS/* .tutorConfig.settings */.P.settings)===null||e===void 0?void 0:e.youtube_api_key_exist)){var o;var s=(o=AN.youtube(P["source_youtube"]||""))!==null&&o!==void 0?o:"";b.mutateAsync(s).then(e=>{var t=e.data.duration;if(!t){return}var r=AC(t);x((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(r)));if(p){p((0,iq/* .covertSecondsToHMS */.uu)(Math.floor(r)))}})}// eslint-disable-next-line react-hooks/exhaustive-deps
},[P]);if(!AF.length){return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.emptyMediaWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a,children:/*#__PURE__*/(0,t/* .jsx */.Y)("label",{children:a})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.emptyMedia({hasVideoSource:false}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("p",{css:AB.warningText,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",height:20,width:20}),(0,oM.__)("No video source selected","tutor-pro")]}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:AB.selectFromSettingsButton,variant:"secondary",size:"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"linkExternal",height:24,width:24}),onClick:()=>{window.open(cS/* ["default"].VIDEO_SOURCES_SETTINGS_URL */.A.VIDEO_SOURCES_SETTINGS_URL,"_blank","noopener")},children:(0,oM.__)("Select from settings","tutor-pro")})]})]})}var R=e=>{if(e==="video"){S();return}O()};var H=e=>{var t=e==="video"?{source:"",source_video_id:"",poster:"",poster_url:""}:{poster:"",poster_url:""};var n=AM(P!==null&&P!==void 0?P:null,t);if(e==="video"){T()}else{D()}r.onChange(n);E("");x({hours:0,minutes:0,seconds:0});if(c){c(n)}};var M=()=>{if(!(P===null||P===void 0?void 0:P.source)||!AF.includes(P.source)){return false}var e=P===null||P===void 0?void 0:P.source;var t="source_".concat(e);return P&&P[t]!==""};var N=e=>mz(function*(){y(true);try{var{videoSource:t,videoUrl:n}=e;var i={source:t,["source_".concat(t)]:n};r.onChange(AM(P!==null&&P!==void 0?P:null,i));c===null||c===void 0?void 0:c(AM(P!==null&&P!==void 0?P:null,i));I(false);var[a,o]=yield Promise.all([AL({source:t,url:n,getYouTubeVideoDurationMutation:b}),AP.includes(t)?AY(t,n):null]);if(a){x(a);p===null||p===void 0?void 0:p(a)}if(o){E(o)}}finally{y(false)}})();var L=e=>{var t=e.trim();if(F==="embedded")return true;if(F==="shortcode"){return AN.shortcode(t)?true:(0,oM.__)("Invalid Shortcode","tutor-pro")}if(!AN.url(t)){return(0,oM.__)("Invalid URL","tutor-pro")}if(F==="youtube"&&!AN.youtube(t)){return(0,oM.__)("Invalid YouTube URL","tutor-pro")}if(F==="vimeo"&&!AN.vimeo(t)){return(0,oM.__)("Invalid Vimeo URL","tutor-pro")}return true};return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{label:a,field:r,fieldState:i,helpText:o,children:()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{ref:C,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!f,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:AB.emptyMedia({hasVideoSource:true}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:M(),fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.emptyMedia({hasVideoSource:true}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:AF.includes("html5"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"upload-media",size:"small",variant:"secondary",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"monitorPlay",height:24,width:24}),onClick:()=>{R("video")},children:s})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:AF.filter(e=>e!=="html5").length>0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!AF.includes("html5"),fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{"data-cy":"add-from-url",type:"button",css:AB.urlButton,onClick:()=>{I(e=>!e)},children:(0,oM.__)("Add from URL","tutor-pro")}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"add-from-url",size:"small",variant:"secondary",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plusSquareBrand",height:24,width:24}),onClick:()=>{I(e=>!e)},children:(0,oM.__)("Add from URL","tutor-pro")})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:AF.includes("html5"),children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:AB.infoTexts,children:l})})]}),children:()=>{var e;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.previewWrapper,"data-cy":"media-preview",children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.videoInfoWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.videoInfoCard,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:AH[P===null||P===void 0?void 0:P.source]||"video",height:36,width:36}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:AB.videoInfo,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:AB.videoInfoTitle,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),children:AP.includes((P===null||P===void 0?void 0:P.source)||"")?P===null||P===void 0?void 0:P["source_".concat(P.source)]:(e=AO.find(e=>e.value===(P===null||P===void 0?void 0:P.source)))===null||e===void 0?void 0:e.label})})})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.actionButtons,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:F!=="html5",children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:()=>{I(true)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",height:24,width:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)("button",{"data-cy":"remove-video",type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:()=>{H("video")},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",height:24,width:24})})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:AB.imagePreview({hasImageInput:AP.includes((P===null||P===void 0?void 0:P.source)||"")}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:AP.includes((P===null||P===void 0?void 0:P.source)||""),fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:AB.urlData,children:m.watch("videoUrl")}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:P?{id:Number(P.poster)||0,url:P.poster_url||A,title:""}:null,loading:_,isClearAble:!!(P===null||P===void 0?void 0:P.poster),disabled:["vimeo","youtube"].includes((P===null||P===void 0?void 0:P.source)||""),uploadHandler:()=>R("poster"),clearHandler:()=>H("poster"),buttonText:(0,oM.__)("Upload Thumbnail","tutor-pro"),infoText:(0,oM.__)("Upload a thumbnail image for your video","tutor-pro"),emptyImageCss:AB.thumbImage,previewImageCss:AB.thumbImage,overlayCss:AB.thumbImage,replaceButtonText:(0,oM.__)("Replace Thumbnail","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:w.hours>0||w.minutes>0||w.seconds>0,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.duration,children:[w.hours>0&&"".concat(w.hours,"h")," ",w.minutes,"m ",w.seconds,"s"]})})]})})]})}})})})}}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{triggerRef:C,isOpen:k,placement:de.MIDDLE,animationType:iH.fadeIn,closePopover:()=>I(false),positionModifier:{top:17,left:0},maxWidth:"".concat(((g=C.current)===null||g===void 0?void 0:g.offsetWidth)||300,"px"),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.popoverContent,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:m.control,name:"videoSource",rules:(0,ef._)({},yj()),render:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},e),{options:AD,disabled:AO.length<=1,placeholder:(0,oM.__)("Select source","tutor-pro"),hideCaret:AO.length<=1}))}}),/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:m.control,name:"videoUrl",rules:(0,ep._)((0,ef._)({},yj()),{validate:L}),render:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)(_I,(0,ep._)((0,ef._)({},e),{inputCss:/*#__PURE__*/(0,u/* .css */.AH)("border-style:dashed;"),rows:2,placeholder:AR[F]||(0,oM.__)("Paste Here","tutor-pro")}))}}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:AB.popoverButtonWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{I(false)},children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"submit-url",variant:"secondary",size:"small",onClick:m.handleSubmit(N),children:(0,oM.__)("Ok","tutor-pro")})]})]})})]})};/* export default */const Aq=mH(AK);var AB={emptyMediaWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";label{",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.title */.I6.text.title,";}"),emptyMedia:e=>{var{hasVideoSource:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:164px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:",iI/* .spacing["8"] */.YK["8"],";border:1px dashed ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";background-color:",iI/* .colorTokens.background.status.warning */.I6.background.status.warning,";",t&&(0,u/* .css */.AH)(AS(),iI/* .colorTokens.bg.white */.I6.bg.white))},infoTexts:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),warningText:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.warning */.I6.text.warning,";"),selectFromSettingsButton:/*#__PURE__*/(0,u/* .css */.AH)("background:",iI/* .colorTokens.bg.white */.I6.bg.white,";"),urlData:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";",oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";gap:",iI/* .spacing["8"] */.YK["8"],";word-break:break-all;"),previewWrapper:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:100%;border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";overflow:hidden;background-color:",iI/* .colorTokens.bg.white */.I6.bg.white,";"),videoInfoWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;gap:",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";"),videoInfoCard:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";svg{flex-shrink:0;color:",iI/* .colorTokens.icon.hover */.I6.icon.hover,";}"),videoInfo:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";"),videoInfoTitle:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),"    word-break:break-all;"),imagePreview:e=>{var{hasImageInput:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;max-height:168px;position:relative;overflow:hidden;background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";",!t&&(0,u/* .css */.AH)(AT(),oO/* .styleUtils.overflowYAuto */.x.overflowYAuto),";scrollbar-gutter:auto;&:hover{[data-hover-buttons-wrapper]{opacity:1;}}")},duration:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny(),";position:absolute;bottom:",iI/* .spacing["12"] */.YK["12"],";right:",iI/* .spacing["12"] */.YK["12"],";background-color:rgba(0,0,0,0.5);color:",iI/* .colorTokens.text.white */.I6.text.white,";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";pointer-events:none;"),thumbImage:/*#__PURE__*/(0,u/* .css */.AH)("border-radius:0;border:none;"),urlButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",iC/* .typography.small */.I.small("medium"),";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";border-radius:",iI/* .borderRadius["2"] */.Vq["2"],";padding:0 ",iI/* .spacing["4"] */.YK["4"],";margin-bottom:",iI/* .spacing["8"] */.YK["8"],";&:focus,&:active,&:hover{background:none;color:",iI/* .colorTokens.text.brand */.I6.text.brand,";}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}"),actionButtons:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["4"] */.YK["4"],";"),popover:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;width:100%;z-index:",iI/* .zIndex.dropdown */.fE.dropdown,";background-color:",iI/* .colorTokens.bg.white */.I6.bg.white,";border-radius:",iI/* .borderRadius.card */.Vq.card,";box-shadow:",iI/* .shadow.popover */.r7.popover,";"),popoverContent:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";padding:",iI/* .spacing["16"] */.YK["16"],";"),popoverButtonWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["8"] */.YK["8"],";justify-content:flex-end;")};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/formatDistance.js
const AU={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};const Aj=(e,t,r)=>{let n;const i=AU[e];if(typeof i==="string"){n=i}else if(t===1){n=i.one}else{n=i.other.replace("{{count}}",t.toString())}if(r?.addSuffix){if(r.comparison&&r.comparison>0){return"in "+n}else{return n+" ago"}}return n};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.js
function AV(e){return (t={})=>{// TODO: Remove String()
const r=t.width?String(t.width):e.defaultWidth;const n=e.formats[r]||e.formats[e.defaultWidth];return n}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/formatLong.js
const AW={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"};const Az={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"};const AG={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"};const AQ={date:AV({formats:AW,defaultWidth:"full"}),time:AV({formats:Az,defaultWidth:"full"}),dateTime:AV({formats:AG,defaultWidth:"full"})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/formatRelative.js
const A$={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};const AX=(e,t,r,n)=>A$[e];// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.js
/**
 * The localize function argument callback which allows to convert raw value to
 * the actual type.
 *
 * @param value - The value to convert
 *
 * @returns The converted value
 *//**
 * The map of localized values for each width.
 *//**
 * The index type of the locale unit value. It types conversion of units of
 * values that don't start at 0 (i.e. quarters).
 *//**
 * Converts the unit value to the tuple of values.
 *//**
 * The tuple of localized era values. The first element represents BC,
 * the second element represents AD.
 *//**
 * The tuple of localized quarter values. The first element represents Q1.
 *//**
 * The tuple of localized day values. The first element represents Sunday.
 *//**
 * The tuple of localized month values. The first element represents January.
 */function AJ(e){return(t,r)=>{const n=r?.context?String(r.context):"standalone";let i;if(n==="formatting"&&e.formattingValues){const t=e.defaultFormattingWidth||e.defaultWidth;const n=r?.width?String(r.width):t;i=e.formattingValues[n]||e.formattingValues[t]}else{const t=e.defaultWidth;const n=r?.width?String(r.width):e.defaultWidth;i=e.values[n]||e.values[t]}const a=e.argumentCallback?e.argumentCallback(t):t;// @ts-expect-error - For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!
return i[a]}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/localize.js
const AZ={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]};const A0={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]};// Note: in English, the names of days of the week and months are capitalized.
// If you are making a new locale based on this one, check if the same is true for the language you're working on.
// Generally, formatted dates should look like they are in the middle of a sentence,
// e.g. in Spanish language the weekdays and months should be in the lowercase.
const A1={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]};const A2={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]};const A6={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}};const A4={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}};const A5=(e,t)=>{const r=Number(e);// If ordinal numbers depend on context, for example,
// if they are different for different grammatical genders,
// use `options.unit`.
//
// `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',
// 'day', 'hour', 'minute', 'second'.
const n=r%100;if(n>20||n<10){switch(n%10){case 1:return r+"st";case 2:return r+"nd";case 3:return r+"rd"}}return r+"th"};const A3={ordinalNumber:A5,era:AJ({values:AZ,defaultWidth:"wide"}),quarter:AJ({values:A0,defaultWidth:"wide",argumentCallback:e=>e-1}),month:AJ({values:A1,defaultWidth:"wide"}),day:AJ({values:A2,defaultWidth:"wide"}),dayPeriod:AJ({values:A6,defaultWidth:"wide",formattingValues:A4,defaultFormattingWidth:"wide"})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchFn.js
function A8(e){return(t,r={})=>{const n=r.width;const i=n&&e.matchPatterns[n]||e.matchPatterns[e.defaultMatchWidth];const a=t.match(i);if(!a){return null}const o=a[0];const s=n&&e.parsePatterns[n]||e.parsePatterns[e.defaultParseWidth];const l=Array.isArray(s)?A7(s,e=>e.test(o)):A9(s,e=>e.test(o));let u;u=e.valueCallback?e.valueCallback(l):l;u=r.valueCallback?r.valueCallback(u):u;const c=t.slice(o.length);return{value:u,rest:c}}}function A9(e,t){for(const r in e){if(Object.prototype.hasOwnProperty.call(e,r)&&t(e[r])){return r}}return undefined}function A7(e,t){for(let r=0;r<e.length;r++){if(t(e[r])){return r}}return undefined};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js
function Ee(e){return(t,r={})=>{const n=t.match(e.matchPattern);if(!n)return null;const i=n[0];const a=t.match(e.parsePattern);if(!a)return null;let o=e.valueCallback?e.valueCallback(a[0]):a[0];// [TODO] I challenge you to fix the type
o=r.valueCallback?r.valueCallback(o):o;const s=t.slice(i.length);return{value:o,rest:s}}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US/_lib/match.js
const Et=/^(\d+)(th|st|nd|rd)?/i;const Er=/\d+/i;const En={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i};const Ei={any:[/^b/i,/^(a|c)/i]};const Ea={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i};const Eo={any:[/1/i,/2/i,/3/i,/4/i]};const Es={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i};const El={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]};const Eu={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i};const Ec={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]};const Ed={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i};const Ef={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}};const Ep={ordinalNumber:Ee({matchPattern:Et,parsePattern:Er,valueCallback:e=>parseInt(e,10)}),era:A8({matchPatterns:En,defaultMatchWidth:"wide",parsePatterns:Ei,defaultParseWidth:"any"}),quarter:A8({matchPatterns:Ea,defaultMatchWidth:"wide",parsePatterns:Eo,defaultParseWidth:"any",valueCallback:e=>e+1}),month:A8({matchPatterns:Es,defaultMatchWidth:"wide",parsePatterns:El,defaultParseWidth:"any"}),day:A8({matchPatterns:Eu,defaultMatchWidth:"wide",parsePatterns:Ec,defaultParseWidth:"any"}),dayPeriod:A8({matchPatterns:Ed,defaultMatchWidth:"any",parsePatterns:Ef,defaultParseWidth:"any"})};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/locale/en-US.js
/**
 * @category Locales
 * @summary English locale (United States).
 * @language English
 * @iso-639-2 eng
 * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)
 * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)
 */const Eh={code:"en-US",formatDistance:Aj,formatLong:AQ,formatRelative:AX,localize:A3,match:Ep,options:{weekStartsOn:0/* Sunday */,firstWeekContainsDate:1}};// Fallback for modularized imports:
/* export default */const Ev=/* unused pure expression or super */null&&Eh;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/defaultOptions.js
let Eg={};function Em(){return Eg}function Eb(e){Eg=e};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constants.js
/**
 * @module constants
 * @summary Useful constants
 * @description
 * Collection of useful date constants.
 *
 * The constants could be imported from `date-fns/constants`:
 *
 * ```ts
 * import { maxTime, minTime } from "./constants/date-fns/constants";
 *
 * function isAllowedTime(time) {
 *   return time <= maxTime && time >= minTime;
 * }
 * ```
 *//**
 * @constant
 * @name daysInWeek
 * @summary Days in 1 week.
 */const E_=7;/**
 * @constant
 * @name daysInYear
 * @summary Days in 1 year.
 *
 * @description
 * How many days in a year.
 *
 * One years equals 365.2425 days according to the formula:
 *
 * > Leap year occurs every 4 years, except for years that are divisible by 100 and not divisible by 400.
 * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days
 */const Ey=365.2425;/**
 * @constant
 * @name maxTime
 * @summary Maximum allowed time.
 *
 * @example
 * import { maxTime } from "./constants/date-fns/constants";
 *
 * const isValid = 8640000000000001 <= maxTime;
 * //=> false
 *
 * new Date(8640000000000001);
 * //=> Invalid Date
 */const Ew=Math.pow(10,8)*24*60*60*1e3;/**
 * @constant
 * @name minTime
 * @summary Minimum allowed time.
 *
 * @example
 * import { minTime } from "./constants/date-fns/constants";
 *
 * const isValid = -8640000000000001 >= minTime;
 * //=> false
 *
 * new Date(-8640000000000001)
 * //=> Invalid Date
 */const Ex=/* unused pure expression or super */null&&-Ew;/**
 * @constant
 * @name millisecondsInWeek
 * @summary Milliseconds in 1 week.
 */const EA=6048e5;/**
 * @constant
 * @name millisecondsInDay
 * @summary Milliseconds in 1 day.
 */const EE=864e5;/**
 * @constant
 * @name millisecondsInMinute
 * @summary Milliseconds in 1 minute
 */const Ek=6e4;/**
 * @constant
 * @name millisecondsInHour
 * @summary Milliseconds in 1 hour
 */const EI=36e5;/**
 * @constant
 * @name millisecondsInSecond
 * @summary Milliseconds in 1 second
 */const EC=1e3;/**
 * @constant
 * @name minutesInYear
 * @summary Minutes in 1 year.
 */const EY=525600;/**
 * @constant
 * @name minutesInMonth
 * @summary Minutes in 1 month.
 */const ES=43200;/**
 * @constant
 * @name minutesInDay
 * @summary Minutes in 1 day.
 */const ET=1440;/**
 * @constant
 * @name minutesInHour
 * @summary Minutes in 1 hour.
 */const EO=60;/**
 * @constant
 * @name monthsInQuarter
 * @summary Months in 1 quarter.
 */const ED=3;/**
 * @constant
 * @name monthsInYear
 * @summary Months in 1 year.
 */const EF=12;/**
 * @constant
 * @name quartersInYear
 * @summary Quarters in 1 year
 */const EP=4;/**
 * @constant
 * @name secondsInHour
 * @summary Seconds in 1 hour.
 */const ER=3600;/**
 * @constant
 * @name secondsInMinute
 * @summary Seconds in 1 minute.
 */const EH=60;/**
 * @constant
 * @name secondsInDay
 * @summary Seconds in 1 day.
 */const EM=/* unused pure expression or super */null&&ER*24;/**
 * @constant
 * @name secondsInWeek
 * @summary Seconds in 1 week.
 */const EN=/* unused pure expression or super */null&&EM*7;/**
 * @constant
 * @name secondsInYear
 * @summary Seconds in 1 year.
 */const EL=/* unused pure expression or super */null&&EM*Ey;/**
 * @constant
 * @name secondsInMonth
 * @summary Seconds in 1 month
 */const EK=/* unused pure expression or super */null&&EL/12;/**
 * @constant
 * @name secondsInQuarter
 * @summary Seconds in 1 quarter.
 */const Eq=/* unused pure expression or super */null&&EK*3;/**
 * @constant
 * @name constructFromSymbol
 * @summary Symbol enabling Date extensions to inherit properties from the reference date.
 *
 * The symbol is used to enable the `constructFrom` function to construct a date
 * using a reference date and a value. It allows to transfer extra properties
 * from the reference date to the new date. It's useful for extensions like
 * [`TZDate`](https://github.com/date-fns/tz) that accept a time zone as
 * a constructor argument.
 */const EB=Symbol.for("constructDateFrom");// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/constructFrom.js
/**
 * @name constructFrom
 * @category Generic Helpers
 * @summary Constructs a date using the reference date and the value
 *
 * @description
 * The function constructs a new date using the constructor from the reference
 * date and the given value. It helps to build generic functions that accept
 * date extensions.
 *
 * It defaults to `Date` if the passed reference date is a number or a string.
 *
 * Starting from v3.7.0, it allows to construct a date using `[Symbol.for("constructDateFrom")]`
 * enabling to transfer extra properties from the reference date to the new date.
 * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)
 * that accept a time zone as a constructor argument.
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 *
 * @param date - The reference date to take constructor from
 * @param value - The value to create the date
 *
 * @returns Date initialized using the given date and value
 *
 * @example
 * import { constructFrom } from "./constructFrom/date-fns";
 *
 * // A function that clones a date preserving the original type
 * function cloneDate<DateType extends Date>(date: DateType): DateType {
 *   return constructFrom(
 *     date, // Use constructor from the given date
 *     date.getTime() // Use the date value to create a new date
 *   );
 * }
 */function EU(e,t){if(typeof e==="function")return e(t);if(e&&typeof e==="object"&&EB in e)return e[EB](t);if(e instanceof Date)return new e.constructor(t);return new Date(t)}// Fallback for modularized imports:
/* export default */const Ej=/* unused pure expression or super */null&&EU;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/toDate.js
/**
 * @name toDate
 * @category Common Helpers
 * @summary Convert the given argument to an instance of Date.
 *
 * @description
 * Convert the given argument to an instance of Date.
 *
 * If the argument is an instance of Date, the function returns its clone.
 *
 * If the argument is a number, it is treated as a timestamp.
 *
 * If the argument is none of the above, the function returns Invalid Date.
 *
 * Starting from v3.7.0, it clones a date using `[Symbol.for("constructDateFrom")]`
 * enabling to transfer extra properties from the reference date to the new date.
 * It's useful for extensions like [`TZDate`](https://github.com/date-fns/tz)
 * that accept a time zone as a constructor argument.
 *
 * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param argument - The value to convert
 *
 * @returns The parsed date in the local time zone
 *
 * @example
 * // Clone the date:
 * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))
 * //=> Tue Feb 11 2014 11:30:30
 *
 * @example
 * // Convert the timestamp to date:
 * const result = toDate(1392098430000)
 * //=> Tue Feb 11 2014 11:30:30
 */function EV(e,t){// [TODO] Get rid of `toDate` or `constructFrom`?
return EU(t||e,e)}// Fallback for modularized imports:
/* export default */const EW=/* unused pure expression or super */null&&EV;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js
/**
 * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.
 * They usually appear for dates that denote time before the timezones were introduced
 * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891
 * and GMT+01:00:00 after that date)
 *
 * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,
 * which would lead to incorrect calculations.
 *
 * This function returns the timezone offset in milliseconds that takes seconds in account.
 */function Ez(e){const t=EV(e);const r=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));r.setUTCFullYear(t.getFullYear());return+e-+r};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/normalizeDates.js
function EG(e,...t){const r=EU.bind(null,e||t.find(e=>typeof e==="object"));return t.map(r)};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfDay.js
/**
 * The {@link startOfDay} function options.
 *//**
 * @name startOfDay
 * @category Day Helpers
 * @summary Return the start of a day for the given date.
 *
 * @description
 * Return the start of a day for the given date.
 * The result will be in the local timezone.
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param date - The original date
 * @param options - The options
 *
 * @returns The start of a day
 *
 * @example
 * // The start of a day for 2 September 2014 11:55:00:
 * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))
 * //=> Tue Sep 02 2014 00:00:00
 */function EQ(e,t){const r=EV(e,t?.in);r.setHours(0,0,0,0);return r}// Fallback for modularized imports:
/* export default */const E$=/* unused pure expression or super */null&&EQ;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/differenceInCalendarDays.js
/**
 * The {@link differenceInCalendarDays} function options.
 *//**
 * @name differenceInCalendarDays
 * @category Day Helpers
 * @summary Get the number of calendar days between the given dates.
 *
 * @description
 * Get the number of calendar days between the given dates. This means that the times are removed
 * from the dates and then the difference in days is calculated.
 *
 * @param laterDate - The later date
 * @param earlierDate - The earlier date
 * @param options - The options object
 *
 * @returns The number of calendar days
 *
 * @example
 * // How many calendar days are between
 * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?
 * const result = differenceInCalendarDays(
 *   new Date(2012, 6, 2, 0, 0),
 *   new Date(2011, 6, 2, 23, 0)
 * )
 * //=> 366
 * // How many calendar days are between
 * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?
 * const result = differenceInCalendarDays(
 *   new Date(2011, 6, 3, 0, 1),
 *   new Date(2011, 6, 2, 23, 59)
 * )
 * //=> 1
 */function EX(e,t,r){const[n,i]=EG(r?.in,e,t);const a=EQ(n);const o=EQ(i);const s=+a-Ez(a);const l=+o-Ez(o);// Round the number of days to the nearest integer because the number of
// milliseconds in a day is not constant (e.g. it's different in the week of
// the daylight saving time clock shift).
return Math.round((s-l)/EE)}// Fallback for modularized imports:
/* export default */const EJ=/* unused pure expression or super */null&&EX;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfYear.js
/**
 * The {@link startOfYear} function options.
 *//**
 * @name startOfYear
 * @category Year Helpers
 * @summary Return the start of a year for the given date.
 *
 * @description
 * Return the start of a year for the given date.
 * The result will be in the local timezone.
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param date - The original date
 * @param options - The options
 *
 * @returns The start of a year
 *
 * @example
 * // The start of a year for 2 September 2014 11:55:00:
 * const result = startOfYear(new Date(2014, 8, 2, 11, 55, 00))
 * //=> Wed Jan 01 2014 00:00:00
 */function EZ(e,t){const r=EV(e,t?.in);r.setFullYear(r.getFullYear(),0,1);r.setHours(0,0,0,0);return r}// Fallback for modularized imports:
/* export default */const E0=/* unused pure expression or super */null&&EZ;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/getDayOfYear.js
/**
 * The {@link getDayOfYear} function options.
 *//**
 * @name getDayOfYear
 * @category Day Helpers
 * @summary Get the day of the year of the given date.
 *
 * @description
 * Get the day of the year of the given date.
 *
 * @param date - The given date
 * @param options - The options
 *
 * @returns The day of year
 *
 * @example
 * // Which day of the year is 2 July 2014?
 * const result = getDayOfYear(new Date(2014, 6, 2))
 * //=> 183
 */function E1(e,t){const r=EV(e,t?.in);const n=EX(r,EZ(r));const i=n+1;return i}// Fallback for modularized imports:
/* export default */const E2=/* unused pure expression or super */null&&E1;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeek.js
/**
 * The {@link startOfWeek} function options.
 *//**
 * @name startOfWeek
 * @category Week Helpers
 * @summary Return the start of a week for the given date.
 *
 * @description
 * Return the start of a week for the given date.
 * The result will be in the local timezone.
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param date - The original date
 * @param options - An object with options
 *
 * @returns The start of a week
 *
 * @example
 * // The start of a week for 2 September 2014 11:55:00:
 * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))
 * //=> Sun Aug 31 2014 00:00:00
 *
 * @example
 * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:
 * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })
 * //=> Mon Sep 01 2014 00:00:00
 */function E6(e,t){const r=Em();const n=t?.weekStartsOn??t?.locale?.options?.weekStartsOn??r.weekStartsOn??r.locale?.options?.weekStartsOn??0;const i=EV(e,t?.in);const a=i.getDay();const o=(a<n?7:0)+a-n;i.setDate(i.getDate()-o);i.setHours(0,0,0,0);return i}// Fallback for modularized imports:
/* export default */const E4=/* unused pure expression or super */null&&E6;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfISOWeek.js
/**
 * The {@link startOfISOWeek} function options.
 *//**
 * @name startOfISOWeek
 * @category ISO Week Helpers
 * @summary Return the start of an ISO week for the given date.
 *
 * @description
 * Return the start of an ISO week for the given date.
 * The result will be in the local timezone.
 *
 * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param date - The original date
 * @param options - An object with options
 *
 * @returns The start of an ISO week
 *
 * @example
 * // The start of an ISO week for 2 September 2014 11:55:00:
 * const result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))
 * //=> Mon Sep 01 2014 00:00:00
 */function E5(e,t){return E6(e,{...t,weekStartsOn:1})}// Fallback for modularized imports:
/* export default */const E3=/* unused pure expression or super */null&&E5;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/getISOWeekYear.js
/**
 * The {@link getISOWeekYear} function options.
 *//**
 * @name getISOWeekYear
 * @category ISO Week-Numbering Year Helpers
 * @summary Get the ISO week-numbering year of the given date.
 *
 * @description
 * Get the ISO week-numbering year of the given date,
 * which always starts 3 days before the year's first Thursday.
 *
 * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
 *
 * @param date - The given date
 *
 * @returns The ISO week-numbering year
 *
 * @example
 * // Which ISO-week numbering year is 2 January 2005?
 * const result = getISOWeekYear(new Date(2005, 0, 2))
 * //=> 2004
 */function E8(e,t){const r=EV(e,t?.in);const n=r.getFullYear();const i=EU(r,0);i.setFullYear(n+1,0,4);i.setHours(0,0,0,0);const a=E5(i);const o=EU(r,0);o.setFullYear(n,0,4);o.setHours(0,0,0,0);const s=E5(o);if(r.getTime()>=a.getTime()){return n+1}else if(r.getTime()>=s.getTime()){return n}else{return n-1}}// Fallback for modularized imports:
/* export default */const E9=/* unused pure expression or super */null&&E8;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfISOWeekYear.js
/**
 * The {@link startOfISOWeekYear} function options.
 *//**
 * @name startOfISOWeekYear
 * @category ISO Week-Numbering Year Helpers
 * @summary Return the start of an ISO week-numbering year for the given date.
 *
 * @description
 * Return the start of an ISO week-numbering year,
 * which always starts 3 days before the year's first Thursday.
 * The result will be in the local timezone.
 *
 * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.
 *
 * @param date - The original date
 * @param options - An object with options
 *
 * @returns The start of an ISO week-numbering year
 *
 * @example
 * // The start of an ISO week-numbering year for 2 July 2005:
 * const result = startOfISOWeekYear(new Date(2005, 6, 2))
 * //=> Mon Jan 03 2005 00:00:00
 */function E7(e,t){const r=E8(e,t);const n=EU(t?.in||e,0);n.setFullYear(r,0,4);n.setHours(0,0,0,0);return E5(n)}// Fallback for modularized imports:
/* export default */const ke=/* unused pure expression or super */null&&E7;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/getISOWeek.js
/**
 * The {@link getISOWeek} function options.
 *//**
 * @name getISOWeek
 * @category ISO Week Helpers
 * @summary Get the ISO week of the given date.
 *
 * @description
 * Get the ISO week of the given date.
 *
 * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
 *
 * @param date - The given date
 * @param options - The options
 *
 * @returns The ISO week
 *
 * @example
 * // Which week of the ISO-week numbering year is 2 January 2005?
 * const result = getISOWeek(new Date(2005, 0, 2))
 * //=> 53
 */function kt(e,t){const r=EV(e,t?.in);const n=+E5(r)-+E7(r);// Round the number of weeks to the nearest integer because the number of
// milliseconds in a week is not constant (e.g. it's different in the week of
// the daylight saving time clock shift).
return Math.round(n/EA)+1}// Fallback for modularized imports:
/* export default */const kr=/* unused pure expression or super */null&&kt;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/getWeekYear.js
/**
 * The {@link getWeekYear} function options.
 *//**
 * @name getWeekYear
 * @category Week-Numbering Year Helpers
 * @summary Get the local week-numbering year of the given date.
 *
 * @description
 * Get the local week-numbering year of the given date.
 * The exact calculation depends on the values of
 * `options.weekStartsOn` (which is the index of the first day of the week)
 * and `options.firstWeekContainsDate` (which is the day of January, which is always in
 * the first week of the week-numbering year)
 *
 * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system
 *
 * @param date - The given date
 * @param options - An object with options.
 *
 * @returns The local week-numbering year
 *
 * @example
 * // Which week numbering year is 26 December 2004 with the default settings?
 * const result = getWeekYear(new Date(2004, 11, 26))
 * //=> 2005
 *
 * @example
 * // Which week numbering year is 26 December 2004 if week starts on Saturday?
 * const result = getWeekYear(new Date(2004, 11, 26), { weekStartsOn: 6 })
 * //=> 2004
 *
 * @example
 * // Which week numbering year is 26 December 2004 if the first week contains 4 January?
 * const result = getWeekYear(new Date(2004, 11, 26), { firstWeekContainsDate: 4 })
 * //=> 2004
 */function kn(e,t){const r=EV(e,t?.in);const n=r.getFullYear();const i=Em();const a=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??i.firstWeekContainsDate??i.locale?.options?.firstWeekContainsDate??1;const o=EU(t?.in||e,0);o.setFullYear(n+1,0,a);o.setHours(0,0,0,0);const s=E6(o,t);const l=EU(t?.in||e,0);l.setFullYear(n,0,a);l.setHours(0,0,0,0);const u=E6(l,t);if(+r>=+s){return n+1}else if(+r>=+u){return n}else{return n-1}}// Fallback for modularized imports:
/* export default */const ki=/* unused pure expression or super */null&&kn;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/startOfWeekYear.js
/**
 * The {@link startOfWeekYear} function options.
 *//**
 * @name startOfWeekYear
 * @category Week-Numbering Year Helpers
 * @summary Return the start of a local week-numbering year for the given date.
 *
 * @description
 * Return the start of a local week-numbering year.
 * The exact calculation depends on the values of
 * `options.weekStartsOn` (which is the index of the first day of the week)
 * and `options.firstWeekContainsDate` (which is the day of January, which is always in
 * the first week of the week-numbering year)
 *
 * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system
 *
 * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
 * @typeParam ResultDate - The result `Date` type.
 *
 * @param date - The original date
 * @param options - An object with options
 *
 * @returns The start of a week-numbering year
 *
 * @example
 * // The start of an a week-numbering year for 2 July 2005 with default settings:
 * const result = startOfWeekYear(new Date(2005, 6, 2))
 * //=> Sun Dec 26 2004 00:00:00
 *
 * @example
 * // The start of a week-numbering year for 2 July 2005
 * // if Monday is the first day of week
 * // and 4 January is always in the first week of the year:
 * const result = startOfWeekYear(new Date(2005, 6, 2), {
 *   weekStartsOn: 1,
 *   firstWeekContainsDate: 4
 * })
 * //=> Mon Jan 03 2005 00:00:00
 */function ka(e,t){const r=Em();const n=t?.firstWeekContainsDate??t?.locale?.options?.firstWeekContainsDate??r.firstWeekContainsDate??r.locale?.options?.firstWeekContainsDate??1;const i=kn(e,t);const a=EU(t?.in||e,0);a.setFullYear(i,0,n);a.setHours(0,0,0,0);const o=E6(a,t);return o}// Fallback for modularized imports:
/* export default */const ko=/* unused pure expression or super */null&&ka;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/getWeek.js
/**
 * The {@link getWeek} function options.
 *//**
 * @name getWeek
 * @category Week Helpers
 * @summary Get the local week index of the given date.
 *
 * @description
 * Get the local week index of the given date.
 * The exact calculation depends on the values of
 * `options.weekStartsOn` (which is the index of the first day of the week)
 * and `options.firstWeekContainsDate` (which is the day of January, which is always in
 * the first week of the week-numbering year)
 *
 * Week numbering: https://en.wikipedia.org/wiki/Week#The_ISO_week_date_system
 *
 * @param date - The given date
 * @param options - An object with options
 *
 * @returns The week
 *
 * @example
 * // Which week of the local week numbering year is 2 January 2005 with default options?
 * const result = getWeek(new Date(2005, 0, 2))
 * //=> 2
 *
 * @example
 * // Which week of the local week numbering year is 2 January 2005,
 * // if Monday is the first day of the week,
 * // and the first week of the year always contains 4 January?
 * const result = getWeek(new Date(2005, 0, 2), {
 *   weekStartsOn: 1,
 *   firstWeekContainsDate: 4
 * })
 * //=> 53
 */function ks(e,t){const r=EV(e,t?.in);const n=+E6(r,t)-+ka(r,t);// Round the number of weeks to the nearest integer because the number of
// milliseconds in a week is not constant (e.g. it's different in the week of
// the daylight saving time clock shift).
return Math.round(n/EA)+1}// Fallback for modularized imports:
/* export default */const kl=/* unused pure expression or super */null&&ks;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/addLeadingZeros.js
function ku(e,t){const r=e<0?"-":"";const n=Math.abs(e).toString().padStart(t,"0");return r+n};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/format/lightFormatters.js
/*
 * |     | Unit                           |     | Unit                           |
 * |-----|--------------------------------|-----|--------------------------------|
 * |  a  | AM, PM                         |  A* |                                |
 * |  d  | Day of month                   |  D  |                                |
 * |  h  | Hour [1-12]                    |  H  | Hour [0-23]                    |
 * |  m  | Minute                         |  M  | Month                          |
 * |  s  | Second                         |  S  | Fraction of second             |
 * |  y  | Year (abs)                     |  Y  |                                |
 *
 * Letters marked by * are not implemented but reserved by Unicode standard.
 */const kc={// Year
y(e,t){// From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens
// | Year     |     y | yy |   yyy |  yyyy | yyyyy |
// |----------|-------|----|-------|-------|-------|
// | AD 1     |     1 | 01 |   001 |  0001 | 00001 |
// | AD 12    |    12 | 12 |   012 |  0012 | 00012 |
// | AD 123   |   123 | 23 |   123 |  0123 | 00123 |
// | AD 1234  |  1234 | 34 |  1234 |  1234 | 01234 |
// | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |
const r=e.getFullYear();// Returns 1 for 1 BC (which is year 0 in JavaScript)
const n=r>0?r:1-r;return ku(t==="yy"?n%100:n,t.length)},// Month
M(e,t){const r=e.getMonth();return t==="M"?String(r+1):ku(r+1,2)},// Day of the month
d(e,t){return ku(e.getDate(),t.length)},// AM or PM
a(e,t){const r=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.toUpperCase();case"aaa":return r;case"aaaaa":return r[0];case"aaaa":default:return r==="am"?"a.m.":"p.m."}},// Hour [1-12]
h(e,t){return ku(e.getHours()%12||12,t.length)},// Hour [0-23]
H(e,t){return ku(e.getHours(),t.length)},// Minute
m(e,t){return ku(e.getMinutes(),t.length)},// Second
s(e,t){return ku(e.getSeconds(),t.length)},// Fraction of second
S(e,t){const r=t.length;const n=e.getMilliseconds();const i=Math.trunc(n*Math.pow(10,r-3));return ku(i,t.length)}};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/format/formatters.js
const kd={am:"am",pm:"pm",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"};/*
 * |     | Unit                           |     | Unit                           |
 * |-----|--------------------------------|-----|--------------------------------|
 * |  a  | AM, PM                         |  A* | Milliseconds in day            |
 * |  b  | AM, PM, noon, midnight         |  B  | Flexible day period            |
 * |  c  | Stand-alone local day of week  |  C* | Localized hour w/ day period   |
 * |  d  | Day of month                   |  D  | Day of year                    |
 * |  e  | Local day of week              |  E  | Day of week                    |
 * |  f  |                                |  F* | Day of week in month           |
 * |  g* | Modified Julian day            |  G  | Era                            |
 * |  h  | Hour [1-12]                    |  H  | Hour [0-23]                    |
 * |  i! | ISO day of week                |  I! | ISO week of year               |
 * |  j* | Localized hour w/ day period   |  J* | Localized hour w/o day period  |
 * |  k  | Hour [1-24]                    |  K  | Hour [0-11]                    |
 * |  l* | (deprecated)                   |  L  | Stand-alone month              |
 * |  m  | Minute                         |  M  | Month                          |
 * |  n  |                                |  N  |                                |
 * |  o! | Ordinal number modifier        |  O  | Timezone (GMT)                 |
 * |  p! | Long localized time            |  P! | Long localized date            |
 * |  q  | Stand-alone quarter            |  Q  | Quarter                        |
 * |  r* | Related Gregorian year         |  R! | ISO week-numbering year        |
 * |  s  | Second                         |  S  | Fraction of second             |
 * |  t! | Seconds timestamp              |  T! | Milliseconds timestamp         |
 * |  u  | Extended year                  |  U* | Cyclic year                    |
 * |  v* | Timezone (generic non-locat.)  |  V* | Timezone (location)            |
 * |  w  | Local week of year             |  W* | Week of month                  |
 * |  x  | Timezone (ISO-8601 w/o Z)      |  X  | Timezone (ISO-8601)            |
 * |  y  | Year (abs)                     |  Y  | Local week-numbering year      |
 * |  z  | Timezone (specific non-locat.) |  Z* | Timezone (aliases)             |
 *
 * Letters marked by * are not implemented but reserved by Unicode standard.
 *
 * Letters marked by ! are non-standard, but implemented by date-fns:
 * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)
 * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,
 *   i.e. 7 for Sunday, 1 for Monday, etc.
 * - `I` is ISO week of year, as opposed to `w` which is local week of year.
 * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.
 *   `R` is supposed to be used in conjunction with `I` and `i`
 *   for universal ISO week-numbering date, whereas
 *   `Y` is supposed to be used in conjunction with `w` and `e`
 *   for week-numbering date specific to the locale.
 * - `P` is long localized date format
 * - `p` is long localized time format
 */const kf={// Era
G:function(e,t,r){const n=e.getFullYear()>0?1:0;switch(t){// AD, BC
case"G":case"GG":case"GGG":return r.era(n,{width:"abbreviated"});// A, B
case"GGGGG":return r.era(n,{width:"narrow"});// Anno Domini, Before Christ
case"GGGG":default:return r.era(n,{width:"wide"})}},// Year
y:function(e,t,r){// Ordinal number
if(t==="yo"){const t=e.getFullYear();// Returns 1 for 1 BC (which is year 0 in JavaScript)
const n=t>0?t:1-t;return r.ordinalNumber(n,{unit:"year"})}return kc.y(e,t)},// Local week-numbering year
Y:function(e,t,r,n){const i=kn(e,n);// Returns 1 for 1 BC (which is year 0 in JavaScript)
const a=i>0?i:1-i;// Two digit year
if(t==="YY"){const e=a%100;return ku(e,2)}// Ordinal number
if(t==="Yo"){return r.ordinalNumber(a,{unit:"year"})}// Padding
return ku(a,t.length)},// ISO week-numbering year
R:function(e,t){const r=E8(e);// Padding
return ku(r,t.length)},// Extended year. This is a single number designating the year of this calendar system.
// The main difference between `y` and `u` localizers are B.C. years:
// | Year | `y` | `u` |
// |------|-----|-----|
// | AC 1 |   1 |   1 |
// | BC 1 |   1 |   0 |
// | BC 2 |   2 |  -1 |
// Also `yy` always returns the last two digits of a year,
// while `uu` pads single digit years to 2 characters and returns other years unchanged.
u:function(e,t){const r=e.getFullYear();return ku(r,t.length)},// Quarter
Q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){// 1, 2, 3, 4
case"Q":return String(n);// 01, 02, 03, 04
case"QQ":return ku(n,2);// 1st, 2nd, 3rd, 4th
case"Qo":return r.ordinalNumber(n,{unit:"quarter"});// Q1, Q2, Q3, Q4
case"QQQ":return r.quarter(n,{width:"abbreviated",context:"formatting"});// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case"QQQQQ":return r.quarter(n,{width:"narrow",context:"formatting"});// 1st quarter, 2nd quarter, ...
case"QQQQ":default:return r.quarter(n,{width:"wide",context:"formatting"})}},// Stand-alone quarter
q:function(e,t,r){const n=Math.ceil((e.getMonth()+1)/3);switch(t){// 1, 2, 3, 4
case"q":return String(n);// 01, 02, 03, 04
case"qq":return ku(n,2);// 1st, 2nd, 3rd, 4th
case"qo":return r.ordinalNumber(n,{unit:"quarter"});// Q1, Q2, Q3, Q4
case"qqq":return r.quarter(n,{width:"abbreviated",context:"standalone"});// 1, 2, 3, 4 (narrow quarter; could be not numerical)
case"qqqqq":return r.quarter(n,{width:"narrow",context:"standalone"});// 1st quarter, 2nd quarter, ...
case"qqqq":default:return r.quarter(n,{width:"wide",context:"standalone"})}},// Month
M:function(e,t,r){const n=e.getMonth();switch(t){case"M":case"MM":return kc.M(e,t);// 1st, 2nd, ..., 12th
case"Mo":return r.ordinalNumber(n+1,{unit:"month"});// Jan, Feb, ..., Dec
case"MMM":return r.month(n,{width:"abbreviated",context:"formatting"});// J, F, ..., D
case"MMMMM":return r.month(n,{width:"narrow",context:"formatting"});// January, February, ..., December
case"MMMM":default:return r.month(n,{width:"wide",context:"formatting"})}},// Stand-alone month
L:function(e,t,r){const n=e.getMonth();switch(t){// 1, 2, ..., 12
case"L":return String(n+1);// 01, 02, ..., 12
case"LL":return ku(n+1,2);// 1st, 2nd, ..., 12th
case"Lo":return r.ordinalNumber(n+1,{unit:"month"});// Jan, Feb, ..., Dec
case"LLL":return r.month(n,{width:"abbreviated",context:"standalone"});// J, F, ..., D
case"LLLLL":return r.month(n,{width:"narrow",context:"standalone"});// January, February, ..., December
case"LLLL":default:return r.month(n,{width:"wide",context:"standalone"})}},// Local week of year
w:function(e,t,r,n){const i=ks(e,n);if(t==="wo"){return r.ordinalNumber(i,{unit:"week"})}return ku(i,t.length)},// ISO week of year
I:function(e,t,r){const n=kt(e);if(t==="Io"){return r.ordinalNumber(n,{unit:"week"})}return ku(n,t.length)},// Day of the month
d:function(e,t,r){if(t==="do"){return r.ordinalNumber(e.getDate(),{unit:"date"})}return kc.d(e,t)},// Day of year
D:function(e,t,r){const n=E1(e);if(t==="Do"){return r.ordinalNumber(n,{unit:"dayOfYear"})}return ku(n,t.length)},// Day of week
E:function(e,t,r){const n=e.getDay();switch(t){// Tue
case"E":case"EE":case"EEE":return r.day(n,{width:"abbreviated",context:"formatting"});// T
case"EEEEE":return r.day(n,{width:"narrow",context:"formatting"});// Tu
case"EEEEEE":return r.day(n,{width:"short",context:"formatting"});// Tuesday
case"EEEE":default:return r.day(n,{width:"wide",context:"formatting"})}},// Local day of week
e:function(e,t,r,n){const i=e.getDay();const a=(i-n.weekStartsOn+8)%7||7;switch(t){// Numerical value (Nth day of week with current locale or weekStartsOn)
case"e":return String(a);// Padded numerical value
case"ee":return ku(a,2);// 1st, 2nd, ..., 7th
case"eo":return r.ordinalNumber(a,{unit:"day"});case"eee":return r.day(i,{width:"abbreviated",context:"formatting"});// T
case"eeeee":return r.day(i,{width:"narrow",context:"formatting"});// Tu
case"eeeeee":return r.day(i,{width:"short",context:"formatting"});// Tuesday
case"eeee":default:return r.day(i,{width:"wide",context:"formatting"})}},// Stand-alone local day of week
c:function(e,t,r,n){const i=e.getDay();const a=(i-n.weekStartsOn+8)%7||7;switch(t){// Numerical value (same as in `e`)
case"c":return String(a);// Padded numerical value
case"cc":return ku(a,t.length);// 1st, 2nd, ..., 7th
case"co":return r.ordinalNumber(a,{unit:"day"});case"ccc":return r.day(i,{width:"abbreviated",context:"standalone"});// T
case"ccccc":return r.day(i,{width:"narrow",context:"standalone"});// Tu
case"cccccc":return r.day(i,{width:"short",context:"standalone"});// Tuesday
case"cccc":default:return r.day(i,{width:"wide",context:"standalone"})}},// ISO day of week
i:function(e,t,r){const n=e.getDay();const i=n===0?7:n;switch(t){// 2
case"i":return String(i);// 02
case"ii":return ku(i,t.length);// 2nd
case"io":return r.ordinalNumber(i,{unit:"day"});// Tue
case"iii":return r.day(n,{width:"abbreviated",context:"formatting"});// T
case"iiiii":return r.day(n,{width:"narrow",context:"formatting"});// Tu
case"iiiiii":return r.day(n,{width:"short",context:"formatting"});// Tuesday
case"iiii":default:return r.day(n,{width:"wide",context:"formatting"})}},// AM or PM
a:function(e,t,r){const n=e.getHours();const i=n/12>=1?"pm":"am";switch(t){case"a":case"aa":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaa":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return r.dayPeriod(i,{width:"narrow",context:"formatting"});case"aaaa":default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},// AM, PM, midnight, noon
b:function(e,t,r){const n=e.getHours();let i;if(n===12){i=kd.noon}else if(n===0){i=kd.midnight}else{i=n/12>=1?"pm":"am"}switch(t){case"b":case"bb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return r.dayPeriod(i,{width:"narrow",context:"formatting"});case"bbbb":default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},// in the morning, in the afternoon, in the evening, at night
B:function(e,t,r){const n=e.getHours();let i;if(n>=17){i=kd.evening}else if(n>=12){i=kd.afternoon}else if(n>=4){i=kd.morning}else{i=kd.night}switch(t){case"B":case"BB":case"BBB":return r.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return r.dayPeriod(i,{width:"narrow",context:"formatting"});case"BBBB":default:return r.dayPeriod(i,{width:"wide",context:"formatting"})}},// Hour [1-12]
h:function(e,t,r){if(t==="ho"){let t=e.getHours()%12;if(t===0)t=12;return r.ordinalNumber(t,{unit:"hour"})}return kc.h(e,t)},// Hour [0-23]
H:function(e,t,r){if(t==="Ho"){return r.ordinalNumber(e.getHours(),{unit:"hour"})}return kc.H(e,t)},// Hour [0-11]
K:function(e,t,r){const n=e.getHours()%12;if(t==="Ko"){return r.ordinalNumber(n,{unit:"hour"})}return ku(n,t.length)},// Hour [1-24]
k:function(e,t,r){let n=e.getHours();if(n===0)n=24;if(t==="ko"){return r.ordinalNumber(n,{unit:"hour"})}return ku(n,t.length)},// Minute
m:function(e,t,r){if(t==="mo"){return r.ordinalNumber(e.getMinutes(),{unit:"minute"})}return kc.m(e,t)},// Second
s:function(e,t,r){if(t==="so"){return r.ordinalNumber(e.getSeconds(),{unit:"second"})}return kc.s(e,t)},// Fraction of second
S:function(e,t){return kc.S(e,t)},// Timezone (ISO-8601. If offset is 0, output is always `'Z'`)
X:function(e,t,r){const n=e.getTimezoneOffset();if(n===0){return"Z"}switch(t){// Hours and optional minutes
case"X":return kh(n);// Hours, minutes and optional seconds without `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `XX`
case"XXXX":case"XX":return kv(n);// Hours, minutes and optional seconds with `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `XXX`
case"XXXXX":case"XXX":default:return kv(n,":")}},// Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)
x:function(e,t,r){const n=e.getTimezoneOffset();switch(t){// Hours and optional minutes
case"x":return kh(n);// Hours, minutes and optional seconds without `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `xx`
case"xxxx":case"xx":return kv(n);// Hours, minutes and optional seconds with `:` delimiter
// Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets
// so this token always has the same output as `xxx`
case"xxxxx":case"xxx":default:return kv(n,":")}},// Timezone (GMT)
O:function(e,t,r){const n=e.getTimezoneOffset();switch(t){// Short
case"O":case"OO":case"OOO":return"GMT"+kp(n,":");// Long
case"OOOO":default:return"GMT"+kv(n,":")}},// Timezone (specific non-location)
z:function(e,t,r){const n=e.getTimezoneOffset();switch(t){// Short
case"z":case"zz":case"zzz":return"GMT"+kp(n,":");// Long
case"zzzz":default:return"GMT"+kv(n,":")}},// Seconds timestamp
t:function(e,t,r){const n=Math.trunc(+e/1e3);return ku(n,t.length)},// Milliseconds timestamp
T:function(e,t,r){return ku(+e,t.length)}};function kp(e,t=""){const r=e>0?"-":"+";const n=Math.abs(e);const i=Math.trunc(n/60);const a=n%60;if(a===0){return r+String(i)}return r+String(i)+t+ku(a,2)}function kh(e,t){if(e%60===0){const t=e>0?"-":"+";return t+ku(Math.abs(e)/60,2)}return kv(e,t)}function kv(e,t=""){const r=e>0?"-":"+";const n=Math.abs(e);const i=ku(Math.trunc(n/60),2);const a=ku(n%60,2);return r+i+t+a};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/format/longFormatters.js
const kg=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}};const km=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}};const kb=(e,t)=>{const r=e.match(/(P+)(p+)?/)||[];const n=r[1];const i=r[2];if(!i){return kg(e,t)}let a;switch(n){case"P":a=t.dateTime({width:"short"});break;case"PP":a=t.dateTime({width:"medium"});break;case"PPP":a=t.dateTime({width:"long"});break;case"PPPP":default:a=t.dateTime({width:"full"});break}return a.replace("{{date}}",kg(n,t)).replace("{{time}}",km(i,t))};const k_={p:km,P:kb};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/_lib/protectedTokens.js
const ky=/^D+$/;const kw=/^Y+$/;const kx=["D","DD","YY","YYYY"];function kA(e){return ky.test(e)}function kE(e){return kw.test(e)}function kk(e,t,r){const n=kI(e,t,r);console.warn(n);if(kx.includes(e))throw new RangeError(n)}function kI(e,t,r){const n=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${n} to the input \`${r}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`};// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/isDate.js
/**
 * @name isDate
 * @category Common Helpers
 * @summary Is the given value a date?
 *
 * @description
 * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.
 *
 * @param value - The value to check
 *
 * @returns True if the given value is a date
 *
 * @example
 * // For a valid date:
 * const result = isDate(new Date())
 * //=> true
 *
 * @example
 * // For an invalid date:
 * const result = isDate(new Date(NaN))
 * //=> true
 *
 * @example
 * // For some value:
 * const result = isDate('2014-02-31')
 * //=> false
 *
 * @example
 * // For an object:
 * const result = isDate({})
 * //=> false
 */function kC(e){return e instanceof Date||typeof e==="object"&&Object.prototype.toString.call(e)==="[object Date]"}// Fallback for modularized imports:
/* export default */const kY=/* unused pure expression or super */null&&kC;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/isValid.js
/**
 * @name isValid
 * @category Common Helpers
 * @summary Is the given date valid?
 *
 * @description
 * Returns false if argument is Invalid Date and true otherwise.
 * Argument is converted to Date using `toDate`. See [toDate](https://date-fns.org/docs/toDate)
 * Invalid Date is a Date, whose time value is NaN.
 *
 * Time value of Date: http://es5.github.io/#x15.9.1.1
 *
 * @param date - The date to check
 *
 * @returns The date is valid
 *
 * @example
 * // For the valid date:
 * const result = isValid(new Date(2014, 1, 31))
 * //=> true
 *
 * @example
 * // For the value, convertible into a date:
 * const result = isValid(1393804800000)
 * //=> true
 *
 * @example
 * // For the invalid date:
 * const result = isValid(new Date(''))
 * //=> false
 */function kS(e){return!(!kC(e)&&typeof e!=="number"||isNaN(+EV(e)))}// Fallback for modularized imports:
/* export default */const kT=/* unused pure expression or super */null&&kS;// CONCATENATED MODULE: ../tutor/node_modules/.pnpm/date-fns@4.1.0/node_modules/date-fns/format.js
// Rexports of internal for libraries to use.
// See: https://github.com/date-fns/date-fns/issues/3638#issuecomment-1877082874
// This RegExp consists of three parts separated by `|`:
// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token
//   (one of the certain letters followed by `o`)
// - (\w)\1* matches any sequences of the same letter
// - '' matches two quote characters in a row
// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),
//   except a single quote symbol, which ends the sequence.
//   Two quote characters do not end the sequence.
//   If there is no matching single quote
//   then the sequence will continue until the end of the string.
// - . matches any single character unmatched by previous parts of the RegExps
const kO=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g;// This RegExp catches symbols escaped by quotes, and also
// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`
const kD=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;const kF=/^'([^]*?)'?$/;const kP=/''/g;const kR=/[a-zA-Z]/;/**
 * The {@link format} function options.
 *//**
 * @name format
 * @alias formatDate
 * @category Common Helpers
 * @summary Format the date.
 *
 * @description
 * Return the formatted date string in the given format. The result may vary by locale.
 *
 * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.
 * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 *
 * The characters wrapped between two single quotes characters (') are escaped.
 * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.
 * (see the last example)
 *
 * Format of the string is based on Unicode Technical Standard #35:
 * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
 * with a few additions (see note 7 below the table).
 *
 * Accepted patterns:
 * | Unit                            | Pattern | Result examples                   | Notes |
 * |---------------------------------|---------|-----------------------------------|-------|
 * | Era                             | G..GGG  | AD, BC                            |       |
 * |                                 | GGGG    | Anno Domini, Before Christ        | 2     |
 * |                                 | GGGGG   | A, B                              |       |
 * | Calendar year                   | y       | 44, 1, 1900, 2017                 | 5     |
 * |                                 | yo      | 44th, 1st, 0th, 17th              | 5,7   |
 * |                                 | yy      | 44, 01, 00, 17                    | 5     |
 * |                                 | yyy     | 044, 001, 1900, 2017              | 5     |
 * |                                 | yyyy    | 0044, 0001, 1900, 2017            | 5     |
 * |                                 | yyyyy   | ...                               | 3,5   |
 * | Local week-numbering year       | Y       | 44, 1, 1900, 2017                 | 5     |
 * |                                 | Yo      | 44th, 1st, 1900th, 2017th         | 5,7   |
 * |                                 | YY      | 44, 01, 00, 17                    | 5,8   |
 * |                                 | YYY     | 044, 001, 1900, 2017              | 5     |
 * |                                 | YYYY    | 0044, 0001, 1900, 2017            | 5,8   |
 * |                                 | YYYYY   | ...                               | 3,5   |
 * | ISO week-numbering year         | R       | -43, 0, 1, 1900, 2017             | 5,7   |
 * |                                 | RR      | -43, 00, 01, 1900, 2017           | 5,7   |
 * |                                 | RRR     | -043, 000, 001, 1900, 2017        | 5,7   |
 * |                                 | RRRR    | -0043, 0000, 0001, 1900, 2017     | 5,7   |
 * |                                 | RRRRR   | ...                               | 3,5,7 |
 * | Extended year                   | u       | -43, 0, 1, 1900, 2017             | 5     |
 * |                                 | uu      | -43, 01, 1900, 2017               | 5     |
 * |                                 | uuu     | -043, 001, 1900, 2017             | 5     |
 * |                                 | uuuu    | -0043, 0001, 1900, 2017           | 5     |
 * |                                 | uuuuu   | ...                               | 3,5   |
 * | Quarter (formatting)            | Q       | 1, 2, 3, 4                        |       |
 * |                                 | Qo      | 1st, 2nd, 3rd, 4th                | 7     |
 * |                                 | QQ      | 01, 02, 03, 04                    |       |
 * |                                 | QQQ     | Q1, Q2, Q3, Q4                    |       |
 * |                                 | QQQQ    | 1st quarter, 2nd quarter, ...     | 2     |
 * |                                 | QQQQQ   | 1, 2, 3, 4                        | 4     |
 * | Quarter (stand-alone)           | q       | 1, 2, 3, 4                        |       |
 * |                                 | qo      | 1st, 2nd, 3rd, 4th                | 7     |
 * |                                 | qq      | 01, 02, 03, 04                    |       |
 * |                                 | qqq     | Q1, Q2, Q3, Q4                    |       |
 * |                                 | qqqq    | 1st quarter, 2nd quarter, ...     | 2     |
 * |                                 | qqqqq   | 1, 2, 3, 4                        | 4     |
 * | Month (formatting)              | M       | 1, 2, ..., 12                     |       |
 * |                                 | Mo      | 1st, 2nd, ..., 12th               | 7     |
 * |                                 | MM      | 01, 02, ..., 12                   |       |
 * |                                 | MMM     | Jan, Feb, ..., Dec                |       |
 * |                                 | MMMM    | January, February, ..., December  | 2     |
 * |                                 | MMMMM   | J, F, ..., D                      |       |
 * | Month (stand-alone)             | L       | 1, 2, ..., 12                     |       |
 * |                                 | Lo      | 1st, 2nd, ..., 12th               | 7     |
 * |                                 | LL      | 01, 02, ..., 12                   |       |
 * |                                 | LLL     | Jan, Feb, ..., Dec                |       |
 * |                                 | LLLL    | January, February, ..., December  | 2     |
 * |                                 | LLLLL   | J, F, ..., D                      |       |
 * | Local week of year              | w       | 1, 2, ..., 53                     |       |
 * |                                 | wo      | 1st, 2nd, ..., 53th               | 7     |
 * |                                 | ww      | 01, 02, ..., 53                   |       |
 * | ISO week of year                | I       | 1, 2, ..., 53                     | 7     |
 * |                                 | Io      | 1st, 2nd, ..., 53th               | 7     |
 * |                                 | II      | 01, 02, ..., 53                   | 7     |
 * | Day of month                    | d       | 1, 2, ..., 31                     |       |
 * |                                 | do      | 1st, 2nd, ..., 31st               | 7     |
 * |                                 | dd      | 01, 02, ..., 31                   |       |
 * | Day of year                     | D       | 1, 2, ..., 365, 366               | 9     |
 * |                                 | Do      | 1st, 2nd, ..., 365th, 366th       | 7     |
 * |                                 | DD      | 01, 02, ..., 365, 366             | 9     |
 * |                                 | DDD     | 001, 002, ..., 365, 366           |       |
 * |                                 | DDDD    | ...                               | 3     |
 * | Day of week (formatting)        | E..EEE  | Mon, Tue, Wed, ..., Sun           |       |
 * |                                 | EEEE    | Monday, Tuesday, ..., Sunday      | 2     |
 * |                                 | EEEEE   | M, T, W, T, F, S, S               |       |
 * |                                 | EEEEEE  | Mo, Tu, We, Th, Fr, Sa, Su        |       |
 * | ISO day of week (formatting)    | i       | 1, 2, 3, ..., 7                   | 7     |
 * |                                 | io      | 1st, 2nd, ..., 7th                | 7     |
 * |                                 | ii      | 01, 02, ..., 07                   | 7     |
 * |                                 | iii     | Mon, Tue, Wed, ..., Sun           | 7     |
 * |                                 | iiii    | Monday, Tuesday, ..., Sunday      | 2,7   |
 * |                                 | iiiii   | M, T, W, T, F, S, S               | 7     |
 * |                                 | iiiiii  | Mo, Tu, We, Th, Fr, Sa, Su        | 7     |
 * | Local day of week (formatting)  | e       | 2, 3, 4, ..., 1                   |       |
 * |                                 | eo      | 2nd, 3rd, ..., 1st                | 7     |
 * |                                 | ee      | 02, 03, ..., 01                   |       |
 * |                                 | eee     | Mon, Tue, Wed, ..., Sun           |       |
 * |                                 | eeee    | Monday, Tuesday, ..., Sunday      | 2     |
 * |                                 | eeeee   | M, T, W, T, F, S, S               |       |
 * |                                 | eeeeee  | Mo, Tu, We, Th, Fr, Sa, Su        |       |
 * | Local day of week (stand-alone) | c       | 2, 3, 4, ..., 1                   |       |
 * |                                 | co      | 2nd, 3rd, ..., 1st                | 7     |
 * |                                 | cc      | 02, 03, ..., 01                   |       |
 * |                                 | ccc     | Mon, Tue, Wed, ..., Sun           |       |
 * |                                 | cccc    | Monday, Tuesday, ..., Sunday      | 2     |
 * |                                 | ccccc   | M, T, W, T, F, S, S               |       |
 * |                                 | cccccc  | Mo, Tu, We, Th, Fr, Sa, Su        |       |
 * | AM, PM                          | a..aa   | AM, PM                            |       |
 * |                                 | aaa     | am, pm                            |       |
 * |                                 | aaaa    | a.m., p.m.                        | 2     |
 * |                                 | aaaaa   | a, p                              |       |
 * | AM, PM, noon, midnight          | b..bb   | AM, PM, noon, midnight            |       |
 * |                                 | bbb     | am, pm, noon, midnight            |       |
 * |                                 | bbbb    | a.m., p.m., noon, midnight        | 2     |
 * |                                 | bbbbb   | a, p, n, mi                       |       |
 * | Flexible day period             | B..BBB  | at night, in the morning, ...     |       |
 * |                                 | BBBB    | at night, in the morning, ...     | 2     |
 * |                                 | BBBBB   | at night, in the morning, ...     |       |
 * | Hour [1-12]                     | h       | 1, 2, ..., 11, 12                 |       |
 * |                                 | ho      | 1st, 2nd, ..., 11th, 12th         | 7     |
 * |                                 | hh      | 01, 02, ..., 11, 12               |       |
 * | Hour [0-23]                     | H       | 0, 1, 2, ..., 23                  |       |
 * |                                 | Ho      | 0th, 1st, 2nd, ..., 23rd          | 7     |
 * |                                 | HH      | 00, 01, 02, ..., 23               |       |
 * | Hour [0-11]                     | K       | 1, 2, ..., 11, 0                  |       |
 * |                                 | Ko      | 1st, 2nd, ..., 11th, 0th          | 7     |
 * |                                 | KK      | 01, 02, ..., 11, 00               |       |
 * | Hour [1-24]                     | k       | 24, 1, 2, ..., 23                 |       |
 * |                                 | ko      | 24th, 1st, 2nd, ..., 23rd         | 7     |
 * |                                 | kk      | 24, 01, 02, ..., 23               |       |
 * | Minute                          | m       | 0, 1, ..., 59                     |       |
 * |                                 | mo      | 0th, 1st, ..., 59th               | 7     |
 * |                                 | mm      | 00, 01, ..., 59                   |       |
 * | Second                          | s       | 0, 1, ..., 59                     |       |
 * |                                 | so      | 0th, 1st, ..., 59th               | 7     |
 * |                                 | ss      | 00, 01, ..., 59                   |       |
 * | Fraction of second              | S       | 0, 1, ..., 9                      |       |
 * |                                 | SS      | 00, 01, ..., 99                   |       |
 * |                                 | SSS     | 000, 001, ..., 999                |       |
 * |                                 | SSSS    | ...                               | 3     |
 * | Timezone (ISO-8601 w/ Z)        | X       | -08, +0530, Z                     |       |
 * |                                 | XX      | -0800, +0530, Z                   |       |
 * |                                 | XXX     | -08:00, +05:30, Z                 |       |
 * |                                 | XXXX    | -0800, +0530, Z, +123456          | 2     |
 * |                                 | XXXXX   | -08:00, +05:30, Z, +12:34:56      |       |
 * | Timezone (ISO-8601 w/o Z)       | x       | -08, +0530, +00                   |       |
 * |                                 | xx      | -0800, +0530, +0000               |       |
 * |                                 | xxx     | -08:00, +05:30, +00:00            | 2     |
 * |                                 | xxxx    | -0800, +0530, +0000, +123456      |       |
 * |                                 | xxxxx   | -08:00, +05:30, +00:00, +12:34:56 |       |
 * | Timezone (GMT)                  | O...OOO | GMT-8, GMT+5:30, GMT+0            |       |
 * |                                 | OOOO    | GMT-08:00, GMT+05:30, GMT+00:00   | 2     |
 * | Timezone (specific non-locat.)  | z...zzz | GMT-8, GMT+5:30, GMT+0            | 6     |
 * |                                 | zzzz    | GMT-08:00, GMT+05:30, GMT+00:00   | 2,6   |
 * | Seconds timestamp               | t       | 512969520                         | 7     |
 * |                                 | tt      | ...                               | 3,7   |
 * | Milliseconds timestamp          | T       | 512969520900                      | 7     |
 * |                                 | TT      | ...                               | 3,7   |
 * | Long localized date             | P       | 04/29/1453                        | 7     |
 * |                                 | PP      | Apr 29, 1453                      | 7     |
 * |                                 | PPP     | April 29th, 1453                  | 7     |
 * |                                 | PPPP    | Friday, April 29th, 1453          | 2,7   |
 * | Long localized time             | p       | 12:00 AM                          | 7     |
 * |                                 | pp      | 12:00:00 AM                       | 7     |
 * |                                 | ppp     | 12:00:00 AM GMT+2                 | 7     |
 * |                                 | pppp    | 12:00:00 AM GMT+02:00             | 2,7   |
 * | Combination of date and time    | Pp      | 04/29/1453, 12:00 AM              | 7     |
 * |                                 | PPpp    | Apr 29, 1453, 12:00:00 AM         | 7     |
 * |                                 | PPPppp  | April 29th, 1453 at ...           | 7     |
 * |                                 | PPPPpppp| Friday, April 29th, 1453 at ...   | 2,7   |
 * Notes:
 * 1. "Formatting" units (e.g. formatting quarter) in the default en-US locale
 *    are the same as "stand-alone" units, but are different in some languages.
 *    "Formatting" units are declined according to the rules of the language
 *    in the context of a date. "Stand-alone" units are always nominative singular:
 *
 *    `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`
 *
 *    `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`
 *
 * 2. Any sequence of the identical letters is a pattern, unless it is escaped by
 *    the single quote characters (see below).
 *    If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)
 *    the output will be the same as default pattern for this unit, usually
 *    the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units
 *    are marked with "2" in the last column of the table.
 *
 *    `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`
 *
 *    `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`
 *
 *    `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`
 *
 *    `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`
 *
 *    `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`
 *
 * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).
 *    The output will be padded with zeros to match the length of the pattern.
 *
 *    `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`
 *
 * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.
 *    These tokens represent the shortest form of the quarter.
 *
 * 5. The main difference between `y` and `u` patterns are B.C. years:
 *
 *    | Year | `y` | `u` |
 *    |------|-----|-----|
 *    | AC 1 |   1 |   1 |
 *    | BC 1 |   1 |   0 |
 *    | BC 2 |   2 |  -1 |
 *
 *    Also `yy` always returns the last two digits of a year,
 *    while `uu` pads single digit years to 2 characters and returns other years unchanged:
 *
 *    | Year | `yy` | `uu` |
 *    |------|------|------|
 *    | 1    |   01 |   01 |
 *    | 14   |   14 |   14 |
 *    | 376  |   76 |  376 |
 *    | 1453 |   53 | 1453 |
 *
 *    The same difference is true for local and ISO week-numbering years (`Y` and `R`),
 *    except local week-numbering years are dependent on `options.weekStartsOn`
 *    and `options.firstWeekContainsDate` (compare [getISOWeekYear](https://date-fns.org/docs/getISOWeekYear)
 *    and [getWeekYear](https://date-fns.org/docs/getWeekYear)).
 *
 * 6. Specific non-location timezones are currently unavailable in `date-fns`,
 *    so right now these tokens fall back to GMT timezones.
 *
 * 7. These patterns are not in the Unicode Technical Standard #35:
 *    - `i`: ISO day of week
 *    - `I`: ISO week of year
 *    - `R`: ISO week-numbering year
 *    - `t`: seconds timestamp
 *    - `T`: milliseconds timestamp
 *    - `o`: ordinal number modifier
 *    - `P`: long localized date
 *    - `p`: long localized time
 *
 * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.
 *    You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 *
 * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month.
 *    You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 *
 * @param date - The original date
 * @param format - The string of tokens
 * @param options - An object with options
 *
 * @returns The formatted date string
 *
 * @throws `date` must not be Invalid Date
 * @throws `options.locale` must contain `localize` property
 * @throws `options.locale` must contain `formatLong` property
 * @throws use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 * @throws use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 * @throws use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 * @throws use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md
 * @throws format string contains an unescaped latin alphabet character
 *
 * @example
 * // Represent 11 February 2014 in middle-endian format:
 * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')
 * //=> '02/11/2014'
 *
 * @example
 * // Represent 2 July 2014 in Esperanto:
 * import { eoLocale } from 'date-fns/locale/eo'
 * const result = format(new Date(2014, 6, 2), "do 'de' MMMM yyyy", {
 *   locale: eoLocale
 * })
 * //=> '2-a de julio 2014'
 *
 * @example
 * // Escape string by single quote characters:
 * const result = format(new Date(2014, 6, 2, 15), "h 'o''clock'")
 * //=> "3 o'clock"
 */function kH(e,t,r){const n=Em();const i=r?.locale??n.locale??Eh;const a=r?.firstWeekContainsDate??r?.locale?.options?.firstWeekContainsDate??n.firstWeekContainsDate??n.locale?.options?.firstWeekContainsDate??1;const o=r?.weekStartsOn??r?.locale?.options?.weekStartsOn??n.weekStartsOn??n.locale?.options?.weekStartsOn??0;const s=EV(e,r?.in);if(!kS(s)){throw new RangeError("Invalid time value")}let l=t.match(kD).map(e=>{const t=e[0];if(t==="p"||t==="P"){const r=k_[t];return r(e,i.formatLong)}return e}).join("").match(kO).map(e=>{// Replace two single quote characters with one single quote character
if(e==="''"){return{isToken:false,value:"'"}}const t=e[0];if(t==="'"){return{isToken:false,value:kM(e)}}if(kf[t]){return{isToken:true,value:e}}if(t.match(kR)){throw new RangeError("Format string contains an unescaped latin alphabet character `"+t+"`")}return{isToken:false,value:e}});// invoke localize preprocessor (only for french locales at the moment)
if(i.localize.preprocessor){l=i.localize.preprocessor(s,l)}const u={firstWeekContainsDate:a,weekStartsOn:o,locale:i};return l.map(n=>{if(!n.isToken)return n.value;const a=n.value;if(!r?.useAdditionalWeekYearTokens&&kE(a)||!r?.useAdditionalDayOfYearTokens&&kA(a)){kk(a,t,String(e))}const o=kf[a[0]];return o(s,a,i.localize,u)}).join("")}function kM(e){const t=e.match(kF);if(!t){return e}return t[1].replace(kP,"'")}// Fallback for modularized imports:
/* export default */const kN=/* unused pure expression or super */null&&kH;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/h5p.ts
var kL=e=>{return cM.post(cL.GET_H5P_LESSON_CONTENT,{search_filter:e})};var kK=(e,t)=>{return sL({queryKey:["H5PLessonContents",e],queryFn:()=>kL(e).then(e=>e.data),enabled:t==="lesson"})};var kq=e=>{return cM.post(cL.GET_H5P_QUIZ_CONTENT,{search_filter:e})};var kB=(e,t)=>{return sL({queryKey:["H5PQuizContents",e],queryFn:()=>kq(e).then(e=>e.data),enabled:t==="tutor_h5p_quiz"})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/H5PContentListModal.tsx
var kU=e=>{var{title:r,closeModal:i,onAddContent:a,contentType:o,addedContentIds:s=[]}=e;var l=_4({defaultValues:{search:""}});var u=st(l.watch("search"),300);var c=kB(u,o);var d=kK(u,o);var[f,p]=(0,n.useState)([]);var h=o==="tutor_h5p_quiz"?c.data:d.data;var v=h===null||h===void 0?void 0:h.output.filter(e=>!s.includes(String(e.id)));var g=[{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-index":true,css:kV.tableLabel,children:(v===null||v===void 0?void 0:v.length)?/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:e=>{if(e){p((v===null||v===void 0?void 0:v.filter(e=>!s.includes(String(e.id))))||[])}else{p([])}},checked:f.length===((v===null||v===void 0?void 0:v.filter(e=>!s.includes(String(e.id))))||[]).length,isIndeterminate:f.length>0&&f.length<((v===null||v===void 0?void 0:v.filter(e=>!s.includes(String(e.id))))||[]).length}):"#"}),Cell:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:iC/* .typography.caption */.I.caption(),children:/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:t=>{if(t){p([...f,e])}else{p(f.filter(t=>t.id!==e.id))}},checked:f.map(e=>e.id).includes(e.id)&&!s.includes(String(e.id))})})}},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.tableLabel,children:(0,oM.__)("Title","tutor-pro")}),Cell:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.title,children:e.title})}},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.tableLabel,children:(0,oM.__)("Content Type","tutor-pro")}),Cell:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:iC/* .typography.caption */.I.caption(),children:e.content_type})}},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.tableLabel,children:(0,oM.__)("Created At","tutor-pro")}),Cell:e=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:iC/* .typography.caption */.I.caption(),children:kH(new Date(e.updated_at),oI/* .DateFormats.yearMonthDayHourMinuteSecond */.UA.yearMonthDayHourMinuteSecond)})}}];return/*#__PURE__*/(0,t/* .jsxs */.FD)(dX,{title:/* translators: %s is the number of selected items */f.length>0?(0,oM.sprintf)((0,oM.__)("%s selected","tutor-pro"),f.length):r,onClose:()=>i({action:"CLOSE"}),maxWidth:920,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.searchWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:l.control,name:"search",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,(0,ep._)((0,ef._)({},e),{placeholder:(0,oM.__)("Search by title","tutor-pro"),showVerticalBar:false,content:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"search",width:24,height:24})}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kV.tableWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fn,{columns:g,data:v||[],loading:c.isLoading||d.isLoading})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:v===null||v===void 0?void 0:v.length,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kV.footer,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"text",onClick:()=>i({action:"CLOSE"}),children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{type:"submit",size:"small",variant:"primary",onClick:()=>{a(f);i({action:"CONFIRM"})},disabled:!f.length,children:(0,oM.__)("Add","tutor-pro")})]})})]})};/* export default */const kj=kU;var kV={searchWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;padding:",iI/* .spacing["20"] */.YK["20"],";"),tableWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-height:calc(100vh - 350px);overflow:auto;tr{td:first-of-type{padding-left:",iI/* .spacing["20"] */.YK["20"],";}td:last-of-type{padding-right:",iI/* .spacing["20"] */.YK["20"],";}}"),tableLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";text-align:left;color:",iI/* .colorTokens.text.primary */.I6.text.primary,";&[data-index]{padding-left:",iI/* .spacing["4"] */.YK["4"],";}"),title:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(2),"    width:100%;text-align:left;",iC/* .typography.caption */.I.caption(),";min-width:340px;max-width:400px;"),footer:/*#__PURE__*/(0,u/* .css */.AH)("box-shadow:",iI/* .shadow.dividerTop */.r7.dividerTop,";height:56px;display:flex;align-items:center;justify-content:end;gap:",iI/* .spacing["16"] */.YK["16"],";padding-inline:",iI/* .spacing["16"] */.YK["16"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/LessonModal.tsx
var kW=e=>{var{contentId:r="",collectionId:i,closeModal:a,subtitle:o}=e;var s,l,u,c;var d=((s=cS/* .tutorConfig.settings */.P.settings)===null||s===void 0?void 0:s.chatgpt_enable)==="on";var f=cS/* .tutorConfig.enable_lesson_classic_editor */.P.enable_lesson_classic_editor==="1";var p=((l=cS/* .tutorConfig.settings */.P.settings)===null||l===void 0?void 0:l.hide_admin_bar_for_users)==="off";var h=(u=cS/* .tutorConfig.current_user.roles */.P.current_user.roles)===null||u===void 0?void 0:u.includes(oI/* .TutorRoles.ADMINISTRATOR */.gt.ADMINISTRATOR);var v=(c=cS/* .tutorConfig.current_user.roles */.P.current_user.roles)===null||c===void 0?void 0:c.includes(oI/* .TutorRoles.TUTOR_INSTRUCTOR */.gt.TUTOR_INSTRUCTOR);var g=f&&(h||v&&p);var m=wJ(Number(r)||null);var b=w1();var{showModal:_}=i7();var{data:y,isLoading:w}=m;var x=pz({defaultValues:{title:"",description:"",thumbnail:null,tutor_attachments:[],lesson_preview:false,video:null,duration:{hour:0,minute:0,second:0}},shouldFocusError:true,mode:"onChange"});var A=x.formState.dirtyFields&&Object.keys(x.formState.dirtyFields).length>0;(0,n.useEffect)(()=>{if(y&&!w){var e,t,r;x.reset({title:y.post_title||"",description:(0,iq/* .normalizeLineEndings */.EW)(y.post_content)||"",thumbnail:{id:y.ID?Number(y.thumbnail_id):0,title:"",url:y.thumbnail||""},tutor_attachments:y.attachments||[],video:y.video||null,duration:{hour:((e=y.video.runtime)===null||e===void 0?void 0:e.hours)||0,minute:((t=y.video.runtime)===null||t===void 0?void 0:t.minutes)||0,second:((r=y.video.runtime)===null||r===void 0?void 0:r.seconds)||0}})}var n=document.querySelector(".button.insert-media.add_media");var i=document.querySelector(".add-h5p-content-button");if(n&&i){n.after(i)}var a=setTimeout(()=>{x.setFocus("title")},250);return()=>{clearTimeout(a)};// eslint-disable-next-line react-hooks/exhaustive-deps
},[y,w]);var E=e=>cQ(function*(){var t=wZ(e,Number(r),i);var n=yield b.mutateAsync(t);if(n.status_code===200||n.status_code===201){a({action:"CONFIRM"})}})();var k=()=>{var e=x.getValues("description");var t=e.match(/\[h5p id="(\d+)"\]/g)||[];var r=t.map(e=>{var t;var r=((t=e.match(/\[h5p id="(\d+)"\]/))===null||t===void 0?void 0:t[1])||"";return String(r)});var n=t=>{var r=e=>{return'[h5p id="'.concat(e.id,'"]')};var n=t.map(r);x.setValue("description","".concat(e,"\n").concat(n.join("\n")),{shouldDirty:true})};_({component:kj,props:{title:(0,oM.__)("Select H5P Content","tutor-pro"),onAddContent:n,contentType:"lesson",addedContentIds:r}})};return/*#__PURE__*/(0,t/* .jsx */.Y)(wU,{onClose:()=>a({action:"CLOSE"}),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:A?"warning":"lesson",width:24,height:24}),title:A?oI/* .CURRENT_VIEWPORT.isAboveDesktop */.vN.isAboveDesktop?(0,oM.__)("Unsaved Changes","tutor-pro"):"":(0,oM.__)("Lesson","tutor-pro"),subtitle:o&&(oI/* .CURRENT_VIEWPORT.isAboveSmallMobile */.vN.isAboveSmallMobile?(0,oM.sprintf)((0,oM.__)("Collection: %s","tutor-pro"),o):""),maxWidth:1070,actions:A&&/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{if(r){x.reset()}else{a({action:"CLOSE"})}},children:r?(0,oM.__)("Discard Changes","tutor-pro"):(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"save-lesson",loading:b.isPending,variant:"primary",size:"small",onClick:x.handleSubmit(E),children:r?(0,oM.__)("Update","tutor-pro"):(0,oM.__)("Save","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kG.wrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!m.isLoading,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.lessonInfo,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"title",control:x.control,rules:oF({required:(0,oM.__)("Lesson title is required.","tutor-pro")},yG(255)),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{label:(0,oM.__)("Name","tutor-pro"),placeholder:(0,oM.__)("Enter Lesson Name","tutor-pro"),generateWithAi:d,isClearable:true}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.description,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"description",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wN,oR(oF({},e),{label:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.descriptionLabel,children:[(0,oM.__)("Content","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:g,children:/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Save the lesson first to use the WP Editor.","tutor-pro"),delay:200,disabled:!!r,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{window.open("".concat(cS/* .tutorConfig.site_url */.P.site_url,"/wp-admin/post.php?post=").concat(r,"&action=edit"),"_blank","noopener")},icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:24,height:24}),buttonCss:kG.wpEditorButton,disabled:!r,children:(0,oM.__)("WP Editor","tutor-pro")})})})]}),placeholder:(0,oM.__)("Enter Lesson Description","tutor-pro"),generateWithAi:d}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:(0,iq/* .isAddonEnabled */.GR)(oI/* .Addons.H5P_INTEGRATION */.oW.H5P_INTEGRATION),children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{className:"add-h5p-content-button",css:kG.addH5PContentButton,type:"button",onClick:k,children:(0,oM.__)("Add H5P Content","tutor-pro")})})]})]})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.rightPanel,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"thumbnail",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Ax,oR(oF({},e),{label:(0,oM.__)("Featured Image","tutor-pro"),buttonText:(0,oM.__)("Upload Image","tutor-pro"),infoText:/* translators: %s is the maximum allowed upload file size (e.g., "2MB") */(0,oM.sprintf)((0,oM.__)("JPEG, PNG, GIF, and WebP formats, up to %s","tutor-pro"),cS/* .tutorConfig.max_upload_size */.P.max_upload_size)}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"video",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Aq,oR(oF({},e),{label:(0,oM.__)("Video","tutor-pro"),buttonText:(0,oM.__)("Upload Video","tutor-pro"),infoText:(0,oM.sprintf)((0,oM.__)("MP4, and WebM formats, up to %s","tutor-pro"),cS/* .tutorConfig.max_upload_size */.P.max_upload_size),onGetDuration:e=>{x.setValue("duration.hour",e.hours);x.setValue("duration.minute",e.minutes);x.setValue("duration.second",e.seconds)}}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.durationWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:kG.additionLabel,children:(0,oM.__)("Video Playback Time","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kG.duration,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"duration.hour",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,oR(oF({},e),{type:"number",content:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:kG.durationContent,children:(0,oM.__)("hour","tutor-pro")}),contentPosition:"right",placeholder:"0",showVerticalBar:false}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"duration.minute",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,oR(oF({},e),{type:"number",content:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:kG.durationContent,children:(0,oM.__)("min","tutor-pro")}),contentPosition:"right",placeholder:"0",showVerticalBar:false}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"duration.second",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,oR(oF({},e),{type:"number",content:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:kG.durationContent,children:(0,oM.__)("sec","tutor-pro")}),contentPosition:"right",placeholder:"0",showVerticalBar:false}))})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"tutor_attachments",control:x.control,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(mj,oR(oF({},e),{label:(0,oM.__)("Exercise Files","tutor-pro"),buttonText:(0,oM.__)("Upload Attachment","tutor-pro"),selectMultiple:true}))})]})]})})})};/* export default */const kz=kW;var kG={wrapper:e=>{var{hasRightSidebar:t=true}=e;return/*#__PURE__*/(0,u/* .css */.AH)("margin:0 auto;display:grid;grid-template-columns:",t?"1fr 338px":"1fr",";height:100%;width:100%;padding-inline:",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{grid-template-columns:1fr;padding-inline:",iI/* .spacing["24"] */.YK["24"],";}",iI/* .Breakpoint.mobile */.EA.mobile,"{padding-inline:",iI/* .spacing["16"] */.YK["16"],";}")},lessonInfo:e=>{var{hasRightSidebar:t=true}=e;return/*#__PURE__*/(0,u/* .css */.AH)("padding-block:",iI/* .spacing["20"] */.YK["20"],";padding-right:",t&&iI/* .spacing["32"] */.YK["32"],";display:flex;flex-direction:column;gap:",iI/* .spacing["24"] */.YK["24"],";position:sticky;top:0;z-index:",iI/* .zIndex.positive */.fE.positive,";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{position:unset;padding-right:0;}")},description:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;"),descriptionLabel:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;height:32px;"),addH5PContentButton:e=>{var{isPro:t=true}=e;return/*#__PURE__*/(0,u/* .css */.AH)("text-decoration:none;font-size:13px;line-height:2.15384615;min-height:30px;margin:0;padding:",!t?"0px":"0 10px",";cursor:pointer;border:1px solid #3e64de;border-radius:3px;white-space:nowrap;box-sizing:border-box;color:#3e64de;border-color:#3e64de;background:transparent;[data-button-text]{",oO/* .styleUtils.flexCenter */.x.flexCenter(),";padding:0 10px;}:hover:not(:disabled){background:",iI/* .colorTokens.background.white */.I6.background.white,";color:#3e64de;}:disabled{cursor:not-allowed;position:relative;top:auto;left:auto;opacity:0.5;}")},rightPanel:/*#__PURE__*/(0,u/* .css */.AH)("border-left:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";padding-block:",iI/* .spacing["20"] */.YK["20"],";padding-left:",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{border-left:none;padding-left:0;}"),durationWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";"),duration:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";"),durationContent:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),additionLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),"    color:",iI/* .colorTokens.text.title */.I6.text.title,";"),lessonPreview:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background.white */.I6.background.white,";padding:",iI/* .spacing["12"] */.YK["12"],";border:1px solid ",iI/* .colorTokens.stroke["default"] */.I6.stroke["default"],";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";"),previewLabel:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";"),contentDripLabel:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;svg{margin-right:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.icon.success */.I6.icon.success,";}"),previewInfo:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";text-align:center;color:",iI/* .colorTokens.text.title */.I6.text.title,";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["24"] */.YK["24"],";background:",iI/* .colorTokens.background.status.success */.I6.background.status.success,";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";margin-top:",iI/* .spacing["12"] */.YK["12"],";"),wpEditorButton:/*#__PURE__*/(0,u/* .css */.AH)("margin-left:",iI/* .spacing["4"] */.YK["4"],";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";}&:hover:not(:disabled){text-decoration:underline;}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/usePaginatedTable.ts
var kQ=function(){var{limit:e=oI/* .ITEMS_PER_PAGE */.re}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var[t,r]=(0,n.useState)({page:1,sortProperty:"",sortDirection:undefined,filter:{}});var i=t;var a=e*Math.max(0,i.page-1);var o=(0,n.useCallback)(e=>{r(t=>(0,ef._)({},t,e))},[r]);var s=e=>o({page:e});var l=(0,n.useCallback)(e=>o({page:1,filter:e}),[o]);var u=e=>{var t={};if(e!==i.sortProperty){t={sortDirection:"asc",sortProperty:e}}else{t={sortDirection:i.sortDirection==="asc"?"desc":"asc",sortProperty:e}}o(t)};return{pageInfo:i,onPageChange:s,onColumnSort:u,offset:a,itemsPerPage:e,onFilterItems:l}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/MoveCollectionModal.tsx
var k$=e=>{var{closeModal:r,title:i,subtitle:a,contentIds:o}=e;var s,l,u;var[c,d]=(0,n.useState)("");var f=st(c);var{pageInfo:p,onPageChange:h,itemsPerPage:v,onFilterItems:g}=kQ();var m=cq({page:p.page,per_page:v,search:String(p.filter.search||"")});var b=xo();(0,n.useEffect)(()=>{g({search:f||""})},[g,f]);var _;var y=(_=(s=m.data)===null||s===void 0?void 0:s.data)!==null&&_!==void 0?_:[];var w;var x=(w=(l=m.data)===null||l===void 0?void 0:l.total_record)!==null&&w!==void 0?w:0;var A;var E=Number((A=(u=m.data)===null||u===void 0?void 0:u.total_page)!==null&&A!==void 0?A:0);return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:()=>r({action:"CLOSE"}),title:i,subtitle:a,maxWidth:500,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kX.container,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kX.searchFieldWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{variant:"search",value:c,onChange:d,placeholder:(0,oM.__)("Search...","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!m.isLoading,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(oj,{}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kX.listWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:y,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kX.empty,children:(0,oM.__)("No collections found.","tutor-pro")}),children:e=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kX.collectionItem,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kX.collectionTitle,children:e.post_title}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:kX.collectionCount,children:[e.count_stats.total," ",(0,oM.__)("Items","tutor-pro")]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-move-here-button":true,variant:"primary",size:"small",loading:b.isPending,onClick:()=>cQ(function*(){var t=yield b.mutateAsync({collectionId:e.ID,contentIds:o});if(t.status_code===200){r()}})(),children:(0,oM.__)("Move Here","tutor-pro")})]},e.ID)})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:E>1,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:kX.paginatorWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(d6,{currentPage:p.page,onPageChange:h,totalItems:x,itemsPerPage:v})})})]})})};var kX={container:/*#__PURE__*/(0,u/* .css */.AH)(),searchFieldWrapper:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"]," ",iI/* .spacing["20"] */.YK["20"]," ",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["20"] */.YK["20"],";"),listWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-height:340px;overflow-y:auto;padding:0 0 ",iI/* .spacing["8"] */.YK["8"]," 0;"),collectionItem:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["20"] */.YK["20"],";transition:background-color 0.25s ease-in-out;[data-move-here-button]{opacity:0;transition:opacity 0.25s ease-in-out;}&:hover{background:",iI/* .colorTokens.background.hover */.I6.background.hover,";[data-move-here-button]{opacity:1;}}"),collectionTitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("regular"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";"),collectionCount:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),empty:/*#__PURE__*/(0,u/* .css */.AH)("text-align:center;color:",iI/* .colorTokens.text.hints */.I6.text.hints,";padding:",iI/* .spacing["32"] */.YK["32"]," 0;"),paginatorWrapper:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"]," ",iI/* .spacing["16"] */.YK["16"],";"),errorMessage:/*#__PURE__*/(0,u/* .css */.AH)("height:100px;display:flex;align-items:center;justify-content:center;")};/* export default */const kJ=k$;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/quiz.ts
var kZ=(e,t)=>{if(t===e){return null}if(e===iK/* .QuizDataStatus.NEW */.cW.NEW){return iK/* .QuizDataStatus.NEW */.cW.NEW}if((e===iK/* .QuizDataStatus.UPDATE */.cW.UPDATE||e===iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE)&&t===iK/* .QuizDataStatus.UPDATE */.cW.UPDATE){return iK/* .QuizDataStatus.UPDATE */.cW.UPDATE}return iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE};var k0=e=>{if(e){var t=e.question_type;if(t==="h5p"){return true}var r=e.question_answers||[];var n=r.every(e=>e.is_saved);var i=r.some(e=>e.is_correct==="1");if(r.length===0&&t!=="open_ended"&&t!=="short_answer"){return{message:(0,oM.__)("Please add an option.","tutor-pro"),type:"add_option"}}if(!n){return{message:(0,oM.__)("Please finish editing all newly created options.","tutor-pro"),type:"save_option"}}if(["true_false","multiple_choice"].includes(t)&&!i){return{message:(0,oM.__)("Please select a correct answer.","tutor-pro"),type:"correct_option"}}if(t==="matching"){var a=e.question_settings.is_image_matching;var o=r.every(e=>e.answer_title);if(!o){return{message:(0,oM.__)("Please add titles to all options.","tutor-pro"),type:"save_option"}}if(a){var s=r.every(e=>e.image_url);if(!s){return{message:(0,oM.__)("Please add images to all options.","tutor-pro"),type:"question"}}}else{var l=r.every(e=>e.answer_two_gap_match);if(!l){return{message:(0,oM.__)("Please add matched text to all options.","tutor-pro"),type:"save_option"}}}}if(t==="scale"){var u=r[0];if(u===null||u===void 0?void 0:u.answer_two_gap_match){try{var c,d;var f=JSON.parse(u.answer_two_gap_match);var p;var h=Number((p=(c=f.config)===null||c===void 0?void 0:c.min)!==null&&p!==void 0?p:0);var v;var g=Number((v=(d=f.config)===null||d===void 0?void 0:d.max)!==null&&v!==void 0?v:100);if(!Number.isNaN(h)&&!Number.isNaN(g)&&g<=h){return{message:(0,oM.__)("The maximum value must be greater than the minimum value.","tutor-pro"),type:"question"}}var m=Number(f.value);if(!Number.isNaN(h)&&!Number.isNaN(g)&&!Number.isNaN(m)&&(m<h||m>g)){return{message:(0,oM.__)("The correct value must be between the minimum and maximum values.","tutor-pro"),type:"question"}}}catch(e){// Invalid JSON; other validation may apply elsewhere.
}}}if(t==="coordinates"){var b=r[0];var _=e.question_settings.coordinates_axis_range===20?20:10;var y=-_;var w=_;var x=(b===null||b===void 0?void 0:b.answer_two_gap_match)||"";try{var A=JSON.parse(x);var E=Array.isArray(A)?A:A&&typeof A==="object"?[A]:[];var k=E.length>0&&E.length<=5&&E.every(e=>{if(!e||typeof e!=="object")return false;var t=e;return typeof t.x==="number"&&typeof t.y==="number"&&Number.isInteger(t.x)&&Number.isInteger(t.y)&&t.x>=y&&t.x<=w&&t.y>=y&&t.y<=w});if(!k){return{message:(0,oM.sprintf)(/* translators: 1: minimum coordinate value, 2: maximum coordinate value. */(0,oM.__)("Please add valid coordinates in the range %1$d to %2$d.","tutor-pro"),y,w),type:"question"}}}catch(e){return{message:(0,oM.sprintf)(/* translators: 1: minimum coordinate value, 2: maximum coordinate value. */(0,oM.__)("Please add valid coordinates in the range %1$d to %2$d.","tutor-pro"),y,w),type:"question"}}}if(t==="draw_image"||t==="pin_image"){var I=r.some(e=>Boolean(e.answer_two_gap_match));if(!I){return{message:(0,oM.__)("Please mark a valid area on the image.","tutor-pro"),type:"question"}}}if(t==="puzzle"){var C=r.some(e=>Boolean(e.answer_two_gap_match)||Boolean(e.image_url));if(!C){return{message:(0,oM.__)("Please upload a valid puzzle image.","tutor-pro"),type:"question"}}}}return true};var k1=e=>{var t=e=>{if(e.image_url){return e.answer_view_format==="text_image"?iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE}return e.answer_view_format==="text"?iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE};if(e.question_settings){e.question_settings.answer_required=!!Number(e.question_settings.answer_required);e.question_settings.show_question_mark=!!Number(e.question_settings.show_question_mark);e.question_settings.randomize_question=!!Number(e.question_settings.randomize_question);if(e.question_type==="draw_image"){var r=e.question_settings.draw_image_threshold_percent;if(r!==undefined&&r!==null&&!Number.isNaN(Number(r))){e.question_settings.draw_image_threshold_percent=Number(r)}}if(e.question_type==="puzzle"){var n=e.question_settings.puzzle_grid_size;if(n!==undefined&&n!==null&&!Number.isNaN(Number(n))){e.question_settings.puzzle_grid_size=Number(n)}}if(e.question_type==="coordinates"){var i=e.question_settings.coordinates_axis_range;if(i!==undefined&&i!==null&&!Number.isNaN(Number(i))){e.question_settings.coordinates_axis_range=Number(i)}}}e.question_answers=e.question_answers.map(e=>(0,ep._)((0,ef._)({},e),{_data_status:t(e),is_saved:true,answer_view_format:e.image_url?"text_image":"text"}));e.question_description=(0,iq/* .normalizeLineEndings */.EW)(e.question_description)||"";e.answer_explanation=e.answer_explanation==='<p><br data-mce-bogus="1"></p>'?"":(0,iq/* .normalizeLineEndings */.EW)(e.answer_explanation)||"";switch(e.question_type){case"single_choice":{return(0,ep._)((0,ef._)({},e),{_data_status:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE,question_type:"multiple_choice",question_answers:e.question_answers.map(e=>(0,ep._)((0,ef._)({},e),{_data_status:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE})),question_settings:(0,ep._)((0,ef._)({},e.question_settings),{question_type:"multiple_choice",has_multiple_correct_answer:false})})}case"multiple_choice":{return(0,ep._)((0,ef._)({},e),{_data_status:e.question_settings.has_multiple_correct_answer?iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE,question_settings:(0,ep._)((0,ef._)({},e.question_settings),{has_multiple_correct_answer:e.question_settings.has_multiple_correct_answer?!!Number(e.question_settings.has_multiple_correct_answer):true})})}case"matching":{return(0,ep._)((0,ef._)({},e),{_data_status:e.question_settings.is_image_matching?iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE,question_settings:(0,ep._)((0,ef._)({},e.question_settings),{is_image_matching:e.question_settings.is_image_matching?!!Number(e.question_settings.is_image_matching):false})})}case"image_matching":{return(0,ep._)((0,ef._)({},e),{_data_status:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE,question_type:"matching",question_answers:e.question_answers.map(e=>(0,ep._)((0,ef._)({},e),{_data_status:iK/* .QuizDataStatus.UPDATE */.cW.UPDATE})),question_settings:(0,ep._)((0,ef._)({},e.question_settings),{question_type:"matching",is_image_matching:true})})}default:return(0,ep._)((0,ef._)({},e),{_data_status:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE})}};var k2=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];var r=new Set(t);var n=e.map(e=>{if(e.question_type!=="draw_image"&&e.question_type!=="pin_image"){return e}var t=Array.isArray(e.question_answers)?e.question_answers:[];if(t.length<=1){return e}var[n,...i]=t;i.forEach(e=>{if(e._data_status!==iK/* .QuizDataStatus.NEW */.cW.NEW&&e.answer_id){r.add(e.answer_id)}});return(0,ep._)((0,ef._)({},e),{question_answers:n?[n]:[]})});return{normalizedQuestions:n,deletedAnswerIds:Array.from(r)}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/QuestionConditions.tsx
var k6={true_false:{label:(0,oM.__)("True/False","tutor-pro"),icon:"quizTrueFalse"},multiple_choice:{label:(0,oM.__)("Multiple Choice","tutor-pro"),icon:"quizMultiChoice"},open_ended:{label:(0,oM.__)("Open Ended/Essay","tutor-pro"),icon:"quizEssay"},fill_in_the_blank:{label:(0,oM.__)("Fill in the Blanks","tutor-pro"),icon:"quizFillInTheBlanks"},short_answer:{label:(0,oM.__)("Short Answer","tutor-pro"),icon:"quizShortAnswer"},matching:{label:(0,oM.__)("Matching","tutor-pro"),icon:"quizImageMatching"},image_answering:{label:(0,oM.__)("Image Answering","tutor-pro"),icon:"quizImageAnswer"},ordering:{label:(0,oM.__)("Ordering","tutor-pro"),icon:"quizOrdering"},draw_image:{label:(0,oM.__)("Image Marking","tutor-pro"),icon:"quizMarkInTheImage"},scale:{label:(0,oM.__)("Range","tutor-pro"),icon:"quizRange"},coordinates:{label:(0,oM.__)("Graph","tutor-pro"),icon:"quizGraph"},pin_image:{label:(0,oM.__)("Pin","tutor-pro"),icon:"quizPin"},puzzle:{label:(0,oM.__)("Puzzle","tutor-pro"),icon:"quizPuzzle"}};var k4=["multiple_choice","matching","image_answering"];var k5=()=>{var e=fN();var r=e.watch("question_type");var n=e.watch("question_id");var i=e.watch("_data_status");var a=Object.entries(k6);var o=t=>{var r=t.value;if(r==="true_false"){e.setValue("question_answers",[{answer_id:(0,iq/* .nanoid */.Ak)(),is_saved:true,_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,answer_title:(0,oM.__)("True","tutor-pro"),is_correct:"1",answer_order:1,answer_two_gap_match:"",answer_view_format:"text",belongs_question_id:"",belongs_question_type:"true_false"},{answer_id:(0,iq/* .nanoid */.Ak)(),is_saved:true,_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,answer_title:(0,oM.__)("False","tutor-pro"),is_correct:"0",answer_order:2,answer_two_gap_match:"",answer_view_format:"text",belongs_question_id:"",belongs_question_type:"true_false"}],{shouldDirty:true})}else if(r==="fill_in_the_blank"){e.setValue("question_answers",[{answer_id:(0,iq/* .nanoid */.Ak)(),is_saved:true,_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,answer_title:"",is_correct:"1",answer_order:1,answer_two_gap_match:"",answer_view_format:"text",belongs_question_id:"",belongs_question_type:"fill_in_the_blank"}])}else if(r==="draw_image"){var n;var i=(n=e.getValues("question_id"))!==null&&n!==void 0?n:"";e.setValue("question_answers",[{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:i,belongs_question_type:"draw_image",answer_two_gap_match:"",answer_view_format:"draw_image",answer_order:0,is_correct:"1"}],{shouldDirty:true});e.setValue("question_settings",oR(oF({},e.getValues("question_settings")),{question_type:"draw_image",draw_image_threshold_percent:70}),{shouldDirty:true})}else if(r==="pin_image"){var a;var o=(a=e.getValues("question_id"))!==null&&a!==void 0?a:"";e.setValue("question_answers",[{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:o,belongs_question_type:"pin_image",answer_two_gap_match:"",answer_view_format:"pin_image",answer_order:0,is_correct:"1"}],{shouldDirty:true})}else if(r==="coordinates"){var s;var l=(s=e.getValues("question_id"))!==null&&s!==void 0?s:"";e.setValue("question_answers",[{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:l,belongs_question_type:"coordinates",answer_two_gap_match:"",answer_view_format:"coordinates",answer_order:0,is_correct:"1"}],{shouldDirty:true});e.setValue("question_settings",oR(oF({},e.getValues("question_settings")),{question_type:"coordinates",coordinates_axis_range:10}),{shouldDirty:true})}else if(r==="scale"){var u;var c=(u=e.getValues("question_id"))!==null&&u!==void 0?u:"";e.setValue("question_answers",[{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:c,belongs_question_type:"scale",answer_two_gap_match:JSON.stringify({value:50,config:{min:0,max:100,step:1,defaultValue:50,pxPerUnit:10,labelEvery:10,minorTickEvery:5,precision:0}}),answer_view_format:"scale",answer_order:0,is_correct:"1"}],{shouldDirty:true})}else if(r==="puzzle"){var d;var f=(d=e.getValues("question_id"))!==null&&d!==void 0?d:"";e.setValue("question_answers",[{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:f,belongs_question_type:"puzzle",answer_two_gap_match:"",answer_view_format:"puzzle",answer_order:0,is_correct:"1"}],{shouldDirty:true});e.setValue("question_settings",oR(oF({},e.getValues("question_settings")),{question_type:"puzzle",puzzle_grid_size:4}),{shouldDirty:true})}else{e.setValue("question_answers",[],{shouldDirty:true})}};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:k8.questionTypeWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!n,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:iC/* .typography.caption */.I.caption(),children:(0,oM.__)("Question Type","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:k8.questionType,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:r&&k6[r]?k6[r].icon:"quizTrueFalse",width:32,height:32}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:r&&k6[r]?k6[r].label:""})]})]}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_type",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,oR(oF({},e),{label:(0,oM.__)("Question Type","tutor-pro"),options:a.map(e=>{var[t,r]=e;return{value:t,label:r.label,icon:r.icon}}),placeholder:(0,oM.__)("Question Type","tutor-pro"),onChange:o}))})})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:k8.conditions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:(0,oM.__)("Conditions:","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:k8.conditionControls,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r==="multiple_choice",children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.has_multiple_correct_answer",render:r=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},r),{label:(0,oM.__)("Multiple Correct Answer","tutor-pro"),onChange:t=>{if(kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){e.setValue("_data_status",kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}// Reset all answers to incorrect on multiple correct answer toggle from true to false
    if(!t){e.setValue("question_answers",e.getValues("question_answers").map(e=>{return oR(oF({},e),{is_correct:"0"})}))}}}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r==="matching",children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.is_image_matching",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},e),{label:(0,oM.__)("Image Matching","tutor-pro")}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.answer_required",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},e),{label:(0,oM.__)("Answer Required","tutor-pro")}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:k4.includes(r),children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.randomize_question",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},e),{label:(0,oM.__)("Randomize Choice","tutor-pro")}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.question_mark",rules:{min:0},render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{label:(0,oM.__)("Point For This Question","tutor-pro"),type:"number",isInlineLabel:true,placeholder:"0",style:/*#__PURE__*/(0,u/* .css */.AH)("max-width:80px;")}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_settings.show_question_mark",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(yB,oR(oF({},e),{label:(0,oM.__)("Display Points","tutor-pro")}))})]})]})]})};/* export default */const k3=k5;var k8={emptyQuestions:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["32"] */.YK["32"]," ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["24"] */.YK["24"],";",iC/* .typography.caption */.I.caption("medium"),";"),questionTypeWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["32"] */.YK["32"]," ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["24"] */.YK["24"],";gap:",iI/* .spacing["10"] */.YK["10"],";border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";"),questionType:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["10"] */.YK["10"],";",iC/* .typography.body */.I.body("medium"),";"),conditions:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["32"] */.YK["32"]," ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["24"] */.YK["24"],";p{",iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}"),conditionControls:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";margin-top:",iI/* .spacing["16"] */.YK["16"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/FormAnswerExplanation.tsx
function k9(){var e=(0,eh._)(["\n      background-color: ",";\n      padding: "," ",";\n\n      &:hover {\n        background-color: ",";\n      }\n    "]);k9=function t(){return e};return e}function k7(){var e=(0,eh._)(["\n      padding-inline: 0;\n      max-height: unset;\n      overflow: unset;\n    "]);k7=function t(){return e};return e}function Ie(){var e=(0,eh._)(["\n      padding: 0;\n    "]);Ie=function t(){return e};return e}function It(){var e=(0,eh._)(["\n        background-color: transparent;\n      "]);It=function t(){return e};return e}function Ir(){var e=(0,eh._)(["\n        resize: vertical;\n      "]);Ir=function t(){return e};return e}function In(){var e=(0,eh._)(["\n      opacity: 1;\n    "]);In=function t(){return e};return e}var Ii=e=>{var{label:r,field:i,fieldState:a,disabled:o,loading:s,placeholder:l,helpText:u,onChange:c}=e;var d;var f=(d=i.value)!==null&&d!==void 0?d:"";var[p,h]=(0,n.useState)(false);var[v,g]=(0,n.useState)(f);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Io.wrapper({hasValue:!!f&&!p}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:p||f,children:/*#__PURE__*/(0,t/* .jsx */.Y)("label",{css:Io.answerLabel,children:r})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Io.editorWrapper({isEdit:p}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Io.container({isEdit:p||!!f}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!f&&!p,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(wN,{field:i,fieldState:a,disabled:o,helpText:u,loading:s,readOnly:!p,onChange:c,placeholder:l,autoFocus:true,isMinimal:true}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Io.placeholder,children:l})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:p,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-action-buttons":true,css:Io.actionButtonWrapper({isEdit:p}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{i.onChange(v);h(false)},children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:()=>{var e;g((e=i.value)!==null&&e!==void 0?e:"");h(false)},disabled:i.value===v,children:(0,oM.__)("Ok","tutor-pro")})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!p,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{onClick:()=>{if(!p&&!o){h(true)}},onKeyDown:e=>{if((e.key==="Enter"||e.key===" ")&&!p){h(true)}},"data-overlay":true,tabIndex:0,role:"button"})})]})})]})};/* export default */const Ia=Ii;var Io={wrapper:e=>{var{hasValue:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["10"] */.YK["10"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";",t&&(0,u/* .css */.AH)(k9(),iI/* .colorTokens.color.success["30"] */.I6.color.success["30"],iI/* .spacing["12"] */.YK["12"],iI/* .spacing["24"] */.YK["24"],iI/* .colorTokens.color.success["40"] */.I6.color.success["40"]))},editorWrapper:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;max-height:400px;overflow-y:scroll;",t&&(0,u/* .css */.AH)(k7()))},container:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";min-height:48px;height:100%;width:100%;inset:0;border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";transition:background 0.15s ease-in-out;[data-overlay]{position:absolute;inset:0;opacity:1;:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:-2px;border-radius:",iI/* .borderRadius.card */.Vq.card,";}}& label{",iC/* .typography.caption */.I.caption(),"      margin-bottom:",iI/* .spacing["6"] */.YK["6"],";color:",iI/* .colorTokens.text.title */.I6.text.title,";}",t&&(0,u/* .css */.AH)(Ie()),"    &:hover{background-color:",iI/* .colorTokens.background.white */.I6.background.white,";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";cursor:text;[data-action-buttons]{opacity:1;}",t&&(0,u/* .css */.AH)(It()),"}")},inputContainer:e=>/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;& textarea{",iC/* .typography.caption */.I.caption(),"      color:",iI/* .colorTokens.text.title */.I6.text.title,";height:auto;padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";resize:none;",e&&(0,u/* .css */.AH)(Ir()),"}"),clearButton:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;right:",iI/* .spacing["2"] */.YK["2"],";top:",iI/* .spacing["2"] */.YK["2"],";width:36px;height:36px;border-radius:",iI/* .borderRadius["2"] */.Vq["2"],";background:transparent;button{padding:",iI/* .spacing["10"] */.YK["10"],";}"),placeholder:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["24"] */.YK["24"],";",iC/* .typography.caption */.I.caption(),"    color:",iI/* .colorTokens.text.hints */.I6.text.hints,";display:flex;align-items:center;height:100%;"),actionButtonWrapper:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";opacity:0;transition:opacity 0.15s ease-in-out;",t&&(0,u/* .css */.AH)(In()))},answer:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["24"] */.YK["24"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.success.fill30 */.I6.background.success.fill30,";color:",iI/* .colorTokens.text.title */.I6.text.title,";transition:background 0.15s ease-in-out;&:hover{background-color:",iI/* .colorTokens.background.success.fill40 */.I6.background.success.fill40,";}"),answerLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),"    color:",iI/* .colorTokens.text.title */.I6.text.title,";"),answerParagraph:/*#__PURE__*/(0,u/* .css */.AH)("pre{",oO/* .styleUtils.overflowXAuto */.x.overflowXAuto,"}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/FormQuestionDescription.tsx
function Is(){var e=(0,eh._)(["\n      padding-inline: 0;\n      max-height: unset;\n      overflow: unset;\n    "]);Is=function t(){return e};return e}function Il(){var e=(0,eh._)(["\n      &:hover,\n      &:has([data-overlay]:focus-visible) {\n        background-color: ",";\n        color: ",";\n\n        [data-action-buttons] {\n          opacity: 1;\n        }\n      }\n    "]);Il=function t(){return e};return e}function Iu(){var e=(0,eh._)(["\n      padding-inline: 0;\n    "]);Iu=function t(){return e};return e}function Ic(){var e=(0,eh._)(["\n      opacity: 1;\n    "]);Ic=function t(){return e};return e}var Id=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var If=e=>{var{label:r,field:i,fieldState:a,disabled:o=false,loading:s,placeholder:l,helpText:u,onChange:c}=e;var d;var f=(d=i.value)!==null&&d!==void 0?d:"";var[p,h]=(0,n.useState)(false);var[v,g]=(0,n.useState)(f);var m=()=>{i.onChange(v);h(false)};var b=()=>{h(false);g(i.value||"")};var _=()=>{if(!p&&!o){h(true)}};var y=e=>{if((e.key==="Enter"||e.key===" ")&&!p){e.preventDefault();h(true)}};return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ih.editorWrapper({isEdit:p}),tabIndex:-1,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ih.container({isEdit:p,isDisabled:o}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!p&&(!Id||!f),fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ih.editorContainer,"aria-hidden":!p,// @ts-ignore
inert:!p?"":undefined,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:Id,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(_I,{field:i,fieldState:a,label:r,disabled:o,helpText:u,loading:s,readOnly:!p,onChange:c,placeholder:l,autoResize:true,maxHeight:400}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(wN,{field:i,fieldState:a,label:r,disabled:o,helpText:u,loading:s,readOnly:!p,onChange:c,placeholder:l,min_height:100,max_height:400,autoFocus:true,toolbar1:"formatselect bold italic underline | bullist numlist | blockquote | alignleft aligncenter alignright | link unlink | ".concat(Id?" codesample":""," | wp_adv"),toolbar2:"strikethrough hr wp_more forecolor pastetext removeformat charmap outdent indent undo redo wp_help fullscreen"})})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ih.placeholder,dangerouslySetInnerHTML:{__html:f||l||""},tabIndex:-1,"aria-hidden":"true"})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:p,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-action-buttons":true,css:Ih.actionButtonWrapper({isEdit:p}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:m,children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:b,disabled:f===v,children:(0,oM.__)("Ok","tutor-pro")})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!p,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{onClick:_,onKeyDown:y,"data-overlay":true,tabIndex:0,role:"button","aria-label":f?(0,oM.__)("Edit description","tutor-pro"):(0,oM.__)("Add description","tutor-pro")})})]})})};/* export default */const Ip=If;var Ih={editorWrapper:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;max-height:400px;overflow-y:auto;border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",t&&(0,u/* .css */.AH)(Is()))},container:e=>{var{isEdit:t,isDisabled:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";min-height:64px;height:100%;width:100%;inset:0;padding-inline:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";transition:background-color 0.15s ease-in-out;[data-overlay]{position:absolute;inset:0;opacity:1;cursor:pointer;&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:-2px;border-radius:",iI/* .borderRadius.card */.Vq.card,";}}& label{",iC/* .typography.caption */.I.caption(),";margin-bottom:",iI/* .spacing["6"] */.YK["6"],";color:",iI/* .colorTokens.text.title */.I6.text.title,";}",!r&&(0,u/* .css */.AH)(Il(),!t&&iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.text.subdued */.I6.text.subdued)," ",t&&(0,u/* .css */.AH)(Iu()))},editorContainer:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;width:100%;"),placeholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),"    color:",iI/* .colorTokens.text.hints */.I6.text.hints,";height:100%;inset:0;padding-block:",iI/* .spacing["8"] */.YK["8"],";overflow-x:hidden;pointer-events:none;"),actionButtonWrapper:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";opacity:0;transition:opacity 0.15s ease-in-out;",t&&(0,u/* .css */.AH)(Ic()))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/FormQuestionTitle.tsx
function Iv(){var e=(0,eh._)(["\n      min-height: 40px;\n      padding-inline: "," ",";\n      border-radius: ",";\n    "]);Iv=function t(){return e};return e}function Ig(){var e=(0,eh._)(["\n      &:hover {\n        background-color: ",";\n        color: ",";\n\n        [data-action-buttons] {\n          opacity: ",";\n        }\n      }\n    "]);Ig=function t(){return e};return e}function Im(){var e=(0,eh._)(["\n      display: block;\n      background-color: ",";\n      color: ",";\n      padding: 0;\n      cursor: default;\n    "]);Im=function t(){return e};return e}function Ib(){var e=(0,eh._)(["\n        ","\n      "]);Ib=function t(){return e};return e}function I_(){var e=(0,eh._)(["\n      ","\n      padding: "," ",";\n      border-radius: ",";\n    "]);I_=function t(){return e};return e}function Iy(){var e=(0,eh._)(["\n      opacity: 1;\n    "]);Iy=function t(){return e};return e}var Iw=e=>{var{maxLimit:r,maxHeight:i,field:a,fieldState:o,disabled:s,readOnly:l,loading:u,placeholder:c,helpText:d,onChange:f,onKeyDown:p,isHidden:h,isSecondary:v=false,removeBorder:g,dataAttribute:m,isInlineLabel:b=false,style:_,wrapperCss:y,selectOnFocus:w=false,size:x="regular",isEdit:A,onToggleEdit:E}=e;var k;var I=(k=a.value)!==null&&k!==void 0?k:"";var C=(0,n.useRef)(null);var Y=(0,iK/* .isDefined */.O9)(A);var[S,T]=(0,n.useState)(!I?true:false);var O=Y?A:S;var[D,F]=(0,n.useState)(I);var P=undefined;if(r){P={maxLimit:r,inputCharacter:I.toString().length}}var R=(0,ef._)({},(0,iK/* .isDefined */.O9)(m)&&{[m]:true});(0,n.useEffect)(()=>{if(O&&C.current){C.current.focus();F(I)}L();// eslint-disable-next-line react-hooks/exhaustive-deps
},[O]);var H=e=>{if(!Y){T(e)}E===null||E===void 0?void 0:E(e)};var M=()=>{H(false)};var N=()=>{a.onChange(D);H(false)};var L=()=>{if(C.current){var e=C.current;var t=e.offsetHeight;var r=e.scrollHeight;if(r>t){if(i&&r>i){e.style.height="".concat(i,"px");e.style.overflowY="auto"}else{e.style.height="".concat(r,"px");e.style.overflowY="hidden"}}}};return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{field:a,fieldState:o,disabled:s,readOnly:l,loading:u,helpText:d,isHidden:h,characterCount:P,isSecondary:v,removeBorder:g,isInlineLabel:b,inputStyle:_,children:e=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{role:"button",css:[IA.container({isEdit:O,isDisabled:s||false,size:x}),y],"aria-label":(0,oM.__)("Question title field","tutor-pro"),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!O,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-placeholder":true,css:IA.placeholder({size:x}),onClick:()=>!s&&H(true),onKeyDown:e=>{if(e.key==="Enter"||e.key===" "){H(true)}},children:a.value||c})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:O,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:IA.inputContainer({hasValueChanged:!!D&&a.value!==D,size:x}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("textarea",(0,ep._)((0,ef._)({},a,e,R),{className:"tutor-input-field",rows:2,ref:e=>{a.ref(e);// @ts-ignore
C.current=e;// this is not ideal but it is the only way to set ref to the input element
},value:I,placeholder:c,onChange:e=>{var{value:t}=e.target;a.onChange(t);if(f){f(t)}},onKeyDown:e=>{if(e.key==="Enter"&&(e.ctrlKey||e.metaKey)){e.preventDefault();M()}else if(e.key==="Escape"){e.preventDefault();N()}p===null||p===void 0?void 0:p(e.key)},onInput:L,onPaste:L,onFocus:e=>{if(w){e.target.select()}},autoComplete:"off"}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-action-buttons":true,css:IA.actionButtonWrapper({isEdit:O}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:O,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:IA.actionButton,variant:"text",size:"small",onClick:()=>H(true),"aria-label":(0,oM.__)("Edit question title","tutor-pro"),"data-question-title-edit-button":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",height:24,width:24})}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:a.value!==D&&a.value,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:IA.actionButton,variant:"text",size:"small",onClick:M,disabled:a.value===D,"aria-label":(0,oM.__)("Save question title","tutor-pro"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"checkMark",height:24,width:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!!I&&D,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{buttonCss:IA.actionButton,variant:"text",size:"small",onClick:N,"aria-label":(0,oM.__)("Cancel question title","tutor-pro"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"lineCross",height:24,width:24})})})]})})})]})}})};/* export default */const Ix=Iw;var IA={container:e=>{var{isEdit:t,isDisabled:r,size:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:grid;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";grid-template-columns:1fr auto;min-height:50px;padding-inline:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";padding-block:",iI/* .spacing["8"] */.YK["8"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",n==="small"&&(0,u/* .css */.AH)(Iv(),iI/* .spacing["4"] */.YK["4"],iI/* .spacing["8"] */.YK["8"],iI/* .borderRadius["4"] */.Vq["4"])," ",!r&&(0,u/* .css */.AH)(Ig(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.text.subdued */.I6.text.subdued,!r?1:0)," ",t&&(0,u/* .css */.AH)(Im(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.text.subdued */.I6.text.subdued)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-action-buttons]{opacity:1;}}")},inputContainer:e=>{var{hasValueChanged:t,size:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:flex;transition:background 0.15s ease-in-out;& textarea{",iC/* .typography.heading6 */.I.heading6(),"      color:",iI/* .colorTokens.text.primary */.I6.text.primary,";border:none;background:none;padding:0;width:100%;padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";&.tutor-input-field{padding-right:",t?iI/* .spacing["64"] */.YK["64"]:iI/* .spacing["32"] */.YK["32"],";}",r==="small"&&(0,u/* .css */.AH)(Ib(),iC/* .typography.caption */.I.caption()),"}")},placeholder:e=>{var{size:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading6 */.I.heading6(),"    color:",iI/* .colorTokens.text.hints */.I6.text.hints,";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";",t==="small"&&(0,u/* .css */.AH)(I_(),iC/* .typography.caption */.I.caption(),iI/* .spacing["4"] */.YK["4"],iI/* .spacing["8"] */.YK["8"],iI/* .borderRadius["4"] */.Vq["4"]))},actionButtonWrapper:e=>{var{isEdit:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:",t?"absolute":"static",";height:100%;right:",iI/* .spacing["4"] */.YK["4"],";top:0;display:flex;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";opacity:0;transition:opacity 0.15s ease-in-out;",t&&(0,u/* .css */.AH)(Iy()))},actionButton:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.icon.subdued */.I6.icon.subdued,";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/quizBuilderA11y.ts
/**
 * Shared accessibility helpers for quiz interaction fields in the course builder.
 *
 * @package Tutor
 * @since 4.0.0
 *//**
 * Screen-reader-only text (matches tutor-pro quiz interaction a11y styles).
 */var IE=/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;");/**
 * Focus ring for keyboard-operable quiz interaction surfaces (canvas, grid, etc.).
 */var Ik=/*#__PURE__*/(0,u/* .css */.AH)("&:focus{outline:none;}&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:2px;}");/**
 * Announce text through a polite live region.
 */var II=(e,t)=>{if(!e||typeof t!=="string"){return}var r=t.trim();if(!r){return}e.textContent="";if(typeof window.requestAnimationFrame==="function"){window.requestAnimationFrame(()=>{e.textContent=r});return}e.textContent=r};/**
 * Merge unique id references into aria-describedby.
 */var IC=(e,t)=>{if(!e||!t.length){return}var r=t.filter(e=>typeof e==="string"&&e.length>0&&document.getElementById(e));if(!r.length){return}var n=(e.getAttribute("aria-describedby")||"").split(/\s+/).filter(Boolean);var i=[];var a={};for(var o of n){if(!a[o]){a[o]=true;i.push(o)}}for(var s of r){if(!a[s]){a[s]=true;i.push(s)}}e.setAttribute("aria-describedby",i.join(" "))};/**
 * Normalize a keyboard event key (with legacy keyCode fallback).
 */var IY=e=>{if(e.key&&e.key!=="Unidentified"){return e.key}var t={37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown"};return t[e.keyCode]||""};var IS=e=>e==="ArrowLeft"||e==="ArrowRight"||e==="ArrowUp"||e==="ArrowDown";/**
 * Move an integer grid cursor by one unit using arrow keys.
 */var IT=(e,t,r)=>{var{min:n,max:i}=r;var a=e.x;var o=e.y;if(t==="ArrowLeft"){a-=1}else if(t==="ArrowRight"){a+=1}else if(t==="ArrowUp"){o+=1}else if(t==="ArrowDown"){o-=1}else{return null}a=Math.max(n,Math.min(i,a));o=Math.max(n,Math.min(i,o));return{x:a,y:o}};/**
 * Move a pixel cursor within canvas bounds using arrow keys.
 */var IO=(e,t,r,n)=>{if(!IS(t)){return null}var i=typeof(n===null||n===void 0?void 0:n.step)==="number"&&n.step>0?n.step:8;var a=typeof(n===null||n===void 0?void 0:n.largeStep)==="number"&&n.largeStep>0?n.largeStep:24;var o=(n===null||n===void 0?void 0:n.shiftKey)?a:i;var s=Math.max(0,r.width);var l=Math.max(0,r.height);var u=e.x;var c=e.y;if(t==="ArrowLeft"){u-=o}else if(t==="ArrowRight"){u+=o}else if(t==="ArrowUp"){c-=o}else if(t==="ArrowDown"){c+=o}u=Math.max(0,Math.min(s,u));c=Math.max(0,Math.min(l,c));return{x:u,y:c}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormCoordinates.tsx
/** Coordinates question field: instructor places correct answer points on the graph grid. */var ID=16;var IF=.3;var IP=420;var IR=27;var IH=.28;var IM=.85;var IN=5;var IL=2;var IK=[10,20].map(e=>({label:"".concat(e," ").concat((0,oM.__)("Unit","tutor-pro")),icon:e===10?"unit10":"unit20",value:e}));/**
 * Whether to draw a numeric label at this axis tick (every `AXIS_LABEL_STEP` units plus zero handling).
 */var Iq=e=>e===0||Math.abs(e%IL)===0;/**
 * Normalizes stored or UI axis range to supported values (10 or 20 units).
 */var IB=e=>Number(e)===20?20:10;/**
 * Rounds to the nearest integer and clamps to `[-axisRange, axisRange]`.
 */var IU=(e,t)=>{var r=-t;var n=t;var i=Math.round(e);return Math.max(r,Math.min(n,i))};/**
 * Clamps a point so both coordinates lie within the current axis range.
 */var Ij=(e,t)=>({x:IU(e.x,t),y:IU(e.y,t)});/**
 * Parses `answer_two_gap_match` JSON into up to five points (`MAX_COORDINATES`).
 * Accepts either an array of `{x,y}` or a legacy single object; invalid input yields `[]`.
 *
 * @param axisRange - When set, clamps each parsed point to the grid extent.
 */var IV=(e,t)=>{if(!e||typeof e!=="string")return[];try{var r=JSON.parse(e);if(Array.isArray(r)){var n=r.map(e=>{if(!e||typeof e!=="object")return null;var r=e;if(typeof r.x!=="number"||typeof r.y!=="number")return null;var n={x:Math.round(r.x),y:Math.round(r.y)};return typeof t==="number"?Ij(n,t):n}).filter(Boolean);return n.slice(0,IN)}if(r&&typeof r==="object"){var i=r;if(typeof i.x==="number"&&typeof i.y==="number"){var a={x:Math.round(i.x),y:Math.round(i.y)};return[typeof t==="number"?Ij(a,t):a]}}}catch(e){return[]}return[]};/**
 * Parses manual "x,y" text into a grid point; requires integers within `[-axisRange, axisRange]`.
 */var IW=(e,t)=>{var r=-t;var n=t;var i=(e!==null&&e!==void 0?e:"").trim();if(!i)return null;var a=i.split(",").map(e=>e.trim());if(a.length!==2)return null;var o=Number(a[0]);var s=Number(a[1]);if(!Number.isFinite(o)||!Number.isFinite(s))return null;if(!Number.isInteger(o)||!Number.isInteger(s))return null;if(o<r||o>n||s<r||s>n)return null;return{x:o,y:s}};/** Serializes a point for display and draft state (`"x,y"`). */var Iz=e=>"".concat(e.x,",").concat(e.y);/** i18n message shown when a stored point lies outside the current axis range. */var IG=e=>(0,oM.sprintf)((0,oM.__)("Range is from -%1$d to %2$d","tutor-pro"),e,e);/** Absolute URL for overlay marker SVGs shipped with Tutor assets. */var IQ=e=>"".concat(cS/* .tutorConfig.tutor_url */.P.tutor_url,"assets/icons/").concat(e,".svg");/**
 * Maps graph coordinates to CSS pixel position within a square logical canvas (padding inset, y-up).
 */var I$=(e,t,r,n,i)=>{var a=e-2*ID;var o=e-2*ID;var s=ID+a/2;var l=ID+o/2;var u=Math.min(a,o)/(r-t);return{x:s+n*u,y:l-i*u}};/**
 * Converts pointer position in CSS pixels to the nearest grid intersection if within snap distance.
 * Returns `null` when not close enough to a lattice point or outside the axis bounds (student quiz parity).
 */var IX=(e,t,r,n,i)=>{var a=r-2*ID;var o=r-2*ID;var s=ID+a/2;var l=ID+o/2;var u=Math.min(a,o)/(i-n);var c=(e-s)/u;var d=(l-t)/u;var f=Math.round(c);var p=Math.round(d);var h=Math.abs(c-f);var v=Math.abs(d-p);if(h<=IF&&v<=IF&&f>=n&&f<=i&&p>=n&&p<=i){return{x:f,y:p}}return null};/** True if either coordinate falls outside `[-axisRange, axisRange]`. */var IJ=(e,t)=>{var r=-t;var n=t;return e.x<r||e.x>n||e.y<r||e.y>n};/**
 * Renders the coordinates answer editor: list of points, canvas grid, axis range selector, and marker overlays.
 */var IZ=e=>{var{field:r,activeQuestionIndex:i=0,axisRangeControllerProps:a}=e;var o;var s=bo();var l=r.value;var u=Array.isArray(s===null||s===void 0?void 0:(o=s.getValues)===null||o===void 0?void 0:o.call(s,"questions"))?"questions.".concat(i,"._data_status"):"_data_status";var c;var d=s?(c=s.watch(u))!==null&&c!==void 0?c:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE;var f=IB(a===null||a===void 0?void 0:a.field.value);var p=-f;var h=f;var v=(0,n.useId)();var g="".concat(v,"-instruction");var m="".concat(v,"-live-region");var b=(0,n.useRef)(null);var _=(0,n.useRef)(null);var y=(0,n.useRef)(null);var w=(0,n.useRef)(false);var[x,A]=(0,n.useState)(IP);var[E,k]=(0,n.useState)(false);var[I,C]=(0,n.useState)(null);var[Y,S]=(0,n.useState)(()=>{var e;var t=IV((e=l===null||l===void 0?void 0:l.answer_two_gap_match)!==null&&e!==void 0?e:"");return t.length?t:[{x:0,y:0}]});var[T,O]=(0,n.useState)(()=>Y.map(Iz));var[D,F]=(0,n.useState)(0);// Keep local editable state in sync when the persisted answer payload changes externally
// (e.g. question switch/reset), while preserving a valid active index.
(0,n.useEffect)(()=>{var e;var t=IV((e=l===null||l===void 0?void 0:l.answer_two_gap_match)!==null&&e!==void 0?e:"");var r=t.length?t:[{x:0,y:0}];S(r);O(r.map(Iz));F(e=>Math.max(0,Math.min(r.length-1,e)))},[l===null||l===void 0?void 0:l.answer_two_gap_match]);var P=(0,n.useCallback)(e=>{r.onChange(e)},[r]);/** Normalizes coordinates, syncs drafts/active index, and persists `answer_two_gap_match` on the option. */var R=(0,n.useCallback)(e=>{if(!l)return;var t=(e.length?e:[{x:0,y:0}]).slice(0,IN).map(e=>Ij(e,f));S(t);O(t.map(Iz));F(e=>Math.max(0,Math.min(t.length-1,e)));P((0,ep._)((0,ef._)({},l,kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:JSON.stringify(t),is_saved:true}))},[f,l,P]);/** Draws axes, grid lines, and numeric tick labels on the backing canvas. */var H=(0,n.useCallback)((e,t,r)=>{var n=t-2*ID;var i=r-2*ID;var a=ID+n/2;var o=ID+i/2;var s=Math.min(n,i)/(h-p);var l=(e,t)=>({x:a+e*s,y:o-t*s});e.clearRect(0,0,t,r);var u=l(p,0).x;var c=l(h,0).x;var d=l(0,h).y;var f=l(0,p).y;e.strokeStyle="#cecfd2";e.lineWidth=.5;for(var v=p;v<=h;v++){if(v===0)continue;var g=l(v,0);e.beginPath();e.moveTo(g.x,d);e.lineTo(g.x,f);e.stroke();var m=l(0,v);e.beginPath();e.moveTo(u,m.y);e.lineTo(c,m.y);e.stroke()}e.strokeStyle="#0c111d";e.lineWidth=1.5;e.beginPath();e.moveTo(u,o);e.lineTo(c,o);e.stroke();e.beginPath();e.moveTo(a,d);e.lineTo(a,f);e.stroke();e.fillStyle=iI/* .colorTokens.text.subdued */.I6.text.subdued;e.font="11px Arial";e.textAlign="center";e.textBaseline="top";for(var b=p;b<=h;b++){if(b===0||!Iq(b))continue;var _=l(b,0);e.fillText(String(b),_.x,o+5)}e.textAlign="right";e.textBaseline="middle";for(var y=p;y<=h;y++){if(y===0||!Iq(y))continue;var w=l(0,y);e.fillText(String(y),a-5,w.y)}e.textAlign="right";e.textBaseline="top";e.fillText("0",a-5,o+5)},[h,p]);// Measure the responsive square canvas container and subscribe to size changes so marker/layout math
// always uses the current rendered width; cleanup detaches observers/listeners and pending RAF.
(0,n.useEffect)(()=>{var e=y.current;if(!e){return}var t=()=>{A(Math.max(1,e.getBoundingClientRect().width||IP))};t();if(typeof ResizeObserver==="undefined"){window.addEventListener("resize",t);return()=>{window.removeEventListener("resize",t);if(K.current!==null){cancelAnimationFrame(K.current)}}}var r=new ResizeObserver(t);r.observe(e);return()=>{r.disconnect();if(K.current!==null){cancelAnimationFrame(K.current)}}},[]);// Redraw the canvas grid when either the logical canvas size or axis range math changes.
// Canvas pixels are imperative state, so this rendering side effect must run after React commits.
(0,n.useEffect)(()=>{var e=b.current;if(!e)return;var t=e.getContext("2d");if(!t)return;var r=x;var n=window.devicePixelRatio||1;var i=Math.max(1,Math.round(r*n));var a=Math.max(1,Math.round(r*n));if(e.width!==i||e.height!==a){e.width=i;e.height=a}e.style.width="".concat(r,"px");e.style.height="".concat(r,"px");var o=e.width/r;var s=e.height/r;t.setTransform(o,0,0,s,0,0);H(t,r,r)},[H,x]);var M=(0,n.useRef)(null);var N=(0,n.useRef)(0);var L=(0,n.useRef)(IM);var K=(0,n.useRef)(null);var[,q]=(0,n.useState)(0);/**
   * Eases hover marker opacity and scale toward the pointer target each frame (`HOVER_ALPHA_LERP`).
   */var B=(0,n.useCallback)(()=>{K.current=null;var e=M.current?1:0;var t=M.current?1:IM;var r=N.current;var n=L.current;r+=(e-r)*IH;n+=(t-n)*IH;if(Math.abs(e-r)<.01){r=e}if(Math.abs(t-n)<.01){n=t}N.current=r;L.current=n;q(e=>e+1);if(r!==e||n!==t){K.current=requestAnimationFrame(B)}},[]);/** Schedules one animation frame for hover easing if not already queued. */var U=(0,n.useCallback)(()=>{if(K.current===null){K.current=requestAnimationFrame(B)}},[B]);/** Clears eased hover preview state and cancels any pending hover animation frame. */var j=(0,n.useCallback)(()=>{M.current=null;N.current=0;L.current=IM;if(K.current!==null){cancelAnimationFrame(K.current);K.current=null}q(e=>e+1)},[]);/** Updates eased hover preview to the grid cell under the cursor, or clears it when not snapped. */var V=(0,n.useCallback)(e=>{var t=b.current;if(!t){return}var r=t.getBoundingClientRect();var n=Math.max(1,r.width||IP);var i=e.clientX-r.left;var a=e.clientY-r.top;var o=IX(i,a,n,p,h);if(!o){if(M.current!==null||N.current>.01){j()}return}var s=M.current;if((s===null||s===void 0?void 0:s.x)===o.x&&(s===null||s===void 0?void 0:s.y)===o.y){return}M.current=o;if(!s){N.current=0;L.current=IM}U()},[j,h,p,U]);/** Hides hover preview when the pointer exits the canvas. */var W=(0,n.useCallback)(()=>{if(M.current!==null||N.current>.01){j()}},[j]);var z=(0,n.useCallback)(e=>{II(_.current,e)},[]);/** Apply a grid point to the active coordinate (click or keyboard Enter). */var G=(0,n.useCallback)(e=>{if(!l){return}var t=Y.findIndex(t=>t.x===e.x&&t.y===e.y);if(t!==-1){F(t);z((0,oM.sprintf)((0,oM.__)("Coordinate (%1$d, %2$d) selected.","tutor-pro"),e.x,e.y));return}var r=Y.slice();r[D]={x:e.x,y:e.y};R(r);z((0,oM.sprintf)((0,oM.__)("Coordinate set to (%1$d, %2$d).","tutor-pro"),e.x,e.y))},[D,z,R,Y,l]);/** Sets the active coordinate slot to the clicked grid intersection (or focuses an existing match). */var Q=(0,n.useCallback)(e=>{var t=b.current;if(!t||!l)return;var r=t.getBoundingClientRect();var n=Math.max(1,r.width||IP);var i=e.clientX-r.left;var a=e.clientY-r.top;var o=IX(i,a,n,p,h);if(!o){return}G(o)},[G,h,p,l]);var $=(0,n.useCallback)(()=>{w.current=true},[]);var X=(0,n.useCallback)(()=>{IC(b.current,[g]);if(w.current){w.current=false;return}j();k(true);C(e=>{var t;return(t=e!==null&&e!==void 0?e:Y[D])!==null&&t!==void 0?t:{x:0,y:0}})},[D,j,Y,g]);var J=(0,n.useCallback)(()=>{k(false);C(null)},[]);var Z=(0,n.useCallback)(e=>{var t=IY(e);if(t==="Enter"){e.preventDefault();var r;var n=(r=I!==null&&I!==void 0?I:Y[D])!==null&&r!==void 0?r:{x:0,y:0};if(!E){k(true);C(n)}G(n);return}if(t==="Backspace"||t==="Delete"){e.preventDefault();if(Y.length<=1){z((0,oM.__)("At least one coordinate is required.","tutor-pro"));return}var i=Y.slice();i.splice(D,1);R(i);z((0,oM.__)("Coordinate removed.","tutor-pro"));return}if(!IS(t)){return}e.preventDefault();var a;var o=(a=I!==null&&I!==void 0?I:Y[D])!==null&&a!==void 0?a:{x:0,y:0};if(!E){k(true)}var s=IT(o,t,{min:p,max:h});if(!s){return}C(s);z((0,oM.sprintf)((0,oM.__)("Grid position (%1$d, %2$d). Press Enter to set the active coordinate.","tutor-pro"),s.x,s.y))},[D,z,G,R,Y,E,I,h,p]);/**
   * Applies a new axis range via react-hook-form so the question stays dirty until explicitly saved
   * (including toggling 10 ↔ 20) and quiz data status reflects an update when a form context exists.
   */var ee=(0,n.useCallback)(e=>{var t=IB(Number(e.value));if(s&&(a===null||a===void 0?void 0:a.field.name)){s.setValue(a.field.name,t,{shouldDirty:true})}else{a===null||a===void 0?void 0:a.field.onChange(t)}if(!s){return}var r=kZ(d,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE);if(r){s.setValue(u,r,{shouldDirty:true})}},[d,a,s,u]);if(!l){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:I1.wrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.card,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:I1.answerHeader,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:I1.answerHeaderTitle,children:(0,oM.__)("Coordinates","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:I1.list,children:Y.map((e,r)=>{var n=r===D;var i=Y.length>=IN;var a=Y.length<=1;var o=IJ(e,f);var s;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.listRow({isActive:n}),onClick:()=>F(r),onKeyDown:e=>{if(e.key==="Enter"||e.key===" "){e.preventDefault();F(r);var t;C((t=Y[r])!==null&&t!==void 0?t:{x:0,y:0})}},role:"button",tabIndex:0,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.rowTop,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:I1.rowIndex,children:r+1}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.rowActions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Duplicate","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();if(i)return;var t=Y.slice();t.splice(r+1,0,(0,ef._)({},Y[r]));R(t);F(r+1)},disabled:i,"aria-label":(0,oM.__)("Copy coordinate","tutor-pro"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Delete","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();if(a)return;var t=Y.slice();t.splice(r,1);R(t);F(e=>{if(e>r)return e-1;if(e===r)return Math.max(0,r-1);return e})},disabled:a,"aria-label":(0,oM.__)("Delete coordinate","tutor-pro"),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete",width:24,height:24})})})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{value:(s=T[r])!==null&&s!==void 0?s:Iz(e),size:"small",inputCss:I1.rowInput,onChange:e=>{var t=T.slice();t[r]=e;O(t)},onBlur:e=>{var t=IW(e!==null&&e!==void 0?e:"",f);if(!t){O(e=>{var t=e.slice();var n;t[r]=Iz((n=Y[r])!==null&&n!==void 0?n:{x:0,y:0});return t});return}var n=Y.slice();n[r]=t;R(n)},onKeyDown:(e,t)=>{if(e!=="Enter")return;t.currentTarget.blur()},placeholder:(0,oM.__)("x,y","tutor-pro")}),o&&/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:I1.rowError,children:IG(f)})]},"coord-".concat(r))})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",width:18,height:18}),buttonCss:I1.addButton,onClick:()=>{if(Y.length>=IN)return;var e=Y.concat([{x:0,y:0}]);R(e);F(e.length-1)},disabled:Y.length>=IN,children:(0,oM.__)("Add Coordinates","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{id:g,css:IE,children:(0,oM.__)("Use arrow keys to move the active grid point, Enter to set it, and Backspace or Delete to remove the active coordinate.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{id:m,ref:_,css:IE,"aria-live":"polite","aria-atomic":"true",role:"status"}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.canvasWrap,ref:y,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("canvas",{ref:b,width:IP,height:IP,css:[I1.canvas,Ik],tabIndex:0,role:"application","aria-describedby":g,onPointerDown:$,onClick:Q,onFocus:X,onBlur:J,onKeyDown:Z,onMouseMove:V,onMouseLeave:W,"aria-label":(0,oM.__)("Coordinate grid: click or use arrow keys and Enter to set the correct answer point.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:I1.markerLayer,"aria-hidden":true,children:[Y.map((e,r)=>{var n=I$(x,p,h,e.x,e.y);var i=r===D;var a=IR/x*100;var o=IQ("graph-marker-selected");return/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:o,alt:"",css:I1.markerImg,style:{left:"".concat(n.x/x*100,"%"),top:"".concat(n.y/x*100,"%"),width:"".concat(a,"%"),height:"".concat(a,"%"),objectFit:"contain",transform:"translate(-50%, -50%) scale(".concat(i?1.05:1,")")}},"coord-marker-".concat(r,"-").concat(e.x,"-").concat(e.y))}),E&&I?(()=>{var e=I$(x,p,h,I.x,I.y);var r=IR/x*100;return/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:IQ("graph-marker-hover"),alt:"",css:I1.markerImg,style:{left:"".concat(e.x/x*100,"%"),top:"".concat(e.y/x*100,"%"),width:"".concat(r,"%"),height:"".concat(r,"%"),objectFit:"contain",transform:"translate(-50%, -50%)"}},"coord-grid-keyboard-preview")})():null,!E&&M.current!==null&&N.current>.01?(()=>{var e=M.current;if(!e){return null}var r=I$(x,p,h,e.x,e.y);var n=IR/x*100;return/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:IQ("graph-marker-hover"),alt:"",css:I1.markerImg,style:{left:"".concat(r.x/x*100,"%"),top:"".concat(r.y/x*100,"%"),width:"".concat(n,"%"),height:"".concat(n,"%"),objectFit:"contain",opacity:N.current,transform:"translate(-50%, -50%) scale(".concat(Math.max(.8,L.current),")")}},"coord-grid-hover-preview")})():null]})]}),a&&/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},a),{leftIconPadding:36,size:"small",options:IK,onChange:ee}))]})})};/* export default */const I0=IZ;var I1={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),card:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";padding:",iI/* .spacing["20"] */.YK["20"],";"),answerHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:space-between;gap:",iI/* .spacing["12"] */.YK["12"],";"),answerHeaderTitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";"),hint:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";margin:0;"),list:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";"),listRow:e=>{var{isActive:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";padding:",iI/* .spacing["12"] */.YK["12"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";border:",t?"1px solid ".concat(iI/* .colorTokens.stroke.brand */.I6.stroke.brand):"none",";background:",iI/* .colorTokens.background.white */.I6.background.white,";cursor:pointer;&:focus-visible{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:0;}")},rowTop:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:space-between;gap:",iI/* .spacing["8"] */.YK["8"],";width:100%;"),rowIndex:/*#__PURE__*/(0,u/* .css */.AH)("width:26px;height:26px;border-radius:6px;",oO/* .styleUtils.flexCenter */.x.flexCenter(),";",iC/* .typography.caption */.I.caption("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";background:",iI/* .colorTokens.background.hover */.I6.background.hover,";flex-shrink:0;"),rowInput:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";width:100%;padding:",iI/* .spacing["10"] */.YK["10"]," ",iI/* .spacing["12"] */.YK["12"],";border-radius:8px;color:",iI/* .colorTokens.text.primary */.I6.text.primary,";background:",iI/* .colorTokens.background.white */.I6.background.white,";&:focus{outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:1px;}"),rowActions:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;flex-shrink:0;gap:",iI/* .spacing["8"] */.YK["8"],";"),rowError:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.error */.I6.text.error,";margin:0;"),addButton:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small("medium"),";width:fit-content;border:none;color:",iI/* .colorTokens.text.brand */.I6.text.brand,";&:focus{border:none;box-shadow:none;}&:focus-visible{border:none;outline:2px solid ",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";outline-offset:2px;box-shadow:none;}&:disabled{opacity:0.5;cursor:not-allowed;}"),canvasWrap:/*#__PURE__*/(0,u/* .css */.AH)("display:block;position:relative;width:100%;aspect-ratio:1 / 1;overflow:hidden;background-color:",iI/* .colorTokens.background.white */.I6.background.white,";border-radius:",iI/* .borderRadius.card */.Vq.card,";"),markerLayer:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;inset:0;pointer-events:none;"),markerImg:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;display:block;object-fit:contain;object-position:center;transform-origin:center center;"),canvas:/*#__PURE__*/(0,u/* .css */.AH)("display:block;width:100%;height:100%;cursor:crosshair;border:1px solid #ececed;border-radius:",iI/* .borderRadius.card */.Vq.card,";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/context/QuestionModalContext.tsx
var I2=/*#__PURE__*/(0,n.createContext)(undefined);var I6=e=>{var{children:r}=e;var[i,a]=(0,n.useState)(null);var o={validationError:i,setValidationError:a};return/*#__PURE__*/(0,t/* .jsx */.Y)(I2.Provider,{value:o,children:typeof r==="function"?r({setValidationError:a}):r})};var I4=()=>{var e=(0,n.useContext)(I2);if(e===undefined){throw new Error("useQuestionModal must be used within a QuestionModalProvider")}return e};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/Coordinates.tsx
var I5=()=>{var e=fN();var{validationError:r,setValidationError:n}=I4();var i=e.watch("question_id");var a="question_answers";var o="question_settings.coordinates_axis_range";var{fields:s}=pW({control:e.control,name:a});var l=fG({control:e.control,name:o,defaultValue:10});if(s.length===0){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:I8.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_answers.0",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(I0,oR(oF({},e),{questionId:i,axisRangeControllerProps:l,validationError:r,setValidationError:n}))},JSON.stringify(s[0]))})};/* export default */const I3=I5;var I8={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ./assets/src/js/quiz-type/shared/draw-on-image.js
/**
 * Shared "Draw on Image" core – canvas overlay, pointer events, base64 mask export.
 *
 * Used by draw-image-question.js (student quiz) and can be reused by other
 * quiz-type UIs. Exports init and constants; draw-image-question bundles this
 * and attaches window.TutorCore.drawOnImage for external use.
 *
 * @package TutorPro
 * @since 4.0.0
 */var I9=1;var I7="rgba(0, 0, 255, 0.9)";/**
 * Initialize draw-on-image for one image + canvas (and optional hidden input).
 * Returns a destroy function to remove listeners (for React cleanup).
 *
 * @param {Object}   options
 * @param {HTMLImageElement}  options.image       Background image element.
 * @param {HTMLCanvasElement} options.canvas       Overlay canvas element.
 * @param {HTMLInputElement}  [options.hiddenInput] Optional hidden input to write base64 PNG into.
 * @param {number}            [options.brushSize=1] Brush size in pixels.
 * @param {string}            [options.strokeStyle] Stroke/fill style (default blue).
 * @param {function(string)} [options.onMaskChange] Callback(base64OrEmpty) when mask changes.
 * @param {string}            [options.initialMaskUrl] Optional data URL or URL of mask to draw on init.
 * @param {HTMLElement}       [options.interactionRoot] Container (e.g. image wrapper) for hover-to-draw; see activateOnHover.
 * @param {boolean}           [options.activateOnHover] When true and the device supports hover, the canvas is inactive until pointer enters interactionRoot (same pattern as Pin on Image learning area).
 * @param {boolean}           [options.clearOnDrawStart] When true, each new draw gesture clears any previous mask first.
 * @param {function():boolean} [options.canStartDrawing] Optional guard called before drawing starts; return false to block drawing.
 * @param {function()}         [options.onDrawStart] Optional callback fired when a drawing gesture starts.
 * @returns {{ destroy: function, clear: function }} Object with destroy() to remove listeners and clear() to reset mask.
 */function Ce(e){if(!e||!e.image||!e.canvas){return{destroy:function e(){}}}var t=e.image;var r=e.canvas;var n=e.hiddenInput||null;var i=e.interactionRoot||null;var a=e.activateOnHover===true;var o=typeof e.brushSize==="number"?e.brushSize:I9;var s=typeof e.strokeStyle==="string"?e.strokeStyle:I7;var l=typeof e.onMaskChange==="function"?e.onMaskChange:null;var u=e.clearOnDrawStart===true;var c=typeof e.canStartDrawing==="function"?e.canStartDrawing:null;var d=typeof e.onDrawStart==="function"?e.onDrawStart:null;var f={isDrawing:false,activePointerId:null,brushSize:o,lastX:0,lastY:0,pathStarted:false,hasMoved:false,lastMaskValue:""};var p=a&&i&&typeof window!=="undefined"&&window.matchMedia&&window.matchMedia("(hover: hover)").matches;var h=false;var v=null;var g=null;function m(){r.style.touchAction="none";if(!p){r.style.pointerEvents="auto";r.style.cursor="crosshair";return}var e=h||f.isDrawing;r.style.pointerEvents=e?"auto":"none";r.style.cursor=e?"crosshair":"default"}function b(){if(!t||!t.complete){return}var e=t.getBoundingClientRect();var n=e.width||t.naturalWidth;var i=e.height||t.naturalHeight;if(!n||!i){return}r.width=n;r.height=i;r.style.width=n+"px";r.style.height=i+"px";var a=r.getContext("2d");if(!a){return}a.clearRect(0,0,n,i);a.strokeStyle=s;a.fillStyle=s;a.lineCap="round";a.lineJoin="round";a.lineWidth=f.brushSize;// Keep existing mask aligned after responsive resizes (common on mobile).
if(f.lastMaskValue){var o=new Image;o.crossOrigin="anonymous";o.onload=function(){var e=r.getContext("2d");if(e&&r.width&&r.height){e.drawImage(o,0,0,r.width,r.height)}};o.src=f.lastMaskValue}}function _(){if(!r||!r.width||!r.height){return""}var e=document.createElement("canvas");e.width=r.width;e.height=r.height;return r.toDataURL("image/png")!==e.toDataURL("image/png")?r.toDataURL("image/png"):""}function y(){var e=_();f.lastMaskValue=e;if(n){n.value=e;if(typeof Event==="function"){// Some form libraries/watchers listen to `input`, not `change`.
// Also set `composed: true` to avoid event encapsulation issues.
n.dispatchEvent(new Event("input",{bubbles:true,composed:true}));n.dispatchEvent(new Event("change",{bubbles:true,composed:true}))}}if(l){l(e)}}function w(){var e=r.getContext("2d");if(!e||!r.width||!r.height){if(n){n.value=""}f.lastMaskValue="";if(l){l("")}return}e.clearRect(0,0,r.width,r.height);f.lastMaskValue="";y()}function x(e){e.strokeStyle=s;e.fillStyle=s;e.lineCap="round";e.lineJoin="round";e.lineWidth=f.brushSize}function A(e,n){if(!t||!t.complete){return false}if(f.isDrawing){return false}if(c&&!c()){return false}var i=r.getContext("2d");if(!i){return false}if(u&&r.width&&r.height){// Match course-builder behavior: each new lasso replaces previous one.
i.clearRect(0,0,r.width,r.height)}f.isDrawing=true;f.lastX=e;f.lastY=n;f.pathStarted=true;f.hasMoved=false;x(i);i.beginPath();i.moveTo(e,n);if(d){d()}return true}function E(e,t){if(!f.isDrawing){return false}var n=r.getContext("2d");if(!n){return false}x(n);if(!f.pathStarted){n.beginPath();n.moveTo(e,t);f.pathStarted=true}else{n.lineTo(e,t);// Draw a thin preview stroke so users can see the lasso while tracing.
n.stroke()}f.hasMoved=true;f.lastX=e;f.lastY=t;return true}function k(){if(!f.isDrawing){return false}f.isDrawing=false;f.activePointerId=null;var e=r.getContext("2d");if(!e){f.pathStarted=false;return false}if(f.pathStarted){x(e);if(f.hasMoved){e.closePath();e.fill()}else{// Single click/tap: paint a dot.
e.beginPath();e.arc(f.lastX,f.lastY,f.brushSize/2,0,Math.PI*2);e.fill()}}f.pathStarted=false;y();m();return true}function I(){if(!f.isDrawing){return false}f.isDrawing=false;f.pathStarted=false;f.hasMoved=false;f.activePointerId=null;b();m();return true}function C(e){if(!r.width||!r.height){b()}var t=r.getContext("2d");if(!t||!r.width||!r.height){return}t.clearRect(0,0,r.width,r.height);var n=function n(){if(typeof e==="function"){e(t,r.width,r.height)}};if(f.lastMaskValue){var i=new Image;i.crossOrigin="anonymous";i.onload=function(){t.drawImage(i,0,0,r.width,r.height);n()};i.src=f.lastMaskValue;return}n()}function Y(){C(null)}function S(e){var t=r.getBoundingClientRect();var n=r.width/t.width;var i=r.height/t.height;var a=e.clientX;var o=e.clientY;return{x:Math.max(0,Math.min(r.width,(a-t.left)*n)),y:Math.max(0,Math.min(r.height,(o-t.top)*i))}}function T(e){if(e.pointerType==="mouse"&&e.button!==0){return}if(!t||!t.complete){return}e.preventDefault();var n=S(e);if(!A(n.x,n.y)){return}f.activePointerId=typeof e.pointerId==="number"?e.pointerId:null;if(typeof r.setPointerCapture==="function"&&f.activePointerId!==null){try{r.setPointerCapture(f.activePointerId)}catch(e){}}}function O(e){if(!f.isDrawing){return}if(f.activePointerId!==null&&e.pointerId!==f.activePointerId){return}e.preventDefault();var t=S(e);E(t.x,t.y)}function D(e){if(!f.isDrawing){return}if(f.activePointerId!==null&&e.pointerId!==f.activePointerId){return}e.preventDefault();if(f.activePointerId!==null&&typeof r.hasPointerCapture==="function"&&r.hasPointerCapture(f.activePointerId)&&typeof r.releasePointerCapture==="function"){try{r.releasePointerCapture(f.activePointerId)}catch(e){}}k()}var F=function e(){b()};function P(){r.addEventListener("pointerdown",T);r.addEventListener("pointermove",O);r.addEventListener("pointerup",D);r.addEventListener("pointercancel",D);r.addEventListener("pointerleave",D)}function R(){r.removeEventListener("pointerdown",T);r.removeEventListener("pointermove",O);r.removeEventListener("pointerup",D);r.removeEventListener("pointercancel",D);r.removeEventListener("pointerleave",D)}function H(){if(t&&t.complete){b()}if(t){t.addEventListener("load",b)}if(p){var n=function e(){h=true;m()};var a=function e(){h=false;m()};i.addEventListener("pointerenter",n);i.addEventListener("pointerleave",a);v=function e(){i.removeEventListener("pointerenter",n);i.removeEventListener("pointerleave",a)}}m();P();window.addEventListener("resize",F);g=new ResizeObserver(function(){b()});if(i){g.observe(i)}g.observe(t);// Optional: draw initial mask (e.g. saved instructor mask in course builder).
if(e.initialMaskUrl&&typeof e.initialMaskUrl==="string"&&e.initialMaskUrl.trim()!==""){f.lastMaskValue=e.initialMaskUrl;var o=new Image;o.crossOrigin="anonymous";o.onload=function(){var e=r.getContext("2d");if(e&&r.width&&r.height){e.drawImage(o,0,0,r.width,r.height);y()}};o.onerror=function(){};o.src=e.initialMaskUrl}}H();return{clear:function e(){w()},isDrawing:function e(){return f.isDrawing},startStrokeAt:function e(e,t){return A(e,t)},continueStrokeAt:function e(e,t){return E(e,t)},finishStroke:function e(){return k()},cancelStroke:function e(){return I()},renderWithOverlay:function e(e){C(e)},restoreSavedMask:function e(){Y()},syncCanvas:function e(){b()},destroy:function e(){R();window.removeEventListener("resize",F);if(g){g.disconnect();g=null}if(v){v();v=null}if(t){t.removeEventListener("load",b)}}}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/hooks/useDrawOnImageField.ts
/**
 * Draw-on-image field interaction for the course builder (parity with learning-area draw-image-question.js).
 *
 * @package Tutor
 * @since 4.0.0
 */var Ct="rgba(0, 0, 255, 0.65)";var Cr=e=>{var{imageRef:t,canvasRef:r,interactionRootRef:i,liveRegionRef:a,instructionId:o,liveRegionId:s,imageUrl:l,initialMaskUrl:u,strokeStyle:c,onMaskChange:d,onDrawStart:f}=e;var p=(0,n.useRef)(null);var h=(0,n.useRef)({x:0,y:0});var v=(0,n.useRef)(false);var g=(0,n.useRef)(false);var m=(0,n.useRef)();var b=(0,n.useRef)(null);var _=(0,n.useRef)(d);var y=(0,n.useRef)(f);var w=(0,n.useRef)(u);_.current=d;y.current=f;w.current=u;var x=(0,n.useCallback)(e=>{II(a.current,e)},[a]);var A=(0,n.useCallback)(()=>{var e=r.current;return{width:(e===null||e===void 0?void 0:e.width)||0,height:(e===null||e===void 0?void 0:e.height)||0}},[r]);var E=(0,n.useCallback)(()=>{var e=A();h.current={x:e.width/2,y:e.height/2}},[A]);var k=(0,n.useCallback)(()=>{var e=p.current;if(!e||!v.current||e.isDrawing()){return}e.renderWithOverlay(e=>{e.fillStyle=Ct;e.beginPath();e.arc(h.current.x,h.current.y,5,0,Math.PI*2);e.fill()})},[]);var I=(0,n.useCallback)(()=>{if(b.current!==null){cancelAnimationFrame(b.current)}b.current=requestAnimationFrame(()=>{b.current=null;k()})},[k]);var C=(0,n.useCallback)(()=>{var e=p.current;if(!e){return}if(e.isDrawing()){e.finishStroke();v.current=true;I();x((0,oM.__)("Selection completed.","tutor-pro"));return}if(e.startStrokeAt(h.current.x,h.current.y)){var t;(t=y.current)===null||t===void 0?void 0:t.call(y);x((0,oM.__)("Drawing started. Use arrow keys to trace, then Space or Enter to finish.","tutor-pro"))}},[x,I]);(0,n.useEffect)(()=>{var e=t.current;var n=r.current;var a=i.current;if(!l||!e||!n){return}// Re-init only when the background image changes — not when the saved mask updates after each stroke.
if(p.current&&m.current===l){return}m.current=l;if(p.current){p.current.destroy();p.current=null}var u=Ce({image:e,canvas:n,brushSize:I9,strokeStyle:c,interactionRoot:a||n.parentElement||undefined,// Builder: keep canvas interactive (avoid pointer-events hover toggling flicker).
activateOnHover:false,clearOnDrawStart:true,initialMaskUrl:w.current||undefined,onDrawStart:()=>{var e;v.current=false;(e=y.current)===null||e===void 0?void 0:e.call(y)},onMaskChange:e=>{_.current(e)}});p.current=u;var d=()=>{var e;g.current=true;v.current=false;(e=y.current)===null||e===void 0?void 0:e.call(y)};var f=()=>{IC(n,[o,s]);if(g.current){g.current=false;return}u.syncCanvas();E();v.current=true;I()};var k=()=>{v.current=false;if(u.isDrawing()){u.finishStroke()}};var Y=e=>{var t=IY(e);if(t===" "||t==="Spacebar"||t==="Enter"){e.preventDefault();C();return}if(t==="Escape"){if(!u.isDrawing()){return}e.preventDefault();u.cancelStroke();v.current=true;I();x((0,oM.__)("Drawing cancelled.","tutor-pro"));return}if(t==="Backspace"||t==="Delete"){if(!u.isDrawing()){x((0,oM.__)("Nothing to cancel.","tutor-pro"));return}e.preventDefault();u.cancelStroke();v.current=true;I();x((0,oM.__)("Drawing cancelled.","tutor-pro"));return}if(t==="c"||t==="C"){e.preventDefault();if(u.isDrawing()){u.cancelStroke()}u.clear();v.current=true;I();x((0,oM.__)("Selection cleared.","tutor-pro"));return}if(!IS(t)){return}e.preventDefault();var r=IO(h.current,t,A(),{shiftKey:e.shiftKey});if(!r){return}h.current=r;if(u.isDrawing()){u.continueStrokeAt(h.current.x,h.current.y);return}v.current=true;I()};n.addEventListener("mousedown",d);n.addEventListener("focus",f);n.addEventListener("blur",k);n.addEventListener("keydown",Y);return()=>{if(b.current!==null){cancelAnimationFrame(b.current);b.current=null}n.removeEventListener("mousedown",d);n.removeEventListener("focus",f);n.removeEventListener("blur",k);n.removeEventListener("keydown",Y);u.destroy();p.current=null;if(m.current===l){m.current=undefined}}},[x,A,l,t,r,o,i,E,s,I,c,C]);var Y=(0,n.useCallback)(()=>{var e;(e=p.current)===null||e===void 0?void 0:e.clear();v.current=true;I()},[I]);return{clearMask:Y,announceStatus:x}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormDrawImage.tsx
/** Instructor mask stroke/fill — same red as legacy builder lasso. */var Cn="rgba(220, 53, 69, 0.95)";var Ci=[40,50,60,70,80,90,100].map(e=>({label:"".concat(e,"%"),value:e}));var Ca=e=>{var{field:r,precisionControllerProps:i,activeQuestionIndex:a=0}=e;var o;var s=bo();var l=r.value;var u=Array.isArray(s===null||s===void 0?void 0:(o=s.getValues)===null||o===void 0?void 0:o.call(s,"questions"))?"questions.".concat(a,"._data_status"):"_data_status";var c;var d=s?(c=s.watch(u))!==null&&c!==void 0?c:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE;var f=(0,n.useId)();var p="".concat(f,"-instruction");var h="".concat(f,"-live-region");var[v,g]=(0,n.useState)(false);var m=(0,n.useRef)(null);var b=(0,n.useRef)(null);var _=(0,n.useRef)(null);var y=(0,n.useRef)(null);var w=(0,n.useCallback)(e=>{r.onChange(e)},[r]);var x=(0,n.useCallback)(e=>{if(!l){return}w((0,ep._)((0,ef._)({},l,kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:e,is_saved:true}));g(Boolean(e))},[l,w]);var{clearMask:A,announceStatus:E}=Cr({imageRef:m,canvasRef:b,interactionRootRef:_,liveRegionRef:y,instructionId:p,liveRegionId:h,imageUrl:l===null||l===void 0?void 0:l.image_url,initialMaskUrl:(l===null||l===void 0?void 0:l.answer_two_gap_match)||undefined,strokeStyle:Cn,onMaskChange:x,onDrawStart:()=>g(true)});var{openMediaLibrary:k,resetFiles:I}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)&&l){var{id:t,url:r}=e;var n=(0,ep._)((0,ef._)({},l,kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:r,answer_two_gap_match:""});w(n);g(false)}},initialFiles:(l===null||l===void 0?void 0:l.image_id)?{id:Number(l.image_id),url:l.image_url||"",title:l.image_url||""}:null});var C=()=>{if(!l){return}A();E((0,oM.__)("Correct area cleared.","tutor-pro"))};var Y=()=>{if(!l){return}var e=(0,ep._)((0,ef._)({},l,kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(l._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:undefined,image_url:""});w(e);I();g(false);A()};if(!l){return null}var S=v||Boolean(l===null||l===void 0?void 0:l.answer_two_gap_match);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cs.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cs.card,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cs.imageInputWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:(l===null||l===void 0?void 0:l.image_id)?{id:Number(l.image_id),url:l.image_url||"",title:l.image_url||""}:null,buttonText:(0,oM.__)("Upload Image","tutor-pro"),infoText:(0,oM.__)("Upload the base image students will draw on.","tutor-pro"),uploadHandler:k,clearHandler:Y,emptyImageCss:Cs.imageInputEmpty,previewImageCss:Cs.imageInputPreview})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l===null||l===void 0?void 0:l.image_url,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cs.card,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cs.answerHeader,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{css:Cs.answerHeaderTitle,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:Cs.headerIcon,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:20,height:20,"aria-hidden":true})}),(0,oM.__)("Mark the correct area","tutor-pro")]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:S,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cs.actionsRow,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{type:"button",variant:"secondary",size:"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"eraser",style:Cs.clearButtonIcon,width:18,height:18}),onClick:C,children:(0,oM.__)("Clear","tutor-pro")})})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{id:p,css:IE,children:(0,oM.__)("Use arrow keys to move the drawing pointer. Press Space or Enter to start a freehand stroke, trace with arrow keys, then press Space or Enter again to finish and fill the selection. Escape cancels an in-progress stroke. C clears the saved selection.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{id:h,ref:y,css:IE,"aria-live":"polite","aria-atomic":"true",role:"status"}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cs.canvasOuter,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cs.canvasInner,ref:_,className:"tutor-draw-image-wrapper",children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{ref:m,src:l===null||l===void 0?void 0:l.image_url,alt:(0,oM.__)("Background image for marking correct area","tutor-pro"),css:[Cs.image,Cs.answerImage]}),/*#__PURE__*/(0,t/* .jsx */.Y)("canvas",{ref:b,tabIndex:0,role:"application","aria-describedby":"".concat(p," ").concat(h),css:[Cs.canvas,Ik],"aria-label":(0,oM.__)("Draw on image: use pointer or keyboard to mark the correct answer area.","tutor-pro")})]})}),i&&/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},i),{label:(0,oM.__)("Precision Level","tutor-pro"),options:Ci,helpText:(0,oM.__)("Minimum overlap score between student and instructor markings. Larger or smaller marked areas lower the score.","tutor-pro"),onChange:e=>{i.field.onChange(e.value);if(!s){return}if(kZ(d,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){s.setValue(u,kZ(d,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}}})),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l===null||l===void 0?void 0:l.answer_two_gap_match,children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:Cs.savedHint,children:(0,oM.__)("Answer zone saved. Students will be graded against this area.","tutor-pro")})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!(l===null||l===void 0?void 0:l.image_url),children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:Cs.placeholder,children:(0,oM.__)("First, upload your base image above. Then, proceed to the next step to draw the correct target zone.","tutor-pro")})})]})};/* export default */const Co=Ca;var Cs={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),card:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";padding:",iI/* .spacing["20"] */.YK["20"],";background:",iI/* .colorTokens.surface.tutor */.I6.surface.tutor,";border:1px solid ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-width:100%;"),imageInputEmpty:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputPreview:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),answerHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:space-between;gap:",iI/* .spacing["12"] */.YK["12"],";min-height:32px;"),answerHeaderTitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";",oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),headerIcon:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),actionsRow:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:flex-end;min-width:94px;min-height:32px;"),canvasOuter:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:center;width:100%;"),canvasInner:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:inline-block;max-width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{display:block;width:100%;}img{display:block;width:auto;max-width:100%;height:auto;",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{width:100%;}}"),image:/*#__PURE__*/(0,u/* .css */.AH)("display:block;max-width:100%;height:auto;"),answerImage:/*#__PURE__*/(0,u/* .css */.AH)("filter:grayscale(0.15);"),canvas:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:0;left:0;z-index:1;"),clearButtonIcon:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";"),savedHint:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.success */.I6.text.success,";margin:0;"),placeholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/DrawImage.tsx
var Cl=()=>{var e;var r=fN();var{validationError:n,setValidationError:i}=I4();var a=r.watch("question_id");var o="question_answers";var{fields:s}=pW({control:r.control,name:o});var l=fG({control:r.control,name:"question_settings.draw_image_threshold_percent"});if(s.length===0){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cc.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:r.control,name:"question_answers.0",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Co,oR(oF({},e),{questionId:a,validationError:n,setValidationError:i,precisionControllerProps:l}))},(e=s[0])===null||e===void 0?void 0:e.id)})};/* export default */const Cu=Cl;var Cc={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormFillinTheBlanks.tsx
function Cd(){var e=(0,eh._)(["\n      background-color: ",";\n      box-shadow: 0 0 0 1px ",";\n\n      &:hover {\n        box-shadow: 0 0 0 1px ",";\n      }\n    "]);Cd=function t(){return e};return e}function Cf(){var e=(0,eh._)(["\n      color: ",";\n    "]);Cf=function t(){return e};return e}function Cp(){var e=(0,eh._)(["\n      color: ",";\n\n      span {\n        color: ",";\n      }\n    "]);Cp=function t(){return e};return e}var Ch=e=>{var{field:r,questionId:i,validationError:a,setValidationError:o}=e;var s,l,u,c;var d;var f=(d=r.value)!==null&&d!==void 0?d:{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",belongs_question_id:i,belongs_question_type:"fill_in_the_blank",answer_two_gap_match:"",answer_view_format:"text",answer_order:0,is_correct:"0"};var p=(0,n.useRef)(null);var h=(s=f.answer_two_gap_match)===null||s===void 0?void 0:s.split("|");var[v,g]=(0,n.useState)(!f.answer_title||!f.answer_two_gap_match);var[m,b]=(0,n.useState)(f);var _=((u=f.answer_title)===null||u===void 0?void 0:(l=u.match(/{dash}/g))===null||l===void 0?void 0:l.length)||0;var y=((c=f.answer_two_gap_match)===null||c===void 0?void 0:c.split("|").length)||0;var w=!!(f.answer_title&&f.answer_two_gap_match&&_!==y);(0,n.useEffect)(()=>{if((0,iK/* .isDefined */.O9)(p.current)&&v){p.current.focus()}},[v]);return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.option,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.optionLabel({isEditing:v}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.optionHeader,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.optionTitle,children:(0,oM.__)("Fill in the blanks","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:f.is_saved&&!v,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.optionActions,children:/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Edit","tutor-pro"),children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,"data-edit-button":true,onClick:e=>{e.stopPropagation();g(true)},"data-visually-hidden":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:24,height:24})})})})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.optionBody,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!f.is_saved||v,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.placeholderWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.optionPlaceholder({isTitle:!!f.answer_title}),children:f.answer_title?f.answer_title.replace(/{dash}/g,"_____"):(0,oM.__)("Question title...","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Cg.optionPlaceholder({isCorrectAnswer:h===null||h===void 0?void 0:h.length}),children:h&&h.length>0?/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:h,children:(e,r)=>/*#__PURE__*/(0,t/* .jsxs */.FD)(n.Fragment,{children:[e,/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r<(h?h.length-1:0),children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:"|"})})]},r)}):(0,oM.__)("Correct Answer(s)...","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.optionInputWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.inputWithHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},r),{ref:p,type:"text",placeholder:(0,oM.__)("Question title...","tutor-pro"),value:f.answer_title,onClick:e=>{e.stopPropagation()},onChange:e=>{r.onChange((0,ep._)((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_title:e.target.value}))},onKeyDown:e=>mz(function*(){e.stopPropagation();if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&f.answer_title){r.onChange((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}));g(false)}})()})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.inputHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",height:20,width:20}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:(0,oM.__)("Please make sure to use the variable {dash} in your question title to show the blanks in your question. You can use multiple {dash} variables in one question.","tutor-pro")})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.inputWithHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},r),{type:"text",placeholder:(0,oM.__)("Correct Answer(s)...","tutor-pro"),value:h===null||h===void 0?void 0:h.join("|"),onClick:e=>{e.stopPropagation()},onChange:e=>{r.onChange((0,ep._)((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:e.target.value}))},onKeyDown:e=>mz(function*(){if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&f.answer_two_gap_match){r.onChange((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));if((a===null||a===void 0?void 0:a.type)==="save_option"){o===null||o===void 0?void 0:o(null)}g(false)}})()})),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:w,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.errorMessage,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",height:20,width:20}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:(0,oM.__)("Match the number of answers to the number of blanks {dash} in your question.","tutor-pro")})]})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.inputHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",height:20,width:20}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:(0,oM.__)("Separate multiple answers by a vertical bar |. 1 answer per {dash} variable is defined in the question. Example: Apple | Banana | Orange","tutor-pro")})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Cg.optionInputButtons,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:f.is_saved,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:e=>{e.stopPropagation();g(false);r.onChange(m)},children:(0,oM.__)("Cancel","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:e=>mz(function*(){e.stopPropagation();if(w){return}r.onChange((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));b((0,ef._)({},f,kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(f._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));if((a===null||a===void 0?void 0:a.type)==="save_option"){o===null||o===void 0?void 0:o(null)}g(false)})(),disabled:!f.answer_title||!f.answer_two_gap_match||w,children:(0,oM.__)("Ok","tutor-pro")})]})]})})})]})})};/* export default */const Cv=Ch;var Cg={option:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";align-items:center;"),optionLabel:e=>{var{isEditing:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["12"] */.YK["12"],";width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";transition:box-shadow 0.15s ease-in-out;background-color:",iI/* .colorTokens.background.white */.I6.background.white,";[data-visually-hidden]{opacity:0;}&:hover{box-shadow:0 0 0 1px ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(Cd(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.stroke.brand */.I6.stroke.brand,iI/* .colorTokens.stroke.brand */.I6.stroke.brand))},optionHeader:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:space-between;align-items:center;"),optionTitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("medium"),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),optionActions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;gap:",iI/* .spacing["8"] */.YK["8"],";align-items:center;"),actionButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";display:flex;cursor:pointer;"),optionBody:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;"),optionInputWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.optionInputWrapper */.x.optionInputWrapper,";gap:",iI/* .spacing["16"] */.YK["16"],";"),placeholderWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;"),optionPlaceholder:e=>{var{isTitle:t,isCorrectAnswer:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding-block:",iI/* .spacing["4"] */.YK["4"],";display:flex;align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";",t&&(0,u/* .css */.AH)(Cf(),iI/* .colorTokens.text.hints */.I6.text.hints)," ",r&&(0,u/* .css */.AH)(Cp(),iI/* .colorTokens.text.success */.I6.text.success,iI/* .colorTokens.stroke.border */.I6.stroke.border))},inputWithHints:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";"),inputHints:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;gap:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";align-items:flex-start;svg{flex-shrink:0;}"),errorMessage:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;gap:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.error */.I6.text.error,";align-items:flex-start;color:",iI/* .colorTokens.text.error */.I6.text.error,";svg{flex-shrink:0;color:",iI/* .colorTokens.icon.error */.I6.icon.error,";}"),optionInputButtons:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/FillinTheBlanks.tsx
var Cm=()=>{var e=fN();var{validationError:r,setValidationError:n}=I4();var i=e.watch("question_id");var{fields:a}=pW({control:e.control,name:"question_answers"});return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:C_.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_answers.0",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Cv,oR(oF({},e),{questionId:i,validationError:r,setValidationError:n}))},a.length?JSON.stringify(a[0]):"")})};/* export default */const Cb=Cm;var C_={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ./node_modules/.pnpm/@dnd-kit+utilities@3.2.2_react@18.3.1/node_modules/@dnd-kit/utilities/dist/utilities.esm.js
function Cy(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return(0,n.useMemo)(()=>e=>{t.forEach(t=>t(e))},t)}// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js
const Cw=typeof window!=="undefined"&&typeof window.document!=="undefined"&&typeof window.document.createElement!=="undefined";function Cx(e){const t=Object.prototype.toString.call(e);return t==="[object Window]"||// In Electron context the Window object serializes to [object global]
t==="[object global]"}function CA(e){return"nodeType"in e}function CE(e){var t,r;if(!e){return window}if(Cx(e)){return e}if(!CA(e)){return window}return(t=(r=e.ownerDocument)==null?void 0:r.defaultView)!=null?t:window}function Ck(e){const{Document:t}=CE(e);return e instanceof t}function CI(e){if(Cx(e)){return false}return e instanceof CE(e).HTMLElement}function CC(e){return e instanceof CE(e).SVGElement}function CY(e){if(!e){return document}if(Cx(e)){return e.document}if(!CA(e)){return document}if(Ck(e)){return e}if(CI(e)||CC(e)){return e.ownerDocument}return document}/**
 * A hook that resolves to useEffect on the server and useLayoutEffect on the client
 * @param callback {function} Callback function that is invoked when the dependencies of the hook change
 */const CS=Cw?n.useLayoutEffect:n.useEffect;function CT(e){const t=(0,n.useRef)(e);CS(()=>{t.current=e});return(0,n.useCallback)(function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++){r[n]=arguments[n]}return t.current==null?void 0:t.current(...r)},[])}function CO(){const e=(0,n.useRef)(null);const t=(0,n.useCallback)((t,r)=>{e.current=setInterval(t,r)},[]);const r=(0,n.useCallback)(()=>{if(e.current!==null){clearInterval(e.current);e.current=null}},[]);return[t,r]}function CD(e,t){if(t===void 0){t=[e]}const r=(0,n.useRef)(e);CS(()=>{if(r.current!==e){r.current=e}},t);return r}function CF(e,t){const r=(0,n.useRef)();return(0,n.useMemo)(()=>{const t=e(r.current);r.current=t;return t},[...t])}function CP(e){const t=CT(e);const r=(0,n.useRef)(null);const i=(0,n.useCallback)(e=>{if(e!==r.current){t==null?void 0:t(e,r.current)}r.current=e},[]);return[r,i]}function CR(e){const t=(0,n.useRef)();(0,n.useEffect)(()=>{t.current=e},[e]);return t.current}let CH={};function CM(e,t){return(0,n.useMemo)(()=>{if(t){return t}const r=CH[e]==null?0:CH[e]+1;CH[e]=r;return e+"-"+r},[e,t])}function CN(e){return function(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++){n[i-1]=arguments[i]}return n.reduce((t,r)=>{const n=Object.entries(r);for(const[r,i]of n){const n=t[r];if(n!=null){t[r]=n+e*i}}return t},{...t})}}const CL=/*#__PURE__*/CN(1);const CK=/*#__PURE__*/CN(-1);function Cq(e){return"clientX"in e&&"clientY"in e}function CB(e){if(!e){return false}const{KeyboardEvent:t}=CE(e.target);return t&&e instanceof t}function CU(e){if(!e){return false}const{TouchEvent:t}=CE(e.target);return t&&e instanceof t}/**
 * Returns the normalized x and y coordinates for mouse and touch events.
 */function Cj(e){if(CU(e)){if(e.touches&&e.touches.length){const{clientX:t,clientY:r}=e.touches[0];return{x:t,y:r}}else if(e.changedTouches&&e.changedTouches.length){const{clientX:t,clientY:r}=e.changedTouches[0];return{x:t,y:r}}}if(Cq(e)){return{x:e.clientX,y:e.clientY}}return null}const CV=/*#__PURE__*/Object.freeze({Translate:{toString(e){if(!e){return}const{x:t,y:r}=e;return"translate3d("+(t?Math.round(t):0)+"px, "+(r?Math.round(r):0)+"px, 0)"}},Scale:{toString(e){if(!e){return}const{scaleX:t,scaleY:r}=e;return"scaleX("+t+") scaleY("+r+")"}},Transform:{toString(e){if(!e){return}return[CV.Translate.toString(e),CV.Scale.toString(e)].join(" ")}},Transition:{toString(e){let{property:t,duration:r,easing:n}=e;return t+" "+r+"ms "+n}}});const CW="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function Cz(e){if(e.matches(CW)){return e}return e.querySelector(CW)}//# sourceMappingURL=utilities.esm.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@dnd-kit+accessibility@3.1.1_react@18.3.1/node_modules/@dnd-kit/accessibility/dist/accessibility.esm.js
const CG={display:"none"};function CQ(e){let{id:t,value:r}=e;return i().createElement("div",{id:t,style:CG},r)}function C$(e){let{id:t,announcement:r,ariaLiveType:n="assertive"}=e;// Hide element visually but keep it readable by screen readers
const a={position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return i().createElement("div",{id:t,style:a,role:"status","aria-live":n,"aria-atomic":true},r)}function CX(){const[e,t]=(0,n.useState)("");const r=(0,n.useCallback)(e=>{if(e!=null){t(e)}},[]);return{announce:r,announcement:e}}//# sourceMappingURL=accessibility.esm.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@dnd-kit+core@6.3.1_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/@dnd-kit/core/dist/core.esm.js
const CJ=/*#__PURE__*/(0,n.createContext)(null);function CZ(e){const t=(0,n.useContext)(CJ);(0,n.useEffect)(()=>{if(!t){throw new Error("useDndMonitor must be used within a children of <DndContext>")}const r=t(e);return r},[e,t])}function C0(){const[e]=(0,n.useState)(()=>new Set);const t=(0,n.useCallback)(t=>{e.add(t);return()=>e.delete(t)},[e]);const r=(0,n.useCallback)(t=>{let{type:r,event:n}=t;e.forEach(e=>{var t;return(t=e[r])==null?void 0:t.call(e,n)})},[e]);return[r,t]}const C1={draggable:"\n    To pick up a draggable item, press the space bar.\n    While dragging, use the arrow keys to move the item.\n    Press space again to drop the item in its new position, or press escape to cancel.\n  "};const C2={onDragStart(e){let{active:t}=e;return"Picked up draggable item "+t.id+"."},onDragOver(e){let{active:t,over:r}=e;if(r){return"Draggable item "+t.id+" was moved over droppable area "+r.id+"."}return"Draggable item "+t.id+" is no longer over a droppable area."},onDragEnd(e){let{active:t,over:r}=e;if(r){return"Draggable item "+t.id+" was dropped over droppable area "+r.id}return"Draggable item "+t.id+" was dropped."},onDragCancel(e){let{active:t}=e;return"Dragging was cancelled. Draggable item "+t.id+" was dropped."}};function C6(e){let{announcements:t=C2,container:r,hiddenTextDescribedById:a,screenReaderInstructions:o=C1}=e;const{announce:s,announcement:l}=CX();const u=CM("DndLiveRegion");const[c,d]=(0,n.useState)(false);(0,n.useEffect)(()=>{d(true)},[]);CZ((0,n.useMemo)(()=>({onDragStart(e){let{active:r}=e;s(t.onDragStart({active:r}))},onDragMove(e){let{active:r,over:n}=e;if(t.onDragMove){s(t.onDragMove({active:r,over:n}))}},onDragOver(e){let{active:r,over:n}=e;s(t.onDragOver({active:r,over:n}))},onDragEnd(e){let{active:r,over:n}=e;s(t.onDragEnd({active:r,over:n}))},onDragCancel(e){let{active:r,over:n}=e;s(t.onDragCancel({active:r,over:n}))}}),[s,t]));if(!c){return null}const f=i().createElement(i().Fragment,null,i().createElement(CQ,{id:a,value:o.draggable}),i().createElement(C$,{id:u,announcement:l}));return r?(0,is.createPortal)(f,r):f}var C4;(function(e){e["DragStart"]="dragStart";e["DragMove"]="dragMove";e["DragEnd"]="dragEnd";e["DragCancel"]="dragCancel";e["DragOver"]="dragOver";e["RegisterDroppable"]="registerDroppable";e["SetDroppableDisabled"]="setDroppableDisabled";e["UnregisterDroppable"]="unregisterDroppable"})(C4||(C4={}));function C5(){}function C3(e,t){return(0,n.useMemo)(()=>({sensor:e,options:t!=null?t:{}}),[e,t])}function C8(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++){t[r]=arguments[r]}return(0,n.useMemo)(()=>[...t].filter(e=>e!=null),[...t])}const C9=/*#__PURE__*/Object.freeze({x:0,y:0});/**
 * Returns the distance between two points
 */function C7(e,t){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function Ye(e,t){const r=Cj(e);if(!r){return"0 0"}const n={x:(r.x-t.left)/t.width*100,y:(r.y-t.top)/t.height*100};return n.x+"% "+n.y+"%"}/**
 * Sort collisions from smallest to greatest value
 */function Yt(e,t){let{data:{value:r}}=e;let{data:{value:n}}=t;return r-n}/**
 * Sort collisions from greatest to smallest value
 */function Yr(e,t){let{data:{value:r}}=e;let{data:{value:n}}=t;return n-r}/**
 * Returns the coordinates of the corners of a given rectangle:
 * [TopLeft {x, y}, TopRight {x, y}, BottomLeft {x, y}, BottomRight {x, y}]
 */function Yn(e){let{left:t,top:r,height:n,width:i}=e;return[{x:t,y:r},{x:t+i,y:r},{x:t,y:r+n},{x:t+i,y:r+n}]}function Yi(e,t){if(!e||e.length===0){return null}const[r]=e;return t?r[t]:r}/**
 * Returns the coordinates of the center of a given ClientRect
 */function Ya(e,t,r){if(t===void 0){t=e.left}if(r===void 0){r=e.top}return{x:t+e.width*.5,y:r+e.height*.5}}/**
 * Returns the closest rectangles from an array of rectangles to the center of a given
 * rectangle.
 */const Yo=e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const i=Ya(t,t.left,t.top);const a=[];for(const e of n){const{id:t}=e;const n=r.get(t);if(n){const r=C7(Ya(n),i);a.push({id:t,data:{droppableContainer:e,value:r}})}}return a.sort(Yt)};/**
 * Returns the closest rectangles from an array of rectangles to the corners of
 * another rectangle.
 */const Ys=e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const i=Yn(t);const a=[];for(const e of n){const{id:t}=e;const n=r.get(t);if(n){const r=Yn(n);const o=i.reduce((e,t,n)=>{return e+C7(r[n],t)},0);const s=Number((o/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(Yt)};/**
 * Returns the intersecting rectangle area between two rectangles
 */function Yl(e,t){const r=Math.max(t.top,e.top);const n=Math.max(t.left,e.left);const i=Math.min(t.left+t.width,e.left+e.width);const a=Math.min(t.top+t.height,e.top+e.height);const o=i-n;const s=a-r;if(n<i&&r<a){const r=t.width*t.height;const n=e.width*e.height;const i=o*s;const a=i/(r+n-i);return Number(a.toFixed(4))}// Rectangles do not overlap, or overlap has an area of zero (edge/corner overlap)
return 0}/**
 * Returns the rectangles that has the greatest intersection area with a given
 * rectangle in an array of rectangles.
 */const Yu=e=>{let{collisionRect:t,droppableRects:r,droppableContainers:n}=e;const i=[];for(const e of n){const{id:n}=e;const a=r.get(n);if(a){const r=Yl(a,t);if(r>0){i.push({id:n,data:{droppableContainer:e,value:r}})}}}return i.sort(Yr)};/**
 * Check if a given point is contained within a bounding rectangle
 */function Yc(e,t){const{top:r,left:n,bottom:i,right:a}=t;return r<=e.y&&e.y<=i&&n<=e.x&&e.x<=a}/**
 * Returns the rectangles that the pointer is hovering over
 */const Yd=e=>{let{droppableContainers:t,droppableRects:r,pointerCoordinates:n}=e;if(!n){return[]}const i=[];for(const e of t){const{id:t}=e;const a=r.get(t);if(a&&Yc(n,a)){/* There may be more than a single rectangle intersecting
       * with the pointer coordinates. In order to sort the
       * colliding rectangles, we measure the distance between
       * the pointer and the corners of the intersecting rectangle
       */const r=Yn(a);const o=r.reduce((e,t)=>{return e+C7(n,t)},0);const s=Number((o/4).toFixed(4));i.push({id:t,data:{droppableContainer:e,value:s}})}}return i.sort(Yt)};function Yf(e,t,r){return{...e,scaleX:t&&r?t.width/r.width:1,scaleY:t&&r?t.height/r.height:1}}function Yp(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:C9}function Yh(e){return function t(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++){n[i-1]=arguments[i]}return n.reduce((t,r)=>({...t,top:t.top+e*r.y,bottom:t.bottom+e*r.y,left:t.left+e*r.x,right:t.right+e*r.x}),{...t})}}const Yv=/*#__PURE__*/Yh(1);function Yg(e){if(e.startsWith("matrix3d(")){const t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith("matrix(")){const t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function Ym(e,t,r){const n=Yg(t);if(!n){return e}const{scaleX:i,scaleY:a,x:o,y:s}=n;const l=e.left-o-(1-i)*parseFloat(r);const u=e.top-s-(1-a)*parseFloat(r.slice(r.indexOf(" ")+1));const c=i?e.width/i:e.width;const d=a?e.height/a:e.height;return{width:c,height:d,top:u,right:l+c,bottom:u+d,left:l}}const Yb={ignoreTransform:false};/**
 * Returns the bounding client rect of an element relative to the viewport.
 */function Y_(e,t){if(t===void 0){t=Yb}let r=e.getBoundingClientRect();if(t.ignoreTransform){const{transform:t,transformOrigin:n}=CE(e).getComputedStyle(e);if(t){r=Ym(r,t,n)}}const{top:n,left:i,width:a,height:o,bottom:s,right:l}=r;return{top:n,left:i,width:a,height:o,bottom:s,right:l}}/**
 * Returns the bounding client rect of an element relative to the viewport.
 *
 * @remarks
 * The ClientRect returned by this method does not take into account transforms
 * applied to the element it measures.
 *
 */function Yy(e){return Y_(e,{ignoreTransform:true})}function Yw(e){const t=e.innerWidth;const r=e.innerHeight;return{top:0,left:0,right:t,bottom:r,width:t,height:r}}function Yx(e,t){if(t===void 0){t=CE(e).getComputedStyle(e)}return t.position==="fixed"}function YA(e,t){if(t===void 0){t=CE(e).getComputedStyle(e)}const r=/(auto|scroll|overlay)/;const n=["overflow","overflowX","overflowY"];return n.some(e=>{const n=t[e];return typeof n==="string"?r.test(n):false})}function YE(e,t){const r=[];function n(i){if(t!=null&&r.length>=t){return r}if(!i){return r}if(Ck(i)&&i.scrollingElement!=null&&!r.includes(i.scrollingElement)){r.push(i.scrollingElement);return r}if(!CI(i)||CC(i)){return r}if(r.includes(i)){return r}const a=CE(e).getComputedStyle(i);if(i!==e){if(YA(i,a)){r.push(i)}}if(Yx(i,a)){return r}return n(i.parentNode)}if(!e){return r}return n(e)}function Yk(e){const[t]=YE(e,1);return t!=null?t:null}function YI(e){if(!Cw||!e){return null}if(Cx(e)){return e}if(!CA(e)){return null}if(Ck(e)||e===CY(e).scrollingElement){return window}if(CI(e)){return e}return null}function YC(e){if(Cx(e)){return e.scrollX}return e.scrollLeft}function YY(e){if(Cx(e)){return e.scrollY}return e.scrollTop}function YS(e){return{x:YC(e),y:YY(e)}}var YT;(function(e){e[e["Forward"]=1]="Forward";e[e["Backward"]=-1]="Backward"})(YT||(YT={}));function YO(e){if(!Cw||!e){return false}return e===document.scrollingElement}function YD(e){const t={x:0,y:0};const r=YO(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth};const n={x:e.scrollWidth-r.width,y:e.scrollHeight-r.height};const i=e.scrollTop<=t.y;const a=e.scrollLeft<=t.x;const o=e.scrollTop>=n.y;const s=e.scrollLeft>=n.x;return{isTop:i,isLeft:a,isBottom:o,isRight:s,maxScroll:n,minScroll:t}}const YF={x:.2,y:.2};function YP(e,t,r,n,i){let{top:a,left:o,right:s,bottom:l}=r;if(n===void 0){n=10}if(i===void 0){i=YF}const{isTop:u,isBottom:c,isLeft:d,isRight:f}=YD(e);const p={x:0,y:0};const h={x:0,y:0};const v={height:t.height*i.y,width:t.width*i.x};if(!u&&a<=t.top+v.height){// Scroll Up
p.y=YT.Backward;h.y=n*Math.abs((t.top+v.height-a)/v.height)}else if(!c&&l>=t.bottom-v.height){// Scroll Down
p.y=YT.Forward;h.y=n*Math.abs((t.bottom-v.height-l)/v.height)}if(!f&&s>=t.right-v.width){// Scroll Right
p.x=YT.Forward;h.x=n*Math.abs((t.right-v.width-s)/v.width)}else if(!d&&o<=t.left+v.width){// Scroll Left
p.x=YT.Backward;h.x=n*Math.abs((t.left+v.width-o)/v.width)}return{direction:p,speed:h}}function YR(e){if(e===document.scrollingElement){const{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}const{top:t,left:r,right:n,bottom:i}=e.getBoundingClientRect();return{top:t,left:r,right:n,bottom:i,width:e.clientWidth,height:e.clientHeight}}function YH(e){return e.reduce((e,t)=>{return CL(e,YS(t))},C9)}function YM(e){return e.reduce((e,t)=>{return e+YC(t)},0)}function YN(e){return e.reduce((e,t)=>{return e+YY(t)},0)}function YL(e,t){if(t===void 0){t=Y_}if(!e){return}const{top:r,left:n,bottom:i,right:a}=t(e);const o=Yk(e);if(!o){return}if(i<=0||a<=0||r>=window.innerHeight||n>=window.innerWidth){e.scrollIntoView({block:"center",inline:"center"})}}const YK=[["x",["left","right"],YM],["y",["top","bottom"],YN]];class Yq{constructor(e,t){this.rect=void 0;this.width=void 0;this.height=void 0;this.top=void 0;this.bottom=void 0;this.right=void 0;this.left=void 0;const r=YE(t);const n=YH(r);this.rect={...e};this.width=e.width;this.height=e.height;for(const[e,t,i]of YK){for(const a of t){Object.defineProperty(this,a,{get:()=>{const t=i(r);const o=n[e]-t;return this.rect[a]+o},enumerable:true})}}Object.defineProperty(this,"rect",{enumerable:false})}}class YB{constructor(e){this.target=void 0;this.listeners=[];this.removeAll=()=>{this.listeners.forEach(e=>{var t;return(t=this.target)==null?void 0:t.removeEventListener(...e)})};this.target=e}add(e,t,r){var n;(n=this.target)==null?void 0:n.addEventListener(e,t,r);this.listeners.push([e,t,r])}}function YU(e){// If the `event.target` element is removed from the document events will still be targeted
// at it, and hence won't always bubble up to the window or document anymore.
// If there is any risk of an element being removed while it is being dragged,
// the best practice is to attach the event listeners directly to the target.
// https://developer.mozilla.org/en-US/docs/Web/API/EventTarget
const{EventTarget:t}=CE(e);return e instanceof t?e:CY(e)}function Yj(e,t){const r=Math.abs(e.x);const n=Math.abs(e.y);if(typeof t==="number"){return Math.sqrt(r**2+n**2)>t}if("x"in t&&"y"in t){return r>t.x&&n>t.y}if("x"in t){return r>t.x}if("y"in t){return n>t.y}return false}var YV;(function(e){e["Click"]="click";e["DragStart"]="dragstart";e["Keydown"]="keydown";e["ContextMenu"]="contextmenu";e["Resize"]="resize";e["SelectionChange"]="selectionchange";e["VisibilityChange"]="visibilitychange"})(YV||(YV={}));function YW(e){e.preventDefault()}function Yz(e){e.stopPropagation()}var YG;(function(e){e["Space"]="Space";e["Down"]="ArrowDown";e["Right"]="ArrowRight";e["Left"]="ArrowLeft";e["Up"]="ArrowUp";e["Esc"]="Escape";e["Enter"]="Enter";e["Tab"]="Tab"})(YG||(YG={}));const YQ={start:[YG.Space,YG.Enter],cancel:[YG.Esc],end:[YG.Space,YG.Enter,YG.Tab]};const Y$=(e,t)=>{let{currentCoordinates:r}=t;switch(e.code){case YG.Right:return{...r,x:r.x+25};case YG.Left:return{...r,x:r.x-25};case YG.Down:return{...r,y:r.y+25};case YG.Up:return{...r,y:r.y-25}}return undefined};class YX{constructor(e){this.props=void 0;this.autoScrollEnabled=false;this.referenceCoordinates=void 0;this.listeners=void 0;this.windowListeners=void 0;this.props=e;const{event:{target:t}}=e;this.props=e;this.listeners=new YB(CY(t));this.windowListeners=new YB(CE(t));this.handleKeyDown=this.handleKeyDown.bind(this);this.handleCancel=this.handleCancel.bind(this);this.attach()}attach(){this.handleStart();this.windowListeners.add(YV.Resize,this.handleCancel);this.windowListeners.add(YV.VisibilityChange,this.handleCancel);setTimeout(()=>this.listeners.add(YV.Keydown,this.handleKeyDown))}handleStart(){const{activeNode:e,onStart:t}=this.props;const r=e.node.current;if(r){YL(r)}t(C9)}handleKeyDown(e){if(CB(e)){const{active:t,context:r,options:n}=this.props;const{keyboardCodes:i=YQ,coordinateGetter:a=Y$,scrollBehavior:o="smooth"}=n;const{code:s}=e;if(i.end.includes(s)){this.handleEnd(e);return}if(i.cancel.includes(s)){this.handleCancel(e);return}const{collisionRect:l}=r.current;const u=l?{x:l.left,y:l.top}:C9;if(!this.referenceCoordinates){this.referenceCoordinates=u}const c=a(e,{active:t,context:r.current,currentCoordinates:u});if(c){const t=CK(c,u);const n={x:0,y:0};const{scrollableAncestors:i}=r.current;for(const r of i){const i=e.code;const{isTop:a,isRight:s,isLeft:l,isBottom:u,maxScroll:d,minScroll:f}=YD(r);const p=YR(r);const h={x:Math.min(i===YG.Right?p.right-p.width/2:p.right,Math.max(i===YG.Right?p.left:p.left+p.width/2,c.x)),y:Math.min(i===YG.Down?p.bottom-p.height/2:p.bottom,Math.max(i===YG.Down?p.top:p.top+p.height/2,c.y))};const v=i===YG.Right&&!s||i===YG.Left&&!l;const g=i===YG.Down&&!u||i===YG.Up&&!a;if(v&&h.x!==c.x){const e=r.scrollLeft+t.x;const a=i===YG.Right&&e<=d.x||i===YG.Left&&e>=f.x;if(a&&!t.y){// We don't need to update coordinates, the scroll adjustment alone will trigger
// logic to auto-detect the new container we are over
r.scrollTo({left:e,behavior:o});return}if(a){n.x=r.scrollLeft-e}else{n.x=i===YG.Right?r.scrollLeft-d.x:r.scrollLeft-f.x}if(n.x){r.scrollBy({left:-n.x,behavior:o})}break}else if(g&&h.y!==c.y){const e=r.scrollTop+t.y;const a=i===YG.Down&&e<=d.y||i===YG.Up&&e>=f.y;if(a&&!t.x){// We don't need to update coordinates, the scroll adjustment alone will trigger
// logic to auto-detect the new container we are over
r.scrollTo({top:e,behavior:o});return}if(a){n.y=r.scrollTop-e}else{n.y=i===YG.Down?r.scrollTop-d.y:r.scrollTop-f.y}if(n.y){r.scrollBy({top:-n.y,behavior:o})}break}}this.handleMove(e,CL(CK(c,this.referenceCoordinates),n))}}}handleMove(e,t){const{onMove:r}=this.props;e.preventDefault();r(t)}handleEnd(e){const{onEnd:t}=this.props;e.preventDefault();this.detach();t()}handleCancel(e){const{onCancel:t}=this.props;e.preventDefault();this.detach();t()}detach(){this.listeners.removeAll();this.windowListeners.removeAll()}}YX.activators=[{eventName:"onKeyDown",handler:(e,t,r)=>{let{keyboardCodes:n=YQ,onActivation:i}=t;let{active:a}=r;const{code:o}=e.nativeEvent;if(n.start.includes(o)){const t=a.activatorNode.current;if(t&&e.target!==t){return false}e.preventDefault();i==null?void 0:i({event:e.nativeEvent});return true}return false}}];function YJ(e){return Boolean(e&&"distance"in e)}function YZ(e){return Boolean(e&&"delay"in e)}class Y0{constructor(e,t,r){var n;if(r===void 0){r=YU(e.event.target)}this.props=void 0;this.events=void 0;this.autoScrollEnabled=true;this.document=void 0;this.activated=false;this.initialCoordinates=void 0;this.timeoutId=null;this.listeners=void 0;this.documentListeners=void 0;this.windowListeners=void 0;this.props=e;this.events=t;const{event:i}=e;const{target:a}=i;this.props=e;this.events=t;this.document=CY(a);this.documentListeners=new YB(this.document);this.listeners=new YB(r);this.windowListeners=new YB(CE(a));this.initialCoordinates=(n=Cj(i))!=null?n:C9;this.handleStart=this.handleStart.bind(this);this.handleMove=this.handleMove.bind(this);this.handleEnd=this.handleEnd.bind(this);this.handleCancel=this.handleCancel.bind(this);this.handleKeydown=this.handleKeydown.bind(this);this.removeTextSelection=this.removeTextSelection.bind(this);this.attach()}attach(){const{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:r}}}=this;this.listeners.add(e.move.name,this.handleMove,{passive:false});this.listeners.add(e.end.name,this.handleEnd);if(e.cancel){this.listeners.add(e.cancel.name,this.handleCancel)}this.windowListeners.add(YV.Resize,this.handleCancel);this.windowListeners.add(YV.DragStart,YW);this.windowListeners.add(YV.VisibilityChange,this.handleCancel);this.windowListeners.add(YV.ContextMenu,YW);this.documentListeners.add(YV.Keydown,this.handleKeydown);if(t){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options})){return this.handleStart()}if(YZ(t)){this.timeoutId=setTimeout(this.handleStart,t.delay);this.handlePending(t);return}if(YJ(t)){this.handlePending(t);return}}this.handleStart()}detach(){this.listeners.removeAll();this.windowListeners.removeAll();// Wait until the next event loop before removing document listeners
// This is necessary because we listen for `click` and `selection` events on the document
setTimeout(this.documentListeners.removeAll,50);if(this.timeoutId!==null){clearTimeout(this.timeoutId);this.timeoutId=null}}handlePending(e,t){const{active:r,onPending:n}=this.props;n(r,e,this.initialCoordinates,t)}handleStart(){const{initialCoordinates:e}=this;const{onStart:t}=this.props;if(e){this.activated=true;// Stop propagation of click events once activation constraints are met
this.documentListeners.add(YV.Click,Yz,{capture:true});// Remove any text selection from the document
this.removeTextSelection();// Prevent further text selection while dragging
this.documentListeners.add(YV.SelectionChange,this.removeTextSelection);t(e)}}handleMove(e){var t;const{activated:r,initialCoordinates:n,props:i}=this;const{onMove:a,options:{activationConstraint:o}}=i;if(!n){return}const s=(t=Cj(e))!=null?t:C9;const l=CK(n,s);// Constraint validation
if(!r&&o){if(YJ(o)){if(o.tolerance!=null&&Yj(l,o.tolerance)){return this.handleCancel()}if(Yj(l,o.distance)){return this.handleStart()}}if(YZ(o)){if(Yj(l,o.tolerance)){return this.handleCancel()}}this.handlePending(o,l);return}if(e.cancelable){e.preventDefault()}a(s)}handleEnd(){const{onAbort:e,onEnd:t}=this.props;this.detach();if(!this.activated){e(this.props.active)}t()}handleCancel(){const{onAbort:e,onCancel:t}=this.props;this.detach();if(!this.activated){e(this.props.active)}t()}handleKeydown(e){if(e.code===YG.Esc){this.handleCancel()}}removeTextSelection(){var e;(e=this.document.getSelection())==null?void 0:e.removeAllRanges()}}const Y1={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class Y2 extends Y0{constructor(e){const{event:t}=e;// Pointer events stop firing if the target is unmounted while dragging
// Therefore we attach listeners to the owner document instead
const r=CY(t.target);super(e,Y1,r)}}Y2.activators=[{eventName:"onPointerDown",handler:(e,t)=>{let{nativeEvent:r}=e;let{onActivation:n}=t;if(!r.isPrimary||r.button!==0){return false}n==null?void 0:n({event:r});return true}}];const Y6={move:{name:"mousemove"},end:{name:"mouseup"}};var Y4;(function(e){e[e["RightClick"]=2]="RightClick"})(Y4||(Y4={}));class Y5 extends Y0{constructor(e){super(e,Y6,CY(e.event.target))}}Y5.activators=[{eventName:"onMouseDown",handler:(e,t)=>{let{nativeEvent:r}=e;let{onActivation:n}=t;if(r.button===Y4.RightClick){return false}n==null?void 0:n({event:r});return true}}];const Y3={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class Y8 extends Y0{constructor(e){super(e,Y3)}static setup(){// Adding a non-capture and non-passive `touchmove` listener in order
// to force `event.preventDefault()` calls to work in dynamically added
// touchmove event handlers. This is required for iOS Safari.
window.addEventListener(Y3.move.name,e,{capture:false,passive:false});return function t(){window.removeEventListener(Y3.move.name,e)};// We create a new handler because the teardown function of another sensor
// could remove our event listener if we use a referentially equal listener.
function e(){}}}Y8.activators=[{eventName:"onTouchStart",handler:(e,t)=>{let{nativeEvent:r}=e;let{onActivation:n}=t;const{touches:i}=r;if(i.length>1){return false}n==null?void 0:n({event:r});return true}}];var Y9;(function(e){e[e["Pointer"]=0]="Pointer";e[e["DraggableRect"]=1]="DraggableRect"})(Y9||(Y9={}));var Y7;(function(e){e[e["TreeOrder"]=0]="TreeOrder";e[e["ReversedTreeOrder"]=1]="ReversedTreeOrder"})(Y7||(Y7={}));function Se(e){let{acceleration:t,activator:r=Y9.Pointer,canScroll:i,draggingRect:a,enabled:o,interval:s=5,order:l=Y7.TreeOrder,pointerCoordinates:u,scrollableAncestors:c,scrollableAncestorRects:d,delta:f,threshold:p}=e;const h=Sr({delta:f,disabled:!o});const[v,g]=CO();const m=(0,n.useRef)({x:0,y:0});const b=(0,n.useRef)({x:0,y:0});const _=(0,n.useMemo)(()=>{switch(r){case Y9.Pointer:return u?{top:u.y,bottom:u.y,left:u.x,right:u.x}:null;case Y9.DraggableRect:return a}},[r,a,u]);const y=(0,n.useRef)(null);const w=(0,n.useCallback)(()=>{const e=y.current;if(!e){return}const t=m.current.x*b.current.x;const r=m.current.y*b.current.y;e.scrollBy(t,r)},[]);const x=(0,n.useMemo)(()=>l===Y7.TreeOrder?[...c].reverse():c,[l,c]);(0,n.useEffect)(()=>{if(!o||!c.length||!_){g();return}for(const e of x){if((i==null?void 0:i(e))===false){continue}const r=c.indexOf(e);const n=d[r];if(!n){continue}const{direction:a,speed:o}=YP(e,n,_,t,p);for(const e of["x","y"]){if(!h[e][a[e]]){o[e]=0;a[e]=0}}if(o.x>0||o.y>0){g();y.current=e;v(w,s);m.current=o;b.current=a;return}}m.current={x:0,y:0};b.current={x:0,y:0};g()},[t,w,i,g,o,s,JSON.stringify(_),JSON.stringify(h),v,c,x,d,JSON.stringify(p)])}const St={x:{[YT.Backward]:false,[YT.Forward]:false},y:{[YT.Backward]:false,[YT.Forward]:false}};function Sr(e){let{delta:t,disabled:r}=e;const n=CR(t);return CF(e=>{if(r||!n||!e){// Reset scroll intent tracking when auto-scrolling is disabled
return St}const i={x:Math.sign(t.x-n.x),y:Math.sign(t.y-n.y)};// Keep track of the user intent to scroll in each direction for both axis
return{x:{[YT.Backward]:e.x[YT.Backward]||i.x===-1,[YT.Forward]:e.x[YT.Forward]||i.x===1},y:{[YT.Backward]:e.y[YT.Backward]||i.y===-1,[YT.Forward]:e.y[YT.Forward]||i.y===1}}},[r,t,n])}function Sn(e,t){const r=t!=null?e.get(t):undefined;const n=r?r.node.current:null;return CF(e=>{var r;if(t==null){return null}// In some cases, the draggable node can unmount while dragging
// This is the case for virtualized lists. In those situations,
// we fall back to the last known value for that node.
return(r=n!=null?n:e)!=null?r:null},[n,t])}function Si(e,t){return(0,n.useMemo)(()=>e.reduce((e,r)=>{const{sensor:n}=r;const i=n.activators.map(e=>({eventName:e.eventName,handler:t(e.handler,r)}));return[...e,...i]},[]),[e,t])}var Sa;(function(e){e[e["Always"]=0]="Always";e[e["BeforeDragging"]=1]="BeforeDragging";e[e["WhileDragging"]=2]="WhileDragging"})(Sa||(Sa={}));var So;(function(e){e["Optimized"]="optimized"})(So||(So={}));const Ss=/*#__PURE__*/new Map;function Sl(e,t){let{dragging:r,dependencies:i,config:a}=t;const[o,s]=(0,n.useState)(null);const{frequency:l,measure:u,strategy:c}=a;const d=(0,n.useRef)(e);const f=m();const p=CD(f);const h=(0,n.useCallback)(function(e){if(e===void 0){e=[]}if(p.current){return}s(t=>{if(t===null){return e}return t.concat(e.filter(e=>!t.includes(e)))})},[p]);const v=(0,n.useRef)(null);const g=CF(t=>{if(f&&!r){return Ss}if(!t||t===Ss||d.current!==e||o!=null){const t=new Map;for(let r of e){if(!r){continue}if(o&&o.length>0&&!o.includes(r.id)&&r.rect.current){// This container does not need to be re-measured
t.set(r.id,r.rect.current);continue}const e=r.node.current;const n=e?new Yq(u(e),e):null;r.rect.current=n;if(n){t.set(r.id,n)}}return t}return t},[e,o,r,f,u]);(0,n.useEffect)(()=>{d.current=e},[e]);(0,n.useEffect)(()=>{if(f){return}h()},[r,f]);(0,n.useEffect)(()=>{if(o&&o.length>0){s(null)}},[JSON.stringify(o)]);(0,n.useEffect)(()=>{if(f||typeof l!=="number"||v.current!==null){return}v.current=setTimeout(()=>{h();v.current=null},l)},[l,f,h,...i]);return{droppableRects:g,measureDroppableContainers:h,measuringScheduled:o!=null};function m(){switch(c){case Sa.Always:return false;case Sa.BeforeDragging:return r;default:return!r}}}function Su(e,t){return CF(r=>{if(!e){return null}if(r){return r}return typeof t==="function"?t(e):e},[t,e])}function Sc(e,t){return Su(e,t)}/**
 * Returns a new MutationObserver instance.
 * If `MutationObserver` is undefined in the execution environment, returns `undefined`.
 */function Sd(e){let{callback:t,disabled:r}=e;const i=CT(t);const a=(0,n.useMemo)(()=>{if(r||typeof window==="undefined"||typeof window.MutationObserver==="undefined"){return undefined}const{MutationObserver:e}=window;return new e(i)},[i,r]);(0,n.useEffect)(()=>{return()=>a==null?void 0:a.disconnect()},[a]);return a}/**
 * Returns a new ResizeObserver instance bound to the `onResize` callback.
 * If `ResizeObserver` is undefined in the execution environment, returns `undefined`.
 */function Sf(e){let{callback:t,disabled:r}=e;const i=CT(t);const a=(0,n.useMemo)(()=>{if(r||typeof window==="undefined"||typeof window.ResizeObserver==="undefined"){return undefined}const{ResizeObserver:e}=window;return new e(i)},[r]);(0,n.useEffect)(()=>{return()=>a==null?void 0:a.disconnect()},[a]);return a}function Sp(e){return new Yq(Y_(e),e)}function Sh(e,t,r){if(t===void 0){t=Sp}const[i,a]=(0,n.useState)(null);function o(){a(n=>{if(!e){return null}if(e.isConnected===false){var i;// Fall back to last rect we measured if the element is
// no longer connected to the DOM.
return(i=n!=null?n:r)!=null?i:null}const a=t(e);if(JSON.stringify(n)===JSON.stringify(a)){return n}return a})}const s=Sd({callback(t){if(!e){return}for(const r of t){const{type:t,target:n}=r;if(t==="childList"&&n instanceof HTMLElement&&n.contains(e)){o();break}}}});const l=Sf({callback:o});CS(()=>{o();if(e){l==null?void 0:l.observe(e);s==null?void 0:s.observe(document.body,{childList:true,subtree:true})}else{l==null?void 0:l.disconnect();s==null?void 0:s.disconnect()}},[e]);return i}function Sv(e){const t=Su(e);return Yp(e,t)}const Sg=[];function Sm(e){const t=(0,n.useRef)(e);const r=CF(r=>{if(!e){return Sg}if(r&&r!==Sg&&e&&t.current&&e.parentNode===t.current.parentNode){return r}return YE(e)},[e]);(0,n.useEffect)(()=>{t.current=e},[e]);return r}function Sb(e){const[t,r]=(0,n.useState)(null);const i=(0,n.useRef)(e);// To-do: Throttle the handleScroll callback
const a=(0,n.useCallback)(e=>{const t=YI(e.target);if(!t){return}r(e=>{if(!e){return null}e.set(t,YS(t));return new Map(e)})},[]);(0,n.useEffect)(()=>{const t=i.current;if(e!==t){n(t);const o=e.map(e=>{const t=YI(e);if(t){t.addEventListener("scroll",a,{passive:true});return[t,YS(t)]}return null}).filter(e=>e!=null);r(o.length?new Map(o):null);i.current=e}return()=>{n(e);n(t)};function n(e){e.forEach(e=>{const t=YI(e);t==null?void 0:t.removeEventListener("scroll",a)})}},[a,e]);return(0,n.useMemo)(()=>{if(e.length){return t?Array.from(t.values()).reduce((e,t)=>CL(e,t),C9):YH(e)}return C9},[e,t])}function S_(e,t){if(t===void 0){t=[]}const r=(0,n.useRef)(null);(0,n.useEffect)(()=>{r.current=null},t);(0,n.useEffect)(()=>{const t=e!==C9;if(t&&!r.current){r.current=e}if(!t&&r.current){r.current=null}},[e]);return r.current?CK(e,r.current):C9}function Sy(e){(0,n.useEffect)(()=>{if(!Cw){return}const t=e.map(e=>{let{sensor:t}=e;return t.setup==null?void 0:t.setup()});return()=>{for(const e of t){e==null?void 0:e()}}},// eslint-disable-next-line react-hooks/exhaustive-deps
e.map(e=>{let{sensor:t}=e;return t}))}function Sw(e,t){return(0,n.useMemo)(()=>{return e.reduce((e,r)=>{let{eventName:n,handler:i}=r;e[n]=e=>{i(e,t)};return e},{})},[e,t])}function Sx(e){return(0,n.useMemo)(()=>e?Yw(e):null,[e])}const SA=[];function SE(e,t){if(t===void 0){t=Y_}const[r]=e;const i=Sx(r?CE(r):null);const[a,o]=(0,n.useState)(SA);function s(){o(()=>{if(!e.length){return SA}return e.map(e=>YO(e)?i:new Yq(t(e),e))})}const l=Sf({callback:s});CS(()=>{l==null?void 0:l.disconnect();s();e.forEach(e=>l==null?void 0:l.observe(e))},[e]);return a}function Sk(e){if(!e){return null}if(e.children.length>1){return e}const t=e.children[0];return CI(t)?t:e}function SI(e){let{measure:t}=e;const[r,i]=(0,n.useState)(null);const a=(0,n.useCallback)(e=>{for(const{target:r}of e){if(CI(r)){i(e=>{const n=t(r);return e?{...e,width:n.width,height:n.height}:n});break}}},[t]);const o=Sf({callback:a});const s=(0,n.useCallback)(e=>{const r=Sk(e);o==null?void 0:o.disconnect();if(r){o==null?void 0:o.observe(r)}i(r?t(r):null)},[t,o]);const[l,u]=CP(s);return(0,n.useMemo)(()=>({nodeRef:l,rect:r,setRef:u}),[r,l,u])}const SC=[{sensor:Y2,options:{}},{sensor:YX,options:{}}];const SY={current:{}};const SS={draggable:{measure:Yy},droppable:{measure:Yy,strategy:Sa.WhileDragging,frequency:So.Optimized},dragOverlay:{measure:Y_}};class ST extends Map{get(e){var t;return e!=null?(t=super.get(e))!=null?t:undefined:undefined}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:t}=e;return!t})}getNodeFor(e){var t,r;return(t=(r=this.get(e))==null?void 0:r.node.current)!=null?t:undefined}}const SO={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:/*#__PURE__*/new Map,droppableRects:/*#__PURE__*/new Map,droppableContainers:/*#__PURE__*/new ST,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:C5},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:SS,measureDroppableContainers:C5,windowRect:null,measuringScheduled:false};const SD={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:C5,draggableNodes:/*#__PURE__*/new Map,over:null,measureDroppableContainers:C5};const SF=/*#__PURE__*/(0,n.createContext)(SD);const SP=/*#__PURE__*/(0,n.createContext)(SO);function SR(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new ST}}}function SH(e,t){switch(t.type){case C4.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case C4.DragMove:if(e.draggable.active==null){return e}return{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case C4.DragEnd:case C4.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case C4.RegisterDroppable:{const{element:r}=t;const{id:n}=r;const i=new ST(e.droppable.containers);i.set(n,r);return{...e,droppable:{...e.droppable,containers:i}}}case C4.SetDroppableDisabled:{const{id:r,key:n,disabled:i}=t;const a=e.droppable.containers.get(r);if(!a||n!==a.key){return e}const o=new ST(e.droppable.containers);o.set(r,{...a,disabled:i});return{...e,droppable:{...e.droppable,containers:o}}}case C4.UnregisterDroppable:{const{id:r,key:n}=t;const i=e.droppable.containers.get(r);if(!i||n!==i.key){return e}const a=new ST(e.droppable.containers);a.delete(r);return{...e,droppable:{...e.droppable,containers:a}}}default:{return e}}}function SM(e){let{disabled:t}=e;const{active:r,activatorEvent:i,draggableNodes:a}=(0,n.useContext)(SF);const o=CR(i);const s=CR(r==null?void 0:r.id);// Restore keyboard focus on the activator node
(0,n.useEffect)(()=>{if(t){return}if(!i&&o&&s!=null){if(!CB(o)){return}if(document.activeElement===o.target){// No need to restore focus
return}const e=a.get(s);if(!e){return}const{activatorNode:t,node:r}=e;if(!t.current&&!r.current){return}requestAnimationFrame(()=>{for(const e of[t.current,r.current]){if(!e){continue}const t=Cz(e);if(t){t.focus();break}}})}},[i,t,a,s,o]);return null}function SN(e,t){let{transform:r,...n}=t;return e!=null&&e.length?e.reduce((e,t)=>{return t({transform:e,...n})},r):r}function SL(e){return(0,n.useMemo)(()=>({draggable:{...SS.draggable,...e==null?void 0:e.draggable},droppable:{...SS.droppable,...e==null?void 0:e.droppable},dragOverlay:{...SS.dragOverlay,...e==null?void 0:e.dragOverlay}}),[e==null?void 0:e.draggable,e==null?void 0:e.droppable,e==null?void 0:e.dragOverlay])}function SK(e){let{activeNode:t,measure:r,initialRect:i,config:a=true}=e;const o=(0,n.useRef)(false);const{x:s,y:l}=typeof a==="boolean"?{x:a,y:a}:a;CS(()=>{const e=!s&&!l;if(e||!t){o.current=false;return}if(o.current||!i){// Return early if layout shift scroll compensation was already attempted
// or if there is no initialRect to compare to.
return}// Get the most up to date node ref for the active draggable
const n=t==null?void 0:t.node.current;if(!n||n.isConnected===false){// Return early if there is no attached node ref or if the node is
// disconnected from the document.
return}const a=r(n);const u=Yp(a,i);if(!s){u.x=0}if(!l){u.y=0}// Only perform layout shift scroll compensation once
o.current=true;if(Math.abs(u.x)>0||Math.abs(u.y)>0){const e=Yk(n);if(e){e.scrollBy({top:u.y,left:u.x})}}},[t,s,l,i,r])}const Sq=/*#__PURE__*/(0,n.createContext)({...C9,scaleX:1,scaleY:1});var SB;(function(e){e[e["Uninitialized"]=0]="Uninitialized";e[e["Initializing"]=1]="Initializing";e[e["Initialized"]=2]="Initialized"})(SB||(SB={}));const SU=/*#__PURE__*/(0,n.memo)(function e(e){var t,r,a,o;let{id:s,accessibility:l,autoScroll:u=true,children:c,sensors:d=SC,collisionDetection:f=Yu,measuring:p,modifiers:h,...v}=e;const g=(0,n.useReducer)(SH,undefined,SR);const[m,b]=g;const[_,y]=C0();const[w,x]=(0,n.useState)(SB.Uninitialized);const A=w===SB.Initialized;const{draggable:{active:E,nodes:k,translate:I},droppable:{containers:C}}=m;const Y=E!=null?k.get(E):null;const S=(0,n.useRef)({initial:null,translated:null});const T=(0,n.useMemo)(()=>{var e;return E!=null?{id:E,// It's possible for the active node to unmount while dragging
data:(e=Y==null?void 0:Y.data)!=null?e:SY,rect:S}:null},[E,Y]);const O=(0,n.useRef)(null);const[D,F]=(0,n.useState)(null);const[P,R]=(0,n.useState)(null);const H=CD(v,Object.values(v));const M=CM("DndDescribedBy",s);const N=(0,n.useMemo)(()=>C.getEnabled(),[C]);const L=SL(p);const{droppableRects:K,measureDroppableContainers:q,measuringScheduled:B}=Sl(N,{dragging:A,dependencies:[I.x,I.y],config:L.droppable});const U=Sn(k,E);const j=(0,n.useMemo)(()=>P?Cj(P):null,[P]);const V=eE();const W=Sc(U,L.draggable.measure);SK({activeNode:E!=null?k.get(E):null,config:V.layoutShiftCompensation,initialRect:W,measure:L.draggable.measure});const z=Sh(U,L.draggable.measure,W);const G=Sh(U?U.parentElement:null);const Q=(0,n.useRef)({activatorEvent:null,active:null,activeNode:U,collisionRect:null,collisions:null,droppableRects:K,draggableNodes:k,draggingNode:null,draggingNodeRect:null,droppableContainers:C,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null});const $=C.getNodeFor((t=Q.current.over)==null?void 0:t.id);const X=SI({measure:L.dragOverlay.measure});// Use the rect of the drag overlay if it is mounted
const J=(r=X.nodeRef.current)!=null?r:U;const Z=A?(a=X.rect)!=null?a:z:null;const ee=Boolean(X.nodeRef.current&&X.rect);// The delta between the previous and new position of the draggable node
// is only relevant when there is no drag overlay
const et=Sv(ee?null:z);// Get the window rect of the dragging node
const er=Sx(J?CE(J):null);// Get scrollable ancestors of the dragging node
const en=Sm(A?$!=null?$:U:null);const ei=SE(en);// Apply modifiers
const ea=SN(h,{transform:{x:I.x-et.x,y:I.y-et.y,scaleX:1,scaleY:1},activatorEvent:P,active:T,activeNodeRect:z,containerNodeRect:G,draggingNodeRect:Z,over:Q.current.over,overlayNodeRect:X.rect,scrollableAncestors:en,scrollableAncestorRects:ei,windowRect:er});const eo=j?CL(j,I):null;const es=Sb(en);// Represents the scroll delta since dragging was initiated
const el=S_(es);// Represents the scroll delta since the last time the active node rect was measured
const eu=S_(es,[z]);const ec=CL(ea,el);const ed=Z?Yv(Z,ea):null;const ef=T&&ed?f({active:T,collisionRect:ed,droppableRects:K,droppableContainers:N,pointerCoordinates:eo}):null;const ep=Yi(ef,"id");const[eh,ev]=(0,n.useState)(null);// When there is no drag overlay used, we need to account for the
// window scroll delta
const eg=ee?ea:CL(ea,eu);const em=Yf(eg,(o=eh==null?void 0:eh.rect)!=null?o:null,z);const eb=(0,n.useRef)(null);const e_=(0,n.useCallback)((e,t)=>{let{sensor:r,options:n}=t;if(O.current==null){return}const i=k.get(O.current);if(!i){return}const a=e.nativeEvent;const o=new r({active:O.current,activeNode:i,event:a,options:n,// Sensors need to be instantiated with refs for arguments that change over time
// otherwise they are frozen in time with the stale arguments
context:Q,onAbort(e){const t=k.get(e);if(!t){return}const{onDragAbort:r}=H.current;const n={id:e};r==null?void 0:r(n);_({type:"onDragAbort",event:n})},onPending(e,t,r,n){const i=k.get(e);if(!i){return}const{onDragPending:a}=H.current;const o={id:e,constraint:t,initialCoordinates:r,offset:n};a==null?void 0:a(o);_({type:"onDragPending",event:o})},onStart(e){const t=O.current;if(t==null){return}const r=k.get(t);if(!r){return}const{onDragStart:n}=H.current;const i={activatorEvent:a,active:{id:t,data:r.data,rect:S}};(0,is.unstable_batchedUpdates)(()=>{n==null?void 0:n(i);x(SB.Initializing);b({type:C4.DragStart,initialCoordinates:e,active:t});_({type:"onDragStart",event:i});F(eb.current);R(a)})},onMove(e){b({type:C4.DragMove,coordinates:e})},onEnd:s(C4.DragEnd),onCancel:s(C4.DragCancel)});eb.current=o;function s(e){return async function t(){const{active:t,collisions:r,over:n,scrollAdjustedTranslate:i}=Q.current;let o=null;if(t&&i){const{cancelDrop:s}=H.current;o={activatorEvent:a,active:t,collisions:r,delta:i,over:n};if(e===C4.DragEnd&&typeof s==="function"){const t=await Promise.resolve(s(o));if(t){e=C4.DragCancel}}}O.current=null;(0,is.unstable_batchedUpdates)(()=>{b({type:e});x(SB.Uninitialized);ev(null);F(null);R(null);eb.current=null;const t=e===C4.DragEnd?"onDragEnd":"onDragCancel";if(o){const e=H.current[t];e==null?void 0:e(o);_({type:t,event:o})}})}}},[k]);const ey=(0,n.useCallback)((e,t)=>{return(r,n)=>{const i=r.nativeEvent;const a=k.get(n);if(O.current!==null||// No active draggable
!a||// Event has already been captured
i.dndKit||i.defaultPrevented){return}const o={active:a};const s=e(r,t.options,o);if(s===true){i.dndKit={capturedBy:t.sensor};O.current=n;e_(r,t)}}},[k,e_]);const ew=Si(d,ey);Sy(d);CS(()=>{if(z&&w===SB.Initializing){x(SB.Initialized)}},[z,w]);(0,n.useEffect)(()=>{const{onDragMove:e}=H.current;const{active:t,activatorEvent:r,collisions:n,over:i}=Q.current;if(!t||!r){return}const a={active:t,activatorEvent:r,collisions:n,delta:{x:ec.x,y:ec.y},over:i};(0,is.unstable_batchedUpdates)(()=>{e==null?void 0:e(a);_({type:"onDragMove",event:a})})},[ec.x,ec.y]);(0,n.useEffect)(()=>{const{active:e,activatorEvent:t,collisions:r,droppableContainers:n,scrollAdjustedTranslate:i}=Q.current;if(!e||O.current==null||!t||!i){return}const{onDragOver:a}=H.current;const o=n.get(ep);const s=o&&o.rect.current?{id:o.id,rect:o.rect.current,data:o.data,disabled:o.disabled}:null;const l={active:e,activatorEvent:t,collisions:r,delta:{x:i.x,y:i.y},over:s};(0,is.unstable_batchedUpdates)(()=>{ev(s);a==null?void 0:a(l);_({type:"onDragOver",event:l})})},[ep]);CS(()=>{Q.current={activatorEvent:P,active:T,activeNode:U,collisionRect:ed,collisions:ef,droppableRects:K,draggableNodes:k,draggingNode:J,draggingNodeRect:Z,droppableContainers:C,over:eh,scrollableAncestors:en,scrollAdjustedTranslate:ec};S.current={initial:Z,translated:ed}},[T,U,ef,ed,k,J,Z,K,C,eh,en,ec]);Se({...V,delta:I,draggingRect:ed,pointerCoordinates:eo,scrollableAncestors:en,scrollableAncestorRects:ei});const ex=(0,n.useMemo)(()=>{const e={active:T,activeNode:U,activeNodeRect:z,activatorEvent:P,collisions:ef,containerNodeRect:G,dragOverlay:X,draggableNodes:k,droppableContainers:C,droppableRects:K,over:eh,measureDroppableContainers:q,scrollableAncestors:en,scrollableAncestorRects:ei,measuringConfiguration:L,measuringScheduled:B,windowRect:er};return e},[T,U,z,P,ef,G,X,k,C,K,eh,q,en,ei,L,B,er]);const eA=(0,n.useMemo)(()=>{const e={activatorEvent:P,activators:ew,active:T,activeNodeRect:z,ariaDescribedById:{draggable:M},dispatch:b,draggableNodes:k,over:eh,measureDroppableContainers:q};return e},[P,ew,T,z,b,M,k,eh,q]);return i().createElement(CJ.Provider,{value:y},i().createElement(SF.Provider,{value:eA},i().createElement(SP.Provider,{value:ex},i().createElement(Sq.Provider,{value:em},c)),i().createElement(SM,{disabled:(l==null?void 0:l.restoreFocus)===false})),i().createElement(C6,{...l,hiddenTextDescribedById:M}));function eE(){const e=(D==null?void 0:D.autoScrollEnabled)===false;const t=typeof u==="object"?u.enabled===false:u===false;const r=A&&!e&&!t;if(typeof u==="object"){return{...u,enabled:r}}return{enabled:r}}});const Sj=/*#__PURE__*/(0,n.createContext)(null);const SV="button";const SW="Draggable";function Sz(e){let{id:t,data:r,disabled:i=false,attributes:a}=e;const o=CM(SW);const{activators:s,activatorEvent:l,active:u,activeNodeRect:c,ariaDescribedById:d,draggableNodes:f,over:p}=(0,n.useContext)(SF);const{role:h=SV,roleDescription:v="draggable",tabIndex:g=0}=a!=null?a:{};const m=(u==null?void 0:u.id)===t;const b=(0,n.useContext)(m?Sq:Sj);const[_,y]=CP();const[w,x]=CP();const A=Sw(s,t);const E=CD(r);CS(()=>{f.set(t,{id:t,key:o,node:_,activatorNode:w,data:E});return()=>{const e=f.get(t);if(e&&e.key===o){f.delete(t)}}},[f,t]);const k=(0,n.useMemo)(()=>({role:h,tabIndex:g,"aria-disabled":i,"aria-pressed":m&&h===SV?true:undefined,"aria-roledescription":v,"aria-describedby":d.draggable}),[i,h,g,m,v,d.draggable]);return{active:u,activatorEvent:l,activeNodeRect:c,attributes:k,isDragging:m,listeners:i?undefined:A,node:_,over:p,setNodeRef:y,setActivatorNodeRef:x,transform:b}}function SG(){return(0,n.useContext)(SP)}const SQ="Droppable";const S$={timeout:25};function SX(e){let{data:t,disabled:r=false,id:i,resizeObserverConfig:a}=e;const o=CM(SQ);const{active:s,dispatch:l,over:u,measureDroppableContainers:c}=(0,n.useContext)(SF);const d=(0,n.useRef)({disabled:r});const f=(0,n.useRef)(false);const p=(0,n.useRef)(null);const h=(0,n.useRef)(null);const{disabled:v,updateMeasurementsFor:g,timeout:m}={...S$,...a};const b=CD(g!=null?g:i);const _=(0,n.useCallback)(()=>{if(!f.current){// ResizeObserver invokes the `handleResize` callback as soon as `observe` is called,
// assuming the element is rendered and displayed.
f.current=true;return}if(h.current!=null){clearTimeout(h.current)}h.current=setTimeout(()=>{c(Array.isArray(b.current)?b.current:[b.current]);h.current=null},m)},[m]);const y=Sf({callback:_,disabled:v||!s});const w=(0,n.useCallback)((e,t)=>{if(!y){return}if(t){y.unobserve(t);f.current=false}if(e){y.observe(e)}},[y]);const[x,A]=CP(w);const E=CD(t);(0,n.useEffect)(()=>{if(!y||!x.current){return}y.disconnect();f.current=false;y.observe(x.current)},[x,y]);(0,n.useEffect)(()=>{l({type:C4.RegisterDroppable,element:{id:i,key:o,disabled:r,node:x,rect:p,data:E}});return()=>l({type:C4.UnregisterDroppable,key:o,id:i})},[i]);(0,n.useEffect)(()=>{if(r!==d.current.disabled){l({type:C4.SetDroppableDisabled,id:i,key:o,disabled:r});d.current.disabled=r}},[i,o,r,l]);return{active:s,rect:p,isOver:(u==null?void 0:u.id)===i,node:x,over:u,setNodeRef:A}}function SJ(e){let{animation:t,children:r}=e;const[a,o]=(0,n.useState)(null);const[s,l]=(0,n.useState)(null);const u=CR(r);if(!r&&!a&&u){o(u)}CS(()=>{if(!s){return}const e=a==null?void 0:a.key;const r=a==null?void 0:a.props.id;if(e==null||r==null){o(null);return}Promise.resolve(t(r,s)).then(()=>{o(null)})},[t,a,s]);return i().createElement(i().Fragment,null,r,a?(0,n.cloneElement)(a,{ref:l}):null)}const SZ={x:0,y:0,scaleX:1,scaleY:1};function S0(e){let{children:t}=e;return i().createElement(SF.Provider,{value:SD},i().createElement(Sq.Provider,{value:SZ},t))}const S1={position:"fixed",touchAction:"none"};const S2=e=>{const t=CB(e);return t?"transform 250ms ease":undefined};const S6=/*#__PURE__*/(0,n.forwardRef)((e,t)=>{let{as:r,activatorEvent:n,adjustScale:a,children:o,className:s,rect:l,style:u,transform:c,transition:d=S2}=e;if(!l){return null}const f=a?c:{...c,scaleX:1,scaleY:1};const p={...S1,width:l.width,height:l.height,top:l.top,left:l.left,transform:CV.Transform.toString(f),transformOrigin:a&&n?Ye(n,l):undefined,transition:typeof d==="function"?d(n):d,...u};return i().createElement(r,{className:s,style:p,ref:t},o)});const S4=e=>t=>{let{active:r,dragOverlay:n}=t;const i={};const{styles:a,className:o}=e;if(a!=null&&a.active){for(const[e,t]of Object.entries(a.active)){if(t===undefined){continue}i[e]=r.node.style.getPropertyValue(e);r.node.style.setProperty(e,t)}}if(a!=null&&a.dragOverlay){for(const[e,t]of Object.entries(a.dragOverlay)){if(t===undefined){continue}n.node.style.setProperty(e,t)}}if(o!=null&&o.active){r.node.classList.add(o.active)}if(o!=null&&o.dragOverlay){n.node.classList.add(o.dragOverlay)}return function e(){for(const[e,t]of Object.entries(i)){r.node.style.setProperty(e,t)}if(o!=null&&o.active){r.node.classList.remove(o.active)}}};const S5=e=>{let{transform:{initial:t,final:r}}=e;return[{transform:CV.Transform.toString(t)},{transform:CV.Transform.toString(r)}]};const S3={duration:250,easing:"ease",keyframes:S5,sideEffects:/*#__PURE__*/S4({styles:{active:{opacity:"0"}}})};function S8(e){let{config:t,draggableNodes:r,droppableContainers:n,measuringConfiguration:i}=e;return CT((e,a)=>{if(t===null){return}const o=r.get(e);if(!o){return}const s=o.node.current;if(!s){return}const l=Sk(a);if(!l){return}const{transform:u}=CE(a).getComputedStyle(a);const c=Yg(u);if(!c){return}const d=typeof t==="function"?t:S9(t);YL(s,i.draggable.measure);return d({active:{id:e,data:o.data,node:s,rect:i.draggable.measure(s)},draggableNodes:r,dragOverlay:{node:a,rect:i.dragOverlay.measure(l)},droppableContainers:n,measuringConfiguration:i,transform:c})})}function S9(e){const{duration:t,easing:r,sideEffects:n,keyframes:i}={...S3,...e};return e=>{let{active:a,dragOverlay:o,transform:s,...l}=e;if(!t){// Do not animate if animation duration is zero.
return}const u={x:o.rect.left-a.rect.left,y:o.rect.top-a.rect.top};const c={scaleX:s.scaleX!==1?a.rect.width*s.scaleX/o.rect.width:1,scaleY:s.scaleY!==1?a.rect.height*s.scaleY/o.rect.height:1};const d={x:s.x-u.x,y:s.y-u.y,...c};const f=i({...l,active:a,dragOverlay:o,transform:{initial:s,final:d}});const[p]=f;const h=f[f.length-1];if(JSON.stringify(p)===JSON.stringify(h)){// The start and end keyframes are the same, infer that there is no animation needed.
return}const v=n==null?void 0:n({active:a,dragOverlay:o,...l});const g=o.node.animate(f,{duration:t,easing:r,fill:"forwards"});return new Promise(e=>{g.onfinish=()=>{v==null?void 0:v();e()}})}}let S7=0;function Te(e){return(0,n.useMemo)(()=>{if(e==null){return}S7++;return S7},[e])}const Tt=/*#__PURE__*/i().memo(e=>{let{adjustScale:t=false,children:r,dropAnimation:a,style:o,transition:s,modifiers:l,wrapperElement:u="div",className:c,zIndex:d=999}=e;const{activatorEvent:f,active:p,activeNodeRect:h,containerNodeRect:v,draggableNodes:g,droppableContainers:m,dragOverlay:b,over:_,measuringConfiguration:y,scrollableAncestors:w,scrollableAncestorRects:x,windowRect:A}=SG();const E=(0,n.useContext)(Sq);const k=Te(p==null?void 0:p.id);const I=SN(l,{activatorEvent:f,active:p,activeNodeRect:h,containerNodeRect:v,draggingNodeRect:b.rect,over:_,overlayNodeRect:b.rect,scrollableAncestors:w,scrollableAncestorRects:x,transform:E,windowRect:A});const C=Su(h);const Y=S8({config:a,draggableNodes:g,droppableContainers:m,measuringConfiguration:y});// We need to wait for the active node to be measured before connecting the drag overlay ref
// otherwise collisions can be computed against a mispositioned drag overlay
const S=C?b.setRef:undefined;return i().createElement(S0,null,i().createElement(SJ,{animation:Y},p&&k?i().createElement(S6,{key:k,id:p.id,ref:S,as:u,activatorEvent:f,adjustScale:t,className:c,transition:s,rect:C,style:{zIndex:d,...o},transform:I},r):null))});//# sourceMappingURL=core.esm.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@dnd-kit+modifiers@9.0.0_@dnd-kit+core@6.3.1_react-dom@18.3.1_react@18.3.1__react@18.3.1__react@18.3.1/node_modules/@dnd-kit/modifiers/dist/modifiers.esm.js
function Tr(e){return t=>{let{transform:r}=t;return{...r,x:Math.ceil(r.x/e)*e,y:Math.ceil(r.y/e)*e}}}const Tn=e=>{let{transform:t}=e;return{...t,y:0}};function Ti(e,t,r){const n={...e};if(t.top+e.y<=r.top){n.y=r.top-t.top}else if(t.bottom+e.y>=r.top+r.height){n.y=r.top+r.height-t.bottom}if(t.left+e.x<=r.left){n.x=r.left-t.left}else if(t.right+e.x>=r.left+r.width){n.x=r.left+r.width-t.right}return n}const Ta=e=>{let{containerNodeRect:t,draggingNodeRect:r,transform:n}=e;if(!r||!t){return n}return Ti(n,r,t)};const To=e=>{let{draggingNodeRect:t,transform:r,scrollableAncestorRects:n}=e;const i=n[0];if(!t||!i){return r}return Ti(r,t,i)};const Ts=e=>{let{transform:t}=e;return{...t,x:0}};const Tl=e=>{let{transform:t,draggingNodeRect:r,windowRect:n}=e;if(!r||!n){return t}return Ti(t,r,n)};const Tu=e=>{let{activatorEvent:t,draggingNodeRect:r,transform:n}=e;if(r&&t){const e=getEventCoordinates(t);if(!e){return n}const i=e.x-r.left;const a=e.y-r.top;return{...n,x:n.x+i-r.width/2,y:n.y+a-r.height/2}}return n};//# sourceMappingURL=modifiers.esm.js.map
;// CONCATENATED MODULE: ./node_modules/.pnpm/@dnd-kit+sortable@10.0.0_@dnd-kit+core@6.3.1_react-dom@18.3.1_react@18.3.1__react@18.3.1__react@18.3.1/node_modules/@dnd-kit/sortable/dist/sortable.esm.js
/**
 * Move an array item to a different position. Returns a new array with the item moved to the new position.
 */function Tc(e,t,r){const n=e.slice();n.splice(r<0?n.length+r:r,0,n.splice(t,1)[0]);return n}/**
 * Swap an array item to a different position. Returns a new array with the item swapped to the new position.
 */function Td(e,t,r){const n=e.slice();n[t]=e[r];n[r]=e[t];return n}function Tf(e,t){return e.reduce((e,r,n)=>{const i=t.get(r);if(i){e[n]=i}return e},Array(e.length))}function Tp(e){return e!==null&&e>=0}function Th(e,t){if(e===t){return true}if(e.length!==t.length){return false}for(let r=0;r<e.length;r++){if(e[r]!==t[r]){return false}}return true}function Tv(e){if(typeof e==="boolean"){return{draggable:e,droppable:e}}return e}// To-do: We should be calculating scale transformation
const Tg=/* unused pure expression or super */null&&{scaleX:1,scaleY:1};const Tm=e=>{var t;let{rects:r,activeNodeRect:n,activeIndex:i,overIndex:a,index:o}=e;const s=(t=r[i])!=null?t:n;if(!s){return null}const l=Tb(r,o,i);if(o===i){const e=r[a];if(!e){return null}return{x:i<a?e.left+e.width-(s.left+s.width):e.left-s.left,y:0,...Tg}}if(o>i&&o<=a){return{x:-s.width-l,y:0,...Tg}}if(o<i&&o>=a){return{x:s.width+l,y:0,...Tg}}return{x:0,y:0,...Tg}};function Tb(e,t,r){const n=e[t];const i=e[t-1];const a=e[t+1];if(!n||!i&&!a){return 0}if(r<t){return i?n.left-(i.left+i.width):a.left-(n.left+n.width)}return a?a.left-(n.left+n.width):n.left-(i.left+i.width)}const T_=e=>{let{rects:t,activeIndex:r,overIndex:n,index:i}=e;const a=Tc(t,n,r);const o=t[i];const s=a[i];if(!s||!o){return null}return{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}};const Ty=e=>{let{activeIndex:t,index:r,rects:n,overIndex:i}=e;let a;let o;if(r===t){a=n[r];o=n[i]}if(r===i){a=n[r];o=n[t]}if(!o||!a){return null}return{x:o.left-a.left,y:o.top-a.top,scaleX:o.width/a.width,scaleY:o.height/a.height}};// To-do: We should be calculating scale transformation
const Tw={scaleX:1,scaleY:1};const Tx=e=>{var t;let{activeIndex:r,activeNodeRect:n,index:i,rects:a,overIndex:o}=e;const s=(t=a[r])!=null?t:n;if(!s){return null}if(i===r){const e=a[o];if(!e){return null}return{x:0,y:r<o?e.top+e.height-(s.top+s.height):e.top-s.top,...Tw}}const l=TA(a,i,r);if(i>r&&i<=o){return{x:0,y:-s.height-l,...Tw}}if(i<r&&i>=o){return{x:0,y:s.height+l,...Tw}}return{x:0,y:0,...Tw}};function TA(e,t,r){const n=e[t];const i=e[t-1];const a=e[t+1];if(!n){return 0}if(r<t){return i?n.top-(i.top+i.height):a?a.top-(n.top+n.height):0}return a?a.top-(n.top+n.height):i?n.top-(i.top+i.height):0}const TE="Sortable";const Tk=/*#__PURE__*/i().createContext({activeIndex:-1,containerId:TE,disableTransforms:false,items:[],overIndex:-1,useDragOverlay:false,sortedRects:[],strategy:T_,disabled:{draggable:false,droppable:false}});function TI(e){let{children:t,id:r,items:a,strategy:o=T_,disabled:s=false}=e;const{active:l,dragOverlay:u,droppableRects:c,over:d,measureDroppableContainers:f}=SG();const p=CM(TE,r);const h=Boolean(u.rect!==null);const v=(0,n.useMemo)(()=>a.map(e=>typeof e==="object"&&"id"in e?e.id:e),[a]);const g=l!=null;const m=l?v.indexOf(l.id):-1;const b=d?v.indexOf(d.id):-1;const _=(0,n.useRef)(v);const y=!Th(v,_.current);const w=b!==-1&&m===-1||y;const x=Tv(s);CS(()=>{if(y&&g){f(v)}},[y,v,g,f]);(0,n.useEffect)(()=>{_.current=v},[v]);const A=(0,n.useMemo)(()=>({activeIndex:m,containerId:p,disabled:x,disableTransforms:w,items:v,overIndex:b,useDragOverlay:h,sortedRects:Tf(v,c),strategy:o}),[m,p,x.draggable,x.droppable,w,v,b,c,h,o]);return i().createElement(Tk.Provider,{value:A},t)}const TC=e=>{let{id:t,items:r,activeIndex:n,overIndex:i}=e;return Tc(r,n,i).indexOf(t)};const TY=e=>{let{containerId:t,isSorting:r,wasDragging:n,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:l,transition:u}=e;if(!u||!n){return false}if(s!==a&&i===o){return false}if(r){return true}return o!==i&&t===l};const TS={duration:200,easing:"ease"};const TT="transform";const TO=/*#__PURE__*/CV.Transition.toString({property:TT,duration:0,easing:"linear"});const TD={roleDescription:"sortable"};/*
 * When the index of an item changes while sorting,
 * we need to temporarily disable the transforms
 */function TF(e){let{disabled:t,index:r,node:i,rect:a}=e;const[o,s]=(0,n.useState)(null);const l=(0,n.useRef)(r);CS(()=>{if(!t&&r!==l.current&&i.current){const e=a.current;if(e){const t=Y_(i.current,{ignoreTransform:true});const r={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};if(r.x||r.y){s(r)}}}if(r!==l.current){l.current=r}},[t,r,i,a]);(0,n.useEffect)(()=>{if(o){s(null)}},[o]);return o}function TP(e){let{animateLayoutChanges:t=TY,attributes:r,disabled:i,data:a,getNewIndex:o=TC,id:s,strategy:l,resizeObserverConfig:u,transition:c=TS}=e;const{items:d,containerId:f,activeIndex:p,disabled:h,disableTransforms:v,sortedRects:g,overIndex:m,useDragOverlay:b,strategy:_}=(0,n.useContext)(Tk);const y=TR(i,h);const w=d.indexOf(s);const x=(0,n.useMemo)(()=>({sortable:{containerId:f,index:w,items:d},...a}),[f,a,w,d]);const A=(0,n.useMemo)(()=>d.slice(d.indexOf(s)),[d,s]);const{rect:E,node:k,isOver:I,setNodeRef:C}=SX({id:s,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:A,...u}});const{active:Y,activatorEvent:S,activeNodeRect:T,attributes:O,setNodeRef:D,listeners:F,isDragging:P,over:R,setActivatorNodeRef:H,transform:M}=Sz({id:s,data:x,attributes:{...TD,...r},disabled:y.draggable});const N=Cy(C,D);const L=Boolean(Y);const K=L&&!v&&Tp(p)&&Tp(m);const q=!b&&P;const B=q&&K?M:null;const U=l!=null?l:_;const j=K?B!=null?B:U({rects:g,activeNodeRect:T,activeIndex:p,overIndex:m,index:w}):null;const V=Tp(p)&&Tp(m)?o({id:s,items:d,activeIndex:p,overIndex:m}):w;const W=Y==null?void 0:Y.id;const z=(0,n.useRef)({activeId:W,items:d,newIndex:V,containerId:f});const G=d!==z.current.items;const Q=t({active:Y,containerId:f,isDragging:P,isSorting:L,id:s,index:w,items:d,newIndex:z.current.newIndex,previousItems:z.current.items,previousContainerId:z.current.containerId,transition:c,wasDragging:z.current.activeId!=null});const $=TF({disabled:!Q,index:w,node:k,rect:E});(0,n.useEffect)(()=>{if(L&&z.current.newIndex!==V){z.current.newIndex=V}if(f!==z.current.containerId){z.current.containerId=f}if(d!==z.current.items){z.current.items=d}},[L,V,f,d]);(0,n.useEffect)(()=>{if(W===z.current.activeId){return}if(W!=null&&z.current.activeId==null){z.current.activeId=W;return}const e=setTimeout(()=>{z.current.activeId=W},50);return()=>clearTimeout(e)},[W]);return{active:Y,activeIndex:p,attributes:O,data:x,rect:E,index:w,newIndex:V,items:d,isOver:I,isSorting:L,isDragging:P,listeners:F,node:k,overIndex:m,over:R,setNodeRef:N,setActivatorNodeRef:H,setDroppableNodeRef:C,setDraggableNodeRef:D,transform:$!=null?$:j,transition:X()};function X(){if($||// Or to prevent items jumping to back to their "new" position when items change
G&&z.current.newIndex===w){return TO}if(q&&!CB(S)||!c){return undefined}if(L||Q){return CV.Transition.toString({...c,property:TT})}return undefined}}function TR(e,t){var r,n;if(typeof e==="boolean"){return{draggable:e,// Backwards compatibility
droppable:false}}return{draggable:(r=e==null?void 0:e.draggable)!=null?r:t.draggable,droppable:(n=e==null?void 0:e.droppable)!=null?n:t.droppable}}function TH(e){if(!e){return false}const t=e.data.current;if(t&&"sortable"in t&&typeof t.sortable==="object"&&"containerId"in t.sortable&&"items"in t.sortable&&"index"in t.sortable){return true}return false}const TM=[YG.Down,YG.Right,YG.Up,YG.Left];const TN=(e,t)=>{let{context:{active:r,collisionRect:n,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(TM.includes(e.code)){e.preventDefault();if(!r||!n){return}const t=[];a.getEnabled().forEach(r=>{if(!r||r!=null&&r.disabled){return}const a=i.get(r.id);if(!a){return}switch(e.code){case YG.Down:if(n.top<a.top){t.push(r)}break;case YG.Up:if(n.top>a.top){t.push(r)}break;case YG.Left:if(n.left>a.left){t.push(r)}break;case YG.Right:if(n.left<a.left){t.push(r)}break}});const l=Ys({active:r,collisionRect:n,droppableRects:i,droppableContainers:t,pointerCoordinates:null});let u=Yi(l,"id");if(u===(o==null?void 0:o.id)&&l.length>1){u=l[1].id}if(u!=null){const e=a.get(r.id);const t=a.get(u);const o=t?i.get(t.id):null;const l=t==null?void 0:t.node.current;if(l&&o&&e&&t){const r=YE(l);const i=r.some((e,t)=>s[t]!==e);const a=TL(e,t);const u=TK(e,t);const c=i||!a?{x:0,y:0}:{x:u?n.width-o.width:0,y:u?n.height-o.height:0};const d={x:o.left,y:o.top};const f=c.x&&c.y?d:CK(d,c);return f}}}return undefined};function TL(e,t){if(!TH(e)||!TH(t)){return false}return e.data.current.sortable.containerId===t.data.current.sortable.containerId}function TK(e,t){if(!TH(e)||!TH(t)){return false}if(!TL(e,t)){return false}return e.data.current.sortable.index<t.data.current.sortable.index}//# sourceMappingURL=sortable.esm.js.map
;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/atoms/ProBadge.tsx
function Tq(){var e=(0,eh._)(["\n      height: ",";\n      display: inline-flex;\n      border-radius: ",";\n      align-items: center;\n      gap: ",";\n      overflow: hidden;\n      background: linear-gradient(88.9deg, #d65702 6.26%, #e5803c 91.4%);\n    "]);Tq=function t(){return e};return e}function TB(){var e=(0,eh._)(["\n        padding: 0;\n        padding-inline: ",";\n        margin: 0;\n      "]);TB=function t(){return e};return e}function TU(){var e=(0,eh._)(["\n      display: inline-flex;\n      position: static;\n      transform: none;\n      padding: ",";\n      color: ",";\n      margin-right: ",";\n      font-size: ",";\n      line-height: ",";\n\n      ","\n    "]);TU=function t(){return e};return e}function Tj(){var e=(0,eh._)(["\n      position: static;\n      transform: none;\n      display: inline-flex;\n    "]);Tj=function t(){return e};return e}var TV=e=>{var{children:r,content:n,size:i="regular",textOnly:a}=e;var o=(0,iK/* .isDefined */.O9)(r);var s=!o&&!(0,iK/* .isDefined */.O9)(n);var l=/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:i==="tiny"?"crownRoundedSmall":"crownRounded",width:o?i==="tiny"?Tz[i].iconSize:16:Tz[i].iconSize,height:o?undefined:Tz[i].iconSize});return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:TG.wrapper({hasChildren:o,iconOnly:s,size:i}),children:[r,/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!o&&!a&&!s,children:l}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:TG.content({hasChildren:o,iconOnly:s,size:i,textOnly:a}),children:o||s?l:n})]})};/* export default */const TW=TV;var Tz={tiny:{borderRadius:iI/* .spacing["10"] */.YK["10"],height:iI/* .spacing["10"] */.YK["10"],gap:iI/* .spacing["2"] */.YK["2"],iconSize:10,fontSize:"0.5rem",lineHeight:"0.625rem"},small:{borderRadius:iI/* .spacing["16"] */.YK["16"],height:iI/* .spacing["16"] */.YK["16"],gap:iI/* .spacing["4"] */.YK["4"],iconSize:16,fontSize:iI/* .fontSize["10"] */.J["10"],lineHeight:iI/* .lineHeight["16"] */.K_["16"]},regular:{borderRadius:"22px",height:"22px",gap:"5px",iconSize:22,fontSize:iI/* .fontSize["14"] */.J["14"],lineHeight:iI/* .lineHeight["18"] */.K_["18"]},large:{borderRadius:"26px",height:"26px",gap:iI/* .spacing["6"] */.YK["6"],iconSize:26,fontSize:iI/* .fontSize["16"] */.J["16"],lineHeight:iI/* .lineHeight["26"] */.K_["26"]}};var TG={wrapper:e=>{var{hasChildren:t,iconOnly:r,size:n="regular"}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;svg{flex-shrink:0;}",!t&&!r&&(0,u/* .css */.AH)(Tq(),Tz[n].height,Tz[n].borderRadius,Tz[n].gap))},content:e=>{var{hasChildren:t,iconOnly:r,size:n="regular",textOnly:i}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:0;right:0;display:flex;flex-shrink:0;transform:translateX(50%) translateY(-50%);",!t&&!r&&(0,u/* .css */.AH)(TU(),iI/* .spacing["2"] */.YK["2"],iI/* .colorTokens.icon.white */.I6.icon.white,Tz[n].gap,Tz[n].fontSize,Tz[n].lineHeight,i&&(0,u/* .css */.AH)(TB(),iI/* .spacing["6"] */.YK["6"]))," ",r&&(0,u/* .css */.AH)(Tj()))}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/dndkit.ts
var TQ=e=>TY((0,ep._)((0,ef._)({},e),{wasDragging:true}));var T$={droppable:{strategy:Sa.Always}};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormImageAnswering.tsx
function TX(){var e=(0,eh._)(["\n      background-color: ",";\n      outline: 1px solid ",";\n\n      &:hover {\n        outline: 1px solid ",";\n      }\n    "]);TX=function t(){return e};return e}function TJ(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);TJ=function t(){return e};return e}function TZ(){var e=(0,eh._)(["\n      box-shadow: ",";\n    "]);TZ=function t(){return e};return e}var T0=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var T1=e=>{var{index:r,onDuplicateOption:i,onRemoveOption:a,field:o,isOverlay:s=false,questionId:l,validationError:u,setValidationError:c}=e;var d,f;var p;var h=(p=o.value)!==null&&p!==void 0?p:{answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:l,belongs_question_type:"image_answering"};var v=(0,n.useRef)(null);var[g,m]=(0,n.useState)(!h.answer_title&&!h.image_id&&!h.image_url);var[b,_]=(0,n.useState)(h);var{attributes:y,listeners:w,setNodeRef:x,transform:A,transition:E,isDragging:k}=TP({id:((d=o.value)===null||d===void 0?void 0:d.answer_id)||0,animateLayoutChanges:TQ});var{openMediaLibrary:I,resetFiles:C}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)){var{id:t,url:r}=e;o.onChange((0,ep._)((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:r}))}},initialFiles:((f=o.value)===null||f===void 0?void 0:f.image_id)?{id:Number(h.image_id),url:h.image_url||"",title:h.image_url||""}:null});var Y={transform:CV.Transform.toString(A),transition:E,opacity:k?.3:undefined};var S=()=>{o.onChange((0,ep._)((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:"",image_url:""}));C()};(0,n.useEffect)(()=>{if((0,iK/* .isDefined */.O9)(v.current)&&g){v.current.focus()}},[g]);return/*#__PURE__*/(0,t/* .jsx */.Y)("div",(0,ep._)((0,ef._)({},y),{css:T6.option,ref:x,style:Y,tabIndex:-1,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.optionLabel({isEditing:g,isOverlay:s,isDragging:k}),onClick:()=>{m(true)},onKeyDown:e=>{e.stopPropagation();if(e.key==="Enter"||e.key===" "){m(true)}},children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.optionHeader,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oO/* .styleUtils.optionCounter */.x.optionCounter({isEditing:g}),children:String.fromCharCode(65+r)}),/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!g&&h.is_saved,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({},w),{type:"button",css:oO/* .styleUtils.optionDragButton */.x.optionDragButton({isOverlay:s}),"data-visually-hidden":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"dragVertical",height:24,width:24})})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.optionActions,"data-visually-hidden":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Edit","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();m(true)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:24,height:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Duplicate","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!T0,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();i(h)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(TW,{size:"tiny",children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{disabled:true,type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:iq/* .noop */.lQ,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})})})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Delete","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();a()},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete",width:24,height:24})})})]})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:T6.optionBody,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:g,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.placeholderWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:h.image_url,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:T6.imagePlaceholder,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"imagePreview",height:48,width:48})}),children:()=>/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:T6.imagePlaceholder,children:/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:h.image_url,alt:h.image_url})})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:T6.optionPlaceholder,children:h.answer_title||(0,oM.__)("Write answer option...","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:oO/* .styleUtils.optionInputWrapper */.x.optionInputWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:{id:Number(h.image_id),url:h.image_url||"",title:h.image_url||""},buttonText:(0,oM.__)("Upload Image","tutor-pro"),infoText:(0,oM.__)("Standard Size: 700x430 pixels","tutor-pro"),uploadHandler:I,clearHandler:S,emptyImageCss:T6.emptyImageInput,previewImageCss:T6.previewImageInput}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.inputWithHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},o),{ref:v,type:"text",placeholder:(0,oM.__)("Input answer here","tutor-pro"),value:h.answer_title,onClick:e=>{e.stopPropagation()},onChange:e=>{o.onChange((0,ep._)((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_title:e.target.value}))},onKeyDown:e=>mz(function*(){e.stopPropagation();if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&h.answer_title){o.onChange((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));if((u===null||u===void 0?void 0:u.type)==="save_option"){c===null||c===void 0?void 0:c(null)}m(false)}})()})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.inputHints,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",height:20,width:20}),/*#__PURE__*/(0,t/* .jsxs */.FD)("p",{children:[(0,oM.__)("Students need to type their answers exactly as you write them here. Use ","tutor-pro"),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:{fontWeight:iI/* .fontWeight.semiBold */.Wy.semiBold},children:(0,oM.__)("small caps","tutor-pro")}),(0,oM.__)(" when writing the answer.","tutor-pro")]})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T6.optionInputButtons,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:e=>{e.stopPropagation();m(false);o.onChange(b);if(!h.is_saved){a();if((u===null||u===void 0?void 0:u.type)==="save_option"){c===null||c===void 0?void 0:c(null)}}},children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:e=>mz(function*(){e.stopPropagation();o.onChange((0,ep._)((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));_((0,ep._)((0,ef._)({},h,kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(h._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));if((u===null||u===void 0?void 0:u.type)==="save_option"){c===null||c===void 0?void 0:c(null)}m(false)})(),disabled:!h.answer_title||!h.image_id,children:(0,oM.__)("Ok","tutor-pro")})]})]})})})]})}))};/* export default */const T2=T1;var T6={option:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";align-items:center;"),optionLabel:e=>{var{isEditing:t,isOverlay:r,isDragging:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["20"] */.YK["20"],";width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";[data-visually-hidden]{opacity:0;}&:hover{outline:1px solid ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(TX(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.stroke.brand */.I6.stroke.brand,iI/* .colorTokens.stroke.brand */.I6.stroke.brand)," ",n&&(0,u/* .css */.AH)(TJ(),iI/* .colorTokens.stroke.hover */.I6.stroke.hover)," ",r&&(0,u/* .css */.AH)(TZ(),iI/* .shadow.drag */.r7.drag)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-visually-hidden]{opacity:1;}}")},optionHeader:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr auto 1fr;align-items:center;:focus-within{[data-visually-hidden]{opacity:1;}}"),optionActions:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    gap:",iI/* .spacing["8"] */.YK["8"],";place-self:center end;"),optionBody:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex()),placeholderWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["12"] */.YK["12"],";width:100%;"),imagePlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";height:210px;width:100%;background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;svg{color:",iI/* .colorTokens.icon.hints */.I6.icon.hints,";}img{width:100%;height:100%;object-fit:cover;object-position:center;}"),emptyImageInput:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;"),previewImageInput:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),optionPlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding-block:",iI/* .spacing["4"] */.YK["4"],";"),inputWithHints:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["8"] */.YK["8"],";"),inputHints:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    gap:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";align-items:flex-start;svg{flex-shrink:0;}"),optionInputButtons:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/ImageAnswering.tsx
var T4=()=>{var[e,r]=(0,n.useState)(null);var i=fN();var{validationError:a,setValidationError:o}=I4();var s=i.getValues("question_id");var{fields:l,append:u,insert:c,remove:d,move:f}=pW({control:i.control,name:"question_answers"});var p=C8(C3(Y2,{activationConstraint:{distance:10}}),C3(YX,{coordinateGetter:TN}));var h=(0,n.useMemo)(()=>{if(!e){return null}return l.find(t=>t.answer_id===e)},[e,l]);var v=()=>{u({_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:s||"",belongs_question_type:"image_answering",answer_order:l.length,answer_two_gap_match:"",answer_view_format:""},{shouldFocus:true,focusName:"question_answers.".concat(l.length,".answer_title")})};var g=(e,t)=>{var r=oR(oF({},t),{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"".concat(t.answer_title," (copy)"),is_correct:"0"});var n=e+1;c(n,r)};var m=(e,t)=>{d(e);if(t._data_status!==iK/* .QuizDataStatus.NEW */.cW.NEW){i.setValue("deleted_answer_ids",[...i.getValues("deleted_answer_ids")||[],t.answer_id])}};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:T3.optionWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)(SU,{sensors:p,collisionDetection:Yo,modifiers:[Tl],onDragStart:e=>{r(e.active.id)},onDragEnd:e=>{var{active:t,over:n}=e;if(!n){return}if(t.id!==n.id){var i=l.findIndex(e=>e.answer_id===t.id);var a=l.findIndex(e=>e.answer_id===n.id);f(i,a)}r(null)},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(TI,{items:l.map(e=>oR(oF({},e),{id:e.answer_id})),strategy:Tx,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:l,children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(r),render:n=>/*#__PURE__*/(0,t/* .jsx */.Y)(T2,oR(oF({},n),{onDuplicateOption:e=>g(r,e),onRemoveOption:()=>m(r,e),index:r,questionId:s,validationError:a,setValidationError:o}))},"".concat(e.answer_id,"-").concat(r))})}),/*#__PURE__*/(0,is.createPortal)(/*#__PURE__*/(0,t/* .jsx */.Y)(Tt,{zIndex:iI/* .zIndex.highest */.fE.highest,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:h,children:r=>{var n=l.findIndex(e=>e.answer_id===r.answer_id);return/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(n),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(T2,oR(oF({},e),{onDuplicateOption:iq/* .noop */.lQ,onRemoveOption:iq/* .noop */.lQ,index:n,isOverlay:true,questionId:s,validationError:a,setValidationError:o}))},e)}})}),document.body)]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:v,buttonContentCss:T3.addOptionButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24}),children:(0,oM.__)("Add Option","tutor-pro")})})]})};/* export default */const T5=T4;var T3={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";padding-left:",iI/* .spacing["40"] */.YK["40"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),addOptionButton:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormMatching.tsx
function T8(){var e=(0,eh._)(["\n      background-color: ",";\n      outline: 1px solid ",";\n\n      &:hover {\n        outline: 1px solid ",";\n      }\n    "]);T8=function t(){return e};return e}function T9(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);T9=function t(){return e};return e}function T7(){var e=(0,eh._)(["\n      box-shadow: ",";\n    "]);T7=function t(){return e};return e}function Oe(){var e=(0,eh._)(["\n      gap: ",";\n    "]);Oe=function t(){return e};return e}var Ot=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var Or=e=>{var{index:r,onDuplicateOption:i,onRemoveOption:a,field:o,isOverlay:s=false,isImageMatching:l,questionId:u,validationError:c,setValidationError:d}=e;var f,p;var h;var v=(h=o.value)!==null&&h!==void 0?h:{answer_id:"",answer_title:"",answer_two_gap_match:"",is_correct:"0",belongs_question_id:u,belongs_question_type:"matching"};var g=(0,n.useRef)(null);var[m,b]=(0,n.useState)(!v.answer_title||l?!v.image_url:!v.answer_two_gap_match);var[_,y]=(0,n.useState)(v);var{attributes:w,listeners:x,setNodeRef:A,transform:E,transition:k,isDragging:I}=TP({id:((f=o.value)===null||f===void 0?void 0:f.answer_id)||0,animateLayoutChanges:TQ});var{openMediaLibrary:C,resetFiles:Y}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)){var{id:t,url:r}=e;o.onChange((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:r}))}},initialFiles:((p=o.value)===null||p===void 0?void 0:p.image_id)?{id:Number(o.value.image_id),url:o.value.image_url||"",title:""}:null});var S={transform:CV.Transform.toString(E),transition:k,opacity:I?.3:undefined};var T=()=>{o.onChange((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:"",image_url:""}));Y()};(0,n.useEffect)(()=>{if((0,iK/* .isDefined */.O9)(g.current)&&m){g.current.focus()}},[m]);return/*#__PURE__*/(0,t/* .jsx */.Y)("div",(0,ep._)((0,ef._)({},w),{css:Oi.option,ref:A,tabIndex:-1,style:S,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Oi.optionLabel({isEditing:m,isDragging:I,isOverlay:s}),onClick:()=>{b(true)},onKeyDown:e=>{e.stopPropagation();if(e.key==="Enter"||e.key===" "){b(true)}},children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Oi.optionHeader,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oO/* .styleUtils.optionCounter */.x.optionCounter({isEditing:m}),children:String.fromCharCode(65+r)}),/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!m&&v.is_saved,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({},x),{type:"button",css:oO/* .styleUtils.optionDragButton */.x.optionDragButton({isOverlay:s}),"data-visually-hidden":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"dragVertical",height:24,width:24})})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Oi.optionActions,"data-visually-hidden":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Edit","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,"data-edit-button":true,onClick:e=>{e.stopPropagation();b(true)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:24,height:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Duplicate","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!Ot,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();i(v)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(TW,{size:"tiny",children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{disabled:true,type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:iq/* .noop */.lQ,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})})})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Delete","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,"data-visually-hidden":true,onClick:e=>{e.stopPropagation();a()},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete",width:24,height:24})})})]})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Oi.optionBody,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:m,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Oi.placeholderWrapper({isImageMatching:l}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Oi.optionPlaceholder,children:v.answer_title||(0,oM.__)("Answer title...","tutor-pro")}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:v.image_url,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Oi.imagePlaceholder,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"imagePreview",height:48,width:48})}),children:()=>/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Oi.imagePlaceholder,children:/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:v.image_url,alt:v.image_url})})})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Oi.optionPlaceholder,children:!l?v.answer_two_gap_match:v.answer_title})]}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:oO/* .styleUtils.optionInputWrapper */.x.optionInputWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:{id:Number(v.image_id),url:v.image_url||"",title:v.image_url||""},infoText:(0,oM.__)("Standard Size: 700x430 pixels","tutor-pro"),uploadHandler:C,clearHandler:T,emptyImageCss:Oi.emptyImageInput,previewImageCss:Oi.previewImageInput})}),/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},o),{type:"text",ref:g,placeholder:!l?(0,oM.__)("Question","tutor-pro"):(0,oM.__)("Image matched text..","tutor-pro"),value:v.answer_title,onClick:e=>{e.stopPropagation()},onChange:e=>{o.onChange((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_title:e.target.value}))},onKeyDown:e=>mz(function*(){e.stopPropagation();if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&v.answer_title&&v.answer_two_gap_match){o.onChange((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}));b(false)}})()})),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!l,children:/*#__PURE__*/(0,t/* .jsx */.Y)("input",(0,ep._)((0,ef._)({},o),{type:"text",placeholder:(0,oM.__)("Matched option..","tutor-pro"),value:v.answer_two_gap_match,onClick:e=>{e.stopPropagation()},onChange:e=>{o.onChange((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:e.target.value}))},onKeyDown:e=>{e.stopPropagation();if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&v.answer_title&&v.answer_two_gap_match){o.onChange((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));if((c===null||c===void 0?void 0:c.type)==="save_option"){d===null||d===void 0?void 0:d(null)}b(false)}}}))}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Oi.optionInputButtons,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:e=>{e.stopPropagation();b(false);o.onChange(_);if(!v.is_saved){if((c===null||c===void 0?void 0:c.type)==="save_option"){d===null||d===void 0?void 0:d(null)}a()}},children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:e=>{e.stopPropagation();o.onChange((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));y((0,ep._)((0,ef._)({},v,kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(v._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));if((c===null||c===void 0?void 0:c.type)==="save_option"){d===null||d===void 0?void 0:d(null)}b(false)},disabled:!v.answer_title||(l?!v.image_id:!v.answer_two_gap_match),children:(0,oM.__)("Ok","tutor-pro")})]})]})})})]})}))};/* export default */const On=Or;var Oi={option:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";align-items:center;"),optionLabel:e=>{var{isEditing:t,isDragging:r,isOverlay:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["12"] */.YK["12"],";width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";[data-visually-hidden]{opacity:0;}&:hover{outline:1px solid ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(T8(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.stroke.brand */.I6.stroke.brand,iI/* .colorTokens.stroke.brand */.I6.stroke.brand)," ",r&&(0,u/* .css */.AH)(T9(),iI/* .colorTokens.stroke.hover */.I6.stroke.hover)," ",n&&(0,u/* .css */.AH)(T7(),iI/* .shadow.drag */.r7.drag)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-visually-hidden]{opacity:1;}}")},optionHeader:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr auto 1fr;align-items:center;&:focus-within{[data-visually-hidden]{opacity:1;}}"),optionActions:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    gap:",iI/* .spacing["8"] */.YK["8"],";place-self:center end;"),actionButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";",oO/* .styleUtils.display.flex */.x.display.flex(),"    color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";cursor:pointer;&:disabled{cursor:not-allowed;color:",iI/* .colorTokens.icon.disable.background */.I6.icon.disable.background,";}"),optionBody:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex()),placeholderWrapper:e=>{var{isImageMatching:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    width:100%;",t&&(0,u/* .css */.AH)(Oe(),iI/* .spacing["12"] */.YK["12"]))},imagePlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";height:210px;width:100%;background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;svg{color:",iI/* .colorTokens.icon.hints */.I6.icon.hints,";}img{width:100%;height:100%;object-fit:cover;object-position:center;}"),emptyImageInput:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;"),previewImageInput:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),optionPlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding-block:",iI/* .spacing["4"] */.YK["4"],";"),optionInputWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    width:100%;gap:",iI/* .spacing["12"] */.YK["12"],";"),optionInputButtons:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/Matching.tsx
var Oa=()=>{var[e,r]=(0,n.useState)(null);var i=fN();var{validationError:a,setValidationError:o}=I4();var s=i.getValues("question_id");var l=i.watch("question_settings.is_image_matching");var{fields:u,append:c,insert:d,remove:f,move:p}=pW({control:i.control,name:"question_answers"});var h=fz({control:i.control,name:"question_settings.is_image_matching",defaultValue:false});var v=C8(C3(Y2,{activationConstraint:{distance:10}}),C3(YX,{coordinateGetter:TN}));var g=(0,n.useMemo)(()=>{if(!e){return null}return u.find(t=>t.answer_id===e)},[e,u]);var m=()=>{c({_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:s||"",belongs_question_type:h?"image_matching":"matching",answer_order:u.length,answer_two_gap_match:"",answer_view_format:""},{shouldFocus:true,focusName:"question_answers.".concat(u.length,".answer_title")})};var b=(e,t)=>{var r=oR(oF({},t),{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"".concat(t.answer_title," (copy)"),is_correct:"0"});var n=e+1;d(n,r)};var _=(e,t)=>{f(e);if(t._data_status!==iK/* .QuizDataStatus.NEW */.cW.NEW){i.setValue("deleted_answer_ids",[...i.getValues("deleted_answer_ids")||[],t.answer_id])}};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Os.optionWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)(SU,{sensors:v,collisionDetection:Yo,modifiers:[Tl],onDragStart:e=>{r(e.active.id)},onDragEnd:e=>{var{active:t,over:n}=e;if(!n){return}if(t.id!==n.id){var i=u.findIndex(e=>e.answer_id===t.id);var a=u.findIndex(e=>e.answer_id===n.id);p(i,a)}r(null)},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(TI,{items:u.map(e=>oR(oF({},e),{id:e.answer_id})),strategy:Tx,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:u,children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(r),render:n=>/*#__PURE__*/(0,t/* .jsx */.Y)(On,oR(oF({},n),{index:r,onDuplicateOption:e=>b(r,e),onRemoveOption:()=>_(r,e),isImageMatching:l,questionId:s,validationError:a,setValidationError:o}))},"".concat(e.answer_id,"-").concat(r))})}),/*#__PURE__*/(0,is.createPortal)(/*#__PURE__*/(0,t/* .jsx */.Y)(Tt,{zIndex:iI/* .zIndex.highest */.fE.highest,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:g,children:r=>{var n=u.findIndex(e=>e.answer_id===r.answer_id);return/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(n),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(On,oR(oF({},e),{index:n,onDuplicateOption:iq/* .noop */.lQ,onRemoveOption:iq/* .noop */.lQ,isOverlay:true,isImageMatching:l,questionId:s,validationError:a,setValidationError:o}))},e)}})}),document.body)]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:m,buttonContentCss:Os.addOptionButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24}),children:(0,oM.__)("Add Option","tutor-pro")})})]})};/* export default */const Oo=Oa;var Os={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";padding-left:",iI/* .spacing["40"] */.YK["40"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),addOptionButton:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormMultipleChoiceAndOrdering.tsx
function Ol(){var e=(0,eh._)(["\n        fill: none;\n      "]);Ol=function t(){return e};return e}function Ou(){var e=(0,eh._)(["\n          fill: ",";\n        "]);Ou=function t(){return e};return e}function Oc(){var e=(0,eh._)(["\n      [data-check-button] {\n        opacity: 1;\n        color: ",";\n        ","\n      }\n    "]);Oc=function t(){return e};return e}function Od(){var e=(0,eh._)(["\n      background-color: ",";\n      color: ",";\n\n      &:hover {\n        outline: 1px solid ",";\n      }\n    "]);Od=function t(){return e};return e}function Of(){var e=(0,eh._)(["\n      background-color: ",";\n      outline: 1px solid ",";\n      &:hover {\n        outline: 1px solid ",";\n      }\n    "]);Of=function t(){return e};return e}function Op(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);Op=function t(){return e};return e}function Oh(){var e=(0,eh._)(["\n      box-shadow: ",";\n    "]);Oh=function t(){return e};return e}var Ov=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;var Og=e=>{var{field:r,onDuplicateOption:i,onRemoveOption:a,onCheckCorrectAnswer:o,index:s,isOverlay:l=false,questionId:u,hasMultipleCorrectAnswer:c=false,questionType:d="multiple_choice",validationError:f,setValidationError:p}=e;var h,v;var g;var m=(g=r.value)!==null&&g!==void 0?g:{answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:u,belongs_question_type:"multiple_choice"};var b=(0,n.useRef)(null);var[_,y]=(0,n.useState)(!m.is_saved||!m.answer_title&&!m.image_url);var[w,x]=(0,n.useState)((0,iK/* .isDefined */.O9)(m.image_id)&&(0,iK/* .isDefined */.O9)(m.image_url));var[A,E]=(0,n.useState)(m);var{attributes:k,listeners:I,setNodeRef:C,transform:Y,transition:S,isDragging:T}=TP({id:((h=r.value)===null||h===void 0?void 0:h.answer_id)||0,animateLayoutChanges:TQ});var{openMediaLibrary:O,resetFiles:D}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)){var{id:t,url:n}=e;r.onChange((0,ep._)((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:n,answer_view_format:"text_image"}));x(true)}},initialFiles:((v=r.value)===null||v===void 0?void 0:v.image_id)?{id:Number(r.value.image_id),url:r.value.image_url||"",title:""}:null});var F={transform:CV.Transform.toString(Y),transition:S,opacity:T?.3:undefined};var P=()=>{D();r.onChange((0,ep._)((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:"",image_url:"",answer_view_format:"text"}));x(false)};(0,n.useEffect)(()=>{if((0,iK/* .isDefined */.O9)(b.current)&&_){b.current.focus()}},[_]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",(0,ep._)((0,ef._)({},k),{css:Ob.option({isSelected:!!Number(m.is_correct),isMultipleChoice:c}),tabIndex:-1,ref:C,style:F,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:d==="multiple_choice",children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{css:oO/* .styleUtils.optionCheckButton */.x.optionCheckButton,"data-check-button":true,type:"button",onClick:o,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:c,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:Number(m.is_correct)?"checkFilled":"check",height:32,width:32}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:Number(m.is_correct)?"checkSquareFilled":"checkSquare",height:32,width:32})})},m.is_correct)}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.optionLabel({isSelected:!!Number(m.is_correct),isEditing:_,isDragging:T,isOverlay:l}),onClick:()=>{y(true)},onKeyDown:e=>{e.stopPropagation();if(e.key==="Enter"||e.key===" "){y(true)}},children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.optionHeader({isEditing:_}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.optionCounterAndButton,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:oO/* .styleUtils.optionCounter */.x.optionCounter({isSelected:!!Number(m.is_correct),isEditing:_}),children:String.fromCharCode(65+s)}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:_,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!w,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"removeImage",width:24,height:24}),onClick:e=>{e.stopPropagation();P()},children:(0,oM.__)("Remove Image","tutor-pro")}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"addImage",width:24,height:24}),onClick:e=>{e.stopPropagation();O()},children:(0,oM.__)("Add Image","tutor-pro")})})})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!_&&m.is_saved,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({},I),{type:"button",css:oO/* .styleUtils.optionDragButton */.x.optionDragButton({isOverlay:l}),"data-visually-hidden":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"dragVertical",height:24,width:24})})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.optionActions,"data-visually-hidden":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Edit","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();y(true)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:24,height:24})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Duplicate","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!Ov,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();i(m)},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(TW,{size:"tiny",children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{disabled:true,type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:iq/* .noop */.lQ,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"copyPaste",width:24,height:24})})})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:(0,oM.__)("Delete","tutor-pro"),delay:200,children:/*#__PURE__*/(0,t/* .jsx */.Y)("button",{type:"button",css:oO/* .styleUtils.actionButton */.x.actionButton,onClick:e=>{e.stopPropagation();a()},children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"delete",width:24,height:24})})})]})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ob.optionBody,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:_,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.placeholderWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:m.image_url,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ob.imagePlaceholder,children:/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:m.image_url,alt:m.image_url})})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Ob.optionPlaceholder,children:m.answer_title||(0,oM.__)("Write answer option...","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:oO/* .styleUtils.optionInputWrapper */.x.optionInputWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:w,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:{id:Number(m.image_id),url:m.image_url||"",title:(0,oM.__)("Image","tutor-pro")},buttonText:(0,oM.__)("Upload Image","tutor-pro"),infoText:(0,oM.__)("Size: 700x430 pixels","tutor-pro"),uploadHandler:O,clearHandler:P,emptyImageCss:Ob.emptyImageInput,previewImageCss:Ob.previewImageInput})}),/*#__PURE__*/(0,t/* .jsx */.Y)("textarea",(0,ep._)((0,ef._)({},r),{ref:b,placeholder:(0,oM.__)("Write option...","tutor-pro"),value:m.answer_title,onClick:e=>{e.stopPropagation()},onChange:e=>{var{value:t}=e.target;r.onChange((0,ep._)((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_title:t}))},onKeyDown:e=>mz(function*(){e.stopPropagation();if((e.metaKey||e.ctrlKey)&&e.key==="Enter"&&m.answer_title){r.onChange((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE),is_saved:true}));if((f===null||f===void 0?void 0:f.type)==="save_option"){p===null||p===void 0?void 0:p(null)}y(false)}})()})),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Ob.optionInputButtons,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:e=>{e.stopPropagation();y(false);r.onChange(A);if(!m.is_saved){if((f===null||f===void 0?void 0:f.type)==="save_option"){p===null||p===void 0?void 0:p(null)}a()}},children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",size:"small",onClick:e=>mz(function*(){e.stopPropagation();r.onChange((0,ep._)((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));E((0,ep._)((0,ef._)({},m,kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(m._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_saved:true}));if((f===null||f===void 0?void 0:f.type)==="save_option"){p===null||p===void 0?void 0:p(null)}y(false)})(),disabled:!m.answer_title&&!m.image_url,children:(0,oM.__)("Ok","tutor-pro")})]})]})})})]})]}))};/* export default */const Om=Og;var Ob={option:e=>{var{isSelected:t,isMultipleChoice:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";align-items:center;[data-check-button]{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";",!r&&(0,u/* .css */.AH)(Ol()),"      &:focus-visible{opacity:1;}}&:hover{[data-check-button]{opacity:1;}}&:focus-within{[data-check-button]{opacity:1;}}",t&&(0,u/* .css */.AH)(Oc(),iI/* .colorTokens.bg.success */.I6.bg.success,!r&&(0,u/* .css */.AH)(Ou(),iI/* .colorTokens.bg.success */.I6.bg.success))," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-check-button]{opacity:1;}}")},optionLabel:e=>{var{isSelected:t,isEditing:r,isDragging:n,isOverlay:i}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-direction:column;gap:",iI/* .spacing["12"] */.YK["12"],";width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";[data-visually-hidden]{opacity:0;}&:hover{outline:1px solid ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(Od(),iI/* .colorTokens.background.success.fill40 */.I6.background.success.fill40,iI/* .colorTokens.text.primary */.I6.text.primary,iI/* .colorTokens.stroke.success.fill70 */.I6.stroke.success.fill70)," ",r&&(0,u/* .css */.AH)(Of(),iI/* .colorTokens.background.white */.I6.background.white,t?iI/* .colorTokens.stroke.success.fill70 */.I6.stroke.success.fill70:iI/* .colorTokens.stroke.brand */.I6.stroke.brand,t?iI/* .colorTokens.stroke.success.fill70 */.I6.stroke.success.fill70:iI/* .colorTokens.stroke.brand */.I6.stroke.brand)," ",n&&(0,u/* .css */.AH)(Op(),iI/* .colorTokens.stroke.hover */.I6.stroke.hover)," ",i&&(0,u/* .css */.AH)(Oh(),iI/* .shadow.drag */.r7.drag)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-visually-hidden]{opacity:1;}}")},optionHeader:e=>{var{isEditing:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:",!t?"1fr auto 1fr":"1fr",";align-items:center;&:focus-within{[data-visually-hidden]{opacity:1;}}")},optionCounterAndButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    gap:",iI/* .spacing["8"] */.YK["8"],";place-self:center start;button{padding:0;min-height:24px;}"),optionActions:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    gap:",iI/* .spacing["8"] */.YK["8"],";place-self:center end;"),optionBody:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex()),placeholderWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["12"] */.YK["12"],";width:100%;"),imagePlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";height:210px;width:100%;background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;svg{color:",iI/* .colorTokens.icon.hints */.I6.icon.hints,";}img{width:100%;height:100%;object-fit:cover;object-position:center;}"),emptyImageInput:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;"),previewImageInput:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),optionPlaceholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding-block:",iI/* .spacing["4"] */.YK["4"],";"),optionInputButtons:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    justify-content:flex-end;gap:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/MultipleChoiceAndOrdering.tsx
function O_(){var e=oH(["\n      padding-left: ",";\n    "]);O_=function t(){return e};return e}function Oy(){var e=oH(["\n      margin-left: ",";\n    "]);Oy=function t(){return e};return e}var Ow=()=>{var[e,r]=(0,n.useState)(null);var i=fN();var{validationError:a,setValidationError:o}=I4();var s=fz({control:i.control,name:"question_settings.has_multiple_correct_answer",defaultValue:false});var l=i.watch("question_id");var u=i.watch("question_type");var{fields:c,append:d,insert:f,remove:p,update:h,replace:v,move:g}=pW({control:i.control,name:"question_answers"});var m=C8(C3(Y2,{activationConstraint:{distance:10}}),C3(YX,{coordinateGetter:TN}));var b=fz({control:i.control,name:"question_answers",defaultValue:[]});var _=(0,n.useMemo)(()=>{if(!e){return null}return c.find(t=>t.answer_id===e)},[e,c]);var y=(e,t)=>{if(s){h(e,oR(oF({},t,kZ(t._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(t._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_correct:t.is_correct==="1"?"0":"1"}))}else{var r=b.map(e=>oR(oF({},e,kZ(e._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(e._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_correct:e.answer_id===t.answer_id?"1":"0"}));v(r)}if((a===null||a===void 0?void 0:a.type)==="correct_option"){o(null)}};var w=()=>{d({_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:false,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:l,belongs_question_type:u,answer_order:c.length,answer_two_gap_match:"",answer_view_format:"text"},{shouldFocus:true,focusName:"question_answers.".concat(c.length,".answer_title")});if((a===null||a===void 0?void 0:a.type)==="add_option"){o(null)}};var x=(e,t)=>{var r=oR(oF({},t),{_data_status:iK/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"".concat(t.answer_title," (copy)"),is_correct:"0"});var n=e+1;f(n,r)};var A=(e,t)=>{p(e);if(t._data_status!==iK/* .QuizDataStatus.NEW */.cW.NEW){i.setValue("deleted_answer_ids",[...i.getValues("deleted_answer_ids")||[],t.answer_id])}};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OA.optionWrapper({isOrdering:u==="ordering"}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)(SU,{sensors:m,collisionDetection:Yo,modifiers:[Tl],onDragStart:e=>{r(e.active.id)},onDragEnd:e=>{var{active:t,over:n}=e;if(!n){return}if(t.id!==n.id){var i=c.findIndex(e=>e.answer_id===t.id);var a=c.findIndex(e=>e.answer_id===n.id);g(i,a)}r(null)},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(TI,{items:c.map(e=>oR(oF({},e),{id:e.answer_id})),strategy:Tx,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:c,children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(r),render:n=>/*#__PURE__*/(0,t/* .jsx */.Y)(Om,oR(oF({},n),{onDuplicateOption:e=>x(r,e),onRemoveOption:()=>A(r,e),onCheckCorrectAnswer:()=>y(r,e),index:r,questionId:l,validationError:a,setValidationError:o,hasMultipleCorrectAnswer:s,questionType:u}))},"".concat(e.answer_id,"-").concat(e.is_correct))})}),/*#__PURE__*/(0,is.createPortal)(/*#__PURE__*/(0,t/* .jsx */.Y)(Tt,{zIndex:iI/* .zIndex.highest */.fE.highest,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:_,children:r=>{var n=b.findIndex(e=>e.answer_id===r.answer_id);return/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(n),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Om,oR(oF({},e),{onDuplicateOption:iq/* .noop */.lQ,onRemoveOption:iq/* .noop */.lQ,onCheckCorrectAnswer:iq/* .noop */.lQ,index:n,isOverlay:true,questionId:l,validationError:a,setValidationError:o,hasMultipleCorrectAnswer:s,questionType:u}))},e)}})}),document.body)]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OA.addOptionButtonWrapper({isOrdering:u==="ordering"}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",onClick:w,buttonContentCss:OA.addOptionButton,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24}),children:(0,oM.__)("Add Option","tutor-pro")})})]})};/* export default */const Ox=Ow;var OA={optionWrapper:e=>{var{isOrdering:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";",t&&(0,u/* .css */.AH)(O_(),iI/* .spacing["40"] */.YK["40"]))},addOptionButtonWrapper:e=>{var{isOrdering:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("margin-left:",iI/* .spacing["48"] */.YK["48"],";",t&&(0,u/* .css */.AH)(Oy(),iI/* .spacing["8"] */.YK["8"]))},addOptionButton:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";svg{color:",iI/* .colorTokens.icon.brand */.I6.icon.brand,";}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/OpenEndedAndShortAnswer.tsx
var OE=()=>{return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OI.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(yO,{icon:"bulb",children:(0,oM.__)("No options are necessary for this question type","tutor-pro")})})};/* export default */const Ok=OE;var OI={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)("padding-left:",iI/* .spacing["40"] */.YK["40"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormPinImage.tsx
/** Instructor mask stroke/fill for valid pin region (same draw core as learning-area draw-on-image). */var OC="rgba(220, 53, 69, 0.95)";var OY=e=>{var{field:r}=e;var i=r.value;var a=(0,n.useId)();var o="".concat(a,"-instruction");var s="".concat(a,"-live-region");var[l,u]=(0,n.useState)(false);var c=(0,n.useRef)(null);var d=(0,n.useRef)(null);var f=(0,n.useRef)(null);var p=(0,n.useRef)(null);var h=(0,n.useCallback)(e=>{r.onChange(e)},[r]);var v=(0,n.useCallback)(e=>{if(!i){return}h((0,ep._)((0,ef._)({},i,kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:e,is_saved:true}));u(Boolean(e))},[i,h]);var{clearMask:g,announceStatus:m}=Cr({imageRef:c,canvasRef:d,interactionRootRef:f,liveRegionRef:p,instructionId:o,liveRegionId:s,imageUrl:i===null||i===void 0?void 0:i.image_url,initialMaskUrl:(i===null||i===void 0?void 0:i.answer_two_gap_match)||undefined,strokeStyle:OC,onMaskChange:v,onDrawStart:()=>u(true)});var{openMediaLibrary:b,resetFiles:_}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)&&i){var{id:t,url:r}=e;var n=(0,ep._)((0,ef._)({},i,kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:r,answer_two_gap_match:""});h(n);u(false)}},initialFiles:(i===null||i===void 0?void 0:i.image_id)?{id:Number(i.image_id),url:i.image_url||"",title:i.image_url||""}:null});var y=()=>{if(!i){return}g();m((0,oM.__)("Valid pin area cleared.","tutor-pro"))};var w=()=>{if(!i){return}var e=(0,ep._)((0,ef._)({},i,kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(i._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:undefined,image_url:""});h(e);_();u(false);g()};if(!i){return null}var x=l||Boolean(i===null||i===void 0?void 0:i.answer_two_gap_match);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OT.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OT.card,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OT.imageInputWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:(i===null||i===void 0?void 0:i.image_id)?{id:Number(i.image_id),url:i.image_url||"",title:i.image_url||""}:null,buttonText:(0,oM.__)("Upload Image","tutor-pro"),infoText:(0,oM.__)("Upload the base image students will pin on.","tutor-pro"),uploadHandler:b,clearHandler:w,emptyImageCss:OT.imageInputEmpty,previewImageCss:OT.imageInputPreview})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i===null||i===void 0?void 0:i.image_url,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OT.card,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OT.answerHeader,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{css:OT.answerHeaderTitle,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:OT.headerIcon,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"edit",width:20,height:20,"aria-hidden":true})}),(0,oM.__)("Mark the correct area","tutor-pro")]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:x,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OT.actionsRow,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{type:"button",variant:"secondary",size:"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"eraser",style:OT.clearButtonIcon,width:18,height:18}),onClick:y,children:(0,oM.__)("Clear","tutor-pro")})})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{id:o,css:IE,children:(0,oM.__)("Use arrow keys to move the drawing pointer. Press Space or Enter to start a freehand stroke, trace with arrow keys, then press Space or Enter again to finish and fill the selection. Escape cancels an in-progress stroke. C clears the saved selection.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{id:s,ref:p,css:IE,"aria-live":"polite","aria-atomic":"true",role:"status"}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OT.canvasOuter,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OT.canvasInner,ref:f,className:"tutor-draw-image-wrapper",children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{ref:c,src:i===null||i===void 0?void 0:i.image_url,alt:(0,oM.__)("Background image for pin area","tutor-pro"),css:[OT.image,OT.answerImage]}),/*#__PURE__*/(0,t/* .jsx */.Y)("canvas",{ref:d,tabIndex:0,role:"application","aria-describedby":"".concat(o," ").concat(s),css:[OT.canvas,Ik],"aria-label":(0,oM.__)("Mark the valid pin area: use pointer or keyboard to draw the accepted region.","tutor-pro")})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i===null||i===void 0?void 0:i.answer_two_gap_match,children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:OT.savedHint,children:(0,oM.__)("Pin area saved. Students will be graded against this region.","tutor-pro")})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!(i===null||i===void 0?void 0:i.image_url),children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:OT.placeholder,children:(0,oM.__)("Upload an image to define where students must drop a pin. Then mark the valid area in the next section.","tutor-pro")})})]})};/* export default */const OS=OY;var OT={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),card:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";padding:",iI/* .spacing["20"] */.YK["20"],";background:",iI/* .colorTokens.surface.tutor */.I6.surface.tutor,";border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-width:100%;"),imageInputEmpty:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputPreview:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),answerHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:space-between;gap:",iI/* .spacing["12"] */.YK["12"],";min-height:32px;"),answerHeaderTitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";",oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),headerIcon:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;flex-shrink:0;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),canvasOuter:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:center;width:100%;"),canvasInner:/*#__PURE__*/(0,u/* .css */.AH)("position:relative;display:inline-block;max-width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{display:block;width:100%;}img{display:block;width:auto;max-width:100%;height:auto;",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{width:100%;}}"),image:/*#__PURE__*/(0,u/* .css */.AH)("display:block;max-width:100%;height:auto;"),answerImage:/*#__PURE__*/(0,u/* .css */.AH)("filter:grayscale(0.1);"),canvas:/*#__PURE__*/(0,u/* .css */.AH)("position:absolute;top:0;left:0;z-index:1;"),actionsRow:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:flex-end;min-width:94px;min-height:32px;gap:",iI/* .spacing["12"] */.YK["12"],";flex-wrap:wrap;color:",iI/* .colorTokens.text.brand */.I6.text.brand,";"),clearButtonIcon:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.brand */.I6.text.brand,";"),savedHint:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.success */.I6.text.success,";margin:0;"),placeholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/PinImage.tsx
var OO=()=>{var e=fN();var{validationError:r,setValidationError:n}=I4();var i=e.watch("question_id");var a="question_answers";var{fields:o}=pW({control:e.control,name:a});if(o.length===0){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OF.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_answers.0",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(OS,oR(oF({},e),{questionId:i,validationError:r,setValidationError:n}))},JSON.stringify(o[0]))})};/* export default */const OD=OO;var OF={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormPuzzle.tsx
var OP=e=>{var{field:r,activeQuestionIndex:i=0,gridSizeControllerProps:a,gridSizePath:o}=e;var s;var l=bo();var u=r.value;var c=o!==null&&o!==void 0?o:"questions.".concat(i,".question_settings.puzzle_grid_size");var d=Array.isArray(l===null||l===void 0?void 0:(s=l.getValues)===null||s===void 0?void 0:s.call(l,"questions"))?"questions.".concat(i,"._data_status"):"_data_status";var f;var p=l?(f=l.watch(d))!==null&&f!==void 0?f:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:iK/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE;var h=(0,n.useMemo)(()=>[{value:2,difficulty:(0,oM.__)("Easy","tutor-pro")},{value:3,difficulty:(0,oM.__)("Easy","tutor-pro")},{value:4,difficulty:(0,oM.__)("Medium","tutor-pro")},{value:5,difficulty:(0,oM.__)("Medium","tutor-pro")},{value:6,difficulty:(0,oM.__)("Hard","tutor-pro")},{value:7,difficulty:(0,oM.__)("Hard","tutor-pro")}].map(e=>{var{value:t,difficulty:r}=e;return{label:"".concat(r," - ").concat(t,"×").concat(t," (").concat(t*t," ").concat((0,oM.__)("pieces","tutor-pro"),")"),value:t}}),[]);var v=(0,n.useCallback)(e=>{r.onChange(e)},[r]);var{openMediaLibrary:g,resetFiles:m}=mN({options:{type:"image"},onChange:e=>{if(e&&!Array.isArray(e)&&u){var{id:t,url:r}=e;var n=(0,ep._)((0,ef._)({},u,kZ(u._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(u._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:t,image_url:r,answer_two_gap_match:r,is_saved:true});v(n)}},initialFiles:(u===null||u===void 0?void 0:u.image_id)?{id:Number(u.image_id),url:u.image_url||"",title:u.image_url||""}:null});var b=()=>{if(!u){return}m();v((0,ep._)((0,ef._)({},u,kZ(u._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(u._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{image_id:undefined,image_url:"",answer_two_gap_match:"",is_saved:true}))};if(!u){return null}return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OH.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OH.card,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OH.imageInputWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(xm,{value:(u===null||u===void 0?void 0:u.image_id)?{id:Number(u.image_id),url:u.image_url||"",title:u.image_url||""}:null,buttonText:(0,oM.__)("Upload Puzzle Image","tutor-pro"),infoText:(0,oM.__)("Upload the source image that will be split into puzzle pieces.","tutor-pro"),uploadHandler:g,clearHandler:b,emptyImageCss:OH.imageInputEmpty,previewImageCss:OH.imageInputPreview})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u===null||u===void 0?void 0:u.image_url,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OH.card,children:a?/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},a),{label:(0,oM.__)("Difficulty Level","tutor-pro"),options:h,wrapperCss:OH.dropdownText,optionItemCss:OH.dropdownOptionText,helpText:(0,oM.__)("Larger grids create more pieces and a harder puzzle for learners.","tutor-pro"),onChange:e=>{a.field.onChange(e.value);if(kZ(p,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){l.setValue(d,kZ(p,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}}})):/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:l.control,name:c,defaultValue:4,render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(_G,(0,ep._)((0,ef._)({},e),{label:(0,oM.__)("Difficulty Level","tutor-pro"),options:h,wrapperCss:OH.dropdownText,optionItemCss:OH.dropdownOptionText,helpText:(0,oM.__)("Larger grids create more pieces and a harder puzzle for learners.","tutor-pro"),onChange:t=>{e.field.onChange(t.value);if(kZ(p,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){l.setValue(d,kZ(p,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}}}))})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!(u===null||u===void 0?void 0:u.image_url),children:/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:OH.placeholder,children:(0,oM.__)("Upload an image first, then configure the grid size for the puzzle.","tutor-pro")})})]})};/* export default */const OR=OP;var OH={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),card:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";padding:",iI/* .spacing["20"] */.YK["20"],";background:",iI/* .colorTokens.surface.tutor */.I6.surface.tutor,";border:1px solid ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-width:100%;"),imageInputEmpty:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background["default"] */.I6.background["default"],";height:210px;border-radius:",iI/* .borderRadius.card */.Vq.card,";"),imageInputPreview:/*#__PURE__*/(0,u/* .css */.AH)("height:210px;"),previewLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";"),previewWrap:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;aspect-ratio:1 / 1;border-radius:",iI/* .borderRadius.card */.Vq.card,";overflow:hidden;border:1px solid ",iI/* .colorTokens.stroke.border */.I6.stroke.border,";"),previewImage:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;height:100%;object-fit:cover;cursor:pointer;"),placeholder:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),dropdownText:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.subdued */.I6.text.subdued," !important;"),dropdownOptionText:/*#__PURE__*/(0,u/* .css */.AH)("button,button:hover,button:focus,button:active{color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/Puzzle.tsx
var OM=()=>{var e=fN();var{fields:r}=pW({control:e.control,name:"question_answers"});var n=fG({control:e.control,name:"question_settings.puzzle_grid_size"});var{setValidationError:i}=I4();if(r.length===0){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OL.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_answers.0",render:r=>/*#__PURE__*/(0,t/* .jsx */.Y)(OR,oR(oF({},r),{questionId:e.watch("question_id"),validationError:null,setValidationError:i,gridSizeControllerProps:n}))},JSON.stringify(r[0]))})};/* export default */const ON=OM;var OL={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormScale.tsx
/**
 * Form field for Scale quiz question type (instructor sets target value on scale).
 *
 * @package Tutor
 * @since 4.0.0
 */function OK(e){return(0,ep._)((0,ef._)({},e),{step:1})}function Oq(e){if(!e||typeof e!=="string")return null;try{var t=JSON.parse(e);if(typeof t.value==="number"&&t.config){var r,n,i,a,o,s,l;return{value:t.value,config:OK({min:(r=t.config.min)!==null&&r!==void 0?r:0,max:(n=t.config.max)!==null&&n!==void 0?n:100,step:1,defaultValue:(i=t.config.defaultValue)!==null&&i!==void 0?i:50,pxPerUnit:(a=t.config.pxPerUnit)!==null&&a!==void 0?a:10,labelEvery:(o=t.config.labelEvery)!==null&&o!==void 0?o:10,minorTickEvery:(s=t.config.minorTickEvery)!==null&&s!==void 0?s:5,precision:(l=t.config.precision)!==null&&l!==void 0?l:0})}}}catch(e){// ignore
}return null}var OB=(0,oM.__)("The maximum value must be greater than the minimum value.","tutor-pro");var OU=(0,oM.__)("The correct value must be between the minimum and maximum values.","tutor-pro");var Oj=e=>{e===null||e===void 0?void 0:e(e=>{var t=(e===null||e===void 0?void 0:e.type)==="question"&&[OB,OU].includes(e===null||e===void 0?void 0:e.message);return t?null:e})};var OV=(e,t)=>{if(e.max<=e.min){return OB}if(t<e.min||t>e.max){return OU}return null};var OW=e=>{var{field:r,setValidationError:i}=e;var a=r.value;var[o,s]=(0,n.useState)(()=>{var e;var t=Oq((e=a===null||a===void 0?void 0:a.answer_two_gap_match)!==null&&e!==void 0?e:"");return t||{value:50,config:OK({min:0,max:100,step:1,defaultValue:50,pxPerUnit:10,labelEvery:10,minorTickEvery:5,precision:0})}});var[l,u]=(0,n.useState)(OK(o.config));(0,n.useEffect)(()=>{var e;var t=Oq((e=a===null||a===void 0?void 0:a.answer_two_gap_match)!==null&&e!==void 0?e:"");if(t){s(t);u(OK(t.config))}},[a===null||a===void 0?void 0:a.answer_two_gap_match]);var c=(0,n.useCallback)(e=>{r.onChange(e)},[r]);var d=(0,n.useCallback)(e=>{if(!a)return;var t=JSON.stringify(e);c((0,ep._)((0,ef._)({},a,kZ(a._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(a._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{answer_two_gap_match:t,is_saved:true}))},[a,c]);var f=(0,n.useCallback)((e,t)=>{var r=OK((0,ep._)((0,ef._)({},l),{[e]:t}));var n=OV(r,o.value);if(n){i===null||i===void 0?void 0:i({message:n,type:"question"})}else{Oj(i)}u(r);var a=(0,ep._)((0,ef._)({},o),{config:r,value:o.value});s(a);d(a)},[l,o,d,i]);var p=(e,t)=>{var r=parseFloat(String(e));return Number.isFinite(r)?r:t};var h=(0,n.useCallback)(e=>{var t=OV(l,e);if(t){i===null||i===void 0?void 0:i({message:t,type:"question"})}else{Oj(i)}var r=(0,ep._)((0,ef._)({},o),{value:e});s(r);d(r)},[l,o,d,i]);if(!a){return null}var v=l.max<=l.min;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OG.wrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OG.card,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.answerHeader,children:/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:OG.answerHeaderTitle,children:(0,oM.__)("Scale range","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.configSection,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:OG.configGrid,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.configField,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{label:(0,oM.__)("Min value","tutor-pro"),type:"number",size:"small",value:String(l.min),onChange:e=>f("min",p(e,0))})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.configField,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{label:(0,oM.__)("Max value","tutor-pro"),type:"number",size:"small",value:String(l.max),onChange:e=>f("max",p(e,100))})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.configField,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{label:(0,oM.__)("Label entry","tutor-pro"),type:"number",size:"small",value:String(l.labelEvery),onChange:e=>f("labelEvery",p(e,10))})})]})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.card,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.answerSection,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OG.configField,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{label:(0,oM.__)("Correct Value","tutor-pro"),type:"number",size:"small",value:String(o.value),onChange:e=>h(p(e,l.min)),placeholder:v?undefined:(0,oM.sprintf)((0,oM.__)("Between %1$s and %2$s","tutor-pro"),String(l.min),String(l.max))})})})})]})};/* export default */const Oz=OW;var OG={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["24"] */.YK["24"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),card:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["8"] */.YK["8"],";padding:",iI/* .spacing["16"] */.YK["16"],";background:",iI/* .colorTokens.surface.tutor */.I6.surface.tutor,";border-radius:",iI/* .borderRadius.input */.Vq.input,";"),answerHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;justify-content:space-between;gap:",iI/* .spacing["12"] */.YK["12"],";"),answerHeaderTitle:/*#__PURE__*/(0,u/* .css */.AH)("font-family:",iI/* .fontFamily.sfProDisplay */.mw.sfProDisplay,";font-weight:",iI/* .fontWeight.medium */.Wy.medium,";font-size:",iI/* .fontSize["15"] */.J["15"],";line-height:",iI/* .lineHeight["24"] */.K_["24"],";letter-spacing:",iI/* .letterSpacing.normal */.oU.normal,";color:",iI/* .colorTokens.text.title */.I6.text.title,";"),configSection:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";"),answerSection:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";"),configGrid:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:",iI/* .spacing["8"] */.YK["8"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{grid-template-columns:1fr;}"),configField:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/Scale.tsx
var OQ=()=>{var e=fN();var{validationError:r,setValidationError:n}=I4();var i=e.watch("question_id");var a="question_answers";var{fields:o}=pW({control:e.control,name:a});if(o.length===0){return null}return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:OX.optionWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:e.control,name:"question_answers.0",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Oz,oR(oF({},e),{questionId:i,validationError:r,setValidationError:n}))},JSON.stringify(o[0]))})};/* export default */const O$=OQ;var OX={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/quiz/questions/FormTrueFalse.tsx
function OJ(){var e=(0,eh._)(["\n      [data-check-button] {\n        opacity: 1;\n        color: ",";\n      }\n    "]);OJ=function t(){return e};return e}function OZ(){var e=(0,eh._)(["\n      background-color: ",";\n      color: ",";\n\n      &:hover {\n        outline: 1px solid ",";\n      }\n    "]);OZ=function t(){return e};return e}function O0(){var e=(0,eh._)(["\n      background-color: ",";\n    "]);O0=function t(){return e};return e}function O1(){var e=(0,eh._)(["\n      box-shadow: ",";\n    "]);O1=function t(){return e};return e}var O2=e=>{var{field:r,onCheckCorrectAnswer:n,isOverlay:i=false,questionId:a}=e;var o;var s=(o=r.value)!==null&&o!==void 0?o:{answer_id:(0,iq/* .nanoid */.Ak)(),answer_title:"",is_correct:"0",belongs_question_id:a,belongs_question_type:"true_false"};var{attributes:l,listeners:u,setNodeRef:c,transform:d,transition:f,isDragging:p}=TP({id:s.answer_id||0,animateLayoutChanges:TQ});var h={transform:CV.Transform.toString(d),transition:f,opacity:p?.3:undefined};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",(0,ep._)((0,ef._)({},l),{css:O4.option({isSelected:!!Number(s.is_correct),isOverlay:i}),tabIndex:-1,ref:c,style:h,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("button",{"data-check-button":true,type:"button",css:oO/* .styleUtils.optionCheckButton */.x.optionCheckButton,onClick:n,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:Number(s.is_correct)?"checkFilled":"check",height:32,width:32})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:O4.optionLabel({isSelected:!!Number(s.is_correct),isDragging:p,isOverlay:i}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:s.answer_title}),/*#__PURE__*/(0,t/* .jsx */.Y)("button",(0,ep._)((0,ef._)({},u),{type:"button",css:oO/* .styleUtils.optionDragButton */.x.optionDragButton({isOverlay:i}),"data-visually-hidden":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"dragVertical",height:24,width:24})}))]})]}))};/* export default */const O6=O2;var O4={option:e=>{var{isSelected:t,isOverlay:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";height:48px;align-items:center;[data-check-button]{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";opacity:0;fill:none;flex-shrink:0;&:focus-visible{opacity:1;}}&:focus-within{[data-check-button]{opacity:1;}}&:hover{[data-check-button]{opacity:",r?0:1,";}}",t&&(0,u/* .css */.AH)(OJ(),iI/* .colorTokens.bg.success */.I6.bg.success))},optionLabel:e=>{var{isSelected:t,isDragging:r,isOverlay:n}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";text-transform:capitalize;[data-visually-hidden]{opacity:0;}&:hover{outline:1px solid ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}&:focus-within{[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(OZ(),iI/* .colorTokens.background.success.fill40 */.I6.background.success.fill40,iI/* .colorTokens.text.primary */.I6.text.primary,iI/* .colorTokens.stroke.success.fill70 */.I6.stroke.success.fill70)," ",r&&(0,u/* .css */.AH)(O0(),iI/* .colorTokens.stroke.hover */.I6.stroke.hover)," ",n&&(0,u/* .css */.AH)(O1(),iI/* .shadow.drag */.r7.drag)," ",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{[data-visually-hidden]{opacity:1;}}")}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/question-types/TrueFalse.tsx
function O5(){var e=oH(["\n      [data-check-icon] {\n        opacity: 1;\n        color: ",";\n      }\n    "]);O5=function t(){return e};return e}function O3(){var e=oH(["\n      background-color: ",";\n      color: ",";\n\n      &:hover {\n        box-shadow: 0 0 0 1px ",";\n      }\n    "]);O3=function t(){return e};return e}var O8=()=>{var[e,r]=(0,n.useState)(null);var i=fN();var a=i.watch("question_id");var{fields:o,move:s,replace:l}=pW({control:i.control,name:"question_answers"});var u=C8(C3(Y2,{activationConstraint:{distance:10}}),C3(YX,{coordinateGetter:TN}));var c=fz({control:i.control,name:"question_answers",defaultValue:[]});var d=(0,n.useMemo)(()=>{if(!e){return null}return o.find(t=>t.answer_id===e)},[e,o]);var f=e=>{var t=c.map(t=>oR(oF({},t,kZ(t._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)&&{_data_status:kZ(t._data_status,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)}),{is_correct:t.answer_id===e.answer_id?"1":"0"}));l(t)};return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:O7.optionWrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(SU,{sensors:u,collisionDetection:Yo,modifiers:[Tl],onDragStart:e=>{r(e.active.id)},onDragEnd:e=>{var{active:t,over:n}=e;if(!n){return}if(t.id!==n.id){var i=o.findIndex(e=>e.answer_id===t.id);var a=o.findIndex(e=>e.answer_id===n.id);s(i,a)}r(null)},children:[/*#__PURE__*/(0,t/* .jsx */.Y)(TI,{items:o.map(e=>oR(oF({},e),{id:e.answer_id})),strategy:Tx,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:o,children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(r),render:n=>/*#__PURE__*/(0,t/* .jsx */.Y)(O6,oR(oF({},n),{index:r,onCheckCorrectAnswer:()=>f(e),questionId:a}))},"".concat(e.answer_id,"-").concat(e.is_correct))})}),/*#__PURE__*/(0,is.createPortal)(/*#__PURE__*/(0,t/* .jsx */.Y)(Tt,{zIndex:iI/* .zIndex.highest */.fE.highest,children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:d,children:r=>{var n=o.findIndex(e=>e.answer_id===r.answer_id);return/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:i.control,name:"question_answers.".concat(n),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(O6,oR(oF({},e),{index:n,onCheckCorrectAnswer:iq/* .noop */.lQ,isOverlay:true,questionId:a}))},e)}})}),document.body)]})})};/* export default */const O9=O8;var O7={optionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";"),option:e=>{var{isSelected:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";",iC/* .typography.caption */.I.caption("medium"),";align-items:center;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";gap:",iI/* .spacing["10"] */.YK["10"],";height:48px;align-items:center;[data-check-icon]{opacity:0;transition:opacity 0.15s ease-in-out;fill:none;flex-shrink:0;}&:hover{[data-check-icon]{opacity:1;}}",t&&(0,u/* .css */.AH)(O5(),iI/* .colorTokens.bg.success */.I6.bg.success))},optionLabel:e=>{var{isSelected:t}=e;return/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;border-radius:",iI/* .borderRadius.card */.Vq.card,";padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";cursor:pointer;[data-visually-hidden]{opacity:0;}&:hover{box-shadow:0 0 0 1px ",iI/* .colorTokens.stroke.hover */.I6.stroke.hover,";[data-visually-hidden]{opacity:1;}}",t&&(0,u/* .css */.AH)(O3(),iI/* .colorTokens.background.success.fill40 */.I6.background.success.fill40,iI/* .colorTokens.text.primary */.I6.text.primary,iI/* .colorTokens.stroke.success.fill70 */.I6.stroke.success.fill70))},optionDragButton:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton," ",oO/* .styleUtils.flexCenter */.x.flexCenter(),"    transform:rotate(90deg);color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";cursor:grab;place-self:center center;&:focus,&:active,&:hover{background:none;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/QuestionForm.tsx
var De=()=>{var{validationError:e}=I4();var r=fN();var i=r.watch("_data_status");var a=(0,n.useRef)(null);var o=r.watch("question_type");var s={true_false:/*#__PURE__*/(0,t/* .jsx */.Y)(O9,{}),multiple_choice:/*#__PURE__*/(0,t/* .jsx */.Y)(Ox,{}),open_ended:/*#__PURE__*/(0,t/* .jsx */.Y)(Ok,{}),fill_in_the_blank:/*#__PURE__*/(0,t/* .jsx */.Y)(Cb,{}),short_answer:/*#__PURE__*/(0,t/* .jsx */.Y)(Ok,{}),matching:/*#__PURE__*/(0,t/* .jsx */.Y)(Oo,{}),image_answering:/*#__PURE__*/(0,t/* .jsx */.Y)(T5,{}),ordering:/*#__PURE__*/(0,t/* .jsx */.Y)(Ox,{}),draw_image:/*#__PURE__*/(0,t/* .jsx */.Y)(Cu,{}),scale:/*#__PURE__*/(0,t/* .jsx */.Y)(O$,{}),pin_image:/*#__PURE__*/(0,t/* .jsx */.Y)(OD,{}),coordinates:/*#__PURE__*/(0,t/* .jsx */.Y)(I3,{}),puzzle:/*#__PURE__*/(0,t/* .jsx */.Y)(ON,{})};return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Dr.questionForm,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Dr.questionWithIndex,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Dr.questionTitleAndDesc,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:r.control,rules:{required:(0,oM.__)("Question title is required","tutor-pro")},name:"question_title",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Ix,oR(oF({},e),{placeholder:(0,oM.__)("Write your question here..","tutor-pro"),disabled:o==="h5p",onChange:()=>{if(kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){r.setValue("_data_status",kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}},selectOnFocus:i===iK/* .QuizDataStatus.NEW */.cW.NEW}))}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:o!=="h5p",fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Dr.h5pShortCode,children:'[h5p id: "'.concat(r.watch("question_description"),'"]')})}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:r.control,name:"question_description",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Ip,oR(oF({},e),{placeholder:(0,oM.__)("Description (optional)","tutor-pro"),disabled:o==="h5p",onChange:()=>{if(kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){r.setValue("_data_status",kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}}}))})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:e,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{ref:a,css:Dr.alertWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(yO,{type:"danger",icon:"warning",children:e===null||e===void 0?void 0:e.message})},Math.random())}),s[o],/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:o!=="h5p",children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Dr.questionAnswer,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:r.control,name:"answer_explanation",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Ia,oR(oF({},e),{label:(0,oM.__)("Answer Explanation","tutor-pro"),placeholder:(0,oM.__)("Write answer explanation...","tutor-pro"),onChange:()=>{if(kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE)){r.setValue("_data_status",kZ(i,iK/* .QuizDataStatus.UPDATE */.cW.UPDATE))}}}))})})})]})};/* export default */const Dt=De;var Dr={questionForm:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding-right:",iI/* .spacing["48"] */.YK["48"],";gap:",iI/* .spacing["16"] */.YK["16"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-right:",iI/* .spacing["8"] */.YK["8"],";}"),questionWithIndex:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:flex-start;padding-left:",iI/* .spacing["40"] */.YK["40"],";gap:",iI/* .spacing["4"] */.YK["4"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),questionIndex:/*#__PURE__*/(0,u/* .css */.AH)("margin-top:",iI/* .spacing["10"] */.YK["10"],";",iC/* .typography.heading6 */.I.heading6(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),questionTitleAndDesc:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["8"] */.YK["8"],";width:100%;"),h5pShortCode:/*#__PURE__*/(0,u/* .css */.AH)("margin-left:",iI/* .spacing["8"] */.YK["8"],";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.white */.I6.text.white,";background-color:#2575be;border-radius:",iI/* .borderRadius.card */.Vq.card,";width:fit-content;font-family:'Fire Code',monospace;"),questionAnswer:/*#__PURE__*/(0,u/* .css */.AH)("padding-left:",iI/* .spacing["40"] */.YK["40"],";",iI/* .Breakpoint.smallMobile */.EA.smallMobile,"{padding-left:",iI/* .spacing["8"] */.YK["8"],";}"),emptyState:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter("column"),";padding-left:",iI/* .spacing["40"] */.YK["40"],";padding-right:",iI/* .spacing["48"] */.YK["48"],";gap:",iI/* .spacing["16"] */.YK["16"],";"),emptyStateImage:/*#__PURE__*/(0,u/* .css */.AH)("width:220px;height:auto;"),emptyStateText:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";text-align:center;max-width:330px;"),alertWrapper:/*#__PURE__*/(0,u/* .css */.AH)("padding-left:",iI/* .spacing["40"] */.YK["40"],";animation:shake 0.3s linear;@keyframes shake{0%{transform:translateX(0);}25%{transform:translateX(-5px);}50%{transform:translateX(5px);}75%{transform:translateX(-5px);}100%{transform:translateX(0);}}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/QuestionModal.tsx
var Dn=e=>{var{contentId:r="",collectionId:i,closeModal:a,subtitle:o}=e;var s=pz({defaultValues:{_data_status:r?oI/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE:oI/* .QuizDataStatus.NEW */.cW.NEW,question_title:"",question_description:"",question_type:"true_false",question_answers:[{answer_id:(0,iq/* .nanoid */.Ak)(),_data_status:oI/* .QuizDataStatus.NEW */.cW.NEW,is_saved:true,answer_title:(0,oM.__)("True","tutor-pro"),is_correct:"1",answer_order:1,answer_two_gap_match:"",answer_view_format:"text",belongs_question_id:"",belongs_question_type:"true_false"},{answer_id:(0,iq/* .nanoid */.Ak)(),is_saved:true,_data_status:oI/* .QuizDataStatus.NEW */.cW.NEW,answer_title:(0,oM.__)("False","tutor-pro"),is_correct:"0",answer_order:2,answer_two_gap_match:"",answer_view_format:"text",belongs_question_id:"",belongs_question_type:"true_false"}],answer_explanation:"",question_mark:1,question_settings:{answer_required:false,show_question_mark:false,question_mark:1},deleted_answer_ids:[]}});var l=xe();var u=w9(Number(r));var c=s.formState.dirtyFields&&Object.keys(s.formState.dirtyFields).length>0;var d=(e,t)=>cQ(function*(){var r=k0(e);if(r!==true){t(r);return}var{normalizedQuestions:n,deletedAnswerIds:o}=k2([e],e.deleted_answer_ids||[]);var s=oR(oF({},e,n[0]),{deleted_answer_ids:o});var u=Number(e.question_id);var c=Number.isFinite(u)&&u>0;var d=yield l.mutateAsync(oR(oF({},i&&{collection_id:i},s),{question_id:c?u:0,_data_status:oI/* .QuizDataStatus.UPDATE */.cW.UPDATE,question_settings:(()=>{var e=s.question_settings;var t,r;return oF(oR(oF({},e),{answer_required:e.answer_required?"1":"0",show_question_mark:e.show_question_mark?"1":"0",randomize_question:e.randomize_question?"1":"0",has_multiple_correct_answer:e.has_multiple_correct_answer?"1":"0",is_image_matching:e.is_image_matching?"1":"0"}),s.question_type==="draw_image"&&{draw_image_threshold_percent:Number((t=e.draw_image_threshold_percent)!==null&&t!==void 0?t:70)},s.question_type==="coordinates"&&{coordinates_axis_range:Number((r=e.coordinates_axis_range)!==null&&r!==void 0?r:10)})})()}));if(d.status_code===200||d.status_code===201){a({action:"CONFIRM"})}})();(0,n.useEffect)(()=>{if(!u.isLoading&&u.data){var e=u.data;s.reset(oR(oF({},k1(e)),{_data_status:oI/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE,question_id:e.question_id,question_answers:e.question_answers.map(e=>oR(oF({},e),{_data_status:oI/* .QuizDataStatus.NO_CHANGE */.cW.NO_CHANGE,is_saved:true})),deleted_answer_ids:[]}))}var t=setTimeout(()=>{s.setFocus("question_title")},250);return()=>{clearTimeout(t)};// eslint-disable-next-line react-hooks/exhaustive-deps
},[u.isLoading,u.data]);return/*#__PURE__*/(0,t/* .jsx */.Y)(I6,{children:e=>{var{setValidationError:n}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:/*#__PURE__*/(0,t/* .jsx */.Y)(fL,oR(oF({},s),{children:/*#__PURE__*/(0,t/* .jsx */.Y)(wU,{onClose:()=>a({action:"CLOSE"}),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:c?"warning":"quiz",width:24,height:24}),title:c?oI/* .CURRENT_VIEWPORT.isAboveDesktop */.vN.isAboveDesktop?(0,oM.__)("Unsaved Changes","tutor-pro"):"":(0,oM.__)("Question","tutor-pro"),subtitle:o&&(oI/* .CURRENT_VIEWPORT.isAboveSmallMobile */.vN.isAboveSmallMobile?(0,oM.sprintf)((0,oM.__)("Collection: %s","tutor-pro"),o):""),maxWidth:1070,actions:c&&/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"text",size:"small",onClick:()=>{if(r){s.reset()}else{a({action:"CLOSE"})}},children:r?(0,oM.__)("Discard Changes","tutor-pro"):(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{"data-cy":"save-question",loading:l.isPending,variant:"primary",size:"small",onClick:s.handleSubmit(e=>d(e,n)),children:r?(0,oM.__)("Update","tutor-pro"):(0,oM.__)("Save","tutor-pro")})]}),children:/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!u.isLoading,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(oU,{}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Da.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Da.questionInfo,children:/*#__PURE__*/(0,t/* .jsx */.Y)(Dt,{},s.watch("question_id"))}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Da.rightPanel,children:/*#__PURE__*/(0,t/* .jsx */.Y)(k3,{},s.watch("question_id"))})]})})})}))})}})};/* export default */const Di=Dn;var Da={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin:0 auto;display:grid;grid-template-columns:1fr 353px;height:100%;width:100%;padding-left:",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{grid-template-columns:1fr;padding-inline:",iI/* .spacing["24"] */.YK["24"],";}",iI/* .Breakpoint.mobile */.EA.mobile,"{padding-inline:",iI/* .spacing["16"] */.YK["16"],";}"),questionInfo:/*#__PURE__*/(0,u/* .css */.AH)("padding-block:",iI/* .spacing["20"] */.YK["20"],";padding-right:",iI/* .spacing["32"] */.YK["32"],";display:flex;flex-direction:column;gap:",iI/* .spacing["24"] */.YK["24"],";position:sticky;top:0;z-index:",iI/* .zIndex.positive */.fE.positive,";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{position:unset;padding-right:0;}"),rightPanel:/*#__PURE__*/(0,u/* .css */.AH)("border-left:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";display:flex;flex-direction:column;gap:",iI/* .spacing["16"] */.YK["16"],";",iI/* .Breakpoint.smallTablet */.EA.smallTablet,"{border-left:none;padding-left:0;}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/utils/utils.ts
var Do=()=>{var e=new URL(window.location.href);var t=e.searchParams.get("collection_id");return t?Number(t):null};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/hooks/useCollectionId.ts
var Ds=()=>{var[e,t]=(0,n.useState)(()=>Do());(0,n.useEffect)(()=>{var e=()=>{var e=Do();t(t=>t!==e?e:t)};var r=()=>e();window.addEventListener("popstate",r);var n=window.history.pushState;var i=window.history.replaceState;window.history.pushState=function(){for(var t=arguments.length,r=new Array(t),i=0;i<t;i++){r[i]=arguments[i]}n.apply(window.history,r);e()};window.history.replaceState=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++){r[n]=arguments[n]}i.apply(window.history,r);e()};return()=>{window.removeEventListener("popstate",r);window.history.pushState=n;window.history.replaceState=i}},[]);var r=(0,n.useCallback)(e=>{if(e===null||e===0){t(null);var r=new URL(window.location.href);r.searchParams.delete("collection_id");window.history.pushState({},"",r.toString());window.history.replaceState({},"",r.toString());return}var n=new URL(window.location.href);n.searchParams.set("collection_id",String(e));window.history.pushState({},"",n.toString())},[]);return{collectionId:e,updateCollectionId:r}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/hooks/useQueryParam.ts
var Dl=new Set;var Du=false;var Dc=null;function Dd(){Dl.forEach(e=>e())}function Df(){if(Dc){clearTimeout(Dc)}Dc=setTimeout(()=>{Dd();Dc=null},0)}function Dp(){if(Du)return;Du=true;var e=history.pushState;var t=history.replaceState;history.pushState=function(){for(var t=arguments.length,r=new Array(t),n=0;n<t;n++){r[n]=arguments[n]}e.apply(this,r);Df()};history.replaceState=function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++){r[n]=arguments[n]}t.apply(this,r);Df()};window.addEventListener("popstate",Dd)}function Dh(e,t){var{parseAs:r="string"}=t||{};var i=()=>{var t=new URL(window.location.href);if(r==="array"){var n=t.searchParams.getAll(e);return n.length>0?n:[]}var i;var a=(i=t.searchParams.get(e))!==null&&i!==void 0?i:"";if(r==="number"){if(a==="")return 0;var o=Number(a);return isNaN(o)?0:o}return a};var[a,o]=(0,n.useState)(()=>i());(0,n.useEffect)(()=>{var e=()=>{var e=i();o(t=>{if(r==="array"){var n=Array.isArray(t)?t:[];var i=Array.isArray(e)?e:[];return JSON.stringify(n)!==JSON.stringify(i)?e:t}return t!==e?e:t})};Dp();Dl.add(e);e();return()=>{Dl.delete(e)};// eslint-disable-next-line react-hooks/exhaustive-deps
},[e,r]);var s=(0,n.useCallback)(t=>{var n=new URL(window.location.href);if(r==="array"&&Array.isArray(t)){n.searchParams.delete(e);if(t.length>0){t.forEach(t=>{n.searchParams.append(e,String(t))})}}else{var i=t===""||t===0||Array.isArray(t)&&t.length===0||t===null||t===undefined;if(i){n.searchParams.delete(e)}else{n.searchParams.set(e,String(t))}}window.history.pushState({},"",n.toString());o(t);Df()},[e,r]);var l=(0,n.useCallback)(()=>{var t=new URL(window.location.href);t.searchParams.delete(e);window.history.pushState({},"",t.toString());var n=r==="array"?[]:r==="number"?0:"";o(n);Df()},[e,r]);return{value:a,setValue:s,remove:l}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/FilterFields.tsx
function Dv(){var e=oH(["\n      padding-right: ",";\n    "]);Dv=function t(){return e};return e}var Dg=e=>{var{onFilterChange:r,initialValues:i}=e;var a=_4({defaultValues:i||{contentTypes:[],order:"asc"}});var[o,s]=(0,n.useState)(false);var l=(0,n.useRef)(null);var u=a.watch("order")||"asc";var c=a.watch("contentTypes")||[];var d=[{label:(0,oM.__)("Lesson","tutor-pro"),value:"lesson"},...(0,iq/* .isAddonEnabled */.GR)(oI/* .Addons.TUTOR_ASSIGNMENTS */.oW.TUTOR_ASSIGNMENTS)?[{label:(0,oM.__)("Assignment","tutor-pro"),value:"assignment"}]:[],{label:(0,oM.__)("Question","tutor-pro"),value:"question"}];return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Db.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:c.length>0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"text",buttonCss:Db.clearButton,onClick:()=>{a.reset({contentTypes:[],order:"asc"});r(a.getValues())},children:(0,oM.__)("Clear All","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsxs */.FD)(iB/* ["default"] */.A,{ref:l,variant:"tertiary",size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"mageFilter",height:16,width:16}),buttonCss:Db.filterButton({hasFilters:c.length>0}),onClick:()=>s(e=>!e),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:(0,oM.__)("Filters","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:c.length>0,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Db.filterCount,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Db.divider}),/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:c.length})]})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",isIconOnly:true,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:u==="asc"?"sortAsc":"sortDesc",width:18,height:18}),buttonCss:Db.sortButton,onClick:()=>{var e=u==="asc"?"desc":"asc";a.setValue("order",e);r(oR(oF({},a.getValues()),{order:e}))},"aria-label":(0,oM.__)("Order by","tutor-pro")})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{isOpen:o,animationType:iH.slideDown,closeOnEscape:true,closePopover:()=>{a.reset({contentTypes:(i===null||i===void 0?void 0:i.contentTypes)||[],order:(i===null||i===void 0?void 0:i.order)||"asc"});s(false)},triggerRef:l,maxWidth:"170px",children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Db.filterFieldsWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h6",{children:(0,oM.__)("Filter by","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Db.filterFields,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:d,children:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{label:e.label,value:e.value,checked:c.includes(e.value),onChange:t=>{var r=t?[...c,e.value]:c.filter(t=>t!==e.value);a.setValue("contentTypes",r)}},e.value)})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Db.filterActions,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"primary",onClick:()=>{r(a.getValues());s(false)},children:(0,oM.__)("Apply Filters","tutor-pro")})})]})})]})};/* export default */const Dm=Dg;var Db={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["8"] */.YK["8"],";flex-shrink:0;"),filterButton:e=>{var{hasFilters:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("height:40px;padding-inline:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";",t&&(0,u/* .css */.AH)(Dv(),iI/* .spacing["6"] */.YK["6"])," ",iI/* .Breakpoint.mobile */.EA.mobile,"{height:32px;}")},clearButton:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;"),sortButton:/*#__PURE__*/(0,u/* .css */.AH)("flex-shrink:0;background-color:",iI/* .colorTokens.background.white */.I6.background.white,";color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";"),divider:/*#__PURE__*/(0,u/* .css */.AH)("width:1px;height:24px;background-color:",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";"),filterCount:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";margin-left:",iI/* .spacing["8"] */.YK["8"],";span{height:28px;width:28px;",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;justify-content:center;border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";background-color:",iI/* .colorTokens.primary["50"] */.I6.primary["50"],";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";}",iI/* .Breakpoint.mobile */.EA.mobile,"{margin-left:",iI/* .spacing["4"] */.YK["4"],";span{height:22px;width:22px;}}"),filterFieldsWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";h6{padding:",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["12"] */.YK["12"],";",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";}"),filterFields:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";padding:",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["16"] */.YK["16"],";gap:",iI/* .spacing["12"] */.YK["12"],";background-color:",iI/* .colorTokens.surface.tutor */.I6.surface.tutor,";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";"),filterActions:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["12"] */.YK["12"]," ",iI/* .spacing["12"] */.YK["12"],";button{width:100%;}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/ContentList.tsx
var D_=[{label:(0,oM.__)("Bulk Action","tutor-pro"),value:""},{label:(0,oM.__)("Move to","tutor-pro"),value:"move_to"},{label:(0,oM.__)("Delete","tutor-pro"),value:"delete"}];var Dy=e=>{var{contents:r,collection:i}=e;var{total_record:a,per_page:o,current_page:s,total_page:l,data:u=[]}=r||{total_record:0,per_page:10,current_page:1,total_page:0,data:[]};var{setValue:c}=Dh("paged");var{value:d,setValue:f}=Dh("order");var{value:p,setValue:h}=Dh("search");var{value:v,setValue:g}=Dh("content_types",{parseAs:"array"});var[m,b]=(0,n.useState)(p);var _=st(m);var y=w$();var{collectionId:w}=Ds();var[x,A]=(0,n.useState)({title:"asc",date:"asc"});var[E,k]=(0,n.useState)([]);var[I,C]=(0,n.useState)(D_[0]);var{showModal:Y,updateModal:S,closeModal:T}=i7();(0,n.useEffect)(()=>{h(_);if(_.length){c("1")}// eslint-disable-next-line react-hooks/exhaustive-deps
},[_,h]);var O=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:false;var t=E.map(e=>e.ID);var r=u.map(e=>e.ID);if(e){var n=u.filter(e=>!t.includes(e.ID));k([...E,...n]);return}var i=E.filter(e=>!r.includes(e.ID));k(i)};var D=()=>{return u.length>0&&u.every(e=>E.map(e=>e.ID).includes(e.ID))};var F=e=>cQ(function*(){S("content-bulk-delete-modal",{isLoading:true});var t=yield y.mutateAsync({collectionId:Number(w),contentIds:e});if(t.status_code===200){k([]);C(D_[0]);T()}})();var P=()=>cQ(function*(){var e=E.map(e=>e.ID);if(I.value==="move_to"){Y({component:kJ,props:{title:(0,oM.__)("Move to Collection","tutor-pro"),contentIds:e},depthIndex:iI/* .zIndex.highest */.fE.highest})}if(I.value==="delete"){Y({id:"content-bulk-delete-modal",component:d0,props:{title:(0,oM.__)("Delete Content","tutor-pro"),description:(0,oM.__)("Are you sure you want to delete these items?","tutor-pro"),isLoading:y.isPending,onConfirm:()=>F(e)},depthIndex:iI/* .zIndex.highest */.fE.highest})}})();var R=e=>{A(t=>oR(oF({},t),{[e]:t[e]==="asc"?"desc":"asc"}))};var H=e=>{if(e==="title"){R("title");return u.sort((e,t)=>{return x.title==="asc"?e.post_title.localeCompare(t.post_title):t.post_title.localeCompare(e.post_title)})}else{R("date");return u.sort((e,t)=>{return(0,dA.dateI18n)((0,dA.getSettings)().formats.date,e.post_date)>(0,dA.dateI18n)((0,dA.getSettings)().formats.date,t.post_date)?x.date==="asc"?1:-1:x.date==="asc"?-1:1})}};var M=[{Header:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.tableLabel,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{onClick:e=>e.stopPropagation(),onMouseDown:e=>e.stopPropagation(),css:DE.headerCheckboxWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:O,checked:D(),isIndeterminate:E.length>0&&!D()})}),(0,oM.__)("Title","tutor-pro")]}),css:DE.titleColumn,sortProperty:"title",Cell:e=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.titleWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:()=>{var t=E.filter(t=>t.ID!==e.ID);var r=(t===null||t===void 0?void 0:t.length)===E.length;if(r){k([...t,e])}else{k(t)}},checked:E.map(e=>e.ID).includes(e.ID)}),e.post_title]})}},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DE.tableLabel,children:(0,oM.__)("Type","tutor-pro")}),Cell:e=>{var r;return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DE.type,children:(r=cV[e.post_type])!==null&&r!==void 0?r:e.post_type})}},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DE.tableLabel,children:(0,oM.__)("Linked Courses","tutor-pro")}),Cell:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Dw,{content:e}),css:DE.linkedCourseColumn},{Header:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DE.tableLabel,children:(0,oM.__)("Date","tutor-pro")}),sortProperty:"date",Cell:e=>{return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.dateWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:(0,dA.dateI18n)((0,dA.getSettings)().formats.date,e.post_date)}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DE.time,children:(0,dA.dateI18n)((0,dA.getSettings)().formats.time,e.post_date)})]})}},{Header:"",Cell:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(Dx,{content:e,collection:i})}];return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.wrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.filtersWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.bulkActions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(dV,{size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",options:D_,value:I,onChange:C,isClearable:false}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"primary",size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",isOutlined:true,buttonCss:DE.buttonCss,onClick:P,disabled:!I.value||E.length===0,children:(0,oM.__)("Apply","tutor-pro")})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.filtersRight,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(Dm,{initialValues:{contentTypes:v||[],order:d||"desc"},onFilterChange:e=>{g(e.contentTypes);f(e.order)}}),/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{value:m,onChange:b,variant:"search",placeholder:(0,oM.__)("Search...","tutor-pro"),isClearable:true,size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small"})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(fn,{columns:M,data:u,isBordered:true,isRounded:true,rowStyle:DE.tableRow,colors:{bodyRowDefault:iI/* .colorTokens.background.white */.I6.background.white},querySortProperties:["title","date"],querySortDirections:x,onSortClick:e=>{var t=H(e);return t}}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:l>1,children:/*#__PURE__*/(0,t/* .jsx */.Y)(d6,{currentPage:s,onPageChange:e=>{c(String(e));window.scroll(0,0)},totalItems:a,itemsPerPage:o})})]})};var Dw=e=>{var{content:r}=e;var i=(0,n.useRef)(null);var[a,o]=(0,n.useState)(false);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{ref:i,css:DE.linkedCourses,onClick:()=>o(true),"data-cy":"linked-courses-popover",children:[r.linked_courses.total,/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:r.linked_courses.total>0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{arrow:true,isOpen:a,triggerRef:i,closePopover:()=>o(false),maxWidth:"300px",children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.linkedCoursesPopover,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h5",{children:(0,oM.__)("Linked Courses:","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("ul",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:r.linked_courses.courses,children:e=>/*#__PURE__*/(0,t/* .jsx */.Y)("li",{children:e.post_title},e.ID)})}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:r.linked_courses.more_text})]})})})]})};var Dx=e=>{var{content:r,collection:i}=e;var[a,o]=(0,n.useState)(false);var{showModal:s,updateModal:l,closeModal:u}=i7();var{collectionId:c}=Ds();var d=w$();var f=xi();var p={"cb-lesson":kz,"cb-assignment":xd,"cb-question":Di};var h=e=>{s({component:p[e]||kz,props:{collectionId:Number(c),contentId:r.ID,subtitle:(i===null||i===void 0?void 0:i.post_title)||""},depthIndex:iI/* .zIndex.highest */.fE.highest})};var v=()=>cQ(function*(){var e=yield f.mutateAsync({contentIds:[r.ID]});if(e.status_code===200){o(false)}})();var g=e=>cQ(function*(){l("content-delete-modal",{isLoading:true});var t=yield d.mutateAsync({collectionId:Number(c),contentIds:e});if(t.status_code===200){u()}})();return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DE.actionsWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:"small",onClick:()=>h(r.post_type),children:(0,oM.__)("Edit","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)(fh,{isOpen:a,onClick:()=>o(true),closePopover:()=>o(false),dotsOrientation:"vertical",maxWidth:"170px",isInverse:true,arrow:true,closeOnEscape:false,size:"small",wrapperCss:DE.threeDotWrapper,"data-cy":"content-actions-popover",children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Duplicate","tutor-pro"),icon:f.isPending?/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:24}):/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"copyPaste"}),disabled:f.isPending,onClick:v,"data-cy":"duplicate-content"}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Move to","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"assignment"}),onClick:()=>{o(false);s({component:kJ,props:{title:(0,oM.__)("Move to Collection","tutor-pro"),contentIds:[r.ID]},depthIndex:iI/* .zIndex.highest */.fE.highest})},buttonCss:DE.borderedButton,"data-cy":"move-content"}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{isTrash:true,text:(0,oM.__)("Delete","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"delete"}),onClick:()=>{o(false);s({id:"content-delete-modal",component:d0,props:{title:(0,oM.__)("Delete Content","tutor-pro"),description:(0,oM.__)("Are you sure you want to delete this content?","tutor-pro"),isLoading:d.isPending,onConfirm:()=>g([r.ID])},depthIndex:iI/* .zIndex.highest */.fE.highest})},"data-cy":"delete-content"})]})]})};/* export default */const DA=Dy;var DE={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["16"] */.YK["16"],";"),filtersWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    align-items:center;justify-content:space-between;flex-wrap:wrap;gap:",iI/* .spacing["16"] */.YK["16"],";"),bulkActions:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),buttonCss:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["24"] */.YK["24"],";"),filtersRight:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),tableRow:/*#__PURE__*/(0,u/* .css */.AH)("border-bottom:1px solid ",iI/* .colorTokens.border.tertiary */.I6.border.tertiary,";"),tableLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small("regular"),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";",oO/* .styleUtils.display.flex */.x.display.flex(),"    align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),titleWrapper:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("medium"),";",oO/* .styleUtils.display.flex */.x.display.flex(),"    align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),type:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("regular"),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),linkedCourses:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small("medium"),";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";cursor:pointer;"),linkedCoursesPopover:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["16"] */.YK["16"],";",iC/* .typography.tiny */.I.tiny("medium"),";& > h5{",iC/* .typography.tiny */.I.tiny("medium"),";margin-bottom:",iI/* .spacing["10"] */.YK["10"],";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";}& > ul{",oO/* .styleUtils.display.flex */.x.display.flex(),"      flex-direction:column;gap:",iI/* .spacing["8"] */.YK["8"],";padding-left:",iI/* .spacing["12"] */.YK["12"],";margin-left:0px;margin-bottom:",iI/* .spacing["10"] */.YK["10"],";color:",iI/* .colorTokens.text.title */.I6.text.title,";li{list-style:auto;}}& > p{",iC/* .typography.small */.I.small("medium"),";margin-bottom:0px;color:",iI/* .colorTokens.text.brand */.I6.text.brand,";}"),dateWrapper:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption("regular"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";white-space:nowrap;"),time:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),actionsWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),"    justify-content:end;align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),threeDotWrapper:/*#__PURE__*/(0,u/* .css */.AH)("background-color:transparent;"),paginatorWrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin-top:",iI/* .spacing["16"] */.YK["16"],";"),borderedButton:/*#__PURE__*/(0,u/* .css */.AH)("border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";"),titleColumn:/*#__PURE__*/(0,u/* .css */.AH)("min-width:400px;"),headerCheckboxWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;"),linkedCourseColumn:/*#__PURE__*/(0,u/* .css */.AH)("white-space:nowrap;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/fields/FormCheckbox.tsx
var Dk=e=>{var{field:r,fieldState:n,disabled:i,value:a,onChange:o,label:s,description:l,helpText:u,isHidden:c,labelCss:d}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)(mD,{field:r,fieldState:n,isHidden:c,children:e=>{var{css:n}=e,c=(0,iY._)(e,["css"]);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DC.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(dD,(0,ep._)((0,ef._)({},r,c),{inputCss:n,labelCss:d,value:a,disabled:i,checked:r.value,label:s,onChange:()=>{r.onChange(!r.value);if(o){o(!r.value)}}})),u&&/*#__PURE__*/(0,t/* .jsx */.Y)(mv,{content:u,placement:"top",allowHTML:true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"info",width:20,height:20})})]}),l&&/*#__PURE__*/(0,t/* .jsx */.Y)("p",{css:DC.description,children:l})]})}})};/* export default */const DI=Dk;var DC={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["6"] */.YK["6"],";& > div{display:flex;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";}"),description:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),"    color:",iI/* .colorTokens.text.hints */.I6.text.hints,";padding-left:30px;margin-top:",iI/* .spacing["6"] */.YK["6"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/CourseListModal/SearchField.tsx
var DY=e=>{var{onFilterItems:r}=e;var i=_4({defaultValues:{search:""}});var a=st(i.watch("search"));(0,n.useEffect)(()=>{r((0,ef._)({},a.length>0&&{search:a}))},[r,a]);return/*#__PURE__*/(0,t/* .jsx */.Y)(bm,{control:i.control,name:"search",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wy,(0,ep._)((0,ef._)({},e),{content:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"search",width:24,height:24}),placeholder:(0,oM.__)("Search...","tutor-pro"),showVerticalBar:false}))})};/* export default */const DS=DY;// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/course.ts
var DT=e=>{return cM.get(cL.GET_COURSE_LIST,{params:e})};var DO=e=>{var{params:t,isEnabled:r}=e;return sL({queryKey:["PrerequisiteCourses",t],queryFn:()=>DT((0,ef._)({exclude:t.exclude,limit:t.limit,offset:t.offset,filter:t.filter},t.post_status&&{post_status:t.post_status})).then(e=>e.data),placeholderData:S,enabled:r})};var DD=e=>{var{courseId:t,builder:r}=e;return wpAjaxInstance.post(endpoints.TUTOR_UNLINK_PAGE_BUILDER,{course_id:t,builder:r})};var DF=()=>{return useMutation({mutationFn:DD})};var DP=e=>{return cM.get(cL.BUNDLE_LIST,{params:e})};var DR=e=>{var{params:t,isEnabled:r}=e;return sL({queryKey:["PrerequisiteCourses",t],queryFn:()=>DP((0,ef._)({exclude:t.exclude,limit:t.limit,offset:t.offset,filter:t.filter},t.post_status&&{post_status:t.post_status})).then(e=>e.data),placeholderData:S,enabled:r})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/course-placeholder.png
const DH=r.p+"images/course-placeholder-3ae4bdaf.png";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/CourseListModal/CourseListTable.tsx
var DM=e=>{var{form:r,type:i="courses"}=e;var a,o,s,l;var{pageInfo:u,onPageChange:c,itemsPerPage:d,offset:f,onFilterItems:p}=kQ();var h=(0,n.useMemo)(()=>r.watch(i)||[],[r,i]);var v=(0,n.useMemo)(()=>h.map(e=>e.id),[h]);var g=(0,n.useMemo)(()=>({offset:f,limit:d,filter:u.filter,post_status:"any",exclude:[]}),[f,d,u.filter]);var m=DO({params:g,isEnabled:i==="courses"});var b=DR({params:g,isEnabled:i==="course-bundle"});var _=(0,n.useMemo)(()=>{var e,t;var r,n;return i==="courses"?(r=(e=m.data)===null||e===void 0?void 0:e.results)!==null&&r!==void 0?r:[]:(n=(t=b.data)===null||t===void 0?void 0:t.results)!==null&&n!==void 0?n:[]},[i,(a=m.data)===null||a===void 0?void 0:a.results,(o=b.data)===null||o===void 0?void 0:o.results]);var y=(0,n.useMemo)(()=>_.map(e=>e.id),[_]);var w=(0,n.useMemo)(()=>_.length>0&&_.every(e=>v.includes(e.id)),[_,v]);var x=(0,n.useCallback)(e=>{if(e){// Add all fetched items that aren't already selected
var t=_.filter(e=>!v.includes(e.id));r.setValue(i,[...h,...t])}else{// Keep only items that aren't in the current view
var n=h.filter(e=>!y.includes(e.id));r.setValue(i,n)}},[_,v,y,h,r,i]);var A=(0,n.useCallback)(e=>{var t=v.includes(e.id);if(t){r.setValue(i,h.filter(t=>t.id!==e.id))}else{r.setValue(i,[...h,e])}},[v,h,r,i]);var E=(0,n.useMemo)(()=>[{Header:_.length?/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:x,checked:!(m.isLoading||m.isRefetching)&&w,label:(0,oM.__)("Name","tutor-pro"),labelCss:DL.checkboxLabel,"aria-label":(0,oM.__)("Select all items","tutor-pro")}):"#",Cell:e=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DL.checkboxWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(dD,{onChange:()=>A(e),checked:v.includes(e.id),"aria-label":"".concat((0,oM.__)("Select","tutor-pro")," ").concat(e.title)}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DL.courseItemWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:e.image||DH,css:DL.thumbnail,alt:e.title||(0,oM.__)("Course item","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DL.title,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:e.title}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:i==="course-bundle"&&(e===null||e===void 0?void 0:e.total_courses),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/* translators: %d is the total number of courses */(0,oM.sprintf)((0,oM.__)("Total Courses: %d","tutor-pro"),e.total_courses||0)})})]})]})]})}],[_.length,x,m.isLoading,m.isRefetching,w,A,v,i]);if(m.isLoading||b.isLoading){return/*#__PURE__*/(0,t/* .jsx */.Y)(oj,{"aria-label":(0,oM.__)("Loading","tutor-pro")})}if(!m.data&&!b.data){return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DL.errorMessage,role:"alert","aria-live":"assertive",children:(0,oM.__)("Something went wrong","tutor-pro")})}var k,I;var C=i==="courses"?(k=(s=m.data)===null||s===void 0?void 0:s.total_items)!==null&&k!==void 0?k:0:(I=(l=b.data)===null||l===void 0?void 0:l.total_items)!==null&&I!==void 0?I:0;return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DL.tableActions,children:/*#__PURE__*/(0,t/* .jsx */.Y)(DS,{onFilterItems:p})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DL.tableWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(fn,{columns:E,data:_,itemsPerPage:d,loading:m.isFetching||m.isRefetching})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DL.paginatorWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(d6,{currentPage:u.page,onPageChange:c,totalItems:C,itemsPerPage:d})})]})};/* export default */const DN=/*#__PURE__*/i().memo(DM);var DL={tableLabel:/*#__PURE__*/(0,u/* .css */.AH)("text-align:left;"),tablePriceLabel:/*#__PURE__*/(0,u/* .css */.AH)("text-align:right;"),tableActions:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"],";"),tableWrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-height:calc(100vh - 350px);overflow:auto;"),checkboxWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";"),checkboxLabel:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.body */.I.body(),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";"),paginatorWrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin:",iI/* .spacing["20"] */.YK["20"]," ",iI/* .spacing["16"] */.YK["16"],";"),courseItemWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;gap:",iI/* .spacing["16"] */.YK["16"],";"),bundleBadge:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny(),";display:inline-block;padding:0px ",iI/* .spacing["8"] */.YK["8"],";background-color:#9342e7;color:",iI/* .colorTokens.text.white */.I6.text.white,";border-radius:",iI/* .borderRadius["40"] */.Vq["40"],";"),subscriptionBadge:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.tiny */.I.tiny(),";display:flex;align-items:center;width:fit-content;padding:0px ",iI/* .spacing["6"] */.YK["6"]," 0px ",iI/* .spacing["4"] */.YK["4"],";background-color:",iI/* .colorTokens.color.warning["90"] */.I6.color.warning["90"],";color:",iI/* .colorTokens.text.white */.I6.text.white,";border-radius:",iI/* .borderRadius["40"] */.Vq["40"],";"),selectedBadge:/*#__PURE__*/(0,u/* .css */.AH)("margin-left:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.tiny */.I.tiny(),";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";background-color:",iI/* .colorTokens.background.disable */.I6.background.disable,";color:",iI/* .colorTokens.text.title */.I6.text.title,";border-radius:",iI/* .borderRadius["2"] */.Vq["2"],";white-space:nowrap;"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";",oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(2),";text-wrap:pretty;div:is(:last-of-type):not(:only-of-type){margin-top:",iI/* .spacing["4"] */.YK["4"],";",iC/* .typography.small */.I.small("medium"),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";}"),thumbnail:/*#__PURE__*/(0,u/* .css */.AH)("width:76px;height:48px;border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";object-fit:cover;object-position:center;"),priceWrapper:/*#__PURE__*/(0,u/* .css */.AH)("min-width:200px;text-align:right;[data-button]{display:none;}"),price:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";display:flex;gap:",iI/* .spacing["4"] */.YK["4"],";justify-content:end;"),startingFrom:/*#__PURE__*/(0,u/* .css */.AH)("color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),discountPrice:/*#__PURE__*/(0,u/* .css */.AH)("text-decoration:line-through;color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),errorMessage:/*#__PURE__*/(0,u/* .css */.AH)("height:100px;display:flex;align-items:center;justify-content:center;")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/CourseListModal/index.tsx
function DK(e){var{title:r,closeModal:n,actions:i,form:a,type:o="courses"}=e;var s=a.getValues(o)||[];var l=_4({defaultValues:{courses:s,"course-bundle":s}});var u=(o==="courses"?l.watch("courses"):l.watch("course-bundle"))||[];var c=()=>{var e=l.getValues(o)||[];a.setValue(o,[...e]);l.setValue(o,[]);n({action:"CONFIRM"})};return/*#__PURE__*/(0,t/* .jsxs */.FD)(dX,{onClose:()=>n({action:"CLOSE"}),title:/* translators: %s is the number of selected items */u.length>0?(0,oM.sprintf)((0,oM.__)("%s selected","tutor-pro"),u.length):r,actions:i,maxWidth:720,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(DN,{form:l,type:o}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DB.footer,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"text",onClick:()=>n({action:"CLOSE"}),children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"primary",onClick:c,disabled:u.length===0,"data-cy":"add-courses",children:(0,oM.__)("Add","tutor-pro")})]})]})}/* export default */const Dq=DK;var DB={footer:/*#__PURE__*/(0,u/* .css */.AH)("box-shadow:0px 1px 0px 0px #e4e5e7 inset;height:56px;display:flex;align-items:center;justify-content:end;gap:",iI/* .spacing["16"] */.YK["16"],";padding-inline:",iI/* .spacing["16"] */.YK["16"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/components/modals/ImportErrorListModal.tsx
var DU=e=>{var{errors:r,closeModal:n}=e;var i={topics:(0,oM.__)("Topic","tutor-pro"),lesson:(0,oM.__)("Lesson","tutor-pro"),tutor_quiz:(0,oM.__)("Quiz","tutor-pro"),tutor_assignments:(0,oM.__)("Assignment","tutor-pro"),"cb-question":(0,oM.__)("Content Bank Question","tutor-pro"),"cb-lesson":(0,oM.__)("Content Bank Lesson","tutor-pro"),"cb-assignment":(0,oM.__)("Content Bank Assignment","tutor-pro")};var a=[{Header:"#",Cell:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)("span",{css:DV.index,children:r+1}),width:"50px"},{Header:(0,oM.__)("Title","tutor-pro"),Cell:e=>/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:e})}];var o=(e,r)=>{if(!r.length)return null;return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:DV.errors,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h4",{css:iC/* .typography.body */.I.body("medium"),children:e}),/*#__PURE__*/(0,t/* .jsx */.Y)(fn,{columns:a,data:r,isBordered:true,isRounded:true,headerHeight:40})]})};return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{title:(0,oM.__)("Import Errors","tutor-pro"),subtitle:(0,oM.__)("Error occurred in the following items","tutor-pro"),onClose:n,icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"warning",height:24,width:24}),maxWidth:700,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:DV.wrapper,children:(0,iq/* .getObjectEntries */.w9)(r||{}).map(e=>{var[t,r=[]]=e;var n=t;var a;var s=(a=i[n])!==null&&a!==void 0?a:t;return o(s,r)})})})};/* export default */const Dj=DU;var DV={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["24"] */.YK["24"]," ",iI/* .spacing["24"] */.YK["24"],";max-height:90vh;",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,"    table{th{",iC/* .typography.caption */.I.caption("medium"),";}td{padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";",iC/* .typography.caption */.I.caption(),";}}"),index:/*#__PURE__*/(0,u/* .css */.AH)("text-align:center;color:",iI/* .colorTokens.text.hints */.I6.text.hints,";"),errors:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),"    gap:",iI/* .spacing["8"] */.YK["8"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/services/import-export.ts
var DW=e=>{var{course_ids:t,context:r}=e;return cM.get(cL.GET_EXPORTABLE_CONTENT,{params:(0,ef._)({course_ids:t},r?{context:r}:{})})};var Dz=function(){var{course_ids:e,context:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};var r=!!cS/* .tutorConfig.tutor_pro_url */.P.tutor_pro_url;return sL({queryKey:["ExportableContent",e,t],queryFn:()=>DW({course_ids:e,context:t}).then(e=>e.data),enabled:r})};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/import-export/import-error.webp
const DG=r.p+"images/import-error-6599c0e7.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/import-export/import-inprogress.webp
const DQ=r.p+"images/import-inprogress-bcfaaf30.webp";// CONCATENATED MODULE: ../tutor/assets/src/js/v3/public/images/import-export/import-success.webp
const D$=r.p+"images/import-success-dc81355e.webp";// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/ImportFromCoursesModal.tsx
function DX(){var e=oH(["\n      align-items: center;\n      padding: "," "," "," ",";\n      gap: ",";\n\n      img {\n        width: 109px;\n      }\n    "]);DX=function t(){return e};return e}function DJ(){var e=oH(["\n      flex-direction: column;\n    "]);DJ=function t(){return e};return e}var DZ=e=>{var t,r,n,i,a,o;var s=e.find(e=>e.key==="courses");if(!s){return{courseCount:0,lessonCount:0,assignmentCount:0,questionsCount:0,courseIds:[]}}var l=((r=s.contents)===null||r===void 0?void 0:(t=r.find(e=>e.key==="lesson"))===null||t===void 0?void 0:t.count)||0;var u=((i=s.contents)===null||i===void 0?void 0:(n=i.find(e=>e.key==="tutor_assignments"))===null||n===void 0?void 0:n.count)||0;var c=((o=s.contents)===null||o===void 0?void 0:(a=o.find(e=>e.key==="questions"))===null||a===void 0?void 0:a.count)||0;var d=s.count||0;var f=s.ids||[];return{courseCount:d,lessonCount:l,assignmentCount:u,questionsCount:c,courseIds:f}};var D0=e=>{var{closeModal:r,onImport:i,state:a,progress:o,totalCourses:s=0,hasError:l,importedCourses:u=0,failedCourseIds:c=[],importErrors:d}=e;var f=_4({defaultValues:{courses__ids:[],courses__lesson:false,courses__tutor_quiz:false,courses__tutor_assignments:false},shouldFocusError:true});var p=_4({defaultValues:{courses:[]},shouldFocusError:true});var h=p.watch("courses");var v=h.length>0;var[g,m]=(0,n.useState)(false);var{showModal:b}=i7();var{data:_,isLoading:y}=Dz({course_ids:h.map(e=>e.id),context:"content_bank"});var w=_===null||_===void 0?void 0:_.filter(e=>e.key==="courses"&&e.count);var{courseIds:x,courseCount:A,lessonCount:E,assignmentCount:k,questionsCount:I}=DZ(w||[]);var C=(e,r)=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.labelWithCount,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:e}),/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{"data-count":true,children:["(",r,")"]})]});var Y=(e,t,r)=>{if(r===0){return(0,oM.sprintf)((0,oM.__)("Importing data: %1$d/%2$d","tutor-pro"),e,t)}var n=(0,oM.sprintf)((0,oM._n)("Failed: %d","Failed: %d",r,"tutor-pro"),r);return(0,oM.sprintf)((0,oM.__)("Importing data: %1$d/%2$d %3$s","tutor-pro"),e,t,n)};var S=e=>{var t={courses_ids:!v?x:h.map(e=>e.id),sub_contents:[...e.courses__lesson?["lesson"]:[],...e.courses__tutor_quiz?["tutor_quiz"]:[],...e.courses__tutor_assignments?["tutor_assignments"]:[]]};i===null||i===void 0?void 0:i(t)};var T=()=>{var e=f.watch();return x.length===0||E===0&&k===0&&I===0||e.courses__lesson===false&&e.courses__tutor_quiz===false&&e.courses__tutor_assignments===false};var O=()=>/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!y,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(oj,{}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.wrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.formHeader,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.headerWithAction,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:v,fallback:C((0,oM.__)("All Courses","tutor-pro"),A),children:[C((0,oM.__)("Selected Courses","tutor-pro"),h.length),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"danger",size:"small",onClick:()=>p.reset(),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",width:16,height:16}),children:(0,oM.__)("Clear","tutor-pro")})]})})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"secondary",buttonCss:D2.selectButton,size:"small","data-cy":"select-courses",onClick:()=>{b({component:Dq,props:{// @ts-ignore
    form:p,title:(0,oM.__)("Select Courses","tutor-pro"),type:"courses"},depthIndex:iI/* .zIndex.highest */.fE.highest})},children:v?(0,oM.__)("Edit Specific Courses","tutor-pro"):(0,oM.__)("Select Specific Courses","tutor-pro")})})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.checkboxGroup,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:f.control,name:"courses__tutor_quiz",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(DI,oR(oF({},e),{disabled:I===0,label:C((0,oM.__)("Questions","tutor-pro"),I)}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:f.control,name:"courses__lesson",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(DI,oR(oF({},e),{disabled:E===0,label:C((0,oM.__)("Lessons","tutor-pro"),E)}))})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:(0,iq/* .isAddonEnabled */.GR)(oI/* .Addons.TUTOR_ASSIGNMENTS */.oW.TUTOR_ASSIGNMENTS),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{control:f.control,name:"courses__tutor_assignments",render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(DI,oR(oF({},e),{disabled:k===0,label:C((0,oM.__)("Assignments","tutor-pro"),k)}))})})})]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.formFooter,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{onClick:()=>r({action:"CLOSE"}),variant:"text",size:"small",children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",type:"submit",onClick:f.handleSubmit(S),disabled:T(),"data-cy":"import-from-courses",children:(0,oM.__)("Import","tutor-pro")})]})]})});var D=()=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.progress({isComplete:false}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:DQ,alt:(0,oM.__)("Importing","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.progressHeader({isComplete:false}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:iC/* .typography.caption */.I.caption(),children:(0,oM.__)("Importing","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.progressCount,children:[o,"%"]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.progressBar({progress:o})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.progressInfo,children:u?Y(u,s,c.length):(0,oM.__)("Importing in progress","tutor-pro")})]});var F=()=>/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.progress({isComplete:true}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:l?DG:D$,alt:l?(0,oM.__)("Import Failed!","tutor-pro"):(0,oM.__)("Import Complete!","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.progressHeader({isComplete:true}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.title,children:l?(0,oM.__)("Import Failed!","tutor-pro"):(0,oM.__)("Import Complete!","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.subtitle,children:l?u?(0,oM.__)("Some data could not be imported. Please check the details below.","tutor-pro"):(0,oM.__)("No data were imported.","tutor-pro"):(0,oM.__)("Content from the selected courses has been added to the Content Bank.","tutor-pro")})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:u,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.reportList,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!l,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.reportWrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.report,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{"data-check-icon":true,name:"checkFilledWhite",width:24,height:24}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.reportInfo,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.reportLeft,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:(0,oM.__)("Successfully Imported form","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:(0,oM.sprintf)((0,oM._nx)("%d Course","%d Courses",u||0,"imported","tutor-pro"),u||0)})]})})]})})}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:c.length>0&&!l,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{css:[oO/* .styleUtils.resetButton */.x.resetButton,D2.reportWrapper],onClick:()=>m(!g),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.report,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{"data-cross-icon":true,name:"crossCircle",width:28,height:28}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.reportInfo,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.reportLeft,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:(0,oM.__)("Failed to Import form","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:(0,oM.sprintf)((0,oM._nx)("%d Course","%d Courses",c.length,"failed","tutor-pro"),c.length)})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{"data-down-icon":true,name:"chevronDown",width:24,height:24})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:g,children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D2.reportLeft,children:c.map(e=>/*#__PURE__*/(0,t/* .jsx */.Y)("span",{"data-course-id":true,children:e},e))})})]})})]})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D2.footer,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:Object.keys(d||{}).length>0,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:"small",onClick:()=>{b({component:Dj,props:{errors:d},depthIndex:iI/* .zIndex.highest */.fE.highest})},children:(0,oM.__)("Error Report","tutor-pro")})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"primary",size:"small",onClick:()=>r({action:"CONFIRM"}),children:(0,oM.__)("Okay","tutor-pro")})]})]});var P={initial:O,progress:D,complete:F};return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{title:a==="initial"&&(0,oM.__)("Import from Courses","tutor-pro"),onClose:()=>r({action:"CLOSE"}),entireHeader:(a==="progress"||a==="complete")&&/*#__PURE__*/(0,t/* .jsx */.Y)(t/* .Fragment */.FK,{children:" "}),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"import",width:24,height:24}),maxWidth:a==="initial"?600:500,isCloseAble:a!=="progress",children:P[a]()})};/* export default */const D1=D0;var D2={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["16"] */.YK["16"],";border-radius:",iI/* .spacing["12"] */.YK["12"],";border:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";"),formHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;margin-bottom:",iI/* .spacing["10"] */.YK["10"],";"),headerWithAction:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),selectButton:/*#__PURE__*/(0,u/* .css */.AH)("background-color:",iI/* .colorTokens.background.white */.I6.background.white,";"),labelWithCount:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";[data-count]{color:",iI/* .colorTokens.text.hints */.I6.text.hints,";margin-left:",iI/* .spacing["2"] */.YK["2"],";}"),checkboxGroup:/*#__PURE__*/(0,u/* .css */.AH)("display:grid;grid-template-columns:1fr 1fr 1fr;padding:",iI/* .spacing["16"] */.YK["16"],";gap:",iI/* .spacing["8"] */.YK["8"],";flex-wrap:wrap;width:100%;border:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";border-radius:",iI/* .borderRadius["8"] */.Vq["8"],";"),formFooter:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:flex-end;gap:",iI/* .spacing["16"] */.YK["16"],";border-top:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";padding:",iI/* .spacing["16"] */.YK["16"],";"),progress:e=>{var{isComplete:t=false}=e;return/*#__PURE__*/(0,u/* .css */.AH)("width:100%;",oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["4"] */.YK["4"],";padding:",iI/* .spacing["32"] */.YK["32"]," 91px ",iI/* .spacing["48"] */.YK["48"]," 91px;img{align-self:center;width:82px;height:'auto';object-fit:contain;object-position:center;margin-bottom:",iI/* .spacing["36"] */.YK["36"],";}",t&&(0,u/* .css */.AH)(DX(),iI/* .spacing["32"] */.YK["32"],iI/* .spacing["32"] */.YK["32"],iI/* .spacing["48"] */.YK["48"],iI/* .spacing["32"] */.YK["32"],iI/* .spacing["24"] */.YK["24"]))},progressHeader:e=>{var{isComplete:t=true}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;",t&&(0,u/* .css */.AH)(DJ()))},progressCount:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.flexCenter */.x.flexCenter(),";",iC/* .typography.tiny */.I.tiny("bold"),";padding:",iI/* .spacing["2"] */.YK["2"]," ",iI/* .spacing["8"] */.YK["8"],";background-color:",iI/* .colorTokens.background.status.success */.I6.background.status.success,";color:",iI/* .colorTokens.text.success */.I6.text.success,";border-radius:",iI/* .borderRadius["12"] */.Vq["12"],";"),progressBar:e=>{var{progress:t=0}=e;return/*#__PURE__*/(0,u/* .css */.AH)("position:relative;width:100%;height:6px;background-color:",iI/* .colorTokens.color.black["10"] */.I6.color.black["10"],";border-radius:",iI/* .borderRadius["50"] */.Vq["50"],";overflow:hidden;&::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:",iI/* .colorTokens.bg.success */.I6.bg.success,";border-radius:",iI/* .borderRadius["50"] */.Vq["50"],";transition:width 0.3s ease-in;width:",t,"%;}")},progressInfo:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";"),reportList:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["8"] */.YK["8"],";width:100%;"),reportWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["12"] */.YK["12"],";background-color:",iI/* .colorTokens.primary["30"] */.I6.primary["30"],";border-radius:",iI/* .borderRadius["6"] */.Vq["6"],";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["12"] */.YK["12"],";"),report:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["12"] */.YK["12"],";[data-check-icon]{color:",iI/* .colorTokens.icon.success */.I6.icon.success,";flex-shrink:0;}[data-cross-icon]{color:",iI/* .colorTokens.icon.error */.I6.icon.error,";flex-shrink:0;}[data-down-icon]{color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";flex-shrink:0;}"),title:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.heading6 */.I.heading6("medium"),";text-align:center;"),subtitle:/*#__PURE__*/(0,u/* .css */.AH)(iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";text-align:center;"),footer:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["8"] */.YK["8"],";"),reportInfo:/*#__PURE__*/(0,u/* .css */.AH)("width:100%;",oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;"),reportLeft:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("row"),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";flex-wrap:wrap;div:first-of-type{",iC/* .typography.small */.I.small(),";color:",iI/* .colorTokens.text.title */.I6.text.title,";}div:last-of-type{",iC/* .typography.small */.I.small("medium"),";color:",iI/* .colorTokens.text.primary */.I6.text.primary,";}[data-course-id]{",iC/* .typography.caption */.I.caption(),";color:",iI/* .colorTokens.text.subdued */.I6.text.subdued,";padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["8"] */.YK["8"],";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/CollectionDetails.tsx
var D6="250px";var D4=1;var D5=()=>{var e;var{collectionId:r}=Ds();var{value:i}=Dh("paged");var{value:a}=Dh("order");var{value:o}=Dh("search");var{value:s}=Dh("content_types",{parseAs:"array"});var[l,u]=(0,n.useState)(null);var c=(0,n.useRef)(null);var d=(0,n.useRef)(null);var f=ec();var p={};var h=cj(oF({collection_id:r,per_page:Number(cS/* .tutorConfig.settings.pagination_per_page */.P.settings.pagination_per_page||10)},a&&{order:a===null||a===void 0?void 0:a.toUpperCase()},i&&{page:i},o&&{search:o},s&&{content_types:s}));var v=xl();var{showModal:g,updateModal:m}=i7();var b=(0,n.useMemo)(()=>h===null||h===void 0?void 0:h.data,[h.data]);if(h.isLoading){return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{width:"50%",height:40,animation:true}),/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{width:"100%",height:247,animation:true})]})}var _=[{key:"question",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"quiz",width:24,height:24}),label:(0,oM.__)("Question","tutor-pro"),onClick:()=>{w("cb-question");u(null)},show:e=>e==="empty_state"},{key:"lesson",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"lesson",width:24,height:24}),label:(0,oM.__)("Lesson","tutor-pro"),onClick:()=>{w("cb-lesson");u(null)},show:()=>true},{key:"assignment",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"assignment",width:24,height:24}),label:(0,oM.__)("Assignment","tutor-pro"),onClick:()=>{w("cb-assignment");u(null)},show:()=>(0,iq/* .isAddonEnabled */.GR)(oI/* .Addons.TUTOR_ASSIGNMENTS */.oW.TUTOR_ASSIGNMENTS)},{key:"import",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"import",width:24,height:24}),label:(0,oM.__)("Import from Courses","tutor-pro"),onClick:()=>{w("import");u(null)},bordered:true,show:()=>true}];var y=e=>/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:D8.popoverOptionWrapper,children:_.filter(t=>t.show?t.show(e):true).map(e=>/*#__PURE__*/(0,t/* .jsxs */.FD)("button",{type:"button",css:[D8.popoverOption,e.bordered&&D8.borderedOption],onClick:e.onClick,"data-cy":"".concat(e.key,"-content-modal"),children:[e.icon,/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:e.label})]},e.key))});var w=e=>{switch(e){case"cb-question":var t;g({component:Di,props:{collectionId:Number(r),subtitle:(b===null||b===void 0?void 0:(t=b.collection)===null||t===void 0?void 0:t.post_title)||(0,oM.__)("Add Question","tutor-pro")},depthIndex:iI/* .zIndex.highest */.fE.highest});break;case"cb-lesson":var n;g({component:kz,props:{collectionId:Number(r),subtitle:(b===null||b===void 0?void 0:(n=b.collection)===null||n===void 0?void 0:n.post_title)||(0,oM.__)("Add Lesson","tutor-pro")},depthIndex:iI/* .zIndex.highest */.fE.highest});break;case"cb-assignment":var i;g({component:xd,props:{collectionId:Number(r),subtitle:(b===null||b===void 0?void 0:(i=b.collection)===null||i===void 0?void 0:i.post_title)||(0,oM.__)("Add Assignment","tutor-pro")},depthIndex:iI/* .zIndex.highest */.fE.highest});break;case"import":g({id:"import-from-courses-modal",component:D1,props:{state:"initial",progress:50,onImport:e=>{x(e)}},depthIndex:iI/* .zIndex.highest */.fE.highest});break}};var x=e=>cQ(function*(){var t;if(!r)return;m("import-from-courses-modal",{state:"progress",progress:0});var n=e.courses_ids;var i=[];var a=0;var o=false;var s=(e,t)=>Array.from({length:Math.ceil(e.length/t)},(r,n)=>e.slice(n*t,n*t+t));var l=s(n,D4);for(var u=0;u<l.length;u++){var c=l[u];try{var d,h;var g=yield v.mutateAsync(oR(oF({collection_id:Number(r)},e),{courses_ids:c}));var b;var _=(b=g===null||g===void 0?void 0:(d=g.data)===null||d===void 0?void 0:d.failed_courses)!==null&&b!==void 0?b:[];var y=c.length-_.length;a+=y;if(_.length){i.push(..._);o=true}p=(g===null||g===void 0?void 0:(h=g.data)===null||h===void 0?void 0:h.errors)||{};m("import-from-courses-modal",{state:"progress",progress:Math.round((u+1)/l.length*100),failedCourseIds:i,totalCourses:n.length,importedCourses:a})}catch(e){i.push(...c);o=true;m("import-from-courses-modal",{state:"progress",progress:Math.round((u+1)/l.length*100),failedCourseIds:i,totalCourses:n.length,importedCourses:a})}}m("import-from-courses-modal",{state:"complete",progress:100,importedCourses:a,failedCourseIds:i,hasError:i.length===n.length&&o||!!((t=v.data)===null||t===void 0?void 0:t.data.errors),onImport:e=>x(e),importErrors:p});f.invalidateQueries({queryKey:["ContentBankContents"]});f.invalidateQueries({queryKey:["ContentBankCollectionsInfinity"]})})();return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.wrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.titleWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h5",{children:b===null||b===void 0?void 0:(e=b.collection)===null||e===void 0?void 0:e.post_title}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.titleActions,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",variant:"primary",onClick:()=>w("cb-question"),buttonCss:D8.addQuestionButton,"data-cy":"question-content-modal",children:(0,oM.__)("Add Question","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{ref:d,size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",variant:"tertiary",buttonCss:D8.plusButtonCss,onClick:()=>u("header"),"data-cy":"content-create-popover",children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24})})]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:!b||Number(b.collection.count_stats.total)===0,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)(DA,{contents:b,collection:b===null||b===void 0?void 0:b.collection}),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.emptyStateWrapper,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:D8.emptyState,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("h6",{children:(0,oM.__)("Add and manage reusable content","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("p",{children:(0,oM.__)("Create quizzes, lessons, and assignments once and reuse them across your courses.","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-actions":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{ref:c,size:oI/* .CURRENT_VIEWPORT.isAboveMobile */.vN.isAboveMobile?"regular":"small",variant:"primary",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24}),onClick:()=>u("empty_state"),buttonCss:D8.addButtonCss,children:(0,oM.__)("Add","tutor-pro")})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("img",{src:dw,srcSet:"".concat(dw," 1x, ").concat(dx," 2x"),alt:(0,oM.__)("An empty state illustration for content bank","tutor-pro")})]})})]}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{isOpen:l==="header",closePopover:()=>u(null),placement:de.BOTTOM_RIGHT,triggerRef:d,maxWidth:D6,animationType:iH.slideDown,children:y("header")}),/*#__PURE__*/(0,t/* .jsx */.Y)(dy,{isOpen:l==="empty_state",closePopover:()=>u(null),placement:de.BOTTOM_LEFT,triggerRef:c,maxWidth:D6,animationType:iH.slideDown,children:y("empty_state")})]})};/* export default */const D3=D5;var D8={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";width:100%;gap:",iI/* .spacing["16"] */.YK["16"],";padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["0"] */.YK["0"]," ",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["32"] */.YK["32"],";",iI/* .Breakpoint.mobile */.EA.mobile,"{padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["0"] */.YK["0"],";}h5{",iC/* .typography.heading5 */.I.heading5("medium"),";}",iI/* .Breakpoint.mobile */.EA.mobile,"{padding:",iI/* .spacing["8"] */.YK["8"]," 1px;h5{",iC/* .typography.heading6 */.I.heading6("medium"),";}}"),titleWrapper:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:",iI/* .spacing["16"] */.YK["16"],";"),titleActions:/*#__PURE__*/(0,u/* .css */.AH)("display:flex;align-items:center;flex-wrap:wrap;gap:",iI/* .spacing["8"] */.YK["8"],";"),plusButtonCss:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["10"] */.YK["10"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";"),addQuestionButton:/*#__PURE__*/(0,u/* .css */.AH)("padding-inline:",iI/* .spacing["16"] */.YK["16"],";"),addButtonCss:/*#__PURE__*/(0,u/* .css */.AH)("padding-inline:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["20"] */.YK["20"],";"),emptyStateWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["24"] */.YK["24"],";width:100%;align-items:center;justify-content:space-between;padding:42px ",iI/* .spacing["56"] */.YK["56"]," 42px ",iI/* .spacing["32"] */.YK["32"],";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";border-radius:",iI/* .borderRadius["12"] */.Vq["12"],";border:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";img{width:218px;flex-shrink:0;}",iI/* .Breakpoint.mobile */.EA.mobile,"{flex-direction:column-reverse;}"),emptyState:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";width:100%;gap:",iI/* .spacing["8"] */.YK["8"],";h6{",iC/* .typography.heading6 */.I.heading6("medium"),";}p{",iC/* .typography.body */.I.body("regular"),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";}[data-actions]{margin-top:",iI/* .spacing["12"] */.YK["12"],";}"),popoverOptionWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";width:100%;padding-block:",iI/* .spacing["8"] */.YK["8"],";"),popoverOption:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.resetButton */.x.resetButton,";color:",iI/* .colorTokens.text.title */.I6.text.title,";width:100%;padding:",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["6"] */.YK["6"]," ",iI/* .spacing["20"] */.YK["20"],";transition:background-color 0.3s ease-in-out;display:flex;align-items:center;gap:",iI/* .spacing["10"] */.YK["10"],";",iC/* .typography.caption */.I.caption("regular"),";border:2px solid transparent;div{",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["4"] */.YK["4"],";}&:focus,&:active,&:hover{background:",iI/* .colorTokens.background.hover */.I6.background.hover,";color:",iI/* .colorTokens.text.title */.I6.text.title,";}"),borderedOption:/*#__PURE__*/(0,u/* .css */.AH)("border-top:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";padding-block:",iI/* .spacing["10"] */.YK["10"]," ",iI/* .spacing["6"] */.YK["6"],";")};// CONCATENATED MODULE: ../tutor/assets/src/js/v3/shared/utils/url.ts
function D9(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"string";var r=new URLSearchParams(window.location.search);if(!r.has(e)){return null}var n=r.get(e);switch(t){case"string":return String(n);case"number":return Number(n);case"boolean":return Boolean(n);default:return n}}var D7=e=>{var{exclude:t}=e;var r=new URLSearchParams(window.location.search);var n=[];for(var i of r.keys()){if(!t.includes(i)){n.push(i)}}n.forEach(e=>{r.delete(e)});var a=r.toString()?"".concat(window.location.pathname,"?").concat(r.toString()):window.location.pathname;window.history.replaceState({},"",a)};var Fe=e=>{var t=JSON.stringify(e);return btoa(encodeURIComponent(t))};var Ft=(e,t)=>{try{var r=decodeURIComponent(atob(e));return JSON.parse(r)}catch(e){// eslint-disable-next-line no-console
console.error("Failed to decode parameters:",e);if(t!==undefined){return t}throw e}};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/modals/SaveCollectionModal.tsx
var Fr=e=>{var{closeModal:r,collectionId:i,name:a}=e;var o=_4({defaultValues:{name:a||""},shouldFocusError:true});var{updateCollectionId:s}=Ds();var l=wW();var u=e=>cQ(function*(){if(l.isPending){return}var t=oR(oF({},i&&{id:i}),{name:e.name});var n=yield l.mutateAsync(t);if(n.status_code===200||n.status_code===201){if(n.data&&!i){s(Number(n.data))}r({action:"CONFIRM"})}})();(0,n.useEffect)(()=>{var e=setTimeout(()=>{o.setFocus("name")},250);return()=>clearTimeout(e);// eslint-disable-next-line react-hooks/exhaustive-deps
},[]);return/*#__PURE__*/(0,t/* .jsx */.Y)(dX,{onClose:()=>r({action:"CLOSE"}),title:i?(0,oM.__)("Edit Collection","tutor-pro"):(0,oM.__)("Create Collection","tutor-pro"),maxWidth:560,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fi.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("form",{css:Fi.formWrapper,onSubmit:o.handleSubmit(u),children:/*#__PURE__*/(0,t/* .jsx */.Y)(fQ,{name:"name",control:o.control,rules:yj(),render:e=>/*#__PURE__*/(0,t/* .jsx */.Y)(wr,oR(oF({},e),{type:"text",label:(0,oM.__)("Name","tutor-pro"),placeholder:(0,oM.__)("Enter your collection name","tutor-pro")}))})}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fi.formFooter,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{onClick:()=>r({action:"CLOSE"}),variant:"text",size:"small",children:(0,oM.__)("Cancel","tutor-pro")}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",type:"submit",onClick:o.handleSubmit(u),loading:l.isPending,"data-cy":"save-collection-button",children:i?(0,oM.__)("Update","tutor-pro"):(0,oM.__)("Create","tutor-pro")})]})]})})};/* export default */const Fn=Fr;var Fi={wrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["20"] */.YK["20"],";"),formWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";gap:",iI/* .spacing["20"] */.YK["20"],";padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["16"] */.YK["16"]," 0 ",iI/* .spacing["16"] */.YK["16"],";"),formFooter:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:flex-end;gap:",iI/* .spacing["16"] */.YK["16"],";border-top:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";padding:",iI/* .spacing["16"] */.YK["16"],";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/CollectionItem.tsx
function Fa(){var e=oH(["\n        background-color: ",";\n        color: ",";\n\n        [data-count] {\n          color: ",";\n        }\n      "]);Fa=function t(){return e};return e}function Fo(){var e=oH(["\n      background-color: ",";\n      color: ",";\n\n      [data-count] {\n        color: ",";\n      }\n    "]);Fo=function t(){return e};return e}var Fs=/*#__PURE__*/(0,n.memo)(e=>{var{item:r,onDelete:i}=e;var{showModal:a,updateModal:o,closeModal:s}=i7();var{collectionId:l,updateCollectionId:u}=Ds();var c=wG();var d=xr();var[f,p]=(0,n.useState)(false);var h=(0,n.useCallback)(()=>{if(l!==r.ID){u(r.ID);D7({exclude:["collection_id","page"]})}window.scrollTo({top:0,behavior:"smooth"})},[l,r.ID,u]);var v=(0,n.useCallback)(()=>{p(false);a({component:Fn,props:{collectionId:r.ID,name:r.post_title},depthIndex:iI/* .zIndex.highest */.fE.highest})},[r.ID,r.post_title,a]);var g=(0,n.useCallback)(()=>cQ(function*(){var e=yield d.mutateAsync(Number(r.ID));if(e.status_code===200){p(false);u(Number(e.data))}})(),[d,r.ID,u]);var m=(0,n.useCallback)(()=>cQ(function*(){o("collection-delete-modal",{isLoading:true});var e=yield c.mutateAsync(Number(r.ID));if(e.status_code===200){p(false);i===null||i===void 0?void 0:i(Number(r.ID))}s();// eslint-disable-next-line react-hooks/exhaustive-deps
    })(),[c,r.ID,i]);var b=e=>{var t={referrer:"tutor-content-bank",type:e,collection_id:r.ID,collection_title:r.post_title,lesson_count:r.count_stats.lesson,assignment_count:r.count_stats.assignment,question_count:r.count_stats.question,total:r.count_stats.total};var n=Fe(t);var i=encodeURIComponent(decodeURIComponent(n));window.location.replace("".concat(cS/* ["default"].TUTOR_IMPORT_EXPORT_PAGE */.A.TUTOR_IMPORT_EXPORT_PAGE,"&referrer=").concat(i))};var _=String(l)===String(r.ID);return/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-cy":_?"selected-collection":"collection",role:"button",tabIndex:0,css:Fu.collectionItem({isSelected:_,isThreeDotOpen:f}),onClick:h,children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-label-count":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{"data-label":true,children:r.post_title}),/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{"data-count":true,children:[" (",r.count_stats.total,")"]})]}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-three-dot":true,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(fh,{isOpen:f,onClick:e=>{e.stopPropagation();p(!f)},placement:de.BOTTOM,closePopover:()=>p(false),dotsOrientation:"vertical",maxWidth:"170px",isInverse:true,arrow:true,closeOnEscape:false,size:"small",wrapperCss:Fu.threeDotWrapper,"data-cy":"collection-actions-popover",children:[/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Rename","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"edit"}),"data-cy":"rename-collection",onClick:e=>{e.stopPropagation();v()}}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Duplicate","tutor-pro"),disabled:d.isPending,"data-cy":"duplicate-collection",icon:d.isPending?/*#__PURE__*/(0,t/* .jsx */.Y)(oz,{size:24}):/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"copyPaste"}),onClick:e=>{e.stopPropagation();g()}}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Delete","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"delete"}),"data-cy":"delete-collection",isTrash:true,onClick:e=>{e.stopPropagation();p(false);a({id:"collection-delete-modal",component:d0,props:{title:(0,oM.__)("Delete Collection","tutor-pro"),description:(0,oM.__)("Are you sure you want to delete this collection?","tutor-pro"),isLoading:c.isPending,onConfirm:()=>m()},depthIndex:iI/* .zIndex.highest */.fE.highest})}}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Import","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"import"}),buttonCss:Fu.borderedButton,onClick:e=>{e.stopPropagation();b("import")}}),/*#__PURE__*/(0,t/* .jsx */.Y)(fh.Option,{text:(0,oM.__)("Export","tutor-pro"),icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{width:24,height:24,name:"export"}),onClick:e=>{e.stopPropagation();b("export")}})]})})]})});Fs.displayName="CollectionItem";/* export default */const Fl=Fs;var Fu={collectionItem:e=>{var{isSelected:t,isThreeDotOpen:r}=e;return/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;",iC/* .typography.body */.I.body("medium"),";color:",iI/* .colorTokens.text.title */.I6.text.title,";padding:",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["8"] */.YK["8"]," ",iI/* .spacing["16"] */.YK["16"],";background-color:",r?iI/* .colorTokens.background.white */.I6.background.white:"transparent",";cursor:pointer;transition:background-color 0.3s ease-in-out,color 0.3s ease-in-out;[data-label-count]{",oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["2"] */.YK["2"],";flex:1;}[data-label]{",oO/* .styleUtils.text.ellipsis */.x.text.ellipsis(1),";}[data-count]{",iC/* .typography.body */.I.body("regular"),";color:",iI/* .colorTokens.text.hints */.I6.text.hints,";}[data-three-dot]{z-index:1;opacity:",r?1:0,";transition:opacity 0.15s ease-in-out;color:",iI/* .colorTokens.icon["default"] */.I6.icon["default"],";cursor:pointer;}&:hover{[data-three-dot]{opacity:1;}",!t&&(0,u/* .css */.AH)(Fa(),iI/* .colorTokens.background.active */.I6.background.active,iI/* .colorTokens.brand.blue */.I6.brand.blue,iI/* .colorTokens.text.subdued */.I6.text.subdued),"}&:active,&:focus{border-color:",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";background-color:",iI/* .colorTokens.background.white */.I6.background.white,";color:",iI/* .colorTokens.text.brand */.I6.text.brand,";[data-count]{color:",iI/* .colorTokens.stroke.brand */.I6.stroke.brand,";}}",t&&(0,u/* .css */.AH)(Fo(),iI/* .colorTokens.background.white */.I6.background.white,iI/* .colorTokens.text.brand */.I6.text.brand,iI/* .colorTokens.stroke.brand */.I6.stroke.brand))},threeDotWrapper:/*#__PURE__*/(0,u/* .css */.AH)("background-color:transparent;"),borderedButton:/*#__PURE__*/(0,u/* .css */.AH)("border-top:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/Collections.tsx
function Fc(){var e=oH(["\n        left: -240px;\n      "]);Fc=function t(){return e};return e}var Fd="64px";var Ff="78px";var Fp=e=>{var{menuCollapsed:r}=e;var i,a,o,s,l;var[u,c]=(0,n.useState)({value:"",isSearchEnabled:false});var d=st(u.value,300);var{showModal:f,hasModalOnStack:p}=i7();var{collectionId:h,updateCollectionId:v}=Ds();var g=cB({page:1,per_page:10,search:d});var m=((a=g.data)===null||a===void 0?void 0:(i=a.pages)===null||i===void 0?void 0:i.reduce((e,t)=>{if(t.data&&Array.isArray(t.data)){return[...e,...t.data]}return e},[]))||[];var b=((l=g.data)===null||l===void 0?void 0:(s=l.pages)===null||s===void 0?void 0:(o=s[0])===null||o===void 0?void 0:o.total_record)||0;var{intersectionEntry:_,intersectionElementRef:y}=sn({dependencies:[m.length]});var w=!g.isLoading&&!g.isRefetching&&!u.isSearchEnabled&&m.length===0;var x=(0,n.useCallback)(()=>{f({component:Fn,depthIndex:iI/* .zIndex.highest */.fE.highest})},[f]);(0,n.useEffect)(()=>{if((_===null||_===void 0?void 0:_.isIntersecting)&&g.hasNextPage&&m.length>0){g.fetchNextPage()}},[_,g,m.length]);(0,n.useEffect)(()=>{if(g.isLoading||u.isSearchEnabled){return}if(m.length>0&&!h){var e=m[0];if(e){v(e.ID)}else{v(null)}}else if(h&&m.length===0){v(null)}// eslint-disable-next-line react-hooks/exhaustive-deps
},[g.isLoading,m]);if(g.isLoading&&!u.isSearchEnabled){return/*#__PURE__*/(0,t/* .jsx */.Y)(oj,{})}return/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:w,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fv.wrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fv.leftWrapper(r),children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fv.left,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fv.leftHeader,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:!u.isSearchEnabled,fallback:/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(o3,{value:u.value,onChange:e=>c(oR(oF({},u),{value:e})),placeholder:(0,oM.__)("Search...","tutor-pro"),autoFocus:true,variant:"search",inputCss:Fv.searchInput}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"text",onClick:()=>c({value:"",isSearchEnabled:false}),disabled:p,buttonCss:Fv.actionButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"cross",height:24,width:24})})]}),children:[/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{"data-header":true,children:[/*#__PURE__*/(0,t/* .jsx */.Y)("span",{children:(0,oM.__)("Collections","tutor-pro")}),/*#__PURE__*/(0,t/* .jsxs */.FD)("span",{"data-collection-count":true,children:[" (",b||1,")"]})]}),/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fv.actionsWrapper,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"text",onClick:()=>c({value:"",isSearchEnabled:true}),disabled:p,buttonCss:Fv.actionButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"search",height:24,width:24})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{size:"small",variant:"tertiary",onClick:x,disabled:p,buttonCss:Fv.actionButton,"data-cy":"open-new-collection-modal",children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24})})]})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fv.collectionsList,children:/*#__PURE__*/(0,t/* .jsxs */.FD)(se/* ["default"] */.A,{when:m.length>0,fallback:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fv.notFound,children:(0,oM.__)("No collections found.","tutor-pro")}),children:[/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:m,children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)(Fl,{item:e,onDelete:e=>{if(e===0||Number(h)!==Number(e)){return}var t=m[r-1]||m[r+1];if(t){v(t.ID)}else{v(null)}c({value:"",isSearchEnabled:false})}},"".concat(e.ID,"-").concat(h))}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{ref:y}),/*#__PURE__*/(0,t/* .jsx */.Y)(se/* ["default"] */.A,{when:(_===null||_===void 0?void 0:_.isIntersecting)&&g.hasNextPage,children:/*#__PURE__*/(0,t/* .jsx */.Y)(o7,{each:Array.from({length:5}),children:(e,r)=>/*#__PURE__*/(0,t/* .jsx */.Y)("div",{"data-skeleton":true,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oJ,{width:"100%",height:40,animation:true},r)})})})]})})]})}),/*#__PURE__*/(0,t/* .jsx */.Y)("div",{children:/*#__PURE__*/(0,t/* .jsx */.Y)(D3,{},h)})]}),children:/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fv.emptyStateWrapper,children:/*#__PURE__*/(0,t/* .jsx */.Y)(sf,{wrapperCss:Fv.emptyState,emptyStateImage:cW,emptyStateImage2x:cz,title:(0,oM.__)("You haven’t created any collections yet","tutor-pro"),description:(0,oM.__)("Create a collection of reusable Questions, Lessons, and Assignments to use across courses.","tutor-pro"),actions:/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"primary",icon:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"plus",height:24,width:24}),onClick:x,"data-cy":"open-new-collection-modal",children:(0,oM.__)("Create New Collection","tutor-pro")}),removeBorder:false})})})};Fp.displayName="Collections";/* export default */const Fh=Fp;var Fv={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("max-width:1380px;padding-inline:",iI/* .spacing["20"] */.YK["20"],";margin-inline:auto;display:grid;grid-template-columns:240px 1fr;",iI/* .Breakpoint.mobile */.EA.mobile,"{display:block;}"),leftWrapper:e=>/*#__PURE__*/(0,u/* .css */.AH)("border-inline:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";",iI/* .Breakpoint.mobile */.EA.mobile,"{position:fixed;width:238px;height:calc(100% - (",oI/* .WP_ADMIN_BAR_HEIGHT_MOBILE */.TF," + ",Fd," + 3px));top:calc(",oI/* .WP_ADMIN_BAR_HEIGHT_MOBILE */.TF," + ",Fd," + 3px);left:20px;background-color:white;z-index:1;transition:left 0.25s ease-in-out;",e&&(0,u/* .css */.AH)(Fc()),"}"),left:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";position:sticky;top:calc(",oI/* .WP_ADMIN_BAR_HEIGHT */.I4," + ",Fd," + 3px);",iI/* .Breakpoint.mobile */.EA.mobile,"{height:100%;top:calc(",oI/* .WP_ADMIN_BAR_HEIGHT_MOBILE */.TF," + ",Fd," + 3px);}"),leftHeader:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";justify-content:space-between;align-items:center;padding:",iI/* .spacing["20"] */.YK["20"]," ",iI/* .spacing["16"] */.YK["16"],";border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";background-color:",iI/* .colorTokens.surface.navbar */.I6.surface.navbar,";position:sticky;top:0;z-index:",iI/* .zIndex.header */.fE.header,";[data-header]{",iC/* .typography.body */.I.body("medium"),";[data-collection-count]{color:",iI/* .colorTokens.text.hints */.I6.text.hints,";}}"),actionsWrapper:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex(),";align-items:center;gap:",iI/* .spacing["8"] */.YK["8"],";"),actionButton:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["6"] */.YK["6"],";"),collectionsList:/*#__PURE__*/(0,u/* .css */.AH)(oO/* .styleUtils.display.flex */.x.display.flex("column"),";",oO/* .styleUtils.overflowYAuto */.x.overflowYAuto,";scrollbar-gutter:unset;max-height:calc(100vh - ",oI/* .WP_ADMIN_BAR_HEIGHT */.I4," - ",Fd," - ",Ff,");",iI/* .Breakpoint.mobile */.EA.mobile,"{max-height:calc(100vh - ",oI/* .WP_ADMIN_BAR_HEIGHT_MOBILE */.TF," - ",Fd," - ",Ff,");}[data-skeleton]{padding:",iI/* .spacing["4"] */.YK["4"]," ",iI/* .spacing["4"] */.YK["4"]," 0 ",iI/* .spacing["4"] */.YK["4"],";}"),emptyStateWrapper:/*#__PURE__*/(0,u/* .css */.AH)("margin-top:40px;max-width:795px;margin-inline:auto;padding:",iI/* .spacing["0"] */.YK["0"]," ",iI/* .spacing["16"] */.YK["16"],";"),emptyState:/*#__PURE__*/(0,u/* .css */.AH)("gap:",iI/* .spacing["24"] */.YK["24"],";padding:",iI/* .spacing["40"] */.YK["40"],";img{padding-top:",iI/* .spacing["12"] */.YK["12"],";width:136px;}h5{",iC/* .typography.heading6 */.I.heading6("medium"),";}[data-actions]{margin-top:",iI/* .spacing["8"] */.YK["8"],";}"),notFound:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["20"] */.YK["20"],";"),searchInput:/*#__PURE__*/(0,u/* .css */.AH)("max-height:32px;")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/Topbar.tsx
var Fg=e=>{var{onMenuClick:r}=e;return/*#__PURE__*/(0,t/* .jsx */.Y)("div",{css:Fb.wrapper,children:/*#__PURE__*/(0,t/* .jsxs */.FD)("div",{css:Fb.header,children:[/*#__PURE__*/(0,t/* .jsx */.Y)(iB/* ["default"] */.A,{variant:"tertiary",size:"small",onClick:r,buttonCss:Fb.menuButton,children:/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"bars",width:20,height:20})}),/*#__PURE__*/(0,t/* .jsx */.Y)(iU/* ["default"] */.A,{name:"contentBank",height:24,width:24}),/*#__PURE__*/(0,t/* .jsx */.Y)("h5",{children:(0,oM.__)("Content Bank","tutor-pro")})]})})};/* export default */const Fm=Fg;var Fb={wrapper:/*#__PURE__*/(0,u/* .css */.AH)("position:sticky;top:",oI/* .WP_ADMIN_BAR_HEIGHT */.I4,";border-bottom:1px solid ",iI/* .colorTokens.stroke.divider */.I6.stroke.divider,";background-color:",iI/* .colorTokens.surface.navbar */.I6.surface.navbar,";z-index:",iI/* .zIndex.header */.fE.header,";",iI/* .Breakpoint.mobile */.EA.mobile,"{top:",oI/* .WP_ADMIN_BAR_HEIGHT_MOBILE */.TF,";}"),header:/*#__PURE__*/(0,u/* .css */.AH)("max-width:1380px;padding:",iI/* .spacing["16"] */.YK["16"]," ",iI/* .spacing["20"] */.YK["20"],";margin-inline:auto;",oO/* .styleUtils.display.flex */.x.display.flex(),";gap:",iI/* .spacing["8"] */.YK["8"],";align-items:center;svg{color:",iI/* .colorTokens.icon.hover */.I6.icon.hover,";fill:none;}h5{margin:0;",iC/* .typography.heading5 */.I.heading5(),"}"),menuButton:/*#__PURE__*/(0,u/* .css */.AH)("padding:",iI/* .spacing["6"] */.YK["6"],";border-radius:",iI/* .borderRadius["4"] */.Vq["4"],";display:none;",iI/* .Breakpoint.mobile */.EA.mobile,"{display:flex;}")};// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/layout/Main.tsx
var F_=()=>{var[e,r]=(0,n.useState)(true);return/*#__PURE__*/(0,t/* .jsxs */.FD)(t/* .Fragment */.FK,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(Fm,{onMenuClick:()=>r(!e)}),/*#__PURE__*/(0,t/* .jsx */.Y)(Fh,{menuCollapsed:e})]})};/* export default */const Fy=F_;// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents/components/layout/App.tsx
function Fw(){var[e]=(0,n.useState)(()=>new es({defaultOptions:{queries:{retry:false,refetchOnWindowFocus:false,networkMode:"always"},mutations:{retry:false,networkMode:"always"}}}));return/*#__PURE__*/(0,t/* .jsx */.Y)(oS,{children:/*#__PURE__*/(0,t/* .jsx */.Y)(ed,{client:e,children:/*#__PURE__*/(0,t/* .jsx */.Y)(oT/* .SVGIconConfigProvider */.j,{children:/*#__PURE__*/(0,t/* .jsx */.Y)(i4,{position:"bottom-center",children:/*#__PURE__*/(0,t/* .jsxs */.FD)(ae,{children:[/*#__PURE__*/(0,t/* .jsx */.Y)(u/* .Global */.mL,{styles:[(0,oO/* .createGlobalCss */.v)()]}),/*#__PURE__*/(0,t/* .jsx */.Y)(Fy,{})]})})})})})}/* export default */const Fx=Fw;// CONCATENATED MODULE: ./addons/content-bank/assets/src/js/manage-contents.tsx
var FA=a.createRoot(document.getElementById("tutor-content-bank-root"));FA.render(/*#__PURE__*/(0,t/* .jsx */.Y)(i().StrictMode,{children:/*#__PURE__*/(0,t/* .jsx */.Y)(l,{children:/*#__PURE__*/(0,t/* .jsx */.Y)(Fx,{})})}))})()})();