@ihabdevteam/core 0.325.0 → 0.326.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/components.cjs.js +38 -38
- package/dist/hooks.cjs.js +1 -1
- package/dist/i18n.cjs.js +1 -1
- package/dist/ihabdevteam-core.cjs.js +41 -41
- package/dist/ihabdevteam-core.d.ts +1 -1
- package/dist/packages/core/src/components/Word/wordTablePrint.js +33 -1
- package/dist/packages/core/src/version.d.ts +1 -1
- package/dist/packages/core/src/version.js +1 -1
- package/dist/utils.cjs.js +1 -1
- package/package.json +1 -1
package/dist/components.cjs.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
"use strict";var n=require("react/jsx-runtime"),o=require("react"),$t=require("i18next"),xe=require("react-i18next"),en=require("react-dom"),wn=typeof document<"u"?document.currentScript:null;function Wc(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(a){if(a!=="default"){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}}),t.default=e,Object.freeze(t)}var
|
|
1
|
+
"use strict";var n=require("react/jsx-runtime"),o=require("react"),$t=require("i18next"),xe=require("react-i18next"),en=require("react-dom"),wn=typeof document<"u"?document.currentScript:null;function Wc(e){var t=Object.create(null);return e&&Object.keys(e).forEach(function(a){if(a!=="default"){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}}),t.default=e,Object.freeze(t)}var hs=Wc(o);function we(...e){return e.filter(Boolean).join(" ")}const Cs=new Set,ea=(()=>{try{const e=globalThis;return e.process!=null&&e.process.env?.NODE_ENV!=="production"}catch{return!1}})();function Zt(e,...t){!ea||Cs.has(e)||(Cs.add(e),console.warn(...t))}/**
|
|
2
2
|
* @license lucide-react v1.38.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
5
5
|
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const
|
|
6
|
+
*/const fs=(...e)=>e.filter((t,a,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===a).join(" ").trim();/**
|
|
7
7
|
* @license lucide-react v1.38.0 - ISC
|
|
8
8
|
*
|
|
9
9
|
* This source code is licensed under the ISC license.
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*
|
|
19
19
|
* This source code is licensed under the ISC license.
|
|
20
20
|
* See the LICENSE file in the root directory of this source tree.
|
|
21
|
-
*/const
|
|
21
|
+
*/const gs=e=>{const t=Uc(e);return t.charAt(0).toUpperCase()+t.slice(1)};/**
|
|
22
22
|
* @license lucide-react v1.38.0 - ISC
|
|
23
23
|
*
|
|
24
24
|
* This source code is licensed under the ISC license.
|
|
@@ -28,17 +28,17 @@
|
|
|
28
28
|
*
|
|
29
29
|
* This source code is licensed under the ISC license.
|
|
30
30
|
* See the LICENSE file in the root directory of this source tree.
|
|
31
|
-
*/const Gc=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Kc=o.createContext({}),Yc=()=>o.useContext(Kc),Zc=o.forwardRef(({color:e,size:t,strokeWidth:a,absoluteStrokeWidth:r,className:i="",children:s,iconNode:l,...u},c)=>{const{size:d=24,strokeWidth:m=2,absoluteStrokeWidth:p=!1,color:C="currentColor",className:
|
|
31
|
+
*/const Gc=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Kc=o.createContext({}),Yc=()=>o.useContext(Kc),Zc=o.forwardRef(({color:e,size:t,strokeWidth:a,absoluteStrokeWidth:r,className:i="",children:s,iconNode:l,...u},c)=>{const{size:d=24,strokeWidth:m=2,absoluteStrokeWidth:p=!1,color:C="currentColor",className:y=""}=Yc()??{},v=r??p?Number(a??m)*24/Number(t??d):a??m;return o.createElement("svg",{ref:c,...Nr,width:t??d??Nr.width,height:t??d??Nr.height,stroke:e??C,strokeWidth:v,className:fs("lucide",y,i),...!s&&!Gc(u)&&{"aria-hidden":"true"},...u},[...l.map(([g,h])=>o.createElement(g,h)),...Array.isArray(s)?s:[s]])});/**
|
|
32
32
|
* @license lucide-react v1.38.0 - ISC
|
|
33
33
|
*
|
|
34
34
|
* This source code is licensed under the ISC license.
|
|
35
35
|
* See the LICENSE file in the root directory of this source tree.
|
|
36
|
-
*/const te=(e,t)=>{const a=o.forwardRef(({className:r,...i},s)=>o.createElement(Zc,{ref:s,iconNode:t,className:
|
|
36
|
+
*/const te=(e,t)=>{const a=o.forwardRef(({className:r,...i},s)=>o.createElement(Zc,{ref:s,iconNode:t,className:fs(`lucide-${qc(gs(e))}`,`lucide-${e}`,r),...i}));return a.displayName=gs(e),a};/**
|
|
37
37
|
* @license lucide-react v1.38.0 - ISC
|
|
38
38
|
*
|
|
39
39
|
* This source code is licensed under the ISC license.
|
|
40
40
|
* See the LICENSE file in the root directory of this source tree.
|
|
41
|
-
*/const Xc=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],
|
|
41
|
+
*/const Xc=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],bs=te("triangle-alert",Xc);/**
|
|
42
42
|
* @license lucide-react v1.38.0 - ISC
|
|
43
43
|
*
|
|
44
44
|
* This source code is licensed under the ISC license.
|
|
@@ -143,17 +143,17 @@
|
|
|
143
143
|
*
|
|
144
144
|
* This source code is licensed under the ISC license.
|
|
145
145
|
* See the LICENSE file in the root directory of this source tree.
|
|
146
|
-
*/const Fd=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],
|
|
146
|
+
*/const Fd=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],ys=te("check",Fd);/**
|
|
147
147
|
* @license lucide-react v1.38.0 - ISC
|
|
148
148
|
*
|
|
149
149
|
* This source code is licensed under the ISC license.
|
|
150
150
|
* See the LICENSE file in the root directory of this source tree.
|
|
151
|
-
*/const Id=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],
|
|
151
|
+
*/const Id=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],vs=te("chevron-left",Id);/**
|
|
152
152
|
* @license lucide-react v1.38.0 - ISC
|
|
153
153
|
*
|
|
154
154
|
* This source code is licensed under the ISC license.
|
|
155
155
|
* See the LICENSE file in the root directory of this source tree.
|
|
156
|
-
*/const Od=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],
|
|
156
|
+
*/const Od=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],xs=te("chevron-right",Od);/**
|
|
157
157
|
* @license lucide-react v1.38.0 - ISC
|
|
158
158
|
*
|
|
159
159
|
* This source code is licensed under the ISC license.
|
|
@@ -183,7 +183,7 @@
|
|
|
183
183
|
*
|
|
184
184
|
* This source code is licensed under the ISC license.
|
|
185
185
|
* See the LICENSE file in the root directory of this source tree.
|
|
186
|
-
*/const Xd=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],
|
|
186
|
+
*/const Xd=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],_s=te("database",Xd);/**
|
|
187
187
|
* @license lucide-react v1.38.0 - ISC
|
|
188
188
|
*
|
|
189
189
|
* This source code is licensed under the ISC license.
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
*
|
|
194
194
|
* This source code is licensed under the ISC license.
|
|
195
195
|
* See the LICENSE file in the root directory of this source tree.
|
|
196
|
-
*/const ep=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],
|
|
196
|
+
*/const ep=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],ws=te("download",ep);/**
|
|
197
197
|
* @license lucide-react v1.38.0 - ISC
|
|
198
198
|
*
|
|
199
199
|
* This source code is licensed under the ISC license.
|
|
@@ -218,7 +218,7 @@
|
|
|
218
218
|
*
|
|
219
219
|
* This source code is licensed under the ISC license.
|
|
220
220
|
* See the LICENSE file in the root directory of this source tree.
|
|
221
|
-
*/const up=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],
|
|
221
|
+
*/const up=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]],As=te("ellipsis",up);/**
|
|
222
222
|
* @license lucide-react v1.38.0 - ISC
|
|
223
223
|
*
|
|
224
224
|
* This source code is licensed under the ISC license.
|
|
@@ -268,7 +268,7 @@
|
|
|
268
268
|
*
|
|
269
269
|
* This source code is licensed under the ISC license.
|
|
270
270
|
* See the LICENSE file in the root directory of this source tree.
|
|
271
|
-
*/const Ep=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]],
|
|
271
|
+
*/const Ep=[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M6 21V9a9 9 0 0 0 9 9",key:"7kw0sc"}]],Bs=te("git-merge",Ep);/**
|
|
272
272
|
* @license lucide-react v1.38.0 - ISC
|
|
273
273
|
*
|
|
274
274
|
* This source code is licensed under the ISC license.
|
|
@@ -503,12 +503,12 @@
|
|
|
503
503
|
*
|
|
504
504
|
* This source code is licensed under the ISC license.
|
|
505
505
|
* See the LICENSE file in the root directory of this source tree.
|
|
506
|
-
*/const mm=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],
|
|
506
|
+
*/const mm=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],ks=te("circle-alert",mm);/**
|
|
507
507
|
* @license lucide-react v1.38.0 - ISC
|
|
508
508
|
*
|
|
509
509
|
* This source code is licensed under the ISC license.
|
|
510
510
|
* See the LICENSE file in the root directory of this source tree.
|
|
511
|
-
*/const hm=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],
|
|
511
|
+
*/const hm=[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],Ns=te("circle-check-big",hm);/**
|
|
512
512
|
* @license lucide-react v1.38.0 - ISC
|
|
513
513
|
*
|
|
514
514
|
* This source code is licensed under the ISC license.
|
|
@@ -678,7 +678,7 @@
|
|
|
678
678
|
*
|
|
679
679
|
* This source code is licensed under the ISC license.
|
|
680
680
|
* See the LICENSE file in the root directory of this source tree.
|
|
681
|
-
*/const kh=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],
|
|
681
|
+
*/const kh=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],Es=te("volume-2",kh);/**
|
|
682
682
|
* @license lucide-react v1.38.0 - ISC
|
|
683
683
|
*
|
|
684
684
|
* This source code is licensed under the ISC license.
|
|
@@ -688,7 +688,7 @@
|
|
|
688
688
|
*
|
|
689
689
|
* This source code is licensed under the ISC license.
|
|
690
690
|
* See the LICENSE file in the root directory of this source tree.
|
|
691
|
-
*/const Dh=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],
|
|
691
|
+
*/const Dh=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],Ds=te("x",Dh);/**
|
|
692
692
|
* @license lucide-react v1.38.0 - ISC
|
|
693
693
|
*
|
|
694
694
|
* This source code is licensed under the ISC license.
|
|
@@ -718,7 +718,7 @@
|
|
|
718
718
|
*
|
|
719
719
|
* This source code is licensed under the ISC license.
|
|
720
720
|
* See the LICENSE file in the root directory of this source tree.
|
|
721
|
-
*/const Oh=[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}]],
|
|
721
|
+
*/const Oh=[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}]],Ss=te("calendar",Oh);/**
|
|
722
722
|
* @license lucide-react v1.38.0 - ISC
|
|
723
723
|
*
|
|
724
724
|
* This source code is licensed under the ISC license.
|
|
@@ -793,12 +793,12 @@
|
|
|
793
793
|
*
|
|
794
794
|
* This source code is licensed under the ISC license.
|
|
795
795
|
* See the LICENSE file in the root directory of this source tree.
|
|
796
|
-
*/const C0=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],
|
|
796
|
+
*/const C0=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],js=te("chevron-down",C0);/**
|
|
797
797
|
* @license lucide-react v1.38.0 - ISC
|
|
798
798
|
*
|
|
799
799
|
* This source code is licensed under the ISC license.
|
|
800
800
|
* See the LICENSE file in the root directory of this source tree.
|
|
801
|
-
*/const f0=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],
|
|
801
|
+
*/const f0=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Ts=te("chevron-up",f0);/**
|
|
802
802
|
* @license lucide-react v1.38.0 - ISC
|
|
803
803
|
*
|
|
804
804
|
* This source code is licensed under the ISC license.
|
|
@@ -823,9 +823,9 @@
|
|
|
823
823
|
*
|
|
824
824
|
* This source code is licensed under the ISC license.
|
|
825
825
|
* See the LICENSE file in the root directory of this source tree.
|
|
826
|
-
*/const B0=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}],["path",{d:"M7 10v12",key:"1qc93n"}]],k0=te("thumbs-up",B0),
|
|
827
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $0(e,t){return T0(e)||M0(e,t)||R0(e,t)||L0()}function R0(e,t){if(e){if(typeof e=="string")return $s(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?$s(e,t):void 0}}const Rs=Object.entries,Ps=Object.setPrototypeOf,P0=Object.isFrozen,F0=Object.getPrototypeOf,I0=Object.getOwnPropertyDescriptor;let St=Object.freeze,Tt=Object.seal,ta=Object.create,Fs=typeof Reflect<"u"&&Reflect,Dr=Fs.apply,Sr=Fs.construct;St||(St=function(t){return t}),Tt||(Tt=function(t){return t}),Dr||(Dr=function(t,a){for(var r=arguments.length,i=new Array(r>2?r-2:0),s=2;s<r;s++)i[s-2]=arguments[s];return t.apply(a,i)}),Sr||(Sr=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return new t(...r)});const Vn=Et(Array.prototype.forEach),O0=Et(Array.prototype.lastIndexOf),Is=Et(Array.prototype.pop),ga=Et(Array.prototype.push),H0=Et(Array.prototype.splice),na=Array.isArray,ba=Et(String.prototype.toLowerCase),jr=Et(String.prototype.toString),Os=Et(String.prototype.match),ya=Et(String.prototype.replace),Hs=Et(String.prototype.indexOf),z0=Et(String.prototype.trim),V0=Et(Number.prototype.toString),W0=Et(Boolean.prototype.toString),zs=typeof BigInt>"u"?null:Et(BigInt.prototype.toString),Vs=typeof Symbol>"u"?null:Et(Symbol.prototype.toString),Xt=Et(Object.prototype.hasOwnProperty),va=Et(Object.prototype.toString),Ot=Et(RegExp.prototype.test),Wn=q0(TypeError);function Et(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return Dr(e,t,r)}}function q0(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return Sr(e,a)}}function pt(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ba;if(Ps&&Ps(e,null),!na(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i=="string"){const s=a(i);s!==i&&(P0(t)||(t[r]=s),i=s)}e[i]=!0}return e}function U0(e){for(let t=0;t<e.length;t++)Xt(e,t)||(e[t]=null);return e}function tn(e){const t=ta(null);for(const r of Rs(e)){var a=$0(r,2);const i=a[0],s=a[1];Xt(e,i)&&(na(s)?t[i]=U0(s):s&&typeof s=="object"&&s.constructor===Object?t[i]=tn(s):t[i]=s)}return t}function G0(e){switch(typeof e){case"string":return e;case"number":return V0(e);case"boolean":return W0(e);case"bigint":return zs?zs(e):"0";case"symbol":return Vs?Vs(e):"Symbol()";case"undefined":return va(e);case"function":case"object":{if(e===null)return va(e);const t=e,a=un(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:va(r)}return va(e)}default:return va(e)}}function un(e,t){for(;e!==null;){const r=I0(e,t);if(r){if(r.get)return Et(r.get);if(typeof r.value=="function")return Et(r.value)}e=F0(e)}function a(){return null}return a}function K0(e){try{return Ot(e,""),!0}catch{return!1}}const Ws=St(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Tr=St(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Mr=St(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Y0=St(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Lr=St(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Z0=St(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),qs=St(["#text"]),Us=St(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),$r=St(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Gs=St(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Wa=St(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),X0=Tt(/{{[\w\W]*|^[\w\W]*}}/g),J0=Tt(/<%[\w\W]*|^[\w\W]*%>/g),Q0=Tt(/\${[\w\W]*/g),eC=Tt(/^data-[\-\w.\u00B7-\uFFFF]+$/),tC=Tt(/^aria-[\-\w]+$/),Ks=Tt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),nC=Tt(/^(?:\w+script|data):/i),aC=Tt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),rC=Tt(/^html$/i),oC=Tt(/^[a-z][.\w]*(-[.\w]+)+$/i),Ys=Tt(/<[/\w!]/g),Zs=Tt(/<[/\w]/g),sC=Tt(/<\/no(script|embed|frames)/i),iC=Tt(/\/>/i),nn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Xs=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],lC=St(pt({},Xs)),uC=(function(){const e={};return Vn(Xs,t=>{e[t]=Tt(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),St(e)})(),cC=function(){return typeof window>"u"?null:window},dC=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const i="data-tt-policy-suffix";a&&a.hasAttribute(i)&&(r=a.getAttribute(i));const s="dompurify"+(r?"#"+r:"");try{return t.createPolicy(s,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Js=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Ln=function(t,a,r,i){return Xt(t,a)&&na(t[a])?pt(i.base?tn(i.base):{},t[a],i.transform):r},Rr=function(t,a,r){const i=Xt(t,a)?t[a]:void 0;return i&&typeof i=="object"?tn(i):r()};function Qs(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:cC();const t=he=>Qs(he);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==nn.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,i=r.currentScript;e.DocumentFragment;const s=e.HTMLTemplateElement,l=e.Node,u=e.Element,c=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const m=e.DOMParser,p=e.trustedTypes,C=u.prototype,_=un(C,"cloneNode"),y=un(C,"remove"),g=un(C,"nextSibling"),h=un(C,"childNodes"),v=un(C,"parentNode"),f=un(C,"shadowRoot"),w=un(C,"attributes"),b=l&&l.prototype?un(l.prototype,"nodeType"):null,B=l&&l.prototype?un(l.prototype,"nodeName"):null,x=l&&l.prototype?un(l.prototype,"ownerDocument"):null,A=function(j){return b?b(j):j.nodeType},k=function(j){return B?B(j):j.nodeName};if(typeof s=="function"){const he=a.createElement("template");he.content&&he.content.ownerDocument&&(a=he.content.ownerDocument)}let N,S="",E,O=!1,F=0;const Y=function(){if(F>0)throw Wn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},M=function(j){Y(),F++;try{return N.createHTML(j)}finally{F--}},L=function(j){Y(),F++;try{return N.createScriptURL(j)}finally{F--}},P=function(){return O||(E=dC(p,i),O=!0),E},G=a,U=G.implementation,z=G.createNodeIterator,q=G.createDocumentFragment,$=G.getElementsByTagName,V=r.importNode;let H=Js();t.isSupported=typeof Rs=="function"&&typeof v=="function"&&U&&U.createHTMLDocument!==void 0;const T=X0,D=J0,R=Q0,I=eC,W=tC,ee=nC,oe=aC,ce=oC;let J=Ks,re=null;const Ne=pt({},[...Ws,...Tr,...Mr,...Lr,...qs]);let K=null;const Q=pt({},[...Us,...$r,...Gs,...Wa]);let pe=Object.seal(ta(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),De=null,ye=null;const ne=Object.seal(ta(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let le=!0,Ce=!0,ge=!1,fe=!0,$e=!1,Ve=!0,je=!1,Fe=!1,qe=null,mt=null,ct=!1,rt=!1,Ct=!1,Be=!1,We=!0,_e=!1;const Ue="user-content-";let Ae=!0,Te=!1,Se={},Xe=null;const Qe=pt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let dt=null;const ht=pt({},["audio","video","img","source","image","track"]);let wt=null;const ft=pt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Nt="http://www.w3.org/1998/Math/MathML",gt="http://www.w3.org/2000/svg",it="http://www.w3.org/1999/xhtml";let Ke=it,se=!1,ke=null;const ze=pt({},[Nt,gt,it],jr),nt=St(["mi","mo","mn","ms","mtext"]);let Ie=pt({},nt);const Ge=St(["annotation-xml"]);let bt=pt({},Ge);const Re=pt({},["title","style","font","a","script"]);let tt=null;const xt=["application/xhtml+xml","text/html"],Mt="text/html";let et=null,ot=null;const lt=a.createElement("form"),st=function(j){return j instanceof RegExp||j instanceof Function},jt=function(){let j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(ot&&ot===j)return;(!j||typeof j!="object")&&(j={}),j=tn(j),tt=xt.indexOf(j.PARSER_MEDIA_TYPE)===-1?Mt:j.PARSER_MEDIA_TYPE,et=tt==="application/xhtml+xml"?jr:ba,re=Ln(j,"ALLOWED_TAGS",Ne,{transform:et}),K=Ln(j,"ALLOWED_ATTR",Q,{transform:et}),ke=Ln(j,"ALLOWED_NAMESPACES",ze,{transform:jr}),wt=Ln(j,"ADD_URI_SAFE_ATTR",ft,{transform:et,base:ft}),dt=Ln(j,"ADD_DATA_URI_TAGS",ht,{transform:et,base:ht}),Xe=Ln(j,"FORBID_CONTENTS",Qe,{transform:et}),De=Ln(j,"FORBID_TAGS",tn({}),{transform:et}),ye=Ln(j,"FORBID_ATTR",tn({}),{transform:et}),Se=Xt(j,"USE_PROFILES")?j.USE_PROFILES&&typeof j.USE_PROFILES=="object"?tn(j.USE_PROFILES):j.USE_PROFILES:!1,le=j.ALLOW_ARIA_ATTR!==!1,Ce=j.ALLOW_DATA_ATTR!==!1,ge=j.ALLOW_UNKNOWN_PROTOCOLS||!1,fe=j.ALLOW_SELF_CLOSE_IN_ATTR!==!1,$e=j.SAFE_FOR_TEMPLATES||!1,Ve=j.SAFE_FOR_XML!==!1,je=j.WHOLE_DOCUMENT||!1,rt=j.RETURN_DOM||!1,Ct=j.RETURN_DOM_FRAGMENT||!1,Be=j.RETURN_TRUSTED_TYPE||!1,ct=j.FORCE_BODY||!1,We=j.SANITIZE_DOM!==!1,_e=j.SANITIZE_NAMED_PROPS||!1,Ae=j.KEEP_CONTENT!==!1,Te=j.IN_PLACE||!1,J=K0(j.ALLOWED_URI_REGEXP)?j.ALLOWED_URI_REGEXP:Ks,Ke=typeof j.NAMESPACE=="string"?j.NAMESPACE:it,Ie=Rr(j,"MATHML_TEXT_INTEGRATION_POINTS",()=>pt({},nt)),bt=Rr(j,"HTML_INTEGRATION_POINTS",()=>pt({},Ge));const Z=Rr(j,"CUSTOM_ELEMENT_HANDLING",()=>ta(null));if(pe=ta(null),Xt(Z,"tagNameCheck")&&st(Z.tagNameCheck)&&(pe.tagNameCheck=Z.tagNameCheck),Xt(Z,"attributeNameCheck")&&st(Z.attributeNameCheck)&&(pe.attributeNameCheck=Z.attributeNameCheck),Xt(Z,"allowCustomizedBuiltInElements")&&typeof Z.allowCustomizedBuiltInElements=="boolean"&&(pe.allowCustomizedBuiltInElements=Z.allowCustomizedBuiltInElements),Tt(pe),$e&&(Ce=!1),Ct&&(rt=!0),Se&&(re=pt({},qs),K=ta(null),Se.html===!0&&(pt(re,Ws),pt(K,Us)),Se.svg===!0&&(pt(re,Tr),pt(K,$r),pt(K,Wa)),Se.svgFilters===!0&&(pt(re,Mr),pt(K,$r),pt(K,Wa)),Se.mathMl===!0&&(pt(re,Lr),pt(K,Gs),pt(K,Wa))),ne.tagCheck=null,ne.attributeCheck=null,Xt(j,"ADD_TAGS")&&(typeof j.ADD_TAGS=="function"?ne.tagCheck=j.ADD_TAGS:na(j.ADD_TAGS)&&(re===Ne&&(re=tn(re)),pt(re,j.ADD_TAGS,et))),Xt(j,"ADD_ATTR")&&(typeof j.ADD_ATTR=="function"?ne.attributeCheck=j.ADD_ATTR:na(j.ADD_ATTR)&&(K===Q&&(K=tn(K)),pt(K,j.ADD_ATTR,et))),Xt(j,"ADD_FORBID_CONTENTS")&&na(j.ADD_FORBID_CONTENTS)&&(Xe===Qe&&(Xe=tn(Xe)),pt(Xe,j.ADD_FORBID_CONTENTS,et)),Ae&&(re["#text"]=!0),je&&pt(re,["html","head","body"]),re.table&&(pt(re,["tbody"]),delete De.tbody),j.TRUSTED_TYPES_POLICY){if(typeof j.TRUSTED_TYPES_POLICY.createHTML!="function")throw Wn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof j.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Wn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const ue=N;N=j.TRUSTED_TYPES_POLICY;try{S=M("")}catch(Ee){throw N=ue,Ee}}else j.TRUSTED_TYPES_POLICY===null?(N=void 0,S=""):(N===void 0&&(N=P()),N&&typeof S=="string"&&(S=M("")));St&&St(j),ot=j},Ht=pt({},[...Tr,...Mr,...Y0]),mn=pt({},[...Lr,...Z0]),hn=function(j,Z,ue){return Z.namespaceURI===it?j==="svg":Z.namespaceURI===Nt?j==="svg"&&(ue==="annotation-xml"||Ie[ue]):!!Ht[j]},Tn=function(j,Z,ue){return Z.namespaceURI===it?j==="math":Z.namespaceURI===gt?j==="math"&&bt[ue]:!!mn[j]},On=function(j,Z,ue){return Z.namespaceURI===gt&&!bt[ue]||Z.namespaceURI===Nt&&!Ie[ue]?!1:!mn[j]&&(Re[j]||!Ht[j])},Hn=function(j){let Z=v(j);(!Z||!Z.tagName)&&(Z={namespaceURI:Ke,tagName:"template"});const ue=ba(j.tagName),Ee=ba(Z.tagName);return ke[j.namespaceURI]?j.namespaceURI===gt?hn(ue,Z,Ee):j.namespaceURI===Nt?Tn(ue,Z,Ee):j.namespaceURI===it?On(ue,Z,Ee):!!(tt==="application/xhtml+xml"&&ke[j.namespaceURI]):!1},Pt=function(j){ga(t.removed,{element:j});try{v(j).removeChild(j)}catch{if(y(j),!v(j))throw Wn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},vn=function(j,Z,ue){try{j.removeAttributeNode(Z)}catch{try{j.removeAttribute(ue)}catch{}}},Ft=function(j){on(j);const Z=h(j);if(Z){const Ee=[];Vn(Z,Pe=>{ga(Ee,Pe)}),Vn(Ee,Pe=>{try{y(Pe)}catch{}})}const ue=w(j);if(ue)for(let Ee=ue.length-1;Ee>=0;--Ee){const Pe=ue[Ee],Ze=Pe&&Pe.name;typeof Ze=="string"&&vn(j,Pe,Ze)}},zt=function(j,Z,ue){if(!ue)try{ue=Z.getAttributeNode(j)}catch{ue=null}ga(t.removed,{attribute:ue||null,from:Z});try{ue?Z.removeAttributeNode(ue):Z.removeAttribute(j)}catch{try{Z.removeAttribute(j)}catch{}}if(j==="is")if(rt||Ct)try{Pt(Z)}catch{}else try{Z.setAttribute(j,"")}catch{}},Mn=function(j){const Z=w(j);if(Z)for(let ue=Z.length-1;ue>=0;--ue){const Ee=Z[ue],Pe=Ee&&Ee.name;typeof Pe!="string"||K[et(Pe)]||vn(j,Ee,Pe)}},on=function(j){const Z=[j];for(;Z.length>0;){const ue=Z.pop();A(ue)===nn.element&&Mn(ue);const Pe=h(ue);if(Pe)for(let Ze=Pe.length-1;Ze>=0;--Ze)Z.push(Pe[Ze])}},xn=function(j,Z){return Ve?j==="patchsrc"?!0:j==="for"&&Z!=="label"&&Z!=="output":!1},zn=function(j){if(!Ve)return;const Z=[j];for(;Z.length>0;){const ue=Z.pop(),Ee=A(ue);if(Ee===nn.processingInstruction||Ee===nn.comment&&Ot(Zs,ue.data)){try{y(ue)}catch{}continue}if(Ee===nn.element){const Ze=ue,vt=et(k(ue));try{Ze.hasAttribute&&Ze.hasAttribute("patchsrc")&&Ze.removeAttribute("patchsrc"),Ze.hasAttribute&&Ze.hasAttribute("for")&&xn("for",vt)&&Ze.removeAttribute("for")}catch{}}const Pe=h(ue);if(Pe)for(let Ze=Pe.length-1;Ze>=0;--Ze)Z.push(Pe[Ze])}},_n=function(j){let Z=null,ue=null;if(ct)j="<remove></remove>"+j;else{const Ze=Os(j,/^[\r\n\t ]+/);ue=Ze&&Ze[0]}tt==="application/xhtml+xml"&&Ke===it&&(j='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+j+"</body></html>");const Ee=N?M(j):j;if(Ke===it)try{Z=new m().parseFromString(Ee,tt)}catch{}if(!Z||!Z.documentElement){Z=U.createDocument(Ke,"template",null);try{Z.documentElement.innerHTML=se?S:Ee}catch{}}const Pe=Z.body||Z.documentElement;return j&&ue&&Pe.insertBefore(a.createTextNode(ue),Pe.childNodes[0]||null),Ke===it?$.call(Z,je?"html":"body")[0]:je?Z.documentElement:Pe},Vt=function(j){const Z=x?x(j):j.ownerDocument;return z.call(Z||j,j,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Lt=function(j){return j=ya(j,T," "),j=ya(j,D," "),j=ya(j,R," "),j},Wt=function(j){var Z;j.normalize();const ue=x?x(j):j.ownerDocument,Ee=z.call(ue||j,j,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null);let Pe=Ee.nextNode();for(;Pe;)Pe.data=Lt(Pe.data),Pe=Ee.nextNode();const Ze=(Z=j.querySelectorAll)===null||Z===void 0?void 0:Z.call(j,"template");Ze&&Vn(Ze,vt=>{It(vt.content)&&Wt(vt.content)})},Cn=function(j){const Z=B?B(j):null;return typeof Z!="string"||et(Z)!=="form"?!1:typeof j.nodeName!="string"||typeof j.textContent!="string"||typeof j.removeChild!="function"||j.attributes!==w(j)||typeof j.removeAttribute!="function"||typeof j.setAttribute!="function"||typeof j.namespaceURI!="string"||typeof j.insertBefore!="function"||typeof j.hasChildNodes!="function"||j.nodeType!==b(j)||j.childNodes!==h(j)},It=function(j){if(!b||typeof j!="object"||j===null)return!1;try{return b(j)===nn.documentFragment}catch{return!1}},sn=function(j){if(!b||typeof j!="object"||j===null)return!1;try{return typeof b(j)=="number"}catch{return!1}};function Dt(he,j,Z){he.length!==0&&Vn(he,ue=>{ue.call(t,j,Z,ot)})}const ie=function(j,Z){return!!(Ve&&j.hasChildNodes()&&!sn(j.firstElementChild)&&Ot(Ys,j.textContent)&&Ot(Ys,j.innerHTML)||Ve&&j.namespaceURI===it&&lC[Z]&&(sn(j.firstElementChild)||typeof j.textContent=="string"&&Ot(uC[Z],j.textContent))||j.nodeType===nn.processingInstruction||Ve&&j.nodeType===nn.comment&&Ot(Zs,j.data))},ve=function(j,Z){if(j instanceof RegExp)return Ot(j,Z);if(j instanceof Function){for(var ue=arguments.length,Ee=new Array(ue>2?ue-2:0),Pe=2;Pe<ue;Pe++)Ee[Pe-2]=arguments[Pe];return!!j(Z,...Ee)}return!1},Me=function(j,Z,ue){if(!De[Z]&&ae(Z)&&ve(pe.tagNameCheck,Z))return!1;if(Ae&&!Xe[Z]){const Ee=v(j),Pe=h(j);if(Pe&&Ee){const Ze=Pe.length;for(let vt=Ze-1;vt>=0;--vt){const At=j===ue?_(Pe[vt],!0):Pe[vt];Ee.insertBefore(At,g(j))}}}return Pt(j),!0},Je=function(j,Z,ue,Ee){return j.length===0?Z:Z===ue||Z===Ee?tn(Z):Z},Oe=function(j,Z){return j===Z||v(j)!==null?!1:(Te&&on(j),!0)},Ye=function(j,Z){if(Dt(H.beforeSanitizeElements,j,null),Oe(j,Z))return!0;if(Cn(j))return Pt(j),!0;const ue=et(k(j));if(re=Je(H.uponSanitizeElement,re,Ne,qe),Dt(H.uponSanitizeElement,j,{tagName:ue,allowedTags:re}),Oe(j,Z))return!0;if(ie(j,ue))return Pt(j),!0;if(De[ue]||!(ne.tagCheck instanceof Function&&ne.tagCheck(ue))&&!re[ue]){const Pe=Me(j,ue,Z);return Pe===!1&&Dt(H.afterSanitizeElements,j,null),Pe}if(A(j)===nn.element&&!Hn(j)||(ue==="noscript"||ue==="noembed"||ue==="noframes")&&Ot(sC,j.innerHTML))return Pt(j),!0;if($e&&j.nodeType===nn.text){const Pe=Lt(j.textContent);j.textContent!==Pe&&(ga(t.removed,{element:j.cloneNode()}),j.textContent=Pe)}return Dt(H.afterSanitizeElements,j,null),!1},X=function(j,Z,ue){if(ye[Z]||xn(Z,j)||We&&(Z==="id"||Z==="name")&&(ue in a||ue in lt))return!1;const Ee=K[Z]||ne.attributeCheck instanceof Function&&ne.attributeCheck(Z,j);return Ce&&Ot(I,Z)||le&&Ot(W,Z)?!0:Ee?wt[Z]||Ot(J,ya(ue,oe,""))||(Z==="src"||Z==="xlink:href"||Z==="href")&&j!=="script"&&Hs(ue,"data:")===0&&dt[j]||ge&&!Ot(ee,ya(ue,oe,""))?!0:!ue:ae(j)&&ve(pe.tagNameCheck,j)&&ve(pe.attributeNameCheck,Z,j)||Z==="is"&&pe.allowCustomizedBuiltInElements&&ve(pe.tagNameCheck,ue)},de=pt({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),ae=function(j){return!de[ba(j)]&&Ot(ce,j)},be=function(j,Z,ue,Ee){if(N&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!ue)switch(p.getAttributeType(j,Z)){case"TrustedHTML":return M(Ee);case"TrustedScriptURL":return L(Ee)}return Ee},Le=function(j,Z,ue,Ee){try{ue?j.setAttributeNS(ue,Z,Ee):j.setAttribute(Z,Ee),Cn(j)?Pt(j):Is(t.removed)}catch{zt(Z,j)}},He=function(j){Dt(H.beforeSanitizeAttributes,j,null);const Z=j.attributes;if(!Z||Cn(j))return;K=Je(H.uponSanitizeAttribute,K,Q,mt);const ue={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K,forceKeepAttr:void 0};let Ee=Z.length;const Pe=et(j.nodeName);for(;Ee--;){const Ze=Z[Ee],vt=Ze.name,At=Ze.namespaceURI,Kt=Ze.value,Yt=et(vt),kr=Kt;let qt=vt==="value"?kr:z0(kr);if(ue.attrName=Yt,ue.attrValue=qt,ue.keepAttr=!0,ue.forceKeepAttr=void 0,Dt(H.uponSanitizeAttribute,j,ue),qt=ue.attrValue,_e&&(Yt==="id"||Yt==="name")&&Hs(qt,Ue)!==0&&(zt(vt,j,Ze),qt=Ue+qt),Ve&&Ot(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,qt)){zt(vt,j,Ze);continue}if(Yt==="attributename"&&Os(qt,"href")){zt(vt,j,Ze);continue}if(!ue.forceKeepAttr){if(!ue.keepAttr){zt(vt,j,Ze);continue}if(!fe&&Ot(iC,qt)){zt(vt,j,Ze);continue}if($e&&(qt=Lt(qt)),!X(Pe,Yt,qt)){zt(vt,j,Ze);continue}qt=be(Pe,Yt,At,qt),qt!==kr&&Le(j,vt,At,qt)}}Dt(H.afterSanitizeAttributes,j,null)},ut=function(j){let Z=null;const ue=Vt(j);for(Dt(H.beforeSanitizeShadowDOM,j,null);Z=ue.nextNode();)if(Dt(H.uponSanitizeShadowNode,Z,null),Ye(Z,j),He(Z),It(Z.content)&&ut(Z.content),A(Z)===nn.element){const Ee=f(Z);It(Ee)&&(yt(Ee),ut(Ee))}Dt(H.afterSanitizeShadowDOM,j,null)},yt=function(j){const Z=[{node:j,shadow:null}];for(;Z.length>0;){const ue=Z.pop();if(ue.shadow){ut(ue.shadow);continue}const Ee=ue.node,Ze=A(Ee)===nn.element,vt=h(Ee);if(vt)for(let At=vt.length-1;At>=0;--At)Z.push({node:vt[At],shadow:null});if(Ze){const At=B?B(Ee):null;if(typeof At=="string"&&et(At)==="template"){const Kt=Ee.content;It(Kt)&&Z.push({node:Kt,shadow:null})}}if(Ze){const At=f(Ee);It(At)&&Z.push({node:null,shadow:At},{node:At,shadow:null})}}};return t.sanitize=function(he){let j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Z=null,ue=null,Ee=null,Pe=null;if(se=!he,se&&(he="<!-->"),typeof he!="string"&&!sn(he)&&(he=G0(he),typeof he!="string"))throw Wn("dirty is not a string, aborting");if(!t.isSupported)return he;Fe?(re=qe,K=mt):jt(j),(H.uponSanitizeElement.length>0||H.uponSanitizeAttribute.length>0)&&(re=tn(re)),H.uponSanitizeAttribute.length>0&&(K=tn(K)),t.removed=[];const Ze=Te&&typeof he!="string"&&sn(he);if(Ze){zn(he);const Kt=k(he);if(typeof Kt=="string"){const Yt=et(Kt);if(!re[Yt]||De[Yt])throw Ft(he),Wn("root node is forbidden and cannot be sanitized in-place")}if(Cn(he))throw Ft(he),Wn("root node is clobbered and cannot be sanitized in-place");try{yt(he)}catch(Yt){throw Ft(he),Yt}}else if(sn(he))Z=_n("<!---->"),ue=Z.ownerDocument.importNode(he,!0),ue.nodeType===nn.element&&ue.nodeName==="BODY"||ue.nodeName==="HTML"?Z=ue:Z.appendChild(ue),yt(ue);else{if(!rt&&!$e&&!je&&he.indexOf("<")===-1)return N&&Be?M(he):he;if(Z=_n(he),!Z)return rt?null:Be?S:""}Z&&ct&&Pt(Z.firstChild);const vt=Ze?he:Z;try{const Kt=Vt(vt);for(;Ee=Kt.nextNode();)Ye(Ee,vt),He(Ee),It(Ee.content)&&ut(Ee.content)}catch(Kt){throw Ze&&(Ft(he),Vn(t.removed,Yt=>{Yt.element&&on(Yt.element)})),Kt}if(Ze)return Vn(t.removed,Kt=>{Kt.element&&on(Kt.element)}),$e&&Wt(he),he;if(rt){if($e&&Wt(Z),Ct)for(Pe=q.call(Z.ownerDocument);Z.firstChild;)Pe.appendChild(Z.firstChild);else Pe=Z;return(K.shadowroot||K.shadowrootmode)&&(Pe=V.call(r,Pe,!0)),Pe}let At=je?Z.outerHTML:Z.innerHTML;return je&&re["!doctype"]&&Z.ownerDocument&&Z.ownerDocument.doctype&&Z.ownerDocument.doctype.name&&Ot(rC,Z.ownerDocument.doctype.name)&&(At="<!DOCTYPE "+Z.ownerDocument.doctype.name+`>
|
|
828
|
-
`+At),$e&&(At=Lt(At)),N&&Be?M(At):At},t.setConfig=function(){let he=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};jt(he),Fe=!0,qe=re,mt=K},t.clearConfig=function(){ot=null,Fe=!1,qe=null,mt=null,N=E,S=""},t.isValidAttribute=function(he,j,Z){ot||jt({});const ue=et(he),Ee=et(j);return X(ue,Ee,Z)},t.addHook=function(he,j){typeof j=="function"&&Xt(H,he)&&ga(H[he],j)},t.removeHook=function(he,j){if(Xt(H,he)){if(j!==void 0){const Z=O0(H[he],j);return Z===-1?void 0:H0(H[he],Z,1)[0]}return
|
|
826
|
+
*/const B0=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z",key:"emmmcr"}],["path",{d:"M7 10v12",key:"1qc93n"}]],k0=te("thumbs-up",B0),Ms={"alert-triangle":bs,"align-start-vertical":Qc,anchor:Mh,armchair:$h,"arrow-down":td,"arrow-left":ad,"arrow-right":od,"arrow-right-left":id,"arrow-up-a-z":Ph,"audio-lines":ud,baby:dd,ban:md,"bar-chart-2":Ih,bell:Cd,"book-marked":gd,"book-open":yd,"bow-arrow":xd,braces:wd,bug:Bd,calendar:Ss,"calendar-check":Nd,"calendar-days":Dd,camera:jd,car:zh,"chart-column":Md,"chart-line":$d,"chart-pie":Pd,check:ys,"chevron-down":js,"chevron-left":vs,"chevron-right":xs,"chevron-up":Ts,circle:b0,"clipboard-list":zd,coffee:Wh,combine:Wd,copy:Ud,"chevrons-left-right-ellipsis":Kd,"credit-card":Zd,database:_s,diff:Qd,download:ws,ear:np,edit:rp,"edit-2":sp,"edit-3":lp,ellipsis:As,eraser:dp,"external-link":mp,eye:Cp,"file-text":gp,"flip-horizontal":yp,"folder-open":xp,"folder-plus":wp,gamepad:Bp,"gamepad-2":Uh,clock:Kh,target:Zh,percent:Jh,gavel:Np,"git-merge":Bs,globe:Sp,"grip-vertical":Tp,headphones:Lp,heart:Rp,home:Fp,inbox:e0,info:Op,"key-round":zp,landmark:Wp,layers:Up,"layout-dashboard":Kp,leaf:Zp,lightbulb:Jp,link:e1,"link-2":n1,"link-2-off":r1,list:s1,"list-checks":l1,"list-ordered":c1,"list-tree":n0,loader:p1,lock:h1,"log-out":f1,mail:b1,"map-pin":v1,menu:_0,"message-circle":_1,"message-circle-question-mark":A1,"message-square":k1,"message-square-more":r0,"message-square-text":E1,minus:s0,"minus-circle":S1,moon:A0,"more-horizontal":As,package:T1,palette:L1,"party-popper":R1,pause:F1,pencil:O1,phone:z1,play:W1,"play-circle":U1,plus:K1,printer:Z1,"refresh-cw":J1,repeat:em,replace:nm,rocket:rm,"rotate-ccw":sm,"rotate-cw":lm,salad:cm,"scan-search":pm,search:fm,"circle-alert":ks,"alert-circle":ks,"check-circle":Ns,scissors:bm,"search-x":vm,send:_m,settings:Am,"share-2":l0,"shield-check":km,"shopping-cart":Em,shuffle:Sm,"skip-back":Tm,"skip-forward":Lm,sparkles:c0,square:Rm,star:Fm,store:Om,"sun-medium":zm,table:Wm,"table-2":Um,tag:Km,terminal:Zm,"text-cursor-input":Jm,"text-initial":eh,"thumbs-up":k0,ticket:nh,trash:sh,triangle:v0,"trash-2":rh,"trending-up":lh,"triangle-alert":bs,trophy:ch,type:p0,unlink:ph,upload:hh,user:Er,"user-plus":gh,"user-round":yh,"user-round-check":xh,users:wh,"users-round":Bh,volume:h0,"volume-2":Es,wrench:Eh,x:Ds,zap:jh};function N0(e){return Ms[e]??null}const Ls=new Set;function E0(e){return ea&&!(e in Ms)&&!Ls.has(e)&&(Ls.add(e),console.warn(`[ihabdevteam-core] lucide \uC544\uC774\uCF58 '${e}' \uC774 \uC815\uC801 \uBAA9\uB85D\uC5D0 \uC5C6\uC5B4 \uB80C\uB354\uB418\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. utils/lucideIconSet.ts \uC758 STATIC_LUCIDE_ICONS \uC5D0 \uCD94\uAC00\uD558\uC138\uC694.`)),Promise.resolve(null)}const D0=e=>e.replace(/([A-Z]+)([A-Z][a-z])/g,"$1-$2").replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/([A-Za-z])([0-9])/g,"$1-$2").replace(/[_ ]+/g,"-").toLowerCase();function S0(e){const t=e.toLowerCase();if(t.startsWith("http://")||t.startsWith("https://")||t.startsWith("data:")||e.includes("/assets/")||/\.(png|jpe?g|gif|webp|avif|bmp|ico)$/i.test(t))return null;const a=(e.split("/").pop()||"").replace(/\.svg$/,"");return a?D0(a):null}const $s=new Map;function j0(e){const t=typeof e=="string"?S0(e):null,a=t?N0(t)??$s.get(t)??null:null,[r,i]=o.useState(null);return o.useEffect(()=>{if(!t||a)return;let s=!1;return E0(t).then(l=>{$s.set(t,l),s||i(l)}),()=>{s=!0}},[t,a]),a??r}/*! @license DOMPurify 3.4.14 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.14/LICENSE */function Rs(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,r=Array(t);a<t;a++)r[a]=e[a];return r}function T0(e){if(Array.isArray(e))return e}function M0(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var r,i,s,l,u=[],c=!0,d=!1;try{if(s=(a=a.call(e)).next,t!==0)for(;!(c=(r=s.call(a)).done)&&(u.push(r.value),u.length!==t);c=!0);}catch(m){d=!0,i=m}finally{try{if(!c&&a.return!=null&&(l=a.return(),Object(l)!==l))return}finally{if(d)throw i}}return u}}function L0(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
827
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function $0(e,t){return T0(e)||M0(e,t)||R0(e,t)||L0()}function R0(e,t){if(e){if(typeof e=="string")return Rs(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?Rs(e,t):void 0}}const Ps=Object.entries,Fs=Object.setPrototypeOf,P0=Object.isFrozen,F0=Object.getPrototypeOf,I0=Object.getOwnPropertyDescriptor;let St=Object.freeze,Tt=Object.seal,ta=Object.create,Is=typeof Reflect<"u"&&Reflect,Dr=Is.apply,Sr=Is.construct;St||(St=function(t){return t}),Tt||(Tt=function(t){return t}),Dr||(Dr=function(t,a){for(var r=arguments.length,i=new Array(r>2?r-2:0),s=2;s<r;s++)i[s-2]=arguments[s];return t.apply(a,i)}),Sr||(Sr=function(t){for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return new t(...r)});const Vn=Et(Array.prototype.forEach),O0=Et(Array.prototype.lastIndexOf),Os=Et(Array.prototype.pop),ga=Et(Array.prototype.push),H0=Et(Array.prototype.splice),na=Array.isArray,ba=Et(String.prototype.toLowerCase),jr=Et(String.prototype.toString),Hs=Et(String.prototype.match),ya=Et(String.prototype.replace),zs=Et(String.prototype.indexOf),z0=Et(String.prototype.trim),V0=Et(Number.prototype.toString),W0=Et(Boolean.prototype.toString),Vs=typeof BigInt>"u"?null:Et(BigInt.prototype.toString),Ws=typeof Symbol>"u"?null:Et(Symbol.prototype.toString),Xt=Et(Object.prototype.hasOwnProperty),va=Et(Object.prototype.toString),Ot=Et(RegExp.prototype.test),Wn=q0(TypeError);function Et(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,r=new Array(a>1?a-1:0),i=1;i<a;i++)r[i-1]=arguments[i];return Dr(e,t,r)}}function q0(e){return function(){for(var t=arguments.length,a=new Array(t),r=0;r<t;r++)a[r]=arguments[r];return Sr(e,a)}}function pt(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:ba;if(Fs&&Fs(e,null),!na(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i=="string"){const s=a(i);s!==i&&(P0(t)||(t[r]=s),i=s)}e[i]=!0}return e}function U0(e){for(let t=0;t<e.length;t++)Xt(e,t)||(e[t]=null);return e}function tn(e){const t=ta(null);for(const r of Ps(e)){var a=$0(r,2);const i=a[0],s=a[1];Xt(e,i)&&(na(s)?t[i]=U0(s):s&&typeof s=="object"&&s.constructor===Object?t[i]=tn(s):t[i]=s)}return t}function G0(e){switch(typeof e){case"string":return e;case"number":return V0(e);case"boolean":return W0(e);case"bigint":return Vs?Vs(e):"0";case"symbol":return Ws?Ws(e):"Symbol()";case"undefined":return va(e);case"function":case"object":{if(e===null)return va(e);const t=e,a=un(t,"toString");if(typeof a=="function"){const r=a(t);return typeof r=="string"?r:va(r)}return va(e)}default:return va(e)}}function un(e,t){for(;e!==null;){const r=I0(e,t);if(r){if(r.get)return Et(r.get);if(typeof r.value=="function")return Et(r.value)}e=F0(e)}function a(){return null}return a}function K0(e){try{return Ot(e,""),!0}catch{return!1}}const qs=St(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Tr=St(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Mr=St(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),Y0=St(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Lr=St(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),Z0=St(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),Us=St(["#text"]),Gs=St(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),$r=St(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Ks=St(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Wa=St(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),X0=Tt(/{{[\w\W]*|^[\w\W]*}}/g),J0=Tt(/<%[\w\W]*|^[\w\W]*%>/g),Q0=Tt(/\${[\w\W]*/g),eC=Tt(/^data-[\-\w.\u00B7-\uFFFF]+$/),tC=Tt(/^aria-[\-\w]+$/),Ys=Tt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),nC=Tt(/^(?:\w+script|data):/i),aC=Tt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),rC=Tt(/^html$/i),oC=Tt(/^[a-z][.\w]*(-[.\w]+)+$/i),Zs=Tt(/<[/\w!]/g),Xs=Tt(/<[/\w]/g),sC=Tt(/<\/no(script|embed|frames)/i),iC=Tt(/\/>/i),nn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Js=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],lC=St(pt({},Js)),uC=(function(){const e={};return Vn(Js,t=>{e[t]=Tt(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),St(e)})(),cC=function(){return typeof window>"u"?null:window},dC=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let r=null;const i="data-tt-policy-suffix";a&&a.hasAttribute(i)&&(r=a.getAttribute(i));const s="dompurify"+(r?"#"+r:"");try{return t.createPolicy(s,{createHTML(l){return l},createScriptURL(l){return l}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Qs=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Ln=function(t,a,r,i){return Xt(t,a)&&na(t[a])?pt(i.base?tn(i.base):{},t[a],i.transform):r},Rr=function(t,a,r){const i=Xt(t,a)?t[a]:void 0;return i&&typeof i=="object"?tn(i):r()};function ei(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:cC();const t=he=>ei(he);if(t.version="3.4.14",t.removed=[],!e||!e.document||e.document.nodeType!==nn.document||!e.Element)return t.isSupported=!1,t;let a=e.document;const r=a,i=r.currentScript;e.DocumentFragment;const s=e.HTMLTemplateElement,l=e.Node,u=e.Element,c=e.NodeFilter,d=e.NamedNodeMap;d===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;const m=e.DOMParser,p=e.trustedTypes,C=u.prototype,y=un(C,"cloneNode"),v=un(C,"remove"),g=un(C,"nextSibling"),h=un(C,"childNodes"),x=un(C,"parentNode"),f=un(C,"shadowRoot"),w=un(C,"attributes"),b=l&&l.prototype?un(l.prototype,"nodeType"):null,B=l&&l.prototype?un(l.prototype,"nodeName"):null,_=l&&l.prototype?un(l.prototype,"ownerDocument"):null,A=function(j){return b?b(j):j.nodeType},k=function(j){return B?B(j):j.nodeName};if(typeof s=="function"){const he=a.createElement("template");he.content&&he.content.ownerDocument&&(a=he.content.ownerDocument)}let N,S="",E,O=!1,F=0;const Y=function(){if(F>0)throw Wn('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},M=function(j){Y(),F++;try{return N.createHTML(j)}finally{F--}},L=function(j){Y(),F++;try{return N.createScriptURL(j)}finally{F--}},P=function(){return O||(E=dC(p,i),O=!0),E},G=a,U=G.implementation,z=G.createNodeIterator,q=G.createDocumentFragment,$=G.getElementsByTagName,V=r.importNode;let H=Qs();t.isSupported=typeof Ps=="function"&&typeof x=="function"&&U&&U.createHTMLDocument!==void 0;const T=X0,D=J0,R=Q0,I=eC,W=tC,ee=nC,oe=aC,ce=oC;let J=Ys,re=null;const Ne=pt({},[...qs,...Tr,...Mr,...Lr,...Us]);let K=null;const Q=pt({},[...Gs,...$r,...Ks,...Wa]);let pe=Object.seal(ta(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),De=null,ye=null;const ne=Object.seal(ta(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let le=!0,Ce=!0,ge=!1,fe=!0,$e=!1,Ve=!0,je=!1,Fe=!1,qe=null,mt=null,ct=!1,rt=!1,Ct=!1,Be=!1,We=!0,_e=!1;const Ue="user-content-";let Ae=!0,Te=!1,Se={},Xe=null;const Qe=pt({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let dt=null;const ht=pt({},["audio","video","img","source","image","track"]);let wt=null;const ft=pt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Nt="http://www.w3.org/1998/Math/MathML",gt="http://www.w3.org/2000/svg",it="http://www.w3.org/1999/xhtml";let Ke=it,se=!1,ke=null;const ze=pt({},[Nt,gt,it],jr),nt=St(["mi","mo","mn","ms","mtext"]);let Ie=pt({},nt);const Ge=St(["annotation-xml"]);let bt=pt({},Ge);const Re=pt({},["title","style","font","a","script"]);let tt=null;const xt=["application/xhtml+xml","text/html"],Mt="text/html";let et=null,ot=null;const lt=a.createElement("form"),st=function(j){return j instanceof RegExp||j instanceof Function},jt=function(){let j=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(ot&&ot===j)return;(!j||typeof j!="object")&&(j={}),j=tn(j),tt=xt.indexOf(j.PARSER_MEDIA_TYPE)===-1?Mt:j.PARSER_MEDIA_TYPE,et=tt==="application/xhtml+xml"?jr:ba,re=Ln(j,"ALLOWED_TAGS",Ne,{transform:et}),K=Ln(j,"ALLOWED_ATTR",Q,{transform:et}),ke=Ln(j,"ALLOWED_NAMESPACES",ze,{transform:jr}),wt=Ln(j,"ADD_URI_SAFE_ATTR",ft,{transform:et,base:ft}),dt=Ln(j,"ADD_DATA_URI_TAGS",ht,{transform:et,base:ht}),Xe=Ln(j,"FORBID_CONTENTS",Qe,{transform:et}),De=Ln(j,"FORBID_TAGS",tn({}),{transform:et}),ye=Ln(j,"FORBID_ATTR",tn({}),{transform:et}),Se=Xt(j,"USE_PROFILES")?j.USE_PROFILES&&typeof j.USE_PROFILES=="object"?tn(j.USE_PROFILES):j.USE_PROFILES:!1,le=j.ALLOW_ARIA_ATTR!==!1,Ce=j.ALLOW_DATA_ATTR!==!1,ge=j.ALLOW_UNKNOWN_PROTOCOLS||!1,fe=j.ALLOW_SELF_CLOSE_IN_ATTR!==!1,$e=j.SAFE_FOR_TEMPLATES||!1,Ve=j.SAFE_FOR_XML!==!1,je=j.WHOLE_DOCUMENT||!1,rt=j.RETURN_DOM||!1,Ct=j.RETURN_DOM_FRAGMENT||!1,Be=j.RETURN_TRUSTED_TYPE||!1,ct=j.FORCE_BODY||!1,We=j.SANITIZE_DOM!==!1,_e=j.SANITIZE_NAMED_PROPS||!1,Ae=j.KEEP_CONTENT!==!1,Te=j.IN_PLACE||!1,J=K0(j.ALLOWED_URI_REGEXP)?j.ALLOWED_URI_REGEXP:Ys,Ke=typeof j.NAMESPACE=="string"?j.NAMESPACE:it,Ie=Rr(j,"MATHML_TEXT_INTEGRATION_POINTS",()=>pt({},nt)),bt=Rr(j,"HTML_INTEGRATION_POINTS",()=>pt({},Ge));const Z=Rr(j,"CUSTOM_ELEMENT_HANDLING",()=>ta(null));if(pe=ta(null),Xt(Z,"tagNameCheck")&&st(Z.tagNameCheck)&&(pe.tagNameCheck=Z.tagNameCheck),Xt(Z,"attributeNameCheck")&&st(Z.attributeNameCheck)&&(pe.attributeNameCheck=Z.attributeNameCheck),Xt(Z,"allowCustomizedBuiltInElements")&&typeof Z.allowCustomizedBuiltInElements=="boolean"&&(pe.allowCustomizedBuiltInElements=Z.allowCustomizedBuiltInElements),Tt(pe),$e&&(Ce=!1),Ct&&(rt=!0),Se&&(re=pt({},Us),K=ta(null),Se.html===!0&&(pt(re,qs),pt(K,Gs)),Se.svg===!0&&(pt(re,Tr),pt(K,$r),pt(K,Wa)),Se.svgFilters===!0&&(pt(re,Mr),pt(K,$r),pt(K,Wa)),Se.mathMl===!0&&(pt(re,Lr),pt(K,Ks),pt(K,Wa))),ne.tagCheck=null,ne.attributeCheck=null,Xt(j,"ADD_TAGS")&&(typeof j.ADD_TAGS=="function"?ne.tagCheck=j.ADD_TAGS:na(j.ADD_TAGS)&&(re===Ne&&(re=tn(re)),pt(re,j.ADD_TAGS,et))),Xt(j,"ADD_ATTR")&&(typeof j.ADD_ATTR=="function"?ne.attributeCheck=j.ADD_ATTR:na(j.ADD_ATTR)&&(K===Q&&(K=tn(K)),pt(K,j.ADD_ATTR,et))),Xt(j,"ADD_FORBID_CONTENTS")&&na(j.ADD_FORBID_CONTENTS)&&(Xe===Qe&&(Xe=tn(Xe)),pt(Xe,j.ADD_FORBID_CONTENTS,et)),Ae&&(re["#text"]=!0),je&&pt(re,["html","head","body"]),re.table&&(pt(re,["tbody"]),delete De.tbody),j.TRUSTED_TYPES_POLICY){if(typeof j.TRUSTED_TYPES_POLICY.createHTML!="function")throw Wn('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof j.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Wn('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const ue=N;N=j.TRUSTED_TYPES_POLICY;try{S=M("")}catch(Ee){throw N=ue,Ee}}else j.TRUSTED_TYPES_POLICY===null?(N=void 0,S=""):(N===void 0&&(N=P()),N&&typeof S=="string"&&(S=M("")));St&&St(j),ot=j},Ht=pt({},[...Tr,...Mr,...Y0]),mn=pt({},[...Lr,...Z0]),hn=function(j,Z,ue){return Z.namespaceURI===it?j==="svg":Z.namespaceURI===Nt?j==="svg"&&(ue==="annotation-xml"||Ie[ue]):!!Ht[j]},Tn=function(j,Z,ue){return Z.namespaceURI===it?j==="math":Z.namespaceURI===gt?j==="math"&&bt[ue]:!!mn[j]},On=function(j,Z,ue){return Z.namespaceURI===gt&&!bt[ue]||Z.namespaceURI===Nt&&!Ie[ue]?!1:!mn[j]&&(Re[j]||!Ht[j])},Hn=function(j){let Z=x(j);(!Z||!Z.tagName)&&(Z={namespaceURI:Ke,tagName:"template"});const ue=ba(j.tagName),Ee=ba(Z.tagName);return ke[j.namespaceURI]?j.namespaceURI===gt?hn(ue,Z,Ee):j.namespaceURI===Nt?Tn(ue,Z,Ee):j.namespaceURI===it?On(ue,Z,Ee):!!(tt==="application/xhtml+xml"&&ke[j.namespaceURI]):!1},Pt=function(j){ga(t.removed,{element:j});try{x(j).removeChild(j)}catch{if(v(j),!x(j))throw Wn("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},vn=function(j,Z,ue){try{j.removeAttributeNode(Z)}catch{try{j.removeAttribute(ue)}catch{}}},Ft=function(j){on(j);const Z=h(j);if(Z){const Ee=[];Vn(Z,Pe=>{ga(Ee,Pe)}),Vn(Ee,Pe=>{try{v(Pe)}catch{}})}const ue=w(j);if(ue)for(let Ee=ue.length-1;Ee>=0;--Ee){const Pe=ue[Ee],Ze=Pe&&Pe.name;typeof Ze=="string"&&vn(j,Pe,Ze)}},zt=function(j,Z,ue){if(!ue)try{ue=Z.getAttributeNode(j)}catch{ue=null}ga(t.removed,{attribute:ue||null,from:Z});try{ue?Z.removeAttributeNode(ue):Z.removeAttribute(j)}catch{try{Z.removeAttribute(j)}catch{}}if(j==="is")if(rt||Ct)try{Pt(Z)}catch{}else try{Z.setAttribute(j,"")}catch{}},Mn=function(j){const Z=w(j);if(Z)for(let ue=Z.length-1;ue>=0;--ue){const Ee=Z[ue],Pe=Ee&&Ee.name;typeof Pe!="string"||K[et(Pe)]||vn(j,Ee,Pe)}},on=function(j){const Z=[j];for(;Z.length>0;){const ue=Z.pop();A(ue)===nn.element&&Mn(ue);const Pe=h(ue);if(Pe)for(let Ze=Pe.length-1;Ze>=0;--Ze)Z.push(Pe[Ze])}},xn=function(j,Z){return Ve?j==="patchsrc"?!0:j==="for"&&Z!=="label"&&Z!=="output":!1},zn=function(j){if(!Ve)return;const Z=[j];for(;Z.length>0;){const ue=Z.pop(),Ee=A(ue);if(Ee===nn.processingInstruction||Ee===nn.comment&&Ot(Xs,ue.data)){try{v(ue)}catch{}continue}if(Ee===nn.element){const Ze=ue,vt=et(k(ue));try{Ze.hasAttribute&&Ze.hasAttribute("patchsrc")&&Ze.removeAttribute("patchsrc"),Ze.hasAttribute&&Ze.hasAttribute("for")&&xn("for",vt)&&Ze.removeAttribute("for")}catch{}}const Pe=h(ue);if(Pe)for(let Ze=Pe.length-1;Ze>=0;--Ze)Z.push(Pe[Ze])}},_n=function(j){let Z=null,ue=null;if(ct)j="<remove></remove>"+j;else{const Ze=Hs(j,/^[\r\n\t ]+/);ue=Ze&&Ze[0]}tt==="application/xhtml+xml"&&Ke===it&&(j='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+j+"</body></html>");const Ee=N?M(j):j;if(Ke===it)try{Z=new m().parseFromString(Ee,tt)}catch{}if(!Z||!Z.documentElement){Z=U.createDocument(Ke,"template",null);try{Z.documentElement.innerHTML=se?S:Ee}catch{}}const Pe=Z.body||Z.documentElement;return j&&ue&&Pe.insertBefore(a.createTextNode(ue),Pe.childNodes[0]||null),Ke===it?$.call(Z,je?"html":"body")[0]:je?Z.documentElement:Pe},Vt=function(j){const Z=_?_(j):j.ownerDocument;return z.call(Z||j,j,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},Lt=function(j){return j=ya(j,T," "),j=ya(j,D," "),j=ya(j,R," "),j},Wt=function(j){var Z;j.normalize();const ue=_?_(j):j.ownerDocument,Ee=z.call(ue||j,j,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null);let Pe=Ee.nextNode();for(;Pe;)Pe.data=Lt(Pe.data),Pe=Ee.nextNode();const Ze=(Z=j.querySelectorAll)===null||Z===void 0?void 0:Z.call(j,"template");Ze&&Vn(Ze,vt=>{It(vt.content)&&Wt(vt.content)})},Cn=function(j){const Z=B?B(j):null;return typeof Z!="string"||et(Z)!=="form"?!1:typeof j.nodeName!="string"||typeof j.textContent!="string"||typeof j.removeChild!="function"||j.attributes!==w(j)||typeof j.removeAttribute!="function"||typeof j.setAttribute!="function"||typeof j.namespaceURI!="string"||typeof j.insertBefore!="function"||typeof j.hasChildNodes!="function"||j.nodeType!==b(j)||j.childNodes!==h(j)},It=function(j){if(!b||typeof j!="object"||j===null)return!1;try{return b(j)===nn.documentFragment}catch{return!1}},sn=function(j){if(!b||typeof j!="object"||j===null)return!1;try{return typeof b(j)=="number"}catch{return!1}};function Dt(he,j,Z){he.length!==0&&Vn(he,ue=>{ue.call(t,j,Z,ot)})}const ie=function(j,Z){return!!(Ve&&j.hasChildNodes()&&!sn(j.firstElementChild)&&Ot(Zs,j.textContent)&&Ot(Zs,j.innerHTML)||Ve&&j.namespaceURI===it&&lC[Z]&&(sn(j.firstElementChild)||typeof j.textContent=="string"&&Ot(uC[Z],j.textContent))||j.nodeType===nn.processingInstruction||Ve&&j.nodeType===nn.comment&&Ot(Xs,j.data))},ve=function(j,Z){if(j instanceof RegExp)return Ot(j,Z);if(j instanceof Function){for(var ue=arguments.length,Ee=new Array(ue>2?ue-2:0),Pe=2;Pe<ue;Pe++)Ee[Pe-2]=arguments[Pe];return!!j(Z,...Ee)}return!1},Me=function(j,Z,ue){if(!De[Z]&&ae(Z)&&ve(pe.tagNameCheck,Z))return!1;if(Ae&&!Xe[Z]){const Ee=x(j),Pe=h(j);if(Pe&&Ee){const Ze=Pe.length;for(let vt=Ze-1;vt>=0;--vt){const At=j===ue?y(Pe[vt],!0):Pe[vt];Ee.insertBefore(At,g(j))}}}return Pt(j),!0},Je=function(j,Z,ue,Ee){return j.length===0?Z:Z===ue||Z===Ee?tn(Z):Z},Oe=function(j,Z){return j===Z||x(j)!==null?!1:(Te&&on(j),!0)},Ye=function(j,Z){if(Dt(H.beforeSanitizeElements,j,null),Oe(j,Z))return!0;if(Cn(j))return Pt(j),!0;const ue=et(k(j));if(re=Je(H.uponSanitizeElement,re,Ne,qe),Dt(H.uponSanitizeElement,j,{tagName:ue,allowedTags:re}),Oe(j,Z))return!0;if(ie(j,ue))return Pt(j),!0;if(De[ue]||!(ne.tagCheck instanceof Function&&ne.tagCheck(ue))&&!re[ue]){const Pe=Me(j,ue,Z);return Pe===!1&&Dt(H.afterSanitizeElements,j,null),Pe}if(A(j)===nn.element&&!Hn(j)||(ue==="noscript"||ue==="noembed"||ue==="noframes")&&Ot(sC,j.innerHTML))return Pt(j),!0;if($e&&j.nodeType===nn.text){const Pe=Lt(j.textContent);j.textContent!==Pe&&(ga(t.removed,{element:j.cloneNode()}),j.textContent=Pe)}return Dt(H.afterSanitizeElements,j,null),!1},X=function(j,Z,ue){if(ye[Z]||xn(Z,j)||We&&(Z==="id"||Z==="name")&&(ue in a||ue in lt))return!1;const Ee=K[Z]||ne.attributeCheck instanceof Function&&ne.attributeCheck(Z,j);return Ce&&Ot(I,Z)||le&&Ot(W,Z)?!0:Ee?wt[Z]||Ot(J,ya(ue,oe,""))||(Z==="src"||Z==="xlink:href"||Z==="href")&&j!=="script"&&zs(ue,"data:")===0&&dt[j]||ge&&!Ot(ee,ya(ue,oe,""))?!0:!ue:ae(j)&&ve(pe.tagNameCheck,j)&&ve(pe.attributeNameCheck,Z,j)||Z==="is"&&pe.allowCustomizedBuiltInElements&&ve(pe.tagNameCheck,ue)},de=pt({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),ae=function(j){return!de[ba(j)]&&Ot(ce,j)},be=function(j,Z,ue,Ee){if(N&&typeof p=="object"&&typeof p.getAttributeType=="function"&&!ue)switch(p.getAttributeType(j,Z)){case"TrustedHTML":return M(Ee);case"TrustedScriptURL":return L(Ee)}return Ee},Le=function(j,Z,ue,Ee){try{ue?j.setAttributeNS(ue,Z,Ee):j.setAttribute(Z,Ee),Cn(j)?Pt(j):Os(t.removed)}catch{zt(Z,j)}},He=function(j){Dt(H.beforeSanitizeAttributes,j,null);const Z=j.attributes;if(!Z||Cn(j))return;K=Je(H.uponSanitizeAttribute,K,Q,mt);const ue={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:K,forceKeepAttr:void 0};let Ee=Z.length;const Pe=et(j.nodeName);for(;Ee--;){const Ze=Z[Ee],vt=Ze.name,At=Ze.namespaceURI,Kt=Ze.value,Yt=et(vt),kr=Kt;let qt=vt==="value"?kr:z0(kr);if(ue.attrName=Yt,ue.attrValue=qt,ue.keepAttr=!0,ue.forceKeepAttr=void 0,Dt(H.uponSanitizeAttribute,j,ue),qt=ue.attrValue,_e&&(Yt==="id"||Yt==="name")&&zs(qt,Ue)!==0&&(zt(vt,j,Ze),qt=Ue+qt),Ve&&Ot(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,qt)){zt(vt,j,Ze);continue}if(Yt==="attributename"&&Hs(qt,"href")){zt(vt,j,Ze);continue}if(!ue.forceKeepAttr){if(!ue.keepAttr){zt(vt,j,Ze);continue}if(!fe&&Ot(iC,qt)){zt(vt,j,Ze);continue}if($e&&(qt=Lt(qt)),!X(Pe,Yt,qt)){zt(vt,j,Ze);continue}qt=be(Pe,Yt,At,qt),qt!==kr&&Le(j,vt,At,qt)}}Dt(H.afterSanitizeAttributes,j,null)},ut=function(j){let Z=null;const ue=Vt(j);for(Dt(H.beforeSanitizeShadowDOM,j,null);Z=ue.nextNode();)if(Dt(H.uponSanitizeShadowNode,Z,null),Ye(Z,j),He(Z),It(Z.content)&&ut(Z.content),A(Z)===nn.element){const Ee=f(Z);It(Ee)&&(yt(Ee),ut(Ee))}Dt(H.afterSanitizeShadowDOM,j,null)},yt=function(j){const Z=[{node:j,shadow:null}];for(;Z.length>0;){const ue=Z.pop();if(ue.shadow){ut(ue.shadow);continue}const Ee=ue.node,Ze=A(Ee)===nn.element,vt=h(Ee);if(vt)for(let At=vt.length-1;At>=0;--At)Z.push({node:vt[At],shadow:null});if(Ze){const At=B?B(Ee):null;if(typeof At=="string"&&et(At)==="template"){const Kt=Ee.content;It(Kt)&&Z.push({node:Kt,shadow:null})}}if(Ze){const At=f(Ee);It(At)&&Z.push({node:null,shadow:At},{node:At,shadow:null})}}};return t.sanitize=function(he){let j=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Z=null,ue=null,Ee=null,Pe=null;if(se=!he,se&&(he="<!-->"),typeof he!="string"&&!sn(he)&&(he=G0(he),typeof he!="string"))throw Wn("dirty is not a string, aborting");if(!t.isSupported)return he;Fe?(re=qe,K=mt):jt(j),(H.uponSanitizeElement.length>0||H.uponSanitizeAttribute.length>0)&&(re=tn(re)),H.uponSanitizeAttribute.length>0&&(K=tn(K)),t.removed=[];const Ze=Te&&typeof he!="string"&&sn(he);if(Ze){zn(he);const Kt=k(he);if(typeof Kt=="string"){const Yt=et(Kt);if(!re[Yt]||De[Yt])throw Ft(he),Wn("root node is forbidden and cannot be sanitized in-place")}if(Cn(he))throw Ft(he),Wn("root node is clobbered and cannot be sanitized in-place");try{yt(he)}catch(Yt){throw Ft(he),Yt}}else if(sn(he))Z=_n("<!---->"),ue=Z.ownerDocument.importNode(he,!0),ue.nodeType===nn.element&&ue.nodeName==="BODY"||ue.nodeName==="HTML"?Z=ue:Z.appendChild(ue),yt(ue);else{if(!rt&&!$e&&!je&&he.indexOf("<")===-1)return N&&Be?M(he):he;if(Z=_n(he),!Z)return rt?null:Be?S:""}Z&&ct&&Pt(Z.firstChild);const vt=Ze?he:Z;try{const Kt=Vt(vt);for(;Ee=Kt.nextNode();)Ye(Ee,vt),He(Ee),It(Ee.content)&&ut(Ee.content)}catch(Kt){throw Ze&&(Ft(he),Vn(t.removed,Yt=>{Yt.element&&on(Yt.element)})),Kt}if(Ze)return Vn(t.removed,Kt=>{Kt.element&&on(Kt.element)}),$e&&Wt(he),he;if(rt){if($e&&Wt(Z),Ct)for(Pe=q.call(Z.ownerDocument);Z.firstChild;)Pe.appendChild(Z.firstChild);else Pe=Z;return(K.shadowroot||K.shadowrootmode)&&(Pe=V.call(r,Pe,!0)),Pe}let At=je?Z.outerHTML:Z.innerHTML;return je&&re["!doctype"]&&Z.ownerDocument&&Z.ownerDocument.doctype&&Z.ownerDocument.doctype.name&&Ot(rC,Z.ownerDocument.doctype.name)&&(At="<!DOCTYPE "+Z.ownerDocument.doctype.name+`>
|
|
828
|
+
`+At),$e&&(At=Lt(At)),N&&Be?M(At):At},t.setConfig=function(){let he=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};jt(he),Fe=!0,qe=re,mt=K},t.clearConfig=function(){ot=null,Fe=!1,qe=null,mt=null,N=E,S=""},t.isValidAttribute=function(he,j,Z){ot||jt({});const ue=et(he),Ee=et(j);return X(ue,Ee,Z)},t.addHook=function(he,j){typeof j=="function"&&Xt(H,he)&&ga(H[he],j)},t.removeHook=function(he,j){if(Xt(H,he)){if(j!==void 0){const Z=O0(H[he],j);return Z===-1?void 0:H0(H[he],Z,1)[0]}return Os(H[he])}},t.removeHooks=function(he){Xt(H,he)&&(H[he]=[])},t.removeAllHooks=function(){H=Qs()},t}var Pr=ei();const pC=/^(?:[a-z]+:)?\/\//i,mC="__ihab_core_asset_base_url__";function hC(){return globalThis[mC]??""}function Fr(e){const t=String(e||"").trim();if(!t)return"";if(pC.test(t)||t.startsWith("data:")||t.startsWith("blob:"))return t;const a=t.startsWith("/")?t:`/${t}`,r=hC();return r?`${r}${a}`:a}const ti="__ihab_core_storage_resolvers__";function xa(){return globalThis[ti]??null}function CC(e){globalThis[ti]=e}let ni=class extends Error{constructor(t){super(`
|
|
829
829
|
[ihabdevteam-core] ${t}() \uD638\uCD9C \uC2E4\uD328 \u2014 configureStorage()\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4.
|
|
830
830
|
|
|
831
831
|
\uC571 \uCD08\uAE30\uD654 \uC2DC\uC810(main.tsx \uB4F1)\uC5D0 \uC544\uB798\uC640 \uAC19\uC774 \uD55C \uBC88 \uD638\uCD9C\uD558\uC138\uC694:
|
|
@@ -844,25 +844,25 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
844
844
|
\uC124\uCE58 \uBA85\uB839\uC5B4 (\uC2A4\uD1A0\uB9AC\uC9C0 SDK \uBBF8\uC124\uCE58 \uC2DC):
|
|
845
845
|
npm install @supabase/supabase-js
|
|
846
846
|
pnpm add @supabase/supabase-js
|
|
847
|
-
`),this.name="StorageNotConfiguredError"}};function fC(e){CC(e)}function ni(e,t){if(!e)return null;const a=xa();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function ai(e){if(!e)return null;const t=xa();if(!t)throw new ti("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function ri(e){const t=xa();if(!t)throw new ti("downloadSound");return t.download(e)}function gC(){return xa()?.noiseBaseUrl??"/sounds/noise"}function bC(){const e=Number(xa()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function yC(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const oi="__ihab_core_tts_config__";function Ir(){return globalThis[oi]?.urlResolver??null}function vC(){return globalThis[oi]?.fallbackUrlResolver??null}const xC="__ihab_core_pronunciation_resolver__";function _C(){return globalThis[xC]??null}let $n=null;const _a=new WeakMap,Or=new WeakMap,Hr=new WeakMap;let si=!1;const ii=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function wC(){if(si||typeof document>"u")return;si=!0;const e=()=>{try{$n&&$n.state!=="running"&&$n.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function li(){if($n)return $n;try{const e=window.AudioContext||window.webkitAudioContext;return e?($n=new e,wC(),$n):null}catch{return null}}function zr(){try{$n?.resume()}catch{}}function Vr(e,t){const a=_a.get(t);if(a)return a;try{const r=e.createMediaElementSource(t),i=e.createGain(),s=e.createAnalyser();s.fftSize=1024,s.smoothingTimeConstant=.6,i.gain.value=ii(Or.get(t)??t.volume),r.connect(i),i.connect(s),i.connect(e.destination);try{t.volume=1}catch{}const l={gain:i,analyser:s};return _a.set(t,l),l}catch{return null}}function qa(e){if(!e)return Promise.resolve(null);const t=_a.get(e);if(t)return Promise.resolve(t.analyser);const a=li();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Vr(a,e)?.analyser??null);const r=Hr.get(e);if(r)return r;const i=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Vr(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Hr.delete(e)});return Hr.set(e,i),i}function AC(e){if(!e)return null;const t=_a.get(e);if(t)return t.analyser;const a=li();return a?a.state==="running"?Vr(a,e)?.analyser??null:(qa(e),null):null}function Rn(e,t){const a=ii(t);Or.set(e,a);const r=_a.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const i=r.gain.gain;try{const s=r.gain.context.currentTime;i.cancelScheduledValues(s),i.setTargetAtTime(a,s,.01)}catch{try{i.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ua(e){return Or.get(e)??e.volume}function BC(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const i=t[r];a+=i*i}return Math.sqrt(a/t.length)}const kC="__ihab_core_image_config__";function aa(){return globalThis[kC]??null}const ui="word_image_existence_map_v1";let qn=null;const Ga=new Map;function NC(){if(qn)return qn;try{const e=typeof localStorage<"u"?localStorage.getItem(ui):null,t=e?JSON.parse(e):null;qn=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{qn={}}return qn}let Wr=null;function EC(){Wr||(Wr=setTimeout(()=>{Wr=null;try{typeof localStorage<"u"&&qn&&localStorage.setItem(ui,JSON.stringify(qn))}catch{}},200))}function DC(e,t){return`${e}_${t??1}`}async function ci(e,t){const a=NC(),r=DC(e,t);if(r in a)return a[r];if(Ga.has(r))return Ga.get(r);const i=aa();if(!i)return!1;const s=i(e,t);if(!s)return!1;const l=fetch(s,{method:"HEAD",signal:yC(8e3)}).then(u=>u.status>=500?null:u.ok,()=>null).then(u=>(Ga.delete(r),u===null?!1:(a[r]=u,EC(),u)));return Ga.set(r,l),l}const SC=["onset","vowel","coda","glide"],di="none",jC={\uCD08\uC131:"onset",\uBAA8\uC74C:"vowel",\uC885\uC131:"coda",\uD65C\uC74C:"glide"},TC="\uC5C6\uC74C";function MC(e){return SC.includes(e)}function LC(e){const t={};for(const[a,r]of Object.entries(e)){const i=MC(a)?a:jC[a];i&&(t[i]=r===TC?di:r)}return t}const $C={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}},pi=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],mi=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],RC=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function wa(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function PC(e){const t=wa(e[0]||"");return t?pi[t.cho]:""}function FC(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>pi.includes(l),r=l=>mi.includes(l),i=t.map(l=>a(l)?"cho":r(l)?"jung":wa(l)?"syl":"other"),s=t.map(l=>wa(l));if(i.includes("other")){const l=e.toLowerCase();return u=>u.normalize("NFC").toLowerCase().includes(l)}return l=>{const u=[...l.normalize("NFC")];for(let c=0;c+t.length<=u.length;c++){let d=!0;for(let m=0;m<t.length;m++){const p=u[c+m],C=i[m];if(C==="cho"){if(PC(p)!==t[m]){d=!1;break}}else if(C==="jung"){const _=wa(p);if(!_||mi[_.jung]!==t[m]){d=!1;break}}else{const _=s[m];if(_&&_.jong===0){const y=wa(p);if(!y||y.cho!==_.cho||y.jung!==_.jung){d=!1;break}}else if(p!==t[m]){d=!1;break}}}if(d)return!0}return!1}}const IC={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]};Object.fromEntries(Object.entries(IC).map(([e,t])=>[t.join(""),RC[Number(e)]]));const OC="word_pair_index_v2",HC="word_pair_index_sig_v2";let Ka=null;function zC(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(OC),t=localStorage.getItem(HC);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function VC(){if(Ka)return Ka;const e=zC();return e?(Ka=e.index,e.sig,Ka):null}function WC(e,t,a){return!(e>0)||!(t>0)?1:Math.max(1,Math.floor((e+a)/(t+a)))}function qC(e,t){if(!(e>0))return 1;const a=Math.max(1,Math.floor(t));if(e<=a)return e;const r=Math.ceil(e/a);return Math.max(1,Math.ceil(e/r))}const qr=/[ㄱ-ㅎ]/,UC=/[ㅏ-ㅣ]/;function hi(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||qr.test(a)||UC.test(a))return a}return null}function GC(e){const t=hi(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":qr.test(t)?"\uC774":"\uAC00"}function KC(e){return`${e}${GC(e)}`}function YC(e){const t=hi(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":qr.test(t)?"\uC744":"\uB97C"}function ZC(e){return`${e}${YC(e)}`}function XC(e,t,a){const r=e.slice(),[i]=r.splice(t,1);return r.splice(a,0,i),r}function Aa(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const i=Math.floor(t()*(r+1));[a[r],a[i]]=[a[i],a[r]]}return a}const JC=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof $t?.t=="function"?$t.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function Ci(e,t){if(t===void 0&&(t=JC()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const QC="__ihab_core_word_pool__";function fi(){return globalThis[QC]??null}const gi=globalThis;function bi(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function ef(e){bi("time",()=>gi.__ihabTrainingTimeLogger?.(e))}function tf(e){bi("completion",()=>gi.__ihabTrainingCompletionLogger?.(e))}function Ya(e){if(typeof e=="string"){const t=e.trim();return t?Number.isNaN(new Date(t).getTime())?null:t:null}if(e instanceof Date)return Number.isNaN(e.getTime())?null:e.toISOString();if(typeof e=="number"&&Number.isFinite(e)){const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()}return null}function Jt(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function nf(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function af(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Jt(r.contextCode)??Jt(r.itemId)??Jt(r.itemCode)??Jt(r.id),question:Jt(r.question)??Jt(r.q)??Jt(r.sentence)??Jt(r.text)??Jt(r.prompt)??Jt(r.word)??Jt(r.targetSyllable),answer:Jt(r.answer),selected:Jt(r.selectedText)??Jt(r.selected),correct:nf(r),shownAt:Ya(r.shownAt)??Ya(r.shown_at),answeredAt:Ya(r.answeredAt)??Ya(r.answered_at)}}):[]}const Ur=globalThis;async function rf(){try{return await Ur.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function yi(e){const t=a=>{};try{const a=Ur.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function Za(e){try{Ur.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function of(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const sf="Asia/Seoul",lf=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function Gr(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),r=lf.exec(a);t=new Date(r?`${r[1]}T${r[2]}:${r[3]??"00"}${r[4]?`.${r[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}const uf=e=>Gr(e);function vi(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",r=uf(e);return r?r.toLocaleDateString(a,{timeZone:sf,year:"numeric",month:"short",day:"numeric"}):""}function cf(e,t,a){if(!Number.isFinite(e)||!Number.isFinite(t)||t<1||t>12)return`${e}-${t}`;const r=a&&a.startsWith("ko")?"ko-KR":a||"en-US";return new Intl.DateTimeFormat(r,{year:"numeric",month:"long"}).format(new Date(e,t-1,1))}function Kr(e,t,a,r){return e("calendar.yearMonth",{year:a,month:r,defaultValue:""})||cf(a,r,t)}function Ba(){return Zr(new Date)}function Yr(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ba()}function ra(){return pf(Ba())}const df=540*60*1e3;function xi(e,t,a){return new Date(Date.UTC(e,t,a)-df)}function pf(e){const[t,a,r]=e.split("-").map(Number);return new Date(t,(a||1)-1,r||1)}function Zr(e){if(e==null||e==="")return"";const t=Gr(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function _i(e,t){if(!e)return"";const a=Gr(e);if(!a)return"";const r=a.getTime(),i=Math.max(0,Math.floor((Date.now()-r)/1e3)),s=Math.floor(i/60),l=Math.floor(s/60),u=Math.floor(l/24),c=Math.floor(u/7),d=Math.floor(u/30),m=Math.floor(u/365);return s<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):s<60?t("store.time.minutesAgo",{n:s}):l<24?t("store.time.hoursAgo",{n:l}):u<7?t("store.time.daysAgo",{n:u}):c<5?t("store.time.weeksAgo",{n:c}):u<365?t("store.time.monthsAgo",{n:Math.min(d,11)}):t("store.time.yearsAgo",{n:m})}function wi(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:i=!1,fallback:s="\u2014"}=t;if(!e)return s;const l=Zr(e instanceof Date?e:String(e));if(!l)return s;const[u,c,d]=l.split("-"),m=r?c:String(Number(c)),p=r?d:String(Number(d));return`${u}${a}${m}${a}${p}${i?".":""}`}function oa(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function Ai(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),i=Number(a[2]),s=a[1].padStart(2,"0");return i===0?t("date.timeH",{h:r,hh:s,mm:a[2]}):t("date.timeHM",{h:r,hh:s,m:i,mm:a[2]})}function Xr(e){return(e??0).toLocaleString("ko-KR")}const mf=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],hf=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];function Bi(){return mf}function Cf(){return hf}const ff=[],gf=[],bf=[],yf=[];function vf(){return{LISTEN_IN_NOISE:ff,SHORT_STORY:gf,LONG_STORY:bf,ORDERING_SENTENCE:yf}}const xf=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],ki={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function _f(e){return xf.map(t=>{const a=ki[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}var wf={statusFilter:"\uC0C1\uD0DC \uD544\uD130",pageSizeSelect:"\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218",selectedCount:"{{count}}\uAC1C \uC120\uD0DD\uB428",selectedOfMax:"\uCD5C\uB300 {{max}}\uAC1C \uC911 {{count}}\uAC1C",cancel:"\uCDE8\uC18C",info:"\uC124\uBA85",errorState:{message:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",retry:"\uB2E4\uC2DC \uC2DC\uB3C4"},save:"\uC800\uC7A5",confirm:"\uD655\uC778",discardConfirm:{title:"\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?",body:"\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",confirm:"\uC785\uB825 \uCDE8\uC18C"},close:"\uB2EB\uAE30",back:"\uB4A4\uB85C",emptyTrainingName:"\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",remove:"\uC81C\uAC70",image:"\uC774\uBBF8\uC9C0",delete:"\uC0AD\uC81C",reset:"\uCD08\uAE30\uD654",update:"\uC5C5\uB370\uC774\uD2B8",download:"\uB2E4\uC6B4\uB85C\uB4DC",likeCount:"\uC88B\uC544\uC694 {{count}}",downloadCount:"\uAC00\uC838\uAC04 \uC218 {{count}}",descriptionFor:"{{name}} \uC124\uBA85",search:"\uAC80\uC0C9",empty:"\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",yes:"\uC608",no:"\uC544\uB2C8\uC624",all:"\uC804\uCCB4",none:"\uC5C6\uC74C",days:"{{count}}\uC77C",loadMore:"\uB354\uBCF4\uAE30",more:"\uB354\uBCF4\uAE30",moreFor:"{{name}} \uB354\uBCF4\uAE30",collapseFor:"{{name}} \uC811\uAE30",expandFor:"{{name}} \uD3BC\uCE58\uAE30",sortFor:"{{name}} \uC815\uB82C",retry:"\uB2E4\uC2DC \uC2DC\uB3C4",prevPage:"\uC774\uC804 \uD398\uC774\uC9C0",nextPage:"\uB2E4\uC74C \uD398\uC774\uC9C0",play:"\uC7AC\uC0DD",playFor:"{{name}} \uC7AC\uC0DD",pauseFor:"{{name}} \uBA48\uCDA4",pause:"\uBA48\uCDA4",playPause:"\uC7AC\uC0DD / \uBA48\uCDA4",replay:"\uB2E4\uC2DC\uB4E3\uAE30",subscription:"\uC774\uC6A9\uAD8C",done:"\uC644\uB8CC",failed:"\uC2E4\uD328",continue:"\uACC4\uC18D",notification:"\uC54C\uB9BC",emptyList:"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",noMatches:"\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",menu:"\uBA54\uB274",resetSelection:"\uC120\uD0DD \uCD08\uAE30\uD654",pageSizeLabel:"{{n}}\uAC1C\uC529 \uBCF4\uAE30",totalCountPrefix:"\uCD1D ",totalCountSuffix:"\uAC1C",expand:"\uD3BC\uCE58\uAE30",collapse:"\uC811\uAE30",popup:"\uD31D\uC5C5",codeBlock:"\uCF54\uB4DC \uBE14\uB85D",totalPrefix:"\uCD1D ",copyCode:"\uCF54\uB4DC \uBCF5\uC0AC",copied:"\uBCF5\uC0AC\uB428",col:{problem:"\uBB38\uC81C"},phonetics:{place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"},vowel:{frontHigh:"\uC804\uC124 \uACE0\uBAA8\uC74C",backHighUnrounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C",backHighRounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C",frontMid:"\uC804\uC124 \uC911\uBAA8\uC74C",backMidUnrounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C",backMidRounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C",low:"\uC800\uBAA8\uC74C"},glide:{j:"j\uD65C\uC74C",w:"w\uD65C\uC74C",velar:"\u0270\uD65C\uC74C"}},unknownError:"\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",networkError:"\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694."},Af={rangeSelect:"\uAE30\uAC04 \uC120\uD0DD",dow:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],weekOrdinal:["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"],weekLabel:"{{ord}}\uC8FC",prevMonth:"\uC774\uC804 \uB2EC",addOnDate:"{{date}}\uC5D0 \uBC29\uBB38 \uB4F1\uB85D",nextMonth:"\uB2E4\uC74C \uB2EC",prevWeek:"\uC774\uC804 \uC8FC",nextWeek:"\uB2E4\uC74C \uC8FC",legend:{visited:"\uBC29\uBB38",scheduled:"\uC608\uC57D",noVisit:"\uBBF8\uBC29\uBB38"},periodSelect:"\uAE30\uAC04 \uB2E8\uC704",visitCount:"\uBC29\uBB38 {{count}}\uAC74",statusCount:"{{label}} {{count}}\uAC74"},Bf={planSuffix:"\uC774\uC6A9\uAD8C",labeledPlan:"{{label}} \uC774\uC6A9\uAD8C",couponCode:"\uC774\uC6A9\uAD8C \uCF54\uB4DC",specialLabel:"\uC624\uD508\uD2B9\uAC00",unitDay:"\uC77C",unitYear:"\uB144",remainingDay:"{{n}}\uC77C \uB0A8\uC74C",remainingHour:"{{n}}\uC2DC\uAC04 \uB0A8\uC74C",remainingMinute:"{{n}}\uBD84 \uB0A8\uC74C",remainingSecond:"{{n}}\uCD08 \uB0A8\uC74C",expired:"\uB9CC\uB8CC\uB428",menu:{use:"\uC0AC\uC6A9\uD558\uAE30",refund:"\uD658\uBD88\uD558\uAE30",delete:"\uC0AD\uC81C\uD558\uAE30"}},kf={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},Nf={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},Ef={selected:"\uC120\uD0DD\uB428"},Df={placeholder:"\uC120\uD0DD"},Sf={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},jf={biArea:"BI \uC601\uC5ED",biSymbol:"BI \uC2EC\uBCFC",logoMalgwi:"\uB9D0\uADC0 \uB85C\uACE0",logoManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0",menuOpen:"\uBA54\uB274 \uC5F4\uAE30",utilMenu:"\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274",menuClose:"\uBA54\uB274 \uB2EB\uAE30"},Tf={mainMenu:"\uBA54\uC778 \uBA54\uB274",bottomNav:"\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158",goToManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9",goToMalgwi:"\uB9D0\uADC0\uB85C \uC774\uB3D9",modeLabelManager:"\uB9D0\uADC0 \uB9E4\uB2C8\uC800",modeLabelMalgwi:"\uB9D0\uADC0",training:"\uD6C8\uB828",settings:"\uC124\uC815",notifications:"\uC54C\uB9BC",account:"\uACC4\uC815",help:"\uB3C4\uC6C0\uB9D0",feedback:"\uBC84\uADF8\uC2E0\uACE0",debug:"\uB514\uBC84\uADF8",coupons:"\uCFE0\uD3F0",topic:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",trainingType:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",wordPairs:"\uB300\uB9BD\uC30D \uCC3E\uAE30",wordSearch:"\uB2E8\uC5B4 \uCC3E\uAE30",wordTable:"\uB2E8\uC5B4\uD45C \uB9CC\uB4E4\uAE30",company:"\uC5C5\uCCB4\uC815\uBCF4",more:"\uB354\uBCF4\uAE30",moreMenu:"\uB354\uBCF4\uAE30 \uBA54\uB274",badgeLabel:"{{label}}, {{count}}\uAC1C",badgeInsideLabel:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"},Mf={language:{training:{label:"\uD6C8\uB828 \uC5B8\uC5B4",sub:"\uD6C8\uB828\uC5D0 \uC0AC\uC6A9\uB418\uB294 \uB2E8\uC5B4\uC640 \uC74C\uC131 \uC5B8\uC5B4"}},notifications:{title:"\uC54C\uB9BC"},display:{fontSize:{small:"\uC791\uAC8C",large:"\uD06C\uAC8C"}},cache:{title:"\uCE90\uC2DC \uAD00\uB9AC",confirmMessage:"\uCE90\uC2DC({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",delete:"\uC0AD\uC81C",deleting:"\uC0AD\uC81C \uC911",cleared:"\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",group:{wordData:{label:"\uB2E8\uC5B4 \uB370\uC774\uD130",sub:"\uB2E8\uC5B4 \uBAA9\uB85D \uBC0F \uBC84\uC804 \uC815\uBCF4"},pairIndex:{label:"\uB2E8\uC5B4\uC30D \uC778\uB371\uC2A4",sub:"\uCD08\uC131\xB7\uC911\uC131\xB7\uC885\uC131 \uB300\uB9BD\uC30D \uBD84\uC11D \uCE90\uC2DC"},imageCache:{label:"\uC774\uBBF8\uC9C0 \uCE90\uC2DC",sub:"\uB2E8\uC5B4\uBCC4 \uC774\uBBF8\uC9C0 \uC874\uC7AC \uC5EC\uBD80 \uD655\uC778 \uACB0\uACFC"},trainingRecord:{label:"\uD6C8\uB828 \uAE30\uB85D",sub:"\uC624\uB298\uC758 \uD6C8\uB828 \uC9C4\uD589\uB960 \uBC0F \uD559\uC2B5 \uC77C\uC218"}}},button:{save:"\uC124\uC815 \uC800\uC7A5"},popup:{clear:{confirm:"\uCD08\uAE30\uD654"},update:{confirm:"\uC5C5\uB370\uC774\uD2B8"},cache:{title:"{{label}} \uC0AD\uC81C",message:"{{label}}({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"}},saved:"\u2713 \uC800\uC7A5\uB428",account:{title:"\uACC4\uC815",delete:{sub:"\uD0C8\uD1F4 \uD6C4 30\uC77C \uC774\uB0B4 \uC7AC\uAC00\uC785 \uC2DC \uBCF5\uAD6C \uAC00\uB2A5\uD569\uB2C8\uB2E4."}}},Lf={addButton:"\uC774\uC6A9\uAD8C \uCD94\uAC00\uD558\uAE30",couponButton:"\uCFE0\uD3F0 \uC785\uB825",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",segment:{personal:"\uB9D0\uADC0",org:"\uB9D0\uADC0\uB9E4\uB2C8\uC800"},org:{title:"\uD604\uC7AC \uC774\uC6A9\uAD8C",disc:"\uAE30\uAD00\uC5D0\uC11C \uC0AC\uC6A9 \uC911\uC778 \uC774\uC6A9\uAD8C \uC815\uBCF4\uC785\uB2C8\uB2E4.",empty:"\uB4F1\uB85D\uB41C \uAE30\uAD00 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",fallbackTitle:"\uAE30\uAD00 \uC774\uC6A9\uAD8C",startDate:"\uC2DC\uC791\uC77C",endDate:"\uB9CC\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04",duration:"\uC774\uC6A9 \uAE30\uAC04"},active:{infoTitle:"\uC774\uC6A9 \uC815\uBCF4",refund:"\uD658\uBD88 \uC694\uCCAD",startDate:"\uC0AC\uC6A9 \uC2DC\uC791\uC77C",endDate:"\uC885\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04"},pending:{title:"\uBCF4\uC720",empty:"\uB300\uAE30 \uC911\uC778 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."}},$f={profile:{planSuffix:"\uD50C\uB79C",plan:"\uD50C\uB79C"},basicInfo:{name:{placeholder:"\uD64D\uAE38\uB3D9"}},security:{title:"\uBCF4\uC548",password:{label:"\uBE44\uBC00\uBC88\uD638",currentRequired:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",newRequired:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",mismatch:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",changed:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},twoFactor:{label:"2\uB2E8\uACC4 \uC778\uC99D",sub:"\uACC4\uC815 \uBCF4\uC548\uC744 \uAC15\uD654\uD558\uC138\uC694"}}},Rf={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},Pf={settings:"\uC124\uC815",start:{title:"\uB2E8\uC5B4\uD6C8\uB828 \uC2DC\uC791",description:"\uC544\uB798 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD574 \uC2DC\uC791\uD558\uC138\uC694"},difficulty:{tooltip:"\uAC00\uC7A5 \uC26C\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uBB34\uC791\uC704', \uAC00\uC7A5 \uC5B4\uB824\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uCD08\uC131\uCC28\uC774' \uC785\uB2C8\uB2E4."},contrast:{label:"\uB300\uB9BD",type:"\uB300\uB9BD \uC885\uB958",count:"\uB300\uB9BD \uAC2F\uC218",n:"{{n}}\uAC1C"},filter:{random:"\uBB34\uC791\uC704",trainOnset:"\uCD08\uC131",trainVowel:"\uBAA8\uC74C",trainCoda:"\uC885\uC131",phonemeGroup:"\uD6C8\uB828 \uC74C\uC808",noLimit:"\uBB34\uAD00",codaExclude:"\uC81C\uC678",gradeLabel:"\uB4F1\uAE09",excludeImageInfo:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4.",sameStructureInfo:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694.",selectSection:"\uC120\uD0DD",excludeImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",sameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},noQuestions:"\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",countQuestions:"{{n}}\uBB38\uC81C",countSentences:"{{n}}\uBB38\uC7A5",comingSoon:"\uC900\uBE44 \uC911",nextQuestion:"\uB2E4\uC74C \uBB38\uC81C",noiseRatioTitle:"\uC18C\uC74C \uBE44\uC728",noiseRatioValue:"{{ratio}}\uBC30",noiseTypeTitle:"\uC18C\uC74C \uC885\uB958",playVolumeTitle:"\uC804\uCCB4 \uC18C\uB9AC",playSpeedTitle:"\uC7AC\uC0DD \uC18D\uB3C4",meter:{sentence:"\uC7AC\uC0DD",noise:"\uC18C\uC74C",toggle:"\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"},viewResult:"\uACB0\uACFC\uBCF4\uAE30",problemNotice:"{{n}}\uBC88 \uBB38\uC81C \uC785\uB2C8\uB2E4.",trainingSettingsTitle:"\uD6C8\uB828 \uC124\uC815",sentencePreview:"\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30",notHeard:"\uC548 \uB4E4\uB838\uC5B4\uC694.",heardWell:"\uC798 \uB4E4\uB838\uC5B4\uC694.",confirmTitle:"\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694.",noSoundWaveform:"\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",noise:{level:{none:"\uC5C6\uC74C",weak:"\uC57D\uD568",medium:"\uBCF4\uD1B5",strong:"\uAC15\uD568",veryStrong:"\uB9E4\uC6B0 \uAC15\uD568"},type:{none:"\uC5C6\uC74C",default:"\uAE30\uBCF8",street:"\uAE38\uAC70\uB9AC",buzz:"\uC640\uAE00\uC640\uAE00",restaurant:"\uC2DD\uB2F9"}},listenTitle:"\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694.",listenButton:"\uBB38\uC7A5 \uB4E3\uAE30",playSound:"\uC18C\uB9AC \uB4E3\uAE30",playAll:"\uBAA8\uB450 \uB4E3\uAE30",selectInOrder:"\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",stop:"\uC815\uC9C0",preview:"\uBBF8\uB9AC \uB4E3\uAE30",previewFor:"{{name}} \uBBF8\uB9AC \uB4E3\uAE30",stopFor:"{{name}} \uC815\uC9C0",next:"\uB2E4\uC74C",completed:"\uD6C8\uB828 \uC644\uB8CC",selected:"\uC120\uD0DD\uB428",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD",fontSizeMin:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.",fontSizeMax:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.",fontSizeDecrease:"\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C",fontSizeIncrease:"\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00",toggleBackground:"\uBC30\uACBD \uC804\uD658",cardInstructions:"\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694.",noCards:"\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",audioFetchError:"\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",ttsUnavailable:"\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",selectConfirm:"\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694.",orderListDefault:"\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694.",result:{pendingDone:"\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",eyebrow:"\uD6C8\uB828 \uC644\uB8CC",title:"\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.",scoreAria:"{{correct}} / {{total}} \uBB38\uD56D",elapsed:"\uC18C\uC694 \uC2DC\uAC04",summary:"{{correct}}\uAC1C\uC758 \uBB38\uD56D\uC744 \uC798 \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4.",tableAriaLabel:"\uBB38\uD56D\uBCC4 \uD310\uC815",colJudge:"\uD310\uC815",colAnswerSelected:"\uC815\uB2F5 \xB7 \uC120\uD0DD",colAnswer:"\uC815\uB2F5",colSelected:"\uC120\uD0DD",heardWell:"\uC798 \uB4E4\uC5C8\uC5B4\uC694",notHeard:"\uBABB \uB4E4\uC5C8\uC5B4\uC694",notJudged:"\uBBF8\uD310\uC815",replay:"\uB2E4\uC2DC\uD558\uAE30",done:"\uC644\uB8CC",viewResult:"\uACB0\uACFC \uD655\uC778",noContent:"(\uB0B4\uC6A9\uC5C6\uC74C)"},up:"\uC704\uB85C",down:"\uC544\uB798\uB85C",prev:"\uC774\uC804",listenLabel:"\uBB38\uC7A5 \uB4E3\uAE30",sourcePlay:"\uC18C\uC2A4 {{n}} \uC7AC\uC0DD",listen:"\uB4E3\uAE30",audioStatus:{idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026"}},Ff={totalCount:"\uAC1C\uC758 \uD6C8\uB828 \uBB36\uC74C",renameGroup:"\uADF8\uB8F9 \uC774\uB984 \uBC14\uAFB8\uAE30",itemCount:"\uD6C8\uB828 \uAC1C\uC218",menu:{edit:"\uD6C8\uB828 \uBB36\uC74C \uC218\uC815",rename:"\uC774\uB984 \uBC14\uAFB8\uAE30",move:"\uADF8\uB8F9 \uC774\uB3D9",duplicate:"\uD6C8\uB828 \uBB36\uC74C \uBCF5\uC0AC",publish:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30"},sort:{customers:"\uD6C8\uB828 \uACE0\uAC1D"},copyLink:"\uB9C1\uD06C \uBCF5\uC0AC",removeLink:"\uB9C1\uD06C \uC81C\uAC70",linkRemoved:"\uB9C1\uD06C\uAC00 \uC81C\uAC70\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",linkSaveFirst:"\uBA3C\uC800 \uD6C8\uB828 \uBB36\uC74C\uC744 \uC800\uC7A5\uD574\uC8FC\uC138\uC694.",linkSaveFirstHint:"\uC800\uC7A5\uB41C \uD6C8\uB828 \uBB36\uC74C\uC5D0\uC11C\uB9CC \uACF5\uC720 \uB9C1\uD06C\uB97C \uC0DD\uC131\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",linkCopySelect:"\uBCF5\uC0AC\uAC00 \uB9C9\uD600 \uB9C1\uD06C\uB97C \uC120\uD0DD\uD588\uC2B5\uB2C8\uB2E4. Ctrl/\u2318+C\uB85C \uBCF5\uC0AC\uD558\uC138\uC694.",nameRequired:"\uD6C8\uB828 \uBB36\uC74C \uC774\uB984\uC744 \uC785\uB825\uD574\uC8FC\uC138\uC694.",itemRequired:"\uD6C8\uB828\uC744 1\uAC1C \uC774\uC0C1 \uB2F4\uC544\uC8FC\uC138\uC694.",randomAdd:"\uBB34\uC791\uC704 \uCD94\uAC00"},If={totalCount:"\uBA85\uC758 \uACE0\uAC1D",loadError:"\uBAA9\uB85D\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",basicInfo:{editTooltip:"\uC218\uC815\uD558\uAE30"},member:{placeholder:"\uC774\uBA54\uC77C \uB610\uB294 \uC804\uD654",link:"\uC5F0\uACB0",linking:"\uC5F0\uACB0 \uC911\u2026"},device:{title:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30",addTooltip:"\uC0C8\uB85C \uC0DD\uC131",addButton:"\uAE30\uAE30 \uCD94\uAC00",listTooltip:"\uBAA9\uB85D \uBCF4\uAE30",listTitle:"\uCE21 \uAE30\uAE30 \uBAA9\uB85D",historyEmpty:"\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",wearing:"\uCE21 \uCC29\uC6A9\uC911",notRegistered:"\uBBF8\uB4F1\uB85D",unit:"\uAC1C",wearingNow:"\uCC29\uC6A9",wear:"\uCC29\uC6A9",unwear:"\uCC29\uC6A9 \uD574\uC81C",wornSince:"{{date}}\uBD80\uD130",release:"\uD574\uC81C",historyTitle:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30 \uC774\uB825"},schedule:{title:"\uBC29\uBB38 \uC608\uC815",addTooltip:"\uC608\uC815 \uB4F1\uB85D",listTooltip:"\uC804\uCCB4 \uBCF4\uAE30",empty:"\uC608\uC815\uB41C \uBC29\uBB38\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",registerTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC608\uC815 \uB4F1\uB85D",memoPlaceholder:"\uBC29\uBB38 \uC608\uC815 \uAD00\uB828 \uBA54\uBAA8\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694."},visitHistory:{title:"\uBC29\uBB38 \uC774\uB825",addTooltip:"\uC2E0\uADDC \uB4F1\uB85D",empty:"\uC544\uC9C1 \uBC29\uBB38 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",popupTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC774\uB825",registerTitle:" \uACE0\uAC1D\uB2D8 \uC2E0\uADDC \uBC29\uBB38 \uB4F1\uB85D"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uC0C1\uD669",active:"\uD65C\uC131",inactive:"\uBE44\uD65C\uC131",copy:"\uB9C1\uD06C \uBCF5\uC0AC",copied:"\uB9C1\uD06C\uAC00 \uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},moreItems:"\uB354 \uC788\uC74C",viewAll:"\uC804\uCCB4 \uBCF4\uAE30",visits:{title:"\uBC29\uBB38"},trainingRecord:{title:"\uACE0\uAC1D \uD6C8\uB828 \uAE30\uB85D"},status:{trainingSubtitle:"\uD6C8\uB828 \uD604\uD669"},detail:{session:{completedFmt:"\uC644\uB8CC {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:"\uC758 \uBC29\uBB38"},duration:{minSec:"{{m}}\uBD84 {{s}}\uCD08",min:"{{m}}\uBD84",sec:"{{s}}\uCD08"}},Of={plan:{recommendedFor:"\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.",features:"\uD575\uC2EC \uAE30\uB2A5",freePrice:"\uBB34\uB8CC",contact:"\uBB38\uC758\uD558\uAE30",tierFallback:"\uC774\uC6A9\uAD8C",openPromo:"\uC624\uD508 \uD2B9\uAC00"},products:{mgrEnterprise:{tier:{price:"\uBB38\uC758"}}}},Hf={title:"\uCFE0\uD3F0",subtitle:"\uCFE0\uD3F0 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uAC70\uB098 \uBCF4\uC720 \uCFE0\uD3F0\uC744 \uD655\uC778\uD558\uC138\uC694.",input:{label:"\uCFE0\uD3F0 \uCF54\uB4DC",placeholder:"\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"},applyButton:"\uC801\uC6A9",error:{invalid:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uCFE0\uD3F0 \uCF54\uB4DC\uC785\uB2C8\uB2E4.",alreadyUsed:"\uC774\uBBF8 \uC0AC\uC6A9\uB41C \uCFE0\uD3F0\uC785\uB2C8\uB2E4."},success:{applied:'"{{name}}" \uCFE0\uD3F0\uC774 \uC801\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.'},section:{owned:"\uBCF4\uC720 \uCFE0\uD3F0"},status:{used:"\uC0AC\uC6A9 \uC644\uB8CC",available:"\uC0AC\uC6A9 \uAC00\uB2A5"}},zf={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},Vf={subtitle:"\uC5C5\uCCB4 \uBC0F \uBC95\uC778 \uC815\uBCF4\uB97C \uAD00\uB9AC\uD558\uC138\uC694.",editButton:"\uC815\uBCF4 \uC218\uC815",basicInfo:{title:"\uAE30\uBCF8 \uC815\uBCF4"},contactInfo:{title:"\uC5F0\uB77D\uCC98 \uC815\uBCF4"}},Wf={title:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",subtitle:"\uC6D0\uD558\uB294 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD558\uC138\uC694.",listenInNoise:{title:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},shortStory:{title:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uC774\uD574\uD569\uB2C8\uB2E4."},longStory:{title:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uC9D1\uC911\uD574\uC11C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uD30C\uC545\uD569\uB2C8\uB2E4."},orderingSentence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uB4E4\uC740 \uBB38\uC7A5\uB4E4\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD569\uB2C8\uB2E4."},SAME_SOUND_PICK:{label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},SAME_OR_DIFF:{label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",sub:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},HEAR_AND_PICK_SAME:{label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},HEAR_AND_PICK_INCLUDED:{label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},STARTS_WITH_SAME_SOUND:{label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."},LISTEN_AND_REMEMBER_ORDER:{label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",sub:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."},MERGE_2_SYLLABLES:{label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_SYLLABLES:{label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_2_PHONEMES:{label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_PHONEMES:{label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_PART_FROM_COMPOUND:{label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84 \uD0C8\uB77D",sub:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",sub:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",sub:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"},CHANGE_1_SYLL_IN_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_SYLL_IN_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_1SYLL:{label:"1\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_2SYLL:{label:"2\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}},qf={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},Uf={colName:"\uB2E8\uC5B4\uD45C \uC774\uB984",open:"\uC5F4\uAE30",countSuffix:"\uAC1C\uC758 \uB2E8\uC5B4\uD45C",tab:{cards:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",tables:"\uB2E8\uC5B4\uD45C"},cardsEmpty:"\uC544\uC9C1 \uB9CC\uB4E0 \uB2E8\uC5B4\uD45C \uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",addCard:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC \uCD94\uAC00",menu:{publishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30",unpublishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0\uC11C \uB0B4\uB9AC\uAE30"},newBadge:"\uC0C8\uB85C \uB9CC\uB4E0 \uD45C",publishedBadge:"\uBC1C\uD589\uB428",sharedBadge:"\uACF5\uC720 \uC911"},Gf={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},Kf={defaultName:"\uB2E8\uC5B4 \uD45C",title:"\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30",subtitle:"\uCE78\uC744 \uC124\uC815\uD558\uACE0 \uB2E8\uC5B4\uB97C \uCD94\uAC00\uD558\uC5EC \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4.",filterTitle:"\uD45C \uC124\uC815",filter:{composition:"\uAD6C\uC131",image:"\uC774\uBBF8\uC9C0",word:"\uB2E8\uC5B4",standardPron:"\uD45C\uC900 \uBC1C\uC74C",colloquialPron:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",paperOrientation:"\uC6A9\uC9C0 \uBC29\uD5A5",landscape:"\uAC00\uB85C",portrait:"\uC138\uB85C",columns:"\uCE78 \uC218",column:"{{count}}\uCE78",itemsPerPageWord:"\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218",itemsPerPagePair:"\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218",itemsPerPageOption:"{{count}}\uAC1C",pageIndicator:"{{current}} / {{total}}",pageNumber:"\uD398\uC774\uC9C0 \uBC88\uD638",pageNumberLeft:"\uC67C\uCABD",pageNumberCenter:"\uC911\uC559",pageNumberRight:"\uC624\uB978\uCABD",border:"\uC678\uACFD\uC120",topInfo:"\uC0C1\uB2E8 \uC815\uBCF4",bottomInfo:"\uD558\uB2E8 \uC815\uBCF4",cutLine:"\uC808\uCDE8\uC120",show:"\uD45C\uC2DC",hide:"\uBBF8\uD45C\uC2DC",dotted:"\uC810\uC120",corner:"\uCF54\uB108"},addWord:"\uCD94\uAC00\uD558\uAE30",wordInfo:"{{word}} \uB0B1\uB9D0 \uC815\uBCF4",emptyItems:"\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694.",load:"\uBD88\uB7EC\uC624\uAE30",openNewWindow:"\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30",saveButton:"\uC800\uC7A5\uD558\uAE30",saveAsNewButton:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",print:"\uC778\uC1C4\uD558\uAE30",popupBlocked:"\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694.",printFileNameSingle:"\uB2E8\uC5B4\uD45C",printFileNamePair:"\uB300\uB9BD\uC30D\uD45C",save:{title:"\uB2E8\uC5B4\uD45C \uC800\uC7A5\uD558\uAE30",nameLabel:"\uC774\uB984",desc:"\uC800\uC7A5\uD560 \uB2E8\uC5B4 \uD45C\uC758 \uC774\uB984\uC744 \uC785\uB825\uD558\uC138\uC694.",placeholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694.",descriptionLabel:"\uC124\uBA85",descriptionPlaceholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694.",duplicateName:"\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4.",nameRequired:"\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694.",autoFillHint:" (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)",copyName:"{{name}} (\uBCF5\uC0AC)"},loadTable:{title:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C \uBD88\uB7EC\uC624\uAE30",empty:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",loadButton:"\uBD88\uB7EC\uC624\uAE30",itemCount:"{{count}}\uAC1C",deleteAriaLabel:"{{name}} \uC0AD\uC81C",viewLabel:"\uBCF4\uAE30 \uBC29\uC2DD",sortLabel:"\uC815\uB82C",sort:{newest:"\uCD5C\uC2E0\uC21C",oldest:"\uC624\uB798\uB41C\uC21C",name:"\uC774\uB984\uC21C",count:"\uB2E8\uC5B4 \uC218"},view:{grid:"\uD45C\uB85C \uBCF4\uAE30",list:"\uB9AC\uC2A4\uD2B8\uB85C \uBCF4\uAE30"}},publisherFilter:"{{name}} \uAC8C\uC2DC\uD55C \uAC83\uB9CC \uBCF4\uAE30",groupDeleteMessage:"\uADF8\uB8F9 \uB0B4 \uB2E8\uC5B4\uD45C\uB294 '\uADF8\uB8F9 \uC5C6\uC74C'\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4.",groupNamePlaceholder:"\uADF8\uB8F9 \uC774\uB984",store:{badge:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"},card:{sub:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",empty:"\uC774 \uCE74\uB4DC\uC5D0 \uB2E8\uC5B4\uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},toast:{renameError:"\uC774\uB984 \uBCC0\uACBD\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveError:"\uC800\uC7A5\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",deleteError:"\uC0AD\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",duplicateError:"\uBCF5\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveSuccess:"\uB2E8\uC5B4\uD45C\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},scoring:{o:"{{word}} \uB9DE\uC74C",triangle:"{{word}} \uC560\uB9E4",x:"{{word}} \uD2C0\uB9BC",markName:{o:"\uB9DE\uC74C",triangle:"\uC560\uB9E4",x:"\uD2C0\uB9BC"},button:"\uCC44\uC810\uD558\uAE30",pickTitle:"\uB204\uAD6C\uB97C \uCC44\uC810\uD560\uAE4C\uC694?",pickSubtitle:"\u2018{{name}}\u2019 \uD45C\uB85C \uD6C8\uB828\uD55C \uACE0\uAC1D\uC744 \uACE0\uB974\uC138\uC694.",pickSearch:"\uC774\uB984 \uB610\uB294 \uC804\uD654\uBC88\uD638\uB85C \uCC3E\uAE30",pickEmpty:"\uB4F1\uB85D\uB41C \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickNoMatch:"\uCC3E\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickAgain:"\uACE0\uAC1D \uB2E4\uC2DC \uACE0\uB974\uAE30",scoringFor:"{{name}} \uB2D8 \uCC44\uC810 \uC911",none:"\uCE78 \uC544\uB798 \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB20C\uB7EC \uB9E4\uAE30\uC138\uC694. \uB9C8\uC6B0\uC2A4\uB85C\uB294 \uCE78\uC5D0 \uC190\uC744 \uC5B9\uC73C\uBA74, \uC790\uD310\uC73C\uB85C\uB294 \uCE78\uC5D0 \uCD08\uC810\uC774 \uAC00\uBA74 \uB098\uD0C0\uB0A9\uB2C8\uB2E4.",tally:"{{marked}}\uCE78 \uCC44\uC810 \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 \uC815\uB2F5\uB960 {{rate}}%",save:"\uCC44\uC810 \uC800\uC7A5",saved:"{{name}} \uB2D8\uC758 \uCC44\uC810 {{count}}\uCE78\uC744 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.",reviewTitle:"\uBCF5\uC2B5\uD45C\uB97C \uB9CC\uB4E4\uAE4C\uC694?",reviewMessage:"{{name}} \uB2D8\uC774 \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC73C\uB85C \uC0C8 \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4. \uB9DE\uD78C \uCE78\uC740 \uBE60\uC9D1\uB2C8\uB2E4.",reviewConfirm:"\uBCF5\uC2B5\uD45C \uB9CC\uB4E4\uAE30",reviewDescription:"\u2018{{name}}\u2019 \uCC44\uC810\uC5D0\uC11C \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC744 \uBAA8\uC740 \uD45C\uC785\uB2C8\uB2E4.",reviewCreated:"\u2018{{name}}\u2019\uC744(\uB97C) \uB9CC\uB4E4\uC5C8\uC2B5\uB2C8\uB2E4 \u2014 {{count}}\uCE78.",discardTitle:"\uB9E4\uAE34 \uCC44\uC810\uC744 \uBC84\uB9B4\uAE4C\uC694?",discardMessage:"{{count}}\uCE78\uC744 \uB9E4\uACBC\uC9C0\uB9CC \uC544\uC9C1 \uC800\uC7A5\uD558\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \uB098\uAC00\uBA74 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",discardConfirm:"\uBC84\uB9AC\uACE0 \uB098\uAC00\uAE30"},info:{grade:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808",pos:"\uD488\uC0AC: {{v}}",wordType:"\uC720\uD615: {{v}}"},pos:{noun:"\uBA85\uC0AC",verb:"\uB3D9\uC0AC",adjective:"\uD615\uC6A9\uC0AC",adverb:"\uBD80\uC0AC",numeral:"\uC218\uC0AC",determiner:"\uAD00\uD615\uC0AC",interjection:"\uAC10\uD0C4\uC0AC",particle:"\uC870\uC0AC",affix:"\uC811\uC0AC",dependentNoun:"\uC758\uC874\uBA85\uC0AC",pronoun:"\uB300\uBA85\uC0AC",auxVerb:"\uBCF4\uC870\uB3D9\uC0AC",auxAdjective:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},reorder:{moved:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40",handle:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)",hint:"Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"}},Yf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB2E8\uC5B4\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},filterTitle:"\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815",filter:{positionAny:"\uBB34\uAD00",positionHead:"\uC5B4\uB450",positionMid:"\uC5B4\uC911",positionTail:"\uC5B4\uB9D0",difficulty:"\uB4F1\uAE09",grade:"{{n}}\uB4F1\uAE09",gradeNone:"\uC5C6\uC74C",syllables:"\uC74C\uC808 \uC218",syllable:"{{n}}\uC74C\uC808",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",pos:{noun:"\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)",verb:"\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)",modifier:"\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)"},wordType:"\uC720\uD615",field:"\uC758\uBBF8\uBC94\uC8FC",type:{native:"\uACE0\uC720\uC5B4",sino:"\uD55C\uC790\uC5B4",foreign:"\uC678\uB798\uC5B4",mixed:"\uD63C\uC885\uC5B4"},exclude:"\uC81C\uC678",excludeNoImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"},searchButton:"\uAC80\uC0C9\uD558\uAE30",resultUnit:"\uB2E8\uC5B4",remaining:"{{count}}\uAC1C \uB0A8\uC74C",resultDisc:"\uC6D0\uD558\uB294 {{unit}} \uC120\uD0DD\uD558\uC138\uC694. {{max}}\uAC1C\uAE4C\uC9C0 \uC120\uD0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. ({{selected}}/{{max}})",resultTitlePrefix:"\uCD1D ",resultTitleSuffix:"\uAC1C\uC758 {{unit}} \uAC80\uC0C9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",emptyResult:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",groupCount:"{{count}}\uAC1C",sort:{aria:"\uC815\uB82C",match:"\uC2DC\uC791 \uC6B0\uC120",ganada:"\uAC00\uB098\uB2E4\uC21C \u2191",ganadaDesc:"\uAC00\uB098\uB2E4\uC21C \u2193",syllable:"\uC74C\uC808 \uC218 \u2191",syllableDesc:"\uC74C\uC808 \uC218 \u2193",grade:"\uB4F1\uAE09\uC21C \u2191",gradeDesc:"\uB4F1\uAE09\uC21C \u2193",original:"\uBC1B\uC740 \uC21C\uC11C"},pageSize:"{{count}}\uAC1C\uC529 \uBCF4\uAE30",pageSizeAria:"\uD398\uC774\uC9C0 \uD06C\uAE30",popup:{title:"{{n}}\uBC88 \uCE78\uC5D0 \uB123\uC744 \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uC138\uC694"}},Zf={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},Xf={title:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uACE0 \uB4E3\uAE30 \uD6C8\uB828\uC744 \uC2DC\uC791\uD558\uC138\uC694.",noiseTitle:"\uC18C\uC74C \uD558 \uBB38\uC7A5\uB4E3\uAE30",shortStoryTitle:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",FOOD:"\uC74C\uC2DD",HLTH:"\uAC74\uAC15",WETH:"\uB0A0\uC528",PRSN:"\uC778\uBB3C",KRCT:"\uD55C\uAD6D\uBB38\uD654",STRY:"\uC774\uC57C\uAE30",LOCA:"\uC9C0\uC5ED",SOAR:"\uC0AC\uD68C\uC640 \uC608\uC220",NTSC:"\uC790\uC5F0\uACFC \uACFC\uD559",SPRT:"\uC2A4\uD3EC\uCE20",sub:{TRKRFD:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD",MDKRFD:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD",WRLDFD:"\uC138\uACC4\uC758 \uC74C\uC2DD",MTRFRT:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C",GEFDKL:"\uC74C\uC2DD \uC0C1\uC2DD",HTETHB:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00",DISILL:"\uBCD1\uACFC \uC9C8\uD658",EXCISE:"\uC6B4\uB3D9",GEHTKL:"\uAC74\uAC15\uC0C1\uC2DD",GESSKL:"\uACC4\uC808\uC0C1\uC2DD",SNWRAN:"\uB208\uACFC \uBE44",WTHFCT:"\uC77C\uAE30\uC608\uBCF4",GEWTKL:"\uB0A0\uC528\uC0C1\uC2DD",JODYPS:"\uC870\uC120\uC2DC\uB300",MDKRPS:"\uD55C\uAD6D \uADFC\uD604\uB300",THKDPS:"\uC0BC\uAD6D\uC2DC\uB300",WRLART:"\uC138\uACC4\uC758 \uC608\uC220\uAC00",WRLPSN:"\uC138\uACC4\uC758 \uC778\uBB3C",KRLANG:"\uC6B0\uB9AC\uB9D0",TRPLCT:"\uC804\uD1B5\uB180\uC774",HERITG:"\uBB38\uD654\uC7AC",EVTFES:"\uD589\uC0AC\uC640 \uCD95\uC81C",GECTKL:"\uC0C1\uC2DD",FRYTAL:"\uB3D9\uD654",AMZING:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30",DAYSTR:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30",KRLDMK:"\uD55C\uAD6D\uC758 \uBA85\uC18C",SELNMK:"\uC11C\uC6B8\uC758 \uBA85\uC18C",WRDTRB:"\uC138\uACC4\uC5EC\uD589",NAVIGT:"\uAE38 \uCC3E\uAE30",KRSOCI:"\uD55C\uAD6D",ECONEW:"\uACBD\uC81C\uC640 \uB274\uC2A4",GENART:"\uC608\uC220",GELFKL:"\uC0DD\uD65C \uC0C1\uC2DD",ANIMAL:"\uB3D9\uBB3C",PLANTS:"\uC2DD\uBB3C",ETHPLT:"\uC9C0\uAD6C",TOLELC:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488",GESCKL:"\uACFC\uD559\uC0C1\uC2DD",INVDSP:"\uAC1C\uC778\uACBD\uAE30",MARART:"\uACA9\uD22C\uAE30",TEAMSP:"\uB2E8\uCCB4\uACBD\uAE30",FOOTBL:"\uCD95\uAD6C",GESPKL:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}},Jf={maxUses:"\uCD5C\uB300 \uC0AC\uC6A9 \uD69F\uC218 (\uBE44\uC6CC\uB450\uBA74 \uBB34\uC81C\uD55C)",redirect:"\uC774\uB3D9\uD560 \uD398\uC774\uC9C0 URL (\uBE44\uC6CC\uB450\uBA74 \uC571 \uBA54\uC778)",creating:"\uC0DD\uC131 \uC911\u2026",create:"\uB9C1\uD06C \uC0DD\uC131",created:"\u2713 \uB9C1\uD06C\uAC00 \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4",copied:"\uBCF5\uC0AC\uB428!",copy:"\uBCF5\uC0AC",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",empty:"\uC0DD\uC131\uB41C \uB9C1\uD06C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",uses:"{{count}}\uD68C \uC0AC\uC6A9",expiresAt:"\uB9CC\uB8CC: {{date}}",createdAt:"\uC0DD\uC131: {{date}}",confirmDelete:"\uC0AD\uC81C\uD560\uAE4C\uC694?",deactivate:"\uBE44\uD65C\uC131\uD654",delete:"\uC0AD\uC81C",status:{active:"\uC720\uD6A8",expired:"\uB9CC\uB8CC",inactive:"\uBE44\uD65C\uC131"}},Qf={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},e2={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},t2={direction:{left:"\uC88C",right:"\uC6B0",label:"\uBC29\uD5A5"},wornDate:"\uCC29\uC6A9\uC77C",deviceType:"\uC885\uB958",brand:"\uBE0C\uB79C\uB4DC",fitType:"\uCC29\uC6A9\uD615\uD0DC",productName:"\uC81C\uD488\uBA85",validationError:{brandAndProduct:"\uBE0C\uB79C\uB4DC\uC640 \uC81C\uD488\uBA85\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."},addNew:"\uC0C8 \uAE30\uAE30 \uCD94\uAC00",selectFromList:"\uBAA9\uB85D\uC5D0\uC11C \uC120\uD0DD",removeDevice:"\uCC29\uC6A9 \uD574\uC81C",type:{hearingAid:"\uBCF4\uCCAD\uAE30",cochlearImplant:"\uC778\uACF5\uC640\uC6B0",other:"\uAE30\uD0C0"}},n2={stat:{totalCustomers:"\uCD1D \uACE0\uAC1D",monthlyVisits:"\uC774\uB2EC \uCD1D \uBC29\uBB38"},chart:{visitDetail:"\uC0C1\uC138 \uBC29\uBB38 \uD604\uD669",trainingDetail:"\uC0C1\uC138 \uD6C8\uB828 \uD604\uD669",weekly:"\uC8FC\uBCC4",daily:"\uC77C\uBCC4",periodMonth:"\uC6D4",periodWeek:"\uC8FC",weeklyPrefix:"\uC8FC\uAC04",monthlyPrefix:"\uC6D4\uAC04",visit:"\uBC29\uBB38",reservation:"\uC608\uC57D",trainingDone:"\uD6C8\uB828 \uC644\uB8CC",trainingInProgress:"\uD6C8\uB828 \uC911",weekRange:"{{start}}~{{end}}",week:"{{n}}\uC8FC"},subscriptionStatus:{active:"{{pct}}% \uD65C\uC131",expired:"{{pct}}% \uB9CC\uB8CC",unused:"{{pct}}% \uBBF8\uC0AC\uC6A9"}},a2={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB300\uB9BD\uC30D\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},phonemeSelect:{title:"\uC74C\uC18C \uC120\uD0DD",vs:"\uB300"},caution:"\uC720\uC758\uC0AC\uD56D",mode:{include:"\uC74C\uC18C \uD3EC\uD568",pick:"\uC74C\uC18C \uB300\uB9BD",contrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815",infoTitle:"\uB300\uB9BD \uBC29\uC2DD",infoInclude:"\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.",infoPick:"\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694.",infoContrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."},count:"{{n}}\uAC1C",countLabel:"\uC74C\uC18C \uAC1C\uC218",input:{char:"\uAE00\uC790 \uC120\uD0DD",pron:"\uBC1C\uC74C \uC120\uD0DD",infoTitle:"\uC785\uB825 \uBC29\uC2DD",infoChar:"\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.",infoPron:"\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."},phonemeN:"{{n}}\uBC88 \uC74C\uC808",phonemeSingleLabel:"\uC74C\uC808",phonemeContrastSingleLabel:"\uB300\uB9BD \uC74C\uC808",ordinals:["\uCCAB\uBC88\uC9F8","\uB450\uBC88\uC9F8","\uC138\uBC88\uC9F8","\uB124\uBC88\uC9F8"],phonemeOrdinalLabel:"{{ordinal}} \uC74C\uC808",phonemeContrastOrdinalLabel:"\uB300\uB9BD {{ordinal}} \uC74C\uC808",composition:"\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131",syllableCount:"\uC74C\uC808 \uC218",syllableN:"{{n}}\uC74C\uC808",syllableNPlus:"{{n}}\uC74C\uC808 \uC774\uC0C1",onset:"\uCD08\uC131",vowel:"\uBAA8\uC74C",coda:"\uC885\uC131",filter:{searchOptionsTitle:"\uB300\uB9BD \uC124\uC815",searchModeLabel:"\uB300\uB9BD \uBC29\uC2DD",countLabel:"\uC785\uB825 \uC74C\uC808 \uAC2F\uC218",inputModeLabel:"\uC785\uB825 \uBC29\uC2DD",phonemeOrder:"\uC785\uB825 \uC74C\uC808 \uC704\uCE58",phonemeOrderInfo:["\uC77C\uCE58: \uB300\uB9BD\uC30D\uC774 \uC815\uD655\uD788 \uAC19\uC740 \uC704\uCE58(\uC74C\uC808)\uC5D0\uC11C\uB9CC \uCC28\uC774 \uB098\uC57C \uB9E4\uCE6D\uB3FC\uC694.","\uBB34\uAD00: \uCC28\uC774 \uB098\uB294 \uC704\uCE58\uB294 \uC0C1\uAD00\uC5C6\uC774 \uB9E4\uCE6D\uB3FC\uC694."],orderAny:"\uBB34\uAD00",orderMatch:"\uC77C\uCE58",difficultyInfo:["1\uB4F1\uAE09 : \uD559\uB839\uC804\uAE30\uC5D0 \uC2B5\uB4DD\uD558\uC5EC \uD3C9\uC0DD\uC5D0 \uAC78\uCCD0 \uC77C\uC0C1 \uC5B8\uC5B4\uC0DD\uD65C\uC744 \uD558\uB294 \uB370 \uC0AC\uC6A9\uB418\uB294 \uC5B4\uD718","2\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 1-2\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","3\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 3-4\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","4\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 5-6\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","\uB4F1\uAE09\uC5C6\uC74C : \uAD6D\uB9BD\uAD6D\uC5B4\uC6D0 \uD45C\uC900 \uC5B4\uD718 \uC678 \uACE0\uBE48\uB3C4 \uC0DD\uD65C \uC5B4\uD718, \uC2E0\uC870\uC5B4 \uBC0F \uC678\uB798\uC5B4"],selectLabel:"\uC120\uD0DD",onlyHasImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",onlySameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},searchLabel:{error:"\uB370\uC774\uD130 \uBD88\uB7EC\uC624\uAE30 \uC2E4\uD328",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},confirmMessage:"\uC120\uD0DD\uD55C {{unit}} {{count}}\uAC1C\uB97C \uD3EC\uD568\uD55C \uB2E8\uC5B4 \uD45C \uC815\uBCF4\uAC00 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",resetOptions:"\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654",phonemeContrast:"\uB300\uB9BD {{n}}\uBC88 \uC74C\uC808",infoNotes:["\uBBF8\uB9AC\uBCF4\uAE30 \uAE00\uC790\uB294 \uC120\uD0DD\uD55C \uC74C\uC18C\uC758 \uC870\uD569 \uC608\uC2DC\uC785\uB2C8\uB2E4. \uC2E4\uC81C \uAC80\uC0C9\uC740 \uD574\uB2F9 \uC74C\uC18C\uAC00 \uD3EC\uD568\uB41C \uBAA8\uB4E0 \uB2E8\uC5B4\uB97C \uB300\uC0C1\uC73C\uB85C \uD569\uB2C8\uB2E4.","\uCD08\uC131 '\u3147'\uC740 \uC120\uD0DD\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E8\uC5B4 \uC55E\uC5D0 \uC624\uB294 \u3147\uC740 \uC2E4\uC9C8\uC801\uC73C\uB85C \uBB34\uC74C\uC774\uC5B4\uC11C \uB300\uB9BD\uC30D \uC131\uB9BD\uC5D0 \uC601\uD5A5\uC744 \uC8FC\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.","\uCD08\uC131\uACFC \uC885\uC131\uB9CC \uC120\uD0DD\uD558\uBA74 \uBAA8\uC74C\uC740 '\u314F'\uB85C \uC790\uB3D9 \uD45C\uC2DC\uB429\uB2C8\uB2E4.","\uC74C\uC18C \uAC1C\uC218\uB97C \uB298\uB9AC\uBA74 \uAC01 \uC74C\uC18C \uC0AC\uC774\uC758 \uB300\uB9BD\uC30D\uC744 \uAC80\uC0C9\uD569\uB2C8\uB2E4."]},r2={sentenceTyping:{roundCount:"{{rounds}}\uBB38\uC81C \xB7 \uBB38\uC81C\uB2F9 {{timeLimit}}\uCD08"},wordDefense:{me:"\uB098"},dictation:{title:"\uBC1B\uC544\uC4F0\uAE30",desc:"\uBB38\uC7A5\uC744 \uB4E3\uACE0 \uC815\uD655\uD788 \uBC1B\uC544\uC801\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC131 \uC7AC\uC0DD, \uC785\uB825 \uD544\uB4DC, \uC815\uB2F5 \uBE44\uAD50"},result:{heading:"{{number}}\uB2E8\uACC4 \uD574\uB2F5",retry:"\uB2E4\uC2DC \uD480\uAE30"},common:{accuracy:"{{pct}}% \uC815\uD655\uB3C4"},soundMatch:{title:"\uC18C\uB9AC \uB9E4\uCE6D",desc:"\uAC19\uC740 \uC18C\uB9AC\uB97C \uAC00\uC9C4 \uB2E8\uC5B4 \uB610\uB294 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB9E4\uCE6D\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uD50C\uB808\uC774 \uBC84\uD2BC, \uD0C0\uC774\uBA38, \uC810\uC218 \uC9D1\uACC4"},orderSequence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uD769\uC5B4\uC9C4 \uBB38\uC7A5 \uC870\uAC01\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uBB38\uC7A5 \uC138\uD2B8, \uC21C\uC11C \uD655\uC778 \uC778\uD130\uD398\uC774\uC2A4"},speedListen:{title:"\uC18D\uB3C4 \uB4E3\uAE30",desc:"\uC2DC\uAC04 \uC81C\uD55C \uB0B4\uC5D0 \uBB38\uC7A5\uC758 \uB2E8\uC5B4 \uC218\uB97C \uB9DE\uCD94\uB294 \uB3C4\uC804\uD615 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC81C\uD55C\uC2DC\uAC04, \uC810\uC218\uD310"},noiseChallenge:{title:"\uC18C\uC74C \uCC4C\uB9B0\uC9C0",desc:"\uBC30\uACBD \uC18C\uC74C \uC18D\uC5D0\uC11C \uBB38\uC7A5\uC744 \uBD84\uBCC4\uD558\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB2E4\uC591\uD55C \uC18C\uC74C \uB808\uBCA8, \uC810\uC218 \uC9D1\uACC4"},fastListen:{title:"\uBE60\uB978 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB4E4\uB824\uC8FC\uACE0 \uD575\uC2EC \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB09C\uC774\uB3C4\uBCC4 \uC18D\uB3C4, \uD0C0\uC774\uBA38"},shadowing:{title:"\uC250\uB3C4\uC789",desc:"\uBB38\uC7A5\uC744 \uB530\uB77C \uB9D0\uD558\uBA70 \uBC1C\uC74C\uACFC \uC5B5\uC591\uC744 \uC5F0\uC2B5\uD558\uB294 \uBAA8\uB4DC\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC7AC\uC0DD, \uB179\uC74C, \uBE44\uAD50 \uD53C\uB4DC\uBC31"},phonemeHunt:{title:"\uC74C\uC6B4 \uCC3E\uAE30",desc:"\uD2B9\uC815 \uC74C\uC6B4(\uBC1C\uC74C)\uC744 \uD3EC\uD568\uD55C \uB2E8\uC5B4\uB97C \uCC3E\uC544\uB0B4\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC6B4 \uD544\uD130, \uD78C\uD2B8 \uAE30\uB2A5"}},o2={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
847
|
+
`),this.name="StorageNotConfiguredError"}};function fC(e){CC(e)}function ai(e,t){if(!e)return null;const a=xa();return a?.resolvePath?a.resolvePath(e,t):t?`${t}/${e}.mp3`:null}async function ri(e){if(!e)return null;const t=xa();if(!t)throw new ni("getSignedOrPublicUrl");try{return await t.resolveUrl(e)}catch{return null}}async function oi(e){const t=xa();if(!t)throw new ni("downloadSound");return t.download(e)}function gC(){return xa()?.noiseBaseUrl??"/sounds/noise"}function bC(){const e=Number(xa()?.noiseFileGain);return Number.isFinite(e)&&e>0?e:1}function yC(e){const t=AbortSignal.timeout;if(typeof t=="function")return t.call(AbortSignal,e);const a=new AbortController;return setTimeout(()=>a.abort(),e),a.signal}const si="__ihab_core_tts_config__";function Ir(){return globalThis[si]?.urlResolver??null}function vC(){return globalThis[si]?.fallbackUrlResolver??null}const xC="__ihab_core_pronunciation_resolver__";function _C(){return globalThis[xC]??null}let $n=null;const _a=new WeakMap,Or=new WeakMap,Hr=new WeakMap;let ii=!1;const li=e=>Math.max(0,Math.min(1,Number.isFinite(e)?e:0));function wC(){if(ii||typeof document>"u")return;ii=!0;const e=()=>{try{$n&&$n.state!=="running"&&$n.resume()}catch{}};for(const t of["pointerdown","touchend","keydown"])document.addEventListener(t,e,{capture:!0,passive:!0})}function ui(){if($n)return $n;try{const e=window.AudioContext||window.webkitAudioContext;return e?($n=new e,wC(),$n):null}catch{return null}}function zr(){try{$n?.resume()}catch{}}function Vr(e,t){const a=_a.get(t);if(a)return a;try{const r=e.createMediaElementSource(t),i=e.createGain(),s=e.createAnalyser();s.fftSize=1024,s.smoothingTimeConstant=.6,i.gain.value=li(Or.get(t)??t.volume),r.connect(i),i.connect(s),i.connect(e.destination);try{t.volume=1}catch{}const l={gain:i,analyser:s};return _a.set(t,l),l}catch{return null}}function qa(e){if(!e)return Promise.resolve(null);const t=_a.get(e);if(t)return Promise.resolve(t.analyser);const a=ui();if(!a)return Promise.resolve(null);if(a.state==="running")return Promise.resolve(Vr(a,e)?.analyser??null);const r=Hr.get(e);if(r)return r;const i=Promise.resolve().then(()=>a.resume()).then(()=>a.state==="running"?Vr(a,e)?.analyser??null:null).catch(()=>null).finally(()=>{Hr.delete(e)});return Hr.set(e,i),i}function AC(e){if(!e)return null;const t=_a.get(e);if(t)return t.analyser;const a=ui();return a?a.state==="running"?Vr(a,e)?.analyser??null:(qa(e),null):null}function Rn(e,t){const a=li(t);Or.set(e,a);const r=_a.get(e);if(r){try{e.volume!==1&&(e.volume=1)}catch{}const i=r.gain.gain;try{const s=r.gain.context.currentTime;i.cancelScheduledValues(s),i.setTargetAtTime(a,s,.01)}catch{try{i.value=a}catch{}}return"gain"}try{e.volume=a}catch{}return"element"}function Ua(e){return Or.get(e)??e.volume}function BC(e,t){e.getFloatTimeDomainData(t);let a=0;for(let r=0;r<t.length;r++){const i=t[r];a+=i*i}return Math.sqrt(a/t.length)}const kC="__ihab_core_image_config__";function aa(){return globalThis[kC]??null}const ci="word_image_existence_map_v1";let qn=null;const Ga=new Map;function NC(){if(qn)return qn;try{const e=typeof localStorage<"u"?localStorage.getItem(ci):null,t=e?JSON.parse(e):null;qn=t&&typeof t=="object"&&!Array.isArray(t)?t:{}}catch{qn={}}return qn}let Wr=null;function EC(){Wr||(Wr=setTimeout(()=>{Wr=null;try{typeof localStorage<"u"&&qn&&localStorage.setItem(ci,JSON.stringify(qn))}catch{}},200))}function DC(e,t){return`${e}_${t??1}`}async function di(e,t){const a=NC(),r=DC(e,t);if(r in a)return a[r];if(Ga.has(r))return Ga.get(r);const i=aa();if(!i)return!1;const s=i(e,t);if(!s)return!1;const l=fetch(s,{method:"HEAD",signal:yC(8e3)}).then(u=>u.status>=500?null:u.ok,()=>null).then(u=>(Ga.delete(r),u===null?!1:(a[r]=u,EC(),u)));return Ga.set(r,l),l}const SC=["onset","vowel","coda","glide"],pi="none",jC={\uCD08\uC131:"onset",\uBAA8\uC74C:"vowel",\uC885\uC131:"coda",\uD65C\uC74C:"glide"},TC="\uC5C6\uC74C";function MC(e){return SC.includes(e)}function LC(e){const t={};for(const[a,r]of Object.entries(e)){const i=MC(a)?a:jC[a];i&&(t[i]=r===TC?pi:r)}return t}const $C={\u314F:{nucleus:"\u314F"},\u3151:{glide:"j",nucleus:"\u314F"},\u3153:{nucleus:"\u3153"},\u3155:{glide:"j",nucleus:"\u3153"},\u3157:{nucleus:"\u3157"},\u315B:{glide:"j",nucleus:"\u3157"},\u315C:{nucleus:"\u315C"},\u3160:{glide:"j",nucleus:"\u315C"},\u3161:{nucleus:"\u3161"},\u3163:{nucleus:"\u3163"},\u3150:{nucleus:"\u3154/\u3150"},\u3152:{glide:"j",nucleus:"\u3154/\u3150"},\u3154:{nucleus:"\u3154/\u3150"},\u3156:{glide:"j",nucleus:"\u3154/\u3150"},\u3158:{glide:"w",nucleus:"\u314F"},\u3159:{glide:"w",nucleus:"\u3154/\u3150"},\u315A:{glide:"w",nucleus:"\u3154/\u3150"},\u315D:{glide:"w",nucleus:"\u3153"},\u315E:{glide:"w",nucleus:"\u3154/\u3150"},\u315F:{glide:"w",nucleus:"\u3163"},\u3162:{glide:"\u0270",nucleus:"\u3163"}},mi=["\u3131","\u3132","\u3134","\u3137","\u3138","\u3139","\u3141","\u3142","\u3143","\u3145","\u3146","\u3147","\u3148","\u3149","\u314A","\u314B","\u314C","\u314D","\u314E"],hi=["\u314F","\u3150","\u3151","\u3152","\u3153","\u3154","\u3155","\u3156","\u3157","\u3158","\u3159","\u315A","\u315B","\u315C","\u315D","\u315E","\u315F","\u3160","\u3161","\u3162","\u3163"],RC=["","\u3131","\u3132","\u3133","\u3134","\u3135","\u3136","\u3137","\u3139","\u313A","\u313B","\u313C","\u313D","\u313E","\u313F","\u3140","\u3141","\u3142","\u3144","\u3145","\u3146","\u3147","\u3148","\u314A","\u314B","\u314C","\u314D","\u314E"];function wa(e){if(!e)return null;const t=e.charCodeAt(0)-44032;return t<0||t>=11172?null:{cho:Math.floor(t/588),jung:Math.floor(t%588/28),jong:t%28}}function PC(e){const t=wa(e[0]||"");return t?mi[t.cho]:""}function FC(e){if(!e)return()=>!0;e=e.normalize("NFC");const t=[...e],a=l=>mi.includes(l),r=l=>hi.includes(l),i=t.map(l=>a(l)?"cho":r(l)?"jung":wa(l)?"syl":"other"),s=t.map(l=>wa(l));if(i.includes("other")){const l=e.toLowerCase();return u=>u.normalize("NFC").toLowerCase().includes(l)}return l=>{const u=[...l.normalize("NFC")];for(let c=0;c+t.length<=u.length;c++){let d=!0;for(let m=0;m<t.length;m++){const p=u[c+m],C=i[m];if(C==="cho"){if(PC(p)!==t[m]){d=!1;break}}else if(C==="jung"){const y=wa(p);if(!y||hi[y.jung]!==t[m]){d=!1;break}}else{const y=s[m];if(y&&y.jong===0){const v=wa(p);if(!v||v.cho!==y.cho||v.jung!==y.jung){d=!1;break}}else if(p!==t[m]){d=!1;break}}}if(d)return!0}return!1}}const IC={3:["\u3131","\u3145"],5:["\u3134","\u3148"],6:["\u3134","\u314E"],9:["\u3139","\u3131"],10:["\u3139","\u3141"],11:["\u3139","\u3142"],12:["\u3139","\u3145"],13:["\u3139","\u314C"],14:["\u3139","\u314D"],15:["\u3139","\u314E"],18:["\u3142","\u3145"]};Object.fromEntries(Object.entries(IC).map(([e,t])=>[t.join(""),RC[Number(e)]]));const OC="word_pair_index_v2",HC="word_pair_index_sig_v2";let Ka=null;function zC(){try{if(typeof localStorage>"u")return null;const e=localStorage.getItem(OC),t=localStorage.getItem(HC);return!e||!t?null:{index:JSON.parse(e),sig:t}}catch{return null}}function VC(){if(Ka)return Ka;const e=zC();return e?(Ka=e.index,e.sig,Ka):null}function WC(e,t,a){return!(e>0)||!(t>0)?1:Math.max(1,Math.floor((e+a)/(t+a)))}function qC(e,t){if(!(e>0))return 1;const a=Math.max(1,Math.floor(t));if(e<=a)return e;const r=Math.ceil(e/a);return Math.max(1,Math.ceil(e/r))}const qr=/[ㄱ-ㅎ]/,UC=/[ㅏ-ㅣ]/;function Ci(e){e=e.normalize("NFC");for(let t=e.length-1;t>=0;t--){const a=e[t],r=a.charCodeAt(0);if(r>=44032&&r<=55203||qr.test(a)||UC.test(a))return a}return null}function GC(e){const t=Ci(e);if(!t)return"\uAC00";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC774":"\uAC00":qr.test(t)?"\uC774":"\uAC00"}function KC(e){return`${e}${GC(e)}`}function YC(e){const t=Ci(e);if(!t)return"\uB97C";const a=t.charCodeAt(0);return a>=44032&&a<=55203?(a-44032)%28!==0?"\uC744":"\uB97C":qr.test(t)?"\uC744":"\uB97C"}function ZC(e){return`${e}${YC(e)}`}function XC(e,t,a){const r=e.slice(),[i]=r.splice(t,1);return r.splice(a,0,i),r}function Aa(e,t=Math.random){const a=e.slice();for(let r=a.length-1;r>0;r--){const i=Math.floor(t()*(r+1));[a[r],a[i]]=[a[i],a[r]]}return a}const JC=()=>{const e="\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",t=typeof $t?.t=="function"?$t.t("common.unknownError",{defaultValue:e}):void 0;return typeof t=="string"&&t?t:e};function fi(e,t){if(t===void 0&&(t=JC()),e instanceof Error)return e.message||t;if(typeof e=="string")return e||t;if(e&&typeof e=="object"){const a=e;for(const r of[a.message,a.error_description,a.error])if(typeof r=="string"&&r)return r}return t}const QC="__ihab_core_word_pool__";function gi(){return globalThis[QC]??null}const bi=globalThis;function yi(e,t){const a=r=>{};try{const r=t();r&&typeof r.catch=="function"&&r.catch(a)}catch(r){a(r)}}function ef(e){yi("time",()=>bi.__ihabTrainingTimeLogger?.(e))}function tf(e){yi("completion",()=>bi.__ihabTrainingCompletionLogger?.(e))}function Ya(e){if(typeof e=="string"){const t=e.trim();return t?Number.isNaN(new Date(t).getTime())?null:t:null}if(e instanceof Date)return Number.isNaN(e.getTime())?null:e.toISOString();if(typeof e=="number"&&Number.isFinite(e)){const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toISOString()}return null}function Jt(e){return typeof e=="string"?e.trim()||null:typeof e=="number"?String(e):null}function nf(e){for(const t of["correct","isCorrect","heard","judgement"])if(typeof e[t]=="boolean")return e[t];return e.score===1?!0:e.score===0?!1:null}function af(e){return Array.isArray(e)?e.map((t,a)=>{const r=t??{};return{index:a,itemId:Jt(r.contextCode)??Jt(r.itemId)??Jt(r.itemCode)??Jt(r.id),question:Jt(r.question)??Jt(r.q)??Jt(r.sentence)??Jt(r.text)??Jt(r.prompt)??Jt(r.word)??Jt(r.targetSyllable),answer:Jt(r.answer),selected:Jt(r.selectedText)??Jt(r.selected),correct:nf(r),shownAt:Ya(r.shownAt)??Ya(r.shown_at),answeredAt:Ya(r.answeredAt)??Ya(r.answered_at)}}):[]}const Ur=globalThis;async function rf(){try{return await Ur.__ihabNoiseSettingsStore?.load()??null}catch{return null}}function vi(e){const t=a=>{};try{const a=Ur.__ihabNoiseSettingsStore?.save(e);a&&typeof a.catch=="function"&&a.catch(t)}catch(a){t(a)}}function Za(e){try{Ur.__ihabNoiseSettingsStore?.applied?.(e)}catch{}}async function of(e){if(typeof document<"u"){const t=document.activeElement;let a=null;try{if(a=document.createElement("textarea"),a.value=e,a.setAttribute("readonly",""),a.style.position="fixed",a.style.top="0",a.style.left="0",a.style.opacity="0",a.style.pointerEvents="none",document.body.appendChild(a),a.focus(),a.select(),a.setSelectionRange(0,e.length),document.execCommand("copy"))return!0}catch{}finally{if(a?.parentNode&&a.parentNode.removeChild(a),t&&t!==document.activeElement&&typeof t.focus=="function"&&t.isConnected)try{t.focus({preventScroll:!0})}catch{}}}try{if(typeof navigator<"u"&&navigator.clipboard&&typeof navigator.clipboard.writeText=="function")return await navigator.clipboard.writeText(e),!0}catch{}return!1}const sf="Asia/Seoul",lf=/^(\d{4}-\d{2}-\d{2})[T ](\d{2}:\d{2})(?::(\d{2})(?:\.(\d+))?)?$/;function Gr(e){let t;if(e instanceof Date)t=e;else if(typeof e=="string"){const a=e.trim(),r=lf.exec(a);t=new Date(r?`${r[1]}T${r[2]}:${r[3]??"00"}${r[4]?`.${r[4].slice(0,3).padEnd(3,"0")}`:""}+09:00`:a)}else t=new Date(e);return Number.isNaN(t.getTime())?null:t}const uf=e=>Gr(e);function xi(e,t){const a=t.startsWith("ko")?"ko-KR":"en-US",r=uf(e);return r?r.toLocaleDateString(a,{timeZone:sf,year:"numeric",month:"short",day:"numeric"}):""}function cf(e,t,a){if(!Number.isFinite(e)||!Number.isFinite(t)||t<1||t>12)return`${e}-${t}`;const r=a&&a.startsWith("ko")?"ko-KR":a||"en-US";return new Intl.DateTimeFormat(r,{year:"numeric",month:"long"}).format(new Date(e,t-1,1))}function Kr(e,t,a,r){return e("calendar.yearMonth",{year:a,month:r,defaultValue:""})||cf(a,r,t)}function Ba(){return Zr(new Date)}function Yr(e){return e&&/^\d{4}-\d{2}-\d{2}$/.test(e)?e:Ba()}function ra(){return pf(Ba())}const df=540*60*1e3;function _i(e,t,a){return new Date(Date.UTC(e,t,a)-df)}function pf(e){const[t,a,r]=e.split("-").map(Number);return new Date(t,(a||1)-1,r||1)}function Zr(e){if(e==null||e==="")return"";const t=Gr(e);return t?new Intl.DateTimeFormat("fr-CA",{timeZone:"Asia/Seoul"}).format(t):""}function wi(e,t){if(!e)return"";const a=Gr(e);if(!a)return"";const r=a.getTime(),i=Math.max(0,Math.floor((Date.now()-r)/1e3)),s=Math.floor(i/60),l=Math.floor(s/60),u=Math.floor(l/24),c=Math.floor(u/7),d=Math.floor(u/30),m=Math.floor(u/365);return s<1?t("store.time.justNow","\uBC29\uAE08 \uC804"):s<60?t("store.time.minutesAgo",{n:s}):l<24?t("store.time.hoursAgo",{n:l}):u<7?t("store.time.daysAgo",{n:u}):c<5?t("store.time.weeksAgo",{n:c}):u<365?t("store.time.monthsAgo",{n:Math.min(d,11)}):t("store.time.yearsAgo",{n:m})}function Ai(e,t={}){const{sep:a=".",pad:r=!0,trailingDot:i=!1,fallback:s="\u2014"}=t;if(!e)return s;const l=Zr(e instanceof Date?e:String(e));if(!l)return s;const[u,c,d]=l.split("-"),m=r?c:String(Number(c)),p=r?d:String(Number(d));return`${u}${a}${m}${a}${p}${i?".":""}`}function oa(e){if(!e)return e;const t=e.trim();return/^[₩$]/.test(t)?t:/원\s*$/.test(t)?"\u20A9"+t.replace(/\s*원\s*$/,"").trim():t}function Bi(e,t){if(!e)return"-";const a=/^(\d{1,2}):(\d{2})$/.exec(e.trim());if(!a)return e;const r=Number(a[1]),i=Number(a[2]),s=a[1].padStart(2,"0");return i===0?t("date.timeH",{h:r,hh:s,mm:a[2]}):t("date.timeHM",{h:r,hh:s,m:i,mm:a[2]})}function Xr(e){return(e??0).toLocaleString("ko-KR")}const mf=[{key:"FOOD",label:"\uC74C\uC2DD",icon:"salad",color:"#FF8A65",subs:[{key:"TRKRFD",label:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD"},{key:"MDKRFD",label:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD"},{key:"WRLDFD",label:"\uC138\uACC4\uC758 \uC74C\uC2DD"},{key:"MTRFRT",label:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C"},{key:"GEFDKL",label:"\uC74C\uC2DD \uC0C1\uC2DD"}]},{key:"HLTH",label:"\uAC74\uAC15",icon:"heart",color:"#66BB6A",subs:[{key:"HTETHB",label:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00"},{key:"DISILL",label:"\uBCD1\uACFC \uC9C8\uD658"},{key:"EXCISE",label:"\uC6B4\uB3D9"},{key:"GEHTKL",label:"\uAC74\uAC15\uC0C1\uC2DD"}]},{key:"WETH",label:"\uB0A0\uC528",icon:"sun-medium",color:"#42A5F5",subs:[{key:"GESSKL",label:"\uACC4\uC808\uC0C1\uC2DD"},{key:"SNWRAN",label:"\uB208\uACFC \uBE44"},{key:"WTHFCT",label:"\uC77C\uAE30\uC608\uBCF4"},{key:"GEWTKL",label:"\uB0A0\uC528\uC0C1\uC2DD"}]},{key:"PRSN",label:"\uC778\uBB3C",icon:"user-round",color:"#AB47BC",subs:[{key:"JODYPS",label:"\uC870\uC120\uC2DC\uB300"},{key:"MDKRPS",label:"\uD55C\uAD6D \uADFC\uD604\uB300"},{key:"THKDPS",label:"\uC0BC\uAD6D\uC2DC\uB300"},{key:"WRLART",label:"\uC138\uACC4\uC758 \uC608\uC220\uAC00"},{key:"WRLPSN",label:"\uC138\uACC4\uC758 \uC778\uBB3C"}]},{key:"KRCT",label:"\uD55C\uAD6D\uBB38\uD654",icon:"bow-arrow",color:"#EC407A",subs:[{key:"KRLANG",label:"\uC6B0\uB9AC\uB9D0"},{key:"TRPLCT",label:"\uC804\uD1B5\uB180\uC774"},{key:"HERITG",label:"\uBB38\uD654\uC7AC"},{key:"EVTFES",label:"\uD589\uC0AC\uC640 \uCD95\uC81C"},{key:"GECTKL",label:"\uC0C1\uC2DD"}]},{key:"STRY",label:"\uC774\uC57C\uAE30",icon:"message-circle",color:"#8D6E63",subs:[{key:"FRYTAL",label:"\uB3D9\uD654"},{key:"AMZING",label:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30"},{key:"DAYSTR",label:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30"}]},{key:"LOCA",label:"\uC9C0\uC5ED",icon:"map-pin",color:"#26A69A",subs:[{key:"KRLDMK",label:"\uD55C\uAD6D\uC758 \uBA85\uC18C"},{key:"SELNMK",label:"\uC11C\uC6B8\uC758 \uBA85\uC18C"},{key:"WRDTRB",label:"\uC138\uACC4\uC5EC\uD589"},{key:"NAVIGT",label:"\uAE38 \uCC3E\uAE30"}]},{key:"SOAR",label:"\uC0AC\uD68C\uC640 \uC608\uC220",icon:"landmark",color:"#5C6BC0",subs:[{key:"KRSOCI",label:"\uD55C\uAD6D"},{key:"ECONEW",label:"\uACBD\uC81C\uC640 \uB274\uC2A4"},{key:"GENART",label:"\uC608\uC220"},{key:"GELFKL",label:"\uC0DD\uD65C \uC0C1\uC2DD"}]},{key:"NTSC",label:"\uC790\uC5F0\uACFC \uACFC\uD559",icon:"leaf",color:"#9CCC65",subs:[{key:"ANIMAL",label:"\uB3D9\uBB3C"},{key:"PLANTS",label:"\uC2DD\uBB3C"},{key:"ETHPLT",label:"\uC9C0\uAD6C"},{key:"TOLELC",label:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488"},{key:"GESCKL",label:"\uACFC\uD559\uC0C1\uC2DD"}]},{key:"SPRT",label:"\uC2A4\uD3EC\uCE20",icon:"trophy",color:"#FFCA28",subs:[{key:"INVDSP",label:"\uAC1C\uC778\uACBD\uAE30"},{key:"MARART",label:"\uACA9\uD22C\uAE30"},{key:"TEAMSP",label:"\uB2E8\uCCB4\uACBD\uAE30"},{key:"FOOTBL",label:"\uCD95\uAD6C"},{key:"GESPKL",label:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}]}],hf=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",desc:"\uC18C\uC74C \uD658\uACBD \uC18D \uBB38\uC7A5 \uC774\uD574 \uD6C8\uB828"},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30 + 4\uBB38\uC81C"},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30 \uC2EC\uD654 \uD6C8\uB828"},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC21C\uC11C \uBC30\uC5F4 \uD6C8\uB828"}];function ki(){return mf}function Cf(){return hf}const ff=[],gf=[],bf=[],yf=[];function vf(){return{LISTEN_IN_NOISE:ff,SHORT_STORY:gf,LONG_STORY:bf,ORDERING_SENTENCE:yf}}const xf=[{key:"LISTEN_IN_NOISE",label:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",icon:"audio-lines",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},{key:"SHORT_STORY",label:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"LONG_STORY",label:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",icon:"message-square-text",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uB2E4\uC218\uC758 \uBB38\uC81C\uB97C \uD480\uC5B4\uBD05\uB2C8\uB2E4."},{key:"ORDERING_SENTENCE",label:"\uBB38\uC7A5 \uC21C\uC11C\uD654 \uD558\uAE30",icon:"align-start-vertical",desc:"\uC5EC\uB7EC\uAC1C\uC758 \uC9E7\uC740 \uBB38\uC7A5\uC744 \uB4E3\uACE0 \uAE30\uC5B5\uD558\uC5EC \uADF8 \uC21C\uC11C\uC5D0 \uB9DE\uAC8C \uBC30\uC5F4\uD569\uB2C8\uB2E4."}],Ni={LISTEN_IN_NOISE:"listenInNoise",SHORT_STORY:"shortStory",LONG_STORY:"longStory",ORDERING_SENTENCE:"orderingSentence"};function _f(e){return xf.map(t=>{const a=Ni[t.key];return a?{...t,label:e(`trainingType.${a}.title`),desc:e(`trainingType.${a}.desc`)}:t})}var wf={statusFilter:"\uC0C1\uD0DC \uD544\uD130",pageSizeSelect:"\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218",selectedCount:"{{count}}\uAC1C \uC120\uD0DD\uB428",selectedOfMax:"\uCD5C\uB300 {{max}}\uAC1C \uC911 {{count}}\uAC1C",cancel:"\uCDE8\uC18C",info:"\uC124\uBA85",errorState:{message:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",retry:"\uB2E4\uC2DC \uC2DC\uB3C4"},save:"\uC800\uC7A5",confirm:"\uD655\uC778",discardConfirm:{title:"\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?",body:"\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",confirm:"\uC785\uB825 \uCDE8\uC18C"},close:"\uB2EB\uAE30",back:"\uB4A4\uB85C",emptyTrainingName:"\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4.",remove:"\uC81C\uAC70",image:"\uC774\uBBF8\uC9C0",delete:"\uC0AD\uC81C",reset:"\uCD08\uAE30\uD654",update:"\uC5C5\uB370\uC774\uD2B8",download:"\uB2E4\uC6B4\uB85C\uB4DC",likeCount:"\uC88B\uC544\uC694 {{count}}",downloadCount:"\uAC00\uC838\uAC04 \uC218 {{count}}",descriptionFor:"{{name}} \uC124\uBA85",search:"\uAC80\uC0C9",empty:"\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",yes:"\uC608",no:"\uC544\uB2C8\uC624",all:"\uC804\uCCB4",none:"\uC5C6\uC74C",days:"{{count}}\uC77C",loadMore:"\uB354\uBCF4\uAE30",more:"\uB354\uBCF4\uAE30",moreFor:"{{name}} \uB354\uBCF4\uAE30",collapseFor:"{{name}} \uC811\uAE30",expandFor:"{{name}} \uD3BC\uCE58\uAE30",sortFor:"{{name}} \uC815\uB82C",retry:"\uB2E4\uC2DC \uC2DC\uB3C4",prevPage:"\uC774\uC804 \uD398\uC774\uC9C0",nextPage:"\uB2E4\uC74C \uD398\uC774\uC9C0",play:"\uC7AC\uC0DD",playFor:"{{name}} \uC7AC\uC0DD",pauseFor:"{{name}} \uBA48\uCDA4",pause:"\uBA48\uCDA4",playPause:"\uC7AC\uC0DD / \uBA48\uCDA4",replay:"\uB2E4\uC2DC\uB4E3\uAE30",subscription:"\uC774\uC6A9\uAD8C",done:"\uC644\uB8CC",failed:"\uC2E4\uD328",continue:"\uACC4\uC18D",notification:"\uC54C\uB9BC",emptyList:"\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",noMatches:"\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",menu:"\uBA54\uB274",resetSelection:"\uC120\uD0DD \uCD08\uAE30\uD654",pageSizeLabel:"{{n}}\uAC1C\uC529 \uBCF4\uAE30",totalCountPrefix:"\uCD1D ",totalCountSuffix:"\uAC1C",expand:"\uD3BC\uCE58\uAE30",collapse:"\uC811\uAE30",popup:"\uD31D\uC5C5",codeBlock:"\uCF54\uB4DC \uBE14\uB85D",totalPrefix:"\uCD1D ",copyCode:"\uCF54\uB4DC \uBCF5\uC0AC",copied:"\uBCF5\uC0AC\uB428",col:{problem:"\uBB38\uC81C"},phonetics:{place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"},vowel:{frontHigh:"\uC804\uC124 \uACE0\uBAA8\uC74C",backHighUnrounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C",backHighRounded:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C",frontMid:"\uC804\uC124 \uC911\uBAA8\uC74C",backMidUnrounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C",backMidRounded:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C",low:"\uC800\uBAA8\uC74C"},glide:{j:"j\uD65C\uC74C",w:"w\uD65C\uC74C",velar:"\u0270\uD65C\uC74C"}},unknownError:"\uC54C \uC218 \uC5C6\uB294 \uC624\uB958",networkError:"\uB124\uD2B8\uC6CC\uD06C \uC5F0\uACB0\uC774 \uBD88\uC548\uC815\uD569\uB2C8\uB2E4. \uC5F0\uACB0 \uC0C1\uD0DC\uB97C \uD655\uC778\uD55C \uB4A4 \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694."},Af={rangeSelect:"\uAE30\uAC04 \uC120\uD0DD",dow:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"],weekOrdinal:["\uCCAB\uC9F8","\uB458\uC9F8","\uC14B\uC9F8","\uB137\uC9F8","\uB2E4\uC12F\uC9F8","\uC5EC\uC12F\uC9F8","\uC77C\uACF1\uC9F8"],weekLabel:"{{ord}}\uC8FC",prevMonth:"\uC774\uC804 \uB2EC",addOnDate:"{{date}}\uC5D0 \uBC29\uBB38 \uB4F1\uB85D",nextMonth:"\uB2E4\uC74C \uB2EC",prevWeek:"\uC774\uC804 \uC8FC",nextWeek:"\uB2E4\uC74C \uC8FC",legend:{visited:"\uBC29\uBB38",scheduled:"\uC608\uC57D",noVisit:"\uBBF8\uBC29\uBB38"},periodSelect:"\uAE30\uAC04 \uB2E8\uC704",visitCount:"\uBC29\uBB38 {{count}}\uAC74",statusCount:"{{label}} {{count}}\uAC74"},Bf={planSuffix:"\uC774\uC6A9\uAD8C",labeledPlan:"{{label}} \uC774\uC6A9\uAD8C",couponCode:"\uC774\uC6A9\uAD8C \uCF54\uB4DC",specialLabel:"\uC624\uD508\uD2B9\uAC00",unitDay:"\uC77C",unitYear:"\uB144",remainingDay:"{{n}}\uC77C \uB0A8\uC74C",remainingHour:"{{n}}\uC2DC\uAC04 \uB0A8\uC74C",remainingMinute:"{{n}}\uBD84 \uB0A8\uC74C",remainingSecond:"{{n}}\uCD08 \uB0A8\uC74C",expired:"\uB9CC\uB8CC\uB428",menu:{use:"\uC0AC\uC6A9\uD558\uAE30",refund:"\uD658\uBD88\uD558\uAE30",delete:"\uC0AD\uC81C\uD558\uAE30"}},kf={clearAriaLabel:"\uAC80\uC0C9\uC5B4 \uC9C0\uC6B0\uAE30"},Nf={starLabel:"{{n}}\uBC88\uC9F8 \uBCC4 \uC120\uD0DD",valueLabel:"{{max}}\uC810 \uB9CC\uC810\uC5D0 {{value}}\uC810",groupLabel:"\uBCC4\uC810"},Ef={selected:"\uC120\uD0DD\uB428"},Df={placeholder:"\uC120\uD0DD"},Sf={collapse:"\uC811\uAE30",expand:"\uD3BC\uCE58\uAE30"},jf={biArea:"BI \uC601\uC5ED",biSymbol:"BI \uC2EC\uBCFC",logoMalgwi:"\uB9D0\uADC0 \uB85C\uACE0",logoManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0",menuOpen:"\uBA54\uB274 \uC5F4\uAE30",utilMenu:"\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274",menuClose:"\uBA54\uB274 \uB2EB\uAE30"},Tf={mainMenu:"\uBA54\uC778 \uBA54\uB274",bottomNav:"\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158",goToManager:"\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9",goToMalgwi:"\uB9D0\uADC0\uB85C \uC774\uB3D9",modeLabelManager:"\uB9D0\uADC0 \uB9E4\uB2C8\uC800",modeLabelMalgwi:"\uB9D0\uADC0",training:"\uD6C8\uB828",settings:"\uC124\uC815",notifications:"\uC54C\uB9BC",account:"\uACC4\uC815",help:"\uB3C4\uC6C0\uB9D0",feedback:"\uBC84\uADF8\uC2E0\uACE0",debug:"\uB514\uBC84\uADF8",coupons:"\uCFE0\uD3F0",topic:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",trainingType:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",wordPairs:"\uB300\uB9BD\uC30D \uCC3E\uAE30",wordSearch:"\uB2E8\uC5B4 \uCC3E\uAE30",wordTable:"\uB2E8\uC5B4\uD45C \uB9CC\uB4E4\uAE30",company:"\uC5C5\uCCB4\uC815\uBCF4",more:"\uB354\uBCF4\uAE30",moreMenu:"\uB354\uBCF4\uAE30 \uBA54\uB274",badgeLabel:"{{label}}, {{count}}\uAC1C",badgeInsideLabel:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"},Mf={language:{training:{label:"\uD6C8\uB828 \uC5B8\uC5B4",sub:"\uD6C8\uB828\uC5D0 \uC0AC\uC6A9\uB418\uB294 \uB2E8\uC5B4\uC640 \uC74C\uC131 \uC5B8\uC5B4"}},notifications:{title:"\uC54C\uB9BC"},display:{fontSize:{small:"\uC791\uAC8C",large:"\uD06C\uAC8C"}},cache:{title:"\uCE90\uC2DC \uAD00\uB9AC",confirmMessage:"\uCE90\uC2DC({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",delete:"\uC0AD\uC81C",deleting:"\uC0AD\uC81C \uC911",cleared:"\uCE90\uC2DC\uAC00 \uC0AD\uC81C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",group:{wordData:{label:"\uB2E8\uC5B4 \uB370\uC774\uD130",sub:"\uB2E8\uC5B4 \uBAA9\uB85D \uBC0F \uBC84\uC804 \uC815\uBCF4"},pairIndex:{label:"\uB2E8\uC5B4\uC30D \uC778\uB371\uC2A4",sub:"\uCD08\uC131\xB7\uC911\uC131\xB7\uC885\uC131 \uB300\uB9BD\uC30D \uBD84\uC11D \uCE90\uC2DC"},imageCache:{label:"\uC774\uBBF8\uC9C0 \uCE90\uC2DC",sub:"\uB2E8\uC5B4\uBCC4 \uC774\uBBF8\uC9C0 \uC874\uC7AC \uC5EC\uBD80 \uD655\uC778 \uACB0\uACFC"},trainingRecord:{label:"\uD6C8\uB828 \uAE30\uB85D",sub:"\uC624\uB298\uC758 \uD6C8\uB828 \uC9C4\uD589\uB960 \uBC0F \uD559\uC2B5 \uC77C\uC218"}}},button:{save:"\uC124\uC815 \uC800\uC7A5"},popup:{clear:{confirm:"\uCD08\uAE30\uD654"},update:{confirm:"\uC5C5\uB370\uC774\uD2B8"},cache:{title:"{{label}} \uC0AD\uC81C",message:"{{label}}({{size}})\uB97C \uC0AD\uC81C\uD569\uB2C8\uB2E4. \uACC4\uC18D\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?"}},saved:"\u2713 \uC800\uC7A5\uB428",account:{title:"\uACC4\uC815",delete:{sub:"\uD0C8\uD1F4 \uD6C4 30\uC77C \uC774\uB0B4 \uC7AC\uAC00\uC785 \uC2DC \uBCF5\uAD6C \uAC00\uB2A5\uD569\uB2C8\uB2E4."}}},Lf={addButton:"\uC774\uC6A9\uAD8C \uCD94\uAC00\uD558\uAE30",couponButton:"\uCFE0\uD3F0 \uC785\uB825",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",segment:{personal:"\uB9D0\uADC0",org:"\uB9D0\uADC0\uB9E4\uB2C8\uC800"},org:{title:"\uD604\uC7AC \uC774\uC6A9\uAD8C",disc:"\uAE30\uAD00\uC5D0\uC11C \uC0AC\uC6A9 \uC911\uC778 \uC774\uC6A9\uAD8C \uC815\uBCF4\uC785\uB2C8\uB2E4.",empty:"\uB4F1\uB85D\uB41C \uAE30\uAD00 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",fallbackTitle:"\uAE30\uAD00 \uC774\uC6A9\uAD8C",startDate:"\uC2DC\uC791\uC77C",endDate:"\uB9CC\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04",duration:"\uC774\uC6A9 \uAE30\uAC04"},active:{infoTitle:"\uC774\uC6A9 \uC815\uBCF4",refund:"\uD658\uBD88 \uC694\uCCAD",startDate:"\uC0AC\uC6A9 \uC2DC\uC791\uC77C",endDate:"\uC885\uB8CC\uC77C",remaining:"\uB0A8\uC740 \uAE30\uAC04"},pending:{title:"\uBCF4\uC720",empty:"\uB300\uAE30 \uC911\uC778 \uC774\uC6A9\uAD8C\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."}},$f={profile:{planSuffix:"\uD50C\uB79C",plan:"\uD50C\uB79C"},basicInfo:{name:{placeholder:"\uD64D\uAE38\uB3D9"}},security:{title:"\uBCF4\uC548",password:{label:"\uBE44\uBC00\uBC88\uD638",currentRequired:"\uD604\uC7AC \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",newRequired:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uB97C \uC785\uB825\uD558\uC138\uC694.",mismatch:"\uC0C8 \uBE44\uBC00\uBC88\uD638\uAC00 \uC77C\uCE58\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",changed:"\uBE44\uBC00\uBC88\uD638\uAC00 \uBCC0\uACBD\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},twoFactor:{label:"2\uB2E8\uACC4 \uC778\uC99D",sub:"\uACC4\uC815 \uBCF4\uC548\uC744 \uAC15\uD654\uD558\uC138\uC694"}}},Rf={guide:{faq:{title:"\uC790\uC8FC \uBB3B\uB294 \uC9C8\uBB38",desc:"FAQ \uBAA8\uC544\uBCF4\uAE30"}}},Pf={settings:"\uC124\uC815",start:{title:"\uB2E8\uC5B4\uD6C8\uB828 \uC2DC\uC791",description:"\uC544\uB798 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD574 \uC2DC\uC791\uD558\uC138\uC694"},difficulty:{tooltip:"\uAC00\uC7A5 \uC26C\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uBB34\uC791\uC704', \uAC00\uC7A5 \uC5B4\uB824\uC6B4 \uB09C\uC774\uB3C4\uB294 '\uCD08\uC131\uCC28\uC774' \uC785\uB2C8\uB2E4."},contrast:{label:"\uB300\uB9BD",type:"\uB300\uB9BD \uC885\uB958",count:"\uB300\uB9BD \uAC2F\uC218",n:"{{n}}\uAC1C"},filter:{random:"\uBB34\uC791\uC704",trainOnset:"\uCD08\uC131",trainVowel:"\uBAA8\uC74C",trainCoda:"\uC885\uC131",phonemeGroup:"\uD6C8\uB828 \uC74C\uC808",noLimit:"\uBB34\uAD00",codaExclude:"\uC81C\uC678",gradeLabel:"\uB4F1\uAE09",excludeImageInfo:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC: \uB2E8\uC5B4 \uC911\uC5D0 \uC774\uBBF8\uC9C0\uAC00 \uC788\uB294 \uB2E8\uC5B4\uB9CC \uACB0\uACFC\uC5D0 \uBCF4\uC5EC\uC90D\uB2C8\uB2E4.",sameStructureInfo:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC: \uC815\uB2F5\uACFC \uC624\uB2F5\uC758 \uC74C\uC808 \uAD6C\uC870(\uAE00\uC790 \uC218\xB7\uBC1B\uCE68 \uC720\uBB34 \uB4F1)\uAC00 \uAC19\uC740 \uACB0\uACFC\uB9CC \uB0A8\uACA8\uC694.",selectSection:"\uC120\uD0DD",excludeImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",sameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},noQuestions:"\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",countQuestions:"{{n}}\uBB38\uC81C",countSentences:"{{n}}\uBB38\uC7A5",comingSoon:"\uC900\uBE44 \uC911",nextQuestion:"\uB2E4\uC74C \uBB38\uC81C",noiseRatioTitle:"\uC18C\uC74C \uBE44\uC728",noiseRatioValue:"{{ratio}}\uBC30",noiseTypeTitle:"\uC18C\uC74C \uC885\uB958",playVolumeTitle:"\uC804\uCCB4 \uC18C\uB9AC",playSpeedTitle:"\uC7AC\uC0DD \uC18D\uB3C4",meter:{sentence:"\uC7AC\uC0DD",noise:"\uC18C\uC74C",toggle:"\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"},viewResult:"\uACB0\uACFC\uBCF4\uAE30",problemNotice:"{{n}}\uBC88 \uBB38\uC81C \uC785\uB2C8\uB2E4.",trainingSettingsTitle:"\uD6C8\uB828 \uC124\uC815",sentencePreview:"\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30",notHeard:"\uC548 \uB4E4\uB838\uC5B4\uC694.",heardWell:"\uC798 \uB4E4\uB838\uC5B4\uC694.",confirmTitle:"\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694.",noSoundWaveform:"\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.",noise:{level:{none:"\uC5C6\uC74C",weak:"\uC57D\uD568",medium:"\uBCF4\uD1B5",strong:"\uAC15\uD568",veryStrong:"\uB9E4\uC6B0 \uAC15\uD568"},type:{none:"\uC5C6\uC74C",default:"\uAE30\uBCF8",street:"\uAE38\uAC70\uB9AC",buzz:"\uC640\uAE00\uC640\uAE00",restaurant:"\uC2DD\uB2F9"}},listenTitle:"\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694.",listenButton:"\uBB38\uC7A5 \uB4E3\uAE30",playSound:"\uC18C\uB9AC \uB4E3\uAE30",playAll:"\uBAA8\uB450 \uB4E3\uAE30",selectInOrder:"\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.",stop:"\uC815\uC9C0",preview:"\uBBF8\uB9AC \uB4E3\uAE30",previewFor:"{{name}} \uBBF8\uB9AC \uB4E3\uAE30",stopFor:"{{name}} \uC815\uC9C0",next:"\uB2E4\uC74C",completed:"\uD6C8\uB828 \uC644\uB8CC",selected:"\uC120\uD0DD\uB428",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD",fontSizeMin:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.",fontSizeMax:"\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.",fontSizeDecrease:"\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C",fontSizeIncrease:"\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00",toggleBackground:"\uBC30\uACBD \uC804\uD658",cardInstructions:"\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694.",noCards:"\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",audioFetchError:"\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",ttsUnavailable:"\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",selectConfirm:"\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694.",orderListDefault:"\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694.",result:{pendingDone:"\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",eyebrow:"\uD6C8\uB828 \uC644\uB8CC",title:"\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.",scoreAria:"{{correct}} / {{total}} \uBB38\uD56D",elapsed:"\uC18C\uC694 \uC2DC\uAC04",summary:"{{correct}}\uAC1C\uC758 \uBB38\uD56D\uC744 \uC798 \uB4E4\uC5C8\uC2B5\uB2C8\uB2E4.",tableAriaLabel:"\uBB38\uD56D\uBCC4 \uD310\uC815",colJudge:"\uD310\uC815",colAnswerSelected:"\uC815\uB2F5 \xB7 \uC120\uD0DD",colAnswer:"\uC815\uB2F5",colSelected:"\uC120\uD0DD",heardWell:"\uC798 \uB4E4\uC5C8\uC5B4\uC694",notHeard:"\uBABB \uB4E4\uC5C8\uC5B4\uC694",notJudged:"\uBBF8\uD310\uC815",replay:"\uB2E4\uC2DC\uD558\uAE30",done:"\uC644\uB8CC",viewResult:"\uACB0\uACFC \uD655\uC778",noContent:"(\uB0B4\uC6A9\uC5C6\uC74C)"},up:"\uC704\uB85C",down:"\uC544\uB798\uB85C",prev:"\uC774\uC804",listenLabel:"\uBB38\uC7A5 \uB4E3\uAE30",sourcePlay:"\uC18C\uC2A4 {{n}} \uC7AC\uC0DD",listen:"\uB4E3\uAE30",audioStatus:{idle:"\uB300\uAE30",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026"}},Ff={totalCount:"\uAC1C\uC758 \uD6C8\uB828 \uBB36\uC74C",renameGroup:"\uADF8\uB8F9 \uC774\uB984 \uBC14\uAFB8\uAE30",itemCount:"\uD6C8\uB828 \uAC1C\uC218",menu:{edit:"\uD6C8\uB828 \uBB36\uC74C \uC218\uC815",rename:"\uC774\uB984 \uBC14\uAFB8\uAE30",move:"\uADF8\uB8F9 \uC774\uB3D9",duplicate:"\uD6C8\uB828 \uBB36\uC74C \uBCF5\uC0AC",publish:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30"},sort:{customers:"\uD6C8\uB828 \uACE0\uAC1D"},copyLink:"\uB9C1\uD06C \uBCF5\uC0AC",removeLink:"\uB9C1\uD06C \uC81C\uAC70",linkRemoved:"\uB9C1\uD06C\uAC00 \uC81C\uAC70\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",linkSaveFirst:"\uBA3C\uC800 \uD6C8\uB828 \uBB36\uC74C\uC744 \uC800\uC7A5\uD574\uC8FC\uC138\uC694.",linkSaveFirstHint:"\uC800\uC7A5\uB41C \uD6C8\uB828 \uBB36\uC74C\uC5D0\uC11C\uB9CC \uACF5\uC720 \uB9C1\uD06C\uB97C \uC0DD\uC131\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.",linkCopySelect:"\uBCF5\uC0AC\uAC00 \uB9C9\uD600 \uB9C1\uD06C\uB97C \uC120\uD0DD\uD588\uC2B5\uB2C8\uB2E4. Ctrl/\u2318+C\uB85C \uBCF5\uC0AC\uD558\uC138\uC694.",nameRequired:"\uD6C8\uB828 \uBB36\uC74C \uC774\uB984\uC744 \uC785\uB825\uD574\uC8FC\uC138\uC694.",itemRequired:"\uD6C8\uB828\uC744 1\uAC1C \uC774\uC0C1 \uB2F4\uC544\uC8FC\uC138\uC694.",randomAdd:"\uBB34\uC791\uC704 \uCD94\uAC00"},If={totalCount:"\uBA85\uC758 \uACE0\uAC1D",loadError:"\uBAA9\uB85D\uC744 \uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",basicInfo:{editTooltip:"\uC218\uC815\uD558\uAE30"},member:{placeholder:"\uC774\uBA54\uC77C \uB610\uB294 \uC804\uD654",link:"\uC5F0\uACB0",linking:"\uC5F0\uACB0 \uC911\u2026"},device:{title:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30",addTooltip:"\uC0C8\uB85C \uC0DD\uC131",addButton:"\uAE30\uAE30 \uCD94\uAC00",listTooltip:"\uBAA9\uB85D \uBCF4\uAE30",listTitle:"\uCE21 \uAE30\uAE30 \uBAA9\uB85D",historyEmpty:"\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",wearing:"\uCE21 \uCC29\uC6A9\uC911",notRegistered:"\uBBF8\uB4F1\uB85D",unit:"\uAC1C",wearingNow:"\uCC29\uC6A9",wear:"\uCC29\uC6A9",unwear:"\uCC29\uC6A9 \uD574\uC81C",wornSince:"{{date}}\uBD80\uD130",release:"\uD574\uC81C",historyTitle:"\uCCAD\uAC01\uC7AC\uD65C\uAE30\uAE30 \uC774\uB825"},schedule:{title:"\uBC29\uBB38 \uC608\uC815",addTooltip:"\uC608\uC815 \uB4F1\uB85D",listTooltip:"\uC804\uCCB4 \uBCF4\uAE30",empty:"\uC608\uC815\uB41C \uBC29\uBB38\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",registerTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC608\uC815 \uB4F1\uB85D",memoPlaceholder:"\uBC29\uBB38 \uC608\uC815 \uAD00\uB828 \uBA54\uBAA8\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694."},visitHistory:{title:"\uBC29\uBB38 \uC774\uB825",addTooltip:"\uC2E0\uADDC \uB4F1\uB85D",empty:"\uC544\uC9C1 \uBC29\uBB38 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",popupTitle:" \uACE0\uAC1D\uB2D8 \uBC29\uBB38 \uC774\uB825",registerTitle:" \uACE0\uAC1D\uB2D8 \uC2E0\uADDC \uBC29\uBB38 \uB4F1\uB85D"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uC0C1\uD669",active:"\uD65C\uC131",inactive:"\uBE44\uD65C\uC131",copy:"\uB9C1\uD06C \uBCF5\uC0AC",copied:"\uB9C1\uD06C\uAC00 \uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},moreItems:"\uB354 \uC788\uC74C",viewAll:"\uC804\uCCB4 \uBCF4\uAE30",visits:{title:"\uBC29\uBB38"},trainingRecord:{title:"\uACE0\uAC1D \uD6C8\uB828 \uAE30\uB85D"},status:{trainingSubtitle:"\uD6C8\uB828 \uD604\uD669"},detail:{session:{completedFmt:"\uC644\uB8CC {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:"\uC758 \uBC29\uBB38"},duration:{minSec:"{{m}}\uBD84 {{s}}\uCD08",min:"{{m}}\uBD84",sec:"{{s}}\uCD08"}},Of={plan:{recommendedFor:"\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.",features:"\uD575\uC2EC \uAE30\uB2A5",freePrice:"\uBB34\uB8CC",contact:"\uBB38\uC758\uD558\uAE30",tierFallback:"\uC774\uC6A9\uAD8C",openPromo:"\uC624\uD508 \uD2B9\uAC00"},products:{mgrEnterprise:{tier:{price:"\uBB38\uC758"}}}},Hf={title:"\uCFE0\uD3F0",subtitle:"\uCFE0\uD3F0 \uCF54\uB4DC\uB97C \uC785\uB825\uD558\uAC70\uB098 \uBCF4\uC720 \uCFE0\uD3F0\uC744 \uD655\uC778\uD558\uC138\uC694.",input:{label:"\uCFE0\uD3F0 \uCF54\uB4DC",placeholder:"\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"},applyButton:"\uC801\uC6A9",error:{invalid:"\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uCFE0\uD3F0 \uCF54\uB4DC\uC785\uB2C8\uB2E4.",alreadyUsed:"\uC774\uBBF8 \uC0AC\uC6A9\uB41C \uCFE0\uD3F0\uC785\uB2C8\uB2E4."},success:{applied:'"{{name}}" \uCFE0\uD3F0\uC774 \uC801\uC6A9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.'},section:{owned:"\uBCF4\uC720 \uCFE0\uD3F0"},status:{used:"\uC0AC\uC6A9 \uC644\uB8CC",available:"\uC0AC\uC6A9 \uAC00\uB2A5"}},zf={unitVisit:"\uAC74",periodAll:"\uC804\uCCB4",showN:"{{n}}\uAC1C\uC529"},Vf={subtitle:"\uC5C5\uCCB4 \uBC0F \uBC95\uC778 \uC815\uBCF4\uB97C \uAD00\uB9AC\uD558\uC138\uC694.",editButton:"\uC815\uBCF4 \uC218\uC815",basicInfo:{title:"\uAE30\uBCF8 \uC815\uBCF4"},contactInfo:{title:"\uC5F0\uB77D\uCC98 \uC815\uBCF4"}},Wf={title:"\uD6C8\uB828\uBCC4 \uB4E3\uAE30",subtitle:"\uC6D0\uD558\uB294 \uD6C8\uB828 \uC720\uD615\uC744 \uC120\uD0DD\uD558\uC138\uC694.",listenInNoise:{title:"\uC18C\uC74C \uD558 \uBB38\uC7A5 \uB4E3\uAE30",desc:"\uB2E4\uC591\uD55C \uC18C\uC74C \uD658\uACBD\uC5D0\uC11C \uBB38\uC7A5 \uCCAD\uB825\uC744 \uD6C8\uB828\uD569\uB2C8\uB2E4."},shortStory:{title:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uC774\uC57C\uAE30\uB97C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uC774\uD574\uD569\uB2C8\uB2E4."},longStory:{title:"\uAE34 \uC774\uC57C\uAE30 \uB4E3\uAE30",desc:"\uAE34 \uC774\uC57C\uAE30\uB97C \uC9D1\uC911\uD574\uC11C \uB4E3\uACE0 \uB0B4\uC6A9\uC744 \uD30C\uC545\uD569\uB2C8\uB2E4."},orderingSentence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uB4E4\uC740 \uBB38\uC7A5\uB4E4\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD569\uB2C8\uB2E4."},SAME_SOUND_PICK:{label:"\uAC19\uC740 \uC18C\uB9AC \uACE0\uB974\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC640 \uAC19\uC740 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},SAME_OR_DIFF:{label:"\uAC19\uC740\uC9C0 \uB2E4\uB978\uC9C0 \uB9DE\uD788\uAE30",sub:"\uB450 \uC18C\uB9AC\uAC00 \uAC19\uC740\uC9C0, \uB2E4\uB978\uC9C0 \uAD6C\uBD84\uD558\uC138\uC694."},HEAR_AND_PICK_SAME:{label:"\uC77C\uCE58\uD558\uB294 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC18C\uB9AC\uC758 \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},HEAR_AND_PICK_INCLUDED:{label:"\uD55C \uC74C\uC808 \uD3EC\uD568 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uC74C\uC808\uC774 \uD3EC\uD568\uB41C \uB2E8\uC5B4 \uCE74\uB4DC\uB97C \uACE0\uB974\uC138\uC694."},STARTS_WITH_SAME_SOUND:{label:"\uCCAB \uC74C\uC808\uC774 \uAC19\uC740 \uB2E8\uC5B4 \uB9DE\uD788\uAE30",sub:"\uB4E4\uC740 \uB2E8\uC5B4\uC640 \uAC19\uC740 \uC18C\uB9AC\uB85C \uC2DC\uC791\uD558\uB294 \uB2E8\uC5B4\uB97C \uACE0\uB974\uC138\uC694."},LISTEN_AND_REMEMBER_ORDER:{label:"\uB4E3\uACE0 \uC21C\uC11C\uB300\uB85C \uAE30\uC5B5\uD558\uAE30",sub:"\uC138 \uB2E8\uC5B4\uB97C \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694."},MERGE_2_SYLLABLES:{label:"\uC74C\uC808 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_SYLLABLES:{label:"\uC74C\uC808 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC808\uC744 \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},MERGE_2_PHONEMES:{label:"\uC74C\uC18C 2\uAC1C \uD569\uCE58\uAE30",sub:"\uB450 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},MERGE_3_PHONEMES:{label:"\uC74C\uC18C 3\uAC1C \uD569\uCE58\uAE30",sub:"\uC138 \uC74C\uC18C\uB97C \uD569\uCE58\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_1_FROM_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uD0C8\uB77D",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC5D0\uC11C \uD55C \uC74C\uC808\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},DROP_PART_FROM_COMPOUND:{label:"\uD569\uC131\uC5B4\uC5D0\uC11C \uBD80\uBD84 \uD0C8\uB77D",sub:"\uD569\uC131\uC5B4\uC758 \uC77C\uBD80\uB97C \uBE7C\uBA74 \uC5B4\uB5A4 \uB2E8\uC5B4\uAC00 \uB420\uAE4C\uC694?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"1\uC74C\uC808\uC5D0\uC11C \uBC1B\uCE68 \uD0C8\uB77D",sub:"\uBC1B\uCE68\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB420\uAE4C\uC694?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"1\uC74C\uC808\uC5D0\uC11C \uC790\uC74C \uD0C8\uB77D",sub:"\uC790\uC74C\uC744 \uBE7C\uBA74 \uC5B4\uB5A4 \uC18C\uB9AC\uAC00 \uB0A8\uC744\uAE4C\uC694?"},CHANGE_1_SYLL_IN_2SYLL:{label:"2\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_SYLL_IN_3SYLL:{label:"3\uC74C\uC808\uC5D0\uC11C \uD55C \uC74C\uC808 \uBC14\uAFB8\uAE30",sub:"3\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC808\uC744 \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_1SYLL:{label:"1\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"1\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uC18C\uB9AC\uB97C \uB9CC\uB4DC\uC138\uC694."},CHANGE_1_PHONEME_IN_2SYLL:{label:"2\uC74C\uC808 \uB2E8\uC5B4 \uC911 1\uAC1C \uC74C\uC18C \uBC14\uAFB8\uAE30",sub:"2\uC74C\uC808 \uB2E8\uC5B4\uC758 \uD55C \uC74C\uC18C\uB97C \uBC14\uAFD4 \uC0C8 \uB2E8\uC5B4\uB97C \uB9CC\uB4DC\uC138\uC694."}},qf={comingSoon:"\uB2E8\uC5B4\uD6C8\uB828 \uAE30\uB2A5\uC744 \uC900\uBE44 \uC911\uC785\uB2C8\uB2E4."},Uf={colName:"\uB2E8\uC5B4\uD45C \uC774\uB984",open:"\uC5F4\uAE30",countSuffix:"\uAC1C\uC758 \uB2E8\uC5B4\uD45C",tab:{cards:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",tables:"\uB2E8\uC5B4\uD45C"},cardsEmpty:"\uC544\uC9C1 \uB9CC\uB4E0 \uB2E8\uC5B4\uD45C \uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",addCard:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC \uCD94\uAC00",menu:{publishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uC62C\uB9AC\uAE30",unpublishStore:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0\uC11C \uB0B4\uB9AC\uAE30"},newBadge:"\uC0C8\uB85C \uB9CC\uB4E0 \uD45C",publishedBadge:"\uBC1C\uD589\uB428",sharedBadge:"\uACF5\uC720 \uC911"},Gf={title:"\uC8FC\uC694 \uB2E8\uC5B4",empty:"\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},Kf={defaultName:"\uB2E8\uC5B4 \uD45C",title:"\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30",subtitle:"\uCE78\uC744 \uC124\uC815\uD558\uACE0 \uB2E8\uC5B4\uB97C \uCD94\uAC00\uD558\uC5EC \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4.",filterTitle:"\uD45C \uC124\uC815",filter:{composition:"\uAD6C\uC131",image:"\uC774\uBBF8\uC9C0",word:"\uB2E8\uC5B4",standardPron:"\uD45C\uC900 \uBC1C\uC74C",colloquialPron:"\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C",paperOrientation:"\uC6A9\uC9C0 \uBC29\uD5A5",landscape:"\uAC00\uB85C",portrait:"\uC138\uB85C",columns:"\uCE78 \uC218",column:"{{count}}\uCE78",itemsPerPageWord:"\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218",itemsPerPagePair:"\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218",itemsPerPageOption:"{{count}}\uAC1C",pageIndicator:"{{current}} / {{total}}",pageNumber:"\uD398\uC774\uC9C0 \uBC88\uD638",pageNumberLeft:"\uC67C\uCABD",pageNumberCenter:"\uC911\uC559",pageNumberRight:"\uC624\uB978\uCABD",border:"\uC678\uACFD\uC120",topInfo:"\uC0C1\uB2E8 \uC815\uBCF4",bottomInfo:"\uD558\uB2E8 \uC815\uBCF4",cutLine:"\uC808\uCDE8\uC120",show:"\uD45C\uC2DC",hide:"\uBBF8\uD45C\uC2DC",dotted:"\uC810\uC120",corner:"\uCF54\uB108"},addWord:"\uCD94\uAC00\uD558\uAE30",wordInfo:"{{word}} \uB0B1\uB9D0 \uC815\uBCF4",emptyItems:"\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694.",load:"\uBD88\uB7EC\uC624\uAE30",openNewWindow:"\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30",saveButton:"\uC800\uC7A5\uD558\uAE30",saveAsNewButton:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",print:"\uC778\uC1C4\uD558\uAE30",popupBlocked:"\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694.",printFileNameSingle:"\uB2E8\uC5B4\uD45C",printFileNamePair:"\uB300\uB9BD\uC30D\uD45C",save:{title:"\uB2E8\uC5B4\uD45C \uC800\uC7A5\uD558\uAE30",nameLabel:"\uC774\uB984",desc:"\uC800\uC7A5\uD560 \uB2E8\uC5B4 \uD45C\uC758 \uC774\uB984\uC744 \uC785\uB825\uD558\uC138\uC694.",placeholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694.",descriptionLabel:"\uC124\uBA85",descriptionPlaceholder:"\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694.",duplicateName:"\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4.",nameRequired:"\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694.",autoFillHint:" (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)",copyName:"{{name}} (\uBCF5\uC0AC)"},loadTable:{title:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C \uBD88\uB7EC\uC624\uAE30",empty:"\uC800\uC7A5\uB41C \uB2E8\uC5B4 \uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",loadButton:"\uBD88\uB7EC\uC624\uAE30",itemCount:"{{count}}\uAC1C",deleteAriaLabel:"{{name}} \uC0AD\uC81C",viewLabel:"\uBCF4\uAE30 \uBC29\uC2DD",sortLabel:"\uC815\uB82C",sort:{newest:"\uCD5C\uC2E0\uC21C",oldest:"\uC624\uB798\uB41C\uC21C",name:"\uC774\uB984\uC21C",count:"\uB2E8\uC5B4 \uC218"},view:{grid:"\uD45C\uB85C \uBCF4\uAE30",list:"\uB9AC\uC2A4\uD2B8\uB85C \uBCF4\uAE30"}},publisherFilter:"{{name}} \uAC8C\uC2DC\uD55C \uAC83\uB9CC \uBCF4\uAE30",groupDeleteMessage:"\uADF8\uB8F9 \uB0B4 \uB2E8\uC5B4\uD45C\uB294 '\uADF8\uB8F9 \uC5C6\uC74C'\uC73C\uB85C \uC774\uB3D9\uD569\uB2C8\uB2E4.",groupNamePlaceholder:"\uADF8\uB8F9 \uC774\uB984",store:{badge:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"},card:{sub:"\uB2E8\uC5B4\uD45C \uCE74\uB4DC",empty:"\uC774 \uCE74\uB4DC\uC5D0 \uB2E8\uC5B4\uD45C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},toast:{renameError:"\uC774\uB984 \uBCC0\uACBD\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveError:"\uC800\uC7A5\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",deleteError:"\uC0AD\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",duplicateError:"\uBCF5\uC81C\uC5D0 \uC2E4\uD328\uD588\uC2B5\uB2C8\uB2E4",saveSuccess:"\uB2E8\uC5B4\uD45C\uAC00 \uC800\uC7A5\uB418\uC5C8\uC2B5\uB2C8\uB2E4."},scoring:{o:"{{word}} \uB9DE\uC74C",triangle:"{{word}} \uC560\uB9E4",x:"{{word}} \uD2C0\uB9BC",markName:{o:"\uB9DE\uC74C",triangle:"\uC560\uB9E4",x:"\uD2C0\uB9BC"},button:"\uCC44\uC810\uD558\uAE30",pickTitle:"\uB204\uAD6C\uB97C \uCC44\uC810\uD560\uAE4C\uC694?",pickSubtitle:"\u2018{{name}}\u2019 \uD45C\uB85C \uD6C8\uB828\uD55C \uACE0\uAC1D\uC744 \uACE0\uB974\uC138\uC694.",pickSearch:"\uC774\uB984 \uB610\uB294 \uC804\uD654\uBC88\uD638\uB85C \uCC3E\uAE30",pickEmpty:"\uB4F1\uB85D\uB41C \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickNoMatch:"\uCC3E\uB294 \uACE0\uAC1D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",pickAgain:"\uACE0\uAC1D \uB2E4\uC2DC \uACE0\uB974\uAE30",scoringFor:"{{name}} \uB2D8 \uCC44\uC810 \uC911",none:"\uCE78 \uC544\uB798 \u25CB \xB7 \u25B3 \xB7 \u2715 \uB97C \uB20C\uB7EC \uB9E4\uAE30\uC138\uC694. \uB9C8\uC6B0\uC2A4\uB85C\uB294 \uCE78\uC5D0 \uC190\uC744 \uC5B9\uC73C\uBA74, \uC790\uD310\uC73C\uB85C\uB294 \uCE78\uC5D0 \uCD08\uC810\uC774 \uAC00\uBA74 \uB098\uD0C0\uB0A9\uB2C8\uB2E4.",tally:"{{marked}}\uCE78 \uCC44\uC810 \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 \uC815\uB2F5\uB960 {{rate}}%",save:"\uCC44\uC810 \uC800\uC7A5",saved:"{{name}} \uB2D8\uC758 \uCC44\uC810 {{count}}\uCE78\uC744 \uC800\uC7A5\uD588\uC2B5\uB2C8\uB2E4.",reviewTitle:"\uBCF5\uC2B5\uD45C\uB97C \uB9CC\uB4E4\uAE4C\uC694?",reviewMessage:"{{name}} \uB2D8\uC774 \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC73C\uB85C \uC0C8 \uD45C\uB97C \uB9CC\uB4ED\uB2C8\uB2E4. \uB9DE\uD78C \uCE78\uC740 \uBE60\uC9D1\uB2C8\uB2E4.",reviewConfirm:"\uBCF5\uC2B5\uD45C \uB9CC\uB4E4\uAE30",reviewDescription:"\u2018{{name}}\u2019 \uCC44\uC810\uC5D0\uC11C \uD2C0\uB9AC\uAC70\uB098 \uC560\uB9E4\uD588\uB358 {{count}}\uCE78\uC744 \uBAA8\uC740 \uD45C\uC785\uB2C8\uB2E4.",reviewCreated:"\u2018{{name}}\u2019\uC744(\uB97C) \uB9CC\uB4E4\uC5C8\uC2B5\uB2C8\uB2E4 \u2014 {{count}}\uCE78.",discardTitle:"\uB9E4\uAE34 \uCC44\uC810\uC744 \uBC84\uB9B4\uAE4C\uC694?",discardMessage:"{{count}}\uCE78\uC744 \uB9E4\uACBC\uC9C0\uB9CC \uC544\uC9C1 \uC800\uC7A5\uD558\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4. \uB098\uAC00\uBA74 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",discardConfirm:"\uBC84\uB9AC\uACE0 \uB098\uAC00\uAE30"},info:{grade:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09",syllables:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808",pos:"\uD488\uC0AC: {{v}}",wordType:"\uC720\uD615: {{v}}"},pos:{noun:"\uBA85\uC0AC",verb:"\uB3D9\uC0AC",adjective:"\uD615\uC6A9\uC0AC",adverb:"\uBD80\uC0AC",numeral:"\uC218\uC0AC",determiner:"\uAD00\uD615\uC0AC",interjection:"\uAC10\uD0C4\uC0AC",particle:"\uC870\uC0AC",affix:"\uC811\uC0AC",dependentNoun:"\uC758\uC874\uBA85\uC0AC",pronoun:"\uB300\uBA85\uC0AC",auxVerb:"\uBCF4\uC870\uB3D9\uC0AC",auxAdjective:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},reorder:{moved:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40",handle:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)",hint:"Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"}},Yf={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB2E8\uC5B4\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},filterTitle:"\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815",filter:{positionAny:"\uBB34\uAD00",positionHead:"\uC5B4\uB450",positionMid:"\uC5B4\uC911",positionTail:"\uC5B4\uB9D0",difficulty:"\uB4F1\uAE09",grade:"{{n}}\uB4F1\uAE09",gradeNone:"\uC5C6\uC74C",syllables:"\uC74C\uC808 \uC218",syllable:"{{n}}\uC74C\uC808",syllable5plus:"5\uC74C\uC808 \uC774\uC0C1",partOfSpeech:"\uD488\uC0AC",pos:{noun:"\uCCB4\uC5B8(\uBA85\uC0AC, \uC218\uC0AC)",verb:"\uC6A9\uC5B8(\uB3D9\uC0AC, \uD615\uC6A9\uC0AC)",modifier:"\uC218\uC2DD\uC5B8(\uBD80\uC0AC, \uAD00\uD615\uC0AC)"},wordType:"\uC720\uD615",field:"\uC758\uBBF8\uBC94\uC8FC",type:{native:"\uACE0\uC720\uC5B4",sino:"\uD55C\uC790\uC5B4",foreign:"\uC678\uB798\uC5B4",mixed:"\uD63C\uC885\uC5B4"},exclude:"\uC81C\uC678",excludeNoImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"},searchButton:"\uAC80\uC0C9\uD558\uAE30",resultUnit:"\uB2E8\uC5B4",remaining:"{{count}}\uAC1C \uB0A8\uC74C",resultDisc:"\uC6D0\uD558\uB294 {{unit}} \uC120\uD0DD\uD558\uC138\uC694. {{max}}\uAC1C\uAE4C\uC9C0 \uC120\uD0DD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4. ({{selected}}/{{max}})",resultTitlePrefix:"\uCD1D ",resultTitleSuffix:"\uAC1C\uC758 {{unit}} \uAC80\uC0C9\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",emptyResult:"\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",groupCount:"{{count}}\uAC1C",sort:{aria:"\uC815\uB82C",match:"\uC2DC\uC791 \uC6B0\uC120",ganada:"\uAC00\uB098\uB2E4\uC21C \u2191",ganadaDesc:"\uAC00\uB098\uB2E4\uC21C \u2193",syllable:"\uC74C\uC808 \uC218 \u2191",syllableDesc:"\uC74C\uC808 \uC218 \u2193",grade:"\uB4F1\uAE09\uC21C \u2191",gradeDesc:"\uB4F1\uAE09\uC21C \u2193",original:"\uBC1B\uC740 \uC21C\uC11C"},pageSize:"{{count}}\uAC1C\uC529 \uBCF4\uAE30",pageSizeAria:"\uD398\uC774\uC9C0 \uD06C\uAE30",popup:{title:"{{n}}\uBC88 \uCE78\uC5D0 \uB123\uC744 \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uC138\uC694"}},Zf={clearAllSelection:"\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C",divLine:"\uB300\uB9BD\uC120",removePair:"\uB300\uB9BD\uC30D \uBE7C\uAE30",removeWord:"\uB2E8\uC5B4 \uBE7C\uAE30"},Xf={title:"\uC8FC\uC81C\uBCC4 \uB4E3\uAE30",subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uACE0 \uB4E3\uAE30 \uD6C8\uB828\uC744 \uC2DC\uC791\uD558\uC138\uC694.",noiseTitle:"\uC18C\uC74C \uD558 \uBB38\uC7A5\uB4E3\uAE30",shortStoryTitle:"\uC9E7\uC740 \uC774\uC57C\uAE30 \uB4E3\uAE30",FOOD:"\uC74C\uC2DD",HLTH:"\uAC74\uAC15",WETH:"\uB0A0\uC528",PRSN:"\uC778\uBB3C",KRCT:"\uD55C\uAD6D\uBB38\uD654",STRY:"\uC774\uC57C\uAE30",LOCA:"\uC9C0\uC5ED",SOAR:"\uC0AC\uD68C\uC640 \uC608\uC220",NTSC:"\uC790\uC5F0\uACFC \uACFC\uD559",SPRT:"\uC2A4\uD3EC\uCE20",sub:{TRKRFD:"\uD55C\uAD6D \uC804\uD1B5\uC74C\uC2DD",MDKRFD:"\uD55C\uAD6D \uD604\uB300\uC74C\uC2DD",WRLDFD:"\uC138\uACC4\uC758 \uC74C\uC2DD",MTRFRT:"\uC2DD\uC7AC\uB8CC\uC640 \uACFC\uC77C",GEFDKL:"\uC74C\uC2DD \uC0C1\uC2DD",HTETHB:"\uAC74\uAC15\uD55C \uC2DD\uC2B5\uAD00",DISILL:"\uBCD1\uACFC \uC9C8\uD658",EXCISE:"\uC6B4\uB3D9",GEHTKL:"\uAC74\uAC15\uC0C1\uC2DD",GESSKL:"\uACC4\uC808\uC0C1\uC2DD",SNWRAN:"\uB208\uACFC \uBE44",WTHFCT:"\uC77C\uAE30\uC608\uBCF4",GEWTKL:"\uB0A0\uC528\uC0C1\uC2DD",JODYPS:"\uC870\uC120\uC2DC\uB300",MDKRPS:"\uD55C\uAD6D \uADFC\uD604\uB300",THKDPS:"\uC0BC\uAD6D\uC2DC\uB300",WRLART:"\uC138\uACC4\uC758 \uC608\uC220\uAC00",WRLPSN:"\uC138\uACC4\uC758 \uC778\uBB3C",KRLANG:"\uC6B0\uB9AC\uB9D0",TRPLCT:"\uC804\uD1B5\uB180\uC774",HERITG:"\uBB38\uD654\uC7AC",EVTFES:"\uD589\uC0AC\uC640 \uCD95\uC81C",GECTKL:"\uC0C1\uC2DD",FRYTAL:"\uB3D9\uD654",AMZING:"\uC2E0\uAE30\uD55C \uC774\uC57C\uAE30",DAYSTR:"\uC77C\uC0C1 \uC18D \uC774\uC57C\uAE30",KRLDMK:"\uD55C\uAD6D\uC758 \uBA85\uC18C",SELNMK:"\uC11C\uC6B8\uC758 \uBA85\uC18C",WRDTRB:"\uC138\uACC4\uC5EC\uD589",NAVIGT:"\uAE38 \uCC3E\uAE30",KRSOCI:"\uD55C\uAD6D",ECONEW:"\uACBD\uC81C\uC640 \uB274\uC2A4",GENART:"\uC608\uC220",GELFKL:"\uC0DD\uD65C \uC0C1\uC2DD",ANIMAL:"\uB3D9\uBB3C",PLANTS:"\uC2DD\uBB3C",ETHPLT:"\uC9C0\uAD6C",TOLELC:"\uB3C4\uAD6C\uC640 \uC804\uC790\uC81C\uD488",GESCKL:"\uACFC\uD559\uC0C1\uC2DD",INVDSP:"\uAC1C\uC778\uACBD\uAE30",MARART:"\uACA9\uD22C\uAE30",TEAMSP:"\uB2E8\uCCB4\uACBD\uAE30",FOOTBL:"\uCD95\uAD6C",GESPKL:"\uC2A4\uD3EC\uCE20 \uC0C1\uC2DD"}},Jf={maxUses:"\uCD5C\uB300 \uC0AC\uC6A9 \uD69F\uC218 (\uBE44\uC6CC\uB450\uBA74 \uBB34\uC81C\uD55C)",redirect:"\uC774\uB3D9\uD560 \uD398\uC774\uC9C0 URL (\uBE44\uC6CC\uB450\uBA74 \uC571 \uBA54\uC778)",creating:"\uC0DD\uC131 \uC911\u2026",create:"\uB9C1\uD06C \uC0DD\uC131",created:"\u2713 \uB9C1\uD06C\uAC00 \uC0DD\uC131\uB418\uC5C8\uC2B5\uB2C8\uB2E4",copied:"\uBCF5\uC0AC\uB428!",copy:"\uBCF5\uC0AC",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026",empty:"\uC0DD\uC131\uB41C \uB9C1\uD06C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",uses:"{{count}}\uD68C \uC0AC\uC6A9",expiresAt:"\uB9CC\uB8CC: {{date}}",createdAt:"\uC0DD\uC131: {{date}}",confirmDelete:"\uC0AD\uC81C\uD560\uAE4C\uC694?",deactivate:"\uBE44\uD65C\uC131\uD654",delete:"\uC0AD\uC81C",status:{active:"\uC720\uD6A8",expired:"\uB9CC\uB8CC",inactive:"\uBE44\uD65C\uC131"}},Qf={passwordPlaceholder:"\uBE44\uBC00\uBC88\uD638 \uC785\uB825"},e2={subtitle:"\uC8FC\uC81C\uB97C \uC120\uD0DD\uD558\uC5EC \uB4E3\uAE30 \uC5F0\uC2B5\uC744 \uC9C4\uD589\uD558\uC138\uC694."},t2={direction:{left:"\uC88C",right:"\uC6B0",label:"\uBC29\uD5A5"},wornDate:"\uCC29\uC6A9\uC77C",deviceType:"\uC885\uB958",brand:"\uBE0C\uB79C\uB4DC",fitType:"\uCC29\uC6A9\uD615\uD0DC",productName:"\uC81C\uD488\uBA85",validationError:{brandAndProduct:"\uBE0C\uB79C\uB4DC\uC640 \uC81C\uD488\uBA85\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."},addNew:"\uC0C8 \uAE30\uAE30 \uCD94\uAC00",selectFromList:"\uBAA9\uB85D\uC5D0\uC11C \uC120\uD0DD",removeDevice:"\uCC29\uC6A9 \uD574\uC81C",type:{hearingAid:"\uBCF4\uCCAD\uAE30",cochlearImplant:"\uC778\uACF5\uC640\uC6B0",other:"\uAE30\uD0C0"}},n2={stat:{totalCustomers:"\uCD1D \uACE0\uAC1D",monthlyVisits:"\uC774\uB2EC \uCD1D \uBC29\uBB38"},chart:{visitDetail:"\uC0C1\uC138 \uBC29\uBB38 \uD604\uD669",trainingDetail:"\uC0C1\uC138 \uD6C8\uB828 \uD604\uD669",weekly:"\uC8FC\uBCC4",daily:"\uC77C\uBCC4",periodMonth:"\uC6D4",periodWeek:"\uC8FC",weeklyPrefix:"\uC8FC\uAC04",monthlyPrefix:"\uC6D4\uAC04",visit:"\uBC29\uBB38",reservation:"\uC608\uC57D",trainingDone:"\uD6C8\uB828 \uC644\uB8CC",trainingInProgress:"\uD6C8\uB828 \uC911",weekRange:"{{start}}~{{end}}",week:"{{n}}\uC8FC"},subscriptionStatus:{active:"{{pct}}% \uD65C\uC131",expired:"{{pct}}% \uB9CC\uB8CC",unused:"{{pct}}% \uBBF8\uC0AC\uC6A9"}},a2={editBanner:{message:"\uC800\uC7A5\uD558\uBA74 \uC9C0\uAE08 \uC218\uC815 \uC911\uC778 \uB300\uB9BD\uC30D\uD45C\uAC00 \uAC31\uC2E0\uB429\uB2C8\uB2E4."},phonemeSelect:{title:"\uC74C\uC18C \uC120\uD0DD",vs:"\uB300"},caution:"\uC720\uC758\uC0AC\uD56D",mode:{include:"\uC74C\uC18C \uD3EC\uD568",pick:"\uC74C\uC18C \uB300\uB9BD",contrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815",infoTitle:"\uB300\uB9BD \uBC29\uC2DD",infoInclude:"\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.",infoPick:"\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694.",infoContrast:"\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."},count:"{{n}}\uAC1C",countLabel:"\uC74C\uC18C \uAC1C\uC218",input:{char:"\uAE00\uC790 \uC120\uD0DD",pron:"\uBC1C\uC74C \uC120\uD0DD",infoTitle:"\uC785\uB825 \uBC29\uC2DD",infoChar:"\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.",infoPron:"\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."},phonemeN:"{{n}}\uBC88 \uC74C\uC808",phonemeSingleLabel:"\uC74C\uC808",phonemeContrastSingleLabel:"\uB300\uB9BD \uC74C\uC808",ordinals:["\uCCAB\uBC88\uC9F8","\uB450\uBC88\uC9F8","\uC138\uBC88\uC9F8","\uB124\uBC88\uC9F8"],phonemeOrdinalLabel:"{{ordinal}} \uC74C\uC808",phonemeContrastOrdinalLabel:"\uB300\uB9BD {{ordinal}} \uC74C\uC808",composition:"\uC815\uB2F5 \uB2E8\uC5B4 \uAD6C\uC131",syllableCount:"\uC74C\uC808 \uC218",syllableN:"{{n}}\uC74C\uC808",syllableNPlus:"{{n}}\uC74C\uC808 \uC774\uC0C1",onset:"\uCD08\uC131",vowel:"\uBAA8\uC74C",coda:"\uC885\uC131",filter:{searchOptionsTitle:"\uB300\uB9BD \uC124\uC815",searchModeLabel:"\uB300\uB9BD \uBC29\uC2DD",countLabel:"\uC785\uB825 \uC74C\uC808 \uAC2F\uC218",inputModeLabel:"\uC785\uB825 \uBC29\uC2DD",phonemeOrder:"\uC785\uB825 \uC74C\uC808 \uC704\uCE58",phonemeOrderInfo:["\uC77C\uCE58: \uB300\uB9BD\uC30D\uC774 \uC815\uD655\uD788 \uAC19\uC740 \uC704\uCE58(\uC74C\uC808)\uC5D0\uC11C\uB9CC \uCC28\uC774 \uB098\uC57C \uB9E4\uCE6D\uB3FC\uC694.","\uBB34\uAD00: \uCC28\uC774 \uB098\uB294 \uC704\uCE58\uB294 \uC0C1\uAD00\uC5C6\uC774 \uB9E4\uCE6D\uB3FC\uC694."],orderAny:"\uBB34\uAD00",orderMatch:"\uC77C\uCE58",difficultyInfo:["1\uB4F1\uAE09 : \uD559\uB839\uC804\uAE30\uC5D0 \uC2B5\uB4DD\uD558\uC5EC \uD3C9\uC0DD\uC5D0 \uAC78\uCCD0 \uC77C\uC0C1 \uC5B8\uC5B4\uC0DD\uD65C\uC744 \uD558\uB294 \uB370 \uC0AC\uC6A9\uB418\uB294 \uC5B4\uD718","2\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 1-2\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","3\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 3-4\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","4\uB4F1\uAE09 : \uCD08\uB4F1\uD559\uAD50 5-6\uD559\uB144 \uB09C\uC774\uB3C4 \uC5B4\uD718","\uB4F1\uAE09\uC5C6\uC74C : \uAD6D\uB9BD\uAD6D\uC5B4\uC6D0 \uD45C\uC900 \uC5B4\uD718 \uC678 \uACE0\uBE48\uB3C4 \uC0DD\uD65C \uC5B4\uD718, \uC2E0\uC870\uC5B4 \uBC0F \uC678\uB798\uC5B4"],selectLabel:"\uC120\uD0DD",onlyHasImage:"\uC774\uBBF8\uC9C0 \uC788\uB294 \uB2E8\uC5B4\uB9CC",onlySameStructure:"\uC74C\uC18C \uAD6C\uC870 \uAC19\uC740 \uB2E8\uC5B4\uB9CC"},searchLabel:{error:"\uB370\uC774\uD130 \uBD88\uB7EC\uC624\uAE30 \uC2E4\uD328",loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},confirmMessage:"\uC120\uD0DD\uD55C {{unit}} {{count}}\uAC1C\uB97C \uD3EC\uD568\uD55C \uB2E8\uC5B4 \uD45C \uC815\uBCF4\uAC00 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4.",resetOptions:"\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654",phonemeContrast:"\uB300\uB9BD {{n}}\uBC88 \uC74C\uC808",infoNotes:["\uBBF8\uB9AC\uBCF4\uAE30 \uAE00\uC790\uB294 \uC120\uD0DD\uD55C \uC74C\uC18C\uC758 \uC870\uD569 \uC608\uC2DC\uC785\uB2C8\uB2E4. \uC2E4\uC81C \uAC80\uC0C9\uC740 \uD574\uB2F9 \uC74C\uC18C\uAC00 \uD3EC\uD568\uB41C \uBAA8\uB4E0 \uB2E8\uC5B4\uB97C \uB300\uC0C1\uC73C\uB85C \uD569\uB2C8\uB2E4.","\uCD08\uC131 '\u3147'\uC740 \uC120\uD0DD\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uB2E8\uC5B4 \uC55E\uC5D0 \uC624\uB294 \u3147\uC740 \uC2E4\uC9C8\uC801\uC73C\uB85C \uBB34\uC74C\uC774\uC5B4\uC11C \uB300\uB9BD\uC30D \uC131\uB9BD\uC5D0 \uC601\uD5A5\uC744 \uC8FC\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.","\uCD08\uC131\uACFC \uC885\uC131\uB9CC \uC120\uD0DD\uD558\uBA74 \uBAA8\uC74C\uC740 '\u314F'\uB85C \uC790\uB3D9 \uD45C\uC2DC\uB429\uB2C8\uB2E4.","\uC74C\uC18C \uAC1C\uC218\uB97C \uB298\uB9AC\uBA74 \uAC01 \uC74C\uC18C \uC0AC\uC774\uC758 \uB300\uB9BD\uC30D\uC744 \uAC80\uC0C9\uD569\uB2C8\uB2E4."]},r2={sentenceTyping:{roundCount:"{{rounds}}\uBB38\uC81C \xB7 \uBB38\uC81C\uB2F9 {{timeLimit}}\uCD08"},wordDefense:{me:"\uB098"},dictation:{title:"\uBC1B\uC544\uC4F0\uAE30",desc:"\uBB38\uC7A5\uC744 \uB4E3\uACE0 \uC815\uD655\uD788 \uBC1B\uC544\uC801\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC131 \uC7AC\uC0DD, \uC785\uB825 \uD544\uB4DC, \uC815\uB2F5 \uBE44\uAD50"},result:{heading:"{{number}}\uB2E8\uACC4 \uD574\uB2F5",retry:"\uB2E4\uC2DC \uD480\uAE30"},common:{accuracy:"{{pct}}% \uC815\uD655\uB3C4"},soundMatch:{title:"\uC18C\uB9AC \uB9E4\uCE6D",desc:"\uAC19\uC740 \uC18C\uB9AC\uB97C \uAC00\uC9C4 \uB2E8\uC5B4 \uB610\uB294 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB9E4\uCE6D\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uD50C\uB808\uC774 \uBC84\uD2BC, \uD0C0\uC774\uBA38, \uC810\uC218 \uC9D1\uACC4"},orderSequence:{title:"\uBB38\uC7A5 \uC21C\uC11C\uD654",desc:"\uD769\uC5B4\uC9C4 \uBB38\uC7A5 \uC870\uAC01\uC744 \uC62C\uBC14\uB978 \uC21C\uC11C\uB85C \uBC30\uC5F4\uD558\uB294 \uD6C8\uB828\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uBB38\uC7A5 \uC138\uD2B8, \uC21C\uC11C \uD655\uC778 \uC778\uD130\uD398\uC774\uC2A4"},speedListen:{title:"\uC18D\uB3C4 \uB4E3\uAE30",desc:"\uC2DC\uAC04 \uC81C\uD55C \uB0B4\uC5D0 \uBB38\uC7A5\uC758 \uB2E8\uC5B4 \uC218\uB97C \uB9DE\uCD94\uB294 \uB3C4\uC804\uD615 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC81C\uD55C\uC2DC\uAC04, \uC810\uC218\uD310"},noiseChallenge:{title:"\uC18C\uC74C \uCC4C\uB9B0\uC9C0",desc:"\uBC30\uACBD \uC18C\uC74C \uC18D\uC5D0\uC11C \uBB38\uC7A5\uC744 \uBD84\uBCC4\uD558\uB294 \uC5F0\uC2B5\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB2E4\uC591\uD55C \uC18C\uC74C \uB808\uBCA8, \uC810\uC218 \uC9D1\uACC4"},fastListen:{title:"\uBE60\uB978 \uB4E3\uAE30",desc:"\uC9E7\uC740 \uBB38\uC7A5\uC744 \uBE60\uB974\uAC8C \uB4E4\uB824\uC8FC\uACE0 \uD575\uC2EC \uB2E8\uC5B4\uB97C \uC120\uD0DD\uD558\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uB09C\uC774\uB3C4\uBCC4 \uC18D\uB3C4, \uD0C0\uC774\uBA38"},shadowing:{title:"\uC250\uB3C4\uC789",desc:"\uBB38\uC7A5\uC744 \uB530\uB77C \uB9D0\uD558\uBA70 \uBC1C\uC74C\uACFC \uC5B5\uC591\uC744 \uC5F0\uC2B5\uD558\uB294 \uBAA8\uB4DC\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC7AC\uC0DD, \uB179\uC74C, \uBE44\uAD50 \uD53C\uB4DC\uBC31"},phonemeHunt:{title:"\uC74C\uC6B4 \uCC3E\uAE30",desc:"\uD2B9\uC815 \uC74C\uC6B4(\uBC1C\uC74C)\uC744 \uD3EC\uD568\uD55C \uB2E8\uC5B4\uB97C \uCC3E\uC544\uB0B4\uB294 \uAC8C\uC784\uC785\uB2C8\uB2E4.",comingSoon:"\uAD6C\uD604 \uC608\uC815: \uC74C\uC6B4 \uD544\uD130, \uD78C\uD2B8 \uAE30\uB2A5"}},o2={lead:`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
848
848
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
849
849
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`,site:{title:"\uC0AC\uC774\uD2B8",malgwi:"\uB9D0\uADC0",soundDirection:"\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",vrSoundDirection:"VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C",hearingTest:"\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C"},sns:{title:"SNS",naverBlog:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8",kakao:"KAKAO Talk \uC624\uD508\uCC44\uD305"},policy:{title:"\uC815\uCC45",terms:"\uC774\uC6A9\uC57D\uAD00",privacy:"\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68"},ceo:"\uB300\uD45C",address:"\uC8FC\uC18C",support:"\uACE0\uAC1D\uC13C\uD130",ceoName:"\uD55C\uC9C0\uD61C",addressValue:"\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638"},s2={trainingPhone:{topic:"\uD143\uBC2D\uAC00\uAFB8\uAE30",prev:"\uC774\uC804",next:"\uB2E4\uC74C",speed:"\uBE60\uB974\uAE30 3",noiseType:"\uC640\uAE00\uC640\uAE00",settings:"\uC124\uC815",start:{caption:"\uC544\uB798 \uD50C\uB808\uC774(\u25B6) \uBC84\uD2BC\uC744 \uB20C\uB7EC \uBB38\uC7A5\uC744 \uC798 \uB4E4\uC5B4\uBCF4\uC138\uC694. \uC798 \uB4E4\uC73C\uC2E0 \uB4A4 \uBB38\uC7A5\uC744 \uD655\uC778\uD558\uC138\uC694."},feedback:{caption:"\uC798 \uD0A4\uC6B4 \uBAA8\uC885\uC744 \uD143\uBC2D\uC5D0 \uC2EC\uACE0 \uBE44\uB2D0\uC744 \uC798 \uB36E\uC5B4 \uC90D\uB2C8\uB2E4."},done:{heardWell:"\uC798 \uB4E4\uB9B0 \uBB38\uC7A5",listenAgain:"\uD55C \uBC88 \uB354 \uB4E3\uAE30"}}},i2={timeHM:"{{h}}\uC2DC {{m}}\uBD84",timeH:"{{h}}\uC2DC"},l2={options:"\uD6C8\uB828 \uC635\uC158",difficulty:"\uB09C\uC774\uB3C4",exclude:"\uC81C\uC678",chosung:"\uCD08\uC131",excludeOptions:{none:"\uC5C6\uC74C",noImage:"\uC774\uBBF8\uC9C0 \uC5C6\uC74C"}},u2={answer:"\uC815\uB2F5",distractor:"\uC624\uB2F5"},c2={phaseWordDownload:"\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC",phaseImageCheck:"\uC774\uBBF8\uC9C0 \uD655\uC778",phasePairAnalysis:"\uB2E8\uC5B4\uC30D \uBD84\uC11D",downloadingCount:"{{n}}\uAC1C \uB2E4\uC6B4\uB85C\uB4DC \uC911",checkingPage:"{{page}}\uD398\uC774\uC9C0 \uBAA9\uB85D \uD655\uC778 \uC911",imageCount:"{{done}} / {{total}}\uAC1C"},d2={clearAriaLabel:"\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"},p2={ariaLabel:"\uC120\uD0DD \uD0ED"},m2={ariaLabel:"\uD0ED"},h2={dragPrompt:"\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC",browseButton:"\uD30C\uC77C \uC120\uD0DD",removeAriaLabel:"{{name}} \uC81C\uAC70"},C2={ariaLabel:"\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0"},f2={relativeDay:{today:"\uC624\uB298",yesterday:"\uC5B4\uC81C",daysAgo:"{{n}}\uC77C \uC804"},reason:{notLoggedIn:"\uB85C\uADF8\uC778\uC774 \uD544\uC694\uD569\uB2C8\uB2E4."},list:{title:"\uBC1B\uC740 \uC219\uC81C"},status:{expired:"\uB9CC\uB8CC\uB428",done:"\uC644\uB8CC {{count}}\uD68C \xB7 {{date}}",notDone:"\uBBF8\uC644\uB8CC"}},g2={weekly:{title:"\uC8FC\uAC04 \uD6C8\uB828 \uD604\uD669",daily:"\uC624\uB298\uC758 \uB4E3\uAE30",crossword:"\uAC00\uB85C\uC138\uB85C"},homework:{title:"\uC219\uC81C \uC9C4\uD589\uD604\uD669",totalRate:"\uC804\uCCB4 \uC644\uB8CC\uC728",count:"\uC804\uCCB4",done:"\uC644\uB8CC",remaining:"\uBBF8\uC644\uB8CC"},today:{tooltipTotal:"\uC804\uCCB4",tooltipDone:"\uC644\uB8CC"},filter:{countSuffix:" \uD6C8\uB828"},time:{countLabel:"{{n}}\uD68C \uD6C8\uB828",empty:"\uD6C8\uB828 \uAE30\uB85D\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},daily:{title:"\uC624\uB298\uC758 \uB4E3\uAE30 \uAE30\uB85D",empty:"\uC644\uB8CC\uD55C \uD68C\uCC28\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."},crossword:{title:"\uAC00\uB85C\uC138\uB85C\uD034\uC988",empty:"\uC644\uB8CC\uD55C \uB808\uBCA8\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"},visit:{title:"\uBC29\uBB38 \uC5F0\uB3D9 \uAE30\uB85D"},detail:"\uC0C1\uC138\uBCF4\uAE30",detailFor:"{{name}} \uC0C1\uC138\uBCF4\uAE30",trainingType:{LISTEN_IN_NOISE:"\uC18C\uC74C \uD558 \uBB38\uC7A5",SHORT_STORY:"\uC9E7\uC740 \uC774\uC57C\uAE30",LONG_STORY:"\uAE34 \uC774\uC57C\uAE30",ORDERING_SENTENCE:"\uBB38\uC7A5 \uC21C\uC11C\uD654"}},b2={publish:{descPlaceholder:"\uB9D0\uADC0\uC790\uB8CC\uC2E4\uC5D0 \uD45C\uC2DC\uD560 \uD55C \uC904 \uC124\uBA85 (\uC120\uD0DD)"},import:"\uB0B4 \uD6C8\uB828\uC5D0 \uAC00\uC838\uC624\uAE30",publisher:"\uAC8C\uC2DC\uC790",time:{justNow:"\uBC29\uAE08 \uC804",minutesAgo:"{{n}}\uBD84 \uC804",hoursAgo:"{{n}}\uC2DC\uAC04 \uC804",daysAgo:"{{n}}\uC77C \uC804",weeksAgo:"{{n}}\uC8FC \uC804",monthsAgo:"{{n}}\uAC1C\uC6D4 \uC804",yearsAgo:"{{n}}\uB144 \uC804"},badge:{shared:"\uB9D0\uADC0\uC790\uB8CC\uC2E4"}},y2={manage:{unit:"\uAC74"}},v2={cancelLabel:"\uCDE8\uC18C"},x2={steps:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"},_2={panelTitle:"\uD6C8\uB828 \uC624\uB2F5",viewItems:"\uBB38\uD56D",viewTypes:"\uC720\uD615",colPending:"\uB0A8\uC740 \uAC83",colTrend:"\uBCC0\uD654",colRuns:"\uD310",unitItem:"\uAC1C",skippedOnly:"\uC61B \uAE30\uB85D {{n}}\uAC74\uC740 \uBB34\uC5C7\uC744 \uD47C \uAC83\uC778\uC9C0 \uC548 \uB0A8\uC544 \uC788\uC5B4 \uC148\uC5D0\uC11C \uBE90\uC2B5\uB2C8\uB2E4.",summaryLabel:"\uC313\uC778 \uAE30\uB85D",summaryValue:"{{items}}\uBB38\uD56D \xB7 \uC544\uC9C1 \uBABB \uC7A1\uC740 \uAC83 {{pending}}\uAC1C",nextLabel:"\uB2E4\uC74C\uC5D0 \uBCFC \uAC83",nextCount:"{{count}}\uAC1C",nextCountCapped:"{{total}}\uAC1C \uC911 {{shown}}\uAC1C",picked:"\u2192 {{what}}",typeClear:"\uB2E4 \uC7A1\uC558\uC5B4\uC694",typePending:"{{total}}\uAC1C \uC911 {{pending}}\uAC1C \uB0A8\uC74C",flat:"\uBCC0\uD654 \uC5C6\uC74C",runs:"{{count}}\uD310",avgDuration:"\uD3C9\uADE0 {{sec}}\uCD08"},w2={resetColumns:"\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654",scrollRegion:"\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C",rowActionHint:"\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4"},A2={panelTitle:"\uB2E8\uC5B4\uD45C \uCC44\uC810",viewWords:"\uB0B1\uB9D0",viewTables:"\uD45C",colLatest:"\uB9C8\uC9C0\uB9C9",colTrend:"\uBCC0\uD654",unitTime:"\uD68C",summaryLabel:"\uC313\uC778 \uCC44\uC810",summaryValue:"{{times}}\uD68C \xB7 \uB0B1\uB9D0 {{words}}\uAC1C",nextLabel:"\uB2E4\uC74C\uC5D0 \uBCFC \uAC83",nextCount:"{{count}}\uAC1C",allClear:"\uC9C0\uB09C\uBC88\uC5D0 \uBAA8\uB450 \uB9DE\uD614\uC2B5\uB2C8\uB2E4.",times:"{{count}}\uD68C",flat:"\uBCC0\uD654 \uC5C6\uC74C",recentLabel:"\uCD5C\uADFC \uCC44\uC810",nextCountCapped:"{{total}}\uAC1C \uC911 {{shown}}\uAC1C"},B2={ariaLabel:"\uBC30\uB108",dotAriaLabel:"{{count}}\uAC1C \uC911 {{index}}\uBC88\uC9F8 \uBC30\uB108"},k2={selectYearMonth:"\uC5F0\uC6D4 \uC120\uD0DD",chooseDate:"\uB0A0\uC9DC \uC120\uD0DD"},N2={previewRegion:"\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30 \u2014 \uC88C\uC6B0\uB85C \uAD74\uB824 \uBCFC \uC218 \uC788\uC2B5\uB2C8\uB2E4"},E2={description:"\uC124\uBA85",textbox:"\uBCF8\uBB38",training:"\uD6C8\uB828 \uC548\uB0B4",menu:"\uBA54\uB274"},D2={devNone:"\uBC1C\uB2EC \uC790\uB8CC \uC5C6\uC74C",place:{labial:"\uC591\uC21C\uC74C",alveolar:"\uCE58\uC870\uC74C",palatal:"\uACBD\uAD6C\uAC1C\uC74C",velar:"\uC5F0\uAD6C\uAC1C\uC74C",glottal:"\uC131\uBB38\uC74C"}},S2={clearSelection:"\uC120\uD0DD \uD574\uC81C"},j2={showResult:"{{type}} \uACB0\uACFC\uBCF4\uAE30"},T2={selected:"\uC120\uD0DD\uB428",remove:"\uC81C\uAC70",exclude:"\uC81C\uC678",nthSelected:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"},M2={loading:"\uBD88\uB7EC\uC624\uB294 \uC911\u2026"},L2={state:{active:"\uC18C\uB9AC \uB098\uB294 \uC911",played:"\uB4E4\uC74C",correct:"\uC815\uB2F5",wrong:"\uC624\uB2F5"}},$2={ariaLabel:"\uC774\uB3D9 \uACBD\uB85C"},R2={empty:"\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."},P2={main:"\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8",soft:"\uC18C\uD504\uD2B8",sub:"\uC11C\uBE0C \uCEEC\uB7EC",deep:"\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8",softSub:"\uC18C\uD504\uD2B8 \uC11C\uBE0C",warm:"\uC6DC(\uAC15\uC870)",dark:"\uB2E4\uD06C",radial:"\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8",diagonal:"\uB300\uAC01\uC120 \uD328\uD134",dots:"\uB3C4\uD2B8 \uD328\uD134",outline:"\uC544\uC6C3\uB77C\uC778",success:"\uC131\uACF5/\uC644\uB8CC",naver:"\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4",instagram:"\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4"},F2={common:wf,calendar:Af,passCard:Bf,searchField:kf,rating:Nf,colorPicker:Ef,dropdown:Df,accordion:Sf,header:jf,nav:Tf,settings:Mf,usage:Lf,account:$f,help:Rf,training:Pf,trainingSettings:Ff,customers:If,payment:Of,coupons:Hf,visits:zf,company:Vf,trainingType:Wf,myWordTraining:qf,myWordTable:Uf,keyWords:Gf,wordTable:Kf,wordSearch:Yf,wordPrint:Zf,topic:Xf,accessLinkManager:Jf,login:Qf,trainingPlanRun:e2,device:t2,manager:n2,wordPairs:a2,game:r2,footer:o2,landing:s2,date:i2,trainingSetPage:l2,wordTrainingPreview:u2,wordData:c2,textField:d2,segmentedControl:p2,tabs:m2,fileUpload:h2,avatar:C2,myHomework:f2,trainingStatus:g2,store:b2,homework:y2,inquiry:v2,progress:x2,trainingMiss:_2,table:w2,wordScore:A2,topBanner:B2,datePicker:k2,report:N2,tooltip:E2,phonemeProfile:D2,bulkBar:S2,debug:j2,badge:T2,loader:M2,soundCompass:L2,breadcrumb:$2,board:R2,promoBannerBg:P2},I2={statusFilter:"Filter by status",pageSizeSelect:"Items per page",selectedCount_one:"{{count}} selected",selectedCount_other:"{{count}} selected",moreFor:"More options for {{name}}",collapseFor:"Collapse {{name}}",expandFor:"Expand {{name}}",sortFor:"Sort {{name}}",cancel:"Cancel",info:"Info",errorState:{message:"Couldn't load this.",retry:"Try again"},save:"Save",confirm:"Confirm",discardConfirm:{title:"Discard your changes?",body:"If you do not save, everything you have entered will be lost.",confirm:"Discard"},close:"Close",back:"Back",emptyTrainingName:"Training name is empty.",remove:"Remove",image:"Image",delete:"Delete",reset:"Reset",update:"Update",download:"Download",likeCount_one:"{{count}} like",likeCount_other:"{{count}} likes",selectedOfMax:"{{count}} of {{max}}",downloadCount_one:"{{count}} download",downloadCount_other:"{{count}} downloads",descriptionFor:"About {{name}}",search:"Search",empty:"No data.",yes:"Yes",no:"No",all:"All",none:"None",days_one:"{{count}} day",days_other:"{{count}} days",loadMore:"Load More",retry:"Try Again",prevPage:"Previous page",nextPage:"Next page",play:"Play",playFor:"Play {{name}}",pauseFor:"Pause {{name}}",pause:"Pause",playPause:"Play / Pause",replay:"Replay",subscription:"Subscription",done:"Done",failed:"Failed",continue:"Continue",notification:"Notice",emptyList:"No items",noMatches:"No matching items",menu:"Menu",resetSelection:"Reset Selection",pageSizeLabel:"Show {{n}}",totalCountPrefix:"Total: ",totalCountSuffix:"",expand:"Expand",collapse:"Collapse",popup:"Popup",more:"More",codeBlock:"Code block",totalPrefix:"",copyCode:"Copy code",copied:"Copied",col:{problem:"Question"},phonetics:{place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"},vowel:{frontHigh:"Front high vowel",backHighUnrounded:"Back high unrounded vowel",backHighRounded:"Back high rounded vowel",frontMid:"Front mid vowel",backMidUnrounded:"Back mid unrounded vowel",backMidRounded:"Back mid rounded vowel",low:"Low vowel"},glide:{j:"j-glide",w:"w-glide",velar:"\u0270-glide"}},unknownError:"Unknown error",networkError:"The network connection is unstable. Check your connection and try again."},O2={rangeSelect:"Select period",dow:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],weekLabel:"Week {{ord}}",prevMonth:"Previous month",addOnDate:"Add a visit on {{date}}",nextMonth:"Next month",prevWeek:"Previous week",nextWeek:"Next week",legend:{visited:"Visited",scheduled:"Scheduled",noVisit:"No Show"},periodSelect:"Period unit",visitCount_one:"{{count}} visit",visitCount_other:"{{count}} visits",statusCount:"{{count}} {{label}}",weekOrdinal:["1","2","3","4","5","6","7"]},H2={planSuffix:"Plan",labeledPlan:"{{label}} Plan",couponCode:"Pass Code",specialLabel:"Open Special",unitDay:"d",unitYear:"yr",remainingDay:"{{n}}d left",remainingHour:"{{n}}h left",remainingMinute:"{{n}}m left",remainingSecond:"{{n}}s left",expired:"Expired",menu:{use:"Activate",refund:"Refund",delete:"Delete"}},z2={clearAriaLabel:"Clear search"},V2={starLabel:"Select star {{n}}",valueLabel:"{{value}} out of {{max}}",groupLabel:"Rating"},W2={selected:"selected"},q2={placeholder:"Select"},U2={collapse:"Collapse",expand:"Expand"},G2={biArea:"BI area",biSymbol:"BI symbol",logoMalgwi:"Malgwi logo",logoManager:"Malgwi Manager logo",menuOpen:"Open menu",utilMenu:"Utility menu",menuClose:"Close menu"},K2={mainMenu:"Main menu",bottomNav:"Bottom navigation",goToManager:"Go to Malgwi Manager",goToMalgwi:"Go to Malgwi",modeLabelManager:"Malgwi Manager",modeLabelMalgwi:"Malgwi",training:"Training",settings:"Settings",notifications:"Notifications",account:"Account",help:"Help",feedback:"Report a bug",debug:"Debug",coupons:"Coupons",topic:"By Topic",trainingType:"By Training Type",wordPairs:"Word Pairs",wordSearch:"Word Search",wordTable:"Word Table Creator",company:"Company Info",more:"More",moreMenu:"More menu",badgeLabel:"{{label}}, {{count}}",badgeInsideLabel_one:"{{label}}, {{count}} notification inside",badgeInsideLabel_other:"{{label}}, {{count}} notifications inside"},Y2={language:{training:{label:"Training Language",sub:"Language used for training words and speech"}},notifications:{title:"Notifications"},display:{fontSize:{small:"Small",large:"Large"}},cache:{title:"Cache Management",confirmMessage:"Delete cache ({{size}}). Do you want to continue?",delete:"Delete",deleting:"Deleting",cleared:"Cache cleared successfully.",group:{wordData:{label:"Word Data",sub:"Word list and version info"},pairIndex:{label:"Pair Index",sub:"Onset\xB7vowel\xB7coda minimal pair analysis cache"},imageCache:{label:"Image Cache",sub:"Word image existence check results"},trainingRecord:{label:"Training Record",sub:"Daily training progress and streak"}}},button:{save:"Save Settings"},popup:{clear:{confirm:"Reset"},update:{confirm:"Update"},cache:{title:"Delete {{label}}",message:"Delete {{label}} ({{size}}). Do you want to continue?"}},saved:"\u2713 Saved",account:{title:"Account",delete:{sub:"You can restore your account within 30 days of withdrawal."}}},Z2={addButton:"Add Subscription",couponButton:"Enter Coupon",active:{infoTitle:"Subscription Info",refund:"Request Refund",startDate:"Start Date",endDate:"End Date",remaining:"Remaining"},pending:{title:"Pending",empty:"No pending subscriptions."},loading:"Loading\u2026",segment:{personal:"Malgwi",org:"Malgwi Manager"},org:{title:"Current Plan",disc:"Subscription plan in use by your organization.",empty:"No organization plan registered.",fallbackTitle:"Organization Plan",startDate:"Start Date",endDate:"End Date",remaining:"Remaining",duration:"Duration"}},X2={profile:{planSuffix:"",plan:"Plan"},basicInfo:{name:{placeholder:"John Doe"}},security:{title:"Security",password:{label:"Password",currentRequired:"Enter your current password.",newRequired:"Enter a new password.",mismatch:"The new passwords do not match.",changed:"Your password has been changed."},twoFactor:{label:"Two-Factor Authentication",sub:"Strengthen your account security"}}},J2={guide:{faq:{title:"FAQ",desc:"View all frequently asked questions"}}},Q2={settings:"Settings",start:{title:"Start Word Training",description:"Select a training type below to begin"},difficulty:{tooltip:"The easiest difficulty is 'Random', the hardest is 'Initial Consonant Difference'."},contrast:{label:"Contrast",type:"Contrast Type",count:"Contrast Count",n:"{{n}}"},filter:{random:"Random",trainOnset:"Onset",trainVowel:"Vowel",trainCoda:"Coda",phonemeGroup:"Training phonemes",noLimit:"Any",codaExclude:"Exclude",gradeLabel:"Grade",excludeImageInfo:"Only words with images: keeps only results with a registered word image.",sameStructureInfo:"Only same phoneme structure: keeps only pairs where the correct and wrong answers share the same syllable structure (length, batchim, etc.).",selectSection:"Select",excludeImage:"Only words with images",sameStructure:"Only same phoneme structure"},noQuestions:"No questions available.",countQuestions_one:"{{n}} question",countQuestions_other:"{{n}} questions",countSentences_one:"{{n}} sentence",countSentences_other:"{{n}} sentences",comingSoon:"Coming Soon",nextQuestion:"Next",noiseRatioTitle:"Noise Ratio",noiseRatioValue:"{{ratio}}\xD7",noiseTypeTitle:"Noise Type",playVolumeTitle:"Volume",playSpeedTitle:"Speed",meter:{sentence:"Playback",noise:"Noise",toggle:"Show Audio Meter"},viewResult:"View Results",problemNotice:"Problem {{n}}.",trainingSettingsTitle:"Training Settings",sentencePreview:"Sentence Preview",notHeard:"Didn't hear it.",heardWell:"Heard it well.",confirmTitle:"Check the sentence and select whether you heard it.",noSoundWaveform:"Waveform is not shown for sound-comparison questions.",noise:{level:{none:"None",weak:"Weak",medium:"Medium",strong:"Strong",veryStrong:"Very Strong"},type:{none:"None",default:"Default",street:"Street",buzz:"Buzzing",restaurant:"Restaurant"}},listenTitle:"Please listen to the sentence.",listenButton:"Listen",playSound:"Play Sound",playAll:"Play All",selectInOrder:"Select the cards in the order you heard.",stop:"Stop",preview:"Preview",previewFor:"Preview {{name}}",stopFor:"Stop {{name}}",next:"Next",completed:"Completed",selected:"Selected",nthSelected:"Selection {{n}}",fontSizeMin:"Font size is at the minimum.",fontSizeMax:"Font size is at the maximum.",fontSizeDecrease:"Decrease font size",fontSizeIncrease:"Increase font size",toggleBackground:"Toggle background",cardInstructions:"Look at the word card, listen to the sound, and check it.",noCards:"No cards.",audioFetchError:"Failed to load the sound source.",ttsUnavailable:"Speech playback isn't available on this device.",selectConfirm:"Look at the question and select the answer.",orderListDefault:"Arrange the sentences in the order you heard.",result:{pendingDone:"Results are still being calculated, so you can't finish yet.",eyebrow:"Training Complete",title:"You've finished all the training!",scoreAria:"{{correct}} / {{total}} questions",elapsed:"Time Elapsed",summary:"You heard {{correct}} item(s) correctly.",tableAriaLabel:"Per-question judgement",colJudge:"Judgement",colAnswerSelected:"Answer \xB7 Selected",colAnswer:"Answer",colSelected:"Selected",heardWell:"Heard well",notHeard:"Didn't hear",notJudged:"Not judged",replay:"Replay",done:"Done",viewResult:"View Results",noContent:"(No content)"},up:"Move up",down:"Move down",prev:"Previous",listenLabel:"Listen",sourcePlay:"Play source {{n}}",listen:"Listen",audioStatus:{idle:"Idle",resolving:"Resolving\u2026",checking_exists:"Checking file\u2026",getting_signed_url:"Getting URL\u2026",downloading:"Downloading\u2026",measuring_duration:"Measuring length\u2026",ready:"Ready",error:"Error",synthesizing:"Preparing the sound\u2026"}},eg={totalCount:" training bundles",sort:{customers:"Customers"},copyLink:"Copy Link",removeLink:"Remove Link",linkRemoved:"Link removed.",linkSaveFirst:"Please save the training bundle first.",linkSaveFirstHint:"You can only create a shared link from a saved training bundle.",linkCopySelect:"Copy blocked \u2014 link selected. Press Ctrl/\u2318+C to copy.",nameRequired:"Please enter a training bundle name.",itemRequired:"Please add at least one training item.",randomAdd:"Random Add",menu:{publish:"Post to Store",duplicate:"Duplicate Training Bundle",edit:"Edit Training Bundle",move:"Move Group",rename:"Rename"},itemCount:"Number of Items",renameGroup:"Rename Group"},tg={totalCount:" customers",loadError:"Failed to load list",basicInfo:{editTooltip:"Edit"},member:{placeholder:"Email or phone",link:"Link",linking:"Linking\u2026"},device:{title:"Hearing Devices",addTooltip:"Add New",addButton:"Add device",listTooltip:"View List",listTitle:" Device List",historyEmpty:"No device history registered",wearing:" in use",notRegistered:"Not registered",unit:"",wearingNow:"In use",wear:"Wear",unwear:"Remove",wornSince:"Since {{date}}",release:"Release",historyTitle:"Hearing device history"},schedule:{title:"Upcoming Visits",addTooltip:"Add Schedule",listTooltip:"View All",empty:"No upcoming visits",registerTitle:" Register Schedule",memoPlaceholder:"Enter a memo for this visit."},visitHistory:{title:"Visit History",addTooltip:"Add Visit",empty:"No visit history yet",popupTitle:" Visit History",registerTitle:" Register Visit"},moreItems:"more",viewAll:"View All",visits:{title:"Visits"},trainingRecord:{title:"Customer Training Records"},status:{trainingSubtitle:"Training Status"},detail:{session:{completedFmt:"Done {{done}}/{{total}} \xB7 {{duration}}"},visitSuffix:" visits"},homework:{active:"Active",copied:"Link copied.",copy:"Copy Link",inactive:"Inactive",title:"Homework Progress"},duration:{minSec:"{{m}}m {{s}}s",min:"{{m}}m",sec:"{{s}}s"}},ng={plan:{recommendedFor:"Recommended for",features:"Key Features",freePrice:"Free",contact:"Contact Us",tierFallback:"Plan",openPromo:"Launch offer"},products:{mgrEnterprise:{tier:{price:"Contact us"}}}},ag={title:"Coupons",subtitle:"Enter a coupon code or view your coupons",input:{label:"Coupon code",placeholder:"Enter coupon code"},applyButton:"Apply",error:{invalid:"Invalid coupon code.",alreadyUsed:"This coupon has already been used."},success:{applied:'"{{name}}" coupon applied.'},section:{owned:"My Coupons"},status:{used:"Used",available:"Available"}},rg={unitVisit:"",periodAll:"All",showN:"Show {{n}}"},og={subtitle:"Manage company and business information",editButton:"Edit Info",basicInfo:{title:"Basic Info"},contactInfo:{title:"Contact Info"}},sg={title:"Training by Type",subtitle:"Select the training type you want",listenInNoise:{title:"Sentence Listening in Noise",desc:"Train sentence comprehension in various noise environments."},shortStory:{title:"Short Story Listening",desc:"Listen to short stories and understand the content."},longStory:{title:"Long Story Listening",desc:"Focus on listening to long stories and grasp the content."},orderingSentence:{title:"Sentence Ordering",desc:"Arrange heard sentences in the correct order."},SAME_SOUND_PICK:{label:"Listen & Pick Same Sound",sub:"Pick the word card that matches what you heard."},SAME_OR_DIFF:{label:"Same or Different?",sub:"Decide whether the two sounds are the same or different."},HEAR_AND_PICK_SAME:{label:"Hear & Match Word",sub:"Pick the word card that matches the sound you heard."},HEAR_AND_PICK_INCLUDED:{label:"Find Word Containing Sound",sub:"Pick the word card that contains the syllable you heard."},STARTS_WITH_SAME_SOUND:{label:"Find Word Starting with Same Sound",sub:"Pick a word that starts with the same sound as what you heard."},LISTEN_AND_REMEMBER_ORDER:{label:"Listen & Recall Order",sub:"Select the cards in the order you heard the three words."},MERGE_2_SYLLABLES:{label:"Combine 2 Syllables",sub:"What word do two syllables make?"},MERGE_3_SYLLABLES:{label:"Combine 3 Syllables",sub:"What word do three syllables make?"},MERGE_2_PHONEMES:{label:"Combine 2 Phonemes",sub:"What sound do two phonemes make?"},MERGE_3_PHONEMES:{label:"Combine 3 Phonemes",sub:"What sound do three phonemes make?"},DROP_1_FROM_2SYLL:{label:"Drop 1 Syllable from 2-Syllable",sub:"What sound remains when you remove a syllable from a 2-syllable word?"},DROP_1_FROM_3SYLL:{label:"Drop 1 Syllable from 3-Syllable",sub:"What sound remains when you remove a syllable from a 3-syllable word?"},DROP_PART_FROM_COMPOUND:{label:"Drop Part of Compound Word",sub:"What word remains when you remove part of a compound word?"},DROP_FINAL_CONSONANT_FROM_1SYLL:{label:"Drop Final Consonant",sub:"What sound remains when you remove the final consonant?"},REMOVE_CONSONANT_AND_IDENTIFY_PHONEME:{label:"Drop Consonant",sub:"What sound remains when you remove the consonant?"},CHANGE_1_SYLL_IN_2SYLL:{label:"Change 1 Syllable (2-Syllable)",sub:"Change one syllable in a 2-syllable word to make a new word."},CHANGE_1_SYLL_IN_3SYLL:{label:"Change 1 Syllable (3-Syllable)",sub:"Change one syllable in a 3-syllable word to make a new word."},CHANGE_1_PHONEME_IN_1SYLL:{label:"Change 1 Phoneme (1-Syllable)",sub:"Change one phoneme in a 1-syllable word to make a new sound."},CHANGE_1_PHONEME_IN_2SYLL:{label:"Change 1 Phoneme (2-Syllable)",sub:"Change one phoneme in a 2-syllable word to make a new word."}},ig={comingSoon:"Word training is coming soon."},lg={colName:"Table Name",open:"Open",countSuffix:" tables",addCard:"Add Word Table Card",cardsEmpty:"No word table cards created yet.",menu:{publishStore:"Post to Training Store",unpublishStore:"Remove from Training Store"},newBadge:"Newly created",tab:{cards:"Word Table Cards",tables:"Word Tables"},publishedBadge:"Published",sharedBadge:"Shared"},ug={title:"Key Words",empty:"No key words available."},cg={defaultName:"Word Table",title:"Word Table Builder",subtitle:"Set columns and add words to build a table.",filterTitle:"Table Settings",filter:{composition:"Composition",image:"Image",word:"Word",standardPron:"Standard Pronunciation",colloquialPron:"Colloquial Pronunciation",paperOrientation:"Paper Orientation",landscape:"Landscape",portrait:"Portrait",columns:"Columns",column:"{{count}} col",itemsPerPageWord:"Words per page",itemsPerPagePair:"Pairs per page",itemsPerPageOption:"{{count}}",pageIndicator:"{{current}} / {{total}}",pageNumber:"Page Number",pageNumberLeft:"Left",pageNumberCenter:"Center",pageNumberRight:"Right",border:"Border",topInfo:"Header",bottomInfo:"Footer",cutLine:"Cut Line",show:"Show",hide:"Hide",dotted:"Dotted",corner:"Corner"},addWord:"Add",wordInfo:"Info for {{word}}",emptyItems:"Please add at least one word.",load:"Load",openNewWindow:"Open in New Window",saveButton:"Save",saveAsNewButton:"Save as New",print:"Print",popupBlocked:"Popup was blocked. Please allow popups in your browser settings.",printFileNameSingle:"Word Table",printFileNamePair:"Contrast Pair Table",save:{title:"Save Word Table",nameLabel:"Name",desc:"Enter a name for the word table.",placeholder:"Enter a title for this word table.",descriptionLabel:"Description",descriptionPlaceholder:"Enter a description for this word table.",duplicateName:"This name is already in use.",nameRequired:"Please enter a table name.",autoFillHint:" (Press Tab or Space to autofill)",copyName:"{{name}} (copy)"},loadTable:{title:"Load Saved Word Table",empty:"No saved word tables.",loadButton:"Load",itemCount_one:"{{count}} word",itemCount_other:"{{count}} words",deleteAriaLabel:"Delete {{name}}",viewLabel:"View as",sortLabel:"Sort by",sort:{newest:"Newest",oldest:"Oldest",name:"Name",count:"Word Count"},view:{grid:"Grid View",list:"List View"}},publisherFilter:"Show only tables by {{name}}",groupDeleteMessage:"Word tables in this group will be moved to 'No Group'.",groupNamePlaceholder:"Group name",store:{badge:"Training Store"},card:{sub:"Word Table Card",empty:"No word tables in this card."},toast:{renameError:"Failed to rename",saveError:"Failed to save",deleteError:"Failed to delete",duplicateError:"Failed to duplicate",saveSuccess:"Word table saved."},scoring:{o:"{{word}} correct",triangle:"{{word}} partial",x:"{{word}} incorrect",markName:{o:"Correct",triangle:"Partial",x:"Incorrect"},button:"Score",pickTitle:"Who are you scoring?",pickSubtitle:"Choose the customer who trained with \u201C{{name}}\u201D.",pickSearch:"Search by name or phone",pickEmpty:"No customers registered.",pickNoMatch:"No matching customer.",pickAgain:"Choose another",scoringFor:"Scoring {{name}}",none:"Tap \u25CB \xB7 \u25B3 \xB7 \u2715 under a cell to mark it. With a mouse they appear when you hover the cell; with a keyboard, when focus reaches it.",tally:"{{marked}} scored \xB7 \u25CB {{o}} \xB7 \u25B3 {{triangle}} \xB7 \u2715 {{x}} \xB7 {{rate}}%",save:"Save score",saved_one:"Saved {{count}} mark for {{name}}.",saved_other:"Saved {{count}} marks for {{name}}.",reviewTitle:"Create a review table?",reviewMessage_one:"Builds a new table from the {{count}} cell {{name}} got wrong or partial. Correct ones are left out.",reviewMessage_other:"Builds a new table from the {{count}} cells {{name}} got wrong or partial. Correct ones are left out.",reviewConfirm:"Create review table",reviewDescription:"Cells marked wrong or partial in \u201C{{name}}\u201D \u2014 {{count}} of them.",reviewCreated_one:"Created \u201C{{name}}\u201D \u2014 {{count}} cell.",reviewCreated_other:"Created \u201C{{name}}\u201D \u2014 {{count}} cells.",discardTitle:"Discard this scoring?",discardMessage_one:"You marked {{count}} cell but have not saved. Leaving discards it.",discardMessage_other:"You marked {{count}} cells but have not saved. Leaving discards them.",discardConfirm:"Discard and leave"},info:{grade:"Grade: {{n}}",syllables:"Syllables: {{n}}",pos:"Part of speech: {{v}}",wordType:"Type: {{v}}"},pos:{noun:"Noun",verb:"Verb",adjective:"Adjective",adverb:"Adverb",numeral:"Numeral",determiner:"Determiner",interjection:"Interjection",particle:"Particle",affix:"Affix",dependentNoun:"Dependent noun",pronoun:"Pronoun",auxVerb:"Auxiliary verb",auxAdjective:"Auxiliary adjective"},reorder:{moved:"Moved to position {{n}} of {{total}}",handle:"Reorder {{word}} (Alt + arrow keys)",hint:"Alt + \u2190 \u2192 to reorder"}},dg={editBanner:{message:"Saving will update the word table you're editing."},filterTitle:"Word Search Settings",filter:{positionAny:"Any",positionHead:"Start",positionMid:"Middle",positionTail:"End",difficulty:"Grade",grade:"Grade {{n}}",gradeNone:"None",syllables:"Syllables",syllable:"{{n}} Syll.",syllable5plus:"5+ Syllables",partOfSpeech:"Part of Speech",pos:{noun:"Noun/Numeral",verb:"Verb/Adjective",modifier:"Adverb/Determiner"},wordType:"Word Type",field:"Semantic Category",type:{native:"Native Korean",sino:"Sino-Korean",foreign:"Loanword",mixed:"Hybrid"},exclude:"Exclude",excludeNoImage:"No Image"},searchButton:"Search",resultUnit:"words",remaining:"{{count}} remaining",resultDisc:"Select {{unit}}. Up to {{max}} items. ({{selected}}/{{max}})",resultTitlePrefix:"",resultTitleSuffix:" {{unit}} found.",emptyResult:"No results found.",groupCount:"{{count}}",sort:{aria:"Sort",match:"Best Match",ganada:"A\u2013Z \u2191",ganadaDesc:"A\u2013Z \u2193",syllable:"Syllables \u2191",syllableDesc:"Syllables \u2193",grade:"Grade \u2191",gradeDesc:"Grade \u2193",original:"Original order"},pageSize:"Show {{count}}",pageSizeAria:"Page size",popup:{title:"Select a word for cell {{n}}"}},pg={clearAllSelection:"Clear All Selections",divLine:"Contrast Line",removePair:"Remove pair",removeWord:"Remove word"},mg={title:"By Topic",subtitle:"Select a topic to start listening training",noiseTitle:"Sentence Listening in Noise",shortStoryTitle:"Short Story Listening",FOOD:"Food",HLTH:"Health",WETH:"Weather",PRSN:"People",KRCT:"Korean Culture",STRY:"Stories",LOCA:"Locations",SOAR:"Society & Arts",NTSC:"Nature & Science",SPRT:"Sports",sub:{TRKRFD:"Traditional Korean Food",MDKRFD:"Modern Korean Food",WRLDFD:"World Cuisine",MTRFRT:"Ingredients & Fruits",GEFDKL:"Food Facts",HTETHB:"Healthy Eating",DISILL:"Diseases",EXCISE:"Exercise",GEHTKL:"Health Facts",GESSKL:"Seasons",SNWRAN:"Snow & Rain",WTHFCT:"Weather Forecast",GEWTKL:"Weather Facts",JODYPS:"Joseon Dynasty",MDKRPS:"Modern Korea",THKDPS:"Three Kingdoms",WRLART:"World Artists",WRLPSN:"World Figures",KRLANG:"Korean Language",TRPLCT:"Traditional Games",HERITG:"Heritage",EVTFES:"Events & Festivals",GECTKL:"General Knowledge",FRYTAL:"Fairy Tales",AMZING:"Amazing Stories",DAYSTR:"Everyday Stories",KRLDMK:"Korean Landmarks",SELNMK:"Seoul Landmarks",WRDTRB:"World Travel",NAVIGT:"Navigation",KRSOCI:"Korea",ECONEW:"Economy & News",GENART:"Arts",GELFKL:"Life Tips",ANIMAL:"Animals",PLANTS:"Plants",ETHPLT:"Earth",TOLELC:"Tools & Electronics",GESCKL:"Science Facts",INVDSP:"Individual Sports",MARART:"Martial Arts",TEAMSP:"Team Sports",FOOTBL:"Soccer",GESPKL:"Sports Facts"}},hg={maxUses:"Max uses (leave blank for unlimited)",redirect:"Redirect URL (leave blank for app home)",creating:"Creating\u2026",create:"Create link",created:"\u2713 Link created",copied:"Copied!",copy:"Copy",loading:"Loading\u2026",empty:"No links created yet.",uses_one:"Used {{count}} time",uses_other:"Used {{count}} times",expiresAt:"Expires: {{date}}",createdAt:"Created: {{date}}",confirmDelete:"Delete this link?",deactivate:"Deactivate",delete:"Delete",status:{active:"Active",expired:"Expired",inactive:"Inactive"}},Cg={passwordPlaceholder:"Enter password"},fg={direction:{left:"L",right:"R",label:"Side"},wornDate:"Date Worn",deviceType:"Device Type",brand:"Brand",fitType:"Fit Type",productName:"Product Name",validationError:{brandAndProduct:"Please enter brand and product name."},addNew:"Add New Device",selectFromList:"Select from List",removeDevice:"Remove",type:{hearingAid:"Hearing Aid",cochlearImplant:"Cochlear Implant",other:"Other"}},gg={stat:{totalCustomers:"Total Customers",monthlyVisits:"This Month's Visits"},chart:{visitDetail:"Visit Details",trainingDetail:"Training Details",weekly:"Weekly",daily:"Daily",periodMonth:"Month",periodWeek:"Week",weeklyPrefix:"Weekly",monthlyPrefix:"Monthly",visit:"Visits",reservation:"Reservations",trainingDone:"Completed",trainingInProgress:"In Progress",weekRange:"{{start}}\u2013{{end}}",week:"W{{n}}"},subscriptionStatus:{active:"{{pct}}% Active",expired:"{{pct}}% Expired",unused:"{{pct}}% Unused"}},bg={editBanner:{message:"Saving will update the contrast pair table you're editing."},phonemeSelect:{title:"Phoneme Selection",vs:"vs"},caution:"Caution",mode:{include:"Phoneme Include",pick:"Phoneme Contrast",contrast:"Specify Contrast",infoTitle:"Contrast Mode",infoInclude:"Include \u2014 finds words containing all selected phonemes, plus their minimal pair.",infoPick:"Contrast \u2014 matches only if the selected phoneme is the actual point of difference in the pair.",infoContrast:"Specify Contrast \u2014 directly choose phonemes for the base word and the contrasting word to find pairs."},count:"{{n}}",countLabel:"Number of phonemes",input:{char:"Choose Letters",pron:"Choose Sound",infoTitle:"Input mode",infoChar:"Choose Letters \u2014 finds words by the selected phonemes (spelling), then finds their standard-pronunciation contrast pairs.",infoPron:"Choose Sound \u2014 finds standard-pronunciation contrast pairs directly from the selected phonemes."},phonemeN:"Syllable {{n}}",phonemeSingleLabel:"Syllable",phonemeContrastSingleLabel:"Contrast Syllable",ordinals:["First","Second","Third","Fourth"],phonemeOrdinalLabel:"{{ordinal}} Syllable",phonemeContrastOrdinalLabel:"Contrast {{ordinal}} Syllable",composition:"Answer Word Composition",syllableCount:"Syllables",syllableN:"{{n}} syll.",syllableNPlus:"{{n}}+ syll.",onset:"Onset",vowel:"Vowel",coda:"Coda",filter:{searchOptionsTitle:"Contrast Settings",searchModeLabel:"Contrast Mode",countLabel:"Input Syllable Count",inputModeLabel:"Input mode",phonemeOrder:"Input Syllable Position",phonemeOrderInfo:["Match: the pair must differ at exactly the same position (syllable).","Any: the differing position doesn't matter."],orderAny:"Any",orderMatch:"Match",difficultyInfo:["Level 1 \u2014 everyday vocabulary acquired before school age and used for life","Level 2 \u2014 difficulty of grades 1\u20132","Level 3 \u2014 difficulty of grades 3\u20134","Level 4 \u2014 difficulty of grades 5\u20136","No level \u2014 frequent everyday words outside the national standard list, plus coinages and loanwords"],selectLabel:"Select",onlyHasImage:"Only words with images",onlySameStructure:"Only same phoneme structure"},searchLabel:{error:"Failed to load data",loading:"Loading\u2026"},confirmMessage:"The word table with {{count}} selected {{unit}} will be lost.",resetOptions:"Reset Options",phonemeContrast:"Contrast Syllable {{n}}",infoNotes:["The preview character is an example of the selected phoneme combination. The actual search covers all words containing the phoneme.","Initial consonant '\u3147' cannot be selected. \u3147 at the start of a word is effectively silent.","If only onset and coda are selected, the vowel is automatically displayed as '\u314F'.","Increasing the phoneme count searches for minimal pairs between each phoneme."]},yg={sentenceTyping:{roundCount:"{{rounds}} rounds \xB7 {{timeLimit}}s each"},wordDefense:{me:"Me"},dictation:{title:"Dictation",desc:"Practice writing down exactly what you hear.",comingSoon:"Coming soon: audio playback, input field, answer comparison"},result:{heading:"Level {{number}} Answer",retry:"Try Again"},common:{accuracy:"{{pct}}% accuracy"},soundMatch:{title:"Sound Match",desc:"Quickly match words or sentences that share the same sound.",comingSoon:"Coming soon: play button, timer, score tracking"},orderSequence:{title:"Sentence Ordering",desc:"Arrange scattered sentence fragments in the correct order.",comingSoon:"Coming soon: sentence sets, ordering interface"},speedListen:{title:"Speed Listen",desc:"A challenge game to count the number of words in a sentence within a time limit.",comingSoon:"Coming soon: time limit, scoreboard"},noiseChallenge:{title:"Noise Challenge",desc:"Practice distinguishing sentences amid background noise.",comingSoon:"Coming soon: various noise levels, score tracking"},fastListen:{title:"Fast Listen",desc:"Listen to short sentences at speed and select the key word.",comingSoon:"Coming soon: speed by difficulty, timer"},shadowing:{title:"Shadowing",desc:"Practice pronunciation and intonation by repeating sentences aloud.",comingSoon:"Coming soon: playback, recording, comparison feedback"},phonemeHunt:{title:"Phoneme Hunt",desc:"Find words that contain a specific phoneme (sound).",comingSoon:"Coming soon: phoneme filter, hint feature"}},vg={lead:`IHAB builds trust
|
|
850
850
|
through sound
|
|
851
|
-
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Sicheong-gil, Chuncheon, Gangwon, Korea"},xg={trainingPhone:{topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}}},_g={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},wg={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},Ag={answer:"Answer",distractor:"Distractor"},Bg={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount_one:"Downloading {{n}} word",downloadingCount_other:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},kg={clearAriaLabel:"Clear input"},Ng={ariaLabel:"Select tab"},Eg={ariaLabel:"Tabs"},Dg={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},Sg={ariaLabel:"User avatar"},jg={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework"},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},Tg={weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword"},homework:{title:"Homework Progress",totalRate:"Overall rate",count:"Total",done:"Done",remaining:"Remaining"},today:{tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{countLabel_one:"{{n}} session",countLabel_other:"{{n}} sessions",empty:"No training records"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",detailFor:"{{name}} details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},Mg={import:"Add to my trainings",publisher:"Publisher",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},publish:{descPlaceholder:"One-line description for the Training Store (optional)"}},Lg={manage:{unit:"item(s)"}},$g={cancelLabel:"Cancel"},Rg={subtitle:"Select a topic to start listening practice."},Pg={steps:"Step {{current}} of {{total}}"},Fg={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly_one:"{{n}} older record was excluded \u2014 it does not say what was answered.",skippedOnly_other:"{{n}} older records were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs_one:"{{count}} run",runs_other:"{{count}} runs",avgDuration:"{{sec}}s avg"},Ig={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},Og={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colLatest:"When",colTrend:"Change",unitTime:" times",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",nextCountCapped:"{{shown}} of {{total}}"},Hg={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},zg={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},Vg={previewRegion:"Report preview \u2014 scrollable sideways"},Wg={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},qg={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Ug={clearSelection:"Clear selection"},Gg={showResult:"Show {{type}} result"},Kg={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Yg={loading:"Loading"},Zg={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Xg={ariaLabel:"Breadcrumb"},Jg={empty:"No items yet."},Qg={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},eb={common:I2,calendar:O2,passCard:H2,searchField:z2,rating:V2,colorPicker:W2,dropdown:q2,accordion:U2,header:G2,nav:K2,settings:Y2,usage:Z2,account:X2,help:J2,training:Q2,trainingSettings:eg,customers:tg,payment:ng,coupons:ag,visits:rg,company:og,trainingType:sg,myWordTraining:ig,myWordTable:lg,keyWords:ug,wordTable:cg,wordSearch:dg,wordPrint:pg,topic:mg,accessLinkManager:hg,login:Cg,device:fg,manager:gg,wordPairs:bg,game:yg,footer:vg,landing:xg,date:_g,trainingSetPage:wg,wordTrainingPreview:Ag,wordData:Bg,textField:kg,segmentedControl:Ng,tabs:Eg,fileUpload:Dg,avatar:Sg,myHomework:jg,trainingStatus:Tg,store:Mg,homework:Lg,inquiry:$g,trainingPlanRun:Rg,progress:Pg,trainingMiss:Fg,table:Ig,wordScore:Og,topBanner:Hg,datePicker:zg,report:Vg,tooltip:Wg,phonemeProfile:qg,bulkBar:Ug,debug:Gg,badge:Kg,loader:Yg,soundCompass:Zg,breadcrumb:Xg,board:Jg,promoBannerBg:Qg};const tb="0.325.0",nb=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],Jr="ko",ab="ihab_display_language";function Ni(){if(typeof window>"u")return Jr;try{const e=localStorage.getItem(ab);if(e&&nb.some(t=>t.code===e))return e}catch{}return Jr}function Ei(e){try{document.documentElement.lang=e}catch{}}$t.on("languageChanged",Ei),Ei(Ni()),$t.use(xe.initReactI18next).init({resources:{ko:{translation:F2},en:{translation:eb}},lng:Ni(),fallbackLng:Jr,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const rb=new Map;try{$t.store?.on?.("added",()=>rb.clear())}catch{}let Xa=null,Di=null,Si=null;function ob(){const e=fi();if(e&&e.entries.length>0){const t=VC();if(Xa&&Di===e&&Si===t)return Xa;const a=new Set,r=[];for(const i of e.entries)!i.word||a.has(i.word)||(a.add(i.word),r.push({w:i.word,s:i.syllables,p:t?.[i.word]?[...t[i.word].cho??[],...t[i.word].jung??[],...t[i.word].jong??[]]:[],pron:i.pronunciation||i.word,grade:i.grade}));return Xa=r,Di=e,Si=t,Xa}return[]}new Proxy([],{get(e,t){const a=ob(),r=a[t];return typeof r=="function"?r.bind(a):r}});function sb(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function ib(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&sb(r.attrValue)&&(r.keepAttr=!1)};Pr.addHook("uponSanitizeAttribute",t);try{return Pr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Pr.removeHook("uponSanitizeAttribute",t)}}function lb(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),[s,l]=o.useState(null),[u,c]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),i(null),l(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=Fr(e):/^(Logo|Symbol)/i.test(d)?m=Fr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),i(null),l(null),a(m)},[e]),o.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const C=p.headers.get("content-type")||"";if(d)return;if(C.includes("svg")){i("mask");return}if(C.startsWith("image/")){i("img");return}const _=await fetch(t);if(!_.ok)throw new Error("not ok");const y=await _.text();if(d)return;if(/^\s*<svg[\s>]/i.test(y)){const g=ib(y);if(!g){i("none");return}l(g),i("inline");return}i("none")}catch{d||i("none")}}return m(),()=>{d=!0}},[t]),o.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(m=URL.createObjectURL(p),c(m))}).catch(()=>{d||i("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),c(null)}},[r,t]),{iconToUse:t,mode:r,svgText:s,blobUrl:u}}function at(e){const{icon:t,label:a,className:r,imgClassName:i,maskClassName:s,svgClassName:l,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",m=i??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",C=l??"iconRenderer-icon-svg",_=typeof t=="string"?t:null,y=j0(_),{iconToUse:g,mode:h,svgText:v,blobUrl:f}=lb(_),w=(k,N={})=>n.jsx("span",{className:d,style:u,...N,children:k}),b=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,B=(k,N={})=>n.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:m,...N,style:b?{...N.style,...b}:N.style});if(!t)return null;if(typeof t!="string")return w(t);if(t==="none")return w(n.jsx("span",{className:C,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(y)try{return w(o.createElement(y,{className:C,size:typeof c=="number"?c:20}),{"aria-hidden":"true"})}catch{}if(g&&g.endsWith(".svg")){if(h==="mask"){const k={"--icon-url":f?`url(${f})`:`url(${g})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return w(n.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return h==="img"?w(B(g,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):h==="inline"?w(n.jsx("span",{className:C,dangerouslySetInnerHTML:v?{__html:v}:void 0}),{"aria-hidden":"true"}):w(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return B(Fr(t),{style:u,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const x=typeof c=="number"?c:20,A=`<svg width="${x}" height="${x}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return w(n.jsx("span",{className:C,dangerouslySetInnerHTML:{__html:A}}),{"aria-hidden":"true"})}function ji(e){const[t,a]=o.useState(!1),r=o.useRef(!1),i=o.useRef(!0);o.useEffect(()=>(i.current=!0,()=>{i.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,i.current&&a(!1)};l.then(u,u)}},[e]);return{pending:t,press:s}}function ub({icon:e,title:t,message:a,action:r,className:i}){const{pending:s,press:l}=ji(r?.onClick);return n.jsxs("div",{className:we("empty-state",i),children:[e&&n.jsx(at,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(at,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function cb({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:i,className:s}){const{t:l}=xe.useTranslation(),{pending:u,press:c}=ji(r);return n.jsxs("div",{className:we("empty-state","error-state",s),role:"alert",children:[n.jsx(at,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:c,disabled:u,"aria-busy":u||void 0,children:[n.jsx(at,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:i??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function db({icon:e,title:t,description:a,cta:r,tone:i="main",disabled:s=!1,onClick:l,className:u=""}){const c=o.useId(),d=`${c}-title`,m=`${c}-desc`,p=`${c}-cta`,C=()=>{s||l?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${m} ${p}`,onClick:C,onKeyDown:_=>{(_.key==="Enter"||_.key===" ")&&(_.preventDefault(),C())},className:we("action-card",`action-card--${i}`,s&&"action-card--disabled",u),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(at,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:d,className:"action-card__title",children:t}),n.jsx("p",{id:m,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:p,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(at,{icon:"arrow-right",size:18})})]})]})})}function pb({as:e="div",className:t="",children:a,storage:r,...i}){r&&fC({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const s=we("ihabdevteam-core-scope",t);return n.jsx(e,{className:s,...i,children:a})}function Qr(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=i=>{if(i.key!=="Tab")return;const s=Array.from(a.querySelectorAll(fn)).filter(m=>!m.closest('[aria-hidden="true"]'));if(!s.length){i.preventDefault();return}const l=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;i.shiftKey&&(c===l||d)?(i.preventDefault(),u.focus()):!i.shiftKey&&c===u&&(i.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const fn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',eo=new WeakMap;function to(e,t){e&&eo.set(e,t)}function no(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!eo.has(r);)r=r.parentElement;if(!r)return t;t=eo.get(r)??null}return t}function Ti(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function Ja(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Ti(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const i=Array.from(document.querySelectorAll(fn)).filter(c=>!(e&&e.contains(c))&&Ti(c));let s=null,l=null;for(const c of i)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:l||(l=c);const u=s??l;return u?.focus(),u}function mb({title:e="",lines:t=[],notices:a=null,children:r,variant:i="default",dismissible:s=!1,className:l=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),m=o.useRef(null),p=o.useCallback(()=>{const g=m.current;g&&g.contains(document.activeElement)&&Ja(g),d(!0)},[]);if(c)return null;const C=`notice-box notice-box--${i} body-2 ${l}`.trim(),_=s&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:C,role:"note",children:[a.map((g,h)=>n.jsxs("div",{className:"notice-box__inner",children:[g.title?n.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,n.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?n.jsx("div",{children:g.lines.map((v,f)=>n.jsx("span",{className:"notice-box__line body-3",children:v},f))}):g.children??null})]},h)),_]});const y=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((g,h)=>n.jsx("li",{className:"notice-box__line",children:g},h))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:m,className:C,role:"note",children:[y,_]})}const sa=[];let Qa=!1;function Mi(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=sa[sa.length-1];t&&(e.stopPropagation(),t())}function Un(e){return sa.push(e),!Qa&&typeof document<"u"&&(document.addEventListener("keydown",Mi),Qa=!0),()=>{const t=sa.lastIndexOf(e);t>=0&&sa.splice(t,1),sa.length===0&&Qa&&typeof document<"u"&&(document.removeEventListener("keydown",Mi),Qa=!1)}}const Li=o.createContext(null);function hb(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const $i=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function Cb(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return ms.useSyncExternalStore(t,()=>$i(e),()=>!1)}function fb(e){const[t,a]=o.useState($i(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),i=l=>a(l.matches),s=r;return s.addEventListener?s.addEventListener("change",i):s.addListener&&s.addListener(i),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",i):s.removeListener&&s.removeListener(i)}},[e]),t}const gb=typeof ms.useSyncExternalStore=="function"?Cb:fb;function ln(e){const t=o.useContext(Li),a=gb(e);return t&&typeof t.mobile=="boolean"&&hb(e)?t.mobile:a}const bb="(prefers-reduced-motion: reduce)";function ao(){return ln(bb)}function cn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:i=20,onClose:s,closeOnOutsideClick:l=!0,className:u="",role:c="dialog",ariaLabel:d="",children:m,backdrop:p=!1,isMobilePopup:C=!1,useBorder:_=!0,header:y,focusOnOpen:g}=e||{},h=o.useRef(null),[v,f]=o.useState({position:"fixed",left:0,top:-9999}),[w,b]=o.useState(!1),[B,x]=o.useState("bottom"),[A,k]=o.useState(!1),[N,S]=o.useState(!1),E=!t&&!a,O=o.useCallback((q=!1)=>{if(N&&C)return;const $=a?a.getBoundingClientRect():t;if(!$||!h.current)return;const V=h.current,{offsetWidth:H,offsetHeight:T}=V,D=window.innerWidth,R=window.innerHeight,I=D-$.right,W=$.left,ee=$.top,oe=R-$.bottom;let ce=0,J=0,re="top";if(ee>=T+r)re="top",J=$.top-r-T,ce=$.left+$.width/2-H/2;else if(oe>=T+r)re="bottom",J=$.bottom+r,ce=$.left+$.width/2-H/2;else if(I>=H+r)re="right",ce=$.right+r,J=$.top+$.height/2-T/2;else if(W>=H+r)re="left",ce=$.left-r-H,J=$.top+$.height/2-T/2;else{const pe=Math.max(ee,oe,I,W);pe===ee?(re="top",J=$.top-r-T,ce=$.left+$.width/2-H/2):pe===oe?(re="bottom",J=$.bottom+r,ce=$.left+$.width/2-H/2):pe===I?(re="right",ce=$.right+r,J=$.top+$.height/2-T/2):(re="left",ce=$.left-r-H,J=$.top+$.height/2-T/2)}const Ne=Number.isFinite(Number(i))?Number(i):8;ce=Math.min(Math.max(ce,Ne),D-H-Ne),J=Math.min(Math.max(J,Ne),R-T-Ne);const K=Math.round(ce),Q=Math.round(J);q&&h.current?(h.current.style.left=`${K}px`,h.current.style.top=`${Q}px`,h.current.dataset.placement=re):(x(re||B),f({position:"fixed",left:K,top:Q}),k(!0))},[N,C,a,t,r,i,B]);o.useLayoutEffect(()=>{if(E)return;if(N&&C){f({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}O();const q=requestAnimationFrame(()=>O());return()=>cancelAnimationFrame(q)},[t,a,r,m,i,E,N,C,O]),o.useEffect(()=>{if(E||N&&C||!h.current||typeof ResizeObserver>"u")return;const q=new ResizeObserver(()=>{t&&O()});return q.observe(h.current),()=>q.disconnect()},[t,m,i,E,N,C,O]),o.useEffect(()=>{if(E||N&&C)return;let q=null;const $=()=>{if(typeof requestAnimationFrame>"u"){O(!0);return}q===null&&(q=requestAnimationFrame(()=>{q=null,O(!0)}))},V=H=>{if(!a&&s){const T=H.target;if(T&&h.current&&h.current.contains(T))return;try{if(T&&T.closest&&T.closest("[data-tooltip-ignore]"))return}catch{}P.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",V,{passive:!0,capture:!0}),()=>{q!==null&&cancelAnimationFrame(q),window.removeEventListener("resize",$),document.removeEventListener("scroll",V,{capture:!0})}},[t,a,s,r,m,i,E,N,C,O]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const q=window.matchMedia("(max-width: 768px)"),$=()=>S(!!q.matches);$();try{q.addEventListener?q.addEventListener("change",$):q.addListener($)}catch{try{q.addListener($)}catch{}}return()=>{try{q.removeEventListener?q.removeEventListener("change",$):q.removeListener($)}catch{}}},[]);const F=o.useRef(!1),Y=o.useRef(null),M=ao(),L=o.useCallback((q=!1)=>{if(s&&!(w||F.current)){if(F.current=!0,q){b(!0);try{s&&s()}catch{F.current=!1,b(!1)}return}b(!0),Y.current=setTimeout(()=>{Y.current=null;try{s&&s()}catch{F.current=!1,b(!1)}},M?0:200)}},[w,s,b,M]);o.useEffect(()=>()=>{Y.current&&clearTimeout(Y.current)},[]),o.useEffect(()=>{if(E)return;const q=H=>{const T=h.current;if(!T)return;const D=H.target;if(D&&!T.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&L(!0)}},$=H=>{const T=h.current;if(!T)return;const D=H.target;if(D&&!T.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&L(!0)}},V=H=>{if(H.key==="Tab"){const T=h.current;if(!T)return;const D=T.querySelectorAll(fn);if(!D||D.length===0)return;const R=D[0],I=D[D.length-1],W=document.activeElement;H.shiftKey?W===R&&(H.preventDefault(),I.focus()):W===I&&(H.preventDefault(),R.focus())}};return document.addEventListener("pointerdown",q,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",V),()=>{document.removeEventListener("pointerdown",q,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",V)}},[s,l,L,E]);const P=o.useRef(L);o.useEffect(()=>{P.current=L});const G=!!s;o.useEffect(()=>{if(!(E||!G))return Un(()=>P.current())},[E,G]),o.useEffect(()=>{const q=()=>{L(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",q),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",q)}},[L]);const U=o.useRef(null);o.useEffect(()=>{if(E||g===!1||!A)return;const q=h.current;if(!q)return;const $=q.querySelector(fn);if($)return U.current=document.activeElement,$.focus(),()=>{const V=U.current;U.current=null,V&&document.contains(V)&&V.focus()}},[E,g,A]),o.useEffect(()=>{c==="dialog"&&!d&&Zt("tooltip-no-name",'[ihab/Tooltip] \uC774\uB984 \uC5C6\uB294 role="dialog" \uC785\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. \uB0AD\uB3C5\uAE30\uAC00 "\uB300\uD654\uC0C1\uC790" \uB77C\uACE0\uB9CC \uC77D\uC2B5\uB2C8\uB2E4.')},[c,d]);const z=n.jsxs("div",{ref:h,className:`tooltip-content ${E?"tooltip-content--inline":""} ${_?"tooltip-content--bordered":""} ${w?"is-closing":""} ${u} ${N&&C?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:E?{}:{...v,visibility:A?"visible":"hidden"},tabIndex:-1,"data-placement":B,"data-left":E?"":v.left,"data-top":E?"":v.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[y!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:y}),m]});if(E||typeof document>"u")return z;if(p||N&&C){const q=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&L(!0)}}),z]});return en.createPortal(q,document.body)}return en.createPortal(z,document.body)}function An(e){const{anchorRect:t,text:a,offset:r=8,onClose:i,className:s="",ariaLabel:l}=e||{};return a?n.jsx(cn,{anchorRect:t,offset:r,onClose:i,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Gn(e){const{t}=xe.useTranslation(),{anchorRect:a,title:r,items:i,activeIndex:s=-1,showIndex:l=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},m=(Array.isArray(i)?i:i?[i]:[]).map(p=>typeof p=="string"?{text:p}:p);return!m.length&&!r?null:n.jsx(cn,{anchorRect:a,offset:c,onClose:u,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:m.map((p,C)=>n.jsxs("li",{className:`tooltip-description__item body-3${C===s?" tooltip-description__item--active":""}`,children:[l&&m.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[C+1,"."]}),p.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),n.jsx("span",{children:p.text})]},C))})]})})}function ka(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let ro=0,Ri=!1;function Pi(){Ri||typeof document>"u"||(Ri=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(ro=Date.now())},!0),document.addEventListener("touchstart",()=>{ro=Date.now()},{capture:!0,passive:!0}))}Pi();function ia(e){return!!e&&e.pointerType==="touch"}function la(e=1e3){return Pi(),Date.now()-ro<e}function oo(e,t,a,{enabled:r=!0,fallbackOnParent:i=!1}={}){const s=ka(e),l=ka(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const m=p=>{const C=p,_=p.target,y=a.current,g=!!(_&&y&&y.contains(_));if(C.pointerType!=="touch"){g&&(u.current=null);return}if(g){u.current=s.current;return}u.current=null,s.current&&!(_&&_.closest?.(".tooltip-content"))&&l.current(!1,y)};return document.addEventListener("pointerdown",m,!0),()=>document.removeEventListener("pointerdown",m,!0)},[r,a,s,l]);const d=o.useCallback(m=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),l.current(!p,m??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!i)return;const m=a.current,p=m?.parentElement;if(!m||!p)return;let C=null;const _=h=>{const v=h.changedTouches?.[0];if(!v)return!1;const f=m.getBoundingClientRect();return v.clientX>=f.left&&v.clientX<=f.right&&v.clientY>=f.top&&v.clientY<=f.bottom},y=h=>{C=_(h)?s.current:null},g=h=>{const v=C;C=null,!(v===null||Date.now()-c.current<700||!_(h))&&(u.current=null,c.current=Date.now(),l.current(!v,m))};return p.addEventListener("touchstart",y,{passive:!0}),p.addEventListener("touchend",g),()=>{p.removeEventListener("touchstart",y),p.removeEventListener("touchend",g)}},[r,i,a,s,l]),{touchPress:d}}function yb(e,t){const{size:a=48,type:r,htmlType:i,href:s,target:l,rel:u,icon:c,rightIcon:d,label:m,count:p,subLabel:C,children:_,ariaLabel:y,variant:g="default",align:h="center",nowrap:v=!1,selected:f,toggleable:w=!1,ariaExpanded:b,ariaControls:B,disabled:x=!1,useLabel:A=!0,useBorder:k=!0,useBG:N=!0,useDisabledCovered:S=!1,useDisabledInvisible:E=!1,width:O,minWidth:F,onClick:Y,onDisabledClick:M,showTooltipInfo:L=!1,tooltipInfoText:P=null,tooltipDescription:G=null,tooltipOnly:U=!1,iconSize:z="medium",iconColor:q,shape:$="rounded",color:V,className:H,...T}=e,D=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),R=D.match(/^\d+$/)?`button${D}`:`button-${D}`,I=Number(a),W=!isNaN(I)&&I<40?"button-2":"button-1",ee=m??_,oe=x||!!T.disabled,ce=oe?S?"disabled-covered":E?"disabled-invisibled":"disabled":g,J=ce?`button--variant-${ce}`:"",re=h?`button--align-${h}`:"",Ne=v?"button--nowrap":"",K=$?`button--shape-${$}`:"",Q=typeof q=="string"&&q.startsWith("--")?`var(${q})`:q,pe={...O?{width:typeof O=="number"?`${O}px`:O}:{},...F?{minWidth:typeof F=="number"?`${F}px`:F}:{},...k?{}:{"--button-border":oe?"0":"1px solid transparent"},...Q?{"--button-icon-color":Q}:{},...V?{"--color-main":V}:{}},De=A===!1?"":ee,ye=Array.isArray(De)?De.length>0:!!De,ne=!!d,le=r??(ye||c||ne?"bar":"dot"),Ce=`${R}--${le}`,ge=o.useRef(null);o.useEffect(()=>{!ea||i!==void 0||ge.current?.closest("form")&&Zt(`button-in-form:${typeof ee=="string"?ee:""}`,'[ihab/Button] <form> \uC548\uC778\uB370 htmlType \uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 \uC774 \uB2E8\uCD94\uB294 type="button" \uC774\uB77C \uD3FC\uC744 \uBCF4\uB0B4\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uBA74 htmlType="submit" \uC744 \uC8FC\uC138\uC694. \uD3FC\uC5D0 \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uAC00 \uD558\uB098\uB3C4 \uC5C6\uC73C\uBA74 **Enter \uB85C\uB3C4 \uC548 \uBCF4\uB0B4\uC9D1\uB2C8\uB2E4**(\uCE78\uC774 \uB458 \uC774\uC0C1\uC77C \uB54C).'+(typeof ee=="string"&&ee?` \uB2E8\uCD94: ${ee}`:""))},[i,ee]);const fe=o.useRef(t);fe.current=t;const $e=o.useCallback(Re=>{ge.current=Re;const tt=fe.current;typeof tt=="function"?tt(Re):tt&&(tt.current=Re)},[]),Ve=o.useRef(oe),[je,Fe]=o.useState(!!f),[qe,mt]=o.useState(!1),[ct,rt]=o.useState(null),Ct=o.useCallback(()=>mt(!1),[]),[Be,We]=o.useState(!1),_e=o.useId();o.useEffect(()=>{typeof f=="boolean"&&Fe(f)},[f]),o.useEffect(()=>{if(Ve.current&&!oe&&ge.current){const Re=ge.current;let tt=!1;try{tt=Re.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&Re.blur(),Re.style.pointerEvents="none";const xt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{ge.current&&(ge.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(xt)}Ve.current=oe},[oe]);const Ue=typeof f=="boolean"?!!f:je,Ae=typeof b=="boolean"?void 0:w||typeof f=="boolean"?Ue?"true":"false":T["aria-pressed"],Te=we("button",R,Ce,J,re,Ne,K,Ue?"is-selected":null,N?null:"button--no-bg",U?"button--tooltip-only":null,H),Se=`button__icon button__icon--${z}`,Xe=Array.isArray(C)?C:C!==void 0?[C]:[],Qe=()=>{if(Array.isArray(De))return De.map((tt,xt)=>{const Mt=Xe[xt];return n.jsxs("span",{className:`button__label-text${Mt!==void 0?" button__label-text--has-sub":""}`,children:[tt,Mt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Mt})]},xt)});const Re=C!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[De,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:C})]})},dt=Re=>{typeof f!="boolean"&&!w&&Fe(!1),Re.currentTarget.blur()},ht=Re=>{oe||(typeof T.onMouseLeave=="function"&&T.onMouseLeave(Re),dt(Re))},wt=Re=>{if(U&>&&it.touchPress(Re.currentTarget),oe){gt&&it.touchPress(Re.currentTarget),Re.preventDefault(),M?.(Re);return}typeof f!="boolean"&&w&&Fe(tt=>!tt),Y?.(Re)},ft=o.useCallback(()=>{(L||G)&&(mt(!0),rt(ge.current?.getBoundingClientRect()??null))},[L,G]),Nt=o.useCallback(()=>{(L||G)&&(mt(!1),rt(null))},[L,G]),gt=!!(L||G),it=oo(qe,Re=>{Re?ft():Nt()},ge,{enabled:gt&&(oe||U),fallbackOnParent:gt&&oe}),Ke={...T};delete Ke.disabled,delete Ke.className,delete Ke.faded,delete Ke.useFaded,delete Ke.loading,delete Ke.onMouseLeave,delete Ke.onPointerEnter,delete Ke.onPointerLeave,delete Ke.onPointerUp,delete Ke.onFocus,delete Ke.onBlur,oe&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const se=(typeof L=="string"?L:null)??(typeof P=="string"?P:null)??(typeof y=="string"?y:null)??(typeof ee=="string"?ee:null)??void 0,ke=typeof y=="string"?y:typeof ee=="string"?ee:se,ze=G?[G.title,...G.items??[]].filter(Boolean).join(". "):L&&se&&se!==ke?se:"",nt=[typeof T["aria-describedby"]=="string"?T["aria-describedby"]:void 0,ze?_e:null].filter(Boolean).join(" ")||void 0,Ie=(Re,tt)=>n.jsx(at,{icon:Re,label:tt??ke,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Ge=()=>le==="dot"?n.jsxs(n.Fragment,{children:[Ie(c),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()})]}):h==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:Ie(c)}),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()})]}),ne&&n.jsx("span",{className:"button__right",children:Ie(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:Ie(c,y??ee)}),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()}),ne&&n.jsx("span",{className:"button__right",children:Ie(d)})]}),bt=!!s&&!oe;return n.jsxs(n.Fragment,{children:[n.jsxs(bt?"a":"button",{...Ke,ref:$e,...bt?{href:s,target:l,rel:u??(l==="_blank"?"noreferrer":void 0)}:{type:i??"button",disabled:oe&&!M&&!Be},className:Te,"aria-pressed":Ae,"aria-expanded":typeof b=="boolean"?b:T["aria-expanded"],"aria-controls":B??T["aria-controls"],"aria-label":ke,"aria-disabled":oe&&(bt||M||Be)?!0:void 0,"aria-describedby":nt,style:pe,onClick:wt,onMouseLeave:ht,onPointerEnter:Re=>{ia(Re)||ft(),!oe&&typeof T.onPointerEnter=="function"&&T.onPointerEnter(Re)},onPointerLeave:Re=>{ia(Re)||Nt(),!oe&&typeof T.onPointerLeave=="function"&&T.onPointerLeave(Re)},onPointerUp:Re=>{oe&>&&it.touchPress(Re.currentTarget),!oe&&typeof T.onPointerUp=="function"&&T.onPointerUp(Re)},onFocus:Re=>{We(!0),la()||ft(),!oe&&typeof T.onFocus=="function"&&T.onFocus(Re)},onBlur:Re=>{We(!1),oe||dt(Re),Nt(),!oe&&typeof T.onBlur=="function"&&T.onBlur(Re)},children:[Ge(),ze?n.jsx("span",{id:_e,hidden:!0,"aria-label":ze}):null]}),qe&&G?n.jsx(Gn,{anchorRect:ct,title:G.title,items:G.items,onClose:Ct}):qe&&se?n.jsx(An,{anchorRect:ct,text:se,onClose:Ct}):null]})}const me=o.forwardRef(yb);me.displayName="Button";function Bt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const i=r.current?.parentElement??null;return t(i,e),()=>a(i)},[e,t,a]),r}const Na={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},so=new WeakMap;function io(e){if(e)return so.get(e)}function Ut(e,t){e&&(e.style.setProperty(Na.title,t.title),e.style.setProperty(Na.description,t.description),so.set(e,t))}function Gt(e){e&&(e.style.removeProperty(Na.title),e.style.removeProperty(Na.description),so.delete(e))}const Fi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Ii(){const e=Bt(Fi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Oi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function Hi(){const e=Bt(Oi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const zi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Vi(){const e=Bt(zi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const Wi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function qi(){const e=Bt(Wi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Ui={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Gi(){const e=Bt(Ui,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Ki={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Yi(){const e=Bt(Ki,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Zi={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Xi(){const e=Bt(Zi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Ji={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Qi(){const e=Bt(Ji,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const el={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function tl(){const e=Bt(el,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const nl={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function al(){const e=Bt(nl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const rl={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function ol(){const e=Bt(rl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const sl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function il(){const e=Bt(sl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const ll={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function ul(){const e=Bt(ll,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const cl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function dl(){const e=Bt(cl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Qt=(e,t,a)=>({key:e,get label(){return $t.t(`promoBannerBg.${e}`,t)},textTone:a}),vb=[Qt("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("soft","\uC18C\uD504\uD2B8","dark"),Qt("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Qt("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Qt("warm","\uC6DC(\uAC15\uC870)","dark"),Qt("dark","\uB2E4\uD06C","light"),Qt("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Qt("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Qt("outline","\uC544\uC6C3\uB77C\uC778","dark"),Qt("success","\uC131\uACF5/\uC644\uB8CC","light"),Qt("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Qt("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],pl={main:Ii,soft:Hi,sub:Vi,deep:qi,softSub:Gi,warm:Yi,dark:Xi,radial:Qi,diagonal:tl,dots:al,outline:ol,success:il,naver:ul,instagram:dl};function ml({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:i=.1,lineHeightRatio:s=1.4}={}){const l=w=>Math.max(a,Math.min(r,Number(w))),u=w=>{try{const b=localStorage.getItem(w),B=b?Number(b):1;return Number.isFinite(B)?l(B):l(1)}catch{return l(1)}},[c,d]=o.useState(()=>u(e)),[m,p]=o.useState(e);m!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const C=w=>{d(typeof w=="function"?b=>l(w(b)):l(w))},_=()=>C(w=>+(w+i).toFixed(6)),y=()=>C(w=>+(w-i).toFixed(6)),g=c<r-Number.EPSILON,h=c>a+Number.EPSILON,v=Math.round(t*c),f=Math.round(v*s);return{scale:c,setScale:C,increase:_,decrease:y,canIncrease:g,canDecrease:h,fontSize:v,lineHeight:f}}function hl(e,t){const a=ka(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const lo=" \xB7 ",Cl=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(lo)?e.split(lo).pop()??e:e})(),xb=o.createContext(!1),Kn=[];let fl=null;function _b(e){const t=o.useContext(xb);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Kn.length===0&&(fl=document.title);const a={text:Cl?`${e}${lo}${Cl}`:e};return Kn.push(a),document.title=a.text,()=>{const r=Kn.lastIndexOf(a);r>=0&&Kn.splice(r,1),document.title=Kn.length?Kn[Kn.length-1].text:fl??document.title}},[e,t])}const gl=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}],wb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function an(e,t){return wb().compare(e,t)}const er=new Map;function Ab(e){const t=er.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let i=0;for(let s=r.exec(e);s;s=r.exec(e)){let l=s.index,u=s[0];u[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,u=u.slice(1)),l>i&&a.push(e.slice(i,l)),a.push(Number(u)),i=s.index+s[0].length}return i<e.length&&a.push(e.slice(i)),er.size>5e3&&er.clear(),er.set(e,a),a}function Bb(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function kb(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),i=a(t);if(r===i)return 0;const s=(d,m)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=Bb(m);return p!==null?[p]:Ab(m)},l=s(e,r),u=s(t,i),c=Math.min(l.length,u.length);for(let d=0;d<c;d++){const m=l[d],p=u[d];if(typeof m=="number"&&typeof p=="number"){if(m!==p)return m-p;continue}if(typeof m=="number")return-1;if(typeof p=="number")return 1;const C=an(m,p);if(C!==0)return C}return l.length!==u.length?l.length-u.length:an(r,i)}const bl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function uo(e,t,a){const r=bl(e),i=bl(t);if(r||i)return r===i?0:r?1:-1;const s=kb(e,t);return a?s:-s}function Nb(e,t,a){const{t:r}=xe.useTranslation(),[i,s]=o.useState(()=>{const y=a?.initialPageSize;return y&&gl.some(g=>g.value===y)?y:"25"}),[l,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),l!==1&&u(1));const m=o.useMemo(()=>gl.map(y=>({...y,label:r("visits.showN",{n:y.value})})),[r]),p=o.useCallback(y=>{s(y),u(1)},[]),C=Math.max(1,Math.ceil(e.length/Number(i)));(l>C||l<1||!Number.isFinite(l))&&u(Math.min(Math.max(1,Number.isFinite(l)?l:1),C));const _=Math.min(Math.max(1,Number.isFinite(l)?l:1),C);return{pageRows:o.useMemo(()=>e.slice((_-1)*Number(i),_*Number(i)),[e,_,i]),pageSizeProps:{options:m,value:i,onChange:p},paginationProps:{page:_,total:C,onChange:u},setPage:u}}function Eb(e){const[t,a]=o.useState(null),r=o.useRef(t),i=o.useRef(e?.onSortChange);i.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,m=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=m,a(m),i.current?.(m)},[]),l=o.useCallback((c,d)=>({label:c,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>s(d)}),[t,s]),u=o.useCallback((c,d)=>{if(!t)return c;const{key:m,asc:p}=t;return[...c].sort((C,_)=>uo(d(C,m),d(_,m),p))},[t]);return{sort:t,field:l,sortRows:u}}const dn="\uC804\uCCB4";Object.fromEntries(Object.entries($C).map(([e,{nucleus:t}])=>[e,t]));const Db={labial:e=>e("common.phonetics.place.labial",{defaultValue:"\uC591\uC21C\uC74C"}),alveolar:e=>e("common.phonetics.place.alveolar",{defaultValue:"\uCE58\uC870\uC74C"}),palatal:e=>e("common.phonetics.place.palatal",{defaultValue:"\uACBD\uAD6C\uAC1C\uC74C"}),velar:e=>e("common.phonetics.place.velar",{defaultValue:"\uC5F0\uAD6C\uAC1C\uC74C"}),glottal:e=>e("common.phonetics.place.glottal",{defaultValue:"\uC131\uBB38\uC74C"})},Sb={frontHigh:e=>e("common.phonetics.vowel.frontHigh",{defaultValue:"\uC804\uC124 \uACE0\uBAA8\uC74C"}),backHighUnrounded:e=>e("common.phonetics.vowel.backHighUnrounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C"}),backHighRounded:e=>e("common.phonetics.vowel.backHighRounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"}),frontMid:e=>e("common.phonetics.vowel.frontMid",{defaultValue:"\uC804\uC124 \uC911\uBAA8\uC74C"}),backMidUnrounded:e=>e("common.phonetics.vowel.backMidUnrounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"}),backMidRounded:e=>e("common.phonetics.vowel.backMidRounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"}),low:e=>e("common.phonetics.vowel.low",{defaultValue:"\uC800\uBAA8\uC74C"})},jb={j:e=>e("common.phonetics.glide.j",{defaultValue:"j\uD65C\uC74C"}),w:e=>e("common.phonetics.glide.w",{defaultValue:"w\uD65C\uC74C"}),velar:e=>e("common.phonetics.glide.velar",{defaultValue:"\u0270\uD65C\uC74C"})};function Tb(e,t){if("place"in t)return Db[t.place](e);const a=Sb[t.vowel](e);return t.glide?`${a} \xB7 ${jb[t.glide](e)}`:a}const Mb=(e,{defaultValue:t})=>t,yl=(e,t)=>({jamos:e,phonetic:t,tooltip:Tb(Mb,t)}),Bn=(e,t)=>t.map(a=>yl([a],{place:e})),Rt=(e,t,a)=>yl([...e],a?{vowel:t,glide:a}:{vowel:t}),co={cho:[Bn("labial",["\u3142","\u3143","\u314D","\u3141"]),Bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Bn("alveolar",["\u3145","\u3146"]),Bn("palatal",["\u3148","\u3149","\u314A"]),Bn("velar",["\u3131","\u3132","\u314B"]),Bn("glottal",["\u314E"])],jung:[[Rt("\u3163","frontHigh"),Rt("\u315F","frontHigh","w"),Rt("\u3162","frontHigh","velar")],[Rt("\u3161","backHighUnrounded")],[Rt("\u315C","backHighRounded"),Rt("\u3160","backHighRounded","j")],[Rt("\u3154\u3150","frontMid"),Rt("\u3156\u3152","frontMid","j"),Rt("\u3159\u315A\u315E","frontMid","w")],[Rt("\u3153","backMidUnrounded"),Rt("\u3155","backMidUnrounded","j"),Rt("\u315D","backMidUnrounded","w")],[Rt("\u3157","backMidRounded"),Rt("\u315B","backMidRounded","j")],[Rt("\u314F","low"),Rt("\u3151","low","j"),Rt("\u3158","low","w")]],jong:[Bn("labial",["\u3142","\u3141"]),Bn("alveolar",["\u3137","\u3134","\u3139"]),Bn("velar",["\u3131","\u3147"])]},Lb=e=>e===$b?[]:Array.from(e),$b="__NO_CODA__",po=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:i})=>({v:a.join(""),phonetic:r,tooltip:i}))),vl={cho:po(co.cho),jung:po(co.jung),jong:po(co.jong)};vl.jung.flat().forEach(({v:e})=>{for(const t of Lb(e));}),new Set(vl.cho.flat().map(e=>e.v));function Rb(e,t=!0){const a=ka(e);o.useEffect(()=>{if(t)return Un(()=>{a.current?.()})},[t,a])}function Ea(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),i=o.useCallback(s=>{const l=s.getBoundingClientRect();t(u=>u?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:i}}function Pb(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const l=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),i(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),i(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:u}}function xl(e="warning"){const[t,a]=o.useState(""),[r,i]=o.useState(e),[s,l]=o.useState(0),u=o.useCallback((p,C)=>{i(C),a(p),l(_=>_+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),m=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:m}}function Da(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Sa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[i,s]=o.useState(!1),[l,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),m=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{i&&m()},[i,m]),o.useEffect(()=>{if(!i)return;let _=d.current?.offsetHeight??0;_>0&&m();let y=0,g=null;typeof ResizeObserver<"u"&&d.current&&(g=new ResizeObserver(()=>{const A=d.current?.offsetHeight??0;if(A!==_){if(_=A,++y>4){g?.disconnect(),g=null;return}m()}}),g.observe(d.current));const h=A=>{const k=A.target;r&&k.closest?.(r)||c.current?.contains(k)||d.current?.contains(k)||s(!1)};document.addEventListener("mousedown",h),document.addEventListener("pointerdown",h);let v=null;const f=()=>{if(typeof requestAnimationFrame>"u"){m();return}v===null&&(v=requestAnimationFrame(()=>{v=null,m()}))},w=A=>{d.current?.contains(A.target)||(t==="reposition"?f():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",w,!0);const b=()=>{a==="reposition"?f():a==="close"&&s(!1)};let B=null;const x=()=>{b(),B&&clearTimeout(B),B=setTimeout(()=>{B=null,a==="reposition"&&m()},250)};return a!=="ignore"&&(window.addEventListener("resize",b),window.addEventListener("orientationchange",x)),()=>{v!==null&&cancelAnimationFrame(v),g?.disconnect(),document.removeEventListener("mousedown",h),document.removeEventListener("pointerdown",h),t!=="ignore"&&window.removeEventListener("scroll",w,!0),a!=="ignore"&&(window.removeEventListener("resize",b),window.removeEventListener("orientationchange",x)),B&&clearTimeout(B)}},[i,m,t,a,r]),o.useEffect(()=>{if(i)return Un(()=>s(!1))},[i]);const p=o.useCallback(()=>s(_=>!_),[]),C=o.useCallback(()=>s(!1),[]);return{open:i,setOpen:s,toggle:p,close:C,style:l,triggerRef:c,menuRef:d}}function Fb(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:i,playMs:s=1100,feedbackMs:l=1500}={}){const[u,c]=o.useState([]),[d,m]=o.useState(0),[p,C]=o.useState("idle"),[_,y]=o.useState(null),[g,h]=o.useState([]),[v,f]=o.useState(null),[w,b]=o.useState(0),B=o.useRef(0),x=o.useCallback($=>{B.current=typeof $=="function"?$(B.current):$,b(B.current)},[]),A=o.useRef(r),k=o.useRef(i);o.useEffect(()=>{A.current=r,k.current=i},[r,i]);const N=o.useRef([]),S=()=>{N.current.forEach(clearTimeout),N.current=[]},E=($,V)=>{N.current.push(setTimeout(V,$))};o.useEffect(()=>()=>S(),[]);const O=u[d]?.id??null,F=o.useRef(null),Y=o.useCallback(()=>{S(),C("playing"),h([]),f(null),x(0);let $=0;e.forEach((V,H)=>{E($,()=>{m(H),y(V.id),A.current?.(V)}),E($+1e3,()=>{y(null),h(T=>[...T,V.id])}),$+=1300}),E($,()=>{C("done"),k.current?.({score:0,total:e.length})})},[e,x]),M=o.useCallback(($,V)=>{if(V>=$.length){C("done"),k.current?.({score:B.current,total:$.length});return}F.current=null,m(V),f(null),C("playing"),y($[V].id),A.current?.($[V]),E(s,()=>{y(null),C("waiting")})},[s]),L=o.useCallback(()=>{S();const $=Aa(e);c($),x(0),h([]),M($,0)},[e,M,x]),P=o.useCallback(()=>{t==="playback"?(c(e),Y()):L()},[t,e,Y,L]),G=o.useCallback(()=>{S(),C("idle"),y(null),h([]),f(null),m(0),x(0),c([])},[x]),U=e.map($=>$.id).join("|");o.useEffect(()=>(a?P():G(),()=>S()),[t,U,a]);const z=o.useCallback($=>{p!=="waiting"||t==="playback"||F.current===d||(F.current=d,f($),$===u[d]?.id&&x(V=>V+1),t==="exam"?(C("playing"),E(400,()=>M(u,d+1))):(C("feedback"),E(l,()=>M(u,d+1))))},[p,t,u,d,M,l,x]),q=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:_,playedIds:g,selectedId:v,answerId:O,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:z},index:d,total:q,score:w,phase:p,done:p==="done",start:P,reset:G}}function Ib({title:e,description:t,actionLabel:a,onAction:r,bg:i,color:s,size:l="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:m=""}){const p=i??s??"main",C=o.useRef(null),[_,y]=o.useState("main"),g=ln("(max-width: 767px)"),h=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const w=C.current;if(!w)return;const b=io(w),B=(x,A,k)=>{if(k!==void 0)w.style.setProperty(A,k),h.current[x]=!0;else if(h.current[x]){const N=b?.[x];N?w.style.setProperty(A,N):w.style.removeProperty(A),h.current[x]=!1}};B("title","--promo-banner-bg-title",c),B("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const w=C.current;if(!w)return;const b=io(w);y(b?.actionVariant??"main")},[p]);const v=we("promo-banner",`promo-banner--${l}`,m),f=pl[p];return n.jsxs("div",{ref:C,className:v,role:"note",children:[n.jsx(f,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(me,{htmlType:"button",size:40,variant:u??_,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...g?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function Ob({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":i}){const{t:s}=xe.useTranslation(),l=i??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,m]=o.useState(0),[p,C]=o.useState(!1),[_,y]=o.useState(!1),[g,h]=o.useState(!1),v=o.useRef(null),f=o.useRef(null),w=o.useRef(null),b=ao(),B=p||_||g,x=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||B||b)return;const k=window.setInterval(()=>m(N=>(Math.min(N,c-1)+1)%c),t);return()=>window.clearInterval(k)},[c,t,B,b]);const A=k=>{f.current!=null&&window.clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,h(!1)},k)};return o.useEffect(()=>()=>{f.current!=null&&window.clearTimeout(f.current)},[]),o.useEffect(()=>{if(!g)return;const k=N=>{N.pointerType==="touch"&&(w.current&&w.current.contains(N.target)||(f.current!=null&&(window.clearTimeout(f.current),f.current=null),h(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[g]),c===0?null:n.jsxs("section",{ref:w,className:we("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:k=>{v.current=k.pointerType},onPointerDown:k=>{v.current=k.pointerType,k.pointerType==="touch"&&(f.current!=null&&(window.clearTimeout(f.current),f.current=null),h(!0))},onPointerUp:k=>{k.pointerType==="touch"&&A(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&A(5e3)},onMouseEnter:()=>{v.current!=="touch"&&C(!0)},onMouseLeave:()=>C(!1),onFocus:k=>{let N=!0;try{N=k.target.matches(":focus-visible")}catch{N=!0}y(N)},onBlur:k=>{k.currentTarget.contains(k.relatedTarget)||y(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${x*100}%)`},children:u.map((k,N)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":N!==x,...N!==x?{inert:!0}:{},children:k},N))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[x]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((k,N)=>n.jsx("button",{type:"button",className:`top-banner__dot${N===x?" top-banner__dot--active":""}`,"aria-label":s("topBanner.dotAriaLabel",{count:c,index:N+1,defaultValue:`${c}\uAC1C \uC911 ${N+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":N===x,onClick:()=>m(N)},N))})]})}function Hb({title:e,body:t,open:a=!1,onToggle:r,avatar:i,titleClassName:s="body-2",bodyClassName:l="body-2",className:u=""}){const{t:c}=xe.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${u}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const p=Array.from(m.querySelectorAll("[data-accordion-header]")),C=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[C+1]:p[C-1])?.focus()}},children:[i&&n.jsx("div",{className:"accordion-item__avatar",children:i}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(at,{icon:a?"chevron-up":"chevron-down",label:a?c("accordion.collapse","\uC811\uAE30"):c("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function zb({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:i}){const[s,l]=o.useState({index:t}),u=(c,d)=>s.id!=null&&c.id!=null?c.id===s.id:s.id==null&&d===s.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,d)=>n.jsx(Hb,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>l(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:i},c.id??d))})}function Vb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function Wb(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function qb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function kt(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:i="","aria-label":s,"aria-hidden":l}=e;if(a==="dot"){const{icon:B,number:x,position:A="top-right",onClick:k,animate:N=!1}=e,S=B??"check",E=x!==void 0?"number":S,O=typeof r=="number"?r:32,F=we("circle-badge",`circle-badge--${E}`,`circle-badge--${A}`,`circle-badge--${O}`,N?"circle-badge--animate":"",k?"circle-badge--clickable":"",i),Y=x!==void 0?t("badge.nthSelected",{n:x,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[S];return n.jsxs("span",{className:F,onClick:k,onKeyDown:k?M=>{M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.currentTarget.click())}:void 0,"aria-label":l?void 0:s??Y,"aria-hidden":l||void 0,role:k?"button":l?void 0:"img",tabIndex:k?0:void 0,children:[x!==void 0&&x,x===void 0&&S==="check"&&n.jsx(Vb,{}),x===void 0&&S==="remove"&&n.jsx(Wb,{}),x===void 0&&S==="minus"&&n.jsx(qb,{})]})}const{label:u,children:c,variant:d="default",fill:m="filled",minWidth:p,iconLeft:C,iconRight:_,color:y}=e,g=typeof r=="number"?"medium":r??"medium",h={small:"caption-2b",medium:"body-3b",large:"body-2b"}[g]??"body-2b",v={small:12,medium:14,large:16}[g]??14,f=we("badge",`badge--${d}`,`badge--${g}`,m!=="filled"?`badge--${m}`:"",h,i),w=y?.startsWith("--")?`var(${y})`:y,b=p!==void 0||w?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...w?{"--badge-color":w}:{}}:void 0;return n.jsxs("span",{className:f,style:b,"aria-label":l?void 0:s,role:s&&!l?"img":void 0,"aria-hidden":l||void 0,children:[C&&n.jsx(at,{icon:C,size:v,className:"badge__icon"}),u??c,_&&n.jsx(at,{icon:_,size:v,className:"badge__icon"})]})}function ja({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:i}=xe.useTranslation(),s=r==="small"?40:48,[l,u]=o.useState([]),c=o.useMemo(()=>{const h=[{title:null,columns:e}];let v=e;for(const f of l){const w=v?.[f.ci]?.items?.[f.ii];if(!w||!Array.isArray(w.children)||!w.children.length)break;v=[{title:null,items:w.children}],h.push({title:w.label||null,columns:v})}return h},[e,l]),d=c[c.length-1],m=c.length-1,p=o.useCallback(()=>u(h=>h.slice(0,Math.max(0,Math.min(h.length,m)-1))),[m]),C=o.useRef(null),_=o.useRef(null),y=c.length;o.useEffect(()=>{_.current||(_.current=document.activeElement);let h=0,v=0;const f=()=>{const w=C.current?.querySelector("button:not([disabled])");if(w&&w.offsetParent){w.focus({preventScroll:!0});return}v++<20&&(h=requestAnimationFrame(f))};return h=requestAnimationFrame(f),()=>cancelAnimationFrame(h)},[y]),o.useEffect(()=>()=>{_.current?.focus?.({preventScroll:!0})},[]);const g=o.useCallback((h,v,f)=>{if(h){if(Array.isArray(h.children)&&h.children.length){u(w=>[...w.slice(0,m),{ci:v,ii:f}]);return}try{typeof h.onClick=="function"&&h.onClick()}catch{}try{h&&h.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,m]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(c.length>1||d.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[c.length>1?n.jsx(me,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:i("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:C,children:d.columns&&d.columns.map((h,v)=>n.jsxs("div",{className:"tooltip-menu__column",children:[h.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:h.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(h.items||[]).map((f,w)=>n.jsxs(o.Fragment,{children:[f.separatorBefore&&w>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(me,{htmlType:"button",className:"tooltip-menu__item",size:s,type:f.label?"bar":"dot",icon:f.selected?"check":f.icon||"none",rightIcon:Array.isArray(f.children)&&f.children.length?"chevron-right":f.badgeCount?n.jsx(kt,{type:"dot",position:"inline",number:Math.min(f.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:f.label,ariaLabel:f.label&&f.badgeCount&&f.badgeCount>0?i("nav.badgeLabel",{label:f.label,count:f.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):f.label,onClick:()=>g(f,v,w),selected:f.selected,disabled:f.disabled,showTooltipInfo:f.tooltip||!1,useBorder:!1,align:"left"})]},w))})]},v))})]})}const _l=".content-area";function mo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(_l);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&Zt("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${_l}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const ho=52,tr=10,wl=e=>e&&e>0?e:0;function Al({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:i,moreItems:s=[],scrollContainer:l}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",m=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[C,_]=o.useState(0),y=e.length;o.useEffect(()=>{const $=p.current;if(!$)return;const V=()=>{const D=typeof getComputedStyle=="function"?getComputedStyle($):null,R=$.clientWidth-(parseFloat(D?.paddingLeft??"")||0)-(parseFloat(D?.paddingRight??"")||0),I=$.querySelector(".bottom-nav__left"),W=I?.nextElementSibling,ee=(I?.offsetWidth??0)+(I&&W?.classList.contains("bottom-nav__divider")?W.offsetWidth:0);_(Math.max(0,R-ee))};if(V(),typeof ResizeObserver>"u")return;const H=new ResizeObserver(V);H.observe($);const T=$.querySelector(".bottom-nav__left");return T&&H.observe(T),()=>H.disconnect()},[i]);const g=ho+1,h=$=>Math.max(0,Math.floor(($+tr)/(ho+tr))),v=y*(ho+tr)-tr<=C,f=C<=0||s.length===0&&v?y:Math.min(y,h(C-g)),w=C>0&&f<y,b=w?f:y,B=e.slice(0,b),x=e.slice(b),A=w||s.length>0,k=o.useCallback(($,V)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Da(V)}),[]),N=o.useId(),{open:S,toggle:E,close:O,style:F,triggerRef:Y,menuRef:M}=Sa({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),L=o.useCallback(($,V)=>V>0?u("nav.badgeLabel",{label:$,count:V,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[u]),P=o.useCallback(($,V)=>V>0?u("nav.badgeInsideLabel",{label:$,count:V,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[u]),G=o.useCallback(()=>i?.(c),[i,c]),U=o.useMemo(()=>x.find($=>!!$.key&&$.key===t)??s.find($=>$.selected||$.key&&$.key===t),[x,t,s]),z=o.useMemo(()=>[{items:[...x.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),mo(l,"BottomNav")),O())}})),...s.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),O()}}))]}],[x,s,t,a,O]),q=[...x,...s].reduce(($,V)=>$+wl(V.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":u("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[i&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:m,className:"bottom-nav-item",onClick:G})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:B.map(($,V)=>{const H=wl($.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:L($.label,H),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),mo(l,"BottomNav"))}}),H>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(kt,{type:"dot",position:"top-right",number:Math.min(H,99),size:24})})]},$.key??`__slot-${V}`)})}),A&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:Y,className:"bottom-nav__slot",children:[n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:U?.icon??"ellipsis",ariaLabel:P(U?.label??u("nav.more","\uB354\uBCF4\uAE30"),q),selected:!!U,className:"bottom-nav-item",onClick:E,"aria-expanded":S,"aria-controls":S?N:void 0}),q>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(kt,{type:"dot",position:"top-right",number:Math.min(q,99),size:24})}),S&&en.createPortal(n.jsx("div",{id:N,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:F,ref:M,children:n.jsx(ja,{columns:z,onClose:O})}),document.body)]})})]})]})}function Bl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const i=r.charCodeAt(0);i<=32||i>=127&&i<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function kl(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function Ub(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:i,onNotification:s,onSetting:l,onHelp:u,onFeedback:c,onAccount:d}=e||{},m="default";return i||s||l||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[i&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:i,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bell",ariaLabel:kl(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(kt,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),u&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function Nl(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:i,icon:s,active:l,onClick:u,style:c,state:d,labelStyle:m}=e||{},p=a?.key??r??"",C=a?.label??i??"",_=a?.icon??s??"",y=a?.badge??0,g=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(at,{icon:_,label:typeof C=="string"?C:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),h=d==="disabled",v=`side-nav__item ${l?"active":""} ${d||""} ${h?"disabled":""} ${a?.child?"side-nav__item--child":""}`,f=o.useCallback(w=>{if(h)return;const b=w.detail>0;if(b)try{w.currentTarget.blur()}catch{}u?.(p,w.currentTarget,b)},[h,p,u]);return n.jsxs("button",{type:"button",className:v,onClick:f,"aria-label":typeof C=="string"?kl(t,C,y):void 0,"aria-current":l?"page":void 0,style:c,"aria-disabled":h,children:[g,n.jsx("span",{className:"side-nav__label button-1 f",style:m,children:C}),y>0&&n.jsx(kt,{type:"dot",position:"inline",number:Math.min(y,99),size:24,"aria-hidden":!0}),d==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function El(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:_,scrollContainer:y}=e||{},g=C==="manager",h=o.useCallback(()=>_?.(g?"malgwi":"manager"),[_,g]),v=o.useRef(null),[f,w]=o.useState(null);o.useEffect(()=>{const k=v.current;if(!k)return;let N=null;const S=()=>{const{scrollHeight:F,clientHeight:Y,scrollTop:M}=k;if(F<=Y+1){w(z=>z===null?z:null);return}const L=Math.max(24,Y/F*Y),P=Y-L,G=F-Y,U={top:Math.round(M/G*P),height:Math.round(L)};w(z=>z&&z.top===U.top&&z.height===U.height?z:U)},E=()=>{if(typeof requestAnimationFrame>"u"){S();return}N===null&&(N=requestAnimationFrame(()=>{N=null,S()}))};S(),k.addEventListener("scroll",E,{passive:!0});const O=typeof ResizeObserver<"u"?new ResizeObserver(E):null;O?.observe(k);for(const F of Array.from(k.children))O?.observe(F);return()=>{N!==null&&cancelAnimationFrame(N),k.removeEventListener("scroll",E),O?.disconnect()}},[a]);const b=o.useRef(null),B=o.useCallback(k=>{const N=v.current;N&&(k.preventDefault(),b.current={y:k.clientY,top:N.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),x=o.useCallback(k=>{const N=v.current,S=b.current;!N||!S||(N.scrollTop=S.top+(k.clientY-S.y)*(N.scrollHeight/N.clientHeight))},[]),A=o.useCallback(k=>{b.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.pointerId)},[]);return n.jsxs("nav",{ref:v,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[f&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:f.top,height:f.height},onPointerDown:B,onPointerMove:x,onPointerUp:A,onPointerCancel:A})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,N)=>n.jsxs(o.Fragment,{children:[k.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(Nl,{item:k,active:!!k.key&&k.key===r,state:k.disabled?"disabled":void 0,onClick:(S,E,O)=>{if(k.disabled)return;if(k.href){if(Bl(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),O)try{E?.blur()}catch{}return}if(i?.(k.key),mo(y,"SideNav"),!O)return;try{E?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const F=document.querySelector(".header");if(F){const Y=typeof F.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&Y&&F.matches(":hover"))){F.classList.add("header--force-collapsed");const M=()=>{F.classList.remove("header--force-collapsed"),F.removeEventListener("mouseenter",M)};F.addEventListener("mouseenter",M)}}}})]},k.key??`side-nav__item-${N}`)),_&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),_&&n.jsx(Nl,{item:{key:"__mode-switch__",label:g?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:g?"arrow-left":"arrow-right"},onClick:h})]}),n.jsx(Ub,{activeKey:r,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p})]})}var nr='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Co='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Gb='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';function Dl({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?Co:nr,i=Gb;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:i,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function Sl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:_,scrollContainer:y}){const{t:g}=xe.useTranslation(),h=ln("(max-width: 767px)"),v=o.useMemo(()=>(a??[]).filter(F=>!F.section&&(F.key||F.label)).map(F=>({key:F.key,label:typeof F.label=="string"?F.label:void 0,icon:F.icon,state:F.disabled?"disabled":void 0,badgeCount:F.badge})),[a]),f=o.useCallback(F=>{const Y=a?.find(M=>M.key===F);if(!Y?.disabled){if(Y?.href){Bl(Y.href)&&window.open(Y.href,"_blank","noopener,noreferrer");return}t?.(F)}},[a,t]),w=o.useMemo(()=>{const F=[];return l&&F.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),u&&F.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&F.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),m&&F.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),p&&F.push({key:"feedback",icon:"bug",label:g("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&F.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:c}),F},[g,l,u,d,m,p,c,s]),b=o.useCallback((F,Y)=>({position:"fixed",top:F.bottom+8,right:Math.max(8,window.innerWidth-F.right),zIndex:Da(Y)}),[]),B=o.useId(),{open:x,toggle:A,close:k,style:N,triggerRef:S,menuRef:E}=Sa({computeStyle:b,onScroll:"ignore",onResize:"reposition"}),O=o.useMemo(()=>[{items:w.map(F=>({label:F.label,icon:F.icon,badgeCount:F.badgeCount,selected:F.selected??(!!F.key&&F.key===e),closeOnSelect:!0,onClick:()=>{F.onClick?.(),k()}}))}],[w,e,k]);return n.jsxs("aside",{className:`header${C==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Dl,{appMode:C}),n.jsxs("div",{className:"header__menu-button",ref:S,children:[n.jsx(me,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:u&&s&&s>0?g("nav.badgeInsideLabel",{label:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:s,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:A,"aria-expanded":x,"aria-controls":x?B:void 0}),!!u&&!!s&&s>0&&n.jsx(kt,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),x&&en.createPortal(n.jsx("div",{id:B,role:"group","aria-label":g("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:N,ref:E,children:n.jsx(ja,{columns:O,onClose:k})}),document.body)]})]}),n.jsx(El,{scrollContainer:y,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:_}),h&&n.jsx(Al,{items:v,activeKey:e??void 0,onChange:f,scrollContainer:y,appMode:C,onAppModeChange:_})]})}const Kb=Sl,Yb=()=>$t.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function jl(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return oa(`${t.toLocaleString("ko-KR")}\uC6D0`)}return oa(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function Zb(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function Xb(e){if(e.durationDays&&e.durationDays>0){const s=e.durationDays;return s%365===0?`${s/365}\uB144`:`${s}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const i=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return i?i[2].toLowerCase()==="year"?`${i[1]}\uB144`:`${i[1]}\uC77C`:a||Yb()}function Jb(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function Tl(e){return{type:e.type??Zb(e),plan:Xb(e),label:e.label,price:jl(e.price),originalPrice:jl(e.originalPrice),discountLabel:e.discountLabel}}var Qb='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',e4='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',t4='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',n4='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',a4='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',r4='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Ml='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Yn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},fo=new WeakMap;function o4(e){if(e)return fo.get(e)}function kn(e,t){e&&(e.style.setProperty(Yn.text,t.text),e.style.setProperty(Yn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Yn.copyright,t.copyrightColor),fo.set(e,t))}function Nn(e){e&&(e.style.removeProperty(Yn.text),e.style.removeProperty(Yn.sub),e.style.removeProperty(Yn.copyright),fo.delete(e))}const Ll={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function $l(e={}){const t=Bt(Ll,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${Ml}")`}})]})}const Rl="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var Ta='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const s4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},i4=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Pl(e={}){const t=Bt(s4,kn,Nn),a="var(--color-main)",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:i4.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:Rl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const l4={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},u4=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function c4(e={}){const t=Bt(l4,kn,Nn),a="#ffffff",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:u4.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:Rl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${Ml}")`}})]})}const d4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function p4(e={}){const t=Bt(d4,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const m4={Logo_speechear_kr:{"":nr,_white:Qb,_textWhite:e4,_black:t4},Logo_speechearManager_kr:{"":Co,_white:n4,_textWhite:a4,_black:r4}};function h4(e,t){if(e)return m4[e]?.[t??""]??void 0}const C4={speechear:nr,manager:Co},f4={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Fl=10;function g4(e){return e<=0?0:e>=86400?Math.floor(e/86400)*86400:e>=3600?Math.floor(e/3600)*3600:e>=60?Math.floor(e/60)*60:Math.floor(e)}function Il(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const i=Math.floor(e/60);return i>0?t("passCard.remainingMinute",{n:i}):t("passCard.remainingSecond",{n:Math.floor(e)})}function b4(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),i=a==="\uC624\uD508\uD2B9\uAC00"||a===$t.t("passCard.specialLabel");return r?n.jsx(p4,{}):i?n.jsx(c4,{}):n.jsx(Pl,{})}return n.jsx($l,{})}function Ol({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:i,endDate:s,remainingSeconds:l,endInclusive:u=!1,state:c="active",bg:d,bgOnly:m=!1,textColor:p,subColor:C,copyrightColor:_,logoSrc:y,label:g,price:h,originalPrice:v,discountLabel:f,onUse:w,onRefund:b,onDelete:B}){const{t:x}=xe.useTranslation(),A=t?Tl(t):void 0,k=i??A?.type??"speechear",N=r??A?.plan??x("passCard.planSuffix","\uC774\uC6A9\uAD8C"),S=g??A?.label,E=h??(a?A?.price:void 0),O=v??(a?A?.originalPrice:void 0),F=f??A?.discountLabel,Y=o.useMemo(()=>{if(E)return null;const K=t?.durationDays??Jb(t?.code);if(!K||K<=0)return l!=null?{percent:null,remainingLabel:Il(l,x)}:null;const Q=K*86400;let pe;if(l!=null)pe=l;else if((c==="active"||c==="expired")&&s){const ne=new Date(s).getTime();if(Number.isNaN(ne))return null;const le=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),Ce=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ba()),ge=Math.round(le&&Ce?(Date.UTC(+le[1],+le[2]-1,+le[3])-Date.UTC(+Ce[1],+Ce[2]-1,+Ce[3]))/864e5:(ne-Date.now())/864e5);pe=Math.max(0,u?ge+1:ge)*86400}else c==="expired"?pe=0:pe=Q;const De=g4(pe),ye=Math.max(0,Math.min(100,Math.floor(Math.min(De,Q)/Q*100)));return c==="pending"&&ye>=100?null:{percent:ye,remainingLabel:c==="expired"?x("passCard.expired","\uB9CC\uB8CC\uB428"):Il(pe,x)}},[E,c,s,l,u,t?.durationDays,t?.code,x]),M=o.useRef(null),[L,P]=o.useState({}),[G,U]=o.useState(null),z=!!(w||b||B),q=o.useRef(!1),$=o.useRef(void 0),[V,H]=o.useState(y);o.useLayoutEffect(()=>{H(y)},[y]),o.useLayoutEffect(()=>{const K=M.current;K&&(p!==void 0&&K.style.setProperty("--pass-card-text",p),C!==void 0&&K.style.setProperty("--pass-card-sub",C),_!==void 0&&K.style.setProperty("--pass-card-copyright",_))},[p,C,_]),o.useLayoutEffect(()=>{const K=M.current;if(!K)return;const Q=o4(K);if(!y){const pe=f4[k],De=c==="expired"?"_black":Q?.logoColor??"",ye=h4(pe,De);H(ye)}},[d,y,k,c]);const T=K=>{const Q=M.current;if(!Q)return null;const{left:pe,top:De,width:ye,height:ne}=Q.getBoundingClientRect(),le=(K.clientX-pe)/ye-.5;return{rotateX:-((K.clientY-De)/ne-.5)*Fl,rotateY:le*Fl}},D=(K,Q)=>{const pe=Q*-.7,De=K*.7+10,ye=20+(Math.abs(K)+Math.abs(Q))*.4;return`${pe}px ${De}px ${ye}px rgba(0, 0, 0, 0.18)`},R=o.useCallback(K=>{if(la())return;q.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{q.current=!1},200);const Q=T(K);Q&&P({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:D(Q.rotateX,Q.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),I=o.useCallback(K=>{if(la())return;const Q=T(K);if(!Q)return;const pe=q.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";P({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:D(Q.rotateX,Q.rotateY),transition:pe})},[]),W=o.useCallback(()=>{clearTimeout($.current),q.current=!1,P({transform:"perspective(800px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)",boxShadow:"0px 4px 16px rgba(0, 0, 0, 0.08)",transition:"transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.5s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),ee=o.useCallback(()=>U(null),[]),oe=o.useMemo(()=>{const K=x("passCard.planSuffix","\uC774\uC6A9\uAD8C"),Q=N.replace("\uC774\uC6A9\uAD8C","").replace(K==="\uC774\uC6A9\uAD8C"?"":K,"").trim(),pe=Q.match(/^(.*?)(일|년)$/);return pe?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:pe[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:pe[2]==="\uB144"?x("passCard.unitYear","\uB144"):x("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:Q})},[N,x]),ce=o.useMemo(()=>{const K=oa(E);if(!K)return null;const Q=K.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!Q)return n.jsx("span",{className:"h1",children:K});const[,pe,De,ye]=Q;return n.jsxs(n.Fragment,{children:[pe&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:pe}),n.jsx("span",{className:"h1 pass-card__price-amount",children:De}),ye.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[E]),J=o.useCallback(()=>{z&&U(K=>{if(K)return null;const Q=M.current?.getBoundingClientRect();if(!Q)return null;const pe=50;return{left:Q.left,right:Q.right,width:Q.width,height:Q.height,x:Q.x,y:Q.y+pe,top:Q.top+pe,bottom:Q.bottom+pe}})},[z]),re=o.useCallback(K=>{z&&(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),J())},[z,J]),Ne=[{items:[...w?[{label:x("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{w(),U(null)},closeOnSelect:!0}]:[],...b?[{label:x("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{b(),U(null)},closeOnSelect:!0}]:[],...B?[{label:x("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{B(),U(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:M,className:`pass-card pass-card--${c}${z?" pass-card--clickable":""}`,style:L,onMouseEnter:R,onMouseMove:I,onMouseLeave:W,onPointerUp:K=>{K.pointerType==="touch"&&W()},onPointerCancel:K=>{K.pointerType==="touch"&&W()},onClick:J,onKeyDown:z?re:void 0,role:z?"button":void 0,tabIndex:z?0:void 0,"aria-label":e,"aria-haspopup":z?"menu":void 0,"aria-expanded":z?!!G:void 0,children:[d??b4(k,N,S),!m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:V??C4[k],className:"pass-card__logo",alt:k==="manager"?x("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):x("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:oe}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:S?x("passCard.labeledPlan",{label:S}):x("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),E?n.jsxs("div",{className:"pass-card__price-area",children:[F&&n.jsx("span",{className:"pass-card__discount body-3",children:F}),n.jsxs("div",{className:"pass-card__price",children:[O&&n.jsx("span",{className:"pass-card__price-original body-3",children:oa(O)}),ce]})]}):Y?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:Y.remainingLabel}),Y.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:Y.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),G&&n.jsx(cn,{anchorRect:G,onClose:ee,ariaLabel:x("tooltip.menu","\uBA54\uB274"),children:n.jsx(ja,{columns:Ne,onClose:ee,size:"small"})})]})}const y4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function v4(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=Bt(y4,kn,Nn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const x4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function _4(e={}){const t=Bt(x4,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}function w4(e,t){if(e){if(t==="manager_pro")return n.jsx(_4,{});if(t==="manager_standard")return n.jsx(v4,{});if(t==="manager_lite")return n.jsx(Pl,{})}}function A4(e){const t=oa(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,i,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),i,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function B4(e){const{t}=xe.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:i,onSelect:s,period:l="monthly",ownedCodes:u}=e||{},c=b=>!!b&&!!u?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),m=(i.tiers||[]).some(b=>d(b)&&c(b.code)),p=b=>{const B=b.prices?b.prices[l]:b.price;return B?(i.tiers||[]).some(x=>!!x.badge&&x.originals?.[l]===B):!1},C=i.colorToken?`var(--color-${i.colorToken})`:"var(--color-gray)",_=t("payment.plan.freePrice","\uBB34\uB8CC"),y=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),g=b=>b.prices?b.prices[l]:b.price,h=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const B=g(b);return B==="\uBB34\uB8CC"||B===_||B==="0\uC6D0"||typeof B=="string"&&/\d/.test(B)&&!/[1-9]/.test(B)}),v=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const B=g(b);return B==="\uBB38\uC758"||B===y}),f=i.group==="org",w=f?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:C,"--plan-color":C},children:[i.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(kt,{label:i.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:C},children:i.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:i.tier??i.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:i.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.recommendedFor||[]).map((b,B)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:C}}),b]},B))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.features||[]).map((b,B)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:C}}),b]},B))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:h?null:v?n.jsx(me,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>i.tiers?.[0]&&s?.({...i.tiers[0],productId:i.id,productTitle:i.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(i.tiers||[]).map(b=>{const B=b.label||a,x=d(b),A=x||b.openPromo===!0,k=B.replace(/^오픈\s*특가\s*/,"")||a,N=b.prices?b.prices[l]:b.price,S=b.badge?A?`${r}
|
|
852
|
-
${b.badge}`:b.badge:void 0;if(x&&c(b.code))return null;if(!b.badge&&!m)return p(b)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${b.highlight?" payment-plan__pricing-row--highlight":""}`,children:[n.jsx("div",{className:"payment-plan__pricing-row-title",children:n.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:b.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:A4(N)})})]},b.id);const E=i.tier??(f?i.title:void 0),O=n.jsx(Ol,{showPrice:!0,product:{type:w,code:b.code,name:k,label:E,price:N,originalPrice:b.originals?.[l]??void 0,discountLabel:S},bg:w4(f,i.id)}),F=()=>s?.({...b,productId:i.id,productTitle:i.title,preview:O});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:F,onKeyDown:s?Y=>{Y.target===Y.currentTarget&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),F())}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,children:O},b.id)})})})})]})}function k4({variant:e="default"}){return n.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var go='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Hl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function N4(){const e=Bt(Hl,kn,Nn);return n.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${go}")`}})})}const zl={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function E4(e={}){const t=Bt(zl,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),n.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}function Vl({keys:e,anchor:t="top-right",scale:a,className:r=""}){const i=Array.isArray(e)?e:[e];return n.jsx("span",{className:we("shortcut-badge",`shortcut-badge--${t}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:i.map((s,l)=>n.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:s})]},`${s}-${l}`))})}const Ma=(e,t,a)=>e+(t-e)*a;function D4({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:i,selectedId:s=null,answerId:l=null,showFeedback:u=!1,pulseSelected:c=!1,pulseSelectedDuration:d,pulseScale:m,clickable:p=!1,onSelectSpeaker:C,buttonSize:_=40,showIcon:y=!0,onCenterClick:g,centerLabel:h,centerDisabled:v=!1,centerAttention:f=!1,shortcutAnchor:w="top-right",shortcutScale:b,scaleShortcut:B=!1}){const{t:x}=xe.useTranslation(),A=Math.max(0,Math.min(1,a)),k=t/2,N=110/300,S=.18,E=K=>t*(N+(K-1)*S),O=K=>{const Q=E(K.row??1),pe=K.angleDeg*Math.PI/180;return{x:k+Q*Math.cos(pe),y:k+Q*Math.sin(pe)}},F=Math.max(...e.map(K=>K.row??1),1),Y=t*.08,M=t*.1,L=t*.24,P=t-2*Y,G=t-M-L,U=t-L/2,z=o.useMemo(()=>[...new Set(e.map(K=>K.deg))].sort((K,Q)=>K-Q),[e]),q=z.length,$=Math.max(68,q>1?P/(q-1):0),V=o.useMemo(()=>new Map(z.map((K,Q)=>[K,Q])),[z]),H=K=>{const Q=V.get(K.deg)??0,pe=k+(Q-(q-1)/2)*$,De=F>1?Math.min(68,G/(F-1)):0,ye=De*(F-1),ne=M+(G-ye)/2,le=F===1?M+G*.4:ne+(F-(K.row??1))*De;return{x:pe,y:le}},T=K=>{const Q=O(K),pe=H(K);return{x:Ma(Q.x,pe.x,A),y:Ma(Q.y,pe.y,A)}},D={x:k,y:Ma(k,U,A)},R=Math.round(_*1.2),I=Math.round(Math.max(16,Math.min(80,_*.7))),W=[],ee=new Map;for(const K of e){const Q=K.row??1;ee.has(Q)||ee.set(Q,[]),ee.get(Q).push(K)}for(const[K,Q]of ee.entries()){if(Q.length<2)continue;const pe=[...Q].sort((qe,mt)=>qe.deg-mt.deg),De=pe.map(qe=>T(qe)),ye=pe.map(qe=>qe.deg),ne=ye[ye.length-1]-ye[0],le=ne/(ye.length-1),Ce=360-ne,ge=pe.length>=3&&le>0&&Ce<=le*1.5,fe=Math.round(E(K)*1e3)/1e3,$e=(qe,mt,ct,rt)=>{const Ct=(mt.angleDeg-qe.angleDeg+540)%360-180;if(Ct===0)return`L ${rt.x} ${rt.y}`;if(A===0)return`A ${fe} ${fe} 0 0 ${Ct>0?1:0} ${rt.x} ${rt.y}`;const Be=(qe.angleDeg+Ct/2)*Math.PI/180,We={x:k+fe*Math.cos(Be),y:k+fe*Math.sin(Be)},_e={x:(ct.x+rt.x)/2,y:(ct.y+rt.y)/2},Ue={x:Ma(We.x,_e.x,A),y:Ma(We.y,_e.y,A)},Ae={x:2*Ue.x-_e.x,y:2*Ue.y-_e.y};return`Q ${Ae.x} ${Ae.y} ${rt.x} ${rt.y}`},Ve=ge?[...pe,pe[0]]:pe,je=ge?[...De,De[0]]:De;let Fe=`M ${je[0].x} ${je[0].y}`;for(let qe=1;qe<je.length;qe++)Fe+=" "+$e(Ve[qe-1],Ve[qe],je[qe-1],je[qe]);W.push({key:`arc-${K}`,d:Fe})}const oe=o.useMemo(()=>new Set(i??[]),[i]),ce=K=>({idle:"",active:x("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:x("soundCompass.state.played","\uB4E4\uC74C"),correct:x("soundCompass.state.correct","\uC815\uB2F5"),wrong:x("soundCompass.state.wrong","\uC624\uB2F5")})[K],J=K=>{if(r===K.id)return"active";if(u){if(K.id===l)return"correct";if(K.id===s&&s!==l)return"wrong"}return oe.has(K.id)?"played":"idle"},re=K=>r===K.id?"loop":u?K.id===l?"loop":null:c&&K.id===s?"once":null,Ne=(K,Q)=>{switch(K){case"played":case"correct":return n.jsx(bs,{size:Q});case"wrong":return n.jsx(Es,{size:Q});default:return n.jsx(Ns,{size:Q})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[A===0&&e.map(K=>{const{x:Q,y:pe}=T(K);return n.jsx("line",{x1:D.x,y1:D.y,x2:Q,y2:pe,stroke:"#dde3ec",strokeWidth:"1"},K.id)}),W.map(K=>n.jsx("path",{d:K.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},K.key))]}),f&&!v&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:R,height:R,left:D.x-R/2,top:D.y-R/2}}),g?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${v?" sound-compass__center--disabled":""}`,style:{width:R,height:R,left:D.x,top:D.y},"aria-label":h,"aria-disabled":v||void 0,tabIndex:v?-1:0,onClick:v?void 0:g,children:n.jsx(Er,{size:I,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:R,height:R,left:D.x,top:D.y},children:n.jsx(Er,{size:I,color:"currentColor",strokeWidth:1.5})}),e.map((K,Q)=>{const{x:pe,y:De}=T(K),ye=J(K),ne=re(K),le={...b!==void 0||B?{"--shortcut-badge-scale":String(b??Math.max(.75,Math.min(3,_/56)))}:null,pointerEvents:p?"auto":"none",cursor:p?"pointer":"default",zIndex:ye!=="idle"?10:1},Ce=_,ge=Math.round(Math.max(10,Math.min(56,Ce*.38))),fe=Math.round(Math.max(7,Math.min(18,Ce*.2))),$e=Math.round(Math.max(10,Math.min(56,Ce*.4))),Ve=y==="answered"&&(ye==="played"||ye==="correct"||ye==="wrong"),je=y===!0||Ve,Fe=!Ve;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...le,left:pe-Ce/2,top:De-Ce/2},children:[ne&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ye}`+(ne==="once"?" sound-compass__pulse--once":""),style:{width:Ce,height:Ce,...ne==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...m!==void 0?{"--sc-pulse-scale":String(m)}:null}}),n.jsxs("button",{type:"button",tabIndex:p?0:-1,"aria-disabled":p?void 0:!0,onClick:p?()=>C?.(K.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ye}`,style:{width:Ce,height:Ce},"aria-label":ce(ye)?`${K.label}, ${ce(ye)}`:K.label,"aria-pressed":s!=null?K.id===s:void 0,children:[je&&Ne(ye,ge),Fe&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:y===!0?fe:$e},children:Q+1})]}),K.shortcut&&n.jsx(Vl,{keys:K.shortcut,anchor:w,className:"sound-compass__speaker-shortcut"})]},K.id)})]})})}function S4({children:e,position:t="top-left",size:a=24,className:r=""}){return n.jsx("span",{className:we("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}function j4({orientation:e="horizontal",label:t,className:a=""}){const r=we("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?n.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?n.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[n.jsx("span",{className:"divider__line"}),n.jsx("span",{className:"divider__label caption-1",children:t}),n.jsx("span",{className:"divider__line"})]}):n.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function Wl({checked:e,onChange:t,name:a,value:r,disabled:i=!1,label:s,className:l=""}){const u=o.useId();return n.jsxs("label",{className:`radio${i?" radio--disabled":""} ${l}`.trim(),htmlFor:u,children:[n.jsx("input",{id:u,type:"radio",name:a,value:r,checked:e,disabled:i,onChange:c=>t?.(c.target.checked)}),n.jsx("span",{className:"radio__dot"}),s&&n.jsx("span",{className:"radio__label body-2",children:s})]})}function T4({options:e,value:t,onChange:a,name:r,disabled:i=!1,direction:s="vertical",className:l="",ariaLabel:u}){const c=o.useId(),d=r??`radio-group-${c}`;return n.jsx("div",{className:`radio-group radio-group--${s} ${l}`.trim(),role:"radiogroup","aria-label":u,children:e.map(m=>n.jsx(Wl,{name:d,value:m.value,checked:t===m.value,disabled:i||m.disabled,label:m.label,onChange:p=>{p&&a?.(m.value)}},m.value))})}const M4={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function L4({tone:e="info",title:t,message:a,children:r,dismissible:i=!1,onDismiss:s,live:l,className:u=""}){const{t:c}=xe.useTranslation(),[d,m]=o.useState(!1),p=o.useRef(null),C=o.useCallback(()=>{const f=p.current;f&&f.contains(document.activeElement)&&Ja(f),m(!0),s?.()},[s]);if(d)return null;const _=we("alert",`alert--${e}`,u),y=l??(e==="danger"||e==="warning"?"assertive":"polite"),g=y==="assertive"?"alert":y==="polite"?"status":void 0,h=!!t,v=!!(a||r);return n.jsxs("div",{ref:p,className:_,role:g,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(at,{icon:M4[e],size:20,className:"alert__icon"}),h&&n.jsx("span",{className:"alert__title body-2",children:t}),!h&&v&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),h&&v&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),i&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:C,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const $4={ready:"search",guide:"info",error:"circle-alert"};function R4(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let i=0,s=0;for(const l of a){const u=e.indexOf(l,i);u<0||(u>i&&r.push(e.slice(i,u)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:l},s++)),i=u+l.length)}return i<e.length&&r.push(e.slice(i)),r}function P4({status:e="guide",label:t,children:a,emphasis:r,icon:i,className:s=""}){const l=i===!1?null:i??$4[e],u=we("search-summary",`search-summary--${e}`,s),c=t??a,d=typeof c=="string"&&r&&r.length>0?R4(c,r):c;return n.jsxs("div",{className:u,role:"status","aria-live":"polite",children:[l!=null&&n.jsx(at,{icon:l,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:d})]})}function La({title:e,items:t}){const{t:a}=xe.useTranslation(),{anchorRect:r,openAt:i,close:s}=Ea(),l=o.useRef(null),u=oo(!!r,(c,d)=>{c&&d?i(l.current?.querySelector("button")??d):s()},l);return n.jsxs("span",{ref:l,style:{display:"contents"},children:[n.jsx(me,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:c=>{ia(c)||i(c.currentTarget)},onPointerLeave:c=>{ia(c)||s()},onClick:c=>{u.touchPress(c.currentTarget)},onFocus:c=>{la()||i(c.currentTarget)},onBlur:s}),r&&n.jsx(Gn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:s})]})}function F4({items:e=[],value:t,onChange:a,className:r="",size:i=40}){const s=o.useId(),{t:l}=xe.useTranslation(),u=o.useRef(null),c=e.find(g=>!g.disabled)?.key,d=e.some(g=>g.key===t)?t:c??e[0]?.key,m=e.find(g=>g.key===d&&!g.disabled)?.key??c,p=()=>Array.from(u.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),C=(g,h=p())=>{if(h.length===0)return;const v=(g%h.length+h.length)%h.length;h[v]?.focus(),h[v]?.click()},_=g=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(g.key))return;g.preventDefault();const h=p(),v=h.indexOf(g.currentTarget);g.key==="ArrowRight"||g.key==="ArrowDown"?C(v+1,h):g.key==="ArrowLeft"||g.key==="ArrowUp"?C(v-1,h):g.key==="Home"?C(0,h):C(h.length-1,h)},y=e.find(g=>g.key===d);return n.jsxs("div",{className:`tabs ${r}`.trim(),children:[n.jsx("div",{ref:u,className:`tabs__list tabs__list--${i}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(g=>n.jsx("button",{id:`tabs__tab-${s}-${g.key}`,type:"button",role:"tab","aria-selected":g.key===d,"aria-controls":`tabs__panel-${s}-${g.key}`,disabled:g.disabled,tabIndex:g.key===m?0:-1,className:`tabs__tab body-2${g.key===d?" tabs__tab--active":""}`,onClick:()=>{g.key!==t&&a?.(g.key)},onKeyDown:_,children:g.label},g.key))}),y&&n.jsx("div",{id:`tabs__panel-${s}-${y.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${s}-${y.key}`,tabIndex:0,className:"tabs__panel",children:y.panel},y.key)]})}const I4={xs:12,sm:16,md:20,lg:28,xl:36};function O4(e){const t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?"":t.length===1?[...t[0]].slice(0,2).join("").toUpperCase():([...t[0]][0]+[...t[t.length-1]][0]).toUpperCase()}function H4({src:e,name:t,size:a="md",shape:r="circle",className:i=""}){const{t:s}=xe.useTranslation(),[l,u]=o.useState(null),c=!!e&&l===e,d=t?O4(t):"",m=!!e&&!c,p=!m&&!!d,C=t||s("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${i}`.trim(),role:"img","aria-label":C,children:[m&&n.jsx("img",{className:"avatar__image",src:e,alt:C,onError:()=>u(e??null)}),!m&&p&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!m&&!p&&n.jsx(at,{icon:"user-round",size:I4[a],className:"avatar__icon"})]})}function z4(e,t){if(!t)return!0;const a=t.split(",").map(s=>s.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),i=e.type.toLowerCase();return a.some(s=>{const l=s.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?i.startsWith(l.slice(0,-1)):i===l})}function V4({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:i=!0,files:s,onRemove:l,className:u=""}){const{t:c}=xe.useTranslation(),d=o.useRef(null),[m,p]=o.useState(!1),[C,_]=o.useState([]),y=s??C,g=x=>{if(!x||x.length===0)return;const A=Array.from(x).filter(N=>z4(N,t));if(A.length===0)return;const k=a?A:A.slice(0,1);if(s===void 0){const N=a?[...y,...k]:k;_(N),e?.(N)}else e?.(k)},h=x=>{x.preventDefault(),!r&&p(!0)},v=x=>{x.preventDefault(),p(!1)},f=x=>{x.preventDefault(),p(!1),!r&&g(x.dataTransfer.files)},w=x=>{const A=x.target;try{g(A.files)}finally{A.value=""}},b=()=>{r||d.current?.click()},B=x=>{if(!r&&(l?.(x),s===void 0)){const A=y.filter((k,N)=>N!==x);_(A),l||e?.(A)}};return n.jsxs("div",{className:`file-upload ${u}`.trim(),children:[n.jsxs("div",{className:we("file-upload__dropzone",m&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:b,onKeyDown:x=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),b())},onDragOver:h,onDragLeave:v,onDrop:f,children:[n.jsx(at,{icon:"upload",size:24,className:"file-upload__icon"}),n.jsx("span",{className:"file-upload__prompt body-2",children:c("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),n.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:x=>{x.stopPropagation(),b()},children:c("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),n.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:w,tabIndex:-1})]}),i&&y.length>0&&n.jsx("ul",{className:"file-upload__list",children:y.map((x,A)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:x.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":c("fileUpload.removeAriaLabel",{name:x.name}),disabled:r,onClick:()=>B(A),children:n.jsx(at,{icon:"x",size:14})})]},`${x.name}-${A}`))})]})}function W4({items:e,className:t=""}){const{t:a}=xe.useTranslation();return n.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:n.jsx("ol",{className:"breadcrumb__list",children:e.map((r,i)=>{const s=i===e.length-1;return n.jsxs("li",{className:"breadcrumb__item",children:[s?n.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):r.href?n.jsx("a",{className:"breadcrumb__link body-3",href:r.href,target:r.target,rel:r.rel??(r.target==="_blank"?"noopener noreferrer":void 0),onClick:r.onClick,children:r.label}):r.onClick?n.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}):n.jsx("span",{className:"breadcrumb__text body-3",children:r.label}),!s&&n.jsx(at,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},i)})})})}const q4={small:14,medium:20,large:28};function U4({value:e,onChange:t,max:a=5,readOnly:r=!1,size:i="medium",ariaLabel:s,className:l=""}){const{t:u}=xe.useTranslation(),c=r||!t,[d,m]=o.useState(null),p=c?e:Number.isFinite(e)?Math.round(e):0,C=d??p,_=q4[i],y=x=>{x!==e&&t?.(x)},g=x=>{c||y(x)},h=x=>{c||la()||m(x)},v=o.useRef(null),f=x=>{const A=Math.min(a,Math.max(1,x));y(A),Array.from(v.current?.querySelectorAll("[data-star]")??[]).find(k=>k.dataset.star===String(A))?.focus()},w=x=>{if(!c){switch(x.key){case"ArrowRight":case"ArrowUp":f((p||0)+1);break;case"ArrowLeft":case"ArrowDown":f((p||1)-1);break;case"Home":f(1);break;case"End":f(a);break;default:return}x.preventDefault()}},b=p>=1&&p<=a?Math.round(p):1,B=()=>{c||m(null)};return n.jsx("div",{className:`rating rating--${i}${c?" rating--readOnly":""} ${l}`.trim(),ref:v,onKeyDown:w,role:c?"img":"radiogroup","aria-label":c?u("rating.valueLabel",{value:e,max:a}):s??u("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:B,onPointerUp:x=>{x.pointerType==="touch"&&B()},onPointerCancel:x=>{x.pointerType==="touch"&&B()},children:Array.from({length:a},(x,A)=>{const k=A+1,N=Math.max(0,Math.min(1,C-A)),S=N>0&&N<1,E=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(at,{icon:"star",size:_,className:"rating__star rating__star--empty"}),N>0&&n.jsx("span",{className:`rating__star-fill${S?" rating__star-fill--half":""}`,style:S?{width:`${N*100}%`}:void 0,children:n.jsx(at,{icon:"star",size:_,className:"rating__star rating__star--filled"})})]});return c?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:E},k):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":p===k,"aria-label":u("rating.starLabel",{n:k}),"data-star":k,tabIndex:k===b?0:-1,onClick:()=>g(k),onMouseEnter:()=>h(k),children:E},k)})})}const G4=20,K4=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Y4({value:e,onChange:t,palette:a=K4,size:r=40,className:i="",ariaLabel:s}){const{t:l}=xe.useTranslation();return n.jsx("div",{className:`color-picker ${i}`.trim(),role:"group","aria-label":s,children:a.map(u=>{const c=e?.toLowerCase()===u.toLowerCase();return n.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:u},onClick:()=>t(u),"aria-pressed":c,"aria-label":c?`${u} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:u,children:c&&n.jsx(at,{icon:"check",size:G4,className:"color-picker__check"})},u)})})}function ql({icon:e,label:t,tooltip:a,wrapperStyle:r,color:i,bgColor:s,useHover:l=!0,iconSize:u="medium"}){const{t:c}=xe.useTranslation(),d=u==="small",m=we("category-icon",d?"category-icon--small":""),p=d?16:20,C=o.useRef(null),[_,y]=o.useState(!1),g=o.useMemo(()=>{const k=r&&typeof r=="object"?{...r}:{};return!i&&!s?k:{...k,...i?{color:i,"--t-item-fg":i}:{},...s?{"--t-item-bg":s}:{}}},[r,i,s]),h=a||t,v=l&&!!h,[f,w]=o.useState(null);o.useLayoutEffect(()=>{_&&w(C.current?.getBoundingClientRect()??null)},[_]),o.useEffect(()=>{if(!l&&_)try{y(!1)}catch{}},[l,_]),o.useEffect(()=>{if(!_)return;const k=N=>{const S=C.current;if(!S)return;const E=N.target;E&&!S.contains(E)&&y(!1)};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[_]);const b=o.useCallback(()=>{l&&y(!0)},[l]),B=o.useCallback(()=>{l&&y(!1)},[l]),x=o.useCallback(()=>y(!1),[]),A=o.useCallback(k=>{if(k.key==="Escape"){y(!1);return}(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),y(N=>!N))},[]);return n.jsxs("span",{ref:C,className:we("category-icon__wrap",v&&"category-icon__wrap--interactive"),onPointerEnter:b,onPointerLeave:B,onFocus:b,onBlur:B,onKeyDown:A,role:"button",tabIndex:0,"aria-label":typeof h=="string"?c("common.descriptionFor",{name:h,defaultValue:`${h} \uC124\uBA85`}):void 0,"aria-haspopup":!!h,"aria-expanded":_,"data-tooltip-ignore":!0,children:[n.jsx(at,{icon:e,label:t,className:m,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:g,size:p}),_&&h&&n.jsx(An,{anchorRect:f,text:typeof h=="string"?h:void 0,offset:8,onClose:x,className:"category-icon__tooltip",ariaLabel:typeof h=="string"?h:void 0})]})}let Pn=null;function ar(e){if(Pn&&Pn!==e)try{Pn()}catch{}return Pn=e,()=>{Pn===e&&(Pn=null)}}function rr(e){if(Pn===e){Pn=null;try{e()}catch{}}}function bo(e,t){let a=()=>{};const r=new Promise(u=>{a=u});let i=!1;const s=u=>{if(!i){i=!0;try{t?.(u)}catch{}a(u)}};let l;try{l=new Audio(e)}catch{return s(!1),{el:{},stop:()=>{},done:r}}l.onended=()=>s(!0),l.onerror=()=>s(!1);try{l.play().catch(()=>s(!1))}catch{s(!1)}return{el:l,stop:()=>{try{l.pause()}catch{}s(!1)},done:r}}function Z4(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(u=>u?.contextCode||u?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}const i=a.sentences||a.items||[],s=r(Array.isArray(i)?i:[]);return s.length===0&&(a.contextCode||a.context_code)&&s.push(String(a.contextCode||a.context_code)),{previewCodes:s,previewBucket:null}}function X4(e,t){const[a,r]=o.useState(!1),[i,s]=o.useState(-1),[l,u]=o.useState({key:"",urls:[]}),c=o.useRef(null),d=o.useRef(!1),m=o.useRef(null),p=o.useRef(null),[C,_]=o.useState(!1),y=o.useRef([]),{previewCodes:g,previewBucket:h}=Z4(e,t),v=`${g.join(",")}|${h??""}`,f=o.useMemo(()=>l.key===v?l.urls:[],[l,v]);o.useEffect(()=>{if(!g.length)return;let b=!1;return(async()=>{const B=[],x=[];for(const A of g)try{const k=ni(A,h);if(!k){B.push("");continue}let N=null;try{N=await ai(k)}catch{}if(!N)try{const S=await ri(k);S&&(N=URL.createObjectURL(S),x.push(N))}catch{}B.push(N??"")}catch{B.push("")}b?x.forEach(A=>{try{URL.revokeObjectURL(A)}catch{}}):(y.current.forEach(A=>{try{URL.revokeObjectURL(A)}catch{}}),y.current=x,u({key:v,urls:B}))})(),()=>{b=!0}},[g.join(","),h]),o.useEffect(()=>()=>{y.current.forEach(b=>{try{URL.revokeObjectURL(b)}catch{}}),y.current=[]},[]);const w=o.useCallback(async b=>{if(b.stopPropagation(),b.preventDefault(),d.current){m.current&&rr(m.current),d.current=!1;try{c.current?.pause()}catch{}r(!1),s(-1);return}if(!f.filter(Boolean).length)return;let B=null;const x=()=>{d.current=!1,B?.stop()};m.current=x;const A=ar(x);d.current=!0,r(!0);for(let k=0;k<f.length&&d.current;k++){const N=f[k];if(N&&(s(k),B=bo(N),c.current=B.el,!await B.done))break}A(),m.current===x&&(m.current=null,d.current=!1,r(!1),s(-1))},[f]);return o.useEffect(()=>()=>{m.current&&rr(m.current),d.current=!1;try{c.current?.pause()}catch{}c.current=null},[]),{playing:a,playingIndex:i,previewUrls:f,previewHover:C,setPreviewHover:_,previewBtnRef:p,handlePreview:w}}const J4=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(r=>{if(typeof r=="string")return r;if(r&&typeof r=="object"){const i=r;return i.sentence||i.text||i.context||i.question||i.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function yo(e){const{index:t,type:a,trainingData:r,ariaLabel:i,depth:s,renderPopup:l,completed:u,completedIds:c,selectedIds:d,tooltipText:m,useDescriptionTooltip:p=!1,onRemove:C,hideCheckBadge:_=!1,showTypeLabel:y=!1,onComplete:g,onSelect:h,onMore:v,countLabelOverride:f,size:w="square"}=e||{},{t:b}=xe.useTranslation(),[B,x]=o.useState(!1),A=o.useRef(null),[k,N]=o.useState(!1);o.useEffect(()=>{A.current?.matches(":hover")&&N(!0)},[]);const{playing:S,playingIndex:E,previewUrls:O,previewHover:F,setPreviewHover:Y,previewBtnRef:M,handlePreview:L}=X4(r,a?.key),P=o.useCallback(()=>{h?h():x(!0)},[h]),G=o.useCallback(()=>x(!1),[]),U=o.useCallback(()=>N(!0),[]),z=o.useCallback(()=>N(!1),[]),q=o.useCallback(()=>Y(!0),[Y]),$=o.useCallback(()=>Y(!1),[Y]),[V,H]=o.useState(null);o.useLayoutEffect(()=>{F&&H(M.current?.getBoundingClientRect()??null)},[F,M]);const[T,D]=o.useState(null);o.useLayoutEffect(()=>{k&&!B&&p&&D(A.current?.getBoundingClientRect()??null)},[k,B,p]);const R=o.useCallback(_e=>{_e.target===_e.currentTarget&&(_e.key==="Enter"||_e.key===" ")&&(_e.preventDefault(),P())},[P]),I=r||null,W=o.useMemo(()=>{if(!p)return null;const _e=m?(Array.isArray(m)?m:[m]).filter(Boolean):null,Ue=_e&&_e.length>0?_e:J4(I);return Ue&&Ue.length>0?Ue:null},[p,m,I]),ee=o.useCallback(_e=>{_e.stopPropagation(),C?.()},[C]),oe=o.useCallback(_e=>_e.stopPropagation(),[]),ce=o.useCallback(_e=>{typeof g=="function"&&g(_e)},[g]),J=u||(c&&r?.id!=null?c.has(String(r.id)):!1),re=!J&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);hl("speechear.popup.close",G);const Ne=Bi(),K=`${a?.label||""} ${t+1}`,Q=I?.title||I?.name||K;let pe=a?.icon,De,ye="",ne="";try{const _e=I?.category_0||I?.category_main_code||I?.category_main,Ue=I?.category_1||I?.category_sub_code||I?.category_sub,Ae=Ne.find(Te=>Te.key===_e);Ae?.icon&&(pe=Ae.icon),!De&&Ae?.color&&(De={"--t-item-fg":Ae.color}),!De&&I?.iconColor&&(De={"--t-item-fg":I.iconColor}),ye=Ae?b(`topic.${Ae.key}`,{defaultValue:Ae.label||""}):"";try{const Te=Ae?.subs?.find(Se=>Se.key===Ue);ne=Te?b(`topic.sub.${Te.key}`,{defaultValue:Te.label||""}):""}catch{}}catch{}const le=ne?`${ye} / ${ne}`:ye||a?.label||Q,Ce=_e=>b("training.countQuestions",{n:_e,count:_e}),ge=_e=>b("training.countSentences",{n:_e,count:_e});let fe="";try{if(I)if(a?.key==="LISTEN_IN_NOISE"){let _e=0;Array.isArray(I.items)&&I.items.length>0?_e=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0?_e=I.sentences.length:I.sentences&&(_e=1),fe=ge(_e)}else if(a?.key==="SHORT_STORY"){let _e=1;Array.isArray(r?.items)?_e=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?_e=r.raw.items.length:Array.isArray(I?.questions)?_e=I.questions.length:Array.isArray(I?.sentences)&&(_e=I.sentences.length),fe=Ce(_e)}else if(a?.key==="LONG_STORY"){let _e=1;if(Array.isArray(I.items)&&I.items.length>0){const Ue=I.items.reduce((Ae,Te)=>{const Se=Te.questionItems;return Array.isArray(Se)?Ae+Se.length:Array.isArray(Te.questions)?Ae+Te.questions.length:Ae},0);_e=Ue>0?Ue:I.items.length}else Array.isArray(I.questions)&&I.questions.length>0?_e=I.questions.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(_e=I.sentences.length);fe=Ce(_e)}else if(a?.key==="ORDERING_SENTENCE"){let _e=1;Array.isArray(I.items)&&I.items.length>0?_e=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(_e=I.sentences.length),fe=ge(_e)}else Array.isArray(I.items)&&(fe=I.items.length>0?Ce(I.items.length):"")}catch{}const $e=w==="row",Ve=w==="list"||$e,je=w==="compact",Fe=w==="small",qe=Fe&&a?.key?Cf().find(_e=>_e.key===a.key):void 0,mt=qe?ki[qe.key]:void 0,ct=qe?mt?b(`trainingType.${mt}.title`,{defaultValue:qe.label}):qe.label??"":"",rt=y&&a?.label&&a.label!==String(Q)?String(a.label):Fe&&ct&&ct!==String(Q)?ct:"",Ct=!!rt,Be=f!==void 0?f:fe,We=[rt,typeof Q=="string"?Q:"",Be].map(_e=>String(_e??"").trim()).filter(Boolean).join(" ");return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:A,className:`training-block-button${Ve?" training-block-button--list":""}${$e?" training-block-button--row":""}${je?" training-block-button--compact":""}${Fe?" training-block-button--small":""}${J?" training-block-button--completed":""}${re?" training-block-button--selected":""}${Ct&&!Fe?" training-block-button--withType":""}${Fe&&!Ct?" training-block-button--no-type-label":""}`,onClick:P,onPointerEnter:U,onPointerLeave:z,role:"button",tabIndex:0,onKeyDown:R,"aria-label":typeof i=="string"?i:We||void 0,title:!p&&m&&(Array.isArray(m)?m.filter(Boolean).join(`
|
|
853
|
-
`):m)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[y&&a?.label&&a.label!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Fe&&ct&&ct!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:ct}),n.jsx(ql,{icon:pe,label:Q,tooltip:le,wrapperStyle:De,iconSize:Fe||je?"small":"medium"}),!_&&(J||re)&&!(C&&k)&&n.jsx(kt,{className:C?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":J?b("training.completed","\uD6C8\uB828 \uC644\uB8CC"):b("training.selected","\uC120\uD0DD\uB428")}),C&&n.jsx(kt,{className:`training-block-button__remove${k?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":b("common.remove","\uC81C\uAC70"),onClick:ee}),n.jsx("div",{className:`training-block-button__title ${je?"body-3":Fe?"body-3b":"h3"}`,children:String(Q)}),n.jsxs("div",{className:"training-block-button__description",children:[Be?n.jsx("div",{className:`training-block-button__count ${Fe?"caption-2":"caption-1"}`,children:Be}):null,n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(at,{icon:"chevron-right",label:b("training.next","\uB2E4\uC74C"),className:"training-block-button__chevron-icon",imgClassName:"training-block-button__chevron-icon-image",maskClassName:"training-block-button__chevron-icon-mask",svgClassName:"training-block-button__chevron-icon-svg",size:Fe?12:20})})]}),(Ve&&!$e||Fe)&&O.length>0&&n.jsx("div",{ref:M,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:oe,onPointerEnter:q,onPointerLeave:$,children:n.jsx(me,{htmlType:"button",size:Fe?28:32,type:"dot",icon:S?"pause":"play",variant:Fe?"transparent-lightGray":"default",useBorder:!1,selected:S,ariaLabel:String(Q).trim()?S?b("training.stopFor",{name:Q,defaultValue:`${Q} \uC815\uC9C0`}):b("training.previewFor",{name:Q,defaultValue:`${Q} \uBBF8\uB9AC \uB4E3\uAE30`}):S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:L})})]}),v&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:_e=>{_e.stopPropagation(),v(_e)},children:n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:String(Q).trim()?b("common.moreFor",{name:Q}):b("common.more","\uB354\uBCF4\uAE30")})})]}),F&&n.jsx(An,{anchorRect:V,text:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:$}),k&&!B&&p&&(W?n.jsx(Gn,{anchorRect:T,items:W,activeIndex:E,onClose:z}):I?.subTitle?n.jsx(An,{anchorRect:T,text:I.subTitle,offset:8,onClose:z}):null),B&&l&&l({trainingData:I,typeKey:a?.key??"",onClose:G,onComplete:ce,popupTitle:String(Q),popupSubTitle:a?.subTitle,depth:s!=null?String(s):void 0,popupIcon:pe,popupIconTooltip:String(le),popupWrapperStyle:De})]})}const Ul=200;function Q4(e){return e.itemId?(vf()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Gl({plan:e,groups:t,anchorRect:a,offset:r=12,onClose:i}){const{t:s}=xe.useTranslation(),l=o.useMemo(()=>t?t.map((c,d)=>({key:c.key??c.type?.key??String(d),label:c.label,type:c.type,data:c.items??[]})).filter(c=>c.data.length>0):_f(s).map(c=>{const d=(e?.items??[]).filter(m=>m.trainingType===c.key);return{key:c.key,label:c.label,type:c,pickedCount:d.length,data:d.map(Q4).filter(m=>m!=null)}}).filter(c=>c.pickedCount>0),[t,e?.items,s]);if(l.length===0)return null;const u=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:l.flatMap(({key:c,label:d,type:m,data:p},C)=>[C>0?n.jsx("div",{className:"tooltip-training__divider"},`div-${c}`):null,n.jsxs("div",{className:"tooltip-training__section",children:[n.jsx("div",{className:"tooltip-training__section-header",children:n.jsx("span",{className:"tooltip-training__type-label body-3b",children:d})}),n.jsx("div",{className:"tooltip-training__items",children:p.map((_,y)=>n.jsx(yo,{index:y,type:m,trainingData:_,size:"compact",hideCheckBadge:!0},String(_.id??y)))})]},c)])})});return a?n.jsx(cn,{anchorRect:a,offset:r,onClose:i,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:u}):u}const ey=200;function ty({icon:e,count:t,title:a,plan:r,tooltip:i=!0,hoverAccent:s=!1,className:l="",onClick:u,onMouseEnter:c,onMouseLeave:d}){const m=!!u||!!c||i&&!!r,p=we("count-tile",m&&"count-tile--interactive",m&&s&&"count-tile--accent",u&&"count-tile--clickable",l),C=o.useRef(null),[_,y]=o.useState(null),g=o.useRef(null),h=o.useRef(null),v=!!(_&&r&&i),f=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),h.current&&(clearTimeout(h.current),h.current=null)},[]),w=o.useCallback(()=>{f(),y(null)},[f]),b=o.useCallback(()=>{!i||!r||(f(),g.current=setTimeout(()=>{g.current=null,y(C.current?.getBoundingClientRect()??null)},Ul))},[i,r,f]),B=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),!h.current&&(h.current=setTimeout(()=>{h.current=null,y(null)},ey))},[]);return o.useEffect(()=>()=>{f()},[f]),o.useEffect(()=>{(!i||!r)&&w()},[i,r,w]),o.useEffect(()=>{if(!v)return;const x=k=>k instanceof Element&&(C.current?.contains(k)||!!k.closest(".tooltip-training")),A=k=>{x(k.target)?f():B()};return document.addEventListener("pointerover",A,!0),()=>document.removeEventListener("pointerover",A,!0)},[v,f,B]),n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:C,className:p,onClick:u?x=>{w(),u(x)}:void 0,onKeyDown:u?x=>{x.key!=="Enter"&&x.key!==" "||(x.preventDefault(),x.currentTarget.click())}:void 0,onPointerEnter:x=>{x.pointerType==="touch"||x.pointerType==="pen"?w():b()},onMouseEnter:c,onMouseLeave:x=>{B(),d?.(x)},role:u?"button":"img",tabIndex:u?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(at,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),_&&r&&n.jsx(Gl,{plan:r,anchorRect:_,onClose:w})]})}let $a=0,Kl="",vo="",Ra=0;function Yl(){return Zl(!1)}function ny(){return Zl(!0)}function Zl(e){const t=typeof document<"u";$a===0&&t&&(Kl=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(Ra===0&&(vo=document.body.style.paddingRight),Ra++,document.body.style.paddingRight="0px"),$a++;let a=!1;return()=>{a||(a=!0,$a=Math.max(0,$a-1),e&&t&&(Ra=Math.max(0,Ra-1),Ra===0&&(vo?document.body.style.paddingRight=vo:document.body.style.removeProperty("padding-right"))),$a===0&&t&&(document.body.style.overflow=Kl))}}function ay(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:n.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function ry({open:e,onClose:t,ariaLabel:a,title:r,children:i,size:s="md",closeOnBackdrop:l=!0,closeOnEscape:u=!0,showClose:c=!0,className:d,contentClassName:m}){const{t:p}=xe.useTranslation(),C=o.useId(),_=o.useRef(null),y=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const f=document.activeElement,w=Yl(),b=_.current;return to(b,f),b?.focus(),()=>{w();const B=document.activeElement;(!B||B===document.body||b&&b.contains(B))&&no(f)?.focus?.()}},[e]);const g=o.useRef(y),h=o.useRef(u);o.useEffect(()=>{g.current=y,h.current=u}),o.useEffect(()=>{if(e)return Un(()=>{h.current&&g.current()})},[e]);const v=o.useRef(!1);return Qr(_,e),!e||typeof document>"u"?null:en.createPortal(n.jsx("div",{className:we("dialog",d),onPointerDown:l?f=>{v.current=f.target===f.currentTarget}:void 0,onMouseDown:f=>{f.target===f.currentTarget&&f.preventDefault()},onClick:l?f=>{const w=v.current;v.current=!1,w&&f.target===f.currentTarget&&y()}:void 0,children:n.jsxs("div",{ref:_,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?C:void 0,tabIndex:-1,className:we("dialog__surface",`dialog__surface--${s}`,m),onClick:f=>f.stopPropagation(),children:[r?n.jsx("div",{className:"dialog__header",children:n.jsx("h2",{id:C,className:"dialog__title h4b",children:r})}):null,c?n.jsx("button",{type:"button",className:"dialog__close","aria-label":p("common.close","\uB2EB\uAE30"),onClick:y,children:n.jsx(ay,{})}):null,n.jsx("div",{className:"dialog__body",children:i})]})}),document.body)}function oy({columns:e,rows:t,rowKey:a,title:r,toolbar:i,empty:s,loading:l,caption:u,className:c=""}){const{t:d}=xe.useTranslation(),m=!l&&t.length===0;return n.jsxs("div",{className:we("board",c),children:[r||i?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),i?n.jsx("div",{className:"board__toolbar",children:i}):null]}):null,n.jsxs("table",{className:"board__table",children:[u?n.jsx("caption",{className:"board__caption",children:u}):null,n.jsx("thead",{children:n.jsx("tr",{children:e.map(p=>n.jsx("th",{scope:"col",className:we("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),n.jsx("tbody",{children:l?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):m?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:s??d("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((p,C)=>n.jsx("tr",{className:"board__row",children:e.map(_=>n.jsx("td",{className:we("board__td",`board__cell--${_.align??"left"}`),children:_.render(p,C)},_.key))},a(p,C)))})]})]})}function sy({name:e,role:t,photo:a,media:r,credentials:i,size:s=190,className:l=""}){return n.jsxs("div",{className:we("person-card",l),children:[n.jsx("div",{className:"person-card__photo",style:{width:s,height:s},children:r??(a?n.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),n.jsx("h3",{className:"person-card__name",children:e}),t?n.jsx("p",{className:"person-card__role",children:t}):null,i?.length?n.jsx("ul",{className:"person-card__credentials",children:i.map(u=>n.jsx("li",{children:u},u))}):null]})}function iy({groups:e,className:t=""}){return n.jsx("div",{className:we("timeline",t),children:e.map(a=>n.jsxs("section",{className:"timeline__group",children:[n.jsx("h3",{className:"timeline__title",children:a.title}),n.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,i)=>n.jsxs("li",{className:"timeline__row",children:[r.label?n.jsx("span",{className:"timeline__label",children:r.label}):null,n.jsx("div",{className:"timeline__items",children:r.items.map((s,l)=>n.jsx("p",{children:s},l))})]},`${r.label??""}-${i}`))})]},a.title))})}function ly({title:e,kind:t,body:a,badge:r,badgeSrc:i,footer:s,width:l,className:u=""}){const c=r??(i?n.jsx("img",{src:i,alt:""}):null);return n.jsxs("div",{className:we("publication-card",u),style:l?{width:l,flexShrink:0}:void 0,children:[c?n.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:c}):null,n.jsx("h3",{className:"publication-card__title",children:e}),t?n.jsx("p",{className:"publication-card__kind",children:t}):null,n.jsx("p",{className:"publication-card__body",children:a}),s?n.jsx("div",{className:"publication-card__footer",children:s}):null]})}function uy({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const i=ka(a);return o.useEffect(()=>{const s=setTimeout(()=>i.current?.(),r);return()=>clearTimeout(s)},[r,i]),n.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:n.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}function cy({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:i=2,tone:s="dark",className:l=""}){const u=i===1?"h1":"h2";return n.jsxs("div",{className:we("section-header",`section-header--${s}`,l),children:[e?n.jsxs("p",{className:"section-header__eyebrow",children:[t?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"section-header__index",children:t}),n.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?n.jsx(u,{className:"section-header__title",children:a}):null,r?n.jsx("div",{className:"section-header__description",children:r}):null]})}function dy({items:e,className:t=""}){return n.jsx("ul",{className:we("company-meta",t),children:e.map((a,r)=>n.jsxs("li",{className:"company-meta__item",children:[r>0?n.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Xl(e){return typeof e=="string"?e:e.label}function Jl({value:e,onChange:t,suggestions:a,openOnFocus:r=!1,filterSuggestions:i,onSelectSuggestion:s,autoActiveFirst:l=!1}){const u=o.useId(),[c,d]=o.useState(!1),[m,p]=o.useState(-1),C=o.useRef(null),_=o.useMemo(()=>{if(!a.length)return[];const E=e??"";return i===!1?a:E?typeof i=="function"?i(a,E):a.filter(O=>Xl(O).toLowerCase().includes(E.toLowerCase())):r?a:[]},[a,e,r,i]),[y,g]=o.useState(!1),h=o.useRef([]),v=y&&_.length===0?h.current:_;o.useEffect(()=>{v.length&&(h.current=v)},[v]);const f=o.useCallback(()=>g(!0),[]),w=o.useCallback(()=>g(!1),[]),b=l?0:-1;o.useEffect(()=>{c||p(b)},[c,b]),o.useEffect(()=>()=>{C.current&&clearTimeout(C.current)},[]);const B=m<v.length?m:b<v.length?b:-1,x=o.useCallback(E=>{s?s(E):t?.(Xl(E)),d(!1)},[t,s]),A=o.useCallback(()=>d(!0),[]),k=o.useCallback(()=>{d(!0),p(b)},[b]),N=o.useCallback(()=>{C.current=setTimeout(()=>d(!1),120)},[]),S=o.useCallback(E=>{E.nativeEvent.isComposing||E.keyCode===229||(E.key==="ArrowDown"?(E.preventDefault(),d(!0),p(O=>Math.min(v.length-1,(O<v.length?O:b)+1))):E.key==="ArrowUp"?(E.preventDefault(),p(O=>Math.max(b,(O<v.length?O:v.length)-1))):E.key==="Enter"?B>=0&&x(v[B]):E.key==="Escape"&&c&&(E.preventDefault(),d(!1)))},[v,B,c,x,b]);return{listId:u,open:c,activeIdx:B,filtered:v,handleFocus:A,handleBlur:N,handleInput:k,handleKeyDown:S,handleSelect:x,handleCompositionStart:f,handleCompositionEnd:w}}const xo=typeof window<"u"?o.useLayoutEffect:o.useEffect;function Zn(e){const{value:t,defaultValue:a,name:r,inputRef:i,onChange:s,label:l,ariaLabel:u,ariaDescribedBy:c,required:d,placeholder:m,ghostText:p,ghostHint:C,type:_="text",disabled:y=!1,readOnly:g=!1,error:h,helperText:v,maxLength:f,size:w=48,variant:b="input",fullWidth:B=!1,newline:x=!1,multiline:A=!1,rows:k=3,leftIcon:N,rightIcon:S,clearable:E=!1,list:O,showCount:F=!0,className:Y="",onFocus:M,onBlur:L,onKeyDown:P,onEnter:G,inputMode:U,autoComplete:z,autoFocus:q,suggestions:$,filterSuggestions:V,onSelectSuggestion:H,autoActiveFirst:T,openOnFocus:D=!1}=e,R=g||y?void 0:$,{t:I}=xe.useTranslation(),W=o.useId();!l&&!u&&Zt(`TextField:unnamed:${W}`,"[ihab/TextField] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 label \uC774\uB098 ariaLabel \uC911 \uD558\uB098\uB97C \uC8FC\uC138\uC694. placeholder \uB294 \uC774\uB984\uC744 \uB300\uC2E0\uD558\uC9C0 \uBABB\uD569\uB2C8\uB2E4.");const ee=`tf-${W}`,oe=`tf-helper-${W}`,ce=o.useRef(null),J=Jl({value:t??"",onChange:s,suggestions:R??[],openOnFocus:D,filterSuggestions:V,onSelectSuggestion:H,autoActiveFirst:T}),re=!!R&&J.open&&J.filtered.length>0,Ne=o.useRef(null),[K,Q]=o.useState(null),pe=o.useCallback(()=>{const Be=Ne.current;if(!Be||typeof window>"u")return;const We=Be.getBoundingClientRect(),_e=230,Ue=window.innerHeight-We.bottom<_e+8&&We.top>_e+8;Q({position:"fixed",left:We.left,width:We.width,...Ue?{bottom:window.innerHeight-We.top+8}:{top:We.bottom+8},zIndex:Da(Be)})},[]);xo(()=>{if(!re)return;pe();let Be=null;const We=()=>{if(typeof requestAnimationFrame>"u"){pe();return}Be===null&&(Be=requestAnimationFrame(()=>{Be=null,pe()}))},_e=Ue=>{const Ae=Ue.target;Ae&&Ae.nodeType===1&&Ae.closest?.(".text-field__suggestions")||We()};return window.addEventListener("scroll",_e,!0),window.addEventListener("resize",We),()=>{Be!==null&&cancelAnimationFrame(Be),window.removeEventListener("scroll",_e,!0),window.removeEventListener("resize",We)}},[re,pe]);const De=o.useCallback(Be=>{ce.current=Be,typeof i=="function"?i(Be):i&&(i.current=Be)},[i]),ye=p?`${p}${C??I("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:m,ne=t!==void 0,le=ne&&_==="password",[Ce,ge]=o.useState((a??"").length),fe=ne?(t??"").length:Ce,$e=o.useRef(t);xo(()=>{$e.current=t}),o.useEffect(()=>{const Be=ce.current;if(!le||!Be)return;const We=t??"";Be.value!==We&&(Be.value=We)},[le,t]),o.useEffect(()=>{if(!x||!ce.current)return;const Be=ce.current;Be.style.height="",Be.scrollHeight>Be.clientHeight&&(Be.style.height=`${Be.scrollHeight}px`)},[t,Ce,x]);const Ve=f!=null&&fe>f,je=w===32?16:20,Fe=we("text-field",`text-field--s${w}`,b==="display"?"text-field--display":"",B?"text-field--full-width":"",y?"text-field--disabled":"",g?"text-field--readonly":"",h?"text-field--error":"",N?"text-field--has-left-icon":"",S||E?"text-field--has-right-icon":"",Y),qe={id:ee,...le?{}:ne?{value:t}:{defaultValue:a},ref:De,placeholder:ye,name:r,disabled:y,readOnly:g,autoFocus:q,maxLength:f,list:O,inputMode:U,autoComplete:z,"aria-label":!l&&u?u:void 0,"aria-required":d,"aria-invalid":!!h,"aria-describedby":[v||h?oe:null,c].filter(Boolean).join(" ")||void 0,role:R?"combobox":void 0,"aria-autocomplete":R?"list":void 0,"aria-haspopup":R?"listbox":void 0,"aria-expanded":R?re:void 0,"aria-controls":re?J.listId:void 0,"aria-activedescendant":re&&J.activeIdx>=0?`${J.listId}-option-${J.activeIdx}`:void 0,onChange:Be=>{const We=Be.target;ne||ge(We.value.length),s?.(We.value),R&&J.handleInput(),le&&queueMicrotask(()=>{const _e=$e.current??"";We.value!==_e&&(We.value=_e)})},onCompositionStart:R?J.handleCompositionStart:void 0,onCompositionEnd:R?J.handleCompositionEnd:void 0,onFocus:(Be=>{M?.(Be),R&&J.handleFocus()}),onBlur:(Be=>{L?.(Be),R&&J.handleBlur()}),onKeyDown:(Be=>{const We=(Be.key==="Tab"&&!Be.shiftKey||Be.key===" ")&&!Be.nativeEvent.isComposing;if(p&&We&&!g&&!y&&!(Be.currentTarget.value??"").trim()){Be.preventDefault();const _e=Be.currentTarget;ne||(_e.value=p,ge(p.length)),s?.(p);return}R&&Be.key==="Enter"&&!Be.nativeEvent.isComposing&&J.activeIdx>=0?Be.preventDefault():G&&Be.key==="Enter"&&!Be.nativeEvent.isComposing&&(Be.preventDefault(),G()),P?.(Be),R&&J.handleKeyDown(Be)})},mt=E&&!y&&!g&&fe>0,ct=()=>x?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--auto body-2",rows:1}):A?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--textarea body-2",rows:k}):n.jsx("input",{...qe,type:_,className:"text-field__input body-2"}),rt=b==="display"&&!x&&!A&&!!ye,Ct=()=>n.jsxs(n.Fragment,{children:[ct(),rt&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:ye})]});return n.jsxs("div",{ref:Ne,className:Fe,children:[l&&n.jsxs("label",{htmlFor:ee,className:"text-field__label caption-1",children:[l,d&&n.jsx("span",{className:"text-field__required",children:"*"})]}),n.jsxs("div",{className:"text-field__wrap",children:[N&&n.jsx("span",{className:"text-field__icon text-field__icon--left",children:n.jsx(at,{icon:N,label:"",className:"",svgClassName:"text-field__icon-svg",size:je})}),Ct(),f!=null&&F&&n.jsxs("span",{className:`text-field__count caption-2${Ve?" text-field__count--over":""}`,children:[fe,"/",f]}),mt&&n.jsx(me,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:I("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:Be=>{Be.preventDefault()},onClick:()=>{!ne&&ce.current&&(ce.current.value="",ge(0)),s?.("")},tabIndex:-1}),S&&!mt&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(at,{icon:S,label:"",className:"",svgClassName:"text-field__icon-svg",size:je})})]}),!!R&&n.jsx("span",{className:"text-field__status",role:"status","aria-live":"polite",children:J.open&&(t??"").length>0&&J.filtered.length===0?I("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"):""}),re&&(typeof document>"u"?null:en.createPortal(n.jsx("ul",{id:J.listId,className:"text-field__suggestions",role:"listbox",style:K??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:J.filtered.map((Be,We)=>n.jsx("li",{id:`${J.listId}-option-${We}`,role:"option","aria-selected":We===J.activeIdx,className:`text-field__suggestion body-2${We===J.activeIdx?" is-active":""}`,onMouseDown:_e=>_e.preventDefault(),onClick:()=>{J.handleSelect(Be),ce.current?.focus()},children:typeof Be=="string"?Be:n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-field__suggestion-label",children:Be.label}),Be.hint&&n.jsx("span",{className:"text-field__suggestion-hint caption-1",children:Be.hint})]})},typeof Be=="string"?`${Be}-${We}`:Be.id))}),document.body)),(v||h)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:oe,className:"text-field__helper caption-1",role:h?"alert":void 0,children:h||v})})]})}function pn({options:e,value:t,onChange:a,placeholder:r,disabled:i=!1,block:s=!1,size:l=48,error:u=!1,className:c="",ariaLabel:d,ariaDescribedBy:m}){const{t:p}=xe.useTranslation(),C=r??p("dropdown.placeholder","\uC120\uD0DD"),_=o.useId(),y=o.useId(),g=o.useRef(null),h=o.useCallback((M,L)=>{const P=window.innerHeight-M.bottom<260&&M.top>260;return{position:"fixed",left:M.left,minWidth:M.width,...P?{bottom:window.innerHeight-M.top+6}:{top:M.bottom+6},zIndex:Da(L)}},[]),{open:v,setOpen:f,toggle:w,style:b,triggerRef:B,menuRef:x}=Sa({computeStyle:h}),[A,k]=o.useState(-1),N=o.useCallback(()=>k(-1),[]),S=e.find(M=>M.value===t);o.useEffect(()=>{if(v){const M=e.findIndex(L=>L.value===t);k(M>=0?M:e.length?0:-1),requestAnimationFrame(()=>{const L=x.current;if(!L)return;const P=L.querySelectorAll(".dropdown__option")[M];P&&(L.scrollTop=Math.max(0,P.offsetTop-L.clientHeight/2+P.clientHeight/2))})}},[v]),o.useEffect(()=>{v&&k(M=>{if(M>=0&&M<e.length)return M;const L=e.findIndex(P=>P.value===t);return L>=0?L:e.length?0:-1})},[v,e.length]);const E=o.useCallback(()=>{i||w()},[i,w]),O=o.useCallback(M=>{M.disabled||i||(M.value!==t&&a?.(M.value),f(!1))},[a,f,i,t]);o.useEffect(()=>{i&&f(!1)},[i,f]);const F=o.useCallback(M=>{if(!i){if(!v){(M.key==="Enter"||M.key===" "||M.key==="ArrowDown")&&(M.preventDefault(),f(!0));return}if(M.key==="Escape"){M.preventDefault(),f(!1);return}M.key==="ArrowDown"?(M.preventDefault(),k(L=>{let P=L+1;for(;P<e.length&&e[P].disabled;)P++;return P<e.length?P:L})):M.key==="ArrowUp"?(M.preventDefault(),k(L=>{let P=L-1;for(;P>=0&&e[P].disabled;)P--;return P>=0?P:L})):(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),e[A]?O(e[A]):f(!1))}},[i,v,e,A,O,f]),Y=v?n.jsx("div",{ref:x,id:_,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:b,onMouseLeave:N,onMouseDown:M=>M.preventDefault(),children:e.map((M,L)=>n.jsxs("button",{id:`${_}-option-${L}`,type:"button",role:"option","aria-selected":M.value===t,className:we("dropdown__option body-2",M.value===t?"dropdown__option--active":"",L===A?"dropdown__option--active":"",M.disabled?"dropdown__option--disabled":""),onMouseDown:P=>P.preventDefault(),onClick:()=>O(M),onMouseEnter:()=>k(L),disabled:M.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:M.value===t&&n.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),M.label]},M.value))}):null;return n.jsxs("div",{ref:g,className:we("dropdown",`dropdown--s${l}`,v?"dropdown--open":"",s?"dropdown--block":"",u?"dropdown--error":"",c),onKeyDown:F,children:[n.jsxs("button",{ref:B,type:"button",className:"dropdown__trigger",role:"combobox","aria-haspopup":"listbox","aria-expanded":v,"aria-controls":v?_:void 0,"aria-activedescendant":v&&A>=0?`${_}-option-${A}`:void 0,"aria-label":d,"aria-describedby":[d&&S?y:"",m??""].filter(Boolean).join(" ")||void 0,"aria-invalid":u||void 0,disabled:i,onClick:E,onBlur:M=>{v&&!x.current?.contains(M.relatedTarget)&&f(!1)},children:[n.jsx("span",{id:y,className:`dropdown__trigger-label body-2${S?"":" dropdown__trigger-label--placeholder"}`,children:S?S.label:C}),n.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&en.createPortal(Y,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function or({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:i,className:s=""}){const{t:l}=xe.useTranslation(),u=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),c=i??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,t),m=()=>a(Math.max(1,Math.min(d,e-1))),p=()=>a(Math.min(d,e+1));return n.jsxs("div",{className:we("pagination",s),children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:u,disabled:e<=1,onClick:m}),n.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),d)," / ",d]}),n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:c,disabled:e>=t,onClick:p})]})}const Pa=new Map;function gn(e){const{t}=xe.useTranslation(),{options:a=[],value:r=a.find(b=>!b.disabled)?.key??a[0]?.key,onChange:i=b=>{},className:s="",size:l=40,shape:u="pill",useBG:c=!0,fullWidth:d=!1,minButtonWidth:m,ariaLabel:p}=e||{},C=o.useRef(null),_=a.filter(b=>!b.disabled),y=o.useId(),g=a.map(b=>b.key).join("\xB7");o.useEffect(()=>{if(!(!ea||p!=null&&p!=="")){if(Pa.set(y,g||"(\uBCF4\uAE30 \uC5C6\uC74C)"),Pa.size>1){const b=[...Pa.values()].sort();Zt(`segmented-control-unnamed:${b.join("|")}`,`[ihab/SegmentedControl] \uC774\uB984 \uC5C6\uB294 \uB77C\uB514\uC624\uADF8\uB8F9\uC774 \uD55C \uD654\uBA74\uC5D0 ${Pa.size} \uAC1C \uC11C \uC788\uC2B5\uB2C8\uB2E4 \u2014 \uB0AD\uB3C5\uAE30\uB294 \uBAA8\uB450 "\uC120\uD0DD \uD0ED" \uC73C\uB85C \uC77D\uC5B4 \uC5B4\uB290 \uAC83\uC774 \uBB34\uC5C7\uC778\uC9C0 \uAC00\uB9B4 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. ariaLabel \uC744 \uC8FC\uC138\uC694. \uC9C0\uAE08 \uC120 \uAC83(\uBCF4\uAE30 \uC774\uB984\uC73C\uB85C \uC801\uC74C): ${b.join(" / ")}`)}return()=>{Pa.delete(y)}}},[p,g,y]);const h=b=>{if(!_.length)return;const B=Math.max(0,_.findIndex(A=>A.key===r)),x=b==="first"?_[0]:b==="last"?_[_.length-1]:_[(B+b+_.length)%_.length];x&&(i(x.key),Array.from(C.current?.querySelectorAll("[data-segkey]")??[]).find(A=>A.dataset.segkey===x.key)?.focus())},v=b=>{switch(b.key){case"ArrowRight":case"ArrowDown":h(1);break;case"ArrowLeft":case"ArrowUp":h(-1);break;case"Home":h("first");break;case"End":h("last");break;default:return}b.preventDefault()},f=b=>{const B=x=>typeof x=="string"||typeof x=="number";if(!(!B(b.label)||b.count==null||b.count===!1||!B(b.count)))return`${b.label}, ${b.count}`},w=_.some(b=>b.key===r)?r:_[0]?.key;return n.jsx("div",{ref:C,onKeyDown:v,className:we("segmented-control",`segmented-control--${u}`,`segmented-control--${l}`,d&&"segmented-control--full",!c&&"segmented-control--no-bg",m!=null&&"segmented-control--min",s),style:m!=null?{"--segmented-min-button-w":`${m}px`}:void 0,role:"radiogroup","aria-label":p??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(b=>n.jsx(me,{htmlType:"button",role:"radio","aria-checked":b.key===r,"data-segkey":b.key,tabIndex:b.key===w?0:-1,label:b.label,count:b.count,ariaLabel:f(b),disabled:b.disabled,className:b.key===r?"is-selected":"",onClick:()=>{b.disabled||i(b.key)},size:l,shape:u,useBorder:!1,useBG:!1},b.key))})}function _o({count:e,search:t,segment:a,filters:r,pageSize:i,pagination:s,actions:l,className:u}){const{t:c}=xe.useTranslation(),d=e!=null&&n.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??c("common.totalPrefix","\uCD1D "),n.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),m=!!(t||r?.length||i||s||l);return n.jsxs("div",{className:we("toolbar",u),children:[n.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((p,C)=>n.jsx(gn,{size:40,...p},p.ariaLabel??C))]}),m&&n.jsx("div",{className:"toolbar__row",children:n.jsxs("div",{className:"toolbar__row-end",children:[t&&n.jsx(Zn,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??c("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??c("common.search","\uAC80\uC0C9"),autoFocus:t.autoFocus,clearable:!0}),r?.map((p,C)=>n.jsx(pn,{size:40,options:p.options,value:p.value,onChange:p.onChange,ariaLabel:p.ariaLabel},C)),(i||s)&&n.jsxs("div",{className:"toolbar__pager",children:[i&&n.jsx(pn,{size:40,options:i.options,value:i.value,onChange:i.onChange,ariaLabel:i.ariaLabel??c("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),s&&n.jsx(or,{page:s.page,totalPages:s.total,onChange:s.onChange,prevLabel:s.prevLabel,nextLabel:s.nextLabel})]}),l]})})]})}function Ql(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(Ql).join(""):""}function py(e){let t=e.replace(/\r\n/g,`
|
|
851
|
+
and aids recovery.`,site:{title:"Site",malgwi:"Malgwi",soundDirection:"Sound Direction System",vrSoundDirection:"VR Sound Direction System",hearingTest:"Hearing Test Pro"},sns:{title:"SNS",naverBlog:"Naver Blog",kakao:"KAKAO Talk Open Chat"},policy:{title:"Policy",terms:"Terms of Service",privacy:"Privacy Policy"},ceo:"CEO",address:"Address",support:"Support",ceoName:"Ji-hye Han",addressValue:"302, 3F, Haechan Bldg, 32 Sicheong-gil, Chuncheon, Gangwon, Korea"},xg={trainingPhone:{topic:"Gardening",prev:"Prev",next:"Next",speed:"Speed 3",noiseType:"Crowd noise",settings:"Settings",start:{caption:"Press the play (\u25B6) button below and listen carefully. After listening, check the sentence."},feedback:{caption:"Plant the well-grown seedlings in the garden bed and cover them carefully with plastic film."},done:{heardWell:"Heard clearly",listenAgain:"Listen again"}}},_g={timeHM:"{{hh}}:{{mm}}",timeH:"{{hh}}:{{mm}}"},wg={options:"Training Options",difficulty:"Difficulty",exclude:"Exclude",chosung:"Initial Consonant",excludeOptions:{none:"None",noImage:"No Image"}},Ag={answer:"Answer",distractor:"Distractor"},Bg={phaseWordDownload:"Download Word Data",phaseImageCheck:"Check Images",phasePairAnalysis:"Analyze Word Pairs",downloadingCount_one:"Downloading {{n}} word",downloadingCount_other:"Downloading {{n}} words",checkingPage:"Checking page {{page}} list",imageCount:"{{done}} / {{total}} items"},kg={clearAriaLabel:"Clear input"},Ng={ariaLabel:"Select tab"},Eg={ariaLabel:"Tabs"},Dg={dragPrompt:"Drag and drop files here",browseButton:"Choose Files",removeAriaLabel:"Remove {{name}}"},Sg={ariaLabel:"User avatar"},jg={relativeDay:{today:"Today",yesterday:"Yesterday",daysAgo:"{{n}}d ago"},reason:{notLoggedIn:"Login required."},list:{title:"Received Homework"},status:{expired:"Expired",done:"Done {{count}}\xD7 \xB7 {{date}}",notDone:"Not done"}},Tg={weekly:{title:"Weekly Training",daily:"Daily Listening",crossword:"Crossword"},homework:{title:"Homework Progress",totalRate:"Overall rate",count:"Total",done:"Done",remaining:"Remaining"},today:{tooltipTotal:"Total",tooltipDone:"Done"},filter:{countSuffix:" sessions"},time:{countLabel_one:"{{n}} session",countLabel_other:"{{n}} sessions",empty:"No training records"},daily:{title:"Today's Listening Record",empty:"No completed sessions"},crossword:{title:"Crossword Quiz",empty:"No completed levels"},visit:{title:"Linked Visit Records"},detail:"Details",detailFor:"{{name}} details",trainingType:{LISTEN_IN_NOISE:"Sentence in Noise",SHORT_STORY:"Short Story",LONG_STORY:"Long Story",ORDERING_SENTENCE:"Sentence Ordering"}},Mg={import:"Add to my trainings",publisher:"Publisher",time:{justNow:"just now",minutesAgo:"{{n}}m ago",hoursAgo:"{{n}}h ago",daysAgo:"{{n}}d ago",weeksAgo:"{{n}}w ago",monthsAgo:"{{n}}mo ago",yearsAgo:"{{n}}y ago"},badge:{shared:"Store"},publish:{descPlaceholder:"One-line description for the Training Store (optional)"}},Lg={manage:{unit:"item(s)"}},$g={cancelLabel:"Cancel"},Rg={subtitle:"Select a topic to start listening practice."},Pg={steps:"Step {{current}} of {{total}}"},Fg={panelTitle:"Training misses",viewItems:"Items",viewTypes:"Types",colPending:"Left",colTrend:"Change",colRuns:"Runs",unitItem:" items",skippedOnly_one:"{{n}} older record was excluded \u2014 it does not say what was answered.",skippedOnly_other:"{{n}} older records were excluded \u2014 they do not say what was answered.",summaryLabel:"Recorded",summaryValue:"{{items}} items \xB7 {{pending}} still missed",nextLabel:"Next to work on",nextCount:"{{count}}",nextCountCapped:"{{shown}} of {{total}}",picked:"\u2192 {{what}}",typeClear:"All caught up",typePending:"{{pending}} of {{total}} left",flat:"no change",runs_one:"{{count}} run",runs_other:"{{count}} runs",avgDuration:"{{sec}}s avg"},Ig={resetColumns:"Reset column widths",scrollRegion:"Horizontally scrollable table",rowActionHint:"Press a row to open its details"},Og={panelTitle:"Word table scores",viewWords:"Words",viewTables:"Tables",colLatest:"When",colTrend:"Change",unitTime:" times",summaryLabel:"Scored",summaryValue:"{{times}} times \xB7 {{words}} words",nextLabel:"Focus next",nextCount:"{{count}}",allClear:"All correct last time.",times:"{{count}}x",flat:"no change",recentLabel:"Recent scorings",nextCountCapped:"{{shown}} of {{total}}"},Hg={ariaLabel:"Banner",dotAriaLabel:"Banner {{index}} of {{count}}"},zg={selectYearMonth:"Select year and month",chooseDate:"Choose a date"},Vg={previewRegion:"Report preview \u2014 scrollable sideways"},Wg={description:"Description",textbox:"Text",training:"Training guide",menu:"Menu"},qg={devNone:"No acquisition data",place:{labial:"Bilabial",alveolar:"Alveolar",palatal:"Palatal",velar:"Velar",glottal:"Glottal"}},Ug={clearSelection:"Clear selection"},Gg={showResult:"Show {{type}} result"},Kg={selected:"Selected",remove:"Remove",exclude:"Excluded",nthSelected:"Selection {{n}}"},Yg={loading:"Loading"},Zg={state:{active:"playing",played:"heard",correct:"correct",wrong:"wrong"}},Xg={ariaLabel:"Breadcrumb"},Jg={empty:"No items yet."},Qg={main:"Main gradient",soft:"Soft",sub:"Sub color",deep:"Deep gradient",softSub:"Soft sub",warm:"Warm (accent)",dark:"Dark",radial:"Radial gradient",diagonal:"Diagonal pattern",dots:"Dot pattern",outline:"Outline",success:"Success / done",naver:"Naver blog notice",instagram:"Instagram notice"},eb={common:I2,calendar:O2,passCard:H2,searchField:z2,rating:V2,colorPicker:W2,dropdown:q2,accordion:U2,header:G2,nav:K2,settings:Y2,usage:Z2,account:X2,help:J2,training:Q2,trainingSettings:eg,customers:tg,payment:ng,coupons:ag,visits:rg,company:og,trainingType:sg,myWordTraining:ig,myWordTable:lg,keyWords:ug,wordTable:cg,wordSearch:dg,wordPrint:pg,topic:mg,accessLinkManager:hg,login:Cg,device:fg,manager:gg,wordPairs:bg,game:yg,footer:vg,landing:xg,date:_g,trainingSetPage:wg,wordTrainingPreview:Ag,wordData:Bg,textField:kg,segmentedControl:Ng,tabs:Eg,fileUpload:Dg,avatar:Sg,myHomework:jg,trainingStatus:Tg,store:Mg,homework:Lg,inquiry:$g,trainingPlanRun:Rg,progress:Pg,trainingMiss:Fg,table:Ig,wordScore:Og,topBanner:Hg,datePicker:zg,report:Vg,tooltip:Wg,phonemeProfile:qg,bulkBar:Ug,debug:Gg,badge:Kg,loader:Yg,soundCompass:Zg,breadcrumb:Xg,board:Jg,promoBannerBg:Qg};const tb="0.326.0",nb=[{code:"ko",label:"\uD55C\uAD6D\uC5B4"},{code:"en",label:"English"}],Jr="ko",ab="ihab_display_language";function Ei(){if(typeof window>"u")return Jr;try{const e=localStorage.getItem(ab);if(e&&nb.some(t=>t.code===e))return e}catch{}return Jr}function Di(e){try{document.documentElement.lang=e}catch{}}$t.on("languageChanged",Di),Di(Ei()),$t.use(xe.initReactI18next).init({resources:{ko:{translation:F2},en:{translation:eb}},lng:Ei(),fallbackLng:Jr,interpolation:{escapeValue:!1},react:{useSuspense:!1}});const rb=new Map;try{$t.store?.on?.("added",()=>rb.clear())}catch{}let Xa=null,Si=null,ji=null;function ob(){const e=gi();if(e&&e.entries.length>0){const t=VC();if(Xa&&Si===e&&ji===t)return Xa;const a=new Set,r=[];for(const i of e.entries)!i.word||a.has(i.word)||(a.add(i.word),r.push({w:i.word,s:i.syllables,p:t?.[i.word]?[...t[i.word].cho??[],...t[i.word].jung??[],...t[i.word].jong??[]]:[],pron:i.pronunciation||i.word,grade:i.grade}));return Xa=r,Si=e,ji=t,Xa}return[]}new Proxy([],{get(e,t){const a=ob(),r=a[t];return typeof r=="function"?r.bind(a):r}});function sb(e){if(e.includes("\\")&&e.includes("("))return!0;if(!/url\s*\(/i.test(e))return!1;const t=e.replace(/url\(\s*(['"]?)#[^)'"]*\1\s*\)/gi,"");return/url\s*\(/i.test(t)}function ib(e){if(typeof window>"u")return"";const t=(a,r)=>{typeof r.attrValue=="string"&&sb(r.attrValue)&&(r.keepAttr=!1)};Pr.addHook("uponSanitizeAttribute",t);try{return Pr.sanitize(e,{USE_PROFILES:{svg:!0,svgFilters:!0},FORBID_TAGS:["script","use","style"],FORBID_ATTR:["xlink:href","href"]})}finally{Pr.removeHook("uponSanitizeAttribute",t)}}function lb(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),[s,l]=o.useState(null),[u,c]=o.useState(null);return o.useEffect(()=>{if(!e||typeof e!="string"||!e.endsWith(".svg")){a(null),i(null),l(null);return}const d=e.split("/").pop();let m=e;d&&(e.startsWith("/")?m=Fr(e):/^(Logo|Symbol)/i.test(d)?m=Fr(`logo/${d}`):(/^https?:\/\//i.test(e)||e.startsWith("data:"),m=e)),i(null),l(null),a(m)},[e]),o.useEffect(()=>{if(!t)return;let d=!1;async function m(){try{let p=await fetch(t);p.ok||(p=await fetch(t));const C=p.headers.get("content-type")||"";if(d)return;if(C.includes("svg")){i("mask");return}if(C.startsWith("image/")){i("img");return}const y=await fetch(t);if(!y.ok)throw new Error("not ok");const v=await y.text();if(d)return;if(/^\s*<svg[\s>]/i.test(v)){const g=ib(v);if(!g){i("none");return}l(g),i("inline");return}i("none")}catch{d||i("none")}}return m(),()=>{d=!0}},[t]),o.useEffect(()=>{let d=!1,m=null;return r==="mask"&&t&&fetch(t).then(p=>{if(!p.ok)throw new Error("fetch failed");return p.blob()}).then(p=>{d||(m=URL.createObjectURL(p),c(m))}).catch(()=>{d||i("img")}),()=>{d=!0,m&&URL.revokeObjectURL(m),c(null)}},[r,t]),{iconToUse:t,mode:r,svgText:s,blobUrl:u}}function at(e){const{icon:t,label:a,className:r,imgClassName:i,maskClassName:s,svgClassName:l,wrapperStyle:u,size:c}=e||{},d=r??"iconRenderer-icon",m=i??"iconRenderer-icon-image",p=s??"iconRenderer-icon-mask",C=l??"iconRenderer-icon-svg",y=typeof t=="string"?t:null,v=j0(y),{iconToUse:g,mode:h,svgText:x,blobUrl:f}=lb(y),w=(k,N={})=>n.jsx("span",{className:d,style:u,...N,children:k}),b=typeof c=="number"?{width:c,height:c,objectFit:"contain"}:null,B=(k,N={})=>n.jsx("img",{src:k,alt:typeof a=="string"?a:typeof a=="number"?String(a):"",className:m,...N,style:b?{...N.style,...b}:N.style});if(!t)return null;if(typeof t!="string")return w(t);if(t==="none")return w(n.jsx("span",{className:C,dangerouslySetInnerHTML:{__html:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" aria-hidden="true"></svg>'}}),{"aria-hidden":"true"});if(v)try{return w(o.createElement(v,{className:C,size:typeof c=="number"?c:20}),{"aria-hidden":"true"})}catch{}if(g&&g.endsWith(".svg")){if(h==="mask"){const k={"--icon-url":f?`url(${f})`:`url(${g})`,...typeof c=="number"?{"--icon-size":`${c}px`}:null};return w(n.jsx("span",{className:p,style:k}),{"aria-hidden":"true"})}return h==="img"?w(B(g,{onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}}),{"aria-hidden":"true"}):h==="inline"?w(n.jsx("span",{className:C,dangerouslySetInnerHTML:x?{__html:x}:void 0}),{"aria-hidden":"true"}):w(null,{"aria-hidden":"true"})}if(t.startsWith("/")||t.includes("/assets/")||t.match(/\.(png|jpg|jpeg|webp|gif)$/i))return B(Fr(t),{style:u,onError:k=>{k.currentTarget.onerror=null,k.currentTarget.style.display="none"}});const _=typeof c=="number"?c:20,A=`<svg width="${_}" height="${_}" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><rect x="3" y="3" width="18" height="18" rx="2" ry="2" style="fill:none;stroke:currentColor;stroke-width:2"/></svg>`;return w(n.jsx("span",{className:C,dangerouslySetInnerHTML:{__html:A}}),{"aria-hidden":"true"})}function Ti(e){const[t,a]=o.useState(!1),r=o.useRef(!1),i=o.useRef(!0);o.useEffect(()=>(i.current=!0,()=>{i.current=!1}),[]);const s=o.useCallback(()=>{if(!e||r.current)return;const l=e();if(l&&typeof l.then=="function"){r.current=!0,a(!0);const u=()=>{r.current=!1,i.current&&a(!1)};l.then(u,u)}},[e]);return{pending:t,press:s}}function ub({icon:e,title:t,message:a,action:r,className:i}){const{pending:s,press:l}=Ti(r?.onClick);return n.jsxs("div",{className:we("empty-state",i),children:[e&&n.jsx(at,{icon:e,size:48,className:"empty-state__icon"}),t&&n.jsx("p",{className:"empty-state__title h4",children:t}),a&&n.jsx("p",{className:"empty-state__message body-3",children:a}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:l,disabled:s,"aria-busy":s||void 0,children:[r.icon&&n.jsx(at,{icon:r.icon,className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:r.label})]})]})}function cb({message:e,hint:t,icon:a="triangle-alert",onRetry:r,retryLabel:i,className:s}){const{t:l}=xe.useTranslation(),{pending:u,press:c}=Ti(r);return n.jsxs("div",{className:we("empty-state","error-state",s),role:"alert",children:[n.jsx(at,{icon:a,size:48,className:"empty-state__icon error-state__icon"}),n.jsx("p",{className:"empty-state__message body-3",children:e??l("common.errorState.message",{defaultValue:"\uBD88\uB7EC\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."})}),t&&n.jsx("p",{className:"error-state__hint caption-1",children:t}),r&&n.jsxs("button",{type:"button",className:"empty-state__action button button40 button40--bar button--variant-main button--align-center button--shape-rounded",onClick:c,disabled:u,"aria-busy":u||void 0,children:[n.jsx(at,{icon:"rotate-cw",className:"button__icon"}),n.jsx("span",{className:"button__label button-1",children:i??l("common.errorState.retry",{defaultValue:"\uB2E4\uC2DC \uC2DC\uB3C4"})})]})]})}function db({icon:e,title:t,description:a,cta:r,tone:i="main",disabled:s=!1,onClick:l,className:u=""}){const c=o.useId(),d=`${c}-title`,m=`${c}-desc`,p=`${c}-cta`,C=()=>{s||l?.()};return n.jsx("section",{role:"button",tabIndex:s?-1:0,"aria-disabled":s||void 0,"aria-labelledby":d,"aria-describedby":`${m} ${p}`,onClick:C,onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),C())},className:we("action-card",`action-card--${i}`,s&&"action-card--disabled",u),children:n.jsxs("div",{className:"action-card__body",children:[n.jsx("span",{"aria-hidden":!0,className:"action-card__chip",children:n.jsx(at,{icon:e,size:34})}),n.jsxs("div",{className:"action-card__text",children:[n.jsx("h2",{id:d,className:"action-card__title",children:t}),n.jsx("p",{id:m,className:"action-card__desc",children:a})]}),n.jsxs("div",{className:"action-card__cta",children:[n.jsx("span",{id:p,children:r}),n.jsx("span",{"aria-hidden":!0,className:"action-card__arrow",children:n.jsx(at,{icon:"arrow-right",size:18})})]})]})})}function pb({as:e="div",className:t="",children:a,storage:r,...i}){r&&fC({resolveUrl:r.resolveUrl,download:r.download??(()=>Promise.reject(new Error("[ihabdevteam-core] CoreScope: download resolver\uAC00 \uC124\uC815\uB418\uC9C0 \uC54A\uC558\uC2B5\uB2C8\uB2E4."))),exists:r.exists,resolvePath:r.resolvePath,noiseBaseUrl:r.noiseBaseUrl,noiseFileGain:r.noiseFileGain});const s=we("ihabdevteam-core-scope",t);return n.jsx(e,{className:s,...i,children:a})}function Qr(e,t=!0){o.useEffect(()=>{if(!t)return;const a=e.current;if(!a)return;const r=i=>{if(i.key!=="Tab")return;const s=Array.from(a.querySelectorAll(fn)).filter(m=>!m.closest('[aria-hidden="true"]'));if(!s.length){i.preventDefault();return}const l=s[0],u=s[s.length-1],c=document.activeElement,d=c===a;i.shiftKey&&(c===l||d)?(i.preventDefault(),u.focus()):!i.shiftKey&&c===u&&(i.preventDefault(),l.focus())};return a.addEventListener("keydown",r),()=>a.removeEventListener("keydown",r)},[e,t])}const fn='a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',eo=new WeakMap;function to(e,t){e&&eo.set(e,t)}function no(e){let t=e;for(let a=0;t&&!t.isConnected&&a<10;a++){let r=t;for(;r&&!eo.has(r);)r=r.parentElement;if(!r)return t;t=eo.get(r)??null}return t}function Mi(e){return!(!e||!e.isConnected||e===document.body||typeof e.focus!="function"||e.disabled||e instanceof HTMLInputElement&&e.type==="hidden"||e.closest('[inert],[aria-hidden="true"],[hidden]'))}function Ja(e,t,a){const r=e?.isConnected?e:a?.isConnected?a:null;if(Mi(t)&&!(e&&e.contains(t)))return t.focus(),t;if(!r)return null;const i=Array.from(document.querySelectorAll(fn)).filter(c=>!(e&&e.contains(c))&&Mi(c));let s=null,l=null;for(const c of i)r.compareDocumentPosition(c)&Node.DOCUMENT_POSITION_PRECEDING?s=c:l||(l=c);const u=s??l;return u?.focus(),u}function mb({title:e="",lines:t=[],notices:a=null,children:r,variant:i="default",dismissible:s=!1,className:l=""}){const{t:u}=xe.useTranslation(),[c,d]=o.useState(!1),m=o.useRef(null),p=o.useCallback(()=>{const g=m.current;g&&g.contains(document.activeElement)&&Ja(g),d(!0)},[]);if(c)return null;const C=`notice-box notice-box--${i} body-2 ${l}`.trim(),y=s&&n.jsx("button",{type:"button",className:"notice-box__dismiss",onClick:p,"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"});if(a&&Array.isArray(a)&&a.length)return n.jsxs("div",{className:C,role:"note",children:[a.map((g,h)=>n.jsxs("div",{className:"notice-box__inner",children:[g.title?n.jsx("span",{className:"notice-box__title body-3",children:g.title}):null,n.jsx("div",{className:"notice-box__body",children:g.lines&&g.lines.length?n.jsx("div",{children:g.lines.map((x,f)=>n.jsx("span",{className:"notice-box__line body-3",children:x},f))}):g.children??null})]},h)),y]});const v=e||t.length?n.jsxs("div",{className:"notice-box__inner",children:[e?n.jsx("span",{className:"notice-box__title body-1",children:e}):null,n.jsx("div",{className:"notice-box__body",children:t.length?n.jsx("ul",{children:t.map((g,h)=>n.jsx("li",{className:"notice-box__line",children:g},h))}):r})]}):n.jsx("div",{className:"notice-box__inner",children:r});return n.jsxs("div",{ref:m,className:C,role:"note",children:[v,y]})}const sa=[];let Qa=!1;function Li(e){if(e.key!=="Escape"||e.defaultPrevented||e.isComposing||e.keyCode===229)return;const t=sa[sa.length-1];t&&(e.stopPropagation(),t())}function Un(e){return sa.push(e),!Qa&&typeof document<"u"&&(document.addEventListener("keydown",Li),Qa=!0),()=>{const t=sa.lastIndexOf(e);t>=0&&sa.splice(t,1),sa.length===0&&Qa&&typeof document<"u"&&(document.removeEventListener("keydown",Li),Qa=!1)}}const $i=o.createContext(null);function hb(e){return/max-width:\s*7[0-9][0-9]px/.test(e)}const Ri=e=>typeof window>"u"||!window.matchMedia?!1:window.matchMedia(e).matches;function Cb(e){const t=o.useCallback(a=>{if(typeof window>"u"||!window.matchMedia)return()=>{};const r=window.matchMedia(e);return r.addEventListener?r.addEventListener("change",a):r.addListener&&r.addListener(a),()=>{r.removeEventListener?r.removeEventListener("change",a):r.removeListener&&r.removeListener(a)}},[e]);return hs.useSyncExternalStore(t,()=>Ri(e),()=>!1)}function fb(e){const[t,a]=o.useState(Ri(e));return o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const r=window.matchMedia(e),i=l=>a(l.matches),s=r;return s.addEventListener?s.addEventListener("change",i):s.addListener&&s.addListener(i),a(r.matches),()=>{s.removeEventListener?s.removeEventListener("change",i):s.removeListener&&s.removeListener(i)}},[e]),t}const gb=typeof hs.useSyncExternalStore=="function"?Cb:fb;function ln(e){const t=o.useContext($i),a=gb(e);return t&&typeof t.mobile=="boolean"&&hb(e)?t.mobile:a}const bb="(prefers-reduced-motion: reduce)";function ao(){return ln(bb)}function cn(e){const{anchorRect:t,anchorEl:a,offset:r=20,edgeMargin:i=20,onClose:s,closeOnOutsideClick:l=!0,className:u="",role:c="dialog",ariaLabel:d="",children:m,backdrop:p=!1,isMobilePopup:C=!1,useBorder:y=!0,header:v,focusOnOpen:g}=e||{},h=o.useRef(null),[x,f]=o.useState({position:"fixed",left:0,top:-9999}),[w,b]=o.useState(!1),[B,_]=o.useState("bottom"),[A,k]=o.useState(!1),[N,S]=o.useState(!1),E=!t&&!a,O=o.useCallback((q=!1)=>{if(N&&C)return;const $=a?a.getBoundingClientRect():t;if(!$||!h.current)return;const V=h.current,{offsetWidth:H,offsetHeight:T}=V,D=window.innerWidth,R=window.innerHeight,I=D-$.right,W=$.left,ee=$.top,oe=R-$.bottom;let ce=0,J=0,re="top";if(ee>=T+r)re="top",J=$.top-r-T,ce=$.left+$.width/2-H/2;else if(oe>=T+r)re="bottom",J=$.bottom+r,ce=$.left+$.width/2-H/2;else if(I>=H+r)re="right",ce=$.right+r,J=$.top+$.height/2-T/2;else if(W>=H+r)re="left",ce=$.left-r-H,J=$.top+$.height/2-T/2;else{const pe=Math.max(ee,oe,I,W);pe===ee?(re="top",J=$.top-r-T,ce=$.left+$.width/2-H/2):pe===oe?(re="bottom",J=$.bottom+r,ce=$.left+$.width/2-H/2):pe===I?(re="right",ce=$.right+r,J=$.top+$.height/2-T/2):(re="left",ce=$.left-r-H,J=$.top+$.height/2-T/2)}const Ne=Number.isFinite(Number(i))?Number(i):8;ce=Math.min(Math.max(ce,Ne),D-H-Ne),J=Math.min(Math.max(J,Ne),R-T-Ne);const K=Math.round(ce),Q=Math.round(J);q&&h.current?(h.current.style.left=`${K}px`,h.current.style.top=`${Q}px`,h.current.dataset.placement=re):(_(re||B),f({position:"fixed",left:K,top:Q}),k(!0))},[N,C,a,t,r,i,B]);o.useLayoutEffect(()=>{if(E)return;if(N&&C){f({position:"fixed",left:"50%",top:"50%",transform:"translate(-50%, -50%)",width:"calc(100% - 40px)",maxWidth:"calc(100% - 40px)"}),k(!0);return}O();const q=requestAnimationFrame(()=>O());return()=>cancelAnimationFrame(q)},[t,a,r,m,i,E,N,C,O]),o.useEffect(()=>{if(E||N&&C||!h.current||typeof ResizeObserver>"u")return;const q=new ResizeObserver(()=>{t&&O()});return q.observe(h.current),()=>q.disconnect()},[t,m,i,E,N,C,O]),o.useEffect(()=>{if(E||N&&C)return;let q=null;const $=()=>{if(typeof requestAnimationFrame>"u"){O(!0);return}q===null&&(q=requestAnimationFrame(()=>{q=null,O(!0)}))},V=H=>{if(!a&&s){const T=H.target;if(T&&h.current&&h.current.contains(T))return;try{if(T&&T.closest&&T.closest("[data-tooltip-ignore]"))return}catch{}P.current(!0);return}$()};return window.addEventListener("resize",$),document.addEventListener("scroll",V,{passive:!0,capture:!0}),()=>{q!==null&&cancelAnimationFrame(q),window.removeEventListener("resize",$),document.removeEventListener("scroll",V,{capture:!0})}},[t,a,s,r,m,i,E,N,C,O]),o.useEffect(()=>{if(typeof window>"u"||!window.matchMedia)return;const q=window.matchMedia("(max-width: 768px)"),$=()=>S(!!q.matches);$();try{q.addEventListener?q.addEventListener("change",$):q.addListener($)}catch{try{q.addListener($)}catch{}}return()=>{try{q.removeEventListener?q.removeEventListener("change",$):q.removeListener($)}catch{}}},[]);const F=o.useRef(!1),Y=o.useRef(null),M=ao(),L=o.useCallback((q=!1)=>{if(s&&!(w||F.current)){if(F.current=!0,q){b(!0);try{s&&s()}catch{F.current=!1,b(!1)}return}b(!0),Y.current=setTimeout(()=>{Y.current=null;try{s&&s()}catch{F.current=!1,b(!1)}},M?0:200)}},[w,s,b,M]);o.useEffect(()=>()=>{Y.current&&clearTimeout(Y.current)},[]),o.useEffect(()=>{if(E)return;const q=H=>{const T=h.current;if(!T)return;const D=H.target;if(D&&!T.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&L(!0)}},$=H=>{const T=h.current;if(!T)return;const D=H.target;if(D&&!T.contains(D)){try{if(D.closest&&D.closest("[data-tooltip-ignore]"))return}catch{}l&&L(!0)}},V=H=>{if(H.key==="Tab"){const T=h.current;if(!T)return;const D=T.querySelectorAll(fn);if(!D||D.length===0)return;const R=D[0],I=D[D.length-1],W=document.activeElement;H.shiftKey?W===R&&(H.preventDefault(),I.focus()):W===I&&(H.preventDefault(),R.focus())}};return document.addEventListener("pointerdown",q,!0),document.addEventListener("click",$,!0),document.addEventListener("keydown",V),()=>{document.removeEventListener("pointerdown",q,!0),document.removeEventListener("click",$,!0),document.removeEventListener("keydown",V)}},[s,l,L,E]);const P=o.useRef(L);o.useEffect(()=>{P.current=L});const G=!!s;o.useEffect(()=>{if(!(E||!G))return Un(()=>P.current())},[E,G]),o.useEffect(()=>{const q=()=>{L(!0)};return typeof document<"u"&&document.addEventListener("speechear-close-tooltips",q),()=>{typeof document<"u"&&document.removeEventListener("speechear-close-tooltips",q)}},[L]);const U=o.useRef(null);o.useEffect(()=>{if(E||g===!1||!A)return;const q=h.current;if(!q)return;const $=q.querySelector(fn);if($)return U.current=document.activeElement,$.focus(),()=>{const V=U.current;U.current=null,V&&document.contains(V)&&V.focus()}},[E,g,A]),o.useEffect(()=>{c==="dialog"&&!d&&Zt("tooltip-no-name",'[ihab/Tooltip] \uC774\uB984 \uC5C6\uB294 role="dialog" \uC785\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. \uB0AD\uB3C5\uAE30\uAC00 "\uB300\uD654\uC0C1\uC790" \uB77C\uACE0\uB9CC \uC77D\uC2B5\uB2C8\uB2E4.')},[c,d]);const z=n.jsxs("div",{ref:h,className:`tooltip-content ${E?"tooltip-content--inline":""} ${y?"tooltip-content--bordered":""} ${w?"is-closing":""} ${u} ${N&&C?"is-mobile":""}`,role:c,"aria-label":d||void 0,style:E?{}:{...x,visibility:A?"visible":"hidden"},tabIndex:-1,"data-placement":B,"data-left":E?"":x.left,"data-top":E?"":x.top,"data-anchor-left":t?Math.round(t.left):"","data-anchor-top":t?Math.round(t.top):"","data-anchor-width":t?Math.round(t.width):"","data-anchor-height":t?Math.round(t.height):"",children:[v!=null&&n.jsx("div",{className:"tooltip-content__header h5",children:v}),m]});if(E||typeof document>"u")return z;if(p||N&&C){const q=n.jsxs("div",{className:"tooltip-portal",children:[n.jsx("div",{className:"tooltip-backdrop",onClick:()=>{l&&L(!0)}}),z]});return en.createPortal(q,document.body)}return en.createPortal(z,document.body)}function An(e){const{anchorRect:t,text:a,offset:r=8,onClose:i,className:s="",ariaLabel:l}=e||{};return a?n.jsx(cn,{anchorRect:t,offset:r,onClose:i,closeOnOutsideClick:!1,className:`tooltip-info ${s}`,ariaLabel:l||a,children:n.jsx("div",{className:"tooltip-info__content body-3",children:a})}):null}function Gn(e){const{t}=xe.useTranslation(),{anchorRect:a,title:r,items:i,activeIndex:s=-1,showIndex:l=!0,onClose:u,offset:c=12,closeOnOutsideClick:d=!0}=e||{},m=(Array.isArray(i)?i:i?[i]:[]).map(p=>typeof p=="string"?{text:p}:p);return!m.length&&!r?null:n.jsx(cn,{anchorRect:a,offset:c,onClose:u,closeOnOutsideClick:d,useBorder:!1,className:"tooltip-description",ariaLabel:r||t("tooltip.description","\uC124\uBA85"),children:n.jsxs("div",{className:"tooltip-description__box",children:[r&&n.jsx("span",{className:"tooltip-description__title body-2",children:r}),n.jsx("ol",{className:"tooltip-description__items",children:m.map((p,C)=>n.jsxs("li",{className:`tooltip-description__item body-3${C===s?" tooltip-description__item--active":""}`,children:[l&&m.length>1&&n.jsxs("span",{className:"tooltip-description__index button-1",children:[C+1,"."]}),p.color&&n.jsx("span",{className:"tooltip-description__dot",style:{background:p.color},"aria-hidden":"true"}),n.jsx("span",{children:p.text})]},C))})]})})}function ka(e){const t=o.useRef(e);return o.useEffect(()=>{t.current=e}),t}let ro=0,Pi=!1;function Fi(){Pi||typeof document>"u"||(Pi=!0,document.addEventListener("pointerdown",e=>{e.pointerType==="touch"&&(ro=Date.now())},!0),document.addEventListener("touchstart",()=>{ro=Date.now()},{capture:!0,passive:!0}))}Fi();function ia(e){return!!e&&e.pointerType==="touch"}function la(e=1e3){return Fi(),Date.now()-ro<e}function oo(e,t,a,{enabled:r=!0,fallbackOnParent:i=!1}={}){const s=ka(e),l=ka(t),u=o.useRef(null),c=o.useRef(0);o.useEffect(()=>{if(!r||typeof document>"u")return;const m=p=>{const C=p,y=p.target,v=a.current,g=!!(y&&v&&v.contains(y));if(C.pointerType!=="touch"){g&&(u.current=null);return}if(g){u.current=s.current;return}u.current=null,s.current&&!(y&&y.closest?.(".tooltip-content"))&&l.current(!1,v)};return document.addEventListener("pointerdown",m,!0),()=>document.removeEventListener("pointerdown",m,!0)},[r,a,s,l]);const d=o.useCallback(m=>{const p=u.current;return p===null?!1:(u.current=null,c.current=Date.now(),l.current(!p,m??a.current),!0)},[a,l]);return o.useEffect(()=>{if(!r||!i)return;const m=a.current,p=m?.parentElement;if(!m||!p)return;let C=null;const y=h=>{const x=h.changedTouches?.[0];if(!x)return!1;const f=m.getBoundingClientRect();return x.clientX>=f.left&&x.clientX<=f.right&&x.clientY>=f.top&&x.clientY<=f.bottom},v=h=>{C=y(h)?s.current:null},g=h=>{const x=C;C=null,!(x===null||Date.now()-c.current<700||!y(h))&&(u.current=null,c.current=Date.now(),l.current(!x,m))};return p.addEventListener("touchstart",v,{passive:!0}),p.addEventListener("touchend",g),()=>{p.removeEventListener("touchstart",v),p.removeEventListener("touchend",g)}},[r,i,a,s,l]),{touchPress:d}}function yb(e,t){const{size:a=48,type:r,htmlType:i,href:s,target:l,rel:u,icon:c,rightIcon:d,label:m,count:p,subLabel:C,children:y,ariaLabel:v,variant:g="default",align:h="center",nowrap:x=!1,selected:f,toggleable:w=!1,ariaExpanded:b,ariaControls:B,disabled:_=!1,useLabel:A=!0,useBorder:k=!0,useBG:N=!0,useDisabledCovered:S=!1,useDisabledInvisible:E=!1,width:O,minWidth:F,onClick:Y,onDisabledClick:M,showTooltipInfo:L=!1,tooltipInfoText:P=null,tooltipDescription:G=null,tooltipOnly:U=!1,iconSize:z="medium",iconColor:q,shape:$="rounded",color:V,className:H,...T}=e,D=typeof a=="string"&&isNaN(Number(a))?a.toLowerCase():String(Number(a)||48),R=D.match(/^\d+$/)?`button${D}`:`button-${D}`,I=Number(a),W=!isNaN(I)&&I<40?"button-2":"button-1",ee=m??y,oe=_||!!T.disabled,ce=oe?S?"disabled-covered":E?"disabled-invisibled":"disabled":g,J=ce?`button--variant-${ce}`:"",re=h?`button--align-${h}`:"",Ne=x?"button--nowrap":"",K=$?`button--shape-${$}`:"",Q=typeof q=="string"&&q.startsWith("--")?`var(${q})`:q,pe={...O?{width:typeof O=="number"?`${O}px`:O}:{},...F?{minWidth:typeof F=="number"?`${F}px`:F}:{},...k?{}:{"--button-border":oe?"0":"1px solid transparent"},...Q?{"--button-icon-color":Q}:{},...V?{"--color-main":V}:{}},De=A===!1?"":ee,ye=Array.isArray(De)?De.length>0:!!De,ne=!!d,le=r??(ye||c||ne?"bar":"dot"),Ce=`${R}--${le}`,ge=o.useRef(null);o.useEffect(()=>{!ea||i!==void 0||ge.current?.closest("form")&&Zt(`button-in-form:${typeof ee=="string"?ee:""}`,'[ihab/Button] <form> \uC548\uC778\uB370 htmlType \uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 \uC774 \uB2E8\uCD94\uB294 type="button" \uC774\uB77C \uD3FC\uC744 \uBCF4\uB0B4\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4. \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uBA74 htmlType="submit" \uC744 \uC8FC\uC138\uC694. \uD3FC\uC5D0 \uBCF4\uB0B4\uB294 \uB2E8\uCD94\uAC00 \uD558\uB098\uB3C4 \uC5C6\uC73C\uBA74 **Enter \uB85C\uB3C4 \uC548 \uBCF4\uB0B4\uC9D1\uB2C8\uB2E4**(\uCE78\uC774 \uB458 \uC774\uC0C1\uC77C \uB54C).'+(typeof ee=="string"&&ee?` \uB2E8\uCD94: ${ee}`:""))},[i,ee]);const fe=o.useRef(t);fe.current=t;const $e=o.useCallback(Re=>{ge.current=Re;const tt=fe.current;typeof tt=="function"?tt(Re):tt&&(tt.current=Re)},[]),Ve=o.useRef(oe),[je,Fe]=o.useState(!!f),[qe,mt]=o.useState(!1),[ct,rt]=o.useState(null),Ct=o.useCallback(()=>mt(!1),[]),[Be,We]=o.useState(!1),_e=o.useId();o.useEffect(()=>{typeof f=="boolean"&&Fe(f)},[f]),o.useEffect(()=>{if(Ve.current&&!oe&&ge.current){const Re=ge.current;let tt=!1;try{tt=Re.matches(":focus:not(:focus-visible)")}catch{tt=!1}tt&&Re.blur(),Re.style.pointerEvents="none";const xt=requestAnimationFrame(()=>{requestAnimationFrame(()=>{ge.current&&(ge.current.style.pointerEvents="")})});return()=>cancelAnimationFrame(xt)}Ve.current=oe},[oe]);const Ue=typeof f=="boolean"?!!f:je,Ae=typeof b=="boolean"?void 0:w||typeof f=="boolean"?Ue?"true":"false":T["aria-pressed"],Te=we("button",R,Ce,J,re,Ne,K,Ue?"is-selected":null,N?null:"button--no-bg",U?"button--tooltip-only":null,H),Se=`button__icon button__icon--${z}`,Xe=Array.isArray(C)?C:C!==void 0?[C]:[],Qe=()=>{if(Array.isArray(De))return De.map((tt,xt)=>{const Mt=Xe[xt];return n.jsxs("span",{className:`button__label-text${Mt!==void 0?" button__label-text--has-sub":""}`,children:[tt,Mt!==void 0&&n.jsx("span",{className:"button__sub-label-text caption-1",children:Mt})]},xt)});const Re=C!==void 0;return n.jsxs("span",{className:`button__label-text${Re?" button__label-text--has-sub":""}`,children:[De,p!=null&&n.jsx("span",{className:"button__count",children:p}),Re&&n.jsx("span",{className:"button__sub-label-text caption-1",children:C})]})},dt=Re=>{typeof f!="boolean"&&!w&&Fe(!1),Re.currentTarget.blur()},ht=Re=>{oe||(typeof T.onMouseLeave=="function"&&T.onMouseLeave(Re),dt(Re))},wt=Re=>{if(U&>&&it.touchPress(Re.currentTarget),oe){gt&&it.touchPress(Re.currentTarget),Re.preventDefault(),M?.(Re);return}typeof f!="boolean"&&w&&Fe(tt=>!tt),Y?.(Re)},ft=o.useCallback(()=>{(L||G)&&(mt(!0),rt(ge.current?.getBoundingClientRect()??null))},[L,G]),Nt=o.useCallback(()=>{(L||G)&&(mt(!1),rt(null))},[L,G]),gt=!!(L||G),it=oo(qe,Re=>{Re?ft():Nt()},ge,{enabled:gt&&(oe||U),fallbackOnParent:gt&&oe}),Ke={...T};delete Ke.disabled,delete Ke.className,delete Ke.faded,delete Ke.useFaded,delete Ke.loading,delete Ke.onMouseLeave,delete Ke.onPointerEnter,delete Ke.onPointerLeave,delete Ke.onPointerUp,delete Ke.onFocus,delete Ke.onBlur,oe&&(Object.keys(Ke).forEach(Re=>{/^on[A-Z]/.test(Re)&&typeof Ke[Re]=="function"&&delete Ke[Re]}),Ke["aria-disabled"]="true");const se=(typeof L=="string"?L:null)??(typeof P=="string"?P:null)??(typeof v=="string"?v:null)??(typeof ee=="string"?ee:null)??void 0,ke=typeof v=="string"?v:typeof ee=="string"?ee:se,ze=G?[G.title,...G.items??[]].filter(Boolean).join(". "):L&&se&&se!==ke?se:"",nt=[typeof T["aria-describedby"]=="string"?T["aria-describedby"]:void 0,ze?_e:null].filter(Boolean).join(" ")||void 0,Ie=(Re,tt)=>n.jsx(at,{icon:Re,label:tt??ke,className:Se,imgClassName:"button__icon-img",maskClassName:"button__icon-mask",svgClassName:"button__icon-svg"}),Ge=()=>le==="dot"?n.jsxs(n.Fragment,{children:[Ie(c),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()})]}):h==="center"&&c?n.jsxs(n.Fragment,{children:[n.jsxs("span",{className:"button__center-group",children:[n.jsx("span",{className:"button__left",children:Ie(c)}),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()})]}),ne&&n.jsx("span",{className:"button__right",children:Ie(d)})]}):n.jsxs(n.Fragment,{children:[c&&n.jsx("span",{className:"button__left",children:Ie(c,v??ee)}),ye&&n.jsx("span",{className:`button__label ${W}`,children:Qe()}),ne&&n.jsx("span",{className:"button__right",children:Ie(d)})]}),bt=!!s&&!oe;return n.jsxs(n.Fragment,{children:[n.jsxs(bt?"a":"button",{...Ke,ref:$e,...bt?{href:s,target:l,rel:u??(l==="_blank"?"noreferrer":void 0)}:{type:i??"button",disabled:oe&&!M&&!Be},className:Te,"aria-pressed":Ae,"aria-expanded":typeof b=="boolean"?b:T["aria-expanded"],"aria-controls":B??T["aria-controls"],"aria-label":ke,"aria-disabled":oe&&(bt||M||Be)?!0:void 0,"aria-describedby":nt,style:pe,onClick:wt,onMouseLeave:ht,onPointerEnter:Re=>{ia(Re)||ft(),!oe&&typeof T.onPointerEnter=="function"&&T.onPointerEnter(Re)},onPointerLeave:Re=>{ia(Re)||Nt(),!oe&&typeof T.onPointerLeave=="function"&&T.onPointerLeave(Re)},onPointerUp:Re=>{oe&>&&it.touchPress(Re.currentTarget),!oe&&typeof T.onPointerUp=="function"&&T.onPointerUp(Re)},onFocus:Re=>{We(!0),la()||ft(),!oe&&typeof T.onFocus=="function"&&T.onFocus(Re)},onBlur:Re=>{We(!1),oe||dt(Re),Nt(),!oe&&typeof T.onBlur=="function"&&T.onBlur(Re)},children:[Ge(),ze?n.jsx("span",{id:_e,hidden:!0,"aria-label":ze}):null]}),qe&&G?n.jsx(Gn,{anchorRect:ct,title:G.title,items:G.items,onClose:Ct}):qe&&se?n.jsx(An,{anchorRect:ct,text:se,onClose:Ct}):null]})}const me=o.forwardRef(yb);me.displayName="Button";function Bt(e,t,a){const r=o.useRef(null);return o.useLayoutEffect(()=>{const i=r.current?.parentElement??null;return t(i,e),()=>a(i)},[e,t,a]),r}const Na={title:"--promo-banner-bg-title",description:"--promo-banner-bg-description"},so=new WeakMap;function io(e){if(e)return so.get(e)}function Ut(e,t){e&&(e.style.setProperty(Na.title,t.title),e.style.setProperty(Na.description,t.description),so.set(e,t))}function Gt(e){e&&(e.style.removeProperty(Na.title),e.style.removeProperty(Na.description),so.delete(e))}const Ii={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"default"};function Oi(){const e=Bt(Ii,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-main","aria-hidden":"true"})}const Hi={title:"var(--color-main)",description:"var(--color-gray)",actionVariant:"main"};function zi(){const e=Bt(Hi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft","aria-hidden":"true"})}const Vi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Wi(){const e=Bt(Vi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-sub","aria-hidden":"true"})}const qi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function Ui(){const e=Bt(qi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-deep","aria-hidden":"true"})}const Gi={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function Ki(){const e=Bt(Gi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-soft-sub","aria-hidden":"true"})}const Yi={title:"var(--color-black)",description:"var(--color-darkGray)",actionVariant:"main"};function Zi(){const e=Bt(Yi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-warm","aria-hidden":"true"})}const Xi={title:"var(--color-white)",description:"var(--color-lightGray)",actionVariant:"main"};function Ji(){const e=Bt(Xi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dark","aria-hidden":"true"})}const Qi={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function el(){const e=Bt(Qi,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-radial","aria-hidden":"true"})}const tl={title:"var(--color-darkMain)",description:"var(--color-gray)",actionVariant:"main"};function nl(){const e=Bt(tl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-diagonal","aria-hidden":"true"})}const al={title:"var(--color-darkSub)",description:"var(--color-gray)",actionVariant:"main"};function rl(){const e=Bt(al,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-dots","aria-hidden":"true"})}const ol={title:"var(--color-black)",description:"var(--color-gray)",actionVariant:"main"};function sl(){const e=Bt(ol,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-outline","aria-hidden":"true",children:n.jsx("span",{className:"promo-banner-bg-outline__dot"})})}const il={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"main"};function ll(){const e=Bt(il,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-success","aria-hidden":"true"})}const ul={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"sub"};function cl(){const e=Bt(ul,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-naver","aria-hidden":"true"})}const dl={title:"#ffffff",description:"rgba(255, 255, 255, 0.85)",actionVariant:"transparent-white"};function pl(){const e=Bt(dl,Ut,Gt);return n.jsx("div",{ref:e,className:"promo-banner-bg promo-banner-bg-instagram","aria-hidden":"true"})}const Qt=(e,t,a)=>({key:e,get label(){return $t.t(`promoBannerBg.${e}`,t)},textTone:a}),vb=[Qt("main","\uBA54\uC778 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("soft","\uC18C\uD504\uD2B8","dark"),Qt("sub","\uC11C\uBE0C \uCEEC\uB7EC","light"),Qt("deep","\uB525 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("softSub","\uC18C\uD504\uD2B8 \uC11C\uBE0C","dark"),Qt("warm","\uC6DC(\uAC15\uC870)","dark"),Qt("dark","\uB2E4\uD06C","light"),Qt("radial","\uBC29\uC0AC\uD615 \uADF8\uB77C\uB514\uC5B8\uD2B8","light"),Qt("diagonal","\uB300\uAC01\uC120 \uD328\uD134","dark"),Qt("dots","\uB3C4\uD2B8 \uD328\uD134","dark"),Qt("outline","\uC544\uC6C3\uB77C\uC778","dark"),Qt("success","\uC131\uACF5/\uC644\uB8CC","light"),Qt("naver","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8 \uC548\uB0B4","light"),Qt("instagram","\uC778\uC2A4\uD0C0\uADF8\uB7A8 \uC548\uB0B4","light")],ml={main:Oi,soft:zi,sub:Wi,deep:Ui,softSub:Ki,warm:Zi,dark:Ji,radial:el,diagonal:nl,dots:rl,outline:sl,success:ll,naver:cl,instagram:pl};function hl({storageKey:e="fontScale",baseFont:t=20,minScale:a=.8,maxScale:r=1.4,step:i=.1,lineHeightRatio:s=1.4}={}){const l=w=>Math.max(a,Math.min(r,Number(w))),u=w=>{try{const b=localStorage.getItem(w),B=b?Number(b):1;return Number.isFinite(B)?l(B):l(1)}catch{return l(1)}},[c,d]=o.useState(()=>u(e)),[m,p]=o.useState(e);m!==e&&(p(e),d(u(e))),o.useEffect(()=>{try{localStorage.setItem(e,String(c))}catch{}},[e,c]);const C=w=>{d(typeof w=="function"?b=>l(w(b)):l(w))},y=()=>C(w=>+(w+i).toFixed(6)),v=()=>C(w=>+(w-i).toFixed(6)),g=c<r-Number.EPSILON,h=c>a+Number.EPSILON,x=Math.round(t*c),f=Math.round(x*s);return{scale:c,setScale:C,increase:y,decrease:v,canIncrease:g,canDecrease:h,fontSize:x,lineHeight:f}}function Cl(e,t){const a=ka(t);o.useEffect(()=>{const r=()=>a.current();try{window.addEventListener(e,r)}catch{}return()=>{try{window.removeEventListener(e,r)}catch{}}},[e,a])}const lo=" \xB7 ",fl=(()=>{if(typeof document>"u")return"";const e=document.title;return e.includes(lo)?e.split(lo).pop()??e:e})(),xb=o.createContext(!1),Kn=[];let gl=null;function _b(e){const t=o.useContext(xb);o.useEffect(()=>{if(t||typeof e!="string"||!e)return;Kn.length===0&&(gl=document.title);const a={text:fl?`${e}${lo}${fl}`:e};return Kn.push(a),document.title=a.text,()=>{const r=Kn.lastIndexOf(a);r>=0&&Kn.splice(r,1),document.title=Kn.length?Kn[Kn.length-1].text:gl??document.title}},[e,t])}const bl=[{value:"10",label:"10\uAC1C\uC529 \uBCF4\uAE30"},{value:"25",label:"25\uAC1C\uC529 \uBCF4\uAE30"},{value:"50",label:"50\uAC1C\uC529 \uBCF4\uAE30"},{value:"100",label:"100\uAC1C\uC529 \uBCF4\uAE30"}],wb=(()=>{let e=null;return()=>(e||(e=new Intl.Collator("ko")),e)})();function an(e,t){return wb().compare(e,t)}const er=new Map;function Ab(e){const t=er.get(e);if(t)return t;const a=[],r=/-?\d+(?:\.\d+)?/g;let i=0;for(let s=r.exec(e);s;s=r.exec(e)){let l=s.index,u=s[0];u[0]==="-"&&l>0&&!/\s/.test(e[l-1])&&(l+=1,u=u.slice(1)),l>i&&a.push(e.slice(i,l)),a.push(Number(u)),i=s.index+s[0].length}return i<e.length&&a.push(e.slice(i)),er.size>5e3&&er.clear(),er.set(e,a),a}function Bb(e){if(!/^[\d\s-]+$/.test(e))return null;const t=e.replace(/\D/g,"");return t.length<9||t.length>11?null:t[0]==="0"||t[0]==="1"&&e!==t?t:null}function kb(e,t){const a=d=>d==null||typeof d=="number"&&Number.isNaN(d)?"":String(d).trim(),r=a(e),i=a(t);if(r===i)return 0;const s=(d,m)=>{if(typeof d=="number"&&!Number.isNaN(d))return[d];const p=Bb(m);return p!==null?[p]:Ab(m)},l=s(e,r),u=s(t,i),c=Math.min(l.length,u.length);for(let d=0;d<c;d++){const m=l[d],p=u[d];if(typeof m=="number"&&typeof p=="number"){if(m!==p)return m-p;continue}if(typeof m=="number")return-1;if(typeof p=="number")return 1;const C=an(m,p);if(C!==0)return C}return l.length!==u.length?l.length-u.length:an(r,i)}const yl=e=>e==null||typeof e=="number"&&Number.isNaN(e)||typeof e=="string"&&e.trim()==="";function uo(e,t,a){const r=yl(e),i=yl(t);if(r||i)return r===i?0:r?1:-1;const s=kb(e,t);return a?s:-s}function Nb(e,t,a){const{t:r}=xe.useTranslation(),[i,s]=o.useState(()=>{const v=a?.initialPageSize;return v&&bl.some(g=>g.value===v)?v:"25"}),[l,u]=o.useState(1),[c,d]=o.useState(t);Object.is(c,t)||(d(t),l!==1&&u(1));const m=o.useMemo(()=>bl.map(v=>({...v,label:r("visits.showN",{n:v.value})})),[r]),p=o.useCallback(v=>{s(v),u(1)},[]),C=Math.max(1,Math.ceil(e.length/Number(i)));(l>C||l<1||!Number.isFinite(l))&&u(Math.min(Math.max(1,Number.isFinite(l)?l:1),C));const y=Math.min(Math.max(1,Number.isFinite(l)?l:1),C);return{pageRows:o.useMemo(()=>e.slice((y-1)*Number(i),y*Number(i)),[e,y,i]),pageSizeProps:{options:m,value:i,onChange:p},paginationProps:{page:y,total:C,onChange:u},setPage:u}}function Eb(e){const[t,a]=o.useState(null),r=o.useRef(t),i=o.useRef(e?.onSortChange);i.current=e?.onSortChange;const s=o.useCallback(c=>{const d=r.current,m=d?.key===c?{key:c,asc:!d.asc}:{key:c,asc:!0};r.current=m,a(m),i.current?.(m)},[]),l=o.useCallback((c,d)=>({label:c,sortDir:t?.key===d?t.asc?"asc":"desc":null,onClick:()=>s(d)}),[t,s]),u=o.useCallback((c,d)=>{if(!t)return c;const{key:m,asc:p}=t;return[...c].sort((C,y)=>uo(d(C,m),d(y,m),p))},[t]);return{sort:t,field:l,sortRows:u}}const dn="\uC804\uCCB4";Object.fromEntries(Object.entries($C).map(([e,{nucleus:t}])=>[e,t]));const Db={labial:e=>e("common.phonetics.place.labial",{defaultValue:"\uC591\uC21C\uC74C"}),alveolar:e=>e("common.phonetics.place.alveolar",{defaultValue:"\uCE58\uC870\uC74C"}),palatal:e=>e("common.phonetics.place.palatal",{defaultValue:"\uACBD\uAD6C\uAC1C\uC74C"}),velar:e=>e("common.phonetics.place.velar",{defaultValue:"\uC5F0\uAD6C\uAC1C\uC74C"}),glottal:e=>e("common.phonetics.place.glottal",{defaultValue:"\uC131\uBB38\uC74C"})},Sb={frontHigh:e=>e("common.phonetics.vowel.frontHigh",{defaultValue:"\uC804\uC124 \uACE0\uBAA8\uC74C"}),backHighUnrounded:e=>e("common.phonetics.vowel.backHighUnrounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uD3C9\uC21C"}),backHighRounded:e=>e("common.phonetics.vowel.backHighRounded",{defaultValue:"\uD6C4\uC124 \uACE0\uBAA8\uC74C \uC6D0\uC21C"}),frontMid:e=>e("common.phonetics.vowel.frontMid",{defaultValue:"\uC804\uC124 \uC911\uBAA8\uC74C"}),backMidUnrounded:e=>e("common.phonetics.vowel.backMidUnrounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uD3C9\uC21C"}),backMidRounded:e=>e("common.phonetics.vowel.backMidRounded",{defaultValue:"\uD6C4\uC124 \uC911\uBAA8\uC74C \uC6D0\uC21C"}),low:e=>e("common.phonetics.vowel.low",{defaultValue:"\uC800\uBAA8\uC74C"})},jb={j:e=>e("common.phonetics.glide.j",{defaultValue:"j\uD65C\uC74C"}),w:e=>e("common.phonetics.glide.w",{defaultValue:"w\uD65C\uC74C"}),velar:e=>e("common.phonetics.glide.velar",{defaultValue:"\u0270\uD65C\uC74C"})};function Tb(e,t){if("place"in t)return Db[t.place](e);const a=Sb[t.vowel](e);return t.glide?`${a} \xB7 ${jb[t.glide](e)}`:a}const Mb=(e,{defaultValue:t})=>t,vl=(e,t)=>({jamos:e,phonetic:t,tooltip:Tb(Mb,t)}),Bn=(e,t)=>t.map(a=>vl([a],{place:e})),Rt=(e,t,a)=>vl([...e],a?{vowel:t,glide:a}:{vowel:t}),co={cho:[Bn("labial",["\u3142","\u3143","\u314D","\u3141"]),Bn("alveolar",["\u3137","\u3138","\u314C","\u3134","\u3139"]),Bn("alveolar",["\u3145","\u3146"]),Bn("palatal",["\u3148","\u3149","\u314A"]),Bn("velar",["\u3131","\u3132","\u314B"]),Bn("glottal",["\u314E"])],jung:[[Rt("\u3163","frontHigh"),Rt("\u315F","frontHigh","w"),Rt("\u3162","frontHigh","velar")],[Rt("\u3161","backHighUnrounded")],[Rt("\u315C","backHighRounded"),Rt("\u3160","backHighRounded","j")],[Rt("\u3154\u3150","frontMid"),Rt("\u3156\u3152","frontMid","j"),Rt("\u3159\u315A\u315E","frontMid","w")],[Rt("\u3153","backMidUnrounded"),Rt("\u3155","backMidUnrounded","j"),Rt("\u315D","backMidUnrounded","w")],[Rt("\u3157","backMidRounded"),Rt("\u315B","backMidRounded","j")],[Rt("\u314F","low"),Rt("\u3151","low","j"),Rt("\u3158","low","w")]],jong:[Bn("labial",["\u3142","\u3141"]),Bn("alveolar",["\u3137","\u3134","\u3139"]),Bn("velar",["\u3131","\u3147"])]},Lb=e=>e===$b?[]:Array.from(e),$b="__NO_CODA__",po=e=>e.map(t=>t.map(({jamos:a,phonetic:r,tooltip:i})=>({v:a.join(""),phonetic:r,tooltip:i}))),xl={cho:po(co.cho),jung:po(co.jung),jong:po(co.jong)};xl.jung.flat().forEach(({v:e})=>{for(const t of Lb(e));}),new Set(xl.cho.flat().map(e=>e.v));function Rb(e,t=!0){const a=ka(e);o.useEffect(()=>{if(t)return Un(()=>{a.current?.()})},[t,a])}function Ea(){const[e,t]=o.useState(null),a=o.useCallback(s=>t(s.getBoundingClientRect()),[]),r=o.useCallback(()=>t(null),[]),i=o.useCallback(s=>{const l=s.getBoundingClientRect();t(u=>u?null:l)},[]);return{anchorRect:e,isOpen:e!=null,openAt:a,close:r,toggleAt:i}}function Pb(e){const[t,a]=o.useState(null),[r,i]=o.useState(null),s=o.useRef(null);o.useEffect(()=>()=>{s.current&&clearTimeout(s.current)},[]);const l=o.useCallback((c,d)=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{a(c),i(d)},e)},[e]),u=o.useCallback(()=>{s.current&&clearTimeout(s.current),a(null),i(null)},[]);return{payload:t,anchorRect:r,openAfterDelay:l,close:u}}function _l(e="warning"){const[t,a]=o.useState(""),[r,i]=o.useState(e),[s,l]=o.useState(0),u=o.useCallback((p,C)=>{i(C),a(p),l(y=>y+1)},[]),c=o.useCallback(p=>u(p,"warning"),[u]),d=o.useCallback(p=>u(p,"normal"),[u]),m=o.useCallback(()=>a(""),[]);return{toastMessage:t,toastType:r,toastKey:s,showToast:u,showWarning:c,showNormal:d,clearToast:m}}function Da(e){let t=0;if(e&&typeof window<"u"&&typeof window.getComputedStyle=="function")for(let a=e;a&&a!==document.body&&a!==document.documentElement;a=a.parentElement){const r=parseInt(window.getComputedStyle(a).zIndex,10);!Number.isNaN(r)&&r>t&&(t=r)}return t>0?`max(var(--z-menu, 1500), ${t+1})`:"var(--z-menu, 1500)"}function Sa({computeStyle:e,onScroll:t="close",onResize:a="close",ignoreOutsideClickSelector:r}){const[i,s]=o.useState(!1),[l,u]=o.useState({position:"fixed"}),c=o.useRef(null),d=o.useRef(null),m=o.useCallback(()=>{c.current&&u(e(c.current.getBoundingClientRect(),c.current))},[e]);o.useLayoutEffect(()=>{i&&m()},[i,m]),o.useEffect(()=>{if(!i)return;let y=d.current?.offsetHeight??0;y>0&&m();let v=0,g=null;typeof ResizeObserver<"u"&&d.current&&(g=new ResizeObserver(()=>{const A=d.current?.offsetHeight??0;if(A!==y){if(y=A,++v>4){g?.disconnect(),g=null;return}m()}}),g.observe(d.current));const h=A=>{const k=A.target;r&&k.closest?.(r)||c.current?.contains(k)||d.current?.contains(k)||s(!1)};document.addEventListener("mousedown",h),document.addEventListener("pointerdown",h);let x=null;const f=()=>{if(typeof requestAnimationFrame>"u"){m();return}x===null&&(x=requestAnimationFrame(()=>{x=null,m()}))},w=A=>{d.current?.contains(A.target)||(t==="reposition"?f():t==="close"&&s(!1))};t!=="ignore"&&window.addEventListener("scroll",w,!0);const b=()=>{a==="reposition"?f():a==="close"&&s(!1)};let B=null;const _=()=>{b(),B&&clearTimeout(B),B=setTimeout(()=>{B=null,a==="reposition"&&m()},250)};return a!=="ignore"&&(window.addEventListener("resize",b),window.addEventListener("orientationchange",_)),()=>{x!==null&&cancelAnimationFrame(x),g?.disconnect(),document.removeEventListener("mousedown",h),document.removeEventListener("pointerdown",h),t!=="ignore"&&window.removeEventListener("scroll",w,!0),a!=="ignore"&&(window.removeEventListener("resize",b),window.removeEventListener("orientationchange",_)),B&&clearTimeout(B)}},[i,m,t,a,r]),o.useEffect(()=>{if(i)return Un(()=>s(!1))},[i]);const p=o.useCallback(()=>s(y=>!y),[]),C=o.useCallback(()=>s(!1),[]);return{open:i,setOpen:s,toggle:p,close:C,style:l,triggerRef:c,menuRef:d}}function Fb(e,{mode:t="playback",autoStart:a=!1,onPlaySpeaker:r,onComplete:i,playMs:s=1100,feedbackMs:l=1500}={}){const[u,c]=o.useState([]),[d,m]=o.useState(0),[p,C]=o.useState("idle"),[y,v]=o.useState(null),[g,h]=o.useState([]),[x,f]=o.useState(null),[w,b]=o.useState(0),B=o.useRef(0),_=o.useCallback($=>{B.current=typeof $=="function"?$(B.current):$,b(B.current)},[]),A=o.useRef(r),k=o.useRef(i);o.useEffect(()=>{A.current=r,k.current=i},[r,i]);const N=o.useRef([]),S=()=>{N.current.forEach(clearTimeout),N.current=[]},E=($,V)=>{N.current.push(setTimeout(V,$))};o.useEffect(()=>()=>S(),[]);const O=u[d]?.id??null,F=o.useRef(null),Y=o.useCallback(()=>{S(),C("playing"),h([]),f(null),_(0);let $=0;e.forEach((V,H)=>{E($,()=>{m(H),v(V.id),A.current?.(V)}),E($+1e3,()=>{v(null),h(T=>[...T,V.id])}),$+=1300}),E($,()=>{C("done"),k.current?.({score:0,total:e.length})})},[e,_]),M=o.useCallback(($,V)=>{if(V>=$.length){C("done"),k.current?.({score:B.current,total:$.length});return}F.current=null,m(V),f(null),C("playing"),v($[V].id),A.current?.($[V]),E(s,()=>{v(null),C("waiting")})},[s]),L=o.useCallback(()=>{S();const $=Aa(e);c($),_(0),h([]),M($,0)},[e,M,_]),P=o.useCallback(()=>{t==="playback"?(c(e),Y()):L()},[t,e,Y,L]),G=o.useCallback(()=>{S(),C("idle"),v(null),h([]),f(null),m(0),_(0),c([])},[_]),U=e.map($=>$.id).join("|");o.useEffect(()=>(a?P():G(),()=>S()),[t,U,a]);const z=o.useCallback($=>{p!=="waiting"||t==="playback"||F.current===d||(F.current=d,f($),$===u[d]?.id&&_(V=>V+1),t==="exam"?(C("playing"),E(400,()=>M(u,d+1))):(C("feedback"),E(l,()=>M(u,d+1))))},[p,t,u,d,M,l,_]),q=t==="playback"?e.length:u.length;return{bind:{activeSpeakerId:y,playedIds:g,selectedId:x,answerId:O,showFeedback:p==="feedback",clickable:p==="waiting",onSelectSpeaker:z},index:d,total:q,score:w,phase:p,done:p==="done",start:P,reset:G}}function Ib({title:e,description:t,actionLabel:a,onAction:r,bg:i,color:s,size:l="medium",actionVariant:u,titleColor:c,descriptionColor:d,className:m=""}){const p=i??s??"main",C=o.useRef(null),[y,v]=o.useState("main"),g=ln("(max-width: 767px)"),h=o.useRef({title:!1,description:!1});o.useLayoutEffect(()=>{const w=C.current;if(!w)return;const b=io(w),B=(_,A,k)=>{if(k!==void 0)w.style.setProperty(A,k),h.current[_]=!0;else if(h.current[_]){const N=b?.[_];N?w.style.setProperty(A,N):w.style.removeProperty(A),h.current[_]=!1}};B("title","--promo-banner-bg-title",c),B("description","--promo-banner-bg-description",d)},[c,d,p]),o.useLayoutEffect(()=>{const w=C.current;if(!w)return;const b=io(w);v(b?.actionVariant??"main")},[p]);const x=we("promo-banner",`promo-banner--${l}`,m),f=ml[p];return n.jsxs("div",{ref:C,className:x,role:"note",children:[n.jsx(f,{}),n.jsxs("div",{className:"promo-banner__text",children:[n.jsx("span",{className:`promo-banner__title ${l==="small"?"body-2":"h2"}`,children:e}),t&&n.jsx("span",{className:"promo-banner__description body-3",children:t})]}),a&&r&&n.jsx(me,{htmlType:"button",size:40,variant:u??y,shape:"pill",useBorder:!0,onClick:r,ariaLabel:a,...g?{type:"dot",icon:"arrow-right"}:{rightIcon:"arrow-right",label:a,minWidth:140}})]})}function Ob({children:e,interval:t=5e3,dotTone:a,className:r="","aria-label":i}){const{t:s}=xe.useTranslation(),l=i??s("topBanner.ariaLabel","\uBC30\uB108"),u=o.Children.toArray(e),c=u.length,[d,m]=o.useState(0),[p,C]=o.useState(!1),[y,v]=o.useState(!1),[g,h]=o.useState(!1),x=o.useRef(null),f=o.useRef(null),w=o.useRef(null),b=ao(),B=p||y||g,_=c>0?Math.min(d,c-1):0;o.useEffect(()=>{if(c<2||t<=0||B||b)return;const k=window.setInterval(()=>m(N=>(Math.min(N,c-1)+1)%c),t);return()=>window.clearInterval(k)},[c,t,B,b]);const A=k=>{f.current!=null&&window.clearTimeout(f.current),f.current=window.setTimeout(()=>{f.current=null,h(!1)},k)};return o.useEffect(()=>()=>{f.current!=null&&window.clearTimeout(f.current)},[]),o.useEffect(()=>{if(!g)return;const k=N=>{N.pointerType==="touch"&&(w.current&&w.current.contains(N.target)||(f.current!=null&&(window.clearTimeout(f.current),f.current=null),h(!1)))};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[g]),c===0?null:n.jsxs("section",{ref:w,className:we("top-banner",r),"aria-label":l,"aria-roledescription":"carousel",onPointerEnter:k=>{x.current=k.pointerType},onPointerDown:k=>{x.current=k.pointerType,k.pointerType==="touch"&&(f.current!=null&&(window.clearTimeout(f.current),f.current=null),h(!0))},onPointerUp:k=>{k.pointerType==="touch"&&A(5e3)},onPointerCancel:k=>{k.pointerType==="touch"&&A(5e3)},onMouseEnter:()=>{x.current!=="touch"&&C(!0)},onMouseLeave:()=>C(!1),onFocus:k=>{let N=!0;try{N=k.target.matches(":focus-visible")}catch{N=!0}v(N)},onBlur:k=>{k.currentTarget.contains(k.relatedTarget)||v(!1)},children:[n.jsx("div",{className:"top-banner__viewport",children:n.jsx("div",{className:"top-banner__track",style:{transform:`translateX(-${_*100}%)`},children:u.map((k,N)=>n.jsx("div",{className:"top-banner__slide","aria-hidden":N!==_,...N!==_?{inert:!0}:{},children:k},N))})}),c>1&&n.jsx("div",{className:`top-banner__dots${(a?.[_]??"light")==="dark"?" top-banner__dots--dark":""}`,children:u.map((k,N)=>n.jsx("button",{type:"button",className:`top-banner__dot${N===_?" top-banner__dot--active":""}`,"aria-label":s("topBanner.dotAriaLabel",{count:c,index:N+1,defaultValue:`${c}\uAC1C \uC911 ${N+1}\uBC88\uC9F8 \uBC30\uB108`}),"aria-current":N===_,onClick:()=>m(N)},N))})]})}function Hb({title:e,body:t,open:a=!1,onToggle:r,avatar:i,titleClassName:s="body-2",bodyClassName:l="body-2",className:u=""}){const{t:c}=xe.useTranslation();return n.jsxs("div",{className:`accordion-item ${a?"accordion-item--open":""} ${u}`.trim(),role:"listitem",children:[n.jsxs("div",{className:"accordion-item__header",role:"button",tabIndex:0,"aria-expanded":a,"data-accordion-header":!0,onClick:r,onKeyDown:d=>{if(d.key==="Enter"||d.key===" ")d.preventDefault(),r?.();else if(d.key==="ArrowDown"||d.key==="ArrowUp"){d.preventDefault();const m=d.currentTarget.closest('[role="list"]');if(!m)return;const p=Array.from(m.querySelectorAll("[data-accordion-header]")),C=p.indexOf(d.currentTarget);(d.key==="ArrowDown"?p[C+1]:p[C-1])?.focus()}},children:[i&&n.jsx("div",{className:"accordion-item__avatar",children:i}),n.jsx("div",{className:`accordion-item__title ${s}`,children:e}),n.jsx("div",{className:"accordion-item__chevron",children:n.jsx(at,{icon:a?"chevron-up":"chevron-down",label:a?c("accordion.collapse","\uC811\uAE30"):c("accordion.expand","\uD3BC\uCE58\uAE30"),className:"accordion-item__chevron-icon",imgClassName:"accordion-item__chevron-image"})})]}),a&&n.jsx("div",{className:`accordion-item__body ${l}`,children:typeof t=="string"?n.jsx("p",{children:t}):t})]})}function zb({items:e=[],defaultOpenIndex:t=0,size:a=72,className:r="",bodyClassName:i}){const[s,l]=o.useState({index:t}),u=(c,d)=>s.id!=null&&c.id!=null?c.id===s.id:s.id==null&&d===s.index;return n.jsx("div",{className:`accordion-group accordion-group--s${a} ${r}`.trim(),role:"list",children:e.map((c,d)=>n.jsx(Hb,{title:c.title,body:c.body,avatar:c.avatar,open:u(c,d),onToggle:()=>l(u(c,d)?{index:-1}:{index:d,id:c.id}),bodyClassName:i},c.id??d))})}function Vb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:n.jsx("polyline",{points:"2,6 5,9 10,3"})})}function Wb(){return n.jsxs("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:[n.jsx("line",{x1:"3",y1:"3",x2:"9",y2:"9"}),n.jsx("line",{x1:"9",y1:"3",x2:"3",y2:"9"})]})}function qb(){return n.jsx("svg",{viewBox:"0 0 12 12",fill:"none",stroke:"currentColor",strokeWidth:2.2,strokeLinecap:"round","aria-hidden":"true",children:n.jsx("line",{x1:"2.5",y1:"6",x2:"9.5",y2:"6"})})}function kt(e){const{t}=xe.useTranslation(),{type:a="bar",size:r,className:i="","aria-label":s,"aria-hidden":l}=e;if(a==="dot"){const{icon:B,number:_,position:A="top-right",onClick:k,animate:N=!1}=e,S=B??"check",E=_!==void 0?"number":S,O=typeof r=="number"?r:32,F=we("circle-badge",`circle-badge--${E}`,`circle-badge--${A}`,`circle-badge--${O}`,N?"circle-badge--animate":"",k?"circle-badge--clickable":"",i),Y=_!==void 0?t("badge.nthSelected",{n:_,defaultValue:"{{n}}\uBC88\uC9F8 \uC120\uD0DD"}):{check:t("badge.selected","\uC120\uD0DD\uB428"),remove:t("badge.remove","\uC81C\uAC70"),minus:t("badge.exclude","\uC81C\uC678")}[S];return n.jsxs("span",{className:F,onClick:k,onKeyDown:k?M=>{M.key!=="Enter"&&M.key!==" "||(M.preventDefault(),M.currentTarget.click())}:void 0,"aria-label":l?void 0:s??Y,"aria-hidden":l||void 0,role:k?"button":l?void 0:"img",tabIndex:k?0:void 0,children:[_!==void 0&&_,_===void 0&&S==="check"&&n.jsx(Vb,{}),_===void 0&&S==="remove"&&n.jsx(Wb,{}),_===void 0&&S==="minus"&&n.jsx(qb,{})]})}const{label:u,children:c,variant:d="default",fill:m="filled",minWidth:p,iconLeft:C,iconRight:y,color:v}=e,g=typeof r=="number"?"medium":r??"medium",h={small:"caption-2b",medium:"body-3b",large:"body-2b"}[g]??"body-2b",x={small:12,medium:14,large:16}[g]??14,f=we("badge",`badge--${d}`,`badge--${g}`,m!=="filled"?`badge--${m}`:"",h,i),w=v?.startsWith("--")?`var(${v})`:v,b=p!==void 0||w?{...p!==void 0?{minWidth:typeof p=="number"?`${p}px`:p}:{},...w?{"--badge-color":w}:{}}:void 0;return n.jsxs("span",{className:f,style:b,"aria-label":l?void 0:s,role:s&&!l?"img":void 0,"aria-hidden":l||void 0,children:[C&&n.jsx(at,{icon:C,size:x,className:"badge__icon"}),u??c,y&&n.jsx(at,{icon:y,size:x,className:"badge__icon"})]})}function ja({columns:e=[],onClose:t,className:a="",size:r="medium"}){const{t:i}=xe.useTranslation(),s=r==="small"?40:48,[l,u]=o.useState([]),c=o.useMemo(()=>{const h=[{title:null,columns:e}];let x=e;for(const f of l){const w=x?.[f.ci]?.items?.[f.ii];if(!w||!Array.isArray(w.children)||!w.children.length)break;x=[{title:null,items:w.children}],h.push({title:w.label||null,columns:x})}return h},[e,l]),d=c[c.length-1],m=c.length-1,p=o.useCallback(()=>u(h=>h.slice(0,Math.max(0,Math.min(h.length,m)-1))),[m]),C=o.useRef(null),y=o.useRef(null),v=c.length;o.useEffect(()=>{y.current||(y.current=document.activeElement);let h=0,x=0;const f=()=>{const w=C.current?.querySelector("button:not([disabled])");if(w&&w.offsetParent){w.focus({preventScroll:!0});return}x++<20&&(h=requestAnimationFrame(f))};return h=requestAnimationFrame(f),()=>cancelAnimationFrame(h)},[v]),o.useEffect(()=>()=>{y.current?.focus?.({preventScroll:!0})},[]);const g=o.useCallback((h,x,f)=>{if(h){if(Array.isArray(h.children)&&h.children.length){u(w=>[...w.slice(0,m),{ci:x,ii:f}]);return}try{typeof h.onClick=="function"&&h.onClick()}catch{}try{h&&h.closeOnSelect&&typeof t=="function"&&t()}catch{}}},[t,m]);return n.jsxs("div",{className:`tooltip-menu tooltip-menu--${r} ${a}`,children:[(c.length>1||d.title)&&n.jsxs("div",{className:"tooltip-menu__header",children:[c.length>1?n.jsx(me,{htmlType:"button",size:s,type:"dot",icon:"chevron-left",ariaLabel:i("common.back","\uB4A4\uB85C"),onClick:p,variant:"transparent-gray",useBorder:!1}):null,n.jsx("div",{className:"tooltip-menu__title button-1",children:d.title})]}),n.jsx("div",{className:"tooltip-menu__columns",ref:C,children:d.columns&&d.columns.map((h,x)=>n.jsxs("div",{className:"tooltip-menu__column",children:[h.title?n.jsx("div",{className:"tooltip-menu__column-title body-3",children:h.title}):null,n.jsx("div",{className:"tooltip-menu__items",children:(h.items||[]).map((f,w)=>n.jsxs(o.Fragment,{children:[f.separatorBefore&&w>0&&n.jsx("div",{className:"tooltip-menu__separator",role:"separator"}),n.jsx(me,{htmlType:"button",className:"tooltip-menu__item",size:s,type:f.label?"bar":"dot",icon:f.selected?"check":f.icon||"none",rightIcon:Array.isArray(f.children)&&f.children.length?"chevron-right":f.badgeCount?n.jsx(kt,{type:"dot",position:"inline",number:Math.min(f.badgeCount,99),size:24,"aria-hidden":!0}):void 0,label:f.label,ariaLabel:f.label&&f.badgeCount&&f.badgeCount>0?i("nav.badgeLabel",{label:f.label,count:f.badgeCount,defaultValue:"{{label}}, {{count}}\uAC1C"}):f.label,onClick:()=>g(f,x,w),selected:f.selected,disabled:f.disabled,showTooltipInfo:f.tooltip||!1,useBorder:!1,align:"left"})]},w))})]},x))})]})}const wl=".content-area";function mo(e,t="Nav"){try{const a=typeof e=="string"?document.querySelector(e):e?.current??document.querySelector(wl);if(a){a.scrollTop=0;return}const r=document.scrollingElement??document.documentElement;r&&r.scrollHeight<=r.clientHeight&&Zt("nav-scroll-container",`[${t}] \uBCF8\uBB38\uC744 \uB9E8 \uC704\uB85C \uB418\uB3CC\uB9B4 \uD1B5\uC744 \uBABB \uCC3E\uC558\uB2E4(\uAE30\uBCF8 ${wl}) \u2014 \uCC3D\uB3C4 \uAD6C\uB97C \uC218 \uC5C6\uC5B4 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4. scrollContainer \uB85C \uD1B5\uC744 \uC54C\uB824 \uC900\uB2E4.`),window.scrollTo({top:0})}catch{}}const ho=52,tr=10,Al=e=>e&&e>0?e:0;function Bl({items:e=[],activeKey:t,onChange:a,appMode:r,onAppModeChange:i,moreItems:s=[],scrollContainer:l}){const{t:u}=xe.useTranslation(),c=r==="manager"?"malgwi":"manager",d=r==="manager"?"arrow-left":"arrow-right",m=r==="manager"?u("nav.modeLabelMalgwi","\uB9D0\uADC0"):u("nav.modeLabelManager","\uB9D0\uADC0 \uB9E4\uB2C8\uC800"),p=o.useRef(null),[C,y]=o.useState(0),v=e.length;o.useEffect(()=>{const $=p.current;if(!$)return;const V=()=>{const D=typeof getComputedStyle=="function"?getComputedStyle($):null,R=$.clientWidth-(parseFloat(D?.paddingLeft??"")||0)-(parseFloat(D?.paddingRight??"")||0),I=$.querySelector(".bottom-nav__left"),W=I?.nextElementSibling,ee=(I?.offsetWidth??0)+(I&&W?.classList.contains("bottom-nav__divider")?W.offsetWidth:0);y(Math.max(0,R-ee))};if(V(),typeof ResizeObserver>"u")return;const H=new ResizeObserver(V);H.observe($);const T=$.querySelector(".bottom-nav__left");return T&&H.observe(T),()=>H.disconnect()},[i]);const g=ho+1,h=$=>Math.max(0,Math.floor(($+tr)/(ho+tr))),x=v*(ho+tr)-tr<=C,f=C<=0||s.length===0&&x?v:Math.min(v,h(C-g)),w=C>0&&f<v,b=w?f:v,B=e.slice(0,b),_=e.slice(b),A=w||s.length>0,k=o.useCallback(($,V)=>({position:"fixed",bottom:window.innerHeight-$.top+8,right:window.innerWidth-$.right,zIndex:Da(V)}),[]),N=o.useId(),{open:S,toggle:E,close:O,style:F,triggerRef:Y,menuRef:M}=Sa({computeStyle:k,onScroll:"ignore",onResize:"reposition"}),L=o.useCallback(($,V)=>V>0?u("nav.badgeLabel",{label:$,count:V,defaultValue:"{{label}}, {{count}}\uAC1C"}):$,[u]),P=o.useCallback(($,V)=>V>0?u("nav.badgeInsideLabel",{label:$,count:V,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):$,[u]),G=o.useCallback(()=>i?.(c),[i,c]),U=o.useMemo(()=>_.find($=>!!$.key&&$.key===t)??s.find($=>$.selected||$.key&&$.key===t),[_,t,s]),z=o.useMemo(()=>[{items:[..._.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:!!$.key&&$.key===t,closeOnSelect:!0,disabled:$.state==="disabled",onClick:()=>{$.state!=="disabled"&&($.key&&a&&(a($.key),mo(l,"BottomNav")),O())}})),...s.map($=>({label:$.label,icon:$.icon,badgeCount:$.badgeCount,selected:$.selected??(!!$.key&&$.key===t),closeOnSelect:!0,onClick:()=>{$.onClick?.(),O()}}))]}],[_,s,t,a,O]),q=[..._,...s].reduce(($,V)=>$+Al(V.badgeCount),0);return n.jsxs("nav",{className:"bottom-nav",ref:p,"aria-label":u("nav.bottomNav","\uD558\uB2E8 \uB124\uBE44\uAC8C\uC774\uC158"),children:[i&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__left",children:n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:d,ariaLabel:m,className:"bottom-nav-item",onClick:G})}),n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"})]}),n.jsx("div",{className:"bottom-nav__items",children:B.map(($,V)=>{const H=Al($.badgeCount);return n.jsxs("span",{className:"bottom-nav__slot",children:[n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:$.icon,ariaLabel:L($.label,H),selected:!!$.key&&$.key===t,disabled:$.state==="disabled",className:"bottom-nav-item",onClick:()=>{$.key&&(a?.($.key),mo(l,"BottomNav"))}}),H>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(kt,{type:"dot",position:"top-right",number:Math.min(H,99),size:24})})]},$.key??`__slot-${V}`)})}),A&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"bottom-nav__divider","aria-hidden":"true"}),n.jsx("div",{className:"bottom-nav__right",children:n.jsxs("div",{ref:Y,className:"bottom-nav__slot",children:[n.jsx(me,{htmlType:"button",size:52,type:"dot",icon:U?.icon??"ellipsis",ariaLabel:P(U?.label??u("nav.more","\uB354\uBCF4\uAE30"),q),selected:!!U,className:"bottom-nav-item",onClick:E,"aria-expanded":S,"aria-controls":S?N:void 0}),q>0&&n.jsx("span",{"aria-hidden":"true",children:n.jsx(kt,{type:"dot",position:"top-right",number:Math.min(q,99),size:24})}),S&&en.createPortal(n.jsx("div",{id:N,role:"group","aria-label":u("nav.moreMenu","\uB354\uBCF4\uAE30 \uBA54\uB274"),className:"tooltip-content",style:F,ref:M,children:n.jsx(ja,{columns:z,onClose:O})}),document.body)]})})]})]})}function kl(e){if(typeof e!="string")return!1;let t="";for(const r of e){const i=r.charCodeAt(0);i<=32||i>=127&&i<=159||(t+=r)}if(!t)return!1;const a=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(t);return a?["http","https","mailto","tel"].includes(a[1].toLowerCase()):!0}function Nl(e,t,a){return a&&a>0?e("nav.badgeLabel",{label:t,count:a,defaultValue:"{{label}}, {{count}}\uAC1C"}):t}function Ub(e){const{t}=xe.useTranslation(),{activeKey:a,unreadCount:r,onDebug:i,onNotification:s,onSetting:l,onHelp:u,onFeedback:c,onAccount:d}=e||{},m="default";return i||s||l||u||c||d?n.jsxs("div",{className:"side-nav__footer",children:[i&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"terminal",ariaLabel:t("nav.debug","\uB514\uBC84\uADF8"),onClick:i,selected:a==="debug"}),s&&n.jsxs("span",{className:"side-nav__notification-wrap",children:[n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bell",ariaLabel:Nl(t,t("nav.notifications","\uC54C\uB9BC"),r),onClick:s,selected:a==="notifications"}),!!r&&r>0&&n.jsx(kt,{type:"dot",number:Math.min(r,99),size:24,"aria-hidden":!0})]}),l&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"settings",ariaLabel:t("nav.settings","\uC124\uC815"),onClick:l,selected:a==="settings"}),u&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"message-circle-question-mark",ariaLabel:t("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:u,selected:a==="help"}),c&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"bug",ariaLabel:t("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:c,selected:a==="feedback"}),d&&n.jsx(me,{htmlType:"button",size:48,showTooltipInfo:!0,type:"dot",shape:"pill",variant:m,icon:"user-round",ariaLabel:t("nav.account","\uACC4\uC815"),onClick:d,selected:a==="account"})]}):null}function El(e){const{t}=xe.useTranslation(),{item:a,itemKey:r,label:i,icon:s,active:l,onClick:u,style:c,state:d,labelStyle:m}=e||{},p=a?.key??r??"",C=a?.label??i??"",y=a?.icon??s??"",v=a?.badge??0,g=n.jsx("span",{className:"side-nav__icon-wrap",children:n.jsx(at,{icon:y,label:typeof C=="string"?C:void 0,className:"side-nav__icon",maskClassName:"side-nav__icon-image",imgClassName:void 0,svgClassName:void 0})}),h=d==="disabled",x=`side-nav__item ${l?"active":""} ${d||""} ${h?"disabled":""} ${a?.child?"side-nav__item--child":""}`,f=o.useCallback(w=>{if(h)return;const b=w.detail>0;if(b)try{w.currentTarget.blur()}catch{}u?.(p,w.currentTarget,b)},[h,p,u]);return n.jsxs("button",{type:"button",className:x,onClick:f,"aria-label":typeof C=="string"?Nl(t,C,v):void 0,"aria-current":l?"page":void 0,style:c,"aria-disabled":h,children:[g,n.jsx("span",{className:"side-nav__label button-1 f",style:m,children:C}),v>0&&n.jsx(kt,{type:"dot",position:"inline",number:Math.min(v,99),size:24,"aria-hidden":!0}),d==="loading"&&n.jsx("span",{className:"side-nav__spinner",role:"img","aria-label":t("loader.loading","\uBD88\uB7EC\uC624\uB294 \uC911\u2026")})]})}function Dl(e){const{t}=xe.useTranslation(),{items:a=[],activeKey:r,onChange:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:y,scrollContainer:v}=e||{},g=C==="manager",h=o.useCallback(()=>y?.(g?"malgwi":"manager"),[y,g]),x=o.useRef(null),[f,w]=o.useState(null);o.useEffect(()=>{const k=x.current;if(!k)return;let N=null;const S=()=>{const{scrollHeight:F,clientHeight:Y,scrollTop:M}=k;if(F<=Y+1){w(z=>z===null?z:null);return}const L=Math.max(24,Y/F*Y),P=Y-L,G=F-Y,U={top:Math.round(M/G*P),height:Math.round(L)};w(z=>z&&z.top===U.top&&z.height===U.height?z:U)},E=()=>{if(typeof requestAnimationFrame>"u"){S();return}N===null&&(N=requestAnimationFrame(()=>{N=null,S()}))};S(),k.addEventListener("scroll",E,{passive:!0});const O=typeof ResizeObserver<"u"?new ResizeObserver(E):null;O?.observe(k);for(const F of Array.from(k.children))O?.observe(F);return()=>{N!==null&&cancelAnimationFrame(N),k.removeEventListener("scroll",E),O?.disconnect()}},[a]);const b=o.useRef(null),B=o.useCallback(k=>{const N=x.current;N&&(k.preventDefault(),b.current={y:k.clientY,top:N.scrollTop},k.currentTarget.setPointerCapture(k.pointerId))},[]),_=o.useCallback(k=>{const N=x.current,S=b.current;!N||!S||(N.scrollTop=S.top+(k.clientY-S.y)*(N.scrollHeight/N.clientHeight))},[]),A=o.useCallback(k=>{b.current=null,k.currentTarget.hasPointerCapture(k.pointerId)&&k.currentTarget.releasePointerCapture(k.pointerId)},[]);return n.jsxs("nav",{ref:x,"aria-label":t("nav.mainMenu","\uBA54\uC778 \uBA54\uB274"),className:"side-nav__menu",children:[f&&n.jsx("div",{className:"side-nav__scroll","aria-hidden":"true",children:n.jsx("div",{className:"side-nav__scroll-thumb",style:{top:f.top,height:f.height},onPointerDown:B,onPointerMove:_,onPointerUp:A,onPointerCancel:A})}),n.jsxs("div",{className:"side-nav__menu-list",children:[(a||[]).filter(k=>!k.section&&(k.key||k.label)).map((k,N)=>n.jsxs(o.Fragment,{children:[k.divider&&n.jsx("div",{className:"side-nav__separator"}),n.jsx(El,{item:k,active:!!k.key&&k.key===r,state:k.disabled?"disabled":void 0,onClick:(S,E,O)=>{if(k.disabled)return;if(k.href){if(kl(k.href)&&window.open(k.href,"_blank","noopener,noreferrer"),O)try{E?.blur()}catch{}return}if(i?.(k.key),mo(v,"SideNav"),!O)return;try{E?.blur()}catch{}if(typeof window<"u"&&window.matchMedia){if(!window.matchMedia("(min-width: 768px) and (max-width: 1023px)").matches)return}else return;const F=document.querySelector(".header");if(F){const Y=typeof F.matches=="function";if(!(window.matchMedia("(hover: hover)").matches&&Y&&F.matches(":hover"))){F.classList.add("header--force-collapsed");const M=()=>{F.classList.remove("header--force-collapsed"),F.removeEventListener("mouseenter",M)};F.addEventListener("mouseenter",M)}}}})]},k.key??`side-nav__item-${N}`)),y&&n.jsx("div",{className:"side-nav__separator side-nav__separator--short"}),y&&n.jsx(El,{item:{key:"__mode-switch__",label:g?t("nav.goToMalgwi","\uB9D0\uADC0\uB85C \uC774\uB3D9"):t("nav.goToManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800\uB85C \uC774\uB3D9"),icon:g?"arrow-left":"arrow-right"},onClick:h})]}),n.jsx(Ub,{activeKey:r,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p})]})}var nr='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2080_3066)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="black"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="black"/>%0A<path d="M46.4288 17.8571H25.0002C15.138 17.8571 7.14307 25.852 7.14307 35.7143V57.1428C7.14307 67.0051 15.138 75 25.0002 75H46.4288C56.291 75 64.2859 67.0051 64.2859 57.1428V35.7143C64.2859 25.852 56.291 17.8571 46.4288 17.8571Z" fill="%234DCDC0"/>%0A<path d="M34.8607 50.7393C25.8285 60.6821 10.6142 61.6678 0.385667 53.1643C-0.0821902 52.775 -0.13219 52.0678 0.278524 51.6178L16.3535 33.925L34.8607 50.7393Z" fill="%234DCDC0"/>%0A<path d="M53.5714 25H32.1428C22.2821 25 14.2856 32.9964 14.2856 42.8571V64.2857C14.2856 74.1464 22.2821 82.1429 32.1428 82.1429H48.2535C49.2178 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7214 51.8928 85.6321C62.8392 84.675 71.4285 75.4821 71.4285 64.2857V42.8571C71.4285 32.9964 63.4321 25 53.5714 25Z" fill="%234DCDC0"/>%0A<path d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23499CDF"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="white"/>%0A<path d="M36.0715 57.1429C35.0287 57.1429 33.9822 56.875 33.0358 56.3286C32.1822 55.8357 31.8894 54.7429 32.3858 53.8893C32.8787 53.0357 33.9715 52.7429 34.8251 53.2393C35.8037 53.8036 37.043 53.6429 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3536 40.4322 35.9107 37.5072 35.7286C36.5215 35.6679 35.5715 35.8464 34.693 36.2679C33.8037 36.6929 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0429C34.5751 32.3714 36.1537 32.0679 37.7322 32.1643C42.4894 32.4607 46.3072 36.4286 46.4251 41.1964C46.4822 43.5286 45.6715 45.7786 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9357C41.8965 53.2464 41.3037 54.4357 40.368 55.375C39.2001 56.5429 37.6465 57.15 36.0751 57.15L36.0715 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2080_3066">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Co='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7374)">%0A<path d="M237.151 26.0393V72.7214H216.65V26.0393H237.151ZM234.408 70.0464V28.7179H219.254V70.0464H234.408ZM261.495 76.3607H258.819V48.9679H247.575V75.4679H244.899V23.9821H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3607Z" fill="black"/>%0A<path d="M299.722 69.2571C302.076 68.775 304.031 68.1464 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.789 72.0357C297.435 72.4929 295.045 72.7214 292.623 72.7214H272.257V25.6964H275V69.975H292.623C294.998 69.975 297.364 69.7357 299.722 69.2536V69.2571ZM311.69 76.4321V23.6393H314.433V76.3643L311.69 76.4321Z" fill="black"/>%0A<path d="M340.556 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.329 62.2643 333.632 65.925C330.935 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.33 63.1107C334.617 59.3572 336.354 54.5179 337.542 48.5893C338.73 42.6643 339.369 36.0393 339.461 28.7143H324.992V26.0357H356.602V28.7143H342.201C342.155 35.9 341.605 42.3072 340.556 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="black"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="black"/>%0A<path d="M181.886 47.8714V57.275C179.097 58.5571 174.73 59.1964 168.791 59.1964H168.174V76.3607H158.299V59.1964H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8714H181.886ZM148.971 34.2786V24.875H177.634V47.05H167.76V34.2821H148.971V34.2786ZM194.64 76.3607H184.765V23.6393H194.64V76.3643V76.3607Z" fill="black"/>%0A<path d="M48.1549 17.8571H26.7511C16.9002 17.8571 8.91455 25.852 8.91455 35.7143V57.1428C8.91455 67.0051 16.9002 75 26.7511 75H48.1549C58.0058 75 65.9915 67.0051 65.9915 57.1428V35.7143C65.9915 25.852 58.0058 17.8571 48.1549 17.8571Z" fill="%234DCDC0"/>%0A<path d="M36.6007 50.7393C27.579 60.6821 12.3823 61.6678 2.1655 53.1643C1.69818 52.775 1.64824 52.0678 2.05848 51.6178L18.1149 33.925L36.6007 50.7393Z" fill="%234DCDC0"/>%0A<path d="M55.2897 25H33.8859C24.0365 25 16.0493 32.9964 16.0493 42.8571V64.2857C16.0493 74.1464 24.0365 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7214 53.6131 85.6321C64.5469 84.675 73.1262 75.4821 73.1262 64.2857V42.8571C73.1262 32.9964 65.139 25 55.2897 25Z" fill="%234DCDC0"/>%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23499CDF"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="white"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7374">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Gb='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65214)">%0A<path d="M57.1427 17.8571H35.7141C25.8518 17.8571 17.8569 25.852 17.8569 35.7143V57.1428C17.8569 67.0051 25.8518 75 35.7141 75H57.1427C67.0049 75 74.9998 67.0051 74.9998 57.1428V35.7143C74.9998 25.852 67.0049 17.8571 57.1427 17.8571Z" fill="%234DCDC0"/>%0A<path d="M45.575 50.7393C36.5429 60.6821 21.3286 61.6678 11.1 53.1643C10.6322 52.775 10.5822 52.0678 10.9929 51.6178L27.0679 33.925L45.575 50.7393Z" fill="%234DCDC0"/>%0A<path d="M64.2857 25H42.8571C32.9964 25 25 32.9964 25 42.8571V64.2857C25 74.1464 32.9964 82.1429 42.8571 82.1429H58.9679C59.9321 82.1429 60.7143 82.925 60.7143 83.8893C60.7143 84.9107 61.5893 85.7214 62.6071 85.6321C73.5536 84.675 82.1429 75.4821 82.1429 64.2857V42.8571C82.1429 32.9964 74.1464 25 64.2857 25Z" fill="%234DCDC0"/>%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23499CDF"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="white"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2359 35.6679 46.2859 35.8464 45.4073 36.2679C44.5145 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2002 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="white"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2175_65214">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';function Sl({appMode:e}){const{t}=xe.useTranslation(),a=e==="manager",r=a?Co:nr,i=Gb;return n.jsxs("div",{className:"brand-identity__root","aria-label":t("header.biArea","BI \uC601\uC5ED"),children:[n.jsx("img",{src:i,alt:t("header.biSymbol","BI \uC2EC\uBCFC"),className:"brand-identity__image brand-identity__image--symbol"}),n.jsx("img",{src:r,alt:a?t("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):t("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0"),className:"brand-identity__image brand-identity__image--logo"})]})}function jl({activeKey:e,onChange:t,items:a,malgwiItems:r,managerItems:i,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:y,scrollContainer:v}){const{t:g}=xe.useTranslation(),h=ln("(max-width: 767px)"),x=o.useMemo(()=>(a??[]).filter(F=>!F.section&&(F.key||F.label)).map(F=>({key:F.key,label:typeof F.label=="string"?F.label:void 0,icon:F.icon,state:F.disabled?"disabled":void 0,badgeCount:F.badge})),[a]),f=o.useCallback(F=>{const Y=a?.find(M=>M.key===F);if(!Y?.disabled){if(Y?.href){kl(Y.href)&&window.open(Y.href,"_blank","noopener,noreferrer");return}t?.(F)}},[a,t]),w=o.useMemo(()=>{const F=[];return l&&F.push({key:"debug",icon:"terminal",label:g("nav.debug","\uB514\uBC84\uADF8"),onClick:l}),u&&F.push({key:"notifications",icon:"bell",label:g("nav.notifications","\uC54C\uB9BC"),badgeCount:s,onClick:u}),d&&F.push({key:"settings",icon:"settings",label:g("nav.settings","\uC124\uC815"),onClick:d}),m&&F.push({key:"help",icon:"message-circle-question-mark",label:g("nav.help","\uB3C4\uC6C0\uB9D0"),onClick:m}),p&&F.push({key:"feedback",icon:"bug",label:g("nav.feedback","\uBC84\uADF8\uC2E0\uACE0"),onClick:p}),c&&F.push({key:"account",icon:"user-round",label:g("nav.account","\uACC4\uC815"),onClick:c}),F},[g,l,u,d,m,p,c,s]),b=o.useCallback((F,Y)=>({position:"fixed",top:F.bottom+8,right:Math.max(8,window.innerWidth-F.right),zIndex:Da(Y)}),[]),B=o.useId(),{open:_,toggle:A,close:k,style:N,triggerRef:S,menuRef:E}=Sa({computeStyle:b,onScroll:"ignore",onResize:"reposition"}),O=o.useMemo(()=>[{items:w.map(F=>({label:F.label,icon:F.icon,badgeCount:F.badgeCount,selected:F.selected??(!!F.key&&F.key===e),closeOnSelect:!0,onClick:()=>{F.onClick?.(),k()}}))}],[w,e,k]);return n.jsxs("aside",{className:`header${C==="manager"?" header--manager":""}`,children:[n.jsxs("div",{className:"header__bi",children:[n.jsx(Sl,{appMode:C}),n.jsxs("div",{className:"header__menu-button",ref:S,children:[n.jsx(me,{htmlType:"button",size:48,type:"dot",shape:"pill",variant:"default",useBorder:!1,icon:"menu",ariaLabel:u&&s&&s>0?g("nav.badgeInsideLabel",{label:g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),count:s,defaultValue:"{{label}}, \uC548\uC5D0 \uC54C\uB9BC {{count}}\uAC1C"}):g("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),onClick:A,"aria-expanded":_,"aria-controls":_?B:void 0}),!!u&&!!s&&s>0&&n.jsx(kt,{type:"dot",number:Math.min(s,99),size:24,"aria-hidden":!0}),_&&en.createPortal(n.jsx("div",{id:B,role:"group","aria-label":g("header.utilMenu","\uC720\uD2F8\uB9AC\uD2F0 \uBA54\uB274"),className:"tooltip-content",style:N,ref:E,children:n.jsx(ja,{columns:O,onClose:k})}),document.body)]})]}),n.jsx(Dl,{scrollContainer:v,items:a,activeKey:e??void 0,onChange:t,unreadCount:s,onDebug:l,onNotification:u,onAccount:c,onSetting:d,onHelp:m,onFeedback:p,appMode:C,onAppModeChange:y}),h&&n.jsx(Bl,{items:x,activeKey:e??void 0,onChange:f,scrollContainer:v,appMode:C,onAppModeChange:y})]})}const Kb=jl,Yb=()=>$t.t("passCard.planSuffix","\uC774\uC6A9\uAD8C");function Tl(e){if(!(e==null||e==="")){if(typeof e=="string"&&/^\s*\d[\d,]*\s*$/.test(e)){const t=Number(e.replace(/[,\s]/g,""));if(Number.isFinite(t))return oa(`${t.toLocaleString("ko-KR")}\uC6D0`)}return oa(typeof e=="number"?`${e.toLocaleString("ko-KR")}\uC6D0`:e)}}function Zb(e){const t=`${e.code??""} ${e.name??""}`.toLowerCase();return/manager|매니저/.test(t)?"manager":"speechear"}function Xb(e){if(e.durationDays&&e.durationDays>0){const s=e.durationDays;return s%365===0?`${s/365}\uB144`:`${s}\uC77C`}const t=(e.code??"").match(/(\d+)(d|y)\b/i);if(t)return t[2].toLowerCase()==="y"?`${t[1]}\uB144`:`${t[1]}\uC77C`;const a=e.name??"",r=a.match(/(\d+\s*(?:년|개월|주|일))\s*(?:이용권)?\s*$/);if(r)return r[1].replace(/\s+/g,"");const i=a.match(/(\d+)\s*-?\s*(day|year)s?\b/i);return i?i[2].toLowerCase()==="year"?`${i[1]}\uB144`:`${i[1]}\uC77C`:a||Yb()}function Jb(e){const t=(e??"").match(/(\d+)(d|y)\b/i);if(!t)return null;const a=Number(t[1]);return t[2].toLowerCase()==="y"?a*365:a}function Ml(e){return{type:e.type??Zb(e),plan:Xb(e),label:e.label,price:Tl(e.price),originalPrice:Tl(e.originalPrice),discountLabel:e.discountLabel}}var Qb='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7326)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23FAFAFA"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23FAFAFA"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23FAFAFA"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23FAFAFA"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7326">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',e4='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 200 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="200" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M96.43,48.35v-24.1h30.62v24.1h-30.62ZM142.98,69.15v7.21h-44.76v-15.72h34.46v-2.13h-34.6v-7.21h44.35v15.72h-34.33v2.13h34.88,0ZM106.25,32.56v7.41h11.05v-7.41h-11.05ZM148.33,40.39h-5.9v9.06h-9.89v-25.81h9.89v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M185.54,47.87v9.4c-2.79,1.28-7.16,1.92-13.11,1.92h-.62v17.16h-9.89v-17.16h-12.22v-9.4h22.86c5.86,0,10.18-.64,12.98-1.92h0ZM152.59,34.28v-9.4h28.7v22.17h-9.89v-12.77h-18.81ZM198.31,76.36h-9.89V23.64h9.89v52.73h0Z"/>%0A <path class="st1" d="M46.43,17.86h-21.43c-9.86,0-17.86,7.99-17.86,17.86v21.43c0,9.86,7.99,17.86,17.86,17.86h21.43c9.86,0,17.86-7.99,17.86-17.86v-21.43c0-9.86-7.99-17.86-17.86-17.86Z"/>%0A <path class="st1" d="M34.86,50.74c-9.03,9.94-24.25,10.93-34.48,2.42-.47-.39-.52-1.1-.11-1.55l16.07-17.69,18.51,16.81Z"/>%0A <path class="st1" d="M53.57,25h-21.43c-9.86,0-17.86,8-17.86,17.86v21.43c0,9.86,8,17.86,17.86,17.86h16.11c.96,0,1.75.78,1.75,1.75,0,1.02.88,1.83,1.89,1.74,10.95-.96,19.54-10.15,19.54-21.35v-21.43c0-9.86-8-17.86-17.86-17.86Z"/>%0A <path class="st2" d="M25,25c-5.92,0-10.71,4.8-10.71,10.71v28.57c0,3.09.79,6,2.17,8.54,2.54,1.39,5.45,2.17,8.54,2.17h28.57c5.92,0,10.71-4.8,10.71-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.54-1.39-5.45-2.17-8.54-2.17h-28.57Z"/>%0A <path class="st3" d="M25.36,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M36.07,57.14c-1.04,0-2.09-.27-3.04-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.59-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.33-4.44,2.91-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.35-5.56-.99-.06-1.94.12-2.81.54-.89.43-1.96.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.76.3,8.58,4.26,8.69,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',t4='data:image/svg+xml,<svg width="200" height="100" viewBox="0 0 200 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7325)">%0A<path d="M96.4287 48.3536V24.2572H127.047V48.3536H96.4287ZM142.975 69.1536V76.3607H98.2144V60.6393H132.679V58.5107H98.0787V51.3036H142.429V67.025H108.104V69.1536H142.979H142.975ZM106.247 32.5643V39.9786H117.3V32.5643H106.247ZM148.329 40.3893H142.425V49.45H132.539V23.6357H142.425V30.8429H148.329V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M185.536 47.8714V57.275C182.743 58.5571 178.371 59.1964 172.425 59.1964H171.807V76.3607H161.921V59.1964H149.704V49.7929H172.564C178.421 49.7929 182.746 49.1536 185.539 47.8714H185.536ZM152.586 34.2786V24.875H181.282V47.05H171.396V34.2821H152.586V34.2786ZM198.307 76.3607H188.421V23.6393H198.307V76.3643V76.3607Z" fill="%23111111"/>%0A<path opacity="0.1" d="M24.9999 25C19.0821 25 14.2856 29.7964 14.2856 35.7143V64.2857C14.2856 67.3786 15.0749 70.2893 16.4571 72.8286C18.9928 74.2143 21.9035 75 24.9999 75H53.5714C59.4892 75 64.2856 70.2036 64.2856 64.2857V35.7143C64.2856 32.6214 63.4964 29.7107 62.1142 27.1714C59.5785 25.7857 56.6678 25 53.5714 25H24.9999Z" fill="%23111111"/>%0A<path d="M14.2859 64.2857V35.7143C14.2859 29.7964 19.0823 25 25.0002 25H53.5716C56.6645 25 59.5752 25.7893 62.1145 27.1714C59.0859 21.6214 53.1966 17.8571 46.4288 17.8571H25.0002C15.1395 17.8571 7.14304 25.8535 7.14304 35.7143V44.0643L0.278759 51.6214C-0.131955 52.0714 -0.0855263 52.7785 0.385902 53.1678C2.46447 54.8964 4.75019 56.225 7.14304 57.1714C7.15376 63.9285 10.9145 69.8035 16.4573 72.8285C15.0716 70.2928 14.2859 67.3821 14.2859 64.2857Z" fill="%23111111"/>%0A<path d="M25.357 40.7143C25.357 39.5308 24.3976 38.5714 23.2141 38.5714C22.0307 38.5714 21.0713 39.5308 21.0713 40.7143V45C21.0713 46.1834 22.0307 47.1428 23.2141 47.1428C24.3976 47.1428 25.357 46.1834 25.357 45V40.7143Z" fill="%23111111"/>%0A<path d="M36.0715 57.1428C35.0287 57.1428 33.9822 56.875 33.0358 56.3285C32.1822 55.8357 31.8894 54.7428 32.3858 53.8893C32.8787 53.0357 33.9715 52.7428 34.8251 53.2393C35.8037 53.8035 37.043 53.6428 37.8394 52.8464C38.2251 52.4607 38.468 51.9714 38.543 51.4357C38.8644 49.1607 39.868 47 41.4501 45.1857C42.393 44.1071 42.8894 42.7214 42.8537 41.2857C42.7787 38.3535 40.4322 35.9107 37.5072 35.7285C36.518 35.6678 35.5715 35.85 34.693 36.2678C33.8037 36.6893 32.7358 36.3107 32.3144 35.4214C31.8894 34.5321 32.2715 33.4643 33.1608 33.0428C34.5751 32.3714 36.1572 32.0643 37.7322 32.1643C42.4894 32.4607 46.3072 36.4285 46.4251 41.1964C46.4822 43.5285 45.6715 45.7785 44.143 47.5357C43.018 48.825 42.3037 50.3464 42.0822 51.9321C41.8965 53.2428 41.3037 54.4321 40.368 55.3714C39.2001 56.5393 37.6465 57.1464 36.0751 57.1464L36.0715 57.1428Z" fill="%23111111"/>%0A<path d="M62.1142 27.1714C63.4999 29.7072 64.2856 32.6179 64.2856 35.7143V64.2857C64.2856 70.2036 59.4892 75 53.5713 75H24.9999C21.907 75 18.9963 74.2107 16.457 72.8286C19.4856 78.3786 25.3749 82.1429 32.1427 82.1429H48.2535C49.2177 82.1429 49.9999 82.925 49.9999 83.8893C49.9999 84.9107 50.8749 85.7215 51.8927 85.6322C62.8392 84.675 71.4285 75.4822 71.4285 64.2857V42.8572C71.4285 36.0893 67.6642 30.2 62.1142 27.1714Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7325">%0A<rect width="200" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',n4='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7395)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23FAFAFA"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23FAFAFA"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23FAFAFA"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23FAFAFA"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23FAFAFA"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23FAFAFA"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23FAFAFA"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23FAFAFA"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7395">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',a4='data:image/svg+xml,<?xml version="1.0" encoding="UTF-8"?>%0A<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" viewBox="0 0 371 100">%0A <!-- Generator: Adobe Illustrator 30.4.0, SVG Export Plug-In . SVG Version: 2.1.4 Build 226) -->%0A <defs>%0A <style>%0A .st0 {%0A fill: none;%0A }%0A%0A .st1 {%0A fill: %234dcdc0;%0A }%0A%0A .st2 {%0A fill: %23499cdf;%0A }%0A%0A .st3 {%0A fill: %23fff;%0A }%0A%0A .st4 {%0A clip-path: url(%23clippath);%0A }%0A </style>%0A <clipPath id="clippath">%0A <rect class="st0" width="371" height="100"/>%0A </clipPath>%0A </defs>%0A <g class="st4">%0A <g>%0A <path class="st3" d="M237.15,26.04v46.68h-20.5V26.04h20.5ZM234.41,70.05V28.72h-15.15v41.33h15.15ZM261.49,76.36h-2.68v-27.39h-11.24v26.5h-2.68V23.98h2.68v22.31h11.24v-22.65h2.68v52.73h0Z"/>%0A <path class="st3" d="M299.72,69.26c2.35-.48,4.31-1.11,5.86-1.89v2.75c-1.51.82-3.44,1.46-5.79,1.92-2.35.46-4.74.69-7.17.69h-20.37V25.7h2.74v44.28h17.62c2.38,0,4.74-.24,7.1-.72h0ZM311.69,76.43V23.64h2.74v52.73l-2.74.07Z"/>%0A <path class="st3" d="M340.56,47.94l17.62,22.52-2.13,1.65-16.18-20.94c-1.46,6.18-3.54,11.1-6.24,14.76-2.7,3.66-5.9,5.93-9.6,6.8v-2.75c3.25-.82,6.01-3.11,8.3-6.86,2.29-3.75,4.02-8.59,5.21-14.52,1.19-5.92,1.83-12.55,1.92-19.87h-14.47v-2.68h31.61v2.68h-14.4c-.05,7.19-.6,13.59-1.64,19.22h0ZM369.22,76.36h-2.74v-28.9h-14.06v-2.68h14.06v-21.14h2.74v52.73Z"/>%0A <path class="st3" d="M92.88,48.35v-24.1h30.58v24.1h-30.58ZM139.37,69.15v7.21h-44.71v-15.72h34.42v-2.13h-34.56v-7.21h44.3v15.72h-34.28v2.13h34.83,0ZM102.68,32.56v7.41h11.04v-7.41h-11.04ZM144.72,40.39h-5.9v9.06h-9.88v-25.81h9.88v7.21h5.9v9.54h0Z"/>%0A <path class="st3" d="M181.89,47.87v9.4c-2.79,1.28-7.16,1.92-13.1,1.92h-.62v17.16h-9.88v-17.16h-12.2v-9.4h22.83c5.85,0,10.17-.64,12.96-1.92h0ZM148.97,34.28v-9.4h28.66v22.17h-9.87v-12.77h-18.79ZM194.64,76.36h-9.88V23.64h9.88v52.73h0Z"/>%0A <path class="st1" d="M48.15,17.86h-21.4c-9.85,0-17.84,7.99-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h21.4c9.85,0,17.84-7.99,17.84-17.86v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st1" d="M36.6,50.74c-9.02,9.94-24.22,10.93-34.44,2.42-.47-.39-.52-1.1-.11-1.55l16.06-17.69,18.49,16.81Z"/>%0A <path class="st1" d="M55.29,25h-21.4c-9.85,0-17.84,8-17.84,17.86v21.43c0,9.86,7.99,17.86,17.84,17.86h16.09c.96,0,1.74.78,1.74,1.75,0,1.02.87,1.83,1.89,1.74,10.93-.96,19.51-10.15,19.51-21.35v-21.43c0-9.86-7.99-17.86-17.84-17.86Z"/>%0A <path class="st2" d="M26.75,25c-5.91,0-10.7,4.8-10.7,10.71v28.57c0,3.09.79,6,2.17,8.54,2.53,1.39,5.44,2.17,8.53,2.17h28.54c5.91,0,10.7-4.8,10.7-10.71v-28.57c0-3.09-.79-6-2.17-8.54-2.53-1.39-5.44-2.17-8.53-2.17h-28.54Z"/>%0A <path class="st3" d="M27.11,40.71c0-1.18-.96-2.14-2.14-2.14s-2.14.96-2.14,2.14v4.29c0,1.18.96,2.14,2.14,2.14s2.14-.96,2.14-2.14v-4.29Z"/>%0A <path class="st3" d="M37.81,57.14c-1.04,0-2.09-.27-3.03-.81-.85-.49-1.15-1.59-.65-2.44.49-.85,1.58-1.15,2.44-.65.98.56,2.22.4,3.01-.39.39-.39.63-.88.7-1.41.32-2.27,1.32-4.44,2.9-6.25.94-1.08,1.44-2.46,1.4-3.9-.07-2.93-2.42-5.38-5.34-5.56-.99-.06-1.93.12-2.81.54-.89.43-1.95.04-2.38-.85-.42-.89-.04-1.96.85-2.38,1.41-.67,2.99-.97,4.57-.88,4.75.3,8.57,4.26,8.68,9.03.06,2.33-.75,4.58-2.28,6.34-1.12,1.29-1.84,2.81-2.06,4.4-.19,1.31-.78,2.5-1.71,3.44-1.17,1.17-2.72,1.78-4.29,1.78h0Z"/>%0A </g>%0A </g>%0A</svg>',r4='data:image/svg+xml,<svg width="371" height="100" viewBox="0 0 371 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7394)">%0A<path d="M237.151 26.0393V72.7215H216.65V26.0393H237.151ZM234.408 70.0465V28.7179H219.254V70.0465H234.408ZM261.495 76.3608H258.819V48.9679H247.575V75.4679H244.899V23.9822H247.575V46.2929H258.819V23.6393H261.495V76.3643V76.3608Z" fill="%23111111"/>%0A<path d="M299.722 69.2572C302.076 68.7751 304.031 68.1465 305.583 67.3679V70.1143C304.074 70.9393 302.144 71.5786 299.79 72.0358C297.435 72.4929 295.045 72.7215 292.623 72.7215H272.257V25.6965H275.001V69.9751H292.623C294.999 69.9751 297.364 69.7358 299.722 69.2536V69.2572ZM311.69 76.4322V23.6393H314.434V76.3643L311.69 76.4322Z" fill="%23111111"/>%0A<path d="M340.557 47.9393L358.179 70.4572L356.053 72.1036L339.872 51.1643C338.409 57.3429 336.33 62.2643 333.633 65.925C330.936 69.5857 327.736 71.8536 324.033 72.7215V69.975C327.279 69.15 330.044 66.8643 332.331 63.1107C334.617 59.3572 336.355 54.5179 337.543 48.5893C338.731 42.6643 339.369 36.0393 339.462 28.7143H324.993V26.0357H356.603V28.7143H342.201C342.155 35.9 341.606 42.3072 340.557 47.9357V47.9393ZM369.22 76.3607H366.477V47.4572H352.418V44.7786H366.477V23.6357H369.22V76.3607Z" fill="%23111111"/>%0A<path d="M92.8784 48.3536V24.2572H123.461V48.3536H92.8784ZM139.371 69.1536V76.3607H94.6621V60.6393H129.087V58.5107H94.5265V51.3036H138.825V67.025H104.54V69.1536H139.375H139.371ZM102.685 32.5643V39.9786H113.726V32.5643H102.685ZM144.719 40.3893H138.822V49.45H128.947V23.6357H138.822V30.8429H144.719V40.3857V40.3893Z" fill="%23111111"/>%0A<path d="M181.886 47.8715V57.2751C179.097 58.5572 174.73 59.1965 168.791 59.1965H168.174V76.3608H158.299V59.1965H146.096V49.7929H168.93C174.78 49.7929 179.1 49.1536 181.89 47.8715H181.886ZM148.971 34.2786V24.8751H177.634V47.0501H167.76V34.2822H148.971V34.2786ZM194.64 76.3608H184.765V23.6393H194.64V76.3643V76.3608Z" fill="%23111111"/>%0A<g opacity="0.1">%0A<path d="M26.7512 25C20.8402 25 16.0493 29.7964 16.0493 35.7143V64.2857C16.0493 67.3786 16.8377 70.2893 18.2182 72.8286C20.751 74.2143 23.6584 75 26.7512 75H55.2897C61.2007 75 65.9916 70.2036 65.9916 64.2857V35.7143C65.9916 32.6214 65.2032 29.7107 63.8227 27.1714C61.2899 25.7857 58.3826 25 55.2897 25H26.7512Z" fill="%23111111"/>%0A</g>%0A<path d="M48.155 17.8571H26.7511C16.9018 17.8571 8.91459 25.8536 8.91459 35.7143V44.0643L2.05822 51.6179C1.64798 52.0679 1.69436 52.775 2.16524 53.1643C4.24141 54.8929 6.52449 56.2214 8.91459 57.1679C8.92529 63.925 12.6817 69.8 18.2181 72.825C16.834 70.2893 16.0492 67.3786 16.0492 64.2821V35.7107C16.0492 29.7929 20.8401 24.9964 26.7511 24.9964H55.2896C58.3789 24.9964 61.2862 25.7857 63.8226 27.1679C60.7975 21.6179 54.915 17.8536 48.155 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M63.8227 27.1714C65.2068 29.7072 65.9916 32.6179 65.9916 35.7143V64.2857C65.9916 70.2036 61.2008 75 55.2897 75H26.7513C23.662 75 20.7546 74.2107 18.2183 72.8286C21.2433 78.3786 27.1258 82.1429 33.8859 82.1429H49.978C50.9412 82.1429 51.7224 82.925 51.7224 83.8893C51.7224 84.9107 52.5964 85.7215 53.6131 85.6322C64.5469 84.675 73.1263 75.4822 73.1263 64.2857V42.8572C73.1263 36.0893 69.3663 30.2 63.8227 27.1714Z" fill="%23111111"/>%0A<path d="M27.1079 40.7143C27.1079 39.5308 26.1496 38.5714 24.9675 38.5714C23.7854 38.5714 22.8271 39.5308 22.8271 40.7143V45C22.8271 46.1834 23.7854 47.1428 24.9675 47.1428C26.1496 47.1428 27.1079 46.1834 27.1079 45V40.7143Z" fill="%23111111"/>%0A<path d="M37.8097 57.1429C36.768 57.1429 35.7228 56.875 34.7775 56.3286C33.9249 55.8357 33.6323 54.7429 34.1282 53.8893C34.6205 53.0357 35.7121 52.7429 36.5647 53.2393C37.5421 53.8036 38.78 53.6429 39.5755 52.8464C39.9608 52.4607 40.2033 51.9714 40.2782 51.4357C40.5993 49.1607 41.6017 47 43.182 45.1857C44.1238 44.1071 44.6197 42.7214 44.584 41.2857C44.5091 38.3536 42.1653 35.9107 39.2437 35.7286C38.2556 35.6679 37.3102 35.8464 36.4327 36.2679C35.5444 36.6929 34.4778 36.3107 34.0569 35.4214C33.6323 34.5321 34.014 33.4643 34.9023 33.0429C36.315 32.3714 37.8917 32.0679 39.4685 32.1643C44.2201 32.4607 48.0336 36.4286 48.1513 41.1964C48.2084 43.5286 47.3986 45.7786 45.8718 47.5357C44.7481 48.825 44.0346 50.3464 43.8134 51.9357C43.6279 53.2464 43.0358 54.4357 42.1011 55.375C40.9346 56.5429 39.3828 57.15 37.8132 57.15L37.8097 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7394">%0A<rect width="371" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A',Ll='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2255_7305)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7179 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7179 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="%23FAFAFA"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2255_7305">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const Yn={text:"--pass-card-text",sub:"--pass-card-sub",copyright:"--pass-card-copyright"},fo=new WeakMap;function o4(e){if(e)return fo.get(e)}function kn(e,t){e&&(e.style.setProperty(Yn.text,t.text),e.style.setProperty(Yn.sub,t.sub),t.copyrightColor&&e.style.setProperty(Yn.copyright,t.copyrightColor),fo.set(e,t))}function Nn(e){e&&(e.style.removeProperty(Yn.text),e.style.removeProperty(Yn.sub),e.style.removeProperty(Yn.copyright),fo.delete(e))}const $l={text:"var(--color-pureBlack)",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function Rl(e={}){const t=Bt($l,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-two-circle","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-two-circle__c1"}),n.jsx("div",{className:"pass-card-bg-two-circle__c3"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-two-circle__symbol",style:{"--symbol-url":`url("${Ll}")`}})]})}const Pl="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464Z";var Ta='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2175_65181)">%0A<path d="M75.2535 24.7464C68.7892 18.2821 59.8606 14.2857 49.9999 14.2857C40.1392 14.2857 37.5214 24.5964 31.0606 31.0607C24.5964 37.525 14.2856 40.1893 14.2856 50C14.2856 59.8107 18.2821 68.7893 24.7464 75.2536C31.2106 81.7178 40.1392 85.7143 49.9999 85.7143C59.8606 85.7143 68.7892 81.7178 75.2535 75.2536C81.7178 68.7893 85.7142 59.8607 85.7142 50C85.7142 40.1393 81.7178 31.2107 75.2535 24.7464ZM62.6285 62.6286C59.3964 65.8607 54.9321 67.8571 49.9999 67.8571C45.0678 67.8571 40.6035 65.8571 37.3714 62.6286C34.1392 59.3964 32.1428 54.9321 32.1428 50C32.1428 45.0678 34.1428 40.6036 37.3714 37.3714C40.6035 34.1393 45.0678 32.1428 49.9999 32.1428C54.9321 32.1428 59.3964 34.1428 62.6285 37.3714C65.8606 40.6036 67.8571 45.0678 67.8571 50C67.8571 54.9321 65.8571 59.3964 62.6285 62.6286Z" fill="url(%23paint0_linear_2175_65181)"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2175_65181" x1="29.6392" y1="29.6393" x2="75.2535" y2="75.2536" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2175_65181">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const s4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"},i4=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function Fl(e={}){const t=Bt(s4,kn,Nn),a="var(--color-main)",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:i4.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:Pl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const l4={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",logoColor:"_white",copyrightColor:"#ffffff"},u4=[{scale:1,opacity:.55},{scale:2,opacity:.4},{scale:3.1,opacity:.28},{scale:4.5,opacity:.18},{scale:6,opacity:.1}];function c4(e={}){const t=Bt(l4,kn,Nn),a="#ffffff",r=270,i=170;return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-sound-move-v1","aria-hidden":"true",children:[n.jsx("svg",{className:"pass-card-bg-sound-move-v1__svg",viewBox:"0 0 300 189",preserveAspectRatio:"xMidYMid meet",xmlns:"http://www.w3.org/2000/svg",children:u4.map(({scale:s,opacity:l},u)=>n.jsx("g",{transform:`translate(${r} ${i}) scale(${s}) translate(-50 -50)`,opacity:l,children:n.jsx("path",{d:Pl,fill:"none",stroke:a,strokeWidth:"1.5",vectorEffect:"non-scaling-stroke"})},u))}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-move-v1__symbol",style:{"--symbol-url":`url("${Ll}")`}})]})}const d4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function p4(e={}){const t=Bt(d4,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk__shape pass-card-bg-talk__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const m4={Logo_speechear_kr:{"":nr,_white:Qb,_textWhite:e4,_black:t4},Logo_speechearManager_kr:{"":Co,_white:n4,_textWhite:a4,_black:r4}};function h4(e,t){if(e)return m4[e]?.[t??""]??void 0}const C4={speechear:nr,manager:Co},f4={speechear:"Logo_speechear_kr",manager:"Logo_speechearManager_kr"},Il=10;function g4(e){return e<=0?0:e>=86400?Math.floor(e/86400)*86400:e>=3600?Math.floor(e/3600)*3600:e>=60?Math.floor(e/60)*60:Math.floor(e)}function Ol(e,t){if(e<=0)return t("passCard.remainingSecond",{n:0});const a=Math.floor(e/86400);if(a>0)return t("passCard.remainingDay",{n:a});const r=Math.floor(e/3600);if(r>0)return t("passCard.remainingHour",{n:r});const i=Math.floor(e/60);return i>0?t("passCard.remainingMinute",{n:i}):t("passCard.remainingSecond",{n:Math.floor(e)})}function b4(e,t,a){if(e==="manager"){const r=/년/.test(t)||/yr|year/i.test(t)||/1년|365/.test(t),i=a==="\uC624\uD508\uD2B9\uAC00"||a===$t.t("passCard.specialLabel");return r?n.jsx(p4,{}):i?n.jsx(c4,{}):n.jsx(Fl,{})}return n.jsx(Rl,{})}function Hl({ariaLabel:e,product:t,showPrice:a=!1,plan:r,type:i,endDate:s,remainingSeconds:l,endInclusive:u=!1,state:c="active",bg:d,bgOnly:m=!1,textColor:p,subColor:C,copyrightColor:y,logoSrc:v,label:g,price:h,originalPrice:x,discountLabel:f,onUse:w,onRefund:b,onDelete:B}){const{t:_}=xe.useTranslation(),A=t?Ml(t):void 0,k=i??A?.type??"speechear",N=r??A?.plan??_("passCard.planSuffix","\uC774\uC6A9\uAD8C"),S=g??A?.label,E=h??(a?A?.price:void 0),O=x??(a?A?.originalPrice:void 0),F=f??A?.discountLabel,Y=o.useMemo(()=>{if(E)return null;const K=t?.durationDays??Jb(t?.code);if(!K||K<=0)return l!=null?{percent:null,remainingLabel:Ol(l,_)}:null;const Q=K*86400;let pe;if(l!=null)pe=l;else if((c==="active"||c==="expired")&&s){const ne=new Date(s).getTime();if(Number.isNaN(ne))return null;const le=/^(\d{4})-(\d{2})-(\d{2})/.exec(String(s)),Ce=/^(\d{4})-(\d{2})-(\d{2})/.exec(Ba()),ge=Math.round(le&&Ce?(Date.UTC(+le[1],+le[2]-1,+le[3])-Date.UTC(+Ce[1],+Ce[2]-1,+Ce[3]))/864e5:(ne-Date.now())/864e5);pe=Math.max(0,u?ge+1:ge)*86400}else c==="expired"?pe=0:pe=Q;const De=g4(pe),ye=Math.max(0,Math.min(100,Math.floor(Math.min(De,Q)/Q*100)));return c==="pending"&&ye>=100?null:{percent:ye,remainingLabel:c==="expired"?_("passCard.expired","\uB9CC\uB8CC\uB428"):Ol(pe,_)}},[E,c,s,l,u,t?.durationDays,t?.code,_]),M=o.useRef(null),[L,P]=o.useState({}),[G,U]=o.useState(null),z=!!(w||b||B),q=o.useRef(!1),$=o.useRef(void 0),[V,H]=o.useState(v);o.useLayoutEffect(()=>{H(v)},[v]),o.useLayoutEffect(()=>{const K=M.current;K&&(p!==void 0&&K.style.setProperty("--pass-card-text",p),C!==void 0&&K.style.setProperty("--pass-card-sub",C),y!==void 0&&K.style.setProperty("--pass-card-copyright",y))},[p,C,y]),o.useLayoutEffect(()=>{const K=M.current;if(!K)return;const Q=o4(K);if(!v){const pe=f4[k],De=c==="expired"?"_black":Q?.logoColor??"",ye=h4(pe,De);H(ye)}},[d,v,k,c]);const T=K=>{const Q=M.current;if(!Q)return null;const{left:pe,top:De,width:ye,height:ne}=Q.getBoundingClientRect(),le=(K.clientX-pe)/ye-.5;return{rotateX:-((K.clientY-De)/ne-.5)*Il,rotateY:le*Il}},D=(K,Q)=>{const pe=Q*-.7,De=K*.7+10,ye=20+(Math.abs(K)+Math.abs(Q))*.4;return`${pe}px ${De}px ${ye}px rgba(0, 0, 0, 0.18)`},R=o.useCallback(K=>{if(la())return;q.current=!0,clearTimeout($.current),$.current=setTimeout(()=>{q.current=!1},200);const Q=T(K);Q&&P({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:D(Q.rotateX,Q.rotateY),transition:"transform 0.25s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.25s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),I=o.useCallback(K=>{if(la())return;const Q=T(K);if(!Q)return;const pe=q.current?"transform 0.2s ease, box-shadow 0.2s ease":"none";P({transform:`perspective(800px) rotateX(${Q.rotateX}deg) rotateY(${Q.rotateY}deg) scale3d(1.03, 1.03, 1.03)`,boxShadow:D(Q.rotateX,Q.rotateY),transition:pe})},[]),W=o.useCallback(()=>{clearTimeout($.current),q.current=!1,P({transform:"perspective(800px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1)",boxShadow:"0px 4px 16px rgba(0, 0, 0, 0.08)",transition:"transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.5s cubic-bezier(0.23, 1, 0.32, 1)"})},[]),ee=o.useCallback(()=>U(null),[]),oe=o.useMemo(()=>{const K=_("passCard.planSuffix","\uC774\uC6A9\uAD8C"),Q=N.replace("\uC774\uC6A9\uAD8C","").replace(K==="\uC774\uC6A9\uAD8C"?"":K,"").trim(),pe=Q.match(/^(.*?)(일|년)$/);return pe?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"h0 pass-card__plan-number",children:pe[1]}),n.jsx("span",{className:"h5b pass-card__plan-unit",children:pe[2]==="\uB144"?_("passCard.unitYear","\uB144"):_("passCard.unitDay","\uC77C")})]}):n.jsx("span",{className:"h0",children:Q})},[N,_]),ce=o.useMemo(()=>{const K=oa(E);if(!K)return null;const Q=K.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!Q)return n.jsx("span",{className:"h1",children:K});const[,pe,De,ye]=Q;return n.jsxs(n.Fragment,{children:[pe&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:pe}),n.jsx("span",{className:"h1 pass-card__price-amount",children:De}),ye.trim()&&n.jsx("span",{className:"h5 pass-card__price-symbol",children:ye.trim()})]})},[E]),J=o.useCallback(()=>{z&&U(K=>{if(K)return null;const Q=M.current?.getBoundingClientRect();if(!Q)return null;const pe=50;return{left:Q.left,right:Q.right,width:Q.width,height:Q.height,x:Q.x,y:Q.y+pe,top:Q.top+pe,bottom:Q.bottom+pe}})},[z]),re=o.useCallback(K=>{z&&(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),J())},[z,J]),Ne=[{items:[...w?[{label:_("passCard.menu.use","\uC0AC\uC6A9\uD558\uAE30"),icon:"play",onClick:()=>{w(),U(null)},closeOnSelect:!0}]:[],...b?[{label:_("passCard.menu.refund","\uD658\uBD88\uD558\uAE30"),icon:"rotate-ccw",onClick:()=>{b(),U(null)},closeOnSelect:!0}]:[],...B?[{label:_("passCard.menu.delete","\uC0AD\uC81C\uD558\uAE30"),icon:"trash-2",onClick:()=>{B(),U(null)},closeOnSelect:!0}]:[]]}];return n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card-frame",children:n.jsxs("div",{ref:M,className:`pass-card pass-card--${c}${z?" pass-card--clickable":""}`,style:L,onMouseEnter:R,onMouseMove:I,onMouseLeave:W,onPointerUp:K=>{K.pointerType==="touch"&&W()},onPointerCancel:K=>{K.pointerType==="touch"&&W()},onClick:J,onKeyDown:z?re:void 0,role:z?"button":void 0,tabIndex:z?0:void 0,"aria-label":e,"aria-haspopup":z?"menu":void 0,"aria-expanded":z?!!G:void 0,children:[d??b4(k,N,S),!m&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pass-card__top",children:n.jsxs("div",{className:"pass-card__top-left",children:[n.jsx("img",{src:V??C4[k],className:"pass-card__logo",alt:k==="manager"?_("header.logoManager","\uB9D0\uADC0\uB9E4\uB2C8\uC800 \uB85C\uACE0"):_("header.logoMalgwi","\uB9D0\uADC0 \uB85C\uACE0")}),n.jsxs("div",{className:"pass-card__plan",children:[n.jsx("div",{children:oe}),n.jsx("span",{className:"h5b pass-card__plan-suffix",children:S?_("passCard.labeledPlan",{label:S}):_("passCard.planSuffix","\uC774\uC6A9\uAD8C")})]})]})}),E?n.jsxs("div",{className:"pass-card__price-area",children:[F&&n.jsx("span",{className:"pass-card__discount body-3",children:F}),n.jsxs("div",{className:"pass-card__price",children:[O&&n.jsx("span",{className:"pass-card__price-original body-3",children:oa(O)}),ce]})]}):Y?n.jsxs("div",{className:"pass-card__usage",children:[n.jsx("span",{className:"h5b pass-card__usage-remaining",children:Y.remainingLabel}),Y.percent!=null&&n.jsxs("span",{className:"pass-card__usage-percent",children:[n.jsx("span",{className:"h1 pass-card__usage-value",children:Y.percent}),n.jsx("span",{className:"h5b pass-card__usage-symbol",children:"%"})]})]}):n.jsx("div",{className:"pass-card__copyright caption-2","aria-hidden":"true",children:"\xA9 IHAB Corp. All rights reserved."})]})]})}),G&&n.jsx(cn,{anchorRect:G,onClose:ee,ariaLabel:_("tooltip.menu","\uBA54\uB274"),children:n.jsx(ja,{columns:Ne,onClose:ee,size:"small"})})]})}const y4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#1a1a1a"};function v4(e={}){const t=`passcard-sound-line-grad-${o.useId()}`,a=Bt(y4,kn,Nn);return n.jsxs("div",{ref:a,className:"pass-card-bg pass-card-bg-sound-line","aria-hidden":"true",children:[n.jsxs("svg",{className:"pass-card-bg-sound-line__svg",viewBox:"0 0 500 300",preserveAspectRatio:"xMidYMid slice",xmlns:"http://www.w3.org/2000/svg",children:[n.jsx("defs",{children:n.jsxs("linearGradient",{id:t,x1:"0",y1:"0",x2:"1",y2:"0",children:[n.jsx("stop",{offset:"20%",stopColor:"var(--color-main)"}),n.jsx("stop",{offset:"80%",stopColor:"var(--color-sub)"})]})}),n.jsx("g",{transform:"translate(25, 45)",children:n.jsx("path",{d:"M -30 150 C 40 80, 100 220, 160 150 S 280 80, 340 150 S 460 220, 510 150",fill:"none",stroke:`url(#${t})`,strokeWidth:"50",strokeLinecap:"round"})})]}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-sound-line__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}const x4={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"var(--color-main)"};function _4(e={}){const t=Bt(x4,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-talk-v1","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--left"}),n.jsx("div",{className:"pass-card-bg-talk-v1__shape pass-card-bg-talk-v1__shape--right"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-talk-v1__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}function w4(e,t){if(e){if(t==="manager_pro")return n.jsx(_4,{});if(t==="manager_standard")return n.jsx(v4,{});if(t==="manager_lite")return n.jsx(Fl,{})}}function A4(e){const t=oa(e);if(!t)return null;const a=t.match(/^([^\d]*)([\d.,]+)(.*)$/);if(!a)return t;const[,r,i,s]=a;return n.jsxs(n.Fragment,{children:[r&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:r}),i,s.trim()&&n.jsx("span",{className:"payment-plan__pricing-symbol h4",children:s.trim()})]})}function B4(e){const{t}=xe.useTranslation(),a=t("payment.plan.tierFallback",{defaultValue:"\uC774\uC6A9\uAD8C"}),r=t("payment.plan.openPromo",{defaultValue:"\uC624\uD508 \uD2B9\uAC00"}),{plan:i,onSelect:s,period:l="monthly",ownedCodes:u}=e||{},c=b=>!!b&&!!u?.includes(b),d=b=>b.onceOnly??/오픈\s*특가/.test(b.label??""),m=(i.tiers||[]).some(b=>d(b)&&c(b.code)),p=b=>{const B=b.prices?b.prices[l]:b.price;return B?(i.tiers||[]).some(_=>!!_.badge&&_.originals?.[l]===B):!1},C=i.colorToken?`var(--color-${i.colorToken})`:"var(--color-gray)",y=t("payment.plan.freePrice","\uBB34\uB8CC"),v=t("payment.products.mgrEnterprise.tier.price","\uBB38\uC758"),g=b=>b.prices?b.prices[l]:b.price,h=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const B=g(b);return B==="\uBB34\uB8CC"||B===y||B==="0\uC6D0"||typeof B=="string"&&/\d/.test(B)&&!/[1-9]/.test(B)}),x=(i.tiers||[]).length>0&&(i.tiers||[]).every(b=>{const B=g(b);return B==="\uBB38\uC758"||B===v}),f=i.group==="org",w=f?"manager":"speechear";return n.jsxs("div",{className:"payment-plan__card",style:{borderColor:C,"--plan-color":C},children:[i.cardBadge&&n.jsx("div",{className:"payment-plan__card-badge",children:n.jsx(kt,{label:i.cardBadge,variant:"main",size:"medium",fill:"soft"})}),n.jsxs("div",{className:"payment-plan__title",children:[n.jsx("p",{className:"payment-plan__quote body-3b",style:{color:C},children:i.quote||"\xA0"}),n.jsx("h3",{className:"payment-plan__title-heading h1",children:i.tier??i.title}),n.jsx("p",{className:"payment-plan__subtitle body-3",children:i.subtitle})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.recommendedFor","\uC774\uB7F0 \uBD84\uAED8 \uCD94\uCC9C\uD569\uB2C8\uB2E4.")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.recommendedFor||[]).map((b,B)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:C}}),b]},B))})]}),n.jsxs("div",{className:"payment-plan__box",children:[n.jsx("span",{className:"payment-plan__box-title body-3b",children:t("payment.plan.features","\uD575\uC2EC \uAE30\uB2A5")}),n.jsx("ul",{className:"payment-plan__feature-list",children:(i.features||[]).map((b,B)=>n.jsxs("li",{className:"payment-plan__feature-item body-3",children:[n.jsx(at,{icon:"check",size:18,className:"payment-plan__feature-check",wrapperStyle:{color:C}}),b]},B))})]}),n.jsx("div",{className:"payment-plan__card-pricing",children:h?null:x?n.jsx(me,{htmlType:"button",className:"payment-plan__contact-button",label:t("payment.plan.contact",{defaultValue:"\uBB38\uC758\uD558\uAE30"}),variant:"main",size:56,onClick:()=>i.tiers?.[0]&&s?.({...i.tiers[0],productId:i.id,productTitle:i.title})}):n.jsx(n.Fragment,{children:n.jsx("div",{className:"payment-plan__pricing-list",children:(i.tiers||[]).map(b=>{const B=b.label||a,_=d(b),A=_||b.openPromo===!0,k=B.replace(/^오픈\s*특가\s*/,"")||a,N=b.prices?b.prices[l]:b.price,S=b.badge?A?`${r}
|
|
852
|
+
${b.badge}`:b.badge:void 0;if(_&&c(b.code))return null;if(!b.badge&&!m)return p(b)?null:n.jsxs("div",{className:`payment-plan__pricing-row payment-plan__pricing-row--static${b.highlight?" payment-plan__pricing-row--highlight":""}`,children:[n.jsx("div",{className:"payment-plan__pricing-row-title",children:n.jsx("div",{className:"payment-plan__pricing-row-label h5b",children:b.label})}),n.jsx("div",{className:"payment-plan__pricing-row-price",children:n.jsx("span",{className:"payment-plan__pricing-current h1",children:A4(N)})})]},b.id);const E=i.tier??(f?i.title:void 0),O=n.jsx(Hl,{showPrice:!0,product:{type:w,code:b.code,name:k,label:E,price:N,originalPrice:b.originals?.[l]??void 0,discountLabel:S},bg:w4(f,i.id)}),F=()=>s?.({...b,productId:i.id,productTitle:i.title,preview:O});return n.jsx("div",{className:"payment-plan__pricing-card",onClick:F,onKeyDown:s?Y=>{Y.target===Y.currentTarget&&(Y.key==="Enter"||Y.key===" ")&&(Y.preventDefault(),F())}:void 0,role:s?"button":void 0,tabIndex:s?0:void 0,children:O},b.id)})})})})]})}function k4({variant:e="default"}){return n.jsxs("div",{className:`pass-card-bg pass-card-bg--${e}`,"aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--1"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--2"}),n.jsx("div",{className:"pass-card-bg__circle pass-card-bg__circle--3"})]})}var go='data:image/svg+xml,<svg width="264" height="100" viewBox="0 0 264 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2079_3030)">%0A<path d="M60.9019 24.7464C54.4446 18.2821 45.5257 14.2857 35.6757 14.2857C25.8256 14.2857 23.2106 24.5964 16.7569 31.0607C10.2996 37.5214 0 40.1857 0 50C0 59.8143 3.99211 68.7893 10.4494 75.2536C16.9067 81.7178 25.8256 85.7143 35.6757 85.7143C45.5257 85.7143 54.4446 81.7178 60.9019 75.2536C67.3592 68.7893 71.3513 59.8607 71.3513 50C71.3513 40.1393 67.3592 31.2107 60.9019 24.7464ZM48.2906 62.6286C45.0619 65.8607 40.6025 67.8571 35.6757 67.8571C30.7489 67.8571 26.2894 65.8571 23.0608 62.6286C19.8321 59.3964 17.8378 54.9321 17.8378 50C17.8378 45.0678 19.8357 40.6036 23.0608 37.3714C26.2894 34.1393 30.7489 32.1428 35.6757 32.1428C40.6025 32.1428 45.0619 34.1428 48.2906 37.3714C51.5192 40.6036 53.5135 45.0678 53.5135 50C53.5135 54.9321 51.5157 59.3964 48.2906 62.6286Z" fill="url(%23paint0_linear_2079_3030)"/>%0A<path d="M106.735 74.8322H93.6274V24.8322H106.735V74.8322Z" fill="%23111111"/>%0A<path d="M113.495 24.8322H126.602V44.5143H145.022V24.8322H158.197V74.8322H145.022V55.15H126.602V74.8322H113.495V24.8322Z" fill="%23111111"/>%0A<path d="M163.027 74.8322L179.652 24.8322H197.519L214.076 74.8322H199.934L196.969 65.025H180.205L177.241 74.8322H163.031H163.027ZM193.933 55.0786L188.76 38.2964H188.346L183.241 55.0786H193.933Z" fill="%23111111"/>%0A<path d="M218.906 24.8322H240.29C251.674 24.8322 257.675 29.7357 257.675 37.4C257.675 42.925 253.743 47.1393 248.085 48.3107V48.7929C254.364 49 259.605 53.6286 259.605 60.7393C259.605 68.8893 252.983 74.8286 242.081 74.8286H218.902V24.8322H218.906ZM244.157 40.1643C244.157 36.9857 241.674 35.1929 238.085 35.1929H232.013V45.1393H237.878C241.535 45.1393 244.157 43.3429 244.157 40.1679V40.1643ZM245.741 59.0857C245.741 55.425 243.119 53.3536 238.913 53.3536H232.013V64.2643H238.706C243.397 64.2643 245.741 62.4679 245.741 59.0857Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<linearGradient id="paint0_linear_2079_3030" x1="15.337" y1="29.6393" x2="60.9512" y2="75.2042" gradientUnits="userSpaceOnUse">%0A<stop offset="0.2" stop-color="%23499CDF"/>%0A<stop offset="0.8" stop-color="%234DCDC0"/>%0A</linearGradient>%0A<clipPath id="clip0_2079_3030">%0A<rect width="264" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const zl={text:"#1a1a1a",sub:"var(--color-lightGray)",logoBase:"Logo_speechear_kr",copyrightColor:"#c9c9c9"};function N4(){const e=Bt(zl,kn,Nn);return n.jsx("div",{ref:e,className:"pass-card-bg pass-card-bg-ihab","aria-hidden":"true",children:n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-ihab__symbol-top",style:{"--symbol-url":`url("${go}")`}})})}const Vl={text:"#ffffff",sub:"var(--color-lightGray)",logoBase:"Logo_speechearManager_kr",logoColor:"_white",copyrightColor:"#ffffff"};function E4(e={}){const t=Bt(Vl,kn,Nn);return n.jsxs("div",{ref:t,className:"pass-card-bg pass-card-bg-left-color-grid","aria-hidden":"true",children:[n.jsx("div",{className:"pass-card-bg-left-color-grid__bar"}),n.jsx("div",{className:"pass-card-bg-left-color-grid__grid"}),n.jsx("span",{className:"pass-card-bg__symbol pass-card-bg-left-color-grid__symbol",style:{"--symbol-url":`url("${Ta}")`}})]})}function Wl({keys:e,anchor:t="top-right",scale:a,className:r=""}){const i=Array.isArray(e)?e:[e];return n.jsx("span",{className:we("shortcut-badge",`shortcut-badge--${t}`,r),style:a===void 0?void 0:{"--shortcut-badge-scale":String(a)},children:i.map((s,l)=>n.jsxs("span",{className:"shortcut-badge__group",children:[l>0&&n.jsx("span",{className:"shortcut-badge__plus",children:"+"}),n.jsx("kbd",{className:"shortcut-badge__key",children:s})]},`${s}-${l}`))})}const Ma=(e,t,a)=>e+(t-e)*a;function D4({speakers:e,size:t=300,viewT:a=0,activeSpeakerId:r=null,playedIds:i,selectedId:s=null,answerId:l=null,showFeedback:u=!1,pulseSelected:c=!1,pulseSelectedDuration:d,pulseScale:m,clickable:p=!1,onSelectSpeaker:C,buttonSize:y=40,showIcon:v=!0,onCenterClick:g,centerLabel:h,centerDisabled:x=!1,centerAttention:f=!1,shortcutAnchor:w="top-right",shortcutScale:b,scaleShortcut:B=!1}){const{t:_}=xe.useTranslation(),A=Math.max(0,Math.min(1,a)),k=t/2,N=110/300,S=.18,E=K=>t*(N+(K-1)*S),O=K=>{const Q=E(K.row??1),pe=K.angleDeg*Math.PI/180;return{x:k+Q*Math.cos(pe),y:k+Q*Math.sin(pe)}},F=Math.max(...e.map(K=>K.row??1),1),Y=t*.08,M=t*.1,L=t*.24,P=t-2*Y,G=t-M-L,U=t-L/2,z=o.useMemo(()=>[...new Set(e.map(K=>K.deg))].sort((K,Q)=>K-Q),[e]),q=z.length,$=Math.max(68,q>1?P/(q-1):0),V=o.useMemo(()=>new Map(z.map((K,Q)=>[K,Q])),[z]),H=K=>{const Q=V.get(K.deg)??0,pe=k+(Q-(q-1)/2)*$,De=F>1?Math.min(68,G/(F-1)):0,ye=De*(F-1),ne=M+(G-ye)/2,le=F===1?M+G*.4:ne+(F-(K.row??1))*De;return{x:pe,y:le}},T=K=>{const Q=O(K),pe=H(K);return{x:Ma(Q.x,pe.x,A),y:Ma(Q.y,pe.y,A)}},D={x:k,y:Ma(k,U,A)},R=Math.round(y*1.2),I=Math.round(Math.max(16,Math.min(80,y*.7))),W=[],ee=new Map;for(const K of e){const Q=K.row??1;ee.has(Q)||ee.set(Q,[]),ee.get(Q).push(K)}for(const[K,Q]of ee.entries()){if(Q.length<2)continue;const pe=[...Q].sort((qe,mt)=>qe.deg-mt.deg),De=pe.map(qe=>T(qe)),ye=pe.map(qe=>qe.deg),ne=ye[ye.length-1]-ye[0],le=ne/(ye.length-1),Ce=360-ne,ge=pe.length>=3&&le>0&&Ce<=le*1.5,fe=Math.round(E(K)*1e3)/1e3,$e=(qe,mt,ct,rt)=>{const Ct=(mt.angleDeg-qe.angleDeg+540)%360-180;if(Ct===0)return`L ${rt.x} ${rt.y}`;if(A===0)return`A ${fe} ${fe} 0 0 ${Ct>0?1:0} ${rt.x} ${rt.y}`;const Be=(qe.angleDeg+Ct/2)*Math.PI/180,We={x:k+fe*Math.cos(Be),y:k+fe*Math.sin(Be)},_e={x:(ct.x+rt.x)/2,y:(ct.y+rt.y)/2},Ue={x:Ma(We.x,_e.x,A),y:Ma(We.y,_e.y,A)},Ae={x:2*Ue.x-_e.x,y:2*Ue.y-_e.y};return`Q ${Ae.x} ${Ae.y} ${rt.x} ${rt.y}`},Ve=ge?[...pe,pe[0]]:pe,je=ge?[...De,De[0]]:De;let Fe=`M ${je[0].x} ${je[0].y}`;for(let qe=1;qe<je.length;qe++)Fe+=" "+$e(Ve[qe-1],Ve[qe],je[qe-1],je[qe]);W.push({key:`arc-${K}`,d:Fe})}const oe=o.useMemo(()=>new Set(i??[]),[i]),ce=K=>({idle:"",active:_("soundCompass.state.active","\uC18C\uB9AC \uB098\uB294 \uC911"),played:_("soundCompass.state.played","\uB4E4\uC74C"),correct:_("soundCompass.state.correct","\uC815\uB2F5"),wrong:_("soundCompass.state.wrong","\uC624\uB2F5")})[K],J=K=>{if(r===K.id)return"active";if(u){if(K.id===l)return"correct";if(K.id===s&&s!==l)return"wrong"}return oe.has(K.id)?"played":"idle"},re=K=>r===K.id?"loop":u?K.id===l?"loop":null:c&&K.id===s?"once":null,Ne=(K,Q)=>{switch(K){case"played":case"correct":return n.jsx(ys,{size:Q});case"wrong":return n.jsx(Ds,{size:Q});default:return n.jsx(Es,{size:Q})}};return n.jsx("div",{className:"sound-compass",children:n.jsxs("div",{className:"sound-compass__compass-wrap",style:{width:t,height:t},children:[n.jsxs("svg",{width:t,height:t,viewBox:`0 0 ${t} ${t}`,className:"sound-compass__svg",children:[A===0&&e.map(K=>{const{x:Q,y:pe}=T(K);return n.jsx("line",{x1:D.x,y1:D.y,x2:Q,y2:pe,stroke:"#dde3ec",strokeWidth:"1"},K.id)}),W.map(K=>n.jsx("path",{d:K.d,fill:"none",stroke:"#dde3ec",strokeWidth:"1"},K.key))]}),f&&!x&&n.jsx("div",{className:"sound-compass__pulse sound-compass__pulse--active sound-compass__pulse--center",style:{width:R,height:R,left:D.x-R/2,top:D.y-R/2}}),g?n.jsx("button",{type:"button",className:`sound-compass__center sound-compass__center--button${x?" sound-compass__center--disabled":""}`,style:{width:R,height:R,left:D.x,top:D.y},"aria-label":h,"aria-disabled":x||void 0,tabIndex:x?-1:0,onClick:x?void 0:g,children:n.jsx(Er,{size:I,color:"currentColor",strokeWidth:1.5})}):n.jsx("div",{className:"sound-compass__center",style:{width:R,height:R,left:D.x,top:D.y},children:n.jsx(Er,{size:I,color:"currentColor",strokeWidth:1.5})}),e.map((K,Q)=>{const{x:pe,y:De}=T(K),ye=J(K),ne=re(K),le={...b!==void 0||B?{"--shortcut-badge-scale":String(b??Math.max(.75,Math.min(3,y/56)))}:null,pointerEvents:p?"auto":"none",cursor:p?"pointer":"default",zIndex:ye!=="idle"?10:1},Ce=y,ge=Math.round(Math.max(10,Math.min(56,Ce*.38))),fe=Math.round(Math.max(7,Math.min(18,Ce*.2))),$e=Math.round(Math.max(10,Math.min(56,Ce*.4))),Ve=v==="answered"&&(ye==="played"||ye==="correct"||ye==="wrong"),je=v===!0||Ve,Fe=!Ve;return n.jsxs("div",{className:"sound-compass__speaker-pos",style:{...le,left:pe-Ce/2,top:De-Ce/2},children:[ne&&n.jsx("div",{className:`sound-compass__pulse sound-compass__pulse--${ye}`+(ne==="once"?" sound-compass__pulse--once":""),style:{width:Ce,height:Ce,...ne==="once"&&d!==void 0?{"--sc-pulse-duration-once":`${d}ms`}:null,...m!==void 0?{"--sc-pulse-scale":String(m)}:null}}),n.jsxs("button",{type:"button",tabIndex:p?0:-1,"aria-disabled":p?void 0:!0,onClick:p?()=>C?.(K.id):void 0,className:`sound-compass__speaker-btn sound-compass__speaker-btn--${ye}`,style:{width:Ce,height:Ce},"aria-label":ce(ye)?`${K.label}, ${ce(ye)}`:K.label,"aria-pressed":s!=null?K.id===s:void 0,children:[je&&Ne(ye,ge),Fe&&n.jsx("span",{className:"sound-compass__speaker-number",style:{fontSize:v===!0?fe:$e},children:Q+1})]}),K.shortcut&&n.jsx(Wl,{keys:K.shortcut,anchor:w,className:"sound-compass__speaker-shortcut"})]},K.id)})]})})}function S4({children:e,position:t="top-left",size:a=24,className:r=""}){return n.jsx("span",{className:we("circle-badge","circle-badge--number",`circle-badge--${a}`,`circle-badge--${t}`,r),children:e})}function j4({orientation:e="horizontal",label:t,className:a=""}){const r=we("divider",`divider--${e}`,t&&e==="horizontal"?"divider--labeled":"",a);return e==="vertical"?n.jsx("div",{className:r,role:"separator","aria-orientation":"vertical"}):t?n.jsxs("div",{className:r,role:"separator","aria-orientation":"horizontal",children:[n.jsx("span",{className:"divider__line"}),n.jsx("span",{className:"divider__label caption-1",children:t}),n.jsx("span",{className:"divider__line"})]}):n.jsx("div",{className:r,role:"separator","aria-orientation":"horizontal"})}function ql({checked:e,onChange:t,name:a,value:r,disabled:i=!1,label:s,className:l=""}){const u=o.useId();return n.jsxs("label",{className:`radio${i?" radio--disabled":""} ${l}`.trim(),htmlFor:u,children:[n.jsx("input",{id:u,type:"radio",name:a,value:r,checked:e,disabled:i,onChange:c=>t?.(c.target.checked)}),n.jsx("span",{className:"radio__dot"}),s&&n.jsx("span",{className:"radio__label body-2",children:s})]})}function T4({options:e,value:t,onChange:a,name:r,disabled:i=!1,direction:s="vertical",className:l="",ariaLabel:u}){const c=o.useId(),d=r??`radio-group-${c}`;return n.jsx("div",{className:`radio-group radio-group--${s} ${l}`.trim(),role:"radiogroup","aria-label":u,children:e.map(m=>n.jsx(ql,{name:d,value:m.value,checked:t===m.value,disabled:i||m.disabled,label:m.label,onChange:p=>{p&&a?.(m.value)}},m.value))})}const M4={info:"info",success:"check-circle",warning:"alert-triangle",danger:"alert-circle"};function L4({tone:e="info",title:t,message:a,children:r,dismissible:i=!1,onDismiss:s,live:l,className:u=""}){const{t:c}=xe.useTranslation(),[d,m]=o.useState(!1),p=o.useRef(null),C=o.useCallback(()=>{const f=p.current;f&&f.contains(document.activeElement)&&Ja(f),m(!0),s?.()},[s]);if(d)return null;const y=we("alert",`alert--${e}`,u),v=l??(e==="danger"||e==="warning"?"assertive":"polite"),g=v==="assertive"?"alert":v==="polite"?"status":void 0,h=!!t,x=!!(a||r);return n.jsxs("div",{ref:p,className:y,role:g,children:[n.jsxs("div",{className:"alert__body",children:[n.jsxs("div",{className:"alert__header",children:[n.jsx(at,{icon:M4[e],size:20,className:"alert__icon"}),h&&n.jsx("span",{className:"alert__title body-2",children:t}),!h&&x&&n.jsx("div",{className:"alert__message body-3",children:a||r})]}),h&&x&&n.jsx("div",{className:"alert__message alert__message--indented body-3",children:a||r})]}),i&&n.jsx("button",{type:"button",className:"alert__dismiss",onClick:C,"aria-label":c("common.close","\uB2EB\uAE30"),children:"\xD7"})]})}const $4={ready:"search",guide:"info",error:"circle-alert"};function R4(e,t){const a=t.filter(Boolean);if(a.length===0)return e;const r=[];let i=0,s=0;for(const l of a){const u=e.indexOf(l,i);u<0||(u>i&&r.push(e.slice(i,u)),r.push(n.jsx("strong",{className:"search-summary__em body-2",children:l},s++)),i=u+l.length)}return i<e.length&&r.push(e.slice(i)),r}function P4({status:e="guide",label:t,children:a,emphasis:r,icon:i,className:s=""}){const l=i===!1?null:i??$4[e],u=we("search-summary",`search-summary--${e}`,s),c=t??a,d=typeof c=="string"&&r&&r.length>0?R4(c,r):c;return n.jsxs("div",{className:u,role:"status","aria-live":"polite",children:[l!=null&&n.jsx(at,{icon:l,size:18,className:"search-summary__icon"}),n.jsx("span",{className:"search-summary__text body-2",children:d})]})}function La({title:e,items:t}){const{t:a}=xe.useTranslation(),{anchorRect:r,openAt:i,close:s}=Ea(),l=o.useRef(null),u=oo(!!r,(c,d)=>{c&&d?i(l.current?.querySelector("button")??d):s()},l);return n.jsxs("span",{ref:l,style:{display:"contents"},children:[n.jsx(me,{htmlType:"button",size:24,type:"dot",icon:"info",variant:"transparent-gray",useBorder:!1,selected:!!r,ariaLabel:a("common.info","\uC124\uBA85"),onPointerEnter:c=>{ia(c)||i(c.currentTarget)},onPointerLeave:c=>{ia(c)||s()},onClick:c=>{u.touchPress(c.currentTarget)},onFocus:c=>{la()||i(c.currentTarget)},onBlur:s}),r&&n.jsx(Gn,{title:e,items:t,showIndex:t.length>1,anchorRect:r,onClose:s})]})}function F4({items:e=[],value:t,onChange:a,className:r="",size:i=40}){const s=o.useId(),{t:l}=xe.useTranslation(),u=o.useRef(null),c=e.find(g=>!g.disabled)?.key,d=e.some(g=>g.key===t)?t:c??e[0]?.key,m=e.find(g=>g.key===d&&!g.disabled)?.key??c,p=()=>Array.from(u.current?.querySelectorAll('[role="tab"]:not(:disabled)')??[]),C=(g,h=p())=>{if(h.length===0)return;const x=(g%h.length+h.length)%h.length;h[x]?.focus(),h[x]?.click()},y=g=>{if(!["ArrowRight","ArrowDown","ArrowLeft","ArrowUp","Home","End"].includes(g.key))return;g.preventDefault();const h=p(),x=h.indexOf(g.currentTarget);g.key==="ArrowRight"||g.key==="ArrowDown"?C(x+1,h):g.key==="ArrowLeft"||g.key==="ArrowUp"?C(x-1,h):g.key==="Home"?C(0,h):C(h.length-1,h)},v=e.find(g=>g.key===d);return n.jsxs("div",{className:`tabs ${r}`.trim(),children:[n.jsx("div",{ref:u,className:`tabs__list tabs__list--${i}`,role:"tablist","aria-label":l("tabs.ariaLabel","\uD0ED"),children:e.map(g=>n.jsx("button",{id:`tabs__tab-${s}-${g.key}`,type:"button",role:"tab","aria-selected":g.key===d,"aria-controls":`tabs__panel-${s}-${g.key}`,disabled:g.disabled,tabIndex:g.key===m?0:-1,className:`tabs__tab body-2${g.key===d?" tabs__tab--active":""}`,onClick:()=>{g.key!==t&&a?.(g.key)},onKeyDown:y,children:g.label},g.key))}),v&&n.jsx("div",{id:`tabs__panel-${s}-${v.key}`,role:"tabpanel","aria-labelledby":`tabs__tab-${s}-${v.key}`,tabIndex:0,className:"tabs__panel",children:v.panel},v.key)]})}const I4={xs:12,sm:16,md:20,lg:28,xl:36};function O4(e){const t=e.trim().split(/\s+/).filter(Boolean);return t.length===0?"":t.length===1?[...t[0]].slice(0,2).join("").toUpperCase():([...t[0]][0]+[...t[t.length-1]][0]).toUpperCase()}function H4({src:e,name:t,size:a="md",shape:r="circle",className:i=""}){const{t:s}=xe.useTranslation(),[l,u]=o.useState(null),c=!!e&&l===e,d=t?O4(t):"",m=!!e&&!c,p=!m&&!!d,C=t||s("avatar.ariaLabel","\uC0AC\uC6A9\uC790 \uC544\uBC14\uD0C0");return n.jsxs("span",{className:`avatar avatar--${a} avatar--${r} ${i}`.trim(),role:"img","aria-label":C,children:[m&&n.jsx("img",{className:"avatar__image",src:e,alt:C,onError:()=>u(e??null)}),!m&&p&&n.jsx("span",{className:"avatar__initials","aria-hidden":"true",children:d}),!m&&!p&&n.jsx(at,{icon:"user-round",size:I4[a],className:"avatar__icon"})]})}function z4(e,t){if(!t)return!0;const a=t.split(",").map(s=>s.trim()).filter(Boolean);if(a.length===0)return!0;const r=e.name.toLowerCase(),i=e.type.toLowerCase();return a.some(s=>{const l=s.toLowerCase();return l.startsWith(".")?r.endsWith(l):l.endsWith("/*")?i.startsWith(l.slice(0,-1)):i===l})}function V4({onFilesSelected:e,accept:t,multiple:a=!1,disabled:r=!1,showFileList:i=!0,files:s,onRemove:l,className:u=""}){const{t:c}=xe.useTranslation(),d=o.useRef(null),[m,p]=o.useState(!1),[C,y]=o.useState([]),v=s??C,g=_=>{if(!_||_.length===0)return;const A=Array.from(_).filter(N=>z4(N,t));if(A.length===0)return;const k=a?A:A.slice(0,1);if(s===void 0){const N=a?[...v,...k]:k;y(N),e?.(N)}else e?.(k)},h=_=>{_.preventDefault(),!r&&p(!0)},x=_=>{_.preventDefault(),p(!1)},f=_=>{_.preventDefault(),p(!1),!r&&g(_.dataTransfer.files)},w=_=>{const A=_.target;try{g(A.files)}finally{A.value=""}},b=()=>{r||d.current?.click()},B=_=>{if(!r&&(l?.(_),s===void 0)){const A=v.filter((k,N)=>N!==_);y(A),l||e?.(A)}};return n.jsxs("div",{className:`file-upload ${u}`.trim(),children:[n.jsxs("div",{className:we("file-upload__dropzone",m&&"file-upload__dropzone--dragging",r&&"file-upload__dropzone--disabled"),role:"button",tabIndex:r?-1:0,"aria-disabled":r,onClick:b,onKeyDown:_=>{(_.key==="Enter"||_.key===" ")&&(_.preventDefault(),b())},onDragOver:h,onDragLeave:x,onDrop:f,children:[n.jsx(at,{icon:"upload",size:24,className:"file-upload__icon"}),n.jsx("span",{className:"file-upload__prompt body-2",children:c("fileUpload.dragPrompt","\uD30C\uC77C\uC744 \uC774\uACF3\uC5D0 \uB4DC\uB798\uADF8\uD558\uC5EC \uC5C5\uB85C\uB4DC")}),n.jsx("button",{type:"button",className:"file-upload__browse-button body-3",disabled:r,onClick:_=>{_.stopPropagation(),b()},children:c("fileUpload.browseButton","\uD30C\uC77C \uC120\uD0DD")}),n.jsx("input",{ref:d,type:"file",className:"file-upload__input",accept:t,multiple:a,disabled:r,onChange:w,tabIndex:-1})]}),i&&v.length>0&&n.jsx("ul",{className:"file-upload__list",children:v.map((_,A)=>n.jsxs("li",{className:"file-upload__list-item body-3",children:[n.jsx("span",{className:"file-upload__file-name body-3",children:_.name}),n.jsx("button",{type:"button",className:"file-upload__remove-button","aria-label":c("fileUpload.removeAriaLabel",{name:_.name}),disabled:r,onClick:()=>B(A),children:n.jsx(at,{icon:"x",size:14})})]},`${_.name}-${A}`))})]})}function W4({items:e,className:t=""}){const{t:a}=xe.useTranslation();return n.jsx("nav",{className:`breadcrumb ${t}`.trim(),"aria-label":a("breadcrumb.ariaLabel","\uC774\uB3D9 \uACBD\uB85C"),children:n.jsx("ol",{className:"breadcrumb__list",children:e.map((r,i)=>{const s=i===e.length-1;return n.jsxs("li",{className:"breadcrumb__item",children:[s?n.jsx("span",{className:"breadcrumb__current body-3","aria-current":"page",children:r.label}):r.href?n.jsx("a",{className:"breadcrumb__link body-3",href:r.href,target:r.target,rel:r.rel??(r.target==="_blank"?"noopener noreferrer":void 0),onClick:r.onClick,children:r.label}):r.onClick?n.jsx("button",{type:"button",className:"breadcrumb__link body-3",onClick:r.onClick,children:r.label}):n.jsx("span",{className:"breadcrumb__text body-3",children:r.label}),!s&&n.jsx(at,{icon:"chevron-right",size:14,className:"breadcrumb__separator"})]},i)})})})}const q4={small:14,medium:20,large:28};function U4({value:e,onChange:t,max:a=5,readOnly:r=!1,size:i="medium",ariaLabel:s,className:l=""}){const{t:u}=xe.useTranslation(),c=r||!t,[d,m]=o.useState(null),p=c?e:Number.isFinite(e)?Math.round(e):0,C=d??p,y=q4[i],v=_=>{_!==e&&t?.(_)},g=_=>{c||v(_)},h=_=>{c||la()||m(_)},x=o.useRef(null),f=_=>{const A=Math.min(a,Math.max(1,_));v(A),Array.from(x.current?.querySelectorAll("[data-star]")??[]).find(k=>k.dataset.star===String(A))?.focus()},w=_=>{if(!c){switch(_.key){case"ArrowRight":case"ArrowUp":f((p||0)+1);break;case"ArrowLeft":case"ArrowDown":f((p||1)-1);break;case"Home":f(1);break;case"End":f(a);break;default:return}_.preventDefault()}},b=p>=1&&p<=a?Math.round(p):1,B=()=>{c||m(null)};return n.jsx("div",{className:`rating rating--${i}${c?" rating--readOnly":""} ${l}`.trim(),ref:x,onKeyDown:w,role:c?"img":"radiogroup","aria-label":c?u("rating.valueLabel",{value:e,max:a}):s??u("rating.groupLabel","\uBCC4\uC810"),onMouseLeave:B,onPointerUp:_=>{_.pointerType==="touch"&&B()},onPointerCancel:_=>{_.pointerType==="touch"&&B()},children:Array.from({length:a},(_,A)=>{const k=A+1,N=Math.max(0,Math.min(1,C-A)),S=N>0&&N<1,E=n.jsxs("span",{className:"rating__star-wrap",children:[n.jsx(at,{icon:"star",size:y,className:"rating__star rating__star--empty"}),N>0&&n.jsx("span",{className:`rating__star-fill${S?" rating__star-fill--half":""}`,style:S?{width:`${N*100}%`}:void 0,children:n.jsx(at,{icon:"star",size:y,className:"rating__star rating__star--filled"})})]});return c?n.jsx("span",{className:"rating__item","aria-hidden":"true",children:E},k):n.jsx("button",{type:"button",className:"rating__item rating__item--interactive",role:"radio","aria-checked":p===k,"aria-label":u("rating.starLabel",{n:k}),"data-star":k,tabIndex:k===b?0:-1,onClick:()=>g(k),onMouseEnter:()=>h(k),children:E},k)})})}const G4=20,K4=["#499cdf","#4dcdc0","#2fae9e","#e6b94e","#d9534f","#e06b68","#bfc7d1"];function Y4({value:e,onChange:t,palette:a=K4,size:r=40,className:i="",ariaLabel:s}){const{t:l}=xe.useTranslation();return n.jsx("div",{className:`color-picker ${i}`.trim(),role:"group","aria-label":s,children:a.map(u=>{const c=e?.toLowerCase()===u.toLowerCase();return n.jsx("button",{type:"button",className:`color-picker__swatch color-picker__swatch--${r}`,style:{backgroundColor:u},onClick:()=>t(u),"aria-pressed":c,"aria-label":c?`${u} ${l("colorPicker.selected","\uC120\uD0DD\uB428")}`:u,children:c&&n.jsx(at,{icon:"check",size:G4,className:"color-picker__check"})},u)})})}function Ul({icon:e,label:t,tooltip:a,wrapperStyle:r,color:i,bgColor:s,useHover:l=!0,iconSize:u="medium"}){const{t:c}=xe.useTranslation(),d=u==="small",m=we("category-icon",d?"category-icon--small":""),p=d?16:20,C=o.useRef(null),[y,v]=o.useState(!1),g=o.useMemo(()=>{const k=r&&typeof r=="object"?{...r}:{};return!i&&!s?k:{...k,...i?{color:i,"--t-item-fg":i}:{},...s?{"--t-item-bg":s}:{}}},[r,i,s]),h=a||t,x=l&&!!h,[f,w]=o.useState(null);o.useLayoutEffect(()=>{y&&w(C.current?.getBoundingClientRect()??null)},[y]),o.useEffect(()=>{if(!l&&y)try{v(!1)}catch{}},[l,y]),o.useEffect(()=>{if(!y)return;const k=N=>{const S=C.current;if(!S)return;const E=N.target;E&&!S.contains(E)&&v(!1)};return document.addEventListener("pointerdown",k,!0),()=>document.removeEventListener("pointerdown",k,!0)},[y]);const b=o.useCallback(()=>{l&&v(!0)},[l]),B=o.useCallback(()=>{l&&v(!1)},[l]),_=o.useCallback(()=>v(!1),[]),A=o.useCallback(k=>{if(k.key==="Escape"){v(!1);return}(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),v(N=>!N))},[]);return n.jsxs("span",{ref:C,className:we("category-icon__wrap",x&&"category-icon__wrap--interactive"),onPointerEnter:b,onPointerLeave:B,onFocus:b,onBlur:B,onKeyDown:A,role:"button",tabIndex:0,"aria-label":typeof h=="string"?c("common.descriptionFor",{name:h,defaultValue:`${h} \uC124\uBA85`}):void 0,"aria-haspopup":!!h,"aria-expanded":y,"data-tooltip-ignore":!0,children:[n.jsx(at,{icon:e,label:t,className:m,imgClassName:"category-icon__image",maskClassName:"category-icon__mask",svgClassName:"category-icon__svg",wrapperStyle:g,size:p}),y&&h&&n.jsx(An,{anchorRect:f,text:typeof h=="string"?h:void 0,offset:8,onClose:_,className:"category-icon__tooltip",ariaLabel:typeof h=="string"?h:void 0})]})}let Pn=null;function ar(e){if(Pn&&Pn!==e)try{Pn()}catch{}return Pn=e,()=>{Pn===e&&(Pn=null)}}function rr(e){if(Pn===e){Pn=null;try{e()}catch{}}}function bo(e,t){let a=()=>{};const r=new Promise(u=>{a=u});let i=!1;const s=u=>{if(!i){i=!0;try{t?.(u)}catch{}a(u)}};let l;try{l=new Audio(e)}catch{return s(!1),{el:{},stop:()=>{},done:r}}l.onended=()=>s(!0),l.onerror=()=>s(!1);try{l.play().catch(()=>s(!1))}catch{s(!1)}return{el:l,stop:()=>{try{l.pause()}catch{}s(!1)},done:r}}function Z4(e,t){if(!e)return{previewCodes:[],previewBucket:null};const a=e,r=l=>l.map(u=>u?.contextCode||u?.context_code).filter(Boolean).map(String);if(t==="LISTEN_IN_NOISE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}if(t==="SHORT_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"SHORT_S"}}if(t==="LONG_STORY"){const l=a.items||a.sentences||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LONG"}}if(t==="ORDERING_SENTENCE"){const l=a.sentences||a.items||[],u=Array.isArray(l)&&l.length>0?r(l):[];return u.length===0&&(a.contextCode||a.context_code)&&u.push(String(a.contextCode||a.context_code)),{previewCodes:u,previewBucket:"LIN_D"}}const i=a.sentences||a.items||[],s=r(Array.isArray(i)?i:[]);return s.length===0&&(a.contextCode||a.context_code)&&s.push(String(a.contextCode||a.context_code)),{previewCodes:s,previewBucket:null}}function X4(e,t){const[a,r]=o.useState(!1),[i,s]=o.useState(-1),[l,u]=o.useState({key:"",urls:[]}),c=o.useRef(null),d=o.useRef(!1),m=o.useRef(null),p=o.useRef(null),[C,y]=o.useState(!1),v=o.useRef([]),{previewCodes:g,previewBucket:h}=Z4(e,t),x=`${g.join(",")}|${h??""}`,f=o.useMemo(()=>l.key===x?l.urls:[],[l,x]);o.useEffect(()=>{if(!g.length)return;let b=!1;return(async()=>{const B=[],_=[];for(const A of g)try{const k=ai(A,h);if(!k){B.push("");continue}let N=null;try{N=await ri(k)}catch{}if(!N)try{const S=await oi(k);S&&(N=URL.createObjectURL(S),_.push(N))}catch{}B.push(N??"")}catch{B.push("")}b?_.forEach(A=>{try{URL.revokeObjectURL(A)}catch{}}):(v.current.forEach(A=>{try{URL.revokeObjectURL(A)}catch{}}),v.current=_,u({key:x,urls:B}))})(),()=>{b=!0}},[g.join(","),h]),o.useEffect(()=>()=>{v.current.forEach(b=>{try{URL.revokeObjectURL(b)}catch{}}),v.current=[]},[]);const w=o.useCallback(async b=>{if(b.stopPropagation(),b.preventDefault(),d.current){m.current&&rr(m.current),d.current=!1;try{c.current?.pause()}catch{}r(!1),s(-1);return}if(!f.filter(Boolean).length)return;let B=null;const _=()=>{d.current=!1,B?.stop()};m.current=_;const A=ar(_);d.current=!0,r(!0);for(let k=0;k<f.length&&d.current;k++){const N=f[k];if(N&&(s(k),B=bo(N),c.current=B.el,!await B.done))break}A(),m.current===_&&(m.current=null,d.current=!1,r(!1),s(-1))},[f]);return o.useEffect(()=>()=>{m.current&&rr(m.current),d.current=!1;try{c.current?.pause()}catch{}c.current=null},[]),{playing:a,playingIndex:i,previewUrls:f,previewHover:C,setPreviewHover:y,previewBtnRef:p,handlePreview:w}}const J4=e=>{if(!e)return[];const t=typeof e.context=="string"&&e.context.trim()||typeof e.sentence=="string"&&e.sentence.trim()||typeof e.text=="string"&&e.text.trim()||"";if(t)return[String(t)];const a=e.sentences||e.items||e.questions||[];return Array.isArray(a)&&a.length>0?a.map(r=>{if(typeof r=="string")return r;if(r&&typeof r=="object"){const i=r;return i.sentence||i.text||i.context||i.question||i.title||""}return""}).filter(r=>typeof r=="string"&&r.trim().length>0).map(r=>r.trim()):[]};function yo(e){const{index:t,type:a,trainingData:r,ariaLabel:i,depth:s,renderPopup:l,completed:u,completedIds:c,selectedIds:d,tooltipText:m,useDescriptionTooltip:p=!1,onRemove:C,hideCheckBadge:y=!1,showTypeLabel:v=!1,onComplete:g,onSelect:h,onMore:x,countLabelOverride:f,size:w="square"}=e||{},{t:b}=xe.useTranslation(),[B,_]=o.useState(!1),A=o.useRef(null),[k,N]=o.useState(!1);o.useEffect(()=>{A.current?.matches(":hover")&&N(!0)},[]);const{playing:S,playingIndex:E,previewUrls:O,previewHover:F,setPreviewHover:Y,previewBtnRef:M,handlePreview:L}=X4(r,a?.key),P=o.useCallback(()=>{h?h():_(!0)},[h]),G=o.useCallback(()=>_(!1),[]),U=o.useCallback(()=>N(!0),[]),z=o.useCallback(()=>N(!1),[]),q=o.useCallback(()=>Y(!0),[Y]),$=o.useCallback(()=>Y(!1),[Y]),[V,H]=o.useState(null);o.useLayoutEffect(()=>{F&&H(M.current?.getBoundingClientRect()??null)},[F,M]);const[T,D]=o.useState(null);o.useLayoutEffect(()=>{k&&!B&&p&&D(A.current?.getBoundingClientRect()??null)},[k,B,p]);const R=o.useCallback(_e=>{_e.target===_e.currentTarget&&(_e.key==="Enter"||_e.key===" ")&&(_e.preventDefault(),P())},[P]),I=r||null,W=o.useMemo(()=>{if(!p)return null;const _e=m?(Array.isArray(m)?m:[m]).filter(Boolean):null,Ue=_e&&_e.length>0?_e:J4(I);return Ue&&Ue.length>0?Ue:null},[p,m,I]),ee=o.useCallback(_e=>{_e.stopPropagation(),C?.()},[C]),oe=o.useCallback(_e=>_e.stopPropagation(),[]),ce=o.useCallback(_e=>{typeof g=="function"&&g(_e)},[g]),J=u||(c&&r?.id!=null?c.has(String(r.id)):!1),re=!J&&(d!=null&&r?.id!=null?d.has(String(r.id)):!1);Cl("speechear.popup.close",G);const Ne=ki(),K=`${a?.label||""} ${t+1}`,Q=I?.title||I?.name||K;let pe=a?.icon,De,ye="",ne="";try{const _e=I?.category_0||I?.category_main_code||I?.category_main,Ue=I?.category_1||I?.category_sub_code||I?.category_sub,Ae=Ne.find(Te=>Te.key===_e);Ae?.icon&&(pe=Ae.icon),!De&&Ae?.color&&(De={"--t-item-fg":Ae.color}),!De&&I?.iconColor&&(De={"--t-item-fg":I.iconColor}),ye=Ae?b(`topic.${Ae.key}`,{defaultValue:Ae.label||""}):"";try{const Te=Ae?.subs?.find(Se=>Se.key===Ue);ne=Te?b(`topic.sub.${Te.key}`,{defaultValue:Te.label||""}):""}catch{}}catch{}const le=ne?`${ye} / ${ne}`:ye||a?.label||Q,Ce=_e=>b("training.countQuestions",{n:_e,count:_e}),ge=_e=>b("training.countSentences",{n:_e,count:_e});let fe="";try{if(I)if(a?.key==="LISTEN_IN_NOISE"){let _e=0;Array.isArray(I.items)&&I.items.length>0?_e=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0?_e=I.sentences.length:I.sentences&&(_e=1),fe=ge(_e)}else if(a?.key==="SHORT_STORY"){let _e=1;Array.isArray(r?.items)?_e=r.items.length:Array.isArray(r?.raw&&r.raw?.items)?_e=r.raw.items.length:Array.isArray(I?.questions)?_e=I.questions.length:Array.isArray(I?.sentences)&&(_e=I.sentences.length),fe=Ce(_e)}else if(a?.key==="LONG_STORY"){let _e=1;if(Array.isArray(I.items)&&I.items.length>0){const Ue=I.items.reduce((Ae,Te)=>{const Se=Te.questionItems;return Array.isArray(Se)?Ae+Se.length:Array.isArray(Te.questions)?Ae+Te.questions.length:Ae},0);_e=Ue>0?Ue:I.items.length}else Array.isArray(I.questions)&&I.questions.length>0?_e=I.questions.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(_e=I.sentences.length);fe=Ce(_e)}else if(a?.key==="ORDERING_SENTENCE"){let _e=1;Array.isArray(I.items)&&I.items.length>0?_e=I.items.length:Array.isArray(I.sentences)&&I.sentences.length>0&&(_e=I.sentences.length),fe=ge(_e)}else Array.isArray(I.items)&&(fe=I.items.length>0?Ce(I.items.length):"")}catch{}const $e=w==="row",Ve=w==="list"||$e,je=w==="compact",Fe=w==="small",qe=Fe&&a?.key?Cf().find(_e=>_e.key===a.key):void 0,mt=qe?Ni[qe.key]:void 0,ct=qe?mt?b(`trainingType.${mt}.title`,{defaultValue:qe.label}):qe.label??"":"",rt=v&&a?.label&&a.label!==String(Q)?String(a.label):Fe&&ct&&ct!==String(Q)?ct:"",Ct=!!rt,Be=f!==void 0?f:fe,We=[rt,typeof Q=="string"?Q:"",Be].map(_e=>String(_e??"").trim()).filter(Boolean).join(" ");return n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:A,className:`training-block-button${Ve?" training-block-button--list":""}${$e?" training-block-button--row":""}${je?" training-block-button--compact":""}${Fe?" training-block-button--small":""}${J?" training-block-button--completed":""}${re?" training-block-button--selected":""}${Ct&&!Fe?" training-block-button--withType":""}${Fe&&!Ct?" training-block-button--no-type-label":""}`,onClick:P,onPointerEnter:U,onPointerLeave:z,role:"button",tabIndex:0,onKeyDown:R,"aria-label":typeof i=="string"?i:We||void 0,title:!p&&m&&(Array.isArray(m)?m.filter(Boolean).join(`
|
|
853
|
+
`):m)||void 0,children:[n.jsxs("div",{className:"training-block-button__left",children:[v&&a?.label&&a.label!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-1",children:a.label}),Fe&&ct&&ct!==String(Q)&&n.jsx("span",{className:"training-block-button__type-label caption-2",children:ct}),n.jsx(Ul,{icon:pe,label:Q,tooltip:le,wrapperStyle:De,iconSize:Fe||je?"small":"medium"}),!y&&(J||re)&&!(C&&k)&&n.jsx(kt,{className:C?"training-block-button__check--removable":void 0,type:"dot",icon:"check",position:"top-left",size:"medium","aria-label":J?b("training.completed","\uD6C8\uB828 \uC644\uB8CC"):b("training.selected","\uC120\uD0DD\uB428")}),C&&n.jsx(kt,{className:`training-block-button__remove${k?" is-hover":""}`,type:"dot",icon:"remove",position:"top-left",size:"medium","aria-label":b("common.remove","\uC81C\uAC70"),onClick:ee}),n.jsx("div",{className:`training-block-button__title ${je?"body-3":Fe?"body-3b":"h3"}`,children:String(Q)}),n.jsxs("div",{className:"training-block-button__description",children:[Be?n.jsx("div",{className:`training-block-button__count ${Fe?"caption-2":"caption-1"}`,children:Be}):null,n.jsx("div",{className:"training-block-button__chevron",children:n.jsx(at,{icon:"chevron-right",label:b("training.next","\uB2E4\uC74C"),className:"training-block-button__chevron-icon",imgClassName:"training-block-button__chevron-icon-image",maskClassName:"training-block-button__chevron-icon-mask",svgClassName:"training-block-button__chevron-icon-svg",size:Fe?12:20})})]}),(Ve&&!$e||Fe)&&O.length>0&&n.jsx("div",{ref:M,className:"training-block-button__preview","data-tooltip-ignore":!0,onClick:oe,onPointerEnter:q,onPointerLeave:$,children:n.jsx(me,{htmlType:"button",size:Fe?28:32,type:"dot",icon:S?"pause":"play",variant:Fe?"transparent-lightGray":"default",useBorder:!1,selected:S,ariaLabel:String(Q).trim()?S?b("training.stopFor",{name:Q,defaultValue:`${Q} \uC815\uC9C0`}):b("training.previewFor",{name:Q,defaultValue:`${Q} \uBBF8\uB9AC \uB4E3\uAE30`}):S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),onClick:L})})]}),x&&n.jsx("div",{className:"training-block-button__more","data-tooltip-ignore":!0,onClick:_e=>{_e.stopPropagation(),x(_e)},children:n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"more-horizontal",variant:"transparent-lightGray",useBorder:!1,ariaLabel:String(Q).trim()?b("common.moreFor",{name:Q}):b("common.more","\uB354\uBCF4\uAE30")})})]}),F&&n.jsx(An,{anchorRect:V,text:S?b("training.stop","\uC815\uC9C0"):b("training.preview","\uBBF8\uB9AC \uB4E3\uAE30"),offset:8,onClose:$}),k&&!B&&p&&(W?n.jsx(Gn,{anchorRect:T,items:W,activeIndex:E,onClose:z}):I?.subTitle?n.jsx(An,{anchorRect:T,text:I.subTitle,offset:8,onClose:z}):null),B&&l&&l({trainingData:I,typeKey:a?.key??"",onClose:G,onComplete:ce,popupTitle:String(Q),popupSubTitle:a?.subTitle,depth:s!=null?String(s):void 0,popupIcon:pe,popupIconTooltip:String(le),popupWrapperStyle:De})]})}const Gl=200;function Q4(e){return e.itemId?(vf()[e.trainingType]??[]).find(t=>t?.id!=null&&String(t.id)===String(e.itemId))??null:null}function Kl({plan:e,groups:t,anchorRect:a,offset:r=12,onClose:i}){const{t:s}=xe.useTranslation(),l=o.useMemo(()=>t?t.map((c,d)=>({key:c.key??c.type?.key??String(d),label:c.label,type:c.type,data:c.items??[]})).filter(c=>c.data.length>0):_f(s).map(c=>{const d=(e?.items??[]).filter(m=>m.trainingType===c.key);return{key:c.key,label:c.label,type:c,pickedCount:d.length,data:d.map(Q4).filter(m=>m!=null)}}).filter(c=>c.pickedCount>0),[t,e?.items,s]);if(l.length===0)return null;const u=n.jsx("div",{className:"tooltip-training__box",children:n.jsx("div",{className:"tooltip-training__groups",children:l.flatMap(({key:c,label:d,type:m,data:p},C)=>[C>0?n.jsx("div",{className:"tooltip-training__divider"},`div-${c}`):null,n.jsxs("div",{className:"tooltip-training__section",children:[n.jsx("div",{className:"tooltip-training__section-header",children:n.jsx("span",{className:"tooltip-training__type-label body-3b",children:d})}),n.jsx("div",{className:"tooltip-training__items",children:p.map((y,v)=>n.jsx(yo,{index:v,type:m,trainingData:y,size:"compact",hideCheckBadge:!0},String(y.id??v)))})]},c)])})});return a?n.jsx(cn,{anchorRect:a,offset:r,onClose:i,closeOnOutsideClick:!1,className:"tooltip-training",ariaLabel:s("tooltip.training","\uD6C8\uB828 \uC548\uB0B4"),children:u}):u}const ey=200;function ty({icon:e,count:t,title:a,plan:r,tooltip:i=!0,hoverAccent:s=!1,className:l="",onClick:u,onMouseEnter:c,onMouseLeave:d}){const m=!!u||!!c||i&&!!r,p=we("count-tile",m&&"count-tile--interactive",m&&s&&"count-tile--accent",u&&"count-tile--clickable",l),C=o.useRef(null),[y,v]=o.useState(null),g=o.useRef(null),h=o.useRef(null),x=!!(y&&r&&i),f=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),h.current&&(clearTimeout(h.current),h.current=null)},[]),w=o.useCallback(()=>{f(),v(null)},[f]),b=o.useCallback(()=>{!i||!r||(f(),g.current=setTimeout(()=>{g.current=null,v(C.current?.getBoundingClientRect()??null)},Gl))},[i,r,f]),B=o.useCallback(()=>{g.current&&(clearTimeout(g.current),g.current=null),!h.current&&(h.current=setTimeout(()=>{h.current=null,v(null)},ey))},[]);return o.useEffect(()=>()=>{f()},[f]),o.useEffect(()=>{(!i||!r)&&w()},[i,r,w]),o.useEffect(()=>{if(!x)return;const _=k=>k instanceof Element&&(C.current?.contains(k)||!!k.closest(".tooltip-training")),A=k=>{_(k.target)?f():B()};return document.addEventListener("pointerover",A,!0),()=>document.removeEventListener("pointerover",A,!0)},[x,f,B]),n.jsxs(n.Fragment,{children:[n.jsxs("div",{ref:C,className:p,onClick:u?_=>{w(),u(_)}:void 0,onKeyDown:u?_=>{_.key!=="Enter"&&_.key!==" "||(_.preventDefault(),_.currentTarget.click())}:void 0,onPointerEnter:_=>{_.pointerType==="touch"||_.pointerType==="pen"?w():b()},onMouseEnter:c,onMouseLeave:_=>{B(),d?.(_)},role:u?"button":"img",tabIndex:u?0:void 0,"aria-label":`${a} ${t}`,children:[n.jsx(at,{icon:e,size:20,className:"count-tile__icon"}),n.jsx("span",{className:"count-tile__count h5","aria-hidden":"true",children:t})]}),y&&r&&n.jsx(Kl,{plan:r,anchorRect:y,onClose:w})]})}let $a=0,Yl="",vo="",Ra=0;function Zl(){return Xl(!1)}function ny(){return Xl(!0)}function Xl(e){const t=typeof document<"u";$a===0&&t&&(Yl=document.body.style.overflow,document.body.style.overflow="hidden"),e&&t&&(Ra===0&&(vo=document.body.style.paddingRight),Ra++,document.body.style.paddingRight="0px"),$a++;let a=!1;return()=>{a||(a=!0,$a=Math.max(0,$a-1),e&&t&&(Ra=Math.max(0,Ra-1),Ra===0&&(vo?document.body.style.paddingRight=vo:document.body.style.removeProperty("padding-right"))),$a===0&&t&&(document.body.style.overflow=Yl))}}function ay(){return n.jsx("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round","aria-hidden":!0,children:n.jsx("path",{d:"M6 6l12 12M18 6 6 18"})})}function ry({open:e,onClose:t,ariaLabel:a,title:r,children:i,size:s="md",closeOnBackdrop:l=!0,closeOnEscape:u=!0,showClose:c=!0,className:d,contentClassName:m}){const{t:p}=xe.useTranslation(),C=o.useId(),y=o.useRef(null),v=o.useCallback(()=>t(),[t]);o.useEffect(()=>{if(!e)return;const f=document.activeElement,w=Zl(),b=y.current;return to(b,f),b?.focus(),()=>{w();const B=document.activeElement;(!B||B===document.body||b&&b.contains(B))&&no(f)?.focus?.()}},[e]);const g=o.useRef(v),h=o.useRef(u);o.useEffect(()=>{g.current=v,h.current=u}),o.useEffect(()=>{if(e)return Un(()=>{h.current&&g.current()})},[e]);const x=o.useRef(!1);return Qr(y,e),!e||typeof document>"u"?null:en.createPortal(n.jsx("div",{className:we("dialog",d),onPointerDown:l?f=>{x.current=f.target===f.currentTarget}:void 0,onMouseDown:f=>{f.target===f.currentTarget&&f.preventDefault()},onClick:l?f=>{const w=x.current;x.current=!1,w&&f.target===f.currentTarget&&v()}:void 0,children:n.jsxs("div",{ref:y,role:"dialog","aria-modal":"true","aria-label":r?void 0:a,"aria-labelledby":r?C:void 0,tabIndex:-1,className:we("dialog__surface",`dialog__surface--${s}`,m),onClick:f=>f.stopPropagation(),children:[r?n.jsx("div",{className:"dialog__header",children:n.jsx("h2",{id:C,className:"dialog__title h4b",children:r})}):null,c?n.jsx("button",{type:"button",className:"dialog__close","aria-label":p("common.close","\uB2EB\uAE30"),onClick:v,children:n.jsx(ay,{})}):null,n.jsx("div",{className:"dialog__body",children:i})]})}),document.body)}function oy({columns:e,rows:t,rowKey:a,title:r,toolbar:i,empty:s,loading:l,caption:u,className:c=""}){const{t:d}=xe.useTranslation(),m=!l&&t.length===0;return n.jsxs("div",{className:we("board",c),children:[r||i?n.jsxs("div",{className:"board__head",children:[r?n.jsx("h2",{className:"board__title",children:r}):n.jsx("span",{}),i?n.jsx("div",{className:"board__toolbar",children:i}):null]}):null,n.jsxs("table",{className:"board__table",children:[u?n.jsx("caption",{className:"board__caption",children:u}):null,n.jsx("thead",{children:n.jsx("tr",{children:e.map(p=>n.jsx("th",{scope:"col",className:we("board__th",`board__cell--${p.headerAlign??p.align??"left"}`),style:p.width?{width:p.width}:void 0,children:p.header},p.key))})}),n.jsx("tbody",{children:l?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:l})}):m?n.jsx("tr",{children:n.jsx("td",{className:"board__state",colSpan:e.length,children:s??d("board.empty","\uB4F1\uB85D\uB41C \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):t.map((p,C)=>n.jsx("tr",{className:"board__row",children:e.map(y=>n.jsx("td",{className:we("board__td",`board__cell--${y.align??"left"}`),children:y.render(p,C)},y.key))},a(p,C)))})]})]})}function sy({name:e,role:t,photo:a,media:r,credentials:i,size:s=190,className:l=""}){return n.jsxs("div",{className:we("person-card",l),children:[n.jsx("div",{className:"person-card__photo",style:{width:s,height:s},children:r??(a?n.jsx("img",{src:a,alt:t?`${e} ${t}`:e}):null)}),n.jsx("h3",{className:"person-card__name",children:e}),t?n.jsx("p",{className:"person-card__role",children:t}):null,i?.length?n.jsx("ul",{className:"person-card__credentials",children:i.map(u=>n.jsx("li",{children:u},u))}):null]})}function iy({groups:e,className:t=""}){return n.jsx("div",{className:we("timeline",t),children:e.map(a=>n.jsxs("section",{className:"timeline__group",children:[n.jsx("h3",{className:"timeline__title",children:a.title}),n.jsx("ul",{className:"timeline__rows",children:a.entries.map((r,i)=>n.jsxs("li",{className:"timeline__row",children:[r.label?n.jsx("span",{className:"timeline__label",children:r.label}):null,n.jsx("div",{className:"timeline__items",children:r.items.map((s,l)=>n.jsx("p",{children:s},l))})]},`${r.label??""}-${i}`))})]},a.title))})}function ly({title:e,kind:t,body:a,badge:r,badgeSrc:i,footer:s,width:l,className:u=""}){const c=r??(i?n.jsx("img",{src:i,alt:""}):null);return n.jsxs("div",{className:we("publication-card",u),style:l?{width:l,flexShrink:0}:void 0,children:[c?n.jsx("div",{className:"publication-card__badge","aria-hidden":"true",children:c}):null,n.jsx("h3",{className:"publication-card__title",children:e}),t?n.jsx("p",{className:"publication-card__kind",children:t}):null,n.jsx("p",{className:"publication-card__body",children:a}),s?n.jsx("div",{className:"publication-card__footer",children:s}):null]})}function uy({logo:e,alt:t,onDone:a,durationMs:r=3e3}){const i=ka(a);return o.useEffect(()=>{const s=setTimeout(()=>i.current?.(),r);return()=>clearTimeout(s)},[r,i]),n.jsx("div",{className:"splash-logo",style:{"--splash-logo-duration":`${r}ms`},"aria-hidden":"true",children:n.jsx("img",{src:e,alt:t,className:"splash-logo__image"})})}function cy({eyebrow:e,eyebrowIndex:t,title:a,description:r,level:i=2,tone:s="dark",className:l=""}){const u=i===1?"h1":"h2";return n.jsxs("div",{className:we("section-header",`section-header--${s}`,l),children:[e?n.jsxs("p",{className:"section-header__eyebrow",children:[t?n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"section-header__index",children:t}),n.jsx("span",{"aria-hidden":!0,className:"section-header__rule"})]}):null,e]}):null,a?n.jsx(u,{className:"section-header__title",children:a}):null,r?n.jsx("div",{className:"section-header__description",children:r}):null]})}function dy({items:e,className:t=""}){return n.jsx("ul",{className:we("company-meta",t),children:e.map((a,r)=>n.jsxs("li",{className:"company-meta__item",children:[r>0?n.jsx("span",{"aria-hidden":!0,className:"company-meta__divider",children:"|"}):null,a]},a))})}function Jl(e){return typeof e=="string"?e:e.label}function Ql({value:e,onChange:t,suggestions:a,openOnFocus:r=!1,filterSuggestions:i,onSelectSuggestion:s,autoActiveFirst:l=!1}){const u=o.useId(),[c,d]=o.useState(!1),[m,p]=o.useState(-1),C=o.useRef(null),y=o.useMemo(()=>{if(!a.length)return[];const E=e??"";return i===!1?a:E?typeof i=="function"?i(a,E):a.filter(O=>Jl(O).toLowerCase().includes(E.toLowerCase())):r?a:[]},[a,e,r,i]),[v,g]=o.useState(!1),h=o.useRef([]),x=v&&y.length===0?h.current:y;o.useEffect(()=>{x.length&&(h.current=x)},[x]);const f=o.useCallback(()=>g(!0),[]),w=o.useCallback(()=>g(!1),[]),b=l?0:-1;o.useEffect(()=>{c||p(b)},[c,b]),o.useEffect(()=>()=>{C.current&&clearTimeout(C.current)},[]);const B=m<x.length?m:b<x.length?b:-1,_=o.useCallback(E=>{s?s(E):t?.(Jl(E)),d(!1)},[t,s]),A=o.useCallback(()=>d(!0),[]),k=o.useCallback(()=>{d(!0),p(b)},[b]),N=o.useCallback(()=>{C.current=setTimeout(()=>d(!1),120)},[]),S=o.useCallback(E=>{E.nativeEvent.isComposing||E.keyCode===229||(E.key==="ArrowDown"?(E.preventDefault(),d(!0),p(O=>Math.min(x.length-1,(O<x.length?O:b)+1))):E.key==="ArrowUp"?(E.preventDefault(),p(O=>Math.max(b,(O<x.length?O:x.length)-1))):E.key==="Enter"?B>=0&&_(x[B]):E.key==="Escape"&&c&&(E.preventDefault(),d(!1)))},[x,B,c,_,b]);return{listId:u,open:c,activeIdx:B,filtered:x,handleFocus:A,handleBlur:N,handleInput:k,handleKeyDown:S,handleSelect:_,handleCompositionStart:f,handleCompositionEnd:w}}const xo=typeof window<"u"?o.useLayoutEffect:o.useEffect;function Zn(e){const{value:t,defaultValue:a,name:r,inputRef:i,onChange:s,label:l,ariaLabel:u,ariaDescribedBy:c,required:d,placeholder:m,ghostText:p,ghostHint:C,type:y="text",disabled:v=!1,readOnly:g=!1,error:h,helperText:x,maxLength:f,size:w=48,variant:b="input",fullWidth:B=!1,newline:_=!1,multiline:A=!1,rows:k=3,leftIcon:N,rightIcon:S,clearable:E=!1,list:O,showCount:F=!0,className:Y="",onFocus:M,onBlur:L,onKeyDown:P,onEnter:G,inputMode:U,autoComplete:z,autoFocus:q,suggestions:$,filterSuggestions:V,onSelectSuggestion:H,autoActiveFirst:T,openOnFocus:D=!1}=e,R=g||v?void 0:$,{t:I}=xe.useTranslation(),W=o.useId();!l&&!u&&Zt(`TextField:unnamed:${W}`,"[ihab/TextField] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 label \uC774\uB098 ariaLabel \uC911 \uD558\uB098\uB97C \uC8FC\uC138\uC694. placeholder \uB294 \uC774\uB984\uC744 \uB300\uC2E0\uD558\uC9C0 \uBABB\uD569\uB2C8\uB2E4.");const ee=`tf-${W}`,oe=`tf-helper-${W}`,ce=o.useRef(null),J=Ql({value:t??"",onChange:s,suggestions:R??[],openOnFocus:D,filterSuggestions:V,onSelectSuggestion:H,autoActiveFirst:T}),re=!!R&&J.open&&J.filtered.length>0,Ne=o.useRef(null),[K,Q]=o.useState(null),pe=o.useCallback(()=>{const Be=Ne.current;if(!Be||typeof window>"u")return;const We=Be.getBoundingClientRect(),_e=230,Ue=window.innerHeight-We.bottom<_e+8&&We.top>_e+8;Q({position:"fixed",left:We.left,width:We.width,...Ue?{bottom:window.innerHeight-We.top+8}:{top:We.bottom+8},zIndex:Da(Be)})},[]);xo(()=>{if(!re)return;pe();let Be=null;const We=()=>{if(typeof requestAnimationFrame>"u"){pe();return}Be===null&&(Be=requestAnimationFrame(()=>{Be=null,pe()}))},_e=Ue=>{const Ae=Ue.target;Ae&&Ae.nodeType===1&&Ae.closest?.(".text-field__suggestions")||We()};return window.addEventListener("scroll",_e,!0),window.addEventListener("resize",We),()=>{Be!==null&&cancelAnimationFrame(Be),window.removeEventListener("scroll",_e,!0),window.removeEventListener("resize",We)}},[re,pe]);const De=o.useCallback(Be=>{ce.current=Be,typeof i=="function"?i(Be):i&&(i.current=Be)},[i]),ye=p?`${p}${C??I("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)")}`:m,ne=t!==void 0,le=ne&&y==="password",[Ce,ge]=o.useState((a??"").length),fe=ne?(t??"").length:Ce,$e=o.useRef(t);xo(()=>{$e.current=t}),o.useEffect(()=>{const Be=ce.current;if(!le||!Be)return;const We=t??"";Be.value!==We&&(Be.value=We)},[le,t]),o.useEffect(()=>{if(!_||!ce.current)return;const Be=ce.current;Be.style.height="",Be.scrollHeight>Be.clientHeight&&(Be.style.height=`${Be.scrollHeight}px`)},[t,Ce,_]);const Ve=f!=null&&fe>f,je=w===32?16:20,Fe=we("text-field",`text-field--s${w}`,b==="display"?"text-field--display":"",B?"text-field--full-width":"",v?"text-field--disabled":"",g?"text-field--readonly":"",h?"text-field--error":"",N?"text-field--has-left-icon":"",S||E?"text-field--has-right-icon":"",Y),qe={id:ee,...le?{}:ne?{value:t}:{defaultValue:a},ref:De,placeholder:ye,name:r,disabled:v,readOnly:g,autoFocus:q,maxLength:f,list:O,inputMode:U,autoComplete:z,"aria-label":!l&&u?u:void 0,"aria-required":d,"aria-invalid":!!h,"aria-describedby":[x||h?oe:null,c].filter(Boolean).join(" ")||void 0,role:R?"combobox":void 0,"aria-autocomplete":R?"list":void 0,"aria-haspopup":R?"listbox":void 0,"aria-expanded":R?re:void 0,"aria-controls":re?J.listId:void 0,"aria-activedescendant":re&&J.activeIdx>=0?`${J.listId}-option-${J.activeIdx}`:void 0,onChange:Be=>{const We=Be.target;ne||ge(We.value.length),s?.(We.value),R&&J.handleInput(),le&&queueMicrotask(()=>{const _e=$e.current??"";We.value!==_e&&(We.value=_e)})},onCompositionStart:R?J.handleCompositionStart:void 0,onCompositionEnd:R?J.handleCompositionEnd:void 0,onFocus:(Be=>{M?.(Be),R&&J.handleFocus()}),onBlur:(Be=>{L?.(Be),R&&J.handleBlur()}),onKeyDown:(Be=>{const We=(Be.key==="Tab"&&!Be.shiftKey||Be.key===" ")&&!Be.nativeEvent.isComposing;if(p&&We&&!g&&!v&&!(Be.currentTarget.value??"").trim()){Be.preventDefault();const _e=Be.currentTarget;ne||(_e.value=p,ge(p.length)),s?.(p);return}R&&Be.key==="Enter"&&!Be.nativeEvent.isComposing&&J.activeIdx>=0?Be.preventDefault():G&&Be.key==="Enter"&&!Be.nativeEvent.isComposing&&(Be.preventDefault(),G()),P?.(Be),R&&J.handleKeyDown(Be)})},mt=E&&!v&&!g&&fe>0,ct=()=>_?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--auto body-2",rows:1}):A?n.jsx("textarea",{...qe,className:"text-field__input text-field__input--textarea body-2",rows:k}):n.jsx("input",{...qe,type:y,className:"text-field__input body-2"}),rt=b==="display"&&!_&&!A&&!!ye,Ct=()=>n.jsxs(n.Fragment,{children:[ct(),rt&&n.jsx("span",{className:"text-field__placeholder","aria-hidden":"true",children:ye})]});return n.jsxs("div",{ref:Ne,className:Fe,children:[l&&n.jsxs("label",{htmlFor:ee,className:"text-field__label caption-1",children:[l,d&&n.jsx("span",{className:"text-field__required",children:"*"})]}),n.jsxs("div",{className:"text-field__wrap",children:[N&&n.jsx("span",{className:"text-field__icon text-field__icon--left",children:n.jsx(at,{icon:N,label:"",className:"",svgClassName:"text-field__icon-svg",size:je})}),Ct(),f!=null&&F&&n.jsxs("span",{className:`text-field__count caption-2${Ve?" text-field__count--over":""}`,children:[fe,"/",f]}),mt&&n.jsx(me,{size:24,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,className:"text-field__clear",ariaLabel:I("textField.clearAriaLabel","\uC785\uB825\uAC12 \uC9C0\uC6B0\uAE30"),htmlType:"button",onMouseDown:Be=>{Be.preventDefault()},onClick:()=>{!ne&&ce.current&&(ce.current.value="",ge(0)),s?.("")},tabIndex:-1}),S&&!mt&&n.jsx("span",{className:"text-field__icon text-field__icon--right",children:n.jsx(at,{icon:S,label:"",className:"",svgClassName:"text-field__icon-svg",size:je})})]}),!!R&&n.jsx("span",{className:"text-field__status",role:"status","aria-live":"polite",children:J.open&&(t??"").length>0&&J.filtered.length===0?I("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"):""}),re&&(typeof document>"u"?null:en.createPortal(n.jsx("ul",{id:J.listId,className:"text-field__suggestions",role:"listbox",style:K??{position:"fixed",visibility:"hidden"},"data-tooltip-ignore":!0,children:J.filtered.map((Be,We)=>n.jsx("li",{id:`${J.listId}-option-${We}`,role:"option","aria-selected":We===J.activeIdx,className:`text-field__suggestion body-2${We===J.activeIdx?" is-active":""}`,onMouseDown:_e=>_e.preventDefault(),onClick:()=>{J.handleSelect(Be),ce.current?.focus()},children:typeof Be=="string"?Be:n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"text-field__suggestion-label",children:Be.label}),Be.hint&&n.jsx("span",{className:"text-field__suggestion-hint caption-1",children:Be.hint})]})},typeof Be=="string"?`${Be}-${We}`:Be.id))}),document.body)),(x||h)&&n.jsx("div",{className:"text-field__footer",children:n.jsx("span",{id:oe,className:"text-field__helper caption-1",role:h?"alert":void 0,children:h||x})})]})}function pn({options:e,value:t,onChange:a,placeholder:r,disabled:i=!1,block:s=!1,size:l=48,error:u=!1,className:c="",ariaLabel:d,ariaDescribedBy:m}){const{t:p}=xe.useTranslation(),C=r??p("dropdown.placeholder","\uC120\uD0DD"),y=o.useId(),v=o.useId(),g=o.useRef(null),h=o.useCallback((M,L)=>{const P=window.innerHeight-M.bottom<260&&M.top>260;return{position:"fixed",left:M.left,minWidth:M.width,...P?{bottom:window.innerHeight-M.top+6}:{top:M.bottom+6},zIndex:Da(L)}},[]),{open:x,setOpen:f,toggle:w,style:b,triggerRef:B,menuRef:_}=Sa({computeStyle:h}),[A,k]=o.useState(-1),N=o.useCallback(()=>k(-1),[]),S=e.find(M=>M.value===t);o.useEffect(()=>{if(x){const M=e.findIndex(L=>L.value===t);k(M>=0?M:e.length?0:-1),requestAnimationFrame(()=>{const L=_.current;if(!L)return;const P=L.querySelectorAll(".dropdown__option")[M];P&&(L.scrollTop=Math.max(0,P.offsetTop-L.clientHeight/2+P.clientHeight/2))})}},[x]),o.useEffect(()=>{x&&k(M=>{if(M>=0&&M<e.length)return M;const L=e.findIndex(P=>P.value===t);return L>=0?L:e.length?0:-1})},[x,e.length]);const E=o.useCallback(()=>{i||w()},[i,w]),O=o.useCallback(M=>{M.disabled||i||(M.value!==t&&a?.(M.value),f(!1))},[a,f,i,t]);o.useEffect(()=>{i&&f(!1)},[i,f]);const F=o.useCallback(M=>{if(!i){if(!x){(M.key==="Enter"||M.key===" "||M.key==="ArrowDown")&&(M.preventDefault(),f(!0));return}if(M.key==="Escape"){M.preventDefault(),f(!1);return}M.key==="ArrowDown"?(M.preventDefault(),k(L=>{let P=L+1;for(;P<e.length&&e[P].disabled;)P++;return P<e.length?P:L})):M.key==="ArrowUp"?(M.preventDefault(),k(L=>{let P=L-1;for(;P>=0&&e[P].disabled;)P--;return P>=0?P:L})):(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),e[A]?O(e[A]):f(!1))}},[i,x,e,A,O,f]),Y=x?n.jsx("div",{ref:_,id:y,className:"dropdown__menu","data-tooltip-ignore":!0,role:"listbox",style:b,onMouseLeave:N,onMouseDown:M=>M.preventDefault(),children:e.map((M,L)=>n.jsxs("button",{id:`${y}-option-${L}`,type:"button",role:"option","aria-selected":M.value===t,className:we("dropdown__option body-2",M.value===t?"dropdown__option--active":"",L===A?"dropdown__option--active":"",M.disabled?"dropdown__option--disabled":""),onMouseDown:P=>P.preventDefault(),onClick:()=>O(M),onMouseEnter:()=>k(L),disabled:M.disabled,children:[n.jsx("span",{className:"dropdown__option-check",children:M.value===t&&n.jsx("svg",{viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"2 7 5.5 10.5 12 3.5"})})}),M.label]},M.value))}):null;return n.jsxs("div",{ref:g,className:we("dropdown",`dropdown--s${l}`,x?"dropdown--open":"",s?"dropdown--block":"",u?"dropdown--error":"",c),onKeyDown:F,children:[n.jsxs("button",{ref:B,type:"button",className:"dropdown__trigger",role:"combobox","aria-haspopup":"listbox","aria-expanded":x,"aria-controls":x?y:void 0,"aria-activedescendant":x&&A>=0?`${y}-option-${A}`:void 0,"aria-label":d,"aria-describedby":[d&&S?v:"",m??""].filter(Boolean).join(" ")||void 0,"aria-invalid":u||void 0,disabled:i,onClick:E,onBlur:M=>{x&&!_.current?.contains(M.relatedTarget)&&f(!1)},children:[n.jsx("span",{id:v,className:`dropdown__trigger-label body-2${S?"":" dropdown__trigger-label--placeholder"}`,children:S?S.label:C}),n.jsx("svg",{className:"dropdown__chevron",viewBox:"0 0 16 16",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:n.jsx("polyline",{points:"4 6 8 10 12 6"})})]}),typeof document<"u"&&en.createPortal(Y,g.current?.closest(".ihabdevteam-core-scope")??document.body)]})}function or({page:e,totalPages:t,onChange:a,prevLabel:r,nextLabel:i,className:s=""}){const{t:l}=xe.useTranslation(),u=r??l("common.prevPage","\uC774\uC804 \uD398\uC774\uC9C0"),c=i??l("common.nextPage","\uB2E4\uC74C \uD398\uC774\uC9C0"),d=Math.max(1,t),m=()=>a(Math.max(1,Math.min(d,e-1))),p=()=>a(Math.min(d,e+1));return n.jsxs("div",{className:we("pagination",s),children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-left",ariaLabel:u,disabled:e<=1,onClick:m}),n.jsxs("span",{className:"pagination__info body-3","aria-live":"polite","aria-atomic":"true",children:[Math.min(Math.max(1,e),d)," / ",d]}),n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"rounded",icon:"chevron-right",ariaLabel:c,disabled:e>=t,onClick:p})]})}const Pa=new Map;function gn(e){const{t}=xe.useTranslation(),{options:a=[],value:r=a.find(b=>!b.disabled)?.key??a[0]?.key,onChange:i=b=>{},className:s="",size:l=40,shape:u="pill",useBG:c=!0,fullWidth:d=!1,minButtonWidth:m,ariaLabel:p}=e||{},C=o.useRef(null),y=a.filter(b=>!b.disabled),v=o.useId(),g=a.map(b=>b.key).join("\xB7");o.useEffect(()=>{if(!(!ea||p!=null&&p!=="")){if(Pa.set(v,g||"(\uBCF4\uAE30 \uC5C6\uC74C)"),Pa.size>1){const b=[...Pa.values()].sort();Zt(`segmented-control-unnamed:${b.join("|")}`,`[ihab/SegmentedControl] \uC774\uB984 \uC5C6\uB294 \uB77C\uB514\uC624\uADF8\uB8F9\uC774 \uD55C \uD654\uBA74\uC5D0 ${Pa.size} \uAC1C \uC11C \uC788\uC2B5\uB2C8\uB2E4 \u2014 \uB0AD\uB3C5\uAE30\uB294 \uBAA8\uB450 "\uC120\uD0DD \uD0ED" \uC73C\uB85C \uC77D\uC5B4 \uC5B4\uB290 \uAC83\uC774 \uBB34\uC5C7\uC778\uC9C0 \uAC00\uB9B4 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. ariaLabel \uC744 \uC8FC\uC138\uC694. \uC9C0\uAE08 \uC120 \uAC83(\uBCF4\uAE30 \uC774\uB984\uC73C\uB85C \uC801\uC74C): ${b.join(" / ")}`)}return()=>{Pa.delete(v)}}},[p,g,v]);const h=b=>{if(!y.length)return;const B=Math.max(0,y.findIndex(A=>A.key===r)),_=b==="first"?y[0]:b==="last"?y[y.length-1]:y[(B+b+y.length)%y.length];_&&(i(_.key),Array.from(C.current?.querySelectorAll("[data-segkey]")??[]).find(A=>A.dataset.segkey===_.key)?.focus())},x=b=>{switch(b.key){case"ArrowRight":case"ArrowDown":h(1);break;case"ArrowLeft":case"ArrowUp":h(-1);break;case"Home":h("first");break;case"End":h("last");break;default:return}b.preventDefault()},f=b=>{const B=_=>typeof _=="string"||typeof _=="number";if(!(!B(b.label)||b.count==null||b.count===!1||!B(b.count)))return`${b.label}, ${b.count}`},w=y.some(b=>b.key===r)?r:y[0]?.key;return n.jsx("div",{ref:C,onKeyDown:x,className:we("segmented-control",`segmented-control--${u}`,`segmented-control--${l}`,d&&"segmented-control--full",!c&&"segmented-control--no-bg",m!=null&&"segmented-control--min",s),style:m!=null?{"--segmented-min-button-w":`${m}px`}:void 0,role:"radiogroup","aria-label":p??t("segmentedControl.ariaLabel","\uC120\uD0DD \uD0ED"),children:a.map(b=>n.jsx(me,{htmlType:"button",role:"radio","aria-checked":b.key===r,"data-segkey":b.key,tabIndex:b.key===w?0:-1,label:b.label,count:b.count,ariaLabel:f(b),disabled:b.disabled,className:b.key===r?"is-selected":"",onClick:()=>{b.disabled||i(b.key)},size:l,shape:u,useBorder:!1,useBG:!1},b.key))})}function _o({count:e,search:t,segment:a,filters:r,pageSize:i,pagination:s,actions:l,className:u}){const{t:c}=xe.useTranslation(),d=e!=null&&n.jsxs("p",{className:"toolbar__count body-1",role:"status","aria-atomic":"true",children:[e.prefix??c("common.totalPrefix","\uCD1D "),n.jsx("span",{className:"toolbar__count-highlight",children:e.value}),e.unit,e.suffix]}),m=!!(t||r?.length||i||s||l);return n.jsxs("div",{className:we("toolbar",u),children:[n.jsxs("div",{className:"toolbar__row",children:[d,a&&(Array.isArray(a)?a:[a]).map((p,C)=>n.jsx(gn,{size:40,...p},p.ariaLabel??C))]}),m&&n.jsx("div",{className:"toolbar__row",children:n.jsxs("div",{className:"toolbar__row-end",children:[t&&n.jsx(Zn,{className:"toolbar__search",size:40,value:t.value,onChange:t.onChange,placeholder:t.placeholder??c("common.search","\uAC80\uC0C9"),ariaLabel:t.placeholder??c("common.search","\uAC80\uC0C9"),autoFocus:t.autoFocus,clearable:!0}),r?.map((p,C)=>n.jsx(pn,{size:40,options:p.options,value:p.value,onChange:p.onChange,ariaLabel:p.ariaLabel},C)),(i||s)&&n.jsxs("div",{className:"toolbar__pager",children:[i&&n.jsx(pn,{size:40,options:i.options,value:i.value,onChange:i.onChange,ariaLabel:i.ariaLabel??c("common.pageSizeSelect","\uD398\uC774\uC9C0\uB2F9 \uD45C\uC2DC \uAC1C\uC218")}),s&&n.jsx(or,{page:s.page,totalPages:s.total,onChange:s.onChange,prevLabel:s.prevLabel,nextLabel:s.nextLabel})]}),l]})})]})}function eu(e){return typeof e=="string"?e:typeof e=="number"?String(e):Array.isArray(e)?e.map(eu).join(""):""}function py(e){let t=e.replace(/\r\n/g,`
|
|
854
854
|
`).replace(/\r/g,`
|
|
855
855
|
`);t=t.replace(/^\n+/,"").replace(/\n+$/,"");const a=t.split(`
|
|
856
856
|
`).map(s=>s.replace(/\t/g," ")),r=a.filter(s=>s.trim().length>0),i=r.length>0?Math.min(...r.map(s=>s.match(/^ */)?.[0].length??0)):0;return a.map(s=>s.slice(i)).join(`
|
|
857
|
-
`)}const my=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),hy=/^(?:const|let|var|function|return|if|else|for|while|switch|case|break|import|from|export|class|new|try|catch|finally|throw|await|async|null|true|false|this|typeof|instanceof)\b/;function Cy(e,t){let a=e;const r=[],i=/^(?:sh|bash|zsh|shell|console)$/.test(t.toLowerCase()),s=(l,u)=>r.push({type:l,content:u});for(;a.length>0;){const l=a.match(/^\s+/);if(l){s("whitespace",l[0]),a=a.slice(l[0].length);continue}if(!i&&a.startsWith("//")){const
|
|
858
|
-
`),g=
|
|
859
|
-
`),g=y===-1?a:a.slice(0,y);s("comment",g),a=a.slice(g.length);continue}const u=a.match(/^\/\*[\s\S]*?\*\//);if(u){s("comment",u[0]),a=a.slice(u[0].length);continue}const c=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(c){s("string",c[0]),a=a.slice(c[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){s("number",d[0]),a=a.slice(d[0].length);continue}const m=a.match(hy);if(m){s("keyword",m[0]),a=a.slice(m[0].length);continue}const p=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(p){const y=p[0];s(i&&my.has(y)?"command":"identifier",y),a=a.slice(y.length);continue}const C=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(C){s("operator",C[0]),a=a.slice(C[0].length);continue}const _=a.match(/^[()[\]{};.,]/);if(_){s("punctuation",_[0]),a=a.slice(1);continue}s("other",a[0]),a=a.slice(1)}return r}function fy({children:e,language:t="bash",title:a="",showCopy:r=!0,size:i="default",className:s=""}){const{t:l}=xe.useTranslation(),[u,c]=o.useState(!1),d=py(Ql(e)),m=o.useRef(null);o.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const p=async()=>{try{if(!await of(d))return;c(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>c(!1),2e3)}catch{}},C=Cy(d,t),_=i==="small"?"caption-1":"body-3";return n.jsxs("div",{className:we("code-box",i==="small"?"code-box--small":"",s),children:[(a||r)&&n.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[n.jsx("div",{className:"code-box__title caption-1",children:a}),r&&n.jsx(me,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:u?"check":"copy",onClick:p,ariaLabel:u?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),n.jsx("pre",{className:"code-box__inner","data-lang":t,children:n.jsx("code",{children:C.map((y,g)=>n.jsx("span",{className:`code-token ${y.type} ${_}`,children:y.content},g))})})]})}const gy={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function Fa(e){const{t}=xe.useTranslation(),{variant:a="spinner",size:r=24,progress:i=null,label:s}=e||{},l=s||t("loader.loading","Loading");if(a==="bar"){const c=i==null||!Number.isFinite(Number(i)),d=c?0:Math.max(0,Math.min(100,Number(i)));return n.jsx("div",{className:`loader-bar${c?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":c?void 0:d,"aria-label":l,children:n.jsx("div",{className:"loader-bar__inner",style:c?void 0:{width:`${d}%`}})})}const u=typeof r=="number"?`${r}px`:r;return n.jsxs("div",{className:"loader-spinner",style:{width:u,height:u},role:"status","aria-label":l,children:[n.jsx("span",{style:gy,children:l}),n.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[n.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),n.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}function eu({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:i,labelPosition:s="right",className:l="",id:u}){const c=r&&n.jsx("span",{className:"toggle__label body-3",children:r});return n.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[s==="left"&&c,n.jsx("input",{id:u,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!r&&i?i:void 0}),n.jsx("span",{className:"toggle__slider"}),s==="right"&&c]})}function tu({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:i,size:s="medium",className:l,title:u,ariaLabel:c}){const d=o.useRef(null),m=o.useId(),p=o.useRef(!!r);return p.current=!!r,o.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)}),n.jsxs("label",{className:we("checkbox",s==="small"&&"checkbox--small",s==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:m,title:u,children:[n.jsx("input",{ref:d,id:m,type:"checkbox",className:"checkbox__input",checked:e,onChange:C=>{t?.(C.target.checked),d.current&&(d.current.indeterminate=p.current)},disabled:a,"aria-label":!i&&c?c:void 0}),n.jsx("span",{className:"checkbox__box"}),i&&n.jsx("span",{className:"checkbox__label body-3",children:i})]})}function by({count:e,actions:t,onClear:a,clearLabel:r,visible:i,content:s,max:l}){const{t:u}=xe.useTranslation(),c=i!==void 0?i:e>0,d=r??u("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),m=o.useRef(null),p=o.useRef(null),C=o.useRef(null),_=o.useRef(c);o.useLayoutEffect(()=>{const f=p.current,w=_.current;if(_.current=c,c&&!w){const b=typeof document<"u"?document.activeElement:null;C.current=b&&b!==document.body&&!f?.contains(b)?b:null}else!c&&w&&f&&f.contains(document.activeElement)&&Ja(f,C.current)},[c]);const[y,g]=o.useState(!1),h=o.useRef(!1),v=o.useRef(null);return o.useEffect(()=>{const f=m.current;if(!f)return;const w=N=>{h.current=N,g(N)},b=()=>{const N=f.firstElementChild??f,S=Array.from(N.children);if(S.length<2){w(!1);return}const E=S[0].offsetTop,O=S.some(P=>P.offsetTop!==E);if(!h.current){v.current=f.clientWidth,O&&w(!0);return}if(O)return;const F=S[0],Y=S[S.length-1],M=Y.offsetLeft+Y.offsetWidth-F.offsetLeft,L=v.current;(L==null||M<=L)&&w(!1)};if(b(),typeof ResizeObserver>"u")return;const B=new ResizeObserver(b);B.observe(f);const x=f.parentElement;let A=x?.clientWidth??0;const k=new ResizeObserver(()=>{const N=x?.clientWidth??0;N!==A&&(A=N,v.current=null,b())});return x&&k.observe(x),()=>{B.disconnect(),k.disconnect()}},[s,e]),n.jsxs("div",{ref:p,className:`bulk-bar ${c?"bulk-bar--visible":""}`,inert:!c||void 0,"aria-hidden":c?void 0:!0,children:[n.jsx("span",{ref:m,className:"bulk-bar__count body-2",role:"status",children:s??n.jsx("b",{children:u("common.selectedCount",{count:e})})}),l!==void 0&&n.jsx(kt,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`,"aria-label":u("common.selectedOfMax",{count:e,max:l,defaultValue:`\uCD5C\uB300 ${l}\uAC1C \uC911 ${e}\uAC1C`})}),n.jsxs("div",{className:`bulk-bar__actions${y?" bulk-bar__actions--stacked":""}`,children:[n.jsx(me,{htmlType:"button",size:40,label:d,onClick:a}),t.map((f,w)=>n.jsx(me,{htmlType:"button",size:40,variant:f.variant??"default",icon:f.icon,label:f.label,onClick:f.onClick},w))]})]})}const yy=[{key:"edit",icon:"edit-2",closeFirst:!0},{key:"duplicate",icon:"copy",closeFirst:!1},{key:"publish",icon:"book-marked",closeFirst:!1},{key:"copyLink",icon:"link",closeFirst:!1},{key:"remove",icon:"trash-2",closeFirst:!0}];function vy(e){const{onClose:t,className:a}=e;return n.jsx("div",{className:we("item-actions",a),children:yy.map(({key:r,icon:i,closeFirst:s})=>{const l=e[r];if(!l)return null;const u=r==="publish"?l.published?l.unpublish:l.publish:l;return n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:i,ariaLabel:u.label,showTooltipInfo:u.label,onClick:()=>{s&&t(),u.onClick()}},r)})})}function nu(e,t){const a=()=>{if(e){const[g,h]=e.split("-");return{y:+g,m:+h-1}}const[_,y]=Yr(t).split("-");return{y:+_,m:+y-1}},[r,i]=o.useState(()=>a().y),[s,l]=o.useState(()=>a().m),u=o.useRef(e);o.useEffect(()=>{if(e===u.current)return;u.current=e;const _=a();i(_.y),l(_.m)},[e]);const c=o.useRef({y:r,m:s});o.useEffect(()=>{c.current={y:r,m:s}},[r,s]);const d=o.useCallback(_=>{const y=c.current.y*12+c.current.m+_,g=Math.floor(y/12),h=y-g*12;c.current={y:g,m:h},i(g),l(h)},[]),m=o.useCallback(()=>d(-1),[d]),p=o.useCallback(()=>d(1),[d]),C=o.useCallback((_,y)=>{c.current={y:_,m:y},i(_),l(y)},[]);return{viewY:r,viewM:s,prevMonth:m,nextMonth:p,setViewYM:C}}function sr(e,t){return new Date(e,t+1,0).getDate()}function xy(e,t){return new Date(e,t,1).getDay()}function ir(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function _y(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function wy(e,t,a,r){const i=a?+a.split("-")[0]:e-10,s=r?+r.split("-")[0]:e+10,l=[];for(let u=i;u<=s;u++)for(let c=0;c<12;c++){const d=`${u}-${String(c+1).padStart(2,"0")}`;a&&d<a.slice(0,7)||r&&d>r.slice(0,7)||l.push({value:d,label:t(u,c+1)})}return l}function Ay({value:e,onChange:t,size:a=48,min:r,max:i,disabled:s,placeholder:l,className:u,today:c}){const{t:d,i18n:m}=xe.useTranslation(),p=l??d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),C=o.useMemo(()=>d("calendar.dow",{returnObjects:!0}),[d]),_=Yr(c),{viewY:y,viewM:g,prevMonth:h,nextMonth:v,setViewYM:f}=nu(e,c),w=o.useId(),b=o.useCallback((T,D)=>{const R=window.innerHeight,I=window.innerWidth,W=typeof document<"u"?document.getElementById(w):null,ee=Math.max(W?.offsetHeight||0,W?.scrollHeight||0)||300,oe=Math.max(T.width,W?.offsetWidth||0,260),ce=R-T.bottom,J=T.top,re=ce<ee&&J>ce,Ne=8,K=(Q,pe)=>Math.min(Math.max(Ne,Q),Math.max(Ne,pe));return{position:"fixed",left:K(T.left,I-oe-Ne),width:T.width,minWidth:260,...re?{top:"auto",bottom:K(R-T.top+6,R-ee-Ne)}:{bottom:"auto",top:K(T.bottom+6,R-ee-Ne)},zIndex:Da(D)}},[w]),{open:B,setOpen:x,toggle:A,style:k,triggerRef:N,menuRef:S}=Sa({computeStyle:b,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});o.useEffect(()=>{if(!B)return;const T=S.current;return(T?.querySelector(".date-picker__day--selected:not(:disabled)")??T?.querySelector(".date-picker__day--today:not(:disabled)")??T?.querySelector(".date-picker__day:not(:disabled)")??T?.querySelector(fn)??T)?.focus?.(),()=>{const D=document.activeElement;(!D||D===document.body)&&N.current?.focus?.()}},[B,S,N]);const[E,O]=o.useState(1),F=o.useRef(null),Y=o.useRef(null);o.useEffect(()=>{if(!B)return;const T=e&&e.slice(0,7)===`${y}-${String(g+1).padStart(2,"0")}`?+e.slice(8):_.slice(0,7)===`${y}-${String(g+1).padStart(2,"0")}`?+_.slice(8):1;O(T)},[B]),o.useEffect(()=>{if(Y.current==null)return;const T=Y.current;Y.current=null,F.current?.querySelector(`[data-day="${T}"]`)?.focus()}),o.useEffect(()=>{O(T=>Math.min(T,sr(y,g)))},[y,g]);const M=o.useCallback(T=>{let D=ir(T.getFullYear(),T.getMonth(),T.getDate());r&&D<r&&(D=r),i&&D>i&&(D=i);const[R,I,W]=D.split("-").map(Number);(R!==y||I-1!==g)&&f(R,I-1),O(W),Y.current=W},[r,i,y,g,f]),L=o.useCallback(T=>{const D=new Date(y,g,E),R=W=>{D.setDate(D.getDate()+W),M(D)},I=W=>{const ee=D.getFullYear()*12+D.getMonth()+W,oe=Math.floor(ee/12),ce=ee-oe*12;M(new Date(oe,ce,Math.min(D.getDate(),sr(oe,ce))))};switch(T.key){case"ArrowLeft":R(-1);break;case"ArrowRight":R(1);break;case"ArrowUp":R(-7);break;case"ArrowDown":R(7);break;case"Home":R(-D.getDay());break;case"End":R(6-D.getDay());break;case"PageUp":T.shiftKey?I(-12):I(-1);break;case"PageDown":T.shiftKey?I(12):I(1);break;default:return}T.preventDefault()},[y,g,E,M]),P=o.useCallback(T=>{s||(t(ir(y,g,T)),x(!1))},[y,g,t,x,s]);o.useEffect(()=>{s&&x(!1)},[s,x]);const G=T=>{const D=ir(y,g,T);return!!(r&&D<r||i&&D>i)},U=(()=>{const T=sr(y,g);if(E>=1&&E<=T&&!G(E))return E;for(let D=1;D<=T;D++)if(!G(D))return D;return-1})(),z=[];for(let T=0;T<xy(y,g);T++)z.push(null);for(let T=1;T<=sr(y,g);T++)z.push(T);const q=a===64?20:a===40?16:18,$=wy(y,(T,D)=>Kr(d,m.language,T,D),r,i),V=`${y}-${String(g+1).padStart(2,"0")}`,H=B?en.createPortal(n.jsxs("div",{ref:S,id:w,className:"date-picker__dropdown",style:k,"data-tooltip-ignore":!0,role:"dialog","aria-label":d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[n.jsxs("div",{className:"date-picker__nav",children:[n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:h,"aria-label":d("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(ys,{size:16,strokeWidth:2})}),n.jsx(pn,{className:"date-picker__nav-dropdown",ariaLabel:d("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:$,value:V,onChange:T=>{const[D,R]=T.split("-");f(+D,+R-1)},block:!0,size:40}),n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:v,"aria-label":d("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(vs,{size:16,strokeWidth:2})})]}),n.jsxs("div",{className:"date-picker__grid",ref:F,onKeyDown:L,children:[C.map(T=>n.jsx("div",{className:"date-picker__dow caption-1",children:T},T)),z.map((T,D)=>{if(T===null)return n.jsx("div",{},`e${D}`);const R=ir(y,g,T),I=R===e,W=R===_,ee=G(T),oe=D%7;return n.jsx("button",{type:"button",disabled:ee,"data-day":T,tabIndex:T===U?0:-1,"aria-current":W?"date":void 0,onClick:()=>!ee&&P(T),className:we("date-picker__day caption-1",I&&"date-picker__day--selected",W&&!I&&"date-picker__day--today",ee&&"date-picker__day--disabled",oe===0&&"date-picker__day--sun",oe===6&&"date-picker__day--sat"),children:T},T)})]})]}),document.body):null;return n.jsxs("div",{className:we("date-picker",`date-picker--s${a}`,B&&"date-picker--open",u),children:[n.jsxs("button",{ref:N,type:"button",className:"date-picker__trigger body-2",onClick:()=>!s&&A(),disabled:s,"aria-haspopup":"true","aria-expanded":B,children:[n.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?_y(e):p}),n.jsx(Ds,{size:q,className:"date-picker__icon",strokeWidth:1.5})]}),H]})}function au({children:e,className:t}){const a=o.useRef(null),[r,i]=o.useState(null);return o.useEffect(()=>{i(a.current?.parentElement??null)},[]),o.useEffect(()=>{const s=a.current;if(!s||!r)return;const l=()=>{const c=typeof window<"u"&&window.getComputedStyle(s).position==="absolute"?Math.ceil(s.getBoundingClientRect().width):0;c>0?r.style.setProperty("--section-head-float-w",`${c}px`):r.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{r.style.removeProperty("--section-head-float-w")};const u=new ResizeObserver(()=>l());return u.observe(s),u.observe(r),()=>{u.disconnect(),r.style.removeProperty("--section-head-float-w")}},[r,e]),n.jsx("div",{ref:a,className:we("section-head-float",t),children:e})}function wo({items:e,className:t}){return n.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>n.jsxs("span",{className:"manager-bar-chart-legend-item",children:[n.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Ia({label:e,children:t}){return e?n.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[n.jsx("span",{className:"barchart-total__label body-3",children:e}),n.jsx("span",{className:"barchart-total__value",children:t})]}):n.jsx("div",{className:"barchart-total",children:t})}function Ao({title:e,titleClassName:t="h3",titleLevel:a=3,icon:r,disc:i,headRight:s,headFloat:l,headSegment:u,headMenuItems:c,collapseBelow:d=420,onClick:m,ariaLabel:p,tooltip:C,totalNum:_,totalUnit:y,totalLabel:g,subRow:h,subRowAlign:v="start",className:f,inGrid:w=!1,children:b}){const{t:B}=xe.useTranslation(),x=o.useRef(null),{anchorRect:A,openAt:k,close:N}=Ea(),S=o.useCallback(()=>{C&&x.current&&k(x.current)},[C,k]),[E,O]=o.useState(!1);xo(()=>{const D=x.current;if(!D||!u)return;const R=W=>O(W>0&&W<d);if(R(D.clientWidth),typeof ResizeObserver>"u")return;const I=new ResizeObserver(W=>R(W[0].contentRect.width));return I.observe(D),()=>I.disconnect()},[u,d]);const[F,Y]=o.useState(null),M=o.useCallback(()=>Y(null),[]),L=o.useCallback(D=>{const R=D.currentTarget.getBoundingClientRect();Y(I=>I?null:{left:R.left,right:R.right,top:R.top,bottom:R.bottom,width:R.width,height:R.height,x:R.x,y:R.y})},[]),P=!!u&&E;o.useEffect(()=>{P||Y(null)},[P]);const G=u?[...u.options.map(D=>({label:D.label,icon:D.icon,selected:D.key===u.value,disabled:D.disabled,onClick:()=>u.onChange(D.key),closeOnSelect:!0})),...(c??[]).map((D,R)=>R===0?{...D,separatorBefore:!0}:D)]:[],U=o.useCallback(D=>{if(!m)return;const R=D.target;R&&typeof R.closest=="function"&&R.closest('button, a, input, select, textarea, [role="radiogroup"]')||m()},[m]),z=o.useCallback(D=>{m&&D.target===D.currentTarget&&(D.key==="Enter"||D.key===" ")&&(D.preventDefault(),m())},[m]),q=typeof s=="function"?s({collapsed:P}):s,$=_!=null||g?n.jsxs(Ia,{label:g,children:[_!=null&&n.jsx("span",{className:"barchart-total__num h0",children:_}),y&&n.jsx("span",{className:"barchart-total__unit h5",children:y})]}):null,V=q||u?n.jsxs("div",{className:"manager-section__head-right",children:[u&&(P?n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:u.ariaLabel??B("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:u.ariaLabel??B("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!F,onClick:L}):n.jsx(gn,{size:32,ariaLabel:u.ariaLabel,options:u.options.map(D=>({key:D.key,label:D.label,disabled:D.disabled})),value:u.value,onChange:u.onChange})),q]}):null,H=o.useId(),T=a?`h${a}`:"div";return n.jsxs("section",{ref:x,className:["manager-section",w&&"manager-section--grid",m&&"manager-section--clickable",f].filter(Boolean).join(" "),onClick:m?U:void 0,onKeyDown:m?z:void 0,onPointerEnter:C?S:void 0,onPointerLeave:C?N:void 0,onFocus:C?S:void 0,onBlur:C?N:void 0,role:m?"button":void 0,tabIndex:m?0:void 0,"aria-label":m?p??(typeof e=="string"?e:void 0):void 0,"aria-labelledby":!m&&e!=null?H:void 0,children:[C&&A&&n.jsx(An,{anchorRect:{left:A.left,top:A.top+21,right:A.right,bottom:A.bottom,width:A.width,height:A.height},text:C}),l&&n.jsx(au,{children:l}),n.jsxs("div",{className:"manager-section__head",children:[n.jsxs("div",{className:"manager-section__title-row",children:[r&&n.jsx(at,{icon:r,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),n.jsx(T,{id:H,className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),V,i&&n.jsx("div",{className:"manager-section__disc body-3",children:i})]}),($||h)&&n.jsxs("div",{className:["barchart-sub-row",v!=="start"&&`barchart-sub-row--${v}`].filter(Boolean).join(" "),children:[$,h]}),b,F&&n.jsx(cn,{anchorRect:F,onClose:M,ariaLabel:u?.ariaLabel??B("tooltip.menu","\uBA54\uB274"),children:n.jsx(ja,{columns:[{items:G}],onClose:M,size:"small"})})]})}function bn(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function By(){const e=ra();let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<bn(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const i=Math.floor((r-bn(t,a))/7),s=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:s,value:`${s}#${i}`}}function ky(e){const t=ra(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=(c,d)=>`${c}\uB144 ${d+1}\uC6D4`,i=new Map;i.set(a,[]);for(const c of e){if(isNaN(c.date.getTime()))continue;const d=r(c.date.getFullYear(),c.date.getMonth());i.has(d)||i.set(d,[]),i.get(d).push(c)}for(const[c,d]of[...i.entries()]){const m=c.match(/^(\d+)년 (\d+)월$/);if(!m)continue;const p=Number(m[1]),C=Number(m[2])-1,_=bn(p,C);if(!(c===a&&t.getDate()<_)&&!d.some(h=>h.date.getDate()<_))continue;const y=new Date(p,C,0),g=r(y.getFullYear(),y.getMonth());i.has(g)||i.set(g,[])}const s=new Map;for(const[c,d]of i){const m=c.match(/^(\d+)년 (\d+)월$/);if(!m)continue;const p=Number(m[1]),C=Number(m[2])-1,_=new Date(p,C+1,0).getDate(),y=d.reduce((b,B)=>Math.max(b,B.parts?.length??0,B.partsB?.length??0),0),g=d.some(b=>b.partsB),h=new Array(_+1).fill(0),v=new Array(_+1).fill(0),f=Array.from({length:_+1},()=>new Array(y).fill(0)),w=Array.from({length:_+1},()=>new Array(y).fill(0));for(const b of d){const B=b.date.getDate();if(h[B]+=b.a,v[B]+=b.b,b.parts)for(let x=0;x<y;x++)f[B][x]+=b.parts[x]??0;if(b.partsB)for(let x=0;x<y;x++)w[B][x]+=b.partsB[x]??0}s.set(c,{year:p,month:C,daysInMonth:_,partsLen:y,hasPartsB:g,dayA:h,dayB:v,dayParts:f,dayPartsB:w})}const l=(c,d,m)=>new Date(c,d,m).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),u={};for(const[c,d]of s){const{year:m,month:p,daysInMonth:C,dayA:_,dayB:y,dayParts:g,dayPartsB:h}=d,v=m===t.getFullYear()&&p===t.getMonth(),f=t.getDate(),w=s.get(r(p===11?m+1:m,(p+1)%12)),b=d.partsLen,B=[];for(let A=1;A<=C;A++){const k=v&&A>f;B.push({label:String(A),...k&&_[A]===0&&y[A]===0?{future:!0}:{},a:k&&_[A]===0&&y[A]===0?-1:_[A],b:y[A],...b?{parts:g[A]}:{},...b&&d.hasPartsB?{partsB:h[A]}:{}})}const x=[];for(let A=bn(m,p);A<=C;A+=7){const k=Math.max(0,A+6-C),N=k&&w?Math.max(b,w.partsLen):b,S=d.hasPartsB||!!(k&&w?.hasPartsB);let E=0,O=0;const F=new Array(N).fill(0),Y=new Array(N).fill(0);for(let L=A;L<=Math.min(A+6,C);L++){E+=_[L],O+=y[L];for(let P=0;P<b;P++)F[P]+=g[L][P],Y[P]+=h[L][P]}if(k&&w)for(let L=1;L<=k&&!l(w.year,w.month,L);L++){E+=w.dayA[L],O+=w.dayB[L];for(let P=0;P<w.partsLen;P++)F[P]+=w.dayParts[L][P],Y[P]+=w.dayPartsB[L][P]}const M=k?`${(p+1)%12+1}/${k}`:`${A+6}`;x.push({label:`${x.length+1}\uC8FC`,sublabel:`[${A}\uC77C~${M}\uC77C]`,a:E,b:O,...N?{parts:F}:{},...N&&S?{partsB:Y}:{}})}u[c]={weekly:x,daily:B}}return u}function ru(){const e=ra(),t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let i=2024;i<=t;i++){const s=i===t?a:12;for(let l=1;l<=s;l++){const u=`${i}\uB144 ${l}\uC6D4`;r.push({value:u,label:u,year:i,month:l})}}return r.reverse()}ru();function Ny(){return ru()}function ou(e,t){const a=e("calendar.weekOrdinal",{returnObjects:!0,defaultValue:[]}),r=Array.isArray(a)&&typeof a[t]=="string"?a[t]:null;return e("calendar.weekLabel",{ord:r??String(t+1)})}function su(e){const{t,i18n:a}=xe.useTranslation(),[r,i]=o.useState("week"),s=o.useMemo(()=>Ny().filter(N=>N.value in e),[e]),l=o.useMemo(()=>{const N=[];for(const S of s){const E=new Date(S.year,S.month,0).getDate(),O=bn(S.year,S.month-1),F=Math.ceil((E-O+1)/7);for(let Y=F-1;Y>=0;Y--)N.push({value:`${S.value}#${Y}`,monthKey:S.value,year:S.year,month:S.month,week:Y})}return N},[s]),u=o.useCallback(N=>`${Kr(t,a.language,N.year,N.month)} ${ou(t,N.week)}`,[t]),c=o.useMemo(()=>s.map(N=>({value:N.value,label:t("calendar.yearMonth",{year:N.year,month:N.month})})),[t,s]),d=o.useMemo(()=>l.map(N=>({value:N.value,label:u(N)})),[l,u]),m=o.useMemo(()=>By(),[e]),p=o.useMemo(()=>s.find(N=>N.value===m.monthKey)?.value??s[0]?.value??"",[s,m]),C=o.useMemo(()=>l.find(N=>N.value===m.value)?.value??l[0]?.value??"",[l,m]),[_,y]=o.useState(""),[g,h]=o.useState("");o.useEffect(()=>{s.find(N=>N.value===_)||y(p)},[s,_,p]),o.useEffect(()=>{l.find(N=>N.value===g)||h(C)},[l,g,C]);const v=r==="month"?c:d,f=r==="month"?_:g,w=r==="month"?y:h,b=o.useMemo(()=>{const N=t("calendar.dow",{returnObjects:!0});return Array.isArray(N)?N:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),B=v.findIndex(N=>N.value===f),x=o.useCallback(()=>{const N=v.findIndex(S=>S.value===f);N<v.length-1&&w(v[N+1].value)},[v,f,w]),A=o.useCallback(()=>{const N=v.findIndex(S=>S.value===f);N>0&&w(v[N-1].value)},[v,f,w]),k=o.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:i,range:f,setRange:w,activeOptions:v,activeIdx:B,handlePrev:x,handleNext:A,periodOptions:k,monthRange:_,weekRange:g,weekRanges:l,DOW:b}}const _t=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function En(e,t=!0){return e.future===!0||t&&e.a===-1}function Ey({data:e,colorA:t,colorB:a,labelA:r,labelB:i,barWidth:s=10,barGap:l=1,height:u=140,maxOverride:c,tightMax:d,seriesColors:m,seriesLabels:p,rateLabels:C,grouped:_=!1,baseline:y,focusableBars:g=!1}){const h=!a,v=!!(m&&m.length>0),f=y,w=o.useMemo(()=>v?Math.max(0,...e.filter(z=>!En(z,f==null)).map(z=>_?Math.max(0,...(z.parts??[]).map(_t)):(z.parts??[]).reduce((q,$)=>q+Math.max(0,_t($)),0))):Math.max(0,...e.filter(z=>!En(z,f==null)).flatMap(z=>h?[_t(z.a)]:[_t(z.a),_t(z.b)])),[e,h,v,_]),b=o.useMemo(()=>{if(f==null)return 0;const z=e.filter(q=>!En(q,f==null)).flatMap(q=>v?(q.parts??[]).map(_t):h?[_t(q.a)]:[_t(q.a),_t(q.b)]);return Math.max(0,...z.map(q=>Math.abs(q-f)))},[e,f,v,h]),B=o.useMemo(()=>{const z=f!=null?b:w;return c??(d?z>0?z:10:Math.ceil(z/10)*10||10)},[w,b,f,c,d]),x=u,A=v?_?Math.max(1,m.length):1:h?1:2,k={"--bar-width":`${o.useMemo(()=>{const z=Math.max(1,e.length);return Math.max(2,Math.min(s,Math.round(120/(z*A)+6)))},[e.length,A,s])}px`},N={"--bar-group-gap":`${Math.max(0,l)}px`},S=o.useMemo(()=>{const z=Math.round(B/2);return f!=null?[f+B,...z!==B?[f+z]:[],f,...z!==B?[f-z]:[],f-B]:z!==B?[B,z,0]:[B,0]},[B,f]),E=z=>f!=null?1-(z-(f-B))/(2*B):1-z/B,[O,F]=o.useState(null),Y=o.useCallback(()=>F(null),[]),M=o.useCallback((z,q)=>{const $=[z.label,z.sublabel].filter(Boolean).join(" ");let V;if(v&&_&&z.rawPartsB)V=(p??[]).map((H,T)=>{const D=z.rawPartsB[T]??0;return{text:D>0?`${H}: ${q[T]??0}% (${z.rawParts?.[T]??0}/${D})`:`${H}: -`,color:(m??[])[T]}});else if(v&&_)V=(p??[]).map((H,T)=>({text:`${H}: ${G(q[T]??0)}`,color:(m??[])[T]}));else if(v){const H=(p??[]).map((D,R)=>({text:`${D}: ${q[R]??0}`,color:(m??[])[R]})),T=H.filter((D,R)=>(q[R]??0)>0);V=T.length?T:H}else C&&!h?V=[{text:`${r} ${_t(z.a)}%`,color:t},{text:`${i} ${_t(z.b)}%`,color:a}]:C&&z.rawB!==void 0?V=[{text:`${C.total} ${z.rawB}`},{text:`${C.done} ${z.rawA??0}`,color:t}]:h?V=[{text:`${r}: ${_t(z.a)}`,color:t}]:V=[{text:`${r}: ${_t(z.a)}`,color:t},{text:`${i}: ${_t(z.b)}`,color:a}];return{title:$,items:V}},[v,_,p,m,C,h,r,i,t,a,f]),L=o.useCallback((z,q,$)=>{const V=z.getBoundingClientRect(),{title:H,items:T}=M(q,$);F({rect:{left:V.left,top:V.top,right:V.right,bottom:V.bottom,width:V.width,height:V.height},title:H,items:T})},[M]),P=o.useCallback((z,q)=>{const{title:$,items:V}=M(z,q);return[$,...V.map(H=>H.text)].filter(Boolean).join(", ")},[M]),G=z=>f!=null&&z>f?`+${z}`:`${z}`,U=O!=null;return o.useEffect(()=>{if(!U)return;const z=()=>F(null),q=$=>{const V=$.target;V&&typeof V.closest=="function"&&V.closest(".manager-bar-chart-col")||F(null)};return window.addEventListener("scroll",z,!0),document.addEventListener("pointerdown",q,!0),()=>{window.removeEventListener("scroll",z,!0),document.removeEventListener("pointerdown",q,!0)}},[U]),n.jsxs("div",{className:"manager-bar-chart-wrap",style:N,children:[n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsx("div",{className:"manager-bar-chart-scroll",children:n.jsxs("div",{className:"manager-bar-chart-area",children:[n.jsxs("div",{className:"manager-bar-chart-plot",style:{height:x},children:[S.slice(0,-1).map((z,q)=>n.jsx("div",{className:`manager-bar-chart-gridline${f!=null&&z===f?" manager-bar-chart-gridline--baseline":""}`,style:{top:E(z)*x},children:n.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:z})},q)),e.map((z,q)=>{const $=En(z,f==null),V=x/2,H=I=>f!=null?Math.min(V,Math.abs(_t(I)-f)/B*V):Math.min(x,Math.max(0,_t(I)/B*x)),T=$?0:H(z.a),D=$?0:H(z.b),R=(z.parts??[]).map(_t);return n.jsx("div",{className:`manager-bar-chart-col${_&&v?" manager-bar-chart-col--group":""}`,style:{cursor:$?"default":"pointer"},tabIndex:g&&!$?0:void 0,role:g&&!$?"img":void 0,"aria-label":g&&!$?P(z,R):void 0,onMouseEnter:$?void 0:I=>L(I.currentTarget,z,R),onFocus:$||!g?void 0:I=>L(I.currentTarget,z,R),onBlur:g?Y:void 0,onMouseLeave:Y,children:!$&&(v&&_?(m??[]).map((I,W)=>{const ee=R[W]??0;if(f==null)return n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:H(ee),background:I}},W);const oe=_t(ee)<f;return n.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!oe&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:H(ee),background:I}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:oe&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:H(ee),background:I}})})]},W)}):v?n.jsx("div",{className:"manager-bar-chart-stack",style:k,children:(()=>{const I=R.reduce((ee,oe,ce)=>oe>0?ce:ee,-1);let W=x;return R.map((ee,oe)=>{if(ee<=0)return null;const ce=Math.min(W,ee/B*x);return W-=ce,n.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:ce,background:(m??[])[oe],borderRadius:oe===I?"6px 6px 0 0":void 0}},oe)})})()}):f!=null?n.jsx(n.Fragment,{children:[{v:_t(z.a),c:t},...h?[]:[{v:_t(z.b),c:a}]].map(({v:I,c:W},ee)=>n.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:I>=f&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:H(I),background:W}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:I<f&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:H(I),background:W}})})]},ee))}):n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:T,background:t}}),!h&&n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:D,background:a}})]}))},q)})]}),n.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((z,q)=>{const $=En(z,f==null);return n.jsxs("span",{className:`manager-bar-chart-x-axis__label${$?" manager-bar-chart-x-axis__label--future":""}`,children:[n.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[z.isToday&&n.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),z.label]}),z.sublabel&&n.jsx("span",{className:"caption-1",children:z.sublabel})]},q)})})]})})}),O&&n.jsx(Gn,{anchorRect:O.rect,title:O.title,items:O.items,showIndex:!1,closeOnOutsideClick:!1})]})}function iu({control:e}){const{t}=xe.useTranslation(),{activeOptions:a,activeIdx:r,range:i,setRange:s,handlePrev:l,handleNext:u,periodOptions:c,period:d,setPeriod:m}=e,p=d==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),C=d==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return n.jsxs("div",{className:"manager-section-controls",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:p,showTooltipInfo:p,disabled:r===a.length-1,onClick:l}),n.jsx(pn,{value:i,onChange:s,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:C,showTooltipInfo:C,disabled:r<=0,onClick:u}),n.jsx(gn,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:c,value:d,onChange:_=>m(_),size:40})]})}function Bo(e,t,a,r=!0){const i=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(s,l)=>{const u=new Date(t);u.setDate(t.getDate()+l);const c=(e[`${u.getFullYear()}\uB144 ${u.getMonth()+1}\uC6D4`]?.daily??[])[u.getDate()-1],d=c!=null&&En(c,r)||u>i;return{dt:u,entry:c,isFuture:d}})}function Dy(e,t,a,r=!0){const{period:i,monthRange:s,weekRange:l,weekRanges:u,DOW:c}=t,d=ra(),m=d.getFullYear(),p=d.getMonth()+1,C=d.getDate();if(i==="month"){const g=e[s]??{weekly:[],daily:[]},h=s.match(/^(\d+)년 (\d+)월$/),v=h?Number(h[1]):null,f=h?Number(h[2]):null,w=v&&f?bn(v,f-1):1;return g.weekly.map((b,B)=>{const x=B+1;let A=b.label,k=!1,N=!1;if(v&&f){const S=w+B*7,E=new Date(v,f-1,S+6),O=E.getMonth()+1,F=E.getDate(),Y=O===f?`${F}`:`${O}/${F}`;A=a("manager.chart.weekRange",{start:S,end:Y});const M=new Date(m,p-1,C).getTime();k=M>=new Date(v,f-1,S).getTime()&&M<=E.getTime(),N=v>m||v===m&&(f>p||f===p&&S>C)}return{...b,label:A,sublabel:ou(a,x-1),isToday:k,future:b.future===!0||N||void 0,a:N?-1:b.a,b:N?0:b.b}})}const _=u.find(g=>g.value===l);if(!_)return[];const y=new Date(_.year,_.month-1,bn(_.year,_.month-1)+_.week*7);return Bo(e,y,d,r).map(({dt:g,entry:h,isFuture:v})=>{const f=g.getMonth()+1,w=g.getDate(),b=g.getFullYear();return{label:f===_.month&&b===_.year?`${w}`:`${f}/${w}`,sublabel:c[g.getDay()]??"",future:v||void 0,a:v?-1:h&&h.a>0?h.a:0,b:v?0:h&&h.b>0?h.b:0,isToday:b===m&&f===p&&w===C,...h?.parts?{parts:v?h.parts.map(()=>0):h.parts}:{},...h?.partsB?{partsB:v?h.partsB.map(()=>0):h.partsB}:{}}})}const Sy={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function jy({focusableBars:e,size:t="medium",barWidth:a,titleKey:r,titleLevel:i,data:s,colorA:l,colorB:u,labelAKey:c,labelBKey:d,showTotal:m=!1,totalUnitKey:p,totalLabelKey:C,control:_,hideControls:y=!1,rate:g=!1,rateAgg:h="dayMean",tightMax:v=!1,avgMode:f=!1,totalFormat:w,series:b,seriesMode:B="stack",loading:x=!1,onDetail:A,headExtra:k,headSegment:N,icon:S,disc:E,onClick:O,cardAriaLabel:F,cardTooltip:Y,detailSize:M=32,barGap:L,baseline:P,className:G,inGrid:U=!1}){const{t:z}=xe.useTranslation(),q=Sy[t],$=su(s),V=_??$,H=o.useMemo(()=>Dy(s,V,z,P==null),[s,V,z,P]),T=B==="group"&&!!b&&b.length>0;L!=null&&!T&&Zt("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const D=o.useMemo(()=>{if(!g)return H;const J=V.period==="month"?V.monthRange.match(/^(\d+)년 (\d+)월$/):null,re=ra(),Ne=b?.length??0,K=Q=>{const pe=[],De=[],ye=[];for(let ne=0;ne<Ne;ne++){let le=0,Ce=0,ge=0;for(const fe of Q){const $e=_t(fe.a[ne]),Ve=_t(fe.b[ne]);Ve<=0||(le+=$e,Ce+=Ve,ge+=$e/Ve*100)}pe.push(h==="weighted"?Ce>0?Math.round(le/Ce*100):0:Q.length?Math.round(ge/Q.length):0),De.push(le),ye.push(Ce)}return{pct:pe,ra:De,rb:ye}};return H.map((Q,pe)=>{let De=Q.a===-1?-1:Q.b>0?Math.round(Q.a/Q.b*100):0;if(J&&!En(Q)){const ne=Number(J[1]),le=Number(J[2])-1,Ce=Bo(s,new Date(ne,le,bn(ne,le)+pe*7),re).filter(ge=>!ge.isFuture);if(h==="weighted"){let ge=0,fe=0;for(const{entry:$e}of Ce)$e&&$e.b>0&&(ge+=$e.a,fe+=$e.b);De=fe>0?Math.round(ge/fe*100):0}else De=Ce.length?Math.round(Ce.reduce((ge,{entry:fe})=>ge+(fe&&fe.b>0?fe.a/fe.b*100:0),0)/Ce.length):0}let ye=null;if(T&&!En(Q)){let ne;if(J){const Ce=Number(J[1]),ge=Number(J[2])-1;ne=Bo(s,new Date(Ce,ge,bn(Ce,ge)+pe*7),re).filter(fe=>!fe.isFuture).map(({entry:fe})=>({a:fe?.parts??[],b:fe?.partsB??[]}))}else ne=[{a:Q.parts??[],b:Q.partsB??[]}];const le=K(ne);ye={parts:le.pct,rawParts:le.ra,rawPartsB:le.rb}}return{...Q,a:De,b:Q.a===-1?0:d&&Q.parts&&Q.parts[1]>0?Math.round(Q.parts[0]/Q.parts[1]*100):0,rawA:Q.a===-1?-1:Q.a,rawB:Q.b,...ye??{}}})},[H,g,h,d,V.period,V.monthRange,s,T,b?.length]),R=o.useMemo(()=>{if(g||f){const re=(V.period==="week"?H:s[V.monthRange]?.daily??[]).filter(K=>K.a!==-1);if(re.length===0)return 0;if(g&&h==="weighted"){let K=0,Q=0;for(const pe of re)pe.b>0&&(K+=pe.a,Q+=pe.b);return Q>0?Math.round(K/Q*100):0}const Ne=g?re.reduce((K,Q)=>K+(Q.b>0?Q.a/Q.b*100:0),0):re.reduce((K,Q)=>K+(Q.a>0?Q.a:0),0);return Math.round(Ne/re.length)}const J=V.period==="month"?s[V.monthRange]?.daily??[]:D;return P!=null?J.reduce((re,Ne)=>re+(En(Ne,!1)?0:_t(Ne.a)+(d?_t(Ne.b):0)),0):J.reduce((re,Ne)=>re+(Ne.a>0?Ne.a:0)+(d&&Ne.b>0?Ne.b:0),0)},[D,H,g,h,f,P,d,V.period,V.monthRange,s]),I=b&&b.length>0?b.map(J=>({color:J.color,label:J.label})):[{color:l,label:z(c)},...d?[{color:u,label:z(d)}]:[]],W=t==="small",ee=[W?"manager-section--compact":t==="large"?"manager-section--full":void 0,G].filter(Boolean).join(" ")||void 0,oe=r?z(r):"",ce=oe?z("trainingStatus.detailFor",{name:oe,defaultValue:"{{name}} \uC0C1\uC138\uBCF4\uAE30"}):z("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30");return n.jsx(Ao,{className:ee,inGrid:U,icon:S,disc:E,onClick:O,ariaLabel:F,tooltip:Y,headSegment:N,headMenuItems:A?[{label:ce,icon:"list",onClick:A,closeOnSelect:!0}]:void 0,title:z(r),titleLevel:i,titleClassName:W?"h5 chart-section-title--small":void 0,headRight:W?k??void 0:({collapsed:J})=>n.jsxs(n.Fragment,{children:[!y&&n.jsx(iu,{control:V}),k,A&&!J&&n.jsx("span",{className:"manager-bar-chart-detail-btn",children:n.jsx(me,{htmlType:"button",size:M,type:"dot",icon:"list",ariaLabel:ce,showTooltipInfo:ce,onClick:A})})]}),subRow:n.jsxs(n.Fragment,{children:[m?g||f||C&&w?n.jsx(Ia,{label:W?void 0:`${z(V.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${z(C??c)}`,children:w?(w(R).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((J,re)=>/\d/.test(J)?n.jsx("span",{className:"barchart-total__num h0",children:J},re):n.jsx("span",{className:"barchart-total__unit h5",children:J},re)):n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),p&&n.jsx("span",{className:"barchart-total__unit h5",children:z(p)})]})}):n.jsxs(Ia,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),n.jsx("span",{className:"barchart-total__unit h5",children:z(c)}),p&&n.jsx("span",{className:"barchart-total__unit h5",children:z(p)})]}):n.jsx("span",{}),n.jsx(wo,{items:I,className:"caption-1"})]}),children:x?n.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[n.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:q.height},children:n.jsx(Fa,{size:32})}),n.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:n.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[n.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),D.some(J=>!!J.sublabel)&&n.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):n.jsx(Ey,{focusableBars:e,data:D,colorA:l,colorB:d?u:void 0,labelA:z(c),labelB:d?z(d):void 0,barWidth:a??q.barWidth,barGap:L,baseline:P,height:q.height,maxOverride:g?100:void 0,tightMax:v,seriesColors:b?.map(J=>J.color),seriesLabels:b?.map(J=>J.label),rateLabels:g?{total:z("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:z("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:T})})}const lu=120,Ty={left:38,right:16,top:26,bottom:24};function My({points:e=[],range:t,ticks:a=[],axisTitle:r,color:i,height:s=156,fallbackWidth:l=320,insets:u,overlay:c,ariaLabel:d,className:m}){const[p,C]=o.useState(null),[_,y]=o.useState(null);o.useEffect(()=>{if(!_)return;const P=U=>C(Math.round(U)||null);if(P(_.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const G=new ResizeObserver(([U])=>P(U.contentRect.width));return G.observe(_),()=>{G.disconnect()}},[_]);const{payload:g,anchorRect:h,openAfterDelay:v,close:f}=Pb(lu),w=o.useCallback((P,G)=>{P&&v(P,G.getBoundingClientRect())},[v]),b=p??l,B=s,{left:x,right:A,top:k,bottom:N}={...Ty,...u},[S,E]=t,O=P=>E===S?x:x+(b-x-A)*(P-S)/(E-S),F=P=>k+(B-k-N)*(100-P)/100,Y={x:O,y:F,plot:{left:x,right:b-A,top:k,bottom:B-N,width:Math.max(0,b-x-A),height:Math.max(0,B-k-N)}},M=e.filter(P=>!P.hollow),L=i??"var(--color-main)";return n.jsxs(n.Fragment,{children:[n.jsxs("svg",{ref:y,className:we("line-chart",m),viewBox:`0 0 ${b} ${B}`,role:"img","aria-label":d??e.map(P=>P.description).filter(Boolean).join(", "),children:[r&&n.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:r}),[0,100].map(P=>n.jsxs("g",{children:[n.jsx("line",{className:"line-chart__grid",x1:x,x2:b-A,y1:F(P),y2:F(P)}),n.jsxs("text",{className:"line-chart__tick",x:x-6,y:F(P)+4,textAnchor:"end",children:[P,"%"]})]},P)),c?.(Y),a.map(P=>n.jsx("text",{className:"line-chart__tick",x:O(P.x),y:B-5,textAnchor:"middle",children:P.label},P.x)),M.length>1&&n.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:L,points:M.map(P=>`${O(P.x)},${F(P.pct)}`).join(" ")}),e.map(P=>n.jsxs("g",{className:"line-chart__dot",onPointerEnter:G=>w(P.description,G.currentTarget),onPointerLeave:f,children:[n.jsx("circle",{className:"line-chart__dot-hit",cx:O(P.x),cy:F(P.pct),r:12}),n.jsx("circle",{className:we("line-chart__dot-main",P.hollow&&"is-hollow"),cx:O(P.x),cy:F(P.pct),r:4,stroke:L,fill:P.hollow?void 0:L})]},P.x))]}),g!=null&&n.jsx(cn,{anchorRect:h,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:g,children:g})]})}function Ly({icon:e,iconSize:t=56,title:a,titleClass:r="h2",description:i,tipGroups:s,start:l,className:u}){return n.jsxs("div",{className:we("game-intro",u),children:[e!=null&&n.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),n.jsx("h2",{className:we("game-intro__title",r),children:a}),i!=null&&n.jsx("p",{className:"game-intro__description body-3",children:i}),s?.map((c,d)=>n.jsxs("div",{className:"game-intro__tips",children:[c.title!=null&&n.jsx("span",{className:"game-intro__tips-title body-3",children:c.title}),c.tips.map((m,p)=>n.jsxs("span",{className:"game-intro__tip body-3",children:[m.icon!=null&&n.jsx("span",{"aria-hidden":"true",children:m.icon}),n.jsx("span",{children:m.text})]},p))]},d)),l&&n.jsx(me,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const uu=(e,t,a)=>{const r=new Date(Date.UTC(e,t,a));return`${r.getUTCFullYear()}-${String(r.getUTCMonth()+1).padStart(2,"0")}-${String(r.getUTCDate()).padStart(2,"0")}`},cu=(e,t,a,r)=>({from:xi(e,t,a),to:new Date(xi(e,t,a+r).getTime()-1),fromYmd:uu(e,t,a),toYmd:uu(e,t,a+r-1)});function $y(e,t=0){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),s=ra(),l=i?Number(i[1]):s.getFullYear(),u=(i?Number(i[2]):s.getMonth()+1)-1+t,c=new Date(Date.UTC(l,u+1,0)).getUTCDate();return cu(l,u,1,c)}const a=e.weekRanges.find(i=>i.value===e.weekRange);if(!a){const i=new Date,s=Ba();return{from:i,to:i,fromYmd:s,toYmd:s}}const r=bn(a.year,a.month-1);return cu(a.year,a.month-1,r+(a.week+t)*7,7)}const ko={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function du(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function pu({done:e,total:t,segments:a,color:r="var(--color-main)",size:i="medium",strokeWidth:s,label:l="%",hideCenter:u=!1,hideLabel:c=!1}){const d=typeof i=="number"?i:ko[i].diameter,m=s??(typeof i=="number"?12:ko[i].strokeWidth),p=d/2,C=(d-m)/2,_=2*Math.PI*C;if(a&&a.length>0){const v=a.reduce((f,w)=>{const b=f.length>0?f[f.length-1].acc:0,B=Number.isFinite(w.ratio)?w.ratio:0,x=Math.max(0,Math.min(B,1-b));return f.push({color:w.color,rotate:-90+b*360,dash:_*x,acc:b+x}),f},[]);return n.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:n.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),v.map((f,w)=>f.dash>0&&n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:f.color,strokeWidth:m,strokeDasharray:`${f.dash} ${_}`,strokeLinecap:"round",transform:`rotate(${f.rotate} ${p} ${p})`},w))]})})}const y=(t??0)>0?Math.min((e??0)/t,1):0,g=_*y,h=_-g;return n.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[n.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),y>0&&n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:r,strokeWidth:m,strokeDasharray:`${g} ${h}`,strokeLinecap:y<.02||y>.98?"butt":"round",transform:`rotate(-90 ${p} ${p})`})]}),!u&&n.jsxs("div",{className:`ring-chart__center${c?"":` ${d<=96?"ring-chart__center--small":i==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[n.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:du(y)}),!c&&n.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||i==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function Ry({titleKey:e,titleLevel:t,headRight:a,icon:r,showTotal:i,totalLabelKey:s,legend:l,loading:u,className:c,inGrid:d=!1,onClick:m,ariaLabel:p,tooltip:C,..._}){const{t:y}=xe.useTranslation();if(!e)return n.jsx(pu,{..._});const g=(_.total??0)>0?du(Math.min((_.done??0)/_.total,1)):0,h=_.size==="small",v=typeof _.size=="number"?_.size:ko[_.size??"medium"].diameter,f=_.size==="large",w=[c,h?"manager-section--compact":f?"manager-section--full":""].filter(Boolean).join(" ")||void 0,b=r&&n.jsx("span",{className:"chart-section-icon",children:n.jsx(at,{icon:r,className:"chart-section-icon-inner"})});return n.jsx(Ao,{className:w,inGrid:d,onClick:m,ariaLabel:p,tooltip:C,title:y(e),titleLevel:t,titleClassName:h?"h5 chart-section-title--small":void 0,headRight:b||(h?void 0:a),subRow:(i||l)&&n.jsxs(n.Fragment,{children:[i?n.jsxs(Ia,{label:!h&&s?y(s):void 0,children:[n.jsx("span",{className:"barchart-total__num h0",children:g}),n.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):n.jsx("span",{}),l&&n.jsx(wo,{items:l})]}),children:u?n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:v,height:v},"aria-busy":"true",children:n.jsx(Fa,{size:32})})}):n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx(pu,{..._,hideCenter:_.hideCenter??h})})})}function Py({label:e,value:t,change:a,changeType:r,icon:i,tooltip:s,onClick:l,children:u}){const c=o.useRef(null),{anchorRect:d,openAt:m,close:p}=Ea(),C=o.useCallback(()=>{s&&c.current&&m(c.current)},[s,m]),_=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),y=a===void 0?void 0:a>0?`+${a}`:`${a}`,g=o.useCallback(h=>{l&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),l())},[l]);return n.jsxs("div",{ref:c,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?g:void 0,onPointerEnter:C,onPointerLeave:p,onFocus:C,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,y].filter(h=>h!==void 0&&h!=="").join(" "):void 0,children:[s&&d&&n.jsx(An,{anchorRect:{left:d.left,top:d.top+21,right:d.right,bottom:d.bottom,width:d.width,height:d.height},text:s}),n.jsxs("div",{className:"manager-stat-card__label-row",children:[n.jsx("span",{className:"manager-stat-card__label h5",children:e}),i&&n.jsx("span",{className:"manager-stat-card__icon",children:n.jsx(at,{icon:i,className:"manager-stat-card__icon-inner"})})]}),n.jsxs("div",{className:"manager-stat-card__content",children:[n.jsxs("div",{className:"manager-stat-card__left",children:[n.jsx("div",{className:"manager-stat-card__value h2",children:t}),y&&n.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${_??"neutral"} caption-1`,children:y})]}),u&&n.jsx("div",{className:"manager-stat-card__body",children:u})]})]})}function mu({value:e,onChange:t,min:a=0,max:r=100,step:i=1,orientation:s="horizontal",size:l=24,disabled:u=!1,ariaLabel:c,length:d,className:m,label:p,formatValue:C,labelPos:_,labelAlign:y="right",showMinMax:g=!1,minLabel:h,maxLabel:v,showBgTick:f=!1,showFillTick:w=!1,tickStep:b,tickShape:B="dot"}){t&&!c&&Zt("Slider:unnamed","[ihab/Slider] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. label prop \uC740 \uAC12 \uD45C\uAE30 \uBC29\uC2DD\uC774\uC9C0 \uC774\uB984\uC774 \uC544\uB2D9\uB2C8\uB2E4.");const x=Math.min(r,Math.max(a,e)),A=r>a?(x-a)/(r-a):0,k=s==="vertical",N=!t,S=H=>t?.(Number(H.target.value)),E=typeof d=="number"?`${d}px`:d,O={"--slider-ratio":String(A),"--slider-thumb":`${l}px`,...E?k?{height:E}:{width:E}:{}},F=b??i,Y=(f||w)&&F>0&&r>a?Math.floor((r-a)/F+1e-6):0;if(Y>0&&Y<=100){const H=B!=="dash",T=ee=>H?`radial-gradient(circle, ${ee} 0.5px, transparent 1px)`:k?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`,D=H?"2px":"4px",R=[],I=[],W=[];for(let ee=0;ee<=Y;ee++){const oe=ee*F/(r-a);if(oe>1+1e-6)break;const ce=`${((k?1-oe:oe)*100).toFixed(4)}%`,J=oe<=A+1e-6;if(J?!w:!f)continue;const re=J?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";R.push(T(re)),I.push(k?`${D} var(--slider-thumb)`:`var(--slider-thumb) ${D}`),W.push(k?`center ${ce}`:`${ce} center`)}R.push(k?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),I.push("100% 100%"),W.push("0 0"),O.backgroundImage=R.join(", "),O.backgroundSize=I.join(", "),O.backgroundPosition=W.join(", "),O.backgroundRepeat="no-repeat"}const M=C?C(x):p==="percent"?`${Math.round(r>a?(x-a)/(r-a)*100:0)}%`:p==="count"?`${x} / ${r}`:x===a&&h?h:x===r&&v?v:void 0,L=n.jsx("input",{type:"range",className:we("slider",`slider--${s}`,N&&"slider--static",!p&&!g&&m),min:a,max:r,step:i,value:x,disabled:u,readOnly:N,tabIndex:N?-1:void 0,"aria-label":c,"aria-valuetext":M,"aria-orientation":s,onChange:S,style:O});if(!p&&!g)return L;const P=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:h??a}),G=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:v??r}),U=g?n.jsxs("div",{className:we("slider-track-group",`slider-track-group--${s}`,!p&&m),children:[k?G:P,L,k?P:G]}):L;if(!p)return U;const z=_??(k?"bottom":"right"),q=`${Math.round(r>a?(x-a)/(r-a)*100:0)}%`,$=C?C(x):p==="percent"?q:p==="count"?`${x} / ${r}`:String(x),V=n.jsx("span",{className:"slider-wrap__value body-3b",children:$});return n.jsxs("div",{className:we("slider-wrap",`slider-wrap--${s}`,`slider-wrap--label-${z}`,`slider-wrap--align-${y}`,m),children:[U,V]})}const Fy=.86,Iy=250,No=(e,t,a,r)=>Math.round(Math.min(r,Math.max(a,e-t))),Eo=(e,t,a,r)=>{const i=No(e,t,a,r);return`${i<0?"-":"+"}${Math.abs(i)} dB`};function Do({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:i,labelPos:s,labelAlign:l="right",floorDb:u=-60,refDb:c=-35,displayMin:d=-5,displayMax:m=25,className:p,ariaLabel:C}){const _=o.useRef(null),y=o.useRef(null),g=o.useRef(null),h=o.useRef(null),[v,f]=o.useState(null);o.useEffect(()=>{const x=L=>{const P=Eo(L,c,d,m);g.current&&(g.current.textContent=P);const G=_.current;G&&(G.setAttribute("aria-valuenow",String(No(L,c,d,m))),G.setAttribute("aria-valuetext",P))},A=e??AC(t)??(v&&v.el===t?v.node:null),k=y.current;if(!A||!k){k?.style.setProperty("--meter-level","0"),x(u);let L=!1;return!e&&t&&qa(t).then(P=>{!L&&P&&f({el:t,node:P})}),()=>{L=!0}}zr();const N=new Float32Array(A.fftSize);let S=0,E=0,O=0,F=0,Y=null;const M=L=>{const P=BC(A,N);S=P>S?P:S*Fy;const G=S>1e-5?20*Math.log10(S):-1/0,U=Math.max(u,G),z=U-c,q=Math.min(1,Math.max(0,(z-d)/(m-d)));if(k.style.setProperty("--meter-level",q.toFixed(3)),E+=U,O+=1,L-F>=Iy){const $=E/O;Y=Y==null?$:Y*.6+$*.4,x(Y),E=0,O=0,F=L}h.current=requestAnimationFrame(M)};return h.current=requestAnimationFrame(M),()=>{h.current!=null&&cancelAnimationFrame(h.current),h.current=null}},[e,t,v,u,c,d,m]);const w=typeof r=="number"?`${r}px`:r,b=n.jsx("div",{className:"audio-meter__track",style:w?a==="vertical"?{height:w}:{width:w}:{},children:n.jsx("div",{ref:y,className:"audio-meter__fill"})}),B=s??(a==="vertical"?"bottom":"right");return n.jsxs("div",{ref:_,className:we("audio-meter",`audio-meter--${a}`,i&&`audio-meter--label-${B}`,i&&`audio-meter--align-${l}`,p),role:"meter","aria-label":C,"aria-valuemin":d,"aria-valuemax":m,"aria-valuenow":No(u,c,d,m),"aria-valuetext":Eo(u,c,d,m),children:[b,i&&n.jsx("span",{ref:g,className:"audio-meter__value caption-2",children:Eo(u,c,d,m)})]})}const hu=260;function Cu({message:e,position:t,duration:a,onClose:r}){const[i,s]=o.useState(!1),[l,u]=o.useState(!1),c=o.useRef(l),d=o.useRef(i);o.useEffect(()=>{c.current=l},[l]),o.useEffect(()=>{d.current=i},[i]);const m=o.useRef(null),p=o.useRef(""),C=o.useRef(r);o.useEffect(()=>{C.current=r});const _=a,y=o.useRef(null),g=o.useRef(0),h=o.useRef(0),v=o.useRef(!1),f=o.useRef(null),w=o.useRef(null),b=o.useRef(null),B=o.useRef(null),x=o.useRef(()=>{});x.current=N=>{N<0||(g.current=Date.now(),h.current=N,y.current=setTimeout(()=>{y.current=null,s(!1),f.current=setTimeout(()=>{u(!1);try{C.current()}catch{}},hu)},N))};const A=o.useCallback(()=>{v.current||!y.current||(v.current=!0,clearTimeout(y.current),y.current=null,h.current=Math.max(0,h.current-(Date.now()-g.current)))},[]),k=o.useCallback(()=>{v.current&&(v.current=!1,x.current(h.current))},[]);return o.useEffect(()=>{if(e!==p.current&&(y.current&&(clearTimeout(y.current),y.current=null),f.current&&(clearTimeout(f.current),f.current=null)),e){if(d.current)return _>0&&!y.current&&(v.current?h.current=_:x.current(_)),p.current=e,()=>{y.current&&(clearTimeout(y.current),y.current=null),f.current&&(clearTimeout(f.current),f.current=null)};const N=()=>{const S=m.current;if(S)try{S.classList.remove("is-visible"),S.style.transition="none",t==="top"?S.style.transform="translateX(-50%) translateY(-16px)":S.style.transform="translateX(-50%) translateY(16px)",S.style.opacity="0",S.offsetWidth,S.style.transition="",S.classList.add("is-visible"),B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=null;try{S.style.opacity="",S.style.transform="",S.style.transition=""}catch{}},60)}catch{}};c.current?(N(),s(!0)):(u(!0),w.current=requestAnimationFrame(()=>{b.current=requestAnimationFrame(()=>{N(),s(!0)})})),_>0&&(v.current=!1,x.current(_))}else s(!1),f.current=setTimeout(()=>u(!1),hu);return p.current=e,()=>{y.current&&clearTimeout(y.current),f.current&&clearTimeout(f.current),w.current&&cancelAnimationFrame(w.current),b.current&&cancelAnimationFrame(b.current),B.current&&clearTimeout(B.current),y.current=null,f.current=null,w.current=null,b.current=null,B.current=null}},[e,_,t]),{mounted:l,showing:i,popupRef:m,pause:A,resume:k}}function ua({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:i=2e3}){const{mounted:s,showing:l,popupRef:u,pause:c,resume:d}=Cu({message:e,position:t,duration:i,onClose:r}),m=o.useRef(null),[p,C]=o.useState(!1);if(o.useEffect(()=>{l?C(!0):s||C(!1)},[l,s]),!s)return null;const _=a==="notice"||a==="warning"?a:"normal",y=n.jsx("div",{ref:u,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:g=>{m.current=g.pointerType},onMouseEnter:()=>{m.current!=="touch"&&c()},onMouseLeave:d,onFocusCapture:c,onBlurCapture:d,children:n.jsx("div",{className:`toast__inner toast__inner--${_} body-2`,"aria-hidden":p||l?void 0:!0,children:n.jsx("span",{className:"toast__text",children:e})})});return typeof document<"u"?en.createPortal(y,document.body):y}const Oy=24;function Hy({value:e,max:t=100,size:a=8,color:r,trackColor:i,label:s,formatValue:l,labelPos:u,labelAlign:c="right",ariaLabel:d,className:m}){const p=Number.isFinite(t)&&t>0?t:1,C=Math.max(0,Math.min(Number.isFinite(e)?e:0,p)),_=C/p*100,y=Number.isFinite(t)&&t>0?t:0,g=u??(a>=Oy?"inside":"bottom"),h=g==="center"?"inside":g,v=h==="inside"&&(c==="left"?_>=15:c==="center"?_>=50:_>=85),f={};return r&&(f["--progress-bar-fill"]=r),i&&(f["--progress-bar-track"]=i),n.jsxs("div",{className:we("progress-bar",`progress-bar--${a}`,`progress-bar--label-${h}`,s&&`progress-bar--align-${c}`,s&&v&&"progress-bar--label-on-fill",m),style:f,children:[n.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":C,"aria-valuemin":0,"aria-valuemax":y,"aria-valuetext":s?l?l(C):s==="percent"?void 0:s==="raw"?String(C):`${C} / ${y}`:void 0,"aria-label":d,children:n.jsx("div",{className:"progress-bar__fill",style:{width:`${_}%`}})}),s&&n.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(C):s==="percent"?`${Math.round(_)}%`:s==="raw"?String(C):`${C} / ${y}`})]})}const fu={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},zy="rgba(255, 255, 255, 0.16)";function gu({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:i,variant:s="numbered",announce:l=!1,ariaLabel:u}){const{t:c}=xe.useTranslation(),d=ln("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const m=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,p=u??c("progress.steps",{current:m+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),C={};if(a&&(C["--pi-inactive-bg"]=a),r&&(C["--pi-inactive-color"]=r),i&&(a||(C["--pi-inactive-bg"]=zy),r||(C["--pi-inactive-color"]="var(--color-white)")),s==="dot")return n.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:C,role:l?"status":"img","aria-label":l?void 0:p,children:[l&&n.jsx("span",{style:fu,children:p}),Array.from({length:e}).map((y,g)=>n.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${g<m?" done":g===m?" active":""}`},g))]});const _=l?n.jsx("span",{role:"status",style:fu,children:p}):null;return d?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:C,role:"list","aria-label":p,children:n.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[m+1," / ",e]})}),_]}):n.jsxs(n.Fragment,{children:[_,n.jsx("div",{className:"progress-indicator",style:C,role:"list","aria-label":p,children:Array.from({length:e}).map((y,g)=>n.jsx("span",{role:"listitem","aria-current":g===m?"step":void 0,className:`progress-indicator-dot ${g<m?" done":g===m?" active":""} body-3`,children:g+1},g))})]})}function Vy(e){if(!e)return[];const t=[];let a=0,r="";for(const i of e.trim()){if(i==="("?a++:i===")"&&a--,/\s/.test(i)&&a===0){r&&(t.push(r),r="");continue}r+=i}return r&&t.push(r),t}function Wy({children:e,className:t,style:a,rowLabel:r,onRowClick:i}){return n.jsx("div",{role:"cell",className:t?`table-cell ${t}`:"table-cell",style:a,children:r&&i?n.jsx("button",{type:"button",className:"table-cell__row-button","aria-label":r,children:e}):e})}function So({variant:e="default",children:t,className:a,draggable:r,onClick:i,onMouseEnter:s,onMouseLeave:l,onDragStart:u,onDragEnd:c,expandedContent:d,colSpan:m,describedBy:p,rowHasButton:C}){const _=o.useCallback(y=>{i&&y.target===y.currentTarget&&(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),i())},[i]);return e==="loading"?n.jsx("div",{role:"presentation",className:"table-row-wrap",children:n.jsx("div",{role:"row",className:"table-row table-row--loading",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row__full-cell",children:n.jsx(Fa,{size:28})})})}):e==="empty"?n.jsx("div",{role:"presentation",className:"table-row-wrap",children:n.jsx("div",{role:"row",className:"table-row table-row--empty body-3",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row__full-cell",children:t})})}):n.jsxs("div",{role:"presentation",className:"table-row-wrap",children:[n.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:i,onKeyDown:i?_:void 0,onMouseEnter:s,onMouseLeave:l,onDragStart:u,onDragEnd:c,role:"row",tabIndex:i&&!C?0:void 0,"aria-describedby":i&&!C?p:void 0,children:t}),d&&n.jsx("div",{role:"row",className:"table-row-expand",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row-expand__cell",children:d})})]})}function qy({dir:e}){return n.jsx(e==="asc"?js:Ss,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function Uy({children:e,onClick:t,className:a,sortDir:r,ariaSort:i,onResizeStart:s}){const l=n.jsxs(n.Fragment,{children:[e,r&&n.jsx(qy,{dir:r})]});return n.jsxs("div",{onClick:t,role:"columnheader","aria-sort":i,className:we("table-field body-3",a,r?"table-field--sorted":"",s?"table-field--resizable":""),children:[t?n.jsx("button",{type:"button",className:"table-field__button",children:l}):l,s&&n.jsx("span",{className:"table-field__resizer",onPointerDown:s,onClick:u=>u.stopPropagation(),"aria-hidden":"true"})]})}function jo({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:i,isRowClickable:s,onRowMouseEnter:l,onRowMouseLeave:u,onRowDragStart:c,onRowDragEnd:d,draggingId:m,gridTemplateColumns:p,mobileGridTemplateColumns:C,resizable:_=!1,resizeMode:y="grow",resizeStorageKey:g,size:h="small",title:v,icon:f,count:w,collapsed:b=!1,onToggleCollapse:B,headerActions:x,empty:A,loading:k,dragOver:N=!1,onDragOver:S,onDragLeave:E,onDrop:O,renderExpandedRow:F,expandedId:Y}){const{t:M}=xe.useTranslation(),L=o.useId(),P=`table-title-${L}`,G=`table-row-hint-${L}`,U=ln("(max-width: 767px)"),z=C&&U?C:null,q=_&&!U,$=48,V=o.useRef(()=>$),H=g?`table-cols:${g}`:null,T=o.useRef(null),D=o.useRef(null),R=o.useRef(null),I=o.useRef(null),[W,ee]=o.useState(!1),[oe,ce]=o.useState(0),J=o.useCallback(()=>{const se=R.current;se&&(ee(se.scrollWidth>se.clientWidth+1),ce(se.clientWidth))},[]),re=o.useCallback((se,ke)=>{const ze=se.current;ze&&D.current&&D.current.unobserve(ze),se.current=ke,ke?(!D.current&&typeof ResizeObserver<"u"&&(D.current=new ResizeObserver(()=>J())),D.current?.observe(ke)):!R.current&&!I.current&&(D.current?.disconnect(),D.current=null),J()},[J]),Ne=o.useCallback(se=>re(R,se),[re]),K=o.useCallback(se=>re(I,se),[re]);o.useEffect(()=>{J()}),o.useEffect(()=>{if(typeof window>"u")return;const se=typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>J()):null;return window.addEventListener("resize",J),()=>{se!=null&&cancelAnimationFrame(se),window.removeEventListener("resize",J)}},[J]);const Q=o.useRef(()=>!1),pe=o.useRef([]),De=o.useRef(null),ye=se=>{if(!se||typeof window>"u")return null;try{const ke=JSON.parse(window.localStorage.getItem(se)??"null");return Array.isArray(ke)&&ke.length>0&&ke.every(ze=>typeof ze=="number"&&Number.isFinite(ze)&&ze>0)?ke:null}catch{return null}},[ne,le]=o.useState(()=>ye(H)),[Ce,ge]=o.useState(H),[fe,$e]=o.useState(()=>ye(H)!==null);if(Ce!==H){ge(H);const se=ye(H);le(se),$e(se!==null)}const Ve=o.useRef(ne);o.useEffect(()=>{Ve.current=ne},[ne]);const je=o.useCallback(se=>{const ke=De.current;if(!ke)return;const ze=Ve.current;if(ze){const nt=[...ze];if(ke.next!=null&&ke.startWNext!=null){const Ie=se.clientX-ke.startX,Ge=Math.max(V.current(ke.index)-ke.startW,Math.min(ke.startWNext-V.current(ke.next),Ie));nt[ke.index]=ke.startW+Ge,nt[ke.next]=ke.startWNext-Ge}else nt[ke.index]=Math.max(V.current(ke.index),ke.startW+(se.clientX-ke.startX));Ve.current=nt,le(nt)}},[]),Fe=o.useCallback(()=>{if(De.current=null,window.removeEventListener("pointermove",je),window.removeEventListener("pointerup",Fe),window.removeEventListener("pointercancel",Fe),document.body.style.cursor="",document.body.style.userSelect="",H&&Ve.current)try{window.localStorage.setItem(H,JSON.stringify(Ve.current))}catch{}},[je,H]),qe=o.useCallback((se,ke)=>{ke.preventDefault(),ke.stopPropagation();const ze=T.current;if(!ze)return;const nt=Array.from(ze.children).map(Ge=>Ge.getBoundingClientRect().width),Ie=y==="fit"?e.findIndex((Ge,bt)=>bt>se&&Ge.resizable!==!1):-1;De.current=Ie>=0?{index:se,startX:ke.clientX,startW:nt[se],next:Ie,startWNext:nt[Ie]}:{index:se,startX:ke.clientX,startW:nt[se]},Ve.current=nt,le(nt),$e(!0),window.addEventListener("pointermove",je),window.addEventListener("pointerup",Fe),window.addEventListener("pointercancel",Fe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[je,Fe,y,e]),mt=o.useCallback(()=>{const se=T.current,ke=se?.closest(".table-wrap");if(!se||!ke)return null;const ze=ke.style.getPropertyValue("--table-grid-cols");ke.style.setProperty("--table-grid-cols",e.map((et,ot)=>Q.current(ot)?pe.current[ot]:"max-content").join(" "));const nt=Array.from(ke.querySelectorAll(".table-row")).filter(et=>!et.classList.contains("table-row--loading")&&!et.classList.contains("table-row--empty")),Ie=e.map((et,ot)=>{let lt=se.children[ot]?.getBoundingClientRect().width??0;for(const jt of nt){const Ht=jt.children[ot];Ht&&(lt=Math.max(lt,Ht.getBoundingClientRect().width))}const st=Q.current(ot)?parseFloat(pe.current[ot]):NaN;return Number.isFinite(st)?st:Math.max(V.current(ot),Math.ceil(lt))}),Ge=window.getComputedStyle(se),bt=se.clientWidth-(parseFloat(Ge.paddingLeft)||0)-(parseFloat(Ge.paddingRight)||0);ze?ke.style.setProperty("--table-grid-cols",ze):ke.style.removeProperty("--table-grid-cols");let Re=Ie;const tt=Ie.reduce((et,ot,lt)=>et+(Q.current(lt)?ot:0),0),xt=Ie.reduce((et,ot,lt)=>et+(Q.current(lt)?0:ot),0),Mt=bt-tt;if(bt>0&&xt>0&&Mt>0){const et=Mt/xt;Re=Ie.map((lt,st)=>Q.current(st)?lt:Math.max(V.current(st),Math.round(lt*et)));const ot=Math.round(Mt-Re.reduce((lt,st,jt)=>lt+(Q.current(jt)?0:st),0));if(ot!==0){let lt=-1;Re.forEach((st,jt)=>{!Q.current(jt)&&(lt<0||st>Re[lt])&&(lt=jt)}),lt>=0&&(Re[lt]=Math.max(V.current(lt),Re[lt]+ot))}}return Re},[e,y]),ct=(se,ke)=>se!==null&&se.length===ke.length&&se.every((ze,nt)=>ze===ke[nt]),rt=o.useRef(mt);o.useEffect(()=>{rt.current=mt});const[Ct,Be]=o.useState(0),We=a.length>0,_e=`${H??""}|${Ct}|${e.length}|${oe}`,Ue=!fe&&q&&H!==null&&!k?`${_e}|${We?1:0}`:null,Ae=o.useRef(null);o.useEffect(()=>{if(Ue===null||!We||Ae.current===_e)return;const se=rt.current();se&&(Ae.current=_e,le(ke=>ct(ke,se)?ke:se))},[Ue]);const Te=o.useCallback(()=>{if(H)try{window.localStorage.removeItem(H)}catch{}$e(!1);const se=rt.current();le(se),Ve.current=se,Be(ke=>ke+1)},[H]);o.useEffect(()=>()=>{De.current&&(window.removeEventListener("pointermove",je),window.removeEventListener("pointerup",Fe),window.removeEventListener("pointercancel",Fe),document.body.style.cursor="",document.body.style.userSelect="")},[je,Fe]);const Se=Vy(p),Xe=Se.filter(se=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(se));Xe.length>0&&Zt(`table-content-track:${p}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${Xe.join(", ")})\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uBA38\uB9AC\uC640 \uBAB8\uD1B5\uC740 \uC11C\uB85C \uB2E4\uB978 \uACA9\uC790\uB77C \uADF8 \uD2B8\uB799\uC774 \uAC01\uC790 \uB2E4\uB974\uAC8C \uD480\uB824 \uC5F4\uC774 \uC5B4\uAE0B\uB0A9\uB2C8\uB2E4. px \uC774\uB098 fr \uC744 \uC4F0\uC138\uC694. (\uBC1B\uC740 \uAC12: ${p})`);const Qe=e.findIndex(se=>!!se.sortDir);e.filter(se=>!!se.sortDir).length>1&&Zt("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const dt=se=>se===Qe?e[se].sortDir==="asc"?"ascending":"descending":e[se].onClick?"none":void 0,ht=se=>/^\d+(\.\d+)?px$/.test(Se[se]??""),wt=se=>{const ke=Se[se]??"",ze=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(ke)??/^(\d+(?:\.\d+)?)px$/.exec(ke);return ze?parseFloat(ze[1]):$};Q.current=ht,V.current=wt,pe.current=Se;const ft=se=>y==="fit"&&!ht(se)?"fr":"px",Nt=ne&&ne.length===e.length&&!U,gt=z??(Nt?e.map((se,ke)=>se.resizable===!1&&Se[ke]?Se[ke]:`${ne[ke]}${ft(ke)}`).join(" "):p),it=gt?{"--table-grid-cols":gt}:void 0,Ke=v!==void 0;return n.jsxs("div",{ref:Ne,className:`table-wrap table-wrap--${h}${q?" table-wrap--resizable":""}${N?" table-wrap--dragover":""}${b?" table-wrap--collapsed":""}`,style:it,onDragOver:S,onDragLeave:E,onDrop:O,tabIndex:W?0:void 0,role:W?"region":void 0,"aria-label":W?typeof v=="string"?v:M("table.scrollRegion","\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C"):void 0,children:[!!i&&n.jsx("span",{id:G,className:"table-row-hint",children:M("table.rowActionHint","\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4")}),n.jsxs("div",{ref:K,role:"table","aria-labelledby":Ke&&typeof v=="string"?P:void 0,className:"table body-2",children:[Ke&&n.jsxs("div",{className:we("table-header",B&&"table-header--clickable"),onClick:B,role:"caption",children:[B&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-right":"chevron-down",ariaLabel:b?M("common.expand","\uD3BC\uCE58\uAE30"):M("common.collapse","\uC811\uAE30"),ariaExpanded:!b,className:"table-header__chevron"}),f&&n.jsx(at,{icon:f,label:typeof v=="string"?v:void 0,className:"table-header__icon"}),n.jsx("span",{id:P,className:"table-header__title h5b",children:v}),w!==void 0&&n.jsx("span",{className:"table-header__count body-3b",children:w}),x&&n.jsx("span",{className:"table-header__actions",onClick:se=>se.stopPropagation(),children:x})]}),!b&&n.jsxs(n.Fragment,{children:[t&&t.length>0&&n.jsx("div",{role:"row",className:"table-fields table-fields--groups",children:t.map((se,ke)=>n.jsx("div",{role:"columnheader","aria-colspan":se.span,className:we("table-field body-3",se.className),style:{gridColumn:`span ${se.span}`},children:se.label},ke))}),n.jsxs("div",{role:"presentation",className:we("table-fields-strip",q&&"table-fields-strip--resizable"),children:[n.jsx("div",{role:"row",className:"table-fields",ref:T,children:e.map((se,ke)=>n.jsx(Uy,{onClick:se.onClick,className:se.className,sortDir:se.sortDir,ariaSort:dt(ke),onResizeStart:q&&ke<e.length-1&&se.resizable!==!1&&(y!=="fit"||e.some((ze,nt)=>nt>ke&&ze.resizable!==!1))?ze=>qe(ke,ze):void 0,children:se.label},ke))}),q&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:M("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:M("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Te})]}),n.jsx("div",{role:"rowgroup",className:"table-body",children:k?n.jsx(So,{variant:"loading",colSpan:e.length||void 0}):a.length===0&&A?n.jsx(So,{variant:"empty",colSpan:e.length||void 0,children:A}):a.map((se,ke)=>{const ze=m!=null&&se.id===m,nt=!!i&&(s?s(se):!0),Ie=Y!=null&&se.id!=null&&(Y instanceof Set?Y.has(se.id)||[...Y].some(Ge=>String(Ge)===String(se.id)):String(se.id)===String(Y));return n.jsx(So,{className:`${nt?" table-row--clickable":""}${c?" table-row--draggable":""}${ze?" table-row--dragging":""}`.trim(),draggable:!!c,onClick:nt?()=>i(se):void 0,colSpan:e.length||void 0,rowHasButton:r(se).some(Ge=>!!Ge.rowLabel),describedBy:G,onMouseEnter:l?Ge=>l(se,Ge):void 0,onMouseLeave:u?Ge=>u(se,Ge):void 0,onDragStart:c?Ge=>c(se,Ge):void 0,onDragEnd:d?Ge=>d(se,Ge):void 0,expandedContent:Ie&&F?F(se):void 0,children:r(se).map((Ge,bt)=>n.jsx(Wy,{className:Ge.className,style:Ge.style,rowLabel:nt?Ge.rowLabel:void 0,onRowClick:nt?()=>i(se):void 0,children:Ge.content},bt))},se.id!=null?`${typeof se.id}:${se.id}`:`__idx:${ke}`)})})]})]})]})}const Gy={hearingAid:"hearingAid",cochlearImplant:"cochlearImplant",other:"other",\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant",\uAE30\uD0C0:"other"};function bu(e){return e?Gy[e]??null:null}function yu(e){switch(bu(e)){case"hearingAid":return"main";case"cochlearImplant":return"sub";default:return"default"}}function vu(e,t){const a=bu(e);return a?t(`device.type.${a}`,{defaultValue:e??""}):e??""}const ca=e=>e==null?"":String(e).trim();function To(e,t,a,r){const i=ca(e),s=ca(t),l=ca(a);if(r&&i&&s&&l){const c=`${i.padStart(4,"0")}-${s.padStart(2,"0")}-${l.padStart(2,"0")}`,d=new Date(c);if(!Number.isNaN(d.getTime())&&d.toISOString().slice(0,10)===c){const m=vi(c,r);if(m)return m}}const u=[i,s,l];for(;u.length>0&&u[u.length-1]==="";)u.pop();return u.join(".")}function Ky(e,t,a){const r=ca(e);return r?`${r}-${ca(t).padStart(2,"0")}-${ca(a).padStart(2,"0")}`:""}function xu(e,t){return t!=="wornAt"?String(e[t]??""):Ky(e.wornYear,e.wornMonth,e.wornDay)}function Yy({rows:e,loading:t,onSelect:a,onDelete:r,onWear:i,onRelease:s,onAdd:l}){const{t:u,i18n:c}=xe.useTranslation(),d=h=>h==="left"?u("device.direction.left","\uC88C"):u("device.direction.right","\uC6B0"),{sort:m,field:p}=Eb(),C=o.useMemo(()=>{if(!m)return e;const{key:h,asc:v}=m;return[...e].sort((f,w)=>{if(h==="worn"){const b=Number(w.worn)-Number(f.worn);return v?b:-b}return uo(xu(f,h),xu(w,h),v)})},[e,m]),{pageRows:_,pageSizeProps:y,paginationProps:g}=Nb(C,m);return n.jsxs("div",{className:"dlp-side-table",children:[n.jsx(_o,{count:{value:e.length,unit:u("customers.device.unit","\uAC1C")},pageSize:y,pagination:g,actions:l&&n.jsx(me,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:u("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),n.jsx(jo,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(u("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(u("device.direction.label","\uBC29\uD5A5"),"side"),p(u("device.deviceType","\uC885\uB958"),"device"),p(u("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(u("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(u("device.productName","\uC81C\uD488\uBA85"),"productName"),p(u("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...r?[{label:"",resizable:!1}]:[]],items:_.map((h,v)=>({id:h.id??`${h.side}-${v}`,row:h})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${r?" 80px":""}`,renderRow:({row:h})=>[{content:n.jsx("span",{className:"dlp-worn-check",onClick:v=>v.stopPropagation(),children:n.jsx(tu,{checked:h.worn,disabled:h.worn?!s:!i,ariaLabel:h.worn?u("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):u("customers.device.wear","\uCC29\uC6A9"),onChange:v=>{v?i?.(h):s?.(h)}})})},{content:n.jsx("span",{children:d(h.side)})},{content:h.device?n.jsx(kt,{size:"small",variant:yu(h.device),fill:"soft",label:vu(h.device,u)}):n.jsx("span",{})},{content:n.jsx("span",{children:h.brand})},{content:n.jsx("span",{children:h.fitType||"-"})},{content:n.jsx("span",{children:h.productName||"-"})},{content:n.jsx("span",{className:"dlp-date",children:To(h.wornYear,h.wornMonth,h.wornDay,c.language)||"-"})},...r?[{content:n.jsx("span",{className:"dlp-row-actions",children:n.jsx(me,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:u("common.delete","\uC0AD\uC81C"),onClick:v=>{v?.stopPropagation(),r(h)}})})}]:[]],onRowClick:({row:h})=>a(h),empty:u("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function _u(e,t){return e?{role:t?.role??"button",tabIndex:0,...t?.selected===void 0?{}:{"aria-selected":t.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function Zy(e,t){return new Date(e,t+1,0).getDate()}function Xy(e,t){return new Date(e,t,1).getDay()}function Jy({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r,today:i}){const{t:s,i18n:l}=xe.useTranslation(),u=o.useMemo(()=>s("calendar.dow",{returnObjects:!0}),[s]),c=Yr(i),[d,m]=o.useState(()=>Number(c.slice(0,4))),[p,C]=o.useState(()=>Number(c.slice(5,7))-1),[_,y]=o.useState(null),g=o.useRef(null),h=o.useMemo(()=>{const x={};return e.forEach(A=>{x[A.date]||(x[A.date]=[]),x[A.date].push(A)}),x},[e]),v=o.useMemo(()=>{const x=Zy(d,p),A=Xy(d,p),k=[];for(let N=0;N<A;N++)k.push(null);for(let N=1;N<=x;N++)k.push(N);for(;k.length<35;)k.push(null);return k},[d,p]),f=o.useCallback(()=>{p===0?(m(x=>x-1),C(11)):C(x=>x-1)},[p]),w=o.useCallback(()=>{p===11?(m(x=>x+1),C(0)):C(x=>x+1)},[p]),b=x=>`${d}-${String(p+1).padStart(2,"0")}-${String(x).padStart(2,"0")}`,B=x=>b(x)===c;return n.jsxs("div",{children:[n.jsxs("div",{className:"calendar-nav",children:[n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:f,"aria-label":s("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(at,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsx("span",{className:"calendar-nav__title h5","aria-live":"polite",children:Kr(s,l.language,d,p+1)}),n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:w,"aria-label":s("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(at,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsxs("div",{className:"calendar-nav__legend",children:[n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.visited","\uBC29\uBB38")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.scheduled","\uC608\uC57D")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),n.jsxs("div",{className:"calendar-grid",children:[u.map(x=>n.jsx("div",{className:"calendar-day-header body-3",children:x},x)),v.map((x,A)=>{if(x===null)return n.jsx("div",{className:"calendar-cell empty"},`empty-${A}`);const k=x,N=b(k),S=h[N]??[],E=vi(N,l.language),O=_===N;return n.jsxs("div",{className:`calendar-cell${B(k)?" today":""}${O?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?s("calendar.addOnDate",{date:N}):void 0,"aria-current":B(k)?"date":void 0,onClick:r?()=>r(N):void 0,onKeyDown:r?F=>{F.target===F.currentTarget&&(F.key!=="Enter"&&F.key!==" "||(F.preventDefault(),r(N)))}:void 0,onDragOver:a?F=>{F.preventDefault(),y(N)}:void 0,onDragLeave:a?F=>{F.currentTarget.contains(F.relatedTarget)||y(null)}:void 0,onDrop:a?F=>{F.preventDefault(),g.current!=null&&(a(g.current,N),g.current=null),y(null)}:void 0,children:[n.jsx("div",{className:"calendar-cell__number body-3",children:k}),S.length>0&&(()=>{const F=[{key:"visited",label:s("calendar.legend.visited","\uBC29\uBB38"),count:S.filter(M=>(M.status??"visited")==="visited").length},{key:"scheduled",label:s("calendar.legend.scheduled","\uC608\uC57D"),count:S.filter(M=>M.status==="scheduled").length},{key:"noVisit",label:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38"),count:S.filter(M=>M.status==="noVisit").length}].filter(M=>M.count>0),Y=F.length===1&&F[0].key==="visited"?s("calendar.visitCount",{count:S.length,defaultValue:"\uBC29\uBB38 {{count}}\uAC74"}):F.map(M=>s("calendar.statusCount",{label:M.label,count:M.count,defaultValue:"{{label}} {{count}}\uAC74"})).join(" \xB7 ");return n.jsxs("span",{className:"calendar-cell__visit-count caption-1","aria-label":`${E} ${Y}`,children:[F.map(M=>n.jsx("span",{className:`calendar-cell__visit-dot calendar-cell__visit-dot--${M.key}`,"aria-hidden":"true"},M.key)),S.length]})})(),n.jsx("div",{className:"calendar-cell__badges",children:S.map((F,Y)=>n.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${F.status==="noVisit"?" calendar-visit-badge--no-visit":F.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?M=>{g.current=F.id,M.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{g.current=null,y(null)}:void 0,onClick:t?M=>{M.stopPropagation(),t(F)}:void 0,..._u(t?()=>t(F):void 0),"aria-label":[E,F.time?Ai(F.time,s):null,F.customer,s(F.status==="noVisit"?"calendar.legend.noVisit":F.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[F.time&&n.jsx("span",{className:"calendar-visit-badge__time body-3",children:Ai(F.time,s)}),n.jsx("span",{className:"calendar-visit-badge__name body-3",children:F.customer}),F.status==="noVisit"&&n.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},F.id??Y))})]},k)})]})]})}const Qy={page:"h3",pagePopup:"h4",popup:"h5"};function da({type:e="page",title:t,headingLevel:a=2,icon:r,action:i,disc:s,children:l,inGrid:u=!1,className:c,style:d}){const m=Qy[e],p=t||s||i||r,C=a?`h${a}`:"div";return n.jsxs("div",{className:we("section",`section--${e}`,u&&"section--in-grid",c),style:d,children:[p&&n.jsxs("div",{className:"section__header",children:[n.jsxs("div",{className:"section__title-row",children:[r&&n.jsx(at,{icon:r,label:typeof t=="string"?t:void 0,className:"section__icon"}),n.jsxs("div",{className:"section__title-group",children:[t&&n.jsx(C,{className:`section__title ${m}`,children:t}),s&&n.jsx("div",{className:"section__disc body-3",children:s})]})]}),i&&n.jsx("div",{className:"section__action",children:i})]}),l]})}let Mo=null,wu=!1;function Au(){if(wu||typeof document>"u")return;wu=!0,document.addEventListener("keydown",t=>{t.metaKey||t.ctrlKey||t.altKey||(Mo="keyboard")},!0);const e=()=>{Mo="pointer"};document.addEventListener("pointerdown",e,!0),document.addEventListener("mousedown",e,!0),document.addEventListener("touchstart",e,{capture:!0,passive:!0})}Au();function lr(){return Au(),Mo==="keyboard"}const ur=20;function e5(e){const{t}=xe.useTranslation(),{type:a,trainingDatas:r,depth:i,renderPopup:s,completedIds:l,selectedIds:u,onItemComplete:c,size:d,useDescriptionTooltip:m,onRemove:p,onMore:C,sectionType:_="page"}=e||{},[,y]=o.useState(0),g=typeof r<"u"?Array.isArray(r)?r:[]:[],h=g.length,[v,f]=o.useState(Math.min(h,ur)),w=o.useMemo(()=>Array.isArray(i)?[...i,a?.label].filter(Boolean).join(" \xB7 "):[i||"",a?.label].filter(Boolean).join(" \xB7 "),[i,a?.label]);o.useEffect(()=>{f(Math.min(h,ur))},[h]),hl("speechear.data.updated",()=>y(A=>A+1));const b=o.useRef(null),B=o.useRef(null);function x(){const A=document.activeElement;B.current=lr()&&A&&A.closest?.(".training-block__more")?v:null,f(k=>Math.min(h,k+ur))}return o.useEffect(()=>{const A=B.current;if(A==null)return;B.current=null;const k=document.activeElement;k&&k!==document.body||b.current?.querySelectorAll(".training-block-button")[A]?.focus()},[v]),n.jsxs(da,{type:_,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[n.jsx("div",{className:"training-list",ref:b,children:(g||[]).slice(0,v).map((A,k)=>{const N=A;return n.jsx(yo,{index:k,type:a,trainingData:N,depth:w,renderPopup:s,completedIds:l,selectedIds:u,size:d,useDescriptionTooltip:m,onRemove:typeof p=="function"&&u!=null&&N?.id!=null&&u.has(String(N.id))?()=>p(N):void 0,onComplete:typeof c=="function"&&N?.id!=null?()=>c(String(N.id)):void 0,onMore:typeof C=="function"?S=>C(N,S):void 0},N?.id!=null?`${a?.key||"t"}-${String(N.id)}`:`${a?.key||"t"}-${k}`)})}),h>ur&&v<h&&n.jsx("div",{className:"training-block__more",children:n.jsx(me,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:x,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function t5(e){let t=0;const a=r=>{Array.isArray(r)?r.forEach(a):r!=null&&r!==!1&&r!==!0&&r!==""&&t++};return a(e),t}function n5({gap:e=10,count:t,className:a,children:r}){const i=o.useRef(null),[s,l]=o.useState({width:0,card:0}),u=t??t5(r);o.useLayoutEffect(()=>{const C=i.current;if(!C)return;const _=()=>{const g=C.style.maxWidth;C.style.maxWidth="none";const h=C.clientWidth;C.style.maxWidth=g;const v=C.firstElementChild?.offsetWidth??0;l(f=>f.width===h&&f.card===v?f:{width:h,card:v})};if(_(),typeof ResizeObserver>"u")return;const y=new ResizeObserver(_);return y.observe(C),()=>y.disconnect()},[u,e]);const c=s.card>0?s.card:0,d=c>0?WC(s.width,c,e):0,m=d>0?qC(u,d):0,p={"--block-grid-gap":`${e}px`,...m>0?{"--block-grid-cols":m,"--block-grid-card":`${c}px`}:{}};return n.jsx("div",{ref:i,className:we("training-block-grid",m>0&&"training-block-grid--measured",a),style:p,"data-cols":m>0?m:void 0,children:r})}function Lo(e){const t=o.useRef(null),[a,r]=o.useState(!!e),[i,s]=o.useState(!1);o.useEffect(()=>{s(!1);const c=t.current;r(!!e&&!(c?.complete&&c.naturalWidth>0))},[e]);const l=o.useCallback(()=>r(!1),[]),u=o.useCallback(()=>{r(!1),s(!0)},[]);return{imgRef:t,loading:a,failed:i,hasImage:!!e&&!i,onLoad:l,onError:u}}var a5='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const r5=a5,$o=o.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:i=!1,onSelect:s,flipDelay:l=0,hideLabel:u=!1,hideAudio:c=!1,orderRank:d=null},m){const{t:p}=xe.useTranslation(),C=e.word||e.title||"",_=t||!C,y=e.audio??e.sound??e.audioKey,g=e.subLabel||e.pronunciation||"",h=e.colloquialLabel||"",[v,f]=o.useState({label:C,subLabel:g,colloquialLabel:h,homonum:e.homonum});C&&(v.label!==C||v.subLabel!==g||v.colloquialLabel!==h||!Object.is(v.homonum,e.homonum))&&f({label:C,subLabel:g,colloquialLabel:h,homonum:e.homonum});const w=o.useRef(null),b=ln("(max-width: 767px)"),[B,x]=o.useState(!1),A=`${typeof y=="string"?y:y?.src??""}\0${C}`,[k,N]=o.useState({for:"",url:""}),S=k.for===A?k.url:"",E=fi(),O=e.textOnly??(!e.image&&!!v.label&&!!E&&E.entries.length>0&&!E.byWord.has(v.label)),F=O?"":aa()?.(v.label,v.homonum)??e.image??"",{imgRef:Y,loading:M,hasImage:L,onLoad:P,onError:G}=Lo(F);o.useEffect(()=>{let R=!1;return(async()=>{if(y){if(typeof y=="string"){if(y.startsWith("http")||y.includes("/")){N({for:A,url:y});return}}else if(typeof y=="object"&&!Array.isArray(y)){const W=y.src;if(W){N({for:A,url:W});return}}}const I=Ir();if(I&&C)try{const W=await Promise.resolve(I(C));!R&&W&&N({for:A,url:W})}catch{}})(),()=>{R=!0}},[y,C,A]);const U=o.useRef(!0),z=o.useRef(null);o.useEffect(()=>(U.current=!0,()=>{U.current=!1,z.current&&rr(z.current),z.current=null;try{w.current?.pause()}catch{}w.current=null}),[]);const q=o.useCallback(()=>new Promise(R=>{if(typeof window<"u"&&window.speechSynthesis&&C){x(!0),window.speechSynthesis.cancel();const I=new SpeechSynthesisUtterance(C);I.lang="ko-KR",I.onend=()=>{x(!1);try{a?.()}catch{}R()},I.onerror=()=>{x(!1),R()},window.speechSynthesis.speak(I)}else R()}),[C,a]),$=o.useCallback(R=>{const I=bo(R,W=>{if(x(!1),W)try{a?.()}catch{}});return w.current=I.el,I.done},[a]),V=o.useCallback(async()=>{if(t||!U.current)return;const R=()=>{z.current===R&&(z.current=null);try{w.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}x(!1)},I=ar(R);z.current=R;try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(x(!0),await $(S)))return;const W=vC();if(W&&C)try{const ee=await Promise.resolve(W(C));if(!U.current||z.current!==R||ee&&(x(!0),await $(ee)))return}catch{}if(!U.current||z.current!==R)return;await q()}finally{I(),z.current===R&&(z.current=null)}},[t,S,C,$,q]);o.useImperativeHandle(m,()=>({play:()=>V()}),[V]);const H=R=>R.stopPropagation(),T=o.useCallback(R=>{if(R.stopPropagation(),!t){if(B){try{w.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}x(!1);return}V()}},[t,B,V]),D=we("training-word-card",t?"training-word-card--disabled":"",_?"training-word-card--flipped":"",r?"training-word-card--selectable":"",i?"training-word-card--selected":"");return n.jsx("div",{className:D,onClick:r&&!t?s:void 0,role:r?"button":void 0,"aria-pressed":r?i:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?R=>{R.target===R.currentTarget&&(R.key==="Enter"||R.key===" "||R.key==="Spacebar")&&(R.preventDefault(),s?.())}:void 0,children:n.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:_?"0ms":`${l}ms`},children:[n.jsxs("div",{className:"training-word-card__front",children:[i&&n.jsx("div",{className:"training-word-card__selected-badge",onClick:H,children:n.jsx(kt,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?p("training.nthSelected",{n:d}):p("training.selected","\uC120\uD0DD\uB428")})}),n.jsx("div",{className:"training-word-card__image-wrap",children:O?n.jsx("div",{className:"training-word-card__text-face",children:v.label}):L?n.jsxs(n.Fragment,{children:[M&&n.jsx("div",{className:"training-word-card__spinner"}),n.jsx("img",{ref:Y,className:"training-word-card__image",src:F,alt:v.label||p("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:M?0:1},onLoad:P,onError:G})]}):n.jsx("div",{className:"training-word-card__placeholder"})}),!u&&n.jsxs("div",{className:"training-word-card__body",children:[!O&&n.jsx("div",{className:"training-word-card__word",children:v.label}),v.subLabel&&n.jsxs("div",{className:"training-word-card__pronunciation",children:["[",v.subLabel,"]"]}),v.colloquialLabel&&n.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",v.colloquialLabel,"]"]})]}),!c&&n.jsx("div",{className:"training-word-card__bottom",onClick:r?H:void 0,children:n.jsx(me,{htmlType:"button",size:b?40:48,type:b?"dot":"bar",icon:B?"pause":"play",label:b?void 0:p("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:B,onClick:T,disabled:t,ariaLabel:p("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),n.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:n.jsx("img",{src:r5,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),o5=260;function Fn(e){const{t}=xe.useTranslation(),{title:a,subtitle:r,headerActions:i,headerSegment:s,children:l,buttons:u,footer:c,footerStart:d,footerEnd:m,footerNote:p,footerNoteDivider:C=!1,footerClassName:_="",footerLayout:y="center",onClose:g,closeDisabled:h=!1,beforeClose:v,closeOnBackdrop:f=!0,className:w="",ariaLabel:b,useTitle:B=!0,inline:x=!1,size:A,layer:k="modal",height:N,fillBody:S=!1,resetScrollKey:E}=e||{},[O,F]=o.useState(!1),Y=o.useRef(!1),M=o.useRef(null),L=o.useId(),P=o.useRef(null);o.useEffect(()=>{},[x,a,b,w]),o.useEffect(()=>{E!==void 0&&P.current&&(P.current.scrollTop=0)},[E]);const[G,U]=o.useState(!1);o.useEffect(()=>{const J=P.current;if(!J)return;const re=()=>U(J.scrollHeight>J.clientHeight+1);if(re(),typeof ResizeObserver>"u")return;const Ne=new ResizeObserver(re);Ne.observe(J);const K=J.firstElementChild;return K&&Ne.observe(K),()=>Ne.disconnect()},[l,E]),o.useEffect(()=>{if(!x)return Yl()},[x]),o.useEffect(()=>{if(x)return;const J=document.activeElement,re=M.current;return to(re,J),re&&!re.contains(document.activeElement)&&(re.querySelector(fn)??re).focus(),()=>{const Ne=document.activeElement;(!Ne||Ne===document.body||re&&re.contains(Ne))&&no(J)?.focus?.()}},[x]),Qr(M,!x);const z=o.useRef(!0),q=ao(),$=o.useRef(null);o.useEffect(()=>(z.current=!0,()=>{z.current=!1,$.current&&(clearTimeout($.current),$.current=null)}),[]);const V=o.useCallback(()=>{!z.current||!Y.current||(Y.current=!1,F(!1))},[]),H=o.useCallback((J,re=!1)=>{if(re&&!z.current||Y.current)return;Y.current=!0,F(!0);const Ne=setTimeout(()=>{$.current===Ne&&($.current=null);let K;try{K=J?J():void 0}catch{V();return}K&&typeof K.then=="function"&&K.then(()=>{setTimeout(V,120)},V)},q?0:o5);re&&($.current=Ne)},[V,q]),T=o.useCallback(()=>{h||v&&v()===!1||H(g,!0)},[H,g,h,v]),D=o.useRef(T);o.useEffect(()=>{D.current=T});const R=!x&&!!g;o.useEffect(()=>{if(R)return Un(()=>D.current())},[R]);const I=R&&f,W=o.useRef(!1),ee=J=>{W.current=J.target===J.currentTarget},oe=J=>{const re=W.current;W.current=!1,re&&J.target===J.currentTarget&&T()},ce=n.jsx("div",{className:`popup ${x?"popup--inline":""} ${k==="belowPagePopup"?"popup--below-page-popup":""} ${O?"popup--closing":""} ${w}`,onPointerDown:I?ee:void 0,onClick:I?oe:void 0,onMouseDown:x?void 0:J=>{J.target===J.currentTarget&&J.preventDefault()},children:n.jsxs("div",{ref:M,className:`popup-panel${A?` popup-panel--${A}`:""}${N!=null?" popup-panel--has-height":""}${S?" popup-panel--fill-body":""}`,style:N!=null?{"--popup-height":typeof N=="number"?`${N}px`:N}:void 0,tabIndex:-1,role:x?void 0:"dialog","aria-modal":x?void 0:!0,"aria-labelledby":!x&&B&&a?L:void 0,"aria-label":!x&&!(B&&a)?b??(typeof a=="string"?a:void 0):void 0,children:[!B&&(i||g)?n.jsxs("div",{className:"popup-close-float",children:[i,g&&n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:T,disabled:h,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||i||g?n.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[n.jsxs("div",{className:"popup-header-main",children:[a?n.jsx("h2",{id:L,className:"popup-title popup-title--left h2",children:a}):n.jsx("span",{id:L,className:"popup-title popup-title--left h2"}),r&&n.jsx("span",{className:"popup-subtitle body-3",children:r})]}),s&&n.jsx("div",{className:"popup-header-segment",children:n.jsx(gn,{size:40,ariaLabel:s.ariaLabel,options:s.options.map(J=>({key:J.key,label:J.label,disabled:J.disabled})),value:s.value,onChange:s.onChange})}),n.jsxs("div",{className:"popup-header-actions",children:[i,g&&n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:T,disabled:h,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,n.jsx("div",{className:"popup-content",ref:P,tabIndex:G?0:void 0,children:n.jsx("div",{className:"popup-content__inner",children:typeof l=="function"?l({animateThen:H,closeWithAnimation:T}):l})}),p!=null&&p!==!1&&n.jsx("div",{className:`popup-footer-note caption-1${C?" popup-footer-note--divider":""}`,role:"note",children:p}),d||m?n.jsxs("div",{className:`popup-footer popup-footer--bar${_?` ${_}`:""}`,children:[n.jsx("div",{className:"popup-footer__start",children:typeof d=="function"?d({animateThen:H,closeWithAnimation:T}):d}),n.jsx("div",{className:"popup-footer__end",children:typeof m=="function"?m({animateThen:H,closeWithAnimation:T}):m})]}):u?.length?n.jsx("div",{className:`popup-footer popup-footer--buttons${y!=="center"?` popup-footer--${y}`:""}`,children:u.map((J,re)=>n.jsx(me,{htmlType:"button",size:48,variant:J.variant??"default",label:J.label,disabled:J.disabled,onClick:()=>J.onClick?.({animateThen:H,closeWithAnimation:T})},re))}):c?n.jsx("div",{className:`popup-footer${y!=="center"?` popup-footer--${y}`:""}${_?` ${_}`:""}`,children:typeof c=="function"?c({animateThen:H,closeWithAnimation:T}):c}):null]})});return x||typeof document>"u"?ce:en.createPortal(ce,document.body)}function cr(e){return String(e)}const dr=["o","triangle","x"];function Bu(e,t){return e===t?null:t}const ku={o:"circle",triangle:"triangle",x:"x"},Nu={o:"main",triangle:"warn",x:"danger"};function s5(e){let t=0,a=0,r=0;for(const s of Object.values(e))s==="o"?t++:s==="triangle"?a++:s==="x"&&r++;const i=t+a+r;return{marked:i,o:t,triangle:a,x:r,rate:i===0?null:(t+a*.5)/i}}function Ro(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function Eu(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function i5(e,t){return!t&&e>0}const pa={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function l5(e="landscape"){Zt("print-word-table-deprecated","[printWordTable] @deprecated \u2014 WordTablePopup renderButtons \uC758 print(\uB610\uB294 useWordTablePrint().print)\uB97C \uC4F0\uC138\uC694. \uC804\uC5ED \uC778\uC1C4\uB294 \uD654\uBA74\uC758 \uBAA8\uB4E0 \uB2E8\uC5B4\uD45C\uB97C \uD568\uAED8 \uCC0D\uC2B5\uB2C8\uB2E4.");const{printSize:t,printW:a,printH:r}=pa[e],i=document.createElement("style");i.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(i);const s=()=>{document.head.removeChild(i),window.removeEventListener("afterprint",s)};window.addEventListener("afterprint",s),window.print()}function Du(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let i=0;i<e.length;i+=a)r.push(e.slice(i,i+a));return r}const u5={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function c5(e,t){const a=u5[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),i=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let s,l;return e==="landscape"?(l=i,s=Math.ceil(r/l)):(s=i,l=Math.ceil(r/s)),(e==="landscape"?s<l:l<s)&&([s,l]=[l,s]),{cols:s,rows:l}}const d5={show:"word-table-block__content--cut-show",dashed:"",corner:"word-table-block__content--cut-corner",hide:""},Su={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},ju={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"},Po={\uBA85:"noun",\uB3D9:"verb",\uD615:"adjective",\uBD80:"adverb",\uC218:"numeral",\uAD00:"determiner",\uAC10:"interjection",\uC870:"particle",\uC811:"affix",\uC758:"dependentNoun",\uB300:"pronoun",\uBCF4\uB3D9:"auxVerb",\uBCF4\uD615:"auxAdjective"},Fo={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function Tu(e){return Object.fromEntries(Object.entries(Su).map(([t,a])=>[t,Po[t]?e(`wordTable.pos.${Po[t]}`,{defaultValue:a}):a]))}function Mu(e){return Object.fromEntries(Object.entries(ju).map(([t,a])=>[t,Fo[t]?e(`wordSearch.filter.type.${Fo[t]}`,{defaultValue:a}):a]))}const p5={pos:Po,wordType:Fo};function Io(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function Lu(e,t,a,r){if(r!=="dashed")return{};const i=e%t,s=Math.floor(e/t),l=i<t-1,u=s<a-1;if(!l&&!u)return{};const c="#ddd",d=_=>`repeating-linear-gradient(to ${_}, ${c} 0, ${c} 5px, transparent 5px, transparent 10px)`,m=[],p=[],C=[];return l&&(m.push(d("bottom")),p.push("1px 100%"),C.push("right center")),u&&(m.push(d("right")),p.push("100% 1px"),C.push("center bottom")),{backgroundImage:m.join(", "),backgroundSize:p.join(", "),backgroundPosition:C.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const m5=280,h5=240,C5=280,f5=400,g5=120,b5=280;function $u(e,t){const a=o.useRef(null),[r,i]=o.useState(1),[s,l]=o.useState(0),u=o.useCallback((c,d)=>{if(!(c>0))return;const m=c/e,p=t&&d>0?d/t:1/0,C=Math.min(1,m,p);i(C),l(Math.max(0,(c-e*C)/2))},[e,t]);return o.useEffect(()=>{const c=a.current;if(!c)return;const d=t?c.parentElement??c:c;if(u(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const m=new ResizeObserver(([p])=>u(p.contentRect.width,p.contentRect.height));return m.observe(d),()=>m.disconnect()},[u,t]),{scalerRef:a,scale:r,offset:s}}const y5={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},v5=400,Ru=8;function Pu({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:i=!0,showImage:s=!0,showPronunciation:l=!0,showColloquial:u=!0,buttonSize:c=40,wordInfo:d}){const{t:m}=xe.useTranslation(),p=o.useRef(null),C=o.useRef(null),_=o.useRef(null),[y,g]=o.useState(1),[h,v]=o.useState(!1),[f,w]=o.useState({for:"",url:""}),[b,B]=o.useState(null),x=t&&t.length>0?t:_C()?.(e,r)??"",A=aa()?.(e,r)??"",{imgRef:k,loading:N,failed:S,onLoad:E,onError:O}=Lo(A),F=o.useCallback(()=>B(C.current?.getBoundingClientRect()??null),[]),Y=o.useCallback(()=>B(null),[]),M=oo(!!b,T=>{T?F():Y()},C),L=o.useMemo(()=>{if(!d)return null;const T=[];return d.grade&&T.push(m("wordTable.info.grade",{n:d.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),d.syllables&&T.push(m("wordTable.info.syllables",{n:d.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),d.pos&&T.push(m("wordTable.info.pos",{v:Io(d.pos,Tu(m)),defaultValue:"\uD488\uC0AC: {{v}}"})),d.wordType&&T.push(m("wordTable.info.wordType",{v:Io(d.wordType,Mu(m)),defaultValue:"\uC720\uD615: {{v}}"})),T.length?T:null},[d,m]),P=x||e,G=f.for===P?f.url:"";o.useEffect(()=>{const T=Ir(),D=x||e;if(!T||!D)return;let R=!1;return Promise.resolve(T(D)).then(I=>{!R&&I&&w({for:D,url:I})}),()=>{R=!0}},[x,e]);const U=o.useRef(null),z=o.useRef(null);o.useEffect(()=>()=>{_.current?.pause(),z.current?.()},[]);const q=o.useCallback(T=>{if(T.stopPropagation(),h){U.current?.();return}if(!G)return;v(!0);const D=bo(G,()=>{v(!1),z.current?.()});_.current=D.el,U.current=D.stop,z.current=ar(D.stop)},[h,G]),$=s&&!!A&&!S,V=$&&i?m5:$?C5:h5,H=$&&i?f5:$?b5:g5;return o.useEffect(()=>{const T=p.current;if(!T||typeof ResizeObserver>"u")return;const D=new ResizeObserver(([R])=>{const{width:I,height:W}=R.contentRect;g(Math.min(I/V,W/H))});return D.observe(T),()=>D.disconnect()},[V,H]),n.jsxs("div",{ref:p,className:we("word-table-cell",$?"word-table-cell--with-image":""),"data-ref-w":V,"data-ref-h":H,children:[n.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${y})`},children:[$&&n.jsxs("div",{className:"word-table-cell__image-wrap",children:[N&&n.jsx("div",{className:"word-table-cell__spinner"}),n.jsx("img",{ref:k,className:"word-table-cell__image",src:A,alt:e,draggable:!1,style:{opacity:N?0:1},onLoad:E,onError:O})]}),i&&n.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&x&&n.jsxs("span",{className:"word-table-cell__sub h3",children:["[",x,"]"]}),u&&a&&n.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),n.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":G,children:[n.jsx("span",{"data-play-state":"play",style:{display:h?"none":void 0},children:n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:m("common.play","\uC7AC\uC0DD"),ariaLabel:e?m("common.playFor",{name:e,defaultValue:`${e} \uC7AC\uC0DD`}):m("common.play","\uC7AC\uC0DD"),onClick:q})}),n.jsx("span",{"data-play-state":"pause",style:{display:h?void 0:"none"},children:n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:m("common.pause","\uBA48\uCDA4"),ariaLabel:e?m("common.pauseFor",{name:e,defaultValue:`${e} \uBA48\uCDA4`}):m("common.pause","\uBA48\uCDA4"),onClick:q})})]}),d&&n.jsxs("div",{ref:C,className:"word-table-cell__info-button",onPointerEnter:T=>{ia(T)||F()},onPointerLeave:T=>{ia(T)||Y()},onFocus:()=>{la()||F()},onBlur:Y,children:[n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:m("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:T=>{T.stopPropagation(),M.touchPress()}}),b&&L&&n.jsx(Gn,{anchorRect:b,items:L,showIndex:!1})]})]})}function ma({title:e,titleIcon:t,disc:a,className:r,orientation:i="landscape",contentTypes:s=["image","word","standardPron"],cutLine:l="show",showOutline:u=!0,showDivLine:c=!0,items:d,editCells:m,count:p,activeCell:C=null,onActivateCell:_,onRemoveCell:y,onRemoveItem:g,onReorder:h,renderCellAction:v,showFillerAdd:f=!1,contentRef:w,buttonSize:b=40,brand:B,code:x,pageNumber:A,pageNumberPosition:k="right",fitHeight:N=!1,scoring:S=!1,marks:E,onMarkClick:O,scoreIndexOffset:F=0}){const Y=o.useCallback((Ae,Te)=>{O?.(F+Ae,Te)},[O,F]),M=(Ae,Te)=>{const Se=E?.[cr(F+Ae)]??null;return n.jsx("div",{className:we("word-table-cell__score",Se?"word-table-cell__score--marked":""),style:We>1?{transform:`translateX(-50%) scale(${We})`,transformOrigin:"bottom center"}:void 0,children:dr.map(Xe=>n.jsx("span",{className:we("word-table-cell__score-slot",Se===Xe?"word-table-cell__score-slot--on":""),children:n.jsx(me,{htmlType:"button",size:b,type:"dot",shape:"pill",icon:ku[Xe],variant:Se===Xe?Nu[Xe]:"default",selected:Se===Xe,useBorder:!1,...Be?{}:{tabIndex:-1,role:"img"},showTooltipInfo:L(`wordTable.scoring.markName.${Xe}`,{defaultValue:Xe}),ariaLabel:L(`wordTable.scoring.${Xe}`,{word:Te,defaultValue:`${Te} ${Xe}`}),onClick:Be?Qe=>{Qe.stopPropagation(),Y(Ae,Xe)}:void 0})},Xe))})},{t:L}=xe.useTranslation(),P=m!==void 0,G=e!=null||!!t||!!a,U=ln("(max-width: 767px)"),z=o.useRef(null),[q,$]=o.useState(null),V=d?.length??0,[H,T]=o.useState(null),[D,R]=o.useState(""),I=o.useRef(null),W=o.useRef(null),ee=o.useRef(null),oe=o.useRef(null),ce=o.useCallback(Ae=>{W.current=Ae,typeof w=="function"?w(Ae):w&&(w.current=Ae)},[w]),J=o.useCallback((Ae,Te)=>{I.current=Te,h?.(Ae,Te),R(L("wordTable.reorder.moved",{n:Te+1,total:V,defaultValue:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40"}))},[h,L,V]);o.useEffect(()=>{const Ae=I.current;Ae!=null&&(I.current=null,W.current?.querySelectorAll(".word-table-block__card:not(.word-table-block__card--filler)")?.[Ae]?.querySelector(".word-table-block__card-handle button")?.focus())}),o.useEffect(()=>()=>{oe.current?.()},[]);const re=o.useCallback((Ae,Te)=>{if(!h||!Ae.altKey||Ae.ctrlKey||Ae.metaKey)return;const Se=Ae.key==="ArrowRight";if(!Se&&Ae.key!=="ArrowLeft")return;Ae.preventDefault();const Xe=Te+(Se?1:-1);Xe<0||Xe>=V||J(Te,Xe)},[h,V,J]),Ne=o.useCallback((Ae,Te)=>{if(!h||Ae.pointerType==="mouse")return;const Se=Ae.target.closest?.("button");if(Se&&!Se.closest(".word-table-block__card-handle"))return;oe.current?.();const Xe={x:Ae.clientX,y:Ae.clientY};let Qe=!1;const dt=se=>{Qe&&se.cancelable&&se.preventDefault()};let ht=null,wt=null;const ft=()=>{const se=wt;if(!se)return;const ke=document.elementFromPoint?.(se.x,se.y)?.closest?.("[data-wordtable-cell]"),ze=ke?Number(ke.dataset.wordtableCell):NaN,nt=Number.isInteger(ze)?ze:null;ee.current=nt,$(Ie=>Ie===nt?Ie:nt)},Nt=se=>{if(!Qe){(Math.abs(se.clientX-Xe.x)>Ru||Math.abs(se.clientY-Xe.y)>Ru)&&Ke();return}if(wt={x:se.clientX,y:se.clientY},typeof requestAnimationFrame>"u"){ft();return}ht===null&&(ht=requestAnimationFrame(()=>{ht=null,ft()}))},gt=()=>{ht!==null&&(cancelAnimationFrame(ht),ht=null,ft());const se=ee.current,ke=Qe;Ke(),ke&&se!=null&&se!==Te&&J(Te,se)},it=setTimeout(()=>{Qe=!0,T(Te),ee.current=Te,$(Te),window.addEventListener("touchmove",dt,{passive:!1})},v5);function Ke(){clearTimeout(it),window.removeEventListener("pointermove",Nt),window.removeEventListener("pointerup",gt),window.removeEventListener("pointercancel",gt),window.removeEventListener("touchmove",dt),Qe=!1,ht!==null&&(cancelAnimationFrame(ht),ht=null),ee.current=null,oe.current=null,T(null),$(null)}oe.current=Ke,window.addEventListener("pointermove",Nt),window.addEventListener("pointerup",gt),window.addEventListener("pointercancel",gt)},[h,J]),{width:K,height:Q}=pa[i],pe=typeof N=="number"?N:N&&typeof N=="object"?U?N.narrow:N.wide:null,{scalerRef:De,scale:ye,offset:ne}=$u(K,N?Q:void 0),le=P?m?.length??0:d?.length??0,Ce=Math.max(p??le,1),{cols:ge,rows:fe}=c5(i,Ce),$e={word:s.length===0||s.includes("word"),image:s.length===0||s.includes("image"),pron:s.length===0||s.includes("standardPron"),colloq:s.length===0||s.includes("colloquialPron")},Ve=P?(m??[]).some(Ae=>Ae!==null&&Ae.length>1):(d??[]).some(Ae=>(Ae.words??[]).length>1),je=!!B?.show,Fe=!!B?.show&&B?.top!==!1,qe=!!B?.show&&B?.bottom!==!1,mt=B?.copyright??"\xA9 IHAB, Inc. All rights reserved.",ct=we("word-table-block__content",d5[l],u&&"word-table-block__content--outline",c&&Ve&&"word-table-block__content--div-line",!je&&A&&k!=="none"&&"word-table-block__content--page-number",Fe&&"word-table-block__content--brand-top",qe&&"word-table-block__content--brand-bottom"),rt={transform:`scale(${1/ye})`,transformOrigin:"center center"},Ct=b*dr.length+4*(dr.length-1),Be=!!O,We=Be?Math.max(1,Math.min(1/ye,K/ge/Ct)):1,_e=n.jsxs("div",{ref:De,className:"word-table__scaler",style:{height:Q*ye},children:[n.jsx("div",{className:we("word-table",S&&!Be&&"word-table--score-readonly",!G&&r),style:{width:K,height:Q,transform:`scale(${ye})`,transformOrigin:"top left",marginLeft:ne},children:n.jsxs("div",{ref:ce,className:ct,style:{gridTemplateColumns:`repeat(${ge}, 1fr)`,gridTemplateRows:`repeat(${fe}, 1fr)`},children:[P?n.jsx(n.Fragment,{children:(m??[]).map((Ae,Te)=>n.jsx("div",{className:we("word-table-block__edit-cell",Ae?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",C===Te?"word-table-block__edit-cell--active":""),style:Lu(Te,ge,fe,l),children:Ae?n.jsxs(n.Fragment,{children:[Ae.map((Se,Xe)=>n.jsxs(o.Fragment,{children:[Xe>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(Pu,{label:Se.word,subLabel:Se.pronunciation,colloquialLabel:Se.colloquialPronunciation,homonum:Se.homonum,showWord:$e.word,showImage:$e.image,showPronunciation:$e.pron,showColloquial:$e.colloq,buttonSize:b})]},Xe)),S&&M(Te,Ae.map(Se=>Se.word).join(" / ")),y&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:Ae.length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:Ae.length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>y(Te)})})]}):_&&n.jsx("div",{style:rt,children:n.jsx(me,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:L("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>_(Te)})})},Te))}):n.jsxs(n.Fragment,{children:[(d??[]).map((Ae,Te)=>n.jsxs("div",{"data-wordtable-cell":h?Te:void 0,className:`word-table-block__card${h?" word-table-block__card--draggable":""}${q===Te?" word-table-block__card--drag-over":""}${H===Te?" word-table-block__card--dragging":""}`,style:Lu(Te,ge,fe,l),draggable:!!h,onPointerDown:h?Se=>Ne(Se,Te):void 0,onKeyDown:h?Se=>re(Se,Te):void 0,onDragStart:h?()=>{z.current=Te}:void 0,onDragOver:h?Se=>{Se.preventDefault(),$(Te)}:void 0,onDragLeave:h?()=>$(null):void 0,onDrop:h?Se=>{Se.preventDefault(),z.current!==null&&z.current!==Te&&h(z.current,Te),z.current=null,$(null)}:void 0,onDragEnd:h?()=>{z.current=null,$(null)}:void 0,children:[(Ae.words??[]).map((Se,Xe)=>n.jsxs(o.Fragment,{children:[Xe>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(Pu,{label:Se.label,subLabel:Se.subLabel,colloquialLabel:Se.colloquialLabel,homonum:Se.homonum,showWord:$e.word,showImage:$e.image,showPronunciation:$e.pron,showColloquial:$e.colloq,buttonSize:b,wordInfo:Se.grade||Se.syllables!=null||Se.pos||Se.wordType?{grade:Se.grade,syllables:Se.syllables,pos:Se.pos,wordType:Se.wordType}:void 0})]},Xe)),S&&M(Te,(Ae.words??[]).map(Se=>Se.label).join(" / ")),h&&n.jsx("div",{className:"word-table-block__card-handle",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"grip-vertical",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:L("wordTable.reorder.hint","Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"),ariaLabel:L("wordTable.reorder.handle",{word:(Ae.words??[]).map(Se=>Se.label).join(" / "),defaultValue:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)"})})}),(v||g)&&n.jsxs("div",{className:"word-table-block__card-actions",children:[v?.(Te,Ae),g&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:(Ae.words??[]).length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:(Ae.words??[]).length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>g(Ae.id)})})]})]},Ae.id)),Array.from({length:Math.max(0,ge*fe-(d?.length??0))}).map((Ae,Te)=>{const Se=(d?.length??0)+Te<Ce;return n.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:f&&_&&Se&&n.jsx("div",{style:rt,children:n.jsx(me,{htmlType:"button",size:b,type:"bar",icon:"plus",label:L("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>_((d?.length??0)+Te)})})},`filler-${Te}`)})]}),Fe&&n.jsx(n.Fragment,{children:n.jsxs("div",{className:"word-table__band word-table__band--top",children:[n.jsx("img",{className:"word-table__brand-logo",src:B?.topLogo?.src??nr,alt:B?.topLogo?.alt??"\uB9D0\uADC0"}),(()=>{const Ae=[B?.title&&n.jsx("span",{className:"word-table__paper-title",children:B.title},"t"),B?.owner&&n.jsx("span",{className:"word-table__owner",children:B.owner},"o"),x&&n.jsx("span",{className:"word-table__code",children:x},"c")].filter(Boolean);return Ae.length===0?null:n.jsx("span",{className:"word-table__ident",children:Ae.map((Te,Se)=>n.jsxs(o.Fragment,{children:[Se>0&&n.jsx("span",{className:"word-table__ident-dot","aria-hidden":"true",children:"\xB7"}),Te]},Se))})})()]})}),qe&&n.jsx(n.Fragment,{children:n.jsxs("div",{className:"word-table__band word-table__band--bottom",children:[n.jsxs("span",{className:"word-table__brand-by",children:[B?.bottomLogo?n.jsx("img",{className:"word-table__brand-logo--ihab word-table__brand-logo--given",src:B.bottomLogo.src,alt:B.bottomLogo.alt}):n.jsx("span",{className:"word-table__brand-logo--ihab",role:"img","aria-label":"IHAB"}),n.jsx("span",{className:"word-table__copyright",children:mt})]}),n.jsxs("span",{className:"word-table__band-end",children:[B?.link&&n.jsx("span",{className:"word-table__link",children:B.link}),A&&k!=="none"&&n.jsx("span",{className:"word-table__page-count",children:L("wordTable.filter.pageIndicator",{current:A.current,total:A.total})})]})]})}),!je&&A&&k!=="none"&&n.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${k}`,children:L("wordTable.filter.pageIndicator",{current:A.current,total:A.total})})]})}),h&&n.jsx("span",{role:"status",style:y5,children:D})]}),Ue=pe==null?_e:n.jsx("div",{className:"word-table__frame",style:{height:pe},children:_e});return G?n.jsx(da,{type:"page",icon:t,title:e,disc:a,className:we("word-table-block",r),children:Ue}):Ue}function x5(e,t,a){const r=[];for(const i of e??[]){if(i.type==="note"||i.type==="input")continue;const s=i.displayLabel??i.label,l=_5(i,t?.[i.label],a);l!==null&&r.push(`${s} ${l}`)}return r.join(" \xB7 ")}function _5(e,t,a){const r=(Array.isArray(t)?t:t===void 0?[]:[t]).filter(i=>i!==dn);return r.length===0?e.allOption?e.allLabel??a:null:r.map(i=>w5(e,i)).join(", ")}function w5(e,t){const a=[...e.items??[],...(e.groups??[]).flat()];for(const r of a)if(r!=null){if(typeof r=="string"){if(r===t)return r;continue}if(r.value===t)return r.displayLabel??r.labels?.join(" ")??r.value}return t}function Dn({title:e,titleLevel:t=2,headerAction:a,headerSummary:r,collapsible:i=!1,defaultCollapsed:s=!1,collapsed:l,onCollapsedChange:u,footer:c,sections:d,selected:m={},onSelect:p,align:C,sectionAlign:_,className:y}){const g=(C??(_==="vertical"?"newline":"inline"))==="inline",{t:h}=xe.useTranslation(),[v,f]=o.useState(s),w=l??v,b=()=>{const E=!w;f(E),u?.(E)},B=E=>{if(!i)return;const O=E.target;!O||typeof O.closest!="function"||O.closest(".filter-panel__collapse-toggle")||O.closest('button, a, input, select, textarea, label, [role="radiogroup"], [role="button"], [role="menu"]')||b()},x=o.useMemo(()=>r!==void 0||!w?"":x5(d,m,h("common.all","\uC804\uCCB4")),[r,w,d,m,h]),A=r??(x?n.jsx("span",{className:"filter-panel__header-summary body-3",children:x}):null),k=e||a||r||i,N=o.useId(),S=t?`h${t}`:"span";return n.jsxs("div",{className:we("filter-panel",i?"filter-panel--collapsible":"",w?"filter-panel--collapsed":"",y),role:typeof e=="string"&&e?"group":void 0,"aria-labelledby":typeof e=="string"&&e?N:void 0,children:[k&&n.jsxs("div",{className:"filter-panel__header",onClick:i?B:void 0,children:[n.jsx("div",{className:"filter-panel__title-row",children:e&&n.jsx(S,{id:N,className:"filter-panel__title h4",children:e})}),n.jsxs("div",{className:"filter-panel__header-actions",children:[w?A:a,i&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:w?"chevron-down":"chevron-up",className:"filter-panel__collapse-toggle",ariaLabel:w?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),showTooltipInfo:w?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),"aria-expanded":!w,onClick:b})]})]}),!w&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:we("filter-panel__sections",g?"filter-panel__sections--row":""),children:d.map(E=>{const O=m[E.label],F=O===void 0||(Array.isArray(O)?O.length===0:!1),Y=(E.items??[]).filter(L=>L!=null);E.allOption&&Y.some(L=>(typeof L=="string"?L:L.value)===dn)&&Zt(`filter-panel-all-value:${E.label}`,`[FilterPanel] '${E.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${dn}' \uC778 \uBCF4\uAE30\uAC00 \uD568\uAED8 \uC788\uB2E4 \u2014 \uB450 \uC120\uD0DD\uC774 \uAD6C\uBCC4\uB418\uC9C0 \uC54A\uB294\uB2E4. \uBCF4\uAE30 \uAC12\uC744 \uBC14\uAFD4\uB77C.`);const M=L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"&&!!L.disabled,U=typeof L!="string"?L.labels:void 0,z=typeof L!="string"?L.displayLabel:void 0,q=typeof L!="string"?L.tooltip:void 0,$=typeof L!="string"?L.descriptionTooltip:void 0,V=typeof L!="string"?L.shape:void 0,H=Array.isArray(O)?O.includes(P):O===P;return n.jsx(me,{htmlType:"button",size:"keyboard",label:U??z??P,type:E.itemType??(U?"bar":P.length===1?"dot":void 0),selected:H,disabled:G,shape:V,showTooltipInfo:!!q,tooltipInfoText:q,tooltipDescription:$,onClick:()=>p?.(P,E.label)},P)};return n.jsxs(o.Fragment,{children:[E.groupLabel&&n.jsxs("div",{className:"filter-panel__group-label-row",children:[n.jsx("div",{className:"filter-panel__group-label body-2",children:E.groupLabel}),E.groupAction]}),n.jsxs("div",{className:we("filter-panel__section",E.layout==="row"?"filter-panel__section--row":"",E.block?"filter-panel__section--block":""),children:[n.jsxs("div",{className:"filter-panel__section-label-row",children:[n.jsx("span",{className:"filter-panel__section-label body-3",children:E.displayLabel??E.label}),E.labelAction??(E.labelInfo?n.jsx(La,{...E.labelInfo}):null)]}),E.type==="note"?n.jsx("div",{className:"filter-panel__note body-3",children:E.content}):E.type==="input"?n.jsx(Zn,{className:"filter-panel__textfield",placeholder:E.placeholder,ariaLabel:E.displayLabel??E.label,value:m[E.label]??"",onChange:L=>p?.(L,E.label),error:E.error}):!E.multiple&&E.display==="segmented"?n.jsx(gn,{ariaLabel:E.displayLabel??E.label,options:[...E.allOption?[{key:dn,label:E.allLabel??h("common.all","\uC804\uCCB4"),disabled:E.allOptionDisabled}]:[],...Y.map(L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"?L.displayLabel:void 0,U=typeof L!="string"?L.disabled:void 0;return{key:P,label:G??P,disabled:U}})],value:F&&E.allOption?dn:m[E.label]??"",onChange:L=>p?.(L,E.label),size:32}):!E.multiple&&E.display==="dropdown"?n.jsx(pn,{className:"filter-panel__dropdown",ariaLabel:typeof E.label=="string"?E.label:void 0,size:40,options:[...E.allOption?[{value:dn,label:E.allLabel??h("common.all","\uC804\uCCB4"),disabled:E.allOptionDisabled}]:[],...Y.map(L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"?L.displayLabel:void 0,U=typeof L!="string"?L.disabled:void 0;return{value:P,label:G??P,disabled:U}})],value:F&&E.allOption?dn:m[E.label],onChange:L=>p?.(L,E.label)}):n.jsxs("div",{className:E.groups?"filter-panel__item-groups":"filter-panel__items",children:[E.allOption&&!E.groups&&n.jsx(me,{htmlType:"button",size:"keyboard",label:E.allLabel??h("common.all","\uC804\uCCB4"),selected:F,disabled:E.allOptionDisabled,onClick:()=>p?.(dn,E.label)}),E.groups?E.groups.map((L,P)=>n.jsxs("div",{className:"filter-panel__item-group",children:[P===0&&E.allOption&&n.jsx(me,{htmlType:"button",size:"keyboard",label:E.allLabel??h("common.all","\uC804\uCCB4"),selected:F,disabled:E.allOptionDisabled,onClick:()=>p?.(dn,E.label)}),L.filter(G=>G!=null).map(M)]},P)):Y.map(M)]})]})]},E.label)})}),c!=null&&c!==!1&&n.jsx("div",{className:"filter-panel__footer body-3",children:c})]})]})}const A5=[1,2,3,4,5,6,7,8,9,10,11,12],Fu=[8,4,2,1],rn="show",yn="hide";function Iu(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"image",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"word",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"standardPron",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"colloquialPron",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function Ou(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"landscape",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"portrait",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function Hu(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function zu(e){return{label:e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Vu(e){return{label:e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Wu(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"dashed",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"corner",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function qu(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Uu(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...Fu.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Gu(e,t){return e===t||!Fu.includes(e)?Number.POSITIVE_INFINITY:e}function B5(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"left",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"center",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"right",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Ku(e){return e==="left"||e==="center"||e==="right"?e:"none"}function Yu(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation,[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?rn:yn,[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?rn:yn,...t.showTopInfo!=null?{[e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4")]:t.showTopInfo?rn:yn}:{},...t.showBottomInfo!=null?{[e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4")]:t.showBottomInfo?rn:yn}:{}}}function Zu(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===dn?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(i=>i.includes(t)?i.filter(s=>s!==t):[...i,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="landscape"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t===rn),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t===rn),!0):a===e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4")?(r.setShowTopInfo?.(t===rn),!0):a===e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4")?(r.setShowBottomInfo?.(t===rn),!0):!1}function k5(e){return"sections"in e}function Oo(e){const{t}=xe.useTranslation(),{title:a,className:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c}=e,d={collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c};if(k5(e))return n.jsx(Dn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,...d,align:"inline"});const{hasImage:m,hasColloquial:p,contentTypes:C,orientation:_,showOutline:y,cutLine:g,showDivLine:h,setters:v,showCutLine:f=!1,showDivLine2:w=!1,middleSections:b=[],extraSelected:B={},onExtraSelect:x,showPaperBands:A=!1,showTopInfo:k=!0,showBottomInfo:N=!0}=e,S=[Iu(t,{hasImage:m,hasColloquial:p}),Ou(t),...b,Hu(t),...f?[Wu(t)]:[],...w?[qu(t)]:[],...A?[zu(t),Vu(t)]:[]],E={...Yu(t,{contentTypes:C,orientation:_,showOutline:y,cutLine:g,showDivLine:h,showTopInfo:k,showBottomInfo:N}),...B},O=(F,Y)=>{Zu(t,F,Y,v)||x?.(F,Y)};return n.jsx(Dn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:S,selected:E,onSelect:O,...d,sectionAlign:"horizontal"})}function Xu(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function Ho(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let pr=null,ha=null;function N5(e,t,a,r="",i=""){if(e.length===0||ha&&ha.iframe.isConnected&&Date.now()-ha.at<1e4)return;const s=r?Ho(r):"";pr?.();let l=null;if(s){const d=document.title;document.title=s,l=()=>{document.title=d,window.removeEventListener("afterprint",l),pr===l&&(pr=null)},pr=l,window.addEventListener("afterprint",l)}const u=document.createElement("iframe");u.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(u);const c=u.contentDocument;if(!c){u.remove();return}ha={iframe:u,at:Date.now()},c.open(),c.write(zo(e,t,a,!0,s,i)),c.close(),u.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>{u.remove(),ha?.iframe===u&&(ha=null)},0)})}function zo(e,t,a,r=!1,i="",s=""){i=i?Ho(i):"";const l=Array.from(document.styleSheets).flatMap(m=>{try{return Array.from(m.cssRules).map(p=>p.cssText)}catch{return[]}}).join(`
|
|
860
|
-
`),u="light",c=s?`<div class="paper-head">${
|
|
857
|
+
`)}const my=new Set(["pnpm","npm","yarn","node","git","curl","docker","cat","ls","cd","rm","mv","cp","echo","export"]),hy=/^(?:const|let|var|function|return|if|else|for|while|switch|case|break|import|from|export|class|new|try|catch|finally|throw|await|async|null|true|false|this|typeof|instanceof)\b/;function Cy(e,t){let a=e;const r=[],i=/^(?:sh|bash|zsh|shell|console)$/.test(t.toLowerCase()),s=(l,u)=>r.push({type:l,content:u});for(;a.length>0;){const l=a.match(/^\s+/);if(l){s("whitespace",l[0]),a=a.slice(l[0].length);continue}if(!i&&a.startsWith("//")){const v=a.indexOf(`
|
|
858
|
+
`),g=v===-1?a:a.slice(0,v);s("comment",g),a=a.slice(g.length);continue}if(i&&a.startsWith("#")){const v=a.indexOf(`
|
|
859
|
+
`),g=v===-1?a:a.slice(0,v);s("comment",g),a=a.slice(g.length);continue}const u=a.match(/^\/\*[\s\S]*?\*\//);if(u){s("comment",u[0]),a=a.slice(u[0].length);continue}const c=a.match(/^(`(?:\\.|[^`])*`|"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*')/);if(c){s("string",c[0]),a=a.slice(c[0].length);continue}const d=a.match(/^\d+(?:\.\d+)?/);if(d){s("number",d[0]),a=a.slice(d[0].length);continue}const m=a.match(hy);if(m){s("keyword",m[0]),a=a.slice(m[0].length);continue}const p=a.match(/^[A-Za-z_$][A-Za-z0-9_$-]*/);if(p){const v=p[0];s(i&&my.has(v)?"command":"identifier",v),a=a.slice(v.length);continue}const C=a.match(/^[=+\-*/%<>!&|^~?:]+/);if(C){s("operator",C[0]),a=a.slice(C[0].length);continue}const y=a.match(/^[()[\]{};.,]/);if(y){s("punctuation",y[0]),a=a.slice(1);continue}s("other",a[0]),a=a.slice(1)}return r}function fy({children:e,language:t="bash",title:a="",showCopy:r=!0,size:i="default",className:s=""}){const{t:l}=xe.useTranslation(),[u,c]=o.useState(!1),d=py(eu(e)),m=o.useRef(null);o.useEffect(()=>()=>{m.current&&clearTimeout(m.current)},[]);const p=async()=>{try{if(!await of(d))return;c(!0),m.current&&clearTimeout(m.current),m.current=setTimeout(()=>c(!1),2e3)}catch{}},C=Cy(d,t),y=i==="small"?"caption-1":"body-3";return n.jsxs("div",{className:we("code-box",i==="small"?"code-box--small":"",s),children:[(a||r)&&n.jsxs("div",{className:"code-box__header",role:"toolbar","aria-label":l("common.codeBlock","\uCF54\uB4DC \uBE14\uB85D"),children:[n.jsx("div",{className:"code-box__title caption-1",children:a}),r&&n.jsx(me,{htmlType:"button",className:"code-box__copy",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:u?"check":"copy",onClick:p,ariaLabel:u?l("common.copied","\uBCF5\uC0AC\uB428"):l("common.copyCode","\uCF54\uB4DC \uBCF5\uC0AC")})]}),n.jsx("pre",{className:"code-box__inner","data-lang":t,children:n.jsx("code",{children:C.map((v,g)=>n.jsx("span",{className:`code-token ${v.type} ${y}`,children:v.content},g))})})]})}const gy={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0};function Fa(e){const{t}=xe.useTranslation(),{variant:a="spinner",size:r=24,progress:i=null,label:s}=e||{},l=s||t("loader.loading","Loading");if(a==="bar"){const c=i==null||!Number.isFinite(Number(i)),d=c?0:Math.max(0,Math.min(100,Number(i)));return n.jsx("div",{className:`loader-bar${c?" loader-bar--indeterminate":""}`,role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":c?void 0:d,"aria-label":l,children:n.jsx("div",{className:"loader-bar__inner",style:c?void 0:{width:`${d}%`}})})}const u=typeof r=="number"?`${r}px`:r;return n.jsxs("div",{className:"loader-spinner",style:{width:u,height:u},role:"status","aria-label":l,children:[n.jsx("span",{style:gy,children:l}),n.jsxs("svg",{className:"loader-spinner__svg",viewBox:"0 0 50 50",width:r,height:r,children:[n.jsx("circle",{className:"loader-spinner__bg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4"}),n.jsx("circle",{className:"loader-spinner__fg",cx:"25",cy:"25",r:"20",fill:"none",strokeWidth:"4",strokeLinecap:"round"})]})]})}function tu({checked:e,onChange:t,disabled:a=!1,label:r,ariaLabel:i,labelPosition:s="right",className:l="",id:u}){const c=r&&n.jsx("span",{className:"toggle__label body-3",children:r});return n.jsxs("label",{className:`toggle${a?" toggle--disabled":""} ${l}`.trim(),children:[s==="left"&&c,n.jsx("input",{id:u,type:"checkbox",role:"switch",checked:e,disabled:a,onChange:d=>t?.(d.target.checked),"aria-label":!r&&i?i:void 0}),n.jsx("span",{className:"toggle__slider"}),s==="right"&&c]})}function nu({checked:e=!1,onChange:t,disabled:a,indeterminate:r,label:i,size:s="medium",className:l,title:u,ariaLabel:c}){const d=o.useRef(null),m=o.useId(),p=o.useRef(!!r);return p.current=!!r,o.useEffect(()=>{d.current&&(d.current.indeterminate=!!r)}),n.jsxs("label",{className:we("checkbox",s==="small"&&"checkbox--small",s==="large"&&"checkbox--large",a&&"checkbox--disabled",l),htmlFor:m,title:u,children:[n.jsx("input",{ref:d,id:m,type:"checkbox",className:"checkbox__input",checked:e,onChange:C=>{t?.(C.target.checked),d.current&&(d.current.indeterminate=p.current)},disabled:a,"aria-label":!i&&c?c:void 0}),n.jsx("span",{className:"checkbox__box"}),i&&n.jsx("span",{className:"checkbox__label body-3",children:i})]})}function by({count:e,actions:t,onClear:a,clearLabel:r,visible:i,content:s,max:l}){const{t:u}=xe.useTranslation(),c=i!==void 0?i:e>0,d=r??u("bulkBar.clearSelection","\uC120\uD0DD \uD574\uC81C"),m=o.useRef(null),p=o.useRef(null),C=o.useRef(null),y=o.useRef(c);o.useLayoutEffect(()=>{const f=p.current,w=y.current;if(y.current=c,c&&!w){const b=typeof document<"u"?document.activeElement:null;C.current=b&&b!==document.body&&!f?.contains(b)?b:null}else!c&&w&&f&&f.contains(document.activeElement)&&Ja(f,C.current)},[c]);const[v,g]=o.useState(!1),h=o.useRef(!1),x=o.useRef(null);return o.useEffect(()=>{const f=m.current;if(!f)return;const w=N=>{h.current=N,g(N)},b=()=>{const N=f.firstElementChild??f,S=Array.from(N.children);if(S.length<2){w(!1);return}const E=S[0].offsetTop,O=S.some(P=>P.offsetTop!==E);if(!h.current){x.current=f.clientWidth,O&&w(!0);return}if(O)return;const F=S[0],Y=S[S.length-1],M=Y.offsetLeft+Y.offsetWidth-F.offsetLeft,L=x.current;(L==null||M<=L)&&w(!1)};if(b(),typeof ResizeObserver>"u")return;const B=new ResizeObserver(b);B.observe(f);const _=f.parentElement;let A=_?.clientWidth??0;const k=new ResizeObserver(()=>{const N=_?.clientWidth??0;N!==A&&(A=N,x.current=null,b())});return _&&k.observe(_),()=>{B.disconnect(),k.disconnect()}},[s,e]),n.jsxs("div",{ref:p,className:`bulk-bar ${c?"bulk-bar--visible":""}`,inert:!c||void 0,"aria-hidden":c?void 0:!0,children:[n.jsx("span",{ref:m,className:"bulk-bar__count body-2",role:"status",children:s??n.jsx("b",{children:u("common.selectedCount",{count:e})})}),l!==void 0&&n.jsx(kt,{size:"small",fill:"soft",variant:"main",label:`${e} / ${l}`,"aria-label":u("common.selectedOfMax",{count:e,max:l,defaultValue:`\uCD5C\uB300 ${l}\uAC1C \uC911 ${e}\uAC1C`})}),n.jsxs("div",{className:`bulk-bar__actions${v?" bulk-bar__actions--stacked":""}`,children:[n.jsx(me,{htmlType:"button",size:40,label:d,onClick:a}),t.map((f,w)=>n.jsx(me,{htmlType:"button",size:40,variant:f.variant??"default",icon:f.icon,label:f.label,onClick:f.onClick},w))]})]})}const yy=[{key:"edit",icon:"edit-2",closeFirst:!0},{key:"duplicate",icon:"copy",closeFirst:!1},{key:"publish",icon:"book-marked",closeFirst:!1},{key:"copyLink",icon:"link",closeFirst:!1},{key:"remove",icon:"trash-2",closeFirst:!0}];function vy(e){const{onClose:t,className:a}=e;return n.jsx("div",{className:we("item-actions",a),children:yy.map(({key:r,icon:i,closeFirst:s})=>{const l=e[r];if(!l)return null;const u=r==="publish"?l.published?l.unpublish:l.publish:l;return n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:i,ariaLabel:u.label,showTooltipInfo:u.label,onClick:()=>{s&&t(),u.onClick()}},r)})})}function au(e,t){const a=()=>{if(e){const[g,h]=e.split("-");return{y:+g,m:+h-1}}const[y,v]=Yr(t).split("-");return{y:+y,m:+v-1}},[r,i]=o.useState(()=>a().y),[s,l]=o.useState(()=>a().m),u=o.useRef(e);o.useEffect(()=>{if(e===u.current)return;u.current=e;const y=a();i(y.y),l(y.m)},[e]);const c=o.useRef({y:r,m:s});o.useEffect(()=>{c.current={y:r,m:s}},[r,s]);const d=o.useCallback(y=>{const v=c.current.y*12+c.current.m+y,g=Math.floor(v/12),h=v-g*12;c.current={y:g,m:h},i(g),l(h)},[]),m=o.useCallback(()=>d(-1),[d]),p=o.useCallback(()=>d(1),[d]),C=o.useCallback((y,v)=>{c.current={y,m:v},i(y),l(v)},[]);return{viewY:r,viewM:s,prevMonth:m,nextMonth:p,setViewYM:C}}function sr(e,t){return new Date(e,t+1,0).getDate()}function xy(e,t){return new Date(e,t,1).getDay()}function ir(e,t,a){return`${e}-${String(t+1).padStart(2,"0")}-${String(a).padStart(2,"0")}`}function _y(e){if(!e)return"";const[t,a,r]=e.split("-");return`${t}. ${a}. ${r}.`}function wy(e,t,a,r){const i=a?+a.split("-")[0]:e-10,s=r?+r.split("-")[0]:e+10,l=[];for(let u=i;u<=s;u++)for(let c=0;c<12;c++){const d=`${u}-${String(c+1).padStart(2,"0")}`;a&&d<a.slice(0,7)||r&&d>r.slice(0,7)||l.push({value:d,label:t(u,c+1)})}return l}function Ay({value:e,onChange:t,size:a=48,min:r,max:i,disabled:s,placeholder:l,className:u,today:c}){const{t:d,i18n:m}=xe.useTranslation(),p=l??d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),C=o.useMemo(()=>d("calendar.dow",{returnObjects:!0}),[d]),y=Yr(c),{viewY:v,viewM:g,prevMonth:h,nextMonth:x,setViewYM:f}=au(e,c),w=o.useId(),b=o.useCallback((T,D)=>{const R=window.innerHeight,I=window.innerWidth,W=typeof document<"u"?document.getElementById(w):null,ee=Math.max(W?.offsetHeight||0,W?.scrollHeight||0)||300,oe=Math.max(T.width,W?.offsetWidth||0,260),ce=R-T.bottom,J=T.top,re=ce<ee&&J>ce,Ne=8,K=(Q,pe)=>Math.min(Math.max(Ne,Q),Math.max(Ne,pe));return{position:"fixed",left:K(T.left,I-oe-Ne),width:T.width,minWidth:260,...re?{top:"auto",bottom:K(R-T.top+6,R-ee-Ne)}:{bottom:"auto",top:K(T.bottom+6,R-ee-Ne)},zIndex:Da(D)}},[w]),{open:B,setOpen:_,toggle:A,style:k,triggerRef:N,menuRef:S}=Sa({computeStyle:b,onScroll:"reposition",onResize:"reposition",ignoreOutsideClickSelector:".dropdown__menu"});o.useEffect(()=>{if(!B)return;const T=S.current;return(T?.querySelector(".date-picker__day--selected:not(:disabled)")??T?.querySelector(".date-picker__day--today:not(:disabled)")??T?.querySelector(".date-picker__day:not(:disabled)")??T?.querySelector(fn)??T)?.focus?.(),()=>{const D=document.activeElement;(!D||D===document.body)&&N.current?.focus?.()}},[B,S,N]);const[E,O]=o.useState(1),F=o.useRef(null),Y=o.useRef(null);o.useEffect(()=>{if(!B)return;const T=e&&e.slice(0,7)===`${v}-${String(g+1).padStart(2,"0")}`?+e.slice(8):y.slice(0,7)===`${v}-${String(g+1).padStart(2,"0")}`?+y.slice(8):1;O(T)},[B]),o.useEffect(()=>{if(Y.current==null)return;const T=Y.current;Y.current=null,F.current?.querySelector(`[data-day="${T}"]`)?.focus()}),o.useEffect(()=>{O(T=>Math.min(T,sr(v,g)))},[v,g]);const M=o.useCallback(T=>{let D=ir(T.getFullYear(),T.getMonth(),T.getDate());r&&D<r&&(D=r),i&&D>i&&(D=i);const[R,I,W]=D.split("-").map(Number);(R!==v||I-1!==g)&&f(R,I-1),O(W),Y.current=W},[r,i,v,g,f]),L=o.useCallback(T=>{const D=new Date(v,g,E),R=W=>{D.setDate(D.getDate()+W),M(D)},I=W=>{const ee=D.getFullYear()*12+D.getMonth()+W,oe=Math.floor(ee/12),ce=ee-oe*12;M(new Date(oe,ce,Math.min(D.getDate(),sr(oe,ce))))};switch(T.key){case"ArrowLeft":R(-1);break;case"ArrowRight":R(1);break;case"ArrowUp":R(-7);break;case"ArrowDown":R(7);break;case"Home":R(-D.getDay());break;case"End":R(6-D.getDay());break;case"PageUp":T.shiftKey?I(-12):I(-1);break;case"PageDown":T.shiftKey?I(12):I(1);break;default:return}T.preventDefault()},[v,g,E,M]),P=o.useCallback(T=>{s||(t(ir(v,g,T)),_(!1))},[v,g,t,_,s]);o.useEffect(()=>{s&&_(!1)},[s,_]);const G=T=>{const D=ir(v,g,T);return!!(r&&D<r||i&&D>i)},U=(()=>{const T=sr(v,g);if(E>=1&&E<=T&&!G(E))return E;for(let D=1;D<=T;D++)if(!G(D))return D;return-1})(),z=[];for(let T=0;T<xy(v,g);T++)z.push(null);for(let T=1;T<=sr(v,g);T++)z.push(T);const q=a===64?20:a===40?16:18,$=wy(v,(T,D)=>Kr(d,m.language,T,D),r,i),V=`${v}-${String(g+1).padStart(2,"0")}`,H=B?en.createPortal(n.jsxs("div",{ref:S,id:w,className:"date-picker__dropdown",style:k,"data-tooltip-ignore":!0,role:"dialog","aria-label":d("datePicker.chooseDate","\uB0A0\uC9DC \uC120\uD0DD"),tabIndex:-1,children:[n.jsxs("div",{className:"date-picker__nav",children:[n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:h,"aria-label":d("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(vs,{size:16,strokeWidth:2})}),n.jsx(pn,{className:"date-picker__nav-dropdown",ariaLabel:d("datePicker.selectYearMonth","\uC5F0\uC6D4 \uC120\uD0DD"),options:$,value:V,onChange:T=>{const[D,R]=T.split("-");f(+D,+R-1)},block:!0,size:40}),n.jsx("button",{type:"button",className:"date-picker__nav-btn",onClick:x,"aria-label":d("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(xs,{size:16,strokeWidth:2})})]}),n.jsxs("div",{className:"date-picker__grid",ref:F,onKeyDown:L,children:[C.map(T=>n.jsx("div",{className:"date-picker__dow caption-1",children:T},T)),z.map((T,D)=>{if(T===null)return n.jsx("div",{},`e${D}`);const R=ir(v,g,T),I=R===e,W=R===y,ee=G(T),oe=D%7;return n.jsx("button",{type:"button",disabled:ee,"data-day":T,tabIndex:T===U?0:-1,"aria-current":W?"date":void 0,onClick:()=>!ee&&P(T),className:we("date-picker__day caption-1",I&&"date-picker__day--selected",W&&!I&&"date-picker__day--today",ee&&"date-picker__day--disabled",oe===0&&"date-picker__day--sun",oe===6&&"date-picker__day--sat"),children:T},T)})]})]}),document.body):null;return n.jsxs("div",{className:we("date-picker",`date-picker--s${a}`,B&&"date-picker--open",u),children:[n.jsxs("button",{ref:N,type:"button",className:"date-picker__trigger body-2",onClick:()=>!s&&A(),disabled:s,"aria-haspopup":"true","aria-expanded":B,children:[n.jsx("span",{className:e?"date-picker__value":"date-picker__placeholder",children:e?_y(e):p}),n.jsx(Ss,{size:q,className:"date-picker__icon",strokeWidth:1.5})]}),H]})}function ru({children:e,className:t}){const a=o.useRef(null),[r,i]=o.useState(null);return o.useEffect(()=>{i(a.current?.parentElement??null)},[]),o.useEffect(()=>{const s=a.current;if(!s||!r)return;const l=()=>{const c=typeof window<"u"&&window.getComputedStyle(s).position==="absolute"?Math.ceil(s.getBoundingClientRect().width):0;c>0?r.style.setProperty("--section-head-float-w",`${c}px`):r.style.removeProperty("--section-head-float-w")};if(l(),typeof ResizeObserver>"u")return()=>{r.style.removeProperty("--section-head-float-w")};const u=new ResizeObserver(()=>l());return u.observe(s),u.observe(r),()=>{u.disconnect(),r.style.removeProperty("--section-head-float-w")}},[r,e]),n.jsx("div",{ref:a,className:we("section-head-float",t),children:e})}function wo({items:e,className:t}){return n.jsx("div",{className:t?`manager-bar-chart-legend ${t}`:"manager-bar-chart-legend",children:e.map((a,r)=>n.jsxs("span",{className:"manager-bar-chart-legend-item",children:[n.jsx("span",{className:"manager-bar-chart-legend-dot",style:{background:a.color}}),a.label]},r))})}function Ia({label:e,children:t}){return e?n.jsxs("div",{className:"barchart-total barchart-total--stacked",children:[n.jsx("span",{className:"barchart-total__label body-3",children:e}),n.jsx("span",{className:"barchart-total__value",children:t})]}):n.jsx("div",{className:"barchart-total",children:t})}function Ao({title:e,titleClassName:t="h3",titleLevel:a=3,icon:r,disc:i,headRight:s,headFloat:l,headSegment:u,headMenuItems:c,collapseBelow:d=420,onClick:m,ariaLabel:p,tooltip:C,totalNum:y,totalUnit:v,totalLabel:g,subRow:h,subRowAlign:x="start",className:f,inGrid:w=!1,children:b}){const{t:B}=xe.useTranslation(),_=o.useRef(null),{anchorRect:A,openAt:k,close:N}=Ea(),S=o.useCallback(()=>{C&&_.current&&k(_.current)},[C,k]),[E,O]=o.useState(!1);xo(()=>{const D=_.current;if(!D||!u)return;const R=W=>O(W>0&&W<d);if(R(D.clientWidth),typeof ResizeObserver>"u")return;const I=new ResizeObserver(W=>R(W[0].contentRect.width));return I.observe(D),()=>I.disconnect()},[u,d]);const[F,Y]=o.useState(null),M=o.useCallback(()=>Y(null),[]),L=o.useCallback(D=>{const R=D.currentTarget.getBoundingClientRect();Y(I=>I?null:{left:R.left,right:R.right,top:R.top,bottom:R.bottom,width:R.width,height:R.height,x:R.x,y:R.y})},[]),P=!!u&&E;o.useEffect(()=>{P||Y(null)},[P]);const G=u?[...u.options.map(D=>({label:D.label,icon:D.icon,selected:D.key===u.value,disabled:D.disabled,onClick:()=>u.onChange(D.key),closeOnSelect:!0})),...(c??[]).map((D,R)=>R===0?{...D,separatorBefore:!0}:D)]:[],U=o.useCallback(D=>{if(!m)return;const R=D.target;R&&typeof R.closest=="function"&&R.closest('button, a, input, select, textarea, [role="radiogroup"]')||m()},[m]),z=o.useCallback(D=>{m&&D.target===D.currentTarget&&(D.key==="Enter"||D.key===" ")&&(D.preventDefault(),m())},[m]),q=typeof s=="function"?s({collapsed:P}):s,$=y!=null||g?n.jsxs(Ia,{label:g,children:[y!=null&&n.jsx("span",{className:"barchart-total__num h0",children:y}),v&&n.jsx("span",{className:"barchart-total__unit h5",children:v})]}):null,V=q||u?n.jsxs("div",{className:"manager-section__head-right",children:[u&&(P?n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"ellipsis",ariaLabel:u.ariaLabel??B("common.more","\uB354\uBCF4\uAE30"),showTooltipInfo:u.ariaLabel??B("common.more","\uB354\uBCF4\uAE30"),"aria-haspopup":"menu","aria-expanded":!!F,onClick:L}):n.jsx(gn,{size:32,ariaLabel:u.ariaLabel,options:u.options.map(D=>({key:D.key,label:D.label,disabled:D.disabled})),value:u.value,onChange:u.onChange})),q]}):null,H=o.useId(),T=a?`h${a}`:"div";return n.jsxs("section",{ref:_,className:["manager-section",w&&"manager-section--grid",m&&"manager-section--clickable",f].filter(Boolean).join(" "),onClick:m?U:void 0,onKeyDown:m?z:void 0,onPointerEnter:C?S:void 0,onPointerLeave:C?N:void 0,onFocus:C?S:void 0,onBlur:C?N:void 0,role:m?"button":void 0,tabIndex:m?0:void 0,"aria-label":m?p??(typeof e=="string"?e:void 0):void 0,"aria-labelledby":!m&&e!=null?H:void 0,children:[C&&A&&n.jsx(An,{anchorRect:{left:A.left,top:A.top+21,right:A.right,bottom:A.bottom,width:A.width,height:A.height},text:C}),l&&n.jsx(ru,{children:l}),n.jsxs("div",{className:"manager-section__head",children:[n.jsxs("div",{className:"manager-section__title-row",children:[r&&n.jsx(at,{icon:r,label:typeof e=="string"?e:void 0,className:"manager-section__icon"}),n.jsx(T,{id:H,className:["manager-section__title",t].filter(Boolean).join(" "),children:e})]}),V,i&&n.jsx("div",{className:"manager-section__disc body-3",children:i})]}),($||h)&&n.jsxs("div",{className:["barchart-sub-row",x!=="start"&&`barchart-sub-row--${x}`].filter(Boolean).join(" "),children:[$,h]}),b,F&&n.jsx(cn,{anchorRect:F,onClose:M,ariaLabel:u?.ariaLabel??B("tooltip.menu","\uBA54\uB274"),children:n.jsx(ja,{columns:[{items:G}],onClose:M,size:"small"})})]})}function bn(e,t){const a=new Date(e,t,1).getDay();return 1+(8-(a===0?7:a))%7}function By(){const e=ra();let t=e.getFullYear(),a=e.getMonth(),r=e.getDate();if(r<bn(t,a)){const l=new Date(t,a,0);t=l.getFullYear(),a=l.getMonth(),r=l.getDate()}const i=Math.floor((r-bn(t,a))/7),s=`${t}\uB144 ${a+1}\uC6D4`;return{monthKey:s,value:`${s}#${i}`}}function ky(e){const t=ra(),a=`${t.getFullYear()}\uB144 ${t.getMonth()+1}\uC6D4`,r=(c,d)=>`${c}\uB144 ${d+1}\uC6D4`,i=new Map;i.set(a,[]);for(const c of e){if(isNaN(c.date.getTime()))continue;const d=r(c.date.getFullYear(),c.date.getMonth());i.has(d)||i.set(d,[]),i.get(d).push(c)}for(const[c,d]of[...i.entries()]){const m=c.match(/^(\d+)년 (\d+)월$/);if(!m)continue;const p=Number(m[1]),C=Number(m[2])-1,y=bn(p,C);if(!(c===a&&t.getDate()<y)&&!d.some(h=>h.date.getDate()<y))continue;const v=new Date(p,C,0),g=r(v.getFullYear(),v.getMonth());i.has(g)||i.set(g,[])}const s=new Map;for(const[c,d]of i){const m=c.match(/^(\d+)년 (\d+)월$/);if(!m)continue;const p=Number(m[1]),C=Number(m[2])-1,y=new Date(p,C+1,0).getDate(),v=d.reduce((b,B)=>Math.max(b,B.parts?.length??0,B.partsB?.length??0),0),g=d.some(b=>b.partsB),h=new Array(y+1).fill(0),x=new Array(y+1).fill(0),f=Array.from({length:y+1},()=>new Array(v).fill(0)),w=Array.from({length:y+1},()=>new Array(v).fill(0));for(const b of d){const B=b.date.getDate();if(h[B]+=b.a,x[B]+=b.b,b.parts)for(let _=0;_<v;_++)f[B][_]+=b.parts[_]??0;if(b.partsB)for(let _=0;_<v;_++)w[B][_]+=b.partsB[_]??0}s.set(c,{year:p,month:C,daysInMonth:y,partsLen:v,hasPartsB:g,dayA:h,dayB:x,dayParts:f,dayPartsB:w})}const l=(c,d,m)=>new Date(c,d,m).getTime()>new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),u={};for(const[c,d]of s){const{year:m,month:p,daysInMonth:C,dayA:y,dayB:v,dayParts:g,dayPartsB:h}=d,x=m===t.getFullYear()&&p===t.getMonth(),f=t.getDate(),w=s.get(r(p===11?m+1:m,(p+1)%12)),b=d.partsLen,B=[];for(let A=1;A<=C;A++){const k=x&&A>f;B.push({label:String(A),...k&&y[A]===0&&v[A]===0?{future:!0}:{},a:k&&y[A]===0&&v[A]===0?-1:y[A],b:v[A],...b?{parts:g[A]}:{},...b&&d.hasPartsB?{partsB:h[A]}:{}})}const _=[];for(let A=bn(m,p);A<=C;A+=7){const k=Math.max(0,A+6-C),N=k&&w?Math.max(b,w.partsLen):b,S=d.hasPartsB||!!(k&&w?.hasPartsB);let E=0,O=0;const F=new Array(N).fill(0),Y=new Array(N).fill(0);for(let L=A;L<=Math.min(A+6,C);L++){E+=y[L],O+=v[L];for(let P=0;P<b;P++)F[P]+=g[L][P],Y[P]+=h[L][P]}if(k&&w)for(let L=1;L<=k&&!l(w.year,w.month,L);L++){E+=w.dayA[L],O+=w.dayB[L];for(let P=0;P<w.partsLen;P++)F[P]+=w.dayParts[L][P],Y[P]+=w.dayPartsB[L][P]}const M=k?`${(p+1)%12+1}/${k}`:`${A+6}`;_.push({label:`${_.length+1}\uC8FC`,sublabel:`[${A}\uC77C~${M}\uC77C]`,a:E,b:O,...N?{parts:F}:{},...N&&S?{partsB:Y}:{}})}u[c]={weekly:_,daily:B}}return u}function ou(){const e=ra(),t=e.getFullYear(),a=e.getMonth()+1,r=[];for(let i=2024;i<=t;i++){const s=i===t?a:12;for(let l=1;l<=s;l++){const u=`${i}\uB144 ${l}\uC6D4`;r.push({value:u,label:u,year:i,month:l})}}return r.reverse()}ou();function Ny(){return ou()}function su(e,t){const a=e("calendar.weekOrdinal",{returnObjects:!0,defaultValue:[]}),r=Array.isArray(a)&&typeof a[t]=="string"?a[t]:null;return e("calendar.weekLabel",{ord:r??String(t+1)})}function iu(e){const{t,i18n:a}=xe.useTranslation(),[r,i]=o.useState("week"),s=o.useMemo(()=>Ny().filter(N=>N.value in e),[e]),l=o.useMemo(()=>{const N=[];for(const S of s){const E=new Date(S.year,S.month,0).getDate(),O=bn(S.year,S.month-1),F=Math.ceil((E-O+1)/7);for(let Y=F-1;Y>=0;Y--)N.push({value:`${S.value}#${Y}`,monthKey:S.value,year:S.year,month:S.month,week:Y})}return N},[s]),u=o.useCallback(N=>`${Kr(t,a.language,N.year,N.month)} ${su(t,N.week)}`,[t]),c=o.useMemo(()=>s.map(N=>({value:N.value,label:t("calendar.yearMonth",{year:N.year,month:N.month})})),[t,s]),d=o.useMemo(()=>l.map(N=>({value:N.value,label:u(N)})),[l,u]),m=o.useMemo(()=>By(),[e]),p=o.useMemo(()=>s.find(N=>N.value===m.monthKey)?.value??s[0]?.value??"",[s,m]),C=o.useMemo(()=>l.find(N=>N.value===m.value)?.value??l[0]?.value??"",[l,m]),[y,v]=o.useState(""),[g,h]=o.useState("");o.useEffect(()=>{s.find(N=>N.value===y)||v(p)},[s,y,p]),o.useEffect(()=>{l.find(N=>N.value===g)||h(C)},[l,g,C]);const x=r==="month"?c:d,f=r==="month"?y:g,w=r==="month"?v:h,b=o.useMemo(()=>{const N=t("calendar.dow",{returnObjects:!0});return Array.isArray(N)?N:["\uC77C","\uC6D4","\uD654","\uC218","\uBAA9","\uAE08","\uD1A0"]},[t]),B=x.findIndex(N=>N.value===f),_=o.useCallback(()=>{const N=x.findIndex(S=>S.value===f);N<x.length-1&&w(x[N+1].value)},[x,f,w]),A=o.useCallback(()=>{const N=x.findIndex(S=>S.value===f);N>0&&w(x[N-1].value)},[x,f,w]),k=o.useMemo(()=>[{key:"week",label:t("manager.chart.periodWeek","\uC8FC")},{key:"month",label:t("manager.chart.periodMonth","\uC6D4")}],[t]);return{period:r,setPeriod:i,range:f,setRange:w,activeOptions:x,activeIdx:B,handlePrev:_,handleNext:A,periodOptions:k,monthRange:y,weekRange:g,weekRanges:l,DOW:b}}const _t=e=>typeof e=="number"&&Number.isFinite(e)?e:0;function En(e,t=!0){return e.future===!0||t&&e.a===-1}function Ey({data:e,colorA:t,colorB:a,labelA:r,labelB:i,barWidth:s=10,barGap:l=1,height:u=140,maxOverride:c,tightMax:d,seriesColors:m,seriesLabels:p,rateLabels:C,grouped:y=!1,baseline:v,focusableBars:g=!1}){const h=!a,x=!!(m&&m.length>0),f=v,w=o.useMemo(()=>x?Math.max(0,...e.filter(z=>!En(z,f==null)).map(z=>y?Math.max(0,...(z.parts??[]).map(_t)):(z.parts??[]).reduce((q,$)=>q+Math.max(0,_t($)),0))):Math.max(0,...e.filter(z=>!En(z,f==null)).flatMap(z=>h?[_t(z.a)]:[_t(z.a),_t(z.b)])),[e,h,x,y]),b=o.useMemo(()=>{if(f==null)return 0;const z=e.filter(q=>!En(q,f==null)).flatMap(q=>x?(q.parts??[]).map(_t):h?[_t(q.a)]:[_t(q.a),_t(q.b)]);return Math.max(0,...z.map(q=>Math.abs(q-f)))},[e,f,x,h]),B=o.useMemo(()=>{const z=f!=null?b:w;return c??(d?z>0?z:10:Math.ceil(z/10)*10||10)},[w,b,f,c,d]),_=u,A=x?y?Math.max(1,m.length):1:h?1:2,k={"--bar-width":`${o.useMemo(()=>{const z=Math.max(1,e.length);return Math.max(2,Math.min(s,Math.round(120/(z*A)+6)))},[e.length,A,s])}px`},N={"--bar-group-gap":`${Math.max(0,l)}px`},S=o.useMemo(()=>{const z=Math.round(B/2);return f!=null?[f+B,...z!==B?[f+z]:[],f,...z!==B?[f-z]:[],f-B]:z!==B?[B,z,0]:[B,0]},[B,f]),E=z=>f!=null?1-(z-(f-B))/(2*B):1-z/B,[O,F]=o.useState(null),Y=o.useCallback(()=>F(null),[]),M=o.useCallback((z,q)=>{const $=[z.label,z.sublabel].filter(Boolean).join(" ");let V;if(x&&y&&z.rawPartsB)V=(p??[]).map((H,T)=>{const D=z.rawPartsB[T]??0;return{text:D>0?`${H}: ${q[T]??0}% (${z.rawParts?.[T]??0}/${D})`:`${H}: -`,color:(m??[])[T]}});else if(x&&y)V=(p??[]).map((H,T)=>({text:`${H}: ${G(q[T]??0)}`,color:(m??[])[T]}));else if(x){const H=(p??[]).map((D,R)=>({text:`${D}: ${q[R]??0}`,color:(m??[])[R]})),T=H.filter((D,R)=>(q[R]??0)>0);V=T.length?T:H}else C&&!h?V=[{text:`${r} ${_t(z.a)}%`,color:t},{text:`${i} ${_t(z.b)}%`,color:a}]:C&&z.rawB!==void 0?V=[{text:`${C.total} ${z.rawB}`},{text:`${C.done} ${z.rawA??0}`,color:t}]:h?V=[{text:`${r}: ${_t(z.a)}`,color:t}]:V=[{text:`${r}: ${_t(z.a)}`,color:t},{text:`${i}: ${_t(z.b)}`,color:a}];return{title:$,items:V}},[x,y,p,m,C,h,r,i,t,a,f]),L=o.useCallback((z,q,$)=>{const V=z.getBoundingClientRect(),{title:H,items:T}=M(q,$);F({rect:{left:V.left,top:V.top,right:V.right,bottom:V.bottom,width:V.width,height:V.height},title:H,items:T})},[M]),P=o.useCallback((z,q)=>{const{title:$,items:V}=M(z,q);return[$,...V.map(H=>H.text)].filter(Boolean).join(", ")},[M]),G=z=>f!=null&&z>f?`+${z}`:`${z}`,U=O!=null;return o.useEffect(()=>{if(!U)return;const z=()=>F(null),q=$=>{const V=$.target;V&&typeof V.closest=="function"&&V.closest(".manager-bar-chart-col")||F(null)};return window.addEventListener("scroll",z,!0),document.addEventListener("pointerdown",q,!0),()=>{window.removeEventListener("scroll",z,!0),document.removeEventListener("pointerdown",q,!0)}},[U]),n.jsxs("div",{className:"manager-bar-chart-wrap",style:N,children:[n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsx("div",{className:"manager-bar-chart-scroll",children:n.jsxs("div",{className:"manager-bar-chart-area",children:[n.jsxs("div",{className:"manager-bar-chart-plot",style:{height:_},children:[S.slice(0,-1).map((z,q)=>n.jsx("div",{className:`manager-bar-chart-gridline${f!=null&&z===f?" manager-bar-chart-gridline--baseline":""}`,style:{top:E(z)*_},children:n.jsx("span",{className:"manager-bar-chart-gridline__label caption-1",children:z})},q)),e.map((z,q)=>{const $=En(z,f==null),V=_/2,H=I=>f!=null?Math.min(V,Math.abs(_t(I)-f)/B*V):Math.min(_,Math.max(0,_t(I)/B*_)),T=$?0:H(z.a),D=$?0:H(z.b),R=(z.parts??[]).map(_t);return n.jsx("div",{className:`manager-bar-chart-col${y&&x?" manager-bar-chart-col--group":""}`,style:{cursor:$?"default":"pointer"},tabIndex:g&&!$?0:void 0,role:g&&!$?"img":void 0,"aria-label":g&&!$?P(z,R):void 0,onMouseEnter:$?void 0:I=>L(I.currentTarget,z,R),onFocus:$||!g?void 0:I=>L(I.currentTarget,z,R),onBlur:g?Y:void 0,onMouseLeave:Y,children:!$&&(x&&y?(m??[]).map((I,W)=>{const ee=R[W]??0;if(f==null)return n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:H(ee),background:I}},W);const oe=_t(ee)<f;return n.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:!oe&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:H(ee),background:I}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:oe&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:H(ee),background:I}})})]},W)}):x?n.jsx("div",{className:"manager-bar-chart-stack",style:k,children:(()=>{const I=R.reduce((ee,oe,ce)=>oe>0?ce:ee,-1);let W=_;return R.map((ee,oe)=>{if(ee<=0)return null;const ce=Math.min(W,ee/B*_);return W-=ce,n.jsx("div",{className:"manager-bar-chart-stack-segment",style:{height:ce,background:(m??[])[oe],borderRadius:oe===I?"6px 6px 0 0":void 0}},oe)})})()}):f!=null?n.jsx(n.Fragment,{children:[{v:_t(z.a),c:t},...h?[]:[{v:_t(z.b),c:a}]].map(({v:I,c:W},ee)=>n.jsxs("div",{className:"manager-bar-chart-slot",style:k,children:[n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--up",children:I>=f&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full",style:{height:H(I),background:W}})}),n.jsx("div",{className:"manager-bar-chart-slot__half manager-bar-chart-slot__half--down",children:I<f&&n.jsx("div",{className:"manager-bar-chart-bar manager-bar-chart-bar--full manager-bar-chart-bar--down",style:{height:H(I),background:W}})})]},ee))}):n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:T,background:t}}),!h&&n.jsx("div",{className:"manager-bar-chart-bar",style:{...k,height:D,background:a}})]}))},q)})]}),n.jsx("div",{className:"manager-bar-chart-x-axis",children:e.map((z,q)=>{const $=En(z,f==null);return n.jsxs("span",{className:`manager-bar-chart-x-axis__label${$?" manager-bar-chart-x-axis__label--future":""}`,children:[n.jsxs("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:[z.isToday&&n.jsx("span",{className:"manager-bar-chart-x-axis__today-dot",style:{background:t}}),z.label]}),z.sublabel&&n.jsx("span",{className:"caption-1",children:z.sublabel})]},q)})})]})})}),O&&n.jsx(Gn,{anchorRect:O.rect,title:O.title,items:O.items,showIndex:!1,closeOnOutsideClick:!1})]})}function lu({control:e}){const{t}=xe.useTranslation(),{activeOptions:a,activeIdx:r,range:i,setRange:s,handlePrev:l,handleNext:u,periodOptions:c,period:d,setPeriod:m}=e,p=d==="week"?t("calendar.prevWeek","\uC774\uC804 \uC8FC"):t("calendar.prevMonth","\uC774\uC804 \uB2EC"),C=d==="week"?t("calendar.nextWeek","\uB2E4\uC74C \uC8FC"):t("calendar.nextMonth","\uB2E4\uC74C \uB2EC");return n.jsxs("div",{className:"manager-section-controls",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"chevron-left",ariaLabel:p,showTooltipInfo:p,disabled:r===a.length-1,onClick:l}),n.jsx(pn,{value:i,onChange:s,options:a,size:40,className:"month-dropdown",ariaLabel:t("calendar.rangeSelect","\uAE30\uAC04 \uC120\uD0DD")}),n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"chevron-right",ariaLabel:C,showTooltipInfo:C,disabled:r<=0,onClick:u}),n.jsx(gn,{ariaLabel:t("calendar.periodSelect","\uAE30\uAC04 \uB2E8\uC704"),options:c,value:d,onChange:y=>m(y),size:40})]})}function Bo(e,t,a,r=!0){const i=new Date(a.getFullYear(),a.getMonth(),a.getDate());return Array.from({length:7},(s,l)=>{const u=new Date(t);u.setDate(t.getDate()+l);const c=(e[`${u.getFullYear()}\uB144 ${u.getMonth()+1}\uC6D4`]?.daily??[])[u.getDate()-1],d=c!=null&&En(c,r)||u>i;return{dt:u,entry:c,isFuture:d}})}function Dy(e,t,a,r=!0){const{period:i,monthRange:s,weekRange:l,weekRanges:u,DOW:c}=t,d=ra(),m=d.getFullYear(),p=d.getMonth()+1,C=d.getDate();if(i==="month"){const g=e[s]??{weekly:[],daily:[]},h=s.match(/^(\d+)년 (\d+)월$/),x=h?Number(h[1]):null,f=h?Number(h[2]):null,w=x&&f?bn(x,f-1):1;return g.weekly.map((b,B)=>{const _=B+1;let A=b.label,k=!1,N=!1;if(x&&f){const S=w+B*7,E=new Date(x,f-1,S+6),O=E.getMonth()+1,F=E.getDate(),Y=O===f?`${F}`:`${O}/${F}`;A=a("manager.chart.weekRange",{start:S,end:Y});const M=new Date(m,p-1,C).getTime();k=M>=new Date(x,f-1,S).getTime()&&M<=E.getTime(),N=x>m||x===m&&(f>p||f===p&&S>C)}return{...b,label:A,sublabel:su(a,_-1),isToday:k,future:b.future===!0||N||void 0,a:N?-1:b.a,b:N?0:b.b}})}const y=u.find(g=>g.value===l);if(!y)return[];const v=new Date(y.year,y.month-1,bn(y.year,y.month-1)+y.week*7);return Bo(e,v,d,r).map(({dt:g,entry:h,isFuture:x})=>{const f=g.getMonth()+1,w=g.getDate(),b=g.getFullYear();return{label:f===y.month&&b===y.year?`${w}`:`${f}/${w}`,sublabel:c[g.getDay()]??"",future:x||void 0,a:x?-1:h&&h.a>0?h.a:0,b:x?0:h&&h.b>0?h.b:0,isToday:b===m&&f===p&&w===C,...h?.parts?{parts:x?h.parts.map(()=>0):h.parts}:{},...h?.partsB?{partsB:x?h.partsB.map(()=>0):h.partsB}:{}}})}const Sy={small:{height:100,barWidth:16},medium:{height:140,barWidth:20},large:{height:180,barWidth:24}};function jy({focusableBars:e,size:t="medium",barWidth:a,titleKey:r,titleLevel:i,data:s,colorA:l,colorB:u,labelAKey:c,labelBKey:d,showTotal:m=!1,totalUnitKey:p,totalLabelKey:C,control:y,hideControls:v=!1,rate:g=!1,rateAgg:h="dayMean",tightMax:x=!1,avgMode:f=!1,totalFormat:w,series:b,seriesMode:B="stack",loading:_=!1,onDetail:A,headExtra:k,headSegment:N,icon:S,disc:E,onClick:O,cardAriaLabel:F,cardTooltip:Y,detailSize:M=32,barGap:L,baseline:P,className:G,inGrid:U=!1}){const{t:z}=xe.useTranslation(),q=Sy[t],$=iu(s),V=y??$,H=o.useMemo(()=>Dy(s,V,z,P==null),[s,V,z,P]),T=B==="group"&&!!b&&b.length>0;L!=null&&!T&&Zt("bar-chart-bargap-without-group","[BarChart] barGap \uC740 seriesMode='group' + series \uC5D0\uC11C\uB9CC \uC4F0\uC778\uB2E4 \u2014 \uADF8 \uBC16\uC5D0\uC11C\uB294 \uC544\uBB34 \uC77C\uB3C4 \uD558\uC9C0 \uC54A\uB294\uB2E4.");const D=o.useMemo(()=>{if(!g)return H;const J=V.period==="month"?V.monthRange.match(/^(\d+)년 (\d+)월$/):null,re=ra(),Ne=b?.length??0,K=Q=>{const pe=[],De=[],ye=[];for(let ne=0;ne<Ne;ne++){let le=0,Ce=0,ge=0;for(const fe of Q){const $e=_t(fe.a[ne]),Ve=_t(fe.b[ne]);Ve<=0||(le+=$e,Ce+=Ve,ge+=$e/Ve*100)}pe.push(h==="weighted"?Ce>0?Math.round(le/Ce*100):0:Q.length?Math.round(ge/Q.length):0),De.push(le),ye.push(Ce)}return{pct:pe,ra:De,rb:ye}};return H.map((Q,pe)=>{let De=Q.a===-1?-1:Q.b>0?Math.round(Q.a/Q.b*100):0;if(J&&!En(Q)){const ne=Number(J[1]),le=Number(J[2])-1,Ce=Bo(s,new Date(ne,le,bn(ne,le)+pe*7),re).filter(ge=>!ge.isFuture);if(h==="weighted"){let ge=0,fe=0;for(const{entry:$e}of Ce)$e&&$e.b>0&&(ge+=$e.a,fe+=$e.b);De=fe>0?Math.round(ge/fe*100):0}else De=Ce.length?Math.round(Ce.reduce((ge,{entry:fe})=>ge+(fe&&fe.b>0?fe.a/fe.b*100:0),0)/Ce.length):0}let ye=null;if(T&&!En(Q)){let ne;if(J){const Ce=Number(J[1]),ge=Number(J[2])-1;ne=Bo(s,new Date(Ce,ge,bn(Ce,ge)+pe*7),re).filter(fe=>!fe.isFuture).map(({entry:fe})=>({a:fe?.parts??[],b:fe?.partsB??[]}))}else ne=[{a:Q.parts??[],b:Q.partsB??[]}];const le=K(ne);ye={parts:le.pct,rawParts:le.ra,rawPartsB:le.rb}}return{...Q,a:De,b:Q.a===-1?0:d&&Q.parts&&Q.parts[1]>0?Math.round(Q.parts[0]/Q.parts[1]*100):0,rawA:Q.a===-1?-1:Q.a,rawB:Q.b,...ye??{}}})},[H,g,h,d,V.period,V.monthRange,s,T,b?.length]),R=o.useMemo(()=>{if(g||f){const re=(V.period==="week"?H:s[V.monthRange]?.daily??[]).filter(K=>K.a!==-1);if(re.length===0)return 0;if(g&&h==="weighted"){let K=0,Q=0;for(const pe of re)pe.b>0&&(K+=pe.a,Q+=pe.b);return Q>0?Math.round(K/Q*100):0}const Ne=g?re.reduce((K,Q)=>K+(Q.b>0?Q.a/Q.b*100:0),0):re.reduce((K,Q)=>K+(Q.a>0?Q.a:0),0);return Math.round(Ne/re.length)}const J=V.period==="month"?s[V.monthRange]?.daily??[]:D;return P!=null?J.reduce((re,Ne)=>re+(En(Ne,!1)?0:_t(Ne.a)+(d?_t(Ne.b):0)),0):J.reduce((re,Ne)=>re+(Ne.a>0?Ne.a:0)+(d&&Ne.b>0?Ne.b:0),0)},[D,H,g,h,f,P,d,V.period,V.monthRange,s]),I=b&&b.length>0?b.map(J=>({color:J.color,label:J.label})):[{color:l,label:z(c)},...d?[{color:u,label:z(d)}]:[]],W=t==="small",ee=[W?"manager-section--compact":t==="large"?"manager-section--full":void 0,G].filter(Boolean).join(" ")||void 0,oe=r?z(r):"",ce=oe?z("trainingStatus.detailFor",{name:oe,defaultValue:"{{name}} \uC0C1\uC138\uBCF4\uAE30"}):z("trainingStatus.detail","\uC0C1\uC138\uBCF4\uAE30");return n.jsx(Ao,{className:ee,inGrid:U,icon:S,disc:E,onClick:O,ariaLabel:F,tooltip:Y,headSegment:N,headMenuItems:A?[{label:ce,icon:"list",onClick:A,closeOnSelect:!0}]:void 0,title:z(r),titleLevel:i,titleClassName:W?"h5 chart-section-title--small":void 0,headRight:W?k??void 0:({collapsed:J})=>n.jsxs(n.Fragment,{children:[!v&&n.jsx(lu,{control:V}),k,A&&!J&&n.jsx("span",{className:"manager-bar-chart-detail-btn",children:n.jsx(me,{htmlType:"button",size:M,type:"dot",icon:"list",ariaLabel:ce,showTooltipInfo:ce,onClick:A})})]}),subRow:n.jsxs(n.Fragment,{children:[m?g||f||C&&w?n.jsx(Ia,{label:W?void 0:`${z(V.period==="week"?"manager.chart.weeklyPrefix":"manager.chart.monthlyPrefix")} ${z(C??c)}`,children:w?(w(R).match(/([+-]?\d[\d.,]*|[^\d]+)/g)??[]).map((J,re)=>/\d/.test(J)?n.jsx("span",{className:"barchart-total__num h0",children:J},re):n.jsx("span",{className:"barchart-total__unit h5",children:J},re)):n.jsxs(n.Fragment,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),p&&n.jsx("span",{className:"barchart-total__unit h5",children:z(p)})]})}):n.jsxs(Ia,{children:[n.jsx("span",{className:"barchart-total__num h0",children:R}),n.jsx("span",{className:"barchart-total__unit h5",children:z(c)}),p&&n.jsx("span",{className:"barchart-total__unit h5",children:z(p)})]}):n.jsx("span",{}),n.jsx(wo,{items:I,className:"caption-1"})]}),children:_?n.jsx("div",{className:"manager-bar-chart-wrap manager-bar-chart-loading","aria-busy":"true",children:n.jsx("div",{className:"manager-bar-chart-inner",children:n.jsxs("div",{className:"manager-bar-chart-area manager-bar-chart-area--loading",children:[n.jsx("div",{className:"manager-bar-chart-plot manager-bar-chart-plot--loading",style:{height:q.height},children:n.jsx(Fa,{size:32})}),n.jsx("div",{className:"manager-bar-chart-x-axis","aria-hidden":"true",children:n.jsxs("span",{className:"manager-bar-chart-x-axis__label",children:[n.jsx("span",{className:"caption-1 manager-bar-chart-x-axis__main",children:"\xA0"}),D.some(J=>!!J.sublabel)&&n.jsx("span",{className:"caption-1",children:"\xA0"})]})})]})})}):n.jsx(Ey,{focusableBars:e,data:D,colorA:l,colorB:d?u:void 0,labelA:z(c),labelB:d?z(d):void 0,barWidth:a??q.barWidth,barGap:L,baseline:P,height:q.height,maxOverride:g?100:void 0,tightMax:x,seriesColors:b?.map(J=>J.color),seriesLabels:b?.map(J=>J.label),rateLabels:g?{total:z("trainingStatus.today.tooltipTotal","\uC804\uCCB4"),done:z("trainingStatus.today.tooltipDone","\uC644\uB8CC")}:void 0,grouped:T})})}const uu=120,Ty={left:38,right:16,top:26,bottom:24};function My({points:e=[],range:t,ticks:a=[],axisTitle:r,color:i,height:s=156,fallbackWidth:l=320,insets:u,overlay:c,ariaLabel:d,className:m}){const[p,C]=o.useState(null),[y,v]=o.useState(null);o.useEffect(()=>{if(!y)return;const P=U=>C(Math.round(U)||null);if(P(y.getBoundingClientRect().width),typeof ResizeObserver>"u")return;const G=new ResizeObserver(([U])=>P(U.contentRect.width));return G.observe(y),()=>{G.disconnect()}},[y]);const{payload:g,anchorRect:h,openAfterDelay:x,close:f}=Pb(uu),w=o.useCallback((P,G)=>{P&&x(P,G.getBoundingClientRect())},[x]),b=p??l,B=s,{left:_,right:A,top:k,bottom:N}={...Ty,...u},[S,E]=t,O=P=>E===S?_:_+(b-_-A)*(P-S)/(E-S),F=P=>k+(B-k-N)*(100-P)/100,Y={x:O,y:F,plot:{left:_,right:b-A,top:k,bottom:B-N,width:Math.max(0,b-_-A),height:Math.max(0,B-k-N)}},M=e.filter(P=>!P.hollow),L=i??"var(--color-main)";return n.jsxs(n.Fragment,{children:[n.jsxs("svg",{ref:v,className:we("line-chart",m),viewBox:`0 0 ${b} ${B}`,role:"img","aria-label":d??e.map(P=>P.description).filter(Boolean).join(", "),children:[r&&n.jsx("text",{className:"line-chart__axis-title",x:0,y:12,children:r}),[0,100].map(P=>n.jsxs("g",{children:[n.jsx("line",{className:"line-chart__grid",x1:_,x2:b-A,y1:F(P),y2:F(P)}),n.jsxs("text",{className:"line-chart__tick",x:_-6,y:F(P)+4,textAnchor:"end",children:[P,"%"]})]},P)),c?.(Y),a.map(P=>n.jsx("text",{className:"line-chart__tick",x:O(P.x),y:B-5,textAnchor:"middle",children:P.label},P.x)),M.length>1&&n.jsx("polyline",{className:"line-chart__line",fill:"none",stroke:L,points:M.map(P=>`${O(P.x)},${F(P.pct)}`).join(" ")}),e.map(P=>n.jsxs("g",{className:"line-chart__dot",onPointerEnter:G=>w(P.description,G.currentTarget),onPointerLeave:f,children:[n.jsx("circle",{className:"line-chart__dot-hit",cx:O(P.x),cy:F(P.pct),r:12}),n.jsx("circle",{className:we("line-chart__dot-main",P.hollow&&"is-hollow"),cx:O(P.x),cy:F(P.pct),r:4,stroke:L,fill:P.hollow?void 0:L})]},P.x))]}),g!=null&&n.jsx(cn,{anchorRect:h,offset:10,closeOnOutsideClick:!1,className:"line-chart__tip",role:"tooltip",ariaLabel:g,children:g})]})}function Ly({icon:e,iconSize:t=56,title:a,titleClass:r="h2",description:i,tipGroups:s,start:l,className:u}){return n.jsxs("div",{className:we("game-intro",u),children:[e!=null&&n.jsx("span",{className:"game-intro__icon","aria-hidden":"true",style:{"--game-intro-icon":`${t}px`},children:e}),n.jsx("h2",{className:we("game-intro__title",r),children:a}),i!=null&&n.jsx("p",{className:"game-intro__description body-3",children:i}),s?.map((c,d)=>n.jsxs("div",{className:"game-intro__tips",children:[c.title!=null&&n.jsx("span",{className:"game-intro__tips-title body-3",children:c.title}),c.tips.map((m,p)=>n.jsxs("span",{className:"game-intro__tip body-3",children:[m.icon!=null&&n.jsx("span",{"aria-hidden":"true",children:m.icon}),n.jsx("span",{children:m.text})]},p))]},d)),l&&n.jsx(me,{htmlType:"button",className:l.className,variant:"main",color:l.color,size:48,width:"100%",disabled:l.disabled,onClick:l.onClick,children:l.label})]})}const cu=(e,t,a)=>{const r=new Date(Date.UTC(e,t,a));return`${r.getUTCFullYear()}-${String(r.getUTCMonth()+1).padStart(2,"0")}-${String(r.getUTCDate()).padStart(2,"0")}`},du=(e,t,a,r)=>({from:_i(e,t,a),to:new Date(_i(e,t,a+r).getTime()-1),fromYmd:cu(e,t,a),toYmd:cu(e,t,a+r-1)});function $y(e,t=0){if(e.period==="month"){const i=e.monthRange.match(/^(\d+)년 (\d+)월$/),s=ra(),l=i?Number(i[1]):s.getFullYear(),u=(i?Number(i[2]):s.getMonth()+1)-1+t,c=new Date(Date.UTC(l,u+1,0)).getUTCDate();return du(l,u,1,c)}const a=e.weekRanges.find(i=>i.value===e.weekRange);if(!a){const i=new Date,s=Ba();return{from:i,to:i,fromYmd:s,toYmd:s}}const r=bn(a.year,a.month-1);return du(a.year,a.month-1,r+(a.week+t)*7,7)}const ko={small:{diameter:96,strokeWidth:16},medium:{diameter:120,strokeWidth:18},large:{diameter:160,strokeWidth:22}};function pu(e){return!Number.isFinite(e)||e<=0?0:e>=1?100:Math.min(99,Math.max(1,Math.round(e*100)))}function mu({done:e,total:t,segments:a,color:r="var(--color-main)",size:i="medium",strokeWidth:s,label:l="%",hideCenter:u=!1,hideLabel:c=!1}){const d=typeof i=="number"?i:ko[i].diameter,m=s??(typeof i=="number"?12:ko[i].strokeWidth),p=d/2,C=(d-m)/2,y=2*Math.PI*C;if(a&&a.length>0){const x=a.reduce((f,w)=>{const b=f.length>0?f[f.length-1].acc:0,B=Number.isFinite(w.ratio)?w.ratio:0,_=Math.max(0,Math.min(B,1-b));return f.push({color:w.color,rotate:-90+b*360,dash:y*_,acc:b+_}),f},[]);return n.jsx("div",{className:"ring-chart",style:{width:d,height:d},children:n.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),x.map((f,w)=>f.dash>0&&n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:f.color,strokeWidth:m,strokeDasharray:`${f.dash} ${y}`,strokeLinecap:"round",transform:`rotate(${f.rotate} ${p} ${p})`},w))]})})}const v=(t??0)>0?Math.min((e??0)/t,1):0,g=y*v,h=y-g;return n.jsxs("div",{className:"ring-chart",style:{width:d,height:d},children:[n.jsxs("svg",{width:d,height:d,viewBox:`0 0 ${d} ${d}`,"aria-hidden":"true",children:[n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:"var(--color-whiteLine)",strokeWidth:m}),v>0&&n.jsx("circle",{cx:p,cy:p,r:C,fill:"none",stroke:r,strokeWidth:m,strokeDasharray:`${g} ${h}`,strokeLinecap:v<.02||v>.98?"butt":"round",transform:`rotate(-90 ${p} ${p})`})]}),!u&&n.jsxs("div",{className:`ring-chart__center${c?"":` ${d<=96?"ring-chart__center--small":i==="medium"?"ring-chart__center--medium":"ring-chart__center--large"}`}`,children:[n.jsx("span",{className:`ring-chart__pct ${d<=96?"h2":"h1"}`,children:pu(v)}),!c&&n.jsx("span",{className:`ring-chart__label ${d<=96?"caption-2":"caption-1"}${d<=96||i==="medium"?" ring-chart__label--tight":""}`,children:l})]})]})}function Ry({titleKey:e,titleLevel:t,headRight:a,icon:r,showTotal:i,totalLabelKey:s,legend:l,loading:u,className:c,inGrid:d=!1,onClick:m,ariaLabel:p,tooltip:C,...y}){const{t:v}=xe.useTranslation();if(!e)return n.jsx(mu,{...y});const g=(y.total??0)>0?pu(Math.min((y.done??0)/y.total,1)):0,h=y.size==="small",x=typeof y.size=="number"?y.size:ko[y.size??"medium"].diameter,f=y.size==="large",w=[c,h?"manager-section--compact":f?"manager-section--full":""].filter(Boolean).join(" ")||void 0,b=r&&n.jsx("span",{className:"chart-section-icon",children:n.jsx(at,{icon:r,className:"chart-section-icon-inner"})});return n.jsx(Ao,{className:w,inGrid:d,onClick:m,ariaLabel:p,tooltip:C,title:v(e),titleLevel:t,titleClassName:h?"h5 chart-section-title--small":void 0,headRight:b||(h?void 0:a),subRow:(i||l)&&n.jsxs(n.Fragment,{children:[i?n.jsxs(Ia,{label:!h&&s?v(s):void 0,children:[n.jsx("span",{className:"barchart-total__num h0",children:g}),n.jsx("span",{className:"barchart-total__unit h5",children:"%"})]}):n.jsx("span",{}),l&&n.jsx(wo,{items:l})]}),children:u?n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx("div",{className:"ring-chart ring-chart--loading",style:{width:x,height:x},"aria-busy":"true",children:n.jsx(Fa,{size:32})})}):n.jsx("div",{className:"ring-chart-section-body ring-chart-section-body--offset",children:n.jsx(mu,{...y,hideCenter:y.hideCenter??h})})})}function Py({label:e,value:t,change:a,changeType:r,icon:i,tooltip:s,onClick:l,children:u}){const c=o.useRef(null),{anchorRect:d,openAt:m,close:p}=Ea(),C=o.useCallback(()=>{s&&c.current&&m(c.current)},[s,m]),y=r??(a===void 0?void 0:a>0?"up":a<0?"down":"neutral"),v=a===void 0?void 0:a>0?`+${a}`:`${a}`,g=o.useCallback(h=>{l&&(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),l())},[l]);return n.jsxs("div",{ref:c,className:`manager-stat-card${l?" manager-stat-card--clickable":""}`,onClick:l,onKeyDown:l?g:void 0,onPointerEnter:C,onPointerLeave:p,onFocus:C,onBlur:p,role:l?"button":void 0,tabIndex:l?0:void 0,"aria-label":l?[e,t,v].filter(h=>h!==void 0&&h!=="").join(" "):void 0,children:[s&&d&&n.jsx(An,{anchorRect:{left:d.left,top:d.top+21,right:d.right,bottom:d.bottom,width:d.width,height:d.height},text:s}),n.jsxs("div",{className:"manager-stat-card__label-row",children:[n.jsx("span",{className:"manager-stat-card__label h5",children:e}),i&&n.jsx("span",{className:"manager-stat-card__icon",children:n.jsx(at,{icon:i,className:"manager-stat-card__icon-inner"})})]}),n.jsxs("div",{className:"manager-stat-card__content",children:[n.jsxs("div",{className:"manager-stat-card__left",children:[n.jsx("div",{className:"manager-stat-card__value h2",children:t}),v&&n.jsx("div",{className:`manager-stat-card__change manager-stat-card__change--${y??"neutral"} caption-1`,children:v})]}),u&&n.jsx("div",{className:"manager-stat-card__body",children:u})]})]})}function hu({value:e,onChange:t,min:a=0,max:r=100,step:i=1,orientation:s="horizontal",size:l=24,disabled:u=!1,ariaLabel:c,length:d,className:m,label:p,formatValue:C,labelPos:y,labelAlign:v="right",showMinMax:g=!1,minLabel:h,maxLabel:x,showBgTick:f=!1,showFillTick:w=!1,tickStep:b,tickShape:B="dot"}){t&&!c&&Zt("Slider:unnamed","[ihab/Slider] \uC774\uB984\uC774 \uC5C6\uC2B5\uB2C8\uB2E4 \u2014 ariaLabel \uC744 \uC8FC\uC138\uC694. label prop \uC740 \uAC12 \uD45C\uAE30 \uBC29\uC2DD\uC774\uC9C0 \uC774\uB984\uC774 \uC544\uB2D9\uB2C8\uB2E4.");const _=Math.min(r,Math.max(a,e)),A=r>a?(_-a)/(r-a):0,k=s==="vertical",N=!t,S=H=>t?.(Number(H.target.value)),E=typeof d=="number"?`${d}px`:d,O={"--slider-ratio":String(A),"--slider-thumb":`${l}px`,...E?k?{height:E}:{width:E}:{}},F=b??i,Y=(f||w)&&F>0&&r>a?Math.floor((r-a)/F+1e-6):0;if(Y>0&&Y<=100){const H=B!=="dash",T=ee=>H?`radial-gradient(circle, ${ee} 0.5px, transparent 1px)`:k?`linear-gradient(to bottom, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`:`linear-gradient(to right, transparent calc(50% - 2px), ${ee} calc(50% - 2px), ${ee} calc(50% + 2px), transparent calc(50% + 2px))`,D=H?"2px":"4px",R=[],I=[],W=[];for(let ee=0;ee<=Y;ee++){const oe=ee*F/(r-a);if(oe>1+1e-6)break;const ce=`${((k?1-oe:oe)*100).toFixed(4)}%`,J=oe<=A+1e-6;if(J?!w:!f)continue;const re=J?"var(--slider-tick-color-on-fill, var(--color-deepWhite))":"var(--slider-tick-color, var(--color-lightGray))";R.push(T(re)),I.push(k?`${D} var(--slider-thumb)`:`var(--slider-thumb) ${D}`),W.push(k?`center ${ce}`:`${ce} center`)}R.push(k?"linear-gradient(to top, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))":"linear-gradient(to right, var(--slider-fill-color) var(--slider-fill), var(--color-darkWhite) var(--slider-fill))"),I.push("100% 100%"),W.push("0 0"),O.backgroundImage=R.join(", "),O.backgroundSize=I.join(", "),O.backgroundPosition=W.join(", "),O.backgroundRepeat="no-repeat"}const M=C?C(_):p==="percent"?`${Math.round(r>a?(_-a)/(r-a)*100:0)}%`:p==="count"?`${_} / ${r}`:_===a&&h?h:_===r&&x?x:void 0,L=n.jsx("input",{type:"range",className:we("slider",`slider--${s}`,N&&"slider--static",!p&&!g&&m),min:a,max:r,step:i,value:_,disabled:u,readOnly:N,tabIndex:N?-1:void 0,"aria-label":c,"aria-valuetext":M,"aria-orientation":s,onChange:S,style:O});if(!p&&!g)return L;const P=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:h??a}),G=n.jsx("span",{className:"slider-wrap__minmax caption-1",children:x??r}),U=g?n.jsxs("div",{className:we("slider-track-group",`slider-track-group--${s}`,!p&&m),children:[k?G:P,L,k?P:G]}):L;if(!p)return U;const z=y??(k?"bottom":"right"),q=`${Math.round(r>a?(_-a)/(r-a)*100:0)}%`,$=C?C(_):p==="percent"?q:p==="count"?`${_} / ${r}`:String(_),V=n.jsx("span",{className:"slider-wrap__value body-3b",children:$});return n.jsxs("div",{className:we("slider-wrap",`slider-wrap--${s}`,`slider-wrap--label-${z}`,`slider-wrap--align-${v}`,m),children:[U,V]})}const Fy=.86,Iy=250,No=(e,t,a,r)=>Math.round(Math.min(r,Math.max(a,e-t))),Eo=(e,t,a,r)=>{const i=No(e,t,a,r);return`${i<0?"-":"+"}${Math.abs(i)} dB`};function Do({analyser:e,audioElement:t,orientation:a="horizontal",length:r,label:i,labelPos:s,labelAlign:l="right",floorDb:u=-60,refDb:c=-35,displayMin:d=-5,displayMax:m=25,className:p,ariaLabel:C}){const y=o.useRef(null),v=o.useRef(null),g=o.useRef(null),h=o.useRef(null),[x,f]=o.useState(null);o.useEffect(()=>{const _=L=>{const P=Eo(L,c,d,m);g.current&&(g.current.textContent=P);const G=y.current;G&&(G.setAttribute("aria-valuenow",String(No(L,c,d,m))),G.setAttribute("aria-valuetext",P))},A=e??AC(t)??(x&&x.el===t?x.node:null),k=v.current;if(!A||!k){k?.style.setProperty("--meter-level","0"),_(u);let L=!1;return!e&&t&&qa(t).then(P=>{!L&&P&&f({el:t,node:P})}),()=>{L=!0}}zr();const N=new Float32Array(A.fftSize);let S=0,E=0,O=0,F=0,Y=null;const M=L=>{const P=BC(A,N);S=P>S?P:S*Fy;const G=S>1e-5?20*Math.log10(S):-1/0,U=Math.max(u,G),z=U-c,q=Math.min(1,Math.max(0,(z-d)/(m-d)));if(k.style.setProperty("--meter-level",q.toFixed(3)),E+=U,O+=1,L-F>=Iy){const $=E/O;Y=Y==null?$:Y*.6+$*.4,_(Y),E=0,O=0,F=L}h.current=requestAnimationFrame(M)};return h.current=requestAnimationFrame(M),()=>{h.current!=null&&cancelAnimationFrame(h.current),h.current=null}},[e,t,x,u,c,d,m]);const w=typeof r=="number"?`${r}px`:r,b=n.jsx("div",{className:"audio-meter__track",style:w?a==="vertical"?{height:w}:{width:w}:{},children:n.jsx("div",{ref:v,className:"audio-meter__fill"})}),B=s??(a==="vertical"?"bottom":"right");return n.jsxs("div",{ref:y,className:we("audio-meter",`audio-meter--${a}`,i&&`audio-meter--label-${B}`,i&&`audio-meter--align-${l}`,p),role:"meter","aria-label":C,"aria-valuemin":d,"aria-valuemax":m,"aria-valuenow":No(u,c,d,m),"aria-valuetext":Eo(u,c,d,m),children:[b,i&&n.jsx("span",{ref:g,className:"audio-meter__value caption-2",children:Eo(u,c,d,m)})]})}const Cu=260;function fu({message:e,position:t,duration:a,onClose:r}){const[i,s]=o.useState(!1),[l,u]=o.useState(!1),c=o.useRef(l),d=o.useRef(i);o.useEffect(()=>{c.current=l},[l]),o.useEffect(()=>{d.current=i},[i]);const m=o.useRef(null),p=o.useRef(""),C=o.useRef(r);o.useEffect(()=>{C.current=r});const y=a,v=o.useRef(null),g=o.useRef(0),h=o.useRef(0),x=o.useRef(!1),f=o.useRef(null),w=o.useRef(null),b=o.useRef(null),B=o.useRef(null),_=o.useRef(()=>{});_.current=N=>{N<0||(g.current=Date.now(),h.current=N,v.current=setTimeout(()=>{v.current=null,s(!1),f.current=setTimeout(()=>{u(!1);try{C.current()}catch{}},Cu)},N))};const A=o.useCallback(()=>{x.current||!v.current||(x.current=!0,clearTimeout(v.current),v.current=null,h.current=Math.max(0,h.current-(Date.now()-g.current)))},[]),k=o.useCallback(()=>{x.current&&(x.current=!1,_.current(h.current))},[]);return o.useEffect(()=>{if(e!==p.current&&(v.current&&(clearTimeout(v.current),v.current=null),f.current&&(clearTimeout(f.current),f.current=null)),e){if(d.current)return y>0&&!v.current&&(x.current?h.current=y:_.current(y)),p.current=e,()=>{v.current&&(clearTimeout(v.current),v.current=null),f.current&&(clearTimeout(f.current),f.current=null)};const N=()=>{const S=m.current;if(S)try{S.classList.remove("is-visible"),S.style.transition="none",t==="top"?S.style.transform="translateX(-50%) translateY(-16px)":S.style.transform="translateX(-50%) translateY(16px)",S.style.opacity="0",S.offsetWidth,S.style.transition="",S.classList.add("is-visible"),B.current&&clearTimeout(B.current),B.current=setTimeout(()=>{B.current=null;try{S.style.opacity="",S.style.transform="",S.style.transition=""}catch{}},60)}catch{}};c.current?(N(),s(!0)):(u(!0),w.current=requestAnimationFrame(()=>{b.current=requestAnimationFrame(()=>{N(),s(!0)})})),y>0&&(x.current=!1,_.current(y))}else s(!1),f.current=setTimeout(()=>u(!1),Cu);return p.current=e,()=>{v.current&&clearTimeout(v.current),f.current&&clearTimeout(f.current),w.current&&cancelAnimationFrame(w.current),b.current&&cancelAnimationFrame(b.current),B.current&&clearTimeout(B.current),v.current=null,f.current=null,w.current=null,b.current=null,B.current=null}},[e,y,t]),{mounted:l,showing:i,popupRef:m,pause:A,resume:k}}function ua({message:e="",position:t="top",type:a="normal",onClose:r=()=>{},duration:i=2e3}){const{mounted:s,showing:l,popupRef:u,pause:c,resume:d}=fu({message:e,position:t,duration:i,onClose:r}),m=o.useRef(null),[p,C]=o.useState(!1);if(o.useEffect(()=>{l?C(!0):s||C(!1)},[l,s]),!s)return null;const y=a==="notice"||a==="warning"?a:"normal",v=n.jsx("div",{ref:u,className:`toast toast--${t} ${l?"is-visible":""}`,role:"status","aria-live":"polite",onPointerEnter:g=>{m.current=g.pointerType},onMouseEnter:()=>{m.current!=="touch"&&c()},onMouseLeave:d,onFocusCapture:c,onBlurCapture:d,children:n.jsx("div",{className:`toast__inner toast__inner--${y} body-2`,"aria-hidden":p||l?void 0:!0,children:n.jsx("span",{className:"toast__text",children:e})})});return typeof document<"u"?en.createPortal(v,document.body):v}const Oy=24;function Hy({value:e,max:t=100,size:a=8,color:r,trackColor:i,label:s,formatValue:l,labelPos:u,labelAlign:c="right",ariaLabel:d,className:m}){const p=Number.isFinite(t)&&t>0?t:1,C=Math.max(0,Math.min(Number.isFinite(e)?e:0,p)),y=C/p*100,v=Number.isFinite(t)&&t>0?t:0,g=u??(a>=Oy?"inside":"bottom"),h=g==="center"?"inside":g,x=h==="inside"&&(c==="left"?y>=15:c==="center"?y>=50:y>=85),f={};return r&&(f["--progress-bar-fill"]=r),i&&(f["--progress-bar-track"]=i),n.jsxs("div",{className:we("progress-bar",`progress-bar--${a}`,`progress-bar--label-${h}`,s&&`progress-bar--align-${c}`,s&&x&&"progress-bar--label-on-fill",m),style:f,children:[n.jsx("div",{className:"progress-bar__track",role:"progressbar","aria-valuenow":C,"aria-valuemin":0,"aria-valuemax":v,"aria-valuetext":s?l?l(C):s==="percent"?void 0:s==="raw"?String(C):`${C} / ${v}`:void 0,"aria-label":d,children:n.jsx("div",{className:"progress-bar__fill",style:{width:`${y}%`}})}),s&&n.jsx("span",{className:"progress-bar__label caption-1b",children:l?l(C):s==="percent"?`${Math.round(y)}%`:s==="raw"?String(C):`${C} / ${v}`})]})}const gu={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},zy="rgba(255, 255, 255, 0.16)";function bu({max:e,index:t,inactiveBg:a,inactiveColor:r,transparent:i,variant:s="numbered",announce:l=!1,ariaLabel:u}){const{t:c}=xe.useTranslation(),d=ln("(max-width: 767px)");if(!Number.isInteger(e)||e<=0)return null;const m=Number.isInteger(t)?Math.max(0,Math.min(t,e-1)):0,p=u??c("progress.steps",{current:m+1,total:e,defaultValue:"\uC9C4\uD589 \uB2E8\uACC4 {{current}} / {{total}}"}),C={};if(a&&(C["--pi-inactive-bg"]=a),r&&(C["--pi-inactive-color"]=r),i&&(a||(C["--pi-inactive-bg"]=zy),r||(C["--pi-inactive-color"]="var(--color-white)")),s==="dot")return n.jsxs("div",{className:"progress-indicator progress-indicator--dot",style:C,role:l?"status":"img","aria-label":l?void 0:p,children:[l&&n.jsx("span",{style:gu,children:p}),Array.from({length:e}).map((v,g)=>n.jsx("span",{"aria-hidden":"true",className:`progress-indicator-dot--dot${g<m?" done":g===m?" active":""}`},g))]});const y=l?n.jsx("span",{role:"status",style:gu,children:p}):null;return d?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"progress-indicator progress-indicator--mobile",style:C,role:"list","aria-label":p,children:n.jsxs("span",{role:"listitem",className:"progress-indicator-dot active body-3",children:[m+1," / ",e]})}),y]}):n.jsxs(n.Fragment,{children:[y,n.jsx("div",{className:"progress-indicator",style:C,role:"list","aria-label":p,children:Array.from({length:e}).map((v,g)=>n.jsx("span",{role:"listitem","aria-current":g===m?"step":void 0,className:`progress-indicator-dot ${g<m?" done":g===m?" active":""} body-3`,children:g+1},g))})]})}function Vy(e){if(!e)return[];const t=[];let a=0,r="";for(const i of e.trim()){if(i==="("?a++:i===")"&&a--,/\s/.test(i)&&a===0){r&&(t.push(r),r="");continue}r+=i}return r&&t.push(r),t}function Wy({children:e,className:t,style:a,rowLabel:r,onRowClick:i}){return n.jsx("div",{role:"cell",className:t?`table-cell ${t}`:"table-cell",style:a,children:r&&i?n.jsx("button",{type:"button",className:"table-cell__row-button","aria-label":r,children:e}):e})}function So({variant:e="default",children:t,className:a,draggable:r,onClick:i,onMouseEnter:s,onMouseLeave:l,onDragStart:u,onDragEnd:c,expandedContent:d,colSpan:m,describedBy:p,rowHasButton:C}){const y=o.useCallback(v=>{i&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),i())},[i]);return e==="loading"?n.jsx("div",{role:"presentation",className:"table-row-wrap",children:n.jsx("div",{role:"row",className:"table-row table-row--loading",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row__full-cell",children:n.jsx(Fa,{size:28})})})}):e==="empty"?n.jsx("div",{role:"presentation",className:"table-row-wrap",children:n.jsx("div",{role:"row",className:"table-row table-row--empty body-3",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row__full-cell",children:t})})}):n.jsxs("div",{role:"presentation",className:"table-row-wrap",children:[n.jsx("div",{className:a?`table-row ${a}`:"table-row",draggable:r,onClick:i,onKeyDown:i?y:void 0,onMouseEnter:s,onMouseLeave:l,onDragStart:u,onDragEnd:c,role:"row",tabIndex:i&&!C?0:void 0,"aria-describedby":i&&!C?p:void 0,children:t}),d&&n.jsx("div",{role:"row",className:"table-row-expand",children:n.jsx("div",{role:"cell","aria-colspan":m,className:"table-row-expand__cell",children:d})})]})}function qy({dir:e}){return n.jsx(e==="asc"?Ts:js,{className:"table-field__sort-arrow",size:16,strokeWidth:2})}function Uy({children:e,onClick:t,className:a,sortDir:r,ariaSort:i,onResizeStart:s}){const l=n.jsxs(n.Fragment,{children:[e,r&&n.jsx(qy,{dir:r})]});return n.jsxs("div",{onClick:t,role:"columnheader","aria-sort":i,className:we("table-field body-3",a,r?"table-field--sorted":"",s?"table-field--resizable":""),children:[t?n.jsx("button",{type:"button",className:"table-field__button",children:l}):l,s&&n.jsx("span",{className:"table-field__resizer",onPointerDown:s,onClick:u=>u.stopPropagation(),"aria-hidden":"true"})]})}function jo({fields:e=[],headerGroups:t,items:a=[],renderRow:r,onRowClick:i,isRowClickable:s,onRowMouseEnter:l,onRowMouseLeave:u,onRowDragStart:c,onRowDragEnd:d,draggingId:m,gridTemplateColumns:p,mobileGridTemplateColumns:C,resizable:y=!1,resizeMode:v="grow",resizeStorageKey:g,size:h="small",title:x,icon:f,count:w,collapsed:b=!1,onToggleCollapse:B,headerActions:_,empty:A,loading:k,dragOver:N=!1,onDragOver:S,onDragLeave:E,onDrop:O,renderExpandedRow:F,expandedId:Y}){const{t:M}=xe.useTranslation(),L=o.useId(),P=`table-title-${L}`,G=`table-row-hint-${L}`,U=ln("(max-width: 767px)"),z=C&&U?C:null,q=y&&!U,$=48,V=o.useRef(()=>$),H=g?`table-cols:${g}`:null,T=o.useRef(null),D=o.useRef(null),R=o.useRef(null),I=o.useRef(null),[W,ee]=o.useState(!1),[oe,ce]=o.useState(0),J=o.useCallback(()=>{const se=R.current;se&&(ee(se.scrollWidth>se.clientWidth+1),ce(se.clientWidth))},[]),re=o.useCallback((se,ke)=>{const ze=se.current;ze&&D.current&&D.current.unobserve(ze),se.current=ke,ke?(!D.current&&typeof ResizeObserver<"u"&&(D.current=new ResizeObserver(()=>J())),D.current?.observe(ke)):!R.current&&!I.current&&(D.current?.disconnect(),D.current=null),J()},[J]),Ne=o.useCallback(se=>re(R,se),[re]),K=o.useCallback(se=>re(I,se),[re]);o.useEffect(()=>{J()}),o.useEffect(()=>{if(typeof window>"u")return;const se=typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>J()):null;return window.addEventListener("resize",J),()=>{se!=null&&cancelAnimationFrame(se),window.removeEventListener("resize",J)}},[J]);const Q=o.useRef(()=>!1),pe=o.useRef([]),De=o.useRef(null),ye=se=>{if(!se||typeof window>"u")return null;try{const ke=JSON.parse(window.localStorage.getItem(se)??"null");return Array.isArray(ke)&&ke.length>0&&ke.every(ze=>typeof ze=="number"&&Number.isFinite(ze)&&ze>0)?ke:null}catch{return null}},[ne,le]=o.useState(()=>ye(H)),[Ce,ge]=o.useState(H),[fe,$e]=o.useState(()=>ye(H)!==null);if(Ce!==H){ge(H);const se=ye(H);le(se),$e(se!==null)}const Ve=o.useRef(ne);o.useEffect(()=>{Ve.current=ne},[ne]);const je=o.useCallback(se=>{const ke=De.current;if(!ke)return;const ze=Ve.current;if(ze){const nt=[...ze];if(ke.next!=null&&ke.startWNext!=null){const Ie=se.clientX-ke.startX,Ge=Math.max(V.current(ke.index)-ke.startW,Math.min(ke.startWNext-V.current(ke.next),Ie));nt[ke.index]=ke.startW+Ge,nt[ke.next]=ke.startWNext-Ge}else nt[ke.index]=Math.max(V.current(ke.index),ke.startW+(se.clientX-ke.startX));Ve.current=nt,le(nt)}},[]),Fe=o.useCallback(()=>{if(De.current=null,window.removeEventListener("pointermove",je),window.removeEventListener("pointerup",Fe),window.removeEventListener("pointercancel",Fe),document.body.style.cursor="",document.body.style.userSelect="",H&&Ve.current)try{window.localStorage.setItem(H,JSON.stringify(Ve.current))}catch{}},[je,H]),qe=o.useCallback((se,ke)=>{ke.preventDefault(),ke.stopPropagation();const ze=T.current;if(!ze)return;const nt=Array.from(ze.children).map(Ge=>Ge.getBoundingClientRect().width),Ie=v==="fit"?e.findIndex((Ge,bt)=>bt>se&&Ge.resizable!==!1):-1;De.current=Ie>=0?{index:se,startX:ke.clientX,startW:nt[se],next:Ie,startWNext:nt[Ie]}:{index:se,startX:ke.clientX,startW:nt[se]},Ve.current=nt,le(nt),$e(!0),window.addEventListener("pointermove",je),window.addEventListener("pointerup",Fe),window.addEventListener("pointercancel",Fe),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[je,Fe,v,e]),mt=o.useCallback(()=>{const se=T.current,ke=se?.closest(".table-wrap");if(!se||!ke)return null;const ze=ke.style.getPropertyValue("--table-grid-cols");ke.style.setProperty("--table-grid-cols",e.map((et,ot)=>Q.current(ot)?pe.current[ot]:"max-content").join(" "));const nt=Array.from(ke.querySelectorAll(".table-row")).filter(et=>!et.classList.contains("table-row--loading")&&!et.classList.contains("table-row--empty")),Ie=e.map((et,ot)=>{let lt=se.children[ot]?.getBoundingClientRect().width??0;for(const jt of nt){const Ht=jt.children[ot];Ht&&(lt=Math.max(lt,Ht.getBoundingClientRect().width))}const st=Q.current(ot)?parseFloat(pe.current[ot]):NaN;return Number.isFinite(st)?st:Math.max(V.current(ot),Math.ceil(lt))}),Ge=window.getComputedStyle(se),bt=se.clientWidth-(parseFloat(Ge.paddingLeft)||0)-(parseFloat(Ge.paddingRight)||0);ze?ke.style.setProperty("--table-grid-cols",ze):ke.style.removeProperty("--table-grid-cols");let Re=Ie;const tt=Ie.reduce((et,ot,lt)=>et+(Q.current(lt)?ot:0),0),xt=Ie.reduce((et,ot,lt)=>et+(Q.current(lt)?0:ot),0),Mt=bt-tt;if(bt>0&&xt>0&&Mt>0){const et=Mt/xt;Re=Ie.map((lt,st)=>Q.current(st)?lt:Math.max(V.current(st),Math.round(lt*et)));const ot=Math.round(Mt-Re.reduce((lt,st,jt)=>lt+(Q.current(jt)?0:st),0));if(ot!==0){let lt=-1;Re.forEach((st,jt)=>{!Q.current(jt)&&(lt<0||st>Re[lt])&&(lt=jt)}),lt>=0&&(Re[lt]=Math.max(V.current(lt),Re[lt]+ot))}}return Re},[e,v]),ct=(se,ke)=>se!==null&&se.length===ke.length&&se.every((ze,nt)=>ze===ke[nt]),rt=o.useRef(mt);o.useEffect(()=>{rt.current=mt});const[Ct,Be]=o.useState(0),We=a.length>0,_e=`${H??""}|${Ct}|${e.length}|${oe}`,Ue=!fe&&q&&H!==null&&!k?`${_e}|${We?1:0}`:null,Ae=o.useRef(null);o.useEffect(()=>{if(Ue===null||!We||Ae.current===_e)return;const se=rt.current();se&&(Ae.current=_e,le(ke=>ct(ke,se)?ke:se))},[Ue]);const Te=o.useCallback(()=>{if(H)try{window.localStorage.removeItem(H)}catch{}$e(!1);const se=rt.current();le(se),Ve.current=se,Be(ke=>ke+1)},[H]);o.useEffect(()=>()=>{De.current&&(window.removeEventListener("pointermove",je),window.removeEventListener("pointerup",Fe),window.removeEventListener("pointercancel",Fe),document.body.style.cursor="",document.body.style.userSelect="")},[je,Fe]);const Se=Vy(p),Xe=Se.filter(se=>/\b(auto|min-content|max-content)\b|fit-content\(/.test(se));Xe.length>0&&Zt(`table-content-track:${p}`,`[ihabdevteam-core] Table \uC758 gridTemplateColumns \uC5D0 \uB0B4\uC6A9\uC73C\uB85C \uD06C\uAE30\uAC00 \uC815\uD574\uC9C0\uB294 \uD2B8\uB799(${Xe.join(", ")})\uC774 \uC788\uC2B5\uB2C8\uB2E4. \uBA38\uB9AC\uC640 \uBAB8\uD1B5\uC740 \uC11C\uB85C \uB2E4\uB978 \uACA9\uC790\uB77C \uADF8 \uD2B8\uB799\uC774 \uAC01\uC790 \uB2E4\uB974\uAC8C \uD480\uB824 \uC5F4\uC774 \uC5B4\uAE0B\uB0A9\uB2C8\uB2E4. px \uC774\uB098 fr \uC744 \uC4F0\uC138\uC694. (\uBC1B\uC740 \uAC12: ${p})`);const Qe=e.findIndex(se=>!!se.sortDir);e.filter(se=>!!se.sortDir).length>1&&Zt("table-multi-sort","[ihabdevteam-core] Table \uC758 fields \uC5D0 sortDir \uC774 \uB458 \uC774\uC0C1 \uC788\uC2B5\uB2C8\uB2E4. aria-sort \uB294 \uD45C \uD558\uB098\uC5D0 \uD55C \uCE78\uB9CC \uAC00\uC9C8 \uC218 \uC788\uC5B4 \uCCAB \uCE78\uB9CC \uBC29\uD5A5\uC73C\uB85C \uC54C\uB9AC\uACE0 \uB098\uBA38\uC9C0\uB294 none \uC73C\uB85C \uB461\uB2C8\uB2E4.");const dt=se=>se===Qe?e[se].sortDir==="asc"?"ascending":"descending":e[se].onClick?"none":void 0,ht=se=>/^\d+(\.\d+)?px$/.test(Se[se]??""),wt=se=>{const ke=Se[se]??"",ze=/^minmax\(\s*(\d+(?:\.\d+)?)px\s*,/.exec(ke)??/^(\d+(?:\.\d+)?)px$/.exec(ke);return ze?parseFloat(ze[1]):$};Q.current=ht,V.current=wt,pe.current=Se;const ft=se=>v==="fit"&&!ht(se)?"fr":"px",Nt=ne&&ne.length===e.length&&!U,gt=z??(Nt?e.map((se,ke)=>se.resizable===!1&&Se[ke]?Se[ke]:`${ne[ke]}${ft(ke)}`).join(" "):p),it=gt?{"--table-grid-cols":gt}:void 0,Ke=x!==void 0;return n.jsxs("div",{ref:Ne,className:`table-wrap table-wrap--${h}${q?" table-wrap--resizable":""}${N?" table-wrap--dragover":""}${b?" table-wrap--collapsed":""}`,style:it,onDragOver:S,onDragLeave:E,onDrop:O,tabIndex:W?0:void 0,role:W?"region":void 0,"aria-label":W?typeof x=="string"?x:M("table.scrollRegion","\uAC00\uB85C\uB85C \uAD74\uB9B4 \uC218 \uC788\uB294 \uD45C"):void 0,children:[!!i&&n.jsx("span",{id:G,className:"table-row-hint",children:M("table.rowActionHint","\uC904\uC744 \uB204\uB974\uBA74 \uC790\uC138\uD788 \uBD05\uB2C8\uB2E4")}),n.jsxs("div",{ref:K,role:"table","aria-labelledby":Ke&&typeof x=="string"?P:void 0,className:"table body-2",children:[Ke&&n.jsxs("div",{className:we("table-header",B&&"table-header--clickable"),onClick:B,role:"caption",children:[B&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:b?"chevron-right":"chevron-down",ariaLabel:b?M("common.expand","\uD3BC\uCE58\uAE30"):M("common.collapse","\uC811\uAE30"),ariaExpanded:!b,className:"table-header__chevron"}),f&&n.jsx(at,{icon:f,label:typeof x=="string"?x:void 0,className:"table-header__icon"}),n.jsx("span",{id:P,className:"table-header__title h5b",children:x}),w!==void 0&&n.jsx("span",{className:"table-header__count body-3b",children:w}),_&&n.jsx("span",{className:"table-header__actions",onClick:se=>se.stopPropagation(),children:_})]}),!b&&n.jsxs(n.Fragment,{children:[t&&t.length>0&&n.jsx("div",{role:"row",className:"table-fields table-fields--groups",children:t.map((se,ke)=>n.jsx("div",{role:"columnheader","aria-colspan":se.span,className:we("table-field body-3",se.className),style:{gridColumn:`span ${se.span}`},children:se.label},ke))}),n.jsxs("div",{role:"presentation",className:we("table-fields-strip",q&&"table-fields-strip--resizable"),children:[n.jsx("div",{role:"row",className:"table-fields",ref:T,children:e.map((se,ke)=>n.jsx(Uy,{onClick:se.onClick,className:se.className,sortDir:se.sortDir,ariaSort:dt(ke),onResizeStart:q&&ke<e.length-1&&se.resizable!==!1&&(v!=="fit"||e.some((ze,nt)=>nt>ke&&ze.resizable!==!1))?ze=>qe(ke,ze):void 0,children:se.label},ke))}),q&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"chevrons-left-right-ellipsis",ariaLabel:M("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),showTooltipInfo:M("table.resetColumns","\uCE78 \uB108\uBE44 \uCD08\uAE30\uD654"),className:"table-fields__reset",onClick:Te})]}),n.jsx("div",{role:"rowgroup",className:"table-body",children:k?n.jsx(So,{variant:"loading",colSpan:e.length||void 0}):a.length===0&&A?n.jsx(So,{variant:"empty",colSpan:e.length||void 0,children:A}):a.map((se,ke)=>{const ze=m!=null&&se.id===m,nt=!!i&&(s?s(se):!0),Ie=Y!=null&&se.id!=null&&(Y instanceof Set?Y.has(se.id)||[...Y].some(Ge=>String(Ge)===String(se.id)):String(se.id)===String(Y));return n.jsx(So,{className:`${nt?" table-row--clickable":""}${c?" table-row--draggable":""}${ze?" table-row--dragging":""}`.trim(),draggable:!!c,onClick:nt?()=>i(se):void 0,colSpan:e.length||void 0,rowHasButton:r(se).some(Ge=>!!Ge.rowLabel),describedBy:G,onMouseEnter:l?Ge=>l(se,Ge):void 0,onMouseLeave:u?Ge=>u(se,Ge):void 0,onDragStart:c?Ge=>c(se,Ge):void 0,onDragEnd:d?Ge=>d(se,Ge):void 0,expandedContent:Ie&&F?F(se):void 0,children:r(se).map((Ge,bt)=>n.jsx(Wy,{className:Ge.className,style:Ge.style,rowLabel:nt?Ge.rowLabel:void 0,onRowClick:nt?()=>i(se):void 0,children:Ge.content},bt))},se.id!=null?`${typeof se.id}:${se.id}`:`__idx:${ke}`)})})]})]})]})}const Gy={hearingAid:"hearingAid",cochlearImplant:"cochlearImplant",other:"other",\uBCF4\uCCAD\uAE30:"hearingAid",\uC778\uACF5\uC640\uC6B0:"cochlearImplant",\uAE30\uD0C0:"other"};function yu(e){return e?Gy[e]??null:null}function vu(e){switch(yu(e)){case"hearingAid":return"main";case"cochlearImplant":return"sub";default:return"default"}}function xu(e,t){const a=yu(e);return a?t(`device.type.${a}`,{defaultValue:e??""}):e??""}const ca=e=>e==null?"":String(e).trim();function To(e,t,a,r){const i=ca(e),s=ca(t),l=ca(a);if(r&&i&&s&&l){const c=`${i.padStart(4,"0")}-${s.padStart(2,"0")}-${l.padStart(2,"0")}`,d=new Date(c);if(!Number.isNaN(d.getTime())&&d.toISOString().slice(0,10)===c){const m=xi(c,r);if(m)return m}}const u=[i,s,l];for(;u.length>0&&u[u.length-1]==="";)u.pop();return u.join(".")}function Ky(e,t,a){const r=ca(e);return r?`${r}-${ca(t).padStart(2,"0")}-${ca(a).padStart(2,"0")}`:""}function _u(e,t){return t!=="wornAt"?String(e[t]??""):Ky(e.wornYear,e.wornMonth,e.wornDay)}function Yy({rows:e,loading:t,onSelect:a,onDelete:r,onWear:i,onRelease:s,onAdd:l}){const{t:u,i18n:c}=xe.useTranslation(),d=h=>h==="left"?u("device.direction.left","\uC88C"):u("device.direction.right","\uC6B0"),{sort:m,field:p}=Eb(),C=o.useMemo(()=>{if(!m)return e;const{key:h,asc:x}=m;return[...e].sort((f,w)=>{if(h==="worn"){const b=Number(w.worn)-Number(f.worn);return x?b:-b}return uo(_u(f,h),_u(w,h),x)})},[e,m]),{pageRows:y,pageSizeProps:v,paginationProps:g}=Nb(C,m);return n.jsxs("div",{className:"dlp-side-table",children:[n.jsx(_o,{count:{value:e.length,unit:u("customers.device.unit","\uAC1C")},pageSize:v,pagination:g,actions:l&&n.jsx(me,{htmlType:"button",size:40,type:"bar",variant:"main",icon:"plus",label:u("customers.device.addButton","\uAE30\uAE30 \uCD94\uAC00"),onClick:l})}),n.jsx(jo,{loading:t,resizable:!0,resizeMode:"fit",resizeStorageKey:"customer-device-history-v2",fields:[{...p(u("customers.device.wearingNow","\uCC29\uC6A9"),"worn"),resizable:!1},p(u("device.direction.label","\uBC29\uD5A5"),"side"),p(u("device.deviceType","\uC885\uB958"),"device"),p(u("device.brand","\uBE0C\uB79C\uB4DC"),"brand"),p(u("device.fitType","\uCC29\uC6A9\uD615\uD0DC"),"fitType"),p(u("device.productName","\uC81C\uD488\uBA85"),"productName"),p(u("device.wornDate","\uCC29\uC6A9\uC77C"),"wornAt"),...r?[{label:"",resizable:!1}]:[]],items:y.map((h,x)=>({id:h.id??`${h.side}-${x}`,row:h})),gridTemplateColumns:`56px 110px 110px minmax(120px, 1fr) 100px minmax(120px, 1fr) 110px${r?" 80px":""}`,renderRow:({row:h})=>[{content:n.jsx("span",{className:"dlp-worn-check",onClick:x=>x.stopPropagation(),children:n.jsx(nu,{checked:h.worn,disabled:h.worn?!s:!i,ariaLabel:h.worn?u("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"):u("customers.device.wear","\uCC29\uC6A9"),onChange:x=>{x?i?.(h):s?.(h)}})})},{content:n.jsx("span",{children:d(h.side)})},{content:h.device?n.jsx(kt,{size:"small",variant:vu(h.device),fill:"soft",label:xu(h.device,u)}):n.jsx("span",{})},{content:n.jsx("span",{children:h.brand})},{content:n.jsx("span",{children:h.fitType||"-"})},{content:n.jsx("span",{children:h.productName||"-"})},{content:n.jsx("span",{className:"dlp-date",children:To(h.wornYear,h.wornMonth,h.wornDay,c.language)||"-"})},...r?[{content:n.jsx("span",{className:"dlp-row-actions",children:n.jsx(me,{htmlType:"button",size:28,type:"bar",variant:"transparent-gray",label:u("common.delete","\uC0AD\uC81C"),onClick:x=>{x?.stopPropagation(),r(h)}})})}]:[]],onRowClick:({row:h})=>a(h),empty:u("customers.device.historyEmpty","\uB4F1\uB85D\uB41C \uAE30\uAE30 \uC774\uB825\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.")})]})}function wu(e,t){return e?{role:t?.role??"button",tabIndex:0,...t?.selected===void 0?{}:{"aria-selected":t.selected},onKeyDown:a=>{a.target===a.currentTarget&&(a.key!=="Enter"&&a.key!==" "||(a.preventDefault(),e(a)))}}:{}}function Zy(e,t){return new Date(e,t+1,0).getDate()}function Xy(e,t){return new Date(e,t,1).getDay()}function Jy({visits:e=[],onVisitClick:t,onVisitMove:a,onDayClick:r,today:i}){const{t:s,i18n:l}=xe.useTranslation(),u=o.useMemo(()=>s("calendar.dow",{returnObjects:!0}),[s]),c=Yr(i),[d,m]=o.useState(()=>Number(c.slice(0,4))),[p,C]=o.useState(()=>Number(c.slice(5,7))-1),[y,v]=o.useState(null),g=o.useRef(null),h=o.useMemo(()=>{const _={};return e.forEach(A=>{_[A.date]||(_[A.date]=[]),_[A.date].push(A)}),_},[e]),x=o.useMemo(()=>{const _=Zy(d,p),A=Xy(d,p),k=[];for(let N=0;N<A;N++)k.push(null);for(let N=1;N<=_;N++)k.push(N);for(;k.length<35;)k.push(null);return k},[d,p]),f=o.useCallback(()=>{p===0?(m(_=>_-1),C(11)):C(_=>_-1)},[p]),w=o.useCallback(()=>{p===11?(m(_=>_+1),C(0)):C(_=>_+1)},[p]),b=_=>`${d}-${String(p+1).padStart(2,"0")}-${String(_).padStart(2,"0")}`,B=_=>b(_)===c;return n.jsxs("div",{children:[n.jsxs("div",{className:"calendar-nav",children:[n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:f,"aria-label":s("calendar.prevMonth","\uC774\uC804 \uB2EC"),children:n.jsx(at,{icon:"chevron-left",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsx("span",{className:"calendar-nav__title h5","aria-live":"polite",children:Kr(s,l.language,d,p+1)}),n.jsx("button",{type:"button",className:"calendar-nav__button",onClick:w,"aria-label":s("calendar.nextMonth","\uB2E4\uC74C \uB2EC"),children:n.jsx(at,{icon:"chevron-right",label:"",className:"",svgClassName:"calendar-nav__button-icon",size:18})}),n.jsxs("div",{className:"calendar-nav__legend",children:[n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--main"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.visited","\uBC29\uBB38")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--sub"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.scheduled","\uC608\uC57D")}),n.jsx("span",{className:"calendar-nav__legend-dot calendar-nav__legend-dot--disabled"}),n.jsx("span",{className:"caption-1",children:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]})]}),n.jsxs("div",{className:"calendar-grid",children:[u.map(_=>n.jsx("div",{className:"calendar-day-header body-3",children:_},_)),x.map((_,A)=>{if(_===null)return n.jsx("div",{className:"calendar-cell empty"},`empty-${A}`);const k=_,N=b(k),S=h[N]??[],E=xi(N,l.language),O=y===N;return n.jsxs("div",{className:`calendar-cell${B(k)?" today":""}${O?" drag-over":""}${r?" calendar-cell--clickable":""}`,role:r?"button":void 0,tabIndex:r?0:void 0,"aria-label":r?s("calendar.addOnDate",{date:N}):void 0,"aria-current":B(k)?"date":void 0,onClick:r?()=>r(N):void 0,onKeyDown:r?F=>{F.target===F.currentTarget&&(F.key!=="Enter"&&F.key!==" "||(F.preventDefault(),r(N)))}:void 0,onDragOver:a?F=>{F.preventDefault(),v(N)}:void 0,onDragLeave:a?F=>{F.currentTarget.contains(F.relatedTarget)||v(null)}:void 0,onDrop:a?F=>{F.preventDefault(),g.current!=null&&(a(g.current,N),g.current=null),v(null)}:void 0,children:[n.jsx("div",{className:"calendar-cell__number body-3",children:k}),S.length>0&&(()=>{const F=[{key:"visited",label:s("calendar.legend.visited","\uBC29\uBB38"),count:S.filter(M=>(M.status??"visited")==="visited").length},{key:"scheduled",label:s("calendar.legend.scheduled","\uC608\uC57D"),count:S.filter(M=>M.status==="scheduled").length},{key:"noVisit",label:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38"),count:S.filter(M=>M.status==="noVisit").length}].filter(M=>M.count>0),Y=F.length===1&&F[0].key==="visited"?s("calendar.visitCount",{count:S.length,defaultValue:"\uBC29\uBB38 {{count}}\uAC74"}):F.map(M=>s("calendar.statusCount",{label:M.label,count:M.count,defaultValue:"{{label}} {{count}}\uAC74"})).join(" \xB7 ");return n.jsxs("span",{className:"calendar-cell__visit-count caption-1","aria-label":`${E} ${Y}`,children:[F.map(M=>n.jsx("span",{className:`calendar-cell__visit-dot calendar-cell__visit-dot--${M.key}`,"aria-hidden":"true"},M.key)),S.length]})})(),n.jsx("div",{className:"calendar-cell__badges",children:S.map((F,Y)=>n.jsxs("div",{draggable:!!a,className:`calendar-visit-badge${F.status==="noVisit"?" calendar-visit-badge--no-visit":F.status==="scheduled"?" calendar-visit-badge--scheduled":""}${t?" calendar-visit-badge--clickable":""}${a?" calendar-visit-badge--draggable":""}`,onDragStart:a?M=>{g.current=F.id,M.dataTransfer.effectAllowed="move"}:void 0,onDragEnd:a?()=>{g.current=null,v(null)}:void 0,onClick:t?M=>{M.stopPropagation(),t(F)}:void 0,...wu(t?()=>t(F):void 0),"aria-label":[E,F.time?Bi(F.time,s):null,F.customer,s(F.status==="noVisit"?"calendar.legend.noVisit":F.status==="scheduled"?"calendar.legend.scheduled":"calendar.legend.visited")].filter(Boolean).join(" "),children:[F.time&&n.jsx("span",{className:"calendar-visit-badge__time body-3",children:Bi(F.time,s)}),n.jsx("span",{className:"calendar-visit-badge__name body-3",children:F.customer}),F.status==="noVisit"&&n.jsx("span",{className:"calendar-visit-badge__no-visit caption-1",children:s("calendar.legend.noVisit","\uBBF8\uBC29\uBB38")})]},F.id??Y))})]},k)})]})]})}const Qy={page:"h3",pagePopup:"h4",popup:"h5"};function da({type:e="page",title:t,headingLevel:a=2,icon:r,action:i,disc:s,children:l,inGrid:u=!1,className:c,style:d}){const m=Qy[e],p=t||s||i||r,C=a?`h${a}`:"div";return n.jsxs("div",{className:we("section",`section--${e}`,u&&"section--in-grid",c),style:d,children:[p&&n.jsxs("div",{className:"section__header",children:[n.jsxs("div",{className:"section__title-row",children:[r&&n.jsx(at,{icon:r,label:typeof t=="string"?t:void 0,className:"section__icon"}),n.jsxs("div",{className:"section__title-group",children:[t&&n.jsx(C,{className:`section__title ${m}`,children:t}),s&&n.jsx("div",{className:"section__disc body-3",children:s})]})]}),i&&n.jsx("div",{className:"section__action",children:i})]}),l]})}let Mo=null,Au=!1;function Bu(){if(Au||typeof document>"u")return;Au=!0,document.addEventListener("keydown",t=>{t.metaKey||t.ctrlKey||t.altKey||(Mo="keyboard")},!0);const e=()=>{Mo="pointer"};document.addEventListener("pointerdown",e,!0),document.addEventListener("mousedown",e,!0),document.addEventListener("touchstart",e,{capture:!0,passive:!0})}Bu();function lr(){return Bu(),Mo==="keyboard"}const ur=20;function e5(e){const{t}=xe.useTranslation(),{type:a,trainingDatas:r,depth:i,renderPopup:s,completedIds:l,selectedIds:u,onItemComplete:c,size:d,useDescriptionTooltip:m,onRemove:p,onMore:C,sectionType:y="page"}=e||{},[,v]=o.useState(0),g=typeof r<"u"?Array.isArray(r)?r:[]:[],h=g.length,[x,f]=o.useState(Math.min(h,ur)),w=o.useMemo(()=>Array.isArray(i)?[...i,a?.label].filter(Boolean).join(" \xB7 "):[i||"",a?.label].filter(Boolean).join(" \xB7 "),[i,a?.label]);o.useEffect(()=>{f(Math.min(h,ur))},[h]),Cl("speechear.data.updated",()=>v(A=>A+1));const b=o.useRef(null),B=o.useRef(null);function _(){const A=document.activeElement;B.current=lr()&&A&&A.closest?.(".training-block__more")?x:null,f(k=>Math.min(h,k+ur))}return o.useEffect(()=>{const A=B.current;if(A==null)return;B.current=null;const k=document.activeElement;k&&k!==document.body||b.current?.querySelectorAll(".training-block-button")[A]?.focus()},[x]),n.jsxs(da,{type:y,title:a?.label,icon:a?.icon,disc:a?.desc,className:"training-block",children:[n.jsx("div",{className:"training-list",ref:b,children:(g||[]).slice(0,x).map((A,k)=>{const N=A;return n.jsx(yo,{index:k,type:a,trainingData:N,depth:w,renderPopup:s,completedIds:l,selectedIds:u,size:d,useDescriptionTooltip:m,onRemove:typeof p=="function"&&u!=null&&N?.id!=null&&u.has(String(N.id))?()=>p(N):void 0,onComplete:typeof c=="function"&&N?.id!=null?()=>c(String(N.id)):void 0,onMore:typeof C=="function"?S=>C(N,S):void 0},N?.id!=null?`${a?.key||"t"}-${String(N.id)}`:`${a?.key||"t"}-${k}`)})}),h>ur&&x<h&&n.jsx("div",{className:"training-block__more",children:n.jsx(me,{htmlType:"button",size:48,type:"bar",icon:"plus",onClick:_,ariaLabel:t("common.loadMore","\uB354\uBCF4\uAE30"),label:t("common.loadMore","\uB354\uBCF4\uAE30"),variant:"main"})})]})}function t5(e){let t=0;const a=r=>{Array.isArray(r)?r.forEach(a):r!=null&&r!==!1&&r!==!0&&r!==""&&t++};return a(e),t}function n5({gap:e=10,count:t,className:a,children:r}){const i=o.useRef(null),[s,l]=o.useState({width:0,card:0}),u=t??t5(r);o.useLayoutEffect(()=>{const C=i.current;if(!C)return;const y=()=>{const g=C.style.maxWidth;C.style.maxWidth="none";const h=C.clientWidth;C.style.maxWidth=g;const x=C.firstElementChild?.offsetWidth??0;l(f=>f.width===h&&f.card===x?f:{width:h,card:x})};if(y(),typeof ResizeObserver>"u")return;const v=new ResizeObserver(y);return v.observe(C),()=>v.disconnect()},[u,e]);const c=s.card>0?s.card:0,d=c>0?WC(s.width,c,e):0,m=d>0?qC(u,d):0,p={"--block-grid-gap":`${e}px`,...m>0?{"--block-grid-cols":m,"--block-grid-card":`${c}px`}:{}};return n.jsx("div",{ref:i,className:we("training-block-grid",m>0&&"training-block-grid--measured",a),style:p,"data-cols":m>0?m:void 0,children:r})}function Lo(e){const t=o.useRef(null),[a,r]=o.useState(!!e),[i,s]=o.useState(!1);o.useEffect(()=>{s(!1);const c=t.current;r(!!e&&!(c?.complete&&c.naturalWidth>0))},[e]);const l=o.useCallback(()=>r(!1),[]),u=o.useCallback(()=>{r(!1),s(!0)},[]);return{imgRef:t,loading:a,failed:i,hasImage:!!e&&!i,onLoad:l,onError:u}}var a5='data:image/svg+xml,<svg width="100" height="100" viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">%0A<g clip-path="url(%23clip0_2256_7437)">%0A<g opacity="0.1">%0A<path d="M35.7143 25C29.7964 25 25 29.7964 25 35.7143V64.2857C25 67.3786 25.7893 70.2893 27.1714 72.8286C29.7071 74.2143 32.6179 75 35.7143 75H64.2857C70.2036 75 75 70.2036 75 64.2857V35.7143C75 32.6214 74.2107 29.7107 72.8286 27.1714C70.2929 25.7857 67.3821 25 64.2857 25H35.7143Z" fill="%23111111"/>%0A</g>%0A<path d="M57.1426 17.8571H35.7141C25.8533 17.8571 17.8569 25.8536 17.8569 35.7143V44.0643L10.9926 51.6179C10.5819 52.0679 10.6283 52.775 11.0998 53.1643C13.1783 54.8929 15.4641 56.2214 17.8569 57.1679C17.8676 63.925 21.6283 69.8 27.1712 72.825C25.7855 70.2893 24.9998 67.3786 24.9998 64.2821V35.7107C24.9998 29.7929 29.7962 24.9964 35.7141 24.9964H64.2855C67.3783 24.9964 70.2891 25.7857 72.8283 27.1679C69.7998 21.6179 63.9105 17.8536 57.1426 17.8536V17.8571Z" fill="%23111111"/>%0A<path d="M72.8285 27.1714C74.2142 29.7072 75 32.6179 75 35.7143V64.2857C75 70.2036 70.2035 75 64.2857 75H35.7142C32.6214 75 29.7107 74.2107 27.1714 72.8286C30.2 78.3786 36.0892 82.1429 42.8571 82.1429H58.9678C59.9321 82.1429 60.7142 82.925 60.7142 83.8893C60.7142 84.9107 61.5892 85.7215 62.6071 85.6322C73.5535 84.675 82.1428 75.4822 82.1428 64.2857V42.8572C82.1428 36.0893 78.3785 30.2 72.8285 27.1714Z" fill="%23111111"/>%0A<path d="M36.0714 40.7143C36.0714 39.5308 35.112 38.5714 33.9285 38.5714C32.745 38.5714 31.7856 39.5308 31.7856 40.7143V45C31.7856 46.1834 32.745 47.1428 33.9285 47.1428C35.112 47.1428 36.0714 46.1834 36.0714 45V40.7143Z" fill="%23111111"/>%0A<path d="M46.7859 57.1429C45.743 57.1429 44.6966 56.875 43.7502 56.3286C42.8966 55.8357 42.6037 54.7429 43.1002 53.8893C43.593 53.0357 44.6859 52.7429 45.5395 53.2393C46.518 53.8036 47.7573 53.6429 48.5537 52.8464C48.9395 52.4607 49.1823 51.9714 49.2573 51.4357C49.5787 49.1607 50.5823 47 52.1645 45.1857C53.1073 44.1071 53.6037 42.7214 53.568 41.2857C53.493 38.3536 51.1466 35.9107 48.2216 35.7286C47.2323 35.6679 46.2859 35.8464 45.4073 36.2679C44.518 36.6929 43.4502 36.3107 43.0287 35.4214C42.6037 34.5321 42.9859 33.4643 43.8752 33.0429C45.2895 32.3714 46.868 32.0679 48.4466 32.1643C53.2037 32.4607 57.0216 36.4286 57.1395 41.1964C57.1966 43.5286 56.3859 45.7786 54.8573 47.5357C53.7323 48.825 53.018 50.3464 52.7966 51.9357C52.6109 53.2464 52.018 54.4357 51.0823 55.375C49.9145 56.5429 48.3609 57.15 46.7895 57.15L46.7859 57.1429Z" fill="%23111111"/>%0A</g>%0A<defs>%0A<clipPath id="clip0_2256_7437">%0A<rect width="100" height="100" fill="white"/>%0A</clipPath>%0A</defs>%0A</svg>%0A';const r5=a5,$o=o.forwardRef(function({item:e,disabled:t=!1,onPlayDone:a,selectable:r=!1,selected:i=!1,onSelect:s,flipDelay:l=0,hideLabel:u=!1,hideAudio:c=!1,orderRank:d=null},m){const{t:p}=xe.useTranslation(),C=e.word||e.title||"",y=t||!C,v=e.audio??e.sound??e.audioKey,g=e.subLabel||e.pronunciation||"",h=e.colloquialLabel||"",[x,f]=o.useState({label:C,subLabel:g,colloquialLabel:h,homonum:e.homonum});C&&(x.label!==C||x.subLabel!==g||x.colloquialLabel!==h||!Object.is(x.homonum,e.homonum))&&f({label:C,subLabel:g,colloquialLabel:h,homonum:e.homonum});const w=o.useRef(null),b=ln("(max-width: 767px)"),[B,_]=o.useState(!1),A=`${typeof v=="string"?v:v?.src??""}\0${C}`,[k,N]=o.useState({for:"",url:""}),S=k.for===A?k.url:"",E=gi(),O=e.textOnly??(!e.image&&!!x.label&&!!E&&E.entries.length>0&&!E.byWord.has(x.label)),F=O?"":aa()?.(x.label,x.homonum)??e.image??"",{imgRef:Y,loading:M,hasImage:L,onLoad:P,onError:G}=Lo(F);o.useEffect(()=>{let R=!1;return(async()=>{if(v){if(typeof v=="string"){if(v.startsWith("http")||v.includes("/")){N({for:A,url:v});return}}else if(typeof v=="object"&&!Array.isArray(v)){const W=v.src;if(W){N({for:A,url:W});return}}}const I=Ir();if(I&&C)try{const W=await Promise.resolve(I(C));!R&&W&&N({for:A,url:W})}catch{}})(),()=>{R=!0}},[v,C,A]);const U=o.useRef(!0),z=o.useRef(null);o.useEffect(()=>(U.current=!0,()=>{U.current=!1,z.current&&rr(z.current),z.current=null;try{w.current?.pause()}catch{}w.current=null}),[]);const q=o.useCallback(()=>new Promise(R=>{if(typeof window<"u"&&window.speechSynthesis&&C){_(!0),window.speechSynthesis.cancel();const I=new SpeechSynthesisUtterance(C);I.lang="ko-KR",I.onend=()=>{_(!1);try{a?.()}catch{}R()},I.onerror=()=>{_(!1),R()},window.speechSynthesis.speak(I)}else R()}),[C,a]),$=o.useCallback(R=>{const I=bo(R,W=>{if(_(!1),W)try{a?.()}catch{}});return w.current=I.el,I.done},[a]),V=o.useCallback(async()=>{if(t||!U.current)return;const R=()=>{z.current===R&&(z.current=null);try{w.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}_(!1)},I=ar(R);z.current=R;try{window.speechSynthesis?.cancel()}catch{}try{if(S&&(_(!0),await $(S)))return;const W=vC();if(W&&C)try{const ee=await Promise.resolve(W(C));if(!U.current||z.current!==R||ee&&(_(!0),await $(ee)))return}catch{}if(!U.current||z.current!==R)return;await q()}finally{I(),z.current===R&&(z.current=null)}},[t,S,C,$,q]);o.useImperativeHandle(m,()=>({play:()=>V()}),[V]);const H=R=>R.stopPropagation(),T=o.useCallback(R=>{if(R.stopPropagation(),!t){if(B){try{w.current?.pause()}catch{}try{window.speechSynthesis?.cancel()}catch{}_(!1);return}V()}},[t,B,V]),D=we("training-word-card",t?"training-word-card--disabled":"",y?"training-word-card--flipped":"",r?"training-word-card--selectable":"",i?"training-word-card--selected":"");return n.jsx("div",{className:D,onClick:r&&!t?s:void 0,role:r?"button":void 0,"aria-pressed":r?i:void 0,tabIndex:r&&!t?0:void 0,"aria-disabled":r&&t?!0:void 0,onKeyDown:r&&!t?R=>{R.target===R.currentTarget&&(R.key==="Enter"||R.key===" "||R.key==="Spacebar")&&(R.preventDefault(),s?.())}:void 0,children:n.jsxs("div",{className:"training-word-card__flipper",style:{transitionDelay:y?"0ms":`${l}ms`},children:[n.jsxs("div",{className:"training-word-card__front",children:[i&&n.jsx("div",{className:"training-word-card__selected-badge",onClick:H,children:n.jsx(kt,{type:"dot",size:40,position:"inline",animate:!0,icon:d!=null?void 0:"check",number:d??void 0,"aria-label":d!=null?p("training.nthSelected",{n:d}):p("training.selected","\uC120\uD0DD\uB428")})}),n.jsx("div",{className:"training-word-card__image-wrap",children:O?n.jsx("div",{className:"training-word-card__text-face",children:x.label}):L?n.jsxs(n.Fragment,{children:[M&&n.jsx("div",{className:"training-word-card__spinner"}),n.jsx("img",{ref:Y,className:"training-word-card__image",src:F,alt:x.label||p("common.image","\uC774\uBBF8\uC9C0"),style:{opacity:M?0:1},onLoad:P,onError:G})]}):n.jsx("div",{className:"training-word-card__placeholder"})}),!u&&n.jsxs("div",{className:"training-word-card__body",children:[!O&&n.jsx("div",{className:"training-word-card__word",children:x.label}),x.subLabel&&n.jsxs("div",{className:"training-word-card__pronunciation",children:["[",x.subLabel,"]"]}),x.colloquialLabel&&n.jsxs("div",{className:"training-word-card__colloquial caption-1",children:["[",x.colloquialLabel,"]"]})]}),!c&&n.jsx("div",{className:"training-word-card__bottom",onClick:r?H:void 0,children:n.jsx(me,{htmlType:"button",size:b?40:48,type:b?"dot":"bar",icon:B?"pause":"play",label:b?void 0:p("training.playSound","\uC18C\uB9AC \uB4E3\uAE30"),selected:B,onClick:T,disabled:t,ariaLabel:p("training.playSound","\uC18C\uB9AC \uB4E3\uAE30")})})]}),n.jsx("div",{className:"training-word-card__back","aria-hidden":"true",children:n.jsx("img",{src:r5,className:"training-word-card__disabled-symbol",alt:"",draggable:!1})})]})})}),o5=260;function Fn(e){const{t}=xe.useTranslation(),{title:a,subtitle:r,headerActions:i,headerSegment:s,children:l,buttons:u,footer:c,footerStart:d,footerEnd:m,footerNote:p,footerNoteDivider:C=!1,footerClassName:y="",footerLayout:v="center",onClose:g,closeDisabled:h=!1,beforeClose:x,closeOnBackdrop:f=!0,className:w="",ariaLabel:b,useTitle:B=!0,inline:_=!1,size:A,layer:k="modal",height:N,fillBody:S=!1,resetScrollKey:E}=e||{},[O,F]=o.useState(!1),Y=o.useRef(!1),M=o.useRef(null),L=o.useId(),P=o.useRef(null);o.useEffect(()=>{},[_,a,b,w]),o.useEffect(()=>{E!==void 0&&P.current&&(P.current.scrollTop=0)},[E]);const[G,U]=o.useState(!1);o.useEffect(()=>{const J=P.current;if(!J)return;const re=()=>U(J.scrollHeight>J.clientHeight+1);if(re(),typeof ResizeObserver>"u")return;const Ne=new ResizeObserver(re);Ne.observe(J);const K=J.firstElementChild;return K&&Ne.observe(K),()=>Ne.disconnect()},[l,E]),o.useEffect(()=>{if(!_)return Zl()},[_]),o.useEffect(()=>{if(_)return;const J=document.activeElement,re=M.current;return to(re,J),re&&!re.contains(document.activeElement)&&(re.querySelector(fn)??re).focus(),()=>{const Ne=document.activeElement;(!Ne||Ne===document.body||re&&re.contains(Ne))&&no(J)?.focus?.()}},[_]),Qr(M,!_);const z=o.useRef(!0),q=ao(),$=o.useRef(null);o.useEffect(()=>(z.current=!0,()=>{z.current=!1,$.current&&(clearTimeout($.current),$.current=null)}),[]);const V=o.useCallback(()=>{!z.current||!Y.current||(Y.current=!1,F(!1))},[]),H=o.useCallback((J,re=!1)=>{if(re&&!z.current||Y.current)return;Y.current=!0,F(!0);const Ne=setTimeout(()=>{$.current===Ne&&($.current=null);let K;try{K=J?J():void 0}catch{V();return}K&&typeof K.then=="function"&&K.then(()=>{setTimeout(V,120)},V)},q?0:o5);re&&($.current=Ne)},[V,q]),T=o.useCallback(()=>{h||x&&x()===!1||H(g,!0)},[H,g,h,x]),D=o.useRef(T);o.useEffect(()=>{D.current=T});const R=!_&&!!g;o.useEffect(()=>{if(R)return Un(()=>D.current())},[R]);const I=R&&f,W=o.useRef(!1),ee=J=>{W.current=J.target===J.currentTarget},oe=J=>{const re=W.current;W.current=!1,re&&J.target===J.currentTarget&&T()},ce=n.jsx("div",{className:`popup ${_?"popup--inline":""} ${k==="belowPagePopup"?"popup--below-page-popup":""} ${O?"popup--closing":""} ${w}`,onPointerDown:I?ee:void 0,onClick:I?oe:void 0,onMouseDown:_?void 0:J=>{J.target===J.currentTarget&&J.preventDefault()},children:n.jsxs("div",{ref:M,className:`popup-panel${A?` popup-panel--${A}`:""}${N!=null?" popup-panel--has-height":""}${S?" popup-panel--fill-body":""}`,style:N!=null?{"--popup-height":typeof N=="number"?`${N}px`:N}:void 0,tabIndex:-1,role:_?void 0:"dialog","aria-modal":_?void 0:!0,"aria-labelledby":!_&&B&&a?L:void 0,"aria-label":!_&&!(B&&a)?b??(typeof a=="string"?a:void 0):void 0,children:[!B&&(i||g)?n.jsxs("div",{className:"popup-close-float",children:[i,g&&n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:T,disabled:h,ariaLabel:t("common.close","\uB2EB\uAE30")})]}):a||i||g?n.jsxs("div",{className:`popup-header${r?" popup-header--with-subtitle":""}`,children:[n.jsxs("div",{className:"popup-header-main",children:[a?n.jsx("h2",{id:L,className:"popup-title popup-title--left h2",children:a}):n.jsx("span",{id:L,className:"popup-title popup-title--left h2"}),r&&n.jsx("span",{className:"popup-subtitle body-3",children:r})]}),s&&n.jsx("div",{className:"popup-header-segment",children:n.jsx(gn,{size:40,ariaLabel:s.ariaLabel,options:s.options.map(J=>({key:J.key,label:J.label,disabled:J.disabled})),value:s.value,onChange:s.onChange})}),n.jsxs("div",{className:"popup-header-actions",children:[i,g&&n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,onClick:T,disabled:h,ariaLabel:t("common.close","\uB2EB\uAE30")})]})]}):null,n.jsx("div",{className:"popup-content",ref:P,tabIndex:G?0:void 0,children:n.jsx("div",{className:"popup-content__inner",children:typeof l=="function"?l({animateThen:H,closeWithAnimation:T}):l})}),p!=null&&p!==!1&&n.jsx("div",{className:`popup-footer-note caption-1${C?" popup-footer-note--divider":""}`,role:"note",children:p}),d||m?n.jsxs("div",{className:`popup-footer popup-footer--bar${y?` ${y}`:""}`,children:[n.jsx("div",{className:"popup-footer__start",children:typeof d=="function"?d({animateThen:H,closeWithAnimation:T}):d}),n.jsx("div",{className:"popup-footer__end",children:typeof m=="function"?m({animateThen:H,closeWithAnimation:T}):m})]}):u?.length?n.jsx("div",{className:`popup-footer popup-footer--buttons${v!=="center"?` popup-footer--${v}`:""}`,children:u.map((J,re)=>n.jsx(me,{htmlType:"button",size:48,variant:J.variant??"default",label:J.label,disabled:J.disabled,onClick:()=>J.onClick?.({animateThen:H,closeWithAnimation:T})},re))}):c?n.jsx("div",{className:`popup-footer${v!=="center"?` popup-footer--${v}`:""}${y?` ${y}`:""}`,children:typeof c=="function"?c({animateThen:H,closeWithAnimation:T}):c}):null]})});return _||typeof document>"u"?ce:en.createPortal(ce,document.body)}function cr(e){return String(e)}const dr=["o","triangle","x"];function ku(e,t){return e===t?null:t}const Nu={o:"circle",triangle:"triangle",x:"x"},Eu={o:"main",triangle:"warn",x:"danger"};function s5(e){let t=0,a=0,r=0;for(const s of Object.values(e))s==="o"?t++:s==="triangle"?a++:s==="x"&&r++;const i=t+a+r;return{marked:i,o:t,triangle:a,x:r,rate:i===0?null:(t+a*.5)/i}}function Ro(e){const t={};for(const[a,r]of Object.entries(e))(r==="o"||r==="triangle"||r==="x")&&(t[a]=r);return t}function Du(e){const t=[];let a=0;for(const r of e)t.push(a),a+=r;return t}function i5(e,t){return!t&&e>0}const pa={landscape:{width:1123,height:794,printSize:"A4 landscape",printW:"297mm",printH:"210mm"},portrait:{width:794,height:1123,printSize:"A4 portrait",printW:"210mm",printH:"297mm"}};function l5(e="landscape"){Zt("print-word-table-deprecated","[printWordTable] @deprecated \u2014 WordTablePopup renderButtons \uC758 print(\uB610\uB294 useWordTablePrint().print)\uB97C \uC4F0\uC138\uC694. \uC804\uC5ED \uC778\uC1C4\uB294 \uD654\uBA74\uC758 \uBAA8\uB4E0 \uB2E8\uC5B4\uD45C\uB97C \uD568\uAED8 \uCC0D\uC2B5\uB2C8\uB2E4.");const{printSize:t,printW:a,printH:r}=pa[e],i=document.createElement("style");i.textContent=`@page { size: ${t}; margin: 0; } .word-table { width: ${a} !important; height: ${r} !important; }`,document.head.appendChild(i);const s=()=>{document.head.removeChild(i),window.removeEventListener("afterprint",s)};window.addEventListener("afterprint",s),window.print()}function Su(e,t){if(e.length===0)return[[]];const a=Math.max(1,Math.floor(t)),r=[];for(let i=0;i<e.length;i+=a)r.push(e.slice(i,i+a));return r}const u5={landscape:{1:{cols:1,rows:1},2:{cols:2,rows:1},3:{cols:3,rows:1},4:{cols:2,rows:2},5:{cols:3,rows:2},6:{cols:3,rows:2},7:{cols:4,rows:2},8:{cols:4,rows:2},9:{cols:5,rows:2},10:{cols:5,rows:2},11:{cols:4,rows:3},12:{cols:4,rows:3}},portrait:{1:{cols:1,rows:1},2:{cols:1,rows:2},3:{cols:1,rows:3},4:{cols:1,rows:4},5:{cols:1,rows:5},6:{cols:2,rows:3},7:{cols:2,rows:4},8:{cols:2,rows:4},9:{cols:2,rows:5},10:{cols:2,rows:5},11:{cols:3,rows:4},12:{cols:3,rows:4}}};function c5(e,t){const a=u5[e][t];if(a)return a;const r=Math.max(1,Math.ceil(t)),i=Math.max(1,Math.ceil(Math.sqrt(r*.707)));let s,l;return e==="landscape"?(l=i,s=Math.ceil(r/l)):(s=i,l=Math.ceil(r/s)),(e==="landscape"?s<l:l<s)&&([s,l]=[l,s]),{cols:s,rows:l}}const d5={show:"word-table-block__content--cut-show",dashed:"",corner:"word-table-block__content--cut-corner",hide:""},ju={\uBA85:"\uBA85\uC0AC",\uB3D9:"\uB3D9\uC0AC",\uD615:"\uD615\uC6A9\uC0AC",\uBD80:"\uBD80\uC0AC",\uC218:"\uC218\uC0AC",\uAD00:"\uAD00\uD615\uC0AC",\uAC10:"\uAC10\uD0C4\uC0AC",\uC870:"\uC870\uC0AC",\uC811:"\uC811\uC0AC",\uC758:"\uC758\uC874\uBA85\uC0AC",\uB300:"\uB300\uBA85\uC0AC",\uBCF4\uB3D9:"\uBCF4\uC870\uB3D9\uC0AC",\uBCF4\uD615:"\uBCF4\uC870\uD615\uC6A9\uC0AC"},Tu={\uACE0\uC720:"\uACE0\uC720\uC5B4",\uD55C\uC790:"\uD55C\uC790\uC5B4",\uC678\uB798:"\uC678\uB798\uC5B4",\uD63C\uC885:"\uD63C\uC885\uC5B4"},Po={\uBA85:"noun",\uB3D9:"verb",\uD615:"adjective",\uBD80:"adverb",\uC218:"numeral",\uAD00:"determiner",\uAC10:"interjection",\uC870:"particle",\uC811:"affix",\uC758:"dependentNoun",\uB300:"pronoun",\uBCF4\uB3D9:"auxVerb",\uBCF4\uD615:"auxAdjective"},Fo={\uACE0\uC720:"native",\uD55C\uC790:"sino",\uC678\uB798:"foreign",\uD63C\uC885:"mixed"};function Mu(e){return Object.fromEntries(Object.entries(ju).map(([t,a])=>[t,Po[t]?e(`wordTable.pos.${Po[t]}`,{defaultValue:a}):a]))}function Lu(e){return Object.fromEntries(Object.entries(Tu).map(([t,a])=>[t,Fo[t]?e(`wordSearch.filter.type.${Fo[t]}`,{defaultValue:a}):a]))}const p5={pos:Po,wordType:Fo};function Io(e,t){return e?e.split("/").map(a=>t[a]??a).join("/"):""}function $u(e,t,a,r){if(r!=="dashed")return{};const i=e%t,s=Math.floor(e/t),l=i<t-1,u=s<a-1;if(!l&&!u)return{};const c="#ddd",d=y=>`repeating-linear-gradient(to ${y}, ${c} 0, ${c} 5px, transparent 5px, transparent 10px)`,m=[],p=[],C=[];return l&&(m.push(d("bottom")),p.push("1px 100%"),C.push("right center")),u&&(m.push(d("right")),p.push("100% 1px"),C.push("center bottom")),{backgroundImage:m.join(", "),backgroundSize:p.join(", "),backgroundPosition:C.join(", "),backgroundRepeat:"no-repeat",printColorAdjust:"exact",WebkitPrintColorAdjust:"exact"}}const m5=280,h5=240,C5=280,f5=400,g5=120,b5=280;function Ru(e,t){const a=o.useRef(null),[r,i]=o.useState(1),[s,l]=o.useState(0),u=o.useCallback((c,d)=>{if(!(c>0))return;const m=c/e,p=t&&d>0?d/t:1/0,C=Math.min(1,m,p);i(C),l(Math.max(0,(c-e*C)/2))},[e,t]);return o.useEffect(()=>{const c=a.current;if(!c)return;const d=t?c.parentElement??c:c;if(u(d.clientWidth,d.clientHeight),typeof ResizeObserver>"u")return;const m=new ResizeObserver(([p])=>u(p.contentRect.width,p.contentRect.height));return m.observe(d),()=>m.disconnect()},[u,t]),{scalerRef:a,scale:r,offset:s}}const y5={position:"absolute",width:1,height:1,margin:-1,padding:0,overflow:"hidden",clipPath:"inset(50%)",whiteSpace:"nowrap",border:0},v5=400,Pu=8;function Fu({label:e,subLabel:t,colloquialLabel:a,homonum:r,showWord:i=!0,showImage:s=!0,showPronunciation:l=!0,showColloquial:u=!0,buttonSize:c=40,wordInfo:d}){const{t:m}=xe.useTranslation(),p=o.useRef(null),C=o.useRef(null),y=o.useRef(null),[v,g]=o.useState(1),[h,x]=o.useState(!1),[f,w]=o.useState({for:"",url:""}),[b,B]=o.useState(null),_=t&&t.length>0?t:_C()?.(e,r)??"",A=aa()?.(e,r)??"",{imgRef:k,loading:N,failed:S,onLoad:E,onError:O}=Lo(A),F=o.useCallback(()=>B(C.current?.getBoundingClientRect()??null),[]),Y=o.useCallback(()=>B(null),[]),M=oo(!!b,T=>{T?F():Y()},C),L=o.useMemo(()=>{if(!d)return null;const T=[];return d.grade&&T.push(m("wordTable.info.grade",{n:d.grade,defaultValue:"\uB09C\uC774\uB3C4: {{n}}\uB4F1\uAE09"})),d.syllables&&T.push(m("wordTable.info.syllables",{n:d.syllables,defaultValue:"\uC74C\uC808 \uC218: {{n}}\uC74C\uC808"})),d.pos&&T.push(m("wordTable.info.pos",{v:Io(d.pos,Mu(m)),defaultValue:"\uD488\uC0AC: {{v}}"})),d.wordType&&T.push(m("wordTable.info.wordType",{v:Io(d.wordType,Lu(m)),defaultValue:"\uC720\uD615: {{v}}"})),T.length?T:null},[d,m]),P=_||e,G=f.for===P?f.url:"";o.useEffect(()=>{const T=Ir(),D=_||e;if(!T||!D)return;let R=!1;return Promise.resolve(T(D)).then(I=>{!R&&I&&w({for:D,url:I})}),()=>{R=!0}},[_,e]);const U=o.useRef(null),z=o.useRef(null);o.useEffect(()=>()=>{y.current?.pause(),z.current?.()},[]);const q=o.useCallback(T=>{if(T.stopPropagation(),h){U.current?.();return}if(!G)return;x(!0);const D=bo(G,()=>{x(!1),z.current?.()});y.current=D.el,U.current=D.stop,z.current=ar(D.stop)},[h,G]),$=s&&!!A&&!S,V=$&&i?m5:$?C5:h5,H=$&&i?f5:$?b5:g5;return o.useEffect(()=>{const T=p.current;if(!T||typeof ResizeObserver>"u")return;const D=new ResizeObserver(([R])=>{const{width:I,height:W}=R.contentRect;g(Math.min(I/V,W/H))});return D.observe(T),()=>D.disconnect()},[V,H]),n.jsxs("div",{ref:p,className:we("word-table-cell",$?"word-table-cell--with-image":""),"data-ref-w":V,"data-ref-h":H,children:[n.jsxs("div",{className:"word-table-cell__inner",style:{transform:`scale(${v})`},children:[$&&n.jsxs("div",{className:"word-table-cell__image-wrap",children:[N&&n.jsx("div",{className:"word-table-cell__spinner"}),n.jsx("img",{ref:k,className:"word-table-cell__image",src:A,alt:e,draggable:!1,style:{opacity:N?0:1},onLoad:E,onError:O})]}),i&&n.jsx("span",{className:"word-table-cell__word h0",children:e}),l&&_&&n.jsxs("span",{className:"word-table-cell__sub h3",children:["[",_,"]"]}),u&&a&&n.jsxs("span",{className:"word-table-cell__colloquial h5",children:["[",a,"]"]})]}),n.jsxs("div",{className:"word-table-cell__play-button","data-audio-src":G,children:[n.jsx("span",{"data-play-state":"play",style:{display:h?"none":void 0},children:n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"play",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:m("common.play","\uC7AC\uC0DD"),ariaLabel:e?m("common.playFor",{name:e,defaultValue:`${e} \uC7AC\uC0DD`}):m("common.play","\uC7AC\uC0DD"),onClick:q})}),n.jsx("span",{"data-play-state":"pause",style:{display:h?void 0:"none"},children:n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"pause",useBorder:!1,selected:!0,showTooltipInfo:m("common.pause","\uBA48\uCDA4"),ariaLabel:e?m("common.pauseFor",{name:e,defaultValue:`${e} \uBA48\uCDA4`}):m("common.pause","\uBA48\uCDA4"),onClick:q})})]}),d&&n.jsxs("div",{ref:C,className:"word-table-cell__info-button",onPointerEnter:T=>{ia(T)||F()},onPointerLeave:T=>{ia(T)||Y()},onFocus:()=>{la()||F()},onBlur:Y,children:[n.jsx(me,{htmlType:"button",size:c,type:"dot",icon:"info",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:!1,ariaLabel:m("wordTable.wordInfo","{{word}} \uB0B1\uB9D0 \uC815\uBCF4",{word:e}),onClick:T=>{T.stopPropagation(),M.touchPress()}}),b&&L&&n.jsx(Gn,{anchorRect:b,items:L,showIndex:!1})]})]})}function ma({title:e,titleIcon:t,disc:a,className:r,orientation:i="landscape",contentTypes:s=["image","word","standardPron"],cutLine:l="show",showOutline:u=!0,showDivLine:c=!0,items:d,editCells:m,count:p,activeCell:C=null,onActivateCell:y,onRemoveCell:v,onRemoveItem:g,onReorder:h,renderCellAction:x,showFillerAdd:f=!1,contentRef:w,buttonSize:b=40,brand:B,code:_,pageNumber:A,pageNumberPosition:k="right",fitHeight:N=!1,scoring:S=!1,marks:E,onMarkClick:O,scoreIndexOffset:F=0}){const Y=o.useCallback((Ae,Te)=>{O?.(F+Ae,Te)},[O,F]),M=(Ae,Te)=>{const Se=E?.[cr(F+Ae)]??null;return n.jsx("div",{className:we("word-table-cell__score",Se?"word-table-cell__score--marked":""),style:We>1?{transform:`translateX(-50%) scale(${We})`,transformOrigin:"bottom center"}:void 0,children:dr.map(Xe=>n.jsx("span",{className:we("word-table-cell__score-slot",Se===Xe?"word-table-cell__score-slot--on":""),children:n.jsx(me,{htmlType:"button",size:b,type:"dot",shape:"pill",icon:Nu[Xe],variant:Se===Xe?Eu[Xe]:"default",selected:Se===Xe,useBorder:!1,...Be?{}:{tabIndex:-1,role:"img"},showTooltipInfo:L(`wordTable.scoring.markName.${Xe}`,{defaultValue:Xe}),ariaLabel:L(`wordTable.scoring.${Xe}`,{word:Te,defaultValue:`${Te} ${Xe}`}),onClick:Be?Qe=>{Qe.stopPropagation(),Y(Ae,Xe)}:void 0})},Xe))})},{t:L}=xe.useTranslation(),P=m!==void 0,G=e!=null||!!t||!!a,U=ln("(max-width: 767px)"),z=o.useRef(null),[q,$]=o.useState(null),V=d?.length??0,[H,T]=o.useState(null),[D,R]=o.useState(""),I=o.useRef(null),W=o.useRef(null),ee=o.useRef(null),oe=o.useRef(null),ce=o.useCallback(Ae=>{W.current=Ae,typeof w=="function"?w(Ae):w&&(w.current=Ae)},[w]),J=o.useCallback((Ae,Te)=>{I.current=Te,h?.(Ae,Te),R(L("wordTable.reorder.moved",{n:Te+1,total:V,defaultValue:"{{total}}\uCE78 \uAC00\uC6B4\uB370 {{n}}\uBC88\uC9F8\uB85C \uC62E\uAE40"}))},[h,L,V]);o.useEffect(()=>{const Ae=I.current;Ae!=null&&(I.current=null,W.current?.querySelectorAll(".word-table-block__card:not(.word-table-block__card--filler)")?.[Ae]?.querySelector(".word-table-block__card-handle button")?.focus())}),o.useEffect(()=>()=>{oe.current?.()},[]);const re=o.useCallback((Ae,Te)=>{if(!h||!Ae.altKey||Ae.ctrlKey||Ae.metaKey)return;const Se=Ae.key==="ArrowRight";if(!Se&&Ae.key!=="ArrowLeft")return;Ae.preventDefault();const Xe=Te+(Se?1:-1);Xe<0||Xe>=V||J(Te,Xe)},[h,V,J]),Ne=o.useCallback((Ae,Te)=>{if(!h||Ae.pointerType==="mouse")return;const Se=Ae.target.closest?.("button");if(Se&&!Se.closest(".word-table-block__card-handle"))return;oe.current?.();const Xe={x:Ae.clientX,y:Ae.clientY};let Qe=!1;const dt=se=>{Qe&&se.cancelable&&se.preventDefault()};let ht=null,wt=null;const ft=()=>{const se=wt;if(!se)return;const ke=document.elementFromPoint?.(se.x,se.y)?.closest?.("[data-wordtable-cell]"),ze=ke?Number(ke.dataset.wordtableCell):NaN,nt=Number.isInteger(ze)?ze:null;ee.current=nt,$(Ie=>Ie===nt?Ie:nt)},Nt=se=>{if(!Qe){(Math.abs(se.clientX-Xe.x)>Pu||Math.abs(se.clientY-Xe.y)>Pu)&&Ke();return}if(wt={x:se.clientX,y:se.clientY},typeof requestAnimationFrame>"u"){ft();return}ht===null&&(ht=requestAnimationFrame(()=>{ht=null,ft()}))},gt=()=>{ht!==null&&(cancelAnimationFrame(ht),ht=null,ft());const se=ee.current,ke=Qe;Ke(),ke&&se!=null&&se!==Te&&J(Te,se)},it=setTimeout(()=>{Qe=!0,T(Te),ee.current=Te,$(Te),window.addEventListener("touchmove",dt,{passive:!1})},v5);function Ke(){clearTimeout(it),window.removeEventListener("pointermove",Nt),window.removeEventListener("pointerup",gt),window.removeEventListener("pointercancel",gt),window.removeEventListener("touchmove",dt),Qe=!1,ht!==null&&(cancelAnimationFrame(ht),ht=null),ee.current=null,oe.current=null,T(null),$(null)}oe.current=Ke,window.addEventListener("pointermove",Nt),window.addEventListener("pointerup",gt),window.addEventListener("pointercancel",gt)},[h,J]),{width:K,height:Q}=pa[i],pe=typeof N=="number"?N:N&&typeof N=="object"?U?N.narrow:N.wide:null,{scalerRef:De,scale:ye,offset:ne}=Ru(K,N?Q:void 0),le=P?m?.length??0:d?.length??0,Ce=Math.max(p??le,1),{cols:ge,rows:fe}=c5(i,Ce),$e={word:s.length===0||s.includes("word"),image:s.length===0||s.includes("image"),pron:s.length===0||s.includes("standardPron"),colloq:s.length===0||s.includes("colloquialPron")},Ve=P?(m??[]).some(Ae=>Ae!==null&&Ae.length>1):(d??[]).some(Ae=>(Ae.words??[]).length>1),je=!!B?.show,Fe=!!B?.show&&B?.top!==!1,qe=!!B?.show&&B?.bottom!==!1,mt=B?.copyright??"\xA9 IHAB, Inc. All rights reserved.",ct=we("word-table-block__content",d5[l],u&&"word-table-block__content--outline",c&&Ve&&"word-table-block__content--div-line",!je&&A&&k!=="none"&&"word-table-block__content--page-number",Fe&&"word-table-block__content--brand-top",qe&&"word-table-block__content--brand-bottom"),rt={transform:`scale(${1/ye})`,transformOrigin:"center center"},Ct=b*dr.length+4*(dr.length-1),Be=!!O,We=Be?Math.max(1,Math.min(1/ye,K/ge/Ct)):1,_e=n.jsxs("div",{ref:De,className:"word-table__scaler",style:{height:Q*ye},children:[n.jsx("div",{className:we("word-table",S&&!Be&&"word-table--score-readonly",!G&&r),style:{width:K,height:Q,transform:`scale(${ye})`,transformOrigin:"top left",marginLeft:ne},children:n.jsxs("div",{ref:ce,className:ct,style:{gridTemplateColumns:`repeat(${ge}, 1fr)`,gridTemplateRows:`repeat(${fe}, 1fr)`},children:[P?n.jsx(n.Fragment,{children:(m??[]).map((Ae,Te)=>n.jsx("div",{className:we("word-table-block__edit-cell",Ae?"word-table-block__edit-cell--filled":"word-table-block__edit-cell--empty",C===Te?"word-table-block__edit-cell--active":""),style:$u(Te,ge,fe,l),children:Ae?n.jsxs(n.Fragment,{children:[Ae.map((Se,Xe)=>n.jsxs(o.Fragment,{children:[Xe>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(Fu,{label:Se.word,subLabel:Se.pronunciation,colloquialLabel:Se.colloquialPronunciation,homonum:Se.homonum,showWord:$e.word,showImage:$e.image,showPronunciation:$e.pron,showColloquial:$e.colloq,buttonSize:b})]},Xe)),S&&M(Te,Ae.map(Se=>Se.word).join(" / ")),v&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:Ae.length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:Ae.length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>v(Te)})})]}):y&&n.jsx("div",{style:rt,children:n.jsx(me,{htmlType:"button",size:"48",type:"bar",icon:"plus",label:L("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>y(Te)})})},Te))}):n.jsxs(n.Fragment,{children:[(d??[]).map((Ae,Te)=>n.jsxs("div",{"data-wordtable-cell":h?Te:void 0,className:`word-table-block__card${h?" word-table-block__card--draggable":""}${q===Te?" word-table-block__card--drag-over":""}${H===Te?" word-table-block__card--dragging":""}`,style:$u(Te,ge,fe,l),draggable:!!h,onPointerDown:h?Se=>Ne(Se,Te):void 0,onKeyDown:h?Se=>re(Se,Te):void 0,onDragStart:h?()=>{z.current=Te}:void 0,onDragOver:h?Se=>{Se.preventDefault(),$(Te)}:void 0,onDragLeave:h?()=>$(null):void 0,onDrop:h?Se=>{Se.preventDefault(),z.current!==null&&z.current!==Te&&h(z.current,Te),z.current=null,$(null)}:void 0,onDragEnd:h?()=>{z.current=null,$(null)}:void 0,children:[(Ae.words??[]).map((Se,Xe)=>n.jsxs(o.Fragment,{children:[Xe>0&&n.jsx("div",{className:"word-table-block__pair-divider"}),n.jsx(Fu,{label:Se.label,subLabel:Se.subLabel,colloquialLabel:Se.colloquialLabel,homonum:Se.homonum,showWord:$e.word,showImage:$e.image,showPronunciation:$e.pron,showColloquial:$e.colloq,buttonSize:b,wordInfo:Se.grade||Se.syllables!=null||Se.pos||Se.wordType?{grade:Se.grade,syllables:Se.syllables,pos:Se.pos,wordType:Se.wordType}:void 0})]},Xe)),S&&M(Te,(Ae.words??[]).map(Se=>Se.label).join(" / ")),h&&n.jsx("div",{className:"word-table-block__card-handle",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"grip-vertical",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:L("wordTable.reorder.hint","Alt + \u2190 \u2192 \uB85C \uC21C\uC11C \uBC14\uAFB8\uAE30"),ariaLabel:L("wordTable.reorder.handle",{word:(Ae.words??[]).map(Se=>Se.label).join(" / "),defaultValue:"{{word}} \uC21C\uC11C \uBC14\uAFB8\uAE30 (Alt + \uD654\uC0B4\uD45C)"})})}),(x||g)&&n.jsxs("div",{className:"word-table-block__card-actions",children:[x?.(Te,Ae),g&&n.jsx("div",{className:"word-table-block__card-close",children:n.jsx(me,{htmlType:"button",size:b,type:"dot",icon:"x",variant:"transparent-lightGray",useBorder:!1,showTooltipInfo:(Ae.words??[]).length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),ariaLabel:(Ae.words??[]).length>1?L("wordPrint.removePair","\uB300\uB9BD\uC30D \uBE7C\uAE30"):L("wordPrint.removeWord","\uB2E8\uC5B4 \uBE7C\uAE30"),onClick:()=>g(Ae.id)})})]})]},Ae.id)),Array.from({length:Math.max(0,ge*fe-(d?.length??0))}).map((Ae,Te)=>{const Se=(d?.length??0)+Te<Ce;return n.jsx("div",{className:"word-table-block__card word-table-block__card--filler",children:f&&y&&Se&&n.jsx("div",{style:rt,children:n.jsx(me,{htmlType:"button",size:b,type:"bar",icon:"plus",label:L("wordTable.addWord","\uCD94\uAC00\uD558\uAE30"),onClick:()=>y((d?.length??0)+Te)})})},`filler-${Te}`)})]}),Fe&&n.jsx(n.Fragment,{children:n.jsxs("div",{className:"word-table__band word-table__band--top",children:[n.jsx("img",{className:"word-table__brand-logo",src:B?.topLogo?.src??nr,alt:B?.topLogo?.alt??"\uB9D0\uADC0"}),(()=>{const Ae=[B?.title&&n.jsx("span",{className:"word-table__paper-title",children:B.title},"t"),B?.owner&&n.jsx("span",{className:"word-table__owner",children:B.owner},"o"),_&&n.jsx("span",{className:"word-table__code",children:_},"c")].filter(Boolean);return Ae.length===0?null:n.jsx("span",{className:"word-table__ident",children:Ae.map((Te,Se)=>n.jsxs(o.Fragment,{children:[Se>0&&n.jsx("span",{className:"word-table__ident-dot","aria-hidden":"true",children:"\xB7"}),Te]},Se))})})()]})}),qe&&n.jsx(n.Fragment,{children:n.jsxs("div",{className:"word-table__band word-table__band--bottom",children:[n.jsxs("span",{className:"word-table__brand-by",children:[B?.bottomLogo?n.jsx("img",{className:"word-table__brand-logo--ihab word-table__brand-logo--given",src:B.bottomLogo.src,alt:B.bottomLogo.alt}):n.jsx("span",{className:"word-table__brand-logo--ihab",role:"img","aria-label":"IHAB"}),n.jsx("span",{className:"word-table__copyright",children:mt})]}),n.jsxs("span",{className:"word-table__band-end",children:[B?.link&&n.jsx("span",{className:"word-table__link",children:B.link}),A&&k!=="none"&&n.jsx("span",{className:"word-table__page-count",children:L("wordTable.filter.pageIndicator",{current:A.current,total:A.total})})]})]})}),!je&&A&&k!=="none"&&n.jsx("span",{className:`word-table__page-number body-3 word-table__page-number--${k}`,children:L("wordTable.filter.pageIndicator",{current:A.current,total:A.total})})]})}),h&&n.jsx("span",{role:"status",style:y5,children:D})]}),Ue=pe==null?_e:n.jsx("div",{className:"word-table__frame",style:{height:pe},children:_e});return G?n.jsx(da,{type:"page",icon:t,title:e,disc:a,className:we("word-table-block",r),children:Ue}):Ue}function x5(e,t,a){const r=[];for(const i of e??[]){if(i.type==="note"||i.type==="input")continue;const s=i.displayLabel??i.label,l=_5(i,t?.[i.label],a);l!==null&&r.push(`${s} ${l}`)}return r.join(" \xB7 ")}function _5(e,t,a){const r=(Array.isArray(t)?t:t===void 0?[]:[t]).filter(i=>i!==dn);return r.length===0?e.allOption?e.allLabel??a:null:r.map(i=>w5(e,i)).join(", ")}function w5(e,t){const a=[...e.items??[],...(e.groups??[]).flat()];for(const r of a)if(r!=null){if(typeof r=="string"){if(r===t)return r;continue}if(r.value===t)return r.displayLabel??r.labels?.join(" ")??r.value}return t}function Dn({title:e,titleLevel:t=2,headerAction:a,headerSummary:r,collapsible:i=!1,defaultCollapsed:s=!1,collapsed:l,onCollapsedChange:u,footer:c,sections:d,selected:m={},onSelect:p,align:C,sectionAlign:y,className:v}){const g=(C??(y==="vertical"?"newline":"inline"))==="inline",{t:h}=xe.useTranslation(),[x,f]=o.useState(s),w=l??x,b=()=>{const E=!w;f(E),u?.(E)},B=E=>{if(!i)return;const O=E.target;!O||typeof O.closest!="function"||O.closest(".filter-panel__collapse-toggle")||O.closest('button, a, input, select, textarea, label, [role="radiogroup"], [role="button"], [role="menu"]')||b()},_=o.useMemo(()=>r!==void 0||!w?"":x5(d,m,h("common.all","\uC804\uCCB4")),[r,w,d,m,h]),A=r??(_?n.jsx("span",{className:"filter-panel__header-summary body-3",children:_}):null),k=e||a||r||i,N=o.useId(),S=t?`h${t}`:"span";return n.jsxs("div",{className:we("filter-panel",i?"filter-panel--collapsible":"",w?"filter-panel--collapsed":"",v),role:typeof e=="string"&&e?"group":void 0,"aria-labelledby":typeof e=="string"&&e?N:void 0,children:[k&&n.jsxs("div",{className:"filter-panel__header",onClick:i?B:void 0,children:[n.jsx("div",{className:"filter-panel__title-row",children:e&&n.jsx(S,{id:N,className:"filter-panel__title h4",children:e})}),n.jsxs("div",{className:"filter-panel__header-actions",children:[w?A:a,i&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:w?"chevron-down":"chevron-up",className:"filter-panel__collapse-toggle",ariaLabel:w?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),showTooltipInfo:w?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),"aria-expanded":!w,onClick:b})]})]}),!w&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:we("filter-panel__sections",g?"filter-panel__sections--row":""),children:d.map(E=>{const O=m[E.label],F=O===void 0||(Array.isArray(O)?O.length===0:!1),Y=(E.items??[]).filter(L=>L!=null);E.allOption&&Y.some(L=>(typeof L=="string"?L:L.value)===dn)&&Zt(`filter-panel-all-value:${E.label}`,`[FilterPanel] '${E.label}' \uC808\uC5D0 allOption \uACFC \uAC12 '${dn}' \uC778 \uBCF4\uAE30\uAC00 \uD568\uAED8 \uC788\uB2E4 \u2014 \uB450 \uC120\uD0DD\uC774 \uAD6C\uBCC4\uB418\uC9C0 \uC54A\uB294\uB2E4. \uBCF4\uAE30 \uAC12\uC744 \uBC14\uAFD4\uB77C.`);const M=L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"&&!!L.disabled,U=typeof L!="string"?L.labels:void 0,z=typeof L!="string"?L.displayLabel:void 0,q=typeof L!="string"?L.tooltip:void 0,$=typeof L!="string"?L.descriptionTooltip:void 0,V=typeof L!="string"?L.shape:void 0,H=Array.isArray(O)?O.includes(P):O===P;return n.jsx(me,{htmlType:"button",size:"keyboard",label:U??z??P,type:E.itemType??(U?"bar":P.length===1?"dot":void 0),selected:H,disabled:G,shape:V,showTooltipInfo:!!q,tooltipInfoText:q,tooltipDescription:$,onClick:()=>p?.(P,E.label)},P)};return n.jsxs(o.Fragment,{children:[E.groupLabel&&n.jsxs("div",{className:"filter-panel__group-label-row",children:[n.jsx("div",{className:"filter-panel__group-label body-2",children:E.groupLabel}),E.groupAction]}),n.jsxs("div",{className:we("filter-panel__section",E.layout==="row"?"filter-panel__section--row":"",E.block?"filter-panel__section--block":""),children:[n.jsxs("div",{className:"filter-panel__section-label-row",children:[n.jsx("span",{className:"filter-panel__section-label body-3",children:E.displayLabel??E.label}),E.labelAction??(E.labelInfo?n.jsx(La,{...E.labelInfo}):null)]}),E.type==="note"?n.jsx("div",{className:"filter-panel__note body-3",children:E.content}):E.type==="input"?n.jsx(Zn,{className:"filter-panel__textfield",placeholder:E.placeholder,ariaLabel:E.displayLabel??E.label,value:m[E.label]??"",onChange:L=>p?.(L,E.label),error:E.error}):!E.multiple&&E.display==="segmented"?n.jsx(gn,{ariaLabel:E.displayLabel??E.label,options:[...E.allOption?[{key:dn,label:E.allLabel??h("common.all","\uC804\uCCB4"),disabled:E.allOptionDisabled}]:[],...Y.map(L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"?L.displayLabel:void 0,U=typeof L!="string"?L.disabled:void 0;return{key:P,label:G??P,disabled:U}})],value:F&&E.allOption?dn:m[E.label]??"",onChange:L=>p?.(L,E.label),size:32}):!E.multiple&&E.display==="dropdown"?n.jsx(pn,{className:"filter-panel__dropdown",ariaLabel:typeof E.label=="string"?E.label:void 0,size:40,options:[...E.allOption?[{value:dn,label:E.allLabel??h("common.all","\uC804\uCCB4"),disabled:E.allOptionDisabled}]:[],...Y.map(L=>{const P=typeof L=="string"?L:L.value,G=typeof L!="string"?L.displayLabel:void 0,U=typeof L!="string"?L.disabled:void 0;return{value:P,label:G??P,disabled:U}})],value:F&&E.allOption?dn:m[E.label],onChange:L=>p?.(L,E.label)}):n.jsxs("div",{className:E.groups?"filter-panel__item-groups":"filter-panel__items",children:[E.allOption&&!E.groups&&n.jsx(me,{htmlType:"button",size:"keyboard",label:E.allLabel??h("common.all","\uC804\uCCB4"),selected:F,disabled:E.allOptionDisabled,onClick:()=>p?.(dn,E.label)}),E.groups?E.groups.map((L,P)=>n.jsxs("div",{className:"filter-panel__item-group",children:[P===0&&E.allOption&&n.jsx(me,{htmlType:"button",size:"keyboard",label:E.allLabel??h("common.all","\uC804\uCCB4"),selected:F,disabled:E.allOptionDisabled,onClick:()=>p?.(dn,E.label)}),L.filter(G=>G!=null).map(M)]},P)):Y.map(M)]})]})]},E.label)})}),c!=null&&c!==!1&&n.jsx("div",{className:"filter-panel__footer body-3",children:c})]})]})}const A5=[1,2,3,4,5,6,7,8,9,10,11,12],Iu=[8,4,2,1],rn="show",yn="hide";function Ou(e,t){return{label:e("wordTable.filter.composition","\uAD6C\uC131"),items:[{value:"image",disabled:!t.hasImage,displayLabel:e("wordTable.filter.image","\uC774\uBBF8\uC9C0")},{value:"word",displayLabel:e("wordTable.filter.word","\uB2E8\uC5B4")},{value:"standardPron",displayLabel:e("wordTable.filter.standardPron","\uD45C\uC900 \uBC1C\uC74C")},{value:"colloquialPron",disabled:!t.hasColloquial,displayLabel:e("wordTable.filter.colloquialPron","\uAD6C\uC5B4\uCCB4 \uBC1C\uC74C")}],multiple:!0,allOption:!0}}function Hu(e){return{label:e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5"),items:[{value:"landscape",displayLabel:e("wordTable.filter.landscape","\uAC00\uB85C")},{value:"portrait",displayLabel:e("wordTable.filter.portrait","\uC138\uB85C")}],display:"segmented"}}function zu(e){return{label:e("wordTable.filter.border","\uC678\uACFD\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Vu(e){return{label:e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Wu(e){return{label:e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function qu(e){return{label:e("wordTable.filter.cutLine","\uC808\uCDE8\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:"dashed",displayLabel:e("wordTable.filter.dotted","\uC810\uC120")},{value:"corner",displayLabel:e("wordTable.filter.corner","\uCF54\uB108")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Uu(e){return{label:e("wordPrint.divLine","\uB300\uB9BD\uC120"),items:[{value:rn,displayLabel:e("wordTable.filter.show","\uD45C\uC2DC")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Gu(e,t){return{label:e(t.hasPairs?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord"),items:[t.itemCount,...Iu.filter(a=>a<t.itemCount)].map(a=>({value:`${a}\uAC1C`,displayLabel:e("wordTable.filter.itemsPerPageOption",{count:a})})),display:"segmented"}}function Ku(e,t){return e===t||!Iu.includes(e)?Number.POSITIVE_INFINITY:e}function B5(e){return{label:e("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638"),items:[{value:"left",displayLabel:e("wordTable.filter.pageNumberLeft","\uC67C\uCABD")},{value:"center",displayLabel:e("wordTable.filter.pageNumberCenter","\uC911\uC559")},{value:"right",displayLabel:e("wordTable.filter.pageNumberRight","\uC624\uB978\uCABD")},{value:yn,displayLabel:e("wordTable.filter.hide","\uBBF8\uD45C\uC2DC")}],display:"segmented"}}function Yu(e){return e==="left"||e==="center"||e==="right"?e:"none"}function Zu(e,t){return{[e("wordTable.filter.composition","\uAD6C\uC131")]:t.contentTypes,[e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")]:t.orientation,[e("wordTable.filter.border","\uC678\uACFD\uC120")]:t.showOutline?rn:yn,[e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")]:t.cutLine,[e("wordPrint.divLine","\uB300\uB9BD\uC120")]:t.showDivLine?rn:yn,...t.showTopInfo!=null?{[e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4")]:t.showTopInfo?rn:yn}:{},...t.showBottomInfo!=null?{[e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4")]:t.showBottomInfo?rn:yn}:{}}}function Xu(e,t,a,r){return a===e("wordTable.filter.composition","\uAD6C\uC131")?t===dn?(r.setContentTypes(()=>[]),!0):(r.setContentTypes(i=>i.includes(t)?i.filter(s=>s!==t):[...i,t]),!0):a===e("wordTable.filter.paperOrientation","\uC6A9\uC9C0 \uBC29\uD5A5")?(r.setOrientation(t==="landscape"?"landscape":"portrait"),!0):a===e("wordTable.filter.border","\uC678\uACFD\uC120")?(r.setShowOutline(t===rn),!0):a===e("wordTable.filter.cutLine","\uC808\uCDE8\uC120")?(r.setCutLine(t),!0):a===e("wordPrint.divLine","\uB300\uB9BD\uC120")?(r.setShowDivLine(t===rn),!0):a===e("wordTable.filter.topInfo","\uC0C1\uB2E8 \uC815\uBCF4")?(r.setShowTopInfo?.(t===rn),!0):a===e("wordTable.filter.bottomInfo","\uD558\uB2E8 \uC815\uBCF4")?(r.setShowBottomInfo?.(t===rn),!0):!1}function k5(e){return"sections"in e}function Oo(e){const{t}=xe.useTranslation(),{title:a,className:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c}=e,d={collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c};if(k5(e))return n.jsx(Dn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:e.sections,selected:e.selected,onSelect:e.onSelect,...d,align:"inline"});const{hasImage:m,hasColloquial:p,contentTypes:C,orientation:y,showOutline:v,cutLine:g,showDivLine:h,setters:x,showCutLine:f=!1,showDivLine2:w=!1,middleSections:b=[],extraSelected:B={},onExtraSelect:_,showPaperBands:A=!1,showTopInfo:k=!0,showBottomInfo:N=!0}=e,S=[Ou(t,{hasImage:m,hasColloquial:p}),Hu(t),...b,zu(t),...f?[qu(t)]:[],...w?[Uu(t)]:[],...A?[Vu(t),Wu(t)]:[]],E={...Zu(t,{contentTypes:C,orientation:y,showOutline:v,cutLine:g,showDivLine:h,showTopInfo:k,showBottomInfo:N}),...B},O=(F,Y)=>{Xu(t,F,Y,x)||_?.(F,Y)};return n.jsx(Dn,{className:r,title:a??t("wordTable.filterTitle","\uD45C \uC124\uC815"),sections:S,selected:E,onSelect:O,...d,sectionAlign:"horizontal"})}function Ho(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function N5(e){return Ho(e).replace(/"/g,""").replace(/'/g,"'")}function zo(e){return e.replace(/[\\/:*?"<>|]/g,"_").trim()}let pr=null,ha=null;function E5(e,t,a,r="",i=""){if(e.length===0||ha&&ha.iframe.isConnected&&Date.now()-ha.at<1e4)return;const s=r?zo(r):"";pr?.();let l=null;if(s){const d=document.title;document.title=s,l=()=>{document.title=d,window.removeEventListener("afterprint",l),pr===l&&(pr=null)},pr=l,window.addEventListener("afterprint",l)}const u=document.createElement("iframe");u.style.cssText="position:fixed;left:-10000px;top:0;width:1200px;height:900px;border:0;",document.body.appendChild(u);const c=u.contentDocument;if(!c){u.remove();return}ha={iframe:u,at:Date.now()},c.open(),c.write(Vo(e,t,a,!0,s,i)),c.close(),u.contentWindow?.addEventListener("afterprint",()=>{l?.(),setTimeout(()=>{u.remove(),ha?.iframe===u&&(ha=null)},0)})}function Vo(e,t,a,r=!1,i="",s=""){i=i?zo(i):"";const l=Array.from(document.styleSheets).flatMap(p=>{try{return Array.from(p.cssRules).map(C=>C.cssText)}catch{return[]}}).join(`
|
|
860
|
+
`),u="light",c=(()=>{try{return document.documentElement.lang||""}catch{return""}})(),d=s?`<div class="paper-head">${Ho(s)}</div>`:"",m=e.map(p=>{const C=p.cloneNode(!0);return C.querySelectorAll('[data-play-state="play"]').forEach(y=>y.style.display=""),C.querySelectorAll('[data-play-state="pause"]').forEach(y=>y.style.display="none"),C.querySelectorAll(".word-table-cell__score-slot:not(.word-table-cell__score-slot--on)").forEach(y=>y.remove()),C.querySelectorAll(".word-table-cell__spinner").forEach(y=>y.remove()),C.querySelectorAll("img").forEach(y=>{y.style.opacity==="0"&&(y.setAttribute("onload","this.style.opacity=''"),y.setAttribute("onerror","this.style.visibility='hidden'"))}),`<div class="paper-wrap">${d}${C.outerHTML}</div>`}).join(`
|
|
861
861
|
`);return`<!DOCTYPE html>
|
|
862
|
-
<html data-theme="${u}">
|
|
862
|
+
<html${c?` lang="${N5(c)}"`:""} data-theme="${u}">
|
|
863
863
|
<head>
|
|
864
864
|
<meta charset="utf-8">
|
|
865
|
-
${i?`<title>${
|
|
865
|
+
${i?`<title>${Ho(i)}</title>`:""}
|
|
866
866
|
<style>${l}</style>
|
|
867
867
|
<style>
|
|
868
868
|
* { box-sizing: border-box; }
|
|
@@ -920,7 +920,7 @@ ${b.badge}`:b.badge:void 0;if(x&&c(b.code))return null;if(!b.badge&&!m)return p(
|
|
|
920
920
|
</style>
|
|
921
921
|
</head>
|
|
922
922
|
<body class="ihabdevteam-core-scope">
|
|
923
|
-
${
|
|
923
|
+
${m}
|
|
924
924
|
<button class="button button48 button48--dot button--variant-default button--align-center new-window-close" onclick="window.close()"><span class="button__icon button__icon--medium"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="button__icon-svg"><path d="M18 6 6 18"/><path d="m6 6 12 12"/></svg></span></button>
|
|
925
925
|
<script>
|
|
926
926
|
function scale() {
|
|
@@ -1047,17 +1047,17 @@ ${b.badge}`:b.badge:void 0;if(x&&c(b.code))return null;if(!b.badge&&!m)return p(
|
|
|
1047
1047
|
`:""}
|
|
1048
1048
|
<\/script>
|
|
1049
1049
|
</body>
|
|
1050
|
-
</html>`}const E5=1e3;function Vo({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:i,header:s=""}){const{t:l}=xe.useTranslation(),u=o.useCallback(()=>{N5(e(),t,a,r,s)},[e,t,a,r,s]),c=o.useCallback(()=>{const m=e();if(m.length===0)return;const p=window.open("","_blank");if(!p){i?.();return}p.document.write(zo(m,t,a,!1,r,s)),p.document.close()},[e,t,a,r,i,s]),d=o.useCallback(()=>{const m=e();if(m.length===0)return;const p=zo(m,t,a,!1,r,s),C=new Blob([p],{type:"text/html;charset=utf-8"}),_=URL.createObjectURL(C),y=(r?Ho(r):"")||l("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C"),g=Object.assign(document.createElement("a"),{href:_,download:`${y}.html`});document.body.appendChild(g),g.click(),document.body.removeChild(g),setTimeout(()=>URL.revokeObjectURL(_),E5)},[e,t,a,r,s,l]);return{print:u,openNewWindow:c,downloadHtml:d}}function Ju(e,t){const{t:a}=xe.useTranslation(),r=t?.paperBands===!0,[i,s]=o.useState("landscape"),[l,u]=o.useState(["image","word","standardPron"]),[c,d]=o.useState("show"),[m,p]=o.useState(!0),[C,_]=o.useState(!0),[y,g]=o.useState(!0),[h,v]=o.useState(!0),[f,w]=o.useState(8),[b,B]=o.useState("right"),x=e.length,A=e.some(G=>(G.words??[]).length>1),k=e.some(G=>(G.words??[]).some(U=>!!U.colloquialLabel)),N=Math.min(f,Math.max(x,1)),S=o.useMemo(()=>Du(e,N),[e,N]),E=S.length>1,O=N,[F,Y]=o.useState(!1);o.useEffect(()=>{let G=!1;if(!aa()){Y(!1);return}return Promise.all(e.flatMap(U=>(U.words??[]).map(z=>ci(z.label,z.homonum)))).then(U=>{G||Y(U.some(Boolean))},()=>{}),()=>{G=!0}},[e]);const M=o.useMemo(()=>[Iu(a,{hasImage:F,hasColloquial:k}),Ou(a),...x>0?[Uu(a,{hasPairs:A,itemCount:x})]:[],Hu(a),...O>1?[Wu(a)]:[],...A?[qu(a)]:[],...r?[zu(a),Vu(a)]:[]],[a,F,k,x,A,E,O,r]),L={...Yu(a,{contentTypes:l,orientation:i,showOutline:m,cutLine:c,showDivLine:h,showTopInfo:C,showBottomInfo:y}),...x>0?{[a(A?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${N}\uAC1C`}:{},...E?{[a("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:b}:{}},P=o.useCallback((G,U)=>{Zu(a,G,U,{setContentTypes:u,setOrientation:s,setShowOutline:p,setCutLine:d,setShowDivLine:v,setShowTopInfo:_,setShowBottomInfo:g})||(U===a("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||U===a("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?w(Gu(parseInt(G),x)):U===a("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&B(Ku(G)))},[a,x]);return{settings:{orientation:i,contentTypes:l,cutLine:c,showOutline:m,showDivLine:h,count:O,showTopInfo:C,showBottomInfo:y},filterSections:M,filterSelected:L,handleSelect:P,pages:S,isPaginated:E,pageNumberPosition:b}}function D5({items:e,words:t,title:a,subtitle:r,emptyText:i,buttons:s,renderButtons:l,renderFooter:u,footerClassName:c,footerLayout:d,printFileName:m,showSettings:p,autoPrint:C,className:_,onClose:y,scoring:g=!1,onScoreChange:h,printHeader:v,brand:f,code:w,beforeClose:b}){const{t:B}=xe.useTranslation(),x=o.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(re=>typeof re=="string"&&re.length>0).map((re,Ne)=>({id:`${re}-${Ne}`,words:[{label:re}]})),[e,t]),{settings:A,filterSections:k,filterSelected:N,handleSelect:S,pages:E,isPaginated:O,pageNumberPosition:F}=Ju(x,{paperBands:!!f?.show}),Y=o.useMemo(()=>Eu(E.map(re=>re.length)),[E]),[M,L]=o.useState({}),P=o.useCallback((re,Ne)=>{L(K=>({...K,[cr(re)]:Bu(K[cr(re)]??null,Ne)}))},[]),G=o.useRef(h);o.useEffect(()=>{G.current=h});const U=o.useRef(M);o.useEffect(()=>{U.current!==M&&(U.current=M,G.current?.(Ro(M)))},[M]);const z=o.useMemo(()=>Ro(M),[M]),q=o.useRef(null),{toastMessage:$,toastKey:V,showWarning:H,clearToast:T}=xl("warning"),D=o.useRef([]),R=o.useCallback(()=>O?D.current.filter(re=>re!==null):q.current?[q.current]:[],[O]),{print:I,openNewWindow:W}=Vo({getElements:R,paperW:pa[A.orientation].width,paperH:pa[A.orientation].height,fileName:m??"",header:v??"",onPopupBlocked:()=>H(B("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),ee=o.useMemo(()=>u?void 0:l?l({print:I,openNewWindow:W}):m?[{label:B("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>W()},{label:B("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>I()},...s??[]]:s,[u,l,m,s,B,I,W]),oe=o.useMemo(()=>u?u({print:I,openNewWindow:W}):void 0,[u,I,W]),ce=o.useRef(!1),J=o.useRef(I);return o.useEffect(()=>{J.current=I},[I]),o.useEffect(()=>{if(!C||ce.current)return;const re=window.setTimeout(()=>{ce.current=!0,J.current()},100);return()=>window.clearTimeout(re)},[C]),n.jsxs(Fn,{title:a??B("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:we("word-table-popup",_),buttons:ee,footer:oe,footerClassName:c,footerLayout:d,beforeClose:b,onClose:y,children:[x.length>0?n.jsxs("div",{className:"word-table-popup__body",children:[p&&n.jsx(Oo,{sections:k,selected:N,onSelect:S}),O?n.jsx("div",{className:"word-table-popup__pages",children:E.map((re,Ne)=>n.jsx(ma,{items:re,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:K=>{D.current[Ne]=K},pageNumber:{current:Ne+1,total:E.length},pageNumberPosition:F,brand:f&&{...f,top:A.showTopInfo,bottom:A.showBottomInfo},code:w,scoring:g,scoreIndexOffset:Y[Ne],marks:z,onMarkClick:P},Ne))}):n.jsx("div",{className:"word-table-popup__table",children:n.jsx(ma,{items:x,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:q,fitHeight:!0,scoring:g,marks:z,onMarkClick:P,brand:f&&{...f,top:A.showTopInfo,bottom:A.showBottomInfo},code:w})})]}):n.jsx("p",{className:"word-table-popup__empty body-3",children:i??B("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsx(ua,{message:$,position:"top",onClose:T},V)]})}const S5=new Set(["x","triangle"]);function j5(e,t){const a=[];for(let r=0;r<e.length;r++){const i=t[String(r)];i&&S5.has(i)&&a.push(e[r])}return a}const T5=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;function Qu(e){const t=e.name.trim(),a=e.reviewRound;if(typeof a=="number"&&Number.isFinite(a)&&a>=0){const s=Math.floor(a);if(s===0)return{base:t,round:1};const l=(s===1?/\s*복습\s*\d{2}\.\d{2}$/:new RegExp(`(?:^|\\s)${s}\uCC28\\s*\uBCF5\uC2B5\\s*\\d{2}\\.\\d{2}$`)).exec(t);return{base:l?t.slice(0,l.index).trim():t,round:s+1}}let r=t,i=1;for(;;){const s=T5.exec(r);if(!s)break;i=Math.max(i,(s[1]?Number(s[1]):1)+1),r=r.slice(0,s.index).trim()}return{base:r,round:i}}function M5(e,t){const[,a,r]=Zr(t).split("-"),i=`${a}.${r}`,{base:s,round:l}=Qu(typeof e=="string"?{name:e}:e),u=l>=2?`${l}\uCC28 `:"";return`${s||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${i}`}function L5(e){return{reviewOf:e.reviewOf??e.id??void 0,reviewRound:Qu(e).round}}function $5(e,t){const a={};for(const[r,i]of Object.entries(t)){if(i!=="o"&&i!=="triangle"&&i!=="x")continue;const s=Number(r),l=e[s];l&&(a[r]=l)}return a}function R5(e){return e.map(t=>t.label).join(" / ")}function P5(e){return e.map(t=>t.homonum!=null?`${t.label}#${t.homonum}`:t.label).join(" / ")}function ec(e){return e.split(" / ").map(t=>t.replace(/#\d+$/,"")).join(" / ")}function F5(e,t,a){const r=wi(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function tc(e,t,a){return a===0?0:(e+t*.5)/a}function I5(e){const t=new Map,a=[...e].sort((i,s)=>i.scoredAt.localeCompare(s.scoredAt));for(const i of a)for(const[s,l]of Object.entries(i.marks)){const u=i.labels?.[s];if(!u)continue;const c=t.get(u)??{o:0,triangle:0,x:0,latest:l,latestAt:i.scoredAt};if(l==="o")c.o++;else if(l==="triangle")c.triangle++;else if(l==="x")c.x++;else continue;c.latest=l,c.latestAt=i.scoredAt,t.set(u,c)}const r=[];for(const[i,s]of t){const l=s.o+s.triangle+s.x;r.push({label:ec(i),key:i,tried:l,o:s.o,triangle:s.triangle,x:s.x,rate:tc(s.o,s.triangle,l),latest:s.latest,latestAt:s.latestAt})}return r.sort((i,s)=>i.rate-s.rate||s.tried-i.tried||an(i.label,s.label)||an(i.key??i.label,s.key??s.label)),r}function O5(e){const t=new Map;for(const r of e){const i=r.tableId??`name:${r.tableName}`,s=t.get(i)??{tableName:r.tableName,tableId:r.tableId,rows:[]};s.rows.push(r),t.set(i,s)}const a=[];for(const r of t.values()){const i=u=>Object.values(u.marks).filter(c=>c==="o"||c==="triangle"||c==="x").length,s=r.rows.filter(u=>i(u)>0).sort((u,c)=>u.scoredAt.localeCompare(c.scoredAt));if(s.length===0)continue;const l=s.map(u=>{const c=Object.values(u.marks),d=c.filter(p=>p==="o").length,m=c.filter(p=>p==="triangle").length;return tc(d,m,i(u))});a.push({tableName:r.tableName,tableId:r.tableId,rates:l,times:s.map(u=>u.scoredAt),delta:l.length>=2?l[l.length-1]-l[0]:null})}return a.sort((r,i)=>(i.times[i.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function H5(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function z5(e,t){if(e==null||t==null||e===""||t==="")return 0;if(typeof e=="number"&&typeof t=="number")return e-t;const a=String(e),r=String(t);return+(a>r)-+(a<r)}function V5(e){const t=new Map;let a=0,r=0;const i=e.map((l,u)=>({r:l,at:u})).sort((l,u)=>l.r.answeredAt.localeCompare(u.r.answeredAt)||z5(l.r.id,u.r.id)||l.at-u.at).map(l=>l.r);for(const l of i){if(l.isCorrect==null)continue;const u=l.itemTitle?.trim();if(!u){r++;continue}a++;const c=l.itemId?.trim()||u,d=`${l.trainingType}|${c}`,m=t.get(d)??{trainingType:l.trainingType,itemId:c,title:u,tried:0,wrong:0,latestCorrect:l.isCorrect,latestAt:l.answeredAt,lastSelected:l.selected,setIds:[]};if(m.tried++,l.isCorrect||m.wrong++,m.title=u,m.latestCorrect=l.isCorrect,m.latestAt=l.answeredAt,m.lastSelected=l.selected,l.setId){const p=m.setIds.indexOf(l.setId);p>0&&m.setIds.splice(p,1),p!==0&&m.setIds.unshift(l.setId)}t.set(d,m)}const s=[...t.entries()].map(([l,u])=>({key:l,trainingType:u.trainingType,itemId:u.itemId,title:u.title,tried:u.tried,wrong:u.wrong,rate:u.tried===0?0:(u.tried-u.wrong)/u.tried,latestCorrect:u.latestCorrect,latestAt:u.latestAt,lastSelected:u.lastSelected,setIds:u.setIds}));return s.sort((l,u)=>l.rate-u.rate||u.tried-l.tried||an(l.title,u.title)),{items:s,counted:a,skippedNoTitle:r}}function W5(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function q5(e){const t=new Map;for(const r of e){const i=t.get(r.trainingType)??[];i.push(r),t.set(r.trainingType,i)}const a=[...t.entries()].map(([r,i])=>({trainingType:r,items:i,pending:i.filter(s=>!s.latestCorrect).length}));return a.sort((r,i)=>i.pending-r.pending||r.trainingType.localeCompare(i.trainingType)),a}const Wo=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function U5(e){const t=new Map;let a=0;for(const s of e){if(s.latestCorrect)continue;const l=s.setIds[0];if(!l){a++;continue}const u=`${s.trainingType}|${l}`,c=t.get(u)??{setId:l,trainingType:s.trainingType,pending:0};c.pending++,t.set(u,c)}const r=(s,l)=>l.pending-s.pending||s.trainingType.localeCompare(l.trainingType)||s.setId.localeCompare(l.setId),i=[...t.values()];return{sentence:i.filter(s=>Wo.includes(s.trainingType)).sort(r),word:i.filter(s=>!Wo.includes(s.trainingType)).sort(r),noSet:a}}function G5(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const i=[];for(const s of e){const l=new Set,u=[];for(const c of s.cellLabels)r.has(c)&&!l.has(c)&&(l.add(c),u.push(c));u.length!==0&&i.push({id:s.id,name:s.name,kind:s.kind,covered:u,totalCells:s.cellLabels.length})}return i.sort((s,l)=>l.covered.length-s.covered.length||s.totalCells-l.totalCells||an(s.name,l.name)),i.slice(0,Math.max(0,a))}function K5(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function Y5(e,t){const a=new Map;for(const i of e)for(const s of i.cells){const l=i.labelOf(s);a.has(l)||a.set(l,s)}const r=[];for(const i of t){const s=a.get(i);s!==void 0&&r.push(s)}return r}function qo(e,t,a){return typeof e=="string"&&e?e:t.replace(/\{\{(\w+)\}\}/g,(r,i)=>String(a[i]))}function Z5(e,t){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),i=a%60;return t?t(r,i):r>0&&i>0?qo($t.t("customers.duration.minSec",{m:r,s:i,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s:i}):r>0?qo($t.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):qo($t.t("customers.duration.sec",{s:i,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s:i})}function X5(e,t){const a=[],r=new Set;for(const i of e){const s=t(i);r.has(s)||(r.add(s),a.push({key:s,value:i,pinned:!1}))}return a}function J5(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function Q5(e,t){return e.filter(a=>a.key!==t)}function e3(e,t,a){const r=e.filter(d=>d.pinned),i=new Set(r.map(d=>d.key)),s=e.length-r.length,l=[],u=new Set(i);for(const d of t){if(l.length>=s)break;const m=a(d);u.has(m)||(u.add(m),l.push({key:m,value:d,pinned:!1}))}const c=[...l];return e.map(d=>d.pinned?d:c.shift()).filter(d=>d!==void 0)}function t3(e){return e.map(t=>t.value)}function n3(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},i=t?.key?` icon-grid-menu__button--${t.key}`:"",s=o.useId();return n.jsxs("div",{className:`icon-grid-menu__button-wrapper${i}`,children:[n.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":s,children:n.jsx(at,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),n.jsx("span",{id:s,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function a3(e){const{categories:t=[],selected:a,onSelect:r,size:i="medium"}=e||{},s=a!==void 0,[l,u]=o.useState(()=>s?null:(t&&t[0]?.key)??null),c=s?a:l,d=o.useRef(r);o.useEffect(()=>{d.current=r});const m=o.useRef(!1),p=(t&&t[0]?.key)??null;o.useEffect(()=>{if(s||m.current||!p)return;m.current=!0;const _=l??p;l==null&&u(_),d.current?.(_)},[s,p]);const C=o.useCallback(_=>{const y=c===_?null:_;m.current=!0,s||u(y),r?.(y)},[c,s,r]);return n.jsx("div",{className:`icon-grid-menu icon-grid-menu--${i}`,children:(t||[]).map(_=>n.jsx(n3,{category:_,isSelected:c===_.key,onClick:()=>C(_.key)},_.key))})}function r3({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const i=r==="small"?32:40;return n.jsx("div",{className:`choice-chips choice-chips--${r}`,children:n.jsx("div",{className:"choice-chips__list",children:e.map(s=>n.jsx(me,{htmlType:"button",size:i,type:"bar",label:s.label,selected:t===s.key,className:"choice-chips__button",onClick:()=>a?.(s.key)},s.key))})})}function o3({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",i=a?.tel??"031-380-3724",{t:s}=xe.useTranslation();return n.jsx("footer",{className:"site-footer",children:n.jsxs("div",{className:"safearea",children:[n.jsxs("div",{className:"site-footer__top",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("div",{className:"site-footer__lead h3",children:s("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
1050
|
+
</html>`}const D5=1e3;function Wo({getElements:e,paperW:t,paperH:a,fileName:r="",onPopupBlocked:i,header:s=""}){const{t:l}=xe.useTranslation(),u=o.useCallback(()=>{E5(e(),t,a,r,s)},[e,t,a,r,s]),c=o.useCallback(()=>{const m=e();if(m.length===0)return;const p=window.open("","_blank");if(!p){i?.();return}p.document.write(Vo(m,t,a,!1,r,s)),p.document.close()},[e,t,a,r,i,s]),d=o.useCallback(()=>{const m=e();if(m.length===0)return;const p=Vo(m,t,a,!1,r,s),C=new Blob([p],{type:"text/html;charset=utf-8"}),y=URL.createObjectURL(C),v=(r?zo(r):"")||l("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C"),g=Object.assign(document.createElement("a"),{href:y,download:`${v}.html`});document.body.appendChild(g),g.click(),document.body.removeChild(g),setTimeout(()=>URL.revokeObjectURL(y),D5)},[e,t,a,r,s,l]);return{print:u,openNewWindow:c,downloadHtml:d}}function Ju(e,t){const{t:a}=xe.useTranslation(),r=t?.paperBands===!0,[i,s]=o.useState("landscape"),[l,u]=o.useState(["image","word","standardPron"]),[c,d]=o.useState("show"),[m,p]=o.useState(!0),[C,y]=o.useState(!0),[v,g]=o.useState(!0),[h,x]=o.useState(!0),[f,w]=o.useState(8),[b,B]=o.useState("right"),_=e.length,A=e.some(G=>(G.words??[]).length>1),k=e.some(G=>(G.words??[]).some(U=>!!U.colloquialLabel)),N=Math.min(f,Math.max(_,1)),S=o.useMemo(()=>Su(e,N),[e,N]),E=S.length>1,O=N,[F,Y]=o.useState(!1);o.useEffect(()=>{let G=!1;if(!aa()){Y(!1);return}return Promise.all(e.flatMap(U=>(U.words??[]).map(z=>di(z.label,z.homonum)))).then(U=>{G||Y(U.some(Boolean))},()=>{}),()=>{G=!0}},[e]);const M=o.useMemo(()=>[Ou(a,{hasImage:F,hasColloquial:k}),Hu(a),..._>0?[Gu(a,{hasPairs:A,itemCount:_})]:[],zu(a),...O>1?[qu(a)]:[],...A?[Uu(a)]:[],...r?[Vu(a),Wu(a)]:[]],[a,F,k,_,A,E,O,r]),L={...Zu(a,{contentTypes:l,orientation:i,showOutline:m,cutLine:c,showDivLine:h,showTopInfo:C,showBottomInfo:v}),..._>0?{[a(A?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${N}\uAC1C`}:{},...E?{[a("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:b}:{}},P=o.useCallback((G,U)=>{Xu(a,G,U,{setContentTypes:u,setOrientation:s,setShowOutline:p,setCutLine:d,setShowDivLine:x,setShowTopInfo:y,setShowBottomInfo:g})||(U===a("wordTable.filter.itemsPerPagePair","\uD398\uC774\uC9C0\uB2F9 \uB300\uB9BD\uC30D \uC218")||U===a("wordTable.filter.itemsPerPageWord","\uD398\uC774\uC9C0\uB2F9 \uB2E8\uC5B4 \uC218")?w(Ku(parseInt(G),_)):U===a("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&B(Yu(G)))},[a,_]);return{settings:{orientation:i,contentTypes:l,cutLine:c,showOutline:m,showDivLine:h,count:O,showTopInfo:C,showBottomInfo:v},filterSections:M,filterSelected:L,handleSelect:P,pages:S,isPaginated:E,pageNumberPosition:b}}function S5({items:e,words:t,title:a,subtitle:r,emptyText:i,buttons:s,renderButtons:l,renderFooter:u,footerClassName:c,footerLayout:d,printFileName:m,showSettings:p,autoPrint:C,className:y,onClose:v,scoring:g=!1,onScoreChange:h,printHeader:x,brand:f,code:w,beforeClose:b}){const{t:B}=xe.useTranslation(),_=o.useMemo(()=>Array.isArray(e)?e:(Array.isArray(t)?t:[]).filter(re=>typeof re=="string"&&re.length>0).map((re,Ne)=>({id:`${re}-${Ne}`,words:[{label:re}]})),[e,t]),{settings:A,filterSections:k,filterSelected:N,handleSelect:S,pages:E,isPaginated:O,pageNumberPosition:F}=Ju(_,{paperBands:!!f?.show}),Y=o.useMemo(()=>Du(E.map(re=>re.length)),[E]),[M,L]=o.useState({}),P=o.useCallback((re,Ne)=>{L(K=>({...K,[cr(re)]:ku(K[cr(re)]??null,Ne)}))},[]),G=o.useRef(h);o.useEffect(()=>{G.current=h});const U=o.useRef(M);o.useEffect(()=>{U.current!==M&&(U.current=M,G.current?.(Ro(M)))},[M]);const z=o.useMemo(()=>Ro(M),[M]),q=o.useRef(null),{toastMessage:$,toastKey:V,showWarning:H,clearToast:T}=_l("warning"),D=o.useRef([]),R=o.useCallback(()=>O?D.current.filter(re=>re!==null):q.current?[q.current]:[],[O]),{print:I,openNewWindow:W}=Wo({getElements:R,paperW:pa[A.orientation].width,paperH:pa[A.orientation].height,fileName:m??"",header:x??"",onPopupBlocked:()=>H(B("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}),ee=o.useMemo(()=>u?void 0:l?l({print:I,openNewWindow:W}):m?[{label:B("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),variant:"default",onClick:()=>W()},{label:B("wordTable.print","\uC778\uC1C4\uD558\uAE30"),variant:"default",onClick:()=>I()},...s??[]]:s,[u,l,m,s,B,I,W]),oe=o.useMemo(()=>u?u({print:I,openNewWindow:W}):void 0,[u,I,W]),ce=o.useRef(!1),J=o.useRef(I);return o.useEffect(()=>{J.current=I},[I]),o.useEffect(()=>{if(!C||ce.current)return;const re=window.setTimeout(()=>{ce.current=!0,J.current()},100);return()=>window.clearTimeout(re)},[C]),n.jsxs(Fn,{title:a??B("keyWords.title","\uC8FC\uC694 \uB2E8\uC5B4"),subtitle:r,size:"large",className:we("word-table-popup",y),buttons:ee,footer:oe,footerClassName:c,footerLayout:d,beforeClose:b,onClose:v,children:[_.length>0?n.jsxs("div",{className:"word-table-popup__body",children:[p&&n.jsx(Oo,{sections:k,selected:N,onSelect:S}),O?n.jsx("div",{className:"word-table-popup__pages",children:E.map((re,Ne)=>n.jsx(ma,{items:re,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:K=>{D.current[Ne]=K},pageNumber:{current:Ne+1,total:E.length},pageNumberPosition:F,brand:f&&{...f,top:A.showTopInfo,bottom:A.showBottomInfo},code:w,scoring:g,scoreIndexOffset:Y[Ne],marks:z,onMarkClick:P},Ne))}):n.jsx("div",{className:"word-table-popup__table",children:n.jsx(ma,{items:_,orientation:A.orientation,contentTypes:A.contentTypes,cutLine:A.cutLine,showOutline:A.showOutline,showDivLine:A.showDivLine,count:A.count,contentRef:q,fitHeight:!0,scoring:g,marks:z,onMarkClick:P,brand:f&&{...f,top:A.showTopInfo,bottom:A.showBottomInfo},code:w})})]}):n.jsx("p",{className:"word-table-popup__empty body-3",children:i??B("keyWords.empty","\uCD94\uCD9C\uB41C \uC8FC\uC694 \uB2E8\uC5B4\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsx(ua,{message:$,position:"top",onClose:T},V)]})}const j5=new Set(["x","triangle"]);function T5(e,t){const a=[];for(let r=0;r<e.length;r++){const i=t[String(r)];i&&j5.has(i)&&a.push(e[r])}return a}const M5=/\s*(?:(\d+)차\s*)?복습\s*\d{2}\.\d{2}$/;function Qu(e){const t=e.name.trim(),a=e.reviewRound;if(typeof a=="number"&&Number.isFinite(a)&&a>=0){const s=Math.floor(a);if(s===0)return{base:t,round:1};const l=(s===1?/\s*복습\s*\d{2}\.\d{2}$/:new RegExp(`(?:^|\\s)${s}\uCC28\\s*\uBCF5\uC2B5\\s*\\d{2}\\.\\d{2}$`)).exec(t);return{base:l?t.slice(0,l.index).trim():t,round:s+1}}let r=t,i=1;for(;;){const s=M5.exec(r);if(!s)break;i=Math.max(i,(s[1]?Number(s[1]):1)+1),r=r.slice(0,s.index).trim()}return{base:r,round:i}}function L5(e,t){const[,a,r]=Zr(t).split("-"),i=`${a}.${r}`,{base:s,round:l}=Qu(typeof e=="string"?{name:e}:e),u=l>=2?`${l}\uCC28 `:"";return`${s||"\uB2E8\uC5B4\uD45C"} ${u}\uBCF5\uC2B5 ${i}`}function $5(e){return{reviewOf:e.reviewOf??e.id??void 0,reviewRound:Qu(e).round}}function R5(e,t){const a={};for(const[r,i]of Object.entries(t)){if(i!=="o"&&i!=="triangle"&&i!=="x")continue;const s=Number(r),l=e[s];l&&(a[r]=l)}return a}function P5(e){return e.map(t=>t.label).join(" / ")}function F5(e){return e.map(t=>t.homonum!=null?`${t.label}#${t.homonum}`:t.label).join(" / ")}function ec(e){return e.split(" / ").map(t=>t.replace(/#\d+$/,"")).join(" / ")}function I5(e,t,a){const r=Ai(a);return[e.trim(),r,t.trim()].filter(Boolean).join(" \xB7 ")}function tc(e,t,a){return a===0?0:(e+t*.5)/a}function O5(e){const t=new Map,a=[...e].sort((i,s)=>i.scoredAt.localeCompare(s.scoredAt));for(const i of a)for(const[s,l]of Object.entries(i.marks)){const u=i.labels?.[s];if(!u)continue;const c=t.get(u)??{o:0,triangle:0,x:0,latest:l,latestAt:i.scoredAt};if(l==="o")c.o++;else if(l==="triangle")c.triangle++;else if(l==="x")c.x++;else continue;c.latest=l,c.latestAt=i.scoredAt,t.set(u,c)}const r=[];for(const[i,s]of t){const l=s.o+s.triangle+s.x;r.push({label:ec(i),key:i,tried:l,o:s.o,triangle:s.triangle,x:s.x,rate:tc(s.o,s.triangle,l),latest:s.latest,latestAt:s.latestAt})}return r.sort((i,s)=>i.rate-s.rate||s.tried-i.tried||an(i.label,s.label)||an(i.key??i.label,s.key??s.label)),r}function H5(e){const t=new Map;for(const r of e){const i=r.tableId??`name:${r.tableName}`,s=t.get(i)??{tableName:r.tableName,tableId:r.tableId,rows:[]};s.rows.push(r),t.set(i,s)}const a=[];for(const r of t.values()){const i=u=>Object.values(u.marks).filter(c=>c==="o"||c==="triangle"||c==="x").length,s=r.rows.filter(u=>i(u)>0).sort((u,c)=>u.scoredAt.localeCompare(c.scoredAt));if(s.length===0)continue;const l=s.map(u=>{const c=Object.values(u.marks),d=c.filter(p=>p==="o").length,m=c.filter(p=>p==="triangle").length;return tc(d,m,i(u))});a.push({tableName:r.tableName,tableId:r.tableId,rates:l,times:s.map(u=>u.scoredAt),delta:l.length>=2?l[l.length-1]-l[0]:null})}return a.sort((r,i)=>(i.times[i.times.length-1]??"").localeCompare(r.times[r.times.length-1]??"")),a}function z5(e,t=8){return e.filter(a=>a.latest!=="o").slice(0,t)}function V5(e,t){if(e==null||t==null||e===""||t==="")return 0;if(typeof e=="number"&&typeof t=="number")return e-t;const a=String(e),r=String(t);return+(a>r)-+(a<r)}function W5(e){const t=new Map;let a=0,r=0;const i=e.map((l,u)=>({r:l,at:u})).sort((l,u)=>l.r.answeredAt.localeCompare(u.r.answeredAt)||V5(l.r.id,u.r.id)||l.at-u.at).map(l=>l.r);for(const l of i){if(l.isCorrect==null)continue;const u=l.itemTitle?.trim();if(!u){r++;continue}a++;const c=l.itemId?.trim()||u,d=`${l.trainingType}|${c}`,m=t.get(d)??{trainingType:l.trainingType,itemId:c,title:u,tried:0,wrong:0,latestCorrect:l.isCorrect,latestAt:l.answeredAt,lastSelected:l.selected,setIds:[]};if(m.tried++,l.isCorrect||m.wrong++,m.title=u,m.latestCorrect=l.isCorrect,m.latestAt=l.answeredAt,m.lastSelected=l.selected,l.setId){const p=m.setIds.indexOf(l.setId);p>0&&m.setIds.splice(p,1),p!==0&&m.setIds.unshift(l.setId)}t.set(d,m)}const s=[...t.entries()].map(([l,u])=>({key:l,trainingType:u.trainingType,itemId:u.itemId,title:u.title,tried:u.tried,wrong:u.wrong,rate:u.tried===0?0:(u.tried-u.wrong)/u.tried,latestCorrect:u.latestCorrect,latestAt:u.latestAt,lastSelected:u.lastSelected,setIds:u.setIds}));return s.sort((l,u)=>l.rate-u.rate||u.tried-l.tried||an(l.title,u.title)),{items:s,counted:a,skippedNoTitle:r}}function q5(e,t=8){return e.filter(a=>!a.latestCorrect).slice(0,t)}function U5(e){const t=new Map;for(const r of e){const i=t.get(r.trainingType)??[];i.push(r),t.set(r.trainingType,i)}const a=[...t.entries()].map(([r,i])=>({trainingType:r,items:i,pending:i.filter(s=>!s.latestCorrect).length}));return a.sort((r,i)=>i.pending-r.pending||r.trainingType.localeCompare(i.trainingType)),a}const qo=["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"];function G5(e){const t=new Map;let a=0;for(const s of e){if(s.latestCorrect)continue;const l=s.setIds[0];if(!l){a++;continue}const u=`${s.trainingType}|${l}`,c=t.get(u)??{setId:l,trainingType:s.trainingType,pending:0};c.pending++,t.set(u,c)}const r=(s,l)=>l.pending-s.pending||s.trainingType.localeCompare(l.trainingType)||s.setId.localeCompare(l.setId),i=[...t.values()];return{sentence:i.filter(s=>qo.includes(s.trainingType)).sort(r),word:i.filter(s=>!qo.includes(s.trainingType)).sort(r),noSet:a}}function K5(e,t,a=5){const r=new Set(t);if(r.size===0)return[];const i=[];for(const s of e){const l=new Set,u=[];for(const c of s.cellLabels)r.has(c)&&!l.has(c)&&(l.add(c),u.push(c));u.length!==0&&i.push({id:s.id,name:s.name,kind:s.kind,covered:u,totalCells:s.cellLabels.length})}return i.sort((s,l)=>l.covered.length-s.covered.length||s.totalCells-l.totalCells||an(s.name,l.name)),i.slice(0,Math.max(0,a))}function Y5(e,t){const a=new Set(e.flatMap(r=>r.covered));return t.filter(r=>!a.has(r))}function Z5(e,t){const a=new Map;for(const i of e)for(const s of i.cells){const l=i.labelOf(s);a.has(l)||a.set(l,s)}const r=[];for(const i of t){const s=a.get(i);s!==void 0&&r.push(s)}return r}function Uo(e,t,a){return typeof e=="string"&&e?e:t.replace(/\{\{(\w+)\}\}/g,(r,i)=>String(a[i]))}function X5(e,t){const a=Number.isFinite(e)?Math.round(e):0;if(!a||a<=0)return"-";const r=Math.floor(a/60),i=a%60;return t?t(r,i):r>0&&i>0?Uo($t.t("customers.duration.minSec",{m:r,s:i,defaultValue:"{{m}}\uBD84 {{s}}\uCD08"}),"{{m}}\uBD84 {{s}}\uCD08",{m:r,s:i}):r>0?Uo($t.t("customers.duration.min",{m:r,defaultValue:"{{m}}\uBD84"}),"{{m}}\uBD84",{m:r}):Uo($t.t("customers.duration.sec",{s:i,defaultValue:"{{s}}\uCD08"}),"{{s}}\uCD08",{s:i})}function J5(e,t){const a=[],r=new Set;for(const i of e){const s=t(i);r.has(s)||(r.add(s),a.push({key:s,value:i,pinned:!1}))}return a}function Q5(e,t){return e.map(a=>a.key===t?{...a,pinned:!a.pinned}:a)}function e3(e,t){return e.filter(a=>a.key!==t)}function t3(e,t,a){const r=e.filter(d=>d.pinned),i=new Set(r.map(d=>d.key)),s=e.length-r.length,l=[],u=new Set(i);for(const d of t){if(l.length>=s)break;const m=a(d);u.has(m)||(u.add(m),l.push({key:m,value:d,pinned:!1}))}const c=[...l];return e.map(d=>d.pinned?d:c.shift()).filter(d=>d!==void 0)}function n3(e){return e.map(t=>t.value)}function a3(e){const{category:t={},isSelected:a=!1,onClick:r}=e||{},i=t?.key?` icon-grid-menu__button--${t.key}`:"",s=o.useId();return n.jsxs("div",{className:`icon-grid-menu__button-wrapper${i}`,children:[n.jsx("button",{className:`icon-grid-menu__button${a?" icon-grid-menu__button--selected":""}`,"data-key":t?.key,type:"button",onClick:a?void 0:r,"aria-pressed":a,"aria-labelledby":s,children:n.jsx(at,{icon:t.icon,label:t.label,className:"icon-grid-menu__button-icon",imgClassName:"icon-grid-menu__button-icon-image",maskClassName:"icon-grid-menu__button-icon-mask",svgClassName:"icon-grid-menu__button-icon-svg"})}),n.jsx("span",{id:s,className:"icon-grid-menu__button-label button-1",children:t.label})]})}function r3(e){const{categories:t=[],selected:a,onSelect:r,size:i="medium"}=e||{},s=a!==void 0,[l,u]=o.useState(()=>s?null:(t&&t[0]?.key)??null),c=s?a:l,d=o.useRef(r);o.useEffect(()=>{d.current=r});const m=o.useRef(!1),p=(t&&t[0]?.key)??null;o.useEffect(()=>{if(s||m.current||!p)return;m.current=!0;const y=l??p;l==null&&u(y),d.current?.(y)},[s,p]);const C=o.useCallback(y=>{const v=c===y?null:y;m.current=!0,s||u(v),r?.(v)},[c,s,r]);return n.jsx("div",{className:`icon-grid-menu icon-grid-menu--${i}`,children:(t||[]).map(y=>n.jsx(a3,{category:y,isSelected:c===y.key,onClick:()=>C(y.key)},y.key))})}function o3({subs:e=[],selected:t,onSelect:a,size:r="medium"}){const i=r==="small"?32:40;return n.jsx("div",{className:`choice-chips choice-chips--${r}`,children:n.jsx("div",{className:"choice-chips__list",children:e.map(s=>n.jsx(me,{htmlType:"button",size:i,type:"bar",label:s.label,selected:t===s.key,className:"choice-chips__button",onClick:()=>a?.(s.key)},s.key))})})}function s3({onTermsClick:e,onPrivacyClick:t,contact:a}={}){const r=a?.email??"support@ihab.co.kr",i=a?.tel??"031-380-3724",{t:s}=xe.useTranslation();return n.jsx("footer",{className:"site-footer",children:n.jsxs("div",{className:"safearea",children:[n.jsxs("div",{className:"site-footer__top",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("div",{className:"site-footer__lead h3",children:s("footer.lead",`\uC544\uC774\uD574\uBE0C\uB294 \uC18C\uB9AC\uB97C \uD1B5\uD574
|
|
1051
1051
|
\uC2E0\uB8B0\uB97C \uC313\uACE0
|
|
1052
1052
|
\uD68C\uBCF5\uC744 \uB3D5\uC2B5\uB2C8\uB2E4.`).split(`
|
|
1053
|
-
`).map((l,u,c)=>n.jsxs(o.Fragment,{children:[l,u<c.length-1&&n.jsx("br",{})]},u))})}),n.jsxs("div",{className:"site-footer__links",children:[n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.site.title","\uC0AC\uC774\uD2B8")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.malgwi","\uB9D0\uADC0")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.sns.title","SNS")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:s("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.policy.title","\uC815\uCC45")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:s("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:s("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),n.jsx("hr",{className:"site-footer__rule"}),n.jsxs("div",{className:"site-footer__bottom",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("img",{src:go,alt:"IHAB",className:"site-footer__logo"})}),n.jsxs("div",{className:"site-footer__meta",children:[n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.ceo","\uB300\uD45C")})," ",n.jsx("span",{className:"footer-meta caption-1",children:s("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.address","\uC8FC\uC18C")})," ",n.jsx("span",{className:"footer-meta caption-1",children:s("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.support","\uACE0\uAC1D\uC13C\uD130")})," ",n.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",i]})]})]})]}),n.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function s3({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:i,className:s,containerClassName:l,renderLink:u,menuLabel:c}){const{t:d}=xe.useTranslation(),m=c??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[p,C]=o.useState(!1),_=o.useId(),y=o.useRef(null);o.useEffect(()=>{if(!p)return;const v=Un(()=>{const b=document.getElementById(_);b&&b.contains(document.activeElement)&&y.current?.focus(),C(!1)}),f=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,w=b=>{b.matches&&C(!1)};return f&&(f.matches&&C(!1),f.addEventListener?.("change",w)),()=>{v(),f?.removeEventListener?.("change",w)}},[p,_]);const g=l?`${l} landing-header__inner`:"landing-header__inner",h=(v,f)=>u?u(v,{onClick:f}):n.jsx("a",{href:v.href,onClick:f,"aria-current":v.current?"page":void 0,children:v.label});return n.jsxs("header",{className:s?`landing-header ${s}`:"landing-header",children:[n.jsxs("div",{className:g,children:[e!=null&&(()=>{const v=typeof e=="string"?n.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?n.jsx("a",{href:a,className:"landing-header__brand",children:v}):n.jsx("div",{className:"landing-header__brand",children:v})})(),r.length>0&&n.jsx("nav",{className:"landing-header__links",children:r.map((v,f)=>n.jsx("span",{children:h(v)},`${f}:${v.href}`))}),n.jsxs("div",{className:"landing-header__actions",children:[i,r.length>0&&n.jsx("button",{ref:y,type:"button",onClick:()=>C(v=>!v),"aria-expanded":p,"aria-controls":_,"aria-label":p?m.close:m.open,className:p?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:n.jsxs("span",{className:"landing-header__burger",children:[n.jsx("span",{}),n.jsx("span",{}),n.jsx("span",{})]})})]})]}),r.length>0&&n.jsx("nav",{id:_,hidden:!p,className:"landing-header__drawer",children:n.jsx("div",{className:l??void 0,children:r.map((v,f)=>n.jsx("span",{className:"landing-header__drawer-item",children:h(v,()=>C(!1))},`${f}:${v.href}`))})})]})}function i3({children:e,action:t,onClick:a,className:r}){const i=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return n.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:n.jsxs("div",{className:i,onClick:a,..._u(a),children:[n.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}function l3({mountedRef:e}){const t=o.useRef({phase:"sound",at:0}),a=o.useRef(0),r=o.useRef(null),i=o.useRef(null),s=o.useCallback(()=>{const g=t.current,h=g.phase!=="sound"&&g.at>0;i.current=h?{phase:g.phase,elapsed:Math.max(0,Date.now()-g.at)}:null},[]),l=o.useCallback(()=>{const g=i.current;return i.current=null,g},[]),u=o.useCallback(()=>{a.current+=1,t.current={phase:"sound",at:0}},[]),c=o.useCallback((g,h,v=0)=>{if(!(g>0))return Promise.resolve(!0);const f=a.current;return t.current={phase:h,at:Date.now()-Math.max(0,v)},new Promise(w=>{const b=setTimeout(()=>{r.current===b&&(r.current=null),w(!!e.current&&f===a.current)},g);r.current=b})},[e]),d=o.useCallback(()=>{t.current={phase:"sound",at:Date.now()}},[]),m=o.useCallback(()=>{t.current={phase:"sound",at:0}},[]),p=o.useCallback(()=>{const g=t.current;return g.phase!=="sound"&&g.at>0},[]),C=o.useCallback(()=>a.current,[]),_=o.useCallback(g=>g===a.current,[]),y=o.useCallback(()=>{a.current+=1},[]);return o.useEffect(()=>()=>{r.current&&(clearTimeout(r.current),r.current=null)},[]),o.useMemo(()=>({positionRef:t,isRunning:p,generation:C,isCurrent:_,abort:u,waitPad:c,enterSound:d,leave:m,pause:s,resume:l,__bumpGenerationForTest:y}),[p,C,_,u,c,d,m,s,l,y])}const Ca=9,u3=e=>Math.round(Math.min(Ca,Math.max(0,e))/Ca*100),c3=e=>e/100*Ca,Oa=2,nc=.1,d3=e=>Math.min(Oa,Math.max(0,e)),p3=.1,m3=e=>Math.round(e*1e6)/1e6;function Ha(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return d3(t);const a=Math.min(Ca,Math.max(0,Number(e.level)||0))/Ca,r=Number(e.mainVolume);return r>0?a>0?m3(Math.min(Oa,Math.max(p3,a/r))):0:1}const ac=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function rc(e){return ac(e)}function Uo(e){return ac(e)*Ha(e)}function Go(e,t=bC()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Uo(e)/a)}function za(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=Ha({level:a.level,mainVolume:a.mainVolume})),a}const Va={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},Ko=o.createContext(null);function mr(){return o.useContext(Ko)}const Yo=e=>`${gC()}/${e}`,oc=e=>Array.from({length:10},(t,a)=>Yo(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),hr={get defaultNoise(){return Yo("noise1.mp3")},get street(){return oc("noise2")},get restaurant(){return oc("noise3")},get buzz(){return Yo("noise4.mp3")}};function h3(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return hr.defaultNoise;case"street":return hr.street[t];case"restaurant":return hr.restaurant[t];case"buzz":return hr.buzz;default:return null}}function C3({noisePlayer:e,audioRef:t,playbackStateRef:a,sequencer:r}){const i=o.useRef(e?.registerAnalyser);i.current=e?.registerAnalyser;const s=o.useRef(null),[l,u]=o.useState(null),c=o.useRef(null),d=o.useRef(null),m=o.useRef(null),p=o.useRef(null),C=o.useRef(0),_=o.useRef(null),y=o.useCallback(()=>!!r?.isRunning(),[r]),g=o.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),_.current!==null&&(clearTimeout(_.current),_.current=null)},[]),h=o.useCallback((B,x=250)=>{const A=s.current;if(!A)return;const k=d.current;if(k){d.current=null;try{A.pause()}catch{}A.src=k,A.load()}if(!A.src)return;C.current+=1,g();try{zr(),qa(A).then(O=>{if(s.current===A)try{i.current?.("noise",O)}catch{}})}catch{}const N=A.paused?0:Ua(A);A.paused&&Rn(A,0),A.play().catch(()=>{});const S=performance.now(),E=()=>{const O=Math.min(1,(performance.now()-S)/x);try{Rn(A,N+(B-N)*O)}catch{}O<1?p.current=requestAnimationFrame(E):p.current=null};p.current=requestAnimationFrame(E)},[g]),v=o.useCallback((B=250,x)=>{const A=s.current;if(!A||A.paused){x?.();return}const k=++C.current;g();const N=performance.now(),S=Ua(A),E=()=>{const O=Math.min(1,(performance.now()-N)/B);try{Rn(A,S*(1-O))}catch{}if(O<1)p.current=requestAnimationFrame(E);else{p.current=null,_.current!==null&&(clearTimeout(_.current),_.current=null);try{A.pause()}catch{}x?.()}};p.current=requestAnimationFrame(E),_.current=setTimeout(()=>{if(_.current=null,C.current===k){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{A.paused||(Rn(A,0),A.pause(),x?.())}catch{}}},B+150)},[g]);o.useEffect(()=>{const B=document.createElement("audio");return B.loop=!0,B.crossOrigin="anonymous",s.current=B,()=>{g();try{B.pause(),B.removeAttribute("src"),B.load()}catch{}s.current=null,c.current=null,d.current=null}},[g]);const f=e?Go(e.settings):0,w=!!e?.settings.enabled&&f>0;o.useEffect(()=>{if(!w)return;let B=0;const x=setInterval(()=>{const A=s.current;if(!A||A.paused){B=0;return}const k=t.current;if(k&&!k.paused&&!k.ended||y()||a.current==="playing"){B=0;return}B+=1,B>=2&&(B=0,v())},400);return()=>clearInterval(x)},[v,w,t,a,y]),o.useEffect(()=>{const B=()=>{const x=s.current;if(document.hidden){if(x&&!x.paused){g();try{x.pause()}catch{}}return}if(!x||!x.paused)return;const A=t.current,k=!!A&&!A.paused&&!A.ended||y()||a.current==="playing",N=m.current;k&&N?.enabled&&N.volume>0&&h(N.volume)};return document.addEventListener("visibilitychange",B),()=>document.removeEventListener("visibilitychange",B)},[g,h,t,a,y]),o.useEffect(()=>{m.current=e?{enabled:e.settings.enabled,volume:f,type:e.settings.type}:null},[e,e?.settings.enabled,f,e?.settings.type]);const b=o.useRef(null);return o.useEffect(()=>()=>{b.current?.(),b.current=null},[]),o.useEffect(()=>{const B=e?.settings,x=s.current;if(!x)return;const A=B?Go(B):0;if(!B||!B.enabled||A===0){v();return}if(c.current!==B.type){const k=h3(B.type);k&&(c.current=B.type,u(k),d.current=k,v(150,()=>{if(d.current!==k)return;d.current=null,x.src=k,x.load();const N=t.current;if(N&&!N.paused||y()){b.current?.();const S=()=>{x.removeEventListener("canplay",S),b.current===E&&(b.current=null);const O=t.current,F=m.current;(O&&!O.paused&&!O.ended||y())&&F?.enabled&&F.volume>0&&h(F.volume)},E=()=>x.removeEventListener("canplay",S);b.current=E,x.addEventListener("canplay",S)}}))}else{const k=t.current,N=!!k&&!k.paused&&!k.ended||y()||a.current==="playing";if(N&&d.current)h(A);else if(N&&x.paused&&x.src)h(A);else if(!x.paused)if(!N)v();else{g();const S=Ua(x),E=performance.now(),O=()=>{const F=Math.min(1,(performance.now()-E)/150);try{Rn(x,S+(A-S)*F)}catch{}F<1?p.current=requestAnimationFrame(O):p.current=null};p.current=requestAnimationFrame(O)}}},[e?.settings,e?.settings.enabled,f,e?.settings.type,g,h,v,t,a,m,y]),o.useEffect(()=>{const B=s.current;if(B)try{B.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:s,activeNoiseUrl:l,noiseSettingsRef:m,cancelNoiseFade:g,fadeInNoise:h,fadeOutNoise:v}}function f3({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:i,setProgress:s,setPlaybackState:l,setStateLocal:u,fadeInNoise:c,fadeOutNoise:d,noiseSettingsRef:m,onDoneRef:p,handleEndRef:C}){const _=o.useRef(null),y=o.useRef(0),g=o.useRef(null),h=o.useRef(0),v=o.useRef(!1);o.useEffect(()=>()=>{h.current++;try{if(g.current&&(cancelAnimationFrame(g.current),g.current=null),v.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}v.current=!1}}catch{}},[]);const f=(B,x=1)=>{try{const A=(B||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(B||"").length);return Math.max(700,Math.round(A*300/Math.max(.25,x)))}catch{return 1200}},w=o.useCallback(B=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof p.current=="function"&&p.current(!1)}catch{}return}const x=window.speechSynthesis,A=++h.current;try{try{x.cancel()}catch{}const k=B??e,N=Array.isArray(k)?k.filter(M=>!!M):[k||""];N.length===0&&N.push("");const S=Math.max(.3,Math.min(3,t));y.current=N.reduce((M,L)=>M+f(L,S||1),0),_.current=performance.now(),s(0),l("playing"),u("playMode");const E=m.current;E?.enabled&&(E?.volume??0)>0&&c(E.volume);const O=()=>{try{const M=_.current||performance.now(),L=performance.now()-M,P=y.current||1200,G=Math.min(1,L/P);try{r.current&&(r.current.style.left=`${G*100}%`),i.current&&i.current.style.setProperty("--progress",String(G))}catch{}G<1&&(g.current=requestAnimationFrame(O))}catch{}},F=()=>{if(A===h.current)try{g.current&&(cancelAnimationFrame(g.current),g.current=null),s(1),l("stopped");try{C.current?.()}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{}},Y=M=>{const L=new SpeechSynthesisUtterance(N[M]);try{L.rate=S}catch{}try{L.volume=Math.max(0,Math.min(1,a))}catch{}L.onend=()=>{if(A===h.current){if(M<N.length-1){try{Y(M+1)}catch{F()}return}F()}},L.onerror=()=>{F()},L.onstart=()=>{if(!(M>0))try{g.current&&(cancelAnimationFrame(g.current),g.current=null),g.current=requestAnimationFrame(O)}catch{}},v.current=!0,x.speak(L)};try{Y(0)}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}},[e,t,a,c,r,i,s,l,u,m,p,C]),b=o.useCallback(()=>{h.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}g.current&&(cancelAnimationFrame(g.current),g.current=null),d(),_.current=null}catch{}l("stopped"),u("active"),s(0)},[d,l,u,s]);return{startTTS:w,stopTTS:b}}const g3=.01,b3=.3;async function y3(e,t,a,r=!1){let i=null;try{const s=window.AudioContext||window.webkitAudioContext;i=new s;const l=await i.decodeAudioData(e.slice(0)),u=l.numberOfChannels>0?l.getChannelData(0):null;if(!u)return null;let c=0;if(r){const _=Math.floor(b3*l.sampleRate),y=Math.min(u.length,_);for(;c<y&&Math.abs(u[c])<=g3;)c++;c>=y&&(c=0)}const d=u.length-c,m=a&&a>0?Math.min(d,Math.floor(a*l.sampleRate)):d,p=Math.max(t,m),C=Math.floor(p/t)||1;return new Array(t).fill(0).map((_,y)=>{const g=c+y*C,h=Math.min(g+C,c+p,u.length);let v=0;for(let f=g;f<h;f++){const w=Math.abs(u[f]);w>v&&(v=w)}return v})}catch{return null}finally{try{i?.close?.()}catch{}}}async function sc(e,t,a,r=!1){try{const i=await fetch(e);if(i.ok===!1)return null;const s=await i.arrayBuffer();return await y3(s,t,a,r)}catch(i){try{const s=Ci(i)}catch{}return null}}const Zo=45,v3=74,x3=2;function Cr(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function fr(e){return Cr(e)/45}const _3=e=>Math.max(0,(typeof e=="number"&&Number.isFinite(e)?e:0)*1e3),ic=e=>Math.max(0,typeof e=="number"&&Number.isFinite(e)?e:0);function lc({durationsSec:e,leadInMs:t=0,tailMs:a=0}){const r=ic(t),i=ic(a),s=[];let l=0;return e.forEach((u,c)=>{for(const[d,m]of[["lead",r],["sound",_3(u)],["tail",i]])s.push({kind:d,track:c,startMs:l,durMs:m}),l+=m}),{segments:s,totalMs:l,trackCount:e.length}}function uc(e,t){const a=(t|0)*3;if(t<0||a+2>=e.segments.length)return null;const[r,i,s]=[e.segments[a],e.segments[a+1],e.segments[a+2]];return{lead:r,sound:i,tail:s,totalMs:r.durMs+i.durMs+s.durMs}}function w3(e,t){const a=uc(e,t.track);if(!a||!(a.totalMs>0))return 0;const r=a[t.kind],i=Math.min(Math.max(0,Number.isFinite(t.elapsedMs)?t.elapsedMs:0),r.durMs);return Math.max(0,Math.min(1,(r.startMs-a.lead.startMs+i)/a.totalMs))}function A3(e,t,a){const r=Math.max(0,Math.floor(a)),i=uc(e,t);if(!i||r===0||!(i.totalMs>0)||i.lead.durMs===0&&i.tail.durMs===0||!(i.sound.durMs>0))return{lead:0,sound:r,tail:0};const s=Math.round(i.lead.durMs/i.totalMs*r),l=Math.round(i.tail.durMs/i.totalMs*r),u=Math.max(1,r-s-l),c=s+u+l-r;return{lead:Math.max(0,s-Math.ceil(c/2)),sound:u,tail:Math.max(0,l-Math.floor(c/2))}}function B3({currentTime:e,sources:t,index:a,audioDuration:r}){const i=a||0,s=Array.isArray(t)&&t.length>0?t[i]:void 0,l=s?s.duration||r||0:r||0;if(!(l>0))return 0;const u=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,u/l))}function k3({phase:e,phaseElapsedMs:t,currentTime:a,trackDurationSec:r,leadInMs:i,tailMs:s}){const l=lc({durationsSec:[r],leadInMs:i,tailMs:s});return w3(l,{track:0,kind:e,elapsedMs:e==="sound"?(Number.isFinite(a)?a:0)*1e3:t})}function N3({bars:e,trackDurationSec:t,leadInMs:a,tailMs:r}){return A3(lc({durationsSec:[t],leadInMs:a,tailMs:r}),0,e)}function E3(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function D3({ended:e,completedByEnd:t}){return!!e||!!t}function S3(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function j3(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function T3(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],i=[];for(const s of r)if(s){if(typeof s=="object"&&s!==null&&"src"in s&&s.src){const l=s;i.push({code:l.code??null,src:l.src});continue}if(typeof s=="string"&&(s.startsWith("http")||s.includes("/"))){i.push({code:null,src:s});continue}if(typeof s=="string"||typeof s=="number"){const l=String(s),u=a(l,t);u&&i.push({code:l,resolvedPath:u})}}return i}const cc=4,M3=fr(cc/Zo);function L3(e){const{src:t,segments:a,progress:r=0,waveProgressRef:i,noiseSrc:s,noiseRatio:l=0,noiseSpeed:u=1,totalDuration:c=0,mainVolume:d=1,onReadyChange:m,showSoundWaveForm:p=!0,leadInMs:C=0,tailMs:_=0,trackDurationSec:y=0}=e,g=o.useRef(null),h=o.useRef(null),[v,f]=o.useState(null),[w,b]=o.useState(!1),[B,x]=o.useState(null),[A,k]=o.useState(2),[N,S]=o.useState(0),[E,O]=o.useState(null),[F,Y]=o.useState(!1),[M,L]=o.useState(!1),P=3,G=3,U=1,z=300,q=o.useRef(0),$=o.useCallback(()=>{const ye=g.current,ne=h&&h.current?h.current:ye?ye.closest(".audio-player__wave"):null,le=ne?ne.getBoundingClientRect():ye?ye.getBoundingClientRect():null,Ce=le?le.width:0,ge=le?Math.max(100,le.width):320,fe=le?le.height:0,$e=Math.max(U,Math.min(z,Math.floor((ge+G)/(P+G)))),Ve=$e*P,je=Math.max(0,$e-1),Fe=Math.max(0,je>0?(ge-Ve)/je:G);return{bars:$e,gap:Fe,height:fe,width:Ce}},[]),V=o.useRef(void 0),H=o.useRef(null),T=o.useCallback(async(ye,ne,{quiet:le=!1}={})=>{const Ce=++q.current,ge=()=>q.current===Ce;try{if(le||b(!1),V.current=ye,!ye){ge()&&f(null);return}let fe=ne;if(!fe)try{for(let je=0;je<4&&!(g.current||h.current);je++)await new Promise(Fe=>requestAnimationFrame(Fe));await new Promise(je=>requestAnimationFrame(je));const Ve=$();Ve.height>0&&S(Ve.height),fe=Ve.bars,k(Ve.gap)}catch{fe=120}H.current=fe;const $e=await sc(ye,fe);if(!ge())return;if(!$e){f(null),b(!1);return}f($e),x(fe),b(!0)}catch{if(!ge())return;f(null),b(!1)}},[b,f,S,k,x,$]);o.useEffect(()=>{const ye=h.current;if(!ye||typeof ResizeObserver>"u")return;let ne=null;const le=new ResizeObserver(()=>{ne!==null&&cancelAnimationFrame(ne),ne=requestAnimationFrame(()=>{ne=null;try{const Ce=$();if(Ce.width<=0||(Ce.height>0&&S(Ce.height),H.current===null||Ce.bars===H.current))return;const ge=V.current;k(Ce.gap),ge?T(ge,Ce.bars,{quiet:!0}).catch(()=>{}):H.current=Ce.bars}catch{}})});return le.observe(ye),()=>{le.disconnect(),ne!==null&&cancelAnimationFrame(ne)}},[$,T]),o.useEffect(()=>{const ye=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;T(typeof ye=="string"?ye:void 0).catch(()=>{}),L(!1)},[t,a,T]),o.useEffect(()=>{let ye=!1;if(Y(!1),!s||!B){O(null);return}const ne=c>0?c*(u||1):void 0;return sc(s,B,ne,!0).then(le=>{ye||(O(le),le||Y(!0))}).catch(()=>{ye||(O(null),Y(!0))}),()=>{ye=!0}},[s,B,c,u]);const D=Math.max(0,Math.min(1,d)),R=o.useMemo(()=>v&&v.length&&Math.max(...v)||1,[v]),I=B||40,W=o.useMemo(()=>N3({bars:I,trackDurationSec:y,leadInMs:C,tailMs:_}),[I,y,C,_]),ee=o.useMemo(()=>Array.from({length:I}).map((ye,ne)=>{const le=ne>=W.lead&&ne<W.lead+W.sound,Ce=W.sound>0&&le?Math.min(I-1,Math.round((ne-W.lead)/W.sound*I)):-1,ge=le?v&&v[Ce]!=null?v[Ce]:null:v?0:null,fe=ge==null?null:Math.min(1,ge/R*D),$e=fe!=null&&N>0&&Cr(fe)<=cc,Ve=fe==null?.15:$e?0:fr(fe),je=$e,Fe=I>1?ne/(I-1):0;return n.jsx("div",{className:je?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Ve,"--i":ne,"--mix":Fe}},ne)}),[I,v,R,D,N,W]),oe={"--progress":String(Math.max(0,Math.min(1,r)))},ce=o.useMemo(()=>E&&E.length&&Math.max(...E.map(ye=>Number.isFinite(ye)?Math.abs(ye):0))||1,[E]),J=D*Math.max(0,l),re=!s||!E||!E.length?1:Math.max(1,J),Ne={"--bar-gap":`${A}px`,"--wave-h":`${Cr(re)}px`,"--wave-h1":`${Zo}px`},K=w&&(s?!!E||F:!0);o.useEffect(()=>{K&&L(!0)},[K]);const Q=M?w:K;o.useEffect(()=>{m?.(Q)},[Q,m]);const pe=B||40,De=o.useMemo(()=>Array.from({length:pe}).map((ye,ne)=>{const le=E&&E[ne]!=null?E[ne]:null,Ce=le==null?0:Math.abs(le)/ce*J,ge=Math.max(M3,fr(Ce)),fe=pe>1?ne/(pe-1):0;return n.jsx("div",{className:"audio-player__bar",style:{"--val":ge,"--i":ne,"--mix":fe}},ne)}),[pe,E,ce,J,N]);return n.jsxs("div",{className:"audio-player__wave",ref:h,style:Ne,children:[s&&n.jsx("div",{className:`audio-player__wave-noise ${K?"is-ready":""}`,"aria-hidden":"true",children:De}),p&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${Q?"is-ready":""}`,ref:g,children:ee}),n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${Q?"is-ready":""}`,ref:i,style:oe,children:ee})]})]})}const $3={idle:"\uB300\uAE30",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"},dc={idle:!1,synthesizing:!0,resolving:!0,checking_exists:!0,getting_signed_url:!0,downloading:!0,measuring_duration:!0,ready:!1,error:!0};function Xo(e,t){return new Promise((a,r)=>{const i=document.createElement("audio");let s=!1;const l=()=>{try{i.removeAttribute("src"),i.load()}catch{}},u=()=>{if(s)return;s=!0;const d=isFinite(i.duration)&&i.duration||0;l(),a(d)},c=d=>{s||(s=!0,l(),t.rejectOnError?r(new Error(d)):a(0))};i.addEventListener("loadedmetadata",u),i.addEventListener("error",()=>c("audio load failed")),setTimeout(()=>c("audio load timeout"),t.timeoutMs),i.src=e})}const R3=2e3;function pc(e,t=R3){return new Promise(a=>{let r=!1;const i=()=>{r||(r=!0,a())};e.addEventListener("canplay",i,{once:!0}),e.addEventListener("error",i,{once:!0}),setTimeout(i,t)})}function P3({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=o.useRef(!1),i=o.useRef([]),s=o.useCallback(c=>{if(r.current=c,!c||!i.current.length)return;const d=i.current;i.current=[];for(const m of d)m(!0)},[]),l=o.useCallback(()=>{r.current=!1},[]),u=o.useCallback(()=>!e&&!t||r.current?Promise.resolve(!0):new Promise(c=>{const d=p=>{clearTimeout(m),i.current=i.current.filter(C=>C!==d),c(p)},m=setTimeout(()=>d(!0),a);i.current.push(d)}),[e,t,a]);return o.useEffect(()=>()=>{const c=i.current;i.current=[];for(const d of c)d(!1)},[]),{onReadyChange:s,waitForReady:u,markNotReady:l}}function F3(){const e=o.useRef([]),t=o.useCallback(i=>(e.current.push(i),i),[]),a=o.useCallback(i=>{const s=new Set([...i].filter(Boolean));e.current=e.current.filter(l=>{if(s.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=o.useCallback(()=>{a([])},[a]);return o.useEffect(()=>()=>{for(const i of e.current)try{URL.revokeObjectURL(i)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function I3({offsetY:e=8}={}){const t=o.useRef(null),[a,r]=o.useState(null),i=o.useCallback(()=>r(null),[]),s=o.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;r({left:l.left,right:l.right,width:l.width,height:l.height,x:l.x,top:l.top+e,bottom:l.bottom+e,y:l.y+e,toJSON:l.toJSON.bind(l)})}catch{}},[e]);return o.useEffect(()=>{if(a)return document.addEventListener("mousedown",i),()=>document.removeEventListener("mousedown",i)},[a,i]),{ref:t,rect:a,show:s,hide:i}}function O3(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const r=a.end(a.length-1);if(Number.isFinite(r)&&r>0)return r}}catch{}return null}const H3=400,z3=2e3,mc=5;function V3({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:i,sequencer:s,leadInMs:l=0,tailMs:u=0}){const c=o.useRef(null),d=o.useRef(0),m=o.useRef(null),p=o.useCallback(()=>{c.current!==null&&(cancelAnimationFrame(c.current),c.current=null)},[]),C=o.useCallback(()=>{if(c.current!==null)return;let y=0;const g=()=>{if(ea){const h=typeof performance<"u"&&performance.now?performance.now():Date.now();if(y>0&&h-y>H3){const v=m.current===null||h-m.current>z3;if(m.current=h,v&&d.current<mc){d.current+=1;const f=d.current;let w=null;try{w=typeof document<"u"?document.visibilityState:null}catch{}Zt(`progress-ticker-slow-frames#${f}`,`[ihab-core] \uC9C4\uD589 \uC0AC\uC2AC\uC758 \uD2C0 \uC0AC\uC774\uAC00 ${Math.round(h-y)}ms \uC785\uB2C8\uB2E4(\uBCF4\uD1B5 16ms).`,w==="hidden"?"\uC774 \uCE78\uC774 **\uC228\uC5B4 \uC788\uC5B4** \uBE0C\uB77C\uC6B0\uC800\uAC00 \uD2C0\uC744 \uC904\uC600\uC2B5\uB2C8\uB2E4 \u2014 \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC740 \uD2C0\uB9C8\uB2E4 \uADF8\uB824\uC9C0\uBBC0\uB85C, \uC9C0\uAE08 \uC7AC\uB294 \uAC12\uC740 **\uC0AC\uB78C\uC774 \uBCF4\uB294 \uD654\uBA74\uACFC \uB2E4\uB985\uB2C8\uB2E4.** \uCE78\uC744 \uC55E\uC73C\uB85C \uAEBC\uB0B4\uACE0 \uB2E4\uC2DC \uC7AC\uC2ED\uC2DC\uC624.":"\uCE78\uC740 \uBCF4\uC774\uB294\uB370 \uD2C0\uC774 \uB290\uB9BD\uB2C8\uB2E4 \u2014 \uAC19\uC740 \uD654\uBA74\uC5D0\uC11C \uBB34\uAC70\uC6B4 \uC77C\uC774 \uB3C4\uB294\uC9C0 \uBCF4\uC2ED\uC2DC\uC624. \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC774 \uB04A\uACA8 \uBCF4\uC774\uB294 \uAC83\uC740 \uC774 \uD0D3\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.",f>=mc?`(${f}\uBC88\uC9F8 \u2014 \uB354\uB294 \uC548 \uC54C\uB9BD\uB2C8\uB2E4)`:`(${f}\uBC88\uC9F8)`)}}y=h}try{const h=e.current,v=Array.isArray(r.current)?r.current[i.current||0]:void 0,f=!!v&&Number.isFinite(v.duration)&&(v.duration??0)>0,w=f?0:O3(h),b=t.current,B=(l||0)>0||(u||0)>0,x=B&&(s?.positionRef.current?.phase??"sound")!=="sound";if(w===null&&!x)try{b&&b.style.visibility!=="hidden"&&(b.style.visibility="hidden")}catch{}else{const A=f?v.duration:w||0;ea&&x&&!(A>0)&&Zt("progress-ticker-pad-without-duration","[ihab-core] \uB738\uC774 \uB3C4\uB294\uB370 **\uC18C\uB9AC \uAE38\uC774\uB97C \uBAA8\uB985\uB2C8\uB2E4** \u2014 \uC7AC\uC0DD\uBC14\uAC00 \uB738\uB9CC\uC73C\uB85C \uC5B4\uB9BC\uC7A1\uC544 \uC6C0\uC9C1\uC785\uB2C8\uB2E4.","\uC18C\uB9AC \uAE38\uC774 \uC7AC\uAE30(measureAudioDuration)\uAC00 0 \uC744 \uC92C\uAC70\uB098 `<audio>` \uAC00 \uC544\uC9C1 \uC548 \uC2E4\uB838\uC2B5\uB2C8\uB2E4. \uAE38\uC774\uB97C \uC54C\uAC8C \uB418\uBA74 \uB9C8\uCEE4\uAC00 \uADF8 \uC21C\uAC04 **\uB4A4\uB85C \uBB3C\uB7EC\uB0A9\uB2C8\uB2E4**(\uC5B4\uB9BC\uC740 \uB298 \uCC38\uBCF4\uB2E4 \uD07D\uB2C8\uB2E4). \uC774 \uC904\uC774 \uBCF4\uC774\uBA74 \uADF8 \uC790\uB9AC\uB97C \uC54C\uB824 \uC8FC\uC2ED\uC2DC\uC624 \u2014 \uD3C9\uC18C \uAE38\uC5D0\uC11C\uB294 \uC548 \uB098\uC640\uC57C \uD569\uB2C8\uB2E4.");const k=B?k3({phase:s?.positionRef.current?.phase??"sound",phaseElapsedMs:s?.positionRef.current?Math.max(0,Date.now()-s.positionRef.current.at):0,currentTime:h&&typeof h.currentTime=="number"?h.currentTime:0,trackDurationSec:A,leadInMs:l||0,tailMs:u||0}):B3({currentTime:h&&typeof h.currentTime=="number"?h.currentTime:0,sources:r.current,index:i.current,audioDuration:w??0});try{b&&(b.style.visibility&&(b.style.visibility=""),b.style.left=`${k*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(k))}catch{}}}catch{}c.current=requestAnimationFrame(g)};c.current=requestAnimationFrame(g)},[e,t,a,r,i,s,l,u]),_=o.useCallback(y=>{p();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${y*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(y))}catch{}},[p,t,a]);return o.useEffect(()=>p,[p]),{start:C,stop:p,settleTo:_}}function Jo({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:i=!1,ttsText:s=null,className:l,showSoundWaveForm:u=!0,showNoiseWaveForm:c=!0,leadInMs:d=0,tailMs:m=0}){const{t:p}=xe.useTranslation(),C=e,_=mr(),y=o.useRef(_?.registerAnalyser);o.useEffect(()=>{y.current=_?.registerAnalyser});const g=o.useRef(null),h=o.useRef(null),v=o.useRef(null),f=F3(),w=o.useRef(null),b=o.useRef(!1),B=o.useRef(null),{ref:x,rect:A,show:k,hide:N}=I3();o.useEffect(()=>()=>{y.current?.("main",null),y.current?.("noise",null)},[]);const[S,E]=o.useState(!1),[O,F]=o.useState("idle"),[Y,M]=o.useState("stopped"),L=o.useRef("stopped");o.useEffect(()=>{L.current=Y},[Y]);const[P,G]=o.useState(0),[U,z]=o.useState("active"),q=o.useRef(!1);o.useEffect(()=>{if(U!=="playMode"||!q.current)return;q.current=!1;const X=typeof document<"u"?document.activeElement:null;if(X&&X!==document.body)return;const de=v.current?.querySelectorAll("button")[1];try{de?.focus()}catch{}},[U]);const[$,V]=o.useState(null),[H,T]=o.useState(null),[D,R]=o.useState(0),[I,W]=o.useState(!1),[ee,oe]=o.useState(0),ce=_?.playbackRate??1,J=_?.mainVolume??1,re=_?Uo(_.settings):0,Ne=_?rc(_.settings):J,[K,Q]=o.useState("idle"),[pe,De]=o.useState(""),[ye]=o.useState("top"),ne=o.useRef(null),le=o.useRef(0),Ce=o.useRef(null),ge=o.useRef(!0),fe=l3({mountedRef:ge}),$e=o.useRef(null),Ve=o.useRef(d),je=o.useRef(m);o.useEffect(()=>{Ve.current=Math.max(0,d||0)},[d]),o.useEffect(()=>{je.current=Math.max(0,m||0)},[m]);const{start:Fe,stop:qe,settleTo:mt}=V3({audioRef:g,fillRef:h,waveProgressRef:Ce,sourcesRef:ne,currentIndexRef:le,sequencer:fe,leadInMs:d,tailMs:m}),{onReadyChange:ct,waitForReady:rt,markNotReady:Ct}=P3({showSoundWaveForm:u,showNoiseWaveForm:c}),Be=o.useRef(null),We=o.useRef(i),_e=o.useRef(r),Ue=o.useRef(null),Ae=o.useRef(!1),[Te,Se]=o.useState(!1),Xe=o.useCallback(X=>{Ae.current=X,Se(X)},[]),Qe=o.useRef(null),{activeNoiseUrl:dt,noiseSettingsRef:ht,fadeInNoise:wt,fadeOutNoise:ft}=C3({noisePlayer:_,audioRef:g,playbackStateRef:L,sequencer:fe}),{startTTS:Nt,stopTTS:gt}=f3({ttsText:s,playbackRate:ce,mainVolume:Ne,fillRef:h,waveProgressRef:Ce,setProgress:G,setPlaybackState:M,setStateLocal:z,fadeInNoise:wt,fadeOutNoise:ft,noiseSettingsRef:ht,onDoneRef:_e,handleEndRef:Qe});o.useEffect(()=>{Ie.current=gt});const it=X=>{if(typeof window>"u"||!window.speechSynthesis){try{De(p("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Nt(X);return}tt("tts"),Nt(X)},Ke=Array.isArray(t)?t.filter(Boolean):t?[t]:[],se=(!Ke||Ke.length===0)&&!!s,ke=Array.isArray($)&&$.length>0?$:Array.isArray(H)&&H.length>0?H:null,ze=Math.max(Array.isArray(ke)?ke.length:0,Ke.length);o.useEffect(()=>(ge.current=!0,()=>{ge.current=!1}),[]);const nt=()=>{fe.abort()},Ie=o.useRef(null),Ge=o.useRef(null),bt=o.useRef(null),Re=o.useRef(null);Re.current||(Re.current=()=>{bt.current=null;const X=g.current;if(Ge.current==="audio"&&X&&(!X.paused||fe.isRunning())){nt();try{X.pause()}catch{}ge.current&&(M("paused"),qe(),ft())}else if(Ge.current==="tts")try{Ie.current?.()}catch{}});const tt=X=>{Ge.current=X,bt.current=ar(Re.current)},xt=()=>{bt.current?.(),bt.current=null};o.useEffect(()=>()=>{Re.current&&rr(Re.current)},[]);const Mt=o.useRef(ce);o.useEffect(()=>{Mt.current=ce||1},[ce]);const et=o.useCallback(X=>{const de=Mt.current||1;try{X.defaultPlaybackRate=de}catch{}try{X.playbackRate=de}catch{}},[]),ot=o.useCallback((X,de)=>{X.src=de,et(X),X.load(),et(X)},[et]),lt=o.useCallback(()=>{Ue.current&&(clearTimeout(Ue.current),Ue.current=null),Q("idle")},[]),st=o.useCallback(async(X,de=3,ae=50,be=0)=>{lt();const Le=fe.generation(),He=!!X&&X.currentTime>0&&!X.ended,ut=Math.max(0,Ve.current-Math.max(0,be));if(ut>0&&!He){tt("audio"),Fe(),M("playing");const yt=ht.current;if(yt?.enabled&&(yt.volume??0)>0)try{wt(yt.volume)}catch{}if(!await fe.waitPad(ut,"lead",be)||!ge.current||!fe.isCurrent(Le))return!1}fe.enterSound();for(let yt=0;yt<de;yt++){if(!ge.current||!fe.isCurrent(Le))return!1;try{return tt("audio"),await X.play(),!0}catch(he){if((he instanceof Error||typeof he=="object"&&he&&"name"in he?he.name:void 0)==="AbortError"){if(!fe.isCurrent(Le))return!1;await new Promise(j=>setTimeout(j,ae));continue}try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[p,Fe,fe,wt,ht,lt]),jt=o.useCallback(X=>{const de=fe.generation(),ae=Math.max(0,je.current-Math.max(0,X));Fe();const be=ht.current;if(be?.enabled&&(be.volume??0)>0)try{wt(be.volume)}catch{}const Le=()=>{try{$e.current?.()}catch{}};if(ae<=0){fe.leave(),Le();return}fe.waitPad(ae,"tail",X).then(He=>{fe.leave(),He&&fe.isCurrent(de)&&Le()}).catch(()=>{})},[fe,Fe,wt,ht]),Ht=o.useCallback(()=>{const X=g.current;if(!X)return;const de=()=>{M("playing"),z("playMode"),W(!0),Fe();try{zr(),qa(X).then(He=>{if(ge.current)try{y.current?.("main",He)}catch{}})}catch{}const Le=ht.current;Le?.enabled&&(Le?.volume??0)>0&&wt(Le.volume)},ae=()=>{D3({ended:!!X?.ended,completedByEnd:Ae.current})||(M("paused"),qe(),ft())},be=()=>{const Le=()=>{try{const He=ne.current,ut=E3(He,le.current);if(ut!==null){le.current=ut,R(ut),W(!0);const yt=He?.[ut]&&He[ut].src;if(yt&&X){ot(X,yt),st(X).catch(()=>{});return}}}catch{}M("stopped"),G(1);try{if(X)try{X.currentTime=0}catch{}}catch{}qe(),W(!1),ft();try{!We.current&&Qe.current&&Qe.current()}catch{}};if($e.current=Le,je.current>0){Fe(),fe.waitPad(je.current,"tail").then(He=>{fe.leave(),He&&Le()}).catch(()=>{});return}Le()};return X.addEventListener("play",de),X.addEventListener("pause",ae),X.addEventListener("ended",be),()=>{try{X.removeEventListener("play",de),X.removeEventListener("pause",ae),X.removeEventListener("ended",be),qe()}catch{}}},[wt,ft,st,ht,Fe,qe,fe]);o.useEffect(()=>Ht(),[Ht]),o.useEffect(()=>{We.current=i},[i]),o.useEffect(()=>{_e.current=r},[r]),o.useEffect(()=>{if(i||U!=="active")return;const X=B.current;if(!X)return;let de=null;const ae=requestAnimationFrame(()=>{try{const be=X.getTotalLength();if(!be)return;const Le=be*.2;X.style.strokeDasharray=`${be-Le} ${Le}`;const He="triFlow_"+Math.random().toString(36).slice(2);de=document.createElement("style"),de.textContent=`@keyframes ${He}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${be}}}`,document.head.appendChild(de),X.style.animation=`${He} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ae),de?.remove()}},[U,i]),o.useEffect(()=>{ne.current=$},[$]),o.useEffect(()=>{le.current=D},[D]),o.useEffect(()=>{const X=v.current,de=w.current;if(!X||!de)return;let ae=null;const be=32,Le=60,He=()=>{try{const yt=Array.from(X.querySelectorAll(":scope > .button"));let he=0;yt.forEach(Pe=>{if(Pe===de)return;const Ze=Pe.getBoundingClientRect();he+=Ze.width});const j=X.getBoundingClientRect().width,Z=Math.max(0,Math.floor(j-he-8)),ue=ze;if(!ue||Z<=0){Array.from(de.children).forEach(Pe=>{try{Pe.style.width=""}catch{}});return}let Ee=Math.floor(Z/ue);Ee>Le&&(Ee=Le),Ee<be&&(Ee=Math.max(be,Math.floor(Z/ue))),Array.from(de.querySelectorAll(".button")).forEach(Pe=>{try{Pe.style.width=`${Ee}px`}catch{}})}catch{}},ut=requestAnimationFrame(He);try{ae=new ResizeObserver(()=>{requestAnimationFrame(He)}),ae.observe(X),ae.observe(de),window.addEventListener("resize",He)}catch{}return()=>{try{cancelAnimationFrame(ut)}catch{}try{ae&&(ae.disconnect(),ae=null)}catch{}try{window.removeEventListener("resize",He)}catch{}}},[$,H,ze]),o.useEffect(()=>()=>{try{Be.current&&(clearTimeout(Be.current),Be.current=null),Ue.current&&(clearTimeout(Ue.current),Ue.current=null)}catch{}},[]);const mn=(X,de)=>{V(X),oe(de),Ct(),T(S3(X)),ne.current=X},hn=()=>{z("playMode"),R(0),W(!0)},Tn=async(X,de)=>{Xe(!1),b.current=!1,ot(X,de),await pc(X),await rt()!==!1&&(E(!1),hn(),await st(X))},On=async(X,de=!1)=>{const ae=g.current;E(!0),F("measuring_duration");try{const be=await Xo(X,{timeoutMs:1e4,rejectOnError:!0});mn([{src:X,objectUrl:null,duration:be}],be),F("ready"),de&&ae&&await Tn(ae,X)}finally{b.current=!1,E(!1)}},Hn=async(X,de=!1)=>{const ae=g.current;E(!0),F("measuring_duration");try{const be=await Promise.all(X.map(He=>Xo(He,{timeoutMs:1e4})));if(!ge.current)return;const Le=X.map((He,ut)=>({src:He,objectUrl:null,duration:be[ut]||0}));mn(Le,j3(Le)),F("ready"),de&&ae&&Le.length>0&&await Tn(ae,Le[0].src)}finally{b.current=!1,E(!1)}},Pt=async(X=!1,de=!0)=>{const ae=g.current,be=t?Array.isArray(t)?t:[t]:[];if(!be||be.length===0||!be.some(Boolean))return!1;if(b.current)return null;b.current=!0,de&&E(!0),F("resolving");try{const Le=T3(t,a,ni),He=[];let ut=0;for(const yt of Le){let he=yt.src??null,j=null;if(!he&&yt.resolvedPath){try{F("getting_signed_url"),he=await ai(yt.resolvedPath)}catch{he=null}if(!ge.current)return!1;if(!he)try{F("downloading");const ue=await ri(yt.resolvedPath);if(!ge.current)return!1;if(ue){const Ee=ue instanceof Blob?ue:new Blob([ue]);j=f.track(URL.createObjectURL(Ee)),he=j}}catch{F("error");try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),z("active")}catch{}}}if(!he)continue;let Z=0;try{F("measuring_duration"),Z=await Xo(he,{timeoutMs:3e3})}catch{Z=0}if(!ge.current){if(j)try{URL.revokeObjectURL(j)}catch{}for(const ue of He)if(ue.objectUrl)try{URL.revokeObjectURL(ue.objectUrl)}catch{}return!1}ut+=Z||0,He.push({...yt,src:he,objectUrl:j,duration:Z})}if(mn(He,ut),He.length>0&&X&&ae){const yt=He[0];Xe(!1);try{f.keepOnly(He.map(he=>he.objectUrl))}catch{}if(F("ready"),b.current=!1,yt.src&&ae)try{if(ot(ae,yt.src),await pc(ae),await rt()===!1)return!1;de&&E(!1),hn(),ae&&await st(ae)}catch{de&&E(!1)}else de&&E(!1);z("playMode"),R(0),W(!0)}return He.length>0}finally{b.current=!1,de&&E(!1),F(Le=>Le==="ready"?"ready":"idle")}},vn=async X=>{const de=fe.isRunning();if(X.paused&&!de){if(Ae.current){await zt();return}const ae=fe.resume();if(ae){if(M("playing"),ae.phase==="tail"){jt(ae.elapsed);return}await st(X,3,50,ae.elapsed);return}await st(X),M("playing")}else fe.pause(),nt(),X.pause(),M("paused"),de&&(qe(),ft())},Ft=async()=>{const X=g.current;if(!(!X&&!se)){if(se){const de=window.speechSynthesis;if(U==="active"){const ae=Ir(),be=Array.isArray(s)?s.filter(Boolean):s?[s]:[];if(ae&&be.length>0){if(b.current)return;z("load"),E(!0),F("synthesizing"),b.current=!0;try{const Le=await Promise.all(be.map(He=>Promise.resolve(ae(He))));Le.length>1?await Hn(Le,!0):await On(Le[0],!0)}catch{b.current=!1,E(!1),z("active"),it(be.length>0?be:void 0)}return}it(be.length>0?be:void 0);return}if(U==="playMode"){const ae=!!de&&(de.speaking||de.paused)&&!(X&&(X.currentSrc||X.getAttribute("src")));if(X&&!ae){await vn(X);return}try{if(de&&de.paused)try{tt("tts"),de.resume(),M("playing")}catch{}else try{de.pause(),M("paused")}catch{}}catch{}}return}if(U==="active"){if(i&&Array.isArray(ne.current)&&ne.current.length>0){const ae=ne.current[0];try{if(ae.src&&X)try{ot(X,ae.src),hn(),X&&await st(X)}catch{}hn();return}catch{}}z("load");let de;try{de=await Pt(!0)}catch{de=!1}if(de===!1&&ge.current){try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}z("active")}return}if(U!=="load"&&(U==="playMode"||U==="active"))try{X&&await vn(X)}catch(de){(de instanceof Error||typeof de=="object"&&de&&"name"in de)&&de.name}}},zt=async()=>{const X=g.current;if(X)try{const de=ne.current;if(Array.isArray(de)&&de.length>1){await Lt(0);return}Xe(!1);try{X.currentTime=0}catch{}X&&await st(X),M("playing"),z("playMode")}catch{}},Mn=()=>{nt(),xt(),Ie.current?.();const X=g.current;try{if(X){try{X.pause()}catch{}try{X.currentTime=0}catch{}}}catch{}ft(),M("stopped"),z("active"),G(0),W(!1)},on=async(X,{sameSegment:de=!1}={})=>{nt();const ae=fe.generation(),be=g.current,Le=ne.current?.[X]?.src;try{if(Xe(!1),R(X),W(!0),le.current=X,!Le||!be||(de||Ct(),ot(be,Le),!de&&await rt()===!1)||!fe.isCurrent(ae)||(await st(be),!fe.isCurrent(ae)))return;M("playing"),z("playMode")}catch{}},xn=async()=>{const X=ne.current,de=le.current||0;if(!X||de<=0){await zt();return}await on(de-1)},zn=async()=>{const X=ne.current,de=le.current||0;if(!X||de>=X.length-1){Mn();return}await on(de+1)},_n=()=>{if(Ae.current)return;const X=200,de=340;Xe(!0),nt(),xt();try{G(1)}catch{}mt(1);try{Q("hold")}catch{}try{const ae=g.current,be=se&&!!ae?.src;if(!se||be){if(ae){ae.pause();try{ae.currentTime=0}catch{}}}else gt();ft()}catch{}try{M("stopped")}catch{}if(W(!1),!We.current)try{Ue.current&&(clearTimeout(Ue.current),Ue.current=null),Ue.current=setTimeout(()=>{try{Q("out")}catch{}Ue.current=setTimeout(()=>{try{typeof _e.current=="function"&&_e.current(!0)}catch{}try{Q("idle")}catch{}Ue.current=null},de)},X)}catch{}};o.useEffect(()=>{Qe.current=_n});const Vt=o.useCallback(()=>De(""),[]),Lt=async X=>{(ne.current||[])[X]&&await on(X,{sameSegment:X===le.current})},Wt=Y==="playing",Cn=o.useMemo(()=>{if(!H||H.length<=1)return H;const X=H[D];return X?[X]:H},[H,D]),It=i===!0;o.useEffect(()=>{try{const X=g.current;X&&typeof X.playbackRate=="number"&&et(X)}catch{}},[ce,et]);const sn=o.useRef({raf:null,timer:null});o.useEffect(()=>{const X=g.current;if(!X)return;const de=Math.max(0,Math.min(1,Ne)),ae=sn.current,be=()=>{ae.raf!==null&&(cancelAnimationFrame(ae.raf),ae.raf=null),ae.timer!==null&&(clearTimeout(ae.timer),ae.timer=null)};be();const Le=Ua(X);if(X.paused||Math.abs(Le-de)<.001||typeof requestAnimationFrame!="function"){try{Rn(X,de)}catch{}return}const He=performance.now(),ut=()=>{const yt=Math.min(1,(performance.now()-He)/150);try{Rn(X,Le+(de-Le)*yt)}catch{}ae.raf=yt<1?requestAnimationFrame(ut):null};return ae.raf=requestAnimationFrame(ut),ae.timer=setTimeout(()=>{be();try{Rn(X,de)}catch{}},200),be},[Ne]);const Dt=K==="hold",ie=K==="out",ve=U==="playMode"&&!S&&!Te||Dt||ie,Me=Y!=="stopped"||Dt||ie,Je=Y==="paused",Oe=Math.max(0,Math.min(100,(P||0)*100)),Ye=we("audio-player__fill",ve?"is-visible":"",Me?"is-expanded":"",Je?"is-paused":"",ie?"is-out":"");return n.jsxs("div",{className:`audio-player ${It?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof C=="string"?C:void 0,children:[n.jsxs("div",{className:`audio-player__panel ${Wt?"is-playing":""} ${S?"is-loading":""} ${U!=="default"?"is-revealed":""}`,children:[S?n.jsxs("div",{className:"audio-player__loading",role:dc[O]?"status":void 0,"aria-live":dc[O]?"polite":"off",children:[n.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),n.jsx("span",{className:"audio-player__loading-text",children:p(`training.audioStatus.${O}`,{defaultValue:$3[O]})})]}):null,U==="active"?n.jsx("button",{className:"audio-player__button",type:"button",disabled:It,onClick:()=>{q.current=lr(),N(),Ft()},"aria-label":typeof C=="string"?C:p("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:N,onFocus:k,onBlur:N,children:n.jsx("span",{ref:x,className:"audio-player__button-triangle-wrap",children:n.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:n.jsx("path",{ref:B,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,A&&n.jsx(An,{anchorRect:A,text:typeof C=="string"&&C?C:p("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),n.jsxs("div",{className:`audio-player__play ${U==="playMode"||Wt?"is-visible":""}`,inert:!(U==="playMode"||Wt)||void 0,children:[n.jsxs("div",{ref:v,className:"audio-player__buttons",children:[n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:xn,ariaLabel:p("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Wt?"pause":"play",onClick:Ft,ariaLabel:p("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":Wt,width:"60px",variant:"transparent-white",disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Mn,ariaLabel:p("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),ze>1?n.jsx("div",{ref:w,className:"audio-player__source-buttons",children:Array.from({length:ze}).map((X,de)=>n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(de+1),onClick:()=>{try{Lt(de)}catch{}},ariaLabel:p("training.sourcePlay",{n:de+1}),variant:"transparent-white",selected:I&&D===de,disabled:U!=="playMode"||!(Array.isArray($)&&$[de]),showTooltipInfo:!0},de))}):null,!Array.isArray($)||$.length<=1?n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:zt,ariaLabel:p("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"}):null,n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:zn,ariaLabel:p("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:_n,ariaLabel:p("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"})]}),n.jsxs("div",{className:"audio-player__slider",children:[n.jsx("div",{className:Ye,ref:h,style:{left:`${Oe}%`},"aria-hidden":"true"}),(u||c)&&n.jsx(L3,{segments:Cn,progress:P,totalDuration:ee,waveProgressRef:Ce,showSoundWaveForm:u,leadInMs:d,tailMs:m,trackDurationSec:$?.[D]?.duration??0,noiseSrc:c&&_?.settings.enabled&&re>0?dt:null,noiseRatio:_?Ha(_.settings):0,noiseSpeed:_?.settings.speed??1,mainVolume:J,onReadyChange:ct})]})]}),n.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!u&&n.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[n.jsx(at,{icon:"triangle-alert",size:14}),p("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),n.jsx(ua,{message:pe,position:ye,onClose:Vt})]})}function gr(e){const{t}=xe.useTranslation(),{text:a,label:r,anchorRect:i=null,onClose:s,closeOnOutsideClick:l=!0,isMobilePopup:u=!1}=e||{},[c,d]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",c)}catch{}},[c]);const{increase:m,decrease:p,canIncrease:C,canDecrease:_,fontSize:y,lineHeight:g}=ml({storageKey:"tooltip-fontScale"}),h=o.useCallback(()=>d(B=>B==="dark"?"light":"dark"),[]),v=o.useCallback(B=>{try{B.stopPropagation()}catch{}try{typeof s=="function"&&s()}catch{}},[s]),f=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],w={fontSize:`${y}px`,lineHeight:`${g}px`,"--tt-line-height":`${g}px`,"--tt-marker-size":"28px"},b=n.jsxs("div",{className:`tooltip-textbox__root ${c==="dark"?"is-dark":""}`,children:[n.jsxs("div",{className:"tooltip-textbox__box",children:[r&&n.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),n.jsx("div",{className:"tooltip-textbox__text body-1",style:w,children:f.map((B,x)=>n.jsxs("div",{className:"tooltip-textbox__line",children:[f.length>1?n.jsx("div",{className:"tooltip-textbox__marker",children:n.jsx("span",{className:"tooltip-textbox__line-number button-1",children:x+1})}):null,n.jsx("span",{className:"tooltip-textbox__line-text",children:B})]},x))})]}),n.jsxs("div",{className:"tooltip-textbox__buttons",children:[n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:p,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:c==="dark"?"transparent-white":"transparent-gray",disabled:!_}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:m,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:c==="dark"?"transparent-white":"transparent-gray",disabled:!C}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:c==="dark"?"moon":"sun-medium",onClick:h,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:c==="dark"?"transparent-white":"transparent-gray"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:v,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:c==="dark"?"transparent-white":"transparent-gray"})]})]});return i?n.jsx(cn,{anchorRect:i,className:`tooltip-textbox ${c==="dark"?"is-dark":""}`,onClose:s,closeOnOutsideClick:l,isMobilePopup:u,ariaLabel:r||t("tooltip.textbox","\uBCF8\uBB38"),children:b}):n.jsx("div",{className:`tooltip-textbox ${c==="dark"?"is-dark":""}`,children:b})}function hc({state:e="disabled"}){const{t}=xe.useTranslation();return n.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[n.jsx("div",{className:"bullet__dot",children:n.jsx(at,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),n.jsx("div",{className:"ts-bullet__line"})]})}function Cc(e,t,a){const r=o.useRef(t),i=o.useRef(a);o.useEffect(()=>{r.current=t,i.current=a}),o.useEffect(()=>{if(!e||typeof document>"u")return;let s=null,l=10;const u=()=>{s=null;const c=r.current(),d=c?Array.from(c.querySelectorAll(fn)).find(m=>!m.closest('[aria-hidden="true"]')):void 0;if(d){try{d.focus()}catch{}if(document.activeElement===d)return}--l>0&&(s=requestAnimationFrame(u))};return s=requestAnimationFrame(u),()=>{s!==null&&cancelAnimationFrame(s);const c=document.activeElement;if(!c||c===document.body||!document.contains(c)||c.closest(".tooltip-content")){const d=i.current();if(d)try{d.focus()}catch{}}}},[e])}function fc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:i=!1,onPreviewTextBtn:s,previewText:l=null,useFaded:u,usePlayAllBtn:c=!1,onPlayAll:d,playAllActive:m=!1}){const{t:p}=xe.useTranslation(),C=ln("(max-width: 767px)"),_=`training-step__title h4 ${u&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),y=`training-step__title-row training-step__title-row--${r}`.trim(),g=o.useRef(null),[h,v]=o.useState(!1),[f,w]=o.useState(null),[b,B]=o.useState(null);Cc(h&&!!f,()=>{if(typeof document>"u")return null;const S=Array.from(document.querySelectorAll(".tooltip-content"));for(let E=S.length-1;E>=0;E--)if(S[E].querySelector(".tooltip-textbox__root"))return S[E];return null},()=>g.current?.querySelector("button")??null);const x=o.useRef(s);o.useEffect(()=>{x.current=s});const A=o.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(S=>typeof S=="string"||typeof S=="number")?l.join(""):"",[l]),k=o.useCallback(()=>{v(!1),w(null),B(null)},[]);o.useEffect(()=>{if(!h)return;let S;try{typeof x.current=="function"&&(S=x.current())}catch{}if(S===!1){k();return}B(typeof S<"u"&&S!==null?S:null)},[A]);const N=o.useCallback(()=>{let S;try{typeof s=="function"&&(S=s())}catch{}if(S!==!1){if(B(typeof S<"u"&&S!==null?S:l),!g.current){v(E=>!E);return}if(h)v(!1),w(null),B(null);else{const E=g.current.getBoundingClientRect();w(E),v(!0)}}},[s,l,h]);return n.jsxs("div",{className:y,children:[n.jsx("p",{className:_,children:n.jsx("span",{className:"training-step__title-text",children:e??t})}),i||c?n.jsxs("div",{className:"title-controls",children:[n.jsxs("div",{className:"title-buttons",children:[c&&n.jsx(me,{htmlType:"button",size:32,type:C?"dot":"bar",icon:"play-circle",label:C?void 0:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:m,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||m,onDisabledClick:m&&r!=="disabled"?()=>{}:void 0}),i&&n.jsx("div",{ref:g,children:n.jsx(me,{htmlType:"button",size:32,type:C?"dot":"bar",icon:"eye",label:C?void 0:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:N,className:h?"is-selected":void 0,"aria-expanded":h,"aria-haspopup":"dialog",variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof s!="function"})})]}),h&&n.jsx(gr,{text:b??l,label:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:f,onClose:k,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function Qo(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Xn({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:i={},children:s,className:l="",onDone:u=void 0,useTitleFaded:c=void 0,lockedHint:d}){const{t:m}=xe.useTranslation(),[p,C]=o.useState(()=>Qo(e,t));o.useEffect(()=>{const x=Qo(e,t);if(x!==p){const A=setTimeout(()=>C(x),0);return()=>clearTimeout(A)}},[e,t,p]);const _=o.useCallback((...x)=>{Qo(e,t)==="done"||p==="done"||typeof u=="function"&&u(...x)},[e,t,p,u]),[y,g]=o.useState(!1),[h,v]=o.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),f=o.useCallback(x=>{if(!x)return null;try{const A=x;if(typeof x=="object"&&(A.currentTarget||A.target)&&(A.nativeEvent||A.type)){const S=A.currentTarget??A.target;if(S&&typeof S.getBoundingClientRect=="function")return S.getBoundingClientRect()}if(x instanceof DOMRect)return x;const k=x;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const N=x?.current;return N&&typeof N.getBoundingClientRect=="function"?N.getBoundingClientRect():null}catch{return null}},[]),w=o.useCallback((x,{text:A="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:N=!1,alignX:S="center",alignY:E="top"}={})=>{const O=f(x);v({text:A,label:k,anchorRect:O,backdrop:N,alignX:S,alignY:E}),g(!0)},[f]),b=o.useCallback(()=>{g(!1),v(x=>({...x,anchorRect:null}))},[]),B=o.Children.map(s,x=>{if(o.isValidElement(x)){const A=x;if(typeof A.type=="string")return A;const k=A.props??{},N=typeof k.onDone=="function"?k.onDone:_,S=typeof k.disabled=="boolean";let E=p==="disabled";return S&&(E=!!k.disabled),o.cloneElement(A,{onDone:N,disabled:E,showTooltip:w,hideTooltip:b})}return x});return n.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[n.jsx(hc,{state:p}),n.jsxs("div",{className:"training-step__content",children:[n.jsx(fc,{state:p,title:r,...i,useFaded:c}),p==="disabled"&&d&&typeof e=="number"&&typeof t=="number"&&e===t+1&&n.jsx("p",{className:"training-step__locked-hint caption-1",role:"status",children:d}),B]}),y?n.jsx(cn,{anchorRect:h.anchorRect,backdrop:h.backdrop,onClose:b,ariaLabel:m("tooltip.textbox","\uBCF8\uBB38"),children:n.jsx(gr,{text:h.text,onClose:b})}):null]})}function gc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=xe.useTranslation(),[i,s]=o.useState("disabled"),[l,u]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const c=()=>u(F=>F==="dark"?"light":"dark"),{increase:d,decrease:m,canIncrease:p,canDecrease:C,fontSize:_,lineHeight:y}=ml({storageKey:"textbox_fontScale"}),[g,h]=o.useState(""),v=o.useRef(null),f=o.useRef(!1),w=o.useCallback(()=>{f.current=lr()&&!!v.current&&v.current.contains(document.activeElement),s("active")},[]),b=o.useCallback(()=>h(""),[]),B=F=>{try{h(F)}catch{}},x=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");o.useEffect(()=>{if(t!=="disabled"){const F=setTimeout(()=>s(t),0);return()=>clearTimeout(F)}},[t]);const A=o.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[k,N]=o.useState(A);k!==A&&(N(A),s("disabled"));const S=t==="disabled"?i:t,E=S==="disabled"?"training-text-box--disabled":S==="active"?"training-text-box--active":S==="done"?"training-text-box--done":"",O=o.useMemo(()=>({fontSize:`${_}px`,lineHeight:`${y}px`}),[_,y]);return o.useEffect(()=>{if(S==="disabled"||!f.current)return;f.current=!1;const F=document.activeElement;F&&F!==document.body||v.current?.querySelector(".training-text-box__buttons button")?.focus()},[S]),n.jsxs("div",{ref:v,className:`training-text-box ${E} ${S!=="disabled"&&l==="dark"?"is-dark":""}`,children:[S==="disabled"&&n.jsx("div",{className:"training-text-box__preview",children:n.jsx(me,{htmlType:"button",size:48,type:"bar",onClick:w,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),n.jsx("div",{className:"training-text-box__area","aria-hidden":S==="disabled",children:n.jsx("span",{className:"training-text-box__inner h3",style:O,children:A})}),S!=="disabled"&&n.jsxs("div",{className:"training-text-box__buttons","aria-hidden":S==="disabled",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:m,onDisabledClick:()=>B(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!C,useBorder:!1,showTooltipInfo:!0,...!x&&{width:"60px"}}),n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>B(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!x&&{width:"60px"}}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:c,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),n.jsx(ua,{message:g,position:"top",onClose:b})]})}function Jn(e){return e==="active"||e==="done"}function es({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,useTitleFaded:s,onDone:l,onChange:u,answer:c,wrongAnswers:d,choices:m,multiSelect:p=!1,correctCount:C=0,useDisabledCovered:_=!1,choiceIcons:y,shuffleChoices:g=!0}){const{t:h}=xe.useTranslation(),v=i??h("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),f=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",b=Array.isArray(m)&&m.length?m:typeof c<"u"?[c].concat(Array.isArray(d)?d:[]):void 0,B=d?d.join("||"):"",x=m?m.join("||"):"",[A,k]=o.useState(()=>Array.isArray(b)?g?Aa(b):b.slice():void 0);o.useEffect(()=>{Array.isArray(b)&&b.length?k(g?Aa(b):b.slice()):k(void 0)},[c,B,x,g]);const[N,S]=o.useState(null),[E,O]=o.useState(()=>new Set);o.useEffect(()=>{S(null),O(new Set)},[x,c,B]);const F=o.useRef(void 0);o.useEffect(()=>{const L=F.current;typeof L=="number"&&typeof t=="number"&&typeof e=="number"&&L>=e&&t<e&&(S(null),O(new Set)),F.current=t},[t,e]);const Y=o.useCallback(L=>{if(!Jn(w))return;const P=A?.[L];if(P==null)return;const G=P;if(p){const U=new Set(E);U.has(G)?U.delete(G):U.add(G),O(U),typeof u=="function"&&u({selectedValues:[...U],__ts:Date.now()}),typeof l=="function"&&l({selectedValues:[...U],__ts:Date.now()})}else S(G),typeof u=="function"&&u({selectedIndex:L,selectedValue:G,__ts:Date.now()}),typeof l=="function"&&l({selectedIndex:L,selectedValue:G,__ts:Date.now()})},[A,w,p,u,E]),M=`training-step__buttons${Array.isArray(A)&&A.length>3?" training-step__buttons--wrap-3":""}`;return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:v,useTitleFaded:s,children:n.jsx("div",{className:M,children:Array.isArray(A)&&A.length>0?A.map((L,P)=>n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:()=>Y(P),ariaLabel:String(L),label:L,useLabel:!0,icon:y?y[String(L)]:void 0,variant:"default",disabled:w==="disabled",selected:p?E.has(L):N===L,useDisabledCovered:_,minWidth:0},String(L))):null})})}function ts({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u,demoSelected:c}){const{t:d}=xe.useTranslation(),m=i??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,C=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",_=u&&typeof u=="object"?u.sentence||"":typeof u=="string"?u:"",y=u&&typeof u=="object"?u.choices:void 0,[g,h]=o.useState(c??null),v=`${String(_)}\0${JSON.stringify(y??null)}`,[f,w]=o.useState(v);f!==v&&(w(v),c==null&&h(null));const[b,B]=o.useState(c);Object.is(b,c)||(B(c),h(c??null));const x=o.useRef(void 0);o.useEffect(()=>{const S=x.current;typeof S=="number"&&typeof t=="number"&&typeof e=="number"&&S>=e&&t<e&&c==null&&h(null),x.current=t},[t,e,c]);const A=o.useCallback(S=>{const E=typeof S=="object"&&S!==null?Object.assign({},S,{__ts:Date.now()}):{value:S,__ts:Date.now()};typeof l=="function"&&l(E),Jn(C)&&typeof s=="function"&&s(E)},[l,C,s]),k=o.useCallback(()=>{Jn(C)&&(h(!1),A(!1))},[A,C]),N=o.useCallback(()=>{Jn(C)&&(h(!0),A(!0))},[A,C]);return n.jsxs(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:m,onDone:s,useTitleFaded:!1,children:[n.jsx(gc,{context:u,state:C}),n.jsx("div",{className:"training-step__buttons",children:Array.isArray(y)&&y.length>0?y.slice(0,6).map((S,E)=>n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:()=>{Jn(C)&&(h(E),A&&A(E))},disabled:C==="disabled",ariaLabel:String(S),label:S,variant:C,selected:g===E},E)):n.jsxs(n.Fragment,{children:[n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:C==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:g===!1}),n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:N,disabled:C==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:g===!0})]})})]})}function ns({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:i,btnLabel:s,soundSrc:l,bucketPath:u,usePreviewTextBtn:c,previewText:d=null,onPreviewTextBtn:m,disabled:p,_pageIndex:C,showSoundWaveForm:_,showNoiseWaveForm:y,leadInMs:g,tailMs:h}){const{t:v}=xe.useTranslation(),f=r??v("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),w=p??(typeof t=="number"&&typeof e=="number"?e>t:!1);return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,title:f,onDone:i,titleProps:{usePreviewTextBtn:c,previewText:d,onPreviewTextBtn:m},children:n.jsx(Jo,{soundSrc:l,ttsText:l?null:d??f,bucketPath:u,btnLabel:s||v("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:w,className:"training-step__listen-sticky",showSoundWaveForm:_,showNoiseWaveForm:y,leadInMs:g,tailMs:h},`audio-p${C??0}-s${e}`)})}const W3=[];function as({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u=W3}){const{t:c}=xe.useTranslation(),d=i??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),m=T=>typeof T=="string"?T:T&&(T.context||T.sentence||T.question||"")||"",[p,C]=o.useState(Array.isArray(u)?u:[]),[_,y]=o.useState(()=>(p||[]).map((T,D)=>({id:D,text:m(T)}))),g=o.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),h=g!=="disabled",v=o.useRef(void 0),f=o.useRef(void 0);o.useEffect(()=>{if(v.current===u)return;v.current=u;const T=Array.isArray(u)?u:[];C(T);const D=(R=>{const I=(R||[]).map((ce,J)=>({id:J,text:m(ce)}));if(I.length<=1)return I;const W=(ce,J)=>{if(ce.length!==J.length)return!1;for(let re=0;re<ce.length;re++)if(ce[re].text!==J[re].text)return!1;return!0};let ee=Aa(I),oe=0;for(;W(ee,I)&&oe<20;)ee=Aa(I),oe+=1;return ee})(T);y(D);try{if(typeof l=="function"){const R=D.filter((I,W)=>I.text===m(T[W])).length;l({shuffled:D,score:R,total:(T||[]).length,initial:!0,__ts:Date.now()})}if(typeof s=="function"&&g==="active"){const R=D.filter((I,W)=>I.text===m(T[W])).length;f.current=u,s({shuffled:D,score:R,total:(T||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[u]),o.useEffect(()=>{if(g!=="active"||f.current===u||(f.current=u,typeof s!="function"))return;const T=Array.isArray(u)?u:[],D=_.filter((R,I)=>R.text===m(T[I])).length;s({shuffled:_,score:D,total:T.length,initial:!0,__ts:Date.now()})},[g,u]);const w=(T,D)=>{const R=[..._],I=T+D;if(I<0||I>=R.length)return;const W=R[I];R[I]=R[T],R[T]=W,G(R);try{if(typeof s=="function"&&g==="active"){const ee=R.filter((oe,ce)=>oe.text===m(p[ce])).length;s({shuffled:R,score:ee,total:(p||[]).length,__ts:Date.now()})}}catch{}},[b,B]=o.useState(null),x=o.useRef(null),A=o.useRef(null),k=o.useRef(null),N=o.useRef(null),S=o.useRef(null),E=o.useRef({x:0,y:0}),O=o.useRef(null),F=o.useRef({dx:0,dy:0}),Y=()=>{if(O.current!==null)return;const T=()=>{if(!x.current){O.current=null;return}O.current=requestAnimationFrame(T);const D=E.current,R=F.current||{dx:0,dy:0};x.current&&(x.current.style.transform=`translate3d(${D.x-R.dx}px, ${D.y-R.dy}px, 0)`)};O.current=requestAnimationFrame(T)},M=o.useRef(new Map),L=o.useRef(new Map),P=()=>{const T=new Map;return M.current.forEach((D,R)=>{D&&D.getBoundingClientRect&&T.set(R,D.getBoundingClientRect())}),T},G=T=>{const D=P();y(T);try{if(typeof l=="function"){const R=T.filter((I,W)=>I.text===m(p[W])).length;l({shuffled:T,score:R,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const R=P();T.forEach(I=>{const W=D.get(I.id),ee=R.get(I.id),oe=M.current.get(I.id);if(!oe||!W||!ee)return;const ce=W.top-ee.top;ce&&(oe.style.transition="none",oe.style.transform=`translateY(${ce}px)`,requestAnimationFrame(()=>{oe.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",oe.style.transform="";const J=()=>{oe.style.transition="",oe.removeEventListener("transitionend",J)};oe.addEventListener("transitionend",J)}))})})},U=(T,D)=>{try{try{D.dataTransfer?.setData("text/plain",String(T))}catch{}try{D.dataTransfer&&(D.dataTransfer.effectAllowed="move")}catch{}try{const R=document.createElement("div");R.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(R),D.dataTransfer?.setDragImage(R,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(R)}catch{}})}catch{}}catch{}B(T);try{const R=_[T],I=document.createElement("div");I.className="order-list__dragging-object order-list__dragging-object--visible",I.textContent=R&&R.text?R.text:"",document.body.appendChild(I),x.current=I;const W=M.current.get(R.id);let ee=D.clientX||0,oe=D.clientY||0;try{if(W&&W.getBoundingClientRect){const Q=W.getBoundingClientRect();ee=Q.left+Q.width/2,oe=Q.top+Q.height/2}}catch{}const ce=I.getBoundingClientRect(),J=ce.width/2,re=ce.height/2;F.current={dx:J,dy:re},I.style.transition="none",E.current={x:ee,y:oe},I.style.transform=`translate3d(${ee-J}px, ${oe-re}px, 0)`,requestAnimationFrame(()=>{try{I.style.transition=""}catch{}Y()});const Ne=Q=>{const pe=Q;E.current={x:pe.clientX,y:pe.clientY},Y()};k.current=Ne,document.addEventListener("mousemove",Ne);const K=Q=>{const pe=Q;E.current={x:pe.clientX,y:pe.clientY},Y()};A.current=K,document.addEventListener("dragover",K);try{D.dataTransfer?.setData("text/plain",String(T));try{D.dataTransfer?.setData("application/json",JSON.stringify({idx:T}))}catch{}}catch{}}catch{}},z=(T,D)=>{D.preventDefault();try{D.dataTransfer&&(D.dataTransfer.dropEffect="move")}catch{}try{S.current!==null&&(clearTimeout(S.current),S.current=null);const R=D.currentTarget&&D.currentTarget.closest?D.currentTarget.closest(".order-list__item"):null;if(R&&N.current!==R){if(N.current)try{N.current.classList.remove("drag-over")}catch{}try{R.classList.add("drag-over")}catch{}N.current=R}}catch{}},q=(T,D)=>{D.preventDefault();const R=D.dataTransfer?.getData("text/plain")||"",I=R?parseInt(R,10):b,W=T;if(typeof I!="number"||isNaN(I)||I===W){B(null),H(),$();return}const ee=XC(_,I,W);G(ee),B(null),$();try{if(typeof s=="function"&&g==="active"){const oe=ee.filter((ce,J)=>ce.text===m(p[J])).length;s({shuffled:ee,score:oe,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const oe=document.querySelectorAll(".order-list .order-list__item")[W];if(!oe)return;const ce=oe.querySelector(".order-list__slot")||oe;try{ce.classList.add("pulse"),ce.offsetHeight,ce.classList.add("to-dark");const J=()=>{ce.classList.remove("pulse","to-dark"),ce.removeEventListener("transitionend",J)};ce.addEventListener("transitionend",J)}catch{}})}catch{}H()},$=()=>{if(x.current){try{document.body.removeChild(x.current)}catch{}x.current=null}A.current&&(document.removeEventListener("dragover",A.current),A.current=null),k.current&&(document.removeEventListener("mousemove",k.current),k.current=null),O.current!==null&&(cancelAnimationFrame(O.current),O.current=null)},V=()=>{B(null),H(),$()};o.useEffect(()=>()=>$(),[]);const H=()=>{try{if(S.current!==null&&(clearTimeout(S.current),S.current=null),N.current){try{N.current.classList.remove("drag-over")}catch{}N.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(T=>T.classList.remove("drag-over"))}catch{}};return o.useEffect(()=>{try{const T=Math.max(1,(_||[]).length);_.forEach((D,R)=>{const I=L.current.get(D.id);if(!I)return;let W=50;T>1&&(W=Math.round(R/(T-1)*100));try{I.style.setProperty("--marker-pos",W+"%")}catch{}})}catch{}},[_]),o.useEffect(()=>()=>{$(),S.current!==null&&(clearTimeout(S.current),S.current=null)},[]),n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:d,children:n.jsx("div",{className:"order-list",children:_.map((T,D)=>{const R=Math.max(1,(_||[]).length),I=R>1?Math.round(D/(R-1)*100):50;return n.jsx("div",{className:"order-list__item",children:n.jsxs("div",{className:"order-list__slot","data-disabled":g==="disabled","aria-disabled":g==="disabled",children:[g!=="disabled"?n.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":I+"%"},ref:W=>{const ee=L.current;W?ee.set(T.id,W):ee.delete(T.id)},children:n.jsx("span",{className:"order-list__slot-number button-1",children:D+1})}):null,n.jsxs("div",{ref:W=>{const ee=M.current;W?ee.set(T.id,W):ee.delete(T.id)},className:`order-list__draggable ${b===D?"dragging":""}`,"data-disabled":g==="disabled","aria-disabled":g==="disabled",tabIndex:g==="disabled"?-1:0,draggable:h,onDragStart:h?W=>U(D,W):void 0,onDragEnter:h?W=>z(D,W):void 0,onDragOver:h?W=>z(D,W):void 0,onDragLeave:h?()=>{try{S.current!==null&&clearTimeout(S.current),S.current=setTimeout(()=>{try{const W=document.querySelectorAll(".order-list .order-list__item");W&&W[D]&&(W[D].classList.remove("drag-over"),N.current===W[D]&&(N.current=null))}catch{}},80)}catch{}}:void 0,onDrop:h?W=>q(D,W):void 0,onDragEnd:h?V:void 0,children:[n.jsx("span",{className:"order-list__item-text body-2",children:T.text}),h?n.jsxs("span",{className:"order-list__item-buttons",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:()=>w(D,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===0,useBorder:!1,useDisabledInvisible:!0}),n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:()=>w(D,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===_.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},T.id)})})})}const q3=8e3;function U3(e,t){return new Promise(a=>{let r=!1;const i=()=>{r||(r=!0,a())};e.then(i,i),setTimeout(i,t)})}function bc({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u=[],selectable:c=!1,hideLabel:d=!1,hideAudio:m=!1,maxCards:p,playAllGapMs:C=0}){const{t:_}=xe.useTranslation(),y=i??_("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=o.useMemo(()=>Array.isArray(u)?u:u&&u.items||[],[u]),h=p??3,v=(g||[]).slice(0,h);(g||[]).length>h&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${h} shown`);const f=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",[b,B]=o.useState(null),x=o.useRef([]),[A,k]=o.useState(!1),N=o.useRef(null),S=o.useRef(!0);o.useEffect(()=>(S.current=!0,()=>{S.current=!1}),[]);const E=o.useMemo(()=>g.map(P=>P?.id??P?.word??"").join("|"),[g]);o.useEffect(()=>{B(null)},[E]);const O=o.useRef(void 0);o.useEffect(()=>{const P=O.current;typeof P=="number"&&typeof t=="number"&&typeof e=="number"&&P>=e&&t<e&&B(null),O.current=t},[t,e]);const F=o.useCallback((P,G)=>{if(c)return;const U={item:P,index:G,__ts:Date.now()};try{typeof l=="function"&&l(U)}catch{}if(w==="active"&&typeof s=="function")try{s(U)}catch{}},[c,l,w,s]),Y=o.useRef(C);o.useEffect(()=>{Y.current=Math.max(0,C||0)},[C]);const M=o.useCallback(async()=>{if(A||w==="disabled")return;k(!0);let P=!1;const G=new Promise(U=>{N.current=()=>{P=!0,U()}});try{for(let U=0;U<v.length&&!(!S.current||P);U++){const z=x.current[U];if(!z)continue;await Promise.race([U3(z.play(),q3),G]);const q=Math.max(0,Y.current||0);q>0&&U<v.length-1&&!P&&S.current&&await Promise.race([new Promise($=>{setTimeout($,q)}),G])}}finally{N.current=null,k(!1)}},[A,w,v.length]),L=o.useCallback((P,G)=>{if(!Jn(w))return;B(G);const U={selectedValue:P.word||P.title||"",selectedIndex:G,item:P,__ts:Date.now()};try{typeof l=="function"&&l(U)}catch{}if(typeof s=="function")try{s(U)}catch{}},[l,w,s]);return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:y,onDone:s,titleProps:{usePlayAllBtn:!m&&v.length>0,onPlayAll:M,playAllActive:A},children:n.jsx("div",{className:"training-step__cards",onClickCapture:P=>{const G=N.current;if(!G)return;const U=P.target;U&&typeof U.closest=="function"&&U.closest(".training-word-card__bottom")&&G()},children:v.length===0?n.jsx("div",{className:"training-step__empty",children:_("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):v.map((P,G)=>n.jsx($o,{ref:U=>{x.current[G]=U},item:P,disabled:w==="disabled",onPlayDone:()=>F(P,G),selectable:c,selected:c&&b===G,onSelect:c?()=>L(P,G):void 0,flipDelay:G*120,hideLabel:d,hideAudio:m},P&&P.id||G))})})}const G3=160,yc=()=>{};function Sn(e){const t=o.useId();if(!("variant"in e)){const{label:f,sub:w,onClick:b,children:B,align:x="horizontal",icon:A,useFullWidth:k=!1}=e,N=S=>{b&&S.target===S.currentTarget&&(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),b())};return n.jsxs("div",{className:we("panel-row",x==="vertical"?"panel-row--vertical":"",k?"panel-row--label-fixed panel-row--fill":"",b?"panel-row--clickable":""),onClick:b,onKeyDown:b?N:void 0,role:b?"button":void 0,tabIndex:b?0:void 0,children:[A!=null&&n.jsx("div",{className:"panel-row__icon",children:A}),f!=null&&n.jsxs("div",{className:"panel-row__left",children:[n.jsx("div",{className:"panel-row__label body-3",children:f}),w&&n.jsx("div",{className:"panel-row__sub caption-1",children:w})]}),n.jsx("div",{className:"panel-row__right",children:B})]})}if(e.variant==="description")return n.jsx("div",{className:"panel-row panel-row--block",children:n.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return n.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return n.jsx("div",{className:"panel-row panel-row--loading",children:n.jsx(Fa,{size:28})});if(e.variant==="custom"&&!e.label)return n.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:i,onClick:s,required:l,error:u,align:c="horizontal",useFullWidth:d=!1,icon:m}=e,p=a==="button"?void 0:s;let C=null;const _=a==="toggle"?`panel-toggle-${t}`:void 0,y=u?`panel-error-${t}`:void 0,g=`panel-helper-${t}`;if(a==="toggle"){const f=e;C=n.jsx(eu,{checked:f.checked,onChange:f.onChange,id:_})}else if(a==="segmented"){const f=e;C=n.jsx(gn,{options:f.options,value:f.value,onChange:f.onChange,size:f.size??40,ariaLabel:r})}else if(a==="dropdown"){const f=e,w=f.dropdowns?.length?n.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:f.dropdowns.map((b,B)=>n.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:n.jsx(pn,{options:b.options,value:b.value,onChange:b.onChange,placeholder:b.placeholder,block:d,error:!!u,ariaDescribedBy:y,ariaLabel:b.ariaLabel??([r,b.placeholder].filter(Boolean).join(" ")||void 0)})},B))}):n.jsx(pn,{options:f.options??[],value:f.value??"",onChange:f.onChange??yc,block:d,error:!!u,ariaLabel:r,ariaDescribedBy:y});C=u?n.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[w,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:u})]}):w}else if(a==="button"){const f=e;f.buttons?.length?C=n.jsx("div",{className:"panel-row__button-group",children:f.buttons.map((w,b)=>n.jsx(me,{htmlType:"button",size:w.btnSize??40,variant:w.btnVariant??"default",disabled:w.disabled,onClick:w.onClick,children:w.label},b))}):C=n.jsx(me,{htmlType:"button",size:f.btnSize??40,variant:f.btnVariant??"default",disabled:f.disabled,onClick:f.onClick,children:f.buttonLabel})}else if(a==="text"){const f=e;C=n.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:f.valueColor?{color:f.valueColor}:void 0,children:f.value})}else if(a==="input"){const f=e;C=n.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[n.jsx(Zn,{value:f.value,onChange:f.onChange??yc,onKeyDown:f.onKeyDown,onEnter:f.onEnter,placeholder:f.placeholder,ghostText:f.ghostText,ghostHint:f.ghostHint,inputMode:f.inputMode,readOnly:f.readOnly,disabled:f.disabled,type:f.type,autoComplete:f.autoComplete,maxLength:f.maxLength,showCount:f.showCount,multiline:f.multiline,rows:f.rows,fullWidth:d,error:u,ariaLabel:r,required:l,ariaDescribedBy:f.helperText?g:void 0}),f.helperText&&n.jsx("div",{id:g,className:"panel-row__helper caption-1",children:f.helperText})]})}else a==="custom"&&(C=e.children);u&&a!=="input"&&a!=="dropdown"&&(C=n.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[C,n.jsx("span",{id:y,className:"caption-1 panel-row__error",role:"alert",children:u})]}));const h=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,v=f=>{p&&f.target===f.currentTarget&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),p())};return n.jsxs("div",{className:we("panel-row",c==="vertical"?"panel-row--vertical":"",h?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",p?"panel-row--clickable":""),onClick:p,onKeyDown:p?v:void 0,role:p?"button":void 0,tabIndex:p?0:void 0,children:[m!=null&&n.jsx("div",{className:"panel-row__icon",children:m}),n.jsxs("div",{className:"panel-row__left",children:[_?n.jsxs("label",{htmlFor:_,className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}):n.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}),i&&n.jsx("div",{className:"panel-row__sub caption-1",children:i})]}),n.jsx("div",{className:"panel-row__right",children:C})]})}function vc(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function K3({devices:e,onRelease:t,emptyLabel:a}){const{t:r,i18n:i}=xe.useTranslation();return n.jsx("div",{className:"panel-row panel-row--device",children:["left","right"].map(s=>{const l=e[s],u=s==="left"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return n.jsxs("div",{className:"panel-row__device-column",children:[n.jsxs("div",{className:"panel-row__device-head",children:[n.jsx("span",{className:"panel-row__device-side body-2b",children:u}),l&&t&&n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${u} ${r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(s)})]}),l?n.jsxs("div",{className:"panel-row__device-info",children:[n.jsxs("span",{className:"panel-row__device-kind",children:[l.device&&n.jsx(kt,{size:"small",variant:yu(l.device),fill:"soft",label:vu(l.device,r)}),vc(l)&&n.jsx("span",{className:"panel-row__device-detail body-3",children:vc(l)})]}),n.jsx("span",{className:"panel-row__device-name body-2b",children:l.productName||l.brand}),To(l.wornYear,l.wornMonth,l.wornDay,i.language)&&n.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:To(l.wornYear,l.wornMonth,l.wornDay,i.language)})})]}):n.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},s)})})}function br({title:e,titleLevel:t=2,icon:a,disc:r,actions:i,size:s="medium",minHeight:l,maxWidth:u,className:c,scrollable:d,scrollbarGutter:m="auto",compactRows:p=!1,useBorder:C=!0,useBg:_=!0,useRowBorder:y=!0,labelWidth:g,form:h=!1,loading:v,empty:f,children:w}){const b=we("panel",`panel--${s}`,h?"panel--form":"",l!==void 0?"panel--fill":"",C?"":"panel--no-border",_?"":"panel--no-bg",y?"":"panel--no-row-border",p?"panel--compact-rows":"",c),B={};l!==void 0&&(B.minHeight=l),u!==void 0&&(B.maxWidth=typeof u=="number"?`${u}px`:u),g!==void 0&&(B["--panel-label-width"]=typeof g=="number"?`${g}px`:g);const x=t?`h${t}`:"div";return n.jsxs("div",{className:b,style:Object.keys(B).length?B:void 0,children:[(!!e||r!=null)&&n.jsxs("div",{className:we("panel__header",r!=null?"panel__header--with-disc":""),children:[a&&n.jsx(at,{icon:a,label:typeof e=="string"?e:void 0,className:"panel__icon"}),n.jsxs("div",{className:"panel__title-group",children:[!!e&&n.jsx(x,{className:`panel__title ${r!=null?"body-3b":"h5b"}`,children:e}),r!=null&&n.jsx("p",{className:"panel__disc caption-1",children:r})]}),i&&n.jsx("div",{className:"panel__actions",children:i})]}),v?n.jsx(Sn,{variant:"loading"}):f!=null&&o.Children.toArray(w).length===0?n.jsx(Sn,{variant:"empty",children:f}):d?n.jsx("div",{className:we("panel__body--scroll",m==="stable"&&"panel__body--gutter-stable"),children:w}):w]})}function Y3({cols:e=2,layout:t="grid",gap:a=1,collapseAt:r,className:i,style:s,children:l}){const u=o.useRef(null),[c,d]=o.useState();o.useEffect(()=>{const p=u.current;if(r===void 0||!p||(d(p.clientWidth),typeof ResizeObserver>"u"))return;const C=new ResizeObserver(([_])=>d(_.contentRect.width));return C.observe(p),()=>C.disconnect()},[r]);const m=r!==void 0&&c!==void 0&&c<=r;return n.jsx("div",{ref:u,className:we("panel-grid",t==="columns"&&"panel-grid--columns",i),style:{"--panel-grid-cols":m?1:e,"--panel-grid-gap":typeof a=="number"?`${a}px`:a,...s},children:l})}function Z3(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function xc(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}Z3($t.t.bind($t)),xc($t.t.bind($t));const yr="none",X3=.5,J3=1.5,Q3=.25;function rs({title:e,valueLabel:t,value:a,min:r,max:i,step:s,tickStep:l,size:u,disabled:c,onChange:d}){return n.jsxs(Sn,{variant:"custom",label:e,useFullWidth:!0,children:[n.jsx(mu,{value:a,onChange:d,min:r,max:i,step:s,size:u,showBgTick:!0,tickStep:l,ariaLabel:e,disabled:c,className:"noise-settings__slider-input"}),n.jsx("div",{className:we("noise-settings__value","button-1",c?"noise-settings__value--disabled":""),children:t})]})}function _c({anchorRect:e,onClose:t,hideNoiseRows:a=!1}){const{t:r}=xe.useTranslation(),i=ln("(max-width: 767px)")?40:24,s=mr(),l=Ha(s?.settings??Va),u=s?.settings.type??"defaultNoise",c=s?.settings.enabled??!0,d=s?.playbackRate??1,m=s?.mainVolume??1,p=Math.round(m*100),C=o.useCallback(v=>{try{s?.setMainVolume(Math.max(0,Math.min(1,v/100)))}catch{}},[s]),_=o.useCallback(v=>{try{s?.setPlaybackRate(v)}catch{}},[s]),y=o.useCallback(v=>{const f=Math.min(Oa,Math.max(0,Math.round(v*10)/10));try{s?.setSettings({noiseRatio:f})}catch{}},[s]),g=o.useCallback(v=>{try{v===yr?s?.setSettings({enabled:!1}):s?.setSettings({type:v,enabled:!0})}catch{}},[s]),h=[{key:yr,label:r("training.noise.type.none","\uC5C6\uC74C")},...xc(r).map(v=>({key:v.value,label:v.label}))];return n.jsx(cn,{anchorRect:e,offset:12,onClose:t,ariaLabel:r("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:n.jsxs("div",{className:"noise-settings__header",children:[n.jsx("span",{children:r("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:r("common.close","\uB2EB\uAE30"),onClick:t})]}),children:n.jsxs(br,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[n.jsx(rs,{title:r("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:i,onChange:C}),n.jsx(rs,{title:r("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:X3,max:J3,step:Q3,size:i,onChange:_}),!a&&n.jsxs(n.Fragment,{children:[n.jsx(Sn,{variant:"custom",label:r("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:n.jsx(gn,{ariaLabel:r("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:h,value:c?u:yr,onChange:g})}),n.jsx(rs,{title:r("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:r("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:l.toFixed(1)}),value:l,min:0,max:Oa,step:nc,size:i,disabled:!c,onChange:y})]}),a&&n.jsx("div",{className:"noise-settings__width-ghost","aria-hidden":"true",inert:!0,children:n.jsx(Sn,{variant:"custom",label:"\xA0",useFullWidth:!0,children:n.jsx(gn,{ariaLabel:"width-ghost",size:40,shape:"rounded",options:h,value:yr,onChange:()=>{}})})})]})})}function wc({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:i=0,stepCount:s=0,pageIndex:l=0,pageCount:u=1,resultOpen:c=!1,hideNoiseRows:d=!1}){const{t:m}=xe.useTranslation(),[p,C]=o.useState(!1),[_,y]=o.useState(null),[g,h]=o.useState(!1),v=o.useRef(null),f=o.useRef(null),w=mr(),b=u>0,B=b&&l<u-1,x=!b||l>=u-1,A=i===Math.max(0,s);o.useEffect(()=>{e||(C(!1),y(null))},[e]);const k=o.useCallback(()=>{C(!1),y(null)},[]),N=o.useCallback(()=>{if(p){C(!1),y(null);return}const G=v?.current?.getBoundingClientRect();G&&y(G),t?.(),C(!0)},[p,t]),S=o.useCallback(()=>{if(p){C(!1),y(null);return}const G=f?.current?.getBoundingClientRect();G&&y(G),t?.(),C(!0)},[p,t]),E=ln("(max-width: 767px)"),O=o.useRef(null),[F,Y]=o.useState(null),M=o.useCallback(()=>{h(G=>{const U=!G;return Y(U?O.current?.getBoundingClientRect()??null:null),U})},[]),L=o.useCallback(()=>{h(!1),Y(null)},[]);o.useEffect(()=>{c&&(h(!1),Y(null))},[c]);const P=n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:m("training.meter.sentence","\uC7AC\uC0DD")}),n.jsx(Do,{analyser:w?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:m("training.meter.sentence","\uC7AC\uC0DD")})]}),n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:m("training.meter.noise","\uC18C\uC74C")}),n.jsx(Do,{analyser:w?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:m("training.meter.noise","\uC18C\uC74C")})]})]});return Cc(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[v.current,f.current].map(G=>G?.querySelector("button")??null).find(G=>!!G&&G.getClientRects().length>0)??v.current?.querySelector("button")??null),n.jsxs("div",{className:"pp-bottom",children:[n.jsxs("div",{className:"pp-bottom__left",children:[e?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pp-bottom__settings--desktop",children:n.jsx("div",{ref:v,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:N,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:m("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:m("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),n.jsx("div",{className:"pp-bottom__settings--mobile",children:n.jsx("div",{ref:f,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:S,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:m("training.settings","\uC124\uC815")})})})]}):null,e&&n.jsx("div",{ref:O,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:M,selected:g,"aria-expanded":E?g:void 0,ariaLabel:m("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&g&&!E&&n.jsx("div",{className:"pp-bottom__meters",children:P})]}),e&&g&&E&&F&&n.jsx(cn,{anchorRect:F,onClose:L,ariaLabel:m("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:n.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:P})}),n.jsxs("div",{className:"pp-bottom__right",children:[x&&n.jsx(me,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:m("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:m("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!A}),B&&n.jsx(me,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:m("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:m("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!A})]}),e&&p&&n.jsx(_c,{anchorRect:_,onClose:k,hideNoiseRows:d})]})}function Ac({title:e,subtitle:t,desc:a,depth:r,icon:i,wrapperStyle:s,iconTooltip:l,pageIndex:u,pageCount:c,progressMax:d,progressIndex:m,onBack:p,onClose:C}){const{t:_}=xe.useTranslation(),y=ln("(max-width: 767px)"),g=Number.isInteger(m)?m:u||0,h=Number.isInteger(d)?d:c||0,v=p||C,f=Array.isArray(r)?y?r[r.length-1]:r.join(" / "):r,w=typeof e=="string"?e.trim():e,b=typeof t=="string"?t.trim():t,B=!!(w||b),x=B?w||b:_("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),A=f||(w?t:void 0),k=y&&typeof A=="string"&&(A.includes(" \xB7 ")||A.includes(" / "))?A.split(/\s[·/]\s/).pop():A,N=o.useMemo(()=>{const S=s&&typeof s=="object"?{...s}:{};return!("width"in S)&&!("height"in S)&&(S.width="40px",S.height="40px"),S},[s]);return n.jsxs("header",{className:"pp-title training-popup-title",children:[n.jsxs("div",{className:"pp-title__left",children:[v?n.jsx(me,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:_("common.back","\uB4A4\uB85C"),onClick:v,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,n.jsx("div",{children:i?n.jsx(ql,{icon:i,label:e,tooltip:l,wrapperStyle:N}):null}),n.jsxs("div",{className:"pp-title__text",children:[k?n.jsx("span",{className:"pp-title__depth caption-1",children:k}):null,n.jsx("span",{className:`pp-title__title h2${B?"":" pp-title__title--empty"}`,children:x}),a?n.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),n.jsx(gu,{max:Math.max(0,h??0),index:Math.max(0,g??0)})]})}function e7(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function t7(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const Bc=(e,t)=>{if(!t)return t;const a=typeof $t?.t=="function"?$t.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function kc(e,t,a){const r=e,i=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",s=Bi().find(u=>u.key===(r?.category_0||r?.category_main_code)),l=s?.subs?.find(u=>u.key===(r?.category_1||r?.category_sub_code));return{title:i,label:r?.title||i,depth:t,icon:s?.icon,wrapperStyle:s?.color?{"--t-item-fg":s.color}:void 0,iconTooltip:[s?Bc(`topic.${s.key}`,s.label):void 0,l?Bc(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function os(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function Nc(e,t,a){if(!e||typeof e!="object"||Array.isArray(e))return e;const r=e,i=typeof a=="number"&&a>0?a:Date.now();return{...r,...r.shownAt===void 0&&t?{shownAt:t}:{},...r.answeredAt===void 0?{answeredAt:new Date(i).toISOString()}:{}}}function n7(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function a7({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:i=[],emptyMessage:s,buildResults:l,metaPatch:u}){const c=kc(t,a,r),d=typeof u=="function"?u(c)||{}:u||{},m=t?.id||t?.title||i.length;return{id:`${e}:${m}`,meta:{...c,...d},pages:i,emptyMessage:s,buildResults:l}}function r7(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function o7(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function s7(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function Ec(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function i7(e,t,a,r){return Ec(e,t*a+r)}function l7({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const i=e;if(Array.isArray(i.selectedValues))return r.every(s=>i.selectedValues.includes(s))&&i.selectedValues.every(s=>r.includes(s));if(typeof i.correct=="boolean")return i.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(i=>String(i)===String(a[t]));if(typeof t<"u")return r.some(i=>String(i)===String(t))}}function u7(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const Dc=o.createContext(null);function c7(){const e=o.useContext(Dc);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function d7({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,choices:s=[],onDone:l,onChange:u}){const{t:c}=xe.useTranslation(),d=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,C]=o.useState(()=>s.map(()=>null)),_=JSON.stringify(s),y=s.length;o.useEffect(()=>{C(Array.from({length:y},()=>null))},[_]);const g=o.useRef(void 0);o.useEffect(()=>{const w=g.current;typeof w=="number"&&typeof t=="number"&&typeof e=="number"&&w>=e&&t<e&&C(Array.from({length:y},()=>null)),g.current=t},[t,e,y]);const h=o.useMemo(()=>p.filter(w=>w!==null).length+1,[p]),v=o.useCallback(w=>{if(!Jn(m))return;const b=p;let B;if(b[w]!=null){const A=b[w];B=b.map(k=>k!==null&&k>=A?null:k)}else B=[...b],B[w]=h;C(B);const x={selectedOrder:B,words:s,__ts:Date.now()};try{typeof u=="function"&&u(x)}catch{}if(b[w]==null&&B.length>0&&B.every(A=>A!==null))try{typeof l=="function"&&l(x)}catch{}},[m,p,h,u,l,s]),f=i??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:f,onDone:l,children:n.jsx("div",{className:"training-step__cards",children:s.map((w,b)=>n.jsx($o,{item:{word:w},disabled:m==="disabled",selectable:!0,selected:p[b]!==null,orderRank:p[b],onSelect:()=>v(b),flipDelay:b*120,hideLabel:!1,hideAudio:!0},`${w}-${b}`))})})}function vr(e){return null}vr.__isTrainingPage=!0;function fa(e,t){const a=c7();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function Sc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l}=fa(e,t);return n.jsx(ns,{...a,index:r,stepIndex:i,isLast:s,onDone:l})}function jc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(es,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Tc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(ts,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Mc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(as,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Lc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(bc,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function p7({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(d7,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function ss(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const i of r){if(typeof i=="string"&&i.trim().length)return i.trim();if(typeof i=="number"||typeof i=="boolean")return String(i)}}}return null}function m7(e){return ss(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function $c(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=ss(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function Rc(e){const{score:t,contextsLength:a,results:r=[],subtitle:i,onReplay:s,onClose:l,inline:u=!1,pending:c=!1}=e||{},{t:d}=xe.useTranslation(),m=o.useId(),p=o.useCallback(()=>!c,[c]);o.useEffect(()=>{const f=a??0;if(t!=null&&f>0&&t/f>.5){const w=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(w)}},[t,a]);const C=o.useCallback(f=>{const w=$c(f),b=ss(f?.wording,f?.label);return w===!0?{variant:"main",label:b??d("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:w===!1?{variant:"danger",label:b??d("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:b??d("training.result.notJudged","\uBBF8\uD310\uC815")}},[d]),_=a??0,y=t??0,g=o.useMemo(()=>Array.isArray(r)?r:[],[r]),h=o.useMemo(()=>g.map(f=>{const w=f??{},b=m7(w)||d("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:B,label:x}=C(w),A=Array.isArray(w.corrects)?w.corrects:[],k=A.length?A.join(", "):w.answer!=null&&w.answer!==""?String(w.answer):null,N=typeof w.selectedText=="string"?w.selectedText:null,S=$c(w)===!0;return{problem:b,variant:B,label:x,answer:k,selectedText:N,isCorrect:S}}),[g,C,d]),v=o.useMemo(()=>h.some(f=>f.answer!==null||f.selectedText!==null),[h]);return n.jsx(Fn,{onClose:l,closeOnBackdrop:!1,inline:u,ariaLabel:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",beforeClose:p,footerClassName:"trp-result__foot",footer:({animateThen:f,closeWithAnimation:w})=>n.jsxs(n.Fragment,{children:[c&&n.jsx("p",{id:m,className:"trp-actions__reason caption-1",role:"status",children:d("training.result.pendingDone","\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsxs("div",{className:"trp-actions",children:[n.jsx(me,{htmlType:"button",size:56,type:"bar",label:d("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>f(s)}),n.jsx(me,{htmlType:"button",size:56,type:"bar",label:d("training.result.done","\uC644\uB8CC"),variant:"main",onClick:w,disabled:c,onDisabledClick:c?()=>{}:void 0,"aria-describedby":c?m:void 0})]})]}),children:()=>n.jsxs("div",{className:"trp-result is-on",children:[n.jsxs("header",{className:"trp-result__head",children:[n.jsx("p",{className:"trp-result__eyebrow caption-1",children:d("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),n.jsx("h1",{className:"trp-result__title h2",children:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),i&&n.jsx("p",{className:"trp-result__subtitle body-3",children:i}),n.jsx("div",{className:"trp-score",children:n.jsxs("div",{className:"trp-score__figure","aria-label":d("training.result.scoreAria",{correct:y,total:_}),children:[n.jsx("span",{className:"trp-score__big",children:y}),n.jsx("span",{className:"trp-score__sep",children:"/"}),n.jsx("span",{className:"trp-score__total",children:_})]})})]}),h.length>0&&n.jsx("section",{className:"trp-result__body",children:n.jsxs("div",{className:`result-table${v?" result-table--answer":""}`,role:"table","aria-label":d("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[n.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[n.jsx("span",{role:"columnheader",children:d("common.col.problem","\uBB38\uC81C")}),v&&n.jsx("span",{role:"columnheader",children:d("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),n.jsx("span",{className:"col-right",role:"columnheader",children:d("training.result.colJudge","\uD310\uC815")})]}),h.map((f,w)=>n.jsxs("div",{className:"result-table__row",role:"row",children:[n.jsxs("div",{className:"trp-row__problem",children:[n.jsx("span",{className:"trp-row__no caption-1",children:String(w+1).padStart(2,"0")}),n.jsx("div",{className:"trp-row__q body-2",children:f.problem})]}),v&&n.jsxs("div",{className:"trp-row__answers",children:[f.answer!==null&&n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:d("training.result.colAnswer","\uC815\uB2F5")}),n.jsx("span",{className:"trp-row__answer-value body-2",children:f.answer})]}),n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${f.isCorrect?"is-correct":"is-wrong"}`,children:d("training.result.colSelected","\uC120\uD0DD")}),n.jsx("span",{className:`trp-row__answer-value body-2 ${f.isCorrect?"is-correct":"is-wrong"}`,children:f.selectedText??"\u2014"})]})]}),n.jsx("div",{className:"trp-row__judge",children:n.jsx(kt,{variant:f.variant,label:f.label,fill:"soft",minWidth:80})})]},w))]})})]})})}const is=new Set;function h7(e){o.useEffect(()=>{if(!e||is.has(e))return;is.add(e);const t=()=>typeof document>"u"||document.visibilityState!=="hidden";let a=null,r=null,i=0,s=0;const l=()=>{const m=Date.now();a==null&&(a=m),r==null&&(r=m)},u=()=>{r!=null&&(i+=Date.now()-r,r=null)};t()&&l();const c=()=>{if(u(),a==null||i-s<1e3||s===0&&i<5e3)return;const m=a+s;s=i,ef({trainingType:e,startedAt:new Date(m).toISOString(),endedAt:new Date(a+i).toISOString()})},d=()=>{t()?l():c()};return typeof document<"u"&&document.addEventListener("visibilitychange",d),typeof window<"u"&&window.addEventListener("pagehide",c),()=>{typeof document<"u"&&document.removeEventListener("visibilitychange",d),typeof window<"u"&&window.removeEventListener("pagehide",c),c(),is.delete(e)}},[e])}function xr(e,t){return e&&e.id||`page-${t??0}`}function _r(e,t){return e&&e.key||`step-${t??0}`}function wr(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function C7(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const f7=300,g7=()=>{try{return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}catch{return!1}},jn=Object.freeze({}),Pc=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]);function ls(e){const t=e,a=t?.results||t?.answers||[],r=Array.isArray(a)&&a.length>0?a.length:null,i=Array.isArray(a)?a.filter(s=>s?.correct===!0||s?.isCorrect===!0||s?.score===1||s?.heard===!0||s?.judgement===!0).length:null;return{results:a,correct:r!=null?i:null,total:r}}const b7=e=>n.jsx(Rc,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose,pending:e.pending});function y7(e){const{scenario:t,title:a,subTitle:r,depth:i,icon:s,wrapperStyle:l,iconTooltip:u,pageIndex:c,pageCount:d,stepIndex:m,stepCount:p,onBack:C,onComplete:_,onRoundFinished:y,onNext:g,onSettings:h,useNoiseSetting:v=!0,children:f,ariaLabel:w,label:b,buildResults:B,onResult:x,typeKey:A,entryPoint:k,dailyTotal:N,itemRef:S,renderResultPopup:E,noiseOverride:O,hideNoiseRows:F=!1}=e;h7(A&&!Pc.has(A)?A:"");const Y=o.useRef(0);o.useEffect(()=>{Y.current=Date.now()},[]);const{t:M}=xe.useTranslation(),L=x,P=!!t,G=t?.id||null,U=t?.meta||{},z=Array.isArray(t?.pages)?t.pages:[],q=Array.isArray(f)||o.isValidElement(f)&&typeof f!="function"?o.Children.toArray(f).filter(o.isValidElement):[],$=q.length>0,V=ie=>ie===vr||ie?.__isTrainingPage===!0,H=$&&q.some(ie=>V(ie.type)),T=H?q.filter(ie=>V(ie.type)).map((ie,ve)=>{const Me=ie.props||{};return{id:`children-page-${ve}`,steps:o.Children.toArray(Me.children).filter(o.isValidElement),pageTop:Me.pageTop||Me.top||null,pageBottom:Me.pageBottom||Me.bottom||null}}):[{id:"children-page-0",steps:q}],D=$&&!P&&typeof f!="function",R=D?Math.max(1,T.length):0;o.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),o.useEffect(()=>{if(typeof document>"u"||!document.body)return;const ie=document.body;return ie.dataset.ihabTrainingPopupCount=String(Number(ie.dataset.ihabTrainingPopupCount||"0")+1),ie.classList.add("ihab-training-popup-open"),()=>{const ve=Number(ie.dataset.ihabTrainingPopupCount||"1")-1;ve>0?ie.dataset.ihabTrainingPopupCount=String(ve):(delete ie.dataset.ihabTrainingPopupCount,ie.classList.remove("ihab-training-popup-open"))}},[]),o.useEffect(()=>{if(!(typeof document>"u"||!document.body))return ny()},[]);const[I,W]=o.useState({...Va,enabled:!1}),ee=o.useRef(I);o.useEffect(()=>{ee.current=I},[I]);const oe=o.useRef(O),ce=o.useRef(!1),J=o.useRef(null);o.useEffect(()=>{let ie=!1;const ve=Me=>{if(ie)return;ce.current=!0;const Je=Me?za({...Va,enabled:!1},Me):{...Va},Oe=J.current;J.current=null;const Ye=Oe?za(Je,Oe):Je;ee.current=Ye,W(Ye),Oe&&!oe.current&&yi(Ye),Za(Ye);const X=oe.current;if(X){const de=typeof X=="function"?X(Ye):X,ae=za(Ye,de);ee.current=ae,W(ae),Za(ae)}};return rf().then(ve),()=>{ie=!0}},[]);const[re,Ne]=o.useState(null),[K,Q]=o.useState(null),pe=o.useCallback((ie,ve)=>{ie==="main"?Ne(ve):Q(ve)},[]),De=o.useRef(null),ye=o.useRef(null),ne=o.useCallback(()=>{ye.current!==null&&(clearTimeout(ye.current),ye.current=null);const ie=De.current;De.current=null,ie&&yi(ie)},[]);o.useEffect(()=>{if(typeof window>"u")return;const ie=()=>{document.visibilityState==="hidden"&&ne()};return window.addEventListener("pagehide",ne),document.addEventListener("visibilitychange",ie),()=>{window.removeEventListener("pagehide",ne),document.removeEventListener("visibilitychange",ie),ne()}},[ne]);const le=o.useCallback(ie=>{const ve=za(ee.current,ie);if(ee.current=ve,W(ve),!ce.current){J.current={...J.current??{},...ie},Za(ve);return}oe.current||(De.current=ve,ye.current!==null&&clearTimeout(ye.current),ye.current=setTimeout(ne,f7)),Za(ve)},[ne]),Ce=I.mainSpeed,ge=I.mainVolume,fe=o.useCallback(ie=>le({mainSpeed:ie}),[le]),$e=o.useCallback(ie=>le({mainVolume:ie}),[le]),Ve=o.useMemo(()=>({settings:I,setSettings:le,registerAnalyser:pe,mainAnalyser:re,noiseAnalyser:K,playbackRate:Ce,setPlaybackRate:fe,mainVolume:ge,setMainVolume:$e}),[I,le,pe,re,K,Ce,fe,ge,$e]),je=o.useRef(null),[Fe,qe]=o.useState(0),mt=o.useRef([]),[ct,rt]=o.useState("center"),[Ct,Be]=o.useState(!1),We=o.useRef(!1),_e=o.useRef(null),Ue=o.useCallback(ie=>{We.current||(We.current=!0,Be(!0),_e.current=setTimeout(()=>{try{ie()}catch{We.current=!1,Be(!1)}},g7()?0:G3))},[]);o.useEffect(()=>()=>{_e.current&&clearTimeout(_e.current)},[]);const Ae=o.useRef(C);o.useEffect(()=>{Ae.current=C}),o.useEffect(()=>{const ie=je.current,ve=document.activeElement;if(to(ie,ve),ie){const Me=Array.from(ie.querySelectorAll(fn)).filter(Je=>!Je.closest('[aria-hidden="true"]'))[0];if(Me)try{Me.focus()}catch{}}return()=>{const Me=document.activeElement;if(!Me||Me===document.body||ie&&ie.contains(Me))try{no(ve)?.focus?.()}catch{}}},[]),o.useEffect(()=>Un(()=>Ue(()=>{const ie=Ae.current;typeof ie=="function"&&ie()})),[Ue]),Qr(je,!0);const[Te,Se]=o.useState(!1),Xe=o.useRef(!1),[Qe,dt]=o.useState(null),ht=o.useRef(0),wt=o.useRef(0),ft=()=>{ht.current+=1,wt.current+=1,dt(null)},[Nt,gt]=o.useState(""),[it,Ke]=o.useState(()=>wr()),se=o.useRef(typeof c=="number"?c:null);o.useEffect(()=>{!P&&!D||(Ke(wr()),ft())},[P,G,D]),o.useEffect(()=>{D&&Ke(ie=>{const ve=Math.max(0,Math.min(ie.pageIndex,Math.max(0,R-1)));return ve!==ie.pageIndex?{...ie,pageIndex:ve,stepIndex:0}:ie})},[D,R]);const ke=D?Math.max(0,Math.min(it.pageIndex,R-1)):0,ze=D?T[ke]:null,nt=D&&ze&&Array.isArray(ze.steps)?ze.steps:[],Ie=P?it.pageIndex:D?ke:typeof c=="number"?c:0,Ge=P?z[Math.max(0,Math.min(it.pageIndex,Math.max(0,z.length-1)))]:null,bt=P&&Ge&&Array.isArray(Ge.steps)?Ge.steps:[],Re=P?bt.length:D?nt.length:typeof p=="number"?p:0,tt=P||D?Math.max(0,Math.min(it.stepIndex,Math.max(0,Re))):typeof m=="number"?m:0,xt=P?z.length:D?R:typeof d=="number"?d:0;o.useEffect(()=>{if(!P&&!D)return;const ie=P?xr(Ge,Ie):ze?.id||`children-page-${Ie??0}`,ve=new Date().toISOString();for(let Me=0;Me<=tt;Me+=1){const Je=P?_r(bt[Me],Me):`step-${Me}`,Oe=lt(ie,Je);ot.current.has(Oe)||ot.current.set(Oe,ve)}},[P,D,Ie,tt,ze?.id]),o.useLayoutEffect(()=>{const ie=se.current;if(typeof Ie=="number"&&ie!==null&&Ie!==ie&&Ie>ie)try{gt(M("training.problemNotice",{n:Ie+1}))}catch{}se.current=typeof Ie=="number"?Ie:se.current},[Ie,c,M]),o.useLayoutEffect(()=>{const ie=je.current;if(!ie)return;const ve=()=>ie.querySelector(".page-popup__scroll");let Me=null,Je=null,Oe=null;const Ye=Le=>{const He=ve();if(!He)return;const ut=He.scrollHeight<=He.clientHeight;if(rt(ut?"center":"top"),Le&&!Xe.current){Xe.current=!0;try{Se(!0)}catch{}try{ae.disconnect()}catch{}}},X=()=>{Me!==null&&cancelAnimationFrame(Me),Me=requestAnimationFrame(()=>{Je!==null&&clearTimeout(Je),Je=setTimeout(()=>Ye(!0),60)})},de=()=>{Oe!==null&&cancelAnimationFrame(Oe),Oe=requestAnimationFrame(()=>Ye(!1))};X(),window.addEventListener("resize",de);const ae=new MutationObserver(X);ae.observe(ie,{childList:!0,subtree:!0,attributes:!0});const be=setTimeout(()=>{Xe.current||Ye(!0)},400);return()=>{window.removeEventListener("resize",de),Me!==null&&cancelAnimationFrame(Me),Je!==null&&clearTimeout(Je),Oe!==null&&cancelAnimationFrame(Oe),clearTimeout(be);try{ae.disconnect()}catch{}}},[je]);const Mt=o.useCallback(ie=>{je.current&&(je.current._childOnNext=ie)},[]),et=o.useCallback(ie=>{je.current&&(je.current._childOnResult=ie)},[]),ot=o.useRef(new Map),lt=(ie,ve)=>`${ie}\0${ve}`,st=o.useCallback((ie,ve,Me)=>{Ke(Je=>{const Oe=Je.answersByPage[ie]||{},Ye=Oe[ve],X=os(Me),de=os(Ye);if(Ye&&de>X)return Je;const ae=Nc(Me,ot.current.get(lt(ie,ve)),X);return{...Je,answersByPage:{...Je.answersByPage,[ie]:{...Oe,[ve]:ae}}}})},[Ke]),jt=o.useCallback((ie,ve,Me)=>{const Je=xr(Ge,Ie),Oe=_r(ie,ve);st(Je,Oe,Me)},[Ge,Ie,st]),Ht=o.useCallback((ie,ve,Me)=>{const Je=xr(Ge,Ie),Oe=_r(ie,ve);st(Je,Oe,Me),!Me?.allowChange&&ie?.autoAdvance!==!1&&Ke(Ye=>({...Ye,stepIndex:Math.max(Ye.stepIndex,ve+1)}))},[Ge,Ie,st,Ke]),mn=o.useCallback((ie,ve)=>{const Me=ze?.id||`children-page-${Ie??0}`,Je=typeof ve=="number"?ve:tt??0,Oe=`step-${Je}`;st(Me,Oe,ie),ie?.allowChange||Ke(Ye=>({...Ye,stepIndex:Math.max(Ye.stepIndex,Je+1)}))},[ze,Ie,tt,st,Ke]),hn=o.useCallback((ie,ve)=>{const Me=ze?.id||`children-page-${Ie??0}`,Je=`step-${typeof ve=="number"?ve:tt??0}`;st(Me,Je,ie)},[ze,Ie,tt,st]),Tn=D?{currentPageIndex:Ie??0,currentStepIndex:tt??0,totalStepsInPage:nt.length,handleStepDone:mn,handleStepChange:hn}:null,On=async()=>{const ie=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:z,flowState:it,answersByPage:it.answersByPage})):null;return typeof L=="function"&&await Promise.resolve(L(ie))||ie},Hn=async()=>{const ie=ze?.id||`children-page-${it.pageIndex}`,ve=it.answersByPage[ie]||{},Me=H?(()=>{const Ye={};let X=0;return T.forEach(de=>{const ae=it.answersByPage[de.id]||{},be=Array.isArray(de.steps)?de.steps.length:0;for(let Le=0;Le<be;Le+=1){const He=ae[`step-${Le}`];typeof He<"u"&&(Ye[`step-${X+Le}`]=He)}X+=be}),Ye})():ve;if(typeof B=="function"){const Ye=await Promise.resolve(B(Me,{pageAnswers:ve,answersByPage:it.answersByPage,pages:T,currentPageId:ie}));return typeof L=="function"&&await Promise.resolve(L(Ye))||Ye}const Je=Object.entries(ve).map(([Ye,X],de)=>({index:de,key:Ye,payload:X})),Oe={results:Je,answers:Je,score:0};return typeof L=="function"&&await Promise.resolve(L(Oe))||Oe},Pt=()=>{const ie=++ht.current,ve=()=>ie!==ht.current;try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(P){const Oe=On();dt(jn);const Ye=Oe;Promise.resolve(Ye).then(X=>{ve()||dt(X||{isEmpty:!0})}).catch(X=>{!ve()&&dt({isEmpty:!0})});return}if(D){const Oe=Hn();dt(jn);const Ye=Oe;Promise.resolve(Ye).then(X=>{ve()||dt(X||{isEmpty:!0})}).catch(X=>{!ve()&&dt({isEmpty:!0})});return}const Me=je.current&&je.current._childOnResult,Je=Oe=>{try{return Oe?Oe():void 0}catch{return}};if(typeof Me=="function"){const Oe=Je(Me);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}Oe&&typeof Oe.then!="function"?dt(Oe):dt(Oe&&typeof Oe.then=="function"?jn:{});const Ye=()=>{ve()||dt(X=>X===jn?{}:X)};Promise.resolve(Oe).then(X=>{X&&!ve()?dt(X):Ye()}).catch(X=>{Ye()});return}if(typeof L=="function"){const Oe=Je(L);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}Oe&&typeof Oe.then!="function"?dt(Oe):dt(Oe&&typeof Oe.then=="function"?jn:{});const Ye=()=>{ve()||dt(X=>X===jn?{}:X)};Promise.resolve(Oe).then(X=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}X&&!ve()?dt(X):Ye()}).catch(X=>{console.error("viewResults external handler failed",X),Ye()});return}},vn=()=>{if(P){if(typeof Ie=="number"&&typeof xt=="number"&&Ie<xt-1){Ke(ve=>({...ve,pageIndex:ve.pageIndex+1,stepIndex:0}));return}return Pt()}if(D){const ve=nt.length;if(typeof tt=="number"&&tt<ve-1){Ke(Me=>({...Me,stepIndex:Me.stepIndex+1}));return}if(typeof Ie=="number"&&typeof xt=="number"&&Ie<xt-1){Ke(Me=>({...Me,pageIndex:Me.pageIndex+1,stepIndex:0}));return}return Pt()}if(typeof g=="function"){try{g()}catch{}return}const ie=je.current&&je.current._childOnNext;if(typeof ie=="function"){try{ie()}catch{}return}},Ft=P?U.title||U.label||w||M("common.popup","\uD31D\uC5C5"):a||b||(Array.isArray(i)?i[i.length-1]:void 0)||w||M("common.popup","\uD31D\uC5C5"),zt=w||Ft,Mn=P?U.title??U.label??Ft:a??b??Ft,on=(ie,ve)=>{const Me=xr(Ge,Ie),Je=_r(ie,ve),Oe=it.answersByPage[Me]?.[Je],Ye=C7(ie,{page:Ge,pageIndex:Ie,step:ie,stepIndex:ve,storedPayload:Oe,answersByPage:it.answersByPage,flowState:it}),X={key:Je,index:ve,stepIndex:tt,isLast:ve===bt.length-1};switch(ie?.type){case"listen":return n.jsx(ns,{...X,...Ye,onDone:de=>Ht(ie,ve,de)});case"confirm":return n.jsx(es,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});case"confirmWithText":return n.jsx(ts,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});case"orderList":return n.jsx(as,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});default:return null}},xn=o.useRef(void 0);o.useEffect(()=>{const ie=xn.current;if(xn.current=Ie,ie===void 0||ie===Ie||!lr())return;const ve=je.current;if(!ve)return;const Me=document.activeElement;if(!(!Me||Me===document.body||!ve.contains(Me)||Me.disabled===!0))return;const Je=ve.querySelector(`.training-steps ${fn.split(", ").join(", .training-steps ")}`)??Array.from(ve.querySelectorAll(fn)).find(Oe=>!Oe.closest('[aria-hidden="true"]'));try{Je?.focus()}catch{}},[Ie]);const zn=P?z.length>0?n.jsx("div",{className:"training-steps",children:bt.map((ie,ve)=>on(ie,ve))},`replay-${Fe}`):n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"pp-empty",children:t?.emptyMessage||M("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,_n=D?n.jsxs(Dc.Provider,{value:Tn,children:[ze?.pageTop?n.jsx("div",{className:"training-page-top",children:ze.pageTop}):null,n.jsx("div",{className:"training-steps",children:nt.map((ie,ve)=>{const Me=ie;return o.cloneElement(Me,{...Me.props,_stepIndex:ve,_totalSteps:nt.length,_stepKey:`step-${ve}`,_pageIndex:Ie})})},`replay-${Fe}`),ze?.pageBottom?n.jsx("div",{className:"training-page-bottom",children:ze.pageBottom}):null]}):null,Vt=o.useRef(-1),Lt=o.useCallback(()=>{if(!A)return;const ie=Qe,{results:ve,correct:Me,total:Je}=ls(Qe),Oe={correct:Me,total:Je,attempt:mt.current.length+1,previousAttempts:[...mt.current]};if(Vt.current===wt.current)return Oe;Vt.current=wt.current,tf({items:af(ve),category:Pc.has(A)?"sentence":"word",trainingType:A,entryPoint:k??"sentence",itemRef:S??null,correct:Me,total:Je,score:typeof ie?.score=="number"?ie.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-Y.current)/1e3)),dailyTotal:N??null});try{y?.(Oe)}catch{}return Oe},[A,k,N,S,Qe,y]);o.useEffect(()=>{!Qe||Qe===jn||Qe?.isEmpty||(ls(Qe).total??0)>0&&Lt()},[Qe,Lt]);const Wt=o.useCallback(()=>{const ie=Lt();ft(),Ue(()=>{typeof _=="function"&&_(ie),typeof C=="function"&&C()})},[_,C,Lt,dt,Ue]),Cn=o.useCallback(()=>gt(""),[gt]),It=o.useCallback(()=>{Ue(()=>{typeof C=="function"&&C()})},[C,Ue]),sn=n.jsxs("div",{className:`page-popup${Ct?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":zt,children:[n.jsxs("div",{ref:je,className:`page-popup__panel ${Te?"":"page-popup__panel--measuring"} ${ct==="center"?"page-popup__panel--center":ct==="top"?"page-popup__panel--top":""}`,children:[n.jsx(Ac,{title:Mn,subtitle:P?U.subtitle||U.label:Array.isArray(i)?i.join(" / "):void 0,desc:P?void 0:r,depth:P?U.depth:i,icon:P?U.icon:s,wrapperStyle:P?U.wrapperStyle:l,iconTooltip:P?U.iconTooltip:u,progressMax:xt,progressIndex:Ie,pageIndex:Ie,pageCount:xt,onBack:It,onClose:It}),n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content ${ct==="center"?"page-popup__content--center":"page-popup__content--top"}${e.contentFull?" page-popup__content--full":""}`,children:D?_n:P?zn:typeof f=="function"?f({registerOnNext:Mt,registerOnResult:et,panelRef:je,setResultOverlay:dt}):f})}),n.jsx(wc,{onSettings:h,onNext:vn,onResult:Pt,useNoiseSettingBtn:!!(P?U.useNoiseSetting??!0:v),stepIndex:tt,stepCount:Re,pageIndex:Ie,pageCount:xt,resultOpen:!!(Qe&&!Qe.isEmpty),hideNoiseRows:F})]}),Qe&&!Qe.isEmpty&&(E??b7)({score:Qe.score,results:Qe.results||Qe.answers||[],contextsLength:Qe.results?Qe.results.length:Qe.answers?Qe.answers.length:0,onReplay:()=>{if(Y.current=Date.now(),Qe!==jn){const{correct:ie,total:ve}=ls(Qe);mt.current.push({correct:ie,total:ve})}if(ft(),qe(ie=>ie+1),P){if(Ke(wr()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(D){Ke(wr());return}try{const ie=je.current&&je.current._childOnResult;typeof ie=="function"&&ie({replay:!0})}catch{}},onClose:Wt,pending:Qe===jn}),Qe?.isEmpty&&n.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:n.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"page-popup__empty",children:M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),n.jsx("div",{className:"page-popup__bottom",children:n.jsx(me,{htmlType:"button",variant:"main",size:48,onClick:Wt,label:M("training.result.done","\uC644\uB8CC")})})]})}),n.jsx(ua,{message:Nt,position:"top",onClose:Cn})]}),Dt=n.jsx(Ko.Provider,{value:Ve,children:sn});return typeof document<"u"&&document.body?en.createPortal(Dt,document.body):Dt}const In=y7;In.Page=vr,In.ListenStep=Sc,In.ConfirmStep=jc,In.ConfirmWithTextStep=Tc,In.OrderListStep=Mc,In.CardStep=Lc,In.CardOrderStep=p7;function v7({label:e,homonum:t}){const a=aa()?.(e,t)??"",{imgRef:r,loading:i,hasImage:s,onLoad:l,onError:u}=Lo(a);return s?n.jsxs("div",{className:"tooltip-word-image__cell",children:[i&&n.jsx("div",{className:"tooltip-word-image__spinner"}),n.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:i?0:1},onLoad:l,onError:u})]}):n.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:n.jsx("span",{children:e})})}function Fc({words:e,anchorRect:t}){const a=o.useRef(null),[r,i]=o.useState(null);return o.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:s,offsetHeight:l}=a.current,u=window.innerWidth;let c=t.left+t.width/2-s/2,d=t.top-l-8;d<8&&(d=t.bottom+8),c=Math.max(8,Math.min(c,u-s-8)),i({left:c,top:d})},[t]),!t||e.length===0?null:en.createPortal(n.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:n.jsx("div",{className:"tooltip-word-image__cells",children:e.map(s=>n.jsx(v7,{label:s.label,homonum:s.homonum},`${s.label}_${s.homonum??1}`))})}),document.body)}function x7({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:i,groups:s,selected:l=[],onSelect:u,maxSelect:c,onClearSelection:d,onPrint:m,onPrintEmpty:p,className:C,emptyHint:_,sectionType:y="page",disc:g}){const{t:h,i18n:v}=xe.useTranslation(),f=v.language?.startsWith("ko")??!1,{anchorRect:w,openAt:b,close:B}=Ea(),[x,A]=o.useState(null),k=o.useCallback(()=>{B(),A(null)},[B]);Rb(k,!!x);const N=(r??"").trim(),S=/^[^,[\]\s]+$/.test(N)?N:"",E=S.length>0,O=r===void 0&&t===void 0,F=E?"match":O?"original":"ganada",[Y,M]=o.useState(()=>F),[L,P]=o.useState("50"),[G,U]=o.useState(1),[z,q]=o.useState(E);z!==E&&(q(E),M(F));const $=Y==="match"&&!E||Y==="original"&&!O?F:Y,V=o.useMemo(()=>[...E?[{value:"match",label:h("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],...O?[{value:"original",label:h("wordSearch.sort.original",{defaultValue:"\uBC1B\uC740 \uC21C\uC11C"})}]:[],{value:"ganada",label:h("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:h("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:h("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:h("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:h("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:h("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[h,E,O]),H=o.useMemo(()=>["10","25","50","100"].map(ne=>({value:ne,label:h("wordSearch.pageSize",{count:Number(ne),defaultValue:`${ne}\uAC1C\uC529 \uBCF4\uAE30`})})),[h]),T=ne=>ne.words?.[0],D=o.useMemo(()=>{const ne=[...S].length,le=FC(S),Ce=new Map;return ge=>{let fe=Ce.get(ge);return fe===void 0&&(fe=le((ge.words?.[0]?.label??"").slice(0,ne))?0:1,Ce.set(ge,fe)),fe}},[S]),R=o.useCallback((ne,le)=>{const Ce=$e=>T($e)?.label??"",ge=$e=>T($e)?.syllables??[...Ce($e)].length,fe=$e=>($e.words??[]).reduce((Ve,je)=>{const Fe=parseInt(je.grade??"",10);return Number.isFinite(Fe)&&Fe<Ve?Fe:Ve},999);switch($){case"match":return D(ne)-D(le)||an(Ce(ne),Ce(le));case"ganada":return an(Ce(ne),Ce(le));case"ganada_desc":return an(Ce(le),Ce(ne));case"syllable":return ge(ne)-ge(le)||an(Ce(ne),Ce(le));case"syllable_desc":return ge(le)-ge(ne)||an(Ce(ne),Ce(le));case"grade":return fe(ne)-fe(le)||an(Ce(ne),Ce(le));case"grade_desc":return fe(le)-fe(ne)||an(Ce(ne),Ce(le));default:return 0}},[$,D]),I=o.useMemo(()=>i.slice().sort(R),[i,R]),W=Number(L)||10,ee=o.useMemo(()=>(s??[]).flatMap(ne=>ne.items.slice().sort(R).map(le=>({item:le,label:ne.label}))),[s,R]),oe=s?ee.length:I.length,ce=Math.max(1,Math.ceil(oe/W)),J=Math.min(G,ce),re=o.useMemo(()=>I.slice((J-1)*W,J*W),[I,J,W]),Ne=o.useMemo(()=>{if(!s)return null;const ne=ee.slice((J-1)*W,J*W),le=new Map;for(const{item:Ce,label:ge}of ne)le.has(ge)||le.set(ge,[]),le.get(ge).push(Ce);return[...le.entries()].map(([Ce,ge])=>({label:Ce,items:ge}))},[s,ee,J,W]);o.useEffect(()=>{U(1)},[Y,L,oe,r]);const K=oe>0?n.jsxs("div",{className:"word-search-result-block__toolbar",children:[n.jsx(pn,{size:40,options:V,value:$,onChange:M,ariaLabel:h("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),n.jsx(pn,{size:40,options:H,value:L,onChange:P,ariaLabel:h("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),n.jsx(or,{page:J,totalPages:ce,onChange:U})]}):void 0,Q=ne=>{u&&u(ne)},pe=t!==void 0&&a?n.jsxs(n.Fragment,{children:[h("wordSearch.resultTitlePrefix","\uCD1D "),n.jsx("span",{style:{color:"var(--color-main)"},children:t}),h("wordSearch.resultTitleSuffix",{unit:f?KC(a):a})]}):void 0,De=t!==void 0&&t>0&&c!==void 0&&a?h("wordSearch.resultDisc",{unit:f?ZC(a):a,max:c,selected:l.length}):void 0,ye=g??De;return n.jsxs(da,{type:y,className:we("word-search-result-block",C),children:[n.jsxs("div",{className:"word-search-result-block__inner",children:[(pe||K||ye)&&n.jsxs("div",{className:"word-search-result-block__head",children:[n.jsxs("div",{className:"word-search-result-block__head-main",children:[e&&n.jsx(at,{icon:e,className:"word-search-result-block__head-icon"}),pe&&n.jsx("span",{className:"word-search-result-block__title h3",children:pe})]}),K&&n.jsx("div",{className:"word-search-result-block__head-actions",children:K}),ye&&n.jsx("div",{className:"word-search-result-block__head-disc body-3",children:ye})]}),(s?s.length===0:i.length===0)&&n.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[n.jsx("p",{className:"word-search-result-block__empty body-3",children:h("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),_&&n.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:_})]}),s?(Ne??[]).map(ne=>n.jsx("div",{className:"word-search-result-block__group",children:n.jsx("div",{className:"word-search-result-block__items",children:ne.items.map(le=>{const Ce=l.includes(le.id);return n.jsx("div",{onMouseEnter:ge=>{b(ge.currentTarget),A(le.words??[])},onMouseLeave:k,children:n.jsx(me,{htmlType:"button",size:"word",align:"grid",label:(le.words??[]).map(ge=>ge.label),subLabel:(le.words??[]).some(ge=>ge.subLabel)?(le.words??[]).map(ge=>ge.subLabel):void 0,selected:Ce,onClick:()=>Q(le.id),minWidth:200})},le.id)})})},ne.label)):n.jsx("div",{className:"word-search-result-block__items",children:re.map(ne=>{const le=l.includes(ne.id);return n.jsx("div",{onMouseEnter:Ce=>{b(Ce.currentTarget),A(ne.words??[])},onMouseLeave:k,children:n.jsx(me,{htmlType:"button",size:"word",align:"grid",label:(ne.words??[]).map(Ce=>Ce.label),subLabel:(ne.words??[]).some(Ce=>Ce.subLabel)?(ne.words??[]).map(Ce=>Ce.subLabel):void 0,selected:le,onClick:()=>Q(ne.id),minWidth:200})},ne.id)})}),x&&w&&n.jsx(Fc,{words:x,anchorRect:w})]}),ce>1&&n.jsx("div",{className:"word-search-result-block__pagination-bottom",children:n.jsx(or,{page:J,totalPages:ce,onChange:U})}),(d||m)&&n.jsxs("div",{className:"word-search-result-block__actions",children:[d&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:h("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:d}),m&&n.jsx("div",{onClick:l.length===0?p:void 0,children:n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",label:h("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:m})})]})]})}function _7(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,i=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:i}})}function w7({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:i=4,minCount:s=1,combinationSections:l,combinationSectionsForSlot:u,onSelect:c,placeholder:d="-",className:m,title:p,titleIcon:C,disc:_,showInfoButton:y=!0,onClearPhoneme:g,onSearch:h,onSearchEmpty:v,searchDisabled:f=!1,searchLabel:w,searchChecking:b=!1,pairMode:B=!1,sectionType:x="page",beforeSearchContent:A,beforeContent:k,afterContent:N,hideCountControl:S=!1,ordinal:E=!1}){const{t:O}=xe.useTranslation(),F=o.useMemo(()=>O("wordPairs.infoNotes",{returnObjects:!0}),[O]),Y=o.useMemo(()=>Array.from({length:i-s+1},(D,R)=>{const I=s+R;return{key:String(I),label:O("wordPairs.count",{n:I})}}),[O,i,s]),M=o.useMemo(()=>O("wordPairs.ordinals",{returnObjects:!0}),[O]),L=o.useCallback(D=>E?O("wordPairs.phonemeOrdinalLabel",{ordinal:M[D-1]??D}):a===1?O("wordPairs.phonemeSingleLabel","\uC74C\uC808"):O("wordPairs.phonemeN",{n:D}),[E,M,a,O]),P=o.useCallback(D=>E?O("wordPairs.phonemeContrastOrdinalLabel",{ordinal:M[D-1]??D}):a===1?O("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):O("wordPairs.phonemeContrast",{n:D}),[E,M,a,O]),G=o.useCallback((D,R)=>R?n.jsxs(n.Fragment,{children:[D,n.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):D,[]),{anchorRect:U,toggleAt:z,close:q}=Ea(),$=o.useCallback(D=>r(Number(D)),[r]),V=ln("(max-width: 767px)"),H=o.useCallback(D=>_7(D,e).map(({label:R,value:I,displayLabel:W})=>{const ee=!!I&&I!=="\uC5C6\uC74C";return n.jsxs("span",{className:we("phoneme-select-block__cell-jamo-part",I?"":"phoneme-select-block__cell-jamo-part--empty",ee?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[n.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${I==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:I==="\uC5C6\uC74C"?"x":I||d}),ee&&n.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:W??R})]},R)}),[e,d]),T=n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:40,type:V?"dot":void 0,icon:"info",label:V?void 0:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),className:U?"is-selected":void 0,"aria-expanded":!!U,"aria-haspopup":"dialog",onClick:D=>z(D.currentTarget)})}),U&&n.jsx(Gn,{title:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:F,anchorRect:U,onClose:q})]});return n.jsxs(da,{type:x,title:p,icon:C,disc:_,action:y?T:void 0,className:we("phoneme-select-block",m),children:[k,!S&&n.jsx("div",{className:"phoneme-select-block__controls",children:n.jsx(gn,{options:Y,value:String(a),onChange:$,size:40,ariaLabel:O("wordPairs.countLabel","\uC74C\uC18C \uAC1C\uC218"),className:"phoneme-select-block__count-control"})}),n.jsx("div",{className:"phoneme-select-block__cells",children:B?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(I)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:L(R+1)})]},R)})}),n.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:O("wordPairs.phonemeSelect.vs","\uB300")}),n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2+1]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(I)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:P(R+1)})]},R)})})]}):t.map((D,R)=>n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(D)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:L(R+1)})]},R))}),(l||u)&&n.jsx("div",{className:"phoneme-select-block__panels",children:n.jsx("div",{className:"phoneme-select-block__detail",children:B?n.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2]??{};return n.jsx(Dn,{title:G(L(R+1),R===0),sections:u?u(I,R*2):l,selected:I,onSelect:c?.(R*2),align:"newline"},R)})}),n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2+1]??{};return n.jsx(Dn,{title:P(R+1),sections:u?u(I,R*2+1):l,selected:I,onSelect:c?.(R*2+1),align:"newline"},R)})})]}):t.map((D,R)=>n.jsx(Dn,{title:G(L(R+1),R===0),sections:u?u(D,R):l,selected:D,onSelect:c?.(R),align:"newline"},R))})}),A&&n.jsx("div",{className:"phoneme-select-block__before-search",children:A}),(g||h||b)&&(()=>{const D=t.every(R=>{const I=LC(R);return Object.entries(I).every(([W,ee])=>!ee||W==="coda"&&ee===di)});return n.jsxs("div",{className:"phoneme-select-block__search-row",onClick:D?v:void 0,children:[g&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:O("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:D,onClick:D?void 0:g}),h?n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",icon:b?n.jsx("span",{className:"phoneme-select-block__spinner","aria-hidden":"true"}):void 0,label:w??O("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:D||f||b,onDisabledClick:b?()=>{}:void 0,"aria-busy":b||void 0,onClick:h}):b?n.jsxs("div",{className:"phoneme-select-block__checking","aria-busy":"true",children:[n.jsx("div",{className:"phoneme-select-block__spinner"}),n.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:w??O("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):null]})})(),N]})}function A7({title:e,sections:t,selected:a,onSelect:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,headerAction:d,className:m}){const{t:p}=xe.useTranslation();return n.jsx(Dn,{className:m,title:e??p("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,headerAction:d,align:"inline"})}function B7({title:e,headerAction:t,sections:a,selected:r,onSelect:i,className:s}){const{t:l}=xe.useTranslation();return a.length===0?null:n.jsx(Dn,{className:s,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:i,align:"newline"})}function k7({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:i,positionCount:s,onPositionCountChange:l,inputMode:u,onInputModeChange:c,className:d}){const{t:m}=xe.useTranslation(),p={searchMode:m("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:m("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:m("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:m("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:m("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:m("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:m("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:m("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:m("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:m("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:m("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},C=h=>m("wordPairs.count",{n:h}),_=[{label:p.searchMode,items:[p.include,p.pick,p.explicit],display:"segmented",labelAction:n.jsx(La,{title:m("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[m("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),m("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),m("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:p.phonemeOrder,items:[p.orderAny,p.orderMatch],display:"segmented",labelAction:n.jsx(La,{items:m("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:p.count,items:[C(1),C(2)],display:"segmented"},{label:p.inputMode,items:[p.charInput,p.pronInput],display:"segmented",labelAction:n.jsx(La,{title:m("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[m("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),m("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],y={[p.searchMode]:t==="explicit"?p.explicit:t==="pick"?p.pick:p.include,[p.phonemeOrder]:r==="ordered"?p.orderMatch:p.orderAny,[p.count]:C(s),[p.inputMode]:u==="phoneme"?p.pronInput:p.charInput},g=(h,v)=>{v===p.searchMode?a(h===p.explicit?"explicit":h===p.pick?"pick":"include"):v===p.phonemeOrder?i(h===p.orderMatch?"ordered":"unordered"):v===p.count?l(h===C(2)?2:1):v===p.inputMode&&c(h===p.pronInput?"phoneme":"word")};return n.jsx(Dn,{className:d,title:e??m("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:_,selected:y,onSelect:g,align:"inline"})}function N7(e){const{title:t,items:a,columns:r,gridTemplateColumns:i,mobileGridTemplateColumns:s,searchPlaceholder:l,searchFn:u,defaultSortKey:c,defaultSortAsc:d=!0,selectedId:m,selectedIds:p,onSelect:C,onClose:_,pageSizeOptions:y=[10,25,50,100],initialPageSize:g,emptyText:h,noMatchText:v,countLabel:f,topContent:w,className:b=""}=e,{t:B}=xe.useTranslation(),x=l??B("common.search","\uAC80\uC0C9"),A=h??B("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),k=v??B("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"),[N,S]=o.useState(""),[E,O]=o.useState(c??r[0]?.key??""),[F,Y]=o.useState(d),[M,L]=o.useState(String(g??y[0]??10)),[P,G]=o.useState(1);o.useEffect(()=>{G(1)},[N,M]);const U=u!==null,z=o.useCallback((ee,oe)=>{if(!oe)return!0;const ce=oe.toLowerCase();return r.some(J=>{const re=ee[J.key];return re==null?!1:String(re).toLowerCase().includes(ce)})},[r]),q=u??z,$=o.useMemo(()=>{const ee=U?a.filter(oe=>q(oe,N)):a;return E?[...ee].sort((oe,ce)=>{const J=oe[E],re=ce[E];return J===re?0:uo(J,re,F)}):ee},[a,N,E,F,U,q]),V=Math.max(1,Math.ceil($.length/Number(M)));P>V&&G(V);const H=Math.min(P,V),T=$.slice((H-1)*Number(M),H*Number(M)),D=o.useCallback(ee=>{E===ee?Y(oe=>!oe):(O(ee),Y(!0)),G(1)},[E]),R=o.useMemo(()=>{if(typeof f=="function"){const ee=$.length,oe=f(ee);if(typeof oe=="string"){const ce=oe.lastIndexOf(String(ee));if(ce>=0)return{prefix:oe.slice(0,ce),suffix:oe.slice(ce+String(ee).length)}}return{label:oe}}if(typeof f=="string"&&f.includes("{n}")){const[ee,oe]=f.split("{n}");return{prefix:ee,suffix:oe}}return{prefix:B("common.totalCountPrefix","\uCD1D "),suffix:B("common.totalCountSuffix","\uAC1C")}},[f,$.length,B]),I=o.useMemo(()=>r.map(ee=>({label:ee.label,onClick:ee.sortable!==!1?()=>D(ee.key):void 0,className:ee.className,sortDir:ee.sortable!==!1&&E===ee.key?F?"asc":"desc":null})),[r,E,F,D]),W=o.useMemo(()=>y.map(ee=>({value:String(ee),label:B("common.pageSizeLabel",{n:ee})})),[y,B]);return n.jsxs(Fn,{className:`popup-list ${b}`,title:t,onClose:_,children:[w,"label"in R&&n.jsx("p",{className:"toolbar__count body-1",children:R.label}),n.jsx(_o,{count:"label"in R?void 0:{value:$.length,prefix:R.prefix,suffix:R.suffix},search:U?{value:N,onChange:S,placeholder:x}:void 0,pageSize:{options:W,value:M,onChange:L},pagination:{page:H,total:V,onChange:G}}),n.jsx(jo,{size:"medium",gridTemplateColumns:i,mobileGridTemplateColumns:s,resizable:!0,fields:I,items:T,onRowClick:C,renderRow:ee=>{const oe=p!=null?ee.id!=null&&p.has(ee.id):m!=null&&ee.id===m;return r.map(ce=>({content:ce.render?ce.render(ee):ee[ce.key]??"",className:we(ce.className,oe&&"popup-list__row--selected")}))},empty:U&&N!==""&&a.length>0?k:A})]})}function Ic(e){const{title:t,message:a,topContent:r,details:i,children:s,confirmLabel:l,cancelLabel:u,hideCancel:c=!1,extraAction:d,confirmVariant:m="main",confirmDisabled:p=!1,onConfirm:C,closeOnConfirm:_=!0,onClose:y,inline:g,size:h="small",className:v,initialFocus:f="close"}=e,{t:w}=xe.useTranslation(),b=o.useRef(null);o.useEffect(()=>{if(g||f==="close")return;const S=b.current?.closest(".popup-panel"),E=Array.from(S?.querySelectorAll(".popup-footer--buttons button")??[]),O=f==="confirm"?E[E.length-1]:c?void 0:E[d?1:0];O&&!O.disabled&&O.focus()},[]);const B=o.useRef(!1),[x,A]=o.useState(!1),k=S=>{let E=!1;return{close:()=>{E=!0,S()},didClose:()=>E}},N=async S=>{if(B.current)return;B.current=!0;const E=typeof document<"u"?document.activeElement:null;A(!0);let O=!1;try{O=await S()}catch(F){typeof console<"u"&&console.error(F)}finally{O||(B.current=!1,A(!1),requestAnimationFrame(()=>{const F=document.activeElement;(!F||F===document.body)&&E?.isConnected&&E.focus()}))}};return n.jsxs(Fn,{title:t,onClose:y,closeDisabled:x,inline:g,size:h,className:we("confirm-popup",r!=null&&"confirm-popup--has-top",v),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:d.disabled||x,onClick:async({closeWithAnimation:S})=>{await N(async()=>{const E=k(S);await d.onClick(E.close);const O=d.closeOnClick??!0;return O&&S(),O||E.didClose()})}}]:[],...c?[]:[{label:u??w("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:x,onClick:({closeWithAnimation:S})=>S()}],{label:l??w("common.confirm","\uD655\uC778"),variant:m,disabled:p||x,onClick:async({closeWithAnimation:S})=>{await N(async()=>{const E=k(S);return await C(E.close),_&&S(),_||E.didClose()})}}],children:[r!=null&&n.jsx("div",{className:"confirm-popup__top",children:r}),i&&i.length>0&&n.jsx(br,{children:i.map((S,E)=>n.jsx(Sn,{label:S.label,children:n.jsx("span",{className:"panel-row__text body-2",children:S.value})},E))}),n.jsx("p",{ref:b,className:"body-2 confirm-popup__message",children:a}),s]})}function E7(e,t,a={}){const{t:r}=xe.useTranslation(),[i,s]=o.useState(!1),l=o.useRef(!1),u=o.useCallback(()=>{l.current=!0},[]),c=o.useCallback(()=>l.current?(l.current=!1,!0):e?(s(!0),!1):!0,[e]),d=i?n.jsx(Ic,{title:a.title??r("common.discardConfirm.title","\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?"),message:a.message??r("common.discardConfirm.body","\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4."),confirmLabel:a.confirmLabel??r("common.discardConfirm.confirm","\uC785\uB825 \uCDE8\uC18C"),confirmVariant:"danger",onConfirm:()=>{s(!1),t()},onClose:()=>s(!1)}):null;return{beforeClose:c,discardPopup:d,allowClose:u}}function D7({onApply:e,onCancel:t}){const{t:a}=xe.useTranslation(),[r,i]=o.useState(""),[s,l]=o.useState(!1),[u,c]=o.useState(null),d=o.useRef(null),m=o.useId();o.useEffect(()=>{d.current?.focus()},[]);const p=o.useCallback(async y=>{const g=r.trim();if(g){l(!0),c(null);try{await e(g),y()}catch(h){c(Ci(h)),l(!1),requestAnimationFrame(()=>d.current?.focus())}}},[r,e]),C=o.useCallback((y,g)=>{y.key==="Enter"&&!y.nativeEvent.isComposing&&p(g)},[p]),_=y=>{i(y.target.value),c(null)};return n.jsx(Fn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:s,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:s,onClick:({closeWithAnimation:y})=>y()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||s,onClick:({closeWithAnimation:y})=>{p(y)}}],children:({closeWithAnimation:y})=>n.jsxs(n.Fragment,{children:[n.jsx("input",{ref:d,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),"aria-invalid":u?!0:void 0,"aria-errormessage":u?m:void 0,"aria-describedby":u?m:void 0,placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:_,onKeyDown:g=>C(g,y),disabled:s,autoComplete:"off",spellCheck:!1}),u&&n.jsx("p",{id:m,className:"coupon-input-popup__error caption-1",role:"alert",children:u})]})})}const Oc=["var(--color-main)","var(--color-sub)"],S7=2e3;function j7(e,t){if(!t.startsWith("var("))return t;try{const a=t.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function us({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:i,trigger:s=0}){const l=o.useMemo(()=>{const g=Math.floor(t/2),h=t-g,v=(f,w)=>Array.from({length:f}).map((b,B)=>{const x=6+Math.random()*12,A=Math.round(Math.min(18,x*Math.min(1.5,1+r*.4))),k=Oc[Math.floor(Math.random()*Oc.length)],N=Math.random()*300,S=(360+Math.random()*260)*r*1.2,E=(w==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,O=Math.cos(E)*S,F=Math.sin(E)*S*1.35,Y=Math.random()*720-360,M=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),L=Math.random()>.7?"50%":"3px";return{id:`${w}-${B}`,side:w,size:A,color:k,delay:N,vx:O,vy:F,angularVel:Y,life:M,borderRadius:L}});return[...v(g,"left"),...v(h,"right")]},[t,r]),u=o.useRef(null),c=o.useRef({}),d=o.useRef(null),m=o.useRef(i);o.useEffect(()=>{m.current=i},[i]);const p=o.useRef(null),C=o.useRef(null),_=()=>{if(typeof document>"u")return null;let g=document.querySelector("[data-ihab-effect-root]");return g||(g=document.createElement("div"),g.className="app-effect",g.dataset.ihabEffectRoot="",g.style.position="fixed",g.style.inset="0",g.style.pointerEvents="none",g.style.zIndex="99998",document.body.appendChild(g)),g};if(typeof document<"u"&&C.current==null&&(C.current=_()),o.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const q=setTimeout(()=>m.current?.(),0);return()=>clearTimeout(q)}const g=1200,h=performance.now(),v=C.current&&C.current!==document.body?C.current.getBoundingClientRect():null,f=Math.max(60,(window.innerHeight||800)*.05),w=q=>Math.max(40,(q||window.innerWidth)*.02),b=v?.width||window.innerWidth||375,B=v?.height||window.innerHeight||812,x=q=>{const $=[...q].sort((V,H)=>V-H);return $[Math.floor($.length/2)]||1},A=x(l.map(q=>Math.abs(q.vy))),k=x(l.map(q=>Math.abs(q.vx))),N=Math.sqrt(2*g*(B*.72+f))/A,S=A*N/g,E=b*.5/(k*S),O=(q,$,V)=>Math.min(V,Math.max($,q)),F=O(N,.8,2.4),Y=O(E,.7,2.2),M=a>0?a/S7:1,L=l.map(q=>({...q,life:q.life*M,vx:q.vx*Y,vy:q.vy*F,startTime:h+q.delay,ended:!1})),P=v?{x:v.left-w(v.width),y:v.top+v.height+f}:{x:-w(window.innerWidth),y:window.innerHeight+f},G=v?{x:v.left+v.width+w(v.width),y:v.top+v.height+f}:{x:window.innerWidth+w(window.innerWidth),y:window.innerHeight+f},U=q=>{let $=!1;for(const V of L){const H=c.current[V.id];if(!H||!H)continue;if(q<V.startTime){H.style.display="none",$=!0;continue}if(!V._inited){const re=V.side==="left"?P.x:G.x,Ne=V.side==="left"?P.y:G.y;H.style.left=`${re}px`,H.style.top=`${Ne}px`,H.style.transform="translate3d(0px, 0px, 0)",H.style.display="block",H.style.zIndex="100000",typeof V.color=="string"&&V.color.startsWith("var(")&&(H.style.background=j7(H,V.color)??"#FF0060"),V._inited=!0}const T=(q-V.startTime)/1e3;if(T<0)continue;const D=V.life/1e3;if(T>=D){H.style.opacity="0",H.style.display="none",V.ended=!0;continue}$=!0;const R=V.side==="left"?P.x:G.x,I=V.side==="left"?P.y:G.y,W=R+V.vx*T,ee=I+V.vy*T+.5*g*T*T,oe=(V.angularVel||0)*T,ce=W-R,J=ee-I;H.style.transform=`translate3d(${ce}px, ${J}px, 0) rotate(${oe}deg)`,H.style.opacity=`${Math.max(0,1-T/D)}`}$?d.current=requestAnimationFrame(U):m.current?.()};d.current=requestAnimationFrame(U);const z=setTimeout(()=>{try{if((C.current?C.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const q=document.createElement("div");q.className="party-container",q.style.position="fixed",q.style.inset="0",q.style.pointerEvents="none",q.style.overflow="visible",q.style.zIndex="2147483647";for(const $ of l){const V=document.createElement("span");V.className=`confetti confetti--${$.side}`,V.setAttribute("aria-hidden","true"),V.style.display="none",V.style.position="fixed",V.style.left="0px",V.style.top="0px",V.style.width=`${$.size}px`,V.style.height=`${Math.max(4,$.size*.6)}px`,V.style.background=$.color,V.style.borderRadius=$.borderRadius,V.style.transform="translate3d(0,0,0)",V.style.opacity="0",q.appendChild(V),c.current[$.id]=V}(document.body||C.current).appendChild(q),p.current=q}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(z),p.current){try{p.current.remove()}catch{}p.current=null}}},[e,a,s,l]),!e)return null;const y=n.jsx("div",{className:"party-container",ref:u,children:l.map(g=>n.jsx("span",{"aria-hidden":!0,ref:h=>{c.current[g.id]=h},className:`confetti confetti--${g.side}`,style:{width:`${g.size}px`,height:`${Math.max(4,g.size*.6)}px`,background:g.color,borderRadius:g.borderRadius}},`${g.id}-${s}`))});return typeof document<"u"?en.createPortal(y,C.current||document.body):y}const cs=e=>typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0;function T7({trigger:e=0,active:t=!1}){const[a,r]=o.useState(null);o.useEffect(()=>{if(typeof window>"u")return;const s=l=>{const u=l.detail??{};r(c=>({n:(c?.n??0)+1,count:cs(u.count),strength:cs(u.strength),duration:cs(u.duration)}))};return window.addEventListener("party:trigger",s),()=>window.removeEventListener("party:trigger",s)},[]);const i=o.useCallback(()=>r(null),[]);return n.jsxs(n.Fragment,{children:[n.jsx(us,{active:t,trigger:e}),a&&n.jsx(us,{active:!0,trigger:a.n,count:a.count,strength:a.strength,duration:a.duration,onComplete:i})]})}function M7({title:e,sub:t,rightAction:a,titleAction:r,badge:i,badgeVariant:s="default",documentTitle:l,onBack:u,backLabel:c,wrap:d=!1}){const{t:m}=xe.useTranslation();_b(typeof e=="string"?e:l??null);const p=c??m("common.back","\uB4A4\uB85C");return n.jsxs("div",{className:d?"page-title page-title--wrap":"page-title",children:[n.jsxs("div",{className:"page-title__main",children:[n.jsxs("div",{className:"page-title__title-row",children:[u&&n.jsx(me,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:p,showTooltipInfo:p,onClick:u}),n.jsx("h1",{className:"page-title__title h1",children:e}),i&&n.jsx("div",{className:"page-title__badge",children:n.jsx(kt,{label:i,size:"small",variant:s,fill:"outline"})}),r?n.jsx("div",{className:"page-title__title-action",children:r}):null]}),t&&n.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?n.jsx("div",{className:"page-title__action",children:a}):null]})}function L7(e){return e??""}const Hc=o.createContext({words:[],loading:!1});function $7(){return o.useContext(Hc)}function R7({words:e,loading:t,error:a,statusMessage:r,localVersion:i,remoteVersion:s,progress:l,clearAndRefetch:u,checkRemoteVersion:c,children:d}){const m=o.useMemo(()=>({words:e,loading:t,error:a,statusMessage:r,localVersion:i,remoteVersion:s,progress:l,clearAndRefetch:u,checkRemoteVersion:c}),[e,t,a,r,i,s,l,u,c]);return n.jsx(Hc.Provider,{value:m,children:d})}function P7({items:e,actions:t,columns:a,flat:r=!1,className:i,style:s}){const l=a??e.length;return n.jsx("section",{className:we("summary-strip",r&&"summary-strip--flat",i),style:{"--summary-strip-cols":String(l),...s},children:n.jsxs("div",{className:"summary-strip__row",children:[n.jsx("div",{className:"summary-strip__items",children:e.map((u,c)=>n.jsxs("div",{className:"summary-strip__item",children:[n.jsx("p",{className:"summary-strip__label caption-1",children:u.label}),n.jsx("p",{className:"summary-strip__value body-3b",title:typeof u.value=="string"||typeof u.value=="number"?String(u.value):void 0,children:u.value})]},c))}),t&&n.jsx("div",{className:"summary-strip__actions",children:t})]})})}const F7=(e,t)=>`${e} / ${t}`;function I7({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:i=F7,pageWidth:s,pageHeight:l,margin:u,className:c,style:d}){const{t:m}=xe.useTranslation(),p=o.useRef(null),C=o.useRef(null),_=o.useRef(null),y=o.useRef(null),[g,h]=o.useState(null),[v,f]=o.useState(!1);o.useEffect(()=>{const M=p.current;if(!M)return;const L=()=>f(M.scrollWidth>M.clientWidth+1);if(L(),typeof ResizeObserver>"u")return;const P=new ResizeObserver(L);return P.observe(M),()=>P.disconnect()},[g]);const w=e.map(M=>`${M.id}\0${M.section??""}\0${M.group??""}`).join(""),b=g&&g.shape===w?g.pages:null,[B,x]=o.useState(0);o.useEffect(()=>{const M=y.current;if(!M||typeof ResizeObserver>"u")return;const L=new ResizeObserver(()=>x(M.offsetHeight));return L.observe(M),()=>L.disconnect()},[]);const[A,k]=o.useState(0);o.useEffect(()=>{const M=C.current;if(!M||typeof ResizeObserver>"u")return;let L=null;const P=typeof requestAnimationFrame=="function"?z=>requestAnimationFrame(z):z=>setTimeout(z,16),G=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:z=>clearTimeout(z),U=new ResizeObserver(()=>{L==null&&(L=P(()=>{L=null,k(z=>z+1)}))});return Array.from(M.children).forEach(z=>U.observe(z)),()=>{U.disconnect(),L!=null&&G(L)}},[w]),o.useLayoutEffect(()=>{const M=C.current,L=y.current;if(!M||!L)return;const P=D=>D.getBoundingClientRect().height||D.offsetHeight,G=new Map;_.current?.querySelectorAll("[data-chrome-section]").forEach(D=>{G.set(D.dataset.chromeSection??"",P(D))});const U=D=>P(L)-(G.get(D??"")??0),z=Array.from(M.children).map(D=>P(D)),q=[];e.forEach((D,R)=>{const I=q[q.length-1],W=I?e[I[0]]:void 0;W&&D.group!=null&&W.group===D.group&&W.section===D.section?I.push(R):q.push([R])});const $=[];let V=[],H=0;const T=()=>{V.length&&$.push(V),V=[],H=0};q.forEach(D=>{const R=D.reduce((W,ee)=>W+z[ee],0),I=U(e[D[0]].section);V.length&&e[V[0]].section!==e[D[0]].section&&T(),R>I?D.forEach(W=>{V.length&&H+z[W]>I+.01&&T(),V.push(W),H+=z[W]}):(V.length&&H+R>I+.01&&T(),D.forEach(W=>V.push(W)),H+=R)}),T(),h(D=>D&&D.shape===w&&JSON.stringify(D.pages)===JSON.stringify($)?D:{shape:w,pages:$})},[w,B,s,l,u,A]);const N=go,S=N,E=r??n.jsxs(n.Fragment,{children:[n.jsx("img",{src:S,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),O=(M,L,P)=>({header:n.jsxs("div",{className:"report-doc__header",children:[n.jsx("h2",{className:"report-doc__title h3b",children:P!=null&&t?.[P]||null}),a]}),footer:n.jsxs("div",{className:"report-doc__footer caption-1",children:[n.jsx("span",{className:"report-doc__footer-left",children:E}),n.jsx("span",{className:"report-doc__page-no",children:i(M,L)})]})}),F=Array.from(new Set(e.map(M=>M.section??""))),Y={...s?{"--report-page-w":s}:null,...l?{"--report-page-h":l}:null,...u?{"--report-margin":u}:null,...d};return n.jsxs("div",{ref:p,className:we("report-doc",c),style:Y,tabIndex:v?0:void 0,role:v?"group":void 0,"aria-label":v?m("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[n.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[n.jsx("div",{ref:y,className:"report-doc__ruler"}),n.jsx("div",{ref:_,children:F.map(M=>{const L=O(1,1,M||void 0);return n.jsxs("div",{"data-chrome-section":M,children:[L.header,L.footer]},M)})}),n.jsx("div",{ref:C,className:"report-doc__measure-blocks",children:e.map(M=>n.jsx("div",{children:M.content},M.id))})]}),b&&n.jsx("div",{className:"report-doc__pages",children:b.map((M,L)=>{const{header:P,footer:G}=O(L+1,b.length,e[M[0]].section);return n.jsxs("section",{className:"report-doc__page",children:[P,M.map(U=>n.jsx("div",{children:e[U].content},e[U].id)),G]},L)})})]})}function O7({title:e,fields:t,columns:a=4,className:r,style:i}){return n.jsxs("div",{className:we("report-info",r),style:{"--report-info-cols":String(a),...i},children:[e&&n.jsx("p",{className:"report-info__title h5b",children:e}),n.jsx("div",{className:"report-info__grid",children:t.map((s,l)=>n.jsxs("div",{className:"report-info__field body-2",children:[n.jsx("span",{className:"report-info__label body-3",children:s.label}),n.jsx("span",{className:"report-info__value",children:s.value})]},l))})]})}const Qn=new Map;let Ar=null;const H7=12;function z7(e){for(let t=e.parentElement;t&&t!==document.body;t=t.parentElement){const a=window.getComputedStyle(t);if(a.transform&&a.transform!=="none"||a.filter&&a.filter!=="none"||a.perspective&&a.perspective!=="none"||/paint|layout|strict|content/.test(a.contain||""))return t}return document}function Br(){const e=new Map;for(const t of Qn.keys()){if(!t.isConnected)continue;const a=z7(t),r=e.get(a)??[];r.push(t),e.set(a,r)}for(const t of e.values()){t.sort((r,i)=>r.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let a=0;for(const r of t){a>0?r.style.setProperty("--update-alert-stack-offset",`${a}px`):r.style.removeProperty("--update-alert-stack-offset");const i=r.getBoundingClientRect().height;i>0&&(a+=i+H7)}}}function V7(e){return typeof window>"u"?()=>{}:(Qn.set(e,(Qn.get(e)??0)+1),Qn.get(e)===1&&typeof ResizeObserver<"u"&&(Ar??(Ar=new ResizeObserver(()=>Br())),Ar.observe(e)),Br(),()=>{const t=(Qn.get(e)??1)-1;if(t>0){Qn.set(e,t),Br();return}Qn.delete(e),Ar?.unobserve(e),e.style.removeProperty("--update-alert-stack-offset"),Br()})}function W7({title:e,message:t,actionLabel:a,onAction:r,icon:i,onClose:s,className:l=""}){const{t:u}=xe.useTranslation(),c=a??u("common.update","\uC5C5\uB370\uC774\uD2B8"),d=o.useRef(null),m=o.useRef(!1);return o.useLayoutEffect(()=>{const p=d.current,C=p?.parentElement?.closest(".update-alert-stack")??p,_=C?V7(C):null;return()=>{_?.(),m.current&&p&&p.contains(document.activeElement)&&Ja(p)}},[]),n.jsxs("div",{ref:d,className:we("update-alert",l),role:"alert",children:[s&&n.jsx("button",{type:"button",className:"update-alert__close",onClick:()=>{m.current=!0,s()},"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"}),n.jsxs("div",{className:"update-alert__top",children:[n.jsx("div",{className:"update-alert__icon",children:i??n.jsx(_s,{size:20,strokeWidth:2})}),n.jsxs("div",{className:"update-alert__body",children:[n.jsx("div",{className:"update-alert__title h4",children:e}),n.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&n.jsx(me,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:c})]})}function q7({title:e,titleLevel:t=3,description:a,topActions:r,children:i,footerLeft:s,footerRight:l,ariaLabel:u,onClick:c,draggable:d,onDragStart:m,onDragEnd:p,className:C}){const _=t?`h${t}`:"div",y=s!=null||l!=null,g=i!=null&&i!==!1,h=o.useCallback(v=>{c&&v.target===v.currentTarget&&(v.key==="Enter"||v.key===" ")&&(v.preventDefault(),c())},[c]);return n.jsxs("div",{className:we("training-card",c?"training-card--clickable":"",C),onClick:c,onKeyDown:c?h:void 0,role:c?"button":void 0,"aria-label":c?u??(typeof e=="string"?e:void 0):void 0,tabIndex:c?0:void 0,draggable:d,onDragStart:m,onDragEnd:p,children:[n.jsxs("div",{className:"training-card__header",children:[n.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?n.jsx(_,{className:"training-card__title h4",children:e}):e,r!=null&&n.jsx("div",{className:"training-card__top-actions",onClick:v=>v.stopPropagation(),children:r})]}),a!=null?typeof a=="string"?n.jsx("p",{className:"training-card__description body-3",children:a}):a:n.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),g&&n.jsx("div",{className:"training-card__body",children:i}),y&&n.jsxs("div",{className:"training-card__footer",children:[s!=null&&n.jsx("div",{className:"training-card__footer-left",children:s}),l!=null&&n.jsx("div",{className:"training-card__meta",children:l})]})]})}function U7({title:e,titleLevel:t=3,count:a,collapsed:r=!1,onToggle:i,beforeSort:s,sort:l,actions:u,empty:c=!1,emptyContent:d,dragOver:m=!1,onDragOver:p,onDragLeave:C,onDrop:_,children:y,className:g}){const{t:h}=xe.useTranslation(),v=o.useId(),f=t?`h${t}`:"span",w=i!=null,b=we("training-card-group",m&&"training-card-group--dragover",r&&"training-card-group--collapsed",w&&"training-card-group--collapsible",g);return n.jsxs("div",{className:b,onDragOver:p,onDragLeave:C,onDrop:_,role:typeof e=="string"&&e?"group":void 0,"aria-labelledby":typeof e=="string"&&e?v:void 0,children:[n.jsxs("header",{className:"training-card-group__header",children:[w&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:r?"chevron-right":"chevron-down",ariaLabel:typeof e=="string"&&e?r?h("common.expandFor",{name:e}):h("common.collapseFor",{name:e}):r?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron","aria-expanded":!r,onClick:i}),typeof e=="string"?n.jsx(f,{id:v,className:"training-card-group__title h5b",children:e}):e,a!==void 0&&n.jsx("span",{className:"training-card-group__count body-3b",children:a}),(s!=null||l||u!=null)&&n.jsxs("span",{className:"training-card-group__actions",onClick:B=>B.stopPropagation(),children:[s,l&&n.jsx(pn,{size:40,options:l.options,value:l.value,placeholder:l.placeholder,onChange:l.onChange,ariaLabel:typeof e=="string"&&e?h("common.sortFor",{name:e}):void 0}),u]})]}),!r&&(c?n.jsx("div",{className:"training-card-group__empty body-3",children:d}):n.jsx("div",{className:"training-card-group__grid",children:y}))]})}const G7="speechear:saved_word_tables";function K7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function Y7(){try{const e=localStorage.getItem(G7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(K7):[]}catch{return[]}}function zc(e){return{label:e.word,subLabel:e.pronunciation,colloquialLabel:e.colloquialPronunciation,homonum:e.homonum,grade:e.grade,syllables:[...e.word].length,pos:e.pos,wordType:e.wordType}}function ds(e){return e.map(t=>t.homonum!=null?`${t.word}#${t.homonum}`:t.word).join("|")}function Z7(e){const t=new Set;return e.map(a=>{let r=a.id;for(let i=2;t.has(r);i++)r=`${a.id}~${i}`;return t.add(r),r===a.id?a:{...a,id:r}})}function X7({title:e,titleIcon:t,disc:a,filterTitle:r,filterCollapsible:i,filterDefaultCollapsed:s,filterCollapsed:l,onFilterCollapsedChange:u,filterHeaderSummary:c,brand:d,code:m,items:p,onSaveComplete:C,onLoad:_,onRemoveItem:y,onReset:g,resetLabel:h,saveButtonLabel:v,secondarySaveButtonLabel:f,onReorder:w,showCellCount:b,onAddItem:B,className:x,renderSavePopup:A,renderWordSearch:k,hideControls:N,saveOnly:S,tableName:E,nameValue:O,onNameChange:F,descriptionValue:Y,onDescriptionChange:M,namePlaceholder:L,descriptionPlaceholder:P,existingNames:G,editingName:U,onCancel:z,initialItemsPerPage:q,renderCellAction:$,actionsLeftExtra:V}){const{t:H}=xe.useTranslation(),T=h??H("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),D=p===void 0,R=!!F,[I,W]=o.useState([]),ee=(O??"").trim(),oe=ee||(L??"").trim(),ce=(Y??"").trim()||(P??"").trim(),J=(G??[]).map(ae=>ae.trim().toLowerCase()),re=[U?.trim().toLowerCase(),...I].filter(ae=>!!ae),Ne=[...J];for(const ae of re){const be=Ne.indexOf(ae);be!==-1&&Ne.splice(be,1)}const K=ee!==""&&Ne.includes(ee.toLowerCase()),[Q,pe]=o.useState(Array(4).fill(null)),[De,ye]=o.useState(4),[ne,le]=o.useState(null),Ce=Q.slice(0,De),ge=!!d?.show,[fe,$e]=o.useState(!0),[Ve,je]=o.useState(!0),Fe=d&&{...d,top:fe,bottom:Ve},[qe,mt]=o.useState("landscape"),[ct,rt]=o.useState(["image","word","standardPron"]),[Ct,Be]=o.useState("show"),[We,_e]=o.useState(!0),[Ue,Ae]=o.useState(!0),Te=o.useRef(null),Se=o.useRef([]),[Xe,Qe]=o.useState(q==="all"?Number.POSITIVE_INFINITY:q??8),[dt,ht]=o.useState("right"),[wt,ft]=o.useState(!1),[Nt,gt]=o.useState(!1),{toastMessage:it,toastType:Ke,showWarning:se,clearToast:ke}=xl("warning"),ze=o.useCallback(()=>le(null),[le]);B&&!D&&!b&&Zt("word-table-block-add-without-cell-count",'[WordTableBlock] \uD45C\uC2DC \uBAA8\uB4DC\uC5D0\uC11C onAddItem \uC740 showCellCount \uC640 \uD568\uAED8 \uC918\uC57C "\uCD94\uAC00\uD558\uAE30" \uCE78\uC774 \uC0DD\uAE34\uB2E4.');const[nt,Ie]=o.useState(()=>Math.max(p?.length??1,1)),Ge=D?De:b?Math.max(nt,p?.length??1,1):Math.max(p?.length??0,1),{width:bt,height:Re}=pa[qe],tt=!D&&!b,xt=p?.length??0,Mt=Math.min(Xe,Math.max(xt,1)),et=tt?Mt:Ge,ot=tt?Du(p??[],et):null,lt=!!ot&&ot.length>1,st=D?Ce.some(ae=>ae!==null&&ae.length>1):(p??[]).some(ae=>(ae.words??[]).length>1),jt=E?.trim()||`${wi(Ba())} ${st?H("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):H("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,Ht=o.useCallback(()=>lt?Se.current.filter(ae=>ae!==null):Te.current?[Te.current]:[],[lt]),{print:mn,openNewWindow:hn,downloadHtml:Tn}=Vo({getElements:Ht,paperW:bt,paperH:Re,fileName:jt,onPopupBlocked:()=>{se(H("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),On=ae=>{ye(ae),pe(be=>be.length>=ae?be:[...be,...Array(ae-be.length).fill(null)]),le(null)},Hn=ae=>{pe(be=>{const Le=[...be];return Le[ae]=null,Le}),ne===ae&&le(null)},Pt=ae=>{if(ne===null)return;const be=ne;pe(He=>{const ut=[...He];return ut[be]=ae.length>0?ae:null,ut});const Le=Ce.findIndex((He,ut)=>ut>be&&He===null);le(Le!==-1?Le:null)},vn=D?Ce.some(ae=>ae?.some(be=>!!be.colloquialPronunciation)):(p??[]).some(ae=>(ae.words??[]).some(be=>!!be.colloquialLabel)),Ft=o.useMemo(()=>aa()?D?Q.slice(0,De).flatMap(ae=>(ae??[]).map(be=>[be.word,be.homonum])):(p??[]).flatMap(ae=>(ae.words??[]).map(be=>[be.label,be.homonum])):[],[D,Q,De,p]),[zt,Mn]=o.useState(!1);o.useEffect(()=>{if(Ft.length===0)return;let ae=!1;return Promise.all(Ft.map(([be,Le])=>ci(be,Le))).then(be=>{ae||Mn(be.some(Boolean))},()=>{}),()=>{ae=!0}},[Ft]);const on=Ft.length>0&&zt,xn=o.useMemo(()=>[...D||b?[{label:H("wordTable.filter.columns","\uCE78 \uC218"),items:A5.map(ae=>({value:`${ae}\uCE78`,displayLabel:H("wordTable.filter.column",{count:ae})})),display:"segmented"}]:[],...tt&&(p?.length??0)>0?[Uu(H,{hasPairs:st,itemCount:xt})]:[],...lt?[B5(H)]:[]],[H,D,b,tt,p?.length,st,xt,lt]),zn={...D||b?{[H("wordTable.filter.columns","\uCE78 \uC218")]:`${Ge}\uCE78`}:{},...tt&&(p?.length??0)>0?{[H(st?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${Mt}\uAC1C`}:{},...lt?{[H("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:dt}:{}},_n=(ae,be)=>{be===H("wordTable.filter.columns","\uCE78 \uC218")?D?On(parseInt(ae)):Ie(parseInt(ae)):be===H(st?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?Qe(Gu(parseInt(ae),xt)):be===H("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&ht(Ku(ae))},Vt=D?Z7(Ce.filter(ae=>ae!==null&&ae.length>0).map(ae=>({id:ds(ae),words:ae.map(zc)}))):p??[],Lt=()=>{D&&pe(ae=>ae.length>De?ae.slice(0,De):ae)},Wt=(ae=!1)=>{if(gt(ae),R&&C){const be=oe.trim().toLowerCase();be&&W(Le=>Le.includes(be)?Le:[...Le,be]),C(oe,Vt,ce||void 0,ae),Lt();return}if(S&&C){C("",Vt,void 0,ae),Lt();return}if(C){ft(!0);return}Tn()},[Cn,It]=o.useState(!1),[sn,Dt]=o.useState(""),ie=sn.trim(),ve=ie!==""&&J.includes(ie.toLowerCase()),Me=()=>{Dt(oe?H("wordTable.save.copyName",{name:oe,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),It(!0)},Je=()=>{!ie||ve||!C||(C(ie,Vt,ce||void 0,!0),Lt(),It(!1))},Oe=Vt.length===0,Ye=Oe||R&&(oe===""||K),X=()=>{if(Oe){se(H("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(R&&oe===""){se(H("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}R&&K&&se(H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},de=n.jsx(ma,{items:Vt,orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:Ge});return n.jsxs(n.Fragment,{children:[n.jsxs(da,{type:"page",icon:t,title:e,disc:a,className:we("word-table-block",x),children:[Cn&&n.jsx(Fn,{size:"small",title:f??H("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>It(!1),footer:({closeWithAnimation:ae})=>n.jsxs(n.Fragment,{children:[n.jsx(me,{htmlType:"button",size:48,type:"bar",label:H("common.cancel","\uCDE8\uC18C"),onClick:ae}),n.jsx(me,{htmlType:"button",size:48,type:"bar",variant:"main",label:H("common.save","\uC800\uC7A5"),disabled:!ie||ve,onClick:Je})]}),children:n.jsx(Zn,{label:H("wordTable.save.nameLabel","\uC774\uB984"),value:sn,onChange:Dt,placeholder:H("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:Je,error:ve?H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),wt&&C&&A?.({defaultName:typeof e=="string"?e:H("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:de,previewW:bt,previewH:Re,items:Vt,existingNames:Y7().map(ae=>ae.name),saveAsNew:Nt,onSave:(ae,be)=>{C(ae,Vt,be,Nt),Lt(),ft(!1)},onCancel:()=>ft(!1)}),(D||B)&&ne!==null&&k?.({cellIndex:ne,onConfirm:D?Pt:ae=>{if(B){const be=ae[0];if(be){const Le=new Set((p??[]).map(ut=>ut.id));let He=ds([be]);for(let ut=2;Le.has(He);ut++)He=`${ds([be])}~${ut}`;B({id:He,words:[zc(be)]})}}le(null)},onClose:ze}),!N&&n.jsx(Oo,{title:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,hasImage:on,hasColloquial:vn,contentTypes:ct,orientation:qe,showOutline:We,cutLine:Ct,showDivLine:Ue,setters:{setContentTypes:rt,setOrientation:mt,setShowOutline:_e,setCutLine:Be,setShowDivLine:Ae,setShowTopInfo:$e,setShowBottomInfo:je},showCutLine:(tt?et:Ge)>1,showDivLine2:st,middleSections:xn,extraSelected:zn,onExtraSelect:_n,showPaperBands:ge,showTopInfo:fe,showBottomInfo:Ve}),lt&&ot?n.jsx("div",{className:"word-table-block__pages",children:ot.map((ae,be)=>n.jsx(ma,{orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:et,items:ae,onRemoveItem:y,onReorder:w&&((Le,He)=>w(Le+be*et,He+be*et)),renderCellAction:$&&((Le,He)=>$(Le+be*et,He)),brand:Fe,code:m,contentRef:Le=>{Se.current[be]=Le},pageNumber:{current:be+1,total:ot.length},pageNumberPosition:dt},be))}):n.jsx(ma,{orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:Ge,items:D?void 0:p??[],editCells:D?Ce:void 0,activeCell:ne,onActivateCell:D||B?le:void 0,onRemoveCell:D?Hn:void 0,onRemoveItem:D?void 0:y,onReorder:D?void 0:w,renderCellAction:D?void 0:$,brand:Fe,code:m,showFillerAdd:!!B,contentRef:Te}),!N&&!S&&(g||V!=null)&&n.jsxs("div",{className:"word-table-block__table-actions",children:[g&&n.jsx(me,{htmlType:"button",size:48,type:"bar",label:T,onClick:g}),V]}),R&&!N&&n.jsxs(br,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[n.jsx(Sn,{variant:"custom",label:H("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:n.jsx(Zn,{required:!0,value:O??"",onChange:F,placeholder:L?L+H("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):H("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:H("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:K?H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:ae=>{(ae.key==="Tab"&&!ae.shiftKey||ae.key===" ")&&!(O??"").trim()&&(L??"").trim()&&(ae.preventDefault(),F?.(L??""))}})}),n.jsx(Sn,{variant:"custom",label:H("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:n.jsx(Zn,{value:Y??"",onChange:M,placeholder:P?P+H("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):H("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:H("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:ae=>{(ae.key==="Tab"&&!ae.shiftKey||ae.key===" ")&&!(Y??"").trim()&&(P??"").trim()&&(ae.preventDefault(),M?.(P??""))}})})]})]}),!N&&n.jsxs("div",{className:"word-table-block__actions",children:[n.jsxs("div",{className:"word-table-block__actions-left",children:[!S&&_&&n.jsx(me,{htmlType:"button",size:40,type:"bar",label:H("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:_}),!S&&n.jsx(me,{htmlType:"button",size:40,type:"bar",label:H("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:hn})]}),n.jsxs("div",{className:"word-table-block__actions-right",children:[z&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:H("common.cancel","\uCDE8\uC18C"),onClick:z}),!S&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:H("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:mn}),f&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:f,onClick:()=>R?Me():Wt(!0),disabled:Oe,onDisabledClick:()=>{se(H("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",label:v??H("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>Wt(!1),disabled:Ye,onDisabledClick:X})]})]}),n.jsx(ua,{message:it,type:Ke,onClose:ke})]})}function Vc({items:e,className:t}){const a=e.length,r=a<=3?1:2,i=Math.ceil(a/r)||1,s=r*i;return n.jsx("div",{className:we("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:s},(l,u)=>{const c=e[u];return c?n.jsx("div",{className:"word-table-thumb__cell",children:(c.words?.length?c.words:[{label:c.id}]).map((d,m)=>n.jsxs(o.Fragment,{children:[m>0&&n.jsx("span",{className:"word-table-thumb__divider"}),n.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},m))},u):n.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},u)})})}function J7({items:e,name:t,description:a,createdAt:r,code:i,published:s,publishedLabel:l,shared:u,sharedLabel:c,isNew:d,publisherName:m,publishedAt:p,likeCount:C,downloadCount:_,onPublisherClick:y,selected:g,onClick:h,onMore:v,titleNode:f,className:w}){const{t:b}=xe.useTranslation(),B=f!=null,x=m!=null||p!=null||C!=null||_!=null,A=k=>{k.target===k.currentTarget&&!B&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),h?.())};return n.jsxs("div",{className:we("word-table-button",g?"word-table-button--selected":"",x?"":"word-table-button--no-footer",w),role:"button",tabIndex:0,"aria-label":i?`${t} (${i})`:t,onClick:B?void 0:h,onKeyDown:A,children:[d&&n.jsx("span",{className:"word-table-button__new-dot","aria-label":b("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),n.jsx(Vc,{items:e,className:"word-table-button__thumb"}),n.jsxs("div",{className:"word-table-button__info",children:[n.jsxs("div",{className:"word-table-button__info-text",children:[f??n.jsx("div",{className:"word-table-button__title h4",children:t}),a&&n.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),v&&!B&&n.jsx(me,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:b("common.moreFor",{name:t}),onClick:k=>{k.stopPropagation(),v(k)}})]}),(i||r||s||u)&&n.jsxs("div",{className:"word-table-button__meta-row",children:[n.jsx("span",{className:"word-table-button__meta-left",children:n.jsx("span",{className:"word-table-button__meta caption-1",children:r?_i(r,b):""})}),n.jsxs("span",{className:"word-table-button__meta-right",children:[(s||u)&&n.jsxs("span",{className:"word-table-button__badges",children:[s&&n.jsx(kt,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:l??b("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),u&&n.jsx(kt,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??b("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]}),i&&n.jsx("span",{className:"word-table-button__code caption-1",children:i})]})]}),x&&n.jsxs("div",{className:"word-table-button__footer",children:[n.jsxs("span",{className:"word-table-button__store-by",children:[m&&(y?n.jsx("button",{className:"training-card__publisher body-4",type:"button","aria-label":b("wordTable.publisherFilter",{name:m,defaultValue:"{{name}} \uAC8C\uC2DC\uD55C \uAC83\uB9CC \uBCF4\uAE30"}),onClick:k=>{k.stopPropagation(),y()},children:m}):n.jsx("span",{className:"training-card__publisher training-card__publisher--static body-4",children:m})),p&&n.jsx("span",{className:"training-card__date body-4",children:_i(p,b)})]}),n.jsxs("span",{className:"word-table-button__store-stats",children:[C!=null&&n.jsx(kt,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(C),"aria-label":b("common.likeCount",{count:C,defaultValue:`\uC88B\uC544\uC694 ${C}`})}),_!=null&&n.jsx(kt,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(_),"aria-label":b("common.downloadCount",{count:_,defaultValue:`\uAC00\uC838\uAC04 \uC218 ${_}`})})]})]})]})}/**
|
|
1053
|
+
`).map((l,u,c)=>n.jsxs(o.Fragment,{children:[l,u<c.length-1&&n.jsx("br",{})]},u))})}),n.jsxs("div",{className:"site-footer__links",children:[n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.site.title","\uC0AC\uC774\uD2B8")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:"IHAB"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://speechear.ihab.co.kr/",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.malgwi","\uB9D0\uADC0")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/sound-localization",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.soundDirection","\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/vr-sound-localization",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.vrSoundDirection","VR\uC18C\uB9AC\uBC29\uD5A5\uC131\uC2DC\uC2A4\uD15C")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://ihab-offcial-web.vercel.app/product/hearing-test-pro",target:"_blank",rel:"noopener noreferrer",children:s("footer.site.hearingTest","\uCCAD\uB825\uD14C\uC2A4\uD2B8 \uD504\uB85C")})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.sns.title","SNS")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://blog.naver.com/ihab_official",target:"_blank",rel:"noopener noreferrer",children:s("footer.sns.naverBlog","\uB124\uC774\uBC84 \uBE14\uB85C\uADF8")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.instagram.com/ihab.official.yt/",target:"_blank",rel:"noopener noreferrer",children:"Instagram"})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"https://www.youtube.com/@%EC%95%84%EC%9D%B4%ED%95%B4%EB%B8%8C-%EA%B3%B5%EC%8B%9D%EC%B1%84%EB%84%90",target:"_blank",rel:"noopener noreferrer",children:"Youtube"})})]})]}),n.jsxs("div",{className:"site-footer__column",children:[n.jsx("div",{className:"site-footer__column-title footer-title",children:s("footer.policy.title","\uC815\uCC45")}),n.jsxs("ul",{children:[n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{e&&(l.preventDefault(),e())},children:s("footer.policy.terms","\uC774\uC6A9\uC57D\uAD00")})}),n.jsx("li",{children:n.jsx("a",{className:"footer-link",href:"#",onClick:l=>{t&&(l.preventDefault(),t())},children:s("footer.policy.privacy","\uAC1C\uC778\uC815\uBCF4 \uCC98\uB9AC\uBC29\uCE68")})})]})]})]})]}),n.jsx("hr",{className:"site-footer__rule"}),n.jsxs("div",{className:"site-footer__bottom",children:[n.jsx("div",{className:"site-footer__brand",children:n.jsx("img",{src:go,alt:"IHAB",className:"site-footer__logo"})}),n.jsxs("div",{className:"site-footer__meta",children:[n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.ceo","\uB300\uD45C")})," ",n.jsx("span",{className:"footer-meta caption-1",children:s("footer.ceoName","\uD55C\uC9C0\uD61C")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.address","\uC8FC\uC18C")})," ",n.jsx("span",{className:"footer-meta caption-1",children:s("footer.addressValue","\uAC15\uC6D0\uB3C4 \uCD98\uCC9C\uC2DC \uC2DC\uCCAD\uAE38 32 \uD574\uCC2C\uBE4C\uB529 3\uCE35 302\uD638")})]}),n.jsxs("div",{children:[n.jsx("span",{className:"footer-title",children:s("footer.support","\uACE0\uAC1D\uC13C\uD130")})," ",n.jsxs("span",{className:"footer-meta caption-1",children:[r," \xA0 ",i]})]})]})]}),n.jsx("div",{className:"site-footer__copyright footer-copyright caption-1",children:"\xA9 IHAB, Inc. All rights reserved."})]})})}function i3({logo:e,logoAlt:t="",logoHref:a,links:r=[],actions:i,className:s,containerClassName:l,renderLink:u,menuLabel:c}){const{t:d}=xe.useTranslation(),m=c??{open:d("header.menuOpen","\uBA54\uB274 \uC5F4\uAE30"),close:d("header.menuClose","\uBA54\uB274 \uB2EB\uAE30")},[p,C]=o.useState(!1),y=o.useId(),v=o.useRef(null);o.useEffect(()=>{if(!p)return;const x=Un(()=>{const b=document.getElementById(y);b&&b.contains(document.activeElement)&&v.current?.focus(),C(!1)}),f=typeof window<"u"&&window.matchMedia?window.matchMedia("(min-width: 961px)"):null,w=b=>{b.matches&&C(!1)};return f&&(f.matches&&C(!1),f.addEventListener?.("change",w)),()=>{x(),f?.removeEventListener?.("change",w)}},[p,y]);const g=l?`${l} landing-header__inner`:"landing-header__inner",h=(x,f)=>u?u(x,{onClick:f}):n.jsx("a",{href:x.href,onClick:f,"aria-current":x.current?"page":void 0,children:x.label});return n.jsxs("header",{className:s?`landing-header ${s}`:"landing-header",children:[n.jsxs("div",{className:g,children:[e!=null&&(()=>{const x=typeof e=="string"?n.jsx("img",{src:e,alt:t,className:"landing-header__logo"}):e;return a?n.jsx("a",{href:a,className:"landing-header__brand",children:x}):n.jsx("div",{className:"landing-header__brand",children:x})})(),r.length>0&&n.jsx("nav",{className:"landing-header__links",children:r.map((x,f)=>n.jsx("span",{children:h(x)},`${f}:${x.href}`))}),n.jsxs("div",{className:"landing-header__actions",children:[i,r.length>0&&n.jsx("button",{ref:v,type:"button",onClick:()=>C(x=>!x),"aria-expanded":p,"aria-controls":y,"aria-label":p?m.close:m.open,className:p?"landing-header__toggle landing-header__toggle--open":"landing-header__toggle",children:n.jsxs("span",{className:"landing-header__burger",children:[n.jsx("span",{}),n.jsx("span",{}),n.jsx("span",{})]})})]})]}),r.length>0&&n.jsx("nav",{id:y,hidden:!p,className:"landing-header__drawer",children:n.jsx("div",{className:l??void 0,children:r.map((x,f)=>n.jsx("span",{className:"landing-header__drawer-item",children:h(x,()=>C(!1))},`${f}:${x.href}`))})})]})}function l3({children:e,action:t,onClick:a,className:r}){const i=a?"bottom-sticky__inner bottom-sticky__inner--clickable":"bottom-sticky__inner";return n.jsx("div",{className:r?`bottom-sticky ${r}`:"bottom-sticky",children:n.jsxs("div",{className:i,onClick:a,...wu(a),children:[n.jsx("div",{className:"bottom-sticky__content",children:e}),t]})})}function u3({mountedRef:e}){const t=o.useRef({phase:"sound",at:0}),a=o.useRef(0),r=o.useRef(null),i=o.useRef(null),s=o.useCallback(()=>{const g=t.current,h=g.phase!=="sound"&&g.at>0;i.current=h?{phase:g.phase,elapsed:Math.max(0,Date.now()-g.at)}:null},[]),l=o.useCallback(()=>{const g=i.current;return i.current=null,g},[]),u=o.useCallback(()=>{a.current+=1,t.current={phase:"sound",at:0}},[]),c=o.useCallback((g,h,x=0)=>{if(!(g>0))return Promise.resolve(!0);const f=a.current;return t.current={phase:h,at:Date.now()-Math.max(0,x)},new Promise(w=>{const b=setTimeout(()=>{r.current===b&&(r.current=null),w(!!e.current&&f===a.current)},g);r.current=b})},[e]),d=o.useCallback(()=>{t.current={phase:"sound",at:Date.now()}},[]),m=o.useCallback(()=>{t.current={phase:"sound",at:0}},[]),p=o.useCallback(()=>{const g=t.current;return g.phase!=="sound"&&g.at>0},[]),C=o.useCallback(()=>a.current,[]),y=o.useCallback(g=>g===a.current,[]),v=o.useCallback(()=>{a.current+=1},[]);return o.useEffect(()=>()=>{r.current&&(clearTimeout(r.current),r.current=null)},[]),o.useMemo(()=>({positionRef:t,isRunning:p,generation:C,isCurrent:y,abort:u,waitPad:c,enterSound:d,leave:m,pause:s,resume:l,__bumpGenerationForTest:v}),[p,C,y,u,c,d,m,s,l,v])}const Ca=9,c3=e=>Math.round(Math.min(Ca,Math.max(0,e))/Ca*100),d3=e=>e/100*Ca,Oa=2,nc=.1,p3=e=>Math.min(Oa,Math.max(0,e)),m3=.1,h3=e=>Math.round(e*1e6)/1e6;function Ha(e){const{noiseRatio:t}=e;if(typeof t=="number"&&Number.isFinite(t))return p3(t);const a=Math.min(Ca,Math.max(0,Number(e.level)||0))/Ca,r=Number(e.mainVolume);return r>0?a>0?h3(Math.min(Oa,Math.max(m3,a/r))):0:1}const ac=e=>Math.min(1,Math.max(0,Number(e.mainVolume)||0));function rc(e){return ac(e)}function Go(e){return ac(e)*Ha(e)}function Ko(e,t=bC()){const a=Number.isFinite(t)&&t>0?t:1;return Math.min(1,Go(e)/a)}function za(e,t){const a={...e,...t??{}};return t&&"level"in t&&typeof t.noiseRatio!="number"&&(a.noiseRatio=Ha({level:a.level,mainVolume:a.mainVolume})),a}const Va={enabled:!0,type:"defaultNoise",level:4.5,noiseRatio:1,speed:1,mainVolume:1,mainSpeed:1},Yo=o.createContext(null);function mr(){return o.useContext(Yo)}const Zo=e=>`${gC()}/${e}`,oc=e=>Array.from({length:10},(t,a)=>Zo(`${e}-${String(a+1).padStart(2,"0")}.mp3`)),hr={get defaultNoise(){return Zo("noise1.mp3")},get street(){return oc("noise2")},get restaurant(){return oc("noise3")},get buzz(){return Zo("noise4.mp3")}};function C3(e){const t=Math.floor(Math.random()*10);switch(e){case"defaultNoise":return hr.defaultNoise;case"street":return hr.street[t];case"restaurant":return hr.restaurant[t];case"buzz":return hr.buzz;default:return null}}function f3({noisePlayer:e,audioRef:t,playbackStateRef:a,sequencer:r}){const i=o.useRef(e?.registerAnalyser);i.current=e?.registerAnalyser;const s=o.useRef(null),[l,u]=o.useState(null),c=o.useRef(null),d=o.useRef(null),m=o.useRef(null),p=o.useRef(null),C=o.useRef(0),y=o.useRef(null),v=o.useCallback(()=>!!r?.isRunning(),[r]),g=o.useCallback(()=>{p.current!==null&&(cancelAnimationFrame(p.current),p.current=null),y.current!==null&&(clearTimeout(y.current),y.current=null)},[]),h=o.useCallback((B,_=250)=>{const A=s.current;if(!A)return;const k=d.current;if(k){d.current=null;try{A.pause()}catch{}A.src=k,A.load()}if(!A.src)return;C.current+=1,g();try{zr(),qa(A).then(O=>{if(s.current===A)try{i.current?.("noise",O)}catch{}})}catch{}const N=A.paused?0:Ua(A);A.paused&&Rn(A,0),A.play().catch(()=>{});const S=performance.now(),E=()=>{const O=Math.min(1,(performance.now()-S)/_);try{Rn(A,N+(B-N)*O)}catch{}O<1?p.current=requestAnimationFrame(E):p.current=null};p.current=requestAnimationFrame(E)},[g]),x=o.useCallback((B=250,_)=>{const A=s.current;if(!A||A.paused){_?.();return}const k=++C.current;g();const N=performance.now(),S=Ua(A),E=()=>{const O=Math.min(1,(performance.now()-N)/B);try{Rn(A,S*(1-O))}catch{}if(O<1)p.current=requestAnimationFrame(E);else{p.current=null,y.current!==null&&(clearTimeout(y.current),y.current=null);try{A.pause()}catch{}_?.()}};p.current=requestAnimationFrame(E),y.current=setTimeout(()=>{if(y.current=null,C.current===k){p.current!==null&&(cancelAnimationFrame(p.current),p.current=null);try{A.paused||(Rn(A,0),A.pause(),_?.())}catch{}}},B+150)},[g]);o.useEffect(()=>{const B=document.createElement("audio");return B.loop=!0,B.crossOrigin="anonymous",s.current=B,()=>{g();try{B.pause(),B.removeAttribute("src"),B.load()}catch{}s.current=null,c.current=null,d.current=null}},[g]);const f=e?Ko(e.settings):0,w=!!e?.settings.enabled&&f>0;o.useEffect(()=>{if(!w)return;let B=0;const _=setInterval(()=>{const A=s.current;if(!A||A.paused){B=0;return}const k=t.current;if(k&&!k.paused&&!k.ended||v()||a.current==="playing"){B=0;return}B+=1,B>=2&&(B=0,x())},400);return()=>clearInterval(_)},[x,w,t,a,v]),o.useEffect(()=>{const B=()=>{const _=s.current;if(document.hidden){if(_&&!_.paused){g();try{_.pause()}catch{}}return}if(!_||!_.paused)return;const A=t.current,k=!!A&&!A.paused&&!A.ended||v()||a.current==="playing",N=m.current;k&&N?.enabled&&N.volume>0&&h(N.volume)};return document.addEventListener("visibilitychange",B),()=>document.removeEventListener("visibilitychange",B)},[g,h,t,a,v]),o.useEffect(()=>{m.current=e?{enabled:e.settings.enabled,volume:f,type:e.settings.type}:null},[e,e?.settings.enabled,f,e?.settings.type]);const b=o.useRef(null);return o.useEffect(()=>()=>{b.current?.(),b.current=null},[]),o.useEffect(()=>{const B=e?.settings,_=s.current;if(!_)return;const A=B?Ko(B):0;if(!B||!B.enabled||A===0){x();return}if(c.current!==B.type){const k=C3(B.type);k&&(c.current=B.type,u(k),d.current=k,x(150,()=>{if(d.current!==k)return;d.current=null,_.src=k,_.load();const N=t.current;if(N&&!N.paused||v()){b.current?.();const S=()=>{_.removeEventListener("canplay",S),b.current===E&&(b.current=null);const O=t.current,F=m.current;(O&&!O.paused&&!O.ended||v())&&F?.enabled&&F.volume>0&&h(F.volume)},E=()=>_.removeEventListener("canplay",S);b.current=E,_.addEventListener("canplay",S)}}))}else{const k=t.current,N=!!k&&!k.paused&&!k.ended||v()||a.current==="playing";if(N&&d.current)h(A);else if(N&&_.paused&&_.src)h(A);else if(!_.paused)if(!N)x();else{g();const S=Ua(_),E=performance.now(),O=()=>{const F=Math.min(1,(performance.now()-E)/150);try{Rn(_,S+(A-S)*F)}catch{}F<1?p.current=requestAnimationFrame(O):p.current=null};p.current=requestAnimationFrame(O)}}},[e?.settings,e?.settings.enabled,f,e?.settings.type,g,h,x,t,a,m,v]),o.useEffect(()=>{const B=s.current;if(B)try{B.playbackRate=Math.min(1.25,Math.max(.75,e?.settings.speed??1))}catch{}},[e?.settings.speed]),{noiseAudioRef:s,activeNoiseUrl:l,noiseSettingsRef:m,cancelNoiseFade:g,fadeInNoise:h,fadeOutNoise:x}}function g3({ttsText:e,playbackRate:t,mainVolume:a,fillRef:r,waveProgressRef:i,setProgress:s,setPlaybackState:l,setStateLocal:u,fadeInNoise:c,fadeOutNoise:d,noiseSettingsRef:m,onDoneRef:p,handleEndRef:C}){const y=o.useRef(null),v=o.useRef(0),g=o.useRef(null),h=o.useRef(0),x=o.useRef(!1);o.useEffect(()=>()=>{h.current++;try{if(g.current&&(cancelAnimationFrame(g.current),g.current=null),x.current&&window.speechSynthesis){try{window.speechSynthesis.cancel()}catch{}x.current=!1}}catch{}},[]);const f=(B,_=1)=>{try{const A=(B||"").trim().split(/\s+/).filter(Boolean).length||Math.max(1,(B||"").length);return Math.max(700,Math.round(A*300/Math.max(.25,_)))}catch{return 1200}},w=o.useCallback(B=>{if(typeof window>"u"||!window.speechSynthesis){try{typeof p.current=="function"&&p.current(!1)}catch{}return}const _=window.speechSynthesis,A=++h.current;try{try{_.cancel()}catch{}const k=B??e,N=Array.isArray(k)?k.filter(M=>!!M):[k||""];N.length===0&&N.push("");const S=Math.max(.3,Math.min(3,t));v.current=N.reduce((M,L)=>M+f(L,S||1),0),y.current=performance.now(),s(0),l("playing"),u("playMode");const E=m.current;E?.enabled&&(E?.volume??0)>0&&c(E.volume);const O=()=>{try{const M=y.current||performance.now(),L=performance.now()-M,P=v.current||1200,G=Math.min(1,L/P);try{r.current&&(r.current.style.left=`${G*100}%`),i.current&&i.current.style.setProperty("--progress",String(G))}catch{}G<1&&(g.current=requestAnimationFrame(O))}catch{}},F=()=>{if(A===h.current)try{g.current&&(cancelAnimationFrame(g.current),g.current=null),s(1),l("stopped");try{C.current?.()}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{}},Y=M=>{const L=new SpeechSynthesisUtterance(N[M]);try{L.rate=S}catch{}try{L.volume=Math.max(0,Math.min(1,a))}catch{}L.onend=()=>{if(A===h.current){if(M<N.length-1){try{Y(M+1)}catch{F()}return}F()}},L.onerror=()=>{F()},L.onstart=()=>{if(!(M>0))try{g.current&&(cancelAnimationFrame(g.current),g.current=null),g.current=requestAnimationFrame(O)}catch{}},x.current=!0,_.speak(L)};try{Y(0)}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}}catch{try{typeof p.current=="function"&&p.current(!0)}catch{}}},[e,t,a,c,r,i,s,l,u,m,p,C]),b=o.useCallback(()=>{h.current++;try{if(window.speechSynthesis)try{window.speechSynthesis.cancel()}catch{}g.current&&(cancelAnimationFrame(g.current),g.current=null),d(),y.current=null}catch{}l("stopped"),u("active"),s(0)},[d,l,u,s]);return{startTTS:w,stopTTS:b}}const b3=.01,y3=.3;async function v3(e,t,a,r=!1){let i=null;try{const s=window.AudioContext||window.webkitAudioContext;i=new s;const l=await i.decodeAudioData(e.slice(0)),u=l.numberOfChannels>0?l.getChannelData(0):null;if(!u)return null;let c=0;if(r){const y=Math.floor(y3*l.sampleRate),v=Math.min(u.length,y);for(;c<v&&Math.abs(u[c])<=b3;)c++;c>=v&&(c=0)}const d=u.length-c,m=a&&a>0?Math.min(d,Math.floor(a*l.sampleRate)):d,p=Math.max(t,m),C=Math.floor(p/t)||1;return new Array(t).fill(0).map((y,v)=>{const g=c+v*C,h=Math.min(g+C,c+p,u.length);let x=0;for(let f=g;f<h;f++){const w=Math.abs(u[f]);w>x&&(x=w)}return x})}catch{return null}finally{try{i?.close?.()}catch{}}}async function sc(e,t,a,r=!1){try{const i=await fetch(e);if(i.ok===!1)return null;const s=await i.arrayBuffer();return await v3(s,t,a,r)}catch(i){try{const s=fi(i)}catch{}return null}}const Xo=45,x3=74,_3=2;function Cr(e){const t=Math.min(2,Math.max(0,Number(e)||0));return t<=1?t*45:45+(t-1)*29}function fr(e){return Cr(e)/45}const w3=e=>Math.max(0,(typeof e=="number"&&Number.isFinite(e)?e:0)*1e3),ic=e=>Math.max(0,typeof e=="number"&&Number.isFinite(e)?e:0);function lc({durationsSec:e,leadInMs:t=0,tailMs:a=0}){const r=ic(t),i=ic(a),s=[];let l=0;return e.forEach((u,c)=>{for(const[d,m]of[["lead",r],["sound",w3(u)],["tail",i]])s.push({kind:d,track:c,startMs:l,durMs:m}),l+=m}),{segments:s,totalMs:l,trackCount:e.length}}function uc(e,t){const a=(t|0)*3;if(t<0||a+2>=e.segments.length)return null;const[r,i,s]=[e.segments[a],e.segments[a+1],e.segments[a+2]];return{lead:r,sound:i,tail:s,totalMs:r.durMs+i.durMs+s.durMs}}function A3(e,t){const a=uc(e,t.track);if(!a||!(a.totalMs>0))return 0;const r=a[t.kind],i=Math.min(Math.max(0,Number.isFinite(t.elapsedMs)?t.elapsedMs:0),r.durMs);return Math.max(0,Math.min(1,(r.startMs-a.lead.startMs+i)/a.totalMs))}function B3(e,t,a){const r=Math.max(0,Math.floor(a)),i=uc(e,t);if(!i||r===0||!(i.totalMs>0)||i.lead.durMs===0&&i.tail.durMs===0||!(i.sound.durMs>0))return{lead:0,sound:r,tail:0};const s=Math.round(i.lead.durMs/i.totalMs*r),l=Math.round(i.tail.durMs/i.totalMs*r),u=Math.max(1,r-s-l),c=s+u+l-r;return{lead:Math.max(0,s-Math.ceil(c/2)),sound:u,tail:Math.max(0,l-Math.floor(c/2))}}function k3({currentTime:e,sources:t,index:a,audioDuration:r}){const i=a||0,s=Array.isArray(t)&&t.length>0?t[i]:void 0,l=s?s.duration||r||0:r||0;if(!(l>0))return 0;const u=Number.isFinite(e)?e:0;return Math.max(0,Math.min(1,u/l))}function N3({phase:e,phaseElapsedMs:t,currentTime:a,trackDurationSec:r,leadInMs:i,tailMs:s}){const l=lc({durationsSec:[r],leadInMs:i,tailMs:s});return A3(l,{track:0,kind:e,elapsedMs:e==="sound"?(Number.isFinite(a)?a:0)*1e3:t})}function E3({bars:e,trackDurationSec:t,leadInMs:a,tailMs:r}){return B3(lc({durationsSec:[t],leadInMs:a,tailMs:r}),0,e)}function D3(e,t){if(!Array.isArray(e))return null;const a=t||0;return a<e.length-1?a+1:null}function S3({ended:e,completedByEnd:t}){return!!e||!!t}function j3(e){return e.map((t,a)=>({src:t.src,label:String(a+1),color:void 0,duration:t.duration||0}))}function T3(e){return e.reduce((t,a)=>t+(a.duration||0),0)}function M3(e,t,a){const r=Array.isArray(e)?e:e?[e]:[],i=[];for(const s of r)if(s){if(typeof s=="object"&&s!==null&&"src"in s&&s.src){const l=s;i.push({code:l.code??null,src:l.src});continue}if(typeof s=="string"&&(s.startsWith("http")||s.includes("/"))){i.push({code:null,src:s});continue}if(typeof s=="string"||typeof s=="number"){const l=String(s),u=a(l,t);u&&i.push({code:l,resolvedPath:u})}}return i}const cc=4,L3=fr(cc/Xo);function $3(e){const{src:t,segments:a,progress:r=0,waveProgressRef:i,noiseSrc:s,noiseRatio:l=0,noiseSpeed:u=1,totalDuration:c=0,mainVolume:d=1,onReadyChange:m,showSoundWaveForm:p=!0,leadInMs:C=0,tailMs:y=0,trackDurationSec:v=0}=e,g=o.useRef(null),h=o.useRef(null),[x,f]=o.useState(null),[w,b]=o.useState(!1),[B,_]=o.useState(null),[A,k]=o.useState(2),[N,S]=o.useState(0),[E,O]=o.useState(null),[F,Y]=o.useState(!1),[M,L]=o.useState(!1),P=3,G=3,U=1,z=300,q=o.useRef(0),$=o.useCallback(()=>{const ye=g.current,ne=h&&h.current?h.current:ye?ye.closest(".audio-player__wave"):null,le=ne?ne.getBoundingClientRect():ye?ye.getBoundingClientRect():null,Ce=le?le.width:0,ge=le?Math.max(100,le.width):320,fe=le?le.height:0,$e=Math.max(U,Math.min(z,Math.floor((ge+G)/(P+G)))),Ve=$e*P,je=Math.max(0,$e-1),Fe=Math.max(0,je>0?(ge-Ve)/je:G);return{bars:$e,gap:Fe,height:fe,width:Ce}},[]),V=o.useRef(void 0),H=o.useRef(null),T=o.useCallback(async(ye,ne,{quiet:le=!1}={})=>{const Ce=++q.current,ge=()=>q.current===Ce;try{if(le||b(!1),V.current=ye,!ye){ge()&&f(null);return}let fe=ne;if(!fe)try{for(let je=0;je<4&&!(g.current||h.current);je++)await new Promise(Fe=>requestAnimationFrame(Fe));await new Promise(je=>requestAnimationFrame(je));const Ve=$();Ve.height>0&&S(Ve.height),fe=Ve.bars,k(Ve.gap)}catch{fe=120}H.current=fe;const $e=await sc(ye,fe);if(!ge())return;if(!$e){f(null),b(!1);return}f($e),_(fe),b(!0)}catch{if(!ge())return;f(null),b(!1)}},[b,f,S,k,_,$]);o.useEffect(()=>{const ye=h.current;if(!ye||typeof ResizeObserver>"u")return;let ne=null;const le=new ResizeObserver(()=>{ne!==null&&cancelAnimationFrame(ne),ne=requestAnimationFrame(()=>{ne=null;try{const Ce=$();if(Ce.width<=0||(Ce.height>0&&S(Ce.height),H.current===null||Ce.bars===H.current))return;const ge=V.current;k(Ce.gap),ge?T(ge,Ce.bars,{quiet:!0}).catch(()=>{}):H.current=Ce.bars}catch{}})});return le.observe(ye),()=>{le.disconnect(),ne!==null&&cancelAnimationFrame(ne)}},[$,T]),o.useEffect(()=>{const ye=a&&a[0]&&a[0].src||t||a&&a.length===1&&a[0]&&a[0].src;T(typeof ye=="string"?ye:void 0).catch(()=>{}),L(!1)},[t,a,T]),o.useEffect(()=>{let ye=!1;if(Y(!1),!s||!B){O(null);return}const ne=c>0?c*(u||1):void 0;return sc(s,B,ne,!0).then(le=>{ye||(O(le),le||Y(!0))}).catch(()=>{ye||(O(null),Y(!0))}),()=>{ye=!0}},[s,B,c,u]);const D=Math.max(0,Math.min(1,d)),R=o.useMemo(()=>x&&x.length&&Math.max(...x)||1,[x]),I=B||40,W=o.useMemo(()=>E3({bars:I,trackDurationSec:v,leadInMs:C,tailMs:y}),[I,v,C,y]),ee=o.useMemo(()=>Array.from({length:I}).map((ye,ne)=>{const le=ne>=W.lead&&ne<W.lead+W.sound,Ce=W.sound>0&&le?Math.min(I-1,Math.round((ne-W.lead)/W.sound*I)):-1,ge=le?x&&x[Ce]!=null?x[Ce]:null:x?0:null,fe=ge==null?null:Math.min(1,ge/R*D),$e=fe!=null&&N>0&&Cr(fe)<=cc,Ve=fe==null?.15:$e?0:fr(fe),je=$e,Fe=I>1?ne/(I-1):0;return n.jsx("div",{className:je?"audio-player__bar audio-player__bar--hidden":"audio-player__bar",style:{"--val":Ve,"--i":ne,"--mix":Fe}},ne)}),[I,x,R,D,N,W]),oe={"--progress":String(Math.max(0,Math.min(1,r)))},ce=o.useMemo(()=>E&&E.length&&Math.max(...E.map(ye=>Number.isFinite(ye)?Math.abs(ye):0))||1,[E]),J=D*Math.max(0,l),re=!s||!E||!E.length?1:Math.max(1,J),Ne={"--bar-gap":`${A}px`,"--wave-h":`${Cr(re)}px`,"--wave-h1":`${Xo}px`},K=w&&(s?!!E||F:!0);o.useEffect(()=>{K&&L(!0)},[K]);const Q=M?w:K;o.useEffect(()=>{m?.(Q)},[Q,m]);const pe=B||40,De=o.useMemo(()=>Array.from({length:pe}).map((ye,ne)=>{const le=E&&E[ne]!=null?E[ne]:null,Ce=le==null?0:Math.abs(le)/ce*J,ge=Math.max(L3,fr(Ce)),fe=pe>1?ne/(pe-1):0;return n.jsx("div",{className:"audio-player__bar",style:{"--val":ge,"--i":ne,"--mix":fe}},ne)}),[pe,E,ce,J,N]);return n.jsxs("div",{className:"audio-player__wave",ref:h,style:Ne,children:[s&&n.jsx("div",{className:`audio-player__wave-noise ${K?"is-ready":""}`,"aria-hidden":"true",children:De}),p&&n.jsxs(n.Fragment,{children:[n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-unplayed ${Q?"is-ready":""}`,ref:g,children:ee}),n.jsx("div",{className:`audio-player__wave-inner audio-player__wave-played ${Q?"is-ready":""}`,ref:i,style:oe,children:ee})]})]})}const R3={idle:"\uB300\uAE30",synthesizing:"\uC18C\uB9AC\uB97C \uB9CC\uB4E4\uACE0 \uC788\uC2B5\uB2C8\uB2E4\u2026",resolving:"\uB9AC\uC18C\uC2A4 \uB9E4\uD551 \uC911\u2026",checking_exists:"\uD30C\uC77C \uC874\uC7AC \uD655\uC778\u2026",getting_signed_url:"\uC11C\uBA85 URL \uC870\uD68C\u2026",downloading:"\uB2E4\uC6B4\uB85C\uB4DC \uC911\u2026",measuring_duration:"\uC624\uB514\uC624 \uAE38\uC774 \uCE21\uC815\u2026",ready:"\uC900\uBE44 \uC644\uB8CC",error:"\uC624\uB958 \uBC1C\uC0DD"},dc={idle:!1,synthesizing:!0,resolving:!0,checking_exists:!0,getting_signed_url:!0,downloading:!0,measuring_duration:!0,ready:!1,error:!0};function Jo(e,t){return new Promise((a,r)=>{const i=document.createElement("audio");let s=!1;const l=()=>{try{i.removeAttribute("src"),i.load()}catch{}},u=()=>{if(s)return;s=!0;const d=isFinite(i.duration)&&i.duration||0;l(),a(d)},c=d=>{s||(s=!0,l(),t.rejectOnError?r(new Error(d)):a(0))};i.addEventListener("loadedmetadata",u),i.addEventListener("error",()=>c("audio load failed")),setTimeout(()=>c("audio load timeout"),t.timeoutMs),i.src=e})}const P3=2e3;function pc(e,t=P3){return new Promise(a=>{let r=!1;const i=()=>{r||(r=!0,a())};e.addEventListener("canplay",i,{once:!0}),e.addEventListener("error",i,{once:!0}),setTimeout(i,t)})}function F3({showSoundWaveForm:e,showNoiseWaveForm:t,timeoutMs:a=2500}){const r=o.useRef(!1),i=o.useRef([]),s=o.useCallback(c=>{if(r.current=c,!c||!i.current.length)return;const d=i.current;i.current=[];for(const m of d)m(!0)},[]),l=o.useCallback(()=>{r.current=!1},[]),u=o.useCallback(()=>!e&&!t||r.current?Promise.resolve(!0):new Promise(c=>{const d=p=>{clearTimeout(m),i.current=i.current.filter(C=>C!==d),c(p)},m=setTimeout(()=>d(!0),a);i.current.push(d)}),[e,t,a]);return o.useEffect(()=>()=>{const c=i.current;i.current=[];for(const d of c)d(!1)},[]),{onReadyChange:s,waitForReady:u,markNotReady:l}}function I3(){const e=o.useRef([]),t=o.useCallback(i=>(e.current.push(i),i),[]),a=o.useCallback(i=>{const s=new Set([...i].filter(Boolean));e.current=e.current.filter(l=>{if(s.has(l))return!0;try{URL.revokeObjectURL(l)}catch{}return!1})},[]),r=o.useCallback(()=>{a([])},[a]);return o.useEffect(()=>()=>{for(const i of e.current)try{URL.revokeObjectURL(i)}catch{}e.current=[]},[]),{track:t,keepOnly:a,revokeAll:r}}function O3({offsetY:e=8}={}){const t=o.useRef(null),[a,r]=o.useState(null),i=o.useCallback(()=>r(null),[]),s=o.useCallback(()=>{try{const l=t.current?.getBoundingClientRect();if(!l)return;r({left:l.left,right:l.right,width:l.width,height:l.height,x:l.x,top:l.top+e,bottom:l.bottom+e,y:l.y+e,toJSON:l.toJSON.bind(l)})}catch{}},[e]);return o.useEffect(()=>{if(a)return document.addEventListener("mousedown",i),()=>document.removeEventListener("mousedown",i)},[a,i]),{ref:t,rect:a,show:s,hide:i}}function H3(e){if(!e)return 0;const t=e.duration;if(Number.isFinite(t)&&t>0)return t;if(t===0)return 0;try{const a=e.seekable;if(a&&a.length>0){const r=a.end(a.length-1);if(Number.isFinite(r)&&r>0)return r}}catch{}return null}const z3=400,V3=2e3,mc=5;function W3({audioRef:e,fillRef:t,waveProgressRef:a,sourcesRef:r,currentIndexRef:i,sequencer:s,leadInMs:l=0,tailMs:u=0}){const c=o.useRef(null),d=o.useRef(0),m=o.useRef(null),p=o.useCallback(()=>{c.current!==null&&(cancelAnimationFrame(c.current),c.current=null)},[]),C=o.useCallback(()=>{if(c.current!==null)return;let v=0;const g=()=>{if(ea){const h=typeof performance<"u"&&performance.now?performance.now():Date.now();if(v>0&&h-v>z3){const x=m.current===null||h-m.current>V3;if(m.current=h,x&&d.current<mc){d.current+=1;const f=d.current;let w=null;try{w=typeof document<"u"?document.visibilityState:null}catch{}Zt(`progress-ticker-slow-frames#${f}`,`[ihab-core] \uC9C4\uD589 \uC0AC\uC2AC\uC758 \uD2C0 \uC0AC\uC774\uAC00 ${Math.round(h-v)}ms \uC785\uB2C8\uB2E4(\uBCF4\uD1B5 16ms).`,w==="hidden"?"\uC774 \uCE78\uC774 **\uC228\uC5B4 \uC788\uC5B4** \uBE0C\uB77C\uC6B0\uC800\uAC00 \uD2C0\uC744 \uC904\uC600\uC2B5\uB2C8\uB2E4 \u2014 \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC740 \uD2C0\uB9C8\uB2E4 \uADF8\uB824\uC9C0\uBBC0\uB85C, \uC9C0\uAE08 \uC7AC\uB294 \uAC12\uC740 **\uC0AC\uB78C\uC774 \uBCF4\uB294 \uD654\uBA74\uACFC \uB2E4\uB985\uB2C8\uB2E4.** \uCE78\uC744 \uC55E\uC73C\uB85C \uAEBC\uB0B4\uACE0 \uB2E4\uC2DC \uC7AC\uC2ED\uC2DC\uC624.":"\uCE78\uC740 \uBCF4\uC774\uB294\uB370 \uD2C0\uC774 \uB290\uB9BD\uB2C8\uB2E4 \u2014 \uAC19\uC740 \uD654\uBA74\uC5D0\uC11C \uBB34\uAC70\uC6B4 \uC77C\uC774 \uB3C4\uB294\uC9C0 \uBCF4\uC2ED\uC2DC\uC624. \uC7AC\uC0DD\uBC14\xB7\uD30C\uD615\uC774 \uB04A\uACA8 \uBCF4\uC774\uB294 \uAC83\uC740 \uC774 \uD0D3\uC77C \uC218 \uC788\uC2B5\uB2C8\uB2E4.",f>=mc?`(${f}\uBC88\uC9F8 \u2014 \uB354\uB294 \uC548 \uC54C\uB9BD\uB2C8\uB2E4)`:`(${f}\uBC88\uC9F8)`)}}v=h}try{const h=e.current,x=Array.isArray(r.current)?r.current[i.current||0]:void 0,f=!!x&&Number.isFinite(x.duration)&&(x.duration??0)>0,w=f?0:H3(h),b=t.current,B=(l||0)>0||(u||0)>0,_=B&&(s?.positionRef.current?.phase??"sound")!=="sound";if(w===null&&!_)try{b&&b.style.visibility!=="hidden"&&(b.style.visibility="hidden")}catch{}else{const A=f?x.duration:w||0;ea&&_&&!(A>0)&&Zt("progress-ticker-pad-without-duration","[ihab-core] \uB738\uC774 \uB3C4\uB294\uB370 **\uC18C\uB9AC \uAE38\uC774\uB97C \uBAA8\uB985\uB2C8\uB2E4** \u2014 \uC7AC\uC0DD\uBC14\uAC00 \uB738\uB9CC\uC73C\uB85C \uC5B4\uB9BC\uC7A1\uC544 \uC6C0\uC9C1\uC785\uB2C8\uB2E4.","\uC18C\uB9AC \uAE38\uC774 \uC7AC\uAE30(measureAudioDuration)\uAC00 0 \uC744 \uC92C\uAC70\uB098 `<audio>` \uAC00 \uC544\uC9C1 \uC548 \uC2E4\uB838\uC2B5\uB2C8\uB2E4. \uAE38\uC774\uB97C \uC54C\uAC8C \uB418\uBA74 \uB9C8\uCEE4\uAC00 \uADF8 \uC21C\uAC04 **\uB4A4\uB85C \uBB3C\uB7EC\uB0A9\uB2C8\uB2E4**(\uC5B4\uB9BC\uC740 \uB298 \uCC38\uBCF4\uB2E4 \uD07D\uB2C8\uB2E4). \uC774 \uC904\uC774 \uBCF4\uC774\uBA74 \uADF8 \uC790\uB9AC\uB97C \uC54C\uB824 \uC8FC\uC2ED\uC2DC\uC624 \u2014 \uD3C9\uC18C \uAE38\uC5D0\uC11C\uB294 \uC548 \uB098\uC640\uC57C \uD569\uB2C8\uB2E4.");const k=B?N3({phase:s?.positionRef.current?.phase??"sound",phaseElapsedMs:s?.positionRef.current?Math.max(0,Date.now()-s.positionRef.current.at):0,currentTime:h&&typeof h.currentTime=="number"?h.currentTime:0,trackDurationSec:A,leadInMs:l||0,tailMs:u||0}):k3({currentTime:h&&typeof h.currentTime=="number"?h.currentTime:0,sources:r.current,index:i.current,audioDuration:w??0});try{b&&(b.style.visibility&&(b.style.visibility=""),b.style.left=`${k*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(k))}catch{}}}catch{}c.current=requestAnimationFrame(g)};c.current=requestAnimationFrame(g)},[e,t,a,r,i,s,l,u]),y=o.useCallback(v=>{p();try{t.current&&(t.current.style.visibility="",t.current.style.left=`${v*100}%`)}catch{}try{a.current?.style.setProperty("--progress",String(v))}catch{}},[p,t,a]);return o.useEffect(()=>p,[p]),{start:C,stop:p,settleTo:y}}function Qo({btnLabel:e,soundSrc:t,bucketPath:a,onDone:r,disabled:i=!1,ttsText:s=null,className:l,showSoundWaveForm:u=!0,showNoiseWaveForm:c=!0,leadInMs:d=0,tailMs:m=0}){const{t:p}=xe.useTranslation(),C=e,y=mr(),v=o.useRef(y?.registerAnalyser);o.useEffect(()=>{v.current=y?.registerAnalyser});const g=o.useRef(null),h=o.useRef(null),x=o.useRef(null),f=I3(),w=o.useRef(null),b=o.useRef(!1),B=o.useRef(null),{ref:_,rect:A,show:k,hide:N}=O3();o.useEffect(()=>()=>{v.current?.("main",null),v.current?.("noise",null)},[]);const[S,E]=o.useState(!1),[O,F]=o.useState("idle"),[Y,M]=o.useState("stopped"),L=o.useRef("stopped");o.useEffect(()=>{L.current=Y},[Y]);const[P,G]=o.useState(0),[U,z]=o.useState("active"),q=o.useRef(!1);o.useEffect(()=>{if(U!=="playMode"||!q.current)return;q.current=!1;const X=typeof document<"u"?document.activeElement:null;if(X&&X!==document.body)return;const de=x.current?.querySelectorAll("button")[1];try{de?.focus()}catch{}},[U]);const[$,V]=o.useState(null),[H,T]=o.useState(null),[D,R]=o.useState(0),[I,W]=o.useState(!1),[ee,oe]=o.useState(0),ce=y?.playbackRate??1,J=y?.mainVolume??1,re=y?Go(y.settings):0,Ne=y?rc(y.settings):J,[K,Q]=o.useState("idle"),[pe,De]=o.useState(""),[ye]=o.useState("top"),ne=o.useRef(null),le=o.useRef(0),Ce=o.useRef(null),ge=o.useRef(!0),fe=u3({mountedRef:ge}),$e=o.useRef(null),Ve=o.useRef(d),je=o.useRef(m);o.useEffect(()=>{Ve.current=Math.max(0,d||0)},[d]),o.useEffect(()=>{je.current=Math.max(0,m||0)},[m]);const{start:Fe,stop:qe,settleTo:mt}=W3({audioRef:g,fillRef:h,waveProgressRef:Ce,sourcesRef:ne,currentIndexRef:le,sequencer:fe,leadInMs:d,tailMs:m}),{onReadyChange:ct,waitForReady:rt,markNotReady:Ct}=F3({showSoundWaveForm:u,showNoiseWaveForm:c}),Be=o.useRef(null),We=o.useRef(i),_e=o.useRef(r),Ue=o.useRef(null),Ae=o.useRef(!1),[Te,Se]=o.useState(!1),Xe=o.useCallback(X=>{Ae.current=X,Se(X)},[]),Qe=o.useRef(null),{activeNoiseUrl:dt,noiseSettingsRef:ht,fadeInNoise:wt,fadeOutNoise:ft}=f3({noisePlayer:y,audioRef:g,playbackStateRef:L,sequencer:fe}),{startTTS:Nt,stopTTS:gt}=g3({ttsText:s,playbackRate:ce,mainVolume:Ne,fillRef:h,waveProgressRef:Ce,setProgress:G,setPlaybackState:M,setStateLocal:z,fadeInNoise:wt,fadeOutNoise:ft,noiseSettingsRef:ht,onDoneRef:_e,handleEndRef:Qe});o.useEffect(()=>{Ie.current=gt});const it=X=>{if(typeof window>"u"||!window.speechSynthesis){try{De(p("training.ttsUnavailable","\uC774 \uAE30\uAE30\uC5D0\uC11C\uB294 \uC74C\uC131\uC744 \uB4E4\uB824\uC904 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4."))}catch{}Nt(X);return}tt("tts"),Nt(X)},Ke=Array.isArray(t)?t.filter(Boolean):t?[t]:[],se=(!Ke||Ke.length===0)&&!!s,ke=Array.isArray($)&&$.length>0?$:Array.isArray(H)&&H.length>0?H:null,ze=Math.max(Array.isArray(ke)?ke.length:0,Ke.length);o.useEffect(()=>(ge.current=!0,()=>{ge.current=!1}),[]);const nt=()=>{fe.abort()},Ie=o.useRef(null),Ge=o.useRef(null),bt=o.useRef(null),Re=o.useRef(null);Re.current||(Re.current=()=>{bt.current=null;const X=g.current;if(Ge.current==="audio"&&X&&(!X.paused||fe.isRunning())){nt();try{X.pause()}catch{}ge.current&&(M("paused"),qe(),ft())}else if(Ge.current==="tts")try{Ie.current?.()}catch{}});const tt=X=>{Ge.current=X,bt.current=ar(Re.current)},xt=()=>{bt.current?.(),bt.current=null};o.useEffect(()=>()=>{Re.current&&rr(Re.current)},[]);const Mt=o.useRef(ce);o.useEffect(()=>{Mt.current=ce||1},[ce]);const et=o.useCallback(X=>{const de=Mt.current||1;try{X.defaultPlaybackRate=de}catch{}try{X.playbackRate=de}catch{}},[]),ot=o.useCallback((X,de)=>{X.src=de,et(X),X.load(),et(X)},[et]),lt=o.useCallback(()=>{Ue.current&&(clearTimeout(Ue.current),Ue.current=null),Q("idle")},[]),st=o.useCallback(async(X,de=3,ae=50,be=0)=>{lt();const Le=fe.generation(),He=!!X&&X.currentTime>0&&!X.ended,ut=Math.max(0,Ve.current-Math.max(0,be));if(ut>0&&!He){tt("audio"),Fe(),M("playing");const yt=ht.current;if(yt?.enabled&&(yt.volume??0)>0)try{wt(yt.volume)}catch{}if(!await fe.waitPad(ut,"lead",be)||!ge.current||!fe.isCurrent(Le))return!1}fe.enterSound();for(let yt=0;yt<de;yt++){if(!ge.current||!fe.isCurrent(Le))return!1;try{return tt("audio"),await X.play(),!0}catch(he){if((he instanceof Error||typeof he=="object"&&he&&"name"in he?he.name:void 0)==="AbortError"){if(!fe.isCurrent(Le))return!1;await new Promise(j=>setTimeout(j,ae));continue}try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1}}try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}return!1},[p,Fe,fe,wt,ht,lt]),jt=o.useCallback(X=>{const de=fe.generation(),ae=Math.max(0,je.current-Math.max(0,X));Fe();const be=ht.current;if(be?.enabled&&(be.volume??0)>0)try{wt(be.volume)}catch{}const Le=()=>{try{$e.current?.()}catch{}};if(ae<=0){fe.leave(),Le();return}fe.waitPad(ae,"tail",X).then(He=>{fe.leave(),He&&fe.isCurrent(de)&&Le()}).catch(()=>{})},[fe,Fe,wt,ht]),Ht=o.useCallback(()=>{const X=g.current;if(!X)return;const de=()=>{M("playing"),z("playMode"),W(!0),Fe();try{zr(),qa(X).then(He=>{if(ge.current)try{v.current?.("main",He)}catch{}})}catch{}const Le=ht.current;Le?.enabled&&(Le?.volume??0)>0&&wt(Le.volume)},ae=()=>{S3({ended:!!X?.ended,completedByEnd:Ae.current})||(M("paused"),qe(),ft())},be=()=>{const Le=()=>{try{const He=ne.current,ut=D3(He,le.current);if(ut!==null){le.current=ut,R(ut),W(!0);const yt=He?.[ut]&&He[ut].src;if(yt&&X){ot(X,yt),st(X).catch(()=>{});return}}}catch{}M("stopped"),G(1);try{if(X)try{X.currentTime=0}catch{}}catch{}qe(),W(!1),ft();try{!We.current&&Qe.current&&Qe.current()}catch{}};if($e.current=Le,je.current>0){Fe(),fe.waitPad(je.current,"tail").then(He=>{fe.leave(),He&&Le()}).catch(()=>{});return}Le()};return X.addEventListener("play",de),X.addEventListener("pause",ae),X.addEventListener("ended",be),()=>{try{X.removeEventListener("play",de),X.removeEventListener("pause",ae),X.removeEventListener("ended",be),qe()}catch{}}},[wt,ft,st,ht,Fe,qe,fe]);o.useEffect(()=>Ht(),[Ht]),o.useEffect(()=>{We.current=i},[i]),o.useEffect(()=>{_e.current=r},[r]),o.useEffect(()=>{if(i||U!=="active")return;const X=B.current;if(!X)return;let de=null;const ae=requestAnimationFrame(()=>{try{const be=X.getTotalLength();if(!be)return;const Le=be*.2;X.style.strokeDasharray=`${be-Le} ${Le}`;const He="triFlow_"+Math.random().toString(36).slice(2);de=document.createElement("style"),de.textContent=`@keyframes ${He}{from{stroke-dashoffset:0}to{stroke-dashoffset:-${be}}}`,document.head.appendChild(de),X.style.animation=`${He} 2.4s linear infinite`}catch{}});return()=>{cancelAnimationFrame(ae),de?.remove()}},[U,i]),o.useEffect(()=>{ne.current=$},[$]),o.useEffect(()=>{le.current=D},[D]),o.useEffect(()=>{const X=x.current,de=w.current;if(!X||!de)return;let ae=null;const be=32,Le=60,He=()=>{try{const yt=Array.from(X.querySelectorAll(":scope > .button"));let he=0;yt.forEach(Pe=>{if(Pe===de)return;const Ze=Pe.getBoundingClientRect();he+=Ze.width});const j=X.getBoundingClientRect().width,Z=Math.max(0,Math.floor(j-he-8)),ue=ze;if(!ue||Z<=0){Array.from(de.children).forEach(Pe=>{try{Pe.style.width=""}catch{}});return}let Ee=Math.floor(Z/ue);Ee>Le&&(Ee=Le),Ee<be&&(Ee=Math.max(be,Math.floor(Z/ue))),Array.from(de.querySelectorAll(".button")).forEach(Pe=>{try{Pe.style.width=`${Ee}px`}catch{}})}catch{}},ut=requestAnimationFrame(He);try{ae=new ResizeObserver(()=>{requestAnimationFrame(He)}),ae.observe(X),ae.observe(de),window.addEventListener("resize",He)}catch{}return()=>{try{cancelAnimationFrame(ut)}catch{}try{ae&&(ae.disconnect(),ae=null)}catch{}try{window.removeEventListener("resize",He)}catch{}}},[$,H,ze]),o.useEffect(()=>()=>{try{Be.current&&(clearTimeout(Be.current),Be.current=null),Ue.current&&(clearTimeout(Ue.current),Ue.current=null)}catch{}},[]);const mn=(X,de)=>{V(X),oe(de),Ct(),T(j3(X)),ne.current=X},hn=()=>{z("playMode"),R(0),W(!0)},Tn=async(X,de)=>{Xe(!1),b.current=!1,ot(X,de),await pc(X),await rt()!==!1&&(E(!1),hn(),await st(X))},On=async(X,de=!1)=>{const ae=g.current;E(!0),F("measuring_duration");try{const be=await Jo(X,{timeoutMs:1e4,rejectOnError:!0});mn([{src:X,objectUrl:null,duration:be}],be),F("ready"),de&&ae&&await Tn(ae,X)}finally{b.current=!1,E(!1)}},Hn=async(X,de=!1)=>{const ae=g.current;E(!0),F("measuring_duration");try{const be=await Promise.all(X.map(He=>Jo(He,{timeoutMs:1e4})));if(!ge.current)return;const Le=X.map((He,ut)=>({src:He,objectUrl:null,duration:be[ut]||0}));mn(Le,T3(Le)),F("ready"),de&&ae&&Le.length>0&&await Tn(ae,Le[0].src)}finally{b.current=!1,E(!1)}},Pt=async(X=!1,de=!0)=>{const ae=g.current,be=t?Array.isArray(t)?t:[t]:[];if(!be||be.length===0||!be.some(Boolean))return!1;if(b.current)return null;b.current=!0,de&&E(!0),F("resolving");try{const Le=M3(t,a,ai),He=[];let ut=0;for(const yt of Le){let he=yt.src??null,j=null;if(!he&&yt.resolvedPath){try{F("getting_signed_url"),he=await ri(yt.resolvedPath)}catch{he=null}if(!ge.current)return!1;if(!he)try{F("downloading");const ue=await oi(yt.resolvedPath);if(!ge.current)return!1;if(ue){const Ee=ue instanceof Blob?ue:new Blob([ue]);j=f.track(URL.createObjectURL(Ee)),he=j}}catch{F("error");try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.")),z("active")}catch{}}}if(!he)continue;let Z=0;try{F("measuring_duration"),Z=await Jo(he,{timeoutMs:3e3})}catch{Z=0}if(!ge.current){if(j)try{URL.revokeObjectURL(j)}catch{}for(const ue of He)if(ue.objectUrl)try{URL.revokeObjectURL(ue.objectUrl)}catch{}return!1}ut+=Z||0,He.push({...yt,src:he,objectUrl:j,duration:Z})}if(mn(He,ut),He.length>0&&X&&ae){const yt=He[0];Xe(!1);try{f.keepOnly(He.map(he=>he.objectUrl))}catch{}if(F("ready"),b.current=!1,yt.src&&ae)try{if(ot(ae,yt.src),await pc(ae),await rt()===!1)return!1;de&&E(!1),hn(),ae&&await st(ae)}catch{de&&E(!1)}else de&&E(!1);z("playMode"),R(0),W(!0)}return He.length>0}finally{b.current=!1,de&&E(!1),F(Le=>Le==="ready"?"ready":"idle")}},vn=async X=>{const de=fe.isRunning();if(X.paused&&!de){if(Ae.current){await zt();return}const ae=fe.resume();if(ae){if(M("playing"),ae.phase==="tail"){jt(ae.elapsed);return}await st(X,3,50,ae.elapsed);return}await st(X),M("playing")}else fe.pause(),nt(),X.pause(),M("paused"),de&&(qe(),ft())},Ft=async()=>{const X=g.current;if(!(!X&&!se)){if(se){const de=window.speechSynthesis;if(U==="active"){const ae=Ir(),be=Array.isArray(s)?s.filter(Boolean):s?[s]:[];if(ae&&be.length>0){if(b.current)return;z("load"),E(!0),F("synthesizing"),b.current=!0;try{const Le=await Promise.all(be.map(He=>Promise.resolve(ae(He))));Le.length>1?await Hn(Le,!0):await On(Le[0],!0)}catch{b.current=!1,E(!1),z("active"),it(be.length>0?be:void 0)}return}it(be.length>0?be:void 0);return}if(U==="playMode"){const ae=!!de&&(de.speaking||de.paused)&&!(X&&(X.currentSrc||X.getAttribute("src")));if(X&&!ae){await vn(X);return}try{if(de&&de.paused)try{tt("tts"),de.resume(),M("playing")}catch{}else try{de.pause(),M("paused")}catch{}}catch{}}return}if(U==="active"){if(i&&Array.isArray(ne.current)&&ne.current.length>0){const ae=ne.current[0];try{if(ae.src&&X)try{ot(X,ae.src),hn(),X&&await st(X)}catch{}hn();return}catch{}}z("load");let de;try{de=await Pt(!0)}catch{de=!1}if(de===!1&&ge.current){try{De(p("training.audioFetchError","\uC0AC\uC6B4\uB4DC \uC18C\uC2A4\uB97C \uAC00\uC838\uC624\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4."))}catch{}z("active")}return}if(U!=="load"&&(U==="playMode"||U==="active"))try{X&&await vn(X)}catch(de){(de instanceof Error||typeof de=="object"&&de&&"name"in de)&&de.name}}},zt=async()=>{const X=g.current;if(X)try{const de=ne.current;if(Array.isArray(de)&&de.length>1){await Lt(0);return}Xe(!1);try{X.currentTime=0}catch{}X&&await st(X),M("playing"),z("playMode")}catch{}},Mn=()=>{nt(),xt(),Ie.current?.();const X=g.current;try{if(X){try{X.pause()}catch{}try{X.currentTime=0}catch{}}}catch{}ft(),M("stopped"),z("active"),G(0),W(!1)},on=async(X,{sameSegment:de=!1}={})=>{nt();const ae=fe.generation(),be=g.current,Le=ne.current?.[X]?.src;try{if(Xe(!1),R(X),W(!0),le.current=X,!Le||!be||(de||Ct(),ot(be,Le),!de&&await rt()===!1)||!fe.isCurrent(ae)||(await st(be),!fe.isCurrent(ae)))return;M("playing"),z("playMode")}catch{}},xn=async()=>{const X=ne.current,de=le.current||0;if(!X||de<=0){await zt();return}await on(de-1)},zn=async()=>{const X=ne.current,de=le.current||0;if(!X||de>=X.length-1){Mn();return}await on(de+1)},_n=()=>{if(Ae.current)return;const X=200,de=340;Xe(!0),nt(),xt();try{G(1)}catch{}mt(1);try{Q("hold")}catch{}try{const ae=g.current,be=se&&!!ae?.src;if(!se||be){if(ae){ae.pause();try{ae.currentTime=0}catch{}}}else gt();ft()}catch{}try{M("stopped")}catch{}if(W(!1),!We.current)try{Ue.current&&(clearTimeout(Ue.current),Ue.current=null),Ue.current=setTimeout(()=>{try{Q("out")}catch{}Ue.current=setTimeout(()=>{try{typeof _e.current=="function"&&_e.current(!0)}catch{}try{Q("idle")}catch{}Ue.current=null},de)},X)}catch{}};o.useEffect(()=>{Qe.current=_n});const Vt=o.useCallback(()=>De(""),[]),Lt=async X=>{(ne.current||[])[X]&&await on(X,{sameSegment:X===le.current})},Wt=Y==="playing",Cn=o.useMemo(()=>{if(!H||H.length<=1)return H;const X=H[D];return X?[X]:H},[H,D]),It=i===!0;o.useEffect(()=>{try{const X=g.current;X&&typeof X.playbackRate=="number"&&et(X)}catch{}},[ce,et]);const sn=o.useRef({raf:null,timer:null});o.useEffect(()=>{const X=g.current;if(!X)return;const de=Math.max(0,Math.min(1,Ne)),ae=sn.current,be=()=>{ae.raf!==null&&(cancelAnimationFrame(ae.raf),ae.raf=null),ae.timer!==null&&(clearTimeout(ae.timer),ae.timer=null)};be();const Le=Ua(X);if(X.paused||Math.abs(Le-de)<.001||typeof requestAnimationFrame!="function"){try{Rn(X,de)}catch{}return}const He=performance.now(),ut=()=>{const yt=Math.min(1,(performance.now()-He)/150);try{Rn(X,Le+(de-Le)*yt)}catch{}ae.raf=yt<1?requestAnimationFrame(ut):null};return ae.raf=requestAnimationFrame(ut),ae.timer=setTimeout(()=>{be();try{Rn(X,de)}catch{}},200),be},[Ne]);const Dt=K==="hold",ie=K==="out",ve=U==="playMode"&&!S&&!Te||Dt||ie,Me=Y!=="stopped"||Dt||ie,Je=Y==="paused",Oe=Math.max(0,Math.min(100,(P||0)*100)),Ye=we("audio-player__fill",ve?"is-visible":"",Me?"is-expanded":"",Je?"is-paused":"",ie?"is-out":"");return n.jsxs("div",{className:`audio-player ${It?"is-disabled":""}${l?` ${l}`:""}`,role:"group","aria-label":typeof C=="string"?C:void 0,children:[n.jsxs("div",{className:`audio-player__panel ${Wt?"is-playing":""} ${S?"is-loading":""} ${U!=="default"?"is-revealed":""}`,children:[S?n.jsxs("div",{className:"audio-player__loading",role:dc[O]?"status":void 0,"aria-live":dc[O]?"polite":"off",children:[n.jsx("span",{className:"audio-player__loading-spinner","aria-hidden":"true"}),n.jsx("span",{className:"audio-player__loading-text",children:p(`training.audioStatus.${O}`,{defaultValue:R3[O]})})]}):null,U==="active"?n.jsx("button",{className:"audio-player__button",type:"button",disabled:It,onClick:()=>{q.current=lr(),N(),Ft()},"aria-label":typeof C=="string"?C:p("training.listen","\uB4E3\uAE30"),onMouseEnter:k,onMouseLeave:N,onFocus:k,onBlur:N,children:n.jsx("span",{ref:_,className:"audio-player__button-triangle-wrap",children:n.jsx("svg",{className:"audio-player__button-triangle",viewBox:"0 0 24 24","aria-hidden":"true",children:n.jsx("path",{ref:B,d:"M13.2 7.7 L16.5 9.85 Q20.2 12 16.5 14.15 L10 18.3 Q7 19.7 7 16.3 L7 7.7 Q7 4.3 10 5.7 L13.2 7.7"})})})}):null,A&&n.jsx(An,{anchorRect:A,text:typeof C=="string"&&C?C:p("training.listenLabel","\uBB38\uC7A5 \uB4E3\uAE30"),offset:8}),n.jsxs("div",{className:`audio-player__play ${U==="playMode"||Wt?"is-visible":""}`,inert:!(U==="playMode"||Wt)||void 0,children:[n.jsxs("div",{ref:x,className:"audio-player__buttons",children:[n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-back",onClick:xn,ariaLabel:p("training.prev","\uC774\uC804"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:Wt?"pause":"play",onClick:Ft,ariaLabel:p("common.playPause","\uC7AC\uC0DD / \uBA48\uCDA4"),"aria-pressed":Wt,width:"60px",variant:"transparent-white",disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"square",onClick:Mn,ariaLabel:p("training.stop","\uC815\uC9C0"),width:"60px",variant:"transparent-white","aria-hidden":"true",tabIndex:-1,disabled:U!=="playMode"}),ze>1?n.jsx("div",{ref:w,className:"audio-player__source-buttons",children:Array.from({length:ze}).map((X,de)=>n.jsx(me,{htmlType:"button",size:32,type:"dot",shape:"pill",useBorder:!1,label:String(de+1),onClick:()=>{try{Lt(de)}catch{}},ariaLabel:p("training.sourcePlay",{n:de+1}),variant:"transparent-white",selected:I&&D===de,disabled:U!=="playMode"||!(Array.isArray($)&&$[de]),showTooltipInfo:!0},de))}):null,!Array.isArray($)||$.length<=1?n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"repeat",onClick:zt,ariaLabel:p("common.replay","\uB2E4\uC2DC\uB4E3\uAE30"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"}):null,n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"skip-forward",onClick:zn,ariaLabel:p("training.next","\uB2E4\uC74C"),width:"60px",variant:"transparent-white","aria-hidden":!0,tabIndex:-1,disabled:U!=="playMode"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",shape:"pill",useBorder:!1,icon:"check",onClick:_n,ariaLabel:p("common.done","\uC644\uB8CC"),width:"60px",variant:"transparent-white",disabled:U!=="playMode"})]}),n.jsxs("div",{className:"audio-player__slider",children:[n.jsx("div",{className:Ye,ref:h,style:{left:`${Oe}%`},"aria-hidden":"true"}),(u||c)&&n.jsx($3,{segments:Cn,progress:P,totalDuration:ee,waveProgressRef:Ce,showSoundWaveForm:u,leadInMs:d,tailMs:m,trackDurationSec:$?.[D]?.duration??0,noiseSrc:c&&y?.settings.enabled&&re>0?dt:null,noiseRatio:y?Ha(y.settings):0,noiseSpeed:y?.settings.speed??1,mainVolume:J,onReadyChange:ct})]})]}),n.jsx("audio",{ref:g,crossOrigin:"anonymous",preload:"auto"})]}),!u&&n.jsxs("p",{className:"audio-player__no-waveform caption-1",children:[n.jsx(at,{icon:"triangle-alert",size:14}),p("training.noSoundWaveform","\uC18C\uB9AC \uBE44\uAD50 \uBB38\uC81C\uB294 \uC6E8\uC774\uBE0C\uD3FC\uC744 \uD45C\uD604\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4.")]}),n.jsx(ua,{message:pe,position:ye,onClose:Vt})]})}function gr(e){const{t}=xe.useTranslation(),{text:a,label:r,anchorRect:i=null,onClose:s,closeOnOutsideClick:l=!0,isMobilePopup:u=!1}=e||{},[c,d]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||"light"}catch{return"light"}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",c)}catch{}},[c]);const{increase:m,decrease:p,canIncrease:C,canDecrease:y,fontSize:v,lineHeight:g}=hl({storageKey:"tooltip-fontScale"}),h=o.useCallback(()=>d(B=>B==="dark"?"light":"dark"),[]),x=o.useCallback(B=>{try{B.stopPropagation()}catch{}try{typeof s=="function"&&s()}catch{}},[s]),f=Array.isArray(a)?a:typeof a>"u"||a===null?[]:[a],w={fontSize:`${v}px`,lineHeight:`${g}px`,"--tt-line-height":`${g}px`,"--tt-marker-size":"28px"},b=n.jsxs("div",{className:`tooltip-textbox__root ${c==="dark"?"is-dark":""}`,children:[n.jsxs("div",{className:"tooltip-textbox__box",children:[r&&n.jsx("div",{className:"tooltip-textbox__label body-2b",children:r}),n.jsx("div",{className:"tooltip-textbox__text body-1",style:w,children:f.map((B,_)=>n.jsxs("div",{className:"tooltip-textbox__line",children:[f.length>1?n.jsx("div",{className:"tooltip-textbox__marker",children:n.jsx("span",{className:"tooltip-textbox__line-number button-1",children:_+1})}):null,n.jsx("span",{className:"tooltip-textbox__line-text",children:B})]},_))})]}),n.jsxs("div",{className:"tooltip-textbox__buttons",children:[n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"minus",onClick:p,ariaLabel:t("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),variant:c==="dark"?"transparent-white":"transparent-gray",disabled:!y}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"plus",onClick:m,ariaLabel:t("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),variant:c==="dark"?"transparent-white":"transparent-gray",disabled:!C}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:c==="dark"?"moon":"sun-medium",onClick:h,ariaLabel:t("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:c==="dark"?"transparent-white":"transparent-gray"}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:"x",onClick:x,ariaLabel:t("common.close","\uB2EB\uAE30"),variant:c==="dark"?"transparent-white":"transparent-gray"})]})]});return i?n.jsx(cn,{anchorRect:i,className:`tooltip-textbox ${c==="dark"?"is-dark":""}`,onClose:s,closeOnOutsideClick:l,isMobilePopup:u,ariaLabel:r||t("tooltip.textbox","\uBCF8\uBB38"),children:b}):n.jsx("div",{className:`tooltip-textbox ${c==="dark"?"is-dark":""}`,children:b})}function hc({state:e="disabled"}){const{t}=xe.useTranslation();return n.jsxs("div",{className:`ts-bullet ts-bullet--${e}`,"aria-hidden":!0,children:[n.jsx("div",{className:"bullet__dot",children:n.jsx(at,{icon:"chevron-right",label:t("training.next","\uB2E4\uC74C"),className:"bullet__icon",imgClassName:"bullet__icon-img",maskClassName:"bullet__icon-mask",svgClassName:"bullet__icon-svg",wrapperStyle:{},size:20})}),n.jsx("div",{className:"ts-bullet__line"})]})}function Cc(e,t,a){const r=o.useRef(t),i=o.useRef(a);o.useEffect(()=>{r.current=t,i.current=a}),o.useEffect(()=>{if(!e||typeof document>"u")return;let s=null,l=10;const u=()=>{s=null;const c=r.current(),d=c?Array.from(c.querySelectorAll(fn)).find(m=>!m.closest('[aria-hidden="true"]')):void 0;if(d){try{d.focus()}catch{}if(document.activeElement===d)return}--l>0&&(s=requestAnimationFrame(u))};return s=requestAnimationFrame(u),()=>{s!==null&&cancelAnimationFrame(s);const c=document.activeElement;if(!c||c===document.body||!document.contains(c)||c.closest(".tooltip-content")){const d=i.current();if(d)try{d.focus()}catch{}}}},[e])}function fc({title:e,children:t,className:a="",state:r="disabled",usePreviewTextBtn:i=!1,onPreviewTextBtn:s,previewText:l=null,useFaded:u,usePlayAllBtn:c=!1,onPlayAll:d,playAllActive:m=!1}){const{t:p}=xe.useTranslation(),C=ln("(max-width: 767px)"),y=`training-step__title h4 ${u&&r==="disabled"?"training-step__title--faded":""} ${a}`.trim(),v=`training-step__title-row training-step__title-row--${r}`.trim(),g=o.useRef(null),[h,x]=o.useState(!1),[f,w]=o.useState(null),[b,B]=o.useState(null);Cc(h&&!!f,()=>{if(typeof document>"u")return null;const S=Array.from(document.querySelectorAll(".tooltip-content"));for(let E=S.length-1;E>=0;E--)if(S[E].querySelector(".tooltip-textbox__root"))return S[E];return null},()=>g.current?.querySelector("button")??null);const _=o.useRef(s);o.useEffect(()=>{_.current=s});const A=o.useMemo(()=>l==null?"":typeof l=="string"||typeof l=="number"?String(l):Array.isArray(l)&&l.every(S=>typeof S=="string"||typeof S=="number")?l.join(""):"",[l]),k=o.useCallback(()=>{x(!1),w(null),B(null)},[]);o.useEffect(()=>{if(!h)return;let S;try{typeof _.current=="function"&&(S=_.current())}catch{}if(S===!1){k();return}B(typeof S<"u"&&S!==null?S:null)},[A]);const N=o.useCallback(()=>{let S;try{typeof s=="function"&&(S=s())}catch{}if(S!==!1){if(B(typeof S<"u"&&S!==null?S:l),!g.current){x(E=>!E);return}if(h)x(!1),w(null),B(null);else{const E=g.current.getBoundingClientRect();w(E),x(!0)}}},[s,l,h]);return n.jsxs("div",{className:v,children:[n.jsx("p",{className:y,children:n.jsx("span",{className:"training-step__title-text",children:e??t})}),i||c?n.jsxs("div",{className:"title-controls",children:[n.jsxs("div",{className:"title-buttons",children:[c&&n.jsx(me,{htmlType:"button",size:32,type:C?"dot":"bar",icon:"play-circle",label:C?void 0:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),ariaLabel:p("training.playAll","\uBAA8\uB450 \uB4E3\uAE30"),selected:m,onClick:d,variant:r==="disabled"?"disabled":"default",disabled:r==="disabled"||m,onDisabledClick:m&&r!=="disabled"?()=>{}:void 0}),i&&n.jsx("div",{ref:g,children:n.jsx(me,{htmlType:"button",size:32,type:C?"dot":"bar",icon:"eye",label:C?void 0:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),ariaLabel:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),onClick:N,className:h?"is-selected":void 0,"aria-expanded":h,"aria-haspopup":"dialog",variant:r==="disabled"?"disabled":"default",disabled:!l&&typeof s!="function"})})]}),h&&n.jsx(gr,{text:b??l,label:p("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),anchorRect:f,onClose:k,closeOnOutsideClick:!1,isMobilePopup:!0})]}):null]})}function es(e,t){return typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled"}function Xn({index:e,stepIndex:t,isLast:a=!1,title:r="",titleProps:i={},children:s,className:l="",onDone:u=void 0,useTitleFaded:c=void 0,lockedHint:d}){const{t:m}=xe.useTranslation(),[p,C]=o.useState(()=>es(e,t));o.useEffect(()=>{const _=es(e,t);if(_!==p){const A=setTimeout(()=>C(_),0);return()=>clearTimeout(A)}},[e,t,p]);const y=o.useCallback((..._)=>{es(e,t)==="done"||p==="done"||typeof u=="function"&&u(..._)},[e,t,p,u]),[v,g]=o.useState(!1),[h,x]=o.useState({text:"",label:"\uBB38\uC7A5 \uB4E3\uAE30",anchorRect:null,backdrop:!1,alignX:null,alignY:null}),f=o.useCallback(_=>{if(!_)return null;try{const A=_;if(typeof _=="object"&&(A.currentTarget||A.target)&&(A.nativeEvent||A.type)){const S=A.currentTarget??A.target;if(S&&typeof S.getBoundingClientRect=="function")return S.getBoundingClientRect()}if(_ instanceof DOMRect)return _;const k=_;if(k&&typeof k.getBoundingClientRect=="function")return k.getBoundingClientRect();const N=_?.current;return N&&typeof N.getBoundingClientRect=="function"?N.getBoundingClientRect():null}catch{return null}},[]),w=o.useCallback((_,{text:A="",label:k="\uBB38\uC7A5 \uB4E3\uAE30",backdrop:N=!1,alignX:S="center",alignY:E="top"}={})=>{const O=f(_);x({text:A,label:k,anchorRect:O,backdrop:N,alignX:S,alignY:E}),g(!0)},[f]),b=o.useCallback(()=>{g(!1),x(_=>({..._,anchorRect:null}))},[]),B=o.Children.map(s,_=>{if(o.isValidElement(_)){const A=_;if(typeof A.type=="string")return A;const k=A.props??{},N=typeof k.onDone=="function"?k.onDone:y,S=typeof k.disabled=="boolean";let E=p==="disabled";return S&&(E=!!k.disabled),o.cloneElement(A,{onDone:N,disabled:E,showTooltip:w,hideTooltip:b})}return _});return n.jsxs("div",{className:`training-step training-step--${p} ${a?"training-step--last":""} ${l}`,"aria-current":p==="active",children:[n.jsx(hc,{state:p}),n.jsxs("div",{className:"training-step__content",children:[n.jsx(fc,{state:p,title:r,...i,useFaded:c}),p==="disabled"&&d&&typeof e=="number"&&typeof t=="number"&&e===t+1&&n.jsx("p",{className:"training-step__locked-hint caption-1",role:"status",children:d}),B]}),v?n.jsx(cn,{anchorRect:h.anchorRect,backdrop:h.backdrop,onClose:b,ariaLabel:m("tooltip.textbox","\uBCF8\uBB38"),children:n.jsx(gr,{text:h.text,onClose:b})}):null]})}function gc({context:e,state:t="disabled",theme:a="light"}){const{t:r}=xe.useTranslation(),[i,s]=o.useState("disabled"),[l,u]=o.useState(()=>{try{return localStorage.getItem("tooltip-theme")||a}catch{return a}});o.useEffect(()=>{try{localStorage.setItem("tooltip-theme",l)}catch{}},[l]);const c=()=>u(F=>F==="dark"?"light":"dark"),{increase:d,decrease:m,canIncrease:p,canDecrease:C,fontSize:y,lineHeight:v}=hl({storageKey:"textbox_fontScale"}),[g,h]=o.useState(""),x=o.useRef(null),f=o.useRef(!1),w=o.useCallback(()=>{f.current=lr()&&!!x.current&&x.current.contains(document.activeElement),s("active")},[]),b=o.useCallback(()=>h(""),[]),B=F=>{try{h(F)}catch{}},_=typeof navigator<"u"&&/Mobi|Android/i.test(navigator.userAgent||"");o.useEffect(()=>{if(t!=="disabled"){const F=setTimeout(()=>s(t),0);return()=>clearTimeout(F)}},[t]);const A=o.useMemo(()=>e&&typeof e=="object"?String(e.sentence??e.text??""):typeof e=="string"?e:"",[e]),[k,N]=o.useState(A);k!==A&&(N(A),s("disabled"));const S=t==="disabled"?i:t,E=S==="disabled"?"training-text-box--disabled":S==="active"?"training-text-box--active":S==="done"?"training-text-box--done":"",O=o.useMemo(()=>({fontSize:`${y}px`,lineHeight:`${v}px`}),[y,v]);return o.useEffect(()=>{if(S==="disabled"||!f.current)return;f.current=!1;const F=document.activeElement;F&&F!==document.body||x.current?.querySelector(".training-text-box__buttons button")?.focus()},[S]),n.jsxs("div",{ref:x,className:`training-text-box ${E} ${S!=="disabled"&&l==="dark"?"is-dark":""}`,children:[S==="disabled"&&n.jsx("div",{className:"training-text-box__preview",children:n.jsx(me,{htmlType:"button",size:48,type:"bar",onClick:w,icon:"eye",ariaLabel:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),label:r("training.sentencePreview","\uBB38\uC7A5 \uBBF8\uB9AC\uBCF4\uAE30"),useBorder:!1})}),n.jsx("div",{className:"training-text-box__area","aria-hidden":S==="disabled",children:n.jsx("span",{className:"training-text-box__inner h3",style:O,children:A})}),S!=="disabled"&&n.jsxs("div",{className:"training-text-box__buttons","aria-hidden":S==="disabled",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:m,onDisabledClick:()=>B(r("training.fontSizeMin","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uC18C\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeDecrease","\uAE00\uC790 \uD06C\uAE30 \uAC10\uC18C"),icon:"minus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!C,useBorder:!1,showTooltipInfo:!0,...!_&&{width:"60px"}}),n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:d,onDisabledClick:()=>B(r("training.fontSizeMax","\uAE00\uC528 \uD06C\uAE30\uAC00 \uCD5C\uB300\uC785\uB2C8\uB2E4.")),ariaLabel:r("training.fontSizeIncrease","\uAE00\uC790 \uD06C\uAE30 \uC99D\uAC00"),icon:"plus",variant:l==="dark"?"transparent-white":"transparent-gray",disabled:!p,useBorder:!1,showTooltipInfo:!0,...!_&&{width:"60px"}}),n.jsx(me,{htmlType:"button",size:32,showTooltipInfo:!0,type:"dot",useBorder:!1,width:48,icon:l==="dark"?"moon":"sun-medium",onClick:c,ariaLabel:r("training.toggleBackground","\uBC30\uACBD \uC804\uD658"),variant:l==="dark"?"transparent-white":"transparent-gray"})]}),n.jsx(ua,{message:g,position:"top",onClose:b})]})}function Jn(e){return e==="active"||e==="done"}function ts({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,useTitleFaded:s,onDone:l,onChange:u,answer:c,wrongAnswers:d,choices:m,multiSelect:p=!1,correctCount:C=0,useDisabledCovered:y=!1,choiceIcons:v,shuffleChoices:g=!0}){const{t:h}=xe.useTranslation(),x=i??h("training.selectConfirm","\uBB38\uC81C\uB97C \uBCF4\uACE0 \uD574\uB2F9\uD558\uB294 \uB0B4\uC6A9\uC744 \uC120\uD0DD\uD558\uC138\uC694."),f=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",b=Array.isArray(m)&&m.length?m:typeof c<"u"?[c].concat(Array.isArray(d)?d:[]):void 0,B=d?d.join("||"):"",_=m?m.join("||"):"",[A,k]=o.useState(()=>Array.isArray(b)?g?Aa(b):b.slice():void 0);o.useEffect(()=>{Array.isArray(b)&&b.length?k(g?Aa(b):b.slice()):k(void 0)},[c,B,_,g]);const[N,S]=o.useState(null),[E,O]=o.useState(()=>new Set);o.useEffect(()=>{S(null),O(new Set)},[_,c,B]);const F=o.useRef(void 0);o.useEffect(()=>{const L=F.current;typeof L=="number"&&typeof t=="number"&&typeof e=="number"&&L>=e&&t<e&&(S(null),O(new Set)),F.current=t},[t,e]);const Y=o.useCallback(L=>{if(!Jn(w))return;const P=A?.[L];if(P==null)return;const G=P;if(p){const U=new Set(E);U.has(G)?U.delete(G):U.add(G),O(U),typeof u=="function"&&u({selectedValues:[...U],__ts:Date.now()}),typeof l=="function"&&l({selectedValues:[...U],__ts:Date.now()})}else S(G),typeof u=="function"&&u({selectedIndex:L,selectedValue:G,__ts:Date.now()}),typeof l=="function"&&l({selectedIndex:L,selectedValue:G,__ts:Date.now()})},[A,w,p,u,E]),M=`training-step__buttons${Array.isArray(A)&&A.length>3?" training-step__buttons--wrap-3":""}`;return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:x,useTitleFaded:s,children:n.jsx("div",{className:M,children:Array.isArray(A)&&A.length>0?A.map((L,P)=>n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:()=>Y(P),ariaLabel:String(L),label:L,useLabel:!0,icon:v?v[String(L)]:void 0,variant:"default",disabled:w==="disabled",selected:p?E.has(L):N===L,useDisabledCovered:y,minWidth:0},String(L))):null})})}function ns({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u,demoSelected:c}){const{t:d}=xe.useTranslation(),m=i??d("training.confirmTitle","\uBB38\uC7A5\uC744 \uD655\uC778\uD558\uACE0 \uC798 \uB4E4\uB838\uB294\uC9C0 \uC120\uD0DD\uD558\uC138\uC694."),p=typeof e=="number"?e:-1,C=typeof t!="number"?"disabled":p<t?"done":p===t?"active":"disabled",y=u&&typeof u=="object"?u.sentence||"":typeof u=="string"?u:"",v=u&&typeof u=="object"?u.choices:void 0,[g,h]=o.useState(c??null),x=`${String(y)}\0${JSON.stringify(v??null)}`,[f,w]=o.useState(x);f!==x&&(w(x),c==null&&h(null));const[b,B]=o.useState(c);Object.is(b,c)||(B(c),h(c??null));const _=o.useRef(void 0);o.useEffect(()=>{const S=_.current;typeof S=="number"&&typeof t=="number"&&typeof e=="number"&&S>=e&&t<e&&c==null&&h(null),_.current=t},[t,e,c]);const A=o.useCallback(S=>{const E=typeof S=="object"&&S!==null?Object.assign({},S,{__ts:Date.now()}):{value:S,__ts:Date.now()};typeof l=="function"&&l(E),Jn(C)&&typeof s=="function"&&s(E)},[l,C,s]),k=o.useCallback(()=>{Jn(C)&&(h(!1),A(!1))},[A,C]),N=o.useCallback(()=>{Jn(C)&&(h(!0),A(!0))},[A,C]);return n.jsxs(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:m,onDone:s,useTitleFaded:!1,children:[n.jsx(gc,{context:u,state:C}),n.jsx("div",{className:"training-step__buttons",children:Array.isArray(v)&&v.length>0?v.slice(0,6).map((S,E)=>n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:()=>{Jn(C)&&(h(E),A&&A(E))},disabled:C==="disabled",ariaLabel:String(S),label:S,variant:C,selected:g===E},E)):n.jsxs(n.Fragment,{children:[n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:k,disabled:C==="disabled",icon:"x",ariaLabel:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),label:d("training.notHeard","\uC548 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:g===!1}),n.jsx(me,{htmlType:"button",size:56,type:"bar",onClick:N,disabled:C==="disabled",icon:"circle",ariaLabel:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),label:d("training.heardWell","\uC798 \uB4E4\uB838\uC5B4\uC694."),variant:"default",selected:g===!0})]})})]})}function as({index:e,stepIndex:t,isLast:a=!1,title:r,onDone:i,btnLabel:s,soundSrc:l,bucketPath:u,usePreviewTextBtn:c,previewText:d=null,onPreviewTextBtn:m,disabled:p,_pageIndex:C,showSoundWaveForm:y,showNoiseWaveForm:v,leadInMs:g,tailMs:h}){const{t:x}=xe.useTranslation(),f=r??x("training.listenTitle","\uC81C\uC2DC\uD558\uB294 \uBB38\uC7A5\uC744 \uB4E4\uC5B4\uC8FC\uC138\uC694."),w=p??(typeof t=="number"&&typeof e=="number"?e>t:!1);return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,title:f,onDone:i,titleProps:{usePreviewTextBtn:c,previewText:d,onPreviewTextBtn:m},children:n.jsx(Qo,{soundSrc:l,ttsText:l?null:d??f,bucketPath:u,btnLabel:s||x("training.listenButton","\uBB38\uC7A5 \uB4E3\uAE30"),disabled:w,className:"training-step__listen-sticky",showSoundWaveForm:y,showNoiseWaveForm:v,leadInMs:g,tailMs:h},`audio-p${C??0}-s${e}`)})}const q3=[];function rs({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u=q3}){const{t:c}=xe.useTranslation(),d=i??c("training.orderListDefault","\uBB38\uC7A5\uC744 \uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uBC30\uCE58\uD558\uC138\uC694."),m=T=>typeof T=="string"?T:T&&(T.context||T.sentence||T.question||"")||"",[p,C]=o.useState(Array.isArray(u)?u:[]),[y,v]=o.useState(()=>(p||[]).map((T,D)=>({id:D,text:m(T)}))),g=o.useMemo(()=>typeof t!="number"||typeof e!="number"?"disabled":e<t?"done":e===t?"active":"disabled",[t,e]),h=g!=="disabled",x=o.useRef(void 0),f=o.useRef(void 0);o.useEffect(()=>{if(x.current===u)return;x.current=u;const T=Array.isArray(u)?u:[];C(T);const D=(R=>{const I=(R||[]).map((ce,J)=>({id:J,text:m(ce)}));if(I.length<=1)return I;const W=(ce,J)=>{if(ce.length!==J.length)return!1;for(let re=0;re<ce.length;re++)if(ce[re].text!==J[re].text)return!1;return!0};let ee=Aa(I),oe=0;for(;W(ee,I)&&oe<20;)ee=Aa(I),oe+=1;return ee})(T);v(D);try{if(typeof l=="function"){const R=D.filter((I,W)=>I.text===m(T[W])).length;l({shuffled:D,score:R,total:(T||[]).length,initial:!0,__ts:Date.now()})}if(typeof s=="function"&&g==="active"){const R=D.filter((I,W)=>I.text===m(T[W])).length;f.current=u,s({shuffled:D,score:R,total:(T||[]).length,initial:!0,__ts:Date.now()})}}catch{}},[u]),o.useEffect(()=>{if(g!=="active"||f.current===u||(f.current=u,typeof s!="function"))return;const T=Array.isArray(u)?u:[],D=y.filter((R,I)=>R.text===m(T[I])).length;s({shuffled:y,score:D,total:T.length,initial:!0,__ts:Date.now()})},[g,u]);const w=(T,D)=>{const R=[...y],I=T+D;if(I<0||I>=R.length)return;const W=R[I];R[I]=R[T],R[T]=W,G(R);try{if(typeof s=="function"&&g==="active"){const ee=R.filter((oe,ce)=>oe.text===m(p[ce])).length;s({shuffled:R,score:ee,total:(p||[]).length,__ts:Date.now()})}}catch{}},[b,B]=o.useState(null),_=o.useRef(null),A=o.useRef(null),k=o.useRef(null),N=o.useRef(null),S=o.useRef(null),E=o.useRef({x:0,y:0}),O=o.useRef(null),F=o.useRef({dx:0,dy:0}),Y=()=>{if(O.current!==null)return;const T=()=>{if(!_.current){O.current=null;return}O.current=requestAnimationFrame(T);const D=E.current,R=F.current||{dx:0,dy:0};_.current&&(_.current.style.transform=`translate3d(${D.x-R.dx}px, ${D.y-R.dy}px, 0)`)};O.current=requestAnimationFrame(T)},M=o.useRef(new Map),L=o.useRef(new Map),P=()=>{const T=new Map;return M.current.forEach((D,R)=>{D&&D.getBoundingClientRect&&T.set(R,D.getBoundingClientRect())}),T},G=T=>{const D=P();v(T);try{if(typeof l=="function"){const R=T.filter((I,W)=>I.text===m(p[W])).length;l({shuffled:T,score:R,total:(p||[]).length,__ts:Date.now()})}}catch{}requestAnimationFrame(()=>{const R=P();T.forEach(I=>{const W=D.get(I.id),ee=R.get(I.id),oe=M.current.get(I.id);if(!oe||!W||!ee)return;const ce=W.top-ee.top;ce&&(oe.style.transition="none",oe.style.transform=`translateY(${ce}px)`,requestAnimationFrame(()=>{oe.style.transition="transform 420ms cubic-bezier(.22,.9,.39,1)",oe.style.transform="";const J=()=>{oe.style.transition="",oe.removeEventListener("transitionend",J)};oe.addEventListener("transitionend",J)}))})})},U=(T,D)=>{try{try{D.dataTransfer?.setData("text/plain",String(T))}catch{}try{D.dataTransfer&&(D.dataTransfer.effectAllowed="move")}catch{}try{const R=document.createElement("div");R.style.cssText="position:absolute;top:-9999px;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;",document.body.appendChild(R),D.dataTransfer?.setDragImage(R,0,0),requestAnimationFrame(()=>{try{document.body.removeChild(R)}catch{}})}catch{}}catch{}B(T);try{const R=y[T],I=document.createElement("div");I.className="order-list__dragging-object order-list__dragging-object--visible",I.textContent=R&&R.text?R.text:"",document.body.appendChild(I),_.current=I;const W=M.current.get(R.id);let ee=D.clientX||0,oe=D.clientY||0;try{if(W&&W.getBoundingClientRect){const Q=W.getBoundingClientRect();ee=Q.left+Q.width/2,oe=Q.top+Q.height/2}}catch{}const ce=I.getBoundingClientRect(),J=ce.width/2,re=ce.height/2;F.current={dx:J,dy:re},I.style.transition="none",E.current={x:ee,y:oe},I.style.transform=`translate3d(${ee-J}px, ${oe-re}px, 0)`,requestAnimationFrame(()=>{try{I.style.transition=""}catch{}Y()});const Ne=Q=>{const pe=Q;E.current={x:pe.clientX,y:pe.clientY},Y()};k.current=Ne,document.addEventListener("mousemove",Ne);const K=Q=>{const pe=Q;E.current={x:pe.clientX,y:pe.clientY},Y()};A.current=K,document.addEventListener("dragover",K);try{D.dataTransfer?.setData("text/plain",String(T));try{D.dataTransfer?.setData("application/json",JSON.stringify({idx:T}))}catch{}}catch{}}catch{}},z=(T,D)=>{D.preventDefault();try{D.dataTransfer&&(D.dataTransfer.dropEffect="move")}catch{}try{S.current!==null&&(clearTimeout(S.current),S.current=null);const R=D.currentTarget&&D.currentTarget.closest?D.currentTarget.closest(".order-list__item"):null;if(R&&N.current!==R){if(N.current)try{N.current.classList.remove("drag-over")}catch{}try{R.classList.add("drag-over")}catch{}N.current=R}}catch{}},q=(T,D)=>{D.preventDefault();const R=D.dataTransfer?.getData("text/plain")||"",I=R?parseInt(R,10):b,W=T;if(typeof I!="number"||isNaN(I)||I===W){B(null),H(),$();return}const ee=XC(y,I,W);G(ee),B(null),$();try{if(typeof s=="function"&&g==="active"){const oe=ee.filter((ce,J)=>ce.text===m(p[J])).length;s({shuffled:ee,score:oe,total:(p||[]).length,__ts:Date.now()})}}catch{}try{requestAnimationFrame(()=>{const oe=document.querySelectorAll(".order-list .order-list__item")[W];if(!oe)return;const ce=oe.querySelector(".order-list__slot")||oe;try{ce.classList.add("pulse"),ce.offsetHeight,ce.classList.add("to-dark");const J=()=>{ce.classList.remove("pulse","to-dark"),ce.removeEventListener("transitionend",J)};ce.addEventListener("transitionend",J)}catch{}})}catch{}H()},$=()=>{if(_.current){try{document.body.removeChild(_.current)}catch{}_.current=null}A.current&&(document.removeEventListener("dragover",A.current),A.current=null),k.current&&(document.removeEventListener("mousemove",k.current),k.current=null),O.current!==null&&(cancelAnimationFrame(O.current),O.current=null)},V=()=>{B(null),H(),$()};o.useEffect(()=>()=>$(),[]);const H=()=>{try{if(S.current!==null&&(clearTimeout(S.current),S.current=null),N.current){try{N.current.classList.remove("drag-over")}catch{}N.current=null}document.querySelectorAll(".order-list .order-list__item").forEach(T=>T.classList.remove("drag-over"))}catch{}};return o.useEffect(()=>{try{const T=Math.max(1,(y||[]).length);y.forEach((D,R)=>{const I=L.current.get(D.id);if(!I)return;let W=50;T>1&&(W=Math.round(R/(T-1)*100));try{I.style.setProperty("--marker-pos",W+"%")}catch{}})}catch{}},[y]),o.useEffect(()=>()=>{$(),S.current!==null&&(clearTimeout(S.current),S.current=null)},[]),n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:d,children:n.jsx("div",{className:"order-list",children:y.map((T,D)=>{const R=Math.max(1,(y||[]).length),I=R>1?Math.round(D/(R-1)*100):50;return n.jsx("div",{className:"order-list__item",children:n.jsxs("div",{className:"order-list__slot","data-disabled":g==="disabled","aria-disabled":g==="disabled",children:[g!=="disabled"?n.jsx("div",{className:"order-list__marker caption-1",style:{"--marker-pos":I+"%"},ref:W=>{const ee=L.current;W?ee.set(T.id,W):ee.delete(T.id)},children:n.jsx("span",{className:"order-list__slot-number button-1",children:D+1})}):null,n.jsxs("div",{ref:W=>{const ee=M.current;W?ee.set(T.id,W):ee.delete(T.id)},className:`order-list__draggable ${b===D?"dragging":""}`,"data-disabled":g==="disabled","aria-disabled":g==="disabled",tabIndex:g==="disabled"?-1:0,draggable:h,onDragStart:h?W=>U(D,W):void 0,onDragEnter:h?W=>z(D,W):void 0,onDragOver:h?W=>z(D,W):void 0,onDragLeave:h?()=>{try{S.current!==null&&clearTimeout(S.current),S.current=setTimeout(()=>{try{const W=document.querySelectorAll(".order-list .order-list__item");W&&W[D]&&(W[D].classList.remove("drag-over"),N.current===W[D]&&(N.current=null))}catch{}},80)}catch{}}:void 0,onDrop:h?W=>q(D,W):void 0,onDragEnd:h?V:void 0,children:[n.jsx("span",{className:"order-list__item-text body-2",children:T.text}),h?n.jsxs("span",{className:"order-list__item-buttons",children:[n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:()=>w(D,-1),ariaLabel:c("training.up"),icon:"chevron-up",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===0,useBorder:!1,useDisabledInvisible:!0}),n.jsx(me,{htmlType:"button",size:32,type:"dot",onClick:()=>w(D,1),ariaLabel:c("training.down"),icon:"chevron-down",variant:"transparent-gray",width:48,useFaded:"true",disabled:D===y.length-1,useBorder:!1,useDisabledInvisible:!0})]}):null]})]})},T.id)})})})}const U3=8e3;function G3(e,t){return new Promise(a=>{let r=!1;const i=()=>{r||(r=!0,a())};e.then(i,i),setTimeout(i,t)})}function bc({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,onDone:s,onChange:l,context:u=[],selectable:c=!1,hideLabel:d=!1,hideAudio:m=!1,maxCards:p,playAllGapMs:C=0}){const{t:y}=xe.useTranslation(),v=i??y("training.cardInstructions","\uB0B1\uB9D0 \uCE74\uB4DC\uB97C \uBCF4\uACE0 \uC18C\uB9AC\uB97C \uB4E3\uACE0 \uD655\uC778\uD558\uC138\uC694."),g=o.useMemo(()=>Array.isArray(u)?u:u&&u.items||[],[u]),h=p??3,x=(g||[]).slice(0,h);(g||[]).length>h&&console.warn(`TrainingStepCard: ${g.length} items passed but only ${h} shown`);const f=typeof e=="number"?e:-1,w=typeof t!="number"?"disabled":f<t?"done":f===t?"active":"disabled",[b,B]=o.useState(null),_=o.useRef([]),[A,k]=o.useState(!1),N=o.useRef(null),S=o.useRef(!0);o.useEffect(()=>(S.current=!0,()=>{S.current=!1}),[]);const E=o.useMemo(()=>g.map(P=>P?.id??P?.word??"").join("|"),[g]);o.useEffect(()=>{B(null)},[E]);const O=o.useRef(void 0);o.useEffect(()=>{const P=O.current;typeof P=="number"&&typeof t=="number"&&typeof e=="number"&&P>=e&&t<e&&B(null),O.current=t},[t,e]);const F=o.useCallback((P,G)=>{if(c)return;const U={item:P,index:G,__ts:Date.now()};try{typeof l=="function"&&l(U)}catch{}if(w==="active"&&typeof s=="function")try{s(U)}catch{}},[c,l,w,s]),Y=o.useRef(C);o.useEffect(()=>{Y.current=Math.max(0,C||0)},[C]);const M=o.useCallback(async()=>{if(A||w==="disabled")return;k(!0);let P=!1;const G=new Promise(U=>{N.current=()=>{P=!0,U()}});try{for(let U=0;U<x.length&&!(!S.current||P);U++){const z=_.current[U];if(!z)continue;await Promise.race([G3(z.play(),U3),G]);const q=Math.max(0,Y.current||0);q>0&&U<x.length-1&&!P&&S.current&&await Promise.race([new Promise($=>{setTimeout($,q)}),G])}}finally{N.current=null,k(!1)}},[A,w,x.length]),L=o.useCallback((P,G)=>{if(!Jn(w))return;B(G);const U={selectedValue:P.word||P.title||"",selectedIndex:G,item:P,__ts:Date.now()};try{typeof l=="function"&&l(U)}catch{}if(typeof s=="function")try{s(U)}catch{}},[l,w,s]);return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:v,onDone:s,titleProps:{usePlayAllBtn:!m&&x.length>0,onPlayAll:M,playAllActive:A},children:n.jsx("div",{className:"training-step__cards",onClickCapture:P=>{const G=N.current;if(!G)return;const U=P.target;U&&typeof U.closest=="function"&&U.closest(".training-word-card__bottom")&&G()},children:x.length===0?n.jsx("div",{className:"training-step__empty",children:y("training.noCards","\uCE74\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}):x.map((P,G)=>n.jsx($o,{ref:U=>{_.current[G]=U},item:P,disabled:w==="disabled",onPlayDone:()=>F(P,G),selectable:c,selected:c&&b===G,onSelect:c?()=>L(P,G):void 0,flipDelay:G*120,hideLabel:d,hideAudio:m},P&&P.id||G))})})}const K3=160,yc=()=>{};function Sn(e){const t=o.useId();if(!("variant"in e)){const{label:f,sub:w,onClick:b,children:B,align:_="horizontal",icon:A,useFullWidth:k=!1}=e,N=S=>{b&&S.target===S.currentTarget&&(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),b())};return n.jsxs("div",{className:we("panel-row",_==="vertical"?"panel-row--vertical":"",k?"panel-row--label-fixed panel-row--fill":"",b?"panel-row--clickable":""),onClick:b,onKeyDown:b?N:void 0,role:b?"button":void 0,tabIndex:b?0:void 0,children:[A!=null&&n.jsx("div",{className:"panel-row__icon",children:A}),f!=null&&n.jsxs("div",{className:"panel-row__left",children:[n.jsx("div",{className:"panel-row__label body-3",children:f}),w&&n.jsx("div",{className:"panel-row__sub caption-1",children:w})]}),n.jsx("div",{className:"panel-row__right",children:B})]})}if(e.variant==="description")return n.jsx("div",{className:"panel-row panel-row--block",children:n.jsx("p",{className:"panel-row__description body-3",children:e.children})});if(e.variant==="empty")return n.jsx("div",{className:"panel-row panel-row--empty body-3",children:e.children});if(e.variant==="loading")return n.jsx("div",{className:"panel-row panel-row--loading",children:n.jsx(Fa,{size:28})});if(e.variant==="custom"&&!e.label)return n.jsx("div",{className:"panel-row panel-row--block",children:e.children});const{variant:a,label:r,sub:i,onClick:s,required:l,error:u,align:c="horizontal",useFullWidth:d=!1,icon:m}=e,p=a==="button"?void 0:s;let C=null;const y=a==="toggle"?`panel-toggle-${t}`:void 0,v=u?`panel-error-${t}`:void 0,g=`panel-helper-${t}`;if(a==="toggle"){const f=e;C=n.jsx(tu,{checked:f.checked,onChange:f.onChange,id:y})}else if(a==="segmented"){const f=e;C=n.jsx(gn,{options:f.options,value:f.value,onChange:f.onChange,size:f.size??40,ariaLabel:r})}else if(a==="dropdown"){const f=e,w=f.dropdowns?.length?n.jsx("div",{className:`panel-row__dropdown-group${d?" panel-row__dropdown-group--full":""}`,children:f.dropdowns.map((b,B)=>n.jsx("div",{className:d?"panel-row__dropdown-item--full":void 0,children:n.jsx(pn,{options:b.options,value:b.value,onChange:b.onChange,placeholder:b.placeholder,block:d,error:!!u,ariaDescribedBy:v,ariaLabel:b.ariaLabel??([r,b.placeholder].filter(Boolean).join(" ")||void 0)})},B))}):n.jsx(pn,{options:f.options??[],value:f.value??"",onChange:f.onChange??yc,block:d,error:!!u,ariaLabel:r,ariaDescribedBy:v});C=u?n.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[w,n.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:u})]}):w}else if(a==="button"){const f=e;f.buttons?.length?C=n.jsx("div",{className:"panel-row__button-group",children:f.buttons.map((w,b)=>n.jsx(me,{htmlType:"button",size:w.btnSize??40,variant:w.btnVariant??"default",disabled:w.disabled,onClick:w.onClick,children:w.label},b))}):C=n.jsx(me,{htmlType:"button",size:f.btnSize??40,variant:f.btnVariant??"default",disabled:f.disabled,onClick:f.onClick,children:f.buttonLabel})}else if(a==="text"){const f=e;C=n.jsx("span",{className:`panel-row__text body-2${d?" panel-row__text--full":""}`,style:f.valueColor?{color:f.valueColor}:void 0,children:f.value})}else if(a==="input"){const f=e;C=n.jsxs("div",{className:`panel-row__input-wrap${d?" panel-row__input-wrap--full":""}`,children:[n.jsx(Zn,{value:f.value,onChange:f.onChange??yc,onKeyDown:f.onKeyDown,onEnter:f.onEnter,placeholder:f.placeholder,ghostText:f.ghostText,ghostHint:f.ghostHint,inputMode:f.inputMode,readOnly:f.readOnly,disabled:f.disabled,type:f.type,autoComplete:f.autoComplete,maxLength:f.maxLength,showCount:f.showCount,multiline:f.multiline,rows:f.rows,fullWidth:d,error:u,ariaLabel:r,required:l,ariaDescribedBy:f.helperText?g:void 0}),f.helperText&&n.jsx("div",{id:g,className:"panel-row__helper caption-1",children:f.helperText})]})}else a==="custom"&&(C=e.children);u&&a!=="input"&&a!=="dropdown"&&(C=n.jsxs("div",{className:`panel-row__dropdown-error-wrap${d?" panel-row__dropdown-error-wrap--full":""}`,children:[C,n.jsx("span",{id:v,className:"caption-1 panel-row__error",role:"alert",children:u})]}));const h=a==="input"||a==="dropdown"||(a==="text"||a==="custom")&&d,x=f=>{p&&f.target===f.currentTarget&&(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),p())};return n.jsxs("div",{className:we("panel-row",c==="vertical"?"panel-row--vertical":"",h?"panel-row--label-fixed":"",a==="text"?"panel-row--text":"",p?"panel-row--clickable":""),onClick:p,onKeyDown:p?x:void 0,role:p?"button":void 0,tabIndex:p?0:void 0,children:[m!=null&&n.jsx("div",{className:"panel-row__icon",children:m}),n.jsxs("div",{className:"panel-row__left",children:[y?n.jsxs("label",{htmlFor:y,className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}):n.jsxs("div",{className:"panel-row__label body-3",children:[r,l&&n.jsx("span",{className:"required-mark",children:"*"})]}),i&&n.jsx("div",{className:"panel-row__sub caption-1",children:i})]}),n.jsx("div",{className:"panel-row__right",children:C})]})}function vc(e){const t=e.productName||e.brand,a=[e.brand,e.fitType].filter(r=>!!r&&r!==t);return[...new Set(a)].join(" \xB7 ")}function Y3({devices:e,onRelease:t,emptyLabel:a}){const{t:r,i18n:i}=xe.useTranslation();return n.jsx("div",{className:"panel-row panel-row--device",children:["left","right"].map(s=>{const l=e[s],u=s==="left"?r("device.direction.left","\uC88C"):r("device.direction.right","\uC6B0");return n.jsxs("div",{className:"panel-row__device-column",children:[n.jsxs("div",{className:"panel-row__device-head",children:[n.jsx("span",{className:"panel-row__device-side body-2b",children:u}),l&&t&&n.jsx(me,{htmlType:"button",size:32,type:"dot",icon:"x",ariaLabel:`${u} ${r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C")}`,showTooltipInfo:r("customers.device.unwear","\uCC29\uC6A9 \uD574\uC81C"),onClick:()=>t(s)})]}),l?n.jsxs("div",{className:"panel-row__device-info",children:[n.jsxs("span",{className:"panel-row__device-kind",children:[l.device&&n.jsx(kt,{size:"small",variant:vu(l.device),fill:"soft",label:xu(l.device,r)}),vc(l)&&n.jsx("span",{className:"panel-row__device-detail body-3",children:vc(l)})]}),n.jsx("span",{className:"panel-row__device-name body-2b",children:l.productName||l.brand}),To(l.wornYear,l.wornMonth,l.wornDay,i.language)&&n.jsx("span",{className:"panel-row__device-date caption-1",children:r("customers.device.wornSince",{date:To(l.wornYear,l.wornMonth,l.wornDay,i.language)})})]}):n.jsx("span",{className:"panel-row__device-empty body-3",children:a??r("customers.device.notRegistered","\uBBF8\uB4F1\uB85D")})]},s)})})}function br({title:e,titleLevel:t=2,icon:a,disc:r,actions:i,size:s="medium",minHeight:l,maxWidth:u,className:c,scrollable:d,scrollbarGutter:m="auto",compactRows:p=!1,useBorder:C=!0,useBg:y=!0,useRowBorder:v=!0,labelWidth:g,form:h=!1,loading:x,empty:f,children:w}){const b=we("panel",`panel--${s}`,h?"panel--form":"",l!==void 0?"panel--fill":"",C?"":"panel--no-border",y?"":"panel--no-bg",v?"":"panel--no-row-border",p?"panel--compact-rows":"",c),B={};l!==void 0&&(B.minHeight=l),u!==void 0&&(B.maxWidth=typeof u=="number"?`${u}px`:u),g!==void 0&&(B["--panel-label-width"]=typeof g=="number"?`${g}px`:g);const _=t?`h${t}`:"div";return n.jsxs("div",{className:b,style:Object.keys(B).length?B:void 0,children:[(!!e||r!=null)&&n.jsxs("div",{className:we("panel__header",r!=null?"panel__header--with-disc":""),children:[a&&n.jsx(at,{icon:a,label:typeof e=="string"?e:void 0,className:"panel__icon"}),n.jsxs("div",{className:"panel__title-group",children:[!!e&&n.jsx(_,{className:`panel__title ${r!=null?"body-3b":"h5b"}`,children:e}),r!=null&&n.jsx("p",{className:"panel__disc caption-1",children:r})]}),i&&n.jsx("div",{className:"panel__actions",children:i})]}),x?n.jsx(Sn,{variant:"loading"}):f!=null&&o.Children.toArray(w).length===0?n.jsx(Sn,{variant:"empty",children:f}):d?n.jsx("div",{className:we("panel__body--scroll",m==="stable"&&"panel__body--gutter-stable"),children:w}):w]})}function Z3({cols:e=2,layout:t="grid",gap:a=1,collapseAt:r,className:i,style:s,children:l}){const u=o.useRef(null),[c,d]=o.useState();o.useEffect(()=>{const p=u.current;if(r===void 0||!p||(d(p.clientWidth),typeof ResizeObserver>"u"))return;const C=new ResizeObserver(([y])=>d(y.contentRect.width));return C.observe(p),()=>C.disconnect()},[r]);const m=r!==void 0&&c!==void 0&&c<=r;return n.jsx("div",{ref:u,className:we("panel-grid",t==="columns"&&"panel-grid--columns",i),style:{"--panel-grid-cols":m?1:e,"--panel-grid-gap":typeof a=="number"?`${a}px`:a,...s},children:l})}function X3(e){return[{label:e("training.noise.level.none","\uC5C6\uC74C"),value:0},{label:e("training.noise.level.weak","\uC57D\uD568"),value:1},{label:e("training.noise.level.medium","\uBCF4\uD1B5"),value:2},{label:e("training.noise.level.strong","\uAC15\uD568"),value:3},{label:e("training.noise.level.veryStrong","\uB9E4\uC6B0 \uAC15\uD568"),value:4}]}function xc(e){return[{label:e("training.noise.type.default","\uAE30\uBCF8"),value:"defaultNoise",icon:"party-popper"},{label:e("training.noise.type.street","\uAE38\uAC70\uB9AC"),value:"street",icon:"car"},{label:e("training.noise.type.buzz","\uC640\uAE00\uC640\uAE00"),value:"buzz",icon:"message-square-more"},{label:e("training.noise.type.restaurant","\uC2DD\uB2F9"),value:"restaurant",icon:"coffee"}]}X3($t.t.bind($t)),xc($t.t.bind($t));const yr="none",J3=.5,Q3=1.5,e7=.25;function os({title:e,valueLabel:t,value:a,min:r,max:i,step:s,tickStep:l,size:u,disabled:c,onChange:d}){return n.jsxs(Sn,{variant:"custom",label:e,useFullWidth:!0,children:[n.jsx(hu,{value:a,onChange:d,min:r,max:i,step:s,size:u,showBgTick:!0,tickStep:l,ariaLabel:e,disabled:c,className:"noise-settings__slider-input"}),n.jsx("div",{className:we("noise-settings__value","button-1",c?"noise-settings__value--disabled":""),children:t})]})}function _c({anchorRect:e,onClose:t,hideNoiseRows:a=!1}){const{t:r}=xe.useTranslation(),i=ln("(max-width: 767px)")?40:24,s=mr(),l=Ha(s?.settings??Va),u=s?.settings.type??"defaultNoise",c=s?.settings.enabled??!0,d=s?.playbackRate??1,m=s?.mainVolume??1,p=Math.round(m*100),C=o.useCallback(x=>{try{s?.setMainVolume(Math.max(0,Math.min(1,x/100)))}catch{}},[s]),y=o.useCallback(x=>{try{s?.setPlaybackRate(x)}catch{}},[s]),v=o.useCallback(x=>{const f=Math.min(Oa,Math.max(0,Math.round(x*10)/10));try{s?.setSettings({noiseRatio:f})}catch{}},[s]),g=o.useCallback(x=>{try{x===yr?s?.setSettings({enabled:!1}):s?.setSettings({type:x,enabled:!0})}catch{}},[s]),h=[{key:yr,label:r("training.noise.type.none","\uC5C6\uC74C")},...xc(r).map(x=>({key:x.value,label:x.label}))];return n.jsx(cn,{anchorRect:e,offset:12,onClose:t,ariaLabel:r("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),isMobilePopup:!1,closeOnOutsideClick:!1,header:n.jsxs("div",{className:"noise-settings__header",children:[n.jsx("span",{children:r("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815")}),n.jsx(me,{htmlType:"button",size:40,type:"dot",icon:"x",variant:"transparent-gray",useBorder:!1,ariaLabel:r("common.close","\uB2EB\uAE30"),onClick:t})]}),children:n.jsxs(br,{className:"noise-settings",useBorder:!1,labelWidth:72,children:[n.jsx(os,{title:r("training.playVolumeTitle","\uC804\uCCB4 \uC18C\uB9AC"),valueLabel:`${p}%`,value:p,min:0,max:100,step:10,size:i,onChange:C}),n.jsx(os,{title:r("training.playSpeedTitle","\uC7AC\uC0DD \uC18D\uB3C4"),valueLabel:`${d.toFixed(2)}x`,value:d,min:J3,max:Q3,step:e7,size:i,onChange:y}),!a&&n.jsxs(n.Fragment,{children:[n.jsx(Sn,{variant:"custom",label:r("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),useFullWidth:!0,children:n.jsx(gn,{ariaLabel:r("training.noiseTypeTitle","\uC18C\uC74C \uC885\uB958"),size:40,shape:"rounded",options:h,value:c?u:yr,onChange:g})}),n.jsx(os,{title:r("training.noiseRatioTitle","\uC18C\uC74C \uBE44\uC728"),valueLabel:r("training.noiseRatioValue","{{ratio}}\uBC30",{ratio:l.toFixed(1)}),value:l,min:0,max:Oa,step:nc,size:i,disabled:!c,onChange:v})]}),a&&n.jsx("div",{className:"noise-settings__width-ghost","aria-hidden":"true",inert:!0,children:n.jsx(Sn,{variant:"custom",label:"\xA0",useFullWidth:!0,children:n.jsx(gn,{ariaLabel:"width-ghost",size:40,shape:"rounded",options:h,value:yr,onChange:()=>{}})})})]})})}function wc({useNoiseSettingBtn:e=!1,onSettings:t,onNext:a,onResult:r,stepIndex:i=0,stepCount:s=0,pageIndex:l=0,pageCount:u=1,resultOpen:c=!1,hideNoiseRows:d=!1}){const{t:m}=xe.useTranslation(),[p,C]=o.useState(!1),[y,v]=o.useState(null),[g,h]=o.useState(!1),x=o.useRef(null),f=o.useRef(null),w=mr(),b=u>0,B=b&&l<u-1,_=!b||l>=u-1,A=i===Math.max(0,s);o.useEffect(()=>{e||(C(!1),v(null))},[e]);const k=o.useCallback(()=>{C(!1),v(null)},[]),N=o.useCallback(()=>{if(p){C(!1),v(null);return}const G=x?.current?.getBoundingClientRect();G&&v(G),t?.(),C(!0)},[p,t]),S=o.useCallback(()=>{if(p){C(!1),v(null);return}const G=f?.current?.getBoundingClientRect();G&&v(G),t?.(),C(!0)},[p,t]),E=ln("(max-width: 767px)"),O=o.useRef(null),[F,Y]=o.useState(null),M=o.useCallback(()=>{h(G=>{const U=!G;return Y(U?O.current?.getBoundingClientRect()??null:null),U})},[]),L=o.useCallback(()=>{h(!1),Y(null)},[]);o.useEffect(()=>{c&&(h(!1),Y(null))},[c]);const P=n.jsxs(n.Fragment,{children:[n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:m("training.meter.sentence","\uC7AC\uC0DD")}),n.jsx(Do,{analyser:w?.mainAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:m("training.meter.sentence","\uC7AC\uC0DD")})]}),n.jsxs("div",{className:"pp-bottom__meter",children:[n.jsx("span",{className:"pp-bottom__meter-label caption-1",children:m("training.meter.noise","\uC18C\uC74C")}),n.jsx(Do,{analyser:w?.noiseAnalyser??null,orientation:"horizontal",length:112,label:"db",labelPos:"left",ariaLabel:m("training.meter.noise","\uC18C\uC74C")})]})]});return Cc(e&&p,()=>typeof document<"u"?document.querySelector(".noise-settings__header")?.closest(".tooltip-content")??null:null,()=>[x.current,f.current].map(G=>G?.querySelector("button")??null).find(G=>!!G&&G.getClientRects().length>0)??x.current?.querySelector("button")??null),n.jsxs("div",{className:"pp-bottom",children:[n.jsxs("div",{className:"pp-bottom__left",children:[e?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"pp-bottom__settings--desktop",children:n.jsx("div",{ref:x,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:56,type:"bar",icon:"settings",onClick:N,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:m("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),label:m("training.trainingSettingsTitle","\uD6C8\uB828 \uC124\uC815"),minWidth:140})})}),n.jsx("div",{className:"pp-bottom__settings--mobile",children:n.jsx("div",{ref:f,className:"pp-bottom__tooltip-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:56,type:"dot",shape:"pill",icon:"settings",onClick:S,className:p?"is-selected":void 0,"aria-expanded":p,"aria-haspopup":"dialog",ariaLabel:m("training.settings","\uC124\uC815")})})})]}):null,e&&n.jsx("div",{ref:O,className:"pp-bottom__meter-trigger","data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:40,type:"dot",shape:"pill",icon:"audio-lines",onClick:M,selected:g,"aria-expanded":E?g:void 0,ariaLabel:m("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC")})}),e&&g&&!E&&n.jsx("div",{className:"pp-bottom__meters",children:P})]}),e&&g&&E&&F&&n.jsx(cn,{anchorRect:F,onClose:L,ariaLabel:m("training.meter.toggle","\uC624\uB514\uC624 \uBBF8\uD130 \uD45C\uC2DC"),children:n.jsx("div",{className:"pp-bottom__meters pp-bottom__meters--floating",children:P})}),n.jsxs("div",{className:"pp-bottom__right",children:[_&&n.jsx(me,{htmlType:"button",size:56,type:"bar",icon:"check",onClick:typeof r=="function"?r:a,ariaLabel:m("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),label:m("training.viewResult","\uACB0\uACFC\uBCF4\uAE30"),variant:"main",disabled:!A}),B&&n.jsx(me,{htmlType:"button",size:56,type:"bar",rightIcon:"chevron-right",align:"right",onClick:a,ariaLabel:m("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),label:m("training.nextQuestion","\uB2E4\uC74C \uBB38\uC81C"),variant:"main",disabled:!A})]}),e&&p&&n.jsx(_c,{anchorRect:y,onClose:k,hideNoiseRows:d})]})}function Ac({title:e,subtitle:t,desc:a,depth:r,icon:i,wrapperStyle:s,iconTooltip:l,pageIndex:u,pageCount:c,progressMax:d,progressIndex:m,onBack:p,onClose:C}){const{t:y}=xe.useTranslation(),v=ln("(max-width: 767px)"),g=Number.isInteger(m)?m:u||0,h=Number.isInteger(d)?d:c||0,x=p||C,f=Array.isArray(r)?v?r[r.length-1]:r.join(" / "):r,w=typeof e=="string"?e.trim():e,b=typeof t=="string"?t.trim():t,B=!!(w||b),_=B?w||b:y("common.emptyTrainingName","\uD6C8\uB828 \uC774\uB984\uC774 \uBE44\uC5B4 \uC788\uC2B5\uB2C8\uB2E4."),A=f||(w?t:void 0),k=v&&typeof A=="string"&&(A.includes(" \xB7 ")||A.includes(" / "))?A.split(/\s[·/]\s/).pop():A,N=o.useMemo(()=>{const S=s&&typeof s=="object"?{...s}:{};return!("width"in S)&&!("height"in S)&&(S.width="40px",S.height="40px"),S},[s]);return n.jsxs("header",{className:"pp-title training-popup-title",children:[n.jsxs("div",{className:"pp-title__left",children:[x?n.jsx(me,{htmlType:"button",size:48,type:"dot",icon:"chevron-left",ariaLabel:y("common.back","\uB4A4\uB85C"),onClick:x,useBorder:!1,iconSize:"large",iconColor:"--color-black",variant:"transparent-gray"}):null,n.jsx("div",{children:i?n.jsx(Ul,{icon:i,label:e,tooltip:l,wrapperStyle:N}):null}),n.jsxs("div",{className:"pp-title__text",children:[k?n.jsx("span",{className:"pp-title__depth caption-1",children:k}):null,n.jsx("span",{className:`pp-title__title h2${B?"":" pp-title__title--empty"}`,children:_}),a?n.jsx("span",{className:"pp-title__description caption-1",children:a}):null]})]}),n.jsx(bu,{max:Math.max(0,h??0),index:Math.max(0,g??0)})]})}function t7(){typeof window<"u"&&window.dispatchEvent(new CustomEvent("speechear.popup.close"))}function n7(e){return!e&&e!==0?[]:Array.isArray(e)?e.flatMap(t=>typeof t=="string"?t.split("|").map(a=>a.trim()).filter(Boolean):t||t===0?[String(t)]:[]):typeof e=="string"?e.split("|").map(t=>t.trim()).filter(Boolean):[String(e)]}const Bc=(e,t)=>{if(!t)return t;const a=typeof $t?.t=="function"?$t.t(e,{defaultValue:t}):void 0;return typeof a=="string"&&a?a:t};function kc(e,t,a){const r=e,i=r?.title||r?.name||(Array.isArray(t)?t[t.length-1]:void 0)||a||"\uD6C8\uB828",s=ki().find(u=>u.key===(r?.category_0||r?.category_main_code)),l=s?.subs?.find(u=>u.key===(r?.category_1||r?.category_sub_code));return{title:i,label:r?.title||i,depth:t,icon:s?.icon,wrapperStyle:s?.color?{"--t-item-fg":s.color}:void 0,iconTooltip:[s?Bc(`topic.${s.key}`,s.label):void 0,l?Bc(`topic.sub.${l.key}`,l.label):void 0].filter(Boolean).join(" / ")||void 0}}function ss(e){return e&&typeof e=="object"&&typeof e.__ts=="number"?e.__ts:0}function Nc(e,t,a){if(!e||typeof e!="object"||Array.isArray(e))return e;const r=e,i=typeof a=="number"&&a>0?a:Date.now();return{...r,...r.shownAt===void 0&&t?{shownAt:t}:{},...r.answeredAt===void 0?{answeredAt:new Date(i).toISOString()}:{}}}function a7(e){const t=e;return Array.isArray(t?.items)?t.items:Array.isArray(e)?e:e?[e]:[]}function r7({idPrefix:e,trainingData:t,depth:a,fallbackTitle:r="\uD6C8\uB828",pages:i=[],emptyMessage:s,buildResults:l,metaPatch:u}){const c=kc(t,a,r),d=typeof u=="function"?u(c)||{}:u||{},m=t?.id||t?.title||i.length;return{id:`${e}:${m}`,meta:{...c,...d},pages:i,emptyMessage:s,buildResults:l}}function o7(e){if(typeof e=="string")return e;if(e&&typeof e=="object"){const t=e;return t.context||t.sentence||t.question||""||""}return""}function s7(e){if(e&&typeof e=="object"){const t=e;if(Array.isArray(t.selectedValues))return t.selectedValues;if(t.selectedValue!==void 0)return t.selectedValue;if(t.selectedIndex!==void 0)return t.selectedIndex;if(t.value!==void 0)return t.value}return e}function i7(e,t=[]){if(Array.isArray(e))return e.join(", ");if(typeof e=="number"&&Array.isArray(t))return String(t[e]??"");if(typeof e=="string")return e}function Ec(e,t){if(!(!e||typeof e!="object"))return e[`step-${t}`]}function l7(e,t,a,r){return Ec(e,t*a+r)}function u7({payload:e,selected:t,choices:a=[],correctAnswers:r=[]}){if(e&&typeof e=="object"){const i=e;if(Array.isArray(i.selectedValues))return r.every(s=>i.selectedValues.includes(s))&&i.selectedValues.every(s=>r.includes(s));if(typeof i.correct=="boolean")return i.correct}if(r.length){if(typeof t=="number"&&Array.isArray(a)&&a.length)return r.some(i=>String(i)===String(a[t]));if(typeof t<"u")return r.some(i=>String(i)===String(t))}}function c7(e){return e?Array.isArray(e.items)?e.items.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.context||a.sentence||"",contextCode:a.contextCode||a.context_code}}):Array.isArray(e.sentences)?e.sentences.map(t=>{const a=t;return typeof t=="string"?{sentence:t}:{sentence:a.sentence||a.context||"",contextCode:a.contextCode}}):Array.isArray(e.contexts)?e.contexts:e.contextCode?[{contextCode:e.contextCode}]:[]:[]}const Dc=o.createContext(null);function d7(){const e=o.useContext(Dc);if(!e)throw new Error("useTrainingPagePopupContext must be used inside TrainingPagePopup");return e}function p7({index:e,stepIndex:t,isLast:a=!1,lockedHint:r,title:i,choices:s=[],onDone:l,onChange:u}){const{t:c}=xe.useTranslation(),d=typeof e=="number"?e:-1,m=typeof t!="number"?"disabled":d<t?"done":d===t?"active":"disabled",[p,C]=o.useState(()=>s.map(()=>null)),y=JSON.stringify(s),v=s.length;o.useEffect(()=>{C(Array.from({length:v},()=>null))},[y]);const g=o.useRef(void 0);o.useEffect(()=>{const w=g.current;typeof w=="number"&&typeof t=="number"&&typeof e=="number"&&w>=e&&t<e&&C(Array.from({length:v},()=>null)),g.current=t},[t,e,v]);const h=o.useMemo(()=>p.filter(w=>w!==null).length+1,[p]),x=o.useCallback(w=>{if(!Jn(m))return;const b=p;let B;if(b[w]!=null){const A=b[w];B=b.map(k=>k!==null&&k>=A?null:k)}else B=[...b],B[w]=h;C(B);const _={selectedOrder:B,words:s,__ts:Date.now()};try{typeof u=="function"&&u(_)}catch{}if(b[w]==null&&B.length>0&&B.every(A=>A!==null))try{typeof l=="function"&&l(_)}catch{}},[m,p,h,u,l,s]),f=i??c("training.selectInOrder","\uB4E4\uC740 \uC21C\uC11C\uB300\uB85C \uCE74\uB4DC\uB97C \uC120\uD0DD\uD558\uC138\uC694.");return n.jsx(Xn,{index:e,stepIndex:t,isLast:a,lockedHint:r,title:f,onDone:l,children:n.jsx("div",{className:"training-step__cards",children:s.map((w,b)=>n.jsx($o,{item:{word:w},disabled:m==="disabled",selectable:!0,selected:p[b]!==null,orderRank:p[b],onSelect:()=>x(b),flipDelay:b*120,hideLabel:!1,hideAudio:!0},`${w}-${b}`))})})}function vr(e){return null}vr.__isTrainingPage=!0;function fa(e,t){const a=d7();return{ctx:a,index:e,stepIndex:a.currentStepIndex,isLast:typeof e=="number"&&typeof t=="number"?e===t-1:!1,onDone:r=>a.handleStepDone(r,e),onChange:r=>a.handleStepChange(r,e)}}function Sc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l}=fa(e,t);return n.jsx(as,{...a,index:r,stepIndex:i,isLast:s,onDone:l})}function jc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(ts,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Tc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(ns,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Mc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(rs,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function Lc({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(bc,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function m7({_stepIndex:e,_totalSteps:t,...a}){const{index:r,stepIndex:i,isLast:s,onDone:l,onChange:u}=fa(e,t);return n.jsx(p7,{...a,index:r,stepIndex:i,isLast:s,onDone:l,onChange:u})}function is(...e){for(const t of e)if(typeof t=="string"){const a=t.trim();if(a.length)return a}else{if(typeof t=="number"||typeof t=="boolean")return String(t);if(Array.isArray(t)&&t.length)return t.join(", ");if(t&&typeof t=="object"){const a=t,r=[a.text,a.label,a.value];for(const i of r){if(typeof i=="string"&&i.trim().length)return i.trim();if(typeof i=="number"||typeof i=="boolean")return String(i)}}}return null}function h7(e){return is(e?.question,e?.q,e?.sentence,e?.text,e?.prompt,e?.wording)}function $c(e){if(!e)return;if(typeof e.decision=="boolean")return e.decision;if(typeof e.correct=="boolean")return e.correct;if(typeof e.heard=="boolean")return e.heard;if(typeof e.judgement=="boolean")return e.judgement;const t=is(e?.status,e?.result,e?.judge,e?.note);if(t){const a=t.toLowerCase();if(["ok","true","\uB9DE\uC74C","\uC815\uB2F5"].some(r=>a.includes(r)))return!0;if(["ng","false","\uD2C0\uB9BC","\uC624\uB2F5"].some(r=>a.includes(r)))return!1}}function Rc(e){const{score:t,contextsLength:a,results:r=[],subtitle:i,onReplay:s,onClose:l,inline:u=!1,pending:c=!1}=e||{},{t:d}=xe.useTranslation(),m=o.useId(),p=o.useCallback(()=>!c,[c]);o.useEffect(()=>{const f=a??0;if(t!=null&&f>0&&t/f>.5){const w=window.setTimeout(()=>{window.dispatchEvent(new CustomEvent("party:trigger",{detail:{count:140,strength:1.6,duration:2200}}))},0);return()=>window.clearTimeout(w)}},[t,a]);const C=o.useCallback(f=>{const w=$c(f),b=is(f?.wording,f?.label);return w===!0?{variant:"main",label:b??d("training.result.heardWell","\uC798 \uB4E4\uC5C8\uC5B4\uC694")}:w===!1?{variant:"danger",label:b??d("training.result.notHeard","\uBABB \uB4E4\uC5C8\uC5B4\uC694")}:{variant:"disabled",label:b??d("training.result.notJudged","\uBBF8\uD310\uC815")}},[d]),y=a??0,v=t??0,g=o.useMemo(()=>Array.isArray(r)?r:[],[r]),h=o.useMemo(()=>g.map(f=>{const w=f??{},b=h7(w)||d("training.result.noContent","(\uB0B4\uC6A9\uC5C6\uC74C)"),{variant:B,label:_}=C(w),A=Array.isArray(w.corrects)?w.corrects:[],k=A.length?A.join(", "):w.answer!=null&&w.answer!==""?String(w.answer):null,N=typeof w.selectedText=="string"?w.selectedText:null,S=$c(w)===!0;return{problem:b,variant:B,label:_,answer:k,selectedText:N,isCorrect:S}}),[g,C,d]),x=o.useMemo(()=>h.some(f=>f.answer!==null||f.selectedText!==null),[h]);return n.jsx(Fn,{onClose:l,closeOnBackdrop:!1,inline:u,ariaLabel:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4."),className:"popup--training-result",beforeClose:p,footerClassName:"trp-result__foot",footer:({animateThen:f,closeWithAnimation:w})=>n.jsxs(n.Fragment,{children:[c&&n.jsx("p",{id:m,className:"trp-actions__reason caption-1",role:"status",children:d("training.result.pendingDone","\uACB0\uACFC\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\uC774\uB77C \uC544\uC9C1 \uC644\uB8CC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.")}),n.jsxs("div",{className:"trp-actions",children:[n.jsx(me,{htmlType:"button",size:56,type:"bar",label:d("training.result.replay","\uB2E4\uC2DC\uD558\uAE30"),onClick:()=>f(s)}),n.jsx(me,{htmlType:"button",size:56,type:"bar",label:d("training.result.done","\uC644\uB8CC"),variant:"main",onClick:w,disabled:c,onDisabledClick:c?()=>{}:void 0,"aria-describedby":c?m:void 0})]})]}),children:()=>n.jsxs("div",{className:"trp-result is-on",children:[n.jsxs("header",{className:"trp-result__head",children:[n.jsx("p",{className:"trp-result__eyebrow caption-1",children:d("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")}),n.jsx("h1",{className:"trp-result__title h2",children:d("training.result.title","\uD6C8\uB828\uC744 \uBAA8\uB450 \uB9C8\uCCE4\uC2B5\uB2C8\uB2E4.")}),i&&n.jsx("p",{className:"trp-result__subtitle body-3",children:i}),n.jsx("div",{className:"trp-score",children:n.jsxs("div",{className:"trp-score__figure","aria-label":d("training.result.scoreAria",{correct:v,total:y}),children:[n.jsx("span",{className:"trp-score__big",children:v}),n.jsx("span",{className:"trp-score__sep",children:"/"}),n.jsx("span",{className:"trp-score__total",children:y})]})})]}),h.length>0&&n.jsx("section",{className:"trp-result__body",children:n.jsxs("div",{className:`result-table${x?" result-table--answer":""}`,role:"table","aria-label":d("training.result.tableAriaLabel","\uBB38\uD56D\uBCC4 \uD310\uC815"),children:[n.jsxs("div",{className:"result-table__head caption-1",role:"row",children:[n.jsx("span",{role:"columnheader",children:d("common.col.problem","\uBB38\uC81C")}),x&&n.jsx("span",{role:"columnheader",children:d("training.result.colAnswerSelected","\uC815\uB2F5 \xB7 \uC120\uD0DD")}),n.jsx("span",{className:"col-right",role:"columnheader",children:d("training.result.colJudge","\uD310\uC815")})]}),h.map((f,w)=>n.jsxs("div",{className:"result-table__row",role:"row",children:[n.jsxs("div",{className:"trp-row__problem",children:[n.jsx("span",{className:"trp-row__no caption-1",children:String(w+1).padStart(2,"0")}),n.jsx("div",{className:"trp-row__q body-2",children:f.problem})]}),x&&n.jsxs("div",{className:"trp-row__answers",children:[f.answer!==null&&n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:"trp-row__answer-label answer-correct caption-1",children:d("training.result.colAnswer","\uC815\uB2F5")}),n.jsx("span",{className:"trp-row__answer-value body-2",children:f.answer})]}),n.jsxs("div",{className:"trp-row__answer-line",children:[n.jsx("span",{className:`trp-row__answer-label answer-selected caption-1 ${f.isCorrect?"is-correct":"is-wrong"}`,children:d("training.result.colSelected","\uC120\uD0DD")}),n.jsx("span",{className:`trp-row__answer-value body-2 ${f.isCorrect?"is-correct":"is-wrong"}`,children:f.selectedText??"\u2014"})]})]}),n.jsx("div",{className:"trp-row__judge",children:n.jsx(kt,{variant:f.variant,label:f.label,fill:"soft",minWidth:80})})]},w))]})})]})})}const ls=new Set;function C7(e){o.useEffect(()=>{if(!e||ls.has(e))return;ls.add(e);const t=()=>typeof document>"u"||document.visibilityState!=="hidden";let a=null,r=null,i=0,s=0;const l=()=>{const m=Date.now();a==null&&(a=m),r==null&&(r=m)},u=()=>{r!=null&&(i+=Date.now()-r,r=null)};t()&&l();const c=()=>{if(u(),a==null||i-s<1e3||s===0&&i<5e3)return;const m=a+s;s=i,ef({trainingType:e,startedAt:new Date(m).toISOString(),endedAt:new Date(a+i).toISOString()})},d=()=>{t()?l():c()};return typeof document<"u"&&document.addEventListener("visibilitychange",d),typeof window<"u"&&window.addEventListener("pagehide",c),()=>{typeof document<"u"&&document.removeEventListener("visibilitychange",d),typeof window<"u"&&window.removeEventListener("pagehide",c),c(),ls.delete(e)}},[e])}function xr(e,t){return e&&e.id||`page-${t??0}`}function _r(e,t){return e&&e.key||`step-${t??0}`}function wr(){return{pageIndex:0,stepIndex:0,answersByPage:{}}}function f7(e,t){return typeof e?.props=="function"?e.props(t)||{}:e?.props||{}}const g7=300,b7=()=>{try{return typeof window<"u"&&!!window.matchMedia?.("(prefers-reduced-motion: reduce)").matches}catch{return!1}},jn=Object.freeze({}),Pc=new Set(["LISTEN_IN_NOISE","SHORT_STORY","LONG_STORY","ORDERING_SENTENCE"]);function us(e){const t=e,a=t?.results||t?.answers||[],r=Array.isArray(a)&&a.length>0?a.length:null,i=Array.isArray(a)?a.filter(s=>s?.correct===!0||s?.isCorrect===!0||s?.score===1||s?.heard===!0||s?.judgement===!0).length:null;return{results:a,correct:r!=null?i:null,total:r}}const y7=e=>n.jsx(Rc,{score:e.score,contextsLength:e.contextsLength,results:e.results,onReplay:e.onReplay,onClose:e.onClose,pending:e.pending});function v7(e){const{scenario:t,title:a,subTitle:r,depth:i,icon:s,wrapperStyle:l,iconTooltip:u,pageIndex:c,pageCount:d,stepIndex:m,stepCount:p,onBack:C,onComplete:y,onRoundFinished:v,onNext:g,onSettings:h,useNoiseSetting:x=!0,children:f,ariaLabel:w,label:b,buildResults:B,onResult:_,typeKey:A,entryPoint:k,dailyTotal:N,itemRef:S,renderResultPopup:E,noiseOverride:O,hideNoiseRows:F=!1}=e;C7(A&&!Pc.has(A)?A:"");const Y=o.useRef(0);o.useEffect(()=>{Y.current=Date.now()},[]);const{t:M}=xe.useTranslation(),L=_,P=!!t,G=t?.id||null,U=t?.meta||{},z=Array.isArray(t?.pages)?t.pages:[],q=Array.isArray(f)||o.isValidElement(f)&&typeof f!="function"?o.Children.toArray(f).filter(o.isValidElement):[],$=q.length>0,V=ie=>ie===vr||ie?.__isTrainingPage===!0,H=$&&q.some(ie=>V(ie.type)),T=H?q.filter(ie=>V(ie.type)).map((ie,ve)=>{const Me=ie.props||{};return{id:`children-page-${ve}`,steps:o.Children.toArray(Me.children).filter(o.isValidElement),pageTop:Me.pageTop||Me.top||null,pageBottom:Me.pageBottom||Me.bottom||null}}):[{id:"children-page-0",steps:q}],D=$&&!P&&typeof f!="function",R=D?Math.max(1,T.length):0;o.useEffect(()=>{if(!(typeof document>"u"||!document.body)&&!document.body.classList.contains("ihabdevteam-core-scope"))return document.body.classList.add("ihabdevteam-core-scope"),()=>{document.body.classList.remove("ihabdevteam-core-scope")}},[]),o.useEffect(()=>{if(typeof document>"u"||!document.body)return;const ie=document.body;return ie.dataset.ihabTrainingPopupCount=String(Number(ie.dataset.ihabTrainingPopupCount||"0")+1),ie.classList.add("ihab-training-popup-open"),()=>{const ve=Number(ie.dataset.ihabTrainingPopupCount||"1")-1;ve>0?ie.dataset.ihabTrainingPopupCount=String(ve):(delete ie.dataset.ihabTrainingPopupCount,ie.classList.remove("ihab-training-popup-open"))}},[]),o.useEffect(()=>{if(!(typeof document>"u"||!document.body))return ny()},[]);const[I,W]=o.useState({...Va,enabled:!1}),ee=o.useRef(I);o.useEffect(()=>{ee.current=I},[I]);const oe=o.useRef(O),ce=o.useRef(!1),J=o.useRef(null);o.useEffect(()=>{let ie=!1;const ve=Me=>{if(ie)return;ce.current=!0;const Je=Me?za({...Va,enabled:!1},Me):{...Va},Oe=J.current;J.current=null;const Ye=Oe?za(Je,Oe):Je;ee.current=Ye,W(Ye),Oe&&!oe.current&&vi(Ye),Za(Ye);const X=oe.current;if(X){const de=typeof X=="function"?X(Ye):X,ae=za(Ye,de);ee.current=ae,W(ae),Za(ae)}};return rf().then(ve),()=>{ie=!0}},[]);const[re,Ne]=o.useState(null),[K,Q]=o.useState(null),pe=o.useCallback((ie,ve)=>{ie==="main"?Ne(ve):Q(ve)},[]),De=o.useRef(null),ye=o.useRef(null),ne=o.useCallback(()=>{ye.current!==null&&(clearTimeout(ye.current),ye.current=null);const ie=De.current;De.current=null,ie&&vi(ie)},[]);o.useEffect(()=>{if(typeof window>"u")return;const ie=()=>{document.visibilityState==="hidden"&&ne()};return window.addEventListener("pagehide",ne),document.addEventListener("visibilitychange",ie),()=>{window.removeEventListener("pagehide",ne),document.removeEventListener("visibilitychange",ie),ne()}},[ne]);const le=o.useCallback(ie=>{const ve=za(ee.current,ie);if(ee.current=ve,W(ve),!ce.current){J.current={...J.current??{},...ie},Za(ve);return}oe.current||(De.current=ve,ye.current!==null&&clearTimeout(ye.current),ye.current=setTimeout(ne,g7)),Za(ve)},[ne]),Ce=I.mainSpeed,ge=I.mainVolume,fe=o.useCallback(ie=>le({mainSpeed:ie}),[le]),$e=o.useCallback(ie=>le({mainVolume:ie}),[le]),Ve=o.useMemo(()=>({settings:I,setSettings:le,registerAnalyser:pe,mainAnalyser:re,noiseAnalyser:K,playbackRate:Ce,setPlaybackRate:fe,mainVolume:ge,setMainVolume:$e}),[I,le,pe,re,K,Ce,fe,ge,$e]),je=o.useRef(null),[Fe,qe]=o.useState(0),mt=o.useRef([]),[ct,rt]=o.useState("center"),[Ct,Be]=o.useState(!1),We=o.useRef(!1),_e=o.useRef(null),Ue=o.useCallback(ie=>{We.current||(We.current=!0,Be(!0),_e.current=setTimeout(()=>{try{ie()}catch{We.current=!1,Be(!1)}},b7()?0:K3))},[]);o.useEffect(()=>()=>{_e.current&&clearTimeout(_e.current)},[]);const Ae=o.useRef(C);o.useEffect(()=>{Ae.current=C}),o.useEffect(()=>{const ie=je.current,ve=document.activeElement;if(to(ie,ve),ie){const Me=Array.from(ie.querySelectorAll(fn)).filter(Je=>!Je.closest('[aria-hidden="true"]'))[0];if(Me)try{Me.focus()}catch{}}return()=>{const Me=document.activeElement;if(!Me||Me===document.body||ie&&ie.contains(Me))try{no(ve)?.focus?.()}catch{}}},[]),o.useEffect(()=>Un(()=>Ue(()=>{const ie=Ae.current;typeof ie=="function"&&ie()})),[Ue]),Qr(je,!0);const[Te,Se]=o.useState(!1),Xe=o.useRef(!1),[Qe,dt]=o.useState(null),ht=o.useRef(0),wt=o.useRef(0),ft=()=>{ht.current+=1,wt.current+=1,dt(null)},[Nt,gt]=o.useState(""),[it,Ke]=o.useState(()=>wr()),se=o.useRef(typeof c=="number"?c:null);o.useEffect(()=>{!P&&!D||(Ke(wr()),ft())},[P,G,D]),o.useEffect(()=>{D&&Ke(ie=>{const ve=Math.max(0,Math.min(ie.pageIndex,Math.max(0,R-1)));return ve!==ie.pageIndex?{...ie,pageIndex:ve,stepIndex:0}:ie})},[D,R]);const ke=D?Math.max(0,Math.min(it.pageIndex,R-1)):0,ze=D?T[ke]:null,nt=D&&ze&&Array.isArray(ze.steps)?ze.steps:[],Ie=P?it.pageIndex:D?ke:typeof c=="number"?c:0,Ge=P?z[Math.max(0,Math.min(it.pageIndex,Math.max(0,z.length-1)))]:null,bt=P&&Ge&&Array.isArray(Ge.steps)?Ge.steps:[],Re=P?bt.length:D?nt.length:typeof p=="number"?p:0,tt=P||D?Math.max(0,Math.min(it.stepIndex,Math.max(0,Re))):typeof m=="number"?m:0,xt=P?z.length:D?R:typeof d=="number"?d:0;o.useEffect(()=>{if(!P&&!D)return;const ie=P?xr(Ge,Ie):ze?.id||`children-page-${Ie??0}`,ve=new Date().toISOString();for(let Me=0;Me<=tt;Me+=1){const Je=P?_r(bt[Me],Me):`step-${Me}`,Oe=lt(ie,Je);ot.current.has(Oe)||ot.current.set(Oe,ve)}},[P,D,Ie,tt,ze?.id]),o.useLayoutEffect(()=>{const ie=se.current;if(typeof Ie=="number"&&ie!==null&&Ie!==ie&&Ie>ie)try{gt(M("training.problemNotice",{n:Ie+1}))}catch{}se.current=typeof Ie=="number"?Ie:se.current},[Ie,c,M]),o.useLayoutEffect(()=>{const ie=je.current;if(!ie)return;const ve=()=>ie.querySelector(".page-popup__scroll");let Me=null,Je=null,Oe=null;const Ye=Le=>{const He=ve();if(!He)return;const ut=He.scrollHeight<=He.clientHeight;if(rt(ut?"center":"top"),Le&&!Xe.current){Xe.current=!0;try{Se(!0)}catch{}try{ae.disconnect()}catch{}}},X=()=>{Me!==null&&cancelAnimationFrame(Me),Me=requestAnimationFrame(()=>{Je!==null&&clearTimeout(Je),Je=setTimeout(()=>Ye(!0),60)})},de=()=>{Oe!==null&&cancelAnimationFrame(Oe),Oe=requestAnimationFrame(()=>Ye(!1))};X(),window.addEventListener("resize",de);const ae=new MutationObserver(X);ae.observe(ie,{childList:!0,subtree:!0,attributes:!0});const be=setTimeout(()=>{Xe.current||Ye(!0)},400);return()=>{window.removeEventListener("resize",de),Me!==null&&cancelAnimationFrame(Me),Je!==null&&clearTimeout(Je),Oe!==null&&cancelAnimationFrame(Oe),clearTimeout(be);try{ae.disconnect()}catch{}}},[je]);const Mt=o.useCallback(ie=>{je.current&&(je.current._childOnNext=ie)},[]),et=o.useCallback(ie=>{je.current&&(je.current._childOnResult=ie)},[]),ot=o.useRef(new Map),lt=(ie,ve)=>`${ie}\0${ve}`,st=o.useCallback((ie,ve,Me)=>{Ke(Je=>{const Oe=Je.answersByPage[ie]||{},Ye=Oe[ve],X=ss(Me),de=ss(Ye);if(Ye&&de>X)return Je;const ae=Nc(Me,ot.current.get(lt(ie,ve)),X);return{...Je,answersByPage:{...Je.answersByPage,[ie]:{...Oe,[ve]:ae}}}})},[Ke]),jt=o.useCallback((ie,ve,Me)=>{const Je=xr(Ge,Ie),Oe=_r(ie,ve);st(Je,Oe,Me)},[Ge,Ie,st]),Ht=o.useCallback((ie,ve,Me)=>{const Je=xr(Ge,Ie),Oe=_r(ie,ve);st(Je,Oe,Me),!Me?.allowChange&&ie?.autoAdvance!==!1&&Ke(Ye=>({...Ye,stepIndex:Math.max(Ye.stepIndex,ve+1)}))},[Ge,Ie,st,Ke]),mn=o.useCallback((ie,ve)=>{const Me=ze?.id||`children-page-${Ie??0}`,Je=typeof ve=="number"?ve:tt??0,Oe=`step-${Je}`;st(Me,Oe,ie),ie?.allowChange||Ke(Ye=>({...Ye,stepIndex:Math.max(Ye.stepIndex,Je+1)}))},[ze,Ie,tt,st,Ke]),hn=o.useCallback((ie,ve)=>{const Me=ze?.id||`children-page-${Ie??0}`,Je=`step-${typeof ve=="number"?ve:tt??0}`;st(Me,Je,ie)},[ze,Ie,tt,st]),Tn=D?{currentPageIndex:Ie??0,currentStepIndex:tt??0,totalStepsInPage:nt.length,handleStepDone:mn,handleStepChange:hn}:null,On=async()=>{const ie=typeof t?.buildResults=="function"?await Promise.resolve(t.buildResults({scenario:t,pages:z,flowState:it,answersByPage:it.answersByPage})):null;return typeof L=="function"&&await Promise.resolve(L(ie))||ie},Hn=async()=>{const ie=ze?.id||`children-page-${it.pageIndex}`,ve=it.answersByPage[ie]||{},Me=H?(()=>{const Ye={};let X=0;return T.forEach(de=>{const ae=it.answersByPage[de.id]||{},be=Array.isArray(de.steps)?de.steps.length:0;for(let Le=0;Le<be;Le+=1){const He=ae[`step-${Le}`];typeof He<"u"&&(Ye[`step-${X+Le}`]=He)}X+=be}),Ye})():ve;if(typeof B=="function"){const Ye=await Promise.resolve(B(Me,{pageAnswers:ve,answersByPage:it.answersByPage,pages:T,currentPageId:ie}));return typeof L=="function"&&await Promise.resolve(L(Ye))||Ye}const Je=Object.entries(ve).map(([Ye,X],de)=>({index:de,key:Ye,payload:X})),Oe={results:Je,answers:Je,score:0};return typeof L=="function"&&await Promise.resolve(L(Oe))||Oe},Pt=()=>{const ie=++ht.current,ve=()=>ie!==ht.current;try{if(typeof document<"u"&&document.body){try{document.dispatchEvent(new CustomEvent("speechear-close-tooltips"))}catch{}document.dispatchEvent(new PointerEvent("pointerdown",{bubbles:!0,cancelable:!0})),document.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0}))}}catch{}if(P){const Oe=On();dt(jn);const Ye=Oe;Promise.resolve(Ye).then(X=>{ve()||dt(X||{isEmpty:!0})}).catch(X=>{!ve()&&dt({isEmpty:!0})});return}if(D){const Oe=Hn();dt(jn);const Ye=Oe;Promise.resolve(Ye).then(X=>{ve()||dt(X||{isEmpty:!0})}).catch(X=>{!ve()&&dt({isEmpty:!0})});return}const Me=je.current&&je.current._childOnResult,Je=Oe=>{try{return Oe?Oe():void 0}catch{return}};if(typeof Me=="function"){const Oe=Je(Me);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}Oe&&typeof Oe.then!="function"?dt(Oe):dt(Oe&&typeof Oe.then=="function"?jn:{});const Ye=()=>{ve()||dt(X=>X===jn?{}:X)};Promise.resolve(Oe).then(X=>{X&&!ve()?dt(X):Ye()}).catch(X=>{Ye()});return}if(typeof L=="function"){const Oe=Je(L);try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}Oe&&typeof Oe.then!="function"?dt(Oe):dt(Oe&&typeof Oe.then=="function"?jn:{});const Ye=()=>{ve()||dt(X=>X===jn?{}:X)};Promise.resolve(Oe).then(X=>{try{typeof document>"u"?require("url").pathToFileURL(__filename).href:wn&&wn.tagName.toUpperCase()==="SCRIPT"&&wn.src||new URL("components.cjs.js",document.baseURI).href}catch{}X&&!ve()?dt(X):Ye()}).catch(X=>{console.error("viewResults external handler failed",X),Ye()});return}},vn=()=>{if(P){if(typeof Ie=="number"&&typeof xt=="number"&&Ie<xt-1){Ke(ve=>({...ve,pageIndex:ve.pageIndex+1,stepIndex:0}));return}return Pt()}if(D){const ve=nt.length;if(typeof tt=="number"&&tt<ve-1){Ke(Me=>({...Me,stepIndex:Me.stepIndex+1}));return}if(typeof Ie=="number"&&typeof xt=="number"&&Ie<xt-1){Ke(Me=>({...Me,pageIndex:Me.pageIndex+1,stepIndex:0}));return}return Pt()}if(typeof g=="function"){try{g()}catch{}return}const ie=je.current&&je.current._childOnNext;if(typeof ie=="function"){try{ie()}catch{}return}},Ft=P?U.title||U.label||w||M("common.popup","\uD31D\uC5C5"):a||b||(Array.isArray(i)?i[i.length-1]:void 0)||w||M("common.popup","\uD31D\uC5C5"),zt=w||Ft,Mn=P?U.title??U.label??Ft:a??b??Ft,on=(ie,ve)=>{const Me=xr(Ge,Ie),Je=_r(ie,ve),Oe=it.answersByPage[Me]?.[Je],Ye=f7(ie,{page:Ge,pageIndex:Ie,step:ie,stepIndex:ve,storedPayload:Oe,answersByPage:it.answersByPage,flowState:it}),X={key:Je,index:ve,stepIndex:tt,isLast:ve===bt.length-1};switch(ie?.type){case"listen":return n.jsx(as,{...X,...Ye,onDone:de=>Ht(ie,ve,de)});case"confirm":return n.jsx(ts,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});case"confirmWithText":return n.jsx(ns,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});case"orderList":return n.jsx(rs,{...X,...Ye,onDone:de=>Ht(ie,ve,de),onChange:de=>jt(ie,ve,de)});default:return null}},xn=o.useRef(void 0);o.useEffect(()=>{const ie=xn.current;if(xn.current=Ie,ie===void 0||ie===Ie||!lr())return;const ve=je.current;if(!ve)return;const Me=document.activeElement;if(!(!Me||Me===document.body||!ve.contains(Me)||Me.disabled===!0))return;const Je=ve.querySelector(`.training-steps ${fn.split(", ").join(", .training-steps ")}`)??Array.from(ve.querySelectorAll(fn)).find(Oe=>!Oe.closest('[aria-hidden="true"]'));try{Je?.focus()}catch{}},[Ie]);const zn=P?z.length>0?n.jsx("div",{className:"training-steps",children:bt.map((ie,ve)=>on(ie,ve))},`replay-${Fe}`):n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"pp-empty",children:t?.emptyMessage||M("training.noQuestions","\uBB38\uC81C\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")})}):null,_n=D?n.jsxs(Dc.Provider,{value:Tn,children:[ze?.pageTop?n.jsx("div",{className:"training-page-top",children:ze.pageTop}):null,n.jsx("div",{className:"training-steps",children:nt.map((ie,ve)=>{const Me=ie;return o.cloneElement(Me,{...Me.props,_stepIndex:ve,_totalSteps:nt.length,_stepKey:`step-${ve}`,_pageIndex:Ie})})},`replay-${Fe}`),ze?.pageBottom?n.jsx("div",{className:"training-page-bottom",children:ze.pageBottom}):null]}):null,Vt=o.useRef(-1),Lt=o.useCallback(()=>{if(!A)return;const ie=Qe,{results:ve,correct:Me,total:Je}=us(Qe),Oe={correct:Me,total:Je,attempt:mt.current.length+1,previousAttempts:[...mt.current]};if(Vt.current===wt.current)return Oe;Vt.current=wt.current,tf({items:af(ve),category:Pc.has(A)?"sentence":"word",trainingType:A,entryPoint:k??"sentence",itemRef:S??null,correct:Me,total:Je,score:typeof ie?.score=="number"?ie.score:null,durationSeconds:Math.max(0,Math.round((Date.now()-Y.current)/1e3)),dailyTotal:N??null});try{v?.(Oe)}catch{}return Oe},[A,k,N,S,Qe,v]);o.useEffect(()=>{!Qe||Qe===jn||Qe?.isEmpty||(us(Qe).total??0)>0&&Lt()},[Qe,Lt]);const Wt=o.useCallback(()=>{const ie=Lt();ft(),Ue(()=>{typeof y=="function"&&y(ie),typeof C=="function"&&C()})},[y,C,Lt,dt,Ue]),Cn=o.useCallback(()=>gt(""),[gt]),It=o.useCallback(()=>{Ue(()=>{typeof C=="function"&&C()})},[C,Ue]),sn=n.jsxs("div",{className:`page-popup${Ct?" page-popup--closing":""}`,role:"dialog","aria-modal":"true","aria-label":zt,children:[n.jsxs("div",{ref:je,className:`page-popup__panel ${Te?"":"page-popup__panel--measuring"} ${ct==="center"?"page-popup__panel--center":ct==="top"?"page-popup__panel--top":""}`,children:[n.jsx(Ac,{title:Mn,subtitle:P?U.subtitle||U.label:Array.isArray(i)?i.join(" / "):void 0,desc:P?void 0:r,depth:P?U.depth:i,icon:P?U.icon:s,wrapperStyle:P?U.wrapperStyle:l,iconTooltip:P?U.iconTooltip:u,progressMax:xt,progressIndex:Ie,pageIndex:Ie,pageCount:xt,onBack:It,onClose:It}),n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content ${ct==="center"?"page-popup__content--center":"page-popup__content--top"}${e.contentFull?" page-popup__content--full":""}`,children:D?_n:P?zn:typeof f=="function"?f({registerOnNext:Mt,registerOnResult:et,panelRef:je,setResultOverlay:dt}):f})}),n.jsx(wc,{onSettings:h,onNext:vn,onResult:Pt,useNoiseSettingBtn:!!(P?U.useNoiseSetting??!0:x),stepIndex:tt,stepCount:Re,pageIndex:Ie,pageCount:xt,resultOpen:!!(Qe&&!Qe.isEmpty),hideNoiseRows:F})]}),Qe&&!Qe.isEmpty&&(E??y7)({score:Qe.score,results:Qe.results||Qe.answers||[],contextsLength:Qe.results?Qe.results.length:Qe.answers?Qe.answers.length:0,onReplay:()=>{if(Y.current=Date.now(),Qe!==jn){const{correct:ie,total:ve}=us(Qe);mt.current.push({correct:ie,total:ve})}if(ft(),qe(ie=>ie+1),P){if(Ke(wr()),typeof t?.onReplay=="function")try{t.onReplay()}catch{}return}if(D){Ke(wr());return}try{const ie=je.current&&je.current._childOnResult;typeof ie=="function"&&ie({replay:!0})}catch{}},onClose:Wt,pending:Qe===jn}),Qe?.isEmpty&&n.jsx("div",{className:"page-popup page-popup--result-empty",role:"dialog","aria-modal":"true","aria-label":M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC"),children:n.jsxs("div",{className:"page-popup__panel page-popup__panel--center",children:[n.jsx("div",{className:"page-popup__scroll",children:n.jsx("div",{className:`page-popup__content page-popup__content--center${e.contentFull?" page-popup__content--full":""}`,children:n.jsx("div",{className:"page-popup__empty",children:M("training.result.eyebrow","\uD6C8\uB828 \uC644\uB8CC")})})}),n.jsx("div",{className:"page-popup__bottom",children:n.jsx(me,{htmlType:"button",variant:"main",size:48,onClick:Wt,label:M("training.result.done","\uC644\uB8CC")})})]})}),n.jsx(ua,{message:Nt,position:"top",onClose:Cn})]}),Dt=n.jsx(Yo.Provider,{value:Ve,children:sn});return typeof document<"u"&&document.body?en.createPortal(Dt,document.body):Dt}const In=v7;In.Page=vr,In.ListenStep=Sc,In.ConfirmStep=jc,In.ConfirmWithTextStep=Tc,In.OrderListStep=Mc,In.CardStep=Lc,In.CardOrderStep=m7;function x7({label:e,homonum:t}){const a=aa()?.(e,t)??"",{imgRef:r,loading:i,hasImage:s,onLoad:l,onError:u}=Lo(a);return s?n.jsxs("div",{className:"tooltip-word-image__cell",children:[i&&n.jsx("div",{className:"tooltip-word-image__spinner"}),n.jsx("img",{ref:r,src:a,alt:e,draggable:!1,style:{opacity:i?0:1},onLoad:l,onError:u})]}):n.jsx("div",{className:"tooltip-word-image__cell tooltip-word-image__cell--text h3",children:n.jsx("span",{children:e})})}function Fc({words:e,anchorRect:t}){const a=o.useRef(null),[r,i]=o.useState(null);return o.useLayoutEffect(()=>{if(!t||!a.current)return;const{offsetWidth:s,offsetHeight:l}=a.current,u=window.innerWidth;let c=t.left+t.width/2-s/2,d=t.top-l-8;d<8&&(d=t.bottom+8),c=Math.max(8,Math.min(c,u-s-8)),i({left:c,top:d})},[t]),!t||e.length===0?null:en.createPortal(n.jsx("div",{ref:a,className:"tooltip-word-image",style:{visibility:r?"visible":"hidden",left:r?.left??0,top:r?.top??-9999},children:n.jsx("div",{className:"tooltip-word-image__cells",children:e.map(s=>n.jsx(x7,{label:s.label,homonum:s.homonum},`${s.label}_${s.homonum??1}`))})}),document.body)}function _7({titleIcon:e,resultCount:t,resultUnit:a,searchQuery:r,items:i,groups:s,selected:l=[],onSelect:u,maxSelect:c,onClearSelection:d,onPrint:m,onPrintEmpty:p,className:C,emptyHint:y,sectionType:v="page",disc:g}){const{t:h,i18n:x}=xe.useTranslation(),f=x.language?.startsWith("ko")??!1,{anchorRect:w,openAt:b,close:B}=Ea(),[_,A]=o.useState(null),k=o.useCallback(()=>{B(),A(null)},[B]);Rb(k,!!_);const N=(r??"").trim(),S=/^[^,[\]\s]+$/.test(N)?N:"",E=S.length>0,O=r===void 0&&t===void 0,F=E?"match":O?"original":"ganada",[Y,M]=o.useState(()=>F),[L,P]=o.useState("50"),[G,U]=o.useState(1),[z,q]=o.useState(E);z!==E&&(q(E),M(F));const $=Y==="match"&&!E||Y==="original"&&!O?F:Y,V=o.useMemo(()=>[...E?[{value:"match",label:h("wordSearch.sort.match",{defaultValue:"\uC2DC\uC791 \uC6B0\uC120"})}]:[],...O?[{value:"original",label:h("wordSearch.sort.original",{defaultValue:"\uBC1B\uC740 \uC21C\uC11C"})}]:[],{value:"ganada",label:h("wordSearch.sort.ganada",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2191"})},{value:"ganada_desc",label:h("wordSearch.sort.ganadaDesc",{defaultValue:"\uAC00\uB098\uB2E4\uC21C \u2193"})},{value:"syllable",label:h("wordSearch.sort.syllable",{defaultValue:"\uC74C\uC808 \uC218 \u2191"})},{value:"syllable_desc",label:h("wordSearch.sort.syllableDesc",{defaultValue:"\uC74C\uC808 \uC218 \u2193"})},{value:"grade",label:h("wordSearch.sort.grade",{defaultValue:"\uB4F1\uAE09\uC21C \u2191"})},{value:"grade_desc",label:h("wordSearch.sort.gradeDesc",{defaultValue:"\uB4F1\uAE09\uC21C \u2193"})}],[h,E,O]),H=o.useMemo(()=>["10","25","50","100"].map(ne=>({value:ne,label:h("wordSearch.pageSize",{count:Number(ne),defaultValue:`${ne}\uAC1C\uC529 \uBCF4\uAE30`})})),[h]),T=ne=>ne.words?.[0],D=o.useMemo(()=>{const ne=[...S].length,le=FC(S),Ce=new Map;return ge=>{let fe=Ce.get(ge);return fe===void 0&&(fe=le((ge.words?.[0]?.label??"").slice(0,ne))?0:1,Ce.set(ge,fe)),fe}},[S]),R=o.useCallback((ne,le)=>{const Ce=$e=>T($e)?.label??"",ge=$e=>T($e)?.syllables??[...Ce($e)].length,fe=$e=>($e.words??[]).reduce((Ve,je)=>{const Fe=parseInt(je.grade??"",10);return Number.isFinite(Fe)&&Fe<Ve?Fe:Ve},999);switch($){case"match":return D(ne)-D(le)||an(Ce(ne),Ce(le));case"ganada":return an(Ce(ne),Ce(le));case"ganada_desc":return an(Ce(le),Ce(ne));case"syllable":return ge(ne)-ge(le)||an(Ce(ne),Ce(le));case"syllable_desc":return ge(le)-ge(ne)||an(Ce(ne),Ce(le));case"grade":return fe(ne)-fe(le)||an(Ce(ne),Ce(le));case"grade_desc":return fe(le)-fe(ne)||an(Ce(ne),Ce(le));default:return 0}},[$,D]),I=o.useMemo(()=>i.slice().sort(R),[i,R]),W=Number(L)||10,ee=o.useMemo(()=>(s??[]).flatMap(ne=>ne.items.slice().sort(R).map(le=>({item:le,label:ne.label}))),[s,R]),oe=s?ee.length:I.length,ce=Math.max(1,Math.ceil(oe/W)),J=Math.min(G,ce),re=o.useMemo(()=>I.slice((J-1)*W,J*W),[I,J,W]),Ne=o.useMemo(()=>{if(!s)return null;const ne=ee.slice((J-1)*W,J*W),le=new Map;for(const{item:Ce,label:ge}of ne)le.has(ge)||le.set(ge,[]),le.get(ge).push(Ce);return[...le.entries()].map(([Ce,ge])=>({label:Ce,items:ge}))},[s,ee,J,W]);o.useEffect(()=>{U(1)},[Y,L,oe,r]);const K=oe>0?n.jsxs("div",{className:"word-search-result-block__toolbar",children:[n.jsx(pn,{size:40,options:V,value:$,onChange:M,ariaLabel:h("wordSearch.sort.aria",{defaultValue:"\uC815\uB82C"})}),n.jsx(pn,{size:40,options:H,value:L,onChange:P,ariaLabel:h("wordSearch.pageSizeAria",{defaultValue:"\uD398\uC774\uC9C0 \uD06C\uAE30"})}),n.jsx(or,{page:J,totalPages:ce,onChange:U})]}):void 0,Q=ne=>{u&&u(ne)},pe=t!==void 0&&a?n.jsxs(n.Fragment,{children:[h("wordSearch.resultTitlePrefix","\uCD1D "),n.jsx("span",{style:{color:"var(--color-main)"},children:t}),h("wordSearch.resultTitleSuffix",{unit:f?KC(a):a})]}):void 0,De=t!==void 0&&t>0&&c!==void 0&&a?h("wordSearch.resultDisc",{unit:f?ZC(a):a,max:c,selected:l.length}):void 0,ye=g??De;return n.jsxs(da,{type:v,className:we("word-search-result-block",C),children:[n.jsxs("div",{className:"word-search-result-block__inner",children:[(pe||K||ye)&&n.jsxs("div",{className:"word-search-result-block__head",children:[n.jsxs("div",{className:"word-search-result-block__head-main",children:[e&&n.jsx(at,{icon:e,className:"word-search-result-block__head-icon"}),pe&&n.jsx("span",{className:"word-search-result-block__title h3",children:pe})]}),K&&n.jsx("div",{className:"word-search-result-block__head-actions",children:K}),ye&&n.jsx("div",{className:"word-search-result-block__head-disc body-3",children:ye})]}),(s?s.length===0:i.length===0)&&n.jsxs("div",{className:"word-search-result-block__empty-wrap",children:[n.jsx("p",{className:"word-search-result-block__empty body-3",children:h("wordSearch.emptyResult","\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.")}),y&&n.jsx("p",{className:"word-search-result-block__empty-hint body-3",children:y})]}),s?(Ne??[]).map(ne=>n.jsx("div",{className:"word-search-result-block__group",children:n.jsx("div",{className:"word-search-result-block__items",children:ne.items.map(le=>{const Ce=l.includes(le.id);return n.jsx("div",{onMouseEnter:ge=>{b(ge.currentTarget),A(le.words??[])},onMouseLeave:k,children:n.jsx(me,{htmlType:"button",size:"word",align:"grid",label:(le.words??[]).map(ge=>ge.label),subLabel:(le.words??[]).some(ge=>ge.subLabel)?(le.words??[]).map(ge=>ge.subLabel):void 0,selected:Ce,onClick:()=>Q(le.id),minWidth:200})},le.id)})})},ne.label)):n.jsx("div",{className:"word-search-result-block__items",children:re.map(ne=>{const le=l.includes(ne.id);return n.jsx("div",{onMouseEnter:Ce=>{b(Ce.currentTarget),A(ne.words??[])},onMouseLeave:k,children:n.jsx(me,{htmlType:"button",size:"word",align:"grid",label:(ne.words??[]).map(Ce=>Ce.label),subLabel:(ne.words??[]).some(Ce=>Ce.subLabel)?(ne.words??[]).map(Ce=>Ce.subLabel):void 0,selected:le,onClick:()=>Q(ne.id),minWidth:200})},ne.id)})}),_&&w&&n.jsx(Fc,{words:_,anchorRect:w})]}),ce>1&&n.jsx("div",{className:"word-search-result-block__pagination-bottom",children:n.jsx(or,{page:J,totalPages:ce,onChange:U})}),(d||m)&&n.jsxs("div",{className:"word-search-result-block__actions",children:[d&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:h("common.resetSelection","\uC120\uD0DD \uCD08\uAE30\uD654"),selected:!1,disabled:l.length===0,onClick:l.length===0?void 0:d}),m&&n.jsx("div",{onClick:l.length===0?p:void 0,children:n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",label:h("wordTable.title","\uB2E8\uC5B4 \uD45C \uB9CC\uB4E4\uAE30"),disabled:l.length===0,onClick:l.length===0?void 0:m})})]})]})}function w7(e,t){return t.map(a=>{const r=typeof a=="string"?a:a.label,i=typeof a=="string"?void 0:a.displayLabel;return{label:r,value:e[r]??"",displayLabel:i}})}function A7({sections:e,selectedList:t,count:a,onCountChange:r,maxCount:i=4,minCount:s=1,combinationSections:l,combinationSectionsForSlot:u,onSelect:c,placeholder:d="-",className:m,title:p,titleIcon:C,disc:y,showInfoButton:v=!0,onClearPhoneme:g,onSearch:h,onSearchEmpty:x,searchDisabled:f=!1,searchLabel:w,searchChecking:b=!1,pairMode:B=!1,sectionType:_="page",beforeSearchContent:A,beforeContent:k,afterContent:N,hideCountControl:S=!1,ordinal:E=!1}){const{t:O}=xe.useTranslation(),F=o.useMemo(()=>O("wordPairs.infoNotes",{returnObjects:!0}),[O]),Y=o.useMemo(()=>Array.from({length:i-s+1},(D,R)=>{const I=s+R;return{key:String(I),label:O("wordPairs.count",{n:I})}}),[O,i,s]),M=o.useMemo(()=>O("wordPairs.ordinals",{returnObjects:!0}),[O]),L=o.useCallback(D=>E?O("wordPairs.phonemeOrdinalLabel",{ordinal:M[D-1]??D}):a===1?O("wordPairs.phonemeSingleLabel","\uC74C\uC808"):O("wordPairs.phonemeN",{n:D}),[E,M,a,O]),P=o.useCallback(D=>E?O("wordPairs.phonemeContrastOrdinalLabel",{ordinal:M[D-1]??D}):a===1?O("wordPairs.phonemeContrastSingleLabel","\uB300\uB9BD \uC74C\uC808"):O("wordPairs.phonemeContrast",{n:D}),[E,M,a,O]),G=o.useCallback((D,R)=>R?n.jsxs(n.Fragment,{children:[D,n.jsx("span",{className:"phoneme-select-block__required",children:"*"})]}):D,[]),{anchorRect:U,toggleAt:z,close:q}=Ea(),$=o.useCallback(D=>r(Number(D)),[r]),V=ln("(max-width: 767px)"),H=o.useCallback(D=>w7(D,e).map(({label:R,value:I,displayLabel:W})=>{const ee=!!I&&I!=="\uC5C6\uC74C";return n.jsxs("span",{className:we("phoneme-select-block__cell-jamo-part",I?"":"phoneme-select-block__cell-jamo-part--empty",ee?"":"phoneme-select-block__cell-jamo-part--no-label"),children:[n.jsx("span",{className:`phoneme-select-block__cell-jamo-char h1${I==="\uC5C6\uC74C"?" phoneme-select-block__cell-jamo-char--excluded":""}`,children:I==="\uC5C6\uC74C"?"x":I||d}),ee&&n.jsx("span",{className:"phoneme-select-block__cell-jamo-label caption-2",children:W??R})]},R)}),[e,d]),T=n.jsxs(n.Fragment,{children:[n.jsx("div",{"data-tooltip-ignore":!0,children:n.jsx(me,{htmlType:"button",size:40,type:V?"dot":void 0,icon:"info",label:V?void 0:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),ariaLabel:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),className:U?"is-selected":void 0,"aria-expanded":!!U,"aria-haspopup":"dialog",onClick:D=>z(D.currentTarget)})}),U&&n.jsx(Gn,{title:O("wordPairs.caution","\uC720\uC758\uC0AC\uD56D"),items:F,anchorRect:U,onClose:q})]});return n.jsxs(da,{type:_,title:p,icon:C,disc:y,action:v?T:void 0,className:we("phoneme-select-block",m),children:[k,!S&&n.jsx("div",{className:"phoneme-select-block__controls",children:n.jsx(gn,{options:Y,value:String(a),onChange:$,size:40,ariaLabel:O("wordPairs.countLabel","\uC74C\uC18C \uAC1C\uC218"),className:"phoneme-select-block__count-control"})}),n.jsx("div",{className:"phoneme-select-block__cells",children:B?n.jsxs(n.Fragment,{children:[n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(I)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:L(R+1)})]},R)})}),n.jsx("span",{className:"phoneme-select-block__cell-vs h3",children:O("wordPairs.phonemeSelect.vs","\uB300")}),n.jsx("div",{className:"phoneme-select-block__cell-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2+1]??{};return n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(I)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:P(R+1)})]},R)})})]}):t.map((D,R)=>n.jsxs("div",{className:"phoneme-select-block__cell",children:[n.jsx("div",{className:"phoneme-select-block__cell-circle",children:n.jsx("div",{className:"phoneme-select-block__cell-jamo",children:H(D)})}),n.jsx("span",{className:"phoneme-select-block__cell-index caption-1",children:L(R+1)})]},R))}),(l||u)&&n.jsx("div",{className:"phoneme-select-block__panels",children:n.jsx("div",{className:"phoneme-select-block__detail",children:B?n.jsxs("div",{className:"phoneme-select-block__pair-panels",children:[n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2]??{};return n.jsx(Dn,{title:G(L(R+1),R===0),sections:u?u(I,R*2):l,selected:I,onSelect:c?.(R*2),align:"newline"},R)})}),n.jsx("div",{className:"phoneme-select-block__panel-group",children:Array.from({length:a}).map((D,R)=>{const I=t[R*2+1]??{};return n.jsx(Dn,{title:P(R+1),sections:u?u(I,R*2+1):l,selected:I,onSelect:c?.(R*2+1),align:"newline"},R)})})]}):t.map((D,R)=>n.jsx(Dn,{title:G(L(R+1),R===0),sections:u?u(D,R):l,selected:D,onSelect:c?.(R),align:"newline"},R))})}),A&&n.jsx("div",{className:"phoneme-select-block__before-search",children:A}),(g||h||b)&&(()=>{const D=t.every(R=>{const I=LC(R);return Object.entries(I).every(([W,ee])=>!ee||W==="coda"&&ee===pi)});return n.jsxs("div",{className:"phoneme-select-block__search-row",onClick:D?x:void 0,children:[g&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:O("wordPairs.resetOptions","\uAC80\uC0C9 \uC635\uC158 \uCD08\uAE30\uD654"),selected:!1,disabled:D,onClick:D?void 0:g}),h?n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",icon:b?n.jsx("span",{className:"phoneme-select-block__spinner","aria-hidden":"true"}):void 0,label:w??O("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30"),disabled:D||f||b,onDisabledClick:b?()=>{}:void 0,"aria-busy":b||void 0,onClick:h}):b?n.jsxs("div",{className:"phoneme-select-block__checking","aria-busy":"true",children:[n.jsx("div",{className:"phoneme-select-block__spinner"}),n.jsx("span",{className:"button-1 phoneme-select-block__checking-label",children:w??O("wordSearch.searchButton","\uAC80\uC0C9\uD558\uAE30")})]}):null]})})(),N]})}function B7({title:e,sections:t,selected:a,onSelect:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,headerAction:d,className:m}){const{t:p}=xe.useTranslation();return n.jsx(Dn,{className:m,title:e??p("wordSearch.filterTitle","\uB2E8\uC5B4 \uAC80\uC0C9 \uC124\uC815"),sections:t,selected:a,onSelect:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,headerAction:d,align:"inline"})}function k7({title:e,headerAction:t,sections:a,selected:r,onSelect:i,className:s}){const{t:l}=xe.useTranslation();return a.length===0?null:n.jsx(Dn,{className:s,title:e??l("training.filter.phonemeGroup",{defaultValue:"\uD6C8\uB828 \uC74C\uC808"}),headerAction:t,sections:a,selected:r,onSelect:i,align:"newline"})}function N7({title:e,mode:t,onModeChange:a,matchMode:r,onMatchModeChange:i,positionCount:s,onPositionCountChange:l,inputMode:u,onInputModeChange:c,className:d}){const{t:m}=xe.useTranslation(),p={searchMode:m("wordPairs.filter.searchModeLabel","\uB300\uB9BD \uBC29\uC2DD"),phonemeOrder:m("wordPairs.filter.phonemeOrder","\uC785\uB825 \uC74C\uC808 \uC704\uCE58"),count:m("wordPairs.filter.countLabel","\uC785\uB825 \uC74C\uC808 \uAC2F\uC218"),inputMode:m("wordPairs.filter.inputModeLabel","\uC785\uB825 \uBC29\uC2DD"),orderAny:m("wordPairs.filter.orderAny","\uBB34\uAD00"),orderMatch:m("wordPairs.filter.orderMatch","\uC77C\uCE58"),include:m("wordPairs.mode.include","\uC74C\uC18C \uD3EC\uD568"),pick:m("wordPairs.mode.pick","\uC74C\uC18C \uB300\uB9BD"),explicit:m("wordPairs.mode.contrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815"),charInput:m("wordPairs.input.char","\uAE00\uC790 \uC120\uD0DD"),pronInput:m("wordPairs.input.pron","\uBC1C\uC74C \uC120\uD0DD")},C=h=>m("wordPairs.count",{n:h}),y=[{label:p.searchMode,items:[p.include,p.pick,p.explicit],display:"segmented",labelAction:n.jsx(La,{title:m("wordPairs.mode.infoTitle","\uB300\uB9BD \uBC29\uC2DD"),items:[m("wordPairs.mode.infoInclude","\uC74C\uC18C \uD3EC\uD568 \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uBAA8\uB450 \uB4E4\uC5B4\uAC04 \uB2E8\uC5B4\uC640 \uADF8 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694."),m("wordPairs.mode.infoPick","\uC74C\uC18C \uB300\uB9BD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uAC00 \uB300\uB9BD\uC30D \uB450 \uB2E8\uC5B4\uC758 \uC2E4\uC81C \uCC28\uC774\uC810\uC77C \uB54C\uB9CC \uB9E4\uCE6D\uB3FC\uC694."),m("wordPairs.mode.infoContrast","\uC74C\uC18C \uB300\uB9BD \uC9C0\uC815 \u2014 \uAE30\uC900 \uB2E8\uC5B4\uC640 \uB300\uB9BD \uB2E8\uC5B4\uC758 \uC74C\uC18C\uB97C \uAC01\uAC01 \uC9C1\uC811 \uC120\uD0DD\uD574 \uB300\uB9BD\uC30D\uC744 \uCC3E\uC544\uC694.")]})},{label:p.phonemeOrder,items:[p.orderAny,p.orderMatch],display:"segmented",labelAction:n.jsx(La,{items:m("wordPairs.filter.phonemeOrderInfo",{returnObjects:!0})})},{label:p.count,items:[C(1),C(2)],display:"segmented"},{label:p.inputMode,items:[p.charInput,p.pronInput],display:"segmented",labelAction:n.jsx(La,{title:m("wordPairs.input.infoTitle","\uC785\uB825 \uBC29\uC2DD"),items:[m("wordPairs.input.infoChar","\uAE00\uC790 \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uB2E8\uC5B4(\uAE00\uC790 \uAE30\uC900)\uB97C \uCC3E\uC740 \uD6C4, \uB2E8\uC5B4\uC758 \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4."),m("wordPairs.input.infoPron","\uBC1C\uC74C \uC120\uD0DD \u2014 \uC120\uD0DD\uD55C \uC74C\uC18C\uB85C \uD45C\uC900 \uBC1C\uC74C \uB300\uB9BD\uC30D\uC744 \uCC3E\uC2B5\uB2C8\uB2E4.")]})}],v={[p.searchMode]:t==="explicit"?p.explicit:t==="pick"?p.pick:p.include,[p.phonemeOrder]:r==="ordered"?p.orderMatch:p.orderAny,[p.count]:C(s),[p.inputMode]:u==="phoneme"?p.pronInput:p.charInput},g=(h,x)=>{x===p.searchMode?a(h===p.explicit?"explicit":h===p.pick?"pick":"include"):x===p.phonemeOrder?i(h===p.orderMatch?"ordered":"unordered"):x===p.count?l(h===C(2)?2:1):x===p.inputMode&&c(h===p.pronInput?"phoneme":"word")};return n.jsx(Dn,{className:d,title:e??m("wordPairs.filter.searchOptionsTitle","\uB300\uB9BD \uC124\uC815"),sections:y,selected:v,onSelect:g,align:"inline"})}function E7(e){const{title:t,items:a,columns:r,gridTemplateColumns:i,mobileGridTemplateColumns:s,searchPlaceholder:l,searchFn:u,defaultSortKey:c,defaultSortAsc:d=!0,selectedId:m,selectedIds:p,onSelect:C,onClose:y,pageSizeOptions:v=[10,25,50,100],initialPageSize:g,emptyText:h,noMatchText:x,countLabel:f,topContent:w,className:b=""}=e,{t:B}=xe.useTranslation(),_=l??B("common.search","\uAC80\uC0C9"),A=h??B("common.emptyList","\uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4."),k=x??B("common.noMatches","\uB9DE\uB294 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"),[N,S]=o.useState(""),[E,O]=o.useState(c??r[0]?.key??""),[F,Y]=o.useState(d),[M,L]=o.useState(String(g??v[0]??10)),[P,G]=o.useState(1);o.useEffect(()=>{G(1)},[N,M]);const U=u!==null,z=o.useCallback((ee,oe)=>{if(!oe)return!0;const ce=oe.toLowerCase();return r.some(J=>{const re=ee[J.key];return re==null?!1:String(re).toLowerCase().includes(ce)})},[r]),q=u??z,$=o.useMemo(()=>{const ee=U?a.filter(oe=>q(oe,N)):a;return E?[...ee].sort((oe,ce)=>{const J=oe[E],re=ce[E];return J===re?0:uo(J,re,F)}):ee},[a,N,E,F,U,q]),V=Math.max(1,Math.ceil($.length/Number(M)));P>V&&G(V);const H=Math.min(P,V),T=$.slice((H-1)*Number(M),H*Number(M)),D=o.useCallback(ee=>{E===ee?Y(oe=>!oe):(O(ee),Y(!0)),G(1)},[E]),R=o.useMemo(()=>{if(typeof f=="function"){const ee=$.length,oe=f(ee);if(typeof oe=="string"){const ce=oe.lastIndexOf(String(ee));if(ce>=0)return{prefix:oe.slice(0,ce),suffix:oe.slice(ce+String(ee).length)}}return{label:oe}}if(typeof f=="string"&&f.includes("{n}")){const[ee,oe]=f.split("{n}");return{prefix:ee,suffix:oe}}return{prefix:B("common.totalCountPrefix","\uCD1D "),suffix:B("common.totalCountSuffix","\uAC1C")}},[f,$.length,B]),I=o.useMemo(()=>r.map(ee=>({label:ee.label,onClick:ee.sortable!==!1?()=>D(ee.key):void 0,className:ee.className,sortDir:ee.sortable!==!1&&E===ee.key?F?"asc":"desc":null})),[r,E,F,D]),W=o.useMemo(()=>v.map(ee=>({value:String(ee),label:B("common.pageSizeLabel",{n:ee})})),[v,B]);return n.jsxs(Fn,{className:`popup-list ${b}`,title:t,onClose:y,children:[w,"label"in R&&n.jsx("p",{className:"toolbar__count body-1",children:R.label}),n.jsx(_o,{count:"label"in R?void 0:{value:$.length,prefix:R.prefix,suffix:R.suffix},search:U?{value:N,onChange:S,placeholder:_}:void 0,pageSize:{options:W,value:M,onChange:L},pagination:{page:H,total:V,onChange:G}}),n.jsx(jo,{size:"medium",gridTemplateColumns:i,mobileGridTemplateColumns:s,resizable:!0,fields:I,items:T,onRowClick:C,renderRow:ee=>{const oe=p!=null?ee.id!=null&&p.has(ee.id):m!=null&&ee.id===m;return r.map(ce=>({content:ce.render?ce.render(ee):ee[ce.key]??"",className:we(ce.className,oe&&"popup-list__row--selected")}))},empty:U&&N!==""&&a.length>0?k:A})]})}function Ic(e){const{title:t,message:a,topContent:r,details:i,children:s,confirmLabel:l,cancelLabel:u,hideCancel:c=!1,extraAction:d,confirmVariant:m="main",confirmDisabled:p=!1,onConfirm:C,closeOnConfirm:y=!0,onClose:v,inline:g,size:h="small",className:x,initialFocus:f="close"}=e,{t:w}=xe.useTranslation(),b=o.useRef(null);o.useEffect(()=>{if(g||f==="close")return;const S=b.current?.closest(".popup-panel"),E=Array.from(S?.querySelectorAll(".popup-footer--buttons button")??[]),O=f==="confirm"?E[E.length-1]:c?void 0:E[d?1:0];O&&!O.disabled&&O.focus()},[]);const B=o.useRef(!1),[_,A]=o.useState(!1),k=S=>{let E=!1;return{close:()=>{E=!0,S()},didClose:()=>E}},N=async S=>{if(B.current)return;B.current=!0;const E=typeof document<"u"?document.activeElement:null;A(!0);let O=!1;try{O=await S()}catch(F){typeof console<"u"&&console.error(F)}finally{O||(B.current=!1,A(!1),requestAnimationFrame(()=>{const F=document.activeElement;(!F||F===document.body)&&E?.isConnected&&E.focus()}))}};return n.jsxs(Fn,{title:t,onClose:v,closeDisabled:_,inline:g,size:h,className:we("confirm-popup",r!=null&&"confirm-popup--has-top",x),buttons:[...d?[{label:d.label,variant:d.variant??"default",disabled:d.disabled||_,onClick:async({closeWithAnimation:S})=>{await N(async()=>{const E=k(S);await d.onClick(E.close);const O=d.closeOnClick??!0;return O&&S(),O||E.didClose()})}}]:[],...c?[]:[{label:u??w("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:_,onClick:({closeWithAnimation:S})=>S()}],{label:l??w("common.confirm","\uD655\uC778"),variant:m,disabled:p||_,onClick:async({closeWithAnimation:S})=>{await N(async()=>{const E=k(S);return await C(E.close),y&&S(),y||E.didClose()})}}],children:[r!=null&&n.jsx("div",{className:"confirm-popup__top",children:r}),i&&i.length>0&&n.jsx(br,{children:i.map((S,E)=>n.jsx(Sn,{label:S.label,children:n.jsx("span",{className:"panel-row__text body-2",children:S.value})},E))}),n.jsx("p",{ref:b,className:"body-2 confirm-popup__message",children:a}),s]})}function D7(e,t,a={}){const{t:r}=xe.useTranslation(),[i,s]=o.useState(!1),l=o.useRef(!1),u=o.useCallback(()=>{l.current=!0},[]),c=o.useCallback(()=>l.current?(l.current=!1,!0):e?(s(!0),!1):!0,[e]),d=i?n.jsx(Ic,{title:a.title??r("common.discardConfirm.title","\uC785\uB825\uC744 \uCDE8\uC18C\uD560\uAE4C\uC694?"),message:a.message??r("common.discardConfirm.body","\uC800\uC7A5\uD558\uC9C0 \uC54A\uC73C\uBA74 \uC9C0\uAE08\uAE4C\uC9C0 \uC785\uB825\uD55C \uB0B4\uC6A9\uC774 \uC0AC\uB77C\uC9D1\uB2C8\uB2E4."),confirmLabel:a.confirmLabel??r("common.discardConfirm.confirm","\uC785\uB825 \uCDE8\uC18C"),confirmVariant:"danger",onConfirm:()=>{s(!1),t()},onClose:()=>s(!1)}):null;return{beforeClose:c,discardPopup:d,allowClose:u}}function S7({onApply:e,onCancel:t}){const{t:a}=xe.useTranslation(),[r,i]=o.useState(""),[s,l]=o.useState(!1),[u,c]=o.useState(null),d=o.useRef(null),m=o.useId();o.useEffect(()=>{d.current?.focus()},[]);const p=o.useCallback(async v=>{const g=r.trim();if(g){l(!0),c(null);try{await e(g),v()}catch(h){c(fi(h)),l(!1),requestAnimationFrame(()=>d.current?.focus())}}},[r,e]),C=o.useCallback((v,g)=>{v.key==="Enter"&&!v.nativeEvent.isComposing&&p(g)},[p]),y=v=>{i(v.target.value),c(null)};return n.jsx(Fn,{className:"coupon-input-popup",title:a("usage.couponButton","\uCFE0\uD3F0 \uC785\uB825"),size:"small",onClose:t,closeDisabled:s,buttons:[{label:a("common.cancel","\uCDE8\uC18C"),variant:"default",disabled:s,onClick:({closeWithAnimation:v})=>v()},{label:a("coupons.applyButton","\uC801\uC6A9"),variant:"main",disabled:!r.trim()||s,onClick:({closeWithAnimation:v})=>{p(v)}}],children:({closeWithAnimation:v})=>n.jsxs(n.Fragment,{children:[n.jsx("input",{ref:d,className:"coupon-input-popup__input body-2","aria-label":a("coupons.input.label","\uCFE0\uD3F0 \uCF54\uB4DC"),"aria-invalid":u?!0:void 0,"aria-errormessage":u?m:void 0,"aria-describedby":u?m:void 0,placeholder:a("coupons.input.placeholder","\uCFE0\uD3F0 \uCF54\uB4DC \uC785\uB825"),value:r,onChange:y,onKeyDown:g=>C(g,v),disabled:s,autoComplete:"off",spellCheck:!1}),u&&n.jsx("p",{id:m,className:"coupon-input-popup__error caption-1",role:"alert",children:u})]})})}const Oc=["var(--color-main)","var(--color-sub)"],j7=2e3;function T7(e,t){if(!t.startsWith("var("))return t;try{const a=t.slice(4,-1).trim();return getComputedStyle(e).getPropertyValue(a).trim()||null}catch{return null}}function cs({active:e=!1,count:t=40,duration:a=2e3,strength:r=1,onComplete:i,trigger:s=0}){const l=o.useMemo(()=>{const g=Math.floor(t/2),h=t-g,x=(f,w)=>Array.from({length:f}).map((b,B)=>{const _=6+Math.random()*12,A=Math.round(Math.min(18,_*Math.min(1.5,1+r*.4))),k=Oc[Math.floor(Math.random()*Oc.length)],N=Math.random()*300,S=(360+Math.random()*260)*r*1.2,E=(w==="left"?-95+Math.random()*40:-85-Math.random()*40)*Math.PI/180,O=Math.cos(E)*S,F=Math.sin(E)*S*1.35,Y=Math.random()*720-360,M=(1200+Math.random()*3e3)*Math.min(1.6,1+r*.3),L=Math.random()>.7?"50%":"3px";return{id:`${w}-${B}`,side:w,size:A,color:k,delay:N,vx:O,vy:F,angularVel:Y,life:M,borderRadius:L}});return[...x(g,"left"),...x(h,"right")]},[t,r]),u=o.useRef(null),c=o.useRef({}),d=o.useRef(null),m=o.useRef(i);o.useEffect(()=>{m.current=i},[i]);const p=o.useRef(null),C=o.useRef(null),y=()=>{if(typeof document>"u")return null;let g=document.querySelector("[data-ihab-effect-root]");return g||(g=document.createElement("div"),g.className="app-effect",g.dataset.ihabEffectRoot="",g.style.position="fixed",g.style.inset="0",g.style.pointerEvents="none",g.style.zIndex="99998",document.body.appendChild(g)),g};if(typeof document<"u"&&C.current==null&&(C.current=y()),o.useEffect(()=>{if(!e)return;if(typeof window<"u"&&window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){const q=setTimeout(()=>m.current?.(),0);return()=>clearTimeout(q)}const g=1200,h=performance.now(),x=C.current&&C.current!==document.body?C.current.getBoundingClientRect():null,f=Math.max(60,(window.innerHeight||800)*.05),w=q=>Math.max(40,(q||window.innerWidth)*.02),b=x?.width||window.innerWidth||375,B=x?.height||window.innerHeight||812,_=q=>{const $=[...q].sort((V,H)=>V-H);return $[Math.floor($.length/2)]||1},A=_(l.map(q=>Math.abs(q.vy))),k=_(l.map(q=>Math.abs(q.vx))),N=Math.sqrt(2*g*(B*.72+f))/A,S=A*N/g,E=b*.5/(k*S),O=(q,$,V)=>Math.min(V,Math.max($,q)),F=O(N,.8,2.4),Y=O(E,.7,2.2),M=a>0?a/j7:1,L=l.map(q=>({...q,life:q.life*M,vx:q.vx*Y,vy:q.vy*F,startTime:h+q.delay,ended:!1})),P=x?{x:x.left-w(x.width),y:x.top+x.height+f}:{x:-w(window.innerWidth),y:window.innerHeight+f},G=x?{x:x.left+x.width+w(x.width),y:x.top+x.height+f}:{x:window.innerWidth+w(window.innerWidth),y:window.innerHeight+f},U=q=>{let $=!1;for(const V of L){const H=c.current[V.id];if(!H||!H)continue;if(q<V.startTime){H.style.display="none",$=!0;continue}if(!V._inited){const re=V.side==="left"?P.x:G.x,Ne=V.side==="left"?P.y:G.y;H.style.left=`${re}px`,H.style.top=`${Ne}px`,H.style.transform="translate3d(0px, 0px, 0)",H.style.display="block",H.style.zIndex="100000",typeof V.color=="string"&&V.color.startsWith("var(")&&(H.style.background=T7(H,V.color)??"#FF0060"),V._inited=!0}const T=(q-V.startTime)/1e3;if(T<0)continue;const D=V.life/1e3;if(T>=D){H.style.opacity="0",H.style.display="none",V.ended=!0;continue}$=!0;const R=V.side==="left"?P.x:G.x,I=V.side==="left"?P.y:G.y,W=R+V.vx*T,ee=I+V.vy*T+.5*g*T*T,oe=(V.angularVel||0)*T,ce=W-R,J=ee-I;H.style.transform=`translate3d(${ce}px, ${J}px, 0) rotate(${oe}deg)`,H.style.opacity=`${Math.max(0,1-T/D)}`}$?d.current=requestAnimationFrame(U):m.current?.()};d.current=requestAnimationFrame(U);const z=setTimeout(()=>{try{if((C.current?C.current.querySelectorAll(".confetti"):document.querySelectorAll(".confetti")).length===0&&!document.querySelector(".party-container")){const q=document.createElement("div");q.className="party-container",q.style.position="fixed",q.style.inset="0",q.style.pointerEvents="none",q.style.overflow="visible",q.style.zIndex="2147483647";for(const $ of l){const V=document.createElement("span");V.className=`confetti confetti--${$.side}`,V.setAttribute("aria-hidden","true"),V.style.display="none",V.style.position="fixed",V.style.left="0px",V.style.top="0px",V.style.width=`${$.size}px`,V.style.height=`${Math.max(4,$.size*.6)}px`,V.style.background=$.color,V.style.borderRadius=$.borderRadius,V.style.transform="translate3d(0,0,0)",V.style.opacity="0",q.appendChild(V),c.current[$.id]=V}(document.body||C.current).appendChild(q),p.current=q}}catch{}},300);return()=>{if(d.current&&cancelAnimationFrame(d.current),clearTimeout(z),p.current){try{p.current.remove()}catch{}p.current=null}}},[e,a,s,l]),!e)return null;const v=n.jsx("div",{className:"party-container",ref:u,children:l.map(g=>n.jsx("span",{"aria-hidden":!0,ref:h=>{c.current[g.id]=h},className:`confetti confetti--${g.side}`,style:{width:`${g.size}px`,height:`${Math.max(4,g.size*.6)}px`,background:g.color,borderRadius:g.borderRadius}},`${g.id}-${s}`))});return typeof document<"u"?en.createPortal(v,C.current||document.body):v}const ds=e=>typeof e=="number"&&Number.isFinite(e)&&e>0?e:void 0;function M7({trigger:e=0,active:t=!1}){const[a,r]=o.useState(null);o.useEffect(()=>{if(typeof window>"u")return;const s=l=>{const u=l.detail??{};r(c=>({n:(c?.n??0)+1,count:ds(u.count),strength:ds(u.strength),duration:ds(u.duration)}))};return window.addEventListener("party:trigger",s),()=>window.removeEventListener("party:trigger",s)},[]);const i=o.useCallback(()=>r(null),[]);return n.jsxs(n.Fragment,{children:[n.jsx(cs,{active:t,trigger:e}),a&&n.jsx(cs,{active:!0,trigger:a.n,count:a.count,strength:a.strength,duration:a.duration,onComplete:i})]})}function L7({title:e,sub:t,rightAction:a,titleAction:r,badge:i,badgeVariant:s="default",documentTitle:l,onBack:u,backLabel:c,wrap:d=!1}){const{t:m}=xe.useTranslation();_b(typeof e=="string"?e:l??null);const p=c??m("common.back","\uB4A4\uB85C");return n.jsxs("div",{className:d?"page-title page-title--wrap":"page-title",children:[n.jsxs("div",{className:"page-title__main",children:[n.jsxs("div",{className:"page-title__title-row",children:[u&&n.jsx(me,{htmlType:"button",className:"page-title__back",size:48,type:"dot",icon:"chevron-left",iconSize:"large",useBorder:!1,iconColor:"var(--color-text-primary)",ariaLabel:p,showTooltipInfo:p,onClick:u}),n.jsx("h1",{className:"page-title__title h1",children:e}),i&&n.jsx("div",{className:"page-title__badge",children:n.jsx(kt,{label:i,size:"small",variant:s,fill:"outline"})}),r?n.jsx("div",{className:"page-title__title-action",children:r}):null]}),t&&n.jsx("p",{className:"page-title__sub body-2",children:t})]}),a?n.jsx("div",{className:"page-title__action",children:a}):null]})}function $7(e){return e??""}const Hc=o.createContext({words:[],loading:!1});function R7(){return o.useContext(Hc)}function P7({words:e,loading:t,error:a,statusMessage:r,localVersion:i,remoteVersion:s,progress:l,clearAndRefetch:u,checkRemoteVersion:c,children:d}){const m=o.useMemo(()=>({words:e,loading:t,error:a,statusMessage:r,localVersion:i,remoteVersion:s,progress:l,clearAndRefetch:u,checkRemoteVersion:c}),[e,t,a,r,i,s,l,u,c]);return n.jsx(Hc.Provider,{value:m,children:d})}function F7({items:e,actions:t,columns:a,flat:r=!1,className:i,style:s}){const l=a??e.length;return n.jsx("section",{className:we("summary-strip",r&&"summary-strip--flat",i),style:{"--summary-strip-cols":String(l),...s},children:n.jsxs("div",{className:"summary-strip__row",children:[n.jsx("div",{className:"summary-strip__items",children:e.map((u,c)=>n.jsxs("div",{className:"summary-strip__item",children:[n.jsx("p",{className:"summary-strip__label caption-1",children:u.label}),n.jsx("p",{className:"summary-strip__value body-3b",title:typeof u.value=="string"||typeof u.value=="number"?String(u.value):void 0,children:u.value})]},c))}),t&&n.jsx("div",{className:"summary-strip__actions",children:t})]})})}const I7=(e,t)=>`${e} / ${t}`;function O7({blocks:e,sectionTitles:t,logo:a,footer:r,pageLabel:i=I7,pageWidth:s,pageHeight:l,margin:u,className:c,style:d}){const{t:m}=xe.useTranslation(),p=o.useRef(null),C=o.useRef(null),y=o.useRef(null),v=o.useRef(null),[g,h]=o.useState(null),[x,f]=o.useState(!1);o.useEffect(()=>{const M=p.current;if(!M)return;const L=()=>f(M.scrollWidth>M.clientWidth+1);if(L(),typeof ResizeObserver>"u")return;const P=new ResizeObserver(L);return P.observe(M),()=>P.disconnect()},[g]);const w=e.map(M=>`${M.id}\0${M.section??""}\0${M.group??""}`).join(""),b=g&&g.shape===w?g.pages:null,[B,_]=o.useState(0);o.useEffect(()=>{const M=v.current;if(!M||typeof ResizeObserver>"u")return;const L=new ResizeObserver(()=>_(M.offsetHeight));return L.observe(M),()=>L.disconnect()},[]);const[A,k]=o.useState(0);o.useEffect(()=>{const M=C.current;if(!M||typeof ResizeObserver>"u")return;let L=null;const P=typeof requestAnimationFrame=="function"?z=>requestAnimationFrame(z):z=>setTimeout(z,16),G=typeof cancelAnimationFrame=="function"?cancelAnimationFrame:z=>clearTimeout(z),U=new ResizeObserver(()=>{L==null&&(L=P(()=>{L=null,k(z=>z+1)}))});return Array.from(M.children).forEach(z=>U.observe(z)),()=>{U.disconnect(),L!=null&&G(L)}},[w]),o.useLayoutEffect(()=>{const M=C.current,L=v.current;if(!M||!L)return;const P=D=>D.getBoundingClientRect().height||D.offsetHeight,G=new Map;y.current?.querySelectorAll("[data-chrome-section]").forEach(D=>{G.set(D.dataset.chromeSection??"",P(D))});const U=D=>P(L)-(G.get(D??"")??0),z=Array.from(M.children).map(D=>P(D)),q=[];e.forEach((D,R)=>{const I=q[q.length-1],W=I?e[I[0]]:void 0;W&&D.group!=null&&W.group===D.group&&W.section===D.section?I.push(R):q.push([R])});const $=[];let V=[],H=0;const T=()=>{V.length&&$.push(V),V=[],H=0};q.forEach(D=>{const R=D.reduce((W,ee)=>W+z[ee],0),I=U(e[D[0]].section);V.length&&e[V[0]].section!==e[D[0]].section&&T(),R>I?D.forEach(W=>{V.length&&H+z[W]>I+.01&&T(),V.push(W),H+=z[W]}):(V.length&&H+R>I+.01&&T(),D.forEach(W=>V.push(W)),H+=R)}),T(),h(D=>D&&D.shape===w&&JSON.stringify(D.pages)===JSON.stringify($)?D:{shape:w,pages:$})},[w,B,s,l,u,A]);const N=go,S=N,E=r??n.jsxs(n.Fragment,{children:[n.jsx("img",{src:S,alt:"IHAB",className:"report-doc__logo"}),"\xA9 IHAB, Inc. All rights reserved."]}),O=(M,L,P)=>({header:n.jsxs("div",{className:"report-doc__header",children:[n.jsx("h2",{className:"report-doc__title h3b",children:P!=null&&t?.[P]||null}),a]}),footer:n.jsxs("div",{className:"report-doc__footer caption-1",children:[n.jsx("span",{className:"report-doc__footer-left",children:E}),n.jsx("span",{className:"report-doc__page-no",children:i(M,L)})]})}),F=Array.from(new Set(e.map(M=>M.section??""))),Y={...s?{"--report-page-w":s}:null,...l?{"--report-page-h":l}:null,...u?{"--report-margin":u}:null,...d};return n.jsxs("div",{ref:p,className:we("report-doc",c),style:Y,tabIndex:x?0:void 0,role:x?"group":void 0,"aria-label":x?m("report.previewRegion","\uBCF4\uACE0\uC11C \uBBF8\uB9AC\uBCF4\uAE30"):void 0,children:[n.jsxs("div",{className:"report-doc__measure","aria-hidden":!0,children:[n.jsx("div",{ref:v,className:"report-doc__ruler"}),n.jsx("div",{ref:y,children:F.map(M=>{const L=O(1,1,M||void 0);return n.jsxs("div",{"data-chrome-section":M,children:[L.header,L.footer]},M)})}),n.jsx("div",{ref:C,className:"report-doc__measure-blocks",children:e.map(M=>n.jsx("div",{children:M.content},M.id))})]}),b&&n.jsx("div",{className:"report-doc__pages",children:b.map((M,L)=>{const{header:P,footer:G}=O(L+1,b.length,e[M[0]].section);return n.jsxs("section",{className:"report-doc__page",children:[P,M.map(U=>n.jsx("div",{children:e[U].content},e[U].id)),G]},L)})})]})}function H7({title:e,fields:t,columns:a=4,className:r,style:i}){return n.jsxs("div",{className:we("report-info",r),style:{"--report-info-cols":String(a),...i},children:[e&&n.jsx("p",{className:"report-info__title h5b",children:e}),n.jsx("div",{className:"report-info__grid",children:t.map((s,l)=>n.jsxs("div",{className:"report-info__field body-2",children:[n.jsx("span",{className:"report-info__label body-3",children:s.label}),n.jsx("span",{className:"report-info__value",children:s.value})]},l))})]})}const Qn=new Map;let Ar=null;const z7=12;function V7(e){for(let t=e.parentElement;t&&t!==document.body;t=t.parentElement){const a=window.getComputedStyle(t);if(a.transform&&a.transform!=="none"||a.filter&&a.filter!=="none"||a.perspective&&a.perspective!=="none"||/paint|layout|strict|content/.test(a.contain||""))return t}return document}function Br(){const e=new Map;for(const t of Qn.keys()){if(!t.isConnected)continue;const a=V7(t),r=e.get(a)??[];r.push(t),e.set(a,r)}for(const t of e.values()){t.sort((r,i)=>r.compareDocumentPosition(i)&Node.DOCUMENT_POSITION_FOLLOWING?-1:1);let a=0;for(const r of t){a>0?r.style.setProperty("--update-alert-stack-offset",`${a}px`):r.style.removeProperty("--update-alert-stack-offset");const i=r.getBoundingClientRect().height;i>0&&(a+=i+z7)}}}function W7(e){return typeof window>"u"?()=>{}:(Qn.set(e,(Qn.get(e)??0)+1),Qn.get(e)===1&&typeof ResizeObserver<"u"&&(Ar??(Ar=new ResizeObserver(()=>Br())),Ar.observe(e)),Br(),()=>{const t=(Qn.get(e)??1)-1;if(t>0){Qn.set(e,t),Br();return}Qn.delete(e),Ar?.unobserve(e),e.style.removeProperty("--update-alert-stack-offset"),Br()})}function q7({title:e,message:t,actionLabel:a,onAction:r,icon:i,onClose:s,className:l=""}){const{t:u}=xe.useTranslation(),c=a??u("common.update","\uC5C5\uB370\uC774\uD2B8"),d=o.useRef(null),m=o.useRef(!1);return o.useLayoutEffect(()=>{const p=d.current,C=p?.parentElement?.closest(".update-alert-stack")??p,y=C?W7(C):null;return()=>{y?.(),m.current&&p&&p.contains(document.activeElement)&&Ja(p)}},[]),n.jsxs("div",{ref:d,className:we("update-alert",l),role:"alert",children:[s&&n.jsx("button",{type:"button",className:"update-alert__close",onClick:()=>{m.current=!0,s()},"aria-label":u("common.close","\uB2EB\uAE30"),children:"\xD7"}),n.jsxs("div",{className:"update-alert__top",children:[n.jsx("div",{className:"update-alert__icon",children:i??n.jsx(ws,{size:20,strokeWidth:2})}),n.jsxs("div",{className:"update-alert__body",children:[n.jsx("div",{className:"update-alert__title h4",children:e}),n.jsx("div",{className:"update-alert__message body-3",children:t})]})]}),r&&n.jsx(me,{htmlType:"button",size:32,variant:"main",shape:"pill",className:"update-alert__action",onClick:r,children:c})]})}function U7({title:e,titleLevel:t=3,description:a,topActions:r,children:i,footerLeft:s,footerRight:l,ariaLabel:u,onClick:c,draggable:d,onDragStart:m,onDragEnd:p,className:C}){const y=t?`h${t}`:"div",v=s!=null||l!=null,g=i!=null&&i!==!1,h=o.useCallback(x=>{c&&x.target===x.currentTarget&&(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),c())},[c]);return n.jsxs("div",{className:we("training-card",c?"training-card--clickable":"",C),onClick:c,onKeyDown:c?h:void 0,role:c?"button":void 0,"aria-label":c?u??(typeof e=="string"?e:void 0):void 0,tabIndex:c?0:void 0,draggable:d,onDragStart:m,onDragEnd:p,children:[n.jsxs("div",{className:"training-card__header",children:[n.jsxs("div",{className:"training-card__title-row",children:[typeof e=="string"?n.jsx(y,{className:"training-card__title h4",children:e}):e,r!=null&&n.jsx("div",{className:"training-card__top-actions",onClick:x=>x.stopPropagation(),children:r})]}),a!=null?typeof a=="string"?n.jsx("p",{className:"training-card__description body-3",children:a}):a:n.jsx("p",{className:"training-card__description body-3","aria-hidden":"true",children:" "})]}),g&&n.jsx("div",{className:"training-card__body",children:i}),v&&n.jsxs("div",{className:"training-card__footer",children:[s!=null&&n.jsx("div",{className:"training-card__footer-left",children:s}),l!=null&&n.jsx("div",{className:"training-card__meta",children:l})]})]})}function G7({title:e,titleLevel:t=3,count:a,collapsed:r=!1,onToggle:i,beforeSort:s,sort:l,actions:u,empty:c=!1,emptyContent:d,dragOver:m=!1,onDragOver:p,onDragLeave:C,onDrop:y,children:v,className:g}){const{t:h}=xe.useTranslation(),x=o.useId(),f=t?`h${t}`:"span",w=i!=null,b=we("training-card-group",m&&"training-card-group--dragover",r&&"training-card-group--collapsed",w&&"training-card-group--collapsible",g);return n.jsxs("div",{className:b,onDragOver:p,onDragLeave:C,onDrop:y,role:typeof e=="string"&&e?"group":void 0,"aria-labelledby":typeof e=="string"&&e?x:void 0,children:[n.jsxs("header",{className:"training-card-group__header",children:[w&&n.jsx(me,{htmlType:"button",size:40,type:"dot",variant:"transparent-gray",useBorder:!1,icon:r?"chevron-right":"chevron-down",ariaLabel:typeof e=="string"&&e?r?h("common.expandFor",{name:e}):h("common.collapseFor",{name:e}):r?h("common.expand","\uD3BC\uCE58\uAE30"):h("common.collapse","\uC811\uAE30"),className:"training-card-group__chevron","aria-expanded":!r,onClick:i}),typeof e=="string"?n.jsx(f,{id:x,className:"training-card-group__title h5b",children:e}):e,a!==void 0&&n.jsx("span",{className:"training-card-group__count body-3b",children:a}),(s!=null||l||u!=null)&&n.jsxs("span",{className:"training-card-group__actions",onClick:B=>B.stopPropagation(),children:[s,l&&n.jsx(pn,{size:40,options:l.options,value:l.value,placeholder:l.placeholder,onChange:l.onChange,ariaLabel:typeof e=="string"&&e?h("common.sortFor",{name:e}):void 0}),u]})]}),!r&&(c?n.jsx("div",{className:"training-card-group__empty body-3",children:d}):n.jsx("div",{className:"training-card-group__grid",children:v}))]})}const K7="speechear:saved_word_tables";function Y7(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&Array.isArray(t.items)}function Z7(){try{const e=localStorage.getItem(K7);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(Y7):[]}catch{return[]}}function zc(e){return{label:e.word,subLabel:e.pronunciation,colloquialLabel:e.colloquialPronunciation,homonum:e.homonum,grade:e.grade,syllables:[...e.word].length,pos:e.pos,wordType:e.wordType}}function ps(e){return e.map(t=>t.homonum!=null?`${t.word}#${t.homonum}`:t.word).join("|")}function X7(e){const t=new Set;return e.map(a=>{let r=a.id;for(let i=2;t.has(r);i++)r=`${a.id}~${i}`;return t.add(r),r===a.id?a:{...a,id:r}})}function J7({title:e,titleIcon:t,disc:a,filterTitle:r,filterCollapsible:i,filterDefaultCollapsed:s,filterCollapsed:l,onFilterCollapsedChange:u,filterHeaderSummary:c,brand:d,code:m,items:p,onSaveComplete:C,onLoad:y,onRemoveItem:v,onReset:g,resetLabel:h,saveButtonLabel:x,secondarySaveButtonLabel:f,onReorder:w,showCellCount:b,onAddItem:B,className:_,renderSavePopup:A,renderWordSearch:k,hideControls:N,saveOnly:S,tableName:E,nameValue:O,onNameChange:F,descriptionValue:Y,onDescriptionChange:M,namePlaceholder:L,descriptionPlaceholder:P,existingNames:G,editingName:U,onCancel:z,initialItemsPerPage:q,renderCellAction:$,actionsLeftExtra:V}){const{t:H}=xe.useTranslation(),T=h??H("wordPrint.clearAllSelection","\uBAA8\uB450 \uC120\uD0DD \uD574\uC81C"),D=p===void 0,R=!!F,[I,W]=o.useState([]),ee=(O??"").trim(),oe=ee||(L??"").trim(),ce=(Y??"").trim()||(P??"").trim(),J=(G??[]).map(ae=>ae.trim().toLowerCase()),re=[U?.trim().toLowerCase(),...I].filter(ae=>!!ae),Ne=[...J];for(const ae of re){const be=Ne.indexOf(ae);be!==-1&&Ne.splice(be,1)}const K=ee!==""&&Ne.includes(ee.toLowerCase()),[Q,pe]=o.useState(Array(4).fill(null)),[De,ye]=o.useState(4),[ne,le]=o.useState(null),Ce=Q.slice(0,De),ge=!!d?.show,[fe,$e]=o.useState(!0),[Ve,je]=o.useState(!0),Fe=d&&{...d,top:fe,bottom:Ve},[qe,mt]=o.useState("landscape"),[ct,rt]=o.useState(["image","word","standardPron"]),[Ct,Be]=o.useState("show"),[We,_e]=o.useState(!0),[Ue,Ae]=o.useState(!0),Te=o.useRef(null),Se=o.useRef([]),[Xe,Qe]=o.useState(q==="all"?Number.POSITIVE_INFINITY:q??8),[dt,ht]=o.useState("right"),[wt,ft]=o.useState(!1),[Nt,gt]=o.useState(!1),{toastMessage:it,toastType:Ke,showWarning:se,clearToast:ke}=_l("warning"),ze=o.useCallback(()=>le(null),[le]);B&&!D&&!b&&Zt("word-table-block-add-without-cell-count",'[WordTableBlock] \uD45C\uC2DC \uBAA8\uB4DC\uC5D0\uC11C onAddItem \uC740 showCellCount \uC640 \uD568\uAED8 \uC918\uC57C "\uCD94\uAC00\uD558\uAE30" \uCE78\uC774 \uC0DD\uAE34\uB2E4.');const[nt,Ie]=o.useState(()=>Math.max(p?.length??1,1)),Ge=D?De:b?Math.max(nt,p?.length??1,1):Math.max(p?.length??0,1),{width:bt,height:Re}=pa[qe],tt=!D&&!b,xt=p?.length??0,Mt=Math.min(Xe,Math.max(xt,1)),et=tt?Mt:Ge,ot=tt?Su(p??[],et):null,lt=!!ot&&ot.length>1,st=D?Ce.some(ae=>ae!==null&&ae.length>1):(p??[]).some(ae=>(ae.words??[]).length>1),jt=E?.trim()||`${Ai(Ba())} ${st?H("wordTable.printFileNamePair","\uB300\uB9BD\uC30D\uD45C"):H("wordTable.printFileNameSingle","\uB2E8\uC5B4\uD45C")}`,Ht=o.useCallback(()=>lt?Se.current.filter(ae=>ae!==null):Te.current?[Te.current]:[],[lt]),{print:mn,openNewWindow:hn,downloadHtml:Tn}=Wo({getElements:Ht,paperW:bt,paperH:Re,fileName:jt,onPopupBlocked:()=>{se(H("wordTable.popupBlocked","\uD31D\uC5C5\uC774 \uCC28\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uC124\uC815\uC5D0\uC11C \uD31D\uC5C5\uC744 \uD5C8\uC6A9\uD574 \uC8FC\uC138\uC694."))}}),On=ae=>{ye(ae),pe(be=>be.length>=ae?be:[...be,...Array(ae-be.length).fill(null)]),le(null)},Hn=ae=>{pe(be=>{const Le=[...be];return Le[ae]=null,Le}),ne===ae&&le(null)},Pt=ae=>{if(ne===null)return;const be=ne;pe(He=>{const ut=[...He];return ut[be]=ae.length>0?ae:null,ut});const Le=Ce.findIndex((He,ut)=>ut>be&&He===null);le(Le!==-1?Le:null)},vn=D?Ce.some(ae=>ae?.some(be=>!!be.colloquialPronunciation)):(p??[]).some(ae=>(ae.words??[]).some(be=>!!be.colloquialLabel)),Ft=o.useMemo(()=>aa()?D?Q.slice(0,De).flatMap(ae=>(ae??[]).map(be=>[be.word,be.homonum])):(p??[]).flatMap(ae=>(ae.words??[]).map(be=>[be.label,be.homonum])):[],[D,Q,De,p]),[zt,Mn]=o.useState(!1);o.useEffect(()=>{if(Ft.length===0)return;let ae=!1;return Promise.all(Ft.map(([be,Le])=>di(be,Le))).then(be=>{ae||Mn(be.some(Boolean))},()=>{}),()=>{ae=!0}},[Ft]);const on=Ft.length>0&&zt,xn=o.useMemo(()=>[...D||b?[{label:H("wordTable.filter.columns","\uCE78 \uC218"),items:A5.map(ae=>({value:`${ae}\uCE78`,displayLabel:H("wordTable.filter.column",{count:ae})})),display:"segmented"}]:[],...tt&&(p?.length??0)>0?[Gu(H,{hasPairs:st,itemCount:xt})]:[],...lt?[B5(H)]:[]],[H,D,b,tt,p?.length,st,xt,lt]),zn={...D||b?{[H("wordTable.filter.columns","\uCE78 \uC218")]:`${Ge}\uCE78`}:{},...tt&&(p?.length??0)>0?{[H(st?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")]:`${Mt}\uAC1C`}:{},...lt?{[H("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")]:dt}:{}},_n=(ae,be)=>{be===H("wordTable.filter.columns","\uCE78 \uC218")?D?On(parseInt(ae)):Ie(parseInt(ae)):be===H(st?"wordTable.filter.itemsPerPagePair":"wordTable.filter.itemsPerPageWord")?Qe(Ku(parseInt(ae),xt)):be===H("wordTable.filter.pageNumber","\uD398\uC774\uC9C0 \uBC88\uD638")&&ht(Yu(ae))},Vt=D?X7(Ce.filter(ae=>ae!==null&&ae.length>0).map(ae=>({id:ps(ae),words:ae.map(zc)}))):p??[],Lt=()=>{D&&pe(ae=>ae.length>De?ae.slice(0,De):ae)},Wt=(ae=!1)=>{if(gt(ae),R&&C){const be=oe.trim().toLowerCase();be&&W(Le=>Le.includes(be)?Le:[...Le,be]),C(oe,Vt,ce||void 0,ae),Lt();return}if(S&&C){C("",Vt,void 0,ae),Lt();return}if(C){ft(!0);return}Tn()},[Cn,It]=o.useState(!1),[sn,Dt]=o.useState(""),ie=sn.trim(),ve=ie!==""&&J.includes(ie.toLowerCase()),Me=()=>{Dt(oe?H("wordTable.save.copyName",{name:oe,defaultValue:"{{name}} (\uBCF5\uC0AC)"}):""),It(!0)},Je=()=>{!ie||ve||!C||(C(ie,Vt,ce||void 0,!0),Lt(),It(!1))},Oe=Vt.length===0,Ye=Oe||R&&(oe===""||K),X=()=>{if(Oe){se(H("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."));return}if(R&&oe===""){se(H("wordTable.save.nameRequired","\uD45C \uC774\uB984\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694."));return}R&&K&&se(H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."))},de=n.jsx(ma,{items:Vt,orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:Ge});return n.jsxs(n.Fragment,{children:[n.jsxs(da,{type:"page",icon:t,title:e,disc:a,className:we("word-table-block",_),children:[Cn&&n.jsx(Fn,{size:"small",title:f??H("wordTable.saveAsNewButton","\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5"),onClose:()=>It(!1),footer:({closeWithAnimation:ae})=>n.jsxs(n.Fragment,{children:[n.jsx(me,{htmlType:"button",size:48,type:"bar",label:H("common.cancel","\uCDE8\uC18C"),onClick:ae}),n.jsx(me,{htmlType:"button",size:48,type:"bar",variant:"main",label:H("common.save","\uC800\uC7A5"),disabled:!ie||ve,onClick:Je})]}),children:n.jsx(Zn,{label:H("wordTable.save.nameLabel","\uC774\uB984"),value:sn,onChange:Dt,placeholder:H("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),maxLength:40,size:48,fullWidth:!0,autoFocus:!0,onEnter:Je,error:ve?H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0})}),wt&&C&&A?.({defaultName:typeof e=="string"?e:H("wordTable.defaultName","\uB2E8\uC5B4 \uD45C"),preview:de,previewW:bt,previewH:Re,items:Vt,existingNames:Z7().map(ae=>ae.name),saveAsNew:Nt,onSave:(ae,be)=>{C(ae,Vt,be,Nt),Lt(),ft(!1)},onCancel:()=>ft(!1)}),(D||B)&&ne!==null&&k?.({cellIndex:ne,onConfirm:D?Pt:ae=>{if(B){const be=ae[0];if(be){const Le=new Set((p??[]).map(ut=>ut.id));let He=ps([be]);for(let ut=2;Le.has(He);ut++)He=`${ps([be])}~${ut}`;B({id:He,words:[zc(be)]})}}le(null)},onClose:ze}),!N&&n.jsx(Oo,{title:r,collapsible:i,defaultCollapsed:s,collapsed:l,onCollapsedChange:u,headerSummary:c,hasImage:on,hasColloquial:vn,contentTypes:ct,orientation:qe,showOutline:We,cutLine:Ct,showDivLine:Ue,setters:{setContentTypes:rt,setOrientation:mt,setShowOutline:_e,setCutLine:Be,setShowDivLine:Ae,setShowTopInfo:$e,setShowBottomInfo:je},showCutLine:(tt?et:Ge)>1,showDivLine2:st,middleSections:xn,extraSelected:zn,onExtraSelect:_n,showPaperBands:ge,showTopInfo:fe,showBottomInfo:Ve}),lt&&ot?n.jsx("div",{className:"word-table-block__pages",children:ot.map((ae,be)=>n.jsx(ma,{orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:et,items:ae,onRemoveItem:v,onReorder:w&&((Le,He)=>w(Le+be*et,He+be*et)),renderCellAction:$&&((Le,He)=>$(Le+be*et,He)),brand:Fe,code:m,contentRef:Le=>{Se.current[be]=Le},pageNumber:{current:be+1,total:ot.length},pageNumberPosition:dt},be))}):n.jsx(ma,{orientation:qe,contentTypes:ct,cutLine:Ct,showOutline:We,showDivLine:Ue,count:Ge,items:D?void 0:p??[],editCells:D?Ce:void 0,activeCell:ne,onActivateCell:D||B?le:void 0,onRemoveCell:D?Hn:void 0,onRemoveItem:D?void 0:v,onReorder:D?void 0:w,renderCellAction:D?void 0:$,brand:Fe,code:m,showFillerAdd:!!B,contentRef:Te}),!N&&!S&&(g||V!=null)&&n.jsxs("div",{className:"word-table-block__table-actions",children:[g&&n.jsx(me,{htmlType:"button",size:48,type:"bar",label:T,onClick:g}),V]}),R&&!N&&n.jsxs(br,{size:"medium",labelWidth:64,useBorder:!1,useRowBorder:!1,className:"word-table-block__meta",children:[n.jsx(Sn,{variant:"custom",label:H("wordTable.save.nameLabel","\uC774\uB984"),required:!0,align:"vertical",useFullWidth:!0,children:n.jsx(Zn,{required:!0,value:O??"",onChange:F,placeholder:L?L+H("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):H("wordTable.save.placeholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC81C\uBAA9\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:H("wordTable.save.nameLabel","\uC774\uB984"),maxLength:40,size:48,fullWidth:!0,error:K?H("wordTable.save.duplicateName","\uC774\uBBF8 \uC0AC\uC6A9 \uC911\uC778 \uC774\uB984\uC785\uB2C8\uB2E4."):void 0,onKeyDown:ae=>{(ae.key==="Tab"&&!ae.shiftKey||ae.key===" ")&&!(O??"").trim()&&(L??"").trim()&&(ae.preventDefault(),F?.(L??""))}})}),n.jsx(Sn,{variant:"custom",label:H("wordTable.save.descriptionLabel","\uC124\uBA85"),align:"vertical",useFullWidth:!0,children:n.jsx(Zn,{value:Y??"",onChange:M,placeholder:P?P+H("wordTable.save.autoFillHint"," (Tab \uB610\uB294 space \uC785\uB825\uC2DC \uC790\uB3D9 \uC785\uB825)"):H("wordTable.save.descriptionPlaceholder","\uC774 \uB2E8\uC5B4\uD45C\uC5D0 \uB300\uD55C \uC124\uBA85\uC744 \uC785\uB825\uD558\uC138\uC694."),ariaLabel:H("wordTable.save.descriptionLabel","\uC124\uBA85"),maxLength:200,multiline:!0,rows:2,fullWidth:!0,onKeyDown:ae=>{(ae.key==="Tab"&&!ae.shiftKey||ae.key===" ")&&!(Y??"").trim()&&(P??"").trim()&&(ae.preventDefault(),M?.(P??""))}})})]})]}),!N&&n.jsxs("div",{className:"word-table-block__actions",children:[n.jsxs("div",{className:"word-table-block__actions-left",children:[!S&&y&&n.jsx(me,{htmlType:"button",size:40,type:"bar",label:H("wordTable.load","\uBD88\uB7EC\uC624\uAE30"),onClick:y}),!S&&n.jsx(me,{htmlType:"button",size:40,type:"bar",label:H("wordTable.openNewWindow","\uC0C8 \uCC3D\uC73C\uB85C \uBCF4\uAE30"),onClick:hn})]}),n.jsxs("div",{className:"word-table-block__actions-right",children:[z&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:H("common.cancel","\uCDE8\uC18C"),onClick:z}),!S&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:H("wordTable.print","\uC778\uC1C4\uD558\uAE30"),onClick:mn}),f&&n.jsx(me,{htmlType:"button",size:"56",type:"bar",label:f,onClick:()=>R?Me():Wt(!0),disabled:Oe,onDisabledClick:()=>{se(H("wordTable.emptyItems","\uB2E8\uC5B4\uB97C 1\uAC1C \uC774\uC0C1 \uCD94\uAC00\uD574\uC8FC\uC138\uC694."))}}),n.jsx(me,{htmlType:"button",size:"56",type:"bar",variant:"main",label:x??H("wordTable.saveButton","\uC800\uC7A5\uD558\uAE30"),onClick:()=>Wt(!1),disabled:Ye,onDisabledClick:X})]})]}),n.jsx(ua,{message:it,type:Ke,onClose:ke})]})}function Vc({items:e,className:t}){const a=e.length,r=a<=3?1:2,i=Math.ceil(a/r)||1,s=r*i;return n.jsx("div",{className:we("word-table-thumb",t),style:{gridTemplateColumns:`repeat(${r}, 1fr)`},children:Array.from({length:s},(l,u)=>{const c=e[u];return c?n.jsx("div",{className:"word-table-thumb__cell",children:(c.words?.length?c.words:[{label:c.id}]).map((d,m)=>n.jsxs(o.Fragment,{children:[m>0&&n.jsx("span",{className:"word-table-thumb__divider"}),n.jsx("span",{className:"word-table-thumb__word body-3",children:d.label})]},m))},u):n.jsx("div",{className:"word-table-thumb__cell word-table-thumb__cell--empty"},u)})})}function Q7({items:e,name:t,description:a,createdAt:r,code:i,published:s,publishedLabel:l,shared:u,sharedLabel:c,isNew:d,publisherName:m,publishedAt:p,likeCount:C,downloadCount:y,onPublisherClick:v,selected:g,onClick:h,onMore:x,titleNode:f,className:w}){const{t:b}=xe.useTranslation(),B=f!=null,_=m!=null||p!=null||C!=null||y!=null,A=k=>{k.target===k.currentTarget&&!B&&(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),h?.())};return n.jsxs("div",{className:we("word-table-button",g?"word-table-button--selected":"",_?"":"word-table-button--no-footer",w),role:"button",tabIndex:0,"aria-label":i?`${t} (${i})`:t,onClick:B?void 0:h,onKeyDown:A,children:[d&&n.jsx("span",{className:"word-table-button__new-dot","aria-label":b("myWordTable.newBadge","\uC0C8\uB85C \uB9CC\uB4E0 \uD45C")}),n.jsx(Vc,{items:e,className:"word-table-button__thumb"}),n.jsxs("div",{className:"word-table-button__info",children:[n.jsxs("div",{className:"word-table-button__info-text",children:[f??n.jsx("div",{className:"word-table-button__title h4",children:t}),a&&n.jsx("div",{className:"word-table-button__desc body-3",children:a})]}),x&&!B&&n.jsx(me,{htmlType:"button",className:"word-table-button__more",size:32,type:"dot",variant:"transparent-gray",useBorder:!1,icon:"ellipsis",ariaLabel:b("common.moreFor",{name:t}),onClick:k=>{k.stopPropagation(),x(k)}})]}),(i||r||s||u)&&n.jsxs("div",{className:"word-table-button__meta-row",children:[n.jsx("span",{className:"word-table-button__meta-left",children:n.jsx("span",{className:"word-table-button__meta caption-1",children:r?wi(r,b):""})}),n.jsxs("span",{className:"word-table-button__meta-right",children:[(s||u)&&n.jsxs("span",{className:"word-table-button__badges",children:[s&&n.jsx(kt,{className:"word-table-button__badge",size:"small",variant:"main",fill:"soft",iconLeft:"book-marked",label:l??b("myWordTable.publishedBadge","\uBC1C\uD589\uB428")}),u&&n.jsx(kt,{className:"word-table-button__badge",size:"small",fill:"soft",iconLeft:"link",label:c??b("myWordTable.sharedBadge","\uACF5\uC720 \uC911")})]}),i&&n.jsx("span",{className:"word-table-button__code caption-1",children:i})]})]}),_&&n.jsxs("div",{className:"word-table-button__footer",children:[n.jsxs("span",{className:"word-table-button__store-by",children:[m&&(v?n.jsx("button",{className:"training-card__publisher body-4",type:"button","aria-label":b("wordTable.publisherFilter",{name:m,defaultValue:"{{name}} \uAC8C\uC2DC\uD55C \uAC83\uB9CC \uBCF4\uAE30"}),onClick:k=>{k.stopPropagation(),v()},children:m}):n.jsx("span",{className:"training-card__publisher training-card__publisher--static body-4",children:m})),p&&n.jsx("span",{className:"training-card__date body-4",children:wi(p,b)})]}),n.jsxs("span",{className:"word-table-button__store-stats",children:[C!=null&&n.jsx(kt,{size:"small",fill:"soft",variant:"like",iconLeft:"heart",label:String(C),"aria-label":b("common.likeCount",{count:C,defaultValue:`\uC88B\uC544\uC694 ${C}`})}),y!=null&&n.jsx(kt,{size:"small",fill:"soft",variant:"main",iconLeft:"download",label:String(y),"aria-label":b("common.downloadCount",{count:y,defaultValue:`\uAC00\uC838\uAC04 \uC218 ${y}`})})]})]})]})}/**
|
|
1054
1054
|
* @license lucide-react v1.38.0 - ISC
|
|
1055
1055
|
*
|
|
1056
1056
|
* This source code is licensed under the ISC license.
|
|
1057
1057
|
* See the LICENSE file in the root directory of this source tree.
|
|
1058
|
-
*/const
|
|
1058
|
+
*/const e8=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]],t8=te("image",e8);/**
|
|
1059
1059
|
* @license lucide-react v1.38.0 - ISC
|
|
1060
1060
|
*
|
|
1061
1061
|
* This source code is licensed under the ISC license.
|
|
1062
1062
|
* See the LICENSE file in the root directory of this source tree.
|
|
1063
|
-
*/const t8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],n8=te("circle-x",t8);function a8(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function ps({icon:e,label:t,state:a,pct:r,subText:i}){const{t:s}=xe.useTranslation(),l=a==="done",u=a==="pending",c=a==="error",d=l?100:r??0;return n.jsxs("div",{className:"wdup-phase-card",children:[n.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":c?" wdup-phase-card__icon--error":""}`,children:l?n.jsx(ks,{size:22,color:"white",strokeWidth:2.5}):c?n.jsx(n8,{size:22,color:"white",strokeWidth:2.5}):n.jsx("span",{className:`wdup-phase-card__icon-inner${u?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),n.jsxs("div",{className:"wdup-phase-card__body",children:[n.jsxs("div",{className:"wdup-phase-card__top",children:[n.jsx("span",{className:`wdup-phase-card__label body-2${u?" wdup-phase-card__label--pending":""}`,children:t}),l?n.jsx(kt,{variant:"sub",fill:"soft",size:"small",label:s("common.done","\uC644\uB8CC")}):c?n.jsx(kt,{variant:"danger",fill:"soft",size:"small",label:s("common.failed","\uC2E4\uD328")}):(i||r!==void 0)&&n.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[i,i&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!u&&n.jsx("div",{className:"wdup-bar",children:n.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":c?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||c?`${c?100:d}%`:void 0}})})]})]})}function r8({title:e,progress:t,onDone:a,onRetry:r,onClose:i,inline:s}){const{t:l}=xe.useTranslation(),{phase:u,error:c,wordCount:d,imagePage:m,imageDone:p,imageTotal:C,pairPercent:_}=t,y=a8(u),g=u==="done",h=!!c;function v(A){return h&&y===A?"error":y>A?"done":y===A?"active":"pending"}const f=v(1),w=v(2),b=v(3),B=u==="image-match"&&C?Math.round((p??0)/C*100):void 0,x=o.useMemo(()=>{if(w!=="done"){if(u==="image-list")return l("wordData.checkingPage",{page:m??1});if(u==="image-match"&&C)return l("wordData.imageCount",{done:Xr(p),total:Xr(C)})}},[w,u,m,C,p,l]);return n.jsx(Fn,{inline:s,className:"popup--word-data-update",title:e,footer:h&&r?n.jsx(me,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):h?n.jsx(me,{htmlType:"button",size:56,variant:"main",onClick:i??a,children:l("common.close","\uB2EB\uAE30")}):n.jsx(me,{htmlType:"button",size:56,variant:"main",disabled:!g,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:n.jsxs("div",{className:"wdup-cards",children:[n.jsx(ps,{icon:n.jsx(xs,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:f,subText:f==="active"?l("wordData.downloadingCount",{n:Xr(d),count:d}):void 0}),n.jsx(ps,{icon:n.jsx(e8,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:w,pct:B,subText:x}),n.jsx(ps,{icon:n.jsx(As,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:b,pct:b==="active"?_??0:void 0,subText:void 0})]})})}function o8({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=xe.useTranslation(),[r,i]=o.useState(null),[s,l]=o.useState(null),u=_=>{let y=null;_==="noise"?y={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:_==="short"?y={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:_==="long"?y={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:_==="order"&&(y={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),l(y),i(_)},c=o.useCallback(()=>{i(null),l(null)},[]),d=o.useCallback(()=>u("noise"),[]),m=o.useCallback(()=>u("short"),[]),p=o.useCallback(()=>u("long"),[]),C=o.useCallback(()=>u("order"),[]);return e?n.jsxs("div",{className:"debug-result-launcher",children:[n.jsxs("div",{className:"debug-buttons",children:[n.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:C,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&s?t?.({score:s.score,contextsLength:s.contextsLength,results:s.results,onReplay:c,onClose:c}):null]}):null}exports.Accordion=zb,exports.ActionCard=db,exports.Alert=L4,exports.AppHeader=Kb,exports.AudioMeter=Do,exports.AudioPlayer=Jo,exports.Avatar=H4,exports.Badge=kt,exports.BarChart=jy,exports.BarChartControls=iu,exports.Board=oy,exports.BottomNav=Al,exports.BrandIdentity=Dl,exports.Breadcrumb=W4,exports.BulkBar=by,exports.Button=me,exports.CORE_VERSION=tb,exports.Calendar=Jy,exports.CardStep=Lc,exports.ChartLegend=wo,exports.ChartSection=Ao,exports.ChartTotal=Ia,exports.Checkbox=tu,exports.ChoiceChips=r3,exports.CircleBadge=S4,exports.CodeBox=fy,exports.ColorPicker=Y4,exports.CompanyMeta=dy,exports.ConfirmPopup=Ic,exports.ConfirmStep=jc,exports.ConfirmWithTextStep=Tc,exports.ContrastFilterPanel=k7,exports.CoreScope=pb,exports.CountTile=ty,exports.CouponInputPopup=D7,exports.DEFAULT_NOISE_SETTINGS=Va,exports.DatePicker=Ay,exports.DebugResultLauncher=o8,exports.DescriptionTooltip=Gn,exports.DeviceSideTable=Yy,exports.Dialog=ry,exports.Divider=j4,exports.Dropdown=pn,exports.EffectPartyPopper=us,exports.EffectPartyPopperHost=T7,exports.EmptyState=ub,exports.ErrorState=cb,exports.FILTER_ALL_VALUE=dn,exports.FileUpload=V4,exports.FilterPanel=Dn,exports.FilterSectionInfo=La,exports.Footer=o3,exports.GameIntro=Ly,exports.Header=Sl,exports.Icon=at,exports.IconGridMenu=a3,exports.IconRenderer=at,exports.InfoTooltip=An,exports.ItemActions=vy,exports.LEVEL_MAX=Ca,exports.LINE_CHART_HOVER_DELAY_MS=lu,exports.LandingBottomSticky=i3,exports.LandingHeader=s3,exports.LineChart=My,exports.ListPopup=N7,exports.ListenStep=Sc,exports.Loader=Fa,exports.MARKS=dr,exports.MARK_ICON=ku,exports.MARK_VARIANT=Nu,exports.MediaQueryOverrideContext=Li,exports.MenuTooltip=ja,exports.NOISE_RATIO_MAX=Oa,exports.NOISE_RATIO_STEP=nc,exports.NoisePlayerContext=Ko,exports.NoiseSettingsTooltip=_c,exports.NoticeBox=mb,exports.OrderListStep=Mc,exports.PASS_CARD_BG_VARS=Yn,exports.POS_LABEL=Su,exports.PROMO_BANNER_BG_COMPONENTS=pl,exports.PROMO_BANNER_BG_OPTIONS=vb,exports.PROMO_BANNER_BG_VARS=Na,exports.Page=vr,exports.PageTitle=M7,exports.Pagination=or,exports.Panel=br,exports.PanelGrid=Y3,exports.PanelRow=Sn,exports.PanelRowDevice=K3,exports.PassCard=Ol,exports.PassCardBg=k4,exports.PassCardBgIHAB=N4,exports.PassCardBgLeftColorGrid=E4,exports.PassCardBgTwoCircle=$l,exports.PaymentPlan=B4,exports.PersonCard=sy,exports.PhonemeFilterPanel=B7,exports.PhonemeSelectBlock=w7,exports.Popup=Fn,exports.ProgressBar=Hy,exports.ProgressIndicator=gu,exports.PromoBanner=Ib,exports.PromoBannerBgDark=Xi,exports.PromoBannerBgDeep=qi,exports.PromoBannerBgDiagonal=tl,exports.PromoBannerBgDots=al,exports.PromoBannerBgInstagram=dl,exports.PromoBannerBgMain=Ii,exports.PromoBannerBgNaver=ul,exports.PromoBannerBgOutline=ol,exports.PromoBannerBgRadial=Qi,exports.PromoBannerBgSoft=Hi,exports.PromoBannerBgSoftSub=Gi,exports.PromoBannerBgSub=Vi,exports.PromoBannerBgSuccess=il,exports.PromoBannerBgWarm=Yi,exports.PublicationCard=ly,exports.Radio=Wl,exports.RadioGroup=T4,exports.Rating=U4,exports.ReportDocument=I7,exports.ReportInfoPanel=O7,exports.RingChart=Ry,exports.SENTENCE_TRAINING_TYPES=Wo,exports.SearchSummary=P4,exports.Section=da,exports.SectionHeadFloat=au,exports.SectionHeader=cy,exports.SegmentedControl=gn,exports.ShortcutBadge=Vl,exports.SideNav=El,exports.Slider=mu,exports.SoundCompass=D4,exports.SplashLogo=uy,exports.StatChart=Py,exports.SummaryStrip=P7,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Ul,exports.Table=jo,exports.TableFilterPanel=Oo,exports.Tabs=F4,exports.TextBoxTooltip=gr,exports.TextField=Zn,exports.Timeline=iy,exports.Toast=ua,exports.Toggle=eu,exports.Toolbar=_o,exports.Tooltip=cn,exports.TooltipInfo=An,exports.TooltipTextBox=gr,exports.TopBanner=Ob,exports.TrainingBlock=e5,exports.TrainingBlockButton=yo,exports.TrainingBlockGrid=n5,exports.TrainingCard=q7,exports.TrainingCardGroup=U7,exports.TrainingPagePopup=In,exports.TrainingPagePopupBottom=wc,exports.TrainingPagePopupTitle=Ac,exports.TrainingResultPopup=Rc,exports.TrainingStep=Xn,exports.TrainingStepAudioPlayer=Jo,exports.TrainingStepBullet=hc,exports.TrainingStepCard=bc,exports.TrainingStepConfirm=es,exports.TrainingStepConfirmWithText=ts,exports.TrainingStepListen=ns,exports.TrainingStepOrderList=as,exports.TrainingStepTextBox=gc,exports.TrainingStepTitle=fc,exports.TrainingTooltip=Gl,exports.TrainingWordCard=$o,exports.UpdateAlert=W7,exports.WAVE_A_MAX=x3,exports.WAVE_H1_PX=Zo,exports.WAVE_HMAX_PX=v3,exports.WORD_LABEL_I18N_KEYS=p5,exports.WORD_TABLE_PAPER=pa,exports.WORD_TYPE_LABEL=ju,exports.WordDataProvider=R7,exports.WordDataUpdatePopup=r8,exports.WordImageTooltip=Fc,exports.WordSearchFilterPanel=A7,exports.WordSearchResultBlock=x7,exports.WordTable=ma,exports.WordTableBlock=X7,exports.WordTableButton=J7,exports.WordTablePopup=D5,exports.WordTableThumbnail=Vc,exports.buildMonthChartData=ky,exports.cellKey=P5,exports.cellLabel=R5,exports.cellsForLabels=Y5,exports.clearPassCardBgTheme=Nn,exports.clearPromoBannerBgTheme=Gt,exports.closeTrainingPopup=e7,exports.companyTypeLabel=L7,exports.createTrainingScenario=a7,exports.cx=we,exports.deriveNoiseContexts=u7,exports.derivePassCard=Tl,exports.draftValues=t3,exports.effectiveNoiseVolume=Uo,exports.effectiveSpeechVolume=rc,exports.expandSlashLabel=Io,exports.formatDuration=Z5,exports.getControlDateRange=$y,exports.getPayloadTimestamp=os,exports.getPromoBannerBgTheme=io,exports.getSelectedFromPayload=o7,exports.getSelectedText=s7,exports.getStepPayload=Ec,exports.getSteppedPayload=i7,exports.injectPassCardBgTheme=kn,exports.injectPromoBannerBgTheme=Ut,exports.isSelectionCorrect=l7,exports.labelOfCellKey=ec,exports.labelsForSave=$5,exports.levelToPct=u3,exports.markAfterClick=Bu,exports.marksForSave=Ro,exports.mergeNoiseSettings=za,exports.missesByType=q5,exports.nextFocus=H5,exports.nextMisses=W5,exports.noiseElementVolume=Go,exports.noiseRatioOf=Ha,exports.pageStartIndexes=Eu,exports.passCardBgIhabTheme=Hl,exports.passCardBgLeftColorGridTheme=zl,exports.passCardBgTwoCircleTheme=Ll,exports.pctToLevel=c3,exports.posLabels=Tu,exports.printWordTable=l5,exports.promoBannerBgDarkTheme=Zi,exports.promoBannerBgDeepTheme=Wi,exports.promoBannerBgDiagonalTheme=el,exports.promoBannerBgDotsTheme=nl,exports.promoBannerBgInstagramTheme=cl,exports.promoBannerBgMainTheme=Fi,exports.promoBannerBgNaverTheme=ll,exports.promoBannerBgOutlineTheme=rl,exports.promoBannerBgRadialTheme=Ji,exports.promoBannerBgSoftSubTheme=Ui,exports.promoBannerBgSoftTheme=Oi,exports.promoBannerBgSubTheme=zi,exports.promoBannerBgSuccessTheme=sl,exports.promoBannerBgWarmTheme=Ki,exports.recommendTables=G5,exports.regenerateUnpinned=e3,exports.removeItem=Q5,exports.resolveTrainingItems=n7,exports.resolveTrainingPopupMeta=kc,exports.reviewCells=j5,exports.reviewMeta=L5,exports.reviewSetPlan=U5,exports.reviewTableName=M5,exports.scoreKey=cr,exports.scoreSheetHeader=F5,exports.shouldConfirmDiscard=i5,exports.splitTrainingVariants=t7,exports.summarize=s5,exports.summarizeMisses=V5,exports.tableTrends=O5,exports.toDraft=X5,exports.toTrainingText=r7,exports.togglePin=J5,exports.uncoveredLabels=K5,exports.useAnchoredMenu=Sa,exports.useBarChartControl=su,exports.useCalendarMonth=nu,exports.useComboboxSuggestions=Jl,exports.useDiscardGuard=E7,exports.useFitScale=$u,exports.useNoisePlayer=mr,exports.useSoundCompassExam=Fb,exports.useToastLifecycle=Cu,exports.useWordData=$7,exports.useWordTableDisplaySettings=Ju,exports.useWordTablePrint=Vo,exports.waveBarPx=Cr,exports.waveBarVal=fr,exports.weakItems=I5,exports.withStepTimes=Nc,exports.wordTypeLabels=Mu;
|
|
1063
|
+
*/const n8=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]],a8=te("circle-x",n8);function r8(e){return{idle:0,"word-download":1,"image-list":2,"image-match":2,"pair-build":3,done:4}[e]??0}function ms({icon:e,label:t,state:a,pct:r,subText:i}){const{t:s}=xe.useTranslation(),l=a==="done",u=a==="pending",c=a==="error",d=l?100:r??0;return n.jsxs("div",{className:"wdup-phase-card",children:[n.jsx("div",{className:`wdup-phase-card__icon${l?" wdup-phase-card__icon--done":c?" wdup-phase-card__icon--error":""}`,children:l?n.jsx(Ns,{size:22,color:"white",strokeWidth:2.5}):c?n.jsx(a8,{size:22,color:"white",strokeWidth:2.5}):n.jsx("span",{className:`wdup-phase-card__icon-inner${u?" wdup-phase-card__icon-inner--pending":""}`,children:e})}),n.jsxs("div",{className:"wdup-phase-card__body",children:[n.jsxs("div",{className:"wdup-phase-card__top",children:[n.jsx("span",{className:`wdup-phase-card__label body-2${u?" wdup-phase-card__label--pending":""}`,children:t}),l?n.jsx(kt,{variant:"sub",fill:"soft",size:"small",label:s("common.done","\uC644\uB8CC")}):c?n.jsx(kt,{variant:"danger",fill:"soft",size:"small",label:s("common.failed","\uC2E4\uD328")}):(i||r!==void 0)&&n.jsxs("span",{className:"wdup-phase-card__sub body-3",children:[i,i&&r!==void 0?` \xB7 ${r}%`:r!==void 0?`${r}%`:""]})]}),!u&&n.jsx("div",{className:"wdup-bar",children:n.jsx("div",{className:`wdup-bar__fill${l?" wdup-bar__fill--done":c?" wdup-bar__fill--error":""}${a==="active"&&r===void 0?" wdup-bar__fill--indeterminate":""}`,style:{width:r!==void 0||l||c?`${c?100:d}%`:void 0}})})]})]})}function o8({title:e,progress:t,onDone:a,onRetry:r,onClose:i,inline:s}){const{t:l}=xe.useTranslation(),{phase:u,error:c,wordCount:d,imagePage:m,imageDone:p,imageTotal:C,pairPercent:y}=t,v=r8(u),g=u==="done",h=!!c;function x(A){return h&&v===A?"error":v>A?"done":v===A?"active":"pending"}const f=x(1),w=x(2),b=x(3),B=u==="image-match"&&C?Math.round((p??0)/C*100):void 0,_=o.useMemo(()=>{if(w!=="done"){if(u==="image-list")return l("wordData.checkingPage",{page:m??1});if(u==="image-match"&&C)return l("wordData.imageCount",{done:Xr(p),total:Xr(C)})}},[w,u,m,C,p,l]);return n.jsx(Fn,{inline:s,className:"popup--word-data-update",title:e,footer:h&&r?n.jsx(me,{htmlType:"button",size:56,variant:"main",onClick:r,children:l("common.retry","\uB2E4\uC2DC \uC2DC\uB3C4")}):h?n.jsx(me,{htmlType:"button",size:56,variant:"main",onClick:i??a,children:l("common.close","\uB2EB\uAE30")}):n.jsx(me,{htmlType:"button",size:56,variant:"main",disabled:!g,onClick:a,children:l("common.done","\uC644\uB8CC")}),children:n.jsxs("div",{className:"wdup-cards",children:[n.jsx(ms,{icon:n.jsx(_s,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseWordDownload","\uB2E8\uC5B4 \uB370\uC774\uD130 \uB2E4\uC6B4\uB85C\uB4DC"),state:f,subText:f==="active"?l("wordData.downloadingCount",{n:Xr(d),count:d}):void 0}),n.jsx(ms,{icon:n.jsx(t8,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phaseImageCheck","\uC774\uBBF8\uC9C0 \uD655\uC778"),state:w,pct:B,subText:_}),n.jsx(ms,{icon:n.jsx(Bs,{size:22,color:"var(--color-main, #29b6c8)",strokeWidth:1.8}),label:l("wordData.phasePairAnalysis","\uB2E8\uC5B4\uC30D \uBD84\uC11D"),state:b,pct:b==="active"?y??0:void 0,subText:void 0})]})})}function s8({enabled:e=!1,renderResultPopup:t}={}){const{t:a}=xe.useTranslation(),[r,i]=o.useState(null),[s,l]=o.useState(null),u=y=>{let v=null;y==="noise"?v={score:3,contextsLength:5,results:[{sentence:"\uBB38\uC7A5 A",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 B",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 C",judgement:!0,wording:"\uC798 \uB4E4\uB9BC",useAnswer:!1},{sentence:"\uBB38\uC7A5 D",judgement:null,wording:"\uC548 \uD568",useAnswer:!1},{sentence:"\uBB38\uC7A5 E",judgement:!1,wording:"\uC548 \uB4E4\uB9BC",useAnswer:!1}]}:y==="short"?v={score:2,contextsLength:3,results:[{sentence:"\uBE44\uBE54\uBC25 \uC124\uBA85",answer:"\uBE44\uBE54\uBC25",selected:"\uBE44\uBE54\uBC25",selectedText:"\uBE44\uBE54\uBC25",correct:!0},{sentence:"\uBCF4\uC308 \uC124\uBA85",answer:"\uBCF4\uC308",selected:"\uC871\uBC1C",selectedText:"\uC871\uBC1C",correct:!1},{sentence:"\uCE7C\uAD6D\uC218 \uC124\uBA85",answer:"\uCE7C\uAD6D\uC218",selected:void 0,selectedText:void 0,correct:void 0}]}:y==="long"?v={score:4,contextsLength:4,results:[{sentence:"\uAE34 \uC774\uC57C\uAE30 1",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 1",correct:!0},{sentence:"\uAE34 \uC774\uC57C\uAE30 2",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 2",selectedText:"\uC120\uD0DD \uD14D\uC2A4\uD2B8 2",correct:!1},{sentence:"\uAE34 \uC774\uC57C\uAE30 3",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 3",selectedText:void 0,correct:void 0},{sentence:"\uAE34 \uC774\uC57C\uAE30 4",answer:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",selectedText:"\uC815\uB2F5 \uD14D\uC2A4\uD2B8 4",correct:!0}]}:y==="order"&&(v={score:1,contextsLength:2,results:[{sentence:"\uC21C\uC11C \uBB38\uC81C 1",answer:"1,2,3",selectedText:"1,2,3",correct:!0},{sentence:"\uC21C\uC11C \uBB38\uC81C 2",answer:"A,B,C",selectedText:"B,A,C",correct:!1}]}),l(v),i(y)},c=o.useCallback(()=>{i(null),l(null)},[]),d=o.useCallback(()=>u("noise"),[]),m=o.useCallback(()=>u("short"),[]),p=o.useCallback(()=>u("long"),[]),C=o.useCallback(()=>u("order"),[]);return e?n.jsxs("div",{className:"debug-result-launcher",children:[n.jsxs("div",{className:"debug-buttons",children:[n.jsx("button",{type:"button",className:"debug-button",onClick:d,children:a("debug.showResult",{type:"Noise",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:m,children:a("debug.showResult",{type:"ShortStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:p,children:a("debug.showResult",{type:"LongStory",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})}),n.jsx("button",{type:"button",className:"debug-button",onClick:C,children:a("debug.showResult",{type:"Order",defaultValue:"{{type}} \uACB0\uACFC\uBCF4\uAE30"})})]}),r&&s?t?.({score:s.score,contextsLength:s.contextsLength,results:s.results,onReplay:c,onClose:c}):null]}):null}exports.Accordion=zb,exports.ActionCard=db,exports.Alert=L4,exports.AppHeader=Kb,exports.AudioMeter=Do,exports.AudioPlayer=Qo,exports.Avatar=H4,exports.Badge=kt,exports.BarChart=jy,exports.BarChartControls=lu,exports.Board=oy,exports.BottomNav=Bl,exports.BrandIdentity=Sl,exports.Breadcrumb=W4,exports.BulkBar=by,exports.Button=me,exports.CORE_VERSION=tb,exports.Calendar=Jy,exports.CardStep=Lc,exports.ChartLegend=wo,exports.ChartSection=Ao,exports.ChartTotal=Ia,exports.Checkbox=nu,exports.ChoiceChips=o3,exports.CircleBadge=S4,exports.CodeBox=fy,exports.ColorPicker=Y4,exports.CompanyMeta=dy,exports.ConfirmPopup=Ic,exports.ConfirmStep=jc,exports.ConfirmWithTextStep=Tc,exports.ContrastFilterPanel=N7,exports.CoreScope=pb,exports.CountTile=ty,exports.CouponInputPopup=S7,exports.DEFAULT_NOISE_SETTINGS=Va,exports.DatePicker=Ay,exports.DebugResultLauncher=s8,exports.DescriptionTooltip=Gn,exports.DeviceSideTable=Yy,exports.Dialog=ry,exports.Divider=j4,exports.Dropdown=pn,exports.EffectPartyPopper=cs,exports.EffectPartyPopperHost=M7,exports.EmptyState=ub,exports.ErrorState=cb,exports.FILTER_ALL_VALUE=dn,exports.FileUpload=V4,exports.FilterPanel=Dn,exports.FilterSectionInfo=La,exports.Footer=s3,exports.GameIntro=Ly,exports.Header=jl,exports.Icon=at,exports.IconGridMenu=r3,exports.IconRenderer=at,exports.InfoTooltip=An,exports.ItemActions=vy,exports.LEVEL_MAX=Ca,exports.LINE_CHART_HOVER_DELAY_MS=uu,exports.LandingBottomSticky=l3,exports.LandingHeader=i3,exports.LineChart=My,exports.ListPopup=E7,exports.ListenStep=Sc,exports.Loader=Fa,exports.MARKS=dr,exports.MARK_ICON=Nu,exports.MARK_VARIANT=Eu,exports.MediaQueryOverrideContext=$i,exports.MenuTooltip=ja,exports.NOISE_RATIO_MAX=Oa,exports.NOISE_RATIO_STEP=nc,exports.NoisePlayerContext=Yo,exports.NoiseSettingsTooltip=_c,exports.NoticeBox=mb,exports.OrderListStep=Mc,exports.PASS_CARD_BG_VARS=Yn,exports.POS_LABEL=ju,exports.PROMO_BANNER_BG_COMPONENTS=ml,exports.PROMO_BANNER_BG_OPTIONS=vb,exports.PROMO_BANNER_BG_VARS=Na,exports.Page=vr,exports.PageTitle=L7,exports.Pagination=or,exports.Panel=br,exports.PanelGrid=Z3,exports.PanelRow=Sn,exports.PanelRowDevice=Y3,exports.PassCard=Hl,exports.PassCardBg=k4,exports.PassCardBgIHAB=N4,exports.PassCardBgLeftColorGrid=E4,exports.PassCardBgTwoCircle=Rl,exports.PaymentPlan=B4,exports.PersonCard=sy,exports.PhonemeFilterPanel=k7,exports.PhonemeSelectBlock=A7,exports.Popup=Fn,exports.ProgressBar=Hy,exports.ProgressIndicator=bu,exports.PromoBanner=Ib,exports.PromoBannerBgDark=Ji,exports.PromoBannerBgDeep=Ui,exports.PromoBannerBgDiagonal=nl,exports.PromoBannerBgDots=rl,exports.PromoBannerBgInstagram=pl,exports.PromoBannerBgMain=Oi,exports.PromoBannerBgNaver=cl,exports.PromoBannerBgOutline=sl,exports.PromoBannerBgRadial=el,exports.PromoBannerBgSoft=zi,exports.PromoBannerBgSoftSub=Ki,exports.PromoBannerBgSub=Wi,exports.PromoBannerBgSuccess=ll,exports.PromoBannerBgWarm=Zi,exports.PublicationCard=ly,exports.Radio=ql,exports.RadioGroup=T4,exports.Rating=U4,exports.ReportDocument=O7,exports.ReportInfoPanel=H7,exports.RingChart=Ry,exports.SENTENCE_TRAINING_TYPES=qo,exports.SearchSummary=P4,exports.Section=da,exports.SectionHeadFloat=ru,exports.SectionHeader=cy,exports.SegmentedControl=gn,exports.ShortcutBadge=Wl,exports.SideNav=Dl,exports.Slider=hu,exports.SoundCompass=D4,exports.SplashLogo=uy,exports.StatChart=Py,exports.SummaryStrip=F7,exports.TRAINING_TOOLTIP_HOVER_DELAY_MS=Gl,exports.Table=jo,exports.TableFilterPanel=Oo,exports.Tabs=F4,exports.TextBoxTooltip=gr,exports.TextField=Zn,exports.Timeline=iy,exports.Toast=ua,exports.Toggle=tu,exports.Toolbar=_o,exports.Tooltip=cn,exports.TooltipInfo=An,exports.TooltipTextBox=gr,exports.TopBanner=Ob,exports.TrainingBlock=e5,exports.TrainingBlockButton=yo,exports.TrainingBlockGrid=n5,exports.TrainingCard=U7,exports.TrainingCardGroup=G7,exports.TrainingPagePopup=In,exports.TrainingPagePopupBottom=wc,exports.TrainingPagePopupTitle=Ac,exports.TrainingResultPopup=Rc,exports.TrainingStep=Xn,exports.TrainingStepAudioPlayer=Qo,exports.TrainingStepBullet=hc,exports.TrainingStepCard=bc,exports.TrainingStepConfirm=ts,exports.TrainingStepConfirmWithText=ns,exports.TrainingStepListen=as,exports.TrainingStepOrderList=rs,exports.TrainingStepTextBox=gc,exports.TrainingStepTitle=fc,exports.TrainingTooltip=Kl,exports.TrainingWordCard=$o,exports.UpdateAlert=q7,exports.WAVE_A_MAX=_3,exports.WAVE_H1_PX=Xo,exports.WAVE_HMAX_PX=x3,exports.WORD_LABEL_I18N_KEYS=p5,exports.WORD_TABLE_PAPER=pa,exports.WORD_TYPE_LABEL=Tu,exports.WordDataProvider=P7,exports.WordDataUpdatePopup=o8,exports.WordImageTooltip=Fc,exports.WordSearchFilterPanel=B7,exports.WordSearchResultBlock=_7,exports.WordTable=ma,exports.WordTableBlock=J7,exports.WordTableButton=Q7,exports.WordTablePopup=S5,exports.WordTableThumbnail=Vc,exports.buildMonthChartData=ky,exports.cellKey=F5,exports.cellLabel=P5,exports.cellsForLabels=Z5,exports.clearPassCardBgTheme=Nn,exports.clearPromoBannerBgTheme=Gt,exports.closeTrainingPopup=t7,exports.companyTypeLabel=$7,exports.createTrainingScenario=r7,exports.cx=we,exports.deriveNoiseContexts=c7,exports.derivePassCard=Ml,exports.draftValues=n3,exports.effectiveNoiseVolume=Go,exports.effectiveSpeechVolume=rc,exports.expandSlashLabel=Io,exports.formatDuration=X5,exports.getControlDateRange=$y,exports.getPayloadTimestamp=ss,exports.getPromoBannerBgTheme=io,exports.getSelectedFromPayload=s7,exports.getSelectedText=i7,exports.getStepPayload=Ec,exports.getSteppedPayload=l7,exports.injectPassCardBgTheme=kn,exports.injectPromoBannerBgTheme=Ut,exports.isSelectionCorrect=u7,exports.labelOfCellKey=ec,exports.labelsForSave=R5,exports.levelToPct=c3,exports.markAfterClick=ku,exports.marksForSave=Ro,exports.mergeNoiseSettings=za,exports.missesByType=U5,exports.nextFocus=z5,exports.nextMisses=q5,exports.noiseElementVolume=Ko,exports.noiseRatioOf=Ha,exports.pageStartIndexes=Du,exports.passCardBgIhabTheme=zl,exports.passCardBgLeftColorGridTheme=Vl,exports.passCardBgTwoCircleTheme=$l,exports.pctToLevel=d3,exports.posLabels=Mu,exports.printWordTable=l5,exports.promoBannerBgDarkTheme=Xi,exports.promoBannerBgDeepTheme=qi,exports.promoBannerBgDiagonalTheme=tl,exports.promoBannerBgDotsTheme=al,exports.promoBannerBgInstagramTheme=dl,exports.promoBannerBgMainTheme=Ii,exports.promoBannerBgNaverTheme=ul,exports.promoBannerBgOutlineTheme=ol,exports.promoBannerBgRadialTheme=Qi,exports.promoBannerBgSoftSubTheme=Gi,exports.promoBannerBgSoftTheme=Hi,exports.promoBannerBgSubTheme=Vi,exports.promoBannerBgSuccessTheme=il,exports.promoBannerBgWarmTheme=Yi,exports.recommendTables=K5,exports.regenerateUnpinned=t3,exports.removeItem=e3,exports.resolveTrainingItems=a7,exports.resolveTrainingPopupMeta=kc,exports.reviewCells=T5,exports.reviewMeta=$5,exports.reviewSetPlan=G5,exports.reviewTableName=L5,exports.scoreKey=cr,exports.scoreSheetHeader=I5,exports.shouldConfirmDiscard=i5,exports.splitTrainingVariants=n7,exports.summarize=s5,exports.summarizeMisses=W5,exports.tableTrends=H5,exports.toDraft=J5,exports.toTrainingText=o7,exports.togglePin=Q5,exports.uncoveredLabels=Y5,exports.useAnchoredMenu=Sa,exports.useBarChartControl=iu,exports.useCalendarMonth=au,exports.useComboboxSuggestions=Ql,exports.useDiscardGuard=D7,exports.useFitScale=Ru,exports.useNoisePlayer=mr,exports.useSoundCompassExam=Fb,exports.useToastLifecycle=fu,exports.useWordData=R7,exports.useWordTableDisplaySettings=Ju,exports.useWordTablePrint=Wo,exports.waveBarPx=Cr,exports.waveBarVal=fr,exports.weakItems=O5,exports.withStepTimes=Nc,exports.wordTypeLabels=Lu;
|