app-v3-scripts-editor 1.21.1 → 1.21.3
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.
|
@@ -94838,7 +94838,7 @@ const fN = {
|
|
|
94838
94838
|
/* @__PURE__ */ S(qUe, { id: t, data: e }),
|
|
94839
94839
|
/* @__PURE__ */ S(br, { type: "source", position: nn.Right })
|
|
94840
94840
|
] });
|
|
94841
|
-
var UUe = "scripts_editor_1osrdyg0", YUe = "scripts_editor_1osrdyg1", XUe = "scripts_editor_1osrdyg2", ZUe = "scripts_editor_1osrdyg3", JUe = "scripts_editor_1osrdyg4", eYe = "scripts_editor_1osrdyg5", tYe = "scripts_editor_1osrdyg7", nYe = "scripts_editor_1osrdyg8", rYe = "scripts_editor_1osrdyg9", oYe = "scripts_editor_1osrdyga", iYe = "scripts_editor_1osrdygb", aYe = "scripts_editor_1osrdygc", sYe = "scripts_editor_1osrdygd", AD = "scripts_editor_1osrdygg", Pl = /* @__PURE__ */ ((e) => (e.DAILY = "DAILY", e.WEEKLY = "WEEKLY", e.MONTHLY = "MONTHLY", e.PERIODIC = "PERIODIC", e))(Pl || {}), wZ = /* @__PURE__ */ ((e) => (e.DEFAULT_2_YEARS = "DEFAULT_2_YEARS", e.CUSTOM = "CUSTOM", e))(wZ || {}), SZ = /* @__PURE__ */ ((e) => (e.FIRST_DAY = "FIRST_DAY", e.LAST_DAY = "LAST_DAY", e.CUSTOM = "CUSTOM", e))(SZ || {}), EZ = /* @__PURE__ */ ((e) => (e.
|
|
94841
|
+
var UUe = "scripts_editor_1osrdyg0", YUe = "scripts_editor_1osrdyg1", XUe = "scripts_editor_1osrdyg2", ZUe = "scripts_editor_1osrdyg3", JUe = "scripts_editor_1osrdyg4", eYe = "scripts_editor_1osrdyg5", tYe = "scripts_editor_1osrdyg7", nYe = "scripts_editor_1osrdyg8", rYe = "scripts_editor_1osrdyg9", oYe = "scripts_editor_1osrdyga", iYe = "scripts_editor_1osrdygb", aYe = "scripts_editor_1osrdygc", sYe = "scripts_editor_1osrdygd", AD = "scripts_editor_1osrdygg", Pl = /* @__PURE__ */ ((e) => (e.DAILY = "DAILY", e.WEEKLY = "WEEKLY", e.MONTHLY = "MONTHLY", e.PERIODIC = "PERIODIC", e))(Pl || {}), wZ = /* @__PURE__ */ ((e) => (e.DEFAULT_2_YEARS = "DEFAULT_2_YEARS", e.CUSTOM = "CUSTOM", e))(wZ || {}), SZ = /* @__PURE__ */ ((e) => (e.FIRST_DAY = "FIRST_DAY", e.LAST_DAY = "LAST_DAY", e.CUSTOM = "CUSTOM", e))(SZ || {}), EZ = /* @__PURE__ */ ((e) => (e.MINUTE = "MINUTE", e.HOUR = "HOUR", e.DAY = "DAY", e))(EZ || {});
|
|
94842
94842
|
const hN = {
|
|
94843
94843
|
DAILY: "Kích hoạt hàng ngày",
|
|
94844
94844
|
WEEKLY: "Kích hoạt hàng tuần",
|
|
@@ -94871,9 +94871,9 @@ const hN = {
|
|
|
94871
94871
|
}, fYe = kt.keys(
|
|
94872
94872
|
by
|
|
94873
94873
|
), yy = {
|
|
94874
|
-
|
|
94875
|
-
|
|
94876
|
-
|
|
94874
|
+
MINUTE: "Phút",
|
|
94875
|
+
HOUR: "Giờ",
|
|
94876
|
+
DAY: "Ngày"
|
|
94877
94877
|
}, hYe = kt.keys(yy), pYe = () => {
|
|
94878
94878
|
const e = ge.useFormInstance(), t = ge.useWatch("type", e);
|
|
94879
94879
|
return /* @__PURE__ */ ie("div", { children: [
|
|
@@ -95021,7 +95021,7 @@ const hN = {
|
|
|
95021
95021
|
{
|
|
95022
95022
|
name: ["config", "interval_unit"],
|
|
95023
95023
|
label: null,
|
|
95024
|
-
initialValue: EZ.
|
|
95024
|
+
initialValue: EZ.MINUTE,
|
|
95025
95025
|
rules: [
|
|
95026
95026
|
{
|
|
95027
95027
|
required: !0,
|
|
@@ -95063,7 +95063,7 @@ const hN = {
|
|
|
95063
95063
|
ge.Item,
|
|
95064
95064
|
{
|
|
95065
95065
|
label: /* @__PURE__ */ S(Ue.Text, { strong: !0, children: "Hiệu lực" }),
|
|
95066
|
-
name: ["validity", "
|
|
95066
|
+
name: ["validity", "validity_type"],
|
|
95067
95067
|
children: /* @__PURE__ */ S(sr.Group, { className: AD, children: uYe.map((e) => /* @__PURE__ */ S(sr, { value: e, children: xZ[e] }, e)) })
|
|
95068
95068
|
}
|
|
95069
95069
|
),
|
|
@@ -95073,13 +95073,13 @@ const hN = {
|
|
|
95073
95073
|
noStyle: !0,
|
|
95074
95074
|
shouldUpdate: (e, t) => {
|
|
95075
95075
|
var n, r;
|
|
95076
|
-
return ((n = e.validity) == null ? void 0 : n.
|
|
95076
|
+
return ((n = e.validity) == null ? void 0 : n.validity_type) !== ((r = t.validity) == null ? void 0 : r.validity_type);
|
|
95077
95077
|
},
|
|
95078
|
-
children: ({ getFieldValue: e }) => e(["validity", "
|
|
95078
|
+
children: ({ getFieldValue: e }) => e(["validity", "validity_type"]) === wZ.CUSTOM ? /* @__PURE__ */ S(
|
|
95079
95079
|
ge.Item,
|
|
95080
95080
|
{
|
|
95081
95081
|
label: /* @__PURE__ */ S(Ue.Text, { strong: !0, children: "Ngày kết thúc" }),
|
|
95082
|
-
name: ["validity", "
|
|
95082
|
+
name: ["validity", "validity_end_date"],
|
|
95083
95083
|
rules: [
|
|
95084
95084
|
{
|
|
95085
95085
|
required: !0,
|
|
@@ -95122,13 +95122,18 @@ const hN = {
|
|
|
95122
95122
|
const p = We(!0);
|
|
95123
95123
|
it(() => {
|
|
95124
95124
|
var A, w;
|
|
95125
|
-
p.current && ((A = s == null ? void 0 : s.validity) != null && A.
|
|
95125
|
+
p.current && ((A = s == null ? void 0 : s.validity) != null && A.validity_end_date && (s.validity.validity_end_date = ir(
|
|
95126
|
+
s.validity.validity_end_date,
|
|
95127
|
+
A5
|
|
95128
|
+
)), (w = s == null ? void 0 : s.config) != null && w.trigger_time && (s.config.trigger_time = ir(s.config.trigger_time, Uo)), l.setFieldsValue({
|
|
95126
95129
|
...s
|
|
95127
95130
|
}), p.current = !1);
|
|
95128
95131
|
}, [s]);
|
|
95129
95132
|
const m = (A) => {
|
|
95130
95133
|
const { config: w, validity: b } = A;
|
|
95131
|
-
b != null && b.
|
|
95134
|
+
b != null && b.validity_end_date && (A.validity.validity_end_date = ir(
|
|
95135
|
+
b.validity_end_date
|
|
95136
|
+
).format(A5)), w != null && w.trigger_time && (A.config.trigger_time = ir(w.trigger_time).format("HH:mm")), r(e, A);
|
|
95132
95137
|
}, v = kt.debounce(() => {
|
|
95133
95138
|
l.submit();
|
|
95134
95139
|
}, 500), g = [
|
|
@@ -95861,7 +95866,7 @@ var $Ye = "scripts_editor_3c0va90", RYe = "scripts_editor_3c0va91", MYe = "scrip
|
|
|
95861
95866
|
function $Z(e) {
|
|
95862
95867
|
return yr({ attr: { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }, child: [{ tag: "path", attr: { d: "M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20" }, child: [] }, { tag: "path", attr: { d: "M8 11h8" }, child: [] }, { tag: "path", attr: { d: "M8 7h6" }, child: [] }] })(e);
|
|
95863
95868
|
}
|
|
95864
|
-
const BYe = "1.21.
|
|
95869
|
+
const BYe = "1.21.3", LYe = {
|
|
95865
95870
|
version: BYe
|
|
95866
95871
|
};
|
|
95867
95872
|
var _f = /* @__PURE__ */ ((e) => (e.BOT = "bot", e.CLONE = "clone", e))(_f || {});
|
|
@@ -705,8 +705,8 @@ See https://s-c.sh/2BAXzed for more info.`),window[eC]+=1);const _o=({showArrowO
|
|
|
705
705
|
PERFORMANCE OF THIS SOFTWARE.
|
|
706
706
|
***************************************************************************** */function Hq(e,t){const[n,r]=x.useState(null),o=x.useMemo(()=>Object.entries(t).flat(),[t]);return x.useEffect(()=>{if(!(e!=null&&e.current))return;const i=o6.create(Object.assign(Object.assign({},t),{container:e.current}));return r(i),()=>{i.destroy()}},[e,...o]),n}const Rq=/^on([A-Z])/,xze=e=>Rq.test(e);function Ize(e,t){const n=x.useMemo(()=>Object.entries(t).flat(),[t]);x.useEffect(()=>{if(!e)return;const r=Object.entries(t);if(!r.length)return;const o=r.map(([i,a])=>{const s=i.replace(Rq,(l,c)=>c.toLowerCase());return e.on(s,(...l)=>a(e,...l))});return()=>{o.forEach(i=>i())}},[e,...n])}x.memo(e=>{const t=x.useRef(null),[n,r]=function(o){return x.useMemo(()=>{const i=Object.assign({},o),a=Object.assign({},o);for(const s in i)xze(s)?delete i[s]:delete a[s];return[i,a]},[o])}(e);return Ize(Hq(t,n),r),v.jsx("div",{ref:t})});function Wq(e){var{container:t}=e;const n=Hq(t,function(o,i){var a={};for(var s in o)Object.prototype.hasOwnProperty.call(o,s)&&i.indexOf(s)<0&&(a[s]=o[s]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function"){var l=0;for(s=Object.getOwnPropertySymbols(o);l<s.length;l++)i.indexOf(s[l])<0&&Object.prototype.propertyIsEnumerable.call(o,s[l])&&(a[s[l]]=o[s[l]])}return a}(e,["container"])),r=function(o){const[i,a]=x.useState(!1),[s,l]=x.useState(!1),[c,u]=x.useState(!1),[d,f]=x.useState(0);return x.useEffect(()=>{if(!o)return;const p=[o.on("load",()=>{a(!1),l(!1),f(0)}),o.on("ready",()=>{a(!0),l(!1),u(!1),f(0)}),o.on("finish",()=>{u(!0)}),o.on("play",()=>{l(!0)}),o.on("pause",()=>{l(!1)}),o.on("timeupdate",()=>{f(o.getCurrentTime())}),o.on("destroy",()=>{a(!1),l(!1)})];return()=>{p.forEach(g=>g())}},[o]),x.useMemo(()=>({isReady:i,isPlaying:s,hasFinished:c,currentTime:d}),[s,c,d,i])}(n);return x.useMemo(()=>Object.assign(Object.assign({},r),{wavesurfer:n}),[r,n])}function i6(e,t,n,r){return new(n||(n=Promise))(function(o,i){function a(c){try{l(r.next(c))}catch(u){i(u)}}function s(c){try{l(r.throw(c))}catch(u){i(u)}}function l(c){var u;c.done?o(c.value):(u=c.value,u instanceof n?u:new n(function(d){d(u)})).then(a,s)}l((r=r.apply(e,[])).next())})}typeof SuppressedError=="function"&&SuppressedError;let Qq=class{constructor(){this.listeners={}}on(t,n,r){if(this.listeners[t]||(this.listeners[t]=new Set),r==null?void 0:r.once){const o=(...i)=>{this.un(t,o),n(...i)};return this.listeners[t].add(o),()=>this.un(t,o)}return this.listeners[t].add(n),()=>this.un(t,n)}un(t,n){var r;(r=this.listeners[t])===null||r===void 0||r.delete(n)}once(t,n){return this.on(t,n,{once:!0})}unAll(){this.listeners={}}emit(t,...n){this.listeners[t]&&this.listeners[t].forEach(r=>r(...n))}},Nze=class extends Qq{constructor(t){super(),this.subscriptions=[],this.isDestroyed=!1,this.options=t}onInit(){}_init(t){this.isDestroyed&&(this.subscriptions=[],this.isDestroyed=!1),this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach(t=>t()),this.subscriptions=[],this.isDestroyed=!0,this.wavesurfer=void 0}},Oze=class extends Qq{constructor(){super(...arguments),this.animationFrameId=null,this.isRunning=!1}start(){if(this.isRunning)return;this.isRunning=!0;const t=()=>{this.isRunning&&(this.emit("tick"),this.animationFrameId=requestAnimationFrame(t))};t()}stop(){this.isRunning=!1,this.animationFrameId!==null&&(cancelAnimationFrame(this.animationFrameId),this.animationFrameId=null)}destroy(){this.stop()}};const $ze=["audio/webm","audio/wav","audio/mpeg","audio/mp4","audio/mp3"];let Mze=class DZ extends Nze{constructor(t){var n,r,o,i,a,s;super(Object.assign(Object.assign({},t),{audioBitsPerSecond:(n=t.audioBitsPerSecond)!==null&&n!==void 0?n:128e3,scrollingWaveform:(r=t.scrollingWaveform)!==null&&r!==void 0&&r,scrollingWaveformWindow:(o=t.scrollingWaveformWindow)!==null&&o!==void 0?o:5,continuousWaveform:(i=t.continuousWaveform)!==null&&i!==void 0&&i,renderRecordedAudio:(a=t.renderRecordedAudio)===null||a===void 0||a,mediaRecorderTimeslice:(s=t.mediaRecorderTimeslice)!==null&&s!==void 0?s:void 0})),this.stream=null,this.mediaRecorder=null,this.dataWindow=null,this.isWaveformPaused=!1,this.lastStartTime=0,this.lastDuration=0,this.duration=0,this.micStream=null,this.recordedBlobUrl=null,this.timer=new Oze,this.subscriptions.push(this.timer.on("tick",()=>{const l=performance.now()-this.lastStartTime;this.duration=this.isPaused()?this.duration:this.lastDuration+l,this.emit("record-progress",this.duration)}))}static create(t){return new DZ(t||{})}renderMicStream(t){var n;const r=new AudioContext,o=r.createMediaStreamSource(t),i=r.createAnalyser();o.connect(i),this.options.continuousWaveform&&(i.fftSize=32);const a=i.frequencyBinCount,s=new Float32Array(a);let l=0;this.wavesurfer&&((n=this.originalOptions)!==null&&n!==void 0||(this.originalOptions=Object.assign({},this.wavesurfer.options)),this.wavesurfer.options.interact=!1,this.options.scrollingWaveform&&(this.wavesurfer.options.cursorWidth=0));const c=setInterval(()=>{var u,d,f,p;if(!this.isWaveformPaused){if(i.getFloatTimeDomainData(s),this.options.scrollingWaveform){const g=Math.floor((this.options.scrollingWaveformWindow||0)*r.sampleRate),b=Math.min(g,this.dataWindow?this.dataWindow.length+a:a),m=new Float32Array(g);if(this.dataWindow){const C=Math.max(0,g-this.dataWindow.length);m.set(this.dataWindow.slice(-b+a),C)}m.set(s,g-a),this.dataWindow=m}else if(this.options.continuousWaveform){if(!this.dataWindow){const b=this.options.continuousWaveformDuration?Math.round(100*this.options.continuousWaveformDuration):((d=(u=this.wavesurfer)===null||u===void 0?void 0:u.getWidth())!==null&&d!==void 0?d:0)*window.devicePixelRatio;this.dataWindow=new Float32Array(b)}let g=0;for(let b=0;b<a;b++){const m=Math.abs(s[b]);m>g&&(g=m)}if(l+1>this.dataWindow.length){const b=new Float32Array(2*this.dataWindow.length);b.set(this.dataWindow,0),this.dataWindow=b}this.dataWindow[l]=g,l++}else this.dataWindow=s;if(this.wavesurfer){const g=((p=(f=this.dataWindow)===null||f===void 0?void 0:f.length)!==null&&p!==void 0?p:0)/100;this.wavesurfer.load("",[this.dataWindow],this.options.scrollingWaveform?this.options.scrollingWaveformWindow:g).then(()=>{this.wavesurfer&&this.options.continuousWaveform&&(this.wavesurfer.setTime(this.getDuration()/1e3),this.wavesurfer.options.minPxPerSec||this.wavesurfer.setOptions({minPxPerSec:this.wavesurfer.getWidth()/this.wavesurfer.getDuration()}))}).catch(b=>{console.error("Error rendering real-time recording data:",b)})}}},10);return{onDestroy:()=>{clearInterval(c),o==null||o.disconnect(),r==null||r.close()},onEnd:()=>{this.isWaveformPaused=!0,this.stopMic()}}}startMic(t){return i6(this,void 0,void 0,function*(){let n;this.micStream&&this.stopMic();try{n=yield navigator.mediaDevices.getUserMedia({audio:t==null||t})}catch(o){throw new Error("Error accessing the microphone: "+o.message)}const r=this.renderMicStream(n);return this.micStream=r,this.unsubscribeDestroy=this.once("destroy",r.onDestroy),this.unsubscribeRecordEnd=this.once("record-end",r.onEnd),this.stream=n,n})}stopMic(){var t,n,r;(t=this.micStream)===null||t===void 0||t.onDestroy(),(n=this.unsubscribeDestroy)===null||n===void 0||n.call(this),(r=this.unsubscribeRecordEnd)===null||r===void 0||r.call(this),this.micStream=null,this.unsubscribeDestroy=void 0,this.unsubscribeRecordEnd=void 0,this.stream&&(this.stream.getTracks().forEach(o=>o.stop()),this.stream=null,this.mediaRecorder=null)}startRecording(t){return i6(this,void 0,void 0,function*(){const n=this.stream||(yield this.startMic(t));this.dataWindow=null;const r=this.mediaRecorder||new MediaRecorder(n,{mimeType:this.options.mimeType||$ze.find(a=>MediaRecorder.isTypeSupported(a)),audioBitsPerSecond:this.options.audioBitsPerSecond});this.mediaRecorder=r,this.stopRecording();const o=[];r.ondataavailable=a=>{a.data.size>0&&o.push(a.data),this.emit("record-data-available",a.data)};const i=a=>{var s;const l=new Blob(o,{type:r.mimeType});this.emit(a,l),this.options.renderRecordedAudio&&(this.applyOriginalOptionsIfNeeded(),this.recordedBlobUrl&&URL.revokeObjectURL(this.recordedBlobUrl),this.recordedBlobUrl=URL.createObjectURL(l),(s=this.wavesurfer)===null||s===void 0||s.load(this.recordedBlobUrl))};r.onpause=()=>i("record-pause"),r.onstop=()=>i("record-end"),r.start(this.options.mediaRecorderTimeslice),this.lastStartTime=performance.now(),this.lastDuration=0,this.duration=0,this.isWaveformPaused=!1,this.timer.start(),this.emit("record-start")})}getDuration(){return this.duration}isRecording(){var t;return((t=this.mediaRecorder)===null||t===void 0?void 0:t.state)==="recording"}isPaused(){var t;return((t=this.mediaRecorder)===null||t===void 0?void 0:t.state)==="paused"}isActive(){var t;return((t=this.mediaRecorder)===null||t===void 0?void 0:t.state)!=="inactive"}stopRecording(){var t;this.isActive()&&((t=this.mediaRecorder)===null||t===void 0||t.stop(),this.timer.stop())}pauseRecording(){var t,n;this.isRecording()&&(this.isWaveformPaused=!0,(t=this.mediaRecorder)===null||t===void 0||t.requestData(),(n=this.mediaRecorder)===null||n===void 0||n.pause(),this.timer.stop(),this.lastDuration=this.duration)}resumeRecording(){var t;this.isPaused()&&(this.isWaveformPaused=!1,(t=this.mediaRecorder)===null||t===void 0||t.resume(),this.timer.start(),this.lastStartTime=performance.now(),this.emit("record-resume"))}static getAvailableAudioDevices(){return i6(this,void 0,void 0,function*(){return navigator.mediaDevices.enumerateDevices().then(t=>t.filter(n=>n.kind==="audioinput"))})}destroy(){this.applyOriginalOptionsIfNeeded(),super.destroy(),this.stopRecording(),this.stopMic(),this.recordedBlobUrl&&(URL.revokeObjectURL(this.recordedBlobUrl),this.recordedBlobUrl=null)}applyOriginalOptionsIfNeeded(){this.wavesurfer&&this.originalOptions&&(this.wavesurfer.setOptions(this.originalOptions),delete this.originalOptions)}};const Kq=()=>{const{axiosInstance:e,context:{COMPANY_ID:t,CALLBOTSCENARIO_ID:n}}=Zn(),{error:r}=lC();return Oee({mutationFn:async({audio:o})=>{var a,s,l;if(!t||!n)throw new Error("COMPANY_ID and CALLBOTSCENARIO_ID are required");const i=new FormData;i.append("raw_file",o);try{return(await e.postForm(`/company/${t}/callbotscenario/${n}/file`,i)).data}catch(c){const u=c;throw r((l=(s=(a=u.response)==null?void 0:a.data)==null?void 0:s.raw_file)==null?void 0:l[0]),u}},onError:o=>{console.error("Upload audio error:",o)}})},qq=60*10,uC=({onStartRecord:e,onFinishRecord:t})=>{const n=x.useRef(null),r=x.useRef(null),o=x.useRef(null),[i,a]=x.useState(!1),[s,l]=x.useState(0),{mutateAsync:c,isPending:u}=Kq(),d=g=>{const b=Math.floor(g/60).toString().padStart(2,"0"),m=(g%60).toString().padStart(2,"0");return`${b}:${m}`};Wq({container:n,waveColor:"#b0dfff",progressColor:"#30b4ff",height:50,plugins:x.useMemo(()=>{const g=Mze.create({renderRecordedAudio:!1,continuousWaveform:!1,scrollingWaveform:!0,continuousWaveformDuration:30});return g.on("record-progress",b=>{const m=Math.floor(b/1e3);l(m),m>=qq&&f()}),g.on("record-start",()=>console.log("🎤 Recording started")),g.on("record-end",()=>console.log("✅ Recording finished")),g.on("record-data-available",async b=>{const m=`${QIe("recording")}.webm`,C=new File([b],m,{type:b.type}),w=await c({audio:C});t==null||t(w)}),r.current=g,[g]},[])});const f=()=>{r.current&&(r.current.stopRecording(),a(!1),o.current&&(clearTimeout(o.current),o.current=null))},p=()=>{r.current&&r.current.startRecording().then(()=>{a(!0),e==null||e(),l(0),o.current=setTimeout(()=>{f()},qq*1e3)}).catch(g=>console.error("Start recording failed:",g))};return v.jsxs(ot,{gap:12,align:"center",style:{flex:1},children:[i?v.jsx(wt,{type:"text",onClick:f,disabled:u,style:{width:"40px",height:"32px",borderRadius:"8px",backgroundColor:xn.speakBlock.background,border:`1px solid ${xn.speakBlock.border}`,display:"flex",alignItems:"center",justifyContent:"center",padding:0},children:v.jsx("div",{style:{width:"12px",height:"12px",backgroundColor:xn.common.red,borderRadius:"2px"}})}):v.jsx(wt,{icon:u?v.jsx(va,{}):v.jsx(lx,{}),onClick:p,disabled:u,loading:u,children:u?"Đang tải lên...":"Ghi âm"}),v.jsx("div",{ref:n,style:{width:"100%",height:50,overflow:"hidden",opacity:i?1:0,pointerEvents:i?"auto":"none",transition:"opacity 0.2s"}}),i&&v.jsx("div",{style:{fontSize:14,fontWeight:500,minWidth:40,textAlign:"right"},children:d(s)})]})};var Tze="scripts_editor_14vtnyz0",Pze="scripts_editor_14vtnyz1",kze="scripts_editor_14vtnyz2";const a6=({url:e,className:t,formPath:n,onDelete:r})=>{const o=ge.useFormInstance();if(!e||e==="")return v.jsx(Su,{message:"Không có file âm thanh",description:"Vui lòng tải lên file âm thanh hoặc ghi âm",type:"info",showIcon:!0,icon:v.jsx(lx,{})});const i=()=>{n&&(r==null||r(),n.forEach(a=>{o.setFieldValue(a,void 0)}))};return v.jsx("div",{className:t,children:v.jsxs("div",{className:Pze,children:[v.jsxs("audio",{controls:!0,preload:"auto","aria-label":"Audio playback",src:e,style:{height:32,maxWidth:"260px"},children:[v.jsx("track",{kind:"captions",src:"",label:"Captions"}),"Trình duyệt của bạn không hỗ trợ phát âm thanh."]}),n&&v.jsx(wt,{className:kze,danger:!0,icon:v.jsx(ta,{}),"aria-label":"Delete audio",style:{marginLeft:"8px"},onClick:i})]})})};var _ze="scripts_editor_1v7rh6r0";const Gq=({content:e})=>v.jsx("div",{className:_ze,children:e}),Dze=({prefixPaths:e=[]})=>v.jsxs(v.Fragment,{children:[v.jsx(Gq,{content:"Cắt file audio tự động có thể không chính xác bằng cắt file audio thủ công."}),v.jsx(ge.Item,{name:[...e,"record","trim"],valuePropName:"checked",children:v.jsx(Vr,{children:v.jsxs(ot,{align:"center",gap:8,children:["Tự động cắt file ghi âm",v.jsx(ir,{title:"Hệ thống tự động cắt phần đầu và phần cuối không có âm thanh",children:v.jsx(yc,{})})]})})}),v.jsx(ge.Item,{name:[...e,"record","autoGender"],valuePropName:"checked",children:v.jsx(Vr,{children:v.jsxs(ot,{align:"center",gap:8,children:["Tự động tạo file ghi âm nam/nữ",v.jsx(ir,{title:`Hệ thống tự động tạo file ghi âm nam/nữ từ file ghi âm gốc,
|
|
707
707
|
sử dụng trong tính năng nhận diện giới tính`,children:v.jsx(yc,{})})]})})}),v.jsx(ot,{justify:"center",children:v.jsx(wt,{type:"primary",children:"Áp dụng"})})]});let Uq=class{constructor(){this.listeners={}}on(t,n,r){if(this.listeners[t]||(this.listeners[t]=new Set),r==null?void 0:r.once){const o=(...i)=>{this.un(t,o),n(...i)};return this.listeners[t].add(o),()=>this.un(t,o)}return this.listeners[t].add(n),()=>this.un(t,n)}un(t,n){var r;(r=this.listeners[t])===null||r===void 0||r.delete(n)}once(t,n){return this.on(t,n,{once:!0})}unAll(){this.listeners={}}emit(t,...n){this.listeners[t]&&this.listeners[t].forEach(r=>r(...n))}},Bze=class extends Uq{constructor(t){super(),this.subscriptions=[],this.isDestroyed=!1,this.options=t}onInit(){}_init(t){this.isDestroyed&&(this.subscriptions=[],this.isDestroyed=!1),this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach(t=>t()),this.subscriptions=[],this.isDestroyed=!0,this.wavesurfer=void 0}};function dC(e,t,n,r,o=3,i=0,a=100){if(!e)return()=>{};const s=matchMedia("(pointer: coarse)").matches;let l=()=>{};const c=u=>{if(u.button!==i)return;u.preventDefault(),u.stopPropagation();let d=u.clientX,f=u.clientY,p=!1;const g=Date.now(),b=y=>{if(y.preventDefault(),y.stopPropagation(),s&&Date.now()-g<a)return;const E=y.clientX,N=y.clientY,M=E-d,$=N-f;if(p||Math.abs(M)>o||Math.abs($)>o){const O=e.getBoundingClientRect(),{left:T,top:P}=O;p||(n==null||n(d-T,f-P),p=!0),t(M,$,E-T,N-P),d=E,f=N}},m=y=>{if(p){const E=y.clientX,N=y.clientY,M=e.getBoundingClientRect(),{left:$,top:O}=M;r==null||r(E-$,N-O)}l()},C=y=>{y.relatedTarget&&y.relatedTarget!==document.documentElement||m(y)},w=y=>{p&&(y.stopPropagation(),y.preventDefault())},S=y=>{p&&y.preventDefault()};document.addEventListener("pointermove",b),document.addEventListener("pointerup",m),document.addEventListener("pointerout",C),document.addEventListener("pointercancel",C),document.addEventListener("touchmove",S,{passive:!1}),document.addEventListener("click",w,{capture:!0}),l=()=>{document.removeEventListener("pointermove",b),document.removeEventListener("pointerup",m),document.removeEventListener("pointerout",C),document.removeEventListener("pointercancel",C),document.removeEventListener("touchmove",S),setTimeout(()=>{document.removeEventListener("click",w,{capture:!0})},10)}};return e.addEventListener("pointerdown",c),()=>{l(),e.removeEventListener("pointerdown",c)}}function Yq(e,t){const n=t.xmlns?document.createElementNS(t.xmlns,e):document.createElement(e);for(const[r,o]of Object.entries(t))if(r==="children"&&o)for(const[i,a]of Object.entries(o))a instanceof Node?n.appendChild(a):typeof a=="string"?n.appendChild(document.createTextNode(a)):n.appendChild(Yq(i,a));else r==="style"?Object.assign(n.style,o):r==="textContent"?n.textContent=o:n.setAttribute(r,o.toString());return n}function km(e,t,n){const r=Yq(e,t||{});return n==null||n.appendChild(r),r}let Xq=class extends Uq{constructor(t,n,r=0){var o,i,a,s,l,c,u,d,f,p;super(),this.totalDuration=n,this.numberOfChannels=r,this.element=null,this.minLength=0,this.maxLength=1/0,this.contentEditable=!1,this.subscriptions=[],this.updatingSide=void 0,this.isRemoved=!1,this.subscriptions=[],this.id=t.id||`region-${Math.random().toString(32).slice(2)}`,this.start=this.clampPosition(t.start),this.end=this.clampPosition((o=t.end)!==null&&o!==void 0?o:t.start),this.drag=(i=t.drag)===null||i===void 0||i,this.resize=(a=t.resize)===null||a===void 0||a,this.resizeStart=(s=t.resizeStart)===null||s===void 0||s,this.resizeEnd=(l=t.resizeEnd)===null||l===void 0||l,this.color=(c=t.color)!==null&&c!==void 0?c:"rgba(0, 0, 0, 0.1)",this.minLength=(u=t.minLength)!==null&&u!==void 0?u:this.minLength,this.maxLength=(d=t.maxLength)!==null&&d!==void 0?d:this.maxLength,this.channelIdx=(f=t.channelIdx)!==null&&f!==void 0?f:-1,this.contentEditable=(p=t.contentEditable)!==null&&p!==void 0?p:this.contentEditable,this.element=this.initElement(),this.setContent(t.content),this.setPart(),this.renderPosition(),this.initMouseEvents()}clampPosition(t){return Math.max(0,Math.min(this.totalDuration,t))}setPart(){var t;const n=this.start===this.end;(t=this.element)===null||t===void 0||t.setAttribute("part",`${n?"marker":"region"} ${this.id}`)}addResizeHandles(t){const n={position:"absolute",zIndex:"2",width:"6px",height:"100%",top:"0",cursor:"ew-resize",wordBreak:"keep-all"},r=km("div",{part:"region-handle region-handle-left",style:Object.assign(Object.assign({},n),{left:"0",borderLeft:"2px solid rgba(0, 0, 0, 0.5)",borderRadius:"2px 0 0 2px"})},t),o=km("div",{part:"region-handle region-handle-right",style:Object.assign(Object.assign({},n),{right:"0",borderRight:"2px solid rgba(0, 0, 0, 0.5)",borderRadius:"0 2px 2px 0"})},t);this.subscriptions.push(dC(r,i=>this.onResize(i,"start"),()=>null,()=>this.onEndResizing("start"),1),dC(o,i=>this.onResize(i,"end"),()=>null,()=>this.onEndResizing("end"),1))}removeResizeHandles(t){const n=t.querySelector('[part*="region-handle-left"]'),r=t.querySelector('[part*="region-handle-right"]');n&&t.removeChild(n),r&&t.removeChild(r)}initElement(){if(this.isRemoved)return null;const t=this.start===this.end;let n=0,r=100;this.channelIdx>=0&&this.numberOfChannels>0&&this.channelIdx<this.numberOfChannels&&(r=100/this.numberOfChannels,n=r*this.channelIdx);const o=km("div",{style:{position:"absolute",top:`${n}%`,height:`${r}%`,backgroundColor:t?"none":this.color,borderLeft:t?"2px solid "+this.color:"none",borderRadius:"2px",boxSizing:"border-box",transition:"background-color 0.2s ease",cursor:this.drag?"grab":"default",pointerEvents:"all"}});return!t&&this.resize&&this.addResizeHandles(o),o}renderPosition(){if(!this.element)return;const t=this.start/this.totalDuration,n=(this.totalDuration-this.end)/this.totalDuration;this.element.style.left=100*t+"%",this.element.style.right=100*n+"%"}toggleCursor(t){var n;this.drag&&(!((n=this.element)===null||n===void 0)&&n.style)&&(this.element.style.cursor=t?"grabbing":"grab")}initMouseEvents(){const{element:t}=this;t&&(t.addEventListener("click",n=>this.emit("click",n)),t.addEventListener("mouseenter",n=>this.emit("over",n)),t.addEventListener("mouseleave",n=>this.emit("leave",n)),t.addEventListener("dblclick",n=>this.emit("dblclick",n)),t.addEventListener("pointerdown",()=>this.toggleCursor(!0)),t.addEventListener("pointerup",()=>this.toggleCursor(!1)),this.subscriptions.push(dC(t,n=>this.onMove(n),()=>this.toggleCursor(!0),()=>{this.toggleCursor(!1),this.drag&&this.emit("update-end")})),this.contentEditable&&this.content&&(this.contentClickListener=n=>this.onContentClick(n),this.contentBlurListener=()=>this.onContentBlur(),this.content.addEventListener("click",this.contentClickListener),this.content.addEventListener("blur",this.contentBlurListener)))}_onUpdate(t,n,r){var o;if(!(!((o=this.element)===null||o===void 0)&&o.parentElement))return;const{width:i}=this.element.parentElement.getBoundingClientRect(),a=t/i*this.totalDuration;let s=n&&n!=="start"?this.start:this.start+a,l=n&&n!=="end"?this.end:this.end+a;const c=r!==void 0;c&&this.updatingSide&&this.updatingSide!==n&&(this.updatingSide==="start"?s=r:l=r),s=Math.max(0,s),l=Math.min(this.totalDuration,l);const u=l-s;this.updatingSide=n;const d=u>=this.minLength&&u<=this.maxLength;s<=l&&(d||c)&&(this.start=s,this.end=l,this.renderPosition(),this.emit("update",n))}onMove(t){this.drag&&this._onUpdate(t)}onResize(t,n){this.resize&&(this.resizeStart||n!=="start")&&(this.resizeEnd||n!=="end")&&this._onUpdate(t,n)}onEndResizing(t){this.resize&&(this.emit("update-end",t),this.updatingSide=void 0)}onContentClick(t){t.stopPropagation(),t.target.focus(),this.emit("click",t)}onContentBlur(){this.emit("update-end")}_setTotalDuration(t){this.totalDuration=t,this.renderPosition()}play(t){this.emit("play",t&&this.end!==this.start?this.end:void 0)}getContent(t=!1){var n;return t?this.content||void 0:this.element instanceof HTMLElement?((n=this.content)===null||n===void 0?void 0:n.innerHTML)||void 0:""}setContent(t){var n;if(this.element)if(this.content&&this.contentEditable&&(this.contentClickListener&&this.content.removeEventListener("click",this.contentClickListener),this.contentBlurListener&&this.content.removeEventListener("blur",this.contentBlurListener)),(n=this.content)===null||n===void 0||n.remove(),t){if(typeof t=="string"){const r=this.start===this.end;this.content=km("div",{style:{padding:`0.2em ${r?.2:.4}em`,display:"inline-block"},textContent:t})}else this.content=t;this.contentEditable&&(this.content.contentEditable="true",this.contentClickListener=r=>this.onContentClick(r),this.contentBlurListener=()=>this.onContentBlur(),this.content.addEventListener("click",this.contentClickListener),this.content.addEventListener("blur",this.contentBlurListener)),this.content.setAttribute("part","region-content"),this.element.appendChild(this.content),this.emit("content-changed")}else this.content=void 0}setOptions(t){var n,r;if(this.element){if(t.color&&(this.color=t.color,this.element.style.backgroundColor=this.color),t.drag!==void 0&&(this.drag=t.drag,this.element.style.cursor=this.drag?"grab":"default"),t.start!==void 0||t.end!==void 0){const o=this.start===this.end;this.start=this.clampPosition((n=t.start)!==null&&n!==void 0?n:this.start),this.end=this.clampPosition((r=t.end)!==null&&r!==void 0?r:o?this.start:this.end),this.renderPosition(),this.setPart()}if(t.content&&this.setContent(t.content),t.id&&(this.id=t.id,this.setPart()),t.resize!==void 0&&t.resize!==this.resize){const o=this.start===this.end;this.resize=t.resize,this.resize&&!o?this.addResizeHandles(this.element):this.removeResizeHandles(this.element)}t.resizeStart!==void 0&&(this.resizeStart=t.resizeStart),t.resizeEnd!==void 0&&(this.resizeEnd=t.resizeEnd)}}remove(){this.isRemoved=!0,this.emit("remove"),this.subscriptions.forEach(t=>t()),this.element&&(this.element.remove(),this.element=null)}};class s6 extends Bze{constructor(t){super(t),this.regions=[],this.regionsContainer=this.initRegionsContainer()}static create(t){return new s6(t)}onInit(){if(!this.wavesurfer)throw Error("WaveSurfer is not initialized");this.wavesurfer.getWrapper().appendChild(this.regionsContainer),this.subscriptions.push(this.wavesurfer.on("ready",n=>{this.regions.forEach(r=>r._setTotalDuration(n))}));let t=[];this.subscriptions.push(this.wavesurfer.on("timeupdate",n=>{const r=this.regions.filter(o=>o.start<=n&&(o.end===o.start?o.start+.05:o.end)>=n);r.forEach(o=>{t.includes(o)||this.emit("region-in",o)}),t.forEach(o=>{r.includes(o)||this.emit("region-out",o)}),t=r}))}initRegionsContainer(){return km("div",{part:"regions-container",style:{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",zIndex:"5",pointerEvents:"none"}})}getRegions(){return this.regions}avoidOverlapping(t){t.content&&setTimeout(()=>{const n=t.content,r=n.getBoundingClientRect(),o=this.regions.map(i=>{if(i===t||!i.content)return 0;const a=i.content.getBoundingClientRect();return r.left<a.left+a.width&&a.left<r.left+r.width?a.height:0}).reduce((i,a)=>i+a,0);n.style.marginTop=`${o}px`},10)}adjustScroll(t){var n,r;if(!t.element)return;const o=(r=(n=this.wavesurfer)===null||n===void 0?void 0:n.getWrapper())===null||r===void 0?void 0:r.parentElement;if(!o)return;const{clientWidth:i,scrollWidth:a}=o;if(a<=i)return;const s=o.getBoundingClientRect(),l=t.element.getBoundingClientRect(),c=l.left-s.left,u=l.right-s.left;c<0?o.scrollLeft+=c:u>i&&(o.scrollLeft+=u-i)}virtualAppend(t,n,r){const o=()=>{if(!this.wavesurfer)return;const i=this.wavesurfer.getWidth(),a=this.wavesurfer.getScroll(),s=n.clientWidth,l=this.wavesurfer.getDuration(),c=Math.round(t.start/l*s),u=c+(Math.round((t.end-t.start)/l*s)||1)>a&&c<a+i;u&&!r.parentElement?n.appendChild(r):!u&&r.parentElement&&r.remove()};setTimeout(()=>{if(!this.wavesurfer||!t.element)return;o();const i=this.wavesurfer.on("scroll",o),a=this.wavesurfer.on("zoom",o);this.subscriptions.push(i,a),t.once("remove",()=>{i(),a()})},0)}saveRegion(t){if(!t.element)return;this.virtualAppend(t,this.regionsContainer,t.element),this.avoidOverlapping(t),this.regions.push(t);const n=[t.on("update",r=>{r||this.adjustScroll(t),this.emit("region-update",t,r)}),t.on("update-end",r=>{this.avoidOverlapping(t),this.emit("region-updated",t,r)}),t.on("play",r=>{var o;(o=this.wavesurfer)===null||o===void 0||o.play(t.start,r)}),t.on("click",r=>{this.emit("region-clicked",t,r)}),t.on("dblclick",r=>{this.emit("region-double-clicked",t,r)}),t.on("content-changed",()=>{this.emit("region-content-changed",t)}),t.once("remove",()=>{n.forEach(r=>r()),this.regions=this.regions.filter(r=>r!==t),this.emit("region-removed",t)})];this.subscriptions.push(...n),this.emit("region-created",t)}addRegion(t){var n,r;if(!this.wavesurfer)throw Error("WaveSurfer is not initialized");const o=this.wavesurfer.getDuration(),i=(r=(n=this.wavesurfer)===null||n===void 0?void 0:n.getDecodedData())===null||r===void 0?void 0:r.numberOfChannels,a=new Xq(t,o,i);return this.emit("region-initialized",a),o?this.saveRegion(a):this.subscriptions.push(this.wavesurfer.once("ready",s=>{a._setTotalDuration(s),this.saveRegion(a)})),a}enableDragSelection(t,n=3){var r;const o=(r=this.wavesurfer)===null||r===void 0?void 0:r.getWrapper();if(!(o&&o instanceof HTMLElement))return()=>{};let i=null,a=0,s=0;return dC(o,(l,c,u)=>{i&&i._onUpdate(l,u>a?"end":"start",s)},l=>{var c,u;if(a=l,!this.wavesurfer)return;const d=this.wavesurfer.getDuration(),f=(u=(c=this.wavesurfer)===null||c===void 0?void 0:c.getDecodedData())===null||u===void 0?void 0:u.numberOfChannels,{width:p}=this.wavesurfer.getWrapper().getBoundingClientRect();s=a/p*d;const g=l/p*d,b=(l+5)/p*d;i=new Xq(Object.assign(Object.assign({},t),{start:g,end:b}),d,f),this.emit("region-initialized",i),i.element&&this.regionsContainer.appendChild(i.element)},()=>{i&&(this.saveRegion(i),i.updatingSide=void 0,i=null)},n)}clearRegions(){this.regions.slice().forEach(t=>t.remove()),this.regions=[]}destroy(){this.clearRegions(),super.destroy(),this.regionsContainer.remove()}}let Lze=class{constructor(){this.listeners={}}on(t,n,r){if(this.listeners[t]||(this.listeners[t]=new Set),r==null?void 0:r.once){const o=(...i)=>{this.un(t,o),n(...i)};return this.listeners[t].add(o),()=>this.un(t,o)}return this.listeners[t].add(n),()=>this.un(t,n)}un(t,n){var r;(r=this.listeners[t])===null||r===void 0||r.delete(n)}once(t,n){return this.on(t,n,{once:!0})}unAll(){this.listeners={}}emit(t,...n){this.listeners[t]&&this.listeners[t].forEach(r=>r(...n))}},Fze=class extends Lze{constructor(t){super(),this.subscriptions=[],this.isDestroyed=!1,this.options=t}onInit(){}_init(t){this.isDestroyed&&(this.subscriptions=[],this.isDestroyed=!1),this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach(t=>t()),this.subscriptions=[],this.isDestroyed=!0,this.wavesurfer=void 0}};function Zq(e,t){const n=t.xmlns?document.createElementNS(t.xmlns,e):document.createElement(e);for(const[r,o]of Object.entries(t))if(r==="children"&&o)for(const[i,a]of Object.entries(o))a instanceof Node?n.appendChild(a):typeof a=="string"?n.appendChild(document.createTextNode(a)):n.appendChild(Zq(i,a));else r==="style"?Object.assign(n.style,o):r==="textContent"?n.textContent=o:n.setAttribute(r,o.toString());return n}function l6(e,t,n){return Zq(e,t||{})}const jze={height:20,timeOffset:0,formatTimeCallback:e=>e/60>1?`${Math.floor(e/60)}:${`${(e=Math.round(e%60))<10?"0":""}${e}`}`:`${Math.round(1e3*e)/1e3}`};class c6 extends Fze{constructor(t){super(t||{}),this.unsubscribeNotches=[],this.notchElements=new Map,this.options=Object.assign({},jze,t),this.timelineWrapper=this.initTimelineWrapper()}static create(t){return new c6(t)}onInit(){var t;if(!this.wavesurfer)throw Error("WaveSurfer is not initialized");let n=this.wavesurfer.getWrapper();if(this.options.container instanceof HTMLElement)n=this.options.container;else if(typeof this.options.container=="string"){const r=document.querySelector(this.options.container);if(!r)throw Error(`No Timeline container found matching ${this.options.container}`);n=r}this.options.insertPosition?(n.firstElementChild||n).insertAdjacentElement(this.options.insertPosition,this.timelineWrapper):n.appendChild(this.timelineWrapper),this.subscriptions.push(this.wavesurfer.on("redraw",()=>this.initTimeline())),(!((t=this.wavesurfer)===null||t===void 0)&&t.getDuration()||this.options.duration)&&this.initTimeline()}destroy(){this.unsubscribeNotches.forEach(t=>t()),this.unsubscribeNotches=[],this.timelineWrapper.remove(),super.destroy()}initTimelineWrapper(){return l6("div",{part:"timeline-wrapper",style:{pointerEvents:"none"}})}defaultTimeInterval(t){return t>=25?1:5*t>=25?5:15*t>=25?15:60*Math.ceil(.5/t)}defaultPrimaryLabelInterval(t){return t>=25?10:5*t>=25?6:4}defaultSecondaryLabelInterval(t){return t>=25?5:2}virtualAppend(t,n,r){if(this.notchElements.set(r,{start:t,width:r.clientWidth,wasVisible:!1}),!this.wavesurfer)return;const o=this.wavesurfer.getScroll(),i=o+this.wavesurfer.getWidth(),a=this.notchElements.get(r),s=t>=o&&t+a.width<i;a.wasVisible=s,s&&n.appendChild(r)}updateVisibleNotches(t,n,r){this.notchElements.forEach((o,i)=>{const a=o.start>=t&&o.start+o.width<n;a!==o.wasVisible&&(o.wasVisible=a,a?r.appendChild(i):i.remove())})}initTimeline(){var t,n,r,o,i,a,s,l;this.unsubscribeNotches.forEach(S=>S()),this.unsubscribeNotches=[],this.notchElements.clear();const c=(r=(n=(t=this.wavesurfer)===null||t===void 0?void 0:t.getDuration())!==null&&n!==void 0?n:this.options.duration)!==null&&r!==void 0?r:0,u=(((o=this.wavesurfer)===null||o===void 0?void 0:o.getWrapper().scrollWidth)||this.timelineWrapper.scrollWidth)/c,d=(i=this.options.timeInterval)!==null&&i!==void 0?i:this.defaultTimeInterval(u),f=(a=this.options.primaryLabelInterval)!==null&&a!==void 0?a:this.defaultPrimaryLabelInterval(u),p=this.options.primaryLabelSpacing,g=(s=this.options.secondaryLabelInterval)!==null&&s!==void 0?s:this.defaultSecondaryLabelInterval(u),b=this.options.secondaryLabelSpacing,m=this.options.insertPosition==="beforebegin",C=l6("div",{style:Object.assign({height:`${this.options.height}px`,overflow:"hidden",fontSize:this.options.height/2+"px",whiteSpace:"nowrap"},m?{position:"absolute",top:"0",left:"0",right:"0",zIndex:"2"}:{position:"relative"})});C.setAttribute("part","timeline"),typeof this.options.style=="string"?C.setAttribute("style",C.getAttribute("style")+this.options.style):typeof this.options.style=="object"&&Object.assign(C.style,this.options.style);const w=l6("div",{style:{width:"0",height:"50%",display:"flex",flexDirection:"column",justifyContent:m?"flex-start":"flex-end",top:m?"0":"auto",bottom:m?"auto":"0",overflow:"visible",borderLeft:"1px solid currentColor",opacity:`${(l=this.options.secondaryLabelOpacity)!==null&&l!==void 0?l:.25}`,position:"absolute",zIndex:"1"}});for(let S=0,y=0;S<c;S+=d,y++){const E=w.cloneNode(),N=Math.round(100*S)%Math.round(100*f)==0||p&&y%p==0,M=Math.round(100*S)%Math.round(100*g)==0||b&&y%b==0;(N||M)&&(E.style.height="100%",E.style.textIndent="3px",E.textContent=this.options.formatTimeCallback(S),N&&(E.style.opacity="1"));const $=N?"primary":M?"secondary":"tick";E.setAttribute("part",`timeline-notch timeline-notch-${$}`);const O=Math.round(100*(S+this.options.timeOffset))/100*u;E.style.left=`${O}px`,this.virtualAppend(O,C,E)}this.timelineWrapper.innerHTML="",this.timelineWrapper.appendChild(C),this.wavesurfer&&this.unsubscribeNotches.push(this.wavesurfer.on("scroll",(S,y,E,N)=>{this.updateVisibleNotches(E,N,C)})),this.emit("ready")}}class zze{constructor(){this.listeners={}}on(t,n,r){if(this.listeners[t]||(this.listeners[t]=new Set),r==null?void 0:r.once){const o=(...i)=>{this.un(t,o),n(...i)};return this.listeners[t].add(o),()=>this.un(t,o)}return this.listeners[t].add(n),()=>this.un(t,n)}un(t,n){var r;(r=this.listeners[t])===null||r===void 0||r.delete(n)}once(t,n){return this.on(t,n,{once:!0})}unAll(){this.listeners={}}emit(t,...n){this.listeners[t]&&this.listeners[t].forEach(r=>r(...n))}}class Vze extends zze{constructor(t){super(),this.subscriptions=[],this.isDestroyed=!1,this.options=t}onInit(){}_init(t){this.isDestroyed&&(this.subscriptions=[],this.isDestroyed=!1),this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach(t=>t()),this.subscriptions=[],this.isDestroyed=!0,this.wavesurfer=void 0}}const Hze={scale:.5,deltaThreshold:5,exponentialZooming:!1,iterations:20};class u6 extends Vze{constructor(t){super(t||{}),this.wrapper=void 0,this.container=null,this.accumulatedDelta=0,this.pointerTime=0,this.oldX=0,this.endZoom=0,this.startZoom=0,this.onWheel=n=>{if(this.wavesurfer&&this.container&&!(Math.abs(n.deltaX)>=Math.abs(n.deltaY))&&(n.preventDefault(),this.accumulatedDelta+=-n.deltaY,this.startZoom===0&&this.options.exponentialZooming&&(this.startZoom=this.wavesurfer.getWrapper().clientWidth/this.wavesurfer.getDuration()),this.options.deltaThreshold===0||Math.abs(this.accumulatedDelta)>=this.options.deltaThreshold)){const r=this.wavesurfer.getDuration(),o=this.wavesurfer.options.minPxPerSec===0?this.wavesurfer.getWrapper().scrollWidth/r:this.wavesurfer.options.minPxPerSec,i=n.clientX-this.container.getBoundingClientRect().left,a=this.container.clientWidth,s=this.wavesurfer.getScroll();i===this.oldX&&this.oldX!==0||(this.pointerTime=(s+i)/o),this.oldX=i;const l=this.calculateNewZoom(o,this.accumulatedDelta),c=a/l*(i/a);l*r<a?(this.wavesurfer.zoom(a/r),this.container.scrollLeft=0):(this.wavesurfer.zoom(l),this.container.scrollLeft=(this.pointerTime-c)*l),this.accumulatedDelta=0}},this.calculateNewZoom=(n,r)=>{let o;if(this.options.exponentialZooming){const i=r>0?Math.pow(this.endZoom/this.startZoom,1/(this.options.iterations-1)):Math.pow(this.startZoom/this.endZoom,1/(this.options.iterations-1));o=Math.max(0,n*i)}else o=Math.max(0,n+r*this.options.scale);return Math.min(o,this.options.maxZoom)},this.options=Object.assign({},Hze,t)}static create(t){return new u6(t)}onInit(){var t;this.wrapper=(t=this.wavesurfer)===null||t===void 0?void 0:t.getWrapper(),this.wrapper&&(this.container=this.wrapper.parentElement,this.container.addEventListener("wheel",this.onWheel),this.options.maxZoom===void 0&&(this.options.maxZoom=this.container.clientWidth),this.endZoom=this.options.maxZoom)}destroy(){this.container&&this.container.removeEventListener("wheel",this.onWheel),super.destroy()}}const Jq=e=>[e/60,e%60].map(t=>`0${Math.floor(t)}`.slice(-2)).join(":"),Rze=({prefixPaths:e=[]})=>{const t=x.useRef(null),n=x.useRef(null),r=x.useRef(null),[o,i]=x.useState(0),[a,s]=x.useState(0),[l,c]=x.useState(!1),[u,d]=x.useState(null),f=ge.useFormInstance(),p=f.getFieldValue([...e,"title"]),g=f.getFieldValue([...e,"record","transcript_original"]),{wavesurfer:b}=Wq({container:t,height:60,waveColor:"#b0dfff",progressColor:"#30b4ff",interact:!0,dragToSeek:!1,url:f.getFieldValue([...e,"record","default_record"]),plugins:x.useMemo(()=>{const C=u6.create({scale:.5,maxZoom:100,deltaThreshold:5,exponentialZooming:!0}),w=c6.create({insertPosition:"afterend",height:15,timeInterval:1,primaryLabelInterval:5,secondaryLabelInterval:1,style:{fontSize:"10px"}}),S=s6.create({dragSelection:!1});return r.current=w,n.current=S,[C,w,S]},[])});x.useEffect(()=>{if(!b)return;const C=n.current;if(C)return C.enableDragSelection({slop:5}),C.on("region-created",w=>{console.log("🟢 Created region:",w.start,w.end),Object.assign(w.element.style,{border:"2px solid rgba(255,165,0,0.8)",borderRadius:"6px",backgroundColor:"transparent",boxSizing:"border-box"}),w.element.querySelectorAll('[part~="region-handle"]').forEach(S=>{Object.assign(S.style,{border:"none",background:"transparent",borderRadius:"0"})})}),C.on("region-updated",w=>{console.log("✏️ Updated region:",w.start,w.end)}),C.on("region-clicked",(w,S)=>{S.stopPropagation(),C.getRegions().forEach(y=>{Object.assign(y.element.style,{border:"2px solid rgba(255,165,0,0.8)",backgroundColor:"transparent"}),y.element.classList.remove("wavesurfer-region-active")}),Object.assign(w.element.style,{border:"2px solid rgba(255,165,0,0.8)",backgroundColor:"rgba(255,165,0,0.25)"}),w.element.classList.add("wavesurfer-region-active"),d(w)}),b.on("audioprocess",w=>s(w)),b.on("ready",()=>i(b.getDuration())),b.on("play",()=>c(!0)),b.on("pause",()=>c(!1)),()=>{C.unAll()}},[b]);const m=x.useCallback(()=>{b==null||b.playPause()},[b]);return x.useEffect(()=>{const C=w=>{u&&(w.key==="Delete"||w.key==="Backspace")&&(w.preventDefault(),u.remove(),d(null))};return window.addEventListener("keydown",C),()=>{window.removeEventListener("keydown",C)}},[u]),v.jsxs(v.Fragment,{children:[v.jsx(Gq,{content:v.jsxs("ul",{style:{margin:0,paddingLeft:10},children:[v.jsx("li",{children:"Cắt thủ công áp dụng cho từng file audio."}),v.jsx("li",{children:"Kéo vị trí khung anh/chị để cắt từ anh/chị từ audio gốc."}),v.jsx("li",{children:"Kéo nút || trên thanh công cụ để cắt bỏ phần đầu và phần cuối không mong muốn."})]})}),v.jsx(Go,{children:v.jsxs(ot,{vertical:!0,gap:20,align:"center",children:[v.jsxs(Er,{style:{width:"100%"},children:[v.jsx(qt,{span:4,children:v.jsx(Ke.Text,{strong:!0,children:p})}),v.jsx(qt,{span:20,children:v.jsx(Ke.Text,{italic:!0,type:"secondary",children:g})})]}),v.jsxs(Er,{style:{width:"100%"},children:[v.jsx(qt,{span:5,style:{display:"flex",alignItems:"center"},children:v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(wt,{size:"large",icon:l?v.jsx(IF,{}):v.jsx($F,{}),type:"primary",onClick:m}),v.jsxs(Ke.Text,{strong:!0,children:[Jq(a),"/",Jq(o)]})]})}),v.jsx(qt,{span:19,children:v.jsx("div",{ref:t})})]}),v.jsx(wt,{icon:v.jsx(js,{}),style:{color:"white",backgroundColor:xn.button.volcano},children:"Tạo file nam/nữ"})]})})]})},Wze=({onConfirm:e})=>{const{isOpen:t,onToggle:n}=Hr(),r=()=>{e(),n()};return v.jsx(mc,{open:t,title:"Khôi phục tất cả audio gốc",description:"Bạn có chắc chắn muốn khôi phục audio gốc",onConfirm:r,onCancel:n,okText:"Có",cancelText:"Không",children:v.jsx(wt,{onClick:n,className:"float-right",type:"link",icon:v.jsx(PF,{}),children:"Khôi phục tất cả audio gốc"})})},Qze=({prefixPaths:e=[]})=>{const t=ge.useFormInstance();return ge.useWatch([...e,"record","volume"],t),ge.useWatch([...e,"record","speed"],t),v.jsxs(v.Fragment,{children:[v.jsxs(Er,{gutter:8,align:"middle",children:[v.jsx(qt,{xs:20,sm:18,md:20,children:v.jsx(ge.Item,{name:[...e,"record","volume"],label:"Âm lượng",labelCol:{span:4},labelAlign:"left",children:v.jsx(VE,{min:.1,max:2,step:.1,tooltip:{open:!1}})})}),v.jsx(qt,{xs:4,sm:6,md:4,children:v.jsx(ge.Item,{name:[...e,"record","volume"],labelAlign:"left",children:v.jsx(Uo,{min:.1,max:2,step:.1,style:{width:"100%"}})})})]}),v.jsxs(Er,{gutter:8,align:"middle",children:[v.jsx(qt,{xs:20,sm:18,md:20,children:v.jsx(ge.Item,{name:[...e,"record","speed"],label:"Tốc độ",labelCol:{span:4},labelAlign:"left",children:v.jsx(VE,{min:.1,max:2,step:.1,tooltip:{open:!1}})})}),v.jsx(qt,{xs:4,sm:6,md:4,children:v.jsx(ge.Item,{name:[...e,"record","speed"],labelAlign:"left",children:v.jsx(Uo,{min:.1,max:2,step:.1,style:{width:"100%"}})})})]}),v.jsx(ot,{justify:"center",children:v.jsx(wt,{type:"primary",children:"Áp dụng"})})]})},Kze=({prefixPaths:e=[]})=>{const[t,n]=x.useState(!0),{isOpen:r,onOpen:o,onToggle:i}=Hr(),s=ge.useFormInstance().getFieldValue([...e,"title"]);return v.jsxs(v.Fragment,{children:[v.jsx(wt,{type:"text",onClick:o,icon:v.jsx(Wf,{})}),v.jsx(Tr,{title:"Chỉnh sửa file ghi âm",open:r,onCancel:i,onOk:i,destroyOnHidden:!0,width:900,footer:[v.jsx(wt,{type:"primary",onClick:i,children:"Hoàn thành"},"submit")],children:v.jsxs(ot,{vertical:!0,gap:12,children:[v.jsxs(ot,{justify:"space-between",children:[v.jsx(Ke.Paragraph,{strong:!0,children:`File ghi âm ${s}`}),v.jsx(Wze,{onConfirm:()=>{}})]}),v.jsxs(Yi,{theme:{components:{Collapse:{headerBg:xn.collapseHeaderBg.background}}},children:[v.jsx(X0,{size:"small",defaultActiveKey:["1"],items:[{key:"1",label:"Âm lượng & Tốc độ",children:v.jsx(Qze,{})}]}),v.jsx(X0,{size:"small",defaultActiveKey:["1"],items:[{key:"1",label:v.jsxs(Bn,{children:[v.jsx(Ke.Text,{children:"Trim audio & cắt file nam/nữ"}),v.jsx(as,{icon:v.jsx(cb,{}),color:"volcano",onClick:l=>{l.stopPropagation(),l.preventDefault(),n(!t)},children:t?"Cắt file thủ công":"Cắt file tự động"})]}),children:t?v.jsx(Dze,{}):v.jsx(Rze,{})}]})]})]})})]})},{TextArea:qze}=Ht,Gze=({placeholder:e="Vui lòng tải lên ghi âm để cá nhân hoá",rows:t=4})=>{const n=Vu(),r=x.useRef(null),{isOpen:o,onOpen:i,onClose:a}=Hr(),[s,l]=x.useState(""),[c,u]=x.useState("confirm"),d=S=>{},f=S=>{var M;const y=r.current;if(!y)return;const E=(M=y.resizableTextArea)==null?void 0:M.textArea;if(!E)return;const N=E.value.substring(E.selectionStart,E.selectionEnd);N.trim()?(l(N),u("confirm"),i()):a()},p=()=>{u("configure")},g=()=>{a(),l(""),u("confirm")},b=()=>{var T;const S=r.current;if(!S)return;const y=(T=S.resizableTextArea)==null?void 0:T.textArea;if(!y)return;const E=y.value,N=E.substring(0,y.selectionStart),M=E.substring(y.selectionEnd),$=prompt("Nhập tên biến"),O=N+`{{${$}}}`+M;n.setFieldValue(["record","transcript_personalize"],O),n.submit(),a(),l(""),u("confirm")},m=()=>{a(),l(""),u("confirm")},C=()=>v.jsxs("div",{style:{minWidth:"300px"},children:[v.jsx("div",{style:{marginBottom:"16px"},children:v.jsxs(Ke.Text,{children:["Bạn muốn thay thế cụm từ ",v.jsx("strong",{children:s})," bằng biến?"]})}),v.jsx(lo,{isOpen:c==="configure",children:v.jsx("div",{children:v.jsx("div",{style:{padding:"16px",backgroundColor:"#f5f5f5",borderRadius:"8px"},children:v.jsx("p",{children:"TODO: Component tìm kiếm tên trường"})})})})]}),w=()=>c==="confirm"?{onConfirm:p,onCancel:g,okText:"Thêm biến",cancelText:"Hủy"}:{onConfirm:b,onCancel:m,okText:"Thêm biến",cancelText:"Hủy"};return v.jsxs(v.Fragment,{children:[v.jsx(mc,{title:C(),...w(),open:o,icon:!1,children:v.jsx(Ke.Text,{type:"secondary",children:"Xoá cụm từ trong kịch bản, sau đó điền biến vào chỗ vừa xoá bằng cách nhập {{ten_bien}}."})}),v.jsx(qze,{ref:r,placeholder:e,rows:t,value:n.getFieldValue(["record","transcript_personalize"]),onChange:d,onMouseUp:f,style:{width:"100%",border:"none",borderRadius:kz.block.rounded.borderRadius,backgroundColor:xn.common.gray,padding:"12px",marginTop:"12px",fontSize:"14px",lineHeight:"1.5",resize:"none"}})]})},fC=({onUploadSuccess:e,fieldName:t="audio",disabled:n=!1,beforeUpload:r})=>{const{mutateAsync:o,isPending:i}=Kq(),a=lC(),s=async c=>await o({audio:c}),l={name:t,accept:".mp3,.wav,.m4a",showUploadList:!1,beforeUpload:async c=>{if(r==null||r(),!["audio/mp3","audio/mpeg","audio/wav","audio/x-wav","audio/m4a","audio/x-m4a"].includes(c.type))return a.error("Chỉ chấp nhận file audio (mp3, wav, m4a)"),!1;if(!(c.size/1024/1024<50))return a.error("File phải nhỏ hơn 50MB!"),!1;try{const f=await s(c);e==null||e(f)}catch(f){a.error("Tải lên audio thất bại!"),console.error("Upload error:",f)}return!1}};return v.jsx(eh,{...l,children:v.jsx(wt,{icon:i?v.jsx(va,{}):v.jsx(fx,{}),disabled:n||i,loading:i,children:i?"Đang tải lên...":"Tải lên"})})},{TextArea:d6}=Ht,{Text:_m}=Ke,Uze=({prefixPaths:e=[]})=>{const[t,n]=x.useState(),r=ge.useWatch([...e,"record","detect_gender"]),o=ge.useWatch([...e,"record","personalize"]),i=Vu(),a=ge.useWatch([...e,"record","default_record"],i),s=ge.useWatch([...e,"record","male_record"],i),l=ge.useWatch([...e,"record","female_record"],i);return v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{name:[...e,"record","default_record"],valuePropName:"checked",style:{marginBottom:"8px",paddingTop:8},className:Tze,label:v.jsxs(ot,{justify:"space-between",align:"center",style:{width:"100%"},children:[v.jsx(ir,{placement:"right",title:v.jsxs(v.Fragment,{children:["Nếu bạn ghi âm, node này sẽ sử dụng file ghi âm khi gọi",v.jsx("br",{}),"Nếu bạn bỏ trống, node này sử dụng giọng bot"]}),children:v.jsx(_m,{strong:!0,children:"Ghi âm"})}),v.jsx(ir,{title:"Cập nhật nội dung văn bản theo file ghi âm",children:v.jsx(wt,{size:"small",icon:v.jsx(sF,{}),type:"primary",onClick:()=>{const c=i.getFieldValue([...e,"record","transcript_original"]);i.setFieldValue([...e,"machine","content"],c)}})})]}),children:v.jsxs("div",{children:[v.jsx(lo,{isOpen:!a,children:v.jsxs(ot,{align:"center",gap:12,children:[t?null:v.jsx(fC,{beforeUpload:()=>{n(!1)},onUploadSuccess:({file:c,transcript_text:u,transcript:d})=>{i.setFieldValue([...e,"record","default_record"],c),i.setFieldValue([...e,"record","transcript_original"],u),i.setFieldValue([...e,"record","transcript_with_timestamp"],d),i.submit()}}),t||$t.isUndefined(t)?v.jsx(uC,{onStartRecord:()=>{n(!0)},onFinishRecord:({file:c,transcript_text:u,transcript:d})=>{i.setFieldValue([...e,"record","default_record"],c),i.setFieldValue([...e,"record","transcript_original"],u),i.setFieldValue([...e,"record","transcript_with_timestamp"],d),i.submit(),n(void 0)}}):null]})}),v.jsx(lo,{isOpen:!!a,children:v.jsx(a6,{onDelete:()=>n(void 0),url:a,formPath:[[...e,"record","default_record"],[...e,"record","transcript_original"]]})})]})}),a?v.jsxs(v.Fragment,{children:[v.jsxs(ot,{justify:"space-between",align:"center",children:[v.jsx(ge.Item,{name:[...e,"record","detect_gender"],valuePropName:"checked",style:{marginBottom:"0px"},children:v.jsx(Vr,{disabled:!!o,children:v.jsx(ir,{title:o?"Tắt cá nhân hoá nội dung để dùng tính năng này":null,children:v.jsx(_m,{strong:!0,children:"Cá nhân hoá giới tính"})})})}),o||!r?null:v.jsx(Kze,{})]}),v.jsx(lo,{isOpen:r,children:v.jsxs(Er,{gutter:[0,16],children:[v.jsx(ge.Item,{name:[...e,"record","male_record"],noStyle:!0,children:v.jsxs(Bn,{direction:"vertical",size:0,wrap:!0,children:[v.jsx(_m,{children:"Khách hàng nam"}),v.jsx(lo,{isOpen:!s,children:v.jsxs(ot,{align:"center",gap:12,children:[t?null:v.jsx(fC,{onUploadSuccess:({file:c})=>{i.setFieldValue([...e,"record","male_record"],c),i.submit()}}),t||$t.isUndefined(t)?v.jsx(uC,{onStartRecord:()=>{n(!0)},onFinishRecord:({file:c})=>{i.setFieldValue([...e,"record","male_record"],c),i.submit(),n(void 0)}}):null]})}),v.jsx(lo,{isOpen:!!s,children:v.jsx(a6,{url:s,formPath:[[...e,"record","male_record"]]})})]})}),v.jsx(ge.Item,{name:[...e,"record","female_record"],noStyle:!0,children:v.jsx(Bn,{direction:"horizontal",size:0,wrap:!0,children:v.jsxs(Bn,{direction:"vertical",size:0,wrap:!0,children:[v.jsx(_m,{children:"Khách hàng nữ"}),v.jsx(lo,{isOpen:!l,children:v.jsxs(ot,{align:"center",gap:12,children:[t?null:v.jsx(fC,{onUploadSuccess:({file:c})=>{i.setFieldValue([...e,"record","female_record"],c),i.submit()}}),t||$t.isUndefined(t)?v.jsx(uC,{onStartRecord:()=>{n(!0)},onFinishRecord:({file:c})=>{i.setFieldValue([...e,"record","female_record"],c),i.submit(),n(void 0)}}):null]})}),v.jsx(lo,{isOpen:!!l,children:v.jsx(a6,{url:l,formPath:[[...e,"record","female_record"]]})})]})})})]})}),v.jsx(Aa,{style:{margin:"8px 0"}}),v.jsx(ge.Item,{name:[...e,"record","personalize"],valuePropName:"checked",style:{marginBottom:"8px"},children:v.jsx(Vr,{disabled:!!r,onChange:c=>{console.log("e",c.target.checked),c.target.checked?i.setFieldValue([...e,"record","transcript_personalize"],i.getFieldValue([...e,"record","transcript_original"])):i.setFieldValue([...e,"record","transcript_personalize"],void 0)},children:v.jsx(ir,{title:r?"Tắt cá nhân hoá giới tính để dùng tính năng này":null,children:v.jsx(_m,{strong:!0,children:"Cá nhân hoá nội dung"})})})}),v.jsx(lo,{isOpen:o,children:v.jsx(Gze,{})})]}):null,v.jsx(ge.Item,{name:[...e,"record","transcript_with_timestamp"],label:"Transcript với timestamp",hidden:!0,children:v.jsx(d6,{placeholder:"<span start='0.0' end='0.3'>em</span> ...",rows:2})}),v.jsx(ge.Item,{name:[...e,"record","transcript_original"],label:"Transcript gốc",hidden:!0,children:v.jsx(d6,{placeholder:"Em chào anh chị ạ",rows:2})}),v.jsx(ge.Item,{name:[...e,"record","transcript_personalize"],label:"Transcript cá nhân hóa",hidden:!0,children:v.jsx(d6,{placeholder:"Em chào {{name}} ạ",rows:2})})]})},{TextArea:Yze}=Ht,Xze=({prefixPaths:e=[]})=>{const t=ge.useFormInstance(),n=ge.useWatch([...e,"record","default_record"],t);return v.jsxs(v.Fragment,{children:[v.jsxs("div",{className:Lq,children:[v.jsx(ge.Item,{name:[...e,"machine","content"],style:{marginBottom:"8px"},children:v.jsx(Yze,{placeholder:"Nhập kịch bản",rows:4,className:n6})}),v.jsx(ir,{className:yze,placement:"left",title:`Khi đã tải lên file ghi âm, bot sẽ ưu tiên sử dụng nội dung
|
|
708
|
-
của file ghi âm, mà không dùng nội dung văn bản này.`,children:v.jsx(yc,{})}),n?v.jsx(jq,{className:Fq,record:n}):null]}),v.jsx(Uze,{})]})},{TextArea:Zze}=Ht,Jze=({prefixPaths:e=[]})=>v.jsx(ge.Item,{name:[...e,"prompt","content"],noStyle:!0,children:v.jsx(Zze,{placeholder:"Nhập prompt",rows:4,className:n6})}),eVe=({id:e})=>{const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e),a=o.length!==0||i.length!==0,{data:s}=t(e),l=s,[c]=ge.useForm(),u=ge.useWatch(["type"],c)||Ao.MACHINE_AND_RECORD,d=p=>{r(e,p)},f=$t.debounce(()=>{c.submit()},500);return v.jsx("div",{className:bze,children:v.jsxs(ge,{form:c,layout:"vertical",initialValues:{...l},onFinish:d,onValuesChange:f,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsxs(Bn,{direction:"vertical",size:"small",style:{width:"100%"},children:[v.jsx(ge.Item,{name:["type"],noStyle:!0,children:v.jsx(Bu,{size:"middle",block:!0,options:[{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(Il,{}),"Câu cố định"]}),value:Ao.MACHINE_AND_RECORD},{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(js,{}),"Prompt"]}),value:Ao.PROMPT}]})}),v.jsx(lo,{isOpen:u===Ao.MACHINE_AND_RECORD,children:v.jsx(Xze,{})}),v.jsx(lo,{isOpen:u===Ao.PROMPT,children:v.jsx(Jze,{})}),v.jsxs(Vs,{visible:a,children:[v.jsx(Aa,{style:{margin:"4px 0"}}),!$t.isEmpty(o)&&v.jsx("div",{className:Bq,children:o.map(p=>v.jsx(Su,{message:p.title,description:p.description,type:"info",showIcon:!0,closable:!0,style:{padding:"12px",margin:"12px 0"}},p.title))}),!$t.isEmpty(i)&&v.jsx("div",{className:Bq,children:i.map(p=>v.jsx(Su,{style:{padding:"12px"},message:p.title,description:p.description,type:"error",showIcon:!0,closable:!0},p.title))})]})]})]})})},f6=({id:e,data:t,mini:n})=>{var b,m;const{displayComponent:r,nodeId:o,closeModal:i}=Ur(),a=Po(),{errors:s}=ra(e),l=t.title||"Node nói",c=t.type||Ao.MACHINE_AND_RECORD,u=x.useMemo(()=>{var C,w;return c===Ao.MACHINE_AND_RECORD?((C=t==null?void 0:t.machine)==null?void 0:C.content)??"":((w=t==null?void 0:t.prompt)==null?void 0:w.content)??""},[c,t]),[d,f]=x.useState(u);x.useEffect(()=>{f(u)},[u]);const p=x.useMemo(()=>$t.debounce(C=>{c===Ao.MACHINE_AND_RECORD?a(e,{...t,machine:{...t.machine,content:C}}):a(e,{...t,prompt:{...t.prompt,content:C}})},300),[c,e,t]),g=C=>{C.target.closest(`button, [role="button"], input, textarea, .${Ti}-modal-wrap, audio`)||(C.stopPropagation(),C.preventDefault(),r(v.jsx(eVe,{id:e}),"Cài đặt node nói",()=>{},e))};return n?v.jsx("div",{className:gze,children:v.jsx("div",{className:Pq,children:v.jsx("div",{className:_q,children:v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:Dq,children:v.jsx(Cb,{})}),v.jsx("span",{className:mze,children:l})]})})})}):v.jsx("div",{className:pze,onClick:g,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&g(C)},children:v.jsxs("div",{className:`${Pq} ${o===e?kq.active:kq.default}`,children:[v.jsxs("div",{className:_q,children:[v.jsxs(Bn,{size:4,children:[v.jsx("span",{className:Dq,children:v.jsx(Cb,{})}),v.jsx(ah,{id:e,color:xn.common.red})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.common.red})]}),v.jsxs(ot,{gap:6,vertical:!0,style:{width:"100%"},children:[v.jsx(Bu,{block:!0,size:"small",style:{width:"100%",fontSize:12},value:c,options:[{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(Il,{size:12}),"Câu cố định"]}),value:Ao.MACHINE_AND_RECORD,disabled:c===Ao.PROMPT},{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(js,{size:12}),"Prompt"]}),value:Ao.PROMPT,disabled:c===Ao.MACHINE_AND_RECORD}]}),v.jsx(lo,{isOpen:!$t.isEmpty(s),children:v.jsx("div",{className:vze,children:s.map(C=>v.jsx(Su,{message:C.title,type:"error",showIcon:!0,closable:!0,style:{width:"100%"}},`alert-${e}-${C.title}`))})})]}),v.jsxs("div",{className:Lq,children:[v.jsx(Ht.TextArea,{onWheelCapture:C=>{C.stopPropagation()},rows:4,autoSize:{minRows:4,maxRows:4},placeholder:"Vui lòng nhập nội dung",className:n6,onFocus:()=>i(),value:d,onChange:C=>{const w=C.target.value;f(w),p(w)}}),(b=t.record)!=null&&b.default_record?v.jsx(jq,{className:Fq,record:(m=t.record)==null?void 0:m.default_record,style:{right:2}}):null]})]})})};var tVe="scripts_editor_1b2l0x40",nVe="scripts_editor_1b2l0x41",eG="scripts_editor_1b2l0x42",tG="scripts_editor_1b2l0x43",nG="scripts_editor_1b2l0x44",rG="scripts_editor_1b2l0x45",rVe="scripts_editor_1b2l0x46",oVe="scripts_editor_1b2l0x49",oG="scripts_editor_1b2l0x4a",iG="scripts_editor_1b2l0x4d",iVe="scripts_editor_flqrya0",aVe="scripts_editor_flqrya1",sVe="scripts_editor_flqrya2 scripts_editor_flqrya1",aG="scripts_editor_flqrya3",lVe="scripts_editor_flqrya4",cVe="scripts_editor_flqrya5 scripts_editor_flqrya4";const sG=({mini:e})=>e?v.jsxs("div",{className:sVe,children:[v.jsx("span",{className:aG,children:v.jsx(Oz,{style:{fontSize:"20px"}})}),v.jsx("span",{className:cVe,children:"Bắt đầu"})]}):v.jsx("div",{className:iVe,children:v.jsxs("div",{className:aVe,children:[v.jsx("span",{className:aG,children:v.jsx(Oz,{})}),v.jsx("span",{className:lVe,children:"Bắt đầu"})]})}),uVe=({id:e,data:t})=>v.jsxs(ui,{nodeId:e,children:[v.jsx(cr,{type:"source",position:Yt.Right}),v.jsx(sG,{id:e,data:t})]}),dVe=({id:e})=>{const t=ose(),n=ase(),{fitView:r}=Pn(),o=uoe({id:e},t,n),i=coe({id:e},t,n),a=x.useCallback(c=>{r({nodes:[{id:c}],padding:.2,duration:700})},[r]),s=x.useCallback(c=>c.length===0?v.jsx(Ke.Text,{type:"secondary",children:"Không có node nào"}):v.jsx(Vs,{wrapperTag:u=>v.jsx(Bn,{...u,direction:"vertical",wrap:!0,size:0,style:{width:"100%"}}),children:c.map(u=>{const d={id:u.id,data:u.data,mini:!0};let f=v.jsx(Ke.Text,{children:"NODE_NOT_IMPLEMENTED"},u.id);return u.type===st.START&&(f=v.jsx(sG,{...d})),u.type===st.SPEAK&&(f=v.jsx(f6,{...d})),u.type===st.LISTEN&&(f=v.jsx(t6,{...d})),u.type===st.TRANSFER&&(f=v.jsx(h6,{...d})),v.jsx("div",{onMouseDown:p=>(p.stopPropagation(),a(u.id)),style:{width:"100%",border:"none",background:"transparent",padding:0,margin:0,cursor:"pointer",outline:"none",textAlign:"left"},children:f},u.id)})}),[a]),l=[{key:"1",label:v.jsx("b",{children:"Mối quan hệ"}),children:v.jsxs(Bn,{wrap:!0,direction:"vertical",size:8,style:{width:"100%"},children:[v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node trước"}),s(o),v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node sau"}),s(i),v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node cha"}),s([])]}),styles:{header:{padding:"0px 0px 12px 0px"},body:{padding:0}}}];return v.jsx(X0,{ghost:!0,items:l})},fVe=()=>v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Cài đặt tổng đài"}),v.jsx(ge.Item,{label:"Chọn nhánh nội bộ",name:["external","value"],style:{marginBottom:12},children:v.jsx(Ht,{placeholder:"Nhập số điện thoại"})}),v.jsx(ge.Item,{noStyle:!0,name:["external","maximum_try"],children:v.jsx(Uo,{addonBefore:"Chờ tối đa",addonAfter:"giây",min:1,max:300,placeholder:"30",style:{width:"100%"}})})]}),hVe=()=>v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Cài đặt tổng đài"}),v.jsx(ge.Item,{label:"Chọn nhánh nội bộ",name:["internal","value"],style:{marginBottom:12},children:v.jsx(Ht,{placeholder:"Chọn nhánh nội bộ hoặc nhập số điện thoại"})}),v.jsx(ge.Item,{noStyle:!0,name:["internal","maximum_try"],children:v.jsx(Uo,{addonBefore:"Chờ tối đa",addonAfter:"giây",min:1,max:300,placeholder:"30",style:{width:"100%"}})})]}),pVe=({id:e})=>{const{getNode:t}=Pn(),{data:n}=t(e),r=n,[o]=ge.useForm(),[i,a]=x.useState(r.type),{infos:s}=ra(e),l=Po(),c=d=>{l(e,d)},u=$t.debounce(()=>{o.submit()},500);return x.useEffect(()=>{o.setFieldsValue({...r}),a(r.type)},[r,o]),v.jsxs(ge,{form:o,layout:"vertical",onFinish:c,onBlur:()=>{o.submit()},onChange:()=>{u()},children:[v.jsx(ge.Item,{name:"type",noStyle:!0,children:v.jsx(Bu,{value:i,onChange:d=>{a(d)},options:[{label:"Tổng đài",value:ss.INTERNAL},{label:"Điện thoại",value:ss.EXTERNAL}],block:!0})}),v.jsxs(Bn,{direction:"vertical",size:8,style:{width:"100%",marginTop:16},children:[v.jsx(lo,{isOpen:i===ss.INTERNAL,children:v.jsx(hVe,{})}),v.jsx(lo,{isOpen:i===ss.EXTERNAL,children:v.jsx(fVe,{})}),!$t.isEmpty(s)&&v.jsx(Vs,{children:s.map(d=>v.jsx(Su,{message:d.title,description:d.description,type:"info",showIcon:!0,closable:!0,style:{padding:"12px",margin:"12px 0"}},d.title))})]}),v.jsx(Aa,{}),v.jsx(dVe,{id:e}),v.jsx("div",{style:{height:"200px"}})]})},h6=({id:e,data:t,mini:n,group:r})=>{const{displayComponent:o}=Ur(),i=t.title||"Chuyển máy",a=t.type||ss.INTERNAL,s=Fp(),l=u=>{var d;(d=u.target)!=null&&d.closest("button")||(u.stopPropagation(),u.preventDefault(),o(v.jsx(pVe,{id:e}),"Cài đặt chuyển máy"),s(e))},c=x.useMemo(()=>a===ss.INTERNAL?"Tổng đài":a===ss.EXTERNAL?"Điện thoại":"UNKNOWN",[a]);return n?v.jsx("div",{className:nVe,children:v.jsx("div",{className:eG,children:v.jsxs("div",{className:tG,children:[v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:nG,children:v.jsx(NF,{})}),v.jsx("span",{className:rG,children:i})]}),v.jsx("div",{className:rVe,children:c})]})})}):v.jsx("div",{className:tVe,onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&l(u)},children:v.jsxs("div",{className:eG,children:[v.jsxs("div",{className:tG,children:[v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:nG,children:v.jsx(n8e,{})}),v.jsx("span",{className:rG,children:i}),v.jsx(ah,{id:e,color:xn.icon.transferCall})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.icon.transferCall})]}),!r&&v.jsx("div",{className:oVe,children:v.jsxs(Vs,{children:[v.jsxs("div",{className:oG,children:["Chuyển máy thành công",v.jsx(cr,{type:"target",id:`${e}_success`,position:Yt.Right,className:iG,style:{top:"50%",right:"8%"}})]}),v.jsxs("div",{className:oG,children:["Chuyển máy thất bại",v.jsx(cr,{type:"target",id:`${e}_failed`,position:Yt.Right,className:iG,style:{top:"75%",right:"8%"}})]})]})})]})})},gVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(h6,{id:t,data:e})]}),mVe=[st.SPEAK,st.TRANSFER],vVe=e=>{const t=yq(e);return{verifyAddable:x.useCallback(r=>{const o=mVe.includes(r);let i=!0;const a=[];return o||(i=!1,a.push("Block này không hỗ trợ thêm vào nhóm")),t.filter(s=>s.type===st.SPEAK).length>0&&r===st.SPEAK&&(i=!1,a.push("Nhóm chỉ có thể chứa tối đa 1 block nói")),t.filter(s=>s.type===st.TRANSFER).length>0&&r===st.TRANSFER&&(i=!1,a.push("Nhóm chỉ có thể chứa tối đa 1 block chuyển máy")),{allowed:i,errors:a}},[t])}};var bVe="scripts_editor_dxvfua1",yVe="scripts_editor_dxvfua2",CVe="scripts_editor_dxvfua3",AVe="scripts_editor_dxvfua4",wVe="scripts_editor_dxvfua5 scripts_editor_dxvfua4";const{Text:lG}=Ke,SVe=({id:e,data:t})=>{const[n]=sC(),{setNodes:r}=Pn(),{screenToFlowPosition:o}=Pn(),i=yq(e),{verifyAddable:a}=vVe(e),{error:s}=lC(),l=i.length>0,c=p=>{p.preventDefault(),p.dataTransfer.dropEffect="move"},u=p=>`${e}_${p.toLowerCase()}_${qu()}`,d=p=>{if(p.preventDefault(),!n)return;const g=a(n);if(!g.allowed){g.errors.forEach(C=>{s({content:C,key:C})});return}const b=o({x:p.clientX,y:p.clientY}),m={id:u(n),type:n,position:b,data:{title:rh[n],...Vg[n]},deletable:!0,...Hg[n],parentId:e,extent:"parent",hidden:!0};r(C=>C.concat(m))},f=x.useMemo(()=>i.map(p=>p.type===st.SPEAK?v.jsx(f6,{...p,data:p.data,group:!0},p.id):p.type===st.LISTEN?v.jsx(t6,{...p,data:p.data,group:!0},p.id):p.type===st.TRANSFER?v.jsx(h6,{...p,data:p.data,group:!0},p.id):v.jsx(v.Fragment,{})),[i]);return v.jsx("div",{children:v.jsxs(Go,{className:bVe,styles:{body:{padding:"8px",display:"flex",flex:1,flexDirection:"column",height:"100%",minHeight:"100%"}},children:[v.jsxs("div",{className:`${yVe} drag-handle__custom`,children:[v.jsxs("div",{className:CVe,children:[v.jsx(zje,{size:16,color:xn.common.black}),v.jsx(lG,{strong:!0,children:t.title}),v.jsx(ah,{id:e,color:xn.common.black})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.common.black})]}),v.jsx(Bn,{direction:"vertical",size:8,children:f}),v.jsx("button",{className:l?AVe:wVe,onDragOver:c,onDrop:d,type:"button","data-group-drop-zone":"true",children:v.jsx(lG,{children:"Thả block vào đây"})}),v.jsxs(Bn,{direction:"vertical",size:8,style:{marginTop:8},children:[v.jsxs(Go,{styles:{body:{padding:"12px"}},children:["Thực hiện thành công",v.jsx(cr,{type:"source",position:Yt.Right})]}),v.jsxs(Go,{styles:{body:{padding:"12px"}},children:["Thực hiện thất bại",v.jsx(cr,{type:"source",position:Yt.Right})]})]})]})})},EVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(SVe,{id:t,data:e})]});var xVe="scripts_editor_1300n210",IVe="scripts_editor_1300n211",NVe="scripts_editor_1300n212",OVe="scripts_editor_1300n213",$Ve="scripts_editor_1300n215",MVe="scripts_editor_1300n217",TVe="scripts_editor_1300n218",PVe="scripts_editor_1300n219",kVe="scripts_editor_1300n21a",_Ve="scripts_editor_1300n21b",DVe="scripts_editor_1300n21c",BVe="scripts_editor_1300n21d";const p6={SEND_IN_APP_WEB:"Gửi thông báo trong app",TELEGRAM:"Gửi thông báo qua Telegram"},LVe={SEND_IN_APP_WEB:"Gửi thông báo trong app",TELEGRAM:"Gửi thông báo qua Telegram"},FVe=$t.keys(p6),jVe=()=>{const e=ge.useFormInstance(),t=ge.useWatch("type",e);return v.jsxs("div",{children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm hành động",allowClear:!0,onSearch:n=>{console.log("🚀 ~ e:",n)},style:{marginBottom:12}}),v.jsx(ge.Item,{name:"type",label:null,children:v.jsx(er.Group,{className:MVe,children:v.jsx(Bn,{direction:"vertical",className:TVe,size:12,children:FVe.map(n=>v.jsxs(er,{value:n,className:PVe,children:[v.jsxs("div",{className:kVe,children:[v.jsx(Ke.Title,{level:5,style:{margin:0},children:p6[n]}),v.jsx(Ke.Text,{type:"secondary",children:LVe[n]})]}),t===n&&v.jsxs("div",{className:_Ve,children:[v.jsx("div",{className:DVe}),v.jsx(Ji,{className:BVe})]})]},n))})})})]})},zVe=({id:e,outputs:t})=>{const{getNode:n}=Pn();Po();const r=n(e);r==null||r.data;const o=[{title:e,key:e,icon:v.jsx(Cl,{}),children:kc(t??[]).map(i=>({...i,icon:()=>{var s;const a=qs[((s=i.meta)==null?void 0:s.iconType)??""]??null;return a?v.jsx(a,{}):void 0}}))}];return v.jsx(Ls,{showLine:!0,showIcon:!0,switcherIcon:v.jsx(Za,{}),defaultExpandedKeys:[e],treeData:o})},VVe=()=>{const{emit:e}=Z5();return v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{name:"to",label:"Người nhận thông báo",children:v.jsx(dd,{isCheckPrefix:!1,placeholder:"Chọn người nhận thông báo"})}),v.jsx(ge.Item,{name:"subject",label:"Tiêu đề thông báo",children:v.jsx(dd,{children:v.jsx(Ht,{placeholder:"Nhập tiêu đề thông báo"})})}),v.jsx(ge.Item,{name:"content",label:"Nội dung thông báo",children:v.jsx(dd,{children:v.jsx(Ht.TextArea,{rows:4,placeholder:"Nhập nội dung thông báo"})})})]})},HVe=()=>v.jsxs(ot,{vertical:!0,gap:12,children:[v.jsx(Ke.Text,{strong:!0,children:"Gửi thông báo"}),v.jsx(wt,{type:"primary",icon:v.jsx(W5,{}),children:"Gửi thử"})]}),RVe=({id:e})=>{var C;const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e);o.length!==0||i.length;const{data:a}=t(e),s=a,[l]=ge.useForm(),[c,u]=x.useState("1"),d=ge.useWatch("type",l),{data:f}=fd({type:st.NOTIFICATION,action:s==null?void 0:s.type});x.useEffect(()=>{var w,S;r(e,{...s,output:((S=(w=f==null?void 0:f.data)==null?void 0:w.outputs)==null?void 0:S.map(y=>({...y,object:e})))||[]})},[f==null?void 0:f.data,e,r]),x.useEffect(()=>{d&&u("2")},[d]);const p=x.useRef(!0);x.useEffect(()=>{p.current&&(l.setFieldsValue({...s}),p.current=!1)},[s]);const g=w=>{const S=By(Dy(w));r(e,{...w,variables:S})},b=$t.debounce(()=>{l.submit()},500),m=[{key:"1",label:"Hành động",children:v.jsx(jVe,{})},{key:"2",label:"Cài đặt",children:v.jsx(VVe,{}),disabled:!d},{key:"3",label:"Kiểm thử",children:v.jsx(HVe,{}),disabled:!d},{key:"4",label:"Đầu ra",children:v.jsx(zVe,{id:e,outputs:(C=f==null?void 0:f.data)==null?void 0:C.outputs}),disabled:!d}];return v.jsx("div",{className:$Ve,children:v.jsxs(ge,{form:l,layout:"vertical",onFinish:g,onValuesChange:b,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsx(si,{activeKey:c,onChange:u,items:m})]})})},WVe=({id:e,data:t,mini:n})=>{const{mode:r}=Zn(),{displayComponent:o}=Ur(),i=t.title||"Thông báo",a=s=>{const l=s.target;l!=null&&l.closest(`button, [role="button"], .${Ti}-modal-wrap, input, textarea`)||(s.stopPropagation(),s.preventDefault(),o(r==="history"?v.jsx(Tl,{id:e}):v.jsx(RVe,{id:e}),i,()=>{},e))};return n?v.jsx(v.Fragment,{}):v.jsx("div",{className:xVe,onClick:a,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&a(s)},children:v.jsxs("div",{className:`${IVe}`,children:[v.jsxs(ot,{align:"center",justify:"space-between",style:{width:"100%"},children:[v.jsxs(ot,{align:"center",justify:"flex-start",style:{width:"100%"},gap:12,children:[v.jsx("div",{className:NVe,children:v.jsx(z4,{color:"#096DD9",variant:"Bold",size:24,className:OVe})}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:i})]}),v.jsx(kl,{id:e})]}),v.jsxs(Er,{gutter:[12,6],style:{width:"100%"},children:[v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Hành động"})}),v.jsx(qt,{span:16,children:v.jsx(Ke.Text,{children:p6[t.type]})}),v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Người nhận"})}),v.jsx(qt,{span:16,children:v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{ellipsis:{rows:1,expanded:!1,tooltip:t.to},style:{marginBottom:"unset"},children:v.jsx(Ke.Text,{children:t.to})})})})]})]})})},QVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(WVe,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]});var KVe="scripts_editor_1osrdyg0",qVe="scripts_editor_1osrdyg1",GVe="scripts_editor_1osrdyg2",UVe="scripts_editor_1osrdyg3",YVe="scripts_editor_1osrdyg4",XVe="scripts_editor_1osrdyg5",ZVe="scripts_editor_1osrdyg7",JVe="scripts_editor_1osrdyg8",eHe="scripts_editor_1osrdyg9",tHe="scripts_editor_1osrdyga",nHe="scripts_editor_1osrdygb",rHe="scripts_editor_1osrdygc",oHe="scripts_editor_1osrdygd",cG="scripts_editor_1osrdygg",Ll=(e=>(e.DAILY="DAILY",e.WEEKLY="WEEKLY",e.MONTHLY="MONTHLY",e.PERIODIC="PERIODIC",e))(Ll||{}),uG=(e=>(e.DEFAULT_2_YEARS="DEFAULT_2_YEARS",e.CUSTOM="CUSTOM",e))(uG||{}),dG=(e=>(e.FIRST_DAY="FIRST_DAY",e.LAST_DAY="LAST_DAY",e.CUSTOM="CUSTOM",e))(dG||{}),fG=(e=>(e.MINUTES="MINUTES",e.HOURS="HOURS",e.DAYS="DAYS",e))(fG||{});const g6={DAILY:"Kích hoạt hàng ngày",WEEKLY:"Kích hoạt hàng tuần",MONTHLY:"Kích hoạt hàng tháng",PERIODIC:"Kích hoạt theo chu kỳ"},iHe={DAILY:"Kích hoạt hàng ngày",WEEKLY:"Kích hoạt hàng tuần",MONTHLY:"Kích hoạt hàng tháng",PERIODIC:"Kích hoạt theo chu kỳ"},aHe=$t.keys(g6),hG={DEFAULT_2_YEARS:"Mặc định: 2 năm kể từ ngày sản xuất",CUSTOM:"Tùy chỉnh"},sHe=$t.keys(hG),hC={MON:"Thứ 2",FRI:"Thứ 6",TUE:"Thứ 3",SAT:"Thứ 7",WED:"Thứ 4",SUN:"Chủ Nhật",THU:"Thứ 5"},lHe=$t.keys(hC),pC={FIRST_DAY:"Ngày đầu tiên của tháng",LAST_DAY:"Ngày cuối cùng của tháng",CUSTOM:"Tuỳ chỉnh"},cHe=$t.keys(pC),gC={MINUTES:"Phút",HOURS:"Giờ",DAYS:"Ngày"},uHe=$t.keys(gC),dHe=()=>{const e=ge.useFormInstance(),t=ge.useWatch("type",e);return v.jsxs("div",{children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm hành động",allowClear:!0,onSearch:n=>{console.log("🚀 ~ e:",n)},style:{marginBottom:12}}),v.jsx(ge.Item,{name:"type",label:null,children:v.jsx(er.Group,{className:ZVe,children:v.jsx(Bn,{direction:"vertical",className:JVe,size:12,children:aHe.map(n=>v.jsxs(er,{value:n,className:eHe,children:[v.jsxs("div",{className:tHe,children:[v.jsx(Ke.Title,{level:5,style:{margin:0},children:g6[n]}),v.jsx(Ke.Text,{type:"secondary",children:iHe[n]})]}),t===n&&v.jsxs("div",{className:nHe,children:[v.jsx("div",{className:rHe}),v.jsx(Ji,{className:oHe})]})]},n))})})})]})},fHe=({id:e,outputs:t})=>{const n=[{title:e,key:e,icon:v.jsx(Cl,{}),children:kc(t??[]).map(r=>({...r,icon:()=>{var i;const o=qs[((i=r.meta)==null?void 0:i.iconType)??""]??null;return o?v.jsx(o,{}):void 0}}))}];return v.jsx(Ls,{showLine:!0,showIcon:!0,switcherIcon:v.jsx(Za,{}),defaultExpandedKeys:[e],treeData:n})},hHe=()=>v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.WEEKLY?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày trong tuần"}),name:["config","days_of_week"],children:v.jsx(Vr.Group,{style:{display:"grid",gridTemplateColumns:"repeat(2, minmax(100px, 1fr))",rowGap:8},options:lHe.map(t=>({label:hC[t],value:t}))})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.MONTHLY?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày trong tháng"}),name:["config","month_day_type"],children:v.jsx(er.Group,{className:cG,children:cHe.map(t=>v.jsx(er,{value:t,children:pC[t]},t))})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>{var n,r;return((n=e.config)==null?void 0:n.month_day_type)!==((r=t.config)==null?void 0:r.month_day_type)},children:({getFieldValue:e})=>e(["config","month_day_type"])===dG.CUSTOM?v.jsx(ge.Item,{label:null,name:["config","specific_day"],rules:[{required:!0,message:"Vui lòng chọn ngày"}],children:v.jsx(Uo,{style:{width:"100%"},min:1,max:31,placeholder:"Chọn ngày"})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.PERIODIC?v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Kích hoạt mỗi"}),v.jsxs(Er,{gutter:6,children:[v.jsx(qt,{span:12,children:v.jsx(ge.Item,{name:["config","interval_value"],label:null,rules:[{required:!0,message:"Vui lòng nhập giá trị"}],children:v.jsx(Uo,{style:{width:"100%"},min:1,placeholder:"Nhập giá trị"})})}),v.jsx(qt,{span:12,children:v.jsx(ge.Item,{name:["config","interval_unit"],label:null,initialValue:fG.MINUTES,rules:[{required:!0,message:"Vui lòng chọn đơn vị"}],children:v.jsx(qn,{placeholder:"Chọn đơn vị",options:uHe.map(t=>({label:gC[t],value:t}))})})})]})]}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")!==Ll.PERIODIC?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Thời gian"}),name:["config","trigger_time"],children:v.jsx(Ku,{style:{width:"100%"},placeholder:"Chọn giờ",format:Wo,allowClear:!0,minuteStep:5})}):null}),v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Hiệu lực"}),name:["validity","type"],children:v.jsx(er.Group,{className:cG,children:sHe.map(e=>v.jsx(er,{value:e,children:hG[e]},e))})}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>{var n,r;return((n=e.validity)==null?void 0:n.type)!==((r=t.validity)==null?void 0:r.type)},children:({getFieldValue:e})=>e(["validity","type"])===uG.CUSTOM?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày kết thúc"}),name:["validity","end_date"],rules:[{required:!0,message:"Vui lòng chọn ngày"}],children:v.jsx(ns,{style:{width:"100%"},placeholder:"Chọn ngày",allowClear:!0,format:G5})}):null})]}),pHe=({id:e})=>{var C;const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e);o.length!==0||i.length;const{data:a}=t(e),s=a,[l]=ge.useForm(),[c,u]=x.useState("1"),d=ge.useWatch("type",l),{data:f}=fd({type:st.SCHEDULE_AT,action:s==null?void 0:s.type});x.useEffect(()=>{var w,S;r(e,{...s,output:((S=(w=f==null?void 0:f.data)==null?void 0:w.outputs)==null?void 0:S.map(y=>({...y,object:e})))||[]})},[f==null?void 0:f.data,e,r]),x.useEffect(()=>{d&&u("2")},[d]);const p=x.useRef(!0);x.useEffect(()=>{var w,S;p.current&&((w=s==null?void 0:s.validity)!=null&&w.end_date&&(s.validity.end_date=Xn(s.validity.end_date,G5)),(S=s==null?void 0:s.config)!=null&&S.trigger_time&&(s.config.trigger_time=Xn(s.config.trigger_time,Wo)),l.setFieldsValue({...s}),p.current=!1)},[s]);const g=w=>{const{config:S,validity:y}=w;y!=null&&y.end_date&&(w.validity.end_date=Xn(y.end_date).format(G5)),S!=null&&S.trigger_time&&(w.config.trigger_time=Xn(S.trigger_time).format("HH:mm")),r(e,w)},b=$t.debounce(()=>{l.submit()},500),m=[{key:"1",label:"Hành động",children:v.jsx(dHe,{})},{key:"2",label:"Cài đặt",children:v.jsx(hHe,{}),disabled:!d},{key:"3",label:"Đầu ra",children:v.jsx(fHe,{outputs:(C=f==null?void 0:f.data)==null?void 0:C.outputs,id:e}),disabled:!d}];return v.jsx("div",{className:XVe,children:v.jsxs(ge,{form:l,layout:"vertical",onFinish:g,onValuesChange:b,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsx(si,{activeKey:c,onChange:u,items:m})]})})},gHe=({id:e,data:t,mini:n})=>{const{mode:r}=Zn(),{displayComponent:o}=Ur(),i=t.title||"Thông báo",a=l=>{const c=l.target;c!=null&&c.closest(`button, [role="button"], .${Ti}-modal-wrap, input, textarea`)||(l.stopPropagation(),l.preventDefault(),o(r==="history"?v.jsx(Tl,{id:e}):v.jsx(pHe,{id:e}),i,()=>{},e))};if(n)return v.jsx(v.Fragment,{});const s=x.useMemo(()=>{var l,c,u,d,f,p,g,b,m,C,w,S,y,E,N,M,$,O;switch(t.type){case Ll.DAILY:return v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{ellipsis:{rows:1,expanded:!1,tooltip:(l=t==null?void 0:t.config)!=null&&l.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(c=t==null?void 0:t.config)!=null&&c.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})});case Ll.WEEKLY:return v.jsxs(ot,{vertical:!0,gap:6,children:[v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(f=(d=(u=t==null?void 0:t.config)==null?void 0:u.days_of_week)==null?void 0:d.map(T=>hC[T]))==null?void 0:f.join(", ")},children:v.jsx(Ke.Text,{children:(b=(g=(p=t==null?void 0:t.config)==null?void 0:p.days_of_week)==null?void 0:g.map(T=>hC[T]))==null?void 0:b.join(", ")})})}),v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(m=t==null?void 0:t.config)!=null&&m.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(C=t==null?void 0:t.config)!=null&&C.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})})]});case Ll.MONTHLY:return v.jsxs(ot,{vertical:!0,gap:6,children:[v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:pC[(w=t==null?void 0:t.config)==null?void 0:w.month_day_type]},children:v.jsx(Ke.Text,{children:pC[(S=t==null?void 0:t.config)==null?void 0:S.month_day_type]})})}),v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(y=t==null?void 0:t.config)!=null&&y.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(E=t==null?void 0:t.config)!=null&&E.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})})]});case Ll.PERIODIC:return v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:`Mỗi ${(N=t==null?void 0:t.config)==null?void 0:N.interval_value} ${gC[(M=t==null?void 0:t.config)==null?void 0:M.interval_unit]}`},children:v.jsxs(Ke.Text,{children:["Mỗi ",($=t==null?void 0:t.config)==null?void 0:$.interval_value," ",gC[(O=t==null?void 0:t.config)==null?void 0:O.interval_unit]]})})})}},[t]);return v.jsx("div",{className:KVe,onClick:a,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&a(l)},children:v.jsxs("div",{className:`${qVe}`,children:[v.jsxs(ot,{align:"center",justify:"space-between",style:{width:"100%"},children:[v.jsxs(ot,{align:"center",justify:"flex-start",style:{width:"100%"},gap:12,children:[v.jsxs("div",{className:GVe,children:[v.jsx(H4,{color:"#096DD9",variant:"Bold",size:24,className:UVe}),v.jsx(Ju,{size:14,className:YVe,variant:"Bold",color:"#000"})]}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:i})]}),v.jsx(kl,{id:e})]}),v.jsxs(Er,{gutter:[12,6],style:{width:"100%"},children:[v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Hành động"})}),v.jsx(qt,{span:16,children:v.jsx(Ke.Text,{children:g6[t.type]})}),v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Thời gian"})}),v.jsx(qt,{span:16,children:s})]})]})})},mHe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(gHe,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]}),vHe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(f6,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]}),pG={[st.AGENT]:B9e,[st.SPEAK]:vHe,[st.START]:uVe,[st.LISTEN]:hze,[st.TRANSFER]:gVe,[st.GROUP]:EVe,[st.CONDITION]:RLe,[st.TRIGGER_CONTACT]:VFe,[st.SCHEDULE_AT]:mHe,[st.CATCH_HOOK]:ALe,[st.ACTION_CONTACT]:TFe,[st.EMAIL]:Fje,[st.DELAY]:cje,[st.BRANCH]:YBe,[st.AI_AGENT]:T_e,[st.NOTIFICATION]:QVe},mC=e=>{switch(e.type){case st.AGENT:return xn.agentBlock.background;case st.START:return xn.startBlock.background;case st.SPEAK:return xn.speakBlock.background;case st.LISTEN:return xn.listenBlock.background;case st.TRANSFER:return xn.icon.transferCall;case st.CRM:return xn.icon.getData;case st.HTTP_REQUEST:return xn.icon.httpRequest;case st.CONDITION:return xn.icon.condition;case st.GROUP:return xn.groupBlock.background;case st.TRIGGER_CONTACT:return xn.contactBlock.backgroundNoGradient;case st.ACTION_CONTACT:return xn.contactBlock.backgroundNoGradient;case st.EMAIL:return xn.contactBlock.backgroundNoGradient;case st.DELAY:return xn.delayBlock.backgroundNoGradient;case st.NOTIFICATION:return xn.contactBlock.backgroundNoGradient;case st.SCHEDULE_AT:return xn.contactBlock.backgroundNoGradient;case st.CATCH_HOOK:return xn.contactBlock.backgroundNoGradient;default:return xn.common.gray}},gG=[st.AGENT,st.SPEAK,st.LISTEN,st.TRANSFER,st.CRM,st.HTTP_REQUEST,st.CONDITION,st.GROUP],mG=[st.TRIGGER_CONTACT,st.SCHEDULE_AT,st.CALLBOT_TRIGGER,st.ACTION_CONTACT,st.ORDER_ACTION,st.EMAIL,st.DELAY,st.BRANCH,st.AI_AGENT,st.NOTIFICATION,st.CATCH_HOOK],vC=[{key:st.AGENT,label:"Agent",icon:dx,group:1},{key:st.SPEAK,label:"Node nói",icon:LF,group:1},{key:st.LISTEN,label:"Node nghe",icon:lF,group:1},{key:st.TRANSFER,label:"Chuyển máy",icon:a8e,group:1},{key:st.CRM,label:"CRM",icon:hF,group:2},{key:st.HTTP_REQUEST,label:`HTTP
|
|
709
|
-
Request`,icon:sx,group:2},{key:st.CONDITION,label:"Điều kiện",icon:ax,group:2},{key:st.GROUP,label:"Nhóm",icon:wF,group:2}],m6=[{label:"Trigger",key:"trigger",icon:Ju,iconProps:{variant:"Bold"},group:1,color:"#FAAD14",items:[{key:st.SCHEDULE_AT,label:"Hẹn lịch",description:"Hẹn lịch",icon:H4,group:"Hành động",color:"#096DD9",iconProps:{variant:"Bold"}},{key:st.CATCH_HOOK,label:"Catch hook",description:"Catch hook",icon:WK,group:"Hành động",color:"#096DD9",iconProps:{variant:"Bold"}},{key:st.TRIGGER_CONTACT,label:"Liên hệ",description:"Liên hệ thay đổi",icon:s4,group:"CRM",color:"#096DD9"},{key:st.CALLBOT_TRIGGER,label:"Callbot",description:"Chiến dịch được tạo",icon:dx,group:"Đa kênh",color:"#096DD9"}]},{label:"CRM",key:"crm",icon:F4,iconProps:{variant:"Bold"},group:2,color:"#1D39C4",items:[{key:st.ACTION_CONTACT,label:"Liên hệ",description:"Thực hiện hành động với liên hệ",icon:s4,color:"#096DD9"},{key:st.ORDER_ACTION,label:"Đơn hàng",description:"Thực hiện hành động với đơn hàng",icon:BF,color:"#096DD9"}]},{label:"Đa kênh",key:"chat",icon:yH,iconProps:{variant:"Bold"},group:2,color:"#08979C",items:[{key:st.EMAIL,label:"Email",description:"Gửi email",icon:j4,iconProps:{variant:"Bold"},color:"#096DD9"},{key:st.NOTIFICATION,label:"Thông báo",description:"Gửi thông báo",icon:z4,iconProps:{variant:"Bold"},color:"#096DD9"}]},{label:"Logic",key:"logic",icon:vb,group:2,color:"#D46B08",items:[{key:st.DELAY,label:"Hẹn giờ",description:"Hẹn giờ",icon:Mz,color:"#D4380D"},{key:st.BRANCH,label:"Rẽ nhánh",description:"Rẽ nhánh",icon:vb,color:"#D4380D"},{key:st.AI_AGENT,label:"AI Agent",description:"AI Agent",icon:V4,iconProps:{variant:"Bold"},color:"#D4380D"}]},{label:"Tích hợp",key:"integration",icon:sx,group:2,color:"#08979C",items:[]}],Dc={[st.AGENT]:"#FAAD14",[st.START]:"none",[st.SPEAK]:"#d7268a",[st.LISTEN]:"#d2691e",[st.TRANSFER]:"#20b2aa",[st.CRM]:"#1890ff",[st.HTTP_REQUEST]:"#20b2aa",[st.CONDITION]:"#1890ff",[st.GROUP]:"#8c8c8c",[st.TRIGGER_CONTACT]:"#1890FF",[st.SCHEDULE_AT]:"#1890FF",[st.CALLBOT_TRIGGER]:"#1890FF",[st.ORDER_TRIGGER]:"#1890FF",[st.ACTION_CONTACT]:"#1890FF",[st.CALLBOT_ACTION]:"#1890FF",[st.ORDER_ACTION]:"#1890FF",[st.EMAIL]:"#1890FF",[st.DELAY]:"#D4380D",[st.BRANCH]:"#D4380D",[st.AI_AGENT]:"#D4380D",[st.NOTIFICATION]:"#1890FF",[st.CATCH_HOOK]:"#1890FF"};var vG="scripts_editor_223f7c0",bG="scripts_editor_223f7c2";const bHe={autoCallButton:({id:e,sourceX:t,sourceY:n,targetX:r,targetY:o,sourcePosition:i,targetPosition:a,style:s,target:l,markerEnd:c})=>{const{mode:u}=Zn(),{isOpen:d,onOpen:f,onClose:p}=Hr(),{setEdges:g,setNodes:b}=Pn(),[m,C,w]=o0({sourceX:t,sourceY:n,sourcePosition:i,targetX:r,targetY:o,targetPosition:a}),S=[...vC.map(N=>({label:v.jsxs(Bn,{align:"center",size:8,children:[x.createElement(N.icon,{style:{color:Dc[N.key]}}),N.label]}),key:N.key}))],y=N=>{N.preventDefault(),f()},E=({key:N})=>{const M=N,$={id:`${M.toLowerCase()}_${qu()}`,type:M,position:{x:C,y:w},data:{title:rh[M],...Vg[M]},deletable:!0,...Hg[M]};b(O=>O.concat($)),g(O=>{const T=O.find(k=>k.id===e);if(!T)return O;const{source:P,target:B}=T,_=O.filter(k=>k.id!==e);return _.push({id:`${P}_${$.id}_${qu()}`,source:P,target:$.id,type:"autoCallButton"}),yG.includes(M)&&_.push({id:`${$.id}_${B}_${qu()}`,source:$.id,target:B,type:"autoCallButton"}),_}),p()};return v.jsxs(v.Fragment,{children:[v.jsx(Jd,{path:m,markerEnd:c,style:s??{}}),v.jsx(tM,{children:u!=="edit"?null:v.jsx(ir,{title:"Thêm nút",children:v.jsx("div",{className:`${vG} nodrag nopan ${d?bG:""}`,style:{transform:`translate(-50%, -50%) translate(${C}px,${w}px)`},children:v.jsx(rs,{onOpenChange:N=>{N?f():p()},menu:{items:S,onClick:E},open:d,trigger:["click"],children:v.jsx(wt,{onClick:y,type:"text",size:"large",style:{padding:4},children:v.jsx(kg,{style:{fontSize:24}})})})})})})]})},autoFlowButton:e=>{const{id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:a,targetPosition:s,style:l,markerEnd:c}=e,{mode:u}=Zn(),{isOpen:d,onOpen:f,onClose:p}=Hr(),{setEdges:g,setNodes:b}=Pn(),[m,C,w]=x.useMemo(()=>o0({sourceX:n,sourceY:r,sourcePosition:a,targetX:o,targetY:i,targetPosition:s}),[n,r,o,i,a,s]),S=x.useMemo(()=>m6.map($=>({key:$.key,label:v.jsxs(Bn,{align:"center",size:8,children:[v.jsx("span",{style:{color:$.color||Dc[$.key]},children:v.jsx($.icon,{...$.iconProps,size:20})}),v.jsx("span",{children:$.label})]}),children:$.items.map(O=>({key:O.key,label:v.jsxs(Bn,{align:"center",size:8,children:[v.jsx("span",{style:{color:O.color||Dc[O.key]},children:v.jsx(O.icon,{...O.iconProps,size:14})}),v.jsx("span",{children:O.label})]})}))})),[]),y=x.useCallback($=>({id:`${$.toLowerCase()}_${qu()}`,type:$,position:{x:C,y:w},data:{title:rh[$],...Vg[$]},deletable:!0,...Hg[$]}),[C,w]),E=x.useCallback(({key:$})=>{const T=y($);b(P=>[...P,T]),g(P=>{const B=P.find(D=>D.id===t);if(!B)return P;const{source:_,target:k}=B,L=qu();return[...P.filter(D=>D.id!==t),{id:`${_}_${T.id}_${L}`,source:_,target:T.id,type:"autoFlowButton"},{id:`${T.id}_${k}_${L}`,source:T.id,target:k,type:"autoFlowButton"}]}),p()},[t,y,b,g,p]),N=x.useCallback($=>{$.preventDefault(),f()},[f]),M=x.useMemo(()=>({transform:`translate(-50%, -50%) translate(${C}px,${w}px)`}),[C,w]);return v.jsxs(v.Fragment,{children:[v.jsx(Jd,{path:m,markerEnd:c,style:l}),v.jsx(tM,{children:u!=="edit"?null:v.jsx(ir,{title:"Thêm nút",children:v.jsx("div",{className:`${vG} nodrag nopan ${d?bG:""}`,style:M,children:v.jsx(rs,{open:d,trigger:["click"],menu:{items:S,onClick:E},onOpenChange:$=>$?f():p(),children:v.jsx(wt,{onClick:N,type:"text",size:"large",style:{padding:4},children:v.jsx(kg,{style:{fontSize:24}})})})})})})]})}},yG=[st.SPEAK];function yHe(){const{getNodes:e,getEdges:t}=Pn(),n=lC();return{isValidConnection:x.useCallback(o=>{const i=e(),a=t(),s=i.find(c=>c.id===o.target);return a.some(c=>c.source===o.source&&c.sourceHandle===o.sourceHandle)?(n.error({key:"output-used",content:"Output này đã được nối rồi"}),!1):(s==null?void 0:s.id)===o.source?(n.error({key:"self-loop",content:"Không thể kết nối node vào chính nó"}),!1):!0},[t,e,n])}}var CHe="scripts_editor_3c0va90",AHe="scripts_editor_3c0va91",wHe="scripts_editor_3c0va93",SHe="scripts_editor_3c0va94",EHe="scripts_editor_3c0va95",xHe="scripts_editor_3c0va96",Bc="scripts_editor_3c0va97",IHe="scripts_editor_3c0va98",NHe="scripts_editor_3c0va99",CG="scripts_editor_3c0va9a";function AG(e){return ur({attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},child:[{tag:"path",attr:{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20"},child:[]},{tag:"path",attr:{d:"M8 11h8"},child:[]},{tag:"path",attr:{d:"M8 7h6"},child:[]}]})(e)}const OHe={version:"1.21.1"};var Fh=(e=>(e.BOT="bot",e.CLONE="clone",e))(Fh||{});function v6(e){const t=e.getState(),{nodes:n,edges:r,transform:o}=t;return{nodes:n,edges:r,viewport:{x:o[0],y:o[1],zoom:o[2]}}}function $He({cb:e,delay:t=1e3,enabled:n=!0}){const r=Ir(),o=x.useRef(e),i=x.useRef(v6(r)),a=x.useRef(i.current.viewport.zoom);x.useEffect(()=>{o.current=n?e:void 0},[e,n]);const s=x.useCallback(()=>{var b;if(!n)return;const u=v6(r),d=i.current,f=$t.isEqual(u.nodes,d.nodes),p=$t.isEqual(u.edges,d.edges),g=$t.isEqual(u.viewport,d.viewport);f&&p&&g||(i.current=u,a.current=u.viewport.zoom,(b=o.current)==null||b.call(o,u))},[r,n]),l=x.useMemo(()=>$t.debounce(s,t),[s,t]);x.useEffect(()=>{const u=r.subscribe(()=>l());return()=>{l.cancel(),u()}},[r,l]),cse({onChange:({zoom:u})=>{n&&u!==a.current&&(a.current=u,l())}});const c=x.useCallback(()=>{const u=v6(r);i.current=u,a.current=u.viewport.zoom},[r]);return{commit:l,resetCommitState:c}}const wG=e=>{let t;const n=new Set,r=(c,u)=>{const d=typeof c=="function"?c(t):c;if(!Object.is(d,t)){const f=t;t=u??(typeof d!="object"||d===null)?d:Object.assign({},t,d),n.forEach(p=>p(t,f))}},o=()=>t,s={setState:r,getState:o,getInitialState:()=>l,subscribe:c=>(n.add(c),()=>n.delete(c))},l=t=e(r,o,s);return s},MHe=e=>e?wG(e):wG,THe=e=>e;function PHe(e,t=THe){const n=x.useSyncExternalStore(e.subscribe,x.useCallback(()=>t(e.getState()),[e,t]),x.useCallback(()=>t(e.getInitialState()),[e,t]));return x.useDebugValue(n),n}const SG=e=>{const t=MHe(e),n=r=>PHe(t,r);return Object.assign(n,t),n},EG=e=>e?SG(e):SG,xG=EG(e=>({mode:"trackpad",toggleMode:()=>e(t=>({mode:t.mode==="trackpad"?"mouse":"trackpad"}))}));function IG(){const e=xG(o=>o.mode),t=xG(o=>o.toggleMode),{mode:n}=Zn(),r=x.useMemo(()=>({...e==="trackpad"?{panOnScroll:!0,panOnDrag:!1,zoomOnScroll:!1,zoomOnPinch:!0,zoomOnDoubleClick:!1}:{panOnScroll:!1,panOnDrag:!0,zoomOnScroll:!0,zoomOnPinch:!1,zoomOnDoubleClick:!1},...n==="view"||n==="history"?{nodesDraggable:!1,nodesConnectable:!1,elementsSelectable:n==="history"}:{nodesDraggable:!0,nodesConnectable:!0,elementsSelectable:!0}}),[e,n]);return{mode:e,toggleMode:t,flowProps:r}}const NG={history:[],currentStep:-1,canUndo:!1,canRedo:!1},b6=e=>{try{const t=e.nodes.map(o=>({id:o.id,position:o.position})),n=e.edges.map(o=>({id:o.id,source:o.source,target:o.target})),r=e.viewport;return JSON.stringify({nodes:t,edges:n,viewport:r})}catch{return JSON.stringify(e)}},Dm=EG((e,t)=>({instances:{},pushSnapshot:(n,r)=>e(o=>{const i=o.instances[n]??NG,a=b6(r),s=i.history[i.currentStep];if(s&&b6(s)===a)return o;const l=i.history.slice(0,i.currentStep+1).concat(r),c=l.length-1;return{instances:{...o.instances,[n]:{history:l,currentStep:c,canUndo:c>0,canRedo:c<l.length-1}}}}),applySnapshot:(n,r)=>{const o=t().instances[n];return!o||r<0||r>=o.history.length?null:(e(i=>({instances:{...i.instances,[n]:{...o,currentStep:r,canUndo:r>0,canRedo:r<o.history.length-1}}})),o.history[r])},reset:(n,r)=>e(o=>({instances:{...o.instances,[n]:{history:r?[r]:[],currentStep:r?0:-1,canUndo:!1,canRedo:!1}}})),remove:n=>e(r=>{const{[n]:o,...i}=r.instances;return{instances:i}})}));function OG(e){const t=Dm(a=>a.instances[e]??NG),n=Dm(a=>a.pushSnapshot),r=Dm(a=>a.applySnapshot),o=Dm(a=>a.reset),i=Dm(a=>a.remove);return{history:t.history,currentStep:t.currentStep,canUndo:t.canUndo,canRedo:t.canRedo,pushSnapshot:a=>n(e,a),undo:()=>r(e,t.currentStep-1),redo:()=>r(e,t.currentStep+1),goTo:a=>r(e,a),reset:a=>o(e,a),dispose:()=>i(e)}}const kHe=e=>{const{canUndo:t,canRedo:n,undo:r,redo:o}=OG(e),{setNodes:i,setEdges:a,setViewport:s}=Pn(),l=x.useCallback(d=>{d&&(i==null||i(d.nodes??[]),a==null||a(d.edges??[]),d.viewport&&(s==null||s(d.viewport)))},[i,a,s]),c=x.useCallback(()=>{if(!t)return;const d=r();l(d)},[t,r,l]),u=x.useCallback(()=>{if(!n)return;const d=o();l(d)},[n,o,l]);return{canUndo:t,canRedo:n,undo:c,redo:u}},_He=(e,t)=>{const{getNodes:n,getEdges:r,getViewport:o}=Pn(),{pushSnapshot:i}=OG(e),a=x.useRef(null),s=x.useRef(null),l=x.useRef(!1),c=t==null?void 0:t.snapshotDebounceMs,u=x.useCallback(()=>{const f={nodes:n()??[],edges:r()??[],viewport:o?o():null},p=b6(f);s.current!==p&&(s.current=p,i(f))},[n,r,o,i,e]),d=x.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>{u(),a.current=null},c)},[c,u]);return x.useEffect(()=>{l.current||(l.current=!0,u())},[]),x.useEffect(()=>()=>{a.current&&window.clearTimeout(a.current)},[]),{takeSnapshotNow:u,takeSnapshotDebounced:d}};function DHe(e){return ur({attr:{t:"1569683610100",viewBox:"0 0 1024 1024",version:"1.1"},child:[{tag:"path",attr:{d:"M841 370c3-3.3 2.7-8.3-0.6-11.3-1.5-1.3-3.4-2.1-5.3-2.1h-72.6c-2.4 0-4.6 1-6.1 2.8L633.5 504.6c-2.9 3.4-7.9 3.8-11.3 0.9-0.9-0.8-1.6-1.7-2.1-2.8l-63.5-141.3c-1.3-2.9-4.1-4.7-7.3-4.7H380.7l0.9-4.7 8-42.3c10.5-55.4 38-81.4 85.8-81.4 18.6 0 35.5 1.7 48.8 4.7l14.1-66.8c-22.6-4.7-35.2-6.1-54.9-6.1-103.3 0-156.4 44.3-175.9 147.3l-9.4 49.4h-97.6c-3.8 0-7.1 2.7-7.8 6.4L181.9 415c-0.9 4.3 1.9 8.6 6.2 9.5 0.5 0.1 1.1 0.2 1.6 0.2H284l-89 429.9c-0.9 4.3 1.9 8.6 6.2 9.5 0.5 0.1 1.1 0.2 1.6 0.2H269c3.8 0 7.1-2.7 7.8-6.4l89.7-433.1h135.8l68.2 139.1c1.4 2.9 1 6.4-1.2 8.8l-180.6 203c-2.9 3.3-2.6 8.4 0.7 11.3 1.5 1.3 3.4 2 5.3 2h72.7c2.4 0 4.6-1 6.1-2.8l123.7-146.7c2.8-3.4 7.9-3.8 11.3-1 0.9 0.8 1.6 1.7 2.1 2.8L676.4 784c1.3 2.8 4.1 4.7 7.3 4.7h64.6c4.4 0 8-3.6 8-8 0-1.2-0.3-2.4-0.8-3.5l-95.2-198.9c-1.4-2.9-0.9-6.4 1.3-8.8L841 370z"},child:[]}]})(e)}function BHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"},child:[]},{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]}]})(e)}function LHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M952 792H72c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h880c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0-632H72c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h880c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM848 660c8.8 0 16-7.2 16-16V380c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16v264c0 8.8 7.2 16 16 16h672zM232 436h560v152H232V436z"},child:[]}]})(e)}function FHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"},child:[]},{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]}]})(e)}function jHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M9 18h3v-2H9c-1.654 0-3-1.346-3-3s1.346-3 3-3h6v3l5-4-5-4v3H9c-2.757 0-5 2.243-5 5s2.243 5 5 5z"},child:[]}]})(e)}function zHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M9 10h6c1.654 0 3 1.346 3 3s-1.346 3-3 3h-3v2h3c2.757 0 5-2.243 5-5s-2.243-5-5-5H9V5L4 9l5 4v-3z"},child:[]}]})(e)}function VHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M20 3H4c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2h16c1.103 0 2-.897 2-2V5c0-1.103-.897-2-2-2zm0 2 .001 4H4V5h16zM4 19v-8h16.001l.001 8H4z"},child:[]},{tag:"path",attr:{d:"M14 6h2v2h-2zm3 0h2v2h-2z"},child:[]}]})(e)}function HHe(e){return ur({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z"},child:[]},{tag:"path",attr:{d:"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z"},child:[]}]})(e)}var y6,$G;function C6(){if($G)return y6;$G=1;var e="\0",t="\0",n="";class r{constructor(u){po(this,"_isDirected",!0);po(this,"_isMultigraph",!1);po(this,"_isCompound",!1);po(this,"_label");po(this,"_defaultNodeLabelFn",()=>{});po(this,"_defaultEdgeLabelFn",()=>{});po(this,"_nodes",{});po(this,"_in",{});po(this,"_preds",{});po(this,"_out",{});po(this,"_sucs",{});po(this,"_edgeObjs",{});po(this,"_edgeLabels",{});po(this,"_nodeCount",0);po(this,"_edgeCount",0);po(this,"_parent");po(this,"_children");u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[t]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(d=>Object.keys(u._in[d]).length===0)}sinks(){var u=this;return this.nodes().filter(d=>Object.keys(u._out[d]).length===0)}setNodes(u,d){var f=arguments,p=this;return u.forEach(function(g){f.length>1?p.setNode(g,d):p.setNode(g)}),this}setNode(u,d){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=d),this):(this._nodes[u]=arguments.length>1?d:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=t,this._children[u]={},this._children[t][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var d=this;if(Object.hasOwn(this._nodes,u)){var f=p=>d.removeEdge(d._edgeObjs[p]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(p){d.setParent(p)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,d){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(d===void 0)d=t;else{d+="";for(var f=d;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+d+" as parent of "+u+" would create a cycle");this.setNode(d)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=d,this._children[d][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var d=this._parent[u];if(d!==t)return d}}children(u=t){if(this._isCompound){var d=this._children[u];if(d)return Object.keys(d)}else{if(u===t)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var d=this._preds[u];if(d)return Object.keys(d)}successors(u){var d=this._sucs[u];if(d)return Object.keys(d)}neighbors(u){var d=this.predecessors(u);if(d){const p=new Set(d);for(var f of this.successors(u))p.add(f);return Array.from(p.values())}}isLeaf(u){var d;return this.isDirected()?d=this.successors(u):d=this.neighbors(u),d.length===0}filterNodes(u){var d=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});d.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([b,m]){u(b)&&d.setNode(b,m)}),Object.values(this._edgeObjs).forEach(function(b){d.hasNode(b.v)&&d.hasNode(b.w)&&d.setEdge(b,f.edge(b))});var p={};function g(b){var m=f.parent(b);return m===void 0||d.hasNode(m)?(p[b]=m,m):m in p?p[m]:g(m)}return this._isCompound&&d.nodes().forEach(b=>d.setParent(b,g(b))),d}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,d){var f=this,p=arguments;return u.reduce(function(g,b){return p.length>1?f.setEdge(g,b,d):f.setEdge(g,b),b}),this}setEdge(){var u,d,f,p,g=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(u=b.v,d=b.w,f=b.name,arguments.length===2&&(p=arguments[1],g=!0)):(u=b,d=arguments[1],f=arguments[3],arguments.length>2&&(p=arguments[2],g=!0)),u=""+u,d=""+d,f!==void 0&&(f=""+f);var m=a(this._isDirected,u,d,f);if(Object.hasOwn(this._edgeLabels,m))return g&&(this._edgeLabels[m]=p),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(d),this._edgeLabels[m]=g?p:this._defaultEdgeLabelFn(u,d,f);var C=s(this._isDirected,u,d,f);return u=C.v,d=C.w,Object.freeze(C),this._edgeObjs[m]=C,o(this._preds[d],u),o(this._sucs[u],d),this._in[d][m]=C,this._out[u][m]=C,this._edgeCount++,this}edge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f);return this._edgeLabels[p]}edgeAsObj(){const u=this.edge(...arguments);return typeof u!="object"?{label:u}:u}hasEdge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f);return Object.hasOwn(this._edgeLabels,p)}removeEdge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f),g=this._edgeObjs[p];return g&&(u=g.v,d=g.w,delete this._edgeLabels[p],delete this._edgeObjs[p],i(this._preds[d],u),i(this._sucs[u],d),delete this._in[d][p],delete this._out[u][p],this._edgeCount--),this}inEdges(u,d){var f=this._in[u];if(f){var p=Object.values(f);return d?p.filter(g=>g.v===d):p}}outEdges(u,d){var f=this._out[u];if(f){var p=Object.values(f);return d?p.filter(g=>g.w===d):p}}nodeEdges(u,d){var f=this.inEdges(u,d);if(f)return f.concat(this.outEdges(u,d))}}function o(c,u){c[u]?c[u]++:c[u]=1}function i(c,u){--c[u]||delete c[u]}function a(c,u,d,f){var p=""+u,g=""+d;if(!c&&p>g){var b=p;p=g,g=b}return p+n+g+n+(f===void 0?e:f)}function s(c,u,d,f){var p=""+u,g=""+d;if(!c&&p>g){var b=p;p=g,g=b}var m={v:p,w:g};return f&&(m.name=f),m}function l(c,u){return a(c,u.v,u.w,u.name)}return y6=r,y6}var A6,MG;function RHe(){return MG||(MG=1,A6="2.2.4"),A6}var w6,TG;function WHe(){return TG||(TG=1,w6={Graph:C6(),version:RHe()}),w6}var S6,PG;function QHe(){if(PG)return S6;PG=1;var e=C6();S6={write:t,read:o};function t(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:n(i),edges:r(i)};return i.graph()!==void 0&&(a.value=structuredClone(i.graph())),a}function n(i){return i.nodes().map(function(a){var s=i.node(a),l=i.parent(a),c={v:a};return s!==void 0&&(c.value=s),l!==void 0&&(c.parent=l),c})}function r(i){return i.edges().map(function(a){var s=i.edge(a),l={v:a.v,w:a.w};return a.name!==void 0&&(l.name=a.name),s!==void 0&&(l.value=s),l})}function o(i){var a=new e(i.options).setGraph(i.value);return i.nodes.forEach(function(s){a.setNode(s.v,s.value),s.parent&&a.setParent(s.v,s.parent)}),i.edges.forEach(function(s){a.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),a}return S6}var E6,kG;function KHe(){if(kG)return E6;kG=1,E6=e;function e(t){var n={},r=[],o;function i(a){Object.hasOwn(n,a)||(n[a]=!0,o.push(a),t.successors(a).forEach(i),t.predecessors(a).forEach(i))}return t.nodes().forEach(function(a){o=[],i(a),o.length&&r.push(o)}),r}return E6}var x6,_G;function DG(){if(_G)return x6;_G=1;class e{constructor(){po(this,"_arr",[]);po(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var r=this._keyIndices[n];if(r!==void 0)return this._arr[r].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,r){var o=this._keyIndices;if(n=String(n),!Object.hasOwn(o,n)){var i=this._arr,a=i.length;return o[n]=a,i.push({key:n,priority:r}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,r){var o=this._keyIndices[n];if(r>this._arr[o].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[o].priority+" New: "+r);this._arr[o].priority=r,this._decrease(o)}_heapify(n){var r=this._arr,o=2*n,i=o+1,a=n;o<r.length&&(a=r[o].priority<r[a].priority?o:a,i<r.length&&(a=r[i].priority<r[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var r=this._arr,o=r[n].priority,i;n!==0&&(i=n>>1,!(r[i].priority<o));)this._swap(n,i),n=i}_swap(n,r){var o=this._arr,i=this._keyIndices,a=o[n],s=o[r];o[n]=s,o[r]=a,i[s.key]=n,i[a.key]=r}}return x6=e,x6}var I6,BG;function LG(){if(BG)return I6;BG=1;var e=DG();I6=n;var t=()=>1;function n(o,i,a,s){return r(o,String(i),a||t,s||function(l){return o.outEdges(l)})}function r(o,i,a,s){var l={},c=new e,u,d,f=function(p){var g=p.v!==u?p.v:p.w,b=l[g],m=a(p),C=d.distance+m;if(m<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+p+" Weight: "+m);C<b.distance&&(b.distance=C,b.predecessor=u,c.decrease(g,C))};for(o.nodes().forEach(function(p){var g=p===i?0:Number.POSITIVE_INFINITY;l[p]={distance:g},c.add(p,g)});c.size()>0&&(u=c.removeMin(),d=l[u],d.distance!==Number.POSITIVE_INFINITY);)s(u).forEach(f);return l}return I6}var N6,FG;function qHe(){if(FG)return N6;FG=1;var e=LG();N6=t;function t(n,r,o){return n.nodes().reduce(function(i,a){return i[a]=e(n,a,r,o),i},{})}return N6}var O6,jG;function zG(){if(jG)return O6;jG=1,O6=e;function e(t){var n=0,r=[],o={},i=[];function a(s){var l=o[s]={onStack:!0,lowlink:n,index:n++};if(r.push(s),t.successors(s).forEach(function(d){Object.hasOwn(o,d)?o[d].onStack&&(l.lowlink=Math.min(l.lowlink,o[d].index)):(a(d),l.lowlink=Math.min(l.lowlink,o[d].lowlink))}),l.lowlink===l.index){var c=[],u;do u=r.pop(),o[u].onStack=!1,c.push(u);while(s!==u);i.push(c)}}return t.nodes().forEach(function(s){Object.hasOwn(o,s)||a(s)}),i}return O6}var $6,VG;function GHe(){if(VG)return $6;VG=1;var e=zG();$6=t;function t(n){return e(n).filter(function(r){return r.length>1||r.length===1&&n.hasEdge(r[0],r[0])})}return $6}var M6,HG;function UHe(){if(HG)return M6;HG=1,M6=t;var e=()=>1;function t(r,o,i){return n(r,o||e,i||function(a){return r.outEdges(a)})}function n(r,o,i){var a={},s=r.nodes();return s.forEach(function(l){a[l]={},a[l][l]={distance:0},s.forEach(function(c){l!==c&&(a[l][c]={distance:Number.POSITIVE_INFINITY})}),i(l).forEach(function(c){var u=c.v===l?c.w:c.v,d=o(c);a[l][u]={distance:d,predecessor:l}})}),s.forEach(function(l){var c=a[l];s.forEach(function(u){var d=a[u];s.forEach(function(f){var p=d[l],g=c[f],b=d[f],m=p.distance+g.distance;m<b.distance&&(b.distance=m,b.predecessor=g.predecessor)})})}),a}return M6}var T6,RG;function WG(){if(RG)return T6;RG=1;function e(n){var r={},o={},i=[];function a(s){if(Object.hasOwn(o,s))throw new t;Object.hasOwn(r,s)||(o[s]=!0,r[s]=!0,n.predecessors(s).forEach(a),delete o[s],i.push(s))}if(n.sinks().forEach(a),Object.keys(r).length!==n.nodeCount())throw new t;return i}class t extends Error{constructor(){super(...arguments)}}return T6=e,e.CycleException=t,T6}var P6,QG;function YHe(){if(QG)return P6;QG=1;var e=WG();P6=t;function t(n){try{e(n)}catch(r){if(r instanceof e.CycleException)return!1;throw r}return!0}return P6}var k6,KG;function qG(){if(KG)return k6;KG=1,k6=e;function e(o,i,a){Array.isArray(i)||(i=[i]);var s=o.isDirected()?d=>o.successors(d):d=>o.neighbors(d),l=a==="post"?t:n,c=[],u={};return i.forEach(d=>{if(!o.hasNode(d))throw new Error("Graph does not have node: "+d);l(d,s,u,c)}),c}function t(o,i,a,s){for(var l=[[o,!1]];l.length>0;){var c=l.pop();c[1]?s.push(c[0]):Object.hasOwn(a,c[0])||(a[c[0]]=!0,l.push([c[0],!0]),r(i(c[0]),u=>l.push([u,!1])))}}function n(o,i,a,s){for(var l=[o];l.length>0;){var c=l.pop();Object.hasOwn(a,c)||(a[c]=!0,s.push(c),r(i(c),u=>l.push(u)))}}function r(o,i){for(var a=o.length;a--;)i(o[a],a,o);return o}return k6}var _6,GG;function XHe(){if(GG)return _6;GG=1;var e=qG();_6=t;function t(n,r){return e(n,r,"post")}return _6}var D6,UG;function ZHe(){if(UG)return D6;UG=1;var e=qG();D6=t;function t(n,r){return e(n,r,"pre")}return D6}var B6,YG;function JHe(){if(YG)return B6;YG=1;var e=C6(),t=DG();B6=n;function n(r,o){var i=new e,a={},s=new t,l;function c(d){var f=d.v===l?d.w:d.v,p=s.priority(f);if(p!==void 0){var g=o(d);g<p&&(a[f]=l,s.decrease(f,g))}}if(r.nodeCount()===0)return i;r.nodes().forEach(function(d){s.add(d,Number.POSITIVE_INFINITY),i.setNode(d)}),s.decrease(r.nodes()[0],0);for(var u=!1;s.size()>0;){if(l=s.removeMin(),Object.hasOwn(a,l))i.setEdge(l,a[l]);else{if(u)throw new Error("Input graph is not connected: "+r);u=!0}r.nodeEdges(l).forEach(c)}return i}return B6}var L6,XG;function eRe(){return XG||(XG=1,L6={components:KHe(),dijkstra:LG(),dijkstraAll:qHe(),findCycles:GHe(),floydWarshall:UHe(),isAcyclic:YHe(),postorder:XHe(),preorder:ZHe(),prim:JHe(),tarjan:zG(),topsort:WG()}),L6}var F6,ZG;function ps(){if(ZG)return F6;ZG=1;var e=WHe();return F6={Graph:e.Graph,json:QHe(),alg:eRe(),version:e.version},F6}var j6,JG;function tRe(){if(JG)return j6;JG=1;class e{constructor(){let o={};o._next=o._prev=o,this._sentinel=o}dequeue(){let o=this._sentinel,i=o._prev;if(i!==o)return t(i),i}enqueue(o){let i=this._sentinel;o._prev&&o._next&&t(o),o._next=i._next,i._next._prev=o,i._next=o,o._prev=i}toString(){let o=[],i=this._sentinel,a=i._prev;for(;a!==i;)o.push(JSON.stringify(a,n)),a=a._prev;return"["+o.join(", ")+"]"}}function t(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function n(r,o){if(r!=="_next"&&r!=="_prev")return o}return j6=e,j6}var z6,eU;function nRe(){if(eU)return z6;eU=1;let e=ps().Graph,t=tRe();z6=r;let n=()=>1;function r(c,u){if(c.nodeCount()<=1)return[];let d=a(c,u||n);return o(d.graph,d.buckets,d.zeroIdx).flatMap(p=>c.outEdges(p.v,p.w))}function o(c,u,d){let f=[],p=u[u.length-1],g=u[0],b;for(;c.nodeCount();){for(;b=g.dequeue();)i(c,u,d,b);for(;b=p.dequeue();)i(c,u,d,b);if(c.nodeCount()){for(let m=u.length-2;m>0;--m)if(b=u[m].dequeue(),b){f=f.concat(i(c,u,d,b,!0));break}}}return f}function i(c,u,d,f,p){let g=p?[]:void 0;return c.inEdges(f.v).forEach(b=>{let m=c.edge(b),C=c.node(b.v);p&&g.push({v:b.v,w:b.w}),C.out-=m,s(u,d,C)}),c.outEdges(f.v).forEach(b=>{let m=c.edge(b),C=b.w,w=c.node(C);w.in-=m,s(u,d,w)}),c.removeNode(f.v),g}function a(c,u){let d=new e,f=0,p=0;c.nodes().forEach(m=>{d.setNode(m,{v:m,in:0,out:0})}),c.edges().forEach(m=>{let C=d.edge(m.v,m.w)||0,w=u(m),S=C+w;d.setEdge(m.v,m.w,S),p=Math.max(p,d.node(m.v).out+=w),f=Math.max(f,d.node(m.w).in+=w)});let g=l(p+f+3).map(()=>new t),b=f+1;return d.nodes().forEach(m=>{s(g,b,d.node(m))}),{graph:d,buckets:g,zeroIdx:b}}function s(c,u,d){d.out?d.in?c[d.out-d.in+u].enqueue(d):c[c.length-1].enqueue(d):c[0].enqueue(d)}function l(c){const u=[];for(let d=0;d<c;d++)u.push(d);return u}return z6}var V6,tU;function Eo(){if(tU)return V6;tU=1;let e=ps().Graph;V6={addBorderNode:u,addDummyNode:t,applyWithChunking:p,asNonCompoundGraph:r,buildLayerMatrix:s,intersectRect:a,mapValues:N,maxRank:g,normalizeRanks:l,notime:C,partition:b,pick:E,predecessorWeights:i,range:y,removeEmptyRanks:c,simplify:n,successorWeights:o,time:m,uniqueId:S,zipObject:M};function t($,O,T,P){for(var B=P;$.hasNode(B);)B=S(P);return T.dummy=O,$.setNode(B,T),B}function n($){let O=new e().setGraph($.graph());return $.nodes().forEach(T=>O.setNode(T,$.node(T))),$.edges().forEach(T=>{let P=O.edge(T.v,T.w)||{weight:0,minlen:1},B=$.edge(T);O.setEdge(T.v,T.w,{weight:P.weight+B.weight,minlen:Math.max(P.minlen,B.minlen)})}),O}function r($){let O=new e({multigraph:$.isMultigraph()}).setGraph($.graph());return $.nodes().forEach(T=>{$.children(T).length||O.setNode(T,$.node(T))}),$.edges().forEach(T=>{O.setEdge(T,$.edge(T))}),O}function o($){let O=$.nodes().map(T=>{let P={};return $.outEdges(T).forEach(B=>{P[B.w]=(P[B.w]||0)+$.edge(B).weight}),P});return M($.nodes(),O)}function i($){let O=$.nodes().map(T=>{let P={};return $.inEdges(T).forEach(B=>{P[B.v]=(P[B.v]||0)+$.edge(B).weight}),P});return M($.nodes(),O)}function a($,O){let T=$.x,P=$.y,B=O.x-T,_=O.y-P,k=$.width/2,L=$.height/2;if(!B&&!_)throw new Error("Not possible to find intersection inside of the rectangle");let D,j;return Math.abs(_)*k>Math.abs(B)*L?(_<0&&(L=-L),D=L*B/_,j=L):(B<0&&(k=-k),D=k,j=k*_/B),{x:T+D,y:P+j}}function s($){let O=y(g($)+1).map(()=>[]);return $.nodes().forEach(T=>{let P=$.node(T),B=P.rank;B!==void 0&&(O[B][P.order]=T)}),O}function l($){let O=$.nodes().map(P=>{let B=$.node(P).rank;return B===void 0?Number.MAX_VALUE:B}),T=p(Math.min,O);$.nodes().forEach(P=>{let B=$.node(P);Object.hasOwn(B,"rank")&&(B.rank-=T)})}function c($){let O=$.nodes().map(k=>$.node(k).rank),T=p(Math.min,O),P=[];$.nodes().forEach(k=>{let L=$.node(k).rank-T;P[L]||(P[L]=[]),P[L].push(k)});let B=0,_=$.graph().nodeRankFactor;Array.from(P).forEach((k,L)=>{k===void 0&&L%_!==0?--B:k!==void 0&&B&&k.forEach(D=>$.node(D).rank+=B)})}function u($,O,T,P){let B={width:0,height:0};return arguments.length>=4&&(B.rank=T,B.order=P),t($,"border",B,O)}function d($,O=f){const T=[];for(let P=0;P<$.length;P+=O){const B=$.slice(P,P+O);T.push(B)}return T}const f=65535;function p($,O){if(O.length>f){const T=d(O);return $.apply(null,T.map(P=>$.apply(null,P)))}else return $.apply(null,O)}function g($){const T=$.nodes().map(P=>{let B=$.node(P).rank;return B===void 0?Number.MIN_VALUE:B});return p(Math.max,T)}function b($,O){let T={lhs:[],rhs:[]};return $.forEach(P=>{O(P)?T.lhs.push(P):T.rhs.push(P)}),T}function m($,O){let T=Date.now();try{return O()}finally{console.log($+" time: "+(Date.now()-T)+"ms")}}function C($,O){return O()}let w=0;function S($){var O=++w;return $+(""+O)}function y($,O,T=1){O==null&&(O=$,$=0);let P=_=>_<O;T<0&&(P=_=>O<_);const B=[];for(let _=$;P(_);_+=T)B.push(_);return B}function E($,O){const T={};for(const P of O)$[P]!==void 0&&(T[P]=$[P]);return T}function N($,O){let T=O;return typeof O=="string"&&(T=P=>P[O]),Object.entries($).reduce((P,[B,_])=>(P[B]=T(_,B),P),{})}function M($,O){return $.reduce((T,P,B)=>(T[P]=O[B],T),{})}return V6}var H6,nU;function rRe(){if(nU)return H6;nU=1;let e=nRe(),t=Eo().uniqueId;H6={run:n,undo:o};function n(i){(i.graph().acyclicer==="greedy"?e(i,s(i)):r(i)).forEach(l=>{let c=i.edge(l);i.removeEdge(l),c.forwardName=l.name,c.reversed=!0,i.setEdge(l.w,l.v,c,t("rev"))});function s(l){return c=>l.edge(c).weight}}function r(i){let a=[],s={},l={};function c(u){Object.hasOwn(l,u)||(l[u]=!0,s[u]=!0,i.outEdges(u).forEach(d=>{Object.hasOwn(s,d.w)?a.push(d):c(d.w)}),delete s[u])}return i.nodes().forEach(c),a}function o(i){i.edges().forEach(a=>{let s=i.edge(a);if(s.reversed){i.removeEdge(a);let l=s.forwardName;delete s.reversed,delete s.forwardName,i.setEdge(a.w,a.v,s,l)}})}return H6}var R6,rU;function oRe(){if(rU)return R6;rU=1;let e=Eo();R6={run:t,undo:r};function t(o){o.graph().dummyChains=[],o.edges().forEach(i=>n(o,i))}function n(o,i){let a=i.v,s=o.node(a).rank,l=i.w,c=o.node(l).rank,u=i.name,d=o.edge(i),f=d.labelRank;if(c===s+1)return;o.removeEdge(i);let p,g,b;for(b=0,++s;s<c;++b,++s)d.points=[],g={width:0,height:0,edgeLabel:d,edgeObj:i,rank:s},p=e.addDummyNode(o,"edge",g,"_d"),s===f&&(g.width=d.width,g.height=d.height,g.dummy="edge-label",g.labelpos=d.labelpos),o.setEdge(a,p,{weight:d.weight},u),b===0&&o.graph().dummyChains.push(p),a=p;o.setEdge(a,l,{weight:d.weight},u)}function r(o){o.graph().dummyChains.forEach(i=>{let a=o.node(i),s=a.edgeLabel,l;for(o.setEdge(a.edgeObj,s);a.dummy;)l=o.successors(i)[0],o.removeNode(i),s.points.push({x:a.x,y:a.y}),a.dummy==="edge-label"&&(s.x=a.x,s.y=a.y,s.width=a.width,s.height=a.height),i=l,a=o.node(i)})}return R6}var W6,oU;function bC(){if(oU)return W6;oU=1;const{applyWithChunking:e}=Eo();W6={longestPath:t,slack:n};function t(r){var o={};function i(a){var s=r.node(a);if(Object.hasOwn(o,a))return s.rank;o[a]=!0;let l=r.outEdges(a).map(u=>u==null?Number.POSITIVE_INFINITY:i(u.w)-r.edge(u).minlen);var c=e(Math.min,l);return c===Number.POSITIVE_INFINITY&&(c=0),s.rank=c}r.sources().forEach(i)}function n(r,o){return r.node(o.w).rank-r.node(o.v).rank-r.edge(o).minlen}return W6}var Q6,iU;function aU(){if(iU)return Q6;iU=1;var e=ps().Graph,t=bC().slack;Q6=n;function n(a){var s=new e({directed:!1}),l=a.nodes()[0],c=a.nodeCount();s.setNode(l,{});for(var u,d;r(s,a)<c;)u=o(s,a),d=s.hasNode(u.v)?t(a,u):-t(a,u),i(s,a,d);return s}function r(a,s){function l(c){s.nodeEdges(c).forEach(u=>{var d=u.v,f=c===d?u.w:d;!a.hasNode(f)&&!t(s,u)&&(a.setNode(f,{}),a.setEdge(c,f,{}),l(f))})}return a.nodes().forEach(l),a.nodeCount()}function o(a,s){return s.edges().reduce((c,u)=>{let d=Number.POSITIVE_INFINITY;return a.hasNode(u.v)!==a.hasNode(u.w)&&(d=t(s,u)),d<c[0]?[d,u]:c},[Number.POSITIVE_INFINITY,null])[1]}function i(a,s,l){a.nodes().forEach(c=>s.node(c).rank+=l)}return Q6}var K6,sU;function iRe(){if(sU)return K6;sU=1;var e=aU(),t=bC().slack,n=bC().longestPath,r=ps().alg.preorder,o=ps().alg.postorder,i=Eo().simplify;K6=a,a.initLowLimValues=u,a.initCutValues=s,a.calcCutValue=c,a.leaveEdge=f,a.enterEdge=p,a.exchangeEdges=g;function a(w){w=i(w),n(w);var S=e(w);u(S),s(S,w);for(var y,E;y=f(S);)E=p(S,w,y),g(S,w,y,E)}function s(w,S){var y=o(w,w.nodes());y=y.slice(0,y.length-1),y.forEach(E=>l(w,S,E))}function l(w,S,y){var E=w.node(y),N=E.parent;w.edge(y,N).cutvalue=c(w,S,y)}function c(w,S,y){var E=w.node(y),N=E.parent,M=!0,$=S.edge(y,N),O=0;return $||(M=!1,$=S.edge(N,y)),O=$.weight,S.nodeEdges(y).forEach(T=>{var P=T.v===y,B=P?T.w:T.v;if(B!==N){var _=P===M,k=S.edge(T).weight;if(O+=_?k:-k,m(w,y,B)){var L=w.edge(y,B).cutvalue;O+=_?-L:L}}}),O}function u(w,S){arguments.length<2&&(S=w.nodes()[0]),d(w,{},1,S)}function d(w,S,y,E,N){var M=y,$=w.node(E);return S[E]=!0,w.neighbors(E).forEach(O=>{Object.hasOwn(S,O)||(y=d(w,S,y,O,E))}),$.low=M,$.lim=y++,N?$.parent=N:delete $.parent,y}function f(w){return w.edges().find(S=>w.edge(S).cutvalue<0)}function p(w,S,y){var E=y.v,N=y.w;S.hasEdge(E,N)||(E=y.w,N=y.v);var M=w.node(E),$=w.node(N),O=M,T=!1;M.lim>$.lim&&(O=$,T=!0);var P=S.edges().filter(B=>T===C(w,w.node(B.v),O)&&T!==C(w,w.node(B.w),O));return P.reduce((B,_)=>t(S,_)<t(S,B)?_:B)}function g(w,S,y,E){var N=y.v,M=y.w;w.removeEdge(N,M),w.setEdge(E.v,E.w,{}),u(w),s(w,S),b(w,S)}function b(w,S){var y=w.nodes().find(N=>!S.node(N).parent),E=r(w,y);E=E.slice(1),E.forEach(N=>{var M=w.node(N).parent,$=S.edge(N,M),O=!1;$||($=S.edge(M,N),O=!0),S.node(N).rank=S.node(M).rank+(O?$.minlen:-$.minlen)})}function m(w,S,y){return w.hasEdge(S,y)}function C(w,S,y){return y.low<=S.lim&&S.lim<=y.lim}return K6}var q6,lU;function aRe(){if(lU)return q6;lU=1;var e=bC(),t=e.longestPath,n=aU(),r=iRe();q6=o;function o(l){var c=l.graph().ranker;if(c instanceof Function)return c(l);switch(l.graph().ranker){case"network-simplex":s(l);break;case"tight-tree":a(l);break;case"longest-path":i(l);break;case"none":break;default:s(l)}}var i=t;function a(l){t(l),n(l)}function s(l){r(l)}return q6}var G6,cU;function sRe(){if(cU)return G6;cU=1,G6=e;function e(r){let o=n(r);r.graph().dummyChains.forEach(i=>{let a=r.node(i),s=a.edgeObj,l=t(r,o,s.v,s.w),c=l.path,u=l.lca,d=0,f=c[d],p=!0;for(;i!==s.w;){if(a=r.node(i),p){for(;(f=c[d])!==u&&r.node(f).maxRank<a.rank;)d++;f===u&&(p=!1)}if(!p){for(;d<c.length-1&&r.node(f=c[d+1]).minRank<=a.rank;)d++;f=c[d]}r.setParent(i,f),i=r.successors(i)[0]}})}function t(r,o,i,a){let s=[],l=[],c=Math.min(o[i].low,o[a].low),u=Math.max(o[i].lim,o[a].lim),d,f;d=i;do d=r.parent(d),s.push(d);while(d&&(o[d].low>c||u>o[d].lim));for(f=d,d=a;(d=r.parent(d))!==f;)l.push(d);return{path:s.concat(l.reverse()),lca:f}}function n(r){let o={},i=0;function a(s){let l=i;r.children(s).forEach(a),o[s]={low:l,lim:i++}}return r.children().forEach(a),o}return G6}var U6,uU;function lRe(){if(uU)return U6;uU=1;let e=Eo();U6={run:t,cleanup:i};function t(a){let s=e.addDummyNode(a,"root",{},"_root"),l=r(a),c=Object.values(l),u=e.applyWithChunking(Math.max,c)-1,d=2*u+1;a.graph().nestingRoot=s,a.edges().forEach(p=>a.edge(p).minlen*=d);let f=o(a)+1;a.children().forEach(p=>n(a,s,d,f,u,l,p)),a.graph().nodeRankFactor=d}function n(a,s,l,c,u,d,f){let p=a.children(f);if(!p.length){f!==s&&a.setEdge(s,f,{weight:0,minlen:l});return}let g=e.addBorderNode(a,"_bt"),b=e.addBorderNode(a,"_bb"),m=a.node(f);a.setParent(g,f),m.borderTop=g,a.setParent(b,f),m.borderBottom=b,p.forEach(C=>{n(a,s,l,c,u,d,C);let w=a.node(C),S=w.borderTop?w.borderTop:C,y=w.borderBottom?w.borderBottom:C,E=w.borderTop?c:2*c,N=S!==y?1:u-d[f]+1;a.setEdge(g,S,{weight:E,minlen:N,nestingEdge:!0}),a.setEdge(y,b,{weight:E,minlen:N,nestingEdge:!0})}),a.parent(f)||a.setEdge(s,g,{weight:0,minlen:u+d[f]})}function r(a){var s={};function l(c,u){var d=a.children(c);d&&d.length&&d.forEach(f=>l(f,u+1)),s[c]=u}return a.children().forEach(c=>l(c,1)),s}function o(a){return a.edges().reduce((s,l)=>s+a.edge(l).weight,0)}function i(a){var s=a.graph();a.removeNode(s.nestingRoot),delete s.nestingRoot,a.edges().forEach(l=>{var c=a.edge(l);c.nestingEdge&&a.removeEdge(l)})}return U6}var Y6,dU;function cRe(){if(dU)return Y6;dU=1;let e=Eo();Y6=t;function t(r){function o(i){let a=r.children(i),s=r.node(i);if(a.length&&a.forEach(o),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let l=s.minRank,c=s.maxRank+1;l<c;++l)n(r,"borderLeft","_bl",i,s,l),n(r,"borderRight","_br",i,s,l)}}r.children().forEach(o)}function n(r,o,i,a,s,l){let c={width:0,height:0,rank:l,borderType:o},u=s[o][l-1],d=e.addDummyNode(r,"border",c,i);s[o][l]=d,r.setParent(d,a),u&&r.setEdge(u,d,{weight:1})}return Y6}var X6,fU;function uRe(){if(fU)return X6;fU=1,X6={adjust:e,undo:t};function e(l){let c=l.graph().rankdir.toLowerCase();(c==="lr"||c==="rl")&&n(l)}function t(l){let c=l.graph().rankdir.toLowerCase();(c==="bt"||c==="rl")&&o(l),(c==="lr"||c==="rl")&&(a(l),n(l))}function n(l){l.nodes().forEach(c=>r(l.node(c))),l.edges().forEach(c=>r(l.edge(c)))}function r(l){let c=l.width;l.width=l.height,l.height=c}function o(l){l.nodes().forEach(c=>i(l.node(c))),l.edges().forEach(c=>{let u=l.edge(c);u.points.forEach(i),Object.hasOwn(u,"y")&&i(u)})}function i(l){l.y=-l.y}function a(l){l.nodes().forEach(c=>s(l.node(c))),l.edges().forEach(c=>{let u=l.edge(c);u.points.forEach(s),Object.hasOwn(u,"x")&&s(u)})}function s(l){let c=l.x;l.x=l.y,l.y=c}return X6}var Z6,hU;function dRe(){if(hU)return Z6;hU=1;let e=Eo();Z6=t;function t(n){let r={},o=n.nodes().filter(u=>!n.children(u).length),i=o.map(u=>n.node(u).rank),a=e.applyWithChunking(Math.max,i),s=e.range(a+1).map(()=>[]);function l(u){if(r[u])return;r[u]=!0;let d=n.node(u);s[d.rank].push(u),n.successors(u).forEach(l)}return o.sort((u,d)=>n.node(u).rank-n.node(d).rank).forEach(l),s}return Z6}var J6,pU;function fRe(){if(pU)return J6;pU=1;let e=Eo().zipObject;J6=t;function t(r,o){let i=0;for(let a=1;a<o.length;++a)i+=n(r,o[a-1],o[a]);return i}function n(r,o,i){let a=e(i,i.map((f,p)=>p)),s=o.flatMap(f=>r.outEdges(f).map(p=>({pos:a[p.w],weight:r.edge(p).weight})).sort((p,g)=>p.pos-g.pos)),l=1;for(;l<i.length;)l<<=1;let c=2*l-1;l-=1;let u=new Array(c).fill(0),d=0;return s.forEach(f=>{let p=f.pos+l;u[p]+=f.weight;let g=0;for(;p>0;)p%2&&(g+=u[p+1]),p=p-1>>1,u[p]+=f.weight;d+=f.weight*g}),d}return J6}var eI,gU;function hRe(){if(gU)return eI;gU=1,eI=e;function e(t,n=[]){return n.map(r=>{let o=t.inEdges(r);if(o.length){let i=o.reduce((a,s)=>{let l=t.edge(s),c=t.node(s.v);return{sum:a.sum+l.weight*c.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}return eI}var tI,mU;function pRe(){if(mU)return tI;mU=1;let e=Eo();tI=t;function t(o,i){let a={};o.forEach((l,c)=>{let u=a[l.v]={indegree:0,in:[],out:[],vs:[l.v],i:c};l.barycenter!==void 0&&(u.barycenter=l.barycenter,u.weight=l.weight)}),i.edges().forEach(l=>{let c=a[l.v],u=a[l.w];c!==void 0&&u!==void 0&&(u.indegree++,c.out.push(a[l.w]))});let s=Object.values(a).filter(l=>!l.indegree);return n(s)}function n(o){let i=[];function a(l){return c=>{c.merged||(c.barycenter===void 0||l.barycenter===void 0||c.barycenter>=l.barycenter)&&r(l,c)}}function s(l){return c=>{c.in.push(l),--c.indegree===0&&o.push(c)}}for(;o.length;){let l=o.pop();i.push(l),l.in.reverse().forEach(a(l)),l.out.forEach(s(l))}return i.filter(l=>!l.merged).map(l=>e.pick(l,["vs","i","barycenter","weight"]))}function r(o,i){let a=0,s=0;o.weight&&(a+=o.barycenter*o.weight,s+=o.weight),i.weight&&(a+=i.barycenter*i.weight,s+=i.weight),o.vs=i.vs.concat(o.vs),o.barycenter=a/s,o.weight=s,o.i=Math.min(i.i,o.i),i.merged=!0}return tI}var nI,vU;function gRe(){if(vU)return nI;vU=1;let e=Eo();nI=t;function t(o,i){let a=e.partition(o,g=>Object.hasOwn(g,"barycenter")),s=a.lhs,l=a.rhs.sort((g,b)=>b.i-g.i),c=[],u=0,d=0,f=0;s.sort(r(!!i)),f=n(c,l,f),s.forEach(g=>{f+=g.vs.length,c.push(g.vs),u+=g.barycenter*g.weight,d+=g.weight,f=n(c,l,f)});let p={vs:c.flat(!0)};return d&&(p.barycenter=u/d,p.weight=d),p}function n(o,i,a){let s;for(;i.length&&(s=i[i.length-1]).i<=a;)i.pop(),o.push(s.vs),a++;return a}function r(o){return(i,a)=>i.barycenter<a.barycenter?-1:i.barycenter>a.barycenter?1:o?a.i-i.i:i.i-a.i}return nI}var rI,bU;function mRe(){if(bU)return rI;bU=1;let e=hRe(),t=pRe(),n=gRe();rI=r;function r(a,s,l,c){let u=a.children(s),d=a.node(s),f=d?d.borderLeft:void 0,p=d?d.borderRight:void 0,g={};f&&(u=u.filter(w=>w!==f&&w!==p));let b=e(a,u);b.forEach(w=>{if(a.children(w.v).length){let S=r(a,w.v,l,c);g[w.v]=S,Object.hasOwn(S,"barycenter")&&i(w,S)}});let m=t(b,l);o(m,g);let C=n(m,c);if(f&&(C.vs=[f,C.vs,p].flat(!0),a.predecessors(f).length)){let w=a.node(a.predecessors(f)[0]),S=a.node(a.predecessors(p)[0]);Object.hasOwn(C,"barycenter")||(C.barycenter=0,C.weight=0),C.barycenter=(C.barycenter*C.weight+w.order+S.order)/(C.weight+2),C.weight+=2}return C}function o(a,s){a.forEach(l=>{l.vs=l.vs.flatMap(c=>s[c]?s[c].vs:c)})}function i(a,s){a.barycenter!==void 0?(a.barycenter=(a.barycenter*a.weight+s.barycenter*s.weight)/(a.weight+s.weight),a.weight+=s.weight):(a.barycenter=s.barycenter,a.weight=s.weight)}return rI}var oI,yU;function vRe(){if(yU)return oI;yU=1;let e=ps().Graph,t=Eo();oI=n;function n(o,i,a){let s=r(o),l=new e({compound:!0}).setGraph({root:s}).setDefaultNodeLabel(c=>o.node(c));return o.nodes().forEach(c=>{let u=o.node(c),d=o.parent(c);(u.rank===i||u.minRank<=i&&i<=u.maxRank)&&(l.setNode(c),l.setParent(c,d||s),o[a](c).forEach(f=>{let p=f.v===c?f.w:f.v,g=l.edge(p,c),b=g!==void 0?g.weight:0;l.setEdge(p,c,{weight:o.edge(f).weight+b})}),Object.hasOwn(u,"minRank")&&l.setNode(c,{borderLeft:u.borderLeft[i],borderRight:u.borderRight[i]}))}),l}function r(o){for(var i;o.hasNode(i=t.uniqueId("_root")););return i}return oI}var iI,CU;function bRe(){if(CU)return iI;CU=1,iI=e;function e(t,n,r){let o={},i;r.forEach(a=>{let s=t.parent(a),l,c;for(;s;){if(l=t.parent(s),l?(c=o[l],o[l]=s):(c=i,i=s),c&&c!==s){n.setEdge(c,s);return}s=l}})}return iI}var aI,AU;function yRe(){if(AU)return aI;AU=1;let e=dRe(),t=fRe(),n=mRe(),r=vRe(),o=bRe(),i=ps().Graph,a=Eo();aI=s;function s(d,f){if(f&&typeof f.customOrder=="function"){f.customOrder(d,s);return}let p=a.maxRank(d),g=l(d,a.range(1,p+1),"inEdges"),b=l(d,a.range(p-1,-1,-1),"outEdges"),m=e(d);if(u(d,m),f&&f.disableOptimalOrderHeuristic)return;let C=Number.POSITIVE_INFINITY,w;for(let S=0,y=0;y<4;++S,++y){c(S%2?g:b,S%4>=2),m=a.buildLayerMatrix(d);let E=t(d,m);E<C&&(y=0,w=Object.assign({},m),C=E)}u(d,w)}function l(d,f,p){return f.map(function(g){return r(d,g,p)})}function c(d,f){let p=new i;d.forEach(function(g){let b=g.graph().root,m=n(g,b,p,f);m.vs.forEach((C,w)=>g.node(C).order=w),o(g,p,m.vs)})}function u(d,f){Object.values(f).forEach(p=>p.forEach((g,b)=>d.node(g).order=b))}return aI}var sI,wU;function CRe(){if(wU)return sI;wU=1;let e=ps().Graph,t=Eo();sI={positionX:p,findType1Conflicts:n,findType2Conflicts:r,addConflict:i,hasConflict:a,verticalAlignment:s,horizontalCompaction:l,alignCoordinates:d,findSmallestWidthAlignment:u,balance:f};function n(m,C){let w={};function S(y,E){let N=0,M=0,$=y.length,O=E[E.length-1];return E.forEach((T,P)=>{let B=o(m,T),_=B?m.node(B).order:$;(B||T===O)&&(E.slice(M,P+1).forEach(k=>{m.predecessors(k).forEach(L=>{let D=m.node(L),j=D.order;(j<N||_<j)&&!(D.dummy&&m.node(k).dummy)&&i(w,L,k)})}),M=P+1,N=_)}),E}return C.length&&C.reduce(S),w}function r(m,C){let w={};function S(E,N,M,$,O){let T;t.range(N,M).forEach(P=>{T=E[P],m.node(T).dummy&&m.predecessors(T).forEach(B=>{let _=m.node(B);_.dummy&&(_.order<$||_.order>O)&&i(w,B,T)})})}function y(E,N){let M=-1,$,O=0;return N.forEach((T,P)=>{if(m.node(T).dummy==="border"){let B=m.predecessors(T);B.length&&($=m.node(B[0]).order,S(N,O,P,M,$),O=P,M=$)}S(N,O,N.length,$,E.length)}),N}return C.length&&C.reduce(y),w}function o(m,C){if(m.node(C).dummy)return m.predecessors(C).find(w=>m.node(w).dummy)}function i(m,C,w){if(C>w){let y=C;C=w,w=y}let S=m[C];S||(m[C]=S={}),S[w]=!0}function a(m,C,w){if(C>w){let S=C;C=w,w=S}return!!m[C]&&Object.hasOwn(m[C],w)}function s(m,C,w,S){let y={},E={},N={};return C.forEach(M=>{M.forEach(($,O)=>{y[$]=$,E[$]=$,N[$]=O})}),C.forEach(M=>{let $=-1;M.forEach(O=>{let T=S(O);if(T.length){T=T.sort((B,_)=>N[B]-N[_]);let P=(T.length-1)/2;for(let B=Math.floor(P),_=Math.ceil(P);B<=_;++B){let k=T[B];E[O]===O&&$<N[k]&&!a(w,O,k)&&(E[k]=O,E[O]=y[O]=y[k],$=N[k])}}})}),{root:y,align:E}}function l(m,C,w,S,y){let E={},N=c(m,C,w,y),M=y?"borderLeft":"borderRight";function $(P,B){let _=N.nodes(),k=_.pop(),L={};for(;k;)L[k]?P(k):(L[k]=!0,_.push(k),_=_.concat(B(k))),k=_.pop()}function O(P){E[P]=N.inEdges(P).reduce((B,_)=>Math.max(B,E[_.v]+N.edge(_)),0)}function T(P){let B=N.outEdges(P).reduce((k,L)=>Math.min(k,E[L.w]-N.edge(L)),Number.POSITIVE_INFINITY),_=m.node(P);B!==Number.POSITIVE_INFINITY&&_.borderType!==M&&(E[P]=Math.max(E[P],B))}return $(O,N.predecessors.bind(N)),$(T,N.successors.bind(N)),Object.keys(S).forEach(P=>E[P]=E[w[P]]),E}function c(m,C,w,S){let y=new e,E=m.graph(),N=g(E.nodesep,E.edgesep,S);return C.forEach(M=>{let $;M.forEach(O=>{let T=w[O];if(y.setNode(T),$){var P=w[$],B=y.edge(P,T);y.setEdge(P,T,Math.max(N(m,O,$),B||0))}$=O})}),y}function u(m,C){return Object.values(C).reduce((w,S)=>{let y=Number.NEGATIVE_INFINITY,E=Number.POSITIVE_INFINITY;Object.entries(S).forEach(([M,$])=>{let O=b(m,M)/2;y=Math.max($+O,y),E=Math.min($-O,E)});const N=y-E;return N<w[0]&&(w=[N,S]),w},[Number.POSITIVE_INFINITY,null])[1]}function d(m,C){let w=Object.values(C),S=t.applyWithChunking(Math.min,w),y=t.applyWithChunking(Math.max,w);["u","d"].forEach(E=>{["l","r"].forEach(N=>{let M=E+N,$=m[M];if($===C)return;let O=Object.values($),T=S-t.applyWithChunking(Math.min,O);N!=="l"&&(T=y-t.applyWithChunking(Math.max,O)),T&&(m[M]=t.mapValues($,P=>P+T))})})}function f(m,C){return t.mapValues(m.ul,(w,S)=>{if(C)return m[C.toLowerCase()][S];{let y=Object.values(m).map(E=>E[S]).sort((E,N)=>E-N);return(y[1]+y[2])/2}})}function p(m){let C=t.buildLayerMatrix(m),w=Object.assign(n(m,C),r(m,C)),S={},y;["u","d"].forEach(N=>{y=N==="u"?C:Object.values(C).reverse(),["l","r"].forEach(M=>{M==="r"&&(y=y.map(P=>Object.values(P).reverse()));let $=(N==="u"?m.predecessors:m.successors).bind(m),O=s(m,y,w,$),T=l(m,y,O.root,O.align,M==="r");M==="r"&&(T=t.mapValues(T,P=>-P)),S[N+M]=T})});let E=u(m,S);return d(S,E),f(S,m.graph().align)}function g(m,C,w){return(S,y,E)=>{let N=S.node(y),M=S.node(E),$=0,O;if($+=N.width/2,Object.hasOwn(N,"labelpos"))switch(N.labelpos.toLowerCase()){case"l":O=-N.width/2;break;case"r":O=N.width/2;break}if(O&&($+=w?O:-O),O=0,$+=(N.dummy?C:m)/2,$+=(M.dummy?C:m)/2,$+=M.width/2,Object.hasOwn(M,"labelpos"))switch(M.labelpos.toLowerCase()){case"l":O=M.width/2;break;case"r":O=-M.width/2;break}return O&&($+=w?O:-O),O=0,$}}function b(m,C){return m.node(C).width}return sI}var lI,SU;function ARe(){if(SU)return lI;SU=1;let e=Eo(),t=CRe().positionX;lI=n;function n(o){o=e.asNonCompoundGraph(o),r(o),Object.entries(t(o)).forEach(([i,a])=>o.node(i).x=a)}function r(o){let i=e.buildLayerMatrix(o),a=o.graph().ranksep,s=0;i.forEach(l=>{const c=l.reduce((u,d)=>{const f=o.node(d).height;return u>f?u:f},0);l.forEach(u=>o.node(u).y=s+c/2),s+=c+a})}return lI}var cI,EU;function wRe(){if(EU)return cI;EU=1;let e=rRe(),t=oRe(),n=aRe(),r=Eo().normalizeRanks,o=sRe(),i=Eo().removeEmptyRanks,a=lRe(),s=cRe(),l=uRe(),c=yRe(),u=ARe(),d=Eo(),f=ps().Graph;cI=p;function p(H,W){let K=W&&W.debugTiming?d.time:d.notime;K("layout",()=>{let G=K(" buildLayoutGraph",()=>$(H));K(" runLayout",()=>g(G,K,W)),K(" updateInputGraph",()=>b(H,G))})}function g(H,W,K){W(" makeSpaceForEdgeLabels",()=>O(H)),W(" removeSelfEdges",()=>V(H)),W(" acyclic",()=>e.run(H)),W(" nestingGraph.run",()=>a.run(H)),W(" rank",()=>n(d.asNonCompoundGraph(H))),W(" injectEdgeLabelProxies",()=>T(H)),W(" removeEmptyRanks",()=>i(H)),W(" nestingGraph.cleanup",()=>a.cleanup(H)),W(" normalizeRanks",()=>r(H)),W(" assignRankMinMax",()=>P(H)),W(" removeEdgeLabelProxies",()=>B(H)),W(" normalize.run",()=>t.run(H)),W(" parentDummyChains",()=>o(H)),W(" addBorderSegments",()=>s(H)),W(" order",()=>c(H,K)),W(" insertSelfEdges",()=>z(H)),W(" adjustCoordinateSystem",()=>l.adjust(H)),W(" position",()=>u(H)),W(" positionSelfEdges",()=>R(H)),W(" removeBorderNodes",()=>j(H)),W(" normalize.undo",()=>t.undo(H)),W(" fixupEdgeLabelCoords",()=>L(H)),W(" undoCoordinateSystem",()=>l.undo(H)),W(" translateGraph",()=>_(H)),W(" assignNodeIntersects",()=>k(H)),W(" reversePoints",()=>D(H)),W(" acyclic.undo",()=>e.undo(H))}function b(H,W){H.nodes().forEach(K=>{let G=H.node(K),J=W.node(K);G&&(G.x=J.x,G.y=J.y,G.rank=J.rank,W.children(K).length&&(G.width=J.width,G.height=J.height))}),H.edges().forEach(K=>{let G=H.edge(K),J=W.edge(K);G.points=J.points,Object.hasOwn(J,"x")&&(G.x=J.x,G.y=J.y)}),H.graph().width=W.graph().width,H.graph().height=W.graph().height}let m=["nodesep","edgesep","ranksep","marginx","marginy"],C={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},w=["acyclicer","ranker","rankdir","align"],S=["width","height","rank"],y={width:0,height:0},E=["minlen","weight","width","height","labeloffset"],N={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},M=["labelpos"];function $(H){let W=new f({multigraph:!0,compound:!0}),K=q(H.graph());return W.setGraph(Object.assign({},C,Q(K,m),d.pick(K,w))),H.nodes().forEach(G=>{let J=q(H.node(G));const Y=Q(J,S);Object.keys(y).forEach(te=>{Y[te]===void 0&&(Y[te]=y[te])}),W.setNode(G,Y),W.setParent(G,H.parent(G))}),H.edges().forEach(G=>{let J=q(H.edge(G));W.setEdge(G,Object.assign({},N,Q(J,E),d.pick(J,M)))}),W}function O(H){let W=H.graph();W.ranksep/=2,H.edges().forEach(K=>{let G=H.edge(K);G.minlen*=2,G.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?G.width+=G.labeloffset:G.height+=G.labeloffset)})}function T(H){H.edges().forEach(W=>{let K=H.edge(W);if(K.width&&K.height){let G=H.node(W.v),Y={rank:(H.node(W.w).rank-G.rank)/2+G.rank,e:W};d.addDummyNode(H,"edge-proxy",Y,"_ep")}})}function P(H){let W=0;H.nodes().forEach(K=>{let G=H.node(K);G.borderTop&&(G.minRank=H.node(G.borderTop).rank,G.maxRank=H.node(G.borderBottom).rank,W=Math.max(W,G.maxRank))}),H.graph().maxRank=W}function B(H){H.nodes().forEach(W=>{let K=H.node(W);K.dummy==="edge-proxy"&&(H.edge(K.e).labelRank=K.rank,H.removeNode(W))})}function _(H){let W=Number.POSITIVE_INFINITY,K=0,G=Number.POSITIVE_INFINITY,J=0,Y=H.graph(),te=Y.marginx||0,re=Y.marginy||0;function X(Z){let oe=Z.x,ne=Z.y,de=Z.width,ue=Z.height;W=Math.min(W,oe-de/2),K=Math.max(K,oe+de/2),G=Math.min(G,ne-ue/2),J=Math.max(J,ne+ue/2)}H.nodes().forEach(Z=>X(H.node(Z))),H.edges().forEach(Z=>{let oe=H.edge(Z);Object.hasOwn(oe,"x")&&X(oe)}),W-=te,G-=re,H.nodes().forEach(Z=>{let oe=H.node(Z);oe.x-=W,oe.y-=G}),H.edges().forEach(Z=>{let oe=H.edge(Z);oe.points.forEach(ne=>{ne.x-=W,ne.y-=G}),Object.hasOwn(oe,"x")&&(oe.x-=W),Object.hasOwn(oe,"y")&&(oe.y-=G)}),Y.width=K-W+te,Y.height=J-G+re}function k(H){H.edges().forEach(W=>{let K=H.edge(W),G=H.node(W.v),J=H.node(W.w),Y,te;K.points?(Y=K.points[0],te=K.points[K.points.length-1]):(K.points=[],Y=J,te=G),K.points.unshift(d.intersectRect(G,Y)),K.points.push(d.intersectRect(J,te))})}function L(H){H.edges().forEach(W=>{let K=H.edge(W);if(Object.hasOwn(K,"x"))switch((K.labelpos==="l"||K.labelpos==="r")&&(K.width-=K.labeloffset),K.labelpos){case"l":K.x-=K.width/2+K.labeloffset;break;case"r":K.x+=K.width/2+K.labeloffset;break}})}function D(H){H.edges().forEach(W=>{let K=H.edge(W);K.reversed&&K.points.reverse()})}function j(H){H.nodes().forEach(W=>{if(H.children(W).length){let K=H.node(W),G=H.node(K.borderTop),J=H.node(K.borderBottom),Y=H.node(K.borderLeft[K.borderLeft.length-1]),te=H.node(K.borderRight[K.borderRight.length-1]);K.width=Math.abs(te.x-Y.x),K.height=Math.abs(J.y-G.y),K.x=Y.x+K.width/2,K.y=G.y+K.height/2}}),H.nodes().forEach(W=>{H.node(W).dummy==="border"&&H.removeNode(W)})}function V(H){H.edges().forEach(W=>{if(W.v===W.w){var K=H.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:H.edge(W)}),H.removeEdge(W)}})}function z(H){var W=d.buildLayerMatrix(H);W.forEach(K=>{var G=0;K.forEach((J,Y)=>{var te=H.node(J);te.order=Y+G,(te.selfEdges||[]).forEach(re=>{d.addDummyNode(H,"selfedge",{width:re.label.width,height:re.label.height,rank:te.rank,order:Y+ ++G,e:re.e,label:re.label},"_se")}),delete te.selfEdges})})}function R(H){H.nodes().forEach(W=>{var K=H.node(W);if(K.dummy==="selfedge"){var G=H.node(K.e.v),J=G.x+G.width/2,Y=G.y,te=K.x-J,re=G.height/2;H.setEdge(K.e,K.label),H.removeNode(W),K.label.points=[{x:J+2*te/3,y:Y-re},{x:J+5*te/6,y:Y-re},{x:J+te,y:Y},{x:J+5*te/6,y:Y+re},{x:J+2*te/3,y:Y+re}],K.label.x=K.x,K.label.y=K.y}})}function Q(H,W){return d.mapValues(d.pick(H,W),Number)}function q(H){var W={};return H&&Object.entries(H).forEach(([K,G])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=G}),W}return cI}var uI,xU;function SRe(){if(xU)return uI;xU=1;let e=Eo(),t=ps().Graph;uI={debugOrdering:n};function n(r){let o=e.buildLayerMatrix(r),i=new t({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(a=>{i.setNode(a,{label:a}),i.setParent(a,"layer"+r.node(a).rank)}),r.edges().forEach(a=>i.setEdge(a.v,a.w,{},a.name)),o.forEach((a,s)=>{let l="layer"+s;i.setNode(l,{rank:"same"}),a.reduce((c,u)=>(i.setEdge(c,u,{style:"invis"}),u))}),i}return uI}var dI,IU;function ERe(){return IU||(IU=1,dI="1.1.5"),dI}var fI,NU;function xRe(){return NU||(NU=1,fI={graphlib:ps(),layout:wRe(),debug:SRe(),util:{time:Eo().time,notime:Eo().notime},version:ERe()}),fI}var IRe=xRe();const OU=ri(IRe),NRe=()=>{const{getNodes:e,getEdges:t,setNodes:n,setEdges:r,fitView:o}=Pn(),i=s=>{const l=document.querySelector(`[data-id="${s}"]`);if(!l)return{width:180,height:60};const c=l.getBoundingClientRect();return{width:Math.max(60,c.width),height:Math.max(30,c.height)}};return{layout:(s="LR")=>{const l=e(),c=t();l.length&&requestAnimationFrame(()=>{const u=s==="LR",d=new OU.graphlib.Graph;d.setDefaultEdgeLabel(()=>({})),d.setGraph({rankdir:s,ranksep:120,nodesep:80}),l.forEach(p=>{const{width:g,height:b}=i(p.id);d.setNode(p.id,{width:g,height:b})}),c.forEach(p=>d.setEdge(p.source,p.target)),OU.layout(d);const f=l.map(p=>{const g=d.node(p.id),{width:b,height:m}=i(p.id);return{...p,position:{x:g.x-b/2,y:g.y-m/2},targetPosition:u?"left":"top",sourcePosition:u?"right":"bottom"}});n(f),r(c),requestAnimationFrame(()=>o({duration:400,padding:.3}))})}}};var ORe="scripts_editor_k7c3wx0",Lc="scripts_editor_k7c3wx1",$Re="scripts_editor_k7c3wx2",hI="scripts_editor_k7c3wx3",MRe="scripts_editor_k7c3wx4";const TRe=()=>{const e=Ir(),[t,n]=x.useState(()=>e.getState().transform[2]);return x.useEffect(()=>{let r=e.getState().transform[2];return e.subscribe(i=>{const a=i.transform[2];a!==r&&(r=a,n(a))})},[e]),v.jsxs("span",{className:MRe,children:[Math.round(t*100)/2,"%"]})},PRe=x.memo(()=>{const{instanceId:e}=Zn(),{zoomIn:t,zoomOut:n,fitView:r}=Pn(),{layout:o}=NRe(),{undo:i,redo:a,canUndo:s,canRedo:l}=kHe(e),{mode:c,toggleMode:u}=IG(),{mode:d}=Zn();return v.jsxs("div",{className:ORe,children:[v.jsx("button",{type:"button",disabled:!s||d==="view",className:Lc,onClick:i,children:v.jsx(zHe,{size:18})}),v.jsx("button",{type:"button",disabled:!l||d==="view",className:Lc,onClick:a,children:v.jsx(jHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:Lc,onClick:()=>o(),children:v.jsx(r8e,{})}),v.jsx("button",{type:"button",className:Lc,onClick:()=>r({padding:.2}),children:v.jsx(LHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:Lc,onClick:()=>t(),children:v.jsx(FHe,{size:18})}),v.jsx(TRe,{}),v.jsx("button",{type:"button",className:Lc,onClick:()=>n(),children:v.jsx(BHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:`${Lc} ${c==="trackpad"?$Re:""}`,onClick:u,children:v.jsx(VHe,{size:18})}),v.jsx("button",{type:"button",className:Lc,children:v.jsx(HHe,{size:18})})]})});var pI,$U;function MU(){if($U)return pI;$U=1;var e=Object.prototype;function t(n){var r=n&&n.constructor,o=typeof r=="function"&&r.prototype||e;return n===o}return pI=t,pI}var gI,TU;function kRe(){if(TU)return gI;TU=1;function e(t,n){return function(r){return t(n(r))}}return gI=e,gI}var mI,PU;function _Re(){if(PU)return mI;PU=1;var e=kRe(),t=e(Object.keys,Object);return mI=t,mI}var vI,kU;function DRe(){if(kU)return vI;kU=1;var e=MU(),t=_Re(),n=Object.prototype,r=n.hasOwnProperty;function o(i){if(!e(i))return t(i);var a=[];for(var s in Object(i))r.call(i,s)&&s!="constructor"&&a.push(s);return a}return vI=o,vI}var bI,_U;function DU(){if(_U)return bI;_U=1;var e=Mm(),t=tC(),n="[object AsyncFunction]",r="[object Function]",o="[object GeneratorFunction]",i="[object Proxy]";function a(s){if(!t(s))return!1;var l=e(s);return l==r||l==o||l==n||l==i}return bI=a,bI}var yI,BU;function BRe(){if(BU)return yI;BU=1;var e=Dl(),t=e["__core-js_shared__"];return yI=t,yI}var CI,LU;function LRe(){if(LU)return CI;LU=1;var e=BRe(),t=function(){var r=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function n(r){return!!t&&t in r}return CI=n,CI}var AI,FU;function jU(){if(FU)return AI;FU=1;var e=Function.prototype,t=e.toString;function n(r){if(r!=null){try{return t.call(r)}catch{}try{return r+""}catch{}}return""}return AI=n,AI}var wI,zU;function FRe(){if(zU)return wI;zU=1;var e=DU(),t=LRe(),n=tC(),r=jU(),o=/[\\^$.*+?()[\]{}|]/g,i=/^\[object .+?Constructor\]$/,a=Function.prototype,s=Object.prototype,l=a.toString,c=s.hasOwnProperty,u=RegExp("^"+l.call(c).replace(o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function d(f){if(!n(f)||t(f))return!1;var p=e(f)?u:i;return p.test(r(f))}return wI=d,wI}var SI,VU;function jRe(){if(VU)return SI;VU=1;function e(t,n){return t==null?void 0:t[n]}return SI=e,SI}var EI,HU;function Bm(){if(HU)return EI;HU=1;var e=FRe(),t=jRe();function n(r,o){var i=t(r,o);return e(i)?i:void 0}return EI=n,EI}var xI,RU;function zRe(){if(RU)return xI;RU=1;var e=Bm(),t=Dl(),n=e(t,"DataView");return xI=n,xI}var II,WU;function VRe(){if(WU)return II;WU=1;var e=Bm(),t=Dl(),n=e(t,"Map");return II=n,II}var NI,QU;function HRe(){if(QU)return NI;QU=1;var e=Bm(),t=Dl(),n=e(t,"Promise");return NI=n,NI}var OI,KU;function RRe(){if(KU)return OI;KU=1;var e=Bm(),t=Dl(),n=e(t,"Set");return OI=n,OI}var $I,qU;function WRe(){if(qU)return $I;qU=1;var e=Bm(),t=Dl(),n=e(t,"WeakMap");return $I=n,$I}var MI,GU;function QRe(){if(GU)return MI;GU=1;var e=zRe(),t=VRe(),n=HRe(),r=RRe(),o=WRe(),i=Mm(),a=jU(),s="[object Map]",l="[object Object]",c="[object Promise]",u="[object Set]",d="[object WeakMap]",f="[object DataView]",p=a(e),g=a(t),b=a(n),m=a(r),C=a(o),w=i;return(e&&w(new e(new ArrayBuffer(1)))!=f||t&&w(new t)!=s||n&&w(n.resolve())!=c||r&&w(new r)!=u||o&&w(new o)!=d)&&(w=function(S){var y=i(S),E=y==l?S.constructor:void 0,N=E?a(E):"";if(N)switch(N){case p:return f;case g:return s;case b:return c;case m:return u;case C:return d}return y}),MI=w,MI}var TI,UU;function KRe(){if(UU)return TI;UU=1;var e=Mm(),t=nC(),n="[object Arguments]";function r(o){return t(o)&&e(o)==n}return TI=r,TI}var PI,YU;function qRe(){if(YU)return PI;YU=1;var e=KRe(),t=nC(),n=Object.prototype,r=n.hasOwnProperty,o=n.propertyIsEnumerable,i=e(function(){return arguments}())?e:function(a){return t(a)&&r.call(a,"callee")&&!o.call(a,"callee")};return PI=i,PI}var kI,XU;function GRe(){if(XU)return kI;XU=1;var e=Array.isArray;return kI=e,kI}var _I,ZU;function JU(){if(ZU)return _I;ZU=1;var e=9007199254740991;function t(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=e}return _I=t,_I}var DI,eY;function URe(){if(eY)return DI;eY=1;var e=DU(),t=JU();function n(r){return r!=null&&t(r.length)&&!e(r)}return DI=n,DI}var Lm={exports:{}},BI,tY;function YRe(){if(tY)return BI;tY=1;function e(){return!1}return BI=e,BI}Lm.exports;var nY;function XRe(){return nY||(nY=1,function(e,t){var n=Dl(),r=YRe(),o=t&&!t.nodeType&&t,i=o&&!0&&e&&!e.nodeType&&e,a=i&&i.exports===o,s=a?n.Buffer:void 0,l=s?s.isBuffer:void 0,c=l||r;e.exports=c}(Lm,Lm.exports)),Lm.exports}var LI,rY;function ZRe(){if(rY)return LI;rY=1;var e=Mm(),t=JU(),n=nC(),r="[object Arguments]",o="[object Array]",i="[object Boolean]",a="[object Date]",s="[object Error]",l="[object Function]",c="[object Map]",u="[object Number]",d="[object Object]",f="[object RegExp]",p="[object Set]",g="[object String]",b="[object WeakMap]",m="[object ArrayBuffer]",C="[object DataView]",w="[object Float32Array]",S="[object Float64Array]",y="[object Int8Array]",E="[object Int16Array]",N="[object Int32Array]",M="[object Uint8Array]",$="[object Uint8ClampedArray]",O="[object Uint16Array]",T="[object Uint32Array]",P={};P[w]=P[S]=P[y]=P[E]=P[N]=P[M]=P[$]=P[O]=P[T]=!0,P[r]=P[o]=P[m]=P[i]=P[C]=P[a]=P[s]=P[l]=P[c]=P[u]=P[d]=P[f]=P[p]=P[g]=P[b]=!1;function B(_){return n(_)&&t(_.length)&&!!P[e(_)]}return LI=B,LI}var FI,oY;function JRe(){if(oY)return FI;oY=1;function e(t){return function(n){return t(n)}}return FI=e,FI}var Fm={exports:{}};Fm.exports;var iY;function eWe(){return iY||(iY=1,function(e,t){var n=xK(),r=t&&!t.nodeType&&t,o=r&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===r,a=i&&n.process,s=function(){try{var l=o&&o.require&&o.require("util").types;return l||a&&a.binding&&a.binding("util")}catch{}}();e.exports=s}(Fm,Fm.exports)),Fm.exports}var jI,aY;function tWe(){if(aY)return jI;aY=1;var e=ZRe(),t=JRe(),n=eWe(),r=n&&n.isTypedArray,o=r?t(r):e;return jI=o,jI}var zI,sY;function nWe(){if(sY)return zI;sY=1;var e=DRe(),t=QRe(),n=qRe(),r=GRe(),o=URe(),i=XRe(),a=MU(),s=tWe(),l="[object Map]",c="[object Set]",u=Object.prototype,d=u.hasOwnProperty;function f(p){if(p==null)return!0;if(o(p)&&(r(p)||typeof p=="string"||typeof p.splice=="function"||i(p)||s(p)||n(p)))return!p.length;var g=t(p);if(g==l||g==c)return!p.size;if(a(p))return!e(p).length;for(var b in p)if(d.call(p,b))return!1;return!0}return zI=f,zI}var rWe=nWe();const oWe=ri(rWe);var lY="scripts_editor_ohkkdt0",yC="scripts_editor_ohkkdt1",VI="scripts_editor_ohkkdt2",iWe="scripts_editor_ohkkdt3",cY="scripts_editor_ohkkdt4",uY="scripts_editor_ohkkdt5",aWe="scripts_editor_ohkkdt6",sWe="scripts_editor_ohkkdt7",lWe="scripts_editor_ohkkdt8";const dY=e=>v.jsx(Bn,{...e,direction:"vertical",size:10}),fY=x.memo(({keyId:e,Icon:t,label:n,active:r,color:o,isLongLabel:i,onDragStart:a})=>{const s=x.useCallback(l=>a(l,e),[a,e]);return v.jsxs(wt,{draggable:!0,type:"text",style:{minHeight:i?62:52},className:r?`${VI} ${iWe} `:`${VI}`,onDragStart:s,children:[v.jsx("span",{className:cY,style:{color:o},children:v.jsx(t,{})}),v.jsx("span",{className:uY,children:n})]},e)},(e,t)=>e.keyId===t.keyId&&e.label===t.label&&e.active===t.active&&e.color===t.color&&e.isLongLabel===t.isLongLabel&&e.onDragStart===t.onDragStart),cWe=()=>{const[e,t]=sC(),{BLOCKS_ENABLED:n}=Zn(),r=x.useCallback((a,s)=>{a.dataTransfer.effectAllowed="move",requestAnimationFrame(()=>t(s))},[t]);if(oWe(n))return null;const o=x.useMemo(()=>vC.filter(a=>(n==null?void 0:n.includes(a.key))&&a.group===1),[n]),i=x.useMemo(()=>vC.filter(a=>(n==null?void 0:n.includes(a.key))&&a.group===2),[n]);return v.jsxs("div",{className:lY,children:[v.jsx(Vs,{className:yC,wrapperTag:dY,children:o.map(a=>{const s=a.icon,l=a.active,c=a.label.includes(`
|
|
708
|
+
của file ghi âm, mà không dùng nội dung văn bản này.`,children:v.jsx(yc,{})}),n?v.jsx(jq,{className:Fq,record:n}):null]}),v.jsx(Uze,{})]})},{TextArea:Zze}=Ht,Jze=({prefixPaths:e=[]})=>v.jsx(ge.Item,{name:[...e,"prompt","content"],noStyle:!0,children:v.jsx(Zze,{placeholder:"Nhập prompt",rows:4,className:n6})}),eVe=({id:e})=>{const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e),a=o.length!==0||i.length!==0,{data:s}=t(e),l=s,[c]=ge.useForm(),u=ge.useWatch(["type"],c)||Ao.MACHINE_AND_RECORD,d=p=>{r(e,p)},f=$t.debounce(()=>{c.submit()},500);return v.jsx("div",{className:bze,children:v.jsxs(ge,{form:c,layout:"vertical",initialValues:{...l},onFinish:d,onValuesChange:f,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsxs(Bn,{direction:"vertical",size:"small",style:{width:"100%"},children:[v.jsx(ge.Item,{name:["type"],noStyle:!0,children:v.jsx(Bu,{size:"middle",block:!0,options:[{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(Il,{}),"Câu cố định"]}),value:Ao.MACHINE_AND_RECORD},{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(js,{}),"Prompt"]}),value:Ao.PROMPT}]})}),v.jsx(lo,{isOpen:u===Ao.MACHINE_AND_RECORD,children:v.jsx(Xze,{})}),v.jsx(lo,{isOpen:u===Ao.PROMPT,children:v.jsx(Jze,{})}),v.jsxs(Vs,{visible:a,children:[v.jsx(Aa,{style:{margin:"4px 0"}}),!$t.isEmpty(o)&&v.jsx("div",{className:Bq,children:o.map(p=>v.jsx(Su,{message:p.title,description:p.description,type:"info",showIcon:!0,closable:!0,style:{padding:"12px",margin:"12px 0"}},p.title))}),!$t.isEmpty(i)&&v.jsx("div",{className:Bq,children:i.map(p=>v.jsx(Su,{style:{padding:"12px"},message:p.title,description:p.description,type:"error",showIcon:!0,closable:!0},p.title))})]})]})]})})},f6=({id:e,data:t,mini:n})=>{var b,m;const{displayComponent:r,nodeId:o,closeModal:i}=Ur(),a=Po(),{errors:s}=ra(e),l=t.title||"Node nói",c=t.type||Ao.MACHINE_AND_RECORD,u=x.useMemo(()=>{var C,w;return c===Ao.MACHINE_AND_RECORD?((C=t==null?void 0:t.machine)==null?void 0:C.content)??"":((w=t==null?void 0:t.prompt)==null?void 0:w.content)??""},[c,t]),[d,f]=x.useState(u);x.useEffect(()=>{f(u)},[u]);const p=x.useMemo(()=>$t.debounce(C=>{c===Ao.MACHINE_AND_RECORD?a(e,{...t,machine:{...t.machine,content:C}}):a(e,{...t,prompt:{...t.prompt,content:C}})},300),[c,e,t]),g=C=>{C.target.closest(`button, [role="button"], input, textarea, .${Ti}-modal-wrap, audio`)||(C.stopPropagation(),C.preventDefault(),r(v.jsx(eVe,{id:e}),"Cài đặt node nói",()=>{},e))};return n?v.jsx("div",{className:gze,children:v.jsx("div",{className:Pq,children:v.jsx("div",{className:_q,children:v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:Dq,children:v.jsx(Cb,{})}),v.jsx("span",{className:mze,children:l})]})})})}):v.jsx("div",{className:pze,onClick:g,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&g(C)},children:v.jsxs("div",{className:`${Pq} ${o===e?kq.active:kq.default}`,children:[v.jsxs("div",{className:_q,children:[v.jsxs(Bn,{size:4,children:[v.jsx("span",{className:Dq,children:v.jsx(Cb,{})}),v.jsx(ah,{id:e,color:xn.common.red})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.common.red})]}),v.jsxs(ot,{gap:6,vertical:!0,style:{width:"100%"},children:[v.jsx(Bu,{block:!0,size:"small",style:{width:"100%",fontSize:12},value:c,options:[{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(Il,{size:12}),"Câu cố định"]}),value:Ao.MACHINE_AND_RECORD,disabled:c===Ao.PROMPT},{label:v.jsxs(ot,{align:"center",gap:12,justify:"center",children:[v.jsx(js,{size:12}),"Prompt"]}),value:Ao.PROMPT,disabled:c===Ao.MACHINE_AND_RECORD}]}),v.jsx(lo,{isOpen:!$t.isEmpty(s),children:v.jsx("div",{className:vze,children:s.map(C=>v.jsx(Su,{message:C.title,type:"error",showIcon:!0,closable:!0,style:{width:"100%"}},`alert-${e}-${C.title}`))})})]}),v.jsxs("div",{className:Lq,children:[v.jsx(Ht.TextArea,{onWheelCapture:C=>{C.stopPropagation()},rows:4,autoSize:{minRows:4,maxRows:4},placeholder:"Vui lòng nhập nội dung",className:n6,onFocus:()=>i(),value:d,onChange:C=>{const w=C.target.value;f(w),p(w)}}),(b=t.record)!=null&&b.default_record?v.jsx(jq,{className:Fq,record:(m=t.record)==null?void 0:m.default_record,style:{right:2}}):null]})]})})};var tVe="scripts_editor_1b2l0x40",nVe="scripts_editor_1b2l0x41",eG="scripts_editor_1b2l0x42",tG="scripts_editor_1b2l0x43",nG="scripts_editor_1b2l0x44",rG="scripts_editor_1b2l0x45",rVe="scripts_editor_1b2l0x46",oVe="scripts_editor_1b2l0x49",oG="scripts_editor_1b2l0x4a",iG="scripts_editor_1b2l0x4d",iVe="scripts_editor_flqrya0",aVe="scripts_editor_flqrya1",sVe="scripts_editor_flqrya2 scripts_editor_flqrya1",aG="scripts_editor_flqrya3",lVe="scripts_editor_flqrya4",cVe="scripts_editor_flqrya5 scripts_editor_flqrya4";const sG=({mini:e})=>e?v.jsxs("div",{className:sVe,children:[v.jsx("span",{className:aG,children:v.jsx(Oz,{style:{fontSize:"20px"}})}),v.jsx("span",{className:cVe,children:"Bắt đầu"})]}):v.jsx("div",{className:iVe,children:v.jsxs("div",{className:aVe,children:[v.jsx("span",{className:aG,children:v.jsx(Oz,{})}),v.jsx("span",{className:lVe,children:"Bắt đầu"})]})}),uVe=({id:e,data:t})=>v.jsxs(ui,{nodeId:e,children:[v.jsx(cr,{type:"source",position:Yt.Right}),v.jsx(sG,{id:e,data:t})]}),dVe=({id:e})=>{const t=ose(),n=ase(),{fitView:r}=Pn(),o=uoe({id:e},t,n),i=coe({id:e},t,n),a=x.useCallback(c=>{r({nodes:[{id:c}],padding:.2,duration:700})},[r]),s=x.useCallback(c=>c.length===0?v.jsx(Ke.Text,{type:"secondary",children:"Không có node nào"}):v.jsx(Vs,{wrapperTag:u=>v.jsx(Bn,{...u,direction:"vertical",wrap:!0,size:0,style:{width:"100%"}}),children:c.map(u=>{const d={id:u.id,data:u.data,mini:!0};let f=v.jsx(Ke.Text,{children:"NODE_NOT_IMPLEMENTED"},u.id);return u.type===st.START&&(f=v.jsx(sG,{...d})),u.type===st.SPEAK&&(f=v.jsx(f6,{...d})),u.type===st.LISTEN&&(f=v.jsx(t6,{...d})),u.type===st.TRANSFER&&(f=v.jsx(h6,{...d})),v.jsx("div",{onMouseDown:p=>(p.stopPropagation(),a(u.id)),style:{width:"100%",border:"none",background:"transparent",padding:0,margin:0,cursor:"pointer",outline:"none",textAlign:"left"},children:f},u.id)})}),[a]),l=[{key:"1",label:v.jsx("b",{children:"Mối quan hệ"}),children:v.jsxs(Bn,{wrap:!0,direction:"vertical",size:8,style:{width:"100%"},children:[v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node trước"}),s(o),v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node sau"}),s(i),v.jsx(Ke.Text,{strong:!0,type:"secondary",children:"Node cha"}),s([])]}),styles:{header:{padding:"0px 0px 12px 0px"},body:{padding:0}}}];return v.jsx(X0,{ghost:!0,items:l})},fVe=()=>v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Cài đặt tổng đài"}),v.jsx(ge.Item,{label:"Chọn nhánh nội bộ",name:["external","value"],style:{marginBottom:12},children:v.jsx(Ht,{placeholder:"Nhập số điện thoại"})}),v.jsx(ge.Item,{noStyle:!0,name:["external","maximum_try"],children:v.jsx(Uo,{addonBefore:"Chờ tối đa",addonAfter:"giây",min:1,max:300,placeholder:"30",style:{width:"100%"}})})]}),hVe=()=>v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Cài đặt tổng đài"}),v.jsx(ge.Item,{label:"Chọn nhánh nội bộ",name:["internal","value"],style:{marginBottom:12},children:v.jsx(Ht,{placeholder:"Chọn nhánh nội bộ hoặc nhập số điện thoại"})}),v.jsx(ge.Item,{noStyle:!0,name:["internal","maximum_try"],children:v.jsx(Uo,{addonBefore:"Chờ tối đa",addonAfter:"giây",min:1,max:300,placeholder:"30",style:{width:"100%"}})})]}),pVe=({id:e})=>{const{getNode:t}=Pn(),{data:n}=t(e),r=n,[o]=ge.useForm(),[i,a]=x.useState(r.type),{infos:s}=ra(e),l=Po(),c=d=>{l(e,d)},u=$t.debounce(()=>{o.submit()},500);return x.useEffect(()=>{o.setFieldsValue({...r}),a(r.type)},[r,o]),v.jsxs(ge,{form:o,layout:"vertical",onFinish:c,onBlur:()=>{o.submit()},onChange:()=>{u()},children:[v.jsx(ge.Item,{name:"type",noStyle:!0,children:v.jsx(Bu,{value:i,onChange:d=>{a(d)},options:[{label:"Tổng đài",value:ss.INTERNAL},{label:"Điện thoại",value:ss.EXTERNAL}],block:!0})}),v.jsxs(Bn,{direction:"vertical",size:8,style:{width:"100%",marginTop:16},children:[v.jsx(lo,{isOpen:i===ss.INTERNAL,children:v.jsx(hVe,{})}),v.jsx(lo,{isOpen:i===ss.EXTERNAL,children:v.jsx(fVe,{})}),!$t.isEmpty(s)&&v.jsx(Vs,{children:s.map(d=>v.jsx(Su,{message:d.title,description:d.description,type:"info",showIcon:!0,closable:!0,style:{padding:"12px",margin:"12px 0"}},d.title))})]}),v.jsx(Aa,{}),v.jsx(dVe,{id:e}),v.jsx("div",{style:{height:"200px"}})]})},h6=({id:e,data:t,mini:n,group:r})=>{const{displayComponent:o}=Ur(),i=t.title||"Chuyển máy",a=t.type||ss.INTERNAL,s=Fp(),l=u=>{var d;(d=u.target)!=null&&d.closest("button")||(u.stopPropagation(),u.preventDefault(),o(v.jsx(pVe,{id:e}),"Cài đặt chuyển máy"),s(e))},c=x.useMemo(()=>a===ss.INTERNAL?"Tổng đài":a===ss.EXTERNAL?"Điện thoại":"UNKNOWN",[a]);return n?v.jsx("div",{className:nVe,children:v.jsx("div",{className:eG,children:v.jsxs("div",{className:tG,children:[v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:nG,children:v.jsx(NF,{})}),v.jsx("span",{className:rG,children:i})]}),v.jsx("div",{className:rVe,children:c})]})})}):v.jsx("div",{className:tVe,onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&l(u)},children:v.jsxs("div",{className:eG,children:[v.jsxs("div",{className:tG,children:[v.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[v.jsx("span",{className:nG,children:v.jsx(n8e,{})}),v.jsx("span",{className:rG,children:i}),v.jsx(ah,{id:e,color:xn.icon.transferCall})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.icon.transferCall})]}),!r&&v.jsx("div",{className:oVe,children:v.jsxs(Vs,{children:[v.jsxs("div",{className:oG,children:["Chuyển máy thành công",v.jsx(cr,{type:"target",id:`${e}_success`,position:Yt.Right,className:iG,style:{top:"50%",right:"8%"}})]}),v.jsxs("div",{className:oG,children:["Chuyển máy thất bại",v.jsx(cr,{type:"target",id:`${e}_failed`,position:Yt.Right,className:iG,style:{top:"75%",right:"8%"}})]})]})})]})})},gVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(h6,{id:t,data:e})]}),mVe=[st.SPEAK,st.TRANSFER],vVe=e=>{const t=yq(e);return{verifyAddable:x.useCallback(r=>{const o=mVe.includes(r);let i=!0;const a=[];return o||(i=!1,a.push("Block này không hỗ trợ thêm vào nhóm")),t.filter(s=>s.type===st.SPEAK).length>0&&r===st.SPEAK&&(i=!1,a.push("Nhóm chỉ có thể chứa tối đa 1 block nói")),t.filter(s=>s.type===st.TRANSFER).length>0&&r===st.TRANSFER&&(i=!1,a.push("Nhóm chỉ có thể chứa tối đa 1 block chuyển máy")),{allowed:i,errors:a}},[t])}};var bVe="scripts_editor_dxvfua1",yVe="scripts_editor_dxvfua2",CVe="scripts_editor_dxvfua3",AVe="scripts_editor_dxvfua4",wVe="scripts_editor_dxvfua5 scripts_editor_dxvfua4";const{Text:lG}=Ke,SVe=({id:e,data:t})=>{const[n]=sC(),{setNodes:r}=Pn(),{screenToFlowPosition:o}=Pn(),i=yq(e),{verifyAddable:a}=vVe(e),{error:s}=lC(),l=i.length>0,c=p=>{p.preventDefault(),p.dataTransfer.dropEffect="move"},u=p=>`${e}_${p.toLowerCase()}_${qu()}`,d=p=>{if(p.preventDefault(),!n)return;const g=a(n);if(!g.allowed){g.errors.forEach(C=>{s({content:C,key:C})});return}const b=o({x:p.clientX,y:p.clientY}),m={id:u(n),type:n,position:b,data:{title:rh[n],...Vg[n]},deletable:!0,...Hg[n],parentId:e,extent:"parent",hidden:!0};r(C=>C.concat(m))},f=x.useMemo(()=>i.map(p=>p.type===st.SPEAK?v.jsx(f6,{...p,data:p.data,group:!0},p.id):p.type===st.LISTEN?v.jsx(t6,{...p,data:p.data,group:!0},p.id):p.type===st.TRANSFER?v.jsx(h6,{...p,data:p.data,group:!0},p.id):v.jsx(v.Fragment,{})),[i]);return v.jsx("div",{children:v.jsxs(Go,{className:bVe,styles:{body:{padding:"8px",display:"flex",flex:1,flexDirection:"column",height:"100%",minHeight:"100%"}},children:[v.jsxs("div",{className:`${yVe} drag-handle__custom`,children:[v.jsxs("div",{className:CVe,children:[v.jsx(zje,{size:16,color:xn.common.black}),v.jsx(lG,{strong:!0,children:t.title}),v.jsx(ah,{id:e,color:xn.common.black})]}),v.jsx(Xu,{id:e,deleteBtnColor:xn.common.black})]}),v.jsx(Bn,{direction:"vertical",size:8,children:f}),v.jsx("button",{className:l?AVe:wVe,onDragOver:c,onDrop:d,type:"button","data-group-drop-zone":"true",children:v.jsx(lG,{children:"Thả block vào đây"})}),v.jsxs(Bn,{direction:"vertical",size:8,style:{marginTop:8},children:[v.jsxs(Go,{styles:{body:{padding:"12px"}},children:["Thực hiện thành công",v.jsx(cr,{type:"source",position:Yt.Right})]}),v.jsxs(Go,{styles:{body:{padding:"12px"}},children:["Thực hiện thất bại",v.jsx(cr,{type:"source",position:Yt.Right})]})]})]})})},EVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(SVe,{id:t,data:e})]});var xVe="scripts_editor_1300n210",IVe="scripts_editor_1300n211",NVe="scripts_editor_1300n212",OVe="scripts_editor_1300n213",$Ve="scripts_editor_1300n215",MVe="scripts_editor_1300n217",TVe="scripts_editor_1300n218",PVe="scripts_editor_1300n219",kVe="scripts_editor_1300n21a",_Ve="scripts_editor_1300n21b",DVe="scripts_editor_1300n21c",BVe="scripts_editor_1300n21d";const p6={SEND_IN_APP_WEB:"Gửi thông báo trong app",TELEGRAM:"Gửi thông báo qua Telegram"},LVe={SEND_IN_APP_WEB:"Gửi thông báo trong app",TELEGRAM:"Gửi thông báo qua Telegram"},FVe=$t.keys(p6),jVe=()=>{const e=ge.useFormInstance(),t=ge.useWatch("type",e);return v.jsxs("div",{children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm hành động",allowClear:!0,onSearch:n=>{console.log("🚀 ~ e:",n)},style:{marginBottom:12}}),v.jsx(ge.Item,{name:"type",label:null,children:v.jsx(er.Group,{className:MVe,children:v.jsx(Bn,{direction:"vertical",className:TVe,size:12,children:FVe.map(n=>v.jsxs(er,{value:n,className:PVe,children:[v.jsxs("div",{className:kVe,children:[v.jsx(Ke.Title,{level:5,style:{margin:0},children:p6[n]}),v.jsx(Ke.Text,{type:"secondary",children:LVe[n]})]}),t===n&&v.jsxs("div",{className:_Ve,children:[v.jsx("div",{className:DVe}),v.jsx(Ji,{className:BVe})]})]},n))})})})]})},zVe=({id:e,outputs:t})=>{const{getNode:n}=Pn();Po();const r=n(e);r==null||r.data;const o=[{title:e,key:e,icon:v.jsx(Cl,{}),children:kc(t??[]).map(i=>({...i,icon:()=>{var s;const a=qs[((s=i.meta)==null?void 0:s.iconType)??""]??null;return a?v.jsx(a,{}):void 0}}))}];return v.jsx(Ls,{showLine:!0,showIcon:!0,switcherIcon:v.jsx(Za,{}),defaultExpandedKeys:[e],treeData:o})},VVe=()=>{const{emit:e}=Z5();return v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{name:"to",label:"Người nhận thông báo",children:v.jsx(dd,{isCheckPrefix:!1,placeholder:"Chọn người nhận thông báo"})}),v.jsx(ge.Item,{name:"subject",label:"Tiêu đề thông báo",children:v.jsx(dd,{children:v.jsx(Ht,{placeholder:"Nhập tiêu đề thông báo"})})}),v.jsx(ge.Item,{name:"content",label:"Nội dung thông báo",children:v.jsx(dd,{children:v.jsx(Ht.TextArea,{rows:4,placeholder:"Nhập nội dung thông báo"})})})]})},HVe=()=>v.jsxs(ot,{vertical:!0,gap:12,children:[v.jsx(Ke.Text,{strong:!0,children:"Gửi thông báo"}),v.jsx(wt,{type:"primary",icon:v.jsx(W5,{}),children:"Gửi thử"})]}),RVe=({id:e})=>{var C;const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e);o.length!==0||i.length;const{data:a}=t(e),s=a,[l]=ge.useForm(),[c,u]=x.useState("1"),d=ge.useWatch("type",l),{data:f}=fd({type:st.NOTIFICATION,action:s==null?void 0:s.type});x.useEffect(()=>{var w,S;r(e,{...s,output:((S=(w=f==null?void 0:f.data)==null?void 0:w.outputs)==null?void 0:S.map(y=>({...y,object:e})))||[]})},[f==null?void 0:f.data,e,r]),x.useEffect(()=>{d&&u("2")},[d]);const p=x.useRef(!0);x.useEffect(()=>{p.current&&(l.setFieldsValue({...s}),p.current=!1)},[s]);const g=w=>{const S=By(Dy(w));r(e,{...w,variables:S})},b=$t.debounce(()=>{l.submit()},500),m=[{key:"1",label:"Hành động",children:v.jsx(jVe,{})},{key:"2",label:"Cài đặt",children:v.jsx(VVe,{}),disabled:!d},{key:"3",label:"Kiểm thử",children:v.jsx(HVe,{}),disabled:!d},{key:"4",label:"Đầu ra",children:v.jsx(zVe,{id:e,outputs:(C=f==null?void 0:f.data)==null?void 0:C.outputs}),disabled:!d}];return v.jsx("div",{className:$Ve,children:v.jsxs(ge,{form:l,layout:"vertical",onFinish:g,onValuesChange:b,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsx(si,{activeKey:c,onChange:u,items:m})]})})},WVe=({id:e,data:t,mini:n})=>{const{mode:r}=Zn(),{displayComponent:o}=Ur(),i=t.title||"Thông báo",a=s=>{const l=s.target;l!=null&&l.closest(`button, [role="button"], .${Ti}-modal-wrap, input, textarea`)||(s.stopPropagation(),s.preventDefault(),o(r==="history"?v.jsx(Tl,{id:e}):v.jsx(RVe,{id:e}),i,()=>{},e))};return n?v.jsx(v.Fragment,{}):v.jsx("div",{className:xVe,onClick:a,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&a(s)},children:v.jsxs("div",{className:`${IVe}`,children:[v.jsxs(ot,{align:"center",justify:"space-between",style:{width:"100%"},children:[v.jsxs(ot,{align:"center",justify:"flex-start",style:{width:"100%"},gap:12,children:[v.jsx("div",{className:NVe,children:v.jsx(z4,{color:"#096DD9",variant:"Bold",size:24,className:OVe})}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:i})]}),v.jsx(kl,{id:e})]}),v.jsxs(Er,{gutter:[12,6],style:{width:"100%"},children:[v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Hành động"})}),v.jsx(qt,{span:16,children:v.jsx(Ke.Text,{children:p6[t.type]})}),v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Người nhận"})}),v.jsx(qt,{span:16,children:v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{ellipsis:{rows:1,expanded:!1,tooltip:t.to},style:{marginBottom:"unset"},children:v.jsx(Ke.Text,{children:t.to})})})})]})]})})},QVe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(WVe,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]});var KVe="scripts_editor_1osrdyg0",qVe="scripts_editor_1osrdyg1",GVe="scripts_editor_1osrdyg2",UVe="scripts_editor_1osrdyg3",YVe="scripts_editor_1osrdyg4",XVe="scripts_editor_1osrdyg5",ZVe="scripts_editor_1osrdyg7",JVe="scripts_editor_1osrdyg8",eHe="scripts_editor_1osrdyg9",tHe="scripts_editor_1osrdyga",nHe="scripts_editor_1osrdygb",rHe="scripts_editor_1osrdygc",oHe="scripts_editor_1osrdygd",cG="scripts_editor_1osrdygg",Ll=(e=>(e.DAILY="DAILY",e.WEEKLY="WEEKLY",e.MONTHLY="MONTHLY",e.PERIODIC="PERIODIC",e))(Ll||{}),uG=(e=>(e.DEFAULT_2_YEARS="DEFAULT_2_YEARS",e.CUSTOM="CUSTOM",e))(uG||{}),dG=(e=>(e.FIRST_DAY="FIRST_DAY",e.LAST_DAY="LAST_DAY",e.CUSTOM="CUSTOM",e))(dG||{}),fG=(e=>(e.MINUTE="MINUTE",e.HOUR="HOUR",e.DAY="DAY",e))(fG||{});const g6={DAILY:"Kích hoạt hàng ngày",WEEKLY:"Kích hoạt hàng tuần",MONTHLY:"Kích hoạt hàng tháng",PERIODIC:"Kích hoạt theo chu kỳ"},iHe={DAILY:"Kích hoạt hàng ngày",WEEKLY:"Kích hoạt hàng tuần",MONTHLY:"Kích hoạt hàng tháng",PERIODIC:"Kích hoạt theo chu kỳ"},aHe=$t.keys(g6),hG={DEFAULT_2_YEARS:"Mặc định: 2 năm kể từ ngày sản xuất",CUSTOM:"Tùy chỉnh"},sHe=$t.keys(hG),hC={MON:"Thứ 2",FRI:"Thứ 6",TUE:"Thứ 3",SAT:"Thứ 7",WED:"Thứ 4",SUN:"Chủ Nhật",THU:"Thứ 5"},lHe=$t.keys(hC),pC={FIRST_DAY:"Ngày đầu tiên của tháng",LAST_DAY:"Ngày cuối cùng của tháng",CUSTOM:"Tuỳ chỉnh"},cHe=$t.keys(pC),gC={MINUTE:"Phút",HOUR:"Giờ",DAY:"Ngày"},uHe=$t.keys(gC),dHe=()=>{const e=ge.useFormInstance(),t=ge.useWatch("type",e);return v.jsxs("div",{children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm hành động",allowClear:!0,onSearch:n=>{console.log("🚀 ~ e:",n)},style:{marginBottom:12}}),v.jsx(ge.Item,{name:"type",label:null,children:v.jsx(er.Group,{className:ZVe,children:v.jsx(Bn,{direction:"vertical",className:JVe,size:12,children:aHe.map(n=>v.jsxs(er,{value:n,className:eHe,children:[v.jsxs("div",{className:tHe,children:[v.jsx(Ke.Title,{level:5,style:{margin:0},children:g6[n]}),v.jsx(Ke.Text,{type:"secondary",children:iHe[n]})]}),t===n&&v.jsxs("div",{className:nHe,children:[v.jsx("div",{className:rHe}),v.jsx(Ji,{className:oHe})]})]},n))})})})]})},fHe=({id:e,outputs:t})=>{const n=[{title:e,key:e,icon:v.jsx(Cl,{}),children:kc(t??[]).map(r=>({...r,icon:()=>{var i;const o=qs[((i=r.meta)==null?void 0:i.iconType)??""]??null;return o?v.jsx(o,{}):void 0}}))}];return v.jsx(Ls,{showLine:!0,showIcon:!0,switcherIcon:v.jsx(Za,{}),defaultExpandedKeys:[e],treeData:n})},hHe=()=>v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.WEEKLY?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày trong tuần"}),name:["config","days_of_week"],children:v.jsx(Vr.Group,{style:{display:"grid",gridTemplateColumns:"repeat(2, minmax(100px, 1fr))",rowGap:8},options:lHe.map(t=>({label:hC[t],value:t}))})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.MONTHLY?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày trong tháng"}),name:["config","month_day_type"],children:v.jsx(er.Group,{className:cG,children:cHe.map(t=>v.jsx(er,{value:t,children:pC[t]},t))})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>{var n,r;return((n=e.config)==null?void 0:n.month_day_type)!==((r=t.config)==null?void 0:r.month_day_type)},children:({getFieldValue:e})=>e(["config","month_day_type"])===dG.CUSTOM?v.jsx(ge.Item,{label:null,name:["config","specific_day"],rules:[{required:!0,message:"Vui lòng chọn ngày"}],children:v.jsx(Uo,{style:{width:"100%"},min:1,max:31,placeholder:"Chọn ngày"})}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")===Ll.PERIODIC?v.jsxs(v.Fragment,{children:[v.jsx(Ke.Text,{strong:!0,children:"Kích hoạt mỗi"}),v.jsxs(Er,{gutter:6,children:[v.jsx(qt,{span:12,children:v.jsx(ge.Item,{name:["config","interval_value"],label:null,rules:[{required:!0,message:"Vui lòng nhập giá trị"}],children:v.jsx(Uo,{style:{width:"100%"},min:1,placeholder:"Nhập giá trị"})})}),v.jsx(qt,{span:12,children:v.jsx(ge.Item,{name:["config","interval_unit"],label:null,initialValue:fG.MINUTE,rules:[{required:!0,message:"Vui lòng chọn đơn vị"}],children:v.jsx(qn,{placeholder:"Chọn đơn vị",options:uHe.map(t=>({label:gC[t],value:t}))})})})]})]}):null}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.type!==t.type,children:({getFieldValue:e})=>e("type")!==Ll.PERIODIC?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Thời gian"}),name:["config","trigger_time"],children:v.jsx(Ku,{style:{width:"100%"},placeholder:"Chọn giờ",format:Wo,allowClear:!0,minuteStep:5})}):null}),v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Hiệu lực"}),name:["validity","validity_type"],children:v.jsx(er.Group,{className:cG,children:sHe.map(e=>v.jsx(er,{value:e,children:hG[e]},e))})}),v.jsx(ge.Item,{noStyle:!0,shouldUpdate:(e,t)=>{var n,r;return((n=e.validity)==null?void 0:n.validity_type)!==((r=t.validity)==null?void 0:r.validity_type)},children:({getFieldValue:e})=>e(["validity","validity_type"])===uG.CUSTOM?v.jsx(ge.Item,{label:v.jsx(Ke.Text,{strong:!0,children:"Ngày kết thúc"}),name:["validity","validity_end_date"],rules:[{required:!0,message:"Vui lòng chọn ngày"}],children:v.jsx(ns,{style:{width:"100%"},placeholder:"Chọn ngày",allowClear:!0,format:G5})}):null})]}),pHe=({id:e})=>{var C;const{getNode:t,setNodes:n}=Pn(),r=Po(),{infos:o,errors:i}=ra(e);o.length!==0||i.length;const{data:a}=t(e),s=a,[l]=ge.useForm(),[c,u]=x.useState("1"),d=ge.useWatch("type",l),{data:f}=fd({type:st.SCHEDULE_AT,action:s==null?void 0:s.type});x.useEffect(()=>{var w,S;r(e,{...s,output:((S=(w=f==null?void 0:f.data)==null?void 0:w.outputs)==null?void 0:S.map(y=>({...y,object:e})))||[]})},[f==null?void 0:f.data,e,r]),x.useEffect(()=>{d&&u("2")},[d]);const p=x.useRef(!0);x.useEffect(()=>{var w,S;p.current&&((w=s==null?void 0:s.validity)!=null&&w.validity_end_date&&(s.validity.validity_end_date=Xn(s.validity.validity_end_date,G5)),(S=s==null?void 0:s.config)!=null&&S.trigger_time&&(s.config.trigger_time=Xn(s.config.trigger_time,Wo)),l.setFieldsValue({...s}),p.current=!1)},[s]);const g=w=>{const{config:S,validity:y}=w;y!=null&&y.validity_end_date&&(w.validity.validity_end_date=Xn(y.validity_end_date).format(G5)),S!=null&&S.trigger_time&&(w.config.trigger_time=Xn(S.trigger_time).format("HH:mm")),r(e,w)},b=$t.debounce(()=>{l.submit()},500),m=[{key:"1",label:"Hành động",children:v.jsx(dHe,{})},{key:"2",label:"Cài đặt",children:v.jsx(hHe,{}),disabled:!d},{key:"3",label:"Đầu ra",children:v.jsx(fHe,{outputs:(C=f==null?void 0:f.data)==null?void 0:C.outputs,id:e}),disabled:!d}];return v.jsx("div",{className:XVe,children:v.jsxs(ge,{form:l,layout:"vertical",onFinish:g,onValuesChange:b,children:[v.jsx(ge.Item,{name:["title"],noStyle:!0,children:v.jsx(Ht,{type:"hidden"})}),v.jsx(si,{activeKey:c,onChange:u,items:m})]})})},gHe=({id:e,data:t,mini:n})=>{const{mode:r}=Zn(),{displayComponent:o}=Ur(),i=t.title||"Thông báo",a=l=>{const c=l.target;c!=null&&c.closest(`button, [role="button"], .${Ti}-modal-wrap, input, textarea`)||(l.stopPropagation(),l.preventDefault(),o(r==="history"?v.jsx(Tl,{id:e}):v.jsx(pHe,{id:e}),i,()=>{},e))};if(n)return v.jsx(v.Fragment,{});const s=x.useMemo(()=>{var l,c,u,d,f,p,g,b,m,C,w,S,y,E,N,M,$,O;switch(t.type){case Ll.DAILY:return v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{ellipsis:{rows:1,expanded:!1,tooltip:(l=t==null?void 0:t.config)!=null&&l.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(c=t==null?void 0:t.config)!=null&&c.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})});case Ll.WEEKLY:return v.jsxs(ot,{vertical:!0,gap:6,children:[v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(f=(d=(u=t==null?void 0:t.config)==null?void 0:u.days_of_week)==null?void 0:d.map(T=>hC[T]))==null?void 0:f.join(", ")},children:v.jsx(Ke.Text,{children:(b=(g=(p=t==null?void 0:t.config)==null?void 0:p.days_of_week)==null?void 0:g.map(T=>hC[T]))==null?void 0:b.join(", ")})})}),v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(m=t==null?void 0:t.config)!=null&&m.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(C=t==null?void 0:t.config)!=null&&C.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})})]});case Ll.MONTHLY:return v.jsxs(ot,{vertical:!0,gap:6,children:[v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:pC[(w=t==null?void 0:t.config)==null?void 0:w.month_day_type]},children:v.jsx(Ke.Text,{children:pC[(S=t==null?void 0:t.config)==null?void 0:S.month_day_type]})})}),v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:(y=t==null?void 0:t.config)!=null&&y.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):void 0},children:v.jsx(Ke.Text,{children:(E=t==null?void 0:t.config)!=null&&E.trigger_time?Xn(t.config.trigger_time,Wo).format(Wo):""})})})]});case Ll.PERIODIC:return v.jsx(ot,{style:{minWidth:0},children:v.jsx(Ke.Paragraph,{style:{marginBottom:"unset"},ellipsis:{rows:1,expanded:!1,tooltip:`Mỗi ${(N=t==null?void 0:t.config)==null?void 0:N.interval_value} ${gC[(M=t==null?void 0:t.config)==null?void 0:M.interval_unit]}`},children:v.jsxs(Ke.Text,{children:["Mỗi ",($=t==null?void 0:t.config)==null?void 0:$.interval_value," ",gC[(O=t==null?void 0:t.config)==null?void 0:O.interval_unit]]})})})}},[t]);return v.jsx("div",{className:KVe,onClick:a,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&a(l)},children:v.jsxs("div",{className:`${qVe}`,children:[v.jsxs(ot,{align:"center",justify:"space-between",style:{width:"100%"},children:[v.jsxs(ot,{align:"center",justify:"flex-start",style:{width:"100%"},gap:12,children:[v.jsxs("div",{className:GVe,children:[v.jsx(H4,{color:"#096DD9",variant:"Bold",size:24,className:UVe}),v.jsx(Ju,{size:14,className:YVe,variant:"Bold",color:"#000"})]}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:i})]}),v.jsx(kl,{id:e})]}),v.jsxs(Er,{gutter:[12,6],style:{width:"100%"},children:[v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Hành động"})}),v.jsx(qt,{span:16,children:v.jsx(Ke.Text,{children:g6[t.type]})}),v.jsx(qt,{span:8,children:v.jsx(Ke.Text,{type:"secondary",children:"Thời gian"})}),v.jsx(qt,{span:16,children:s})]})]})})},mHe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(gHe,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]}),vHe=({data:e,id:t})=>v.jsxs(ui,{nodeId:t,children:[v.jsx(cr,{type:"target",position:Yt.Left}),v.jsx(f6,{id:t,data:e}),v.jsx(cr,{type:"source",position:Yt.Right})]}),pG={[st.AGENT]:B9e,[st.SPEAK]:vHe,[st.START]:uVe,[st.LISTEN]:hze,[st.TRANSFER]:gVe,[st.GROUP]:EVe,[st.CONDITION]:RLe,[st.TRIGGER_CONTACT]:VFe,[st.SCHEDULE_AT]:mHe,[st.CATCH_HOOK]:ALe,[st.ACTION_CONTACT]:TFe,[st.EMAIL]:Fje,[st.DELAY]:cje,[st.BRANCH]:YBe,[st.AI_AGENT]:T_e,[st.NOTIFICATION]:QVe},mC=e=>{switch(e.type){case st.AGENT:return xn.agentBlock.background;case st.START:return xn.startBlock.background;case st.SPEAK:return xn.speakBlock.background;case st.LISTEN:return xn.listenBlock.background;case st.TRANSFER:return xn.icon.transferCall;case st.CRM:return xn.icon.getData;case st.HTTP_REQUEST:return xn.icon.httpRequest;case st.CONDITION:return xn.icon.condition;case st.GROUP:return xn.groupBlock.background;case st.TRIGGER_CONTACT:return xn.contactBlock.backgroundNoGradient;case st.ACTION_CONTACT:return xn.contactBlock.backgroundNoGradient;case st.EMAIL:return xn.contactBlock.backgroundNoGradient;case st.DELAY:return xn.delayBlock.backgroundNoGradient;case st.NOTIFICATION:return xn.contactBlock.backgroundNoGradient;case st.SCHEDULE_AT:return xn.contactBlock.backgroundNoGradient;case st.CATCH_HOOK:return xn.contactBlock.backgroundNoGradient;default:return xn.common.gray}},gG=[st.AGENT,st.SPEAK,st.LISTEN,st.TRANSFER,st.CRM,st.HTTP_REQUEST,st.CONDITION,st.GROUP],mG=[st.TRIGGER_CONTACT,st.SCHEDULE_AT,st.CALLBOT_TRIGGER,st.ACTION_CONTACT,st.ORDER_ACTION,st.EMAIL,st.DELAY,st.BRANCH,st.AI_AGENT,st.NOTIFICATION,st.CATCH_HOOK],vC=[{key:st.AGENT,label:"Agent",icon:dx,group:1},{key:st.SPEAK,label:"Node nói",icon:LF,group:1},{key:st.LISTEN,label:"Node nghe",icon:lF,group:1},{key:st.TRANSFER,label:"Chuyển máy",icon:a8e,group:1},{key:st.CRM,label:"CRM",icon:hF,group:2},{key:st.HTTP_REQUEST,label:`HTTP
|
|
709
|
+
Request`,icon:sx,group:2},{key:st.CONDITION,label:"Điều kiện",icon:ax,group:2},{key:st.GROUP,label:"Nhóm",icon:wF,group:2}],m6=[{label:"Trigger",key:"trigger",icon:Ju,iconProps:{variant:"Bold"},group:1,color:"#FAAD14",items:[{key:st.SCHEDULE_AT,label:"Hẹn lịch",description:"Hẹn lịch",icon:H4,group:"Hành động",color:"#096DD9",iconProps:{variant:"Bold"}},{key:st.CATCH_HOOK,label:"Catch hook",description:"Catch hook",icon:WK,group:"Hành động",color:"#096DD9",iconProps:{variant:"Bold"}},{key:st.TRIGGER_CONTACT,label:"Liên hệ",description:"Liên hệ thay đổi",icon:s4,group:"CRM",color:"#096DD9"},{key:st.CALLBOT_TRIGGER,label:"Callbot",description:"Chiến dịch được tạo",icon:dx,group:"Đa kênh",color:"#096DD9"}]},{label:"CRM",key:"crm",icon:F4,iconProps:{variant:"Bold"},group:2,color:"#1D39C4",items:[{key:st.ACTION_CONTACT,label:"Liên hệ",description:"Thực hiện hành động với liên hệ",icon:s4,color:"#096DD9"},{key:st.ORDER_ACTION,label:"Đơn hàng",description:"Thực hiện hành động với đơn hàng",icon:BF,color:"#096DD9"}]},{label:"Đa kênh",key:"chat",icon:yH,iconProps:{variant:"Bold"},group:2,color:"#08979C",items:[{key:st.EMAIL,label:"Email",description:"Gửi email",icon:j4,iconProps:{variant:"Bold"},color:"#096DD9"},{key:st.NOTIFICATION,label:"Thông báo",description:"Gửi thông báo",icon:z4,iconProps:{variant:"Bold"},color:"#096DD9"}]},{label:"Logic",key:"logic",icon:vb,group:2,color:"#D46B08",items:[{key:st.DELAY,label:"Hẹn giờ",description:"Hẹn giờ",icon:Mz,color:"#D4380D"},{key:st.BRANCH,label:"Rẽ nhánh",description:"Rẽ nhánh",icon:vb,color:"#D4380D"},{key:st.AI_AGENT,label:"AI Agent",description:"AI Agent",icon:V4,iconProps:{variant:"Bold"},color:"#D4380D"}]},{label:"Tích hợp",key:"integration",icon:sx,group:2,color:"#08979C",items:[]}],Dc={[st.AGENT]:"#FAAD14",[st.START]:"none",[st.SPEAK]:"#d7268a",[st.LISTEN]:"#d2691e",[st.TRANSFER]:"#20b2aa",[st.CRM]:"#1890ff",[st.HTTP_REQUEST]:"#20b2aa",[st.CONDITION]:"#1890ff",[st.GROUP]:"#8c8c8c",[st.TRIGGER_CONTACT]:"#1890FF",[st.SCHEDULE_AT]:"#1890FF",[st.CALLBOT_TRIGGER]:"#1890FF",[st.ORDER_TRIGGER]:"#1890FF",[st.ACTION_CONTACT]:"#1890FF",[st.CALLBOT_ACTION]:"#1890FF",[st.ORDER_ACTION]:"#1890FF",[st.EMAIL]:"#1890FF",[st.DELAY]:"#D4380D",[st.BRANCH]:"#D4380D",[st.AI_AGENT]:"#D4380D",[st.NOTIFICATION]:"#1890FF",[st.CATCH_HOOK]:"#1890FF"};var vG="scripts_editor_223f7c0",bG="scripts_editor_223f7c2";const bHe={autoCallButton:({id:e,sourceX:t,sourceY:n,targetX:r,targetY:o,sourcePosition:i,targetPosition:a,style:s,target:l,markerEnd:c})=>{const{mode:u}=Zn(),{isOpen:d,onOpen:f,onClose:p}=Hr(),{setEdges:g,setNodes:b}=Pn(),[m,C,w]=o0({sourceX:t,sourceY:n,sourcePosition:i,targetX:r,targetY:o,targetPosition:a}),S=[...vC.map(N=>({label:v.jsxs(Bn,{align:"center",size:8,children:[x.createElement(N.icon,{style:{color:Dc[N.key]}}),N.label]}),key:N.key}))],y=N=>{N.preventDefault(),f()},E=({key:N})=>{const M=N,$={id:`${M.toLowerCase()}_${qu()}`,type:M,position:{x:C,y:w},data:{title:rh[M],...Vg[M]},deletable:!0,...Hg[M]};b(O=>O.concat($)),g(O=>{const T=O.find(k=>k.id===e);if(!T)return O;const{source:P,target:B}=T,_=O.filter(k=>k.id!==e);return _.push({id:`${P}_${$.id}_${qu()}`,source:P,target:$.id,type:"autoCallButton"}),yG.includes(M)&&_.push({id:`${$.id}_${B}_${qu()}`,source:$.id,target:B,type:"autoCallButton"}),_}),p()};return v.jsxs(v.Fragment,{children:[v.jsx(Jd,{path:m,markerEnd:c,style:s??{}}),v.jsx(tM,{children:u!=="edit"?null:v.jsx(ir,{title:"Thêm nút",children:v.jsx("div",{className:`${vG} nodrag nopan ${d?bG:""}`,style:{transform:`translate(-50%, -50%) translate(${C}px,${w}px)`},children:v.jsx(rs,{onOpenChange:N=>{N?f():p()},menu:{items:S,onClick:E},open:d,trigger:["click"],children:v.jsx(wt,{onClick:y,type:"text",size:"large",style:{padding:4},children:v.jsx(kg,{style:{fontSize:24}})})})})})})]})},autoFlowButton:e=>{const{id:t,sourceX:n,sourceY:r,targetX:o,targetY:i,sourcePosition:a,targetPosition:s,style:l,markerEnd:c}=e,{mode:u}=Zn(),{isOpen:d,onOpen:f,onClose:p}=Hr(),{setEdges:g,setNodes:b}=Pn(),[m,C,w]=x.useMemo(()=>o0({sourceX:n,sourceY:r,sourcePosition:a,targetX:o,targetY:i,targetPosition:s}),[n,r,o,i,a,s]),S=x.useMemo(()=>m6.map($=>({key:$.key,label:v.jsxs(Bn,{align:"center",size:8,children:[v.jsx("span",{style:{color:$.color||Dc[$.key]},children:v.jsx($.icon,{...$.iconProps,size:20})}),v.jsx("span",{children:$.label})]}),children:$.items.map(O=>({key:O.key,label:v.jsxs(Bn,{align:"center",size:8,children:[v.jsx("span",{style:{color:O.color||Dc[O.key]},children:v.jsx(O.icon,{...O.iconProps,size:14})}),v.jsx("span",{children:O.label})]})}))})),[]),y=x.useCallback($=>({id:`${$.toLowerCase()}_${qu()}`,type:$,position:{x:C,y:w},data:{title:rh[$],...Vg[$]},deletable:!0,...Hg[$]}),[C,w]),E=x.useCallback(({key:$})=>{const T=y($);b(P=>[...P,T]),g(P=>{const B=P.find(D=>D.id===t);if(!B)return P;const{source:_,target:k}=B,L=qu();return[...P.filter(D=>D.id!==t),{id:`${_}_${T.id}_${L}`,source:_,target:T.id,type:"autoFlowButton"},{id:`${T.id}_${k}_${L}`,source:T.id,target:k,type:"autoFlowButton"}]}),p()},[t,y,b,g,p]),N=x.useCallback($=>{$.preventDefault(),f()},[f]),M=x.useMemo(()=>({transform:`translate(-50%, -50%) translate(${C}px,${w}px)`}),[C,w]);return v.jsxs(v.Fragment,{children:[v.jsx(Jd,{path:m,markerEnd:c,style:l}),v.jsx(tM,{children:u!=="edit"?null:v.jsx(ir,{title:"Thêm nút",children:v.jsx("div",{className:`${vG} nodrag nopan ${d?bG:""}`,style:M,children:v.jsx(rs,{open:d,trigger:["click"],menu:{items:S,onClick:E},onOpenChange:$=>$?f():p(),children:v.jsx(wt,{onClick:N,type:"text",size:"large",style:{padding:4},children:v.jsx(kg,{style:{fontSize:24}})})})})})})]})}},yG=[st.SPEAK];function yHe(){const{getNodes:e,getEdges:t}=Pn(),n=lC();return{isValidConnection:x.useCallback(o=>{const i=e(),a=t(),s=i.find(c=>c.id===o.target);return a.some(c=>c.source===o.source&&c.sourceHandle===o.sourceHandle)?(n.error({key:"output-used",content:"Output này đã được nối rồi"}),!1):(s==null?void 0:s.id)===o.source?(n.error({key:"self-loop",content:"Không thể kết nối node vào chính nó"}),!1):!0},[t,e,n])}}var CHe="scripts_editor_3c0va90",AHe="scripts_editor_3c0va91",wHe="scripts_editor_3c0va93",SHe="scripts_editor_3c0va94",EHe="scripts_editor_3c0va95",xHe="scripts_editor_3c0va96",Bc="scripts_editor_3c0va97",IHe="scripts_editor_3c0va98",NHe="scripts_editor_3c0va99",CG="scripts_editor_3c0va9a";function AG(e){return ur({attr:{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},child:[{tag:"path",attr:{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20"},child:[]},{tag:"path",attr:{d:"M8 11h8"},child:[]},{tag:"path",attr:{d:"M8 7h6"},child:[]}]})(e)}const OHe={version:"1.21.3"};var Fh=(e=>(e.BOT="bot",e.CLONE="clone",e))(Fh||{});function v6(e){const t=e.getState(),{nodes:n,edges:r,transform:o}=t;return{nodes:n,edges:r,viewport:{x:o[0],y:o[1],zoom:o[2]}}}function $He({cb:e,delay:t=1e3,enabled:n=!0}){const r=Ir(),o=x.useRef(e),i=x.useRef(v6(r)),a=x.useRef(i.current.viewport.zoom);x.useEffect(()=>{o.current=n?e:void 0},[e,n]);const s=x.useCallback(()=>{var b;if(!n)return;const u=v6(r),d=i.current,f=$t.isEqual(u.nodes,d.nodes),p=$t.isEqual(u.edges,d.edges),g=$t.isEqual(u.viewport,d.viewport);f&&p&&g||(i.current=u,a.current=u.viewport.zoom,(b=o.current)==null||b.call(o,u))},[r,n]),l=x.useMemo(()=>$t.debounce(s,t),[s,t]);x.useEffect(()=>{const u=r.subscribe(()=>l());return()=>{l.cancel(),u()}},[r,l]),cse({onChange:({zoom:u})=>{n&&u!==a.current&&(a.current=u,l())}});const c=x.useCallback(()=>{const u=v6(r);i.current=u,a.current=u.viewport.zoom},[r]);return{commit:l,resetCommitState:c}}const wG=e=>{let t;const n=new Set,r=(c,u)=>{const d=typeof c=="function"?c(t):c;if(!Object.is(d,t)){const f=t;t=u??(typeof d!="object"||d===null)?d:Object.assign({},t,d),n.forEach(p=>p(t,f))}},o=()=>t,s={setState:r,getState:o,getInitialState:()=>l,subscribe:c=>(n.add(c),()=>n.delete(c))},l=t=e(r,o,s);return s},MHe=e=>e?wG(e):wG,THe=e=>e;function PHe(e,t=THe){const n=x.useSyncExternalStore(e.subscribe,x.useCallback(()=>t(e.getState()),[e,t]),x.useCallback(()=>t(e.getInitialState()),[e,t]));return x.useDebugValue(n),n}const SG=e=>{const t=MHe(e),n=r=>PHe(t,r);return Object.assign(n,t),n},EG=e=>e?SG(e):SG,xG=EG(e=>({mode:"trackpad",toggleMode:()=>e(t=>({mode:t.mode==="trackpad"?"mouse":"trackpad"}))}));function IG(){const e=xG(o=>o.mode),t=xG(o=>o.toggleMode),{mode:n}=Zn(),r=x.useMemo(()=>({...e==="trackpad"?{panOnScroll:!0,panOnDrag:!1,zoomOnScroll:!1,zoomOnPinch:!0,zoomOnDoubleClick:!1}:{panOnScroll:!1,panOnDrag:!0,zoomOnScroll:!0,zoomOnPinch:!1,zoomOnDoubleClick:!1},...n==="view"||n==="history"?{nodesDraggable:!1,nodesConnectable:!1,elementsSelectable:n==="history"}:{nodesDraggable:!0,nodesConnectable:!0,elementsSelectable:!0}}),[e,n]);return{mode:e,toggleMode:t,flowProps:r}}const NG={history:[],currentStep:-1,canUndo:!1,canRedo:!1},b6=e=>{try{const t=e.nodes.map(o=>({id:o.id,position:o.position})),n=e.edges.map(o=>({id:o.id,source:o.source,target:o.target})),r=e.viewport;return JSON.stringify({nodes:t,edges:n,viewport:r})}catch{return JSON.stringify(e)}},Dm=EG((e,t)=>({instances:{},pushSnapshot:(n,r)=>e(o=>{const i=o.instances[n]??NG,a=b6(r),s=i.history[i.currentStep];if(s&&b6(s)===a)return o;const l=i.history.slice(0,i.currentStep+1).concat(r),c=l.length-1;return{instances:{...o.instances,[n]:{history:l,currentStep:c,canUndo:c>0,canRedo:c<l.length-1}}}}),applySnapshot:(n,r)=>{const o=t().instances[n];return!o||r<0||r>=o.history.length?null:(e(i=>({instances:{...i.instances,[n]:{...o,currentStep:r,canUndo:r>0,canRedo:r<o.history.length-1}}})),o.history[r])},reset:(n,r)=>e(o=>({instances:{...o.instances,[n]:{history:r?[r]:[],currentStep:r?0:-1,canUndo:!1,canRedo:!1}}})),remove:n=>e(r=>{const{[n]:o,...i}=r.instances;return{instances:i}})}));function OG(e){const t=Dm(a=>a.instances[e]??NG),n=Dm(a=>a.pushSnapshot),r=Dm(a=>a.applySnapshot),o=Dm(a=>a.reset),i=Dm(a=>a.remove);return{history:t.history,currentStep:t.currentStep,canUndo:t.canUndo,canRedo:t.canRedo,pushSnapshot:a=>n(e,a),undo:()=>r(e,t.currentStep-1),redo:()=>r(e,t.currentStep+1),goTo:a=>r(e,a),reset:a=>o(e,a),dispose:()=>i(e)}}const kHe=e=>{const{canUndo:t,canRedo:n,undo:r,redo:o}=OG(e),{setNodes:i,setEdges:a,setViewport:s}=Pn(),l=x.useCallback(d=>{d&&(i==null||i(d.nodes??[]),a==null||a(d.edges??[]),d.viewport&&(s==null||s(d.viewport)))},[i,a,s]),c=x.useCallback(()=>{if(!t)return;const d=r();l(d)},[t,r,l]),u=x.useCallback(()=>{if(!n)return;const d=o();l(d)},[n,o,l]);return{canUndo:t,canRedo:n,undo:c,redo:u}},_He=(e,t)=>{const{getNodes:n,getEdges:r,getViewport:o}=Pn(),{pushSnapshot:i}=OG(e),a=x.useRef(null),s=x.useRef(null),l=x.useRef(!1),c=t==null?void 0:t.snapshotDebounceMs,u=x.useCallback(()=>{const f={nodes:n()??[],edges:r()??[],viewport:o?o():null},p=b6(f);s.current!==p&&(s.current=p,i(f))},[n,r,o,i,e]),d=x.useCallback(()=>{a.current&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>{u(),a.current=null},c)},[c,u]);return x.useEffect(()=>{l.current||(l.current=!0,u())},[]),x.useEffect(()=>()=>{a.current&&window.clearTimeout(a.current)},[]),{takeSnapshotNow:u,takeSnapshotDebounced:d}};function DHe(e){return ur({attr:{t:"1569683610100",viewBox:"0 0 1024 1024",version:"1.1"},child:[{tag:"path",attr:{d:"M841 370c3-3.3 2.7-8.3-0.6-11.3-1.5-1.3-3.4-2.1-5.3-2.1h-72.6c-2.4 0-4.6 1-6.1 2.8L633.5 504.6c-2.9 3.4-7.9 3.8-11.3 0.9-0.9-0.8-1.6-1.7-2.1-2.8l-63.5-141.3c-1.3-2.9-4.1-4.7-7.3-4.7H380.7l0.9-4.7 8-42.3c10.5-55.4 38-81.4 85.8-81.4 18.6 0 35.5 1.7 48.8 4.7l14.1-66.8c-22.6-4.7-35.2-6.1-54.9-6.1-103.3 0-156.4 44.3-175.9 147.3l-9.4 49.4h-97.6c-3.8 0-7.1 2.7-7.8 6.4L181.9 415c-0.9 4.3 1.9 8.6 6.2 9.5 0.5 0.1 1.1 0.2 1.6 0.2H284l-89 429.9c-0.9 4.3 1.9 8.6 6.2 9.5 0.5 0.1 1.1 0.2 1.6 0.2H269c3.8 0 7.1-2.7 7.8-6.4l89.7-433.1h135.8l68.2 139.1c1.4 2.9 1 6.4-1.2 8.8l-180.6 203c-2.9 3.3-2.6 8.4 0.7 11.3 1.5 1.3 3.4 2 5.3 2h72.7c2.4 0 4.6-1 6.1-2.8l123.7-146.7c2.8-3.4 7.9-3.8 11.3-1 0.9 0.8 1.6 1.7 2.1 2.8L676.4 784c1.3 2.8 4.1 4.7 7.3 4.7h64.6c4.4 0 8-3.6 8-8 0-1.2-0.3-2.4-0.8-3.5l-95.2-198.9c-1.4-2.9-0.9-6.4 1.3-8.8L841 370z"},child:[]}]})(e)}function BHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M696 480H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"},child:[]},{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]}]})(e)}function LHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M952 792H72c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h880c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0-632H72c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h880c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM848 660c8.8 0 16-7.2 16-16V380c0-8.8-7.2-16-16-16H176c-8.8 0-16 7.2-16 16v264c0 8.8 7.2 16 16 16h672zM232 436h560v152H232V436z"},child:[]}]})(e)}function FHe(e){return ur({attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M696 480H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"},child:[]},{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"},child:[]}]})(e)}function jHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M9 18h3v-2H9c-1.654 0-3-1.346-3-3s1.346-3 3-3h6v3l5-4-5-4v3H9c-2.757 0-5 2.243-5 5s2.243 5 5 5z"},child:[]}]})(e)}function zHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M9 10h6c1.654 0 3 1.346 3 3s-1.346 3-3 3h-3v2h3c2.757 0 5-2.243 5-5s-2.243-5-5-5H9V5L4 9l5 4v-3z"},child:[]}]})(e)}function VHe(e){return ur({attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{d:"M20 3H4c-1.103 0-2 .897-2 2v14c0 1.103.897 2 2 2h16c1.103 0 2-.897 2-2V5c0-1.103-.897-2-2-2zm0 2 .001 4H4V5h16zM4 19v-8h16.001l.001 8H4z"},child:[]},{tag:"path",attr:{d:"M14 6h2v2h-2zm3 0h2v2h-2z"},child:[]}]})(e)}function HHe(e){return ur({attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M256 76c48.1 0 93.3 18.7 127.3 52.7S436 207.9 436 256s-18.7 93.3-52.7 127.3S304.1 436 256 436c-48.1 0-93.3-18.7-127.3-52.7S76 304.1 76 256s18.7-93.3 52.7-127.3S207.9 76 256 76m0-28C141.1 48 48 141.1 48 256s93.1 208 208 208 208-93.1 208-208S370.9 48 256 48z"},child:[]},{tag:"path",attr:{d:"M256.7 160c37.5 0 63.3 20.8 63.3 50.7 0 19.8-9.6 33.5-28.1 44.4-17.4 10.1-23.3 17.5-23.3 30.3v7.9h-34.7l-.3-8.6c-1.7-20.6 5.5-33.4 23.6-44 16.9-10.1 24-16.5 24-28.9s-12-21.5-26.9-21.5c-15.1 0-26 9.8-26.8 24.6H192c.7-32.2 24.5-54.9 64.7-54.9zm-26.3 171.4c0-11.5 9.6-20.6 21.4-20.6 11.9 0 21.5 9 21.5 20.6s-9.6 20.6-21.5 20.6-21.4-9-21.4-20.6z"},child:[]}]})(e)}var y6,$G;function C6(){if($G)return y6;$G=1;var e="\0",t="\0",n="";class r{constructor(u){po(this,"_isDirected",!0);po(this,"_isMultigraph",!1);po(this,"_isCompound",!1);po(this,"_label");po(this,"_defaultNodeLabelFn",()=>{});po(this,"_defaultEdgeLabelFn",()=>{});po(this,"_nodes",{});po(this,"_in",{});po(this,"_preds",{});po(this,"_out",{});po(this,"_sucs",{});po(this,"_edgeObjs",{});po(this,"_edgeLabels",{});po(this,"_nodeCount",0);po(this,"_edgeCount",0);po(this,"_parent");po(this,"_children");u&&(this._isDirected=Object.hasOwn(u,"directed")?u.directed:!0,this._isMultigraph=Object.hasOwn(u,"multigraph")?u.multigraph:!1,this._isCompound=Object.hasOwn(u,"compound")?u.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[t]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(u){return this._label=u,this}graph(){return this._label}setDefaultNodeLabel(u){return this._defaultNodeLabelFn=u,typeof u!="function"&&(this._defaultNodeLabelFn=()=>u),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var u=this;return this.nodes().filter(d=>Object.keys(u._in[d]).length===0)}sinks(){var u=this;return this.nodes().filter(d=>Object.keys(u._out[d]).length===0)}setNodes(u,d){var f=arguments,p=this;return u.forEach(function(g){f.length>1?p.setNode(g,d):p.setNode(g)}),this}setNode(u,d){return Object.hasOwn(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=d),this):(this._nodes[u]=arguments.length>1?d:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=t,this._children[u]={},this._children[t][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)}node(u){return this._nodes[u]}hasNode(u){return Object.hasOwn(this._nodes,u)}removeNode(u){var d=this;if(Object.hasOwn(this._nodes,u)){var f=p=>d.removeEdge(d._edgeObjs[p]);delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],this.children(u).forEach(function(p){d.setParent(p)}),delete this._children[u]),Object.keys(this._in[u]).forEach(f),delete this._in[u],delete this._preds[u],Object.keys(this._out[u]).forEach(f),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this}setParent(u,d){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(d===void 0)d=t;else{d+="";for(var f=d;f!==void 0;f=this.parent(f))if(f===u)throw new Error("Setting "+d+" as parent of "+u+" would create a cycle");this.setNode(d)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=d,this._children[d][u]=!0,this}_removeFromParentsChildList(u){delete this._children[this._parent[u]][u]}parent(u){if(this._isCompound){var d=this._parent[u];if(d!==t)return d}}children(u=t){if(this._isCompound){var d=this._children[u];if(d)return Object.keys(d)}else{if(u===t)return this.nodes();if(this.hasNode(u))return[]}}predecessors(u){var d=this._preds[u];if(d)return Object.keys(d)}successors(u){var d=this._sucs[u];if(d)return Object.keys(d)}neighbors(u){var d=this.predecessors(u);if(d){const p=new Set(d);for(var f of this.successors(u))p.add(f);return Array.from(p.values())}}isLeaf(u){var d;return this.isDirected()?d=this.successors(u):d=this.neighbors(u),d.length===0}filterNodes(u){var d=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});d.setGraph(this.graph());var f=this;Object.entries(this._nodes).forEach(function([b,m]){u(b)&&d.setNode(b,m)}),Object.values(this._edgeObjs).forEach(function(b){d.hasNode(b.v)&&d.hasNode(b.w)&&d.setEdge(b,f.edge(b))});var p={};function g(b){var m=f.parent(b);return m===void 0||d.hasNode(m)?(p[b]=m,m):m in p?p[m]:g(m)}return this._isCompound&&d.nodes().forEach(b=>d.setParent(b,g(b))),d}setDefaultEdgeLabel(u){return this._defaultEdgeLabelFn=u,typeof u!="function"&&(this._defaultEdgeLabelFn=()=>u),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(u,d){var f=this,p=arguments;return u.reduce(function(g,b){return p.length>1?f.setEdge(g,b,d):f.setEdge(g,b),b}),this}setEdge(){var u,d,f,p,g=!1,b=arguments[0];typeof b=="object"&&b!==null&&"v"in b?(u=b.v,d=b.w,f=b.name,arguments.length===2&&(p=arguments[1],g=!0)):(u=b,d=arguments[1],f=arguments[3],arguments.length>2&&(p=arguments[2],g=!0)),u=""+u,d=""+d,f!==void 0&&(f=""+f);var m=a(this._isDirected,u,d,f);if(Object.hasOwn(this._edgeLabels,m))return g&&(this._edgeLabels[m]=p),this;if(f!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(d),this._edgeLabels[m]=g?p:this._defaultEdgeLabelFn(u,d,f);var C=s(this._isDirected,u,d,f);return u=C.v,d=C.w,Object.freeze(C),this._edgeObjs[m]=C,o(this._preds[d],u),o(this._sucs[u],d),this._in[d][m]=C,this._out[u][m]=C,this._edgeCount++,this}edge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f);return this._edgeLabels[p]}edgeAsObj(){const u=this.edge(...arguments);return typeof u!="object"?{label:u}:u}hasEdge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f);return Object.hasOwn(this._edgeLabels,p)}removeEdge(u,d,f){var p=arguments.length===1?l(this._isDirected,arguments[0]):a(this._isDirected,u,d,f),g=this._edgeObjs[p];return g&&(u=g.v,d=g.w,delete this._edgeLabels[p],delete this._edgeObjs[p],i(this._preds[d],u),i(this._sucs[u],d),delete this._in[d][p],delete this._out[u][p],this._edgeCount--),this}inEdges(u,d){var f=this._in[u];if(f){var p=Object.values(f);return d?p.filter(g=>g.v===d):p}}outEdges(u,d){var f=this._out[u];if(f){var p=Object.values(f);return d?p.filter(g=>g.w===d):p}}nodeEdges(u,d){var f=this.inEdges(u,d);if(f)return f.concat(this.outEdges(u,d))}}function o(c,u){c[u]?c[u]++:c[u]=1}function i(c,u){--c[u]||delete c[u]}function a(c,u,d,f){var p=""+u,g=""+d;if(!c&&p>g){var b=p;p=g,g=b}return p+n+g+n+(f===void 0?e:f)}function s(c,u,d,f){var p=""+u,g=""+d;if(!c&&p>g){var b=p;p=g,g=b}var m={v:p,w:g};return f&&(m.name=f),m}function l(c,u){return a(c,u.v,u.w,u.name)}return y6=r,y6}var A6,MG;function RHe(){return MG||(MG=1,A6="2.2.4"),A6}var w6,TG;function WHe(){return TG||(TG=1,w6={Graph:C6(),version:RHe()}),w6}var S6,PG;function QHe(){if(PG)return S6;PG=1;var e=C6();S6={write:t,read:o};function t(i){var a={options:{directed:i.isDirected(),multigraph:i.isMultigraph(),compound:i.isCompound()},nodes:n(i),edges:r(i)};return i.graph()!==void 0&&(a.value=structuredClone(i.graph())),a}function n(i){return i.nodes().map(function(a){var s=i.node(a),l=i.parent(a),c={v:a};return s!==void 0&&(c.value=s),l!==void 0&&(c.parent=l),c})}function r(i){return i.edges().map(function(a){var s=i.edge(a),l={v:a.v,w:a.w};return a.name!==void 0&&(l.name=a.name),s!==void 0&&(l.value=s),l})}function o(i){var a=new e(i.options).setGraph(i.value);return i.nodes.forEach(function(s){a.setNode(s.v,s.value),s.parent&&a.setParent(s.v,s.parent)}),i.edges.forEach(function(s){a.setEdge({v:s.v,w:s.w,name:s.name},s.value)}),a}return S6}var E6,kG;function KHe(){if(kG)return E6;kG=1,E6=e;function e(t){var n={},r=[],o;function i(a){Object.hasOwn(n,a)||(n[a]=!0,o.push(a),t.successors(a).forEach(i),t.predecessors(a).forEach(i))}return t.nodes().forEach(function(a){o=[],i(a),o.length&&r.push(o)}),r}return E6}var x6,_G;function DG(){if(_G)return x6;_G=1;class e{constructor(){po(this,"_arr",[]);po(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var r=this._keyIndices[n];if(r!==void 0)return this._arr[r].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,r){var o=this._keyIndices;if(n=String(n),!Object.hasOwn(o,n)){var i=this._arr,a=i.length;return o[n]=a,i.push({key:n,priority:r}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,r){var o=this._keyIndices[n];if(r>this._arr[o].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[o].priority+" New: "+r);this._arr[o].priority=r,this._decrease(o)}_heapify(n){var r=this._arr,o=2*n,i=o+1,a=n;o<r.length&&(a=r[o].priority<r[a].priority?o:a,i<r.length&&(a=r[i].priority<r[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var r=this._arr,o=r[n].priority,i;n!==0&&(i=n>>1,!(r[i].priority<o));)this._swap(n,i),n=i}_swap(n,r){var o=this._arr,i=this._keyIndices,a=o[n],s=o[r];o[n]=s,o[r]=a,i[s.key]=n,i[a.key]=r}}return x6=e,x6}var I6,BG;function LG(){if(BG)return I6;BG=1;var e=DG();I6=n;var t=()=>1;function n(o,i,a,s){return r(o,String(i),a||t,s||function(l){return o.outEdges(l)})}function r(o,i,a,s){var l={},c=new e,u,d,f=function(p){var g=p.v!==u?p.v:p.w,b=l[g],m=a(p),C=d.distance+m;if(m<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+p+" Weight: "+m);C<b.distance&&(b.distance=C,b.predecessor=u,c.decrease(g,C))};for(o.nodes().forEach(function(p){var g=p===i?0:Number.POSITIVE_INFINITY;l[p]={distance:g},c.add(p,g)});c.size()>0&&(u=c.removeMin(),d=l[u],d.distance!==Number.POSITIVE_INFINITY);)s(u).forEach(f);return l}return I6}var N6,FG;function qHe(){if(FG)return N6;FG=1;var e=LG();N6=t;function t(n,r,o){return n.nodes().reduce(function(i,a){return i[a]=e(n,a,r,o),i},{})}return N6}var O6,jG;function zG(){if(jG)return O6;jG=1,O6=e;function e(t){var n=0,r=[],o={},i=[];function a(s){var l=o[s]={onStack:!0,lowlink:n,index:n++};if(r.push(s),t.successors(s).forEach(function(d){Object.hasOwn(o,d)?o[d].onStack&&(l.lowlink=Math.min(l.lowlink,o[d].index)):(a(d),l.lowlink=Math.min(l.lowlink,o[d].lowlink))}),l.lowlink===l.index){var c=[],u;do u=r.pop(),o[u].onStack=!1,c.push(u);while(s!==u);i.push(c)}}return t.nodes().forEach(function(s){Object.hasOwn(o,s)||a(s)}),i}return O6}var $6,VG;function GHe(){if(VG)return $6;VG=1;var e=zG();$6=t;function t(n){return e(n).filter(function(r){return r.length>1||r.length===1&&n.hasEdge(r[0],r[0])})}return $6}var M6,HG;function UHe(){if(HG)return M6;HG=1,M6=t;var e=()=>1;function t(r,o,i){return n(r,o||e,i||function(a){return r.outEdges(a)})}function n(r,o,i){var a={},s=r.nodes();return s.forEach(function(l){a[l]={},a[l][l]={distance:0},s.forEach(function(c){l!==c&&(a[l][c]={distance:Number.POSITIVE_INFINITY})}),i(l).forEach(function(c){var u=c.v===l?c.w:c.v,d=o(c);a[l][u]={distance:d,predecessor:l}})}),s.forEach(function(l){var c=a[l];s.forEach(function(u){var d=a[u];s.forEach(function(f){var p=d[l],g=c[f],b=d[f],m=p.distance+g.distance;m<b.distance&&(b.distance=m,b.predecessor=g.predecessor)})})}),a}return M6}var T6,RG;function WG(){if(RG)return T6;RG=1;function e(n){var r={},o={},i=[];function a(s){if(Object.hasOwn(o,s))throw new t;Object.hasOwn(r,s)||(o[s]=!0,r[s]=!0,n.predecessors(s).forEach(a),delete o[s],i.push(s))}if(n.sinks().forEach(a),Object.keys(r).length!==n.nodeCount())throw new t;return i}class t extends Error{constructor(){super(...arguments)}}return T6=e,e.CycleException=t,T6}var P6,QG;function YHe(){if(QG)return P6;QG=1;var e=WG();P6=t;function t(n){try{e(n)}catch(r){if(r instanceof e.CycleException)return!1;throw r}return!0}return P6}var k6,KG;function qG(){if(KG)return k6;KG=1,k6=e;function e(o,i,a){Array.isArray(i)||(i=[i]);var s=o.isDirected()?d=>o.successors(d):d=>o.neighbors(d),l=a==="post"?t:n,c=[],u={};return i.forEach(d=>{if(!o.hasNode(d))throw new Error("Graph does not have node: "+d);l(d,s,u,c)}),c}function t(o,i,a,s){for(var l=[[o,!1]];l.length>0;){var c=l.pop();c[1]?s.push(c[0]):Object.hasOwn(a,c[0])||(a[c[0]]=!0,l.push([c[0],!0]),r(i(c[0]),u=>l.push([u,!1])))}}function n(o,i,a,s){for(var l=[o];l.length>0;){var c=l.pop();Object.hasOwn(a,c)||(a[c]=!0,s.push(c),r(i(c),u=>l.push(u)))}}function r(o,i){for(var a=o.length;a--;)i(o[a],a,o);return o}return k6}var _6,GG;function XHe(){if(GG)return _6;GG=1;var e=qG();_6=t;function t(n,r){return e(n,r,"post")}return _6}var D6,UG;function ZHe(){if(UG)return D6;UG=1;var e=qG();D6=t;function t(n,r){return e(n,r,"pre")}return D6}var B6,YG;function JHe(){if(YG)return B6;YG=1;var e=C6(),t=DG();B6=n;function n(r,o){var i=new e,a={},s=new t,l;function c(d){var f=d.v===l?d.w:d.v,p=s.priority(f);if(p!==void 0){var g=o(d);g<p&&(a[f]=l,s.decrease(f,g))}}if(r.nodeCount()===0)return i;r.nodes().forEach(function(d){s.add(d,Number.POSITIVE_INFINITY),i.setNode(d)}),s.decrease(r.nodes()[0],0);for(var u=!1;s.size()>0;){if(l=s.removeMin(),Object.hasOwn(a,l))i.setEdge(l,a[l]);else{if(u)throw new Error("Input graph is not connected: "+r);u=!0}r.nodeEdges(l).forEach(c)}return i}return B6}var L6,XG;function eRe(){return XG||(XG=1,L6={components:KHe(),dijkstra:LG(),dijkstraAll:qHe(),findCycles:GHe(),floydWarshall:UHe(),isAcyclic:YHe(),postorder:XHe(),preorder:ZHe(),prim:JHe(),tarjan:zG(),topsort:WG()}),L6}var F6,ZG;function ps(){if(ZG)return F6;ZG=1;var e=WHe();return F6={Graph:e.Graph,json:QHe(),alg:eRe(),version:e.version},F6}var j6,JG;function tRe(){if(JG)return j6;JG=1;class e{constructor(){let o={};o._next=o._prev=o,this._sentinel=o}dequeue(){let o=this._sentinel,i=o._prev;if(i!==o)return t(i),i}enqueue(o){let i=this._sentinel;o._prev&&o._next&&t(o),o._next=i._next,i._next._prev=o,i._next=o,o._prev=i}toString(){let o=[],i=this._sentinel,a=i._prev;for(;a!==i;)o.push(JSON.stringify(a,n)),a=a._prev;return"["+o.join(", ")+"]"}}function t(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function n(r,o){if(r!=="_next"&&r!=="_prev")return o}return j6=e,j6}var z6,eU;function nRe(){if(eU)return z6;eU=1;let e=ps().Graph,t=tRe();z6=r;let n=()=>1;function r(c,u){if(c.nodeCount()<=1)return[];let d=a(c,u||n);return o(d.graph,d.buckets,d.zeroIdx).flatMap(p=>c.outEdges(p.v,p.w))}function o(c,u,d){let f=[],p=u[u.length-1],g=u[0],b;for(;c.nodeCount();){for(;b=g.dequeue();)i(c,u,d,b);for(;b=p.dequeue();)i(c,u,d,b);if(c.nodeCount()){for(let m=u.length-2;m>0;--m)if(b=u[m].dequeue(),b){f=f.concat(i(c,u,d,b,!0));break}}}return f}function i(c,u,d,f,p){let g=p?[]:void 0;return c.inEdges(f.v).forEach(b=>{let m=c.edge(b),C=c.node(b.v);p&&g.push({v:b.v,w:b.w}),C.out-=m,s(u,d,C)}),c.outEdges(f.v).forEach(b=>{let m=c.edge(b),C=b.w,w=c.node(C);w.in-=m,s(u,d,w)}),c.removeNode(f.v),g}function a(c,u){let d=new e,f=0,p=0;c.nodes().forEach(m=>{d.setNode(m,{v:m,in:0,out:0})}),c.edges().forEach(m=>{let C=d.edge(m.v,m.w)||0,w=u(m),S=C+w;d.setEdge(m.v,m.w,S),p=Math.max(p,d.node(m.v).out+=w),f=Math.max(f,d.node(m.w).in+=w)});let g=l(p+f+3).map(()=>new t),b=f+1;return d.nodes().forEach(m=>{s(g,b,d.node(m))}),{graph:d,buckets:g,zeroIdx:b}}function s(c,u,d){d.out?d.in?c[d.out-d.in+u].enqueue(d):c[c.length-1].enqueue(d):c[0].enqueue(d)}function l(c){const u=[];for(let d=0;d<c;d++)u.push(d);return u}return z6}var V6,tU;function Eo(){if(tU)return V6;tU=1;let e=ps().Graph;V6={addBorderNode:u,addDummyNode:t,applyWithChunking:p,asNonCompoundGraph:r,buildLayerMatrix:s,intersectRect:a,mapValues:N,maxRank:g,normalizeRanks:l,notime:C,partition:b,pick:E,predecessorWeights:i,range:y,removeEmptyRanks:c,simplify:n,successorWeights:o,time:m,uniqueId:S,zipObject:M};function t($,O,T,P){for(var B=P;$.hasNode(B);)B=S(P);return T.dummy=O,$.setNode(B,T),B}function n($){let O=new e().setGraph($.graph());return $.nodes().forEach(T=>O.setNode(T,$.node(T))),$.edges().forEach(T=>{let P=O.edge(T.v,T.w)||{weight:0,minlen:1},B=$.edge(T);O.setEdge(T.v,T.w,{weight:P.weight+B.weight,minlen:Math.max(P.minlen,B.minlen)})}),O}function r($){let O=new e({multigraph:$.isMultigraph()}).setGraph($.graph());return $.nodes().forEach(T=>{$.children(T).length||O.setNode(T,$.node(T))}),$.edges().forEach(T=>{O.setEdge(T,$.edge(T))}),O}function o($){let O=$.nodes().map(T=>{let P={};return $.outEdges(T).forEach(B=>{P[B.w]=(P[B.w]||0)+$.edge(B).weight}),P});return M($.nodes(),O)}function i($){let O=$.nodes().map(T=>{let P={};return $.inEdges(T).forEach(B=>{P[B.v]=(P[B.v]||0)+$.edge(B).weight}),P});return M($.nodes(),O)}function a($,O){let T=$.x,P=$.y,B=O.x-T,_=O.y-P,k=$.width/2,L=$.height/2;if(!B&&!_)throw new Error("Not possible to find intersection inside of the rectangle");let D,j;return Math.abs(_)*k>Math.abs(B)*L?(_<0&&(L=-L),D=L*B/_,j=L):(B<0&&(k=-k),D=k,j=k*_/B),{x:T+D,y:P+j}}function s($){let O=y(g($)+1).map(()=>[]);return $.nodes().forEach(T=>{let P=$.node(T),B=P.rank;B!==void 0&&(O[B][P.order]=T)}),O}function l($){let O=$.nodes().map(P=>{let B=$.node(P).rank;return B===void 0?Number.MAX_VALUE:B}),T=p(Math.min,O);$.nodes().forEach(P=>{let B=$.node(P);Object.hasOwn(B,"rank")&&(B.rank-=T)})}function c($){let O=$.nodes().map(k=>$.node(k).rank),T=p(Math.min,O),P=[];$.nodes().forEach(k=>{let L=$.node(k).rank-T;P[L]||(P[L]=[]),P[L].push(k)});let B=0,_=$.graph().nodeRankFactor;Array.from(P).forEach((k,L)=>{k===void 0&&L%_!==0?--B:k!==void 0&&B&&k.forEach(D=>$.node(D).rank+=B)})}function u($,O,T,P){let B={width:0,height:0};return arguments.length>=4&&(B.rank=T,B.order=P),t($,"border",B,O)}function d($,O=f){const T=[];for(let P=0;P<$.length;P+=O){const B=$.slice(P,P+O);T.push(B)}return T}const f=65535;function p($,O){if(O.length>f){const T=d(O);return $.apply(null,T.map(P=>$.apply(null,P)))}else return $.apply(null,O)}function g($){const T=$.nodes().map(P=>{let B=$.node(P).rank;return B===void 0?Number.MIN_VALUE:B});return p(Math.max,T)}function b($,O){let T={lhs:[],rhs:[]};return $.forEach(P=>{O(P)?T.lhs.push(P):T.rhs.push(P)}),T}function m($,O){let T=Date.now();try{return O()}finally{console.log($+" time: "+(Date.now()-T)+"ms")}}function C($,O){return O()}let w=0;function S($){var O=++w;return $+(""+O)}function y($,O,T=1){O==null&&(O=$,$=0);let P=_=>_<O;T<0&&(P=_=>O<_);const B=[];for(let _=$;P(_);_+=T)B.push(_);return B}function E($,O){const T={};for(const P of O)$[P]!==void 0&&(T[P]=$[P]);return T}function N($,O){let T=O;return typeof O=="string"&&(T=P=>P[O]),Object.entries($).reduce((P,[B,_])=>(P[B]=T(_,B),P),{})}function M($,O){return $.reduce((T,P,B)=>(T[P]=O[B],T),{})}return V6}var H6,nU;function rRe(){if(nU)return H6;nU=1;let e=nRe(),t=Eo().uniqueId;H6={run:n,undo:o};function n(i){(i.graph().acyclicer==="greedy"?e(i,s(i)):r(i)).forEach(l=>{let c=i.edge(l);i.removeEdge(l),c.forwardName=l.name,c.reversed=!0,i.setEdge(l.w,l.v,c,t("rev"))});function s(l){return c=>l.edge(c).weight}}function r(i){let a=[],s={},l={};function c(u){Object.hasOwn(l,u)||(l[u]=!0,s[u]=!0,i.outEdges(u).forEach(d=>{Object.hasOwn(s,d.w)?a.push(d):c(d.w)}),delete s[u])}return i.nodes().forEach(c),a}function o(i){i.edges().forEach(a=>{let s=i.edge(a);if(s.reversed){i.removeEdge(a);let l=s.forwardName;delete s.reversed,delete s.forwardName,i.setEdge(a.w,a.v,s,l)}})}return H6}var R6,rU;function oRe(){if(rU)return R6;rU=1;let e=Eo();R6={run:t,undo:r};function t(o){o.graph().dummyChains=[],o.edges().forEach(i=>n(o,i))}function n(o,i){let a=i.v,s=o.node(a).rank,l=i.w,c=o.node(l).rank,u=i.name,d=o.edge(i),f=d.labelRank;if(c===s+1)return;o.removeEdge(i);let p,g,b;for(b=0,++s;s<c;++b,++s)d.points=[],g={width:0,height:0,edgeLabel:d,edgeObj:i,rank:s},p=e.addDummyNode(o,"edge",g,"_d"),s===f&&(g.width=d.width,g.height=d.height,g.dummy="edge-label",g.labelpos=d.labelpos),o.setEdge(a,p,{weight:d.weight},u),b===0&&o.graph().dummyChains.push(p),a=p;o.setEdge(a,l,{weight:d.weight},u)}function r(o){o.graph().dummyChains.forEach(i=>{let a=o.node(i),s=a.edgeLabel,l;for(o.setEdge(a.edgeObj,s);a.dummy;)l=o.successors(i)[0],o.removeNode(i),s.points.push({x:a.x,y:a.y}),a.dummy==="edge-label"&&(s.x=a.x,s.y=a.y,s.width=a.width,s.height=a.height),i=l,a=o.node(i)})}return R6}var W6,oU;function bC(){if(oU)return W6;oU=1;const{applyWithChunking:e}=Eo();W6={longestPath:t,slack:n};function t(r){var o={};function i(a){var s=r.node(a);if(Object.hasOwn(o,a))return s.rank;o[a]=!0;let l=r.outEdges(a).map(u=>u==null?Number.POSITIVE_INFINITY:i(u.w)-r.edge(u).minlen);var c=e(Math.min,l);return c===Number.POSITIVE_INFINITY&&(c=0),s.rank=c}r.sources().forEach(i)}function n(r,o){return r.node(o.w).rank-r.node(o.v).rank-r.edge(o).minlen}return W6}var Q6,iU;function aU(){if(iU)return Q6;iU=1;var e=ps().Graph,t=bC().slack;Q6=n;function n(a){var s=new e({directed:!1}),l=a.nodes()[0],c=a.nodeCount();s.setNode(l,{});for(var u,d;r(s,a)<c;)u=o(s,a),d=s.hasNode(u.v)?t(a,u):-t(a,u),i(s,a,d);return s}function r(a,s){function l(c){s.nodeEdges(c).forEach(u=>{var d=u.v,f=c===d?u.w:d;!a.hasNode(f)&&!t(s,u)&&(a.setNode(f,{}),a.setEdge(c,f,{}),l(f))})}return a.nodes().forEach(l),a.nodeCount()}function o(a,s){return s.edges().reduce((c,u)=>{let d=Number.POSITIVE_INFINITY;return a.hasNode(u.v)!==a.hasNode(u.w)&&(d=t(s,u)),d<c[0]?[d,u]:c},[Number.POSITIVE_INFINITY,null])[1]}function i(a,s,l){a.nodes().forEach(c=>s.node(c).rank+=l)}return Q6}var K6,sU;function iRe(){if(sU)return K6;sU=1;var e=aU(),t=bC().slack,n=bC().longestPath,r=ps().alg.preorder,o=ps().alg.postorder,i=Eo().simplify;K6=a,a.initLowLimValues=u,a.initCutValues=s,a.calcCutValue=c,a.leaveEdge=f,a.enterEdge=p,a.exchangeEdges=g;function a(w){w=i(w),n(w);var S=e(w);u(S),s(S,w);for(var y,E;y=f(S);)E=p(S,w,y),g(S,w,y,E)}function s(w,S){var y=o(w,w.nodes());y=y.slice(0,y.length-1),y.forEach(E=>l(w,S,E))}function l(w,S,y){var E=w.node(y),N=E.parent;w.edge(y,N).cutvalue=c(w,S,y)}function c(w,S,y){var E=w.node(y),N=E.parent,M=!0,$=S.edge(y,N),O=0;return $||(M=!1,$=S.edge(N,y)),O=$.weight,S.nodeEdges(y).forEach(T=>{var P=T.v===y,B=P?T.w:T.v;if(B!==N){var _=P===M,k=S.edge(T).weight;if(O+=_?k:-k,m(w,y,B)){var L=w.edge(y,B).cutvalue;O+=_?-L:L}}}),O}function u(w,S){arguments.length<2&&(S=w.nodes()[0]),d(w,{},1,S)}function d(w,S,y,E,N){var M=y,$=w.node(E);return S[E]=!0,w.neighbors(E).forEach(O=>{Object.hasOwn(S,O)||(y=d(w,S,y,O,E))}),$.low=M,$.lim=y++,N?$.parent=N:delete $.parent,y}function f(w){return w.edges().find(S=>w.edge(S).cutvalue<0)}function p(w,S,y){var E=y.v,N=y.w;S.hasEdge(E,N)||(E=y.w,N=y.v);var M=w.node(E),$=w.node(N),O=M,T=!1;M.lim>$.lim&&(O=$,T=!0);var P=S.edges().filter(B=>T===C(w,w.node(B.v),O)&&T!==C(w,w.node(B.w),O));return P.reduce((B,_)=>t(S,_)<t(S,B)?_:B)}function g(w,S,y,E){var N=y.v,M=y.w;w.removeEdge(N,M),w.setEdge(E.v,E.w,{}),u(w),s(w,S),b(w,S)}function b(w,S){var y=w.nodes().find(N=>!S.node(N).parent),E=r(w,y);E=E.slice(1),E.forEach(N=>{var M=w.node(N).parent,$=S.edge(N,M),O=!1;$||($=S.edge(M,N),O=!0),S.node(N).rank=S.node(M).rank+(O?$.minlen:-$.minlen)})}function m(w,S,y){return w.hasEdge(S,y)}function C(w,S,y){return y.low<=S.lim&&S.lim<=y.lim}return K6}var q6,lU;function aRe(){if(lU)return q6;lU=1;var e=bC(),t=e.longestPath,n=aU(),r=iRe();q6=o;function o(l){var c=l.graph().ranker;if(c instanceof Function)return c(l);switch(l.graph().ranker){case"network-simplex":s(l);break;case"tight-tree":a(l);break;case"longest-path":i(l);break;case"none":break;default:s(l)}}var i=t;function a(l){t(l),n(l)}function s(l){r(l)}return q6}var G6,cU;function sRe(){if(cU)return G6;cU=1,G6=e;function e(r){let o=n(r);r.graph().dummyChains.forEach(i=>{let a=r.node(i),s=a.edgeObj,l=t(r,o,s.v,s.w),c=l.path,u=l.lca,d=0,f=c[d],p=!0;for(;i!==s.w;){if(a=r.node(i),p){for(;(f=c[d])!==u&&r.node(f).maxRank<a.rank;)d++;f===u&&(p=!1)}if(!p){for(;d<c.length-1&&r.node(f=c[d+1]).minRank<=a.rank;)d++;f=c[d]}r.setParent(i,f),i=r.successors(i)[0]}})}function t(r,o,i,a){let s=[],l=[],c=Math.min(o[i].low,o[a].low),u=Math.max(o[i].lim,o[a].lim),d,f;d=i;do d=r.parent(d),s.push(d);while(d&&(o[d].low>c||u>o[d].lim));for(f=d,d=a;(d=r.parent(d))!==f;)l.push(d);return{path:s.concat(l.reverse()),lca:f}}function n(r){let o={},i=0;function a(s){let l=i;r.children(s).forEach(a),o[s]={low:l,lim:i++}}return r.children().forEach(a),o}return G6}var U6,uU;function lRe(){if(uU)return U6;uU=1;let e=Eo();U6={run:t,cleanup:i};function t(a){let s=e.addDummyNode(a,"root",{},"_root"),l=r(a),c=Object.values(l),u=e.applyWithChunking(Math.max,c)-1,d=2*u+1;a.graph().nestingRoot=s,a.edges().forEach(p=>a.edge(p).minlen*=d);let f=o(a)+1;a.children().forEach(p=>n(a,s,d,f,u,l,p)),a.graph().nodeRankFactor=d}function n(a,s,l,c,u,d,f){let p=a.children(f);if(!p.length){f!==s&&a.setEdge(s,f,{weight:0,minlen:l});return}let g=e.addBorderNode(a,"_bt"),b=e.addBorderNode(a,"_bb"),m=a.node(f);a.setParent(g,f),m.borderTop=g,a.setParent(b,f),m.borderBottom=b,p.forEach(C=>{n(a,s,l,c,u,d,C);let w=a.node(C),S=w.borderTop?w.borderTop:C,y=w.borderBottom?w.borderBottom:C,E=w.borderTop?c:2*c,N=S!==y?1:u-d[f]+1;a.setEdge(g,S,{weight:E,minlen:N,nestingEdge:!0}),a.setEdge(y,b,{weight:E,minlen:N,nestingEdge:!0})}),a.parent(f)||a.setEdge(s,g,{weight:0,minlen:u+d[f]})}function r(a){var s={};function l(c,u){var d=a.children(c);d&&d.length&&d.forEach(f=>l(f,u+1)),s[c]=u}return a.children().forEach(c=>l(c,1)),s}function o(a){return a.edges().reduce((s,l)=>s+a.edge(l).weight,0)}function i(a){var s=a.graph();a.removeNode(s.nestingRoot),delete s.nestingRoot,a.edges().forEach(l=>{var c=a.edge(l);c.nestingEdge&&a.removeEdge(l)})}return U6}var Y6,dU;function cRe(){if(dU)return Y6;dU=1;let e=Eo();Y6=t;function t(r){function o(i){let a=r.children(i),s=r.node(i);if(a.length&&a.forEach(o),Object.hasOwn(s,"minRank")){s.borderLeft=[],s.borderRight=[];for(let l=s.minRank,c=s.maxRank+1;l<c;++l)n(r,"borderLeft","_bl",i,s,l),n(r,"borderRight","_br",i,s,l)}}r.children().forEach(o)}function n(r,o,i,a,s,l){let c={width:0,height:0,rank:l,borderType:o},u=s[o][l-1],d=e.addDummyNode(r,"border",c,i);s[o][l]=d,r.setParent(d,a),u&&r.setEdge(u,d,{weight:1})}return Y6}var X6,fU;function uRe(){if(fU)return X6;fU=1,X6={adjust:e,undo:t};function e(l){let c=l.graph().rankdir.toLowerCase();(c==="lr"||c==="rl")&&n(l)}function t(l){let c=l.graph().rankdir.toLowerCase();(c==="bt"||c==="rl")&&o(l),(c==="lr"||c==="rl")&&(a(l),n(l))}function n(l){l.nodes().forEach(c=>r(l.node(c))),l.edges().forEach(c=>r(l.edge(c)))}function r(l){let c=l.width;l.width=l.height,l.height=c}function o(l){l.nodes().forEach(c=>i(l.node(c))),l.edges().forEach(c=>{let u=l.edge(c);u.points.forEach(i),Object.hasOwn(u,"y")&&i(u)})}function i(l){l.y=-l.y}function a(l){l.nodes().forEach(c=>s(l.node(c))),l.edges().forEach(c=>{let u=l.edge(c);u.points.forEach(s),Object.hasOwn(u,"x")&&s(u)})}function s(l){let c=l.x;l.x=l.y,l.y=c}return X6}var Z6,hU;function dRe(){if(hU)return Z6;hU=1;let e=Eo();Z6=t;function t(n){let r={},o=n.nodes().filter(u=>!n.children(u).length),i=o.map(u=>n.node(u).rank),a=e.applyWithChunking(Math.max,i),s=e.range(a+1).map(()=>[]);function l(u){if(r[u])return;r[u]=!0;let d=n.node(u);s[d.rank].push(u),n.successors(u).forEach(l)}return o.sort((u,d)=>n.node(u).rank-n.node(d).rank).forEach(l),s}return Z6}var J6,pU;function fRe(){if(pU)return J6;pU=1;let e=Eo().zipObject;J6=t;function t(r,o){let i=0;for(let a=1;a<o.length;++a)i+=n(r,o[a-1],o[a]);return i}function n(r,o,i){let a=e(i,i.map((f,p)=>p)),s=o.flatMap(f=>r.outEdges(f).map(p=>({pos:a[p.w],weight:r.edge(p).weight})).sort((p,g)=>p.pos-g.pos)),l=1;for(;l<i.length;)l<<=1;let c=2*l-1;l-=1;let u=new Array(c).fill(0),d=0;return s.forEach(f=>{let p=f.pos+l;u[p]+=f.weight;let g=0;for(;p>0;)p%2&&(g+=u[p+1]),p=p-1>>1,u[p]+=f.weight;d+=f.weight*g}),d}return J6}var eI,gU;function hRe(){if(gU)return eI;gU=1,eI=e;function e(t,n=[]){return n.map(r=>{let o=t.inEdges(r);if(o.length){let i=o.reduce((a,s)=>{let l=t.edge(s),c=t.node(s.v);return{sum:a.sum+l.weight*c.order,weight:a.weight+l.weight}},{sum:0,weight:0});return{v:r,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:r}})}return eI}var tI,mU;function pRe(){if(mU)return tI;mU=1;let e=Eo();tI=t;function t(o,i){let a={};o.forEach((l,c)=>{let u=a[l.v]={indegree:0,in:[],out:[],vs:[l.v],i:c};l.barycenter!==void 0&&(u.barycenter=l.barycenter,u.weight=l.weight)}),i.edges().forEach(l=>{let c=a[l.v],u=a[l.w];c!==void 0&&u!==void 0&&(u.indegree++,c.out.push(a[l.w]))});let s=Object.values(a).filter(l=>!l.indegree);return n(s)}function n(o){let i=[];function a(l){return c=>{c.merged||(c.barycenter===void 0||l.barycenter===void 0||c.barycenter>=l.barycenter)&&r(l,c)}}function s(l){return c=>{c.in.push(l),--c.indegree===0&&o.push(c)}}for(;o.length;){let l=o.pop();i.push(l),l.in.reverse().forEach(a(l)),l.out.forEach(s(l))}return i.filter(l=>!l.merged).map(l=>e.pick(l,["vs","i","barycenter","weight"]))}function r(o,i){let a=0,s=0;o.weight&&(a+=o.barycenter*o.weight,s+=o.weight),i.weight&&(a+=i.barycenter*i.weight,s+=i.weight),o.vs=i.vs.concat(o.vs),o.barycenter=a/s,o.weight=s,o.i=Math.min(i.i,o.i),i.merged=!0}return tI}var nI,vU;function gRe(){if(vU)return nI;vU=1;let e=Eo();nI=t;function t(o,i){let a=e.partition(o,g=>Object.hasOwn(g,"barycenter")),s=a.lhs,l=a.rhs.sort((g,b)=>b.i-g.i),c=[],u=0,d=0,f=0;s.sort(r(!!i)),f=n(c,l,f),s.forEach(g=>{f+=g.vs.length,c.push(g.vs),u+=g.barycenter*g.weight,d+=g.weight,f=n(c,l,f)});let p={vs:c.flat(!0)};return d&&(p.barycenter=u/d,p.weight=d),p}function n(o,i,a){let s;for(;i.length&&(s=i[i.length-1]).i<=a;)i.pop(),o.push(s.vs),a++;return a}function r(o){return(i,a)=>i.barycenter<a.barycenter?-1:i.barycenter>a.barycenter?1:o?a.i-i.i:i.i-a.i}return nI}var rI,bU;function mRe(){if(bU)return rI;bU=1;let e=hRe(),t=pRe(),n=gRe();rI=r;function r(a,s,l,c){let u=a.children(s),d=a.node(s),f=d?d.borderLeft:void 0,p=d?d.borderRight:void 0,g={};f&&(u=u.filter(w=>w!==f&&w!==p));let b=e(a,u);b.forEach(w=>{if(a.children(w.v).length){let S=r(a,w.v,l,c);g[w.v]=S,Object.hasOwn(S,"barycenter")&&i(w,S)}});let m=t(b,l);o(m,g);let C=n(m,c);if(f&&(C.vs=[f,C.vs,p].flat(!0),a.predecessors(f).length)){let w=a.node(a.predecessors(f)[0]),S=a.node(a.predecessors(p)[0]);Object.hasOwn(C,"barycenter")||(C.barycenter=0,C.weight=0),C.barycenter=(C.barycenter*C.weight+w.order+S.order)/(C.weight+2),C.weight+=2}return C}function o(a,s){a.forEach(l=>{l.vs=l.vs.flatMap(c=>s[c]?s[c].vs:c)})}function i(a,s){a.barycenter!==void 0?(a.barycenter=(a.barycenter*a.weight+s.barycenter*s.weight)/(a.weight+s.weight),a.weight+=s.weight):(a.barycenter=s.barycenter,a.weight=s.weight)}return rI}var oI,yU;function vRe(){if(yU)return oI;yU=1;let e=ps().Graph,t=Eo();oI=n;function n(o,i,a){let s=r(o),l=new e({compound:!0}).setGraph({root:s}).setDefaultNodeLabel(c=>o.node(c));return o.nodes().forEach(c=>{let u=o.node(c),d=o.parent(c);(u.rank===i||u.minRank<=i&&i<=u.maxRank)&&(l.setNode(c),l.setParent(c,d||s),o[a](c).forEach(f=>{let p=f.v===c?f.w:f.v,g=l.edge(p,c),b=g!==void 0?g.weight:0;l.setEdge(p,c,{weight:o.edge(f).weight+b})}),Object.hasOwn(u,"minRank")&&l.setNode(c,{borderLeft:u.borderLeft[i],borderRight:u.borderRight[i]}))}),l}function r(o){for(var i;o.hasNode(i=t.uniqueId("_root")););return i}return oI}var iI,CU;function bRe(){if(CU)return iI;CU=1,iI=e;function e(t,n,r){let o={},i;r.forEach(a=>{let s=t.parent(a),l,c;for(;s;){if(l=t.parent(s),l?(c=o[l],o[l]=s):(c=i,i=s),c&&c!==s){n.setEdge(c,s);return}s=l}})}return iI}var aI,AU;function yRe(){if(AU)return aI;AU=1;let e=dRe(),t=fRe(),n=mRe(),r=vRe(),o=bRe(),i=ps().Graph,a=Eo();aI=s;function s(d,f){if(f&&typeof f.customOrder=="function"){f.customOrder(d,s);return}let p=a.maxRank(d),g=l(d,a.range(1,p+1),"inEdges"),b=l(d,a.range(p-1,-1,-1),"outEdges"),m=e(d);if(u(d,m),f&&f.disableOptimalOrderHeuristic)return;let C=Number.POSITIVE_INFINITY,w;for(let S=0,y=0;y<4;++S,++y){c(S%2?g:b,S%4>=2),m=a.buildLayerMatrix(d);let E=t(d,m);E<C&&(y=0,w=Object.assign({},m),C=E)}u(d,w)}function l(d,f,p){return f.map(function(g){return r(d,g,p)})}function c(d,f){let p=new i;d.forEach(function(g){let b=g.graph().root,m=n(g,b,p,f);m.vs.forEach((C,w)=>g.node(C).order=w),o(g,p,m.vs)})}function u(d,f){Object.values(f).forEach(p=>p.forEach((g,b)=>d.node(g).order=b))}return aI}var sI,wU;function CRe(){if(wU)return sI;wU=1;let e=ps().Graph,t=Eo();sI={positionX:p,findType1Conflicts:n,findType2Conflicts:r,addConflict:i,hasConflict:a,verticalAlignment:s,horizontalCompaction:l,alignCoordinates:d,findSmallestWidthAlignment:u,balance:f};function n(m,C){let w={};function S(y,E){let N=0,M=0,$=y.length,O=E[E.length-1];return E.forEach((T,P)=>{let B=o(m,T),_=B?m.node(B).order:$;(B||T===O)&&(E.slice(M,P+1).forEach(k=>{m.predecessors(k).forEach(L=>{let D=m.node(L),j=D.order;(j<N||_<j)&&!(D.dummy&&m.node(k).dummy)&&i(w,L,k)})}),M=P+1,N=_)}),E}return C.length&&C.reduce(S),w}function r(m,C){let w={};function S(E,N,M,$,O){let T;t.range(N,M).forEach(P=>{T=E[P],m.node(T).dummy&&m.predecessors(T).forEach(B=>{let _=m.node(B);_.dummy&&(_.order<$||_.order>O)&&i(w,B,T)})})}function y(E,N){let M=-1,$,O=0;return N.forEach((T,P)=>{if(m.node(T).dummy==="border"){let B=m.predecessors(T);B.length&&($=m.node(B[0]).order,S(N,O,P,M,$),O=P,M=$)}S(N,O,N.length,$,E.length)}),N}return C.length&&C.reduce(y),w}function o(m,C){if(m.node(C).dummy)return m.predecessors(C).find(w=>m.node(w).dummy)}function i(m,C,w){if(C>w){let y=C;C=w,w=y}let S=m[C];S||(m[C]=S={}),S[w]=!0}function a(m,C,w){if(C>w){let S=C;C=w,w=S}return!!m[C]&&Object.hasOwn(m[C],w)}function s(m,C,w,S){let y={},E={},N={};return C.forEach(M=>{M.forEach(($,O)=>{y[$]=$,E[$]=$,N[$]=O})}),C.forEach(M=>{let $=-1;M.forEach(O=>{let T=S(O);if(T.length){T=T.sort((B,_)=>N[B]-N[_]);let P=(T.length-1)/2;for(let B=Math.floor(P),_=Math.ceil(P);B<=_;++B){let k=T[B];E[O]===O&&$<N[k]&&!a(w,O,k)&&(E[k]=O,E[O]=y[O]=y[k],$=N[k])}}})}),{root:y,align:E}}function l(m,C,w,S,y){let E={},N=c(m,C,w,y),M=y?"borderLeft":"borderRight";function $(P,B){let _=N.nodes(),k=_.pop(),L={};for(;k;)L[k]?P(k):(L[k]=!0,_.push(k),_=_.concat(B(k))),k=_.pop()}function O(P){E[P]=N.inEdges(P).reduce((B,_)=>Math.max(B,E[_.v]+N.edge(_)),0)}function T(P){let B=N.outEdges(P).reduce((k,L)=>Math.min(k,E[L.w]-N.edge(L)),Number.POSITIVE_INFINITY),_=m.node(P);B!==Number.POSITIVE_INFINITY&&_.borderType!==M&&(E[P]=Math.max(E[P],B))}return $(O,N.predecessors.bind(N)),$(T,N.successors.bind(N)),Object.keys(S).forEach(P=>E[P]=E[w[P]]),E}function c(m,C,w,S){let y=new e,E=m.graph(),N=g(E.nodesep,E.edgesep,S);return C.forEach(M=>{let $;M.forEach(O=>{let T=w[O];if(y.setNode(T),$){var P=w[$],B=y.edge(P,T);y.setEdge(P,T,Math.max(N(m,O,$),B||0))}$=O})}),y}function u(m,C){return Object.values(C).reduce((w,S)=>{let y=Number.NEGATIVE_INFINITY,E=Number.POSITIVE_INFINITY;Object.entries(S).forEach(([M,$])=>{let O=b(m,M)/2;y=Math.max($+O,y),E=Math.min($-O,E)});const N=y-E;return N<w[0]&&(w=[N,S]),w},[Number.POSITIVE_INFINITY,null])[1]}function d(m,C){let w=Object.values(C),S=t.applyWithChunking(Math.min,w),y=t.applyWithChunking(Math.max,w);["u","d"].forEach(E=>{["l","r"].forEach(N=>{let M=E+N,$=m[M];if($===C)return;let O=Object.values($),T=S-t.applyWithChunking(Math.min,O);N!=="l"&&(T=y-t.applyWithChunking(Math.max,O)),T&&(m[M]=t.mapValues($,P=>P+T))})})}function f(m,C){return t.mapValues(m.ul,(w,S)=>{if(C)return m[C.toLowerCase()][S];{let y=Object.values(m).map(E=>E[S]).sort((E,N)=>E-N);return(y[1]+y[2])/2}})}function p(m){let C=t.buildLayerMatrix(m),w=Object.assign(n(m,C),r(m,C)),S={},y;["u","d"].forEach(N=>{y=N==="u"?C:Object.values(C).reverse(),["l","r"].forEach(M=>{M==="r"&&(y=y.map(P=>Object.values(P).reverse()));let $=(N==="u"?m.predecessors:m.successors).bind(m),O=s(m,y,w,$),T=l(m,y,O.root,O.align,M==="r");M==="r"&&(T=t.mapValues(T,P=>-P)),S[N+M]=T})});let E=u(m,S);return d(S,E),f(S,m.graph().align)}function g(m,C,w){return(S,y,E)=>{let N=S.node(y),M=S.node(E),$=0,O;if($+=N.width/2,Object.hasOwn(N,"labelpos"))switch(N.labelpos.toLowerCase()){case"l":O=-N.width/2;break;case"r":O=N.width/2;break}if(O&&($+=w?O:-O),O=0,$+=(N.dummy?C:m)/2,$+=(M.dummy?C:m)/2,$+=M.width/2,Object.hasOwn(M,"labelpos"))switch(M.labelpos.toLowerCase()){case"l":O=M.width/2;break;case"r":O=-M.width/2;break}return O&&($+=w?O:-O),O=0,$}}function b(m,C){return m.node(C).width}return sI}var lI,SU;function ARe(){if(SU)return lI;SU=1;let e=Eo(),t=CRe().positionX;lI=n;function n(o){o=e.asNonCompoundGraph(o),r(o),Object.entries(t(o)).forEach(([i,a])=>o.node(i).x=a)}function r(o){let i=e.buildLayerMatrix(o),a=o.graph().ranksep,s=0;i.forEach(l=>{const c=l.reduce((u,d)=>{const f=o.node(d).height;return u>f?u:f},0);l.forEach(u=>o.node(u).y=s+c/2),s+=c+a})}return lI}var cI,EU;function wRe(){if(EU)return cI;EU=1;let e=rRe(),t=oRe(),n=aRe(),r=Eo().normalizeRanks,o=sRe(),i=Eo().removeEmptyRanks,a=lRe(),s=cRe(),l=uRe(),c=yRe(),u=ARe(),d=Eo(),f=ps().Graph;cI=p;function p(H,W){let K=W&&W.debugTiming?d.time:d.notime;K("layout",()=>{let G=K(" buildLayoutGraph",()=>$(H));K(" runLayout",()=>g(G,K,W)),K(" updateInputGraph",()=>b(H,G))})}function g(H,W,K){W(" makeSpaceForEdgeLabels",()=>O(H)),W(" removeSelfEdges",()=>V(H)),W(" acyclic",()=>e.run(H)),W(" nestingGraph.run",()=>a.run(H)),W(" rank",()=>n(d.asNonCompoundGraph(H))),W(" injectEdgeLabelProxies",()=>T(H)),W(" removeEmptyRanks",()=>i(H)),W(" nestingGraph.cleanup",()=>a.cleanup(H)),W(" normalizeRanks",()=>r(H)),W(" assignRankMinMax",()=>P(H)),W(" removeEdgeLabelProxies",()=>B(H)),W(" normalize.run",()=>t.run(H)),W(" parentDummyChains",()=>o(H)),W(" addBorderSegments",()=>s(H)),W(" order",()=>c(H,K)),W(" insertSelfEdges",()=>z(H)),W(" adjustCoordinateSystem",()=>l.adjust(H)),W(" position",()=>u(H)),W(" positionSelfEdges",()=>R(H)),W(" removeBorderNodes",()=>j(H)),W(" normalize.undo",()=>t.undo(H)),W(" fixupEdgeLabelCoords",()=>L(H)),W(" undoCoordinateSystem",()=>l.undo(H)),W(" translateGraph",()=>_(H)),W(" assignNodeIntersects",()=>k(H)),W(" reversePoints",()=>D(H)),W(" acyclic.undo",()=>e.undo(H))}function b(H,W){H.nodes().forEach(K=>{let G=H.node(K),J=W.node(K);G&&(G.x=J.x,G.y=J.y,G.rank=J.rank,W.children(K).length&&(G.width=J.width,G.height=J.height))}),H.edges().forEach(K=>{let G=H.edge(K),J=W.edge(K);G.points=J.points,Object.hasOwn(J,"x")&&(G.x=J.x,G.y=J.y)}),H.graph().width=W.graph().width,H.graph().height=W.graph().height}let m=["nodesep","edgesep","ranksep","marginx","marginy"],C={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},w=["acyclicer","ranker","rankdir","align"],S=["width","height","rank"],y={width:0,height:0},E=["minlen","weight","width","height","labeloffset"],N={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},M=["labelpos"];function $(H){let W=new f({multigraph:!0,compound:!0}),K=q(H.graph());return W.setGraph(Object.assign({},C,Q(K,m),d.pick(K,w))),H.nodes().forEach(G=>{let J=q(H.node(G));const Y=Q(J,S);Object.keys(y).forEach(te=>{Y[te]===void 0&&(Y[te]=y[te])}),W.setNode(G,Y),W.setParent(G,H.parent(G))}),H.edges().forEach(G=>{let J=q(H.edge(G));W.setEdge(G,Object.assign({},N,Q(J,E),d.pick(J,M)))}),W}function O(H){let W=H.graph();W.ranksep/=2,H.edges().forEach(K=>{let G=H.edge(K);G.minlen*=2,G.labelpos.toLowerCase()!=="c"&&(W.rankdir==="TB"||W.rankdir==="BT"?G.width+=G.labeloffset:G.height+=G.labeloffset)})}function T(H){H.edges().forEach(W=>{let K=H.edge(W);if(K.width&&K.height){let G=H.node(W.v),Y={rank:(H.node(W.w).rank-G.rank)/2+G.rank,e:W};d.addDummyNode(H,"edge-proxy",Y,"_ep")}})}function P(H){let W=0;H.nodes().forEach(K=>{let G=H.node(K);G.borderTop&&(G.minRank=H.node(G.borderTop).rank,G.maxRank=H.node(G.borderBottom).rank,W=Math.max(W,G.maxRank))}),H.graph().maxRank=W}function B(H){H.nodes().forEach(W=>{let K=H.node(W);K.dummy==="edge-proxy"&&(H.edge(K.e).labelRank=K.rank,H.removeNode(W))})}function _(H){let W=Number.POSITIVE_INFINITY,K=0,G=Number.POSITIVE_INFINITY,J=0,Y=H.graph(),te=Y.marginx||0,re=Y.marginy||0;function X(Z){let oe=Z.x,ne=Z.y,de=Z.width,ue=Z.height;W=Math.min(W,oe-de/2),K=Math.max(K,oe+de/2),G=Math.min(G,ne-ue/2),J=Math.max(J,ne+ue/2)}H.nodes().forEach(Z=>X(H.node(Z))),H.edges().forEach(Z=>{let oe=H.edge(Z);Object.hasOwn(oe,"x")&&X(oe)}),W-=te,G-=re,H.nodes().forEach(Z=>{let oe=H.node(Z);oe.x-=W,oe.y-=G}),H.edges().forEach(Z=>{let oe=H.edge(Z);oe.points.forEach(ne=>{ne.x-=W,ne.y-=G}),Object.hasOwn(oe,"x")&&(oe.x-=W),Object.hasOwn(oe,"y")&&(oe.y-=G)}),Y.width=K-W+te,Y.height=J-G+re}function k(H){H.edges().forEach(W=>{let K=H.edge(W),G=H.node(W.v),J=H.node(W.w),Y,te;K.points?(Y=K.points[0],te=K.points[K.points.length-1]):(K.points=[],Y=J,te=G),K.points.unshift(d.intersectRect(G,Y)),K.points.push(d.intersectRect(J,te))})}function L(H){H.edges().forEach(W=>{let K=H.edge(W);if(Object.hasOwn(K,"x"))switch((K.labelpos==="l"||K.labelpos==="r")&&(K.width-=K.labeloffset),K.labelpos){case"l":K.x-=K.width/2+K.labeloffset;break;case"r":K.x+=K.width/2+K.labeloffset;break}})}function D(H){H.edges().forEach(W=>{let K=H.edge(W);K.reversed&&K.points.reverse()})}function j(H){H.nodes().forEach(W=>{if(H.children(W).length){let K=H.node(W),G=H.node(K.borderTop),J=H.node(K.borderBottom),Y=H.node(K.borderLeft[K.borderLeft.length-1]),te=H.node(K.borderRight[K.borderRight.length-1]);K.width=Math.abs(te.x-Y.x),K.height=Math.abs(J.y-G.y),K.x=Y.x+K.width/2,K.y=G.y+K.height/2}}),H.nodes().forEach(W=>{H.node(W).dummy==="border"&&H.removeNode(W)})}function V(H){H.edges().forEach(W=>{if(W.v===W.w){var K=H.node(W.v);K.selfEdges||(K.selfEdges=[]),K.selfEdges.push({e:W,label:H.edge(W)}),H.removeEdge(W)}})}function z(H){var W=d.buildLayerMatrix(H);W.forEach(K=>{var G=0;K.forEach((J,Y)=>{var te=H.node(J);te.order=Y+G,(te.selfEdges||[]).forEach(re=>{d.addDummyNode(H,"selfedge",{width:re.label.width,height:re.label.height,rank:te.rank,order:Y+ ++G,e:re.e,label:re.label},"_se")}),delete te.selfEdges})})}function R(H){H.nodes().forEach(W=>{var K=H.node(W);if(K.dummy==="selfedge"){var G=H.node(K.e.v),J=G.x+G.width/2,Y=G.y,te=K.x-J,re=G.height/2;H.setEdge(K.e,K.label),H.removeNode(W),K.label.points=[{x:J+2*te/3,y:Y-re},{x:J+5*te/6,y:Y-re},{x:J+te,y:Y},{x:J+5*te/6,y:Y+re},{x:J+2*te/3,y:Y+re}],K.label.x=K.x,K.label.y=K.y}})}function Q(H,W){return d.mapValues(d.pick(H,W),Number)}function q(H){var W={};return H&&Object.entries(H).forEach(([K,G])=>{typeof K=="string"&&(K=K.toLowerCase()),W[K]=G}),W}return cI}var uI,xU;function SRe(){if(xU)return uI;xU=1;let e=Eo(),t=ps().Graph;uI={debugOrdering:n};function n(r){let o=e.buildLayerMatrix(r),i=new t({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(a=>{i.setNode(a,{label:a}),i.setParent(a,"layer"+r.node(a).rank)}),r.edges().forEach(a=>i.setEdge(a.v,a.w,{},a.name)),o.forEach((a,s)=>{let l="layer"+s;i.setNode(l,{rank:"same"}),a.reduce((c,u)=>(i.setEdge(c,u,{style:"invis"}),u))}),i}return uI}var dI,IU;function ERe(){return IU||(IU=1,dI="1.1.5"),dI}var fI,NU;function xRe(){return NU||(NU=1,fI={graphlib:ps(),layout:wRe(),debug:SRe(),util:{time:Eo().time,notime:Eo().notime},version:ERe()}),fI}var IRe=xRe();const OU=ri(IRe),NRe=()=>{const{getNodes:e,getEdges:t,setNodes:n,setEdges:r,fitView:o}=Pn(),i=s=>{const l=document.querySelector(`[data-id="${s}"]`);if(!l)return{width:180,height:60};const c=l.getBoundingClientRect();return{width:Math.max(60,c.width),height:Math.max(30,c.height)}};return{layout:(s="LR")=>{const l=e(),c=t();l.length&&requestAnimationFrame(()=>{const u=s==="LR",d=new OU.graphlib.Graph;d.setDefaultEdgeLabel(()=>({})),d.setGraph({rankdir:s,ranksep:120,nodesep:80}),l.forEach(p=>{const{width:g,height:b}=i(p.id);d.setNode(p.id,{width:g,height:b})}),c.forEach(p=>d.setEdge(p.source,p.target)),OU.layout(d);const f=l.map(p=>{const g=d.node(p.id),{width:b,height:m}=i(p.id);return{...p,position:{x:g.x-b/2,y:g.y-m/2},targetPosition:u?"left":"top",sourcePosition:u?"right":"bottom"}});n(f),r(c),requestAnimationFrame(()=>o({duration:400,padding:.3}))})}}};var ORe="scripts_editor_k7c3wx0",Lc="scripts_editor_k7c3wx1",$Re="scripts_editor_k7c3wx2",hI="scripts_editor_k7c3wx3",MRe="scripts_editor_k7c3wx4";const TRe=()=>{const e=Ir(),[t,n]=x.useState(()=>e.getState().transform[2]);return x.useEffect(()=>{let r=e.getState().transform[2];return e.subscribe(i=>{const a=i.transform[2];a!==r&&(r=a,n(a))})},[e]),v.jsxs("span",{className:MRe,children:[Math.round(t*100)/2,"%"]})},PRe=x.memo(()=>{const{instanceId:e}=Zn(),{zoomIn:t,zoomOut:n,fitView:r}=Pn(),{layout:o}=NRe(),{undo:i,redo:a,canUndo:s,canRedo:l}=kHe(e),{mode:c,toggleMode:u}=IG(),{mode:d}=Zn();return v.jsxs("div",{className:ORe,children:[v.jsx("button",{type:"button",disabled:!s||d==="view",className:Lc,onClick:i,children:v.jsx(zHe,{size:18})}),v.jsx("button",{type:"button",disabled:!l||d==="view",className:Lc,onClick:a,children:v.jsx(jHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:Lc,onClick:()=>o(),children:v.jsx(r8e,{})}),v.jsx("button",{type:"button",className:Lc,onClick:()=>r({padding:.2}),children:v.jsx(LHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:Lc,onClick:()=>t(),children:v.jsx(FHe,{size:18})}),v.jsx(TRe,{}),v.jsx("button",{type:"button",className:Lc,onClick:()=>n(),children:v.jsx(BHe,{size:18})}),v.jsx("div",{className:hI}),v.jsx("button",{type:"button",className:`${Lc} ${c==="trackpad"?$Re:""}`,onClick:u,children:v.jsx(VHe,{size:18})}),v.jsx("button",{type:"button",className:Lc,children:v.jsx(HHe,{size:18})})]})});var pI,$U;function MU(){if($U)return pI;$U=1;var e=Object.prototype;function t(n){var r=n&&n.constructor,o=typeof r=="function"&&r.prototype||e;return n===o}return pI=t,pI}var gI,TU;function kRe(){if(TU)return gI;TU=1;function e(t,n){return function(r){return t(n(r))}}return gI=e,gI}var mI,PU;function _Re(){if(PU)return mI;PU=1;var e=kRe(),t=e(Object.keys,Object);return mI=t,mI}var vI,kU;function DRe(){if(kU)return vI;kU=1;var e=MU(),t=_Re(),n=Object.prototype,r=n.hasOwnProperty;function o(i){if(!e(i))return t(i);var a=[];for(var s in Object(i))r.call(i,s)&&s!="constructor"&&a.push(s);return a}return vI=o,vI}var bI,_U;function DU(){if(_U)return bI;_U=1;var e=Mm(),t=tC(),n="[object AsyncFunction]",r="[object Function]",o="[object GeneratorFunction]",i="[object Proxy]";function a(s){if(!t(s))return!1;var l=e(s);return l==r||l==o||l==n||l==i}return bI=a,bI}var yI,BU;function BRe(){if(BU)return yI;BU=1;var e=Dl(),t=e["__core-js_shared__"];return yI=t,yI}var CI,LU;function LRe(){if(LU)return CI;LU=1;var e=BRe(),t=function(){var r=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function n(r){return!!t&&t in r}return CI=n,CI}var AI,FU;function jU(){if(FU)return AI;FU=1;var e=Function.prototype,t=e.toString;function n(r){if(r!=null){try{return t.call(r)}catch{}try{return r+""}catch{}}return""}return AI=n,AI}var wI,zU;function FRe(){if(zU)return wI;zU=1;var e=DU(),t=LRe(),n=tC(),r=jU(),o=/[\\^$.*+?()[\]{}|]/g,i=/^\[object .+?Constructor\]$/,a=Function.prototype,s=Object.prototype,l=a.toString,c=s.hasOwnProperty,u=RegExp("^"+l.call(c).replace(o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function d(f){if(!n(f)||t(f))return!1;var p=e(f)?u:i;return p.test(r(f))}return wI=d,wI}var SI,VU;function jRe(){if(VU)return SI;VU=1;function e(t,n){return t==null?void 0:t[n]}return SI=e,SI}var EI,HU;function Bm(){if(HU)return EI;HU=1;var e=FRe(),t=jRe();function n(r,o){var i=t(r,o);return e(i)?i:void 0}return EI=n,EI}var xI,RU;function zRe(){if(RU)return xI;RU=1;var e=Bm(),t=Dl(),n=e(t,"DataView");return xI=n,xI}var II,WU;function VRe(){if(WU)return II;WU=1;var e=Bm(),t=Dl(),n=e(t,"Map");return II=n,II}var NI,QU;function HRe(){if(QU)return NI;QU=1;var e=Bm(),t=Dl(),n=e(t,"Promise");return NI=n,NI}var OI,KU;function RRe(){if(KU)return OI;KU=1;var e=Bm(),t=Dl(),n=e(t,"Set");return OI=n,OI}var $I,qU;function WRe(){if(qU)return $I;qU=1;var e=Bm(),t=Dl(),n=e(t,"WeakMap");return $I=n,$I}var MI,GU;function QRe(){if(GU)return MI;GU=1;var e=zRe(),t=VRe(),n=HRe(),r=RRe(),o=WRe(),i=Mm(),a=jU(),s="[object Map]",l="[object Object]",c="[object Promise]",u="[object Set]",d="[object WeakMap]",f="[object DataView]",p=a(e),g=a(t),b=a(n),m=a(r),C=a(o),w=i;return(e&&w(new e(new ArrayBuffer(1)))!=f||t&&w(new t)!=s||n&&w(n.resolve())!=c||r&&w(new r)!=u||o&&w(new o)!=d)&&(w=function(S){var y=i(S),E=y==l?S.constructor:void 0,N=E?a(E):"";if(N)switch(N){case p:return f;case g:return s;case b:return c;case m:return u;case C:return d}return y}),MI=w,MI}var TI,UU;function KRe(){if(UU)return TI;UU=1;var e=Mm(),t=nC(),n="[object Arguments]";function r(o){return t(o)&&e(o)==n}return TI=r,TI}var PI,YU;function qRe(){if(YU)return PI;YU=1;var e=KRe(),t=nC(),n=Object.prototype,r=n.hasOwnProperty,o=n.propertyIsEnumerable,i=e(function(){return arguments}())?e:function(a){return t(a)&&r.call(a,"callee")&&!o.call(a,"callee")};return PI=i,PI}var kI,XU;function GRe(){if(XU)return kI;XU=1;var e=Array.isArray;return kI=e,kI}var _I,ZU;function JU(){if(ZU)return _I;ZU=1;var e=9007199254740991;function t(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=e}return _I=t,_I}var DI,eY;function URe(){if(eY)return DI;eY=1;var e=DU(),t=JU();function n(r){return r!=null&&t(r.length)&&!e(r)}return DI=n,DI}var Lm={exports:{}},BI,tY;function YRe(){if(tY)return BI;tY=1;function e(){return!1}return BI=e,BI}Lm.exports;var nY;function XRe(){return nY||(nY=1,function(e,t){var n=Dl(),r=YRe(),o=t&&!t.nodeType&&t,i=o&&!0&&e&&!e.nodeType&&e,a=i&&i.exports===o,s=a?n.Buffer:void 0,l=s?s.isBuffer:void 0,c=l||r;e.exports=c}(Lm,Lm.exports)),Lm.exports}var LI,rY;function ZRe(){if(rY)return LI;rY=1;var e=Mm(),t=JU(),n=nC(),r="[object Arguments]",o="[object Array]",i="[object Boolean]",a="[object Date]",s="[object Error]",l="[object Function]",c="[object Map]",u="[object Number]",d="[object Object]",f="[object RegExp]",p="[object Set]",g="[object String]",b="[object WeakMap]",m="[object ArrayBuffer]",C="[object DataView]",w="[object Float32Array]",S="[object Float64Array]",y="[object Int8Array]",E="[object Int16Array]",N="[object Int32Array]",M="[object Uint8Array]",$="[object Uint8ClampedArray]",O="[object Uint16Array]",T="[object Uint32Array]",P={};P[w]=P[S]=P[y]=P[E]=P[N]=P[M]=P[$]=P[O]=P[T]=!0,P[r]=P[o]=P[m]=P[i]=P[C]=P[a]=P[s]=P[l]=P[c]=P[u]=P[d]=P[f]=P[p]=P[g]=P[b]=!1;function B(_){return n(_)&&t(_.length)&&!!P[e(_)]}return LI=B,LI}var FI,oY;function JRe(){if(oY)return FI;oY=1;function e(t){return function(n){return t(n)}}return FI=e,FI}var Fm={exports:{}};Fm.exports;var iY;function eWe(){return iY||(iY=1,function(e,t){var n=xK(),r=t&&!t.nodeType&&t,o=r&&!0&&e&&!e.nodeType&&e,i=o&&o.exports===r,a=i&&n.process,s=function(){try{var l=o&&o.require&&o.require("util").types;return l||a&&a.binding&&a.binding("util")}catch{}}();e.exports=s}(Fm,Fm.exports)),Fm.exports}var jI,aY;function tWe(){if(aY)return jI;aY=1;var e=ZRe(),t=JRe(),n=eWe(),r=n&&n.isTypedArray,o=r?t(r):e;return jI=o,jI}var zI,sY;function nWe(){if(sY)return zI;sY=1;var e=DRe(),t=QRe(),n=qRe(),r=GRe(),o=URe(),i=XRe(),a=MU(),s=tWe(),l="[object Map]",c="[object Set]",u=Object.prototype,d=u.hasOwnProperty;function f(p){if(p==null)return!0;if(o(p)&&(r(p)||typeof p=="string"||typeof p.splice=="function"||i(p)||s(p)||n(p)))return!p.length;var g=t(p);if(g==l||g==c)return!p.size;if(a(p))return!e(p).length;for(var b in p)if(d.call(p,b))return!1;return!0}return zI=f,zI}var rWe=nWe();const oWe=ri(rWe);var lY="scripts_editor_ohkkdt0",yC="scripts_editor_ohkkdt1",VI="scripts_editor_ohkkdt2",iWe="scripts_editor_ohkkdt3",cY="scripts_editor_ohkkdt4",uY="scripts_editor_ohkkdt5",aWe="scripts_editor_ohkkdt6",sWe="scripts_editor_ohkkdt7",lWe="scripts_editor_ohkkdt8";const dY=e=>v.jsx(Bn,{...e,direction:"vertical",size:10}),fY=x.memo(({keyId:e,Icon:t,label:n,active:r,color:o,isLongLabel:i,onDragStart:a})=>{const s=x.useCallback(l=>a(l,e),[a,e]);return v.jsxs(wt,{draggable:!0,type:"text",style:{minHeight:i?62:52},className:r?`${VI} ${iWe} `:`${VI}`,onDragStart:s,children:[v.jsx("span",{className:cY,style:{color:o},children:v.jsx(t,{})}),v.jsx("span",{className:uY,children:n})]},e)},(e,t)=>e.keyId===t.keyId&&e.label===t.label&&e.active===t.active&&e.color===t.color&&e.isLongLabel===t.isLongLabel&&e.onDragStart===t.onDragStart),cWe=()=>{const[e,t]=sC(),{BLOCKS_ENABLED:n}=Zn(),r=x.useCallback((a,s)=>{a.dataTransfer.effectAllowed="move",requestAnimationFrame(()=>t(s))},[t]);if(oWe(n))return null;const o=x.useMemo(()=>vC.filter(a=>(n==null?void 0:n.includes(a.key))&&a.group===1),[n]),i=x.useMemo(()=>vC.filter(a=>(n==null?void 0:n.includes(a.key))&&a.group===2),[n]);return v.jsxs("div",{className:lY,children:[v.jsx(Vs,{className:yC,wrapperTag:dY,children:o.map(a=>{const s=a.icon,l=a.active,c=a.label.includes(`
|
|
710
710
|
`)||a.label.length>9;return v.jsx(fY,{keyId:a.key,Icon:s,label:a.label,active:l,color:Dc[a.key],isLongLabel:c,onDragStart:r})})}),v.jsx(Vs,{className:yC,wrapperTag:dY,children:i.map(a=>{const s=a.icon,l=a.active,c=a.label.includes(`
|
|
711
711
|
`)||a.label.length>9;return v.jsx(fY,{keyId:a.key,Icon:s,label:a.label,active:l,color:Dc[a.key],isLongLabel:c,onDragStart:r})})})]})},uWe=x.memo(cWe),dWe=e=>{const{BLOCKS_ENABLED:t}=Zn(),[n,r]=sC(),o=(c,u)=>{c.dataTransfer.effectAllowed="move",requestAnimationFrame(()=>r(u))},i=e.filter(c=>t.includes(c.key)),a={},s=[];i.forEach(c=>{c.group?(a[c.group]||(a[c.group]=[]),a[c.group].push(c)):s.push(c)});const l=c=>{const u=c.icon,d=c.iconProps||{},f=[st.BRANCH,st.DELAY,st.AI_AGENT].includes(c.key);return v.jsx(wt,{className:aWe,draggable:!0,onDragStart:p=>o(p,c.key),icon:v.jsx("div",{className:`${sWe} ${f?lWe:""}`,style:{color:c.color??Dc[c.key]},children:v.jsx(u,{...d})}),children:v.jsxs(ot,{vertical:!0,align:"flex-start",justify:"center",style:{minWidth:0},children:[v.jsx(Ke.Text,{strong:!0,ellipsis:{tooltip:c.label,expanded:!1},children:c.label}),v.jsx(Ke.Text,{ellipsis:{tooltip:c.description,expanded:!1},type:"secondary",style:{fontSize:12},children:c.description})]})},c.key)};return v.jsxs(v.Fragment,{children:[s.map(l),Object.entries(a).map(([c,u])=>v.jsxs("div",{children:[v.jsx(Ke.Text,{type:"secondary",strong:!0,style:{fontSize:13,marginLeft:8},children:c}),u.map(l)]},c))]})},fWe=()=>{const{BLOCKS_ENABLED:e}=Zn();if($t.isEmpty(e))return v.jsx(v.Fragment,{});const t=a=>{var s;return(s=a.items)!=null&&s.length?a.items.some(l=>e.includes(l.key)):e.includes(a.key)},n=a=>m6.filter(s=>s.group===a).filter(s=>t(s)),r=a=>{var u;const s=a.icon,l=a.iconProps||{},c=a.label.includes(`
|
|
712
712
|
`)||a.label.length>9;return v.jsx(vl,{content:(u=a.items)!=null&&u.length?dWe(a.items):null,overlayInnerStyle:{padding:8},trigger:"hover",placement:"rightTop",children:v.jsxs(wt,{type:"text",className:VI,style:{minHeight:c?64:58,minWidth:c?64:58},children:[v.jsx("span",{className:cY,style:{color:a.color||Dc[a.key]},children:v.jsx(s,{...l})}),v.jsx("span",{className:uY,children:a.label})]})},a.key)},o=n(1),i=n(2);return v.jsxs("div",{className:lY,children:[o.length>0&&v.jsx(Vs,{className:yC,wrapperTag:a=>v.jsx(Bn,{...a,direction:"vertical",size:10,style:{}}),children:o.map(r)}),i.length>0&&v.jsx(Vs,{className:yC,wrapperTag:a=>v.jsx(Bn,{...a,direction:"vertical",size:10}),children:i.map(r)})]})},hWe=()=>v.jsxs("div",{children:[v.jsx(ge.Item,{name:"personalization",valuePropName:"checked",label:null,style:{marginBottom:8},children:v.jsx(Vr,{children:v.jsxs(ot,{gap:12,align:"center",children:["Cá nhân hoá",v.jsx(ir,{title:"Cá nhân hoá",children:v.jsx(yc,{color:"red"})}),v.jsx(as,{icon:v.jsx(SF,{}),color:"default",children:"Chưa kích hoạt"})]})})}),v.jsx(ge.Item,{name:"voice_induction_wait_until_finish_speaking",valuePropName:"checked",label:null,style:{marginBottom:8},children:v.jsx(Vr,{children:v.jsxs(ot,{gap:12,align:"center",children:["Cảm ứng giọng nói - Chờ khách nói hết",v.jsx(ir,{title:"Cảm ứng giọng nói - Chờ khách nói hết",children:v.jsx(yc,{color:"red"})}),v.jsx(as,{icon:v.jsx($s,{}),color:"success",children:"Đã kích hoạt"})]})})}),v.jsx(ge.Item,{name:"voice_induction_interrupt",valuePropName:"checked",label:null,style:{marginBottom:8},children:v.jsx(Vr,{children:v.jsxs(ot,{gap:12,align:"center",children:["Cảm ứng giọng nói - Cho phép xen ngang",v.jsx(ir,{title:"Cảm ứng giọng nói - Cho phép xen ngang",children:v.jsx(yc,{color:"red"})}),v.jsx(as,{icon:v.jsx($s,{}),color:"success",children:"Đã kích hoạt"})]})})}),v.jsx(ge.Item,{name:"gender_identity",valuePropName:"checked",label:null,style:{marginBottom:8},children:v.jsx(Vr,{children:v.jsxs(ot,{gap:12,align:"center",children:["Nhận diện giới tính",v.jsx(ir,{title:"Nhận diện giới tính",children:v.jsx(yc,{color:"red"})}),v.jsx(as,{icon:v.jsx($s,{}),color:"success",children:"Đã kích hoạt"})]})})})]}),pWe=()=>v.jsxs("div",{children:[v.jsx(Ke.Paragraph,{type:"secondary",children:"Nếu bạn dùng node agent thì bạn nên điền prompt. Bạn có thể không dùng prompt đối với kịch bản dùng giọng ghi âm."}),v.jsx(ge.Item,{name:"al_model",label:"AI Model",layout:"vertical",children:v.jsx(kQ,{})}),v.jsx(ge.Item,{name:"prompt_system",className:IHe,label:v.jsxs(ot,{align:"center",justify:"space-between",style:{width:"100%"},children:[v.jsx(Ke.Text,{children:"Prompt hệ thống"}),v.jsxs(Bn,{children:[v.jsx(wt,{type:"text",icon:v.jsx(fH,{})}),v.jsx(wt,{type:"text",icon:v.jsx(dH,{})}),v.jsx(wt,{type:"text",icon:v.jsx(js,{})})]})]}),layout:"vertical",children:v.jsx(Ht.TextArea,{placeholder:"Nhập prompt hệ thống",rows:4,className:NHe})})]}),gWe=()=>v.jsxs("div",{children:[v.jsx(ge.Item,{name:"background_sound_sound",label:"Âm thanh nền",layout:"vertical",children:v.jsx(qn,{placeholder:"Chọn âm thanh nền",options:[]})}),v.jsx(ge.Item,{name:"is_conjunction",valuePropName:"checked",label:null,children:v.jsxs(ot,{vertical:!0,align:"flex-start",gap:8,children:[v.jsx(Vr,{children:"Sử dụng từ nối ở tất cả các node bot nghe"}),v.jsx(Ke.Text,{className:CG,style:{marginLeft:24},children:"Trong khi phân loại ý định, bot sẽ nói từ nối trước node bot nói tiếp theo để hội thoại tự nhiên hơn. Ví dụ: Dạ vâng ạ, dạ vâng,..."}),v.jsx(wt,{type:"link",icon:v.jsx(mF,{}),style:{marginLeft:8},children:"Tuỳ chỉnh từ nối"})]})}),v.jsx(ge.Item,{name:"special_sound",label:v.jsxs(ot,{vertical:!0,children:[v.jsx(Ke.Text,{children:"Từ đặc biệt"}),v.jsx(Ke.Text,{className:CG,style:{fontSize:12},children:"Thêm từ đặc biệt như tên riêng để nâng cao vốn từ của model"})]}),layout:"vertical",children:v.jsx(Ht,{placeholder:"Nhập từ sau đó bấm enter"})})]}),mWe="infinite_filter_voice",vWe=({enabled:e=!0})=>{const{axiosInstance:t,context:{COMPANY_ID:n}}=Zn();return Ss({queryKey:[mWe,n??""],queryFn:({pageParam:r=1})=>t.get("/voice"),enabled:e,staleTime:1e3*60*10,refetchOnMount:!1,retry:1})},bWe=({dataDefault:e,...t})=>{const[n,r]=x.useState([]),{data:o,isLoading:i}=vWe({enabled:!0});x.useEffect(()=>{const s=[...e?$t.isArray(e)?e:[e]:[],...(o==null?void 0:o.data)||[]],l=$t.uniqBy(s,"id");r(l)},[o==null?void 0:o.data,e]);const a=x.useMemo(()=>n.map(({title:s,id:l})=>({value:l,label:s,key:l})),[n]);return v.jsx(qn,{options:a,allowClear:!0,showSearch:!0,filterOption:!1,loading:i,placeholder:"Chọn giọng bot",style:{width:"100%"},...t})},yWe=()=>{const{isOpen:e,onOpen:t,onClose:n}=Hr(),[r]=ge.useForm(),o=i=>{console.log("🚀 ~ values:",i),n()};return v.jsxs(v.Fragment,{children:[v.jsx(wt,{onClick:t,type:"primary",icon:v.jsx(Il,{}),children:"Sinh file audio nghe trước"}),v.jsx(Tr,{open:e,onCancel:n,title:"Nhập giá trị của biến",width:500,destroyOnHidden:!0,footer:[v.jsx(wt,{onClick:n,children:"Hủy"},"cancel"),v.jsx(wt,{onClick:n,children:"Thực hiện với giá trị mặc định"},"default"),v.jsx(wt,{type:"primary",onClick:r.submit,children:"Thực hiện"},"submit")],children:v.jsxs(ge,{form:r,name:"generate-audio-file",onFinish:o,children:[v.jsx(ge.Item,{name:"item1",label:"Item 1",children:v.jsx(Ht,{placeholder:"Nhập giá trị"})}),v.jsx(ge.Item,{name:"item1",label:"Item 1",children:v.jsx(Ht,{placeholder:"Nhập giá trị"})}),v.jsx(ge.Item,{name:"item1",label:"Item 1",children:v.jsx(Ht,{placeholder:"Nhập giá trị"})}),v.jsx(ge.Item,{name:"item1",label:"Item 1",children:v.jsx(Ht,{placeholder:"Nhập giá trị"})})]})})]})},CWe=()=>{const e=ge.useFormInstance(),t=ge.useWatch("voice_choice",e);return v.jsxs(v.Fragment,{children:[v.jsx(ge.Item,{label:null,name:"voice_choice",children:v.jsxs(er.Group,{style:{width:"100%"},children:[v.jsxs(Er,{gutter:12,children:[v.jsx(qt,{span:18,children:v.jsxs(ot,{vertical:!0,gap:8,children:[v.jsx(er,{value:Fh.BOT,children:"Sử dụng giọng bot"}),v.jsx(lo,{isOpen:t===Fh.BOT,children:v.jsx(ge.Item,{label:null,name:"bot_voice",children:v.jsx(bWe,{})})})]})}),v.jsx(qt,{span:6,children:v.jsx(lo,{isOpen:t===Fh.BOT,children:v.jsxs(ot,{gap:12,children:[v.jsx(ge.Item,{label:"Tốc độ",name:"speed_bot_voice",layout:"vertical",children:v.jsx(Uo,{min:.1,max:2,step:.1,style:{width:"100%"}})}),v.jsx(ge.Item,{label:"Âm lượng",name:"volume_bot_voice",layout:"vertical",children:v.jsx(Uo,{min:.1,max:2,step:.1,style:{width:"100%"}})})]})})})]}),v.jsx(er,{value:Fh.CLONE,children:"Sử dụng giọng nhân bản"})]})}),v.jsx(yWe,{})]})},CC={fileIcons:{XLS:"data:image/png;base64,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gKxECAAAkJUIAQAAshIhAABAViIEAADISoQAAABZiRAAACArEQIAAGQlQgAAgKxECAAAkJUIAQAAshIhAABAViIEAADISoQAAABZiRAAACArEQIAAGQlQgAAgKxmA2pXvjcGve3BRmyPIvIaFJ+Nsng26J7cr6Wi3FZ9DXggWL/0ZwjQIiKEJrileui5JWiZ4r3ZH1bpqGJr9Vq6K9gAn4xAuxjHAgAAshIhAABAViIEAADISoQAAABZiRAAACArEQIAAGQlQgAAgKxECAAAkJUIAQAAshIhAABAViIEAADISoQAAABZiRAAACArEQIAAGQlQgAAgKxECAAAkJUIAQAAshIhAABAViIEAADISoQAAABZiRAAACArEQIAAGQlQgAAgKxECAAAkJUIAQAAshIhAABAViIEAADIajagbmU8GEX5YLABvT+p/iBviZyK8t7qf7ungg4qvhpZlWeqH/YE61cW26KIgwHQEiKE+hXFU9EbHg3Wbzh6iMurVx4VIR01LCKrsng2ZnwN2JCi3B4Dww1Ae/iKBQAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACyEiEAAEBWIgQAAMhKhAAAAFmJEAAAICsRAgAAZCVCAACArEQIAACQlQgBAACymg2oW1neFcPezmAjboncBr0HAsahKLdVXwO+GmzE1gBoERFC/YrYXv24PWgb4ciYFOkB2usJYIoYxwIAALISIQAAQFYiBAAAyEqEAAAAWYkQAAAgKxECAABkJUIAAICsRAgAAJCVCAEAALISIQAA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",XLSX:"data:image/png;base64,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",CSV:"data:image/png;base64,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",TXT:"data:image/png;base64,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"}},pd=e=>{switch(e){case"file":return x.createElement(Vje);case"link":return x.createElement(XBe);case"text":return x.createElement(ZBe);case"google":return x.createElement(jje)}};function AWe(e,t){var o;const n=(o=e==null?void 0:e.split(".").pop())==null?void 0:o.toLowerCase();let r="";switch(n){case"xls":r=CC.fileIcons.XLS;break;case"xlsx":r=CC.fileIcons.XLSX;break;case"csv":r=CC.fileIcons.CSV;break;case"txt":r=CC.fileIcons.TXT;break}return r}var jm=(e=>(e.NONE="Không",e.DAILY="Hàng ngày",e.WEEKLY="Hàng tuần",e.MONTHLY="Hàng tháng",e))(jm||{});const gd=[{id:"1",title:"https://ucall.vn/",type:"link",created_at:"2024-06-10T10:00:00Z",auto_updated:"Không"},{id:"2",title:"hlf.xlsx",type:"file",created_at:"2024-06-11T10:00:00Z",auto_updated:"Hàng ngày"},{id:"3",title:"Vinhomes Green Paradise Cần Giờ",type:"text",created_at:"2024-06-11T10:00:00Z",auto_updated:"Hàng tuần"},{id:"4",title:"Tên file Google Docs",type:"google",created_at:"2024-06-11T10:00:00Z",auto_updated:"Hàng tháng"}];var hY="scripts_editor_7uh0go0",wWe="scripts_editor_7uh0go1";const SWe=x.forwardRef((e,t)=>{const{token:{colorPrimary:n}}=ez.useToken(),{isOpen:r,onClose:o,onToggle:i}=Hr(),[a,s]=x.useState([]),l=u=>{try{const d=u.file;s(f=>[...f,d]),u.onSuccess&&u.onSuccess({})}catch{u.file.name}};x.useImperativeHandle(t,()=>({onToggle:()=>{i()}}));const c=()=>{o()};return v.jsx(Tr,{open:r,title:"Thêm kiến thức từ file",onCancel:c,onOk:c,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:c,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:c,children:"Lưu"})]}),children:v.jsxs(ot,{vertical:!0,gap:12,children:[v.jsxs(eh.Dragger,{accept:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel, text/csv, text/plain",name:"file",customRequest:l,multiple:!0,height:180,showUploadList:!1,children:[v.jsx("p",{className:"scripts-editor-upload-drag-icon",children:v.jsx(ux,{})}),v.jsx("p",{className:"scripts-editor-upload-text",children:"Click hoặc kéo thả file vào đây để upload"}),v.jsx("p",{className:"scripts-editor-upload-hint",children:"Hỗ trợ định dạng file doc, docx, txt, csv, xlsx, xls, pdf"})]}),a==null?void 0:a.map(u=>v.jsxs("div",{className:wWe,children:[v.jsxs(ot,{align:"center",gap:8,children:[v.jsx(ub,{preview:!1,src:AWe(u.name),width:26,height:26,alt:"file icon"}),v.jsx(Ke.Text,{className:"!text-xs",style:{color:n},children:u.name})]}),v.jsx(wt,{type:"text",icon:v.jsx(ta,{}),danger:!0,onClick:()=>{s(d=>d.filter(f=>f.uid!==u.uid))}})]}))]})})}),EWe=x.forwardRef((e,t)=>{const{isOpen:n,onClose:r,onToggle:o}=Hr(),[i]=ge.useForm();x.useImperativeHandle(t,()=>({onToggle:()=>{o()}}));const a=()=>{r()},s=()=>{};return v.jsx(Tr,{open:n,title:"Thêm kiến thức từ URL",onCancel:a,onOk:i.submit,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:a,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:i.submit,children:"Lưu"})]}),children:v.jsxs(ge,{form:i,onFinish:s,name:"knowledge-by-url-form",layout:"vertical",preserve:!1,children:[v.jsx(ge.Item,{label:"URL",name:"url",rules:[{required:!0,message:"Vui lòng nhập URL!"}],children:v.jsx(Ht.TextArea,{rows:4,placeholder:"Nhập URLs, bấm enter để xuống dòng và điền URL tiếp theo"})}),v.jsx(ge.Item,{label:"Tự động cập nhật",name:"auto_updated",initialValue:jm.NONE,children:v.jsx(qn,{placeholder:"Chọn tần suất cập nhật",options:Object.values(jm).map(l=>({label:l,value:l}))})}),v.jsx(Su,{message:"Dự kiến xử lý dữ liệu cần 0,5 block",type:"info",showIcon:!0})]})})}),xWe=x.forwardRef((e,t)=>{const{isOpen:n,onClose:r,onToggle:o}=Hr(),[i]=ge.useForm();x.useImperativeHandle(t,()=>({onToggle:()=>{o()}}));const a=()=>{r()},s=()=>{};return v.jsx(Tr,{open:n,title:"Thêm kiến thức từ URL",onCancel:a,onOk:i.submit,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:a,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:i.submit,children:"Lưu"})]}),children:v.jsx(ge,{form:i,onFinish:s,name:"knowledge-by-url-form",layout:"vertical",preserve:!1,children:v.jsx(ge.Item,{label:"Nội dung",name:"content",rules:[{required:!0,message:"Vui lòng nhập nội dung"}],children:v.jsx(Ht.TextArea,{rows:4,placeholder:"Nhập nội dung"})})})})}),IWe=[{key:"1",name:"ABC",file_type:"Docs",created_at:"2024-06-10T10:00:00Z"},{key:"2",name:"ABC",file_type:"Sheets",created_at:"2024-06-10T10:00:00Z"},{key:"3",name:"ABC",file_type:"Docs",created_at:"2024-06-10T10:00:00Z"}],NWe=x.forwardRef((e,t)=>{const{isOpen:n,onClose:r,onToggle:o}=Hr(),[i]=ge.useForm();x.useImperativeHandle(t,()=>({onToggle:()=>{o()}}));const a=()=>{r()},s=()=>{},l=[{title:"Tên file",dataIndex:"name"},{title:"Kiểu file",dataIndex:"file_type"},{title:"Ngày khởi tạo",dataIndex:"created_at",render:(u,d)=>v.jsx(Ke.Text,{children:Xn(d.created_at).format(cq)})}],c={onChange:(u,d)=>{console.log(`selectedRowKeys: ${u}`,"selectedRows: ",d)},getCheckboxProps:u=>({disabled:u.name==="Disabled User",name:u.name})};return v.jsx(Tr,{open:n,title:"Thêm kiến thức từ Google",onCancel:a,onOk:i.submit,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:a,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:i.submit,children:"Lưu"})]}),children:v.jsxs(ge,{form:i,onFinish:s,name:"knowledge-by-google-form",layout:"vertical",preserve:!1,children:[v.jsx(ge.Item,{layout:"horizontal",label:"Tài khoản",name:"account",rules:[{required:!0,message:"Vui lòng chọn tài khoản!"}],children:v.jsx(qn,{style:{width:200},placeholder:"Chọn tài khoản",popupRender:u=>v.jsxs(v.Fragment,{children:[u,v.jsx(Aa,{}),v.jsx(wt,{style:{width:"100%"},type:"primary",children:"Tích hợp Google mới"})]})})}),v.jsx(na,{rowSelection:{type:"checkbox",...c},columns:l,dataSource:IWe}),v.jsx(Kf,{icon:v.jsx(ub,{preview:!1,src:"/assets/images/empty.png",width:140,height:120,alt:"file icon"}),title:null,extra:v.jsx(wt,{type:"primary",children:"Tích hợp tài khoản Google"})}),v.jsx(ge.Item,{label:"Tự động cập nhật",name:"auto_updated",initialValue:jm.NONE,children:v.jsx(qn,{placeholder:"Chọn tần suất cập nhật",options:Object.values(jm).map(u=>({label:u,value:u}))})})]})})}),OWe=()=>{const e=x.useRef(null),t=x.useRef(null),n=x.useRef(null),r=x.useRef(null),o=[{key:"1",label:"URL(s)",icon:pd("link"),onClick:()=>{var i;return(i=e.current)==null?void 0:i.onToggle()}},{key:"2",label:"Tải file",icon:pd("file"),onClick:()=>{var i;return(i=t.current)==null?void 0:i.onToggle()}},{key:"3",label:"Nhập văn bản",icon:pd("text"),onClick:()=>{var i;return(i=n.current)==null?void 0:i.onToggle()}},{key:"4",label:"Google Drive",icon:pd("google"),onClick:()=>{var i;return(i=r.current)==null?void 0:i.onToggle()}}];return v.jsxs(v.Fragment,{children:[v.jsx(rs,{menu:{items:o},trigger:["click"],children:v.jsx(wt,{icon:v.jsx(qo,{}),type:"primary",children:"Thêm kiến thức"})}),v.jsx(EWe,{ref:e}),v.jsx(SWe,{ref:t}),v.jsx(xWe,{ref:n}),v.jsx(NWe,{ref:r})]})},$We=()=>{const{isOpen:e,onOpen:t,onClose:n}=Hr(),r=(o,i,a)=>console.log(a==null?void 0:a.source,o);return v.jsxs(v.Fragment,{children:[v.jsx(wt,{icon:v.jsx(bq,{}),onClick:t,children:"Chọn từ thư viện"}),v.jsxs(Tr,{open:e,onCancel:n,footer:null,closeIcon:null,children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm",allowClear:!0,onSearch:r}),v.jsx(ot,{gap:4,vertical:!0,style:{marginTop:12},children:gd==null?void 0:gd.map(o=>v.jsxs(ot,{gap:8,className:hY,align:"center",children:[pd(o.type),v.jsx(Ke.Text,{children:o.title})]},o.id))})]})]})},MWe=()=>{const e=[{title:"Kiến thức",dataIndex:"title",key:"title",render:(t,n)=>v.jsxs(ot,{align:"center",gap:8,children:[pd(n.type),v.jsx(Ke.Text,{children:n.title})]})},{title:"Ngày khởi tạo",dataIndex:"created_at",key:"created_at",render:(t,n)=>v.jsx(Ke.Text,{children:Xn(n.created_at).format(cq)})},{title:"Tự động cập nhật",dataIndex:"auto_updated",key:"auto_updated"},{title:"Hành động",dataIndex:"action",key:"action",render:()=>v.jsxs(ot,{align:"center",children:[v.jsx(mc,{title:null,description:"Bạn có chắc chắn muốn lưu vào thư viện?",okText:"Có",cancelText:"Không",children:v.jsx(wt,{size:"large",type:"text",icon:v.jsx(bb,{})})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(TF,{})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(ta,{}),danger:!0})]})}];return v.jsxs(ot,{gap:16,vertical:!0,children:[v.jsxs(ot,{align:"center",justify:"space-between",children:[v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(AG,{className:Bc}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:"Kiến thức"})]}),v.jsxs(ot,{align:"center",gap:12,children:[v.jsx($We,{}),v.jsx(OWe,{})]})]}),v.jsx(na,{dataSource:gd,columns:e})]})},TWe=[{id:1,title:"Họ và tên",data_type:"string",description:"Tên người dùng",default_value:"Quý khác",global_identification:!0}],PWe=()=>{const e=Hr(),t=[{title:"Tên biến",dataIndex:"title",key:"title",render:(n,r)=>v.jsxs(ot,{align:"center",gap:8,children:[v.jsx(Ke.Text,{children:r.title}),v.jsx(Ke.Text,{type:"secondary",children:r.data_type})]})},{title:"Mô tả",dataIndex:"description",key:"description"},{title:"Giá trị mặc định",dataIndex:"default_value",key:"default_value"},{title:"Nhận diện trong toàn bộ hội thoại",dataIndex:"global_identification",key:"global_identification",align:"center",render:(n,r)=>r!=null&&r.global_identification?v.jsx(cx,{style:{fontSize:20},twoToneColor:"#A0D911"}):null},{title:"Hành động",dataIndex:"action",key:"action",render:()=>v.jsxs(ot,{align:"center",children:[v.jsx(mc,{title:null,description:"Bạn có chắc chắn muốn lưu vào thư viện?",okText:"Có",cancelText:"Không",children:v.jsx(wt,{size:"large",type:"text",icon:v.jsx(bb,{})})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(Wf,{})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(ta,{}),danger:!0})]})}];return v.jsxs(ot,{gap:16,vertical:!0,children:[v.jsxs(ot,{align:"center",justify:"space-between",children:[v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(DHe,{className:Bc}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:"Kiến thức"})]}),v.jsx(wt,{icon:v.jsx(qo,{}),type:"primary",onClick:e.onOpen,children:"Thêm biến"}),v.jsx(mH,{disclosure:e})]}),v.jsx(na,{dataSource:TWe,columns:t})]})},kWe=()=>{const{isOpen:e,onOpen:t,onClose:n}=Hr(),[r]=ge.useForm(),o=i=>{console.log("Form values:",i),n()};return v.jsxs(v.Fragment,{children:[v.jsx(wt,{icon:v.jsx(qo,{}),type:"primary",onClick:t,children:"Thêm ý định mới"}),v.jsx(Tr,{open:e,title:"Thêm ý định",onCancel:n,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:n,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:r.submit,children:"Lưu"})]}),children:v.jsxs(ge,{form:r,onFinish:o,name:"variable-form",layout:"vertical",preserve:!1,children:[v.jsx(ge.Item,{label:"Tên ý định",name:"title",rules:[{required:!0,message:"Vui lòng nhập tên ý định"}],children:v.jsx(Ht,{placeholder:"Nhập tên ý định"})}),v.jsx(ge.Item,{label:"Mô tả",name:"description",children:v.jsx(Ht,{placeholder:"Nhập mô tả"})}),v.jsx(ge.Item,{label:"Từ khoá",name:"keyword",children:v.jsx(Ht,{placeholder:"Nhập từ khoá"})}),v.jsx(ge.Item,{name:"is_conversion",valuePropName:"checked",label:null,children:v.jsx(Vr,{children:"Đặt làm chuyển đổi"})}),v.jsx(ge.Item,{name:"save_to_library",valuePropName:"checked",label:null,children:v.jsx(Vr,{children:"Lưu vào thư viện"})})]})})]})},_We=()=>{const{isOpen:e,onOpen:t,onClose:n}=Hr(),r=(o,i,a)=>console.log(a==null?void 0:a.source,o);return v.jsxs(v.Fragment,{children:[v.jsx(wt,{icon:v.jsx(bq,{}),onClick:t,children:"Thêm từ thư viện"}),v.jsxs(Tr,{open:e,onCancel:n,footer:null,closeIcon:null,children:[v.jsx(Ht.Search,{placeholder:"Tìm kiếm",allowClear:!0,onSearch:r}),v.jsx(ot,{gap:4,vertical:!0,style:{marginTop:12},children:gd==null?void 0:gd.map(o=>v.jsxs(ot,{gap:8,className:hY,align:"center",children:[pd(o.type),v.jsx(Ke.Text,{children:o.title})]},o.id))})]})]})},DWe=[{id:1,title:"Họ và tên",description:"Tên người dùng",keyword:"Quý khác",is_conversion:!0}],BWe=()=>{const e=[{title:"Ý định",dataIndex:"title",key:"title"},{title:"Mô tả",dataIndex:"description",key:"description"},{title:"Từ khoá",dataIndex:"keyword",key:"keyword"},{title:"Đặt làm chuyển đổi",dataIndex:"is_conversion",key:"is_conversion",align:"center",render:(t,n)=>n!=null&&n.is_conversion?v.jsx(cx,{style:{fontSize:20},twoToneColor:"#A0D911"}):null},{title:"Hành động",dataIndex:"action",key:"action",render:()=>v.jsxs(ot,{align:"center",children:[v.jsx(mc,{title:null,description:"Bạn có chắc chắn muốn lưu vào thư viện?",okText:"Có",cancelText:"Không",children:v.jsx(wt,{size:"large",type:"text",icon:v.jsx(bb,{})})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(Wf,{})}),v.jsx(wt,{size:"large",type:"text",icon:v.jsx(ta,{}),danger:!0})]})}];return v.jsxs(ot,{gap:16,vertical:!0,children:[v.jsxs(ot,{align:"center",justify:"space-between",children:[v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(H7e,{className:Bc}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:"Ý định"})]}),v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(_We,{}),v.jsx(kWe,{})]})]}),v.jsx(na,{dataSource:DWe,columns:e})]})},LWe=()=>v.jsx(ot,{vertical:!0,gap:12,children:v.jsxs(ot,{align:"center",justify:"space-between",children:[v.jsx(Ke.Title,{level:5,children:"Danh sách audio"}),v.jsxs(Bn,{children:[v.jsx(wt,{icon:v.jsx(Il,{}),children:"Sinh file audio nghe trước"}),v.jsx(wt,{icon:v.jsx(Wf,{}),type:"primary",children:"Tuỳ chỉnh audio"})]})]})}),FWe=()=>{const{isOpen:e,onOpen:t,onClose:n}=Hr(),[r]=ge.useForm(),[o,i]=x.useState(),a=l=>{console.log("Form values:",l),n()},s=ge.useWatch("voice",r);return console.log("🚀 ~ voice:",s),v.jsxs(v.Fragment,{children:[v.jsx(wt,{icon:v.jsx(qo,{}),onClick:t,type:"primary",children:"Thêm từ nối"}),v.jsx(Tr,{open:e,title:"Thêm ý định",onCancel:n,cancelText:"Hủy",okText:"Lưu",destroyOnHidden:!0,footer:v.jsxs(ot,{align:"center",justify:"center",gap:8,children:[v.jsx(wt,{onClick:n,children:"Hủy"}),v.jsx(wt,{type:"primary",onClick:r.submit,children:"Lưu"})]}),children:v.jsxs(ge,{form:r,onFinish:a,name:"variable-form",layout:"vertical",preserve:!1,children:[v.jsx(ge.Item,{label:"Tên câu nối",name:"title",rules:[{required:!0,message:"Vui lòng nhập tên câu nối"}],children:v.jsx(Ht,{placeholder:"Nhập tên câu nối"})}),v.jsx(ge.Item,{label:"Phân loại",name:"classify",children:v.jsx(qn,{options:[],placeholder:"Chọn mục phân loại"})}),v.jsx(ge.Item,{label:"Từ khoá",name:"keyword",children:v.jsx(Ht,{placeholder:"Nhập từ khoá"})}),v.jsx(ge.Item,{name:"voice",label:null,children:v.jsxs(er.Group,{style:{display:"flex",flexDirection:"column",gap:12},children:[v.jsx(er,{value:"bot",children:"Giọng bot"}),v.jsx(er,{value:"voice_cloning",children:"Giọng nhân bản(voice cloning)"}),v.jsx(er,{value:"record",children:"Giọng ghi âm"})]})}),v.jsx(lo,{isOpen:s==="record",children:v.jsxs(ot,{align:"center",gap:12,children:[o?null:v.jsx(fC,{beforeUpload:()=>{i(!1)},onUploadSuccess:({file:l,transcript_text:c,transcript:u})=>{r.setFieldValue(["record","default_record"],l),r.setFieldValue(["record","transcript_original"],c),r.setFieldValue(["record","transcript_with_timestamp"],u),r.submit()}}),o||$t.isUndefined(o)?v.jsx(uC,{onStartRecord:()=>{i(!0)},onFinishRecord:({file:l,transcript_text:c,transcript:u})=>{r.setFieldValue(["record","default_record"],l),r.setFieldValue(["record","transcript_original"],c),r.setFieldValue(["record","transcript_with_timestamp"],u),r.submit(),i(void 0)}}):null]})})]})})]})},jWe=()=>v.jsx(ot,{vertical:!0,gap:12,children:v.jsxs(ot,{align:"center",justify:"space-between",children:[v.jsx(Ke.Title,{level:5,children:"Danh sách từ nối"}),v.jsx(FWe,{})]})}),zWe=()=>{const e=[{key:"1",label:"Node bot nói",children:v.jsx(LWe,{})},{key:"2",label:"Từ nối",children:v.jsx(jWe,{})}];return v.jsxs(ot,{gap:16,vertical:!0,children:[v.jsxs(ot,{align:"center",gap:12,children:[v.jsx(V7e,{className:Bc}),v.jsx(Ke.Title,{level:5,style:{margin:"unset"},children:"Audio"})]}),v.jsx(si,{type:"card",items:e})]})},VWe=()=>{const e=[{label:"Kiến thức",key:"1",children:v.jsx(MWe,{})},{label:"Biến",key:"2",children:v.jsx(PWe,{})},{label:"Ý định",key:"3",children:v.jsx(BWe,{})},{label:"Audio",key:"4",children:v.jsx(zWe,{})}];return v.jsx(si,{defaultActiveKey:"1",tabPosition:"left",items:e})},HWe=OHe.version,RWe=v2(),WWe=e=>`${e.toLowerCase()}_${qu()}`,QWe=[{key:"1",label:v.jsxs(ot,{gap:12,align:"center",children:[v.jsx(Cb,{className:Bc}),v.jsx(Ke.Text,{style:{marginBottom:0},strong:!0,children:"Cài đặt giọng nói"})]}),children:v.jsx(CWe,{})},{key:"2",label:v.jsxs(ot,{gap:12,align:"center",children:[v.jsx(AG,{className:Bc}),v.jsx(Ke.Text,{style:{marginBottom:0},strong:!0,children:"Prompt"})]}),children:v.jsx(pWe,{})},{key:"3",label:v.jsxs(ot,{gap:12,align:"center",children:[v.jsx(Il,{className:Bc}),v.jsx(Ke.Text,{style:{marginBottom:0},strong:!0,children:"Cài đặt âm thanh"})]}),children:v.jsx(gWe,{})},{key:"4",label:v.jsxs(ot,{gap:12,align:"center",children:[v.jsx(DF,{className:Bc}),v.jsx(Ke.Text,{style:{marginBottom:0},strong:!0,children:"Cài đặt nâng cao"})]}),children:v.jsx(hWe,{})}],KWe=x.forwardRef((e,t)=>{const n=e.type,{reactFlowRef:r,instanceId:o,mode:i}=Zn(),[a,s]=sse([]),[l,c]=lse(wz),[u,d]=x.useState(),{screenToFlowPosition:f,fitView:p,addEdges:g}=Pn(),{isValidConnection:b}=yHe(),[m]=sC(),C=i5(),{flowProps:w}=IG(),{takeSnapshotDebounced:S,takeSnapshotNow:y}=_He(o,{snapshotDebounceMs:150}),{isOpen:E,onToggle:N,onClose:M}=Hr(),{isOpen:$,onToggle:O,onClose:T}=Hr(),[P]=ge.useForm(),B=x.useRef(null),_=x.useRef(!1),{resetCommitState:k}=$He({cb:(G,J)=>{var Y;!_.current||i==="view"||(Y=B.current)==null||Y.call(B,G,J)},enabled:!0}),L=e.onAlertsChange||(()=>{}),D=x.useCallback(G=>(S(),c(J=>dA({...G,type:n==="autocall"?"autoCallButton":"autoFlowButton"},J))),[c]),j=x.useCallback(G=>{G.preventDefault(),G.dataTransfer.dropEffect="move"},[]),V=x.useCallback(G=>{if(G.preventDefault(),!m||G.target.closest('[data-group-drop-zone="true"]'))return;const te=f({x:G.clientX,y:G.clientY}),X={id:WWe(m),type:m,position:te,data:{title:rh[m],...Vg[m]},deletable:!0,...Hg[m]};s(Z=>Z.concat(X))},[f,m,s]),z=x.useCallback(G=>{p({nodes:[{id:G}],padding:.2,duration:700})},[p]),R=x.useCallback(G=>{s(J=>NA(G,J)),S()},[]),Q=x.useCallback(G=>{c(J=>OA(G,J)),S()},[]),q=(G,J)=>{J&&P.setFieldsValue(J),_.current=!1;const Y=Array.isArray(G.nodes)&&!$t.isEmpty(G.nodes)?G.nodes:n==="autocall"?Az:[],te=Array.isArray(G.edges)?G.edges.map(re=>({...re,selectable:i==="edit"})):[];s(Y),c(te),requestAnimationFrame(()=>{G.viewport?u.setViewport(G.viewport):u.fitView({padding:.2,duration:0,maxZoom:1}),requestAnimationFrame(()=>{k(),_.current=!0})})};x.useImperativeHandle(t,()=>({getFlowJson:()=>({flow:{...u==null?void 0:u.toObject(),type:n==="autocall"?"autocall":"autoflow",version:HWe},globalSetting:P.getFieldsValue()}),loadFlowJson:(G,J)=>{if(!G)return!0;if(!u)throw new Error("React Flow instance is not ready yet.");return q(G,J),!0},moveToNode:G=>{z(G)},toggleGlobalSetting:()=>{N()},toggleResourceCMS:()=>{O()},useFlowChange:(G,J)=>{B.current=J?G:null},instanceId:o})),x.useEffect(()=>(u&&e.onReady&&e.onReady(!0),()=>{e.onReady&&e.onReady(!1)}),[u]),_b(()=>{L(C)},[C]);const H=x.useCallback(G=>{d(G)},[]),W=G=>{var J;(J=B.current)==null||J.call(B,void 0,G),M()},K=x.useCallback((G,J)=>{if(!(J!=null&&J.fromNode))return;const{clientX:Y,clientY:te}=G,re=f({x:Y,y:te}),X=a.find(Z=>{const{x:oe,y:ne}=Z.position,{width:de=0,height:ue=0}=Z.measured;return re.x>=oe&&re.x<=oe+de&&re.y>=ne&&re.y<=ne+ue});if(X)return S(),c(Z=>dA({source:J.fromNode.id,target:X.id,sourceHandle:J.handleId,type:n==="autocall"?"autoCallButton":"autoFlowButton"},Z))},[a,f,c,n,S]);return v.jsxs("div",{className:CHe,children:[v.jsx("div",{className:AHe,children:v.jsx("div",{className:wHe,ref:r,children:v.jsxs(tse,{nodes:a,edges:l,nodeTypes:pG,edgeTypes:bHe,onNodesChange:R,onEdgesChange:Q,isValidConnection:b,onConnect:D,onConnectEnd:K,onInit:H,onDrop:V,onDragOver:j,onNodeDragStop:()=>{y()},connectionMode:gu.Strict,style:{backgroundColor:"#F6F9FF"},...w,children:[v.jsx(PRe,{}),v.jsx(Pse,{nodeColor:mC,pannable:!0,zoomable:!0,maskColor:"#F7F7F7",nodeStrokeWidth:4,nodeStrokeColor:G=>{if(!mC(G))return"transparent";const J=mC(G);return J.startsWith("linear-gradient")?J:Vo(J).darken(.25).hex()},nodeBorderRadius:12,className:SHe}),i==="edit"?n==="autocall"?v.jsx(uWe,{}):v.jsx(fWe,{}):null]})})}),v.jsx(tb,{title:"Cài đặt kịch bản",open:E,extra:v.jsxs(Bn,{children:[v.jsx(wt,{onClick:M,children:"Huỷ"}),v.jsx(wt,{type:"primary",onClick:P.submit,icon:v.jsx(_F,{}),children:"Lưu cài đặt"})]}),width:800,onClose:M,className:EHe,children:v.jsx(ge,{form:P,name:"form-global-setting",onFinish:W,initialValues:{voice_choice:Fh.BOT,speed_bot_voice:1,volume_bot_voice:1},children:v.jsx(X0,{rootClassName:xHe,expandIconPosition:"right",items:QWe,bordered:!1,defaultActiveKey:["1"]})})}),v.jsx(Tr,{title:"Tài nguyên",open:$,onCancel:T,cancelText:"Đóng",width:1200,centered:!0,destroyOnHidden:!0,children:v.jsx(VWe,{})})]})}),qWe=x.forwardRef((e,t)=>{const{AUTOFLOW_ID:n,CALLBOTSCENARIO_ID:r}=e.context,o=e.type==="autoflow"&&!n,i=e.type==="autocall"&&!r;if(o||i){const a=o?"Missing AutoFlow ID":"Missing CallBotScenario ID";return v.jsx(ot,{justify:"center",align:"center",style:{height:"100%"},children:v.jsx(Kf,{status:"error",title:a})})}return v.jsx("section",{className:"scripts-editor-global",children:v.jsx(YZ,{cache:RWe,hashPriority:"high",children:v.jsx(Yi,{theme:{token:{colorPrimary:xn.common.primary},components:{Button:{primaryShadow:"unset"}}},prefixCls:Ti,iconPrefixCls:VIe,children:v.jsx(bV,{...e,BLOCKS_ENABLED:e.BLOCKS_ENABLED||(e.type==="autocall"?gG:mG),instanceId:e.instanceId||KIe(),children:v.jsx(vee,{client:zIe,children:v.jsx(Rje,{children:v.jsx(eM,{children:v.jsx(Hje,{children:v.jsx(f8e,{children:v.jsx(KWe,{ref:t,onAlertsChange:e.onAlertsChange,type:e.type,onReady:e.onReady})})})})})})})})})})});hn.AUTO_CONNECT_BLOCKS=yG,hn.BlockType=st,hn.DEFAULT_AUTOFLOW_SIDEBAR_BUTTONS=mG,hn.DEFAULT_CALLBOT_SIDEBAR_BUTTONS=gG,hn.INTENTS=xl,hn.InstanceContextProvider=bV,hn.LISTEN_TYPE=El,hn.SPEAK_TYPE=Ao,hn.ScriptEditor=qWe,hn.TRANSFER_TYPE=ss,hn.autoCallSidebarButtons=vC,hn.autoFlowSidebarButtons=m6,hn.eventBus=X5,hn.getNodeColor=mC,hn.iconColors=Dc,hn.initialData=Vg,hn.initialEdges=wz,hn.initialNodeProps=Hg,hn.initialNodes=Az,hn.initialTitles=rh,hn.nodeTypes=pG,hn.useAlert=ra,hn.useAlerts=i5,hn.useEvent=Z5,hn.useInstanceContext=Zn,hn.useInstanceId=yV,Object.defineProperty(hn,Symbol.toStringTag,{value:"Module"})});
|
|
@@ -26,9 +26,9 @@ export declare enum MONTHLY_DAY_TYPES {
|
|
|
26
26
|
CUSTOM = "CUSTOM"
|
|
27
27
|
}
|
|
28
28
|
export declare enum INTERVAL_UNITS {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
MINUTE = "MINUTE",
|
|
30
|
+
HOUR = "HOUR",
|
|
31
|
+
DAY = "DAY"
|
|
32
32
|
}
|
|
33
33
|
export declare const ScheduleTypeLabel: {
|
|
34
34
|
DAILY: string;
|
|
@@ -65,9 +65,9 @@ export declare const MonthlyDayTypesLabel: {
|
|
|
65
65
|
};
|
|
66
66
|
export declare const MonthlyDayTypesList: MONTHLY_DAY_TYPES[];
|
|
67
67
|
export declare const IntervalUnitsLabel: {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
MINUTE: string;
|
|
69
|
+
HOUR: string;
|
|
70
|
+
DAY: string;
|
|
71
71
|
};
|
|
72
72
|
export declare const IntervalUnitsList: INTERVAL_UNITS[];
|
|
73
73
|
export interface ScheduleNodeData extends Record<string, unknown> {
|
|
@@ -82,8 +82,8 @@ export interface ScheduleNodeData extends Record<string, unknown> {
|
|
|
82
82
|
interval_unit?: INTERVAL_UNITS;
|
|
83
83
|
};
|
|
84
84
|
validity: {
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
validity_type: SCHEDULE_VALIDITY_TYPE;
|
|
86
|
+
validity_end_date?: string | dayjs.Dayjs;
|
|
87
87
|
};
|
|
88
88
|
output: {
|
|
89
89
|
object: string;
|