@nocobase/app 2.1.0-alpha.28 → 2.1.0-alpha.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- /*! For license information please see index-44832e66.js.LICENSE.txt */
1
+ /*! For license information please see index-2fa95927.js.LICENSE.txt */
2
2
  export const __rspack_esm_id="8410";export const __rspack_esm_ids=["8410"];export const __webpack_modules__={65359(e,t,l){var o={"./en-nz":["35571","4096"],"./bi.js":["95944","5905"],"./id.js":["87420","557"],"./km":["36101","7318"],"./he.js":["92010","1463"],"./me":["80623","3028"],"./tk":["62544","9065"],"./ko.js":["88003","4784"],"./tet.js":["18928","1481"],"./es-do":["61219","448"],"./ku":["16605","9518"],"./hr":["15811","9248"],"./zh-tw.js":["31349","3526"],"./hy-am":["94309","1846"],"./am.js":["4736","192"],"./en-in":["60912","3977"],"./de-at":["32878","3283"],"./pt-br":["92218","1863"],"./ar-iq.js":["13309","3102"],"./en-sg":["12673","1434"],"./zh":["56007","828"],"./en-il.js":["97690","8087"],"./lo":["73860","7141"],"./tlh":["60321","3978"],"./mi.js":["32739","4672"],"./el":["54072","9217"],"./ur.js":["51750","5819"],"./sq":["95977","4930"],"./pa-in.js":["39252","8053"],"./ar-kw.js":["79865","242"],"./fr-ca.js":["86290","4223"],"./de-ch.js":["13672","1329"],"./ru":["62796","6093"],"./eo.js":["33713","7386"],"./nb":["7205","630"],"./br":["72745","1586"],"./fo":["17674","791"],"./zh.js":["56007","828"],"./vi":["96098","8269"],"./fr-ch.js":["73433","5122"],"./ms-my":["26400","8473"],"./es-pr":["3532","9021"],"./bo.js":["59294","5123"],"./ht.js":["8809","4594"],"./lo.js":["73860","7141"],"./my.js":["46803","8480"],"./et":["4288","5881"],"./br.js":["72745","1586"],"./gu":["57409","474"],"./it-ch":["19286","1179"],"./sv-fi":["9160","9953"],"./ne.js":["40880","553"],"./zh-cn.js":["16033"],"./gom-latn.js":["78660","7669"],"./bg.js":["39990","1979"],"./mr.js":["46462","5459"],"./cv.js":["4780","5933"],"./lt.js":["34485","406"],"./pt":["72369","9578"],"./th.js":["47081","2258"],"./cs.js":["9751","4076"],"./es.js":["47317","70"],"./bn.js":["92509","2110"],"./ar-tn":["54405","6870"],"./mi":["32739","4672"],"./sr.js":["45616","3641"],"./tr":["4895","5108"],"./bn-bd":["64608","6345"],"./fa.js":["90292","7413"],"./it":["33900","1469"],"./nl":["69423","8676"],"./zh-hk":["87741","2622"],"./fo.js":["17674","791"],"./bs.js":["25530","8295"],"./ja.js":["50952","4801"],"./my":["46803","8480"],"./es-do.js":["61219","448"],"./gl":["33562","7095"],"./nl-be.js":["60465","6346"],"./en-ca.js":["21995","4456"],"./tzm-latn.js":["58804","2613"],"./types.d.ts":["69224","929"],"./ru.js":["62796","6093"],"./sq.js":["95977","4930"],"./cv":["4780","5933"],"./km.js":["36101","7318"],"./fa":["90292","7413"],"./cs":["9751","4076"],"./ms":["79677","2446"],"./types.d":["69224","929"],"./ca":["25993","9170"],"./tr.js":["4895","5108"],"./x-pseudo":["5760","8217"],"./tzm-latn":["58804","2613"],"./kn":["6364","93"],"./jv":["77741","4686"],"./ms-my.js":["26400","8473"],"./ht":["8809","4594"],"./be":["51532","8349"],"./gd":["68418","3039"],"./en-au":["59881","5861"],"./ka":["46481","9274"],"./ka.js":["46481","9274"],"./ur":["51750","5819"],"./sv.js":["21340","3309"],"./zh-cn":["16033"],"./pl.js":["63225","6914"],"./hi":["52830","3859"],"./ug-cn":["79911","3260"],"./ar-kw":["79865","242"],"./dv.js":["82187","5640"],"./id":["87420","557"],"./dv":["82187","5640"],"./vi.js":["96098","8269"],"./de-ch":["13672","1329"],"./en-in.js":["60912","3977"],"./es-pr.js":["3532","9021"],"./es-us.js":["32498","335"],"./ar-iq":["13309","3102"],"./fi.js":["89964","9565"],"./ca.js":["25993","9170"],"./ms.js":["79677","2446"],"./zh-tw":["31349","3526"],"./bs":["25530","8295"],"./rw.js":["35414","9592"],"./fy":["59836","2301"],"./uz-latn":["80950","8635"],"./mt.js":["99464","6241"],"./fr.js":["813","6062"],"./hu":["38298","183"],"./lv.js":["76467","8624"],"./sr-cyrl.js":["27439","3396"],"./tzl":["3187","896"],"./mn":["12698","8631"],"./pa-in":["39252","8053"],"./nl-be":["60465","6346"],"./kk":["11335","300"],"./en-tt":["2619","7608"],"./ar-ly.js":["85592","2913"],"./hr.js":["15811","9248"],"./kk.js":["11335","300"],"./ar":["2338","5791"],"./ar-dz.js":["48361","2322"],"./ar-sa":["40539","1848"],"./nl.js":["69423","8676"],"./cy":["95681","5757"],"./en-ie":["17329","58"],"./lb.js":["88615","8252"],"./ar-ly":["85592","2913"],"./de.js":["50494","7507"],"./am":["4736","192"],"./lv":["76467","8624"],"./tg":["15012","2565"],"./de-at.js":["32878","3283"],"./sl":["39998","4195"],"./tg.js":["15012","2565"],"./ky.js":["34457","3458"],"./kn.js":["6364","93"],"./bo":["59294","5123"],"./da":["42706","4767"],"./ss.js":["52487","492"],"./uz":["54734","7555"],"./fr-ch":["73433","5122"],"./sk":["46847","6660"],"./hu.js":["38298","183"],"./sr":["45616","3641"],"./he":["92010","1463"],"./uk.js":["34173","2270"],"./es-mx":["64719","9204"],"./se.js":["55285","8294"],"./oc-lnc":["70225","5642"],"./pt-br.js":["92218","1863"],"./rw":["35414","9592"],"./ar-sa.js":["40539","1848"],"./nb.js":["7205","630"],"./fr-ca":["86290","4223"],"./hi.js":["52830","3859"],"./gl.js":["33562","7095"],"./en-ie.js":["17329","58"],"./me.js":["80623","3028"],"./fy.js":["59836","2301"],"./ar.js":["2338","5791"],"./az":["51130","9847"],"./lt":["34485","406"],"./en":["65826","5087"],"./ro.js":["24334","5139"],"./sw":["2979","9584"],"./te.js":["87406","4419"],"./tl-ph.js":["78142","1667"],"./es-mx.js":["64719","9204"],"./ky":["34457","3458"],"./it.js":["33900","1469"],"./zh-hk.js":["87741","2622"],"./da.js":["42706","4767"],"./te":["87406","4419"],"./mt":["99464","6241"],"./lb":["88615","8252"],"./uz-latn.js":["80950","8635"],"./ml.js":["75376","8729"],"./en-sg.js":["12673","1434"],"./uz.js":["54734","7555"],"./tzm.js":["95084","1101"],"./tet":["18928","1481"],"./oc-lnc.js":["70225","5642"],"./az.js":["51130","9847"],"./en-au.js":["59881","5861"],"./fr":["813","6062"],"./gd.js":["68418","3039"],"./yo.js":["87933","5870"],"./nn":["23473","5674"],"./bm":["71092","5701"],"./index.d.ts":["41213","9550"],"./sw.js":["2979","9584"],"./af":["65662","3523"],"./en-il":["97690","8087"],"./eu":["94007","1052"],"./et.js":["4288","5881"],"./rn":["34509","2606"],"./se":["55285","8294"],"./sv-fi.js":["9160","9953"],"./gu.js":["57409","474"],"./gom-latn":["78660","7669"],"./pl":["63225","6914"],"./ar-dz":["48361","2322"],"./ar-ma":["81289","1986"],"./eu.js":["94007","1052"],"./ss":["52487","492"],"./tk.js":["62544","9065"],"./es-us":["32498","335"],"./bi":["95944","5905"],"./ug-cn.js":["79911","3260"],"./mn.js":["12698","8631"],"./pt.js":["72369","9578"],"./cy.js":["95681","5757"],"./mr":["46462","5459"],"./ga.js":["54061","3646"],"./ko":["88003","4784"],"./ku.js":["16605","9518"],"./af.js":["65662","3523"],"./hy-am.js":["94309","1846"],"./es":["47317","70"],"./ml":["75376","8729"],"./en-ca":["21995","4456"],"./bn":["92509","2110"],"./ga":["54061","3646"],"./is.js":["15513","5506"],"./sd.js":["63222","1675"],"./sl.js":["39998","4195"],"./tlh.js":["60321","3978"],"./tl-ph":["78142","1667"],"./uk":["34173","2270"],"./x-pseudo.js":["5760","8217"],"./is":["15513","5506"],"./jv.js":["77741","4686"],"./el.js":["54072","9217"],"./fi":["89964","9565"],"./bn-bd.js":["64608","6345"],"./en-gb":["72026","8759"],"./en-gb.js":["72026","8759"],"./mk":["75877","4358"],"./ne":["40880","553"],"./ro":["24334","5139"],"./mk.js":["75877","4358"],"./si":["65665","3898"],"./tzm":["95084","1101"],"./be.js":["51532","8349"],"./de":["50494","7507"],"./rn.js":["34509","2606"],"./si.js":["65665","3898"],"./yo":["87933","5870"],"./bg":["39990","1979"],"./en.js":["65826","5087"],"./sv":["21340","3309"],"./th":["47081","2258"],"./bm.js":["71092","5701"],"./nn.js":["23473","5674"],"./ar-ma.js":["81289","1986"],"./index.d":["41213","9550"],"./ja":["50952","4801"],"./ta.js":["77250","1887"],"./ar-tn.js":["54405","6870"],"./sd":["63222","1675"],"./sk.js":["46847","6660"],"./tzl.js":["3187","896"],"./en-nz.js":["35571","4096"],"./eo":["33713","7386"],"./ta":["77250","1887"],"./en-tt.js":["2619","7608"],"./it-ch.js":["19286","1179"],"./sr-cyrl":["27439","3396"]};function n(e){if(!l.o(o,e))return Promise.resolve().then(function(){var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t});var t=o[e],n=t[0];return Promise.all(t.slice(1).map(l.e)).then(function(){return l.t(n,23)})}n.keys=()=>Object.keys(o),n.id=65359,e.exports=n},35358(e,t,l){var o={"./af":"25177","./af.js":"25177","./ar":"61509","./ar-dz":"41488","./ar-dz.js":"41488","./ar-kw":"58676","./ar-kw.js":"58676","./ar-ly":"42353","./ar-ly.js":"42353","./ar-ma":"24496","./ar-ma.js":"24496","./ar-sa":"82682","./ar-sa.js":"82682","./ar-tn":"89756","./ar-tn.js":"89756","./ar.js":"61509","./az":"95533","./az.js":"95533","./be":"28959","./be.js":"28959","./bg":"47777","./bg.js":"47777","./bm":"54903","./bm.js":"54903","./bn":"61290","./bn-bd":"17357","./bn-bd.js":"17357","./bn.js":"61290","./bo":"31545","./bo.js":"31545","./br":"11470","./br.js":"11470","./bs":"44429","./bs.js":"44429","./ca":"7306","./ca.js":"7306","./cs":"56464","./cs.js":"56464","./cv":"73635","./cv.js":"73635","./cy":"64226","./cy.js":"64226","./da":"93601","./da.js":"93601","./de":"77853","./de-at":"26111","./de-at.js":"26111","./de-ch":"54697","./de-ch.js":"54697","./de.js":"77853","./dv":"60708","./dv.js":"60708","./el":"54691","./el.js":"54691","./en-au":"53872","./en-au.js":"53872","./en-ca":"28298","./en-ca.js":"28298","./en-gb":"56195","./en-gb.js":"56195","./en-ie":"66584","./en-ie.js":"66584","./en-il":"65543","./en-il.js":"65543","./en-in":"9033","./en-in.js":"9033","./en-nz":"79402","./en-nz.js":"79402","./en-sg":"43004","./en-sg.js":"43004","./eo":"32934","./eo.js":"32934","./es":"97650","./es-do":"20838","./es-do.js":"20838","./es-mx":"17730","./es-mx.js":"17730","./es-us":"56575","./es-us.js":"56575","./es.js":"97650","./et":"3035","./et.js":"3035","./eu":"3508","./eu.js":"3508","./fa":"119","./fa.js":"119","./fi":"90527","./fi.js":"90527","./fil":"95995","./fil.js":"95995","./fo":"52477","./fo.js":"52477","./fr":"85498","./fr-ca":"26435","./fr-ca.js":"26435","./fr-ch":"37892","./fr-ch.js":"37892","./fr.js":"85498","./fy":"37071","./fy.js":"37071","./ga":"41734","./ga.js":"41734","./gd":"70217","./gd.js":"70217","./gl":"77329","./gl.js":"77329","./gom-deva":"32124","./gom-deva.js":"32124","./gom-latn":"93383","./gom-latn.js":"93383","./gu":"95050","./gu.js":"95050","./he":"11713","./he.js":"11713","./hi":"43861","./hi.js":"43861","./hr":"26308","./hr.js":"26308","./hu":"90609","./hu.js":"90609","./hy-am":"17160","./hy-am.js":"17160","./id":"74063","./id.js":"74063","./is":"89374","./is.js":"89374","./it":"88383","./it-ch":"21827","./it-ch.js":"21827","./it.js":"88383","./ja":"23827","./ja.js":"23827","./jv":"89722","./jv.js":"89722","./ka":"41794","./ka.js":"41794","./kk":"27088","./kk.js":"27088","./km":"96870","./km.js":"96870","./kn":"84451","./kn.js":"84451","./ko":"63164","./ko.js":"63164","./ku":"98174","./ku.js":"98174","./ky":"78474","./ky.js":"78474","./lb":"79680","./lb.js":"79680","./lo":"15867","./lo.js":"15867","./lt":"45766","./lt.js":"45766","./lv":"69532","./lv.js":"69532","./me":"58076","./me.js":"58076","./mi":"41848","./mi.js":"41848","./mk":"30306","./mk.js":"30306","./ml":"73739","./ml.js":"73739","./mn":"99053","./mn.js":"99053","./mr":"86169","./mr.js":"86169","./ms":"73386","./ms-my":"92297","./ms-my.js":"92297","./ms.js":"73386","./mt":"77075","./mt.js":"77075","./my":"72264","./my.js":"72264","./nb":"22274","./nb.js":"22274","./ne":"8235","./ne.js":"8235","./nl":"92572","./nl-be":"43784","./nl-be.js":"43784","./nl.js":"92572","./nn":"54566","./nn.js":"54566","./oc-lnc":"69330","./oc-lnc.js":"69330","./pa-in":"29849","./pa-in.js":"29849","./pl":"94418","./pl.js":"94418","./pt":"79834","./pt-br":"48303","./pt-br.js":"48303","./pt.js":"79834","./ro":"24457","./ro.js":"24457","./ru":"82271","./ru.js":"82271","./sd":"1221","./sd.js":"1221","./se":"33478","./se.js":"33478","./si":"17538","./si.js":"17538","./sk":"5784","./sk.js":"5784","./sl":"46637","./sl.js":"46637","./sq":"86794","./sq.js":"86794","./sr":"45719","./sr-cyrl":"3322","./sr-cyrl.js":"3322","./sr.js":"45719","./ss":"56000","./ss.js":"56000","./sv":"41011","./sv.js":"41011","./sw":"40748","./sw.js":"40748","./ta":"11025","./ta.js":"11025","./te":"11885","./te.js":"11885","./tet":"28861","./tet.js":"28861","./tg":"86571","./tg.js":"86571","./th":"55802","./th.js":"55802","./tk":"59527","./tk.js":"59527","./tl-ph":"29231","./tl-ph.js":"29231","./tlh":"31052","./tlh.js":"31052","./tr":"85096","./tr.js":"85096","./tzl":"79846","./tzl.js":"79846","./tzm":"81765","./tzm-latn":"97711","./tzm-latn.js":"97711","./tzm.js":"81765","./ug-cn":"48414","./ug-cn.js":"48414","./uk":"16618","./uk.js":"16618","./ur":"57777","./ur.js":"57777","./uz":"57609","./uz-latn":"72475","./uz-latn.js":"72475","./uz.js":"57609","./vi":"21135","./vi.js":"21135","./x-pseudo":"64051","./x-pseudo.js":"64051","./yo":"82218","./yo.js":"82218","./zh-cn":"52648","./zh-cn.js":"52648","./zh-hk":"1632","./zh-hk.js":"1632","./zh-mo":"31541","./zh-mo.js":"31541","./zh-tw":"50304","./zh-tw.js":"50304"};function n(e){return l(r(e))}function r(e){if(!l.o(o,e)){var t=Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return o[e]}n.keys=function(){return Object.keys(o)},n.resolve=r,e.exports=n,n.id=35358},56777(e,t,l){var o=l(65970);function n(e){return Promise.resolve(null)}let r="main",i='{{t("Main")}}',a={basic:{label:'{{t("Basic")}}',order:1},choices:{label:'{{t("Choices")}}',order:20},media:{label:'{{t("Media")}}',order:40},datetime:{label:'{{t("Date & Time")}}',order:80},relation:{label:'{{t("Relation")}}',order:100},advanced:{label:'{{t("Advanced type")}}',order:200},systemInfo:{label:'{{t("System info")}}',order:400},others:{label:'{{t("Others")}}',order:800}},s=[o.CheckboxFieldInterface,o.CheckboxGroupFieldInterface,o.CollectionSelectFieldInterface,o.ColorFieldInterface,o.CreatedAtFieldInterface,o.CreatedByFieldInterface,o.DatetimeFieldInterface,o.EmailFieldInterface,o.IconFieldInterface,o.IdFieldInterface,o.InputFieldInterface,o.IntegerFieldInterface,o.JsonFieldInterface,o.LinkToFieldInterface,o.M2MFieldInterface,o.M2OFieldInterface,o.MarkdownFieldInterface,o.MultipleSelectFieldInterface,o.NumberFieldInterface,o.O2MFieldInterface,o.O2OFieldInterface,o.OHOFieldInterface,o.OBOFieldInterface,o.PasswordFieldInterface,o.PercentFieldInterface,o.PhoneFieldInterface,o.RadioGroupFieldInterface,o.RichTextFieldInterface,o.SelectFieldInterface,o.SnowflakeIdFieldInterface,o.SubTableFieldInterface,o.TableoidFieldInterface,o.TextareaFieldInterface,o.TimeFieldInterface,o.UpdatedAtFieldInterface,o.UpdatedByFieldInterface,o.UrlFieldInterface,o.UUIDFieldInterface,o.NanoidFieldInterface,o.UnixTimestampFieldInterface,o.DateFieldInterface,o.DatetimeNoTzFieldInterface];class d extends o.Plugin{async beforeLoad(){this.app.dataSourceManager.upsertDataSource({key:r,displayName:i}),this.app.dataSourceManager.addFieldInterfaces(s),this.app.dataSourceManager.addFieldInterfaceGroups(a),this.app.dataSourceManager.registerLoader(r,async e=>{var t;let{manager:l}=e,o=l.requester||this.app.apiClient.request.bind(this.app.apiClient),n=await o({resource:"collections",action:"listMeta"});return{collections:(null==n||null==(t=n.data)?void 0:t.data)||[]}})}}var u=l(65606);function c(e){let t=Math.floor(Math.abs(e)),l=Math.abs(e%1*60);return(e>=0?"+":"-")+(t<10?"0":"")+t+":"+(l<10?"0":"")+l}let p=()=>c(-(new Date().getTimezoneOffset()/60));function h(e){let t=e.getPublicPath(),l=`^${t}apps/([^/]*)/`,o=location.pathname.match(new RegExp(l));return null==o?void 0:o[0]}function m(e){let t=e.getPublicPath(),l=`^${t}_app/([^/]*)/`,o=location.pathname.match(new RegExp(l));return null==o?void 0:o[0]}class f extends o.Plugin{getHostname(){var e,t;if(u.env.API_BASE_URL)try{return new URL(u.env.API_BASE_URL).hostname}catch(e){}return null==(t=window)||null==(e=t.location)?void 0:e.hostname}async afterAdd(){this.router.setType("browser"),this.router.setBasename(h(this.app)||m(this.app)||this.app.getPublicPath()),this.app.apiClient.axios.interceptors.request.use(e=>(e.headers["X-Hostname"]=this.getHostname(),e.headers["X-Timezone"]=p(),e)),await this.app.pm.add(d,{name:"builtin-collection-v2"}),await this.app.pm.add(o.NocoBaseBuildInPluginV2)}}function g(e,t){if(!e)return t;let l=e.trim();return l.startsWith("/")||(l=`/${l}`),l.endsWith("/")||(l=`${l}/`),l}function v(){let e="/v2/",t=window.location.pathname,l=t.indexOf(e);return l>=0?g(t.slice(0,l),"/"):"/"}function y(){let e=window.__nocobase_public_path__;if(e)return g(e.replace(/\/v2\/$/,"/"),"/");let t="/v2/";return t?g(t.replace(/\/v2\/$/,"/"),"/"):v()}function b(){return g(`${y().replace(/\/$/,"")}/v2/`,"/v2/")}function x(e){return"boolean"==typeof e?e:"true"===String(e||"").toLowerCase()}function w(e){return"sessionStorage"===e||"memory"===e||"localStorage"===e?e:"localStorage"}y();let S=b(),M=new o.Application({publicPath:S,apiClient:{shareToken:x(window.__nocobase_api_client_share_token__||"false"),storageType:w(window.__nocobase_api_client_storage_type__||"localStorage"),storagePrefix:window.__nocobase_api_client_storage_prefix__||"NOCOBASE_",baseURL:window.__nocobase_api_base_url__||"/api/"},ws:{url:window.__nocobase_ws_url__||"",basename:window.__nocobase_ws_path__||"/ws"},loadRemotePlugins:!0,devDynamicImport:n,plugins:[f]});window.__nocobase_v2_app__=M,M.mount("#root")},8643(e,t,l){l.d(t,{D:()=>r,k:()=>n});var o=l(96540);let n=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.keys(e).sort((t,l)=>{var o,n;return(null==(o=e[t])?void 0:o.order)-(null==(n=e[l])?void 0:n.order)})},r=(0,o.createContext)({items:{}});r.displayName="PinnedPluginListContext"},96204(e,t,l){l.d(t,{mz:()=>u,tJ:()=>d,w$:()=>a,wq:()=>s});var o=l(50467),n=l(96540),r=l(47767),i=l(45895);let a="admin.settings.",s="/admin/settings/",d="pm.";class u{clearCache(){this.cachedList={}}setAclSnippets(e){this.aclSnippets=e,this.clearCache()}getAclSnippet(e){let t=this.menus[e]||this.pages[e];return(null==t?void 0:t.aclSnippet)??`${d}${e}`}getRouteName(e){return`${a}${e}`}getRoutePath(e){let{menuName:t,pageName:l}=this.parseName(e),o=`${s}${t}`;return l&&"index"!==l?`${o}/${l}`:o}addMenuItem(e){this.assertMenuKey(e.key,"key");let t=e.key,l={...this.menus[t],...e,key:e.key,name:t,Component:r.Outlet};this.assertPathConflict(t,this.getRoutePath(t)),this.menus[t]=l,this.syncMenuRoute(l),this.clearCache()}addPageTabItem(e){if(this.assertMenuKey(e.menuKey,"menuKey"),!this.menus[e.menuKey])throw Error(`Plugin settings menuKey does not exist: menuKey=${e.menuKey}`);let t=this.getPageName(e.menuKey,e.key),l={...this.pages[t],...e,menuKey:e.menuKey,key:e.key,name:t};this.assertIndexConflict(l),this.assertPathConflict(t,this.getRoutePath(t)),this.pages[t]=l,this.syncPageRoute(l),this.clearCache()}remove(e){let t=this.menus[e],l=this.pages[e];if(!t&&!l)return;let o=[];if(t){let t=this.getPageNamesByMenu(e);delete this.menus[e],o.push(this.getRouteName(e)),t.forEach(e=>{delete this.pages[e],o.push(this.getRouteName(e))})}else l&&(delete this.pages[e],o.push(this.getRouteName(e)));o.forEach(e=>{this.app.router.remove(e)}),this.clearCache()}hasAuth(e){let t=this.getAclSnippet("*");if(t&&this.aclSnippets.includes(`!${t}`))return!1;let l=this.getAclSnippet(e);return!l||!1===this.aclSnippets.includes(`!${l}`)}has(e){return!!(this.menus[e]||this.pages[e])}get(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],l=this.buildSnapshot(e,{filterAuth:t,includeHidden:!0});return l?this.cloneSnapshot(l):null}getList(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],t=JSON.stringify({filterAuth:e,includeHidden:!0});return this.cachedList[t]||(this.cachedList[t]=this.sortMenuNames().map(t=>this.buildSnapshot(t,{filterAuth:e,includeHidden:!0})).filter(Boolean)),this.cachedList[t].map(e=>this.cloneSnapshot(e))}getAclSnippets(){return[...this.sortMenuNames(),...this.sortPageNames(Object.keys(this.pages))].map(e=>this.getAclSnippet(e)).filter(Boolean)}renderIcon(e){return e?"string"==typeof e?(0,n.createElement)(i.In,{type:e}):e:null}buildSnapshot(e,t){let l=this.menus[e];if(l)return this.buildMenuSnapshot(l,t);let o=this.pages[e];return o?this.buildPageSnapshot(o,t):null}buildMenuSnapshot(e,t){let l=this.hasAuth(e.name),o=this.sortPageNames(this.getPageNamesByMenu(e.key)).map(e=>this.buildPageSnapshot(this.pages[e],t)).filter(Boolean),n=l||o.some(e=>e.isAllow);if(t.filterAuth&&0===o.length||!t.includeHidden&&e.hidden)return null;let{title:r,icon:i,aclSnippet:a,key:s,name:d,Component:u,...c}=e;return{...c,key:d,menuKey:s,pluginKey:d,name:d,title:r,label:r,icon:this.renderIcon(i),path:this.getRoutePath(d),sort:e.sort,isAllow:n,isTopLevel:!0,topLevelName:d,aclSnippet:this.getAclSnippet(d),Component:u,children:o.length?o:void 0}}buildPageSnapshot(e,t){let l=this.hasAuth(e.name);if(t.filterAuth&&!l||!t.includeHidden&&e.hidden)return null;let{title:o,aclSnippet:n,key:r,menuKey:i,name:a,...s}=e;return{...s,key:a,menuKey:i,pageKey:r,pluginKey:i,name:a,title:o,label:o,path:this.getRoutePath(a),sort:e.sort,isAllow:l,isTopLevel:!1,topLevelName:i,aclSnippet:this.getAclSnippet(a),children:void 0}}cloneSnapshot(e){var t;return{...e,children:null==(t=e.children)?void 0:t.map(e=>this.cloneSnapshot(e))}}sortMenuNames(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Object.keys(this.menus);return[...e].sort((e,t)=>{let l=this.menus[e],o=this.menus[t],n=(null==l?void 0:l.sort)||0,r=(null==o?void 0:o.sort)||0;return n!==r?n-r:e.localeCompare(t)})}sortPageNames(e){return[...e].sort((e,t)=>{let l=this.pages[e],o=this.pages[t],n=(null==l?void 0:l.sort)||0,r=(null==o?void 0:o.sort)||0;return n!==r?n-r:e.localeCompare(t)})}getPageNamesByMenu(e){return Object.keys(this.pages).filter(t=>this.pages[t].menuKey===e)}getPageName(e,t){return`${e}.${t}`}parseName(e){let t=e.indexOf(".");return t<0?{menuName:e,pageName:void 0}:{menuName:e.slice(0,t),pageName:e.slice(t+1)}}syncMenuRoute(e){this.app.router.add(this.getRouteName(e.name),{path:e.key,Component:r.Outlet})}syncPageRoute(e){let t=e.Component||r.Outlet;"index"===e.key?this.app.router.add(this.getRouteName(e.name),{index:!0,Component:t,componentLoader:e.componentLoader}):this.app.router.add(this.getRouteName(e.name),{path:e.key,Component:t,componentLoader:e.componentLoader})}assertIndexConflict(e){if("index"!==e.key)return;let t=this.getPageNamesByMenu(e.menuKey).find(e=>"index"===this.pages[e].key);if(t&&t!==e.name)throw Error(`Plugin settings page index conflict: menuKey=${e.menuKey}, key=${e.key}, existed=${t}`)}assertPathConflict(e,t){let l=[...this.sortMenuNames().map(e=>({name:e,path:this.getRoutePath(e)})),...this.sortPageNames(Object.keys(this.pages)).map(e=>({name:e,path:this.getRoutePath(e)}))].find(l=>l.path===t&&l.name!==e&&!this.isMenuIndexPair(l.name,e));if(l)throw Error(`Plugin settings path conflict: name=${e}, path=${t}, conflict=${l.name}`)}isMenuIndexPair(e,t){let l=new Set([`${e}.index`,`${t}.index`]);return l.has(t)||l.has(e)}assertMenuKey(e,t){if(e.includes("."))throw Error(`Plugin settings menu key cannot contain ".": ${t}=${e}`)}constructor(e){(0,o._)(this,"menus",{}),(0,o._)(this,"pages",{}),(0,o._)(this,"aclSnippets",[]),(0,o._)(this,"app",void 0),(0,o._)(this,"cachedList",{}),this.app=e}}},88101(e,t,l){l.d(t,{GL:()=>f,N5:()=>m,bq:()=>h,rR:()=>p,uM:()=>y,v6:()=>v,w0:()=>d});var o=l(74848),n=l(95243),r=l(96540),i=l(47767),a=l(36098),s=l(39220);let d=(0,r.createContext)(null);function u(){return(0,n.observable)({data:{},meta:{},setData(e){this.data=e||{}},setMeta(e){this.meta=e||{}}})}function c(e){return e.context.acl||e.context.defineProperty("acl",{value:u()}),e.context.acl}d.displayName="ACLContext";let p=e=>{let{children:t}=e,l=(0,a.n)(),n=(0,i.useLocation)(),u=c(l),[p,h]=(0,r.useState)(!1),m=(0,r.useRef)(n.pathname);m.current=n.pathname;let f=(0,r.useCallback)(async()=>{var e,t,o,n,r,i;if(l.router.isSkippedAuthCheckRoute(m.current))return void h(!1);(null==(e=u.data)?void 0:e.role)||(null==(o=u.data)||null==(t=o.snippets)?void 0:t.length)||h(!0);try{let e=await l.apiClient.request({url:"roles:check",skipNotify:!0,skipAuth:!0}),t=(null==e||null==(n=e.data)?void 0:n.data)||{},o=(null==e||null==(r=e.data)?void 0:r.meta)||{};u.setData(t),u.setMeta(o),l.pluginSettingsManager.setAclSnippets((null==t?void 0:t.snippets)||[]),(null==t?void 0:t.role)!==l.apiClient.auth.role&&l.apiClient.auth.setRole(null==t?void 0:t.role),(0,s.r)((null==t?void 0:t.snippets)||[],!!(null==t?void 0:t.allowAll))("ui.*")||await l.flowEngine.flowSettings.disable()}catch(e){if(401===((null==e||null==(i=e.response)?void 0:i.status)||(null==e?void 0:e.status))){u.setData({}),u.setMeta({}),l.pluginSettingsManager.setAclSnippets([]),l.apiClient.auth.setRole(null);return}console.error(e)}finally{h(!1)}},[u,l]);(0,r.useEffect)(()=>{f()},[f]);let g=(0,r.useMemo)(()=>({loading:p,data:{data:u.data||{},meta:u.meta||{}},refresh:f}),[u.data,u.meta,p,f]);return p?l.renderComponent("AppSpin"):(0,o.jsx)(d.Provider,{value:g,children:t})},h=()=>(0,r.useContext)(d),m=()=>{let e=h(),{allowAll:t}=v();return(0,r.useCallback)(()=>!e||t?Promise.resolve():e.refresh(),[t,e])},f=()=>{var e,t;let l=h();return null==l||null==(t=l.data)||null==(e=t.data)?void 0:e.roleMode},g=()=>{var e,t;let l=h(),o=(null==l||null==(e=l.data)?void 0:e.data)||{},n=(0,r.useCallback)(e=>{var t;let l=e.split(":").pop();return(null==o||null==(t=o.actionAlias)?void 0:t[l||""])||l},[null==o?void 0:o.actionAlias]),i=(0,r.useCallback)(e=>{var t,l;return null==o||null==(l=o.resources)||null==(t=l.includes)?void 0:t.call(l,e)},[null==o?void 0:o.resources]),a=(0,r.useCallback)(e=>{var t,l;let[r]=e.split(":"),i=n(e);return(null==o||null==(t=o.actions)?void 0:t[`${r}:${i}`])||(null==o||null==(l=o.actions)?void 0:l[e])},[null==o?void 0:o.actions,n]),s=(0,r.useCallback)(e=>{var t,l;let r=n(e);return(null==o||null==(l=o.strategy)||null==(t=l.actions)?void 0:t.find(e=>{let[t]=e.split(":");return t===r}))?{}:null},[null==o||null==(t=o.strategy)?void 0:t.actions,n]);return{data:o,getActionAlias:n,inResources:i,getResourceActionParams:a,getStrategyActionParams:s}};function v(){let{data:e,inResources:t,getResourceActionParams:l,getStrategyActionParams:o}=g();return{...e,snippets:(null==e?void 0:e.snippets)||[],parseAction:(0,r.useCallback)(n=>{if(!n)return null;let[r]=n.split(":");return(null==e?void 0:e.allowAll)?{}:t(r)?l(n):o(n)},[null==e?void 0:e.allowAll,l,o,t])}}function y(){let{allowAll:e,snippets:t}=v();return{allowConfigUI:(0,r.useMemo)(()=>(0,s.r)(t||[],!!e),[e,t])("ui.*")}}},39220(e,t,l){l.d(t,{r:()=>r});var o=l(82535),n=l.n(o);let r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],l=n()().add(e||[]);return e=>!e||"*"===e||!!t||l.ignores(e)}},966(e,t,l){l.d(t,{GL:()=>o.GL,K3:()=>r.K,N5:()=>o.N5,bq:()=>o.bq,rN:()=>n.r,rR:()=>o.rR,uM:()=>o.uM,v6:()=>o.v6,w0:()=>o.w0});var o=l(88101),n=l(39220),r=l(94471)},94471(e,t,l){l.d(t,{K:()=>i});var o=l(96540),n=l(88101),r=l(39220);let i=()=>{let{allowAll:e,snippets:t=[]}=(0,n.v6)();return{allow:(0,o.useMemo)(()=>(0,r.r)(t,!!e),[e,t])}}},75251(e,t,l){l.d(t,{BE:()=>k,LQ:()=>A,M4:()=>C,Sx:()=>M,uk:()=>S,vi:()=>F});let o="/v2/";function n(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e?e.startsWith("/")?e:`/${e}`:"/"}function r(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e?e.endsWith("/")?e:`${e}/`:"/"}function i(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.replace(/\/+$/g,"")}function a(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.replace(/^\/+/,"")}function s(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function d(e){return r(n(String(e||"/").trim()||"/"))}function u(e){let t=n(String(e||"/").trim()||"/").replace(/\/{2,}/g,"/");return"/"!==t&&t.endsWith("/")?i(t):t}function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e?e.startsWith("?")?e:`?${e}`:""}function p(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e?e.startsWith("#")?e:`#${e}`:""}function h(e){if("string"!=typeof e)return{pathname:(null==e?void 0:e.pathname)||"/",search:(null==e?void 0:e.search)||"",hash:(null==e?void 0:e.hash)||""};let t=e.indexOf("#"),l=e.indexOf("?"),o=l>=0,n=t>=0,r=o?l:n?t:e.length,i=n?t:e.length;return{pathname:e.slice(0,r)||"/",search:o?e.slice(l,i):"",hash:n?e.slice(t):""}}function m(e,t){if(!t||"/"===t)return e;let l=s(t),o=RegExp(`^${l.replace(/\/?$/,"")}(\\/|$)`);return e.replace(o,"/")||e}function f(e){return d(e.getPublicPath())}function g(e){let t=f(e);return t.endsWith(o)?d(t.slice(0,-o.length)||"/"):d(t.replace(/\/v2\/?$/,"/")||"/")}function v(e){return i(f(e))||"/"}function y(e,t){let l=d(e),o=u(t);return"/"===l?o:"/"===o?i(l)||"/":u(`/${a(l)}/${a(o)}`)}function b(e){let t=u(e);if("/admin"===t)return"/admin";let l=t.split("/").filter(Boolean);if("admin"!==l[0]||l.length<2)return null;let[,o,...n]=l,r=["admin",o],i=0;for(;i<n.length;){let e=n[i];if("tab"===e&&n[i+1]){r.push("tabs",n[i+1]),i+=2;continue}if("view"===e){r.push("popups",...n.slice(i+1)),i=n.length;continue}return null}return u(`/${r.join("/")}`)}function x(e){let t=i(g(e));return`${t}/signin`}function w(e,t){var l,o;let n=u(t);for(let t of[null==(o=e.router)||null==(l=o.getBasename)?void 0:l.call(o),v(e)]){if(!t)continue;let e=u(m(n,t));if(e!==n)return e}return n}function S(e){return y(f(e),"/admin")}function M(e,t){let l=h(t),o=b(w(e,l.pathname||"/"));return o?`${y(g(e),o)}${c(l.search)}${p(l.hash)}`:null}function F(e,t){let l=w(e,(null==t?void 0:t.pathname)||"/"),o=c((null==t?void 0:t.search)||""),n=p((null==t?void 0:t.hash)||"");return`${y(f(e),l)}${o}${n}`}function A(e,t){return`${x(e)}?redirect=${encodeURIComponent(t)}`}function k(e,t,l){let o=A(e,t);if((null==l?void 0:l.replace)===!1){window.location.href=o;return}window.location.replace(o)}function C(e,t){let l;if(!e)return null;try{l=new URL(e,window.location.origin)}catch(e){return null}return l.origin===window.location.origin&&new Set(["/signin",x(t)]).has(l.pathname)?l.toString():null}},39431(e,t,l){let o;l.d(t,{In:()=>p,K1:()=>c,Pt:()=>s,cE:()=>u,pU:()=>d});var n=l(74848),r=l(81651),i=l(16933),a=l(60152);l(96540);let s=new Map;function d(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:o;s.set(e.toLowerCase(),t)}function u(e){return!!e&&s.has(e.toLowerCase())}function c(e){Object.keys(e).forEach(t=>{d(t,e[t])})}Object.keys(r).forEach(e=>{d(e,r[e])});let p=e=>{let{type:t="",component:l,...r}=e;if(l)return(0,n.jsx)(i.A,{component:l,...r});if(t&&s.has(t.toLowerCase())){let e=s.get(t.toLowerCase());return(0,n.jsx)(e,{...r})}return t&&o?(0,n.jsx)(o,{type:t}):null};p.createFromIconfontCN=e=>{o=(0,a.A)(e)},p.register=e=>{c(e)}},45895(e,t,l){l.d(t,{tp:()=>b,uV:()=>v,ct:()=>w,cE:()=>S.cE,K1:()=>S.K1,bM:()=>x,In:()=>S.In,PK:()=>M,gv:()=>f,be:()=>y,pU:()=>S.pU,Pt:()=>S.Pt});var o=l(74848),n=l(99576),r=l(68870),i=l(22803),a=l(40532),s=l(21734),d=l(92275),u=l(71021),c=l(18182),p=l(96540),h=l(18492),m=l(47767);let f=()=>(0,o.jsx)(s.A,{style:{position:"fixed",top:"50%",left:"50%",fontSize:72,transform:"translate(-50%, -50%)"}}),g=e=>{if(e.ws.serverDown)return{status:"error",icon:(0,o.jsx)(n.A,{}),title:"You're offline",subTitle:"Please check the server status or network connection status"};let t=e.error;if(!t)return{};if("APP_NOT_FOUND"===t.code)return{status:"warning",title:"App not found",subTitle:null==t?void 0:t.message};if("APP_WARNING"===t.code)return{status:"warning",title:"App warning",subTitle:null==t?void 0:t.message};if("APP_PREPARING"===t.code)return{status:"info",icon:(0,o.jsx)(r.A,{}),title:"App preparing",subTitle:null==t?void 0:t.message};if("APP_INITIALIZING"===t.code)return{status:"info",icon:(0,o.jsx)(r.A,{}),title:"App initializing",subTitle:null==t?void 0:t.message};if("APP_INITIALIZED"===t.code)return{status:"info",title:"App initialized",subTitle:null==t?void 0:t.message};if(["ENOENT","APP_ERROR","LOAD_ERROR"].includes(t.code))return{status:"error",title:"App error",subTitle:null==t?void 0:t.message};if("APP_NOT_INSTALLED_ERROR"===t.code)return{status:"warning",title:"App not installed",subTitle:null==t?void 0:t.message};if("APP_STOPPED"===t.code)return{status:"warning",title:"App stopped",subTitle:null==t?void 0:t.message};if("APP_COMMANDING"===t.code){var l,i;let e={status:"info",icon:(0,o.jsx)(r.A,{}),title:null==t||null==(l=t.command)?void 0:l.name,subTitle:null==t?void 0:t.message},n={start:{title:"App starting"},restart:{title:"App restarting"},install:{title:"App installing"},upgrade:{title:"App upgrading"},"pm.add":{title:"Adding plugin"},"pm.update":{title:"Updating plugin"},"pm.enable":{title:"Enabling plugin"},"pm.disable":{title:"Disabling plugin"},"pm.remove":{title:"Removing plugin"}};return{...e,...(null==t||null==(i=t.command)?void 0:i.name)?n[t.command.name]:{}}}return{status:"warning",title:"App warning",subTitle:null==t?void 0:t.message}},v=(0,a.observer)(e=>{let{app:t,error:l}=e,n=g(t);return(0,o.jsx)("div",{children:(0,o.jsx)(d.Ay,{className:(0,i.AH)`
3
3
  top: 50%;
4
4
  position: absolute;
@@ -219,7 +219,7 @@ export const __rspack_esm_id="8410";export const __rspack_esm_ids=["8410"];expor
219
219
  .ant-btn-default {
220
220
  box-shadow: none;
221
221
  }
222
- `,y={token:{colorSplit:"rgba(255, 255, 255, 0.1)"}},b=u.memo(e=>{let t=(0,p.nm)(),{allow:l}=(0,c.K3)(),n=(0,u.useContext)(m.D),{components:s}=(0,u.useContext)(r.SchemaOptionsContext),b=t.flowEngine.getModelClass("UserCenterTopbarActionModel")?t.flowEngine.getModel(`topbar-action-${g.Bn}`)||t.flowEngine.createModel({use:"UserCenterTopbarActionModel",uid:`topbar-action-${g.Bn}`}):null;return(0,o.jsxs)("div",{className:v,children:[(0,o.jsx)("div",{onClick:e.onClick,children:(0,m.k)(n.items).filter(e=>{var t;return l(null==(t=n.items[e])?void 0:t.snippet)}).map(e=>{var t;let l=null==(t=n.items[e])?void 0:t.component;if(!l)return null;if("string"!=typeof l){let t=l;return(0,o.jsx)(t,{},e)}let r=d()(s,l);return r?(0,o.jsx)(r,{},e):null})}),(0,o.jsx)(i.Ay,{theme:y,children:(0,o.jsx)(a.A,{type:"vertical"})}),(0,o.jsx)(f.Y,{},"help"),b?(0,o.jsx)(h.FlowModelRenderer,{model:b}):null]})});b.displayName="PinnedPluginListLite"},72498(e,t,l){l.d(t,{f:()=>i});var o=l(74848),n=l(4888);l(96540);var r=l(98666);let i=e=>{let{theme:t}=(0,r.my)();return(0,o.jsx)(n.Ay,{theme:{...t,inherit:!1},children:e.children})}},61907(e,t,l){l.d(t,{M:()=>o});let o="admin-layout-model"},9732(e,t,l){l.d(t,{Ju:()=>n,h1:()=>o,o7:()=>i,tY:()=>r});let o="NOCOBASE_V2_FLOW_SETTINGS_ENABLED",n="nocobase:v2:flow-settings-preference-change";function r(){if("u"<typeof window)return!1;try{return"1"===window.localStorage.getItem(o)}catch(e){return console.error("[NocoBase] Failed to read flow settings preference.",e),!1}}function i(e){if("u">typeof window)try{window.localStorage.setItem(o,e?"1":"0"),window.dispatchEvent(new CustomEvent(n,{detail:{enabled:e}}))}catch(e){console.error("[NocoBase] Failed to write flow settings preference.",e)}}},16631(e,t,l){l.d(t,{tS:()=>i.tS,G:()=>a.G,mY:()=>m,Ot:()=>i.Ot,FY:()=>s.FY,o2:()=>a.o2,eL:()=>i.eL,xt:()=>r.x,Qb:()=>a.Qb,jj:()=>i.jj,FW:()=>a.FW,Px:()=>i.Px,Cu:()=>a.Cu,Qt:()=>i.Qt,Mx:()=>d.M,QB:()=>a.QB,Yj:()=>s.Yj,Th:()=>a.Th,ri:()=>i.ri,Ev:()=>a.Ev,qN:()=>a.qN,HW:()=>c.H,_I:()=>a._I,Uc:()=>i.Uc,fC:()=>u.f,t_:()=>n.t,MM:()=>s.MM,B9:()=>i.B9,V6:()=>o.V,xF:()=>i.xF,fi:()=>i.fi,Kg:()=>p.K,B8:()=>i.B8,Tn:()=>i.Tn,y8:()=>a.y8,n8:()=>a.n8,xc:()=>i.xc,pX:()=>n.p,B_:()=>i.B_,A1:()=>r.A,eD:()=>a.eD,ux:()=>i.ux});var o=l(34272),n=l(46991),r=l(69659),i=l(26046),a=l(87207),s=l(92545),d=l(61907),u=l(72498),c=l(40582),p=l(29531),h=l(40532);let m=()=>{let e=(0,h.useFlowEngine)({throwError:!1});if(!e)return{isMobileLayout:!1,setIsMobileLayout:()=>{}};let t=e.getModel(d.M);return t?{isMobileLayout:t.isMobileLayout,setIsMobileLayout:t.setIsMobileLayout.bind(t)}:{isMobileLayout:!1,setIsMobileLayout:()=>{}}}},92545(e,t,l){l.d(t,{FY:()=>u,MM:()=>v,Yj:()=>b});var o=l(75251);l(2077);let n="/v2/",r="[NocoBase] Admin route runtime target:",i={runtimePath:null,navigationMode:"spa",isLegacy:!1};function a(e){let t=`/${String(e||"/").trim()||"/"}`.replace(/\/{2,}/g,"/");return"/"!==t&&t.endsWith("/")?t.replace(/\/+$/g,""):t}function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=a(e||"/");return t.endsWith("/")?t:`${t}/`}function d(e){return s(e.getPublicPath()).endsWith(n)}function u(e,t){let l=a(e),o=t&&"/"!==t?a(t):"";return o?l===o?"/":l.startsWith(`${o}/`)?a(l.slice(o.length)):l:l}function c(e,t){let l=s(e),o=a(t);return"/"===l?o:"/"===o?l.replace(/\/+$/g,"")||"/":a(`${l}${o.slice(1)}`)}function p(e,t){return c(e.getPublicPath(),`/admin/${t}`)}function h(e,t){let l=(null==t?void 0:t.search)?t.search.startsWith("?")?t.search:`?${t.search}`:"",o=(null==t?void 0:t.hash)?t.hash.startsWith("#")?t.hash:`#${t.hash}`:"";return`${e}${l}${o}`}function m(e,t){let l=a(e),o=a(t);return l===o||l.startsWith(`${o}/`)}function f(e,t,l){null==e||e(r,t,l)}function g(e){return!!e&&("tabs"===e.type||!0===e.hideInMenu||!0===e.hidden)}function v(e){if(Array.isArray(e)){for(let t of e)if(!g(t)){if("page"===t.type||"flowPage"===t.type)return t;if("group"===t.type){let e=v(t.children);if(e)return e}}}}function y(e,t){let{app:l,preserveLocationState:n,location:r,log:a=console.warn}=e;if(!t.schemaUid)return f(a,"Missing schemaUid.",t),i;if("flowPage"===t.type)return{runtimePath:p(l,t.schemaUid),navigationMode:"spa",isLegacy:!1};if(!d(l))return{runtimePath:n&&r?h(p(l,t.schemaUid),r):p(l,t.schemaUid),navigationMode:"spa",isLegacy:!1};let s=p(l,t.schemaUid),u=(0,o.Sx)(l,s);if(!u)return f(a,"Failed to resolve legacy runtimePath.",t),i;if(n&&r){if(m(r.pathname,s)){let e=(0,o.Sx)(l,r);if(e)return{runtimePath:e,navigationMode:"document",isLegacy:!0}}return{runtimePath:h(u,r),navigationMode:"document",isLegacy:!0}}return{runtimePath:u,navigationMode:"document",isLegacy:!0}}function b(e){let{route:t,log:l=console.warn}=e;if(!t)return i;if("page"===t.type||"flowPage"===t.type)return y(e,t);if("group"===t.type){let l=v(t.children);return l?b({...e,route:l}):i}return"link"!==t.type&&f(l,"Unsupported route type.",t),i}},40582(e,t,l){l.d(t,{H:()=>n});var o=l(2077);let n=()=>({Component:(0,o.nm)().apps.Component})},27941(e,t,l){l.d(t,{t:()=>v});var o=l(74848),n=l(35710),r=l(16629),i=l(96540),a=l(18492),s=l(51612),d=l(40532);let u=e=>e&&(e.closest(".nb-block-grid")||e.closest(".nb-page-wrapper")||e.closest(".nb-page"))||document.documentElement,c=e=>{if(!e)return 0;let t=e.getBoundingClientRect(),l=window.getComputedStyle(e),o=parseFloat(l.marginTop)||0,n=parseFloat(l.marginBottom)||0;return t.height+o+n},p=e=>{if(!e||e===document.documentElement)return{top:0,bottom:0};let t=window.getComputedStyle(e);return{top:parseFloat(t.paddingTop)||0,bottom:parseFloat(t.paddingBottom)||0}},h=e=>{let t=e.closest(".nb-page");return t?t.querySelector(".ant-page-header")||t.querySelector(".pageHeaderCss"):null},m=e=>{let t=e.querySelector("[data-flow-add-block]");return t?t.parentElement||t:null};function f(e,t){let l=t>0;return e>0?e:l?t:0}let g=e=>{let{height:t,heightMode:l,cardRef:o}=e,[n,r]=(0,i.useState)(),a=(0,d.useFlowContext)(),s=(0,i.useCallback)(()=>{if("fullHeight"!==l||"u"<typeof window)return void r(e=>void 0===e?e:void 0);let e=o.current;if(!e)return;let t=u(e),n=e.getBoundingClientRect(),i=t===document.documentElement?{top:0}:t.getBoundingClientRect(),s=p(t),d=m(t),h=i.top+s.top,g=Math.min(Math.max(0,n.top-h),0),v=s.bottom+a.themeToken.marginBlock;d&&(v=a.themeToken.marginBlock+c(d)+s.bottom);let y=Math.max(0,Math.floor(window.innerHeight-f(h,110)-g-v));r(e=>e===y?e:y)},[l,o]);return((0,i.useLayoutEffect)(()=>{s()},[s]),(0,i.useEffect)(()=>{if("fullHeight"!==l||"u"<typeof window)return;let e=o.current;if(!e||"u"<typeof ResizeObserver)return;let t=u(e),n=h(t),r=m(t),i=new ResizeObserver(()=>s());return i.observe(e),t instanceof HTMLElement&&i.observe(t),n&&i.observe(n),r&&i.observe(r),window.addEventListener("resize",s),()=>{i.disconnect(),window.removeEventListener("resize",s)}},[l,o,s]),"specifyValue"===l)?t:"fullHeight"===l?n:null},v=i.forwardRef((e,t)=>{let{t:l}=(0,a.B)(),{token:d}=n.A.useToken(),{title:u,description:c,children:p,className:h,heightMode:m,...f}=e,v=(0,i.useRef)(null),y=(0,i.useCallback)(e=>{v.current=e,"function"==typeof t?t(e):t&&(t.current=e)},[t]),b=g({...e,cardRef:v}),x=(u||c)&&(0,o.jsxs)("div",{children:[(0,o.jsxs)("span",{children:[" ",u]}),c&&(0,o.jsx)(s.g,{value:c,style:{overflowWrap:"break-word",whiteSpace:"normal",fontWeight:400,color:d.colorTextDescription,borderRadius:"4px"}})]});return(0,o.jsxs)(r.A,{ref:y,title:x,style:{display:"flex",flexDirection:"column",height:b},styles:{body:{flex:1,display:"flex",flexDirection:"column",overflow:"auto"},header:{marginTop:"8px"}},className:h,...f,children:[e.beforeContent,p,e.afterContent]})})},2117(e,t,l){l.d(t,{H:()=>a,b:()=>s});var o=l(74848),n=l(40532);l(96540);var r=l(80512),i=l(96436);let a=(0,n.observer)(e=>{let t=(0,n.useFlowContext)();return(0,o.jsx)(r.I8,{value:e.value||{logic:"$and",items:[]},FilterItem:l=>(0,o.jsx)(r.Ru,{model:t.model,value:l.value,extraMetaTree:e.extraMetaTree}),onChange:e.onChange})}),s=(e,t)=>{let{condition:l={logic:"$and",items:[]}}=t,o=(t,l,o)=>e.app.jsonLogic.apply({[l]:[t,o]});(0,i.evaluateConditions)((0,i.removeInvalidFilterItems)(l),o)||e.exit()}},36869(e,t,l){l.d(t,{S:()=>b,b:()=>g});var o=l(74848),n=l(22803),r=l(74353),i=l.n(r),a=l(18220),s=l(32104),d=l(35710),u=l(84626),c=l(51643),p=l(95725),h=l(96540);let m=i()(),f=(0,n.AH)`
222
+ `,y={token:{colorSplit:"rgba(255, 255, 255, 0.1)"}},b=u.memo(e=>{let t=(0,p.nm)(),{allow:l}=(0,c.K3)(),n=(0,u.useContext)(m.D),{components:s}=(0,u.useContext)(r.SchemaOptionsContext),b=t.flowEngine.getModelClass("UserCenterTopbarActionModel")?t.flowEngine.getModel(`topbar-action-${g.Bn}`)||t.flowEngine.createModel({use:"UserCenterTopbarActionModel",uid:`topbar-action-${g.Bn}`}):null;return(0,o.jsxs)("div",{className:v,children:[(0,o.jsx)("div",{onClick:e.onClick,children:(0,m.k)(n.items).filter(e=>{var t;return l(null==(t=n.items[e])?void 0:t.snippet)}).map(e=>{var t;let l=null==(t=n.items[e])?void 0:t.component;if(!l)return null;if("string"!=typeof l){let t=l;return(0,o.jsx)(t,{},e)}let r=d()(s,l);return r?(0,o.jsx)(r,{},e):null})}),(0,o.jsx)(i.Ay,{theme:y,children:(0,o.jsx)(a.A,{type:"vertical"})}),(0,o.jsx)(f.Y,{},"help"),b?(0,o.jsx)(h.FlowModelRenderer,{model:b}):null]})});b.displayName="PinnedPluginListLite"},72498(e,t,l){l.d(t,{f:()=>i});var o=l(74848),n=l(4888);l(96540);var r=l(98666);let i=e=>{let{theme:t}=(0,r.my)();return(0,o.jsx)(n.Ay,{theme:{...t,inherit:!1},children:e.children})}},61907(e,t,l){l.d(t,{M:()=>o});let o="admin-layout-model"},9732(e,t,l){l.d(t,{Ju:()=>n,h1:()=>o,o7:()=>i,tY:()=>r});let o="NOCOBASE_V2_FLOW_SETTINGS_ENABLED",n="nocobase:v2:flow-settings-preference-change";function r(){if("u"<typeof window)return!1;try{return"1"===window.localStorage.getItem(o)}catch(e){return console.error("[NocoBase] Failed to read flow settings preference.",e),!1}}function i(e){if("u">typeof window)try{window.localStorage.setItem(o,e?"1":"0"),window.dispatchEvent(new CustomEvent(n,{detail:{enabled:e}}))}catch(e){console.error("[NocoBase] Failed to write flow settings preference.",e)}}},16631(e,t,l){l.d(t,{tS:()=>i.tS,G:()=>a.G,mY:()=>m,Ot:()=>i.Ot,FY:()=>s.FY,o2:()=>a.o2,eL:()=>i.eL,xt:()=>r.x,Qb:()=>a.Qb,jj:()=>i.jj,FW:()=>a.FW,Px:()=>i.Px,Cu:()=>a.Cu,Qt:()=>i.Qt,Mx:()=>d.M,QB:()=>a.QB,Yj:()=>s.Yj,Th:()=>a.Th,ri:()=>i.ri,Ev:()=>a.Ev,qN:()=>a.qN,HW:()=>c.H,_I:()=>a._I,Uc:()=>i.Uc,fC:()=>u.f,t_:()=>n.t,MM:()=>s.MM,B9:()=>i.B9,V6:()=>o.V,xF:()=>i.xF,fi:()=>i.fi,Kg:()=>p.K,B8:()=>i.B8,Tn:()=>i.Tn,y8:()=>a.y8,n8:()=>a.n8,xc:()=>i.xc,pX:()=>n.p,B_:()=>i.B_,A1:()=>r.A,eD:()=>a.eD,ux:()=>i.ux});var o=l(34272),n=l(46991),r=l(69659),i=l(26046),a=l(87207),s=l(92545),d=l(61907),u=l(72498),c=l(40582),p=l(29531),h=l(40532);let m=()=>{let e=(0,h.useFlowEngine)({throwError:!1});if(!e)return{isMobileLayout:!1,setIsMobileLayout:()=>{}};let t=e.getModel(d.M);return t?{isMobileLayout:t.isMobileLayout,setIsMobileLayout:t.setIsMobileLayout.bind(t)}:{isMobileLayout:!1,setIsMobileLayout:()=>{}}}},92545(e,t,l){l.d(t,{FY:()=>u,MM:()=>v,Yj:()=>b});var o=l(75251);l(2077);let n="/v2/",r="[NocoBase] Admin route runtime target:",i={runtimePath:null,navigationMode:"spa",isLegacy:!1};function a(e){let t=`/${String(e||"/").trim()||"/"}`.replace(/\/{2,}/g,"/");return"/"!==t&&t.endsWith("/")?t.replace(/\/+$/g,""):t}function s(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",t=a(e||"/");return t.endsWith("/")?t:`${t}/`}function d(e){return s(e.getPublicPath()).endsWith(n)}function u(e,t){let l=a(e),o=t&&"/"!==t?a(t):"";return o?l===o?"/":l.startsWith(`${o}/`)?a(l.slice(o.length)):l:l}function c(e,t){let l=s(e),o=a(t);return"/"===l?o:"/"===o?l.replace(/\/+$/g,"")||"/":a(`${l}${o.slice(1)}`)}function p(e,t){return c(e.getPublicPath(),`/admin/${t}`)}function h(e,t){let l=(null==t?void 0:t.search)?t.search.startsWith("?")?t.search:`?${t.search}`:"",o=(null==t?void 0:t.hash)?t.hash.startsWith("#")?t.hash:`#${t.hash}`:"";return`${e}${l}${o}`}function m(e,t){let l=a(e),o=a(t);return l===o||l.startsWith(`${o}/`)}function f(e,t,l){null==e||e(r,t,l)}function g(e){return!!e&&("tabs"===e.type||!0===e.hideInMenu||!0===e.hidden)}function v(e){if(Array.isArray(e)){for(let t of e)if(!g(t)){if("page"===t.type||"flowPage"===t.type)return t;if("group"===t.type){let e=v(t.children);if(e)return e}}}}function y(e,t){let{app:l,preserveLocationState:n,location:r,log:a=console.warn}=e;if(!t.schemaUid)return f(a,"Missing schemaUid.",t),i;if("flowPage"===t.type)return{runtimePath:p(l,t.schemaUid),navigationMode:"spa",isLegacy:!1};if(!d(l))return{runtimePath:n&&r?h(p(l,t.schemaUid),r):p(l,t.schemaUid),navigationMode:"spa",isLegacy:!1};let s=p(l,t.schemaUid),u=(0,o.Sx)(l,s);if(!u)return f(a,"Failed to resolve legacy runtimePath.",t),i;if(n&&r){if(m(r.pathname,s)){let e=(0,o.Sx)(l,r);if(e)return{runtimePath:e,navigationMode:"document",isLegacy:!0}}return{runtimePath:h(u,r),navigationMode:"document",isLegacy:!0}}return{runtimePath:u,navigationMode:"document",isLegacy:!0}}function b(e){let{route:t,log:l=console.warn}=e;if(!t)return i;if("page"===t.type||"flowPage"===t.type)return y(e,t);if("group"===t.type){let l=v(t.children);return l?b({...e,route:l}):i}return"link"!==t.type&&f(l,"Unsupported route type.",t),i}},40582(e,t,l){l.d(t,{H:()=>n});var o=l(2077);let n=()=>({Component:(0,o.nm)().apps.Component})},27941(e,t,l){l.d(t,{t:()=>v});var o=l(74848),n=l(35710),r=l(16629),i=l(96540),a=l(18492),s=l(51612),d=l(40532);let u=e=>e&&(e.closest(".nb-block-grid")||e.closest(".nb-page-wrapper")||e.closest(".nb-page"))||document.documentElement,c=e=>{if(!e)return 0;let t=e.getBoundingClientRect(),l=window.getComputedStyle(e),o=parseFloat(l.marginTop)||0,n=parseFloat(l.marginBottom)||0;return t.height+o+n},p=e=>{if(!e||e===document.documentElement)return{top:0,bottom:0};let t=window.getComputedStyle(e);return{top:parseFloat(t.paddingTop)||0,bottom:parseFloat(t.paddingBottom)||0}},h=e=>{let t=e.closest(".nb-page");return t?t.querySelector(".ant-page-header")||t.querySelector(".pageHeaderCss"):null},m=e=>{let t=e.querySelector("[data-flow-add-block]");return t?t.parentElement||t:null};function f(e,t){let l=t>0;return e>0?e:l?t:0}let g=e=>{let{height:t,heightMode:l,cardRef:o}=e,[n,r]=(0,i.useState)(),a=(0,d.useFlowContext)(),s=(0,i.useCallback)(()=>{if("fullHeight"!==l||"u"<typeof window)return void r(e=>void 0===e?e:void 0);let e=o.current;if(!e)return;let t=u(e),n=e.getBoundingClientRect(),i=t===document.documentElement?{top:0}:t.getBoundingClientRect(),s=p(t),d=m(t),h=i.top+s.top,g=Math.min(Math.max(0,n.top-h),0),v=s.bottom+a.themeToken.marginBlock;d&&(v=a.themeToken.marginBlock+c(d)+s.bottom);let y=Math.max(0,Math.floor(window.innerHeight-f(h,110)-g-v));r(e=>e===y?e:y)},[l,o]);return((0,i.useLayoutEffect)(()=>{s()},[s]),(0,i.useEffect)(()=>{if("fullHeight"!==l||"u"<typeof window)return;let e=o.current;if(!e||"u"<typeof ResizeObserver)return;let t=u(e),n=h(t),r=m(t),i=new ResizeObserver(()=>s());return i.observe(e),t instanceof HTMLElement&&i.observe(t),n&&i.observe(n),r&&i.observe(r),window.addEventListener("resize",s),()=>{i.disconnect(),window.removeEventListener("resize",s)}},[l,o,s]),"specifyValue"===l)?t:"fullHeight"===l?n:null},v=i.forwardRef((e,t)=>{let{t:l}=(0,a.B)(),{token:d}=n.A.useToken(),{title:u,description:c,children:p,className:h,heightMode:m,...f}=e,v=(0,i.useRef)(null),y=(0,i.useCallback)(e=>{v.current=e,"function"==typeof t?t(e):t&&(t.current=e)},[t]),b=g({...e,cardRef:v}),x=(u||c)&&(0,o.jsxs)("div",{children:[(0,o.jsxs)("span",{children:[" ",u]}),c&&(0,o.jsx)(s.g,{value:c,style:{overflowWrap:"break-word",whiteSpace:"normal",fontWeight:400,color:d.colorTextDescription,borderRadius:"4px"}})]});return(0,o.jsxs)(r.A,{ref:y,title:x,style:{display:"flex",flexDirection:"column",height:b},styles:{body:{flex:1,display:"flex",flexDirection:"column",overflow:"auto"},header:{marginTop:"8px"}},className:h,...f,children:[e.beforeContent,p,e.afterContent]})})},2117(e,t,l){l.d(t,{H:()=>a,b:()=>s});var o=l(74848),n=l(40532);l(96540);var r=l(80512),i=l(96436);let a=(0,n.observer)(e=>{let t=(0,n.useFlowContext)();return(0,o.jsx)(r.I8,{value:e.value||{logic:"$and",items:[]},FilterItem:l=>(0,o.jsx)(r.Ru,{model:t.model,value:l.value,extraMetaTree:e.extraMetaTree}),onChange:e.onChange})}),s=(e,t)=>{let{condition:l={logic:"$and",items:[]}}=t,o=(t,l,o)=>e.app.jsonLogic.apply({[l]:[t,o]});(0,i.evaluateConditions)((0,i.removeInvalidFilterItems)(l),o)||e.exit()}},36869(e,t,l){l.d(t,{S:()=>b,b:()=>g});var o=l(74848),n=l(22803),r=l(74353),i=l.n(r),a=l(18220),s=l(84795),d=l(35710),u=l(84626),c=l(51643),p=l(95725),h=l(96540);let m=i()(),f=(0,n.AH)`
223
223
  width: 100%;
224
224
  & > .ant-space-item {
225
225
  flex: 1;
@@ -243,7 +243,7 @@ export const __rspack_esm_id="8410";export const __rspack_esm_ids=["8410"];expor
243
243
  ... (stack truncated)`}function F(e){let t=String(e||"").split("\n"),l=new Set;for(let e=0;e<t.length;e++){let o=t[e];(g.test(o)||v.test(o))&&l.add(e)}if(0===l.size)return()=>!1;let o=[0];for(let e=1;e<t.length;e++)o[e]=o[e-1]+t[e-1].length+1;let n=e=>{let t=0,l=o.length-1,n=0;for(;t<=l;){let r=t+l>>1;o[r]<=e?(n=r,t=r+1):l=r-1}return n};return e=>l.has(n(e))}function A(e,t){let l=Math.max(0,Math.min(e.length,Math.floor(t))),o=e.lineAt(l);return{line:o.number,column:l-o.from+1}}function k(e){return[...e].sort((e,t)=>{var l,o,n,r,i,a,s,d;let u=+("lint"!==e.type),c=+("lint"!==t.type);if(u!==c)return u-c;let p=(null==(o=e.location)||null==(l=o.start)?void 0:l.line)??Number.MAX_SAFE_INTEGER,h=(null==(r=t.location)||null==(n=r.start)?void 0:n.line)??Number.MAX_SAFE_INTEGER;if(p!==h)return p-h;let m=(null==(a=e.location)||null==(i=a.start)?void 0:i.column)??Number.MAX_SAFE_INTEGER,f=(null==(d=t.location)||null==(s=d.start)?void 0:s.column)??Number.MAX_SAFE_INTEGER;return m!==f?m-f:String(e.ruleId||"").localeCompare(String(t.ruleId||""))})}function C(e){let t={error:0,warn:1,info:2,log:3};return e.map((e,t)=>({log:e,index:t})).sort((e,l)=>{let o=t[e.log.level]??Number.MAX_SAFE_INTEGER,n=t[l.log.level]??Number.MAX_SAFE_INTEGER;return o!==n?o-n:e.index-l.index}).map(e=>e.log)}function P(e){let t,l=String(e||"");if(!l.trim())return[];let o=n.EY.of(l.split("\n")),r=F(l);try{t=f.parse(l).cursor()}catch(e){return[{type:"lint",ruleId:"parse-error",message:`Syntax error: ${y((null==e?void 0:e.message)||e)}`,location:{start:{line:1,column:1}}}]}let i=[],a=new Set,s=e=>{let t=Math.max(0,Math.min(l.length,e));if(r(t)||a.has(t))return;a.add(t);let n=A(o,t),s=l.slice(t,Math.min(l.length,t+24)).replace(/\s+/g," ").trim(),d=s?` near "${s}"`:"";i.push({type:"lint",ruleId:"parse-error",message:`Syntax error${d}.`,location:{start:n}})};do t.type.isError&&s(t.from);while(t.next());return i}function j(e){let t,l=String(e||"");if(!l.trim())return[];let o=F(l),i=n.EY.of(l.split("\n")),d=[],c=(e,t,n)=>{let r=Math.max(0,Math.min(l.length,e));if(o(r))return;let a=A(i,r);d.push({type:"lint",ruleId:t,message:n,location:{start:a}})},p=()=>{let e="no-noncallable-call",t=new Set,n=n=>{let r=Math.max(0,Math.min(l.length,n));o(r)||t.has(r)||(t.add(r),c(r,e,"This expression is not callable."))},r=l.length,i=e=>{if(!e)return!1;let t=e.charCodeAt(0);return t>=65&&t<=90||t>=97&&t<=122||95===t||36===t},a=e=>{if(!e)return!1;let t=e.charCodeAt(0);return i(e)||t>=48&&t<=57},s=e=>{let t=e;for(;t<r&&/\s/.test(l[t]);)t++;return t},d=e=>!(e>=r)&&("("===l[e]||"?"===l[e]&&"."===l[e+1]&&"("===l[e+2]),u=e=>{let t=1,o="code";for(let n=e+1;n<r;n++){let e=l[n],i=n+1<r?l[n+1]:"";if("lineComment"===o){"\n"===e&&(o="code");continue}if("blockComment"===o){"*"===e&&"/"===i&&(o="code",n+=1);continue}if("single"===o){if("\\"===e){n+=1;continue}"'"===e&&(o="code");continue}if("double"===o){if("\\"===e){n+=1;continue}'"'===e&&(o="code");continue}if("template"===o){if("\\"===e){n+=1;continue}"`"===e&&(o="code");continue}if("/"===e&&"/"===i){o="lineComment",n+=1;continue}if("/"===e&&"*"===i){o="blockComment",n+=1;continue}if("'"===e){o="single";continue}if('"'===e){o="double";continue}if("`"===e){o="template";continue}if("("===e)t++;else if(")"===e&&0==--t)return n}return -1},p=e=>"true"===e||"false"===e||"null"===e,h="code";for(let e=0;e<r;e++){let t=l[e],o=e+1<r?l[e+1]:"";if("lineComment"===h){"\n"===t&&(h="code");continue}if("blockComment"===h){"*"===t&&"/"===o&&(h="code",e+=1);continue}if("/"===t&&"/"===o){h="lineComment",e+=1;continue}if("/"===t&&"*"===o){h="blockComment",e+=1;continue}if("'"===t||'"'===t){let o=t,i=e;for(e+=1;e<r;){let t=l[e];if("\\"===t){e+=2;continue}if(t===o)break;e+=1}d(s(Math.min(r,e+1)))&&n(i);continue}if("`"===t){let t=e;for(e+=1;e<r;){let t=l[e];if("\\"===t){e+=2;continue}if("`"===t)break;e+=1}d(s(Math.min(r,e+1)))&&n(t);continue}if(t>="0"&&t<="9"){let t=e;for(e+=1;e<r&&l[e]>="0"&&l[e]<="9";)e++;if("."===l[e])for(e+=1;e<r&&l[e]>="0"&&l[e]<="9";)e++;if("e"===l[e]||"E"===l[e]){let t=l[e+1],o=e+1;if(("+"===t||"-"===t)&&(o+=1),l[o]>="0"&&l[o]<="9")for(e=o+1;e<r&&l[e]>="0"&&l[e]<="9";)e++}"n"===l[e]&&(e+=1),d(s(e))&&n(t),e-=1;continue}if(i(t)){let t=e;for(e+=1;e<r&&a(l[e]);)e++;p(l.slice(t,e))&&d(s(e))&&n(t),e-=1;continue}if("("===t){let t=s(e+1),o=t,c=!1;("+"===l[t]||"-"===l[t])&&(o=t,t=s(t+1));let h=l[t];if("{"===h||"["===h||"'"===h||'"'===h||"`"===h)c=!0;else if(h>="0"&&h<="9")c=!0;else if(i(h)){let e=t+1;for(;e<r&&a(l[e]);)e++;p(l.slice(t,e))&&(c=!0)}if(c){let t=u(e);t>e&&d(s(t+1))&&n(o)}}}};try{let e=r.Parser||r;t=("function"==typeof a()?e.extend(a()()):e).parse(l,{ecmaVersion:2022,sourceType:"script",allowAwaitOutsideFunction:!0,allowReturnOutsideFunction:!0,locations:!0})}catch(e){return p(),d}let h=new Set(["ctx","console","window","document","navigator","Math","Date","Array","Object","Number","String","Boolean","Promise","RegExp","Set","Map","WeakSet","WeakMap","JSON","Intl","URL","Error","TypeError","encodeURIComponent","decodeURIComponent","parseInt","parseFloat","isNaN","isFinite","undefined","NaN","Infinity"]),m=e=>{e&&"string"==typeof e.name&&h.add(e.name)},f=e=>{if(!e)return;let t=[e];for(;t.length;){let e=t.pop();e&&("Identifier"===e.type?m(e):"AssignmentPattern"===e.type?t.push(e.left):"ArrayPattern"===e.type?(e.elements||[]).forEach(e=>e&&t.push(e)):"ObjectPattern"===e.type&&(e.properties||[]).forEach(e=>e&&t.push(e.value||e)))}};try{s.a2(t,e=>{switch(null==e?void 0:e.type){case"VariableDeclarator":f(e.id);break;case"FunctionDeclaration":case"FunctionExpression":m(e.id),(e.params||[]).forEach(f);break;case"ArrowFunctionExpression":(e.params||[]).forEach(f);break;case"CatchClause":f(e.param);break;case"ClassDeclaration":m(e.id)}},u)}catch(e){}try{s.a2(t,e=>{if(!e||"string"!=typeof e.type||"CallExpression"!==e.type)return;let t=e.callee;if(!(t&&("Identifier"===t.type||"MemberExpression"===t.type||"FunctionExpression"===t.type||"ArrowFunctionExpression"===t.type||"CallExpression"===t.type||"ChainExpression"===t.type))){let l=(null==t?void 0:t.start)??e.start??0;c(l,"no-noncallable-call","This expression is not callable.")}},u)}catch(e){}try{let e=new Set,l=new Set(["t"]);s.a2(t,t=>{var o,n,r;if(!t||"string"!=typeof t.type||"CallExpression"!==t.type)return;let i=t.callee;if((null==i?void 0:i.type)==="ChainExpression"&&(i=i.expression),!i||"MemberExpression"!==i.type)return;let a=i.object;if(!a||"Identifier"!==a.type||"ctx"!==a.name)return;let s=null;if(i.computed||(null==(o=i.property)?void 0:o.type)!=="Identifier"?i.computed&&(null==(n=i.property)?void 0:n.type)==="Literal"&&"string"==typeof i.property.value&&(s=i.property.value):s=i.property.name,!s||"string"!=typeof s)return;let d=s.trim();if(!d||d.startsWith("_")||d.length>2||l.has(d)||e.has(d))return;let u=(null==(r=i.property)?void 0:r.start)??i.start??t.start??0;c(u,"possible-undefined-ctx-member-call",`Possible undefined ctx method call: ctx.${d}(). This may be a typo or not available in the current ctx API.`),e.add(d)},u)}catch(e){}try{let e=new Set;s.ai(t,{Identifier(t,l){let o=null==t?void 0:t.name;if(!o||h.has(o)||e.has(o))return;let n=l[l.length-2];if(!n||"VariableDeclarator"===n.type&&n.id===t||"FunctionDeclaration"===n.type&&n.id===t||"FunctionExpression"===n.type&&n.id===t||"ClassDeclaration"===n.type&&n.id===t||"ClassExpression"===n.type&&n.id===t||"Property"===n.type&&n.key===t&&!0!==n.computed||"MemberExpression"===n.type&&n.property===t&&!0!==n.computed||"LabeledStatement"===n.type&&n.label===t||"BreakStatement"===n.type&&n.label===t||"ContinueStatement"===n.type&&n.label===t)return;let r=t.start??0;c(r,"possible-undefined-variable",`Possible undefined variable: ${o}`),e.add(o)}},u)}catch(e){}return d}function I(e){let t=(t,l)=>{let o=l.map(e=>y(e)).join(" ").trim();e.push({level:t,message:o})},l={trace:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("log",l)},debug:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("log",l)},info:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("info",l)},warn:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("warn",l)},error:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("error",l)},fatal:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("error",l)},child:()=>l};return{consoleCapture:{log:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("log",l)},info:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("info",l)},warn:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("warn",l)},error:function(){for(var e=arguments.length,l=Array(e),o=0;o<e;o++)l[o]=arguments[o];return t("error",l)}},loggerCapture:l}}function E(e){if(!e.length)return;let t={timeout:0,internal:1,"preview-start-failed":2};return[...e].sort((e,l)=>{let o=t[String(e.ruleId||"")]??10,n=t[String(l.ruleId||"")]??10;return o!==n?o-n:0})[0]}function _(e){var t;let l=null==(t=e.location)?void 0:t.start,o=l?`line ${l.line}:${l.column} `:"",n=e.ruleId?`(${e.ruleId}) `:"";return`${o}${n}${e.message}`.trim()}function R(e){if(!e)return"Preview execution: unknown";let t="number"==typeof e.durationMs?`${Math.round(e.durationMs)}ms`:"unknown";return`Preview execution: started=${e.started}, finished=${e.finished}, timeout=${e.timeout}, duration=${t}`}function T(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"…",o=String(e||"");return o.length<=t?o:`${o.slice(0,Math.max(0,t-l.length))}${l}`}function D(e,t){let{issues:l,logs:o,execution:n}=e,r=l.filter(e=>"lint"===e.type),i=l.filter(e=>"runtime"===e.type),a=C(o),s=E(i),d=[],u=l.length,c=r.length,p=i.length,h=a.length,m=e=>{e.length&&(d.push("Key logs:"),e.forEach(e=>{d.push(`[${e.level}] ${T(e.message,t.maxLogChars)}`)}),a.length>e.length&&d.push(`... ${a.length-e.length} more logs not shown`))};if(0===u){let e=a.some(e=>"warn"===e.level||"error"===e.level);d.push(e?`RunJS preview completed with warning/error logs: no diagnostic issues found. Logs: ${h}.`:`RunJS preview succeeded: no issues found. Logs: ${h}.`),d.push(R(n));let l=a.slice(0,Math.max(0,t.maxLogs));l.length&&(d.push(""),m(l));let o=d.join("\n").trimEnd();return{message:T(o,t.maxChars),truncated:o.length>t.maxChars}}d.push(`RunJS preview failed: ${u} issues (lint ${c} / runtime ${p}), logs: ${h}.`),d.push(R(n)),d.push("");let f=(e,l)=>{if(!l.length)return;d.push(`${e}:`);let o=l.slice(0,Math.max(0,t.maxIssues));o.forEach((e,l)=>{let o=`${l+1}) ${_(e)}`;if(d.push(o),t.includeStack&&e.stack){let l=T(String(e.stack),t.maxStackChars);d.push(T(l,t.maxStackChars))}}),l.length>o.length&&d.push(`... ${l.length-o.length} more not shown`),d.push("")},g=s&&i.length>1?[s,...i.filter(e=>e!==s)]:i;f("Static issues",r),f("Runtime issues",g);let v=a.slice(0,Math.max(0,t.maxLogs));v.length&&m(v);let y=d.join("\n").trimEnd(),b=y.length>t.maxChars;return{message:b?T(y,t.maxChars):y,truncated:b}}function N(e){let t=`(issues total ${e.issues.length}, logs total ${e.logs.length})`,l=!1;for(let o of[{maxLogs:40,maxLogChars:220,maxIssues:12,includeStack:!0,maxStackChars:800},{maxLogs:20,maxLogChars:160,maxIssues:10,includeStack:!0,maxStackChars:400},{maxLogs:12,maxLogChars:140,maxIssues:8,includeStack:!1,maxStackChars:0},{maxLogs:8,maxLogChars:120,maxIssues:5,includeStack:!1,maxStackChars:0},{maxLogs:3,maxLogChars:100,maxIssues:3,includeStack:!1,maxStackChars:0}]){let{message:n,truncated:r}=D(e,{...o,maxChars:c});if(l=l||r,!r){if(!l)return n;return T(`RunJS preview output was truncated.
244
244
  ${t}
245
245
 
246
- ${n}`,c)}}let o=E(e.issues.filter(e=>"runtime"===e.type)),n=o?`Key runtime issue: ${_(o)}`:"",r=["RunJS preview output was truncated.",t,e.execution?R(e.execution):void 0,n||void 0].filter(Boolean).join("\n").trim();return r.length<=c?r:T(r,c-1)+"\n"}function O(e){return N(e)}async function $(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o="string"==typeof e?e:String(e??""),n=[],r=[],i=null==l?void 0:l.version,a=(0,d.shouldPreprocessRunJSTemplates)({version:i});r.push(...P(o)),r.push(...j(o));let s="u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now(),u={started:!1,finished:!1,timeout:!1,durationMs:void 0};try{u.started=!0;let{consoleCapture:e,loggerCapture:l}=I(n),s={console:e};try{if("u">typeof window){let e=(0,d.createSafeNavigator)();s.navigator=e,s.window=(0,d.createSafeWindow)({navigator:e}),s.document=(0,d.createSafeDocument)()}}catch(e){}let c=o;try{c=await (0,d.prepareRunJsCode)(o,{preprocessTemplates:a})}catch(o){let e=String((null==o?void 0:o.name)||""),t=y((null==o?void 0:o.message)||o),l=o instanceof SyntaxError||/^SyntaxError\b/i.test(e)||/SyntaxError\b/i.test(t);return r.push({type:"runtime",ruleId:l?"preview-start-failed":"internal",message:l?t:`Preview internal failure: ${t}`,stack:M(o)}),u.finished=!0,u.timeout=!1,{issues:k(r),logs:n,execution:u}}let h=await t.createJSRunner({globals:s,timeoutMs:p,version:i});h.globals.ctx.defineProperty("logger",{value:l});let m=await h.run(c);if(u.finished=!0,u.timeout=!!(null==m?void 0:m.timeout),!(null==m?void 0:m.success)){let e=null==m?void 0:m.error,t=(null==m?void 0:m.timeout)?"Execution timed out":y((null==e?void 0:e.message)||e||"Unknown error"),l=e instanceof SyntaxError||/^SyntaxError\b/i.test(String((null==e?void 0:e.name)||""));r.push({type:"runtime",ruleId:(null==m?void 0:m.timeout)?"timeout":l?"preview-start-failed":"runtime-error",message:t,stack:M(e)})}}catch(e){u.finished=!0,u.timeout=!1,r.push({type:"runtime",ruleId:"internal",message:`Preview internal failure: ${y((null==e?void 0:e.message)||e)}`,stack:M(e)})}finally{let e=Math.max(0,("u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now())-s);u.durationMs=Number.isFinite(e)?e:void 0}return{issues:k(r),logs:n,execution:u}}function B(e){let t=new d.FlowContext;if(t.addDelegate(e),"u">typeof document&&"function"==typeof document.createElement&&!e.element)try{let e=document.createElement("div");t.defineProperty("element",{value:e})}catch(e){}return t}async function q(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=B(t),n=await $(e,o,l),r=0===n.issues.length,i=O(n);return{success:r,message:i.length>c?T(i,c):i}}},68669(e,t,l){l.d(t,{a:()=>a});var o=l(74848),n=l(84626),r=l(71021);l(96540);var i=l(7521);let a=(0,l(40532).observer)(e=>{var t;let{value:l,FilterItem:a,ctx:s}=e;l.logic||(l.logic="$and"),Array.isArray(l.items)||(l.items=[]);let d=()=>{var e;(null==s||null==(e=s.model)?void 0:e.dispatchEvent)&&s.model.dispatchEvent("reset")},u=()=>{var e;(null==s||null==(e=s.model)?void 0:e.dispatchEvent)&&s.model.dispatchEvent("submit")},c=(null==s||null==(t=s.model)?void 0:t.translate)||(e=>e);return(0,o.jsxs)("form",{onSubmit:e=>{e.preventDefault(),u()},children:[(0,o.jsx)(i.I,{value:l,FilterItem:a}),(0,o.jsxs)(n.A,{style:{width:"100%",display:"flex",justifyContent:"flex-end"},children:[(0,o.jsx)(r.Ay,{htmlType:"button",onClick:d,children:c("Reset")}),(0,o.jsx)(r.Ay,{type:"primary",htmlType:"submit",children:c("Submit")})]})]})},{displayName:"FilterContent"})},7521(e,t,l){l.d(t,{I:()=>f});var o=l(74848),n=l(97373),r=l(18853),i=l(35710),a=l(36492),s=l(84626),d=l(71021),u=l(18492);l(96540);var c=l(40532);let p=new WeakMap,h=0,m=e=>{let t=p.get(e);return t||(h+=1,t=`filter-item-${h}`,p.set(e,t)),t},f=(0,c.observer)(e=>{let{token:t}=i.A.useToken(),{value:l={logic:"$and",items:[]},FilterItem:c,showBorder:p=!1,onRemove:h,onChange:g,closeIcon:v=(0,o.jsx)(n.A,{style:{color:t.colorIcon}})}=e,{t:y}=(0,u.B)();l.logic||(l.logic="$and"),Array.isArray(l.items)||(l.items=[]);let{logic:b,items:x}=l,w=p?{position:"relative",border:`1px dashed ${t.colorBorder}`,padding:t.paddingSM,marginBottom:t.marginXS,borderRadius:t.borderRadius}:{position:"relative",marginBottom:t.marginXS},S=e=>{l.logic=e,null==g||g(l)},M=()=>{x.push({path:"",operator:"",value:""}),null==g||g(l)},F=()=>{x.push({logic:"$and",items:[]}),null==g||g(l)},A=e=>{x.splice(e,1),null==g||g(l)},k=e=>"path"in e||"operator"in e||"value"in e,C=e=>"logic"in e&&"items"in e;return(0,o.jsxs)("div",{style:w,children:[p&&h&&(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{position:"absolute",right:10,top:10,cursor:"pointer",background:"transparent",border:0,padding:0},onClick:h,children:v}),(0,o.jsx)("div",{style:{marginBottom:8,color:t.colorText},children:(0,o.jsxs)("span",{children:[y("Meet")," ",(0,o.jsxs)(a.A,{"data-testid":"filter-select-all-or-any",style:{width:"auto"},value:b,onChange:S,children:[(0,o.jsx)(a.A.Option,{value:"$and",children:y("All")}),(0,o.jsx)(a.A.Option,{value:"$or",children:y("Any")})]})," ",y("conditions in the group")]})}),(0,o.jsx)("div",{children:x.map((e,n)=>C(e)?(0,o.jsx)(f,{value:e,FilterItem:c,showBorder:!0,onRemove:()=>A(n),onChange:e=>{x[n]=e,null==g||g(l)}},m(e)):k(e)?c?(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsx)(c,{value:e}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)):(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsxs)("span",{children:[e.path," ",e.operator," ",String(e.value)]}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)):(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsx)("span",{style:{color:t.colorTextTertiary},children:"Invalid filter item"}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)))}),(0,o.jsxs)(s.A,{size:16,style:{marginTop:8,marginBottom:8},children:[(0,o.jsx)(d.Ay,{style:{padding:0},type:"link",size:"small",icon:(0,o.jsx)(r.A,{}),onClick:M,children:y("Add condition")}),(0,o.jsx)(d.Ay,{style:{padding:0},type:"link",size:"small",icon:(0,o.jsx)(r.A,{}),onClick:F,children:y("Add condition group")})]})]})},{displayName:"FilterGroup"})},80512(e,t,l){l.d(t,{Ru:()=>K,I8:()=>n.I,qi:()=>h,oJ:()=>o.a,Et:()=>_});var o=l(68669),n=l(7521),r=l(74848),i=l(40532),a=l(84626),s=l(36492),d=l(95725),u=l(96540);let c=(e,t,l,o)=>e.map(e=>p(e,t,l,o)).filter(Boolean),p=(e,t,l,o)=>{var n;if(l.length&&1===t&&l.includes(e.name)||!e.interface||!1===e.filterable)return;let r=e.getInterfaceOptions();if(!(null==r?void 0:r.filterable))return;let{nested:i,children:a,operators:s}=r.filterable,d={name:e.name,type:e.type,target:e.target,title:o(e.title),schema:null==e?void 0:e.uiSchema,operators:((null==s||null==(n=s.filter)?void 0:n.call(s,t=>!(null==t?void 0:t.visible)||t.visible(e)))||[]).map(e=>({...e,label:o(e.label)}))};if(!e.target||!(t>2)){if(t>2)return d;if((null==a?void 0:a.length)&&(d.children=a),i){let n=c(e.getFields().filter(e=>"attachments"!==e.target&&"formula"!==e.interface),t+1,l,o).filter(Boolean);d.children=d.children||[],d.children.push(...n)}return d}},h=(0,i.observer)(e=>{var t;let{path:l,operator:o,value:n}=e.value,i=e.model,p=(null==(t=i.context.blockModel.collection)?void 0:t.getFields().filter(e=>"attachments"!==e.target))||[],h=m(i.props.filterableFieldNames||[],p.map(e=>e.name)),f=i.translate,g=c(p.filter(e=>"attachments"!==e.target&&"formula"!==e.interface&&!["belongsTo","belongsToMany","hasOne","hasMany","oho","obo","m2o","o2m","m2m"].includes(e.type)),1,e.noIgnore?[]:h,f).filter(Boolean),v=(0,u.useMemo)(()=>{let e=g.find(e=>e.name===l);return(null==e?void 0:e.operators)||[]},[g,l]),y=t=>{var l;e.value.path=t;let o=g.find(e=>e.name===t);(null==o||null==(l=o.operators)?void 0:l.length)>0?e.value.operator=o.operators[0].value:e.value.operator="",e.value.value=""},b=t=>{e.value.operator=t},x=t=>{e.value.value=t.target.value};return(0,r.jsxs)(a.A,{children:[(0,r.jsx)(s.A,{style:{width:200},placeholder:f("Select field"),value:l||void 0,onChange:y,children:g.map(e=>(0,r.jsx)(s.A.Option,{value:e.name,children:e.title},e.name))}),(0,r.jsx)(s.A,{style:{width:120},placeholder:f("Select operator"),value:o||void 0,onChange:b,disabled:!l||0===v.length,children:v.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),(0,r.jsx)(d.A,{style:{width:200},placeholder:f("Enter value"),value:n,onChange:x})]})},{displayName:"FilterItem"});function m(e,t){return null==t?void 0:t.filter(t=>!e.includes(t))}var f=l(63718),g=l(94313),v=l(60518),y=l(51643),b=l(60209),x=l(2077),w=l(18451),S=l.n(w),M=l(40098),F=l.n(M),A=l(88967),k=l(85352),C=l(53869);let{DateFilterDynamicComponent:P}=(0,x.RZ)(()=>Promise.resolve().then(l.bind(l,13595)),"DateFilterDynamicComponent");async function j(e){var t,l,o,n;let r=async e=>Array.isArray(e)?e:"function"==typeof e?await e():[];if(null==(l=e.getPropertyOptions)||null==(t=l.call(e,"collection"))?void 0:t.meta){let t=null==(n=e.getPropertyMetaTree)?void 0:n.call(e,"{{ ctx.collection }}");return await r(t)}let a=()=>(null==e?void 0:e.collection)??null,s=await (0,i.createEphemeralContext)(e,{defineProperties:{collection:{get:a,meta:(0,i.createCollectionContextMeta)(a,"Current collection")}}}),d=null==(o=s.getPropertyMetaTree)?void 0:o.call(s,"{{ ctx.collection }}");return await r(d)}function I(e,t,l,o){var n;let i=null==e?void 0:e["x-component"],a=(null==t||null==(n=t.uiSchema)?void 0:n["x-component-props"])||{},u=(null==e?void 0:e["x-component-props"])||{},c=S()({},a,u),p=(0,k.di)(null==e?void 0:e.enum,l)||[],h={style:{width:200,...(null==c?void 0:c.style)||{}},placeholder:(null==c?void 0:c.placeholder)||l("Enter value"),...c},m=e=>{if("number"==typeof e||(null==c?void 0:c.stringMode)===!0&&"string"==typeof e)return e};return e=>{let{value:t,onChange:l,...n}=e||{};if("InputNumber"===i)return(0,r.jsx)(f.A,{...h,...n,value:m(t),onChange:e=>null==l?void 0:l(e)});if("NumberPicker"===i)return(0,r.jsx)(A.NumberPicker,{...h,...n,value:m(t),onChange:e=>null==l?void 0:l(e)});if("Switch"===i)return(0,r.jsx)(g.A,{...h,...n,checked:!!t,onChange:e=>null==l?void 0:l(e)});if("Select"===i)return(0,r.jsx)(s.A,{options:p,...h,...n,value:Array.isArray(t)||"string"==typeof t||"number"==typeof t||"boolean"==typeof t?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Checkbox"===i)return(0,r.jsx)(v.A,{...h,...n,checked:!!t,onChange:e=>null==l?void 0:l(e.target.checked)});if("Checkbox.Group"===i)return(0,r.jsx)(v.A.Group,{...h,...n,value:Array.isArray(t)?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Radio.Group"===i)return(0,r.jsx)(y.Ay.Group,{...h,...n,value:Array.isArray(t)||"string"==typeof t||"number"==typeof t||"boolean"==typeof t?t:void 0,onChange:e=>null==l?void 0:l(e.target.value)});if("Cascader"===i)return(0,r.jsx)(b.A,{...h,...n,value:Array.isArray(t)?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Input.TextArea"===i||"TextArea"===i)return(0,r.jsx)(d.A.TextArea,{...h,...n,value:"string"==typeof t?t:null==t?"":String(t),onChange:e=>null==l?void 0:l(e.target.value)});if("DateFilterDynamicComponent"===i)return(0,r.jsx)(P,{...h,...n,value:t,onChange:e=>null==l?void 0:l(e)});if(i&&(null==o?void 0:o.getComponent)){let e=o.getComponent(i);if(e)return(0,r.jsx)(e,{...h,...n,value:t,onChange:e=>null==l?void 0:l(e),style:{width:200,...h.style||{},...null==n?void 0:n.style}})}return(0,r.jsx)(d.A,{...h,...n,value:"string"==typeof t?t:null==t?"":String(t),onChange:e=>null==l?void 0:l(e.target.value)})}}function E(e){if(e&&"object"==typeof e){let l=e;if("function"==typeof l.preventDefault||l.nativeEvent||"target"in l){var t;let o=null==(t=l.target)?void 0:t.value;return void 0!==o?o:e}}return e}let _=(0,i.observer)(e=>{let{value:t,model:l,rightAsVariable:o,rightMetaTree:n,ignoreFieldNames:c}=e,p=(0,i.useFlowViewContext)(),h=l.translate,{path:m,operator:f,value:g}=t,[v,y]=(0,u.useState)(null),b=(0,u.useMemo)(()=>{var e,t,o,n;if(!v)return[];let r=null==(e=l.context.app)?void 0:e.dataSourceManager,i=v.interface?null==r||null==(t=r.collectionFieldInterfaceManager)?void 0:t.getFieldInterface(v.interface):void 0,a=null==v||null==(o=v.uiSchema)?void 0:o["x-filter-operators"];return((Array.isArray(a)&&a.length?a:null==i||null==(n=i.filterable)?void 0:n.operators)||[]).filter(e=>!e.visible||e.visible(v))},[v,l]);(0,u.useEffect)(()=>{if(!b.length)return;let e=F().find(b,e=>e.value===t.operator);if(e)t.noValue=!!e.noValue;else{let e=b[0];t.operator=e.value,t.value=!!e.noValue||void 0,t.noValue=!!e.noValue}},[b,t]);let x=(0,u.useMemo)(()=>b.map(e=>({value:e.value,label:"string"==typeof e.label?h(e.label):e.label})),[b,h]),w=(0,u.useCallback)((e,l)=>{let o=t.path||"",n=e||"",r=n!==o;t.path=n,r&&o&&(t.operator="",t.value=void 0,t.noValue=!1),l&&y(l)},[t]),M=(0,u.useMemo)(()=>({resolveValueFromPath:e=>(y(e),(null==e?void 0:e.paths.slice(1).join("."))||null),resolvePathFromValue(e){if(null==e)return;let t=String(e).trim();if(t)return["collection",...t.split(".")]}}),[]),A=(0,u.useCallback)(e=>{t.operator=e;let l=b.find(t=>t.value===e);(null==l?void 0:l.noValue)?(t.value=!0,t.noValue=!0):(t.value=void 0,t.noValue=!1)},[b,t]),P=(0,u.useMemo)(()=>b.find(e=>e.value===f),[b,f]),_=(0,u.useCallback)(e=>{var t,l;return(null==e||null==(t=e.options)?void 0:t.dataType)||(null==e?void 0:e.dataType)||(null==e?void 0:e.type)||(null==e||null==(l=e.uiSchema)?void 0:l.type)||"double"},[]),R=(0,u.useCallback)(e=>{switch(e){case"boolean":return"Switch";case"date":return"DateFilterDynamicComponent";case"integer":case"bigInt":case"double":case"decimal":case"number":return"InputNumber";default:return"Input"}},[]),T=(0,u.useMemo)(()=>{let e=(null==v?void 0:v.uiSchema)||{},t=(null==P?void 0:P.schema)||{},l=S()({},e,t);if((null==v?void 0:v.interface)==="formula"){let e={"x-read-pretty":!1,"x-component":R(_(v)),"x-component-props":{...l["x-component-props"]}};return S()({},l,e)}return l},[v,P,R,_]),D=u.useRef(null==T?void 0:T["x-component"]),N=null==T?void 0:T["x-component"],O=(0,u.useMemo)(()=>{let e=D.current;D.current=N;let l=void 0!==e&&e!==N;if(null==P?void 0:P.noValue)return g;if(l&&null!=g){t.value=void 0;return}return g},[N,g,t,P]),$=(0,u.useCallback)(e=>{t.value=E(e)},[t]),B=u.useRef(h);u.useEffect(()=>{B.current=h},[h]);let q=u.useCallback(e=>{var t;return(null==(t=B.current)?void 0:t.call(B,e))??e},[]),L=(0,u.useMemo)(()=>(0,k.di)(null==T?void 0:T.enum,q)||[],[T,q]),V=(0,u.useMemo)(()=>I(T,v,q,l.context.app),[T,v,q,l.context.app]),z=(0,u.useCallback)(()=>{let e=(0,C._)(l.context.app,f,b),t="$in"===f||"$notIn"===f;if(e&&t){let{Comp:t,props:l}=e,o={...l};(!(null==o?void 0:o.options)||(null==o?void 0:o.options.length)===0)&&(null==L?void 0:L.length)&&(o.options=L);let n={flex:"1 1 40%",minWidth:160,maxWidth:"100%",...(null==o?void 0:o.style)||{}},i=Array.isArray(O)&&O.every(e=>"string"==typeof e||"number"==typeof e)?O:"string"==typeof O?O.split(/\r?\n/).map(e=>e.trim()).filter(Boolean):[];return(0,r.jsx)("div",{style:n,children:(0,r.jsx)(t,{...o,style:{width:"100%",...(null==o?void 0:o.style)||{}},value:i,onChange:e=>$(e)})})}let o=V;return(0,r.jsx)("div",{style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},children:(0,r.jsx)(o,{value:O,onChange:e=>$(e)})})},[f,b,O,V,l.context.app,$,L]),K=(0,u.useMemo)(()=>function(){return(0,r.jsx)(d.A,{placeholder:`<${h("Null")}>`,readOnly:!0})},[h]),U=(0,u.useMemo)(()=>async()=>{let e="function"==typeof n?await n():n??p.getPropertyMetaTree(),t=Array.isArray(e)?e:await e();return[{title:h("Constant"),name:"constant",type:"string",paths:["constant"],render:V},{title:h("Null"),name:"null",type:"object",paths:["null"],render:K},...t]},[n,p,V,K,h]),W=(0,u.useMemo)(()=>({renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?V:"null"===l?K:null},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:void 0},resolvePathFromValue:e=>{if(null===e)return["null"];let t="string"==typeof e?(0,i.parseValueToPath)(e):void 0;return t||["constant"]}}),[K,V]),H=(0,u.useMemo)(()=>async()=>{var e;let t=null==(e=l.context.app)?void 0:e.dataSourceManager,o=null==t?void 0:t.collectionFieldInterfaceManager,n=await j(l.context),r=async e=>{let t=e.interface?null==o?void 0:o.getFieldInterface(e.interface):void 0,n=[],r=null==t?void 0:t.filterable,i=null==r?void 0:r.children;if(Array.isArray(i)&&i.length)for(let t of i){var a,s,d;let o=t.title||t.name,r=(null==(a=l.context)?void 0:a.t)?l.context.t(o):o;n.push({name:t.name,title:r,type:(null==(s=t.schema)?void 0:s.type)||"string",interface:(null==(d=t.schema)?void 0:d["x-component"])==="Select"?"select":"input",uiSchema:{...t.schema||{},"x-filter-operators":t.operators},paths:[...e.paths||[],t.name],parentTitles:[...e.parentTitles||[],e.title]})}if("function"==typeof e.children){let t=e.children;return{...e,children:async()=>{let e=await t(),l=[...Array.isArray(e)?e:[],...n];return F().uniqBy(l,"name")}}}let u=[...Array.isArray(e.children)?e.children:[],...n];return{...e,children:u.length?u:e.children}},i=[];for(let e of n)i.push(await r(e));return i},[l]);return(0,r.jsxs)(a.A,{wrap:!0,style:{width:"100%"},children:[(0,r.jsx)(i.VariableInput,{value:m,metaTree:H,onChange:w,converters:M,showValueComponent:!1,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},onlyLeafSelectable:!0,placeholder:h("Select field"),ignoreFieldNames:c}),(0,r.jsx)(s.A,{style:{flex:"0 0 140px",minWidth:120,maxWidth:"100%"},placeholder:h("Comparison"),value:f||void 0,onChange:A,children:x.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),!(null==P?void 0:P.noValue)&&(o?(0,r.jsx)(i.VariableInput,{value:O,onChange:e=>$(e),metaTree:U,converters:W,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:h("Enter value")}):z())]})});var R=l(68827),T=l.n(R),D=l(97456);let{DateFilterDynamicComponent:N}=(0,x.RZ)(()=>Promise.resolve().then(l.bind(l,13595)),"DateFilterDynamicComponent");function O(e,t,l){var o,n,i;let a=null==e?void 0:e["x-component"],u=(null==t||null==(o=t.uiSchema)?void 0:o["x-component-props"])||{},c=(null==e?void 0:e["x-component-props"])||{},p=S()({},u,c),h=Array.isArray(null==t||null==(n=t.uiSchema)?void 0:n.enum)?null==t||null==(i=t.uiSchema)?void 0:i.enum:void 0,m=(0,k.di)(h,l),v={style:{width:200,...(null==p?void 0:p.style)||{}},placeholder:(null==p?void 0:p.placeholder)||l("Enter value"),...p};return e=>{let{value:t,onChange:o,...n}=e||{};if("InputNumber"===a)return(0,r.jsx)(f.A,{...v,...n,value:t,onChange:o});if("NumberPicker"===a)return(0,r.jsx)(A.NumberPicker,{...v,...n,value:t,onChange:o});if("Switch"===a)return(0,r.jsx)(g.A,{...v,...n,checked:!!t,onChange:o});if("Select"===a){let e=v;return Array.isArray(null==e?void 0:e.options)&&e.options.length>0?e={...e,options:(0,k.ZY)(e.options,l)}:m&&(e={...e,options:m}),(0,r.jsx)(s.A,{...e,...n,value:t,onChange:o})}return"DateFilterDynamicComponent"===a?(0,r.jsx)(N,{...v,...n,value:t,onChange:o}):(0,r.jsx)(d.A,{...v,...n,value:t,onChange:e=>{var t;return null==o?void 0:o(null==e||null==(t=e.target)?void 0:t.value)}})}}let $=[{value:"$includes",label:"contains",selected:!0},{value:"$notIncludes",label:"does not contain"},{value:"$eq",label:"is"},{value:"$ne",label:"is not"},{value:"$empty",label:"is empty",noValue:!0},{value:"$notEmpty",label:"is not empty",noValue:!0}],B=new Set(["$in","$notIn"]);function q(e,t){let l=Array.isArray(e)?e:[],o=Array.isArray(t)?t:[];if(!o.length)return l;let n=o.find(e=>(null==e?void 0:e.name)==="item");if(!n)return[...o,...l];let r=(0,D.mD)(l,[n]);return[...o.filter(e=>(null==e?void 0:e.name)!=="item"),...r]}function L(e,t){var l,o;return{name:t.name,title:t.title||t.name,type:(null==(l=t.schema)?void 0:l.type)||"string",interface:(null==(o=t.schema)?void 0:o["x-component"])==="Select"?"select":"input",uiSchema:{...t.schema||{},"x-filter-operators":t.operators},paths:[...e.paths||[],t.name],parentTitles:[...e.parentTitles||[],e.title]}}async function V(e,t){var l,o;let n=e.interface&&t?t(e.interface):void 0,r=(Array.isArray(null==n||null==(l=n.filterable)?void 0:l.children)?null==n||null==(o=n.filterable)?void 0:o.children:[]).map(t=>L(e,t)),i=async e=>{let l=[...await Promise.all(e.map(e=>V(e,t))),...r];return T()(l,e=>e.name)};if("function"==typeof e.children){let t=e.children;return{...e,children:async()=>{let e=await t(),l=Array.isArray(e)?e:[];return await i(l)}}}return Array.isArray(e.children)?{...e,children:await i(e.children)}:r.length?{...e,children:r}:e}async function z(e,t){let l=Array.isArray(e)?e:[];return await Promise.all(l.map(e=>V(e,t)))}let K=(0,i.observer)(e=>{var t;let{value:l,model:o,extraMetaTree:n}=e,c=(0,i.useFlowViewContext)(),p=o.translate,{path:h,operator:m,value:f}=l||{},[g,v]=(0,u.useState)(null),y=(0,u.useRef)(!1),b=(0,u.useMemo)(()=>{if(g){var e,t;let l=o.context.app.dataSourceManager,n=g.interface?l.collectionFieldInterfaceManager.getFieldInterface(g.interface):void 0,r=null==g||null==(e=g.uiSchema)?void 0:e["x-filter-operators"];return((Array.isArray(r)&&r.length?r:null==n||null==(t=n.filterable)?void 0:t.operators)||$).filter(e=>!e.visible||e.visible(g)).map(e=>({value:e.value,label:e.label,noValue:!!e.noValue,schema:e.schema,selected:!!e.selected}))}return[]},[g,o]),x=(0,u.useMemo)(()=>b.map(e=>({value:e.value,label:"string"==typeof e.label?p(e.label):e.label})),[b,p]);(0,u.useEffect)(()=>{if(0!==b.length){if(!m){if(y.current){let e=b.find(e=>e.selected)||b[0];l.operator=(null==e?void 0:e.value)||"",(null==e?void 0:e.noValue)?(l.value=!0,l.noValue=!0):l.noValue=!1,y.current=!1}return}if(!b.some(e=>e.value===m)){let e=b.find(e=>e.selected)||b[0];l.operator=(null==e?void 0:e.value)||"",(null==e?void 0:e.noValue)?(l.value=!0,l.noValue=!0):l.noValue=!1}}},[b,m,l]);let w=(0,u.useMemo)(()=>b.find(e=>e.value===m),[b,m]),M=(0,u.useMemo)(()=>{let e=(null==g?void 0:g.uiSchema)||{},t=(null==w?void 0:w.schema)||{};return S()({},e,t)},[g,w]),F=(0,u.useRef)(p);(0,u.useEffect)(()=>{F.current=p},[p]);let A=(0,u.useCallback)(e=>{var t;return(null==(t=F.current)?void 0:t.call(F,e))??e},[]),P=(0,u.useMemo)(()=>O(M,g,A),[M,g,A]),j=(0,u.useMemo)(()=>(0,k.di)(null==M?void 0:M.enum,A)||[],[M,A]),I=(0,u.useMemo)(()=>{let e=(0,C._)(o.context.app,m,b),t=B.has(m);if(!e||!t)return P;let{Comp:l,props:n}=e;return e=>{let{value:t,onChange:o,...i}=e||{},a={...n};(null==a?void 0:a.options)&&(null==a?void 0:a.options.length)!==0||!(j.length>0)||(a.options=j);let s=Array.isArray(t)?t:"string"==typeof t?t.split(/\r?\n/).map(e=>e.trim()).filter(Boolean):[];return(0,r.jsx)(l,{...a,...i,value:s,onChange:o,style:{width:200,...(null==a?void 0:a.style)||{},...(null==i?void 0:i.style)||{}}})}},[j,o.context.app,b,m,P]),E=(0,u.useMemo)(()=>function(){return(0,r.jsx)(d.A,{placeholder:`<${p("Null")}>`,readOnly:!0})},[p]),_=(0,u.useMemo)(()=>async()=>{let e=q((null==o?void 0:o.context.getPropertyMetaTree())||c.getPropertyMetaTree(),n);return[{title:p("Constant"),name:"constant",type:"string",paths:["constant"]},{title:p("Null"),name:"null",type:"object",paths:["null"]},...e]},[c,o,p,n]),R=(0,u.useCallback)(async()=>{var e,t;let l=(null==o||null==(t=o.context)||null==(e=t.getPropertyMetaTree)?void 0:e.call(t))||c.getPropertyMetaTree(),r=q(Array.isArray(l)?l:[],n),i=e=>{var t,l,n,r;return null==(r=o.context.app)||null==(n=r.dataSourceManager)||null==(l=n.collectionFieldInterfaceManager)||null==(t=l.getFieldInterface)?void 0:t.call(l,e)};return await z(r,i)},[c,o,n]),T=(0,u.useMemo)(()=>({renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?I:"null"===l?E:null},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:void 0},resolvePathFromValue:e=>{if(null===e)return["null"];let t=(0,i.parseValueToPath)(e);return t||["constant"]}}),[E,I]),D=(0,u.useCallback)((e,t)=>{let o=l.path||"",n=e||"",r=n!==o;l.path=n,r&&o&&(l.operator="",l.value="",y.current=!0),o||!n||l.operator||(y.current=!0),t&&v(t)},[l]),N=(0,u.useCallback)(e=>{let t=l.operator;l.operator=e;let o=b.find(t=>t.value===e);(null==o?void 0:o.noValue)?(l.value=!0,l.noValue=!0):(B.has(t)&&!B.has(e)&&Array.isArray(l.value)&&(l.value=l.value.join("\n")),l.noValue=!1)},[l,b]);return(0,r.jsxs)(a.A,{wrap:!0,style:{width:"100%"},children:[(0,r.jsx)(i.VariableInput,{value:h,onChange:D,metaTree:R,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:p("Select variable"),onlyLeafSelectable:!0}),(0,r.jsx)(s.A,{style:{flex:"0 0 140px",minWidth:120,maxWidth:"100%"},placeholder:p("Comparison"),value:m||void 0,onChange:N,children:x.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),!(null==(t=b.find(e=>e.value===m))?void 0:t.noValue)&&(0,r.jsx)(i.VariableInput,{value:f,onChange:e=>l.value=e,metaTree:_,converters:T,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:p("Enter value"),clearValue:""})]})})},51793(e,t,l){l.d(t,{S5:()=>h.S,b2:()=>h.b,tn:()=>o.t,R_:()=>p});var o=l(27941),n=l(74848);l(98668),l(43627),l(40532);var r=l(96540);l(74979);var i=l(28073);let a=e=>{if(e){let t=document.createRange();return t.selectNodeContents(e),t.getBoundingClientRect().width}},s={overflow:"hidden",overflowWrap:"break-word",textOverflow:"ellipsis",whiteSpace:"nowrap",wordBreak:"break-all"},d={overflowWrap:"break-word",whiteSpace:"normal",wordBreak:"break-word"},u=e=>!!e&&a(e)>e.offsetWidth,c={maxWidth:600,overflow:"auto",maxHeight:400},p=(0,r.forwardRef)((e,t)=>{let[l,o]=(0,r.useState)(!1),[a,p]=(0,r.useState)(!1),h=(0,r.useRef)();(0,r.useImperativeHandle)(t,()=>({setPopoverVisible:p}),[]);let m=(0,r.useCallback)(e=>{let t=e.target;u(h.current)&&o(t.scrollWidth>=t.clientWidth)},[]),f=(0,r.useMemo)(()=>{let t=e.ellipsis?{onMouseEnter:m}:{};return(0,n.jsx)("div",{ref:h,role:e.role,style:e.ellipsis?s:d,...t,children:e.children})},[m,e.children,e.ellipsis,e.role]);return e.ellipsis&&l?(0,n.jsx)(i.A,{open:l&&a,onOpenChange:e=>{p(l&&e)},content:(0,n.jsx)("div",{style:c,children:e.popoverContent||e.children}),children:f}):f});p.displayName="EllipsisWithTooltip";var h=l(36869);l(95266),l(47785)},76059(e,t,l){l.d(t,{g:()=>n,k:()=>r});var o=l(40532);let n=(0,o.defineFlow)({key:"popupSettings",title:(0,o.tExpr)("Popup settings"),on:"click",sort:300,steps:{openView:{use:"openView",hideInSettings:async e=>{var t,l,o,n;let r=null==(l=(o=e.model).getStepParams)||null==(t=l.call(o,"displayFieldSettings","clickToOpen"))?void 0:t.clickToOpen;return!!e.collectionField&&(void 0===r?!(null==(n=e.collectionField)?void 0:n.isAssociationField())||e.disableFieldClickToOpen:!1===r)}}},defaultParams:e=>{var t,l,o,n,r,i,a,s;let d,u,c,p=e.collectionField,h=e.blockModel,m=null==(l=e.model)||null==(t=l.parent)?void 0:t.associationPathName,f=e.collection||(null==h?void 0:h.collection),g=e=>{var t;return!!(null==e||null==(t=e.isAssociationField)?void 0:t.call(e))},v=!g(p)&&m?null==f||null==(o=f.getFieldByPath)?void 0:o.call(f,m):void 0,y=g(p)?p:v;if(g(y)){let e=y.targetCollection;null==h||h.collection,d=null==e?void 0:e.name,u=null==e?void 0:e.dataSourceKey,c=null==y?void 0:y.resourceName}else p?(d=null==(n=e.collection)?void 0:n.name,u=null==(r=e.collection)?void 0:r.dataSourceKey,c=null==p?void 0:p.target):(d=null==(i=e.collection)?void 0:i.name,u=null==(a=e.collection)?void 0:a.dataSourceKey,c=null==(s=e.association)?void 0:s.resourceName);return{openView:{collectionName:d,associationName:c,dataSourceKey:u}}}}),r=e=>e.getStepParams("popupSettings","openView")},46578(e,t,l){let o,n,r;l.d(t,{er5:()=>aK,tPG:()=>eT.t,wUQ:()=>nw,Ui7:()=>cD.Ui,JvK:()=>eK,m5p:()=>sw,l5h:()=>nj,jqd:()=>uQ,WHj:()=>ia,T9:()=>oS,ZMt:()=>lY,Xw5:()=>tz,xEQ:()=>sT,r39:()=>aB,YXI:()=>tx,riZ:()=>cR.ri,s2k:()=>ay,zA_:()=>ti.zA,gbJ:()=>uj,DvX:()=>n,wwh:()=>aW,p$W:()=>cD.p$,xtQ:()=>cR.xt,qi_:()=>C.qi,d13:()=>tg,sJK:()=>iB,mzg:()=>iO,mHU:()=>ip,Ppd:()=>sC,Tuv:()=>sX,Uk$:()=>i8,byO:()=>ti.by,Tnx:()=>cR.Tn,ZCq:()=>s7,HWn:()=>cR.HW,I8R:()=>C.I8,v9U:()=>s1,T16:()=>d$,spd:()=>tf,xz3:()=>oI,ROt:()=>t0,jjG:()=>cR.jj,$T1:()=>sG,Px_:()=>cR.Px,COB:()=>uJ,ysz:()=>s4.ys,kA1:()=>oM,_IX:()=>cR._I,AvD:()=>oC,cYG:()=>u4,mOW:()=>tV.mO,zqF:()=>aF,_TB:()=>G,uMh:()=>sc,mQM:()=>uC,aDm:()=>eC,Hn2:()=>ts,KTk:()=>V,rGX:()=>dl,y2s:()=>nn,s2f:()=>tV.s2,upH:()=>ss,BmO:()=>cD.Bm,foc:()=>lJ,Uhv:()=>eD,ZVp:()=>sU,bPr:()=>lb,hNf:()=>sJ,u36:()=>tp,J$w:()=>r3,Bum:()=>us,ux6:()=>cR.ux,Ra0:()=>sP,QuL:()=>eA,V6y:()=>cR.V6,djK:()=>cD.dj,qh$:()=>es,K4N:()=>lQ,xIu:()=>n4,XK0:()=>eV,xc1:()=>cR.xc,C_u:()=>cD.C_,Ru1:()=>C.Ru,s$$:()=>cN,lrV:()=>tS.lr,znN:()=>uW,OaU:()=>cD.O,N9e:()=>cT.N,m$$:()=>sl,cPq:()=>ax,gk0:()=>et,to1:()=>e3,dhL:()=>sS,mSG:()=>rO,Fy3:()=>se,VPO:()=>sY,d6j:()=>iE,y8o:()=>cR.y8,nCj:()=>cD.nC,eLO:()=>cR.eL,LAC:()=>e5,fCM:()=>cR.fC,R0X:()=>cD.R0,Dsh:()=>di,saj:()=>lt,VcJ:()=>sE,dv2:()=>oq,t_Y:()=>cR.t_,Ucr:()=>cR.Uc,FKm:()=>s4.FK,ksX:()=>cD.ks,Eq4:()=>dB,xkv:()=>av,sEB:()=>tc,W4I:()=>iq,qPo:()=>sO,n8$:()=>cR.n8,vIF:()=>ne,vrA:()=>sR,tUI:()=>ei,CII:()=>tN,v6e:()=>aU,MeX:()=>ar,ccc:()=>s4.cc,mw1:()=>eo,i6C:()=>nI,sJA:()=>iQ,hOt:()=>tS.hO,biS:()=>nT,AMH:()=>r,fMK:()=>uO,PU8:()=>li,UZR:()=>eR,fAh:()=>D,Yjq:()=>cR.FY,_e9:()=>r$,Myf:()=>uB,fnr:()=>aT,qqP:()=>sh,BYM:()=>ti.BY,RBt:()=>eN.R,dpX:()=>tW,sYw:()=>eZ,oM7:()=>r0,e7P:()=>dI,ODR:()=>lm,hCX:()=>tO,zDb:()=>r_,x_D:()=>nE,Imp:()=>iv,mNj:()=>o,P0:()=>sn,Qt8:()=>cR.Qt,ivU:()=>n3,uFv:()=>uP,VGp:()=>d_,Pqd:()=>dx,Gap:()=>cR.G,kkB:()=>dj,wqT:()=>t_,R8A:()=>th,vbm:()=>ek,IAc:()=>dA,KYF:()=>nd,FaR:()=>ae,v8l:()=>tj,lv4:()=>cD.lv,qlo:()=>ij,I6c:()=>dd,_UX:()=>eM,t_n:()=>nl,Xig:()=>tS.Xi,isP:()=>da,fi1:()=>cR.fi,a6D:()=>e4,uTv:()=>cD.uT,MhO:()=>tP,l2T:()=>rq,n6C:()=>tw,OtO:()=>cR.Ot,FWr:()=>cR.FW,wW_:()=>eQ,X2M:()=>cD.X2,h2d:()=>s2.h2,cm5:()=>sW,eCD:()=>ow,GJ1:()=>rl,B94:()=>cR.B9,gaO:()=>r1,orA:()=>c_.o,OsV:()=>a1,I6Z:()=>oA,zsf:()=>ee,HJv:()=>i6,WzN:()=>cD.Wz,qNx:()=>cR.qN,mYX:()=>cR.mY,G9F:()=>lB,YjI:()=>cR.Yj,xFY:()=>cR.xF,PW6:()=>e_.P,rvE:()=>e9,cNN:()=>oB,mLo:()=>a$,YJB:()=>nz,QBt:()=>cR.QB,LFq:()=>uk,Ck8:()=>iI,hPI:()=>ti.hP,ur8:()=>nq,F4f:()=>tV.F4,tQF:()=>uU,aWb:()=>uK,iT0:()=>at,zUb:()=>no,rpg:()=>aj,sW6:()=>ib,Z0H:()=>aa,K$V:()=>n8,v$f:()=>e$,_$j:()=>eX,ULH:()=>lN,M6q:()=>tS.M6,pKk:()=>l2,www:()=>nt,MMn:()=>cR.MM,kPK:()=>tZ,Xmd:()=>ig,B82:()=>cR.B8,zCA:()=>z,np$:()=>s4.np,YXr:()=>nR,hsC:()=>dM,IBN:()=>uo,Zu2:()=>dq,m2W:()=>e7,k9E:()=>s2.k9,KSc:()=>q,Yh4:()=>dO,Mxl:()=>cR.Mx,B6V:()=>rt,KAX:()=>uI,J9o:()=>dm,mUg:()=>aM,mU7:()=>sg,YmV:()=>O.default,pXX:()=>cR.pX,EcU:()=>nD,mRH:()=>nf.m,j0c:()=>e8.j,vW_:()=>n_,o8y:()=>ti.o8,ThI:()=>cR.Th,e6V:()=>c_.e,Anr:()=>iS,tSM:()=>cR.tS,qir:()=>eH,kN:()=>nP,s5W:()=>i_,NYj:()=>tS.NY,LE6:()=>dw,ngq:()=>s4.ng,omq:()=>to,Nxx:()=>sa,gvx:()=>e2.g,upW:()=>iF,D1b:()=>o0,Cuw:()=>cR.Cu,S3Z:()=>un,B_2:()=>cR.B_,D8m:()=>oG,e8C:()=>s9,T8$:()=>oF,nap:()=>S.n,CCB:()=>a5,zFh:()=>an,lJp:()=>F,Dhs:()=>uY,eDc:()=>cD.eD,Zpx:()=>dk,Fts:()=>n6,$FU:()=>sZ,oJ5:()=>C.oJ,RLu:()=>e1,wBN:()=>nC,Ybt:()=>tU,A14:()=>cR.A1,o2o:()=>cR.o2,hHg:()=>tS.hH,CDb:()=>nh,BpQ:()=>eJ,gLn:()=>cD.gL,Bnh:()=>s4.Bn,oIl:()=>iZ,uVo:()=>tb,Ie6:()=>i3,mKE:()=>M,dWc:()=>ut,CM3:()=>cD.CM,SMJ:()=>tS.SM,lcp:()=>tq,ivi:()=>ls,dIg:()=>td,jmZ:()=>cD.jm,sD1:()=>ll,ymi:()=>ty,Kgy:()=>cR.Kg,ESx:()=>s2.ES,wLo:()=>nk,vy4:()=>r5,Et2:()=>C.Et,xdz:()=>Z,Y5n:()=>t4.EditFormModel,BgT:()=>lV,S0L:()=>X,zTu:()=>u$,qtW:()=>ad,Ni4:()=>e6,Mf0:()=>lf,khg:()=>oi,S5n:()=>r2,k9Q:()=>sk,Q7G:()=>cD.Q7,mw3:()=>dC,D2p:()=>uH,mp5:()=>dg,LaP:()=>eE,eDQ:()=>cR.eD,qJ3:()=>sm,s5y:()=>J,ql0:()=>ld,dWg:()=>aq,e7h:()=>l0,ZjK:()=>t2,w5F:()=>ea,C9C:()=>cD.C9,aqk:()=>er,JUj:()=>tV.JU,udY:()=>o$,Vrl:()=>sQ,t4X:()=>au,JgE:()=>t9,kbf:()=>dF,fLT:()=>ti.fL,HZo:()=>tS.HZ,LbM:()=>sH,oLV:()=>eO.o,T6P:()=>e0,KHY:()=>nF,WuM:()=>u2,zgg:()=>e_.z,Hwd:()=>cT.H,Evi:()=>cR.Ev,Qb_:()=>cR.Qb,AV5:()=>iX,cEK:()=>eS,XCP:()=>s2.XC,pVr:()=>ab});var i,a,s,d,u,c,p,h,m,f={};l.r(f),l.d(f,{connectFields:()=>nd,customizeFilterRender:()=>nw,defaultOperator:()=>nh,operatorComponentProps:()=>nF});var g={};l.r(g),l.d(g,{ActionGroupModel:()=>Z,ActionModel:()=>X,ActionSceneEnum:()=>J,ActionWithoutPermission:()=>G,AddChildActionModel:()=>tq,AddNewActionModel:()=>e3,AssignFormGridModel:()=>tW,AssignFormItemModel:()=>lt,AssignFormModel:()=>tz,AssociationFieldGroupModel:()=>eo,AssociationFieldModel:()=>lb,BasePageTabModel:()=>eJ,BlockGridModel:()=>eE,BlockModel:()=>e_.z,BlockSceneEnum:()=>e_.P,BulkDeleteActionModel:()=>e6,CascadeSelectFieldModel:()=>iB,CascadeSelectInnerFieldModel:()=>iO,CascadeSelectListFieldModel:()=>iq,CheckboxFieldModel:()=>an,CheckboxGroupFieldModel:()=>ar,ChildPageModel:()=>eK,ChildPageTabModel:()=>eQ,ClickableFieldModel:()=>iF,CollectionActionGroupModel:()=>ee,CollectionActionModel:()=>eR,CollectionBlockModel:()=>eT.t,CollectionSelectorFieldModel:()=>aa,ColorFieldModel:()=>au,CommonItemModel:()=>eD,CreateContent:()=>lB,CreateFormModel:()=>nk,CustomWidth:()=>n8,DataBlockModel:()=>eN.R,DateOnlyFieldModel:()=>ay,DateOnlyFilterFieldModel:()=>lQ,DateOnlyPicker:()=>av,DateTimeFilterFieldModel:()=>lJ,DateTimeNoTzFieldModel:()=>ax,DateTimeNoTzFilterFieldModel:()=>l0,DateTimeNoTzPicker:()=>ab,DateTimeTzFieldModel:()=>aF,DateTimeTzFilterFieldModel:()=>l2,DateTimeTzPicker:()=>aM,DeleteActionModel:()=>e9,DetailsAssociationFieldGroupModel:()=>ll,DetailsBlockModel:()=>li,DetailsCustomItemModel:()=>ls,DetailsGridModel:()=>ld,DetailsItemModel:()=>t2,DetailsJSFieldItemModel:()=>lm,DisplayCheckboxFieldModel:()=>s1,DisplayColorFieldModel:()=>sC,DisplayDateTimeFieldModel:()=>sP,DisplayEnumFieldModel:()=>sE,DisplayHtmlFieldModel:()=>sR,DisplayIconFieldModel:()=>sT,DisplayJSONFieldModel:()=>sO,DisplayNumberFieldModel:()=>sH,DisplayPasswordFieldModel:()=>sG,DisplayPercentFieldModel:()=>sJ,DisplaySubItemFieldModel:()=>sS,DisplaySubListFieldModel:()=>sk,DisplaySubTableFieldModel:()=>sw,DisplayTextFieldModel:()=>sX,DisplayTimeFieldModel:()=>sZ,DisplayTitleFieldModel:()=>sg,DisplayURLFieldModel:()=>sQ,DividerItemModel:()=>ss,EditActionModel:()=>e7,EditFormContent:()=>iX,EditFormModel:()=>t4.EditFormModel,ExpandCollapseActionModel:()=>tO,FieldDeletePlaceholder:()=>n4,FieldModel:()=>eO.o,FieldModelSelect:()=>oi,FieldOperatorSelect:()=>oF,FilterActionModel:()=>to,FilterBlockModel:()=>e$,FilterFormActionGroupModel:()=>oq,FilterFormActionModel:()=>oB,FilterFormBlockModel:()=>oG,FilterFormCollapseActionModel:()=>o0,FilterFormCustomFieldModel:()=>oI,FilterFormCustomItemModel:()=>oA,FilterFormCustomRecordSelectFieldModel:()=>o$,FilterFormFieldModel:()=>lf,FilterFormGridModel:()=>nt,FilterFormItemModel:()=>ne,FilterFormJSActionModel:()=>nl,FilterFormRecordSelectFieldModel:()=>lY,FilterFormResetActionModel:()=>no,FilterFormSubmitActionModel:()=>nn,FilterManager:()=>es,FormActionGroupModel:()=>th,FormActionModel:()=>tc,FormAssociationFieldGroupModel:()=>nD,FormAssociationItemModel:()=>nq,FormBlockContent:()=>tV.JU,FormBlockModel:()=>tV.F4,FormComponent:()=>tV.s2,FormCustomItemModel:()=>nC,FormGridModel:()=>tU,FormItemModel:()=>t9,FormJSFieldItemModel:()=>nP,FormModel:()=>tV.mO,FormSubmitActionModel:()=>tp,GRID_FLOW_KEY:()=>eS,GRID_STEP:()=>eM,GridModel:()=>eA,IconFieldModel:()=>aj,InputFieldModel:()=>nf.m,InputNumberField:()=>a$,JSActionModel:()=>ts,JSBlockModel:()=>nz,JSCollectionActionModel:()=>td,JSColumnModel:()=>rq,JSEditableFieldModel:()=>sa,JSFieldModel:()=>sn,JSFormActionModel:()=>nj,JSItemActionModel:()=>ty,JSItemModel:()=>sm,JSRecordActionModel:()=>tb,JsonFieldModel:()=>o,JsonInput:()=>aT,LinkActionModel:()=>tN,MainPageModel:()=>eH,MarkdownItemModel:()=>sh,NBColorPicker:()=>ad,NumberFieldModel:()=>aB,ObjectNester:()=>ig,PageModel:()=>eV,PageTabModel:()=>eZ,PasswordFieldModel:()=>aq,PercentFieldModel:()=>aU,PercentInput:()=>aK,PluginSettingsTopbarActionModel:()=>s2.ES,PopupActionModel:()=>e4,PopupCollectionActionModel:()=>tx,PopupSubTableActionGroupModel:()=>i6,PopupSubTableActionsColumnModel:()=>ae,PopupSubTableEditActionModel:()=>iZ,PopupSubTableFieldModel:()=>i8,PopupSubTableFormActionGroupModel:()=>tg,PopupSubTableFormModel:()=>at,PopupSubTableFormSubmitActionModel:()=>tf,PopupSubTableRemoveActionModel:()=>i3,QUICK_EDIT_FORM_MAX_HEIGHT:()=>nE,QUICK_EDIT_MARKDOWN_HEIGHT:()=>n_,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>nI,QuickEditFormModel:()=>nT,RadioGroupFieldModel:()=>aW,RecordActionGroupModel:()=>et,RecordActionModel:()=>e5,RecordPickerContent:()=>r5,RecordPickerFieldModel:()=>r3,RecordSelectFieldModel:()=>lV,RefreshActionModel:()=>tw,RichTextField:()=>a1,RichTextFieldModel:()=>n,RootPageModel:()=>e0,RootPageTabModel:()=>eX,RouteModel:()=>e8.j,SelectFieldModel:()=>a5,SourceCascader:()=>oC,SubFormFieldModel:()=>iv,SubFormListFieldModel:()=>ib,SubPageModel:()=>e1,SubTableColumnModel:()=>ia,SubTableFieldModel:()=>ip,SubTableRecordAction:()=>iQ,TableActionsColumnModel:()=>rt,TableAssociationFieldGroupModel:()=>rl,TableBlockModel:()=>r_,TableColumnModel:()=>n3,TableCustomColumnModel:()=>n6,TableJSFieldItemModel:()=>r$,TableSelectModel:()=>rO,TextareaFieldModel:()=>r,TimeFieldModel:()=>se,TopbarActionModel:()=>s2.k9,UIEditorTopbarActionModel:()=>s2.h2,USER_CENTER_ACTION_ID:()=>s4.Bn,UnitConversion:()=>sY,UpdateRecordActionModel:()=>tP,UserCenterActionItemModel:()=>s4.ng,UserCenterItemModel:()=>s4.np,UserCenterSelectItemModel:()=>s4.FK,UserCenterTextItemModel:()=>s4.ys,UserCenterTopbarActionModel:()=>s4.cc,VariableFieldFormModel:()=>sl,ViewActionModel:()=>tj,buildDisplayPathFromValue:()=>iE,buildRecordPickerParentItemContext:()=>r0,buildRecordPickerPopupContextInputArgs:()=>r2,collectAssociationHydrationCandidates:()=>lN,collectCascadeHydrationCandidate:()=>ij,connectFields:()=>nd,customizeFilterRender:()=>nw,defaultOperator:()=>nh,findOptionPathByTk:()=>i_,formatNumber:()=>sU,getAllDataModels:()=>ea,getDefaultOperator:()=>er,getDetailsItemValue:()=>t0,getDisplayNumber:()=>sW,getQuickEditFieldProps:()=>nR,getTopbarPluginSettingsItems:()=>s2.XC,getValueWithIndex:()=>tZ,injectRecordPickerPopupContext:()=>r1,isFilterValueEmpty:()=>ei,joinUrlSearch:()=>t_,markCascadeHydrationDone:()=>iI,operatorComponentProps:()=>nF,recalculateGridSizes:()=>eC,resolveCustomFieldOperatorList:()=>ow,resolveDefaultCustomFieldOperator:()=>oS,toOperatorSelectOptions:()=>oM,transformNestedData:()=>iS,transformRowsToSingleColumn:()=>ek});var v={};l.r(v),l.d(v,{aclCheck:()=>d_,aclCheckRefresh:()=>dO,actionLinkageRules:()=>uU,afterSuccess:()=>M,blockHeight:()=>us,blockLinkageRules:()=>uK,confirm:()=>F,customVariable:()=>dd,dataLoadingMode:()=>dF,dataScope:()=>D,dateTimeFormat:()=>dw,detailsFieldLinkageRules:()=>uY,displayFieldComponent:()=>dj,fieldComponent:()=>dI,fieldLinkageRules:()=>uW,filterFormDefaultValues:()=>uo,fixed:()=>dq,formAssignRules:()=>ut,layout:()=>dk,linkageAssignField:()=>uO,linkageRulesRefresh:()=>un,linkageRunjs:()=>uB,linkageSetActionProps:()=>uC,linkageSetBlockProps:()=>uk,linkageSetDetailsFieldProps:()=>uI,linkageSetFieldProps:()=>uP,navigateToURL:()=>da,numberFormat:()=>uQ,openView:()=>s9,overflowMode:()=>uJ,pattern:()=>d$,refreshTargetBlocks:()=>dm,renderMode:()=>dA,required:()=>dC,runjs:()=>s7,setTargetDataScope:()=>dg,showMessage:()=>dl,showNotification:()=>di,sortingRule:()=>dM,subFormFieldLinkageRules:()=>uH,subFormLinkageAssignField:()=>u$,subFormLinkageSetFieldProps:()=>uj,titleField:()=>dx,validation:()=>dB});var y=l(40532),b=l(2077),x=l(65970),w=l(96436),S=l(47785);let M=(0,y.defineAction)({name:"afterSuccess",title:(0,y.tExpr)("After successful submission"),uiSchema:{successMessage:{type:"string",title:(0,y.tExpr)("Popup message"),"x-decorator":"FormItem","x-component":"Input.TextArea"},manualClose:{type:"boolean",title:(0,y.tExpr)("Message popup close method"),"x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:(0,y.tExpr)("Automatic close"),value:!1},{label:(0,y.tExpr)("Manually close"),value:!0}]},actionAfterSuccess:{type:"string",title:(0,y.tExpr)("Action after successful submission"),"x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:(0,y.tExpr)("Stay on the current popup or page"),value:"stay"},{label:(0,y.tExpr)("Return to the previous popup or page"),value:"previous"},{label:(0,y.tExpr)("Close popup and redirect to"),value:"redirect"}]},redirectTo:{type:"string",title:(0,y.tExpr)("Link"),"x-decorator":"FormItem","x-component":S.n,"x-reactions":{dependencies:["actionAfterSuccess"],fulfill:{state:{visible:"{{$deps[0]==='redirect'}}"}}}}},defaultParams:{successMessage:(0,y.tExpr)("Saved successfully"),manualClose:!1,actionAfterSuccess:"previous"},async handler(e,t){let{successMessage:l,manualClose:o=!1,actionAfterSuccess:n="previous",redirectTo:r}=t;"previous"===n&&e.view&&e.view.close();let i=t=>{if(e.engine){let t=e.engine;for(;t.nextEngine;)t=t.nextEngine;let l=[],o=t;for(;o;)l.push(o),o=o.previousEngine;for(let e of l)e.destroyView()}e.router.navigate(t)},a=e=>{if((0,w.isURL)(e)){window.location.href=e;return}i(e)};if(l){let t=e.t(l);if(o)return void await e.modal.success({title:t,onOk:async()=>{"redirect"===n&&r&&a(r)}});e.message.success(t)}"redirect"===n&&r&&a(r)}}),F=(0,y.defineAction)({name:"confirm",title:(0,y.tExpr)("Confirmation"),uiSchema:{enable:{type:"boolean",title:(0,y.tExpr)("Enable secondary confirmation"),"x-decorator":"FormItem","x-component":"Switch"},title:{type:"string",title:(0,y.tExpr)("Title"),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:2}},content:{type:"string",title:(0,y.tExpr)("Content"),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:3}}},defaultParams:{enable:!1,title:(0,y.tExpr)("Please Confirm"),content:(0,y.tExpr)("Are you sure you want to perform the action?")},async handler(e,t){t.enable&&(await e.modal.confirm({title:e.t(t.title,{ns:"lm-flow-engine"}),content:e.t(t.content,{ns:"lm-flow-engine"}),okText:e.t("Confirm"),cancelText:e.t("Cancel")})||e.exit())}});var A=l(74848),k=l(96540),C=l(80512),P=l(40098),j=l.n(P);let I={__nocobaseDataScopeNull__:!0};function E(e){return e&&"object"==typeof e&&!Array.isArray(e)&&!0===e.__nocobaseDataScopeNull__&&1===Object.keys(e).length}function _(e){return E(e)?null:Array.isArray(e)?e.map(e=>_(e)):e&&"object"==typeof e?Object.keys(e).reduce((t,l)=>(t[l]=_(e[l]),t),{}):e}function R(e,t){if(e&&t&&"object"==typeof e&&"object"==typeof t){if("path"in e&&"operator"in e){(0,y.isVariableExpression)(e.value)&&(void 0===t.value||null===t.value||""===t.value)&&(t.value=I);return}Array.isArray(e.items)&&Array.isArray(t.items)&&e.items.forEach((e,l)=>{R(e,t.items[l])})}}function T(e,t){let l=j().cloneDeep(t);return R(e,l),_((0,y.pruneFilter)((0,w.transformFilter)(l)))}let D=(0,y.defineAction)({name:"dataScope",title:(0,y.tExpr)("Data scope"),uiMode:{type:"dialog",props:{width:800}},uiSchema:{filter:{type:"object","x-decorator":"FormItem","x-component":function(e){let t=(0,y.useFlowSettingsContext)();return(0,A.jsx)(C.I8,{value:e.value,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:t.model,rightAsVariable:!0})})}}},defaultParams:e=>({filter:{logic:"$and",items:[]}}),useRawParams:!0,async handler(e,t){var l;let o=null==(l=e.model)?void 0:l.resource;if(!o)return;let n=await e.resolveJsonTemplate(t.filter),r=T(t.filter,n);(0,w.isEmptyFilter)(r)?o.removeFilterGroup(e.model.uid):o.addFilterGroup(e.model.uid,r)}});var N=l(7259),O=l(9556),$=l(16629),B=l(42441);function q(e){return(0,A.jsx)($.A,{...e,children:(0,A.jsx)(B.A,{paragraph:{rows:3}})})}function L(e){let{uid:t,...l}=e,o=(0,y.useFlowModelById)(t);return(0,A.jsx)(y.FlowModelRenderer,{model:o,fallback:(0,A.jsx)(q,{style:{margin:(null==o?void 0:o.context.isMobileLayout)?8:null==o?void 0:o.context.themeToken.marginBlock}}),hideRemoveInSettings:!0,showFlowSettings:{showBackground:!1,showBorder:!1},...l})}let V=k.memo(e=>{let{pageModelClass:t="ChildPageModel",parentId:l,onModelLoaded:o,defaultTabTitle:n,...r}=e,i=(0,y.useFlowEngine)(),a=(0,y.useFlowViewContext)(),{loading:s,data:d}=(0,N.A)(async()=>{let e={async:!0,parentId:l,subKey:"page",subType:"object",use:t};if("ChildPageModel"===t){var r;e.subModels={tabs:[{use:"ChildPageTabModel",stepParams:{pageTabSettings:{tab:{title:n||(null==(r=i.translate)?void 0:r.call(i,"Details"))}}}}]},e.stepParams={pageSettings:{general:{displayTitle:!1,enableTabs:!0}}}}let s=await i.loadOrCreateModel(e,{skipSave:!i.context.flowSettingsEnabled});return(null==s?void 0:s.uid)&&o&&(s.context.addDelegate(a),s.removeParentDelegate(),o(s.uid,s)),s},{refreshDeps:[l]});return!s&&(null==d?void 0:d.uid)?(0,A.jsx)(L,{uid:d.uid,...r}):(0,A.jsx)(q,{style:{margin:(null==a?void 0:a.isMobileLayout)?8:null==a?void 0:a.themeToken.marginBlock}})});V.displayName="FlowPage";let z=e=>{let{uid:t,parentId:l,subKey:o,...n}=e,r=(0,y.useFlowEngine)(),{loading:i,data:a}=(0,N.A)(async()=>await r.loadModel({uid:t,parentId:l,subKey:o}),{refreshDeps:[t,l,o]});return!i&&(null==a?void 0:a.uid)?(0,A.jsx)(L,{uid:a.uid,...n}):(0,A.jsx)(q,{style:{margin:16}})};var K=l(50467),U=l(45895),W=l(42443),H=l(71021),Y=l(18492);function G(e){let{t}=(0,Y.B)(),l=(0,y.useFlowModel)(),o=l.context.blockModel,n=e.collection||o.collection,r=n.dataSource,i=(0,k.useMemo)(()=>{let e=`${t(r.displayName||r.key)} > `,l=n?`${t(n.title)||n.name||n.tableName} `:"";return`${e}${l}`},[]),{actionName:a}=(null==e?void 0:e.forbidden)||l.forbidden,s=(0,k.useMemo)(()=>t('The current user only has the UI configuration permission, but don\'t have "{{actionName}}" permission for collection "{{name}}"',{name:i,actionName:t(j().capitalize(a))}).replaceAll("&gt;",">"),[a,i,t]);return(0,A.jsx)(W.A,{title:e.message||s,children:e.children})}let J={collection:"collection",record:"record",all:["collection","record"],both:["collection","record"]};class X extends y.FlowModel{static _getScene(){return j().castArray(this.scene||[])}static _isScene(e){return this._getScene().includes(e)}getAclActionName(){return null}onInit(e){super.onInit(e),this.context.defineProperty("actionName",{get:()=>this.getAclActionName(),cache:!1})}getInputArgs(){let e={},t=[];if(this.context.resource){let l=this.context.resource.getSourceId();l&&(e.sourceId=l,t.push("sourceId"))}if(this.context.collection&&this.context.record){let l=this.context.collection.getFilterByTK(this.context.record);l&&(e.filterByTk=l,t.push("filterByTk"))}return t.length&&(e.defaultInputKeys=t),e}onClick(e){this.dispatchEvent("click",{event:e,...this.getInputArgs()},{debounce:!0})}getTitle(){return this.props.title}getIcon(){return this.props.icon}renderButton(){let e=this.props,t=this.getIcon()?(0,A.jsx)(U.In,{type:this.getIcon()}):void 0;return(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,children:e.children||this.getTitle()})}render(){return this.props.tooltip?(0,A.jsx)(W.A,{title:this.props.tooltip,children:this.renderButton()}):this.renderButton()}renderHiddenInConfig(){let e=this.props,t=this.getIcon()?(0,A.jsx)(U.In,{type:this.getIcon()}):void 0;return this.forbidden?(0,A.jsx)(G,{children:(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,style:{opacity:"0.3"},children:e.children||this.getTitle()})}):(0,A.jsx)(W.A,{title:this.context.t("The button is hidden and only visible when the UI Editor is active"),children:(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,style:{opacity:"0.3"},children:e.children||this.getTitle()})})}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("Action")}),(0,K._)(this,"enableEditTooltip",!0),(0,K._)(this,"enableEditTitle",!0),(0,K._)(this,"enableEditIcon",!0),(0,K._)(this,"enableEditType",!0),(0,K._)(this,"enableEditDanger",!0),(0,K._)(this,"enableEditColor",!1)}}var Q=l(94130);class Z extends y.FlowModel{static getAllParentClasses(){let e=[],t=this;for(;t&&t!==Object;)(null==(t=Object.getPrototypeOf(t))?void 0:t.currentModels)&&e.push(t);return e}static get currentModels(){return Object.prototype.hasOwnProperty.call(this,"_models")&&this._models||(this._models=new Map),this._models}static get models(){let e=new Map;for(let t of this.getAllParentClasses())for(let[l,o]of t.currentModels)e.set(l,o);for(let[t,l]of this.currentModels)e.set(t,l);return e}static registerActionModels(e){for(let[t,l]of Object.entries(e))Object.defineProperty(l,"name",{value:t}),this.currentModels.set(t,l)}static isActionModelVisible(e,t){var l;let o=t.collection||(null==(l=t.blockModel)?void 0:l.collection),n=(0,Q.GX)(e);return(0,Q.F3)(o,n)}static async defineChildren(e){let t=this.baseClass?await (0,y.buildSubModelItems)(this.baseClass)(e):[],l=[],o=t.filter(t=>{let l=e.engine.getModelClass(t.useModel);return!!this.isActionModelVisible(l,e)&&(!this.scene||l._isScene(this.scene))});for(let[t,n]of this.models){if(!this.isActionModelVisible(n,e)||o.find(e=>e.useModel===n.name))continue;let t=await (0,y.buildSubModelItem)(n,e);t&&l.push(t)}return j().sortBy([...o,...l],"sort")}}(0,K._)(Z,"baseClass",void 0),(0,K._)(Z,"scene",void 0),(0,K._)(Z,"_models",void 0);class ee extends Z{}(0,K._)(ee,"baseClass",X),(0,K._)(ee,"scene",J.collection);class et extends Z{}(0,K._)(et,"baseClass",X),(0,K._)(et,"scene",J.record);var el=l(2117);X.registerFlow({key:"buttonSettings",title:(0,y.tExpr)("Button settings"),sort:-999,steps:{general:{title:(0,y.tExpr)("Edit button"),uiSchema:e=>({title:e.model.enableEditTitle?{"x-decorator":"FormItem","x-component":"Input",title:(0,y.tExpr)("Button title")}:void 0,tooltip:e.model.enableEditTooltip?{"x-decorator":"FormItem","x-component":"Input",title:(0,y.tExpr)("Button tooltip")}:void 0,icon:e.model.enableEditIcon?{"x-decorator":"FormItem","x-component":"IconPicker",title:(0,y.tExpr)("Button icon")}:void 0,type:e.model.enableEditType?{"x-decorator":"FormItem","x-component":"Radio.Group",title:(0,y.tExpr)("Button type"),enum:[{value:"default",label:'{{t("Default")}}'},{value:"primary",label:'{{t("Primary")}}'},{value:"dashed",label:'{{t("Dashed")}}'},{value:"link",label:'{{t("Link")}}'},{value:"text",label:'{{t("Text")}}'}]}:void 0,danger:e.model.enableEditDanger?{"x-decorator":"FormItem","x-component":"Switch",title:(0,y.tExpr)("Danger action")}:void 0,color:e.model.enableEditColor?{"x-decorator":"FormItem","x-component":b.sk,title:(0,y.tExpr)("Color")}:void 0}),defaultParams:e=>e.model.defaultProps,handler(e,t){let{title:l,tooltip:o,...n}=t;e.model.setProps({title:e.t(l,{ns:"lm-flow-engine"}),tooltip:e.t(o,{ns:"lm-flow-engine"}),...n})}},linkageRules:{use:"actionLinkageRules"}}}),X.registerFlow({key:"buttonAclSettings",steps:{aclCheck:{use:"aclCheck"}}}),X.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh"},linkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"actionLinkageRules",flowKey:"buttonSettings",stepKey:"linkageRules"}}}}),X.registerEvents({click:{title:(0,y.tExpr)("Click"),name:"click",uiSchema:{condition:{type:"object",title:(0,y.tExpr)("Trigger condition"),"x-decorator":"FormItem","x-component":el.H}},handler:el.b}});class eo extends y.FlowModel{static defineChildren(e){let t=this.itemModelName,l=function(o){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return o.getToOneAssociationFields().map(o=>{let r=n?`${n}.${o.name}`:o.name;return o.targetCollection?{key:`${r}-assocationField`,label:o.title,children:()=>[{key:`${r}-children-collectionField`,label:e.t("Display fields"),type:"group",children:o.targetCollection.getFields().map(l=>{let o=`${r}.${l.name}`,n=y.DisplayItemModel.getDefaultBindingByField(e,l,{fallbackToTargetTitleField:!0});if(!n)return;let i=n.modelName;return{key:`c-${r}.${l.name}`,label:l.title,useModel:t,toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===o},createModelOptions:{stepParams:{fieldSettings:{init:{dataSourceKey:e.collection.dataSourceKey,collectionName:e.prefixFieldPath?e.blockModel.context.collection.name:e.collection.name,fieldPath:o,associationPathName:r}}},subModels:{field:{use:i}}}}}).filter(Boolean)},{key:`${r}-children-associationField`,label:"Display association fields",type:"group",children:(l(o.targetCollection,r)||[]).filter(Boolean)}]}:void console.error(`AssociationFieldGroupModel: target collection ${o.target} not found for field ${o.name}`)}).filter(Boolean)};return l(e.collection,e.prefixFieldPath)}}(0,K._)(eo,"itemModelName","DetailsItemModel"),eo.define({label:'{{t("Display fields")}}'});var en=l(18853);function er(e){var t,l,o,n,r,i;return e.operator||(null==(t=e.getStepParams("filterFormItemSettings","defaultOperator"))?void 0:t.value)||(null==(l=e.subModels.field)?void 0:l.operator)||(null==(i=e.collectionField)||null==(r=i.filterable)||null==(n=r.operators)||null==(o=n[0])?void 0:o.value)||"$includes"}function ei(e){return!!(null==e||"string"==typeof e&&""===e.trim()||Array.isArray(e)&&0===e.filter(e=>null!=e&&("string"!=typeof e||""!==e.trim())).length)||"object"==typeof e&&e.constructor===Object&&0===Object.keys(e).length}function ea(e){return e.filterSubModels("items",e=>{var t;return!!(null==(t=e.resource)?void 0:t.supportsFilter)})}class es{async saveFilterConfigs(){await this.gridModel.saveStepParams()}getFilterConfigs(){return this.filterConfigs}getConnectFieldsConfig(e){let t=this.filterConfigs.filter(t=>t.filterId===e);if(0!==t.length)return{targets:t.map(e=>({targetId:e.targetId,filterPaths:e.filterPaths}))}}async saveConnectFieldsConfig(e,t){let l=t.targets.map(t=>({filterId:e,targetId:t.targetId,filterPaths:t.filterPaths})),o=this.filterConfigs.filter(t=>t.filterId!==e);this.filterConfigs=[],this.filterConfigs.push(...o,...l),await this.saveFilterConfigs()}async addFilterConfig(e){if(!e.filterId||!e.targetId)return void console.error("FilterConfig must have filterId, targetId, and operator");if(!Array.isArray(e.filterPaths)||0===e.filterPaths.length)return void console.error("FilterConfig must have non-empty filterPaths array");let t=this.filterConfigs.findIndex(t=>t.filterId===e.filterId&&t.targetId===e.targetId);t>=0?this.filterConfigs[t]={...e}:this.filterConfigs.push({...e}),await this.saveFilterConfigs()}async removeFilterConfig(e){let{filterId:t,targetId:l,persist:o=!0}=e;if(!t&&!l)return console.error("At least one of filterId or targetId must be provided"),0;let n=this.filterConfigs.length;this.filterConfigs=this.filterConfigs.filter(e=>t&&l?e.filterId!==t||e.targetId!==l:t?e.filterId!==t:!l||e.targetId!==l);let r=n-this.filterConfigs.length;return r>0&&o&&await this.saveFilterConfigs(),r}bindToTarget(e){if(!e||"string"!=typeof e)return void console.error("[NocoBase]: targetId must be a non-empty string");let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`[NocoBase]: Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.addFilterGroup)return void console.error(`[NocoBase]: Target model with uid "${e}" does not have a valid resource with addFilterGroup method`);if("function"!=typeof t.resource.removeFilterGroup)return void console.error(`[NocoBase]: Target model with uid "${e}" does not have a valid resource with removeFilterGroup method`);let l=this.filterConfigs.filter(t=>t.targetId===e);if(0===l.length)return;let o=t;l.forEach(e=>{let l=this.gridModel.flowEngine.getModel(e.filterId);if(!l)return void console.error(`[NocoBase]: Filter model with uid "${e.filterId}" not found`);if(!l.getFilterValue)return void console.error(`[NocoBase]: Filter model with uid "${e.filterId}" does not have getFilterValue method`);let n=l.getFilterValue();if(ei(n)){try{t.resource.removeFilterGroup(e.filterId),o.setFilterActive(e.filterId,!1)}catch(e){console.error(`[NocoBase]: Failed to remove filter configuration from target model: ${e.message}`)}return}o.setFilterActive(e.filterId,!0);let r=e.filterPaths.map(t=>({path:t,operator:e.operator||er(l),value:n}));try{if(1===r.length)t.resource.addFilterGroup(e.filterId,new y.FilterItem({path:r[0].path,operator:r[0].operator,value:r[0].value}));else if(r.length>1){let l={logic:"$or",items:r};t.resource.addFilterGroup(e.filterId,new y.FilterGroup(l))}}catch(e){console.error(`Failed to bind filter configuration to target model: ${e.message}`);return}})}unbindFromTarget(e){if(!e||"string"!=typeof e)return void console.error("targetId must be a non-empty string");let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.removeFilterGroup)return void console.error(`Target model with uid "${e}" does not have a valid resource with removeFilterGroup method`);let l=this.filterConfigs.filter(t=>t.targetId===e);if(0===l.length)return;let o=t;l.forEach(e=>{try{t.resource.removeFilterGroup(e.filterId),"function"==typeof(null==o?void 0:o.removeFilterSource)&&o.removeFilterSource(e.filterId)}catch(e){console.error(`Failed to unbind filter configuration from target model: ${e.message}`);return}})}async refreshTargetsByFilter(e){if(!e)return void console.error("filterId must be provided");let t=Array.isArray(e)?e:[e];if(0===t.length||t.some(e=>!e||"string"!=typeof e))return void console.error("filterId must be non-empty string(s)");let l=this.filterConfigs.filter(e=>t.includes(e.filterId));if(0===l.length)return;let o=[...new Set(l.map(e=>e.targetId))].map(async e=>{try{this.bindToTarget(e);let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.refresh)return void console.error(`Target model with uid "${e}" does not have a valid resource with refresh method`);let l=t,o=t.resource,n=l.getDataLoadingMode();if("manual"===n&&!l.hasActiveFilters()){o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1;return}"function"==typeof o.setPage&&o.setPage(1),await o.refresh()}catch(t){console.error(`Failed to refresh target model "${e}": ${t.message}`);return}});await Promise.all(o)}constructor(e,t){(0,K._)(this,"filterConfigs",void 0),(0,K._)(this,"gridModel",void 0),this.gridModel=e,this.filterConfigs=t||[]}}var ed=l(27253),eu=l(84626),ec=l(47152),ep=l(16370);function eh(e){let{rows:t={},sizes:l={},layout:o,renderItem:n,rowGap:r=16,colGap:i=16,dragOverlayRect:a}=e,s=o||(0,y.normalizeGridLayout)({rows:t,sizes:l});return s.rows.length?(0,A.jsxs)("div",{style:{position:"relative",display:"flex",flexDirection:"column",gap:r},"data-grid-root":!0,children:[a&&(0,A.jsx)(eg,{rect:a}),(0,A.jsx)(em,{rows:s.rows,renderItem:n,rowGap:r,colGap:i,parentPath:[]})]}):(0,A.jsx)("div",{style:{position:"relative"},"data-grid-root":!0,"data-grid-empty-container":!0,children:a&&(0,A.jsx)(eg,{rect:a})})}function em(e){let{rows:t,renderItem:l,rowGap:o,colGap:n,parentPath:r}=e;return(0,A.jsx)(A.Fragment,{children:t.map(e=>{let t=e.cells.length,i=e.sizes||[],a=i.some(e=>null!=e&&void 0!==e),s=[...r,{rowId:e.id}],d=e.cells.map((e,l)=>{if(!a)return 24/t;{let e=i.reduce((e,t)=>e+(t||0),0),o=t-i.filter(Boolean).length,n=o>0?(24-e)/o:0;return i[l]??n}});return(0,A.jsx)(ec.A,{gutter:n,"data-grid-row-id":e.id,"data-grid-path":JSON.stringify(s),children:e.cells.map((t,r)=>(0,A.jsx)(ef,{rowKey:e.id,columnIndex:r,span:d[r],rowGap:o,colGap:n,cell:t,path:[...s.slice(0,-1),{rowId:e.id,cellId:t.id}],renderItem:l},t.id))},e.id)})})}let ef=k.memo(function(e){var t;let{rowKey:l,columnIndex:o,span:n,rowGap:r,colGap:i,cell:a,path:s,renderItem:d}=e,u=a.items||[];return(0,A.jsx)(ep.A,{span:n,"data-grid-column-row-id":l,"data-grid-column-index":o,"data-grid-path":JSON.stringify(s),children:(0,A.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:r},children:[u.map((e,t)=>e===y.EMPTY_COLUMN_UID?null:(0,A.jsx)("div",{"data-grid-item-row-id":l,"data-grid-column-index":o,"data-grid-item-index":t,"data-grid-item-uid":e,"data-grid-path":JSON.stringify(s),children:d(e)},e)),(null==(t=a.rows)?void 0:t.length)?(0,A.jsx)(em,{rows:a.rows,renderItem:d,rowGap:r,colGap:i,parentPath:s}):null]})})});function eg(e){let{rect:t}=e,l={position:"absolute",top:t.top,left:t.left,width:t.width,height:t.height,borderRadius:6,pointerEvents:"none",transition:"all 60ms ease-out",zIndex:100},o={column:{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.08)"},"column-edge":{border:"2px solid var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.12)"},"row-gap":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.05)"},"empty-row":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.04)"},"empty-column":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.04)"},"item-edge":{border:"2px solid var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.12)"}};return(0,A.jsx)("div",{style:{...l,...o[t.type]}})}ef.displayName="GridColumn";var ev=l(18220),ey=l(95725),eb=l(40919);let ex=e=>{let{value:t,onChange:l,rows:o=10,...n}=e,[r,i]=(0,k.useState)(()=>t?JSON.stringify(t,null,2):""),[a,s]=(0,k.useState)(null);(0,k.useEffect)(()=>{i(t?JSON.stringify(t,null,2):"")},[t]);let d=e=>{let t=e.target.value;i(t);try{let e=t.trim()?JSON.parse(t):void 0;s(null),null==l||l(e)}catch(e){s(e.message)}};return(0,A.jsxs)("div",{children:[(0,A.jsx)(ey.A.TextArea,{value:r,autoSize:{minRows:o,maxRows:o+10},onChange:d,...n}),a&&(0,A.jsx)(eb.A,{type:"error",message:a,showIcon:!0,style:{marginTop:8}})]})},ew=(0,ev.connect)(ex),eS="gridSettings",eM="grid",eF=e=>{if(!e)return null;if("number"==typeof e.clientX&&"number"==typeof e.clientY)return{x:e.clientX,y:e.clientY};if(e.touches&&e.touches.length>0){let t=e.touches[0];return{x:t.clientX,y:t.clientY}}if(e.changedTouches&&e.changedTouches.length>0){let t=e.changedTouches[0];return{x:t.clientX,y:t.clientY}}return null};class eA extends y.FlowModel{bindDragDocumentListeners(){var e;let t=(null==(e=this.getDragContainer())?void 0:e.ownerDocument)||("u"<typeof document?null:document);if(!t)return;let l={capture:!0,passive:!0},o={capture:!0},n=t.defaultView;return t.addEventListener("pointermove",this.updateDragPointerPosition,l),t.addEventListener("mousemove",this.updateDragPointerPosition,l),t.addEventListener("touchmove",this.updateDragPointerPosition,l),t.addEventListener("scroll",this.handleDragScroll,l),null==n||n.addEventListener("scroll",this.handleDragScroll,l),()=>{t.removeEventListener("pointermove",this.updateDragPointerPosition,o),t.removeEventListener("mousemove",this.updateDragPointerPosition,o),t.removeEventListener("touchmove",this.updateDragPointerPosition,o),t.removeEventListener("scroll",this.handleDragScroll,o),null==n||n.removeEventListener("scroll",this.handleDragScroll,o)}}deriveRowOrder(e,t){let l=[],o=new Set;return(t||Object.keys(e)).forEach(t=>{e[t]&&!o.has(t)&&(l.push(t),o.add(t))}),Object.keys(e).forEach(e=>{o.has(e)||(l.push(e),o.add(e))}),l}normalizeRowsWithOrder(e,t){let l=this.deriveRowOrder(e,t),o={};return l.forEach(t=>{e[t]&&(o[t]=e[t])}),Object.keys(e).forEach(t=>{o[t]||(o[t]=e[t])}),{rows:o,rowOrder:l}}orderSizesByRowOrder(e,t){let l={};return t.forEach(t=>{e[t]&&(l[t]=e[t])}),Object.keys(e).forEach(t=>{l[t]||(l[t]=e[t])}),l}getItemFlowSettings(){return this._memoItemFlowSettings||(this._memoItemFlowSettings={showBackground:!1,showDragHandle:!0,...this.itemFlowSettings}),this._memoItemFlowSettings}getItemUids(){return(this.subModels.items||[]).map(e=>e.uid)}normalizeLayoutFromSource(e){let t=this.getStepParams(eS,eM)||{};return(0,y.normalizeGridLayout)({layout:(null==e?void 0:e.layout)??this.props.layout??t.layout,rows:(null==e?void 0:e.rows)??this.props.rows??t.rows,sizes:(null==e?void 0:e.sizes)??this.props.sizes??t.sizes,rowOrder:(null==e?void 0:e.rowOrder)??this.props.rowOrder??t.rowOrder,itemUids:this.getItemUids(),gridUid:this.uid,logger:console})}getGridLayout(){return this.normalizeLayoutFromSource()}syncLayoutProps(e){let t=(0,y.projectLayoutToLegacyRows)(e);this.setProps("layout",e),this.setProps("rows",t.rows),this.setProps("sizes",t.sizes),this.setProps("rowOrder",t.rowOrder)}setGridStepLayout(e){this.setStepParams(eS,{[eM]:{layout:e}})}findLayoutRowByPath(e,t){if(!(null==t?void 0:t.length))return null;let l=e.rows;for(let e=0;e<t.length;e+=1){let o=t[e],n=l.find(e=>e.id===o.rowId);if(!n)break;if(e===t.length-1)return n;let r=n.cells.find(e=>e.id===o.cellId);l=(null==r?void 0:r.rows)||[]}return null}collectCellItemsForResize(e){return Array.isArray(e.items)?[...e.items]:(e.rows||[]).flatMap(e=>e.cells.flatMap(e=>this.collectCellItemsForResize(e)))}buildResizedCells(e,t){let l=new Set;return t.map((t,o)=>{let n=e.cells.findIndex((e,o)=>!l.has(o)&&j().isEqual(this.collectCellItemsForResize(e),t));if(-1!==n){l.add(n);let o=e.cells[n];return o.rows&&!o.items?j().cloneDeep(o):{id:o.id,items:[...t]}}return{id:`${e.id}:cell:${o}:${(0,ed.uid)()}`,items:[...t]}})}getResizeRowPath(e){if(!(null==e?void 0:e.length))return[];let t=e.map(e=>({...e}));return delete t[t.length-1].cellId,t}getResizeContainerWidth(e){var t,l,o;let n=this.getResizeRowPath(e),r=(null==(t=this.gridContainerRef.current)?void 0:t.clientWidth)||0;if(!n.length)return r;let i=Array.from((null==(l=this.gridContainerRef.current)?void 0:l.querySelectorAll("[data-grid-row-id]"))||[]).find(e=>{try{return j().isEqual(JSON.parse(e.dataset.gridPath||"[]"),n)}catch{return!1}});return(null==i||null==(o=i.parentElement)?void 0:o.clientWidth)||r}resizeGridLayout(e){var t;let{direction:l,resizeDistance:o,model:n}=e,r=this.getGridLayout(),i=(0,y.findModelUidLayoutPosition)(r,n.uid);if(!i)return null;let a=this.findLayoutRowByPath(r,i.path);if(!a)return null;let s=this.getResizeContainerWidth(i.path),d=a.cells.map(e=>this.collectCellItemsForResize(e)),{newRows:u,newSizes:c,moveDistance:p}=eC({position:{rowId:a.id,columnIndex:i.cellIndex,itemIndex:i.itemIndex},direction:l,resizeDistance:o,prevMoveDistance:this.prevMoveDistance,oldRows:{[a.id]:d},oldSizes:{[a.id]:a.sizes||[]},gutter:(null==(t=this.context.themeToken)?void 0:t.marginBlock)??16,gridContainerWidth:s}),h=j().cloneDeep(r),m=this.findLayoutRowByPath(h,i.path);return m?(m.cells=this.buildResizedCells(a,u[a.id]||[]),m.sizes=c[a.id]||[],{layout:(0,y.normalizeGridLayout)({layout:h,itemUids:this.getItemUids(),gridUid:this.uid,logger:console}),moveDistance:p}):null}onMount(){super.onMount(),this.emitter.on("onSubModelAdded",e=>{e.isNew&&(this.resetRows(!0),this.setGridStepLayout(this.props.layout))}),this.emitter.on("onSubModelDestroyed",e=>{var t,l;let o=e.uid;this.resetRows(!0),this.setGridStepLayout(this.props.layout),null==(t=this.context.filterManager)||t.removeFilterConfig({targetId:o}),null==(l=this.context.filterManager)||l.removeFilterConfig({filterId:o}),this.saveStepParams()}),this.emitter.on("onSubModelMoved",()=>{this.resetRows(!0)}),this.emitter.on("onResizeLeft",e=>{let{resizeDistance:t,model:l}=e,o=this.resizeGridLayout({direction:"left",resizeDistance:t,model:l});o&&(this.prevMoveDistance=o.moveDistance,this.syncLayoutProps(o.layout))}),this.emitter.on("onResizeRight",e=>{let{resizeDistance:t,model:l}=e,o=this.resizeGridLayout({direction:"right",resizeDistance:t,model:l});o&&(this.prevMoveDistance=o.moveDistance,this.syncLayoutProps(o.layout))}),this.emitter.on("onResizeBottom",e=>{let{resizeDistance:t,model:l}=e}),this.emitter.on("onResizeEnd",()=>{this.prevMoveDistance=0,this.saveGridLayout(this.props.layout)})}saveGridLayout(e){let t=e&&"version"in e?(0,y.normalizeGridLayout)({layout:e,itemUids:this.getItemUids(),gridUid:this.uid,logger:console}):this.normalizeLayoutFromSource(e);this.setGridStepLayout(t),this.syncLayoutProps(t),this.saveStepParams()}mergeRowsWithItems(e){let t=this.subModels.items||[];if(!t||0===t.length)return{};let l=new Set(t.map(e=>e.uid));l.add(y.EMPTY_COLUMN_UID);let o=new Set,n={};for(let[t,r]of Object.entries(e)){let e=r.map(e=>j().castArray(e).filter(e=>l.has(e))).filter(e=>e.length>0);e.length>0&&(n[t]=e,e.forEach(e=>e.forEach(e=>o.add(e))))}let r=new Set;for(let e of(Object.values(n).forEach(e=>e.forEach(e=>e.forEach(e=>r.add(e)))),t))r.has(e.uid)||(n[(0,ed.uid)()]=[[e.uid]]);return n}resetRows(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.getStepParams(eS,eM)||{},l=this.normalizeLayoutFromSource(t);this.setGridStepLayout(l),e&&this.syncLayoutProps(l)}computePointerPosition(e){var t;if(!this.dragState)return null;if(this.dragState.pointerPosition)return this.dragState.pointerPosition;let l=this.dragState.pointerOrigin;if(l)return{x:l.x+e.delta.x,y:l.y+e.delta.y};let o=eF(e.activatorEvent);if(o)return this.dragState.pointerOrigin=o,{x:o.x+e.delta.x,y:o.y+e.delta.y};let n=null==(t=e.over)?void 0:t.rect;return n?{x:n.left+n.width/2,y:n.top+n.height/2}:null}getDragContainer(){if(!this.dragState)return this.gridContainerRef.current;let e=this.gridContainerRef.current;return e&&this.dragState.containerEl!==e&&(this.dragState.containerEl=e),this.dragState.containerEl||e}updateLayoutSnapshot(){if(!this.dragState)return;let e=(0,y.buildLayoutSnapshot)({container:this.getDragContainer()});this.dragState.slots=e.slots,this.dragState.containerRect=e.containerRect}scheduleSnapshotRefresh(){!this.dragState||this.dragState.refreshTimer||(this.dragState.refreshTimer=setTimeout(()=>{this.dragState&&(this.dragState.refreshTimer=null,this.updateLayoutSnapshot(),this.refreshPreviewFromPointer())},16))}refreshPreviewFromPointer(){if(!this.dragState)return;let e=this.dragState.pointerPosition||this.dragState.pointerOrigin;if(!e)return;let t=this.resolveDragSlot(e);this.applyPreview(t)}computeOverlayRect(e){var t,l,o,n;let r=this.dragOverlayConfig,i=e.rect;switch(e.type){case"column":{let l=null==r||null==(t=r.columnInsert)?void 0:t[e.position],o=(null==l?void 0:l.height)??i.height,n=(null==l?void 0:l.offsetTop)??0;return{top:i.top+n,left:i.left,width:i.width,height:o}}case"column-edge":{let t=null==r||null==(l=r.columnEdge)?void 0:l[e.direction],o=(null==t?void 0:t.width)??i.width,n=(null==t?void 0:t.offsetLeft)??0;return{top:i.top,left:i.left+n,width:o,height:i.height}}case"item-edge":{let t=null==r||null==(o=r.columnEdge)?void 0:o[e.direction],l=(null==t?void 0:t.width)??i.width,n=(null==t?void 0:t.offsetLeft)??0;return{top:i.top,left:i.left+n,width:l,height:i.height}}case"row-gap":{let t=null==r||null==(n=r.rowGap)?void 0:n[e.position],l=(null==t?void 0:t.height)??i.height,o=(null==t?void 0:t.offsetTop)??0;return{top:i.top+o,left:i.left,width:i.width,height:l}}default:return{top:i.top,left:i.left,width:i.width,height:i.height}}}getHitTestSlot(e){return{...e,rect:this.computeOverlayRect(e)}}resolveDragSlot(e){var t;return(null==(t=this.dragState)?void 0:t.slots.length)?(0,y.resolveDropIntent)(e,this.dragState.slots.map(e=>this.getHitTestSlot(e))):null}applyPreview(e){if(!this.dragState)return;if(!e){null!==this.dragState.activeSlotKey&&(this.dragState.activeSlotKey=null,this.dragState.previewLayout=void 0,this.setProps("dragOverlayRect",null));return}let t=(0,y.getSlotKey)(e);if(this.dragState.activeSlotKey===t&&this.dragState.previewLayout)return;let l=(0,y.simulateLayoutForSlot)({slot:e,sourceUid:this.dragState.sourceUid,layout:this.dragState.snapshot,generateRowId:ed.uid,generatedIds:this.dragState.generatedIds,generateId:()=>(0,ed.uid)()});if(l.layout&&this.dragState.snapshot.layout&&(0,y.isSameGridLayout)(l.layout,this.dragState.snapshot.layout))return void this.applyPreview(null);this.dragState.previewLayout={rows:j().cloneDeep(l.rows),sizes:j().cloneDeep(l.sizes),rowOrder:j().cloneDeep(l.rowOrder),layout:j().cloneDeep(l.layout)};let o=this.computeOverlayRect(e),n={top:o.top-this.dragState.containerRect.top,left:o.left-this.dragState.containerRect.left,width:o.width,height:o.height,type:e.type};this.setProps("dragOverlayRect",n),this.dragState.activeSlotKey=t}handleDragStart(e){let t=e.active.id,l=this.normalizeLayoutFromSource(),o=(0,y.projectLayoutToLegacyRows)(l);this.dragState={sourceUid:t,snapshot:{rows:j().cloneDeep(o.rows),sizes:j().cloneDeep(o.sizes),rowOrder:j().cloneDeep(o.rowOrder),layout:j().cloneDeep(l)},slots:[],containerEl:this.gridContainerRef.current,containerRect:{top:0,left:0,width:0,height:0},pointerOrigin:eF(e.activatorEvent)??void 0,activeSlotKey:null,previewLayout:void 0,refreshTimer:null,generatedIds:new Map},this.dragState.cleanupListeners=this.bindDragDocumentListeners(),this.setProps("dragOverlayRect",null),this.updateLayoutSnapshot(),this.scheduleSnapshotRefresh()}handleDragMove(e){if(!this.dragState)return;this.dragState.slots.length||this.updateLayoutSnapshot();let t=this.computePointerPosition(e);if(!t)return void this.applyPreview(null);let l=this.resolveDragSlot(t);this.applyPreview(l)}finishDrag(){var e,t;this.dragState&&(this.dragState.refreshTimer&&clearTimeout(this.dragState.refreshTimer),null==(e=(t=this.dragState).cleanupListeners)||e.call(t),this.dragState=void 0,this.setProps("dragOverlayRect",null))}handleDragEnd(e){if(!this.dragState)return;let t=this.dragState.previewLayout;t&&(t.layout?this.syncLayoutProps(j().cloneDeep(t.layout)):(this.setProps("rows",j().cloneDeep(t.rows)),this.setProps("sizes",j().cloneDeep(t.sizes)),t.rowOrder&&this.setProps("rowOrder",j().cloneDeep(t.rowOrder))),this.saveGridLayout(t)),this.finishDrag()}handleDragCancel(e){this.finishDrag()}renderAddSubModelButton(){throw Error("renderAddSubModelButton method must be implemented in subclasses of GridModel")}getVisibleLayout(){var e;let t=this.normalizeLayoutFromSource(),l=this.context.isMobileLayout?(0,y.normalizeGridLayout)({rows:ek((0,y.projectLayoutToLegacyRows)(t).rows),itemUids:this.getItemUids()}):t,o=(0,y.projectLayoutToLegacyRows)(l),{rows:n,rowOrder:r}=this.normalizeRowsWithOrder(o.rows,o.rowOrder),i=this.orderSizesByRowOrder(o.sizes,r);if(this.context.flowSettingsEnabled)return{layout:l,rows:n,sizes:i};let a=(null==(e=this.subModels)?void 0:e.items)||[];if(!a.length)return{layout:l,rows:o.rows,sizes:o.sizes};let s=new Map(a.map(e=>[e.uid,e])),d=e=>e.map(e=>{let t=[],l=[];return e.cells.forEach((o,n)=>{var r;let i=null==(r=e.sizes)?void 0:r[n],a=Number.isFinite(i)&&i>0?i:1;if(o.rows){let e=d(o.rows);e.length&&(t.push({...o,rows:e}),l.push(a));return}let u=(o.items||[]).filter(e=>{var t;return e!==y.EMPTY_COLUMN_UID&&(null==(t=s.get(e))?void 0:t.hidden)!==!0});u.some(e=>{let t=s.get(e);return!t||!t.hidden})&&(t.push({...o,items:u}),l.push(a))}),t.length?{...e,cells:t,sizes:l}:null}).filter(Boolean),u=(0,y.normalizeGridLayout)({layout:{version:2,rows:d(l.rows)}}),c=(0,y.projectLayoutToLegacyRows)(u);return{layout:u,rows:c.rows,sizes:c.sizes}}render(){let{layout:e,rows:t,sizes:l}=this.getVisibleLayout(),o=Object.keys(t||{}).length>0;return(0,A.jsxs)(A.Fragment,{children:[o&&(0,A.jsx)(eu.A,{ref:this.gridContainerRef,direction:"vertical",style:{width:"100%",marginBottom:this.props.rowGap},size:this.props.rowGap,children:(0,A.jsx)(y.DndProvider,{onDragStart:this.handleDragStart.bind(this),onDragMove:this.handleDragMove.bind(this),onDragEnd:this.handleDragEnd.bind(this),onDragCancel:this.handleDragCancel.bind(this),children:(0,A.jsx)(eh,{rowGap:this.props.rowGap,colGap:this.props.colGap,layout:e,rows:t,sizes:l,dragOverlayRect:this.props.dragOverlayRect,renderItem:e=>{var t,l,o,n,r;let i=this.flowEngine.getModel(e);if(!i)return this.itemFallback;let a=this.context.fieldKey,s=this.context.fieldIndex,d=this.context.getPropertyOptions("item"),u=null==(t=(l=this.context).getPropertyOptions)?void 0:t.call(l,"record"),c=null==(o=(n=this.context).getPropertyOptions)?void 0:o.call(n,"currentObject"),p=null==s?i:(()=>{let t=i.createFork({},`${a}:${e}`);t.context.defineProperty("fieldIndex",{get:()=>s}),t.context.defineProperty("fieldKey",{get:()=>a}),t.context.defineProperty("record",{get:()=>this.context.record,cache:!1,meta:null==u?void 0:u.meta,resolveOnServer:null==u?void 0:u.resolveOnServer,serverOnlyWhenContextParams:null==u?void 0:u.serverOnlyWhenContextParams}),t.context.defineProperty("currentObject",{get:()=>this.context.currentObject,cache:!1,resolveOnServer:null==c?void 0:c.resolveOnServer,serverOnlyWhenContextParams:null==c?void 0:c.serverOnlyWhenContextParams});let{value:l,...o}=d||{};return t.context.defineProperty("item",{...o,get:()=>this.context.item,cache:!1}),t})();return(0,A.jsx)(y.Droppable,{model:p,children:(0,A.jsx)(y.MemoFlowModelRenderer,{model:p,fallback:i.skeleton||this.itemFallback,showFlowSettings:!!this.context.flowSettingsEnabled&&this.getItemFlowSettings(),showErrorFallback:!0,settingsMenuLevel:(null==p?void 0:p.settingsMenuLevel)??this.itemSettingsMenuLevel,showTitle:!0,extraToolbarItems:this.itemExtraToolbarItems},`${p.uid}:${a}:${(null==p?void 0:p.use)||(null==p||null==(r=p.constructor)?void 0:r.name)||"m"}`)})}})})}),this.context.flowSettingsEnabled&&(0,A.jsx)("div",{style:{marginBottom:16},children:this.renderAddSubModelButton()})]})}constructor(...e){super(...e),(0,K._)(this,"subModelBaseClass","BlockModel"),(0,K._)(this,"gridContainerRef",k.createRef()),(0,K._)(this,"prevMoveDistance",0),(0,K._)(this,"itemSettingsMenuLevel",1),(0,K._)(this,"itemFlowSettings",{}),(0,K._)(this,"dragOverlayConfig",void 0),(0,K._)(this,"itemFallback",(0,A.jsx)(q,{})),(0,K._)(this,"itemExtraToolbarItems",[{key:"drag-handler",component:y.DragHandler,sort:1}]),(0,K._)(this,"dragState",void 0),(0,K._)(this,"_memoItemFlowSettings",void 0),(0,K._)(this,"updateDragPointerPosition",e=>{if(!this.dragState)return;let t=eF(e);t&&(this.dragState.pointerPosition=t)}),(0,K._)(this,"handleDragScroll",()=>{this.dragState&&this.scheduleSnapshotRefresh()})}}function ek(e,t){let l=(null==t?void 0:t.emptyColumnUid)??y.EMPTY_COLUMN_UID,o={};return Object.keys(e).forEach(t=>{e[t].forEach(e=>{let t=e.filter(e=>e!==l);t.length>0&&(o[(0,ed.uid)()]=[t])})}),o}function eC(e){var t,l;let{position:o,direction:n,resizeDistance:r,prevMoveDistance:i,oldSizes:a,oldRows:s,gridContainerWidth:d,gutter:u=16,columnCount:c=24}=e,p=j().cloneDeep(s),h=j().cloneDeep(a),m=Math.floor(r/(d-u*((h[o.rowId]||[]).length-1))*c);if(m===i)return{newRows:p,newSizes:h,moveDistance:m};(t=h)[l=o.rowId]??(t[l]=[c]);let f=h[o.rowId],g=m-i,v="left"===n&&o.columnIndex>0,y="right"===n&&o.columnIndex<f.length-1;if(!v&&!y&&g>0){let e=c-f.reduce((e,t)=>e+t,0);if(e<=0)return{newRows:p,newSizes:h,moveDistance:i};g>e&&(m=i+e,g=e)}if(h[o.rowId][o.columnIndex]+=g,"left"===n&&o.columnIndex>0&&(h[o.rowId][o.columnIndex-1]-=g,0===h[o.rowId][o.columnIndex-1]&&ej({rows:p,sizes:h,position:o,direction:"left"})),"left"===n&&0===o.columnIndex){let e=h[o.rowId].slice(1).reduce((e,t)=>e+t,0);h[o.rowId][0]<c-e&&eP({rows:p,sizes:h,position:o,direction:"left"})}if("right"===n&&o.columnIndex<h[o.rowId].length-1&&(h[o.rowId][o.columnIndex+1]-=g,0===h[o.rowId][o.columnIndex+1]&&ej({rows:p,sizes:h,position:o,direction:"right"})),"right"===n&&o.columnIndex===h[o.rowId].length-1){let e=h[o.rowId].slice(0,-1).reduce((e,t)=>e+t,0);h[o.rowId][o.columnIndex]<c-e&&eP({rows:p,sizes:h,position:o,direction:"right"})}return{newRows:p,newSizes:h,moveDistance:m}}function eP(e){let{rows:t,sizes:l,position:o,direction:n}=e,r=t[o.rowId]||[],i=l[o.rowId]||[];if("left"===n){let e=r[o.columnIndex-1];if(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID))return;r.splice(o.columnIndex,0,[y.EMPTY_COLUMN_UID]),i.splice(o.columnIndex,0,1)}if("right"===n){let e=r[o.columnIndex+1];if(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID))return;r.splice(o.columnIndex+1,0,[y.EMPTY_COLUMN_UID]),i.splice(o.columnIndex+1,0,1)}}function ej(e){let{rows:t,sizes:l,position:o,direction:n}=e,r=t[o.rowId]||[],i=l[o.rowId]||[];if("left"===n){let e=r[o.columnIndex-1];if(!(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID)))return;r.splice(o.columnIndex-1,1),i.splice(o.columnIndex-1,1)}if("right"===n){let e=r[o.columnIndex+1];if(!(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID)))return;r.splice(o.columnIndex+1,1),i.splice(o.columnIndex+1,1)}}eA.registerFlow({key:eS,steps:{resetRows:{handler(e){e.model.resetRows()}},grid:{uiSchema:{layout:{title:(0,y.tExpr)("Layout"),"x-decorator":"FormItem","x-component":ew,"x-component-props":{autoSize:{minRows:10,maxRows:20},description:(0,y.tExpr)("Configure the nested layout of the grid.")}}},async handler(e,t){let l=e.model,o=(0,y.normalizeGridLayout)({layout:t.layout,rows:t.rows,sizes:t.sizes,rowOrder:t.rowOrder,itemUids:l.getItemUids(),gridUid:l.uid,logger:console});l.setGridStepLayout(o),l.syncLayoutProps(o)}}}});let eI=["JSBlockModel","IframeBlockModel","MarkdownBlockModel"];class eE extends eA{onInit(e){super.onInit(e),this.context.defineProperty("blockGridModel",{value:this}),this.context.defineProperty("filterManager",{once:!0,get:()=>new es(this,e.filterManager)})}get subModelBaseClasses(){var e;let t=(null==(e=this.context.view)?void 0:e.inputArgs)??{};return t.collectionName&&!t.filterByTk,["DataBlockModel","FilterBlockModel","BlockModel"]}get filterManager(){return this.context.filterManager}get addBlockItems(){var e,t;if((null==(t=this.context.view)||null==(e=t.inputArgs)?void 0:e.scene)==="select")return async e=>{let t=await (0,y.buildSubModelGroups)(["DataBlockModel","FilterBlockModel"])(e),l=eI.filter(t=>!!e.engine.getModelClass(t)),o=(await Promise.all(l.map(t=>(0,y.buildSubModelItems)(t)(e)))).flat().sort((e,t)=>(e.sort??1e3)-(t.sort??1e3));return o.length>0&&t.push({key:"select-scene-other-blocks",type:"group",label:e.t("Other blocks"),sort:1e3,children:o}),t}}serialize(){let e=super.serialize();return e.filterManager=this.filterManager.getFilterConfigs(),e}renderAddSubModelButton(){let e=this.addBlockItems;return(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"items",items:e,subModelBaseClasses:e?void 0:this.subModelBaseClasses,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(en.A,{}),"data-flow-add-block":!0,children:this.context.t("Add block")})})}render(){return(0,A.jsx)("div",{className:"nb-block-grid",style:this.context.disableBlockGridPadding?null:{padding:this.context.isMobileLayout?8:this.context.themeToken.marginBlock,paddingBottom:0},children:super.render()})}constructor(...e){super(...e),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-12},after:{offsetTop:12}},columnEdge:{left:{offsetLeft:-5},right:{offsetLeft:6}}})}}eE.registerFlow({key:"blockGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",e.isMobileLayout?12:e.themeToken.marginBlock),e.model.setProps("colGap",e.themeToken.marginBlock)}}}});var e_=l(15892);class eR extends X{}eR.define({children:async e=>(await (0,y.buildSubModelItems)(X)(e)).filter(t=>e.engine.getModelClass(t.useModel)._isScene(J.collection))});var eT=l(52175);class eD extends y.FlowModel{}var eN=l(5679),eO=l(81486);class e$ extends e_.z{}e$.define({hide:!0,label:"Filter blocks"});var eB=l(44279),eq=l(21637);async function eL(e){var t,l,o,n,r;(null==(l=e.inputArgs)||null==(t=l.dirty)?void 0:t.hasDirtyForms)&&(await e.modal.confirm({title:e.t("Unsaved changes"),content:e.t("Are you sure you don't want to save?"),okText:e.t("Confirm"),cancelText:e.t("Cancel")})||(null==(r=e.inputArgs)||null==(n=r.controller)||null==(o=n.prevent)||o.call(n),e.exitAll()))}class eV extends y.FlowModel{getActiveTabKey(){var e,t,l,o;let n=null==(t=this.context.view)||null==(e=t.navigation)?void 0:e.viewParams;return n?n.tabUid||(null==(o=this.getFirstTab())?void 0:o.uid):this.props.tabActiveKey||(null==(l=this.getFirstTab())?void 0:l.uid)}scheduleActiveLifecycleRefresh(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.dirtyRefreshScheduled||(this.dirtyRefreshScheduled=!0,Promise.resolve().then(()=>{if(this.dirtyRefreshScheduled=!1,this.unmounted||!1===(0,y.getPageActive)(this.context))return;let t=this.getActiveTabKey();t&&this.invokeTabModelLifecycleMethod(t,"onActive",e)}).catch(()=>{}))}onMount(){var e,t,l,o,n,r,i,a,s;super.onMount(),this.unmounted=!1,this.setProps("tabActiveKey",null==(e=this.context.view.inputArgs)?void 0:e.tabUid),(null==(t=this.context)?void 0:t.pageInfo)&&(this.context.pageInfo.version="v2"),this.updateDocumentTitle(),this.viewActivatedListener||(this.viewActivatedListener=e=>{let t=this.getActiveTabKey();t&&this.invokeTabModelLifecycleMethod(t,"onActive")},null==(r=this.flowEngine)||null==(n=r.emitter)||null==(o=n.on)||o.call(n,y.VIEW_ACTIVATED_EVENT,this.viewActivatedListener));let d=(0,y.getEmitterViewActivatedVersion)(null==(l=this.flowEngine)?void 0:l.emitter),u=d>0&&d!==this.lastSeenEmitterViewActivatedVersion;if(this.lastSeenEmitterViewActivatedVersion=d,u&&!1!==(0,y.getPageActive)(this.context)){let e=this.getActiveTabKey();e&&this.invokeTabModelLifecycleMethod(e,"onActive")}this.dataSourceDirtyListener||(this.dataSourceDirtyListener=e=>{this.scheduleActiveLifecycleRefresh()},null==(s=this.flowEngine)||null==(a=s.emitter)||null==(i=a.on)||i.call(a,y.DATA_SOURCE_DIRTY_EVENT,this.dataSourceDirtyListener))}onUnmount(){var e,t,l,o,n,r;this.unmounted=!0,this.viewActivatedListener&&(null==(l=this.flowEngine)||null==(t=l.emitter)||null==(e=t.off)||e.call(t,y.VIEW_ACTIVATED_EVENT,this.viewActivatedListener),this.viewActivatedListener=void 0),this.dataSourceDirtyListener&&(null==(r=this.flowEngine)||null==(n=r.emitter)||null==(o=n.off)||o.call(n,y.DATA_SOURCE_DIRTY_EVENT,this.dataSourceDirtyListener),this.dataSourceDirtyListener=void 0),super.onUnmount()}invokeTabModelLifecycleMethod(e,t){var l,o;let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"onActive"===t&&(null==(l=this.context)?void 0:l.pageInfo)&&(this.context.pageInfo.version="v2");let r=this.flowEngine.getModel(e);if(r){if(r.context.tabActive){let e=!1!==(0,y.getPageActive)(r.context);r.context.tabActive.value=e&&"onActive"===t}null==(o=r.subModels.grid)||o.mapSubModels("items",e=>{var l;null==(l=e[t])||l.call(e,n)})}"onActive"===t&&this.updateDocumentTitle(e)}async updateDocumentTitle(e){var t,l,o,n,r,i,a,s,d,u,c,p,h,m,f,g;let v=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this.unmounted||!1===(0,y.getPageActive)(this.context))return;let b=!!(null==(l=this.context)||null==(t=l.view)?void 0:t.navigation),x=null==(r=this.context)||null==(n=r.view)||null==(o=n.inputArgs)?void 0:o.viewUid,w=null==(s=this.flowEngine)||null==(a=s.context)||null==(i=a.route)?void 0:i.pathname;if(b&&x&&"string"==typeof w){let e=null==(d=(0,y.parsePathnameToViewParams)(w).at(-1))?void 0:d.viewUid;if(e&&e!==x)return}let S=++this.documentTitleUpdateVersion,M=async e=>{if(!e||"string"!=typeof e)return"";try{var t,l;let o=await (null==(t=(l=this.context).resolveJsonTemplate)?void 0:t.call(l,e));return null==o?"":String(o)}catch(t){return e}},F="";if(this.props.enableTabs){let t=e||this.getActiveTabKey(),l=t?this.flowEngine.getModel(t):this.getFirstTab();if(!l&&v<5)return void window.setTimeout(()=>{this.unmounted||S===this.documentTitleUpdateVersion&&this.updateDocumentTitle(t,v+1)},0);F=await M(null==l||null==(p=l.stepParams)||null==(c=p.pageTabSettings)||null==(u=c.tab)?void 0:u.documentTitle)||(null==l||null==(h=l.getTabTitle)?void 0:h.call(l))||""}else F=await M(null==(g=this.stepParams)||null==(f=g.pageSettings)||null==(m=f.general)?void 0:m.documentTitle)||this.props.title||"";S===this.documentTitleUpdateVersion&&"string"==typeof F&&""!==F&&(document.title=F)}mapTabs(){return this.mapSubModels("tabs",e=>!this.context.flowSettingsEnabled&&e.hidden?null:{key:e.uid,label:(0,A.jsx)(y.Droppable,{model:e,children:(0,A.jsx)(y.FlowModelRenderer,{model:e,showFlowSettings:{showBackground:!0,showBorder:!1,toolbarPosition:"above",style:{transform:"translateY(8px)"}},extraToolbarItems:[{key:"drag-handler",component:y.DragHandler,sort:1}]})}),children:e.renderChildren()}).filter(Boolean)}getFirstTab(){var e;return null==(e=this.subModels.tabs)?void 0:e[0]}renderFirstTab(){var e;let t=this.getFirstTab();return null==t||null==(e=t.renderChildren)?void 0:e.call(t)}async handleDragEnd(e){throw Error("Method not implemented.")}renderTabs(){var e,t,l,o;let n=(null==(e=this.context.themeToken)?void 0:e.paddingLG)??16,r=void 0!==this.tabBarExtraContent.left?this.tabBarExtraContent.left:(0,A.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:n,height:1}}),i=void 0!==this.tabBarExtraContent.right?this.tabBarExtraContent.right:(0,A.jsx)("span",{style:{display:"inline-flex",marginInlineEnd:n},children:(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"tabs",items:[{key:"blank",label:this.context.t("Blank tab"),createModelOptions:this.createPageTabModelOptions}],children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(en.A,{}),children:this.context.t("Add tab")})})});return(0,A.jsx)(y.DndProvider,{onDragEnd:this.handleDragEnd.bind(this),children:(0,A.jsx)(eq.A,{activeKey:(null==(l=this.context.view)||null==(t=l.navigation)?void 0:t.viewParams)?this.context.view.navigation.viewParams.tabUid||(null==(o=this.getFirstTab())?void 0:o.uid):this.props.tabActiveKey,tabBarStyle:this.props.tabBarStyle,items:this.mapTabs(),onChange:e=>{var t,l;null==(l=this.context.view.navigation)||null==(t=l.changeTo)||t.call(l,{tabUid:e}),this.invokeTabModelLifecycleMethod(e,"onActive"),this.invokeTabModelLifecycleMethod(this.props.tabActiveKey,"onInactive"),this.setProps("tabActiveKey",e)},tabBarExtraContent:{left:r,right:i}})})}render(){let e=this.context.themeToken,t={...this.props.headerStyle};return e&&(t.paddingBlock=e.paddingSM,t.paddingInline=e.paddingLG),this.props.enableTabs&&(t.paddingBottom=0),(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:t}),this.props.enableTabs?this.renderTabs():this.renderFirstTab()]})}constructor(...e){super(...e),(0,K._)(this,"tabBarExtraContent",{}),(0,K._)(this,"viewActivatedListener",void 0),(0,K._)(this,"dataSourceDirtyListener",void 0),(0,K._)(this,"lastSeenEmitterViewActivatedVersion",0),(0,K._)(this,"dirtyRefreshScheduled",!1),(0,K._)(this,"unmounted",!1),(0,K._)(this,"documentTitleUpdateVersion",0),(0,K._)(this,"createPageTabModelOptions",()=>{let e=(0,ed.uid)();return{uid:e,use:"RootPageTabModel",props:{route:{parentId:this.props.routeId,type:"tabs",schemaUid:e,tabSchemaName:(0,ed.uid)(),params:[],hideInMenu:!1,enableTabs:!1}}}})}}eV.registerEvents({close:{title:(0,y.tExpr)("Close"),name:"close",hideInSettings(e){var t;return!!(null==(t=e.view)?void 0:t.preventClose)},uiSchema:{condition:{type:"object",title:(0,y.tExpr)("Trigger condition"),"x-decorator":"FormItem","x-component":el.H}},handler:el.b}}),eV.registerFlow({key:"closeGuard",title:(0,y.tExpr)("Close guard"),on:"close",steps:{confirmUnsavedChanges:{title:(0,y.tExpr)("Unsaved changes confirmation"),handler:eL}}}),eV.registerFlow({key:"pageSettings",title:(0,y.tExpr)("Page settings"),steps:{general:{title:(0,y.tExpr)("Edit page"),uiSchema:{title:{type:"string",title:(0,y.tExpr)("Page title"),"x-decorator":"FormItem","x-component":"Input","x-reactions":{dependencies:["displayTitle"],fulfill:{state:{visible:"{{$deps[0]}}"}}}},documentTitle:{type:"string",title:(0,y.tExpr)("Document title"),description:(0,y.tExpr)("Used as the browser tab title when tabs are disabled. Supports variables. Leave empty to use Page title."),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1,maxRows:6}},displayTitle:{type:"boolean",title:(0,y.tExpr)("Display page title"),"x-decorator":"FormItem","x-component":"Switch"},enableTabs:{type:"boolean",title:(0,y.tExpr)("Enable tabs"),"x-decorator":"FormItem","x-component":"Switch"}},defaultParams:e=>({displayTitle:!0,enableTabs:!1}),async handler(e,t){if(e.model.setProps("displayTitle",t.displayTitle),e.model.context.closable)e.model.setProps("title",e.t(t.title,{ns:"lm-desktop-routes"}));else{var l,o;let n=null==(o=e.model.context)||null==(l=o.currentRoute)?void 0:l.title;e.model.setProps("title",e.t(t.title||n,{ns:"lm-desktop-routes"}))}e.model.setProps("enableTabs",t.enableTabs),"embed"===e.view.type?(e.model.setProps("headerStyle",{backgroundColor:"var(--colorBgContainer)"}),e.model.setProps("tabBarStyle",{backgroundColor:"var(--colorBgContainer)",marginBottom:0})):(e.model.setProps("headerStyle",{backgroundColor:"var(--colorBgLayout)"}),e.model.setProps("tabBarStyle",{backgroundColor:"var(--colorBgLayout)",marginBottom:0})),e.model.updateDocumentTitle()}}}});var ez=l(68904);class eK extends eV{renderBackButtonWhenTabsDisabled(){var e,t,l;if((null==(t=this.context)||null==(e=t.view)?void 0:e.type)!=="embed")return null;let o=null==(l=this.context)?void 0:l.themeToken,n={...this.props.tabBarStyle,paddingBlock:(null==o?void 0:o.paddingXS)??8};return(0,A.jsx)("div",{style:n,children:(0,A.jsx)(eU,{renderSpacerWhenNoBack:!1})})}async handleDragEnd(e){var t,l;if(!(null==(t=e.active)?void 0:t.id)||!(null==(l=e.over)?void 0:l.id))throw Error("Invalid drag event");this.flowEngine.moveModel(e.active.id,e.over.id)}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&this.props.title&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.props.enableTabs?this.renderTabs():(0,A.jsxs)(A.Fragment,{children:[this.renderBackButtonWhenTabsDisabled(),this.renderFirstTab()]})]})}constructor(...e){super(...e),(0,K._)(this,"tabBarExtraContent",{left:(0,A.jsx)(eU,{})}),(0,K._)(this,"createPageTabModelOptions",()=>({use:"ChildPageTabModel"}))}}let eU=e=>{let{renderSpacerWhenNoBack:t=!0}=e,l=(0,y.useFlowContext)(),o=l.themeToken,n=32,r=(null==o?void 0:o.paddingLG)??16,i=(0,k.useMemo)(()=>({width:"auto",height:"auto",lineHeight:1,padding:o.paddingXS,marginLeft:o.paddingLG,marginRight:n-o.paddingXS}),[o.paddingLG,o.paddingXS]);return"embed"!==l.view.type?t?(0,A.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:r,height:1}}):null:(0,A.jsx)(H.Ay,{"aria-label":"back-button",type:"text",icon:(0,A.jsx)(ez.A,{}),style:i,onClick:l.view.close})};class eW extends y.FlowModel{}eW.registerFlow({key:"pageSettings",title:(0,y.tExpr)("Page settings"),steps:{general:{title:(0,y.tExpr)("General"),uiSchema:{title:{type:"string",title:(0,y.tExpr)("Page title"),"x-decorator":"FormItem","x-component":"Input","x-reactions":{dependencies:["displayTitle"],fulfill:{state:{visible:"{{$deps[0]}}"}}}},displayTitle:{type:"boolean",title:(0,y.tExpr)("Display page title"),"x-decorator":"FormItem","x-component":"Switch"}},defaultParams:e=>({displayTitle:!0,enableTabs:!1}),async handler(e,t){if(e.model.setProps("displayTitle",t.displayTitle),e.model.context.closable)e.model.setProps("title",t.title?e.t(t.title):null);else{var l,o;let n=null==(o=e.model.context)||null==(l=o.currentRoute)?void 0:l.title;e.model.setProps("title",e.t(t.title||n))}e.model.setProps("enableTabs",t.enableTabs),e.model.context.closable?(e.model.setProps("headerStyle",{backgroundColor:e.themeToken.colorBgContainer}),e.model.setProps("tabBarStyle",{backgroundColor:e.themeToken.colorBgLayout,paddingInline:16,marginBottom:0})):(e.model.setProps("headerStyle",{backgroundColor:e.themeToken.colorBgContainer}),e.model.setProps("tabBarStyle",{backgroundColor:e.themeToken.colorBgContainer,paddingInline:16,marginBottom:0}))}}}});class eH extends eW{renderFirstTab(){var e;return(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels.tabs)?void 0:e[0]})}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.renderFirstTab()]})}}function eY(e){let{ctx:t,options:l}=e,{data:o,loading:n}=(0,N.A)(async()=>{let e=await t.engine.loadOrCreateModel(l,{skipSave:!t.flowSettingsEnabled});return e.context.addDelegate(t),e},{refreshDeps:[t.model.uid]}),r=(null==t?void 0:t.isMobileLayout)?8:null==t?void 0:t.themeToken.marginBlock;return!n&&(null==o?void 0:o.uid)?(0,A.jsx)(y.FlowModelRenderer,{model:o,fallback:(0,A.jsx)(q,{style:{margin:r}})}):(0,A.jsx)(q,{style:{margin:r}})}function eG(e){return Array.isArray(e)?e.find(e=>!!e&&"object"==typeof e):e&&"object"==typeof e?e:void 0}class eJ extends y.FlowModel{onInit(e){super.onInit(e),this.context.defineProperty("tabActive",{value:y.observable.ref(!0),info:{description:"Whether current tab is active (observable.ref).",detail:"observable.ref<boolean>"}})}getTabTitle(){var e,t;let l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Untitled",o=this.context.t(l,{ns:"client"});return this.context.t(null==(t=this.stepParams.pageTabSettings)||null==(e=t.tab)?void 0:e.title,{ns:"lm-desktop-routes"})||o}getTabIcon(){var e,t;return null==(t=this.stepParams.pageTabSettings)||null==(e=t.tab)?void 0:e.icon}renderChildren(){return null}renderHiddenInConfig(){return(0,A.jsxs)("span",{style:{display:"inline-block",opacity:.5},children:[(0,A.jsx)(b.In,{style:{marginRight:8},type:this.getTabIcon()}),this.getTabTitle()]})}render(){return(0,A.jsxs)("span",{style:{display:"inline-block"},children:[(0,A.jsx)(b.In,{style:{marginRight:8},type:this.getTabIcon()}),this.getTabTitle()]})}}eJ.registerFlow({key:"pageTabSettings",title:(0,y.tExpr)("Tab settings"),steps:{tab:{title:(0,y.tExpr)("Edit tab"),preset:!0,uiSchema:{title:{title:(0,y.tExpr)("Tab name"),"x-component":"Input","x-decorator":"FormItem",required:!0},documentTitle:{type:"string",title:(0,y.tExpr)("Document title"),description:(0,y.tExpr)("Used as the browser tab title when this tab is active. Supports variables. Leave empty to use Tab name."),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1,maxRows:6}},icon:{title:(0,y.tExpr)("Icon"),"x-decorator":"FormItem","x-component":"IconPicker"}},async handler(e,t){var l;let o="function"==typeof(null==e?void 0:e.t)?e.t.bind(e):e=>e;e.model.setProps("title",o(t.title,{ns:"lm-desktop-routes"})),e.model.setProps("icon",t.icon);let n=e.engine.getModel(e.model.parentId);null==n||null==(l=n.updateDocumentTitle)||l.call(n)}}}});class eX extends eJ{renderChildren(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}async saveStepParams(){return this.save()}async save(){var e,t,l,o,n;let r=this.serialize(),i=null==(l=this.stepParams)||null==(t=l.pageTabSettings)||null==(e=t.tab)?void 0:e.documentTitle,a=await this.context.api.request({method:"post",url:"desktopRoutes:updateOrCreate",params:{filterKeys:["schemaUid"]},data:{...this.props.route,title:this.getTabTitle(""),icon:this.getTabIcon(),options:{flowRegistry:r.flowRegistry,documentTitle:i}}}),s=eG(null==a||null==(o=a.data)?void 0:o.data);s&&this.setProps("route",{...this.props.route,...s,options:{...null==(n=this.props.route)?void 0:n.options,...s.options}})}async destroy(){return this.observerDispose(),this.invalidateFlowCache("beforeRender",!0),this.flowEngine.removeModel(this.uid),await this.context.api.request({method:"post",url:"desktopRoutes:destroy",params:{filter:{schemaUid:this.uid}},data:this.props.route}),!0}}class eQ extends eJ{renderChildren(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}}class eZ extends y.FlowModel{render(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}}class e0 extends eV{async ensurePersistedRouteId(e){var t,l,o,n;let r=null==e||null==(l=e.props)||null==(t=l.route)?void 0:t.id;return null!=r?r:("function"==typeof(null==e?void 0:e.save)&&await e.save(),null==e||null==(n=e.props)||null==(o=n.route)?void 0:o.id)}onMount(){super.onMount(),(0,y.reaction)(()=>this.context.pageActive.value,()=>{var e,t;if(this.context.pageActive.value&&this.mounted){let t=null==(e=this.subModels.tabs)?void 0:e[0];t&&(this.setProps("tabActiveKey",t.uid),this.invokeTabModelLifecycleMethod(t.uid,"onActive",!0))}if(!1===this.context.pageActive.value)if(this.props.tabActiveKey)this.invokeTabModelLifecycleMethod(this.props.tabActiveKey,"onInactive");else{let e=null==(t=this.subModels.tabs)?void 0:t[0];e&&this.invokeTabModelLifecycleMethod(e.uid,"onInactive")}this.mounted=!0})}async saveStepParams(){await super.saveStepParams(),this.stepParams.pageSettings&&this.context.api.request({url:`desktopRoutes:update?filter[id]=${this.props.routeId}`,method:"post",data:{enableTabs:!!this.stepParams.pageSettings.general.enableTabs}})}async handleDragEnd(e){var t,l;let o=this.flowEngine.getModel(null==(t=e.active)?void 0:t.id),n=this.flowEngine.getModel(null==(l=e.over)?void 0:l.id);if(!o||!n||o.uid===n.uid)return;let[r,i]=await Promise.all([this.ensurePersistedRouteId(o),this.ensurePersistedRouteId(n)]);null!=r&&null!=i&&(await this.context.api.request({url:"desktopRoutes:move",method:"post",params:{sourceId:r,targetId:i,sortField:"sort"}}),this.flowEngine.moveModel(o.uid,n.uid,{persist:!1}))}constructor(...e){super(...e),(0,K._)(this,"mounted",!1)}}e0.registerFlow({key:"rootPageSettings",steps:{init:{async handler(e,t){if(e.model.hasSubModel("tabs"))return;let l=e.routeRepository.getRouteBySchemaUid(e.model.parentId);for(let t of(e.model.setProps("routeId",null==l?void 0:l.id),j().castArray(null==l?void 0:l.children).sort((e,t)=>e.sort-t.sort))){var o,n;if(t.hideInMenu)continue;let l=e.engine.createModel({parentId:e.model.uid,uid:t.schemaUid,subKey:"tabs",subType:"array",use:"RootPageTabModel",sortIndex:t.sort,props:{route:t},flowRegistry:null==(o=t.options)?void 0:o.flowRegistry,stepParams:{pageTabSettings:{tab:{title:t.title,icon:t.icon,documentTitle:null==(n=t.options)?void 0:n.documentTitle}}}});e.model.addSubModel("tabs",l)}}}}});class e1 extends eW{renderFirstTab(){var e;return(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels.tabs)?void 0:e[0]})}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.renderFirstTab()]})}}var e2=l(76059);class e4 extends X{constructor(...e){super(...e),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Popup"),icon:"ExportOutlined"})}}e4.define({label:(0,y.tExpr)("Popup")}),e4.registerFlow(e2.g);class e5 extends X{}e5.define({children:async e=>(await (0,y.buildSubModelItems)(X)(e)).filter(t=>e.engine.getModelClass(t.useModel)._isScene(J.record))});var e8=l(23235);class e3 extends e4{getAclActionName(){return"create"}constructor(...e){super(...e),(0,K._)(this,"defaultPopupTitle",(0,y.tExpr)("Add new")),(0,K._)(this,"defaultProps",{type:"primary",title:(0,y.tExpr)("Add new"),icon:"PlusOutlined"})}}(0,K._)(e3,"scene",J.collection),e3.define({label:(0,y.tExpr)("Add new"),sort:10});class e6 extends X{getAclActionName(){return"destroy"}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Delete"),icon:"DeleteOutlined"})}}(0,K._)(e6,"scene",J.collection),(0,K._)(e6,"capabilityActionName","destroyMany"),e6.define({label:(0,y.tExpr)("Delete")}),e6.registerFlow({key:"deleteSettings",title:(0,y.tExpr)("Delete settings"),on:"click",steps:{confirm:{use:"confirm",defaultParams:{enable:!0,title:(0,y.tExpr)("Delete record"),content:(0,y.tExpr)("Are you sure you want to delete it?")}},delete:{async handler(e,t){var l;if(!(null==(l=e.blockModel)?void 0:l.resource))return void e.message.error(e.t("No resource selected for deletion"));let o=e.blockModel.resource;0===o.getSelectedRows().length?e.message.warning(e.t("Please select at least one record to delete")):(await o.destroy(e.blockModel.collection.getFilterByTK(o.getSelectedRows())),e.message.success(e.t("Selected records deleted successfully")))}}}});class e9 extends X{getAclActionName(){return"destroy"}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"link",title:(0,y.tExpr)("Delete"),icon:"DeleteOutlined"})}}(0,K._)(e9,"scene",J.record),e9.define({label:(0,y.tExpr)("Delete"),sort:60}),e9.registerFlow({key:"deleteSettings",title:(0,y.tExpr)("Delete settings"),on:"click",steps:{confirm:{use:"confirm",defaultParams:{enable:!0,title:(0,y.tExpr)("Delete record"),content:(0,y.tExpr)("Are you sure you want to delete it?")}},delete:{async handler(e,t){e.resource?e.record?(await e.resource.destroy(e.blockModel.collection.getFilterByTK(e.record)),e.message.success(e.t("Record deleted successfully"))):e.message.error(e.t("No resource or record selected for deletion")):e.message.error(e.t("No resource selected for deletion"))}}}});class e7 extends e4{getAclActionName(){return"update"}constructor(...e){super(...e),(0,K._)(this,"defaultPopupTitle",(0,y.tExpr)("Edit")),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Edit"),icon:"EditOutlined"})}}(0,K._)(e7,"scene",J.record),e7.define({label:(0,y.tExpr)("Edit"),sort:20});var te=l(28073),tt=l(94384),tl=l(68669);class to extends X{getIgnoreFieldNames(){var e;if(this.map.has(this.props.filterableFieldNames))return this.map.get(this.props.filterableFieldNames);let t=(null==(e=this.context.blockModel.collection)?void 0:e.getFields())||[],l=tr(this.props.filterableFieldNames||[],t.map(e=>e.name));return this.map.set(this.props.filterableFieldNames,l),l}render(){return this.context.isMobileLayout?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(y.MobilePopup,{title:this.context.t("Filter"),visible:this.props.open,onClose:()=>{this.setProps("open",!1)},children:(0,A.jsxs)("div",{style:{padding:this.context.themeToken.paddingMD,backgroundColor:this.context.themeToken.colorBgContainer},children:[(0,A.jsx)(tl.a,{value:this.props.filterValue||this.props.defaultFilterValue,ctx:this.context,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:this,ignoreFieldNames:this.getIgnoreFieldNames()})}),(0,A.jsx)("div",{style:{height:150}})]})}),super.render()]}):(0,A.jsx)(te.A,{open:this.props.open,content:(0,A.jsx)(tl.a,{value:this.props.filterValue||this.props.defaultFilterValue,ctx:this.context,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:this,ignoreFieldNames:this.getIgnoreFieldNames()})}),trigger:"click",placement:"bottomLeft",onOpenChange:e=>{!1===e&&this.setProps("open",void 0)},children:super.render()})}constructor(...e){super(...e),(0,K._)(this,"map",new WeakMap),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("Filter"),icon:"FilterOutlined",filterValue:{logic:"$and",items:[]}})}}function tn(e,t){var l;let o=(null==e||null==(l=e.getFields)?void 0:l.call(e))||[];return t?o.filter(e=>{if(!(null==e?void 0:e.interface)||(null==e?void 0:e.filterable)===!1)return!1;let l=t.getFieldInterface(e.interface);return!!(null==l?void 0:l.filterable)}):[]}function tr(e,t){return null==t?void 0:t.filter(t=>!e.includes(t))}(0,K._)(to,"scene","collection"),to.define({label:(0,y.tExpr)("Filter"),toggleable:!0,sort:5}),to.registerFlow({key:"filterSettings",title:(0,y.tExpr)("Filter settings"),steps:{position:{handler(e,t){e.model.setProps("position",t.position||"left")}},filterableFieldNames:{title:(0,y.tExpr)("Filterable fields"),uiSchema:{filterableFieldNames:{type:"array","x-decorator":"FormItem","x-component":e=>{var t,l;let{model:o}=(0,y.useFlowSettingsContext)(),n=null==o||null==(l=o.context)||null==(t=l.app)?void 0:t.dataSourceManager,r=null==n?void 0:n.collectionFieldInterfaceManager,i=tn(o.context.blockModel.collection,r).map(e=>({key:e.name,title:e.title}));return(0,A.jsx)(tt.A,{...e,dataSource:i,targetKeys:e.value||[],onChange:t=>{var l;return null==(l=e.onChange)?void 0:l.call(e,t)},render:e=>e.title})},"x-component-props":{showSearch:!0,listStyle:{width:280,height:360}}}},defaultParams(e){var t,l,o;let n=null==e||null==(o=e.model)||null==(l=o.context)||null==(t=l.app)?void 0:t.dataSourceManager,r=null==n?void 0:n.collectionFieldInterfaceManager;return{filterableFieldNames:tn(e.blockModel.collection,r).map(e=>e.name)||[]}},handler(e,t){e.model.setProps("filterableFieldNames",t.filterableFieldNames)}},defaultFilter:{title:(0,y.tExpr)("Default filter conditions"),uiSchema:{defaultFilter:{type:"object","x-decorator":"FormItem","x-component":e=>{let{model:t}=(0,y.useFlowSettingsContext)();return(0,A.jsx)(C.I8,{value:e.value||{},FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:t})})}}},defaultParams:e=>({defaultFilter:e.model.defaultProps.filterValue}),handler(e,t){e.model.setProps("defaultFilterValue",j().cloneDeep(t.defaultFilter)),e.model.setProps("filterValue",j().cloneDeep(t.defaultFilter))}}}}),to.registerFlow({key:"submitSettings",on:"submit",steps:{submit:{handler(e,t){let l=e.blockModel,o=null==l?void 0:l.resource;if(!l||!o)return;let n=(0,w.transformFilter)(e.model.props.filterValue),r=!(0,w.isEmptyFilter)(n);l.setFilterActive(e.model.uid,r),r?(o.addFilterGroup(e.model.uid,n),o.setPage(1)):o.removeFilterGroup(e.model.uid),"manual"!==l.getDataLoadingMode()||r||l.hasActiveFilters()?o.refresh():(o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1),e.model.setProps("open",!1)}}}}),to.registerFlow({key:"resetSettings",title:(0,y.tExpr)("Reset"),on:"reset",steps:{reset:{handler(e,t){let l=e.blockModel,o=null==l?void 0:l.resource;if(!l||!o)return;o.removeFilterGroup(e.model.uid),l.setFilterActive(e.model.uid,!1);let n=l.getDataLoadingMode(),r=e.model.props.defaultFilterValue,i=!(0,w.isEmptyFilter)((0,w.transformFilter)(r));"manual"!==n||i||l.hasActiveFilters()?(i&&(o.addFilterGroup(e.model.uid,(0,w.transformFilter)(r)),l.setFilterActive(e.model.uid,!0),o.setPage(1)),o.refresh()):(o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1),e.model.setProps("open",!1),e.model.setProps("filterValue",j().cloneDeep(r))}}}}),to.registerFlow({key:"openSettings",on:"click",steps:{open:{handler(e,t){e.model.setProps("open",!e.model.props.open)}}}});var ti=l(95266);function ta(e,t){var l;let o=(null==(l=e.inputArgs)?void 0:l.preview)||{},n=(null==o?void 0:o.version)??(null==t?void 0:t.version)??"v1";return{code:("string"==typeof(null==o?void 0:o.code)?o.code:void 0)??(null==t?void 0:t.code)??"",version:n}}class ts extends X{constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("JS action"),icon:"JavaScriptOutlined"})}}ts.define({label:(0,y.tExpr)("JS action"),sort:9999,createModelOptions:{use:"JSActionModel"}}),ts.registerFlow({key:"clickSettings",on:"click",title:(0,y.tExpr)("Click settings"),steps:{runJs:{title:(0,y.tExpr)("Write JavaScript"),useRawParams:!0,uiSchema:{code:{type:"string","x-component":ti.BY,"x-component-props":{minHeight:"320px",theme:"light",enableLinter:!0,wrapperStyle:{position:"fixed",inset:8}}}},uiMode:{type:"embed",props:{styles:{body:{transform:"translateX(0)"}}}},defaultParams:e=>({version:"v2",code:`
246
+ ${n}`,c)}}let o=E(e.issues.filter(e=>"runtime"===e.type)),n=o?`Key runtime issue: ${_(o)}`:"",r=["RunJS preview output was truncated.",t,e.execution?R(e.execution):void 0,n||void 0].filter(Boolean).join("\n").trim();return r.length<=c?r:T(r,c-1)+"\n"}function O(e){return N(e)}async function $(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o="string"==typeof e?e:String(e??""),n=[],r=[],i=null==l?void 0:l.version,a=(0,d.shouldPreprocessRunJSTemplates)({version:i});r.push(...P(o)),r.push(...j(o));let s="u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now(),u={started:!1,finished:!1,timeout:!1,durationMs:void 0};try{u.started=!0;let{consoleCapture:e,loggerCapture:l}=I(n),s={console:e};try{if("u">typeof window){let e=(0,d.createSafeNavigator)();s.navigator=e,s.window=(0,d.createSafeWindow)({navigator:e}),s.document=(0,d.createSafeDocument)()}}catch(e){}let c=o;try{c=await (0,d.prepareRunJsCode)(o,{preprocessTemplates:a})}catch(o){let e=String((null==o?void 0:o.name)||""),t=y((null==o?void 0:o.message)||o),l=o instanceof SyntaxError||/^SyntaxError\b/i.test(e)||/SyntaxError\b/i.test(t);return r.push({type:"runtime",ruleId:l?"preview-start-failed":"internal",message:l?t:`Preview internal failure: ${t}`,stack:M(o)}),u.finished=!0,u.timeout=!1,{issues:k(r),logs:n,execution:u}}let h=await t.createJSRunner({globals:s,timeoutMs:p,version:i});h.globals.ctx.defineProperty("logger",{value:l});let m=await h.run(c);if(u.finished=!0,u.timeout=!!(null==m?void 0:m.timeout),!(null==m?void 0:m.success)){let e=null==m?void 0:m.error,t=(null==m?void 0:m.timeout)?"Execution timed out":y((null==e?void 0:e.message)||e||"Unknown error"),l=e instanceof SyntaxError||/^SyntaxError\b/i.test(String((null==e?void 0:e.name)||""));r.push({type:"runtime",ruleId:(null==m?void 0:m.timeout)?"timeout":l?"preview-start-failed":"runtime-error",message:t,stack:M(e)})}}catch(e){u.finished=!0,u.timeout=!1,r.push({type:"runtime",ruleId:"internal",message:`Preview internal failure: ${y((null==e?void 0:e.message)||e)}`,stack:M(e)})}finally{let e=Math.max(0,("u">typeof performance&&"function"==typeof performance.now?performance.now():Date.now())-s);u.durationMs=Number.isFinite(e)?e:void 0}return{issues:k(r),logs:n,execution:u}}function B(e){let t=new d.FlowContext;if(t.addDelegate(e),"u">typeof document&&"function"==typeof document.createElement&&!e.element)try{let e=document.createElement("div");t.defineProperty("element",{value:e})}catch(e){}return t}async function q(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},o=B(t),n=await $(e,o,l),r=0===n.issues.length,i=O(n);return{success:r,message:i.length>c?T(i,c):i}}},68669(e,t,l){l.d(t,{a:()=>a});var o=l(74848),n=l(84626),r=l(71021);l(96540);var i=l(7521);let a=(0,l(40532).observer)(e=>{var t;let{value:l,FilterItem:a,ctx:s}=e;l.logic||(l.logic="$and"),Array.isArray(l.items)||(l.items=[]);let d=()=>{var e;(null==s||null==(e=s.model)?void 0:e.dispatchEvent)&&s.model.dispatchEvent("reset")},u=()=>{var e;(null==s||null==(e=s.model)?void 0:e.dispatchEvent)&&s.model.dispatchEvent("submit")},c=(null==s||null==(t=s.model)?void 0:t.translate)||(e=>e);return(0,o.jsxs)("form",{onSubmit:e=>{e.preventDefault(),u()},children:[(0,o.jsx)(i.I,{value:l,FilterItem:a}),(0,o.jsxs)(n.A,{style:{width:"100%",display:"flex",justifyContent:"flex-end"},children:[(0,o.jsx)(r.Ay,{htmlType:"button",onClick:d,children:c("Reset")}),(0,o.jsx)(r.Ay,{type:"primary",htmlType:"submit",children:c("Submit")})]})]})},{displayName:"FilterContent"})},7521(e,t,l){l.d(t,{I:()=>f});var o=l(74848),n=l(97373),r=l(18853),i=l(35710),a=l(36492),s=l(84626),d=l(71021),u=l(18492);l(96540);var c=l(40532);let p=new WeakMap,h=0,m=e=>{let t=p.get(e);return t||(h+=1,t=`filter-item-${h}`,p.set(e,t)),t},f=(0,c.observer)(e=>{let{token:t}=i.A.useToken(),{value:l={logic:"$and",items:[]},FilterItem:c,showBorder:p=!1,onRemove:h,onChange:g,closeIcon:v=(0,o.jsx)(n.A,{style:{color:t.colorIcon}})}=e,{t:y}=(0,u.B)();l.logic||(l.logic="$and"),Array.isArray(l.items)||(l.items=[]);let{logic:b,items:x}=l,w=p?{position:"relative",border:`1px dashed ${t.colorBorder}`,padding:t.paddingSM,marginBottom:t.marginXS,borderRadius:t.borderRadius}:{position:"relative",marginBottom:t.marginXS},S=e=>{l.logic=e,null==g||g(l)},M=()=>{x.push({path:"",operator:"",value:""}),null==g||g(l)},F=()=>{x.push({logic:"$and",items:[]}),null==g||g(l)},A=e=>{x.splice(e,1),null==g||g(l)},k=e=>"path"in e||"operator"in e||"value"in e,C=e=>"logic"in e&&"items"in e;return(0,o.jsxs)("div",{style:w,children:[p&&h&&(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{position:"absolute",right:10,top:10,cursor:"pointer",background:"transparent",border:0,padding:0},onClick:h,children:v}),(0,o.jsx)("div",{style:{marginBottom:8,color:t.colorText},children:(0,o.jsxs)("span",{children:[y("Meet")," ",(0,o.jsxs)(a.A,{"data-testid":"filter-select-all-or-any",style:{width:"auto"},value:b,onChange:S,children:[(0,o.jsx)(a.A.Option,{value:"$and",children:y("All")}),(0,o.jsx)(a.A.Option,{value:"$or",children:y("Any")})]})," ",y("conditions in the group")]})}),(0,o.jsx)("div",{children:x.map((e,n)=>C(e)?(0,o.jsx)(f,{value:e,FilterItem:c,showBorder:!0,onRemove:()=>A(n),onChange:e=>{x[n]=e,null==g||g(l)}},m(e)):k(e)?c?(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsx)(c,{value:e}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)):(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsxs)("span",{children:[e.path," ",e.operator," ",String(e.value)]}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)):(0,o.jsx)("div",{style:{marginBottom:8,display:"flex",alignItems:"flex-end"},children:(0,o.jsxs)(s.A,{style:{flex:1,minWidth:0},children:[(0,o.jsx)("span",{style:{color:t.colorTextTertiary},children:"Invalid filter item"}),(0,o.jsx)("button",{type:"button","aria-label":"icon-close",style:{marginLeft:8,marginRight:8,flex:"0 0 auto",cursor:"pointer",background:"transparent",border:0,padding:0},onClick:()=>A(n),children:v})]})},m(e)))}),(0,o.jsxs)(s.A,{size:16,style:{marginTop:8,marginBottom:8},children:[(0,o.jsx)(d.Ay,{style:{padding:0},type:"link",size:"small",icon:(0,o.jsx)(r.A,{}),onClick:M,children:y("Add condition")}),(0,o.jsx)(d.Ay,{style:{padding:0},type:"link",size:"small",icon:(0,o.jsx)(r.A,{}),onClick:F,children:y("Add condition group")})]})]})},{displayName:"FilterGroup"})},80512(e,t,l){l.d(t,{Ru:()=>K,I8:()=>n.I,qi:()=>h,oJ:()=>o.a,Et:()=>_});var o=l(68669),n=l(7521),r=l(74848),i=l(40532),a=l(84626),s=l(36492),d=l(95725),u=l(96540);let c=(e,t,l,o)=>e.map(e=>p(e,t,l,o)).filter(Boolean),p=(e,t,l,o)=>{var n;if(l.length&&1===t&&l.includes(e.name)||!e.interface||!1===e.filterable)return;let r=e.getInterfaceOptions();if(!(null==r?void 0:r.filterable))return;let{nested:i,children:a,operators:s}=r.filterable,d={name:e.name,type:e.type,target:e.target,title:o(e.title),schema:null==e?void 0:e.uiSchema,operators:((null==s||null==(n=s.filter)?void 0:n.call(s,t=>!(null==t?void 0:t.visible)||t.visible(e)))||[]).map(e=>({...e,label:o(e.label)}))};if(!e.target||!(t>2)){if(t>2)return d;if((null==a?void 0:a.length)&&(d.children=a),i){let n=c(e.getFields().filter(e=>"attachments"!==e.target&&"formula"!==e.interface),t+1,l,o).filter(Boolean);d.children=d.children||[],d.children.push(...n)}return d}},h=(0,i.observer)(e=>{var t;let{path:l,operator:o,value:n}=e.value,i=e.model,p=(null==(t=i.context.blockModel.collection)?void 0:t.getFields().filter(e=>"attachments"!==e.target))||[],h=m(i.props.filterableFieldNames||[],p.map(e=>e.name)),f=i.translate,g=c(p.filter(e=>"attachments"!==e.target&&"formula"!==e.interface&&!["belongsTo","belongsToMany","hasOne","hasMany","oho","obo","m2o","o2m","m2m"].includes(e.type)),1,e.noIgnore?[]:h,f).filter(Boolean),v=(0,u.useMemo)(()=>{let e=g.find(e=>e.name===l);return(null==e?void 0:e.operators)||[]},[g,l]),y=t=>{var l;e.value.path=t;let o=g.find(e=>e.name===t);(null==o||null==(l=o.operators)?void 0:l.length)>0?e.value.operator=o.operators[0].value:e.value.operator="",e.value.value=""},b=t=>{e.value.operator=t},x=t=>{e.value.value=t.target.value};return(0,r.jsxs)(a.A,{children:[(0,r.jsx)(s.A,{style:{width:200},placeholder:f("Select field"),value:l||void 0,onChange:y,children:g.map(e=>(0,r.jsx)(s.A.Option,{value:e.name,children:e.title},e.name))}),(0,r.jsx)(s.A,{style:{width:120},placeholder:f("Select operator"),value:o||void 0,onChange:b,disabled:!l||0===v.length,children:v.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),(0,r.jsx)(d.A,{style:{width:200},placeholder:f("Enter value"),value:n,onChange:x})]})},{displayName:"FilterItem"});function m(e,t){return null==t?void 0:t.filter(t=>!e.includes(t))}var f=l(63718),g=l(94313),v=l(60518),y=l(51643),b=l(60209),x=l(2077),w=l(18451),S=l.n(w),M=l(40098),F=l.n(M),A=l(88967),k=l(85352),C=l(53869);let{DateFilterDynamicComponent:P}=(0,x.RZ)(()=>Promise.resolve().then(l.bind(l,13595)),"DateFilterDynamicComponent");async function j(e){var t,l,o,n;let r=async e=>Array.isArray(e)?e:"function"==typeof e?await e():[];if(null==(l=e.getPropertyOptions)||null==(t=l.call(e,"collection"))?void 0:t.meta){let t=null==(n=e.getPropertyMetaTree)?void 0:n.call(e,"{{ ctx.collection }}");return await r(t)}let a=()=>(null==e?void 0:e.collection)??null,s=await (0,i.createEphemeralContext)(e,{defineProperties:{collection:{get:a,meta:(0,i.createCollectionContextMeta)(a,"Current collection")}}}),d=null==(o=s.getPropertyMetaTree)?void 0:o.call(s,"{{ ctx.collection }}");return await r(d)}function I(e,t,l,o){var n;let i=null==e?void 0:e["x-component"],a=(null==t||null==(n=t.uiSchema)?void 0:n["x-component-props"])||{},u=(null==e?void 0:e["x-component-props"])||{},c=S()({},a,u),p=(0,k.di)(null==e?void 0:e.enum,l)||[],h={style:{width:200,...(null==c?void 0:c.style)||{}},placeholder:(null==c?void 0:c.placeholder)||l("Enter value"),...c},m=e=>{if("number"==typeof e||(null==c?void 0:c.stringMode)===!0&&"string"==typeof e)return e};return e=>{let{value:t,onChange:l,...n}=e||{};if("InputNumber"===i)return(0,r.jsx)(f.A,{...h,...n,value:m(t),onChange:e=>null==l?void 0:l(e)});if("NumberPicker"===i)return(0,r.jsx)(A.NumberPicker,{...h,...n,value:m(t),onChange:e=>null==l?void 0:l(e)});if("Switch"===i)return(0,r.jsx)(g.A,{...h,...n,checked:!!t,onChange:e=>null==l?void 0:l(e)});if("Select"===i)return(0,r.jsx)(s.A,{options:p,...h,...n,value:Array.isArray(t)||"string"==typeof t||"number"==typeof t||"boolean"==typeof t?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Checkbox"===i)return(0,r.jsx)(v.A,{...h,...n,checked:!!t,onChange:e=>null==l?void 0:l(e.target.checked)});if("Checkbox.Group"===i)return(0,r.jsx)(v.A.Group,{...h,...n,value:Array.isArray(t)?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Radio.Group"===i)return(0,r.jsx)(y.Ay.Group,{...h,...n,value:Array.isArray(t)||"string"==typeof t||"number"==typeof t||"boolean"==typeof t?t:void 0,onChange:e=>null==l?void 0:l(e.target.value)});if("Cascader"===i)return(0,r.jsx)(b.A,{...h,...n,value:Array.isArray(t)?t:void 0,onChange:e=>null==l?void 0:l(e)});if("Input.TextArea"===i||"TextArea"===i)return(0,r.jsx)(d.A.TextArea,{...h,...n,value:"string"==typeof t?t:null==t?"":String(t),onChange:e=>null==l?void 0:l(e.target.value)});if("DateFilterDynamicComponent"===i)return(0,r.jsx)(P,{...h,...n,value:t,onChange:e=>null==l?void 0:l(e)});if(i&&(null==o?void 0:o.getComponent)){let e=o.getComponent(i);if(e)return(0,r.jsx)(e,{...h,...n,value:t,onChange:e=>null==l?void 0:l(e),style:{width:200,...h.style||{},...null==n?void 0:n.style}})}return(0,r.jsx)(d.A,{...h,...n,value:"string"==typeof t?t:null==t?"":String(t),onChange:e=>null==l?void 0:l(e.target.value)})}}function E(e){if(e&&"object"==typeof e){let l=e;if("function"==typeof l.preventDefault||l.nativeEvent||"target"in l){var t;let o=null==(t=l.target)?void 0:t.value;return void 0!==o?o:e}}return e}let _=(0,i.observer)(e=>{let{value:t,model:l,rightAsVariable:o,rightMetaTree:n,ignoreFieldNames:c}=e,p=(0,i.useFlowViewContext)(),h=l.translate,{path:m,operator:f,value:g}=t,[v,y]=(0,u.useState)(null),b=(0,u.useMemo)(()=>{var e,t,o,n;if(!v)return[];let r=null==(e=l.context.app)?void 0:e.dataSourceManager,i=v.interface?null==r||null==(t=r.collectionFieldInterfaceManager)?void 0:t.getFieldInterface(v.interface):void 0,a=null==v||null==(o=v.uiSchema)?void 0:o["x-filter-operators"];return((Array.isArray(a)&&a.length?a:null==i||null==(n=i.filterable)?void 0:n.operators)||[]).filter(e=>!e.visible||e.visible(v))},[v,l]);(0,u.useEffect)(()=>{if(!b.length)return;let e=F().find(b,e=>e.value===t.operator);if(e)t.noValue=!!e.noValue;else{let e=b[0];t.operator=e.value,t.value=!!e.noValue||void 0,t.noValue=!!e.noValue}},[b,t]);let x=(0,u.useMemo)(()=>b.map(e=>({value:e.value,label:"string"==typeof e.label?h(e.label):e.label})),[b,h]),w=(0,u.useCallback)((e,l)=>{let o=t.path||"",n=e||"",r=n!==o;t.path=n,r&&o&&(t.operator="",t.value=void 0,t.noValue=!1),l&&y(l)},[t]),M=(0,u.useMemo)(()=>({resolveValueFromPath:e=>(y(e),(null==e?void 0:e.paths.slice(1).join("."))||null),resolvePathFromValue(e){if(null==e)return;let t=String(e).trim();if(t)return["collection",...t.split(".")]}}),[]),A=(0,u.useCallback)(e=>{t.operator=e;let l=b.find(t=>t.value===e);(null==l?void 0:l.noValue)?(t.value=!0,t.noValue=!0):(t.value=void 0,t.noValue=!1)},[b,t]),P=(0,u.useMemo)(()=>b.find(e=>e.value===f),[b,f]),_=(0,u.useCallback)(e=>{var t,l;return(null==e||null==(t=e.options)?void 0:t.dataType)||(null==e?void 0:e.dataType)||(null==e?void 0:e.type)||(null==e||null==(l=e.uiSchema)?void 0:l.type)||"double"},[]),R=(0,u.useCallback)(e=>{switch(e){case"boolean":return"Switch";case"date":return"DateFilterDynamicComponent";case"integer":case"bigInt":case"double":case"decimal":case"number":return"InputNumber";default:return"Input"}},[]),T=(0,u.useMemo)(()=>{let e=(null==v?void 0:v.uiSchema)||{},t=(null==P?void 0:P.schema)||{},l=S()({},e,t);if((null==v?void 0:v.interface)==="formula"){let e={"x-read-pretty":!1,"x-component":R(_(v)),"x-component-props":{...l["x-component-props"]}};return S()({},l,e)}return l},[v,P,R,_]),D=u.useRef(null==T?void 0:T["x-component"]),N=null==T?void 0:T["x-component"],O=(0,u.useMemo)(()=>{let e=D.current;D.current=N;let l=void 0!==e&&e!==N;if(null==P?void 0:P.noValue)return g;if(l&&null!=g){t.value=void 0;return}return g},[N,g,t,P]),$=(0,u.useCallback)(e=>{t.value=E(e)},[t]),B=u.useRef(h);u.useEffect(()=>{B.current=h},[h]);let q=u.useCallback(e=>{var t;return(null==(t=B.current)?void 0:t.call(B,e))??e},[]),L=(0,u.useMemo)(()=>(0,k.di)(null==T?void 0:T.enum,q)||[],[T,q]),V=(0,u.useMemo)(()=>I(T,v,q,l.context.app),[T,v,q,l.context.app]),z=(0,u.useCallback)(()=>{let e=(0,C._)(l.context.app,f,b),t="$in"===f||"$notIn"===f;if(e&&t){let{Comp:t,props:l}=e,o={...l};(!(null==o?void 0:o.options)||(null==o?void 0:o.options.length)===0)&&(null==L?void 0:L.length)&&(o.options=L);let n={flex:"1 1 40%",minWidth:160,maxWidth:"100%",...(null==o?void 0:o.style)||{}},i=Array.isArray(O)&&O.every(e=>"string"==typeof e||"number"==typeof e)?O:"string"==typeof O?O.split(/\r?\n/).map(e=>e.trim()).filter(Boolean):[];return(0,r.jsx)("div",{style:n,children:(0,r.jsx)(t,{...o,style:{width:"100%",...(null==o?void 0:o.style)||{}},value:i,onChange:e=>$(e)})})}let o=V;return(0,r.jsx)("div",{style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},children:(0,r.jsx)(o,{value:O,onChange:e=>$(e)})})},[f,b,O,V,l.context.app,$,L]),K=(0,u.useMemo)(()=>function(){return(0,r.jsx)(d.A,{placeholder:`<${h("Null")}>`,readOnly:!0})},[h]),U=(0,u.useMemo)(()=>async()=>{let e="function"==typeof n?await n():n??p.getPropertyMetaTree(),t=Array.isArray(e)?e:await e();return[{title:h("Constant"),name:"constant",type:"string",paths:["constant"],render:V},{title:h("Null"),name:"null",type:"object",paths:["null"],render:K},...t]},[n,p,V,K,h]),W=(0,u.useMemo)(()=>({renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?V:"null"===l?K:null},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:void 0},resolvePathFromValue:e=>{if(null===e)return["null"];let t="string"==typeof e?(0,i.parseValueToPath)(e):void 0;return t||["constant"]}}),[K,V]),H=(0,u.useMemo)(()=>async()=>{var e;let t=null==(e=l.context.app)?void 0:e.dataSourceManager,o=null==t?void 0:t.collectionFieldInterfaceManager,n=await j(l.context),r=async e=>{let t=e.interface?null==o?void 0:o.getFieldInterface(e.interface):void 0,n=[],r=null==t?void 0:t.filterable,i=null==r?void 0:r.children;if(Array.isArray(i)&&i.length)for(let t of i){var a,s,d;let o=t.title||t.name,r=(null==(a=l.context)?void 0:a.t)?l.context.t(o):o;n.push({name:t.name,title:r,type:(null==(s=t.schema)?void 0:s.type)||"string",interface:(null==(d=t.schema)?void 0:d["x-component"])==="Select"?"select":"input",uiSchema:{...t.schema||{},"x-filter-operators":t.operators},paths:[...e.paths||[],t.name],parentTitles:[...e.parentTitles||[],e.title]})}if("function"==typeof e.children){let t=e.children;return{...e,children:async()=>{let e=await t(),l=[...Array.isArray(e)?e:[],...n];return F().uniqBy(l,"name")}}}let u=[...Array.isArray(e.children)?e.children:[],...n];return{...e,children:u.length?u:e.children}},i=[];for(let e of n)i.push(await r(e));return i},[l]);return(0,r.jsxs)(a.A,{wrap:!0,style:{width:"100%"},children:[(0,r.jsx)(i.VariableInput,{value:m,metaTree:H,onChange:w,converters:M,showValueComponent:!1,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},onlyLeafSelectable:!0,placeholder:h("Select field"),ignoreFieldNames:c}),(0,r.jsx)(s.A,{style:{flex:"0 0 140px",minWidth:120,maxWidth:"100%"},placeholder:h("Comparison"),value:f||void 0,onChange:A,children:x.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),!(null==P?void 0:P.noValue)&&(o?(0,r.jsx)(i.VariableInput,{value:O,onChange:e=>$(e),metaTree:U,converters:W,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:h("Enter value")}):z())]})});var R=l(68827),T=l.n(R),D=l(97456);let{DateFilterDynamicComponent:N}=(0,x.RZ)(()=>Promise.resolve().then(l.bind(l,13595)),"DateFilterDynamicComponent");function O(e,t,l){var o,n,i;let a=null==e?void 0:e["x-component"],u=(null==t||null==(o=t.uiSchema)?void 0:o["x-component-props"])||{},c=(null==e?void 0:e["x-component-props"])||{},p=S()({},u,c),h=Array.isArray(null==t||null==(n=t.uiSchema)?void 0:n.enum)?null==t||null==(i=t.uiSchema)?void 0:i.enum:void 0,m=(0,k.di)(h,l),v={style:{width:200,...(null==p?void 0:p.style)||{}},placeholder:(null==p?void 0:p.placeholder)||l("Enter value"),...p};return e=>{let{value:t,onChange:o,...n}=e||{};if("InputNumber"===a)return(0,r.jsx)(f.A,{...v,...n,value:t,onChange:o});if("NumberPicker"===a)return(0,r.jsx)(A.NumberPicker,{...v,...n,value:t,onChange:o});if("Switch"===a)return(0,r.jsx)(g.A,{...v,...n,checked:!!t,onChange:o});if("Select"===a){let e=v;return Array.isArray(null==e?void 0:e.options)&&e.options.length>0?e={...e,options:(0,k.ZY)(e.options,l)}:m&&(e={...e,options:m}),(0,r.jsx)(s.A,{...e,...n,value:t,onChange:o})}return"DateFilterDynamicComponent"===a?(0,r.jsx)(N,{...v,...n,value:t,onChange:o}):(0,r.jsx)(d.A,{...v,...n,value:t,onChange:e=>{var t;return null==o?void 0:o(null==e||null==(t=e.target)?void 0:t.value)}})}}let $=[{value:"$includes",label:"contains",selected:!0},{value:"$notIncludes",label:"does not contain"},{value:"$eq",label:"is"},{value:"$ne",label:"is not"},{value:"$empty",label:"is empty",noValue:!0},{value:"$notEmpty",label:"is not empty",noValue:!0}],B=new Set(["$in","$notIn"]);function q(e,t){let l=Array.isArray(e)?e:[],o=Array.isArray(t)?t:[];if(!o.length)return l;let n=o.find(e=>(null==e?void 0:e.name)==="item");if(!n)return[...o,...l];let r=(0,D.mD)(l,[n]);return[...o.filter(e=>(null==e?void 0:e.name)!=="item"),...r]}function L(e,t){var l,o;return{name:t.name,title:t.title||t.name,type:(null==(l=t.schema)?void 0:l.type)||"string",interface:(null==(o=t.schema)?void 0:o["x-component"])==="Select"?"select":"input",uiSchema:{...t.schema||{},"x-filter-operators":t.operators},paths:[...e.paths||[],t.name],parentTitles:[...e.parentTitles||[],e.title]}}async function V(e,t){var l,o;let n=e.interface&&t?t(e.interface):void 0,r=(Array.isArray(null==n||null==(l=n.filterable)?void 0:l.children)?null==n||null==(o=n.filterable)?void 0:o.children:[]).map(t=>L(e,t)),i=async e=>{let l=[...await Promise.all(e.map(e=>V(e,t))),...r];return T()(l,e=>e.name)};if("function"==typeof e.children){let t=e.children;return{...e,children:async()=>{let e=await t(),l=Array.isArray(e)?e:[];return await i(l)}}}return Array.isArray(e.children)?{...e,children:await i(e.children)}:r.length?{...e,children:r}:e}async function z(e,t){let l=Array.isArray(e)?e:[];return await Promise.all(l.map(e=>V(e,t)))}let K=(0,i.observer)(e=>{var t;let{value:l,model:o,extraMetaTree:n}=e,c=(0,i.useFlowViewContext)(),p=o.translate,{path:h,operator:m,value:f}=l||{},[g,v]=(0,u.useState)(null),y=(0,u.useRef)(!1),b=(0,u.useMemo)(()=>{if(g){var e,t;let l=o.context.app.dataSourceManager,n=g.interface?l.collectionFieldInterfaceManager.getFieldInterface(g.interface):void 0,r=null==g||null==(e=g.uiSchema)?void 0:e["x-filter-operators"];return((Array.isArray(r)&&r.length?r:null==n||null==(t=n.filterable)?void 0:t.operators)||$).filter(e=>!e.visible||e.visible(g)).map(e=>({value:e.value,label:e.label,noValue:!!e.noValue,schema:e.schema,selected:!!e.selected}))}return[]},[g,o]),x=(0,u.useMemo)(()=>b.map(e=>({value:e.value,label:"string"==typeof e.label?p(e.label):e.label})),[b,p]);(0,u.useEffect)(()=>{if(0!==b.length){if(!m){if(y.current){let e=b.find(e=>e.selected)||b[0];l.operator=(null==e?void 0:e.value)||"",(null==e?void 0:e.noValue)?(l.value=!0,l.noValue=!0):l.noValue=!1,y.current=!1}return}if(!b.some(e=>e.value===m)){let e=b.find(e=>e.selected)||b[0];l.operator=(null==e?void 0:e.value)||"",(null==e?void 0:e.noValue)?(l.value=!0,l.noValue=!0):l.noValue=!1}}},[b,m,l]);let w=(0,u.useMemo)(()=>b.find(e=>e.value===m),[b,m]),M=(0,u.useMemo)(()=>{let e=(null==g?void 0:g.uiSchema)||{},t=(null==w?void 0:w.schema)||{};return S()({},e,t)},[g,w]),F=(0,u.useRef)(p);(0,u.useEffect)(()=>{F.current=p},[p]);let A=(0,u.useCallback)(e=>{var t;return(null==(t=F.current)?void 0:t.call(F,e))??e},[]),P=(0,u.useMemo)(()=>O(M,g,A),[M,g,A]),j=(0,u.useMemo)(()=>(0,k.di)(null==M?void 0:M.enum,A)||[],[M,A]),I=(0,u.useMemo)(()=>{let e=(0,C._)(o.context.app,m,b),t=B.has(m);if(!e||!t)return P;let{Comp:l,props:n}=e;return e=>{let{value:t,onChange:o,...i}=e||{},a={...n};(null==a?void 0:a.options)&&(null==a?void 0:a.options.length)!==0||!(j.length>0)||(a.options=j);let s=Array.isArray(t)?t:"string"==typeof t?t.split(/\r?\n/).map(e=>e.trim()).filter(Boolean):[];return(0,r.jsx)(l,{...a,...i,value:s,onChange:o,style:{width:200,...(null==a?void 0:a.style)||{},...(null==i?void 0:i.style)||{}}})}},[j,o.context.app,b,m,P]),E=(0,u.useMemo)(()=>function(){return(0,r.jsx)(d.A,{placeholder:`<${p("Null")}>`,readOnly:!0})},[p]),_=(0,u.useMemo)(()=>async()=>{let e=q((null==o?void 0:o.context.getPropertyMetaTree())||c.getPropertyMetaTree(),n);return[{title:p("Constant"),name:"constant",type:"string",paths:["constant"]},{title:p("Null"),name:"null",type:"object",paths:["null"]},...e]},[c,o,p,n]),R=(0,u.useCallback)(async()=>{var e,t;let l=(null==o||null==(t=o.context)||null==(e=t.getPropertyMetaTree)?void 0:e.call(t))||c.getPropertyMetaTree(),r=q(Array.isArray(l)?l:[],n),i=e=>{var t,l,n,r;return null==(r=o.context.app)||null==(n=r.dataSourceManager)||null==(l=n.collectionFieldInterfaceManager)||null==(t=l.getFieldInterface)?void 0:t.call(l,e)};return await z(r,i)},[c,o,n]),T=(0,u.useMemo)(()=>({renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?I:"null"===l?E:null},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:void 0},resolvePathFromValue:e=>{if(null===e)return["null"];let t=(0,i.parseValueToPath)(e);return t||["constant"]}}),[E,I]),D=(0,u.useCallback)((e,t)=>{let o=l.path||"",n=e||"",r=n!==o;l.path=n,r&&o&&(l.operator="",l.value="",y.current=!0),o||!n||l.operator||(y.current=!0),t&&v(t)},[l]),N=(0,u.useCallback)(e=>{let t=l.operator;l.operator=e;let o=b.find(t=>t.value===e);(null==o?void 0:o.noValue)?(l.value=!0,l.noValue=!0):(B.has(t)&&!B.has(e)&&Array.isArray(l.value)&&(l.value=l.value.join("\n")),l.noValue=!1)},[l,b]);return(0,r.jsxs)(a.A,{wrap:!0,style:{width:"100%"},children:[(0,r.jsx)(i.VariableInput,{value:h,onChange:D,metaTree:R,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:p("Select variable"),onlyLeafSelectable:!0}),(0,r.jsx)(s.A,{style:{flex:"0 0 140px",minWidth:120,maxWidth:"100%"},placeholder:p("Comparison"),value:m||void 0,onChange:N,children:x.map(e=>(0,r.jsx)(s.A.Option,{value:e.value,children:e.label},e.value))}),!(null==(t=b.find(e=>e.value===m))?void 0:t.noValue)&&(0,r.jsx)(i.VariableInput,{value:f,onChange:e=>l.value=e,metaTree:_,converters:T,showValueComponent:!0,style:{flex:"1 1 40%",minWidth:160,maxWidth:"100%"},placeholder:p("Enter value"),clearValue:""})]})})},51793(e,t,l){l.d(t,{S5:()=>h.S,b2:()=>h.b,tn:()=>o.t,R_:()=>p});var o=l(27941),n=l(74848);l(98668),l(43627),l(40532);var r=l(96540);l(74979);var i=l(28073);let a=e=>{if(e){let t=document.createRange();return t.selectNodeContents(e),t.getBoundingClientRect().width}},s={overflow:"hidden",overflowWrap:"break-word",textOverflow:"ellipsis",whiteSpace:"nowrap",wordBreak:"break-all"},d={overflowWrap:"break-word",whiteSpace:"normal",wordBreak:"break-word"},u=e=>!!e&&a(e)>e.offsetWidth,c={maxWidth:600,overflow:"auto",maxHeight:400},p=(0,r.forwardRef)((e,t)=>{let[l,o]=(0,r.useState)(!1),[a,p]=(0,r.useState)(!1),h=(0,r.useRef)();(0,r.useImperativeHandle)(t,()=>({setPopoverVisible:p}),[]);let m=(0,r.useCallback)(e=>{let t=e.target;u(h.current)&&o(t.scrollWidth>=t.clientWidth)},[]),f=(0,r.useMemo)(()=>{let t=e.ellipsis?{onMouseEnter:m}:{};return(0,n.jsx)("div",{ref:h,role:e.role,style:e.ellipsis?s:d,...t,children:e.children})},[m,e.children,e.ellipsis,e.role]);return e.ellipsis&&l?(0,n.jsx)(i.A,{open:l&&a,onOpenChange:e=>{p(l&&e)},content:(0,n.jsx)("div",{style:c,children:e.popoverContent||e.children}),children:f}):f});p.displayName="EllipsisWithTooltip";var h=l(36869);l(95266),l(47785)},76059(e,t,l){l.d(t,{g:()=>n,k:()=>r});var o=l(40532);let n=(0,o.defineFlow)({key:"popupSettings",title:(0,o.tExpr)("Popup settings"),on:"click",sort:300,steps:{openView:{use:"openView",hideInSettings:async e=>{var t,l,o,n;let r=null==(l=(o=e.model).getStepParams)||null==(t=l.call(o,"displayFieldSettings","clickToOpen"))?void 0:t.clickToOpen;return!!e.collectionField&&(void 0===r?!(null==(n=e.collectionField)?void 0:n.isAssociationField())||e.disableFieldClickToOpen:!1===r)}}},defaultParams:e=>{var t,l,o,n,r,i,a,s;let d,u,c,p=e.collectionField,h=e.blockModel,m=null==(l=e.model)||null==(t=l.parent)?void 0:t.associationPathName,f=e.collection||(null==h?void 0:h.collection),g=e=>{var t;return!!(null==e||null==(t=e.isAssociationField)?void 0:t.call(e))},v=!g(p)&&m?null==f||null==(o=f.getFieldByPath)?void 0:o.call(f,m):void 0,y=g(p)?p:v;if(g(y)){let e=y.targetCollection;null==h||h.collection,d=null==e?void 0:e.name,u=null==e?void 0:e.dataSourceKey,c=null==y?void 0:y.resourceName}else p?(d=null==(n=e.collection)?void 0:n.name,u=null==(r=e.collection)?void 0:r.dataSourceKey,c=null==p?void 0:p.target):(d=null==(i=e.collection)?void 0:i.name,u=null==(a=e.collection)?void 0:a.dataSourceKey,c=null==(s=e.association)?void 0:s.resourceName);return{openView:{collectionName:d,associationName:c,dataSourceKey:u}}}}),r=e=>e.getStepParams("popupSettings","openView")},46578(e,t,l){let o,n,r;l.d(t,{er5:()=>aK,tPG:()=>eT.t,wUQ:()=>nw,Ui7:()=>cD.Ui,JvK:()=>eK,m5p:()=>sw,l5h:()=>nj,jqd:()=>uQ,WHj:()=>ia,T9:()=>oS,ZMt:()=>lY,Xw5:()=>tz,xEQ:()=>sT,r39:()=>aB,YXI:()=>tx,riZ:()=>cR.ri,s2k:()=>ay,zA_:()=>ti.zA,gbJ:()=>uj,DvX:()=>n,wwh:()=>aW,p$W:()=>cD.p$,xtQ:()=>cR.xt,qi_:()=>C.qi,d13:()=>tg,sJK:()=>iB,mzg:()=>iO,mHU:()=>ip,Ppd:()=>sC,Tuv:()=>sX,Uk$:()=>i8,byO:()=>ti.by,Tnx:()=>cR.Tn,ZCq:()=>s7,HWn:()=>cR.HW,I8R:()=>C.I8,v9U:()=>s1,T16:()=>d$,spd:()=>tf,xz3:()=>oI,ROt:()=>t0,jjG:()=>cR.jj,$T1:()=>sG,Px_:()=>cR.Px,COB:()=>uJ,ysz:()=>s4.ys,kA1:()=>oM,_IX:()=>cR._I,AvD:()=>oC,cYG:()=>u4,mOW:()=>tV.mO,zqF:()=>aF,_TB:()=>G,uMh:()=>sc,mQM:()=>uC,aDm:()=>eC,Hn2:()=>ts,KTk:()=>V,rGX:()=>dl,y2s:()=>nn,s2f:()=>tV.s2,upH:()=>ss,BmO:()=>cD.Bm,foc:()=>lJ,Uhv:()=>eD,ZVp:()=>sU,bPr:()=>lb,hNf:()=>sJ,u36:()=>tp,J$w:()=>r3,Bum:()=>us,ux6:()=>cR.ux,Ra0:()=>sP,QuL:()=>eA,V6y:()=>cR.V6,djK:()=>cD.dj,qh$:()=>es,K4N:()=>lQ,xIu:()=>n4,XK0:()=>eV,xc1:()=>cR.xc,C_u:()=>cD.C_,Ru1:()=>C.Ru,s$$:()=>cN,lrV:()=>tS.lr,znN:()=>uW,OaU:()=>cD.O,N9e:()=>cT.N,m$$:()=>sl,cPq:()=>ax,gk0:()=>et,to1:()=>e3,dhL:()=>sS,mSG:()=>rO,Fy3:()=>se,VPO:()=>sY,d6j:()=>iE,y8o:()=>cR.y8,nCj:()=>cD.nC,eLO:()=>cR.eL,LAC:()=>e5,fCM:()=>cR.fC,R0X:()=>cD.R0,Dsh:()=>di,saj:()=>lt,VcJ:()=>sE,dv2:()=>oq,t_Y:()=>cR.t_,Ucr:()=>cR.Uc,FKm:()=>s4.FK,ksX:()=>cD.ks,Eq4:()=>dB,xkv:()=>av,sEB:()=>tc,W4I:()=>iq,qPo:()=>sO,n8$:()=>cR.n8,vIF:()=>ne,vrA:()=>sR,tUI:()=>ei,CII:()=>tN,v6e:()=>aU,MeX:()=>ar,ccc:()=>s4.cc,mw1:()=>eo,i6C:()=>nI,sJA:()=>iQ,hOt:()=>tS.hO,biS:()=>nT,AMH:()=>r,fMK:()=>uO,PU8:()=>li,UZR:()=>eR,fAh:()=>D,Yjq:()=>cR.FY,_e9:()=>r$,Myf:()=>uB,fnr:()=>aT,qqP:()=>sh,BYM:()=>ti.BY,RBt:()=>eN.R,dpX:()=>tW,sYw:()=>eZ,oM7:()=>r0,e7P:()=>dI,ODR:()=>lm,hCX:()=>tO,zDb:()=>r_,x_D:()=>nE,Imp:()=>iv,mNj:()=>o,P0:()=>sn,Qt8:()=>cR.Qt,ivU:()=>n3,uFv:()=>uP,VGp:()=>d_,Pqd:()=>dx,Gap:()=>cR.G,kkB:()=>dj,wqT:()=>t_,R8A:()=>th,vbm:()=>ek,IAc:()=>dA,KYF:()=>nd,FaR:()=>ae,v8l:()=>tj,lv4:()=>cD.lv,qlo:()=>ij,I6c:()=>dd,_UX:()=>eM,t_n:()=>nl,Xig:()=>tS.Xi,isP:()=>da,fi1:()=>cR.fi,a6D:()=>e4,uTv:()=>cD.uT,MhO:()=>tP,l2T:()=>rq,n6C:()=>tw,OtO:()=>cR.Ot,FWr:()=>cR.FW,wW_:()=>eQ,X2M:()=>cD.X2,h2d:()=>s2.h2,cm5:()=>sW,eCD:()=>ow,GJ1:()=>rl,B94:()=>cR.B9,gaO:()=>r1,orA:()=>c_.o,OsV:()=>a1,I6Z:()=>oA,zsf:()=>ee,HJv:()=>i6,WzN:()=>cD.Wz,qNx:()=>cR.qN,mYX:()=>cR.mY,G9F:()=>lB,YjI:()=>cR.Yj,xFY:()=>cR.xF,PW6:()=>e_.P,rvE:()=>e9,cNN:()=>oB,mLo:()=>a$,YJB:()=>nz,QBt:()=>cR.QB,LFq:()=>uk,Ck8:()=>iI,hPI:()=>ti.hP,ur8:()=>nq,F4f:()=>tV.F4,tQF:()=>uU,aWb:()=>uK,iT0:()=>at,zUb:()=>no,rpg:()=>aj,sW6:()=>ib,Z0H:()=>aa,K$V:()=>n8,v$f:()=>e$,_$j:()=>eX,ULH:()=>lN,M6q:()=>tS.M6,pKk:()=>l2,www:()=>nt,MMn:()=>cR.MM,kPK:()=>tZ,Xmd:()=>ig,B82:()=>cR.B8,zCA:()=>z,np$:()=>s4.np,YXr:()=>nR,hsC:()=>dM,IBN:()=>uo,Zu2:()=>dq,m2W:()=>e7,k9E:()=>s2.k9,KSc:()=>q,Yh4:()=>dO,Mxl:()=>cR.Mx,B6V:()=>rt,KAX:()=>uI,J9o:()=>dm,mUg:()=>aM,mU7:()=>sg,YmV:()=>O.default,pXX:()=>cR.pX,EcU:()=>nD,mRH:()=>nf.m,j0c:()=>e8.j,vW_:()=>n_,o8y:()=>ti.o8,ThI:()=>cR.Th,e6V:()=>c_.e,Anr:()=>iS,tSM:()=>cR.tS,qir:()=>eH,kN:()=>nP,s5W:()=>i_,NYj:()=>tS.NY,LE6:()=>dw,ngq:()=>s4.ng,omq:()=>to,Nxx:()=>sa,gvx:()=>e2.g,upW:()=>iF,D1b:()=>o0,Cuw:()=>cR.Cu,S3Z:()=>un,B_2:()=>cR.B_,D8m:()=>oG,e8C:()=>s9,T8$:()=>oF,nap:()=>S.n,CCB:()=>a5,zFh:()=>an,lJp:()=>F,Dhs:()=>uY,eDc:()=>cD.eD,Zpx:()=>dk,Fts:()=>n6,$FU:()=>sZ,oJ5:()=>C.oJ,RLu:()=>e1,wBN:()=>nC,Ybt:()=>tU,A14:()=>cR.A1,o2o:()=>cR.o2,hHg:()=>tS.hH,CDb:()=>nh,BpQ:()=>eJ,gLn:()=>cD.gL,Bnh:()=>s4.Bn,oIl:()=>iZ,uVo:()=>tb,Ie6:()=>i3,mKE:()=>M,dWc:()=>ut,CM3:()=>cD.CM,SMJ:()=>tS.SM,lcp:()=>tq,ivi:()=>ls,dIg:()=>td,jmZ:()=>cD.jm,sD1:()=>ll,ymi:()=>ty,Kgy:()=>cR.Kg,ESx:()=>s2.ES,wLo:()=>nk,vy4:()=>r5,Et2:()=>C.Et,xdz:()=>Z,Y5n:()=>t4.EditFormModel,BgT:()=>lV,S0L:()=>X,zTu:()=>u$,qtW:()=>ad,Ni4:()=>e6,Mf0:()=>lf,khg:()=>oi,S5n:()=>r2,k9Q:()=>sk,Q7G:()=>cD.Q7,mw3:()=>dC,D2p:()=>uH,mp5:()=>dg,LaP:()=>eE,eDQ:()=>cR.eD,qJ3:()=>sm,s5y:()=>J,ql0:()=>ld,dWg:()=>aq,e7h:()=>l0,ZjK:()=>t2,w5F:()=>ea,C9C:()=>cD.C9,aqk:()=>er,JUj:()=>tV.JU,udY:()=>o$,Vrl:()=>sQ,t4X:()=>au,JgE:()=>t9,kbf:()=>dF,fLT:()=>ti.fL,HZo:()=>tS.HZ,LbM:()=>sH,oLV:()=>eO.o,T6P:()=>e0,KHY:()=>nF,WuM:()=>u2,zgg:()=>e_.z,Hwd:()=>cT.H,Evi:()=>cR.Ev,Qb_:()=>cR.Qb,AV5:()=>iX,cEK:()=>eS,XCP:()=>s2.XC,pVr:()=>ab});var i,a,s,d,u,c,p,h,m,f={};l.r(f),l.d(f,{connectFields:()=>nd,customizeFilterRender:()=>nw,defaultOperator:()=>nh,operatorComponentProps:()=>nF});var g={};l.r(g),l.d(g,{ActionGroupModel:()=>Z,ActionModel:()=>X,ActionSceneEnum:()=>J,ActionWithoutPermission:()=>G,AddChildActionModel:()=>tq,AddNewActionModel:()=>e3,AssignFormGridModel:()=>tW,AssignFormItemModel:()=>lt,AssignFormModel:()=>tz,AssociationFieldGroupModel:()=>eo,AssociationFieldModel:()=>lb,BasePageTabModel:()=>eJ,BlockGridModel:()=>eE,BlockModel:()=>e_.z,BlockSceneEnum:()=>e_.P,BulkDeleteActionModel:()=>e6,CascadeSelectFieldModel:()=>iB,CascadeSelectInnerFieldModel:()=>iO,CascadeSelectListFieldModel:()=>iq,CheckboxFieldModel:()=>an,CheckboxGroupFieldModel:()=>ar,ChildPageModel:()=>eK,ChildPageTabModel:()=>eQ,ClickableFieldModel:()=>iF,CollectionActionGroupModel:()=>ee,CollectionActionModel:()=>eR,CollectionBlockModel:()=>eT.t,CollectionSelectorFieldModel:()=>aa,ColorFieldModel:()=>au,CommonItemModel:()=>eD,CreateContent:()=>lB,CreateFormModel:()=>nk,CustomWidth:()=>n8,DataBlockModel:()=>eN.R,DateOnlyFieldModel:()=>ay,DateOnlyFilterFieldModel:()=>lQ,DateOnlyPicker:()=>av,DateTimeFilterFieldModel:()=>lJ,DateTimeNoTzFieldModel:()=>ax,DateTimeNoTzFilterFieldModel:()=>l0,DateTimeNoTzPicker:()=>ab,DateTimeTzFieldModel:()=>aF,DateTimeTzFilterFieldModel:()=>l2,DateTimeTzPicker:()=>aM,DeleteActionModel:()=>e9,DetailsAssociationFieldGroupModel:()=>ll,DetailsBlockModel:()=>li,DetailsCustomItemModel:()=>ls,DetailsGridModel:()=>ld,DetailsItemModel:()=>t2,DetailsJSFieldItemModel:()=>lm,DisplayCheckboxFieldModel:()=>s1,DisplayColorFieldModel:()=>sC,DisplayDateTimeFieldModel:()=>sP,DisplayEnumFieldModel:()=>sE,DisplayHtmlFieldModel:()=>sR,DisplayIconFieldModel:()=>sT,DisplayJSONFieldModel:()=>sO,DisplayNumberFieldModel:()=>sH,DisplayPasswordFieldModel:()=>sG,DisplayPercentFieldModel:()=>sJ,DisplaySubItemFieldModel:()=>sS,DisplaySubListFieldModel:()=>sk,DisplaySubTableFieldModel:()=>sw,DisplayTextFieldModel:()=>sX,DisplayTimeFieldModel:()=>sZ,DisplayTitleFieldModel:()=>sg,DisplayURLFieldModel:()=>sQ,DividerItemModel:()=>ss,EditActionModel:()=>e7,EditFormContent:()=>iX,EditFormModel:()=>t4.EditFormModel,ExpandCollapseActionModel:()=>tO,FieldDeletePlaceholder:()=>n4,FieldModel:()=>eO.o,FieldModelSelect:()=>oi,FieldOperatorSelect:()=>oF,FilterActionModel:()=>to,FilterBlockModel:()=>e$,FilterFormActionGroupModel:()=>oq,FilterFormActionModel:()=>oB,FilterFormBlockModel:()=>oG,FilterFormCollapseActionModel:()=>o0,FilterFormCustomFieldModel:()=>oI,FilterFormCustomItemModel:()=>oA,FilterFormCustomRecordSelectFieldModel:()=>o$,FilterFormFieldModel:()=>lf,FilterFormGridModel:()=>nt,FilterFormItemModel:()=>ne,FilterFormJSActionModel:()=>nl,FilterFormRecordSelectFieldModel:()=>lY,FilterFormResetActionModel:()=>no,FilterFormSubmitActionModel:()=>nn,FilterManager:()=>es,FormActionGroupModel:()=>th,FormActionModel:()=>tc,FormAssociationFieldGroupModel:()=>nD,FormAssociationItemModel:()=>nq,FormBlockContent:()=>tV.JU,FormBlockModel:()=>tV.F4,FormComponent:()=>tV.s2,FormCustomItemModel:()=>nC,FormGridModel:()=>tU,FormItemModel:()=>t9,FormJSFieldItemModel:()=>nP,FormModel:()=>tV.mO,FormSubmitActionModel:()=>tp,GRID_FLOW_KEY:()=>eS,GRID_STEP:()=>eM,GridModel:()=>eA,IconFieldModel:()=>aj,InputFieldModel:()=>nf.m,InputNumberField:()=>a$,JSActionModel:()=>ts,JSBlockModel:()=>nz,JSCollectionActionModel:()=>td,JSColumnModel:()=>rq,JSEditableFieldModel:()=>sa,JSFieldModel:()=>sn,JSFormActionModel:()=>nj,JSItemActionModel:()=>ty,JSItemModel:()=>sm,JSRecordActionModel:()=>tb,JsonFieldModel:()=>o,JsonInput:()=>aT,LinkActionModel:()=>tN,MainPageModel:()=>eH,MarkdownItemModel:()=>sh,NBColorPicker:()=>ad,NumberFieldModel:()=>aB,ObjectNester:()=>ig,PageModel:()=>eV,PageTabModel:()=>eZ,PasswordFieldModel:()=>aq,PercentFieldModel:()=>aU,PercentInput:()=>aK,PluginSettingsTopbarActionModel:()=>s2.ES,PopupActionModel:()=>e4,PopupCollectionActionModel:()=>tx,PopupSubTableActionGroupModel:()=>i6,PopupSubTableActionsColumnModel:()=>ae,PopupSubTableEditActionModel:()=>iZ,PopupSubTableFieldModel:()=>i8,PopupSubTableFormActionGroupModel:()=>tg,PopupSubTableFormModel:()=>at,PopupSubTableFormSubmitActionModel:()=>tf,PopupSubTableRemoveActionModel:()=>i3,QUICK_EDIT_FORM_MAX_HEIGHT:()=>nE,QUICK_EDIT_MARKDOWN_HEIGHT:()=>n_,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>nI,QuickEditFormModel:()=>nT,RadioGroupFieldModel:()=>aW,RecordActionGroupModel:()=>et,RecordActionModel:()=>e5,RecordPickerContent:()=>r5,RecordPickerFieldModel:()=>r3,RecordSelectFieldModel:()=>lV,RefreshActionModel:()=>tw,RichTextField:()=>a1,RichTextFieldModel:()=>n,RootPageModel:()=>e0,RootPageTabModel:()=>eX,RouteModel:()=>e8.j,SelectFieldModel:()=>a5,SourceCascader:()=>oC,SubFormFieldModel:()=>iv,SubFormListFieldModel:()=>ib,SubPageModel:()=>e1,SubTableColumnModel:()=>ia,SubTableFieldModel:()=>ip,SubTableRecordAction:()=>iQ,TableActionsColumnModel:()=>rt,TableAssociationFieldGroupModel:()=>rl,TableBlockModel:()=>r_,TableColumnModel:()=>n3,TableCustomColumnModel:()=>n6,TableJSFieldItemModel:()=>r$,TableSelectModel:()=>rO,TextareaFieldModel:()=>r,TimeFieldModel:()=>se,TopbarActionModel:()=>s2.k9,UIEditorTopbarActionModel:()=>s2.h2,USER_CENTER_ACTION_ID:()=>s4.Bn,UnitConversion:()=>sY,UpdateRecordActionModel:()=>tP,UserCenterActionItemModel:()=>s4.ng,UserCenterItemModel:()=>s4.np,UserCenterSelectItemModel:()=>s4.FK,UserCenterTextItemModel:()=>s4.ys,UserCenterTopbarActionModel:()=>s4.cc,VariableFieldFormModel:()=>sl,ViewActionModel:()=>tj,buildDisplayPathFromValue:()=>iE,buildRecordPickerParentItemContext:()=>r0,buildRecordPickerPopupContextInputArgs:()=>r2,collectAssociationHydrationCandidates:()=>lN,collectCascadeHydrationCandidate:()=>ij,connectFields:()=>nd,customizeFilterRender:()=>nw,defaultOperator:()=>nh,findOptionPathByTk:()=>i_,formatNumber:()=>sU,getAllDataModels:()=>ea,getDefaultOperator:()=>er,getDetailsItemValue:()=>t0,getDisplayNumber:()=>sW,getQuickEditFieldProps:()=>nR,getTopbarPluginSettingsItems:()=>s2.XC,getValueWithIndex:()=>tZ,injectRecordPickerPopupContext:()=>r1,isFilterValueEmpty:()=>ei,joinUrlSearch:()=>t_,markCascadeHydrationDone:()=>iI,operatorComponentProps:()=>nF,recalculateGridSizes:()=>eC,resolveCustomFieldOperatorList:()=>ow,resolveDefaultCustomFieldOperator:()=>oS,toOperatorSelectOptions:()=>oM,transformNestedData:()=>iS,transformRowsToSingleColumn:()=>ek});var v={};l.r(v),l.d(v,{aclCheck:()=>d_,aclCheckRefresh:()=>dO,actionLinkageRules:()=>uU,afterSuccess:()=>M,blockHeight:()=>us,blockLinkageRules:()=>uK,confirm:()=>F,customVariable:()=>dd,dataLoadingMode:()=>dF,dataScope:()=>D,dateTimeFormat:()=>dw,detailsFieldLinkageRules:()=>uY,displayFieldComponent:()=>dj,fieldComponent:()=>dI,fieldLinkageRules:()=>uW,filterFormDefaultValues:()=>uo,fixed:()=>dq,formAssignRules:()=>ut,layout:()=>dk,linkageAssignField:()=>uO,linkageRulesRefresh:()=>un,linkageRunjs:()=>uB,linkageSetActionProps:()=>uC,linkageSetBlockProps:()=>uk,linkageSetDetailsFieldProps:()=>uI,linkageSetFieldProps:()=>uP,navigateToURL:()=>da,numberFormat:()=>uQ,openView:()=>s9,overflowMode:()=>uJ,pattern:()=>d$,refreshTargetBlocks:()=>dm,renderMode:()=>dA,required:()=>dC,runjs:()=>s7,setTargetDataScope:()=>dg,showMessage:()=>dl,showNotification:()=>di,sortingRule:()=>dM,subFormFieldLinkageRules:()=>uH,subFormLinkageAssignField:()=>u$,subFormLinkageSetFieldProps:()=>uj,titleField:()=>dx,validation:()=>dB});var y=l(40532),b=l(2077),x=l(65970),w=l(96436),S=l(47785);let M=(0,y.defineAction)({name:"afterSuccess",title:(0,y.tExpr)("After successful submission"),uiSchema:{successMessage:{type:"string",title:(0,y.tExpr)("Popup message"),"x-decorator":"FormItem","x-component":"Input.TextArea"},manualClose:{type:"boolean",title:(0,y.tExpr)("Message popup close method"),"x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:(0,y.tExpr)("Automatic close"),value:!1},{label:(0,y.tExpr)("Manually close"),value:!0}]},actionAfterSuccess:{type:"string",title:(0,y.tExpr)("Action after successful submission"),"x-decorator":"FormItem","x-component":"Radio.Group",enum:[{label:(0,y.tExpr)("Stay on the current popup or page"),value:"stay"},{label:(0,y.tExpr)("Return to the previous popup or page"),value:"previous"},{label:(0,y.tExpr)("Close popup and redirect to"),value:"redirect"}]},redirectTo:{type:"string",title:(0,y.tExpr)("Link"),"x-decorator":"FormItem","x-component":S.n,"x-reactions":{dependencies:["actionAfterSuccess"],fulfill:{state:{visible:"{{$deps[0]==='redirect'}}"}}}}},defaultParams:{successMessage:(0,y.tExpr)("Saved successfully"),manualClose:!1,actionAfterSuccess:"previous"},async handler(e,t){let{successMessage:l,manualClose:o=!1,actionAfterSuccess:n="previous",redirectTo:r}=t;"previous"===n&&e.view&&e.view.close();let i=t=>{if(e.engine){let t=e.engine;for(;t.nextEngine;)t=t.nextEngine;let l=[],o=t;for(;o;)l.push(o),o=o.previousEngine;for(let e of l)e.destroyView()}e.router.navigate(t)},a=e=>{if((0,w.isURL)(e)){window.location.href=e;return}i(e)};if(l){let t=e.t(l);if(o)return void await e.modal.success({title:t,onOk:async()=>{"redirect"===n&&r&&a(r)}});e.message.success(t)}"redirect"===n&&r&&a(r)}}),F=(0,y.defineAction)({name:"confirm",title:(0,y.tExpr)("Confirmation"),uiSchema:{enable:{type:"boolean",title:(0,y.tExpr)("Enable secondary confirmation"),"x-decorator":"FormItem","x-component":"Switch"},title:{type:"string",title:(0,y.tExpr)("Title"),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:2}},content:{type:"string",title:(0,y.tExpr)("Content"),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:3}}},defaultParams:{enable:!1,title:(0,y.tExpr)("Please Confirm"),content:(0,y.tExpr)("Are you sure you want to perform the action?")},async handler(e,t){t.enable&&(await e.modal.confirm({title:e.t(t.title,{ns:"lm-flow-engine"}),content:e.t(t.content,{ns:"lm-flow-engine"}),okText:e.t("Confirm"),cancelText:e.t("Cancel")})||e.exit())}});var A=l(74848),k=l(96540),C=l(80512),P=l(40098),j=l.n(P);let I={__nocobaseDataScopeNull__:!0};function E(e){return e&&"object"==typeof e&&!Array.isArray(e)&&!0===e.__nocobaseDataScopeNull__&&1===Object.keys(e).length}function _(e){return E(e)?null:Array.isArray(e)?e.map(e=>_(e)):e&&"object"==typeof e?Object.keys(e).reduce((t,l)=>(t[l]=_(e[l]),t),{}):e}function R(e,t){if(e&&t&&"object"==typeof e&&"object"==typeof t){if("path"in e&&"operator"in e){(0,y.isVariableExpression)(e.value)&&(void 0===t.value||null===t.value||""===t.value)&&(t.value=I);return}Array.isArray(e.items)&&Array.isArray(t.items)&&e.items.forEach((e,l)=>{R(e,t.items[l])})}}function T(e,t){let l=j().cloneDeep(t);return R(e,l),_((0,y.pruneFilter)((0,w.transformFilter)(l)))}let D=(0,y.defineAction)({name:"dataScope",title:(0,y.tExpr)("Data scope"),uiMode:{type:"dialog",props:{width:800}},uiSchema:{filter:{type:"object","x-decorator":"FormItem","x-component":function(e){let t=(0,y.useFlowSettingsContext)();return(0,A.jsx)(C.I8,{value:e.value,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:t.model,rightAsVariable:!0})})}}},defaultParams:e=>({filter:{logic:"$and",items:[]}}),useRawParams:!0,async handler(e,t){var l;let o=null==(l=e.model)?void 0:l.resource;if(!o)return;let n=await e.resolveJsonTemplate(t.filter),r=T(t.filter,n);(0,w.isEmptyFilter)(r)?o.removeFilterGroup(e.model.uid):o.addFilterGroup(e.model.uid,r)}});var N=l(66466),O=l(9556),$=l(16629),B=l(42441);function q(e){return(0,A.jsx)($.A,{...e,children:(0,A.jsx)(B.A,{paragraph:{rows:3}})})}function L(e){let{uid:t,...l}=e,o=(0,y.useFlowModelById)(t);return(0,A.jsx)(y.FlowModelRenderer,{model:o,fallback:(0,A.jsx)(q,{style:{margin:(null==o?void 0:o.context.isMobileLayout)?8:null==o?void 0:o.context.themeToken.marginBlock}}),hideRemoveInSettings:!0,showFlowSettings:{showBackground:!1,showBorder:!1},...l})}let V=k.memo(e=>{let{pageModelClass:t="ChildPageModel",parentId:l,onModelLoaded:o,defaultTabTitle:n,...r}=e,i=(0,y.useFlowEngine)(),a=(0,y.useFlowViewContext)(),{loading:s,data:d}=(0,N.A)(async()=>{let e={async:!0,parentId:l,subKey:"page",subType:"object",use:t};if("ChildPageModel"===t){var r;e.subModels={tabs:[{use:"ChildPageTabModel",stepParams:{pageTabSettings:{tab:{title:n||(null==(r=i.translate)?void 0:r.call(i,"Details"))}}}}]},e.stepParams={pageSettings:{general:{displayTitle:!1,enableTabs:!0}}}}let s=await i.loadOrCreateModel(e,{skipSave:!i.context.flowSettingsEnabled});return(null==s?void 0:s.uid)&&o&&(s.context.addDelegate(a),s.removeParentDelegate(),o(s.uid,s)),s},{refreshDeps:[l]});return!s&&(null==d?void 0:d.uid)?(0,A.jsx)(L,{uid:d.uid,...r}):(0,A.jsx)(q,{style:{margin:(null==a?void 0:a.isMobileLayout)?8:null==a?void 0:a.themeToken.marginBlock}})});V.displayName="FlowPage";let z=e=>{let{uid:t,parentId:l,subKey:o,...n}=e,r=(0,y.useFlowEngine)(),{loading:i,data:a}=(0,N.A)(async()=>await r.loadModel({uid:t,parentId:l,subKey:o}),{refreshDeps:[t,l,o]});return!i&&(null==a?void 0:a.uid)?(0,A.jsx)(L,{uid:a.uid,...n}):(0,A.jsx)(q,{style:{margin:16}})};var K=l(50467),U=l(45895),W=l(42443),H=l(71021),Y=l(18492);function G(e){let{t}=(0,Y.B)(),l=(0,y.useFlowModel)(),o=l.context.blockModel,n=e.collection||o.collection,r=n.dataSource,i=(0,k.useMemo)(()=>{let e=`${t(r.displayName||r.key)} > `,l=n?`${t(n.title)||n.name||n.tableName} `:"";return`${e}${l}`},[]),{actionName:a}=(null==e?void 0:e.forbidden)||l.forbidden,s=(0,k.useMemo)(()=>t('The current user only has the UI configuration permission, but don\'t have "{{actionName}}" permission for collection "{{name}}"',{name:i,actionName:t(j().capitalize(a))}).replaceAll("&gt;",">"),[a,i,t]);return(0,A.jsx)(W.A,{title:e.message||s,children:e.children})}let J={collection:"collection",record:"record",all:["collection","record"],both:["collection","record"]};class X extends y.FlowModel{static _getScene(){return j().castArray(this.scene||[])}static _isScene(e){return this._getScene().includes(e)}getAclActionName(){return null}onInit(e){super.onInit(e),this.context.defineProperty("actionName",{get:()=>this.getAclActionName(),cache:!1})}getInputArgs(){let e={},t=[];if(this.context.resource){let l=this.context.resource.getSourceId();l&&(e.sourceId=l,t.push("sourceId"))}if(this.context.collection&&this.context.record){let l=this.context.collection.getFilterByTK(this.context.record);l&&(e.filterByTk=l,t.push("filterByTk"))}return t.length&&(e.defaultInputKeys=t),e}onClick(e){this.dispatchEvent("click",{event:e,...this.getInputArgs()},{debounce:!0})}getTitle(){return this.props.title}getIcon(){return this.props.icon}renderButton(){let e=this.props,t=this.getIcon()?(0,A.jsx)(U.In,{type:this.getIcon()}):void 0;return(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,children:e.children||this.getTitle()})}render(){return this.props.tooltip?(0,A.jsx)(W.A,{title:this.props.tooltip,children:this.renderButton()}):this.renderButton()}renderHiddenInConfig(){let e=this.props,t=this.getIcon()?(0,A.jsx)(U.In,{type:this.getIcon()}):void 0;return this.forbidden?(0,A.jsx)(G,{children:(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,style:{opacity:"0.3"},children:e.children||this.getTitle()})}):(0,A.jsx)(W.A,{title:this.context.t("The button is hidden and only visible when the UI Editor is active"),children:(0,A.jsx)(H.Ay,{...e,onClick:this.onClick.bind(this),icon:t,style:{opacity:"0.3"},children:e.children||this.getTitle()})})}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("Action")}),(0,K._)(this,"enableEditTooltip",!0),(0,K._)(this,"enableEditTitle",!0),(0,K._)(this,"enableEditIcon",!0),(0,K._)(this,"enableEditType",!0),(0,K._)(this,"enableEditDanger",!0),(0,K._)(this,"enableEditColor",!1)}}var Q=l(94130);class Z extends y.FlowModel{static getAllParentClasses(){let e=[],t=this;for(;t&&t!==Object;)(null==(t=Object.getPrototypeOf(t))?void 0:t.currentModels)&&e.push(t);return e}static get currentModels(){return Object.prototype.hasOwnProperty.call(this,"_models")&&this._models||(this._models=new Map),this._models}static get models(){let e=new Map;for(let t of this.getAllParentClasses())for(let[l,o]of t.currentModels)e.set(l,o);for(let[t,l]of this.currentModels)e.set(t,l);return e}static registerActionModels(e){for(let[t,l]of Object.entries(e))Object.defineProperty(l,"name",{value:t}),this.currentModels.set(t,l)}static isActionModelVisible(e,t){var l;let o=t.collection||(null==(l=t.blockModel)?void 0:l.collection),n=(0,Q.GX)(e);return(0,Q.F3)(o,n)}static async defineChildren(e){let t=this.baseClass?await (0,y.buildSubModelItems)(this.baseClass)(e):[],l=[],o=t.filter(t=>{let l=e.engine.getModelClass(t.useModel);return!!this.isActionModelVisible(l,e)&&(!this.scene||l._isScene(this.scene))});for(let[t,n]of this.models){if(!this.isActionModelVisible(n,e)||o.find(e=>e.useModel===n.name))continue;let t=await (0,y.buildSubModelItem)(n,e);t&&l.push(t)}return j().sortBy([...o,...l],"sort")}}(0,K._)(Z,"baseClass",void 0),(0,K._)(Z,"scene",void 0),(0,K._)(Z,"_models",void 0);class ee extends Z{}(0,K._)(ee,"baseClass",X),(0,K._)(ee,"scene",J.collection);class et extends Z{}(0,K._)(et,"baseClass",X),(0,K._)(et,"scene",J.record);var el=l(2117);X.registerFlow({key:"buttonSettings",title:(0,y.tExpr)("Button settings"),sort:-999,steps:{general:{title:(0,y.tExpr)("Edit button"),uiSchema:e=>({title:e.model.enableEditTitle?{"x-decorator":"FormItem","x-component":"Input",title:(0,y.tExpr)("Button title")}:void 0,tooltip:e.model.enableEditTooltip?{"x-decorator":"FormItem","x-component":"Input",title:(0,y.tExpr)("Button tooltip")}:void 0,icon:e.model.enableEditIcon?{"x-decorator":"FormItem","x-component":"IconPicker",title:(0,y.tExpr)("Button icon")}:void 0,type:e.model.enableEditType?{"x-decorator":"FormItem","x-component":"Radio.Group",title:(0,y.tExpr)("Button type"),enum:[{value:"default",label:'{{t("Default")}}'},{value:"primary",label:'{{t("Primary")}}'},{value:"dashed",label:'{{t("Dashed")}}'},{value:"link",label:'{{t("Link")}}'},{value:"text",label:'{{t("Text")}}'}]}:void 0,danger:e.model.enableEditDanger?{"x-decorator":"FormItem","x-component":"Switch",title:(0,y.tExpr)("Danger action")}:void 0,color:e.model.enableEditColor?{"x-decorator":"FormItem","x-component":b.sk,title:(0,y.tExpr)("Color")}:void 0}),defaultParams:e=>e.model.defaultProps,handler(e,t){let{title:l,tooltip:o,...n}=t;e.model.setProps({title:e.t(l,{ns:"lm-flow-engine"}),tooltip:e.t(o,{ns:"lm-flow-engine"}),...n})}},linkageRules:{use:"actionLinkageRules"}}}),X.registerFlow({key:"buttonAclSettings",steps:{aclCheck:{use:"aclCheck"}}}),X.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh"},linkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"actionLinkageRules",flowKey:"buttonSettings",stepKey:"linkageRules"}}}}),X.registerEvents({click:{title:(0,y.tExpr)("Click"),name:"click",uiSchema:{condition:{type:"object",title:(0,y.tExpr)("Trigger condition"),"x-decorator":"FormItem","x-component":el.H}},handler:el.b}});class eo extends y.FlowModel{static defineChildren(e){let t=this.itemModelName,l=function(o){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return o.getToOneAssociationFields().map(o=>{let r=n?`${n}.${o.name}`:o.name;return o.targetCollection?{key:`${r}-assocationField`,label:o.title,children:()=>[{key:`${r}-children-collectionField`,label:e.t("Display fields"),type:"group",children:o.targetCollection.getFields().map(l=>{let o=`${r}.${l.name}`,n=y.DisplayItemModel.getDefaultBindingByField(e,l,{fallbackToTargetTitleField:!0});if(!n)return;let i=n.modelName;return{key:`c-${r}.${l.name}`,label:l.title,useModel:t,toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===o},createModelOptions:{stepParams:{fieldSettings:{init:{dataSourceKey:e.collection.dataSourceKey,collectionName:e.prefixFieldPath?e.blockModel.context.collection.name:e.collection.name,fieldPath:o,associationPathName:r}}},subModels:{field:{use:i}}}}}).filter(Boolean)},{key:`${r}-children-associationField`,label:"Display association fields",type:"group",children:(l(o.targetCollection,r)||[]).filter(Boolean)}]}:void console.error(`AssociationFieldGroupModel: target collection ${o.target} not found for field ${o.name}`)}).filter(Boolean)};return l(e.collection,e.prefixFieldPath)}}(0,K._)(eo,"itemModelName","DetailsItemModel"),eo.define({label:'{{t("Display fields")}}'});var en=l(18853);function er(e){var t,l,o,n,r,i;return e.operator||(null==(t=e.getStepParams("filterFormItemSettings","defaultOperator"))?void 0:t.value)||(null==(l=e.subModels.field)?void 0:l.operator)||(null==(i=e.collectionField)||null==(r=i.filterable)||null==(n=r.operators)||null==(o=n[0])?void 0:o.value)||"$includes"}function ei(e){return!!(null==e||"string"==typeof e&&""===e.trim()||Array.isArray(e)&&0===e.filter(e=>null!=e&&("string"!=typeof e||""!==e.trim())).length)||"object"==typeof e&&e.constructor===Object&&0===Object.keys(e).length}function ea(e){return e.filterSubModels("items",e=>{var t;return!!(null==(t=e.resource)?void 0:t.supportsFilter)})}class es{async saveFilterConfigs(){await this.gridModel.saveStepParams()}getFilterConfigs(){return this.filterConfigs}getConnectFieldsConfig(e){let t=this.filterConfigs.filter(t=>t.filterId===e);if(0!==t.length)return{targets:t.map(e=>({targetId:e.targetId,filterPaths:e.filterPaths}))}}async saveConnectFieldsConfig(e,t){let l=t.targets.map(t=>({filterId:e,targetId:t.targetId,filterPaths:t.filterPaths})),o=this.filterConfigs.filter(t=>t.filterId!==e);this.filterConfigs=[],this.filterConfigs.push(...o,...l),await this.saveFilterConfigs()}async addFilterConfig(e){if(!e.filterId||!e.targetId)return void console.error("FilterConfig must have filterId, targetId, and operator");if(!Array.isArray(e.filterPaths)||0===e.filterPaths.length)return void console.error("FilterConfig must have non-empty filterPaths array");let t=this.filterConfigs.findIndex(t=>t.filterId===e.filterId&&t.targetId===e.targetId);t>=0?this.filterConfigs[t]={...e}:this.filterConfigs.push({...e}),await this.saveFilterConfigs()}async removeFilterConfig(e){let{filterId:t,targetId:l,persist:o=!0}=e;if(!t&&!l)return console.error("At least one of filterId or targetId must be provided"),0;let n=this.filterConfigs.length;this.filterConfigs=this.filterConfigs.filter(e=>t&&l?e.filterId!==t||e.targetId!==l:t?e.filterId!==t:!l||e.targetId!==l);let r=n-this.filterConfigs.length;return r>0&&o&&await this.saveFilterConfigs(),r}bindToTarget(e){if(!e||"string"!=typeof e)return void console.error("[NocoBase]: targetId must be a non-empty string");let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`[NocoBase]: Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.addFilterGroup)return void console.error(`[NocoBase]: Target model with uid "${e}" does not have a valid resource with addFilterGroup method`);if("function"!=typeof t.resource.removeFilterGroup)return void console.error(`[NocoBase]: Target model with uid "${e}" does not have a valid resource with removeFilterGroup method`);let l=this.filterConfigs.filter(t=>t.targetId===e);if(0===l.length)return;let o=t;l.forEach(e=>{let l=this.gridModel.flowEngine.getModel(e.filterId);if(!l)return void console.error(`[NocoBase]: Filter model with uid "${e.filterId}" not found`);if(!l.getFilterValue)return void console.error(`[NocoBase]: Filter model with uid "${e.filterId}" does not have getFilterValue method`);let n=l.getFilterValue();if(ei(n)){try{t.resource.removeFilterGroup(e.filterId),o.setFilterActive(e.filterId,!1)}catch(e){console.error(`[NocoBase]: Failed to remove filter configuration from target model: ${e.message}`)}return}o.setFilterActive(e.filterId,!0);let r=e.filterPaths.map(t=>({path:t,operator:e.operator||er(l),value:n}));try{if(1===r.length)t.resource.addFilterGroup(e.filterId,new y.FilterItem({path:r[0].path,operator:r[0].operator,value:r[0].value}));else if(r.length>1){let l={logic:"$or",items:r};t.resource.addFilterGroup(e.filterId,new y.FilterGroup(l))}}catch(e){console.error(`Failed to bind filter configuration to target model: ${e.message}`);return}})}unbindFromTarget(e){if(!e||"string"!=typeof e)return void console.error("targetId must be a non-empty string");let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.removeFilterGroup)return void console.error(`Target model with uid "${e}" does not have a valid resource with removeFilterGroup method`);let l=this.filterConfigs.filter(t=>t.targetId===e);if(0===l.length)return;let o=t;l.forEach(e=>{try{t.resource.removeFilterGroup(e.filterId),"function"==typeof(null==o?void 0:o.removeFilterSource)&&o.removeFilterSource(e.filterId)}catch(e){console.error(`Failed to unbind filter configuration from target model: ${e.message}`);return}})}async refreshTargetsByFilter(e){if(!e)return void console.error("filterId must be provided");let t=Array.isArray(e)?e:[e];if(0===t.length||t.some(e=>!e||"string"!=typeof e))return void console.error("filterId must be non-empty string(s)");let l=this.filterConfigs.filter(e=>t.includes(e.filterId));if(0===l.length)return;let o=[...new Set(l.map(e=>e.targetId))].map(async e=>{try{this.bindToTarget(e);let t=this.gridModel.flowEngine.getModel(e);if(!t)return void console.error(`Target model with uid "${e}" not found`);if(!t.resource||"function"!=typeof t.resource.refresh)return void console.error(`Target model with uid "${e}" does not have a valid resource with refresh method`);let l=t,o=t.resource,n=l.getDataLoadingMode();if("manual"===n&&!l.hasActiveFilters()){o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1;return}"function"==typeof o.setPage&&o.setPage(1),await o.refresh()}catch(t){console.error(`Failed to refresh target model "${e}": ${t.message}`);return}});await Promise.all(o)}constructor(e,t){(0,K._)(this,"filterConfigs",void 0),(0,K._)(this,"gridModel",void 0),this.gridModel=e,this.filterConfigs=t||[]}}var ed=l(27253),eu=l(84626),ec=l(47152),ep=l(16370);function eh(e){let{rows:t={},sizes:l={},layout:o,renderItem:n,rowGap:r=16,colGap:i=16,dragOverlayRect:a}=e,s=o||(0,y.normalizeGridLayout)({rows:t,sizes:l});return s.rows.length?(0,A.jsxs)("div",{style:{position:"relative",display:"flex",flexDirection:"column",gap:r},"data-grid-root":!0,children:[a&&(0,A.jsx)(eg,{rect:a}),(0,A.jsx)(em,{rows:s.rows,renderItem:n,rowGap:r,colGap:i,parentPath:[]})]}):(0,A.jsx)("div",{style:{position:"relative"},"data-grid-root":!0,"data-grid-empty-container":!0,children:a&&(0,A.jsx)(eg,{rect:a})})}function em(e){let{rows:t,renderItem:l,rowGap:o,colGap:n,parentPath:r}=e;return(0,A.jsx)(A.Fragment,{children:t.map(e=>{let t=e.cells.length,i=e.sizes||[],a=i.some(e=>null!=e&&void 0!==e),s=[...r,{rowId:e.id}],d=e.cells.map((e,l)=>{if(!a)return 24/t;{let e=i.reduce((e,t)=>e+(t||0),0),o=t-i.filter(Boolean).length,n=o>0?(24-e)/o:0;return i[l]??n}});return(0,A.jsx)(ec.A,{gutter:n,"data-grid-row-id":e.id,"data-grid-path":JSON.stringify(s),children:e.cells.map((t,r)=>(0,A.jsx)(ef,{rowKey:e.id,columnIndex:r,span:d[r],rowGap:o,colGap:n,cell:t,path:[...s.slice(0,-1),{rowId:e.id,cellId:t.id}],renderItem:l},t.id))},e.id)})})}let ef=k.memo(function(e){var t;let{rowKey:l,columnIndex:o,span:n,rowGap:r,colGap:i,cell:a,path:s,renderItem:d}=e,u=a.items||[];return(0,A.jsx)(ep.A,{span:n,"data-grid-column-row-id":l,"data-grid-column-index":o,"data-grid-path":JSON.stringify(s),children:(0,A.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:r},children:[u.map((e,t)=>e===y.EMPTY_COLUMN_UID?null:(0,A.jsx)("div",{"data-grid-item-row-id":l,"data-grid-column-index":o,"data-grid-item-index":t,"data-grid-item-uid":e,"data-grid-path":JSON.stringify(s),children:d(e)},e)),(null==(t=a.rows)?void 0:t.length)?(0,A.jsx)(em,{rows:a.rows,renderItem:d,rowGap:r,colGap:i,parentPath:s}):null]})})});function eg(e){let{rect:t}=e,l={position:"absolute",top:t.top,left:t.left,width:t.width,height:t.height,borderRadius:6,pointerEvents:"none",transition:"all 60ms ease-out",zIndex:100},o={column:{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.08)"},"column-edge":{border:"2px solid var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.12)"},"row-gap":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.05)"},"empty-row":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.04)"},"empty-column":{border:"2px dashed var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.04)"},"item-edge":{border:"2px solid var(--colorPrimary)",backgroundColor:"rgba(22, 119, 255, 0.12)"}};return(0,A.jsx)("div",{style:{...l,...o[t.type]}})}ef.displayName="GridColumn";var ev=l(18220),ey=l(95725),eb=l(40919);let ex=e=>{let{value:t,onChange:l,rows:o=10,...n}=e,[r,i]=(0,k.useState)(()=>t?JSON.stringify(t,null,2):""),[a,s]=(0,k.useState)(null);(0,k.useEffect)(()=>{i(t?JSON.stringify(t,null,2):"")},[t]);let d=e=>{let t=e.target.value;i(t);try{let e=t.trim()?JSON.parse(t):void 0;s(null),null==l||l(e)}catch(e){s(e.message)}};return(0,A.jsxs)("div",{children:[(0,A.jsx)(ey.A.TextArea,{value:r,autoSize:{minRows:o,maxRows:o+10},onChange:d,...n}),a&&(0,A.jsx)(eb.A,{type:"error",message:a,showIcon:!0,style:{marginTop:8}})]})},ew=(0,ev.connect)(ex),eS="gridSettings",eM="grid",eF=e=>{if(!e)return null;if("number"==typeof e.clientX&&"number"==typeof e.clientY)return{x:e.clientX,y:e.clientY};if(e.touches&&e.touches.length>0){let t=e.touches[0];return{x:t.clientX,y:t.clientY}}if(e.changedTouches&&e.changedTouches.length>0){let t=e.changedTouches[0];return{x:t.clientX,y:t.clientY}}return null};class eA extends y.FlowModel{bindDragDocumentListeners(){var e;let t=(null==(e=this.getDragContainer())?void 0:e.ownerDocument)||("u"<typeof document?null:document);if(!t)return;let l={capture:!0,passive:!0},o={capture:!0},n=t.defaultView;return t.addEventListener("pointermove",this.updateDragPointerPosition,l),t.addEventListener("mousemove",this.updateDragPointerPosition,l),t.addEventListener("touchmove",this.updateDragPointerPosition,l),t.addEventListener("scroll",this.handleDragScroll,l),null==n||n.addEventListener("scroll",this.handleDragScroll,l),()=>{t.removeEventListener("pointermove",this.updateDragPointerPosition,o),t.removeEventListener("mousemove",this.updateDragPointerPosition,o),t.removeEventListener("touchmove",this.updateDragPointerPosition,o),t.removeEventListener("scroll",this.handleDragScroll,o),null==n||n.removeEventListener("scroll",this.handleDragScroll,o)}}deriveRowOrder(e,t){let l=[],o=new Set;return(t||Object.keys(e)).forEach(t=>{e[t]&&!o.has(t)&&(l.push(t),o.add(t))}),Object.keys(e).forEach(e=>{o.has(e)||(l.push(e),o.add(e))}),l}normalizeRowsWithOrder(e,t){let l=this.deriveRowOrder(e,t),o={};return l.forEach(t=>{e[t]&&(o[t]=e[t])}),Object.keys(e).forEach(t=>{o[t]||(o[t]=e[t])}),{rows:o,rowOrder:l}}orderSizesByRowOrder(e,t){let l={};return t.forEach(t=>{e[t]&&(l[t]=e[t])}),Object.keys(e).forEach(t=>{l[t]||(l[t]=e[t])}),l}getItemFlowSettings(){return this._memoItemFlowSettings||(this._memoItemFlowSettings={showBackground:!1,showDragHandle:!0,...this.itemFlowSettings}),this._memoItemFlowSettings}getItemUids(){return(this.subModels.items||[]).map(e=>e.uid)}normalizeLayoutFromSource(e){let t=this.getStepParams(eS,eM)||{};return(0,y.normalizeGridLayout)({layout:(null==e?void 0:e.layout)??this.props.layout??t.layout,rows:(null==e?void 0:e.rows)??this.props.rows??t.rows,sizes:(null==e?void 0:e.sizes)??this.props.sizes??t.sizes,rowOrder:(null==e?void 0:e.rowOrder)??this.props.rowOrder??t.rowOrder,itemUids:this.getItemUids(),gridUid:this.uid,logger:console})}getGridLayout(){return this.normalizeLayoutFromSource()}syncLayoutProps(e){let t=(0,y.projectLayoutToLegacyRows)(e);this.setProps("layout",e),this.setProps("rows",t.rows),this.setProps("sizes",t.sizes),this.setProps("rowOrder",t.rowOrder)}setGridStepLayout(e){this.setStepParams(eS,{[eM]:{layout:e}})}findLayoutRowByPath(e,t){if(!(null==t?void 0:t.length))return null;let l=e.rows;for(let e=0;e<t.length;e+=1){let o=t[e],n=l.find(e=>e.id===o.rowId);if(!n)break;if(e===t.length-1)return n;let r=n.cells.find(e=>e.id===o.cellId);l=(null==r?void 0:r.rows)||[]}return null}collectCellItemsForResize(e){return Array.isArray(e.items)?[...e.items]:(e.rows||[]).flatMap(e=>e.cells.flatMap(e=>this.collectCellItemsForResize(e)))}buildResizedCells(e,t){let l=new Set;return t.map((t,o)=>{let n=e.cells.findIndex((e,o)=>!l.has(o)&&j().isEqual(this.collectCellItemsForResize(e),t));if(-1!==n){l.add(n);let o=e.cells[n];return o.rows&&!o.items?j().cloneDeep(o):{id:o.id,items:[...t]}}return{id:`${e.id}:cell:${o}:${(0,ed.uid)()}`,items:[...t]}})}getResizeRowPath(e){if(!(null==e?void 0:e.length))return[];let t=e.map(e=>({...e}));return delete t[t.length-1].cellId,t}getResizeContainerWidth(e){var t,l,o;let n=this.getResizeRowPath(e),r=(null==(t=this.gridContainerRef.current)?void 0:t.clientWidth)||0;if(!n.length)return r;let i=Array.from((null==(l=this.gridContainerRef.current)?void 0:l.querySelectorAll("[data-grid-row-id]"))||[]).find(e=>{try{return j().isEqual(JSON.parse(e.dataset.gridPath||"[]"),n)}catch{return!1}});return(null==i||null==(o=i.parentElement)?void 0:o.clientWidth)||r}resizeGridLayout(e){var t;let{direction:l,resizeDistance:o,model:n}=e,r=this.getGridLayout(),i=(0,y.findModelUidLayoutPosition)(r,n.uid);if(!i)return null;let a=this.findLayoutRowByPath(r,i.path);if(!a)return null;let s=this.getResizeContainerWidth(i.path),d=a.cells.map(e=>this.collectCellItemsForResize(e)),{newRows:u,newSizes:c,moveDistance:p}=eC({position:{rowId:a.id,columnIndex:i.cellIndex,itemIndex:i.itemIndex},direction:l,resizeDistance:o,prevMoveDistance:this.prevMoveDistance,oldRows:{[a.id]:d},oldSizes:{[a.id]:a.sizes||[]},gutter:(null==(t=this.context.themeToken)?void 0:t.marginBlock)??16,gridContainerWidth:s}),h=j().cloneDeep(r),m=this.findLayoutRowByPath(h,i.path);return m?(m.cells=this.buildResizedCells(a,u[a.id]||[]),m.sizes=c[a.id]||[],{layout:(0,y.normalizeGridLayout)({layout:h,itemUids:this.getItemUids(),gridUid:this.uid,logger:console}),moveDistance:p}):null}onMount(){super.onMount(),this.emitter.on("onSubModelAdded",e=>{e.isNew&&(this.resetRows(!0),this.setGridStepLayout(this.props.layout))}),this.emitter.on("onSubModelDestroyed",e=>{var t,l;let o=e.uid;this.resetRows(!0),this.setGridStepLayout(this.props.layout),null==(t=this.context.filterManager)||t.removeFilterConfig({targetId:o}),null==(l=this.context.filterManager)||l.removeFilterConfig({filterId:o}),this.saveStepParams()}),this.emitter.on("onSubModelMoved",()=>{this.resetRows(!0)}),this.emitter.on("onResizeLeft",e=>{let{resizeDistance:t,model:l}=e,o=this.resizeGridLayout({direction:"left",resizeDistance:t,model:l});o&&(this.prevMoveDistance=o.moveDistance,this.syncLayoutProps(o.layout))}),this.emitter.on("onResizeRight",e=>{let{resizeDistance:t,model:l}=e,o=this.resizeGridLayout({direction:"right",resizeDistance:t,model:l});o&&(this.prevMoveDistance=o.moveDistance,this.syncLayoutProps(o.layout))}),this.emitter.on("onResizeBottom",e=>{let{resizeDistance:t,model:l}=e}),this.emitter.on("onResizeEnd",()=>{this.prevMoveDistance=0,this.saveGridLayout(this.props.layout)})}saveGridLayout(e){let t=e&&"version"in e?(0,y.normalizeGridLayout)({layout:e,itemUids:this.getItemUids(),gridUid:this.uid,logger:console}):this.normalizeLayoutFromSource(e);this.setGridStepLayout(t),this.syncLayoutProps(t),this.saveStepParams()}mergeRowsWithItems(e){let t=this.subModels.items||[];if(!t||0===t.length)return{};let l=new Set(t.map(e=>e.uid));l.add(y.EMPTY_COLUMN_UID);let o=new Set,n={};for(let[t,r]of Object.entries(e)){let e=r.map(e=>j().castArray(e).filter(e=>l.has(e))).filter(e=>e.length>0);e.length>0&&(n[t]=e,e.forEach(e=>e.forEach(e=>o.add(e))))}let r=new Set;for(let e of(Object.values(n).forEach(e=>e.forEach(e=>e.forEach(e=>r.add(e)))),t))r.has(e.uid)||(n[(0,ed.uid)()]=[[e.uid]]);return n}resetRows(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=this.getStepParams(eS,eM)||{},l=this.normalizeLayoutFromSource(t);this.setGridStepLayout(l),e&&this.syncLayoutProps(l)}computePointerPosition(e){var t;if(!this.dragState)return null;if(this.dragState.pointerPosition)return this.dragState.pointerPosition;let l=this.dragState.pointerOrigin;if(l)return{x:l.x+e.delta.x,y:l.y+e.delta.y};let o=eF(e.activatorEvent);if(o)return this.dragState.pointerOrigin=o,{x:o.x+e.delta.x,y:o.y+e.delta.y};let n=null==(t=e.over)?void 0:t.rect;return n?{x:n.left+n.width/2,y:n.top+n.height/2}:null}getDragContainer(){if(!this.dragState)return this.gridContainerRef.current;let e=this.gridContainerRef.current;return e&&this.dragState.containerEl!==e&&(this.dragState.containerEl=e),this.dragState.containerEl||e}updateLayoutSnapshot(){if(!this.dragState)return;let e=(0,y.buildLayoutSnapshot)({container:this.getDragContainer()});this.dragState.slots=e.slots,this.dragState.containerRect=e.containerRect}scheduleSnapshotRefresh(){!this.dragState||this.dragState.refreshTimer||(this.dragState.refreshTimer=setTimeout(()=>{this.dragState&&(this.dragState.refreshTimer=null,this.updateLayoutSnapshot(),this.refreshPreviewFromPointer())},16))}refreshPreviewFromPointer(){if(!this.dragState)return;let e=this.dragState.pointerPosition||this.dragState.pointerOrigin;if(!e)return;let t=this.resolveDragSlot(e);this.applyPreview(t)}computeOverlayRect(e){var t,l,o,n;let r=this.dragOverlayConfig,i=e.rect;switch(e.type){case"column":{let l=null==r||null==(t=r.columnInsert)?void 0:t[e.position],o=(null==l?void 0:l.height)??i.height,n=(null==l?void 0:l.offsetTop)??0;return{top:i.top+n,left:i.left,width:i.width,height:o}}case"column-edge":{let t=null==r||null==(l=r.columnEdge)?void 0:l[e.direction],o=(null==t?void 0:t.width)??i.width,n=(null==t?void 0:t.offsetLeft)??0;return{top:i.top,left:i.left+n,width:o,height:i.height}}case"item-edge":{let t=null==r||null==(o=r.columnEdge)?void 0:o[e.direction],l=(null==t?void 0:t.width)??i.width,n=(null==t?void 0:t.offsetLeft)??0;return{top:i.top,left:i.left+n,width:l,height:i.height}}case"row-gap":{let t=null==r||null==(n=r.rowGap)?void 0:n[e.position],l=(null==t?void 0:t.height)??i.height,o=(null==t?void 0:t.offsetTop)??0;return{top:i.top+o,left:i.left,width:i.width,height:l}}default:return{top:i.top,left:i.left,width:i.width,height:i.height}}}getHitTestSlot(e){return{...e,rect:this.computeOverlayRect(e)}}resolveDragSlot(e){var t;return(null==(t=this.dragState)?void 0:t.slots.length)?(0,y.resolveDropIntent)(e,this.dragState.slots.map(e=>this.getHitTestSlot(e))):null}applyPreview(e){if(!this.dragState)return;if(!e){null!==this.dragState.activeSlotKey&&(this.dragState.activeSlotKey=null,this.dragState.previewLayout=void 0,this.setProps("dragOverlayRect",null));return}let t=(0,y.getSlotKey)(e);if(this.dragState.activeSlotKey===t&&this.dragState.previewLayout)return;let l=(0,y.simulateLayoutForSlot)({slot:e,sourceUid:this.dragState.sourceUid,layout:this.dragState.snapshot,generateRowId:ed.uid,generatedIds:this.dragState.generatedIds,generateId:()=>(0,ed.uid)()});if(l.layout&&this.dragState.snapshot.layout&&(0,y.isSameGridLayout)(l.layout,this.dragState.snapshot.layout))return void this.applyPreview(null);this.dragState.previewLayout={rows:j().cloneDeep(l.rows),sizes:j().cloneDeep(l.sizes),rowOrder:j().cloneDeep(l.rowOrder),layout:j().cloneDeep(l.layout)};let o=this.computeOverlayRect(e),n={top:o.top-this.dragState.containerRect.top,left:o.left-this.dragState.containerRect.left,width:o.width,height:o.height,type:e.type};this.setProps("dragOverlayRect",n),this.dragState.activeSlotKey=t}handleDragStart(e){let t=e.active.id,l=this.normalizeLayoutFromSource(),o=(0,y.projectLayoutToLegacyRows)(l);this.dragState={sourceUid:t,snapshot:{rows:j().cloneDeep(o.rows),sizes:j().cloneDeep(o.sizes),rowOrder:j().cloneDeep(o.rowOrder),layout:j().cloneDeep(l)},slots:[],containerEl:this.gridContainerRef.current,containerRect:{top:0,left:0,width:0,height:0},pointerOrigin:eF(e.activatorEvent)??void 0,activeSlotKey:null,previewLayout:void 0,refreshTimer:null,generatedIds:new Map},this.dragState.cleanupListeners=this.bindDragDocumentListeners(),this.setProps("dragOverlayRect",null),this.updateLayoutSnapshot(),this.scheduleSnapshotRefresh()}handleDragMove(e){if(!this.dragState)return;this.dragState.slots.length||this.updateLayoutSnapshot();let t=this.computePointerPosition(e);if(!t)return void this.applyPreview(null);let l=this.resolveDragSlot(t);this.applyPreview(l)}finishDrag(){var e,t;this.dragState&&(this.dragState.refreshTimer&&clearTimeout(this.dragState.refreshTimer),null==(e=(t=this.dragState).cleanupListeners)||e.call(t),this.dragState=void 0,this.setProps("dragOverlayRect",null))}handleDragEnd(e){if(!this.dragState)return;let t=this.dragState.previewLayout;t&&(t.layout?this.syncLayoutProps(j().cloneDeep(t.layout)):(this.setProps("rows",j().cloneDeep(t.rows)),this.setProps("sizes",j().cloneDeep(t.sizes)),t.rowOrder&&this.setProps("rowOrder",j().cloneDeep(t.rowOrder))),this.saveGridLayout(t)),this.finishDrag()}handleDragCancel(e){this.finishDrag()}renderAddSubModelButton(){throw Error("renderAddSubModelButton method must be implemented in subclasses of GridModel")}getVisibleLayout(){var e;let t=this.normalizeLayoutFromSource(),l=this.context.isMobileLayout?(0,y.normalizeGridLayout)({rows:ek((0,y.projectLayoutToLegacyRows)(t).rows),itemUids:this.getItemUids()}):t,o=(0,y.projectLayoutToLegacyRows)(l),{rows:n,rowOrder:r}=this.normalizeRowsWithOrder(o.rows,o.rowOrder),i=this.orderSizesByRowOrder(o.sizes,r);if(this.context.flowSettingsEnabled)return{layout:l,rows:n,sizes:i};let a=(null==(e=this.subModels)?void 0:e.items)||[];if(!a.length)return{layout:l,rows:o.rows,sizes:o.sizes};let s=new Map(a.map(e=>[e.uid,e])),d=e=>e.map(e=>{let t=[],l=[];return e.cells.forEach((o,n)=>{var r;let i=null==(r=e.sizes)?void 0:r[n],a=Number.isFinite(i)&&i>0?i:1;if(o.rows){let e=d(o.rows);e.length&&(t.push({...o,rows:e}),l.push(a));return}let u=(o.items||[]).filter(e=>{var t;return e!==y.EMPTY_COLUMN_UID&&(null==(t=s.get(e))?void 0:t.hidden)!==!0});u.some(e=>{let t=s.get(e);return!t||!t.hidden})&&(t.push({...o,items:u}),l.push(a))}),t.length?{...e,cells:t,sizes:l}:null}).filter(Boolean),u=(0,y.normalizeGridLayout)({layout:{version:2,rows:d(l.rows)}}),c=(0,y.projectLayoutToLegacyRows)(u);return{layout:u,rows:c.rows,sizes:c.sizes}}render(){let{layout:e,rows:t,sizes:l}=this.getVisibleLayout(),o=Object.keys(t||{}).length>0;return(0,A.jsxs)(A.Fragment,{children:[o&&(0,A.jsx)(eu.A,{ref:this.gridContainerRef,direction:"vertical",style:{width:"100%",marginBottom:this.props.rowGap},size:this.props.rowGap,children:(0,A.jsx)(y.DndProvider,{onDragStart:this.handleDragStart.bind(this),onDragMove:this.handleDragMove.bind(this),onDragEnd:this.handleDragEnd.bind(this),onDragCancel:this.handleDragCancel.bind(this),children:(0,A.jsx)(eh,{rowGap:this.props.rowGap,colGap:this.props.colGap,layout:e,rows:t,sizes:l,dragOverlayRect:this.props.dragOverlayRect,renderItem:e=>{var t,l,o,n,r;let i=this.flowEngine.getModel(e);if(!i)return this.itemFallback;let a=this.context.fieldKey,s=this.context.fieldIndex,d=this.context.getPropertyOptions("item"),u=null==(t=(l=this.context).getPropertyOptions)?void 0:t.call(l,"record"),c=null==(o=(n=this.context).getPropertyOptions)?void 0:o.call(n,"currentObject"),p=null==s?i:(()=>{let t=i.createFork({},`${a}:${e}`);t.context.defineProperty("fieldIndex",{get:()=>s}),t.context.defineProperty("fieldKey",{get:()=>a}),t.context.defineProperty("record",{get:()=>this.context.record,cache:!1,meta:null==u?void 0:u.meta,resolveOnServer:null==u?void 0:u.resolveOnServer,serverOnlyWhenContextParams:null==u?void 0:u.serverOnlyWhenContextParams}),t.context.defineProperty("currentObject",{get:()=>this.context.currentObject,cache:!1,resolveOnServer:null==c?void 0:c.resolveOnServer,serverOnlyWhenContextParams:null==c?void 0:c.serverOnlyWhenContextParams});let{value:l,...o}=d||{};return t.context.defineProperty("item",{...o,get:()=>this.context.item,cache:!1}),t})();return(0,A.jsx)(y.Droppable,{model:p,children:(0,A.jsx)(y.MemoFlowModelRenderer,{model:p,fallback:i.skeleton||this.itemFallback,showFlowSettings:!!this.context.flowSettingsEnabled&&this.getItemFlowSettings(),showErrorFallback:!0,settingsMenuLevel:(null==p?void 0:p.settingsMenuLevel)??this.itemSettingsMenuLevel,showTitle:!0,extraToolbarItems:this.itemExtraToolbarItems},`${p.uid}:${a}:${(null==p?void 0:p.use)||(null==p||null==(r=p.constructor)?void 0:r.name)||"m"}`)})}})})}),this.context.flowSettingsEnabled&&(0,A.jsx)("div",{style:{marginBottom:16},children:this.renderAddSubModelButton()})]})}constructor(...e){super(...e),(0,K._)(this,"subModelBaseClass","BlockModel"),(0,K._)(this,"gridContainerRef",k.createRef()),(0,K._)(this,"prevMoveDistance",0),(0,K._)(this,"itemSettingsMenuLevel",1),(0,K._)(this,"itemFlowSettings",{}),(0,K._)(this,"dragOverlayConfig",void 0),(0,K._)(this,"itemFallback",(0,A.jsx)(q,{})),(0,K._)(this,"itemExtraToolbarItems",[{key:"drag-handler",component:y.DragHandler,sort:1}]),(0,K._)(this,"dragState",void 0),(0,K._)(this,"_memoItemFlowSettings",void 0),(0,K._)(this,"updateDragPointerPosition",e=>{if(!this.dragState)return;let t=eF(e);t&&(this.dragState.pointerPosition=t)}),(0,K._)(this,"handleDragScroll",()=>{this.dragState&&this.scheduleSnapshotRefresh()})}}function ek(e,t){let l=(null==t?void 0:t.emptyColumnUid)??y.EMPTY_COLUMN_UID,o={};return Object.keys(e).forEach(t=>{e[t].forEach(e=>{let t=e.filter(e=>e!==l);t.length>0&&(o[(0,ed.uid)()]=[t])})}),o}function eC(e){var t,l;let{position:o,direction:n,resizeDistance:r,prevMoveDistance:i,oldSizes:a,oldRows:s,gridContainerWidth:d,gutter:u=16,columnCount:c=24}=e,p=j().cloneDeep(s),h=j().cloneDeep(a),m=Math.floor(r/(d-u*((h[o.rowId]||[]).length-1))*c);if(m===i)return{newRows:p,newSizes:h,moveDistance:m};(t=h)[l=o.rowId]??(t[l]=[c]);let f=h[o.rowId],g=m-i,v="left"===n&&o.columnIndex>0,y="right"===n&&o.columnIndex<f.length-1;if(!v&&!y&&g>0){let e=c-f.reduce((e,t)=>e+t,0);if(e<=0)return{newRows:p,newSizes:h,moveDistance:i};g>e&&(m=i+e,g=e)}if(h[o.rowId][o.columnIndex]+=g,"left"===n&&o.columnIndex>0&&(h[o.rowId][o.columnIndex-1]-=g,0===h[o.rowId][o.columnIndex-1]&&ej({rows:p,sizes:h,position:o,direction:"left"})),"left"===n&&0===o.columnIndex){let e=h[o.rowId].slice(1).reduce((e,t)=>e+t,0);h[o.rowId][0]<c-e&&eP({rows:p,sizes:h,position:o,direction:"left"})}if("right"===n&&o.columnIndex<h[o.rowId].length-1&&(h[o.rowId][o.columnIndex+1]-=g,0===h[o.rowId][o.columnIndex+1]&&ej({rows:p,sizes:h,position:o,direction:"right"})),"right"===n&&o.columnIndex===h[o.rowId].length-1){let e=h[o.rowId].slice(0,-1).reduce((e,t)=>e+t,0);h[o.rowId][o.columnIndex]<c-e&&eP({rows:p,sizes:h,position:o,direction:"right"})}return{newRows:p,newSizes:h,moveDistance:m}}function eP(e){let{rows:t,sizes:l,position:o,direction:n}=e,r=t[o.rowId]||[],i=l[o.rowId]||[];if("left"===n){let e=r[o.columnIndex-1];if(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID))return;r.splice(o.columnIndex,0,[y.EMPTY_COLUMN_UID]),i.splice(o.columnIndex,0,1)}if("right"===n){let e=r[o.columnIndex+1];if(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID))return;r.splice(o.columnIndex+1,0,[y.EMPTY_COLUMN_UID]),i.splice(o.columnIndex+1,0,1)}}function ej(e){let{rows:t,sizes:l,position:o,direction:n}=e,r=t[o.rowId]||[],i=l[o.rowId]||[];if("left"===n){let e=r[o.columnIndex-1];if(!(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID)))return;r.splice(o.columnIndex-1,1),i.splice(o.columnIndex-1,1)}if("right"===n){let e=r[o.columnIndex+1];if(!(null==e?void 0:e.includes(y.EMPTY_COLUMN_UID)))return;r.splice(o.columnIndex+1,1),i.splice(o.columnIndex+1,1)}}eA.registerFlow({key:eS,steps:{resetRows:{handler(e){e.model.resetRows()}},grid:{uiSchema:{layout:{title:(0,y.tExpr)("Layout"),"x-decorator":"FormItem","x-component":ew,"x-component-props":{autoSize:{minRows:10,maxRows:20},description:(0,y.tExpr)("Configure the nested layout of the grid.")}}},async handler(e,t){let l=e.model,o=(0,y.normalizeGridLayout)({layout:t.layout,rows:t.rows,sizes:t.sizes,rowOrder:t.rowOrder,itemUids:l.getItemUids(),gridUid:l.uid,logger:console});l.setGridStepLayout(o),l.syncLayoutProps(o)}}}});let eI=["JSBlockModel","IframeBlockModel","MarkdownBlockModel"];class eE extends eA{onInit(e){super.onInit(e),this.context.defineProperty("blockGridModel",{value:this}),this.context.defineProperty("filterManager",{once:!0,get:()=>new es(this,e.filterManager)})}get subModelBaseClasses(){var e;let t=(null==(e=this.context.view)?void 0:e.inputArgs)??{};return t.collectionName&&!t.filterByTk,["DataBlockModel","FilterBlockModel","BlockModel"]}get filterManager(){return this.context.filterManager}get addBlockItems(){var e,t;if((null==(t=this.context.view)||null==(e=t.inputArgs)?void 0:e.scene)==="select")return async e=>{let t=await (0,y.buildSubModelGroups)(["DataBlockModel","FilterBlockModel"])(e),l=eI.filter(t=>!!e.engine.getModelClass(t)),o=(await Promise.all(l.map(t=>(0,y.buildSubModelItems)(t)(e)))).flat().sort((e,t)=>(e.sort??1e3)-(t.sort??1e3));return o.length>0&&t.push({key:"select-scene-other-blocks",type:"group",label:e.t("Other blocks"),sort:1e3,children:o}),t}}serialize(){let e=super.serialize();return e.filterManager=this.filterManager.getFilterConfigs(),e}renderAddSubModelButton(){let e=this.addBlockItems;return(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"items",items:e,subModelBaseClasses:e?void 0:this.subModelBaseClasses,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(en.A,{}),"data-flow-add-block":!0,children:this.context.t("Add block")})})}render(){return(0,A.jsx)("div",{className:"nb-block-grid",style:this.context.disableBlockGridPadding?null:{padding:this.context.isMobileLayout?8:this.context.themeToken.marginBlock,paddingBottom:0},children:super.render()})}constructor(...e){super(...e),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-12},after:{offsetTop:12}},columnEdge:{left:{offsetLeft:-5},right:{offsetLeft:6}}})}}eE.registerFlow({key:"blockGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",e.isMobileLayout?12:e.themeToken.marginBlock),e.model.setProps("colGap",e.themeToken.marginBlock)}}}});var e_=l(15892);class eR extends X{}eR.define({children:async e=>(await (0,y.buildSubModelItems)(X)(e)).filter(t=>e.engine.getModelClass(t.useModel)._isScene(J.collection))});var eT=l(52175);class eD extends y.FlowModel{}var eN=l(5679),eO=l(81486);class e$ extends e_.z{}e$.define({hide:!0,label:"Filter blocks"});var eB=l(44279),eq=l(21637);async function eL(e){var t,l,o,n,r;(null==(l=e.inputArgs)||null==(t=l.dirty)?void 0:t.hasDirtyForms)&&(await e.modal.confirm({title:e.t("Unsaved changes"),content:e.t("Are you sure you don't want to save?"),okText:e.t("Confirm"),cancelText:e.t("Cancel")})||(null==(r=e.inputArgs)||null==(n=r.controller)||null==(o=n.prevent)||o.call(n),e.exitAll()))}class eV extends y.FlowModel{getActiveTabKey(){var e,t,l,o;let n=null==(t=this.context.view)||null==(e=t.navigation)?void 0:e.viewParams;return n?n.tabUid||(null==(o=this.getFirstTab())?void 0:o.uid):this.props.tabActiveKey||(null==(l=this.getFirstTab())?void 0:l.uid)}scheduleActiveLifecycleRefresh(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.dirtyRefreshScheduled||(this.dirtyRefreshScheduled=!0,Promise.resolve().then(()=>{if(this.dirtyRefreshScheduled=!1,this.unmounted||!1===(0,y.getPageActive)(this.context))return;let t=this.getActiveTabKey();t&&this.invokeTabModelLifecycleMethod(t,"onActive",e)}).catch(()=>{}))}onMount(){var e,t,l,o,n,r,i,a,s;super.onMount(),this.unmounted=!1,this.setProps("tabActiveKey",null==(e=this.context.view.inputArgs)?void 0:e.tabUid),(null==(t=this.context)?void 0:t.pageInfo)&&(this.context.pageInfo.version="v2"),this.updateDocumentTitle(),this.viewActivatedListener||(this.viewActivatedListener=e=>{let t=this.getActiveTabKey();t&&this.invokeTabModelLifecycleMethod(t,"onActive")},null==(r=this.flowEngine)||null==(n=r.emitter)||null==(o=n.on)||o.call(n,y.VIEW_ACTIVATED_EVENT,this.viewActivatedListener));let d=(0,y.getEmitterViewActivatedVersion)(null==(l=this.flowEngine)?void 0:l.emitter),u=d>0&&d!==this.lastSeenEmitterViewActivatedVersion;if(this.lastSeenEmitterViewActivatedVersion=d,u&&!1!==(0,y.getPageActive)(this.context)){let e=this.getActiveTabKey();e&&this.invokeTabModelLifecycleMethod(e,"onActive")}this.dataSourceDirtyListener||(this.dataSourceDirtyListener=e=>{this.scheduleActiveLifecycleRefresh()},null==(s=this.flowEngine)||null==(a=s.emitter)||null==(i=a.on)||i.call(a,y.DATA_SOURCE_DIRTY_EVENT,this.dataSourceDirtyListener))}onUnmount(){var e,t,l,o,n,r;this.unmounted=!0,this.viewActivatedListener&&(null==(l=this.flowEngine)||null==(t=l.emitter)||null==(e=t.off)||e.call(t,y.VIEW_ACTIVATED_EVENT,this.viewActivatedListener),this.viewActivatedListener=void 0),this.dataSourceDirtyListener&&(null==(r=this.flowEngine)||null==(n=r.emitter)||null==(o=n.off)||o.call(n,y.DATA_SOURCE_DIRTY_EVENT,this.dataSourceDirtyListener),this.dataSourceDirtyListener=void 0),super.onUnmount()}invokeTabModelLifecycleMethod(e,t){var l,o;let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];"onActive"===t&&(null==(l=this.context)?void 0:l.pageInfo)&&(this.context.pageInfo.version="v2");let r=this.flowEngine.getModel(e);if(r){if(r.context.tabActive){let e=!1!==(0,y.getPageActive)(r.context);r.context.tabActive.value=e&&"onActive"===t}null==(o=r.subModels.grid)||o.mapSubModels("items",e=>{var l;null==(l=e[t])||l.call(e,n)})}"onActive"===t&&this.updateDocumentTitle(e)}async updateDocumentTitle(e){var t,l,o,n,r,i,a,s,d,u,c,p,h,m,f,g;let v=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if(this.unmounted||!1===(0,y.getPageActive)(this.context))return;let b=!!(null==(l=this.context)||null==(t=l.view)?void 0:t.navigation),x=null==(r=this.context)||null==(n=r.view)||null==(o=n.inputArgs)?void 0:o.viewUid,w=null==(s=this.flowEngine)||null==(a=s.context)||null==(i=a.route)?void 0:i.pathname;if(b&&x&&"string"==typeof w){let e=null==(d=(0,y.parsePathnameToViewParams)(w).at(-1))?void 0:d.viewUid;if(e&&e!==x)return}let S=++this.documentTitleUpdateVersion,M=async e=>{if(!e||"string"!=typeof e)return"";try{var t,l;let o=await (null==(t=(l=this.context).resolveJsonTemplate)?void 0:t.call(l,e));return null==o?"":String(o)}catch(t){return e}},F="";if(this.props.enableTabs){let t=e||this.getActiveTabKey(),l=t?this.flowEngine.getModel(t):this.getFirstTab();if(!l&&v<5)return void window.setTimeout(()=>{this.unmounted||S===this.documentTitleUpdateVersion&&this.updateDocumentTitle(t,v+1)},0);F=await M(null==l||null==(p=l.stepParams)||null==(c=p.pageTabSettings)||null==(u=c.tab)?void 0:u.documentTitle)||(null==l||null==(h=l.getTabTitle)?void 0:h.call(l))||""}else F=await M(null==(g=this.stepParams)||null==(f=g.pageSettings)||null==(m=f.general)?void 0:m.documentTitle)||this.props.title||"";S===this.documentTitleUpdateVersion&&"string"==typeof F&&""!==F&&(document.title=F)}mapTabs(){return this.mapSubModels("tabs",e=>!this.context.flowSettingsEnabled&&e.hidden?null:{key:e.uid,label:(0,A.jsx)(y.Droppable,{model:e,children:(0,A.jsx)(y.FlowModelRenderer,{model:e,showFlowSettings:{showBackground:!0,showBorder:!1,toolbarPosition:"above",style:{transform:"translateY(8px)"}},extraToolbarItems:[{key:"drag-handler",component:y.DragHandler,sort:1}]})}),children:e.renderChildren()}).filter(Boolean)}getFirstTab(){var e;return null==(e=this.subModels.tabs)?void 0:e[0]}renderFirstTab(){var e;let t=this.getFirstTab();return null==t||null==(e=t.renderChildren)?void 0:e.call(t)}async handleDragEnd(e){throw Error("Method not implemented.")}renderTabs(){var e,t,l,o;let n=(null==(e=this.context.themeToken)?void 0:e.paddingLG)??16,r=void 0!==this.tabBarExtraContent.left?this.tabBarExtraContent.left:(0,A.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:n,height:1}}),i=void 0!==this.tabBarExtraContent.right?this.tabBarExtraContent.right:(0,A.jsx)("span",{style:{display:"inline-flex",marginInlineEnd:n},children:(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"tabs",items:[{key:"blank",label:this.context.t("Blank tab"),createModelOptions:this.createPageTabModelOptions}],children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(en.A,{}),children:this.context.t("Add tab")})})});return(0,A.jsx)(y.DndProvider,{onDragEnd:this.handleDragEnd.bind(this),children:(0,A.jsx)(eq.A,{activeKey:(null==(l=this.context.view)||null==(t=l.navigation)?void 0:t.viewParams)?this.context.view.navigation.viewParams.tabUid||(null==(o=this.getFirstTab())?void 0:o.uid):this.props.tabActiveKey,tabBarStyle:this.props.tabBarStyle,items:this.mapTabs(),onChange:e=>{var t,l;null==(l=this.context.view.navigation)||null==(t=l.changeTo)||t.call(l,{tabUid:e}),this.invokeTabModelLifecycleMethod(e,"onActive"),this.invokeTabModelLifecycleMethod(this.props.tabActiveKey,"onInactive"),this.setProps("tabActiveKey",e)},tabBarExtraContent:{left:r,right:i}})})}render(){let e=this.context.themeToken,t={...this.props.headerStyle};return e&&(t.paddingBlock=e.paddingSM,t.paddingInline=e.paddingLG),this.props.enableTabs&&(t.paddingBottom=0),(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:t}),this.props.enableTabs?this.renderTabs():this.renderFirstTab()]})}constructor(...e){super(...e),(0,K._)(this,"tabBarExtraContent",{}),(0,K._)(this,"viewActivatedListener",void 0),(0,K._)(this,"dataSourceDirtyListener",void 0),(0,K._)(this,"lastSeenEmitterViewActivatedVersion",0),(0,K._)(this,"dirtyRefreshScheduled",!1),(0,K._)(this,"unmounted",!1),(0,K._)(this,"documentTitleUpdateVersion",0),(0,K._)(this,"createPageTabModelOptions",()=>{let e=(0,ed.uid)();return{uid:e,use:"RootPageTabModel",props:{route:{parentId:this.props.routeId,type:"tabs",schemaUid:e,tabSchemaName:(0,ed.uid)(),params:[],hideInMenu:!1,enableTabs:!1}}}})}}eV.registerEvents({close:{title:(0,y.tExpr)("Close"),name:"close",hideInSettings(e){var t;return!!(null==(t=e.view)?void 0:t.preventClose)},uiSchema:{condition:{type:"object",title:(0,y.tExpr)("Trigger condition"),"x-decorator":"FormItem","x-component":el.H}},handler:el.b}}),eV.registerFlow({key:"closeGuard",title:(0,y.tExpr)("Close guard"),on:"close",steps:{confirmUnsavedChanges:{title:(0,y.tExpr)("Unsaved changes confirmation"),handler:eL}}}),eV.registerFlow({key:"pageSettings",title:(0,y.tExpr)("Page settings"),steps:{general:{title:(0,y.tExpr)("Edit page"),uiSchema:{title:{type:"string",title:(0,y.tExpr)("Page title"),"x-decorator":"FormItem","x-component":"Input","x-reactions":{dependencies:["displayTitle"],fulfill:{state:{visible:"{{$deps[0]}}"}}}},documentTitle:{type:"string",title:(0,y.tExpr)("Document title"),description:(0,y.tExpr)("Used as the browser tab title when tabs are disabled. Supports variables. Leave empty to use Page title."),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1,maxRows:6}},displayTitle:{type:"boolean",title:(0,y.tExpr)("Display page title"),"x-decorator":"FormItem","x-component":"Switch"},enableTabs:{type:"boolean",title:(0,y.tExpr)("Enable tabs"),"x-decorator":"FormItem","x-component":"Switch"}},defaultParams:e=>({displayTitle:!0,enableTabs:!1}),async handler(e,t){if(e.model.setProps("displayTitle",t.displayTitle),e.model.context.closable)e.model.setProps("title",e.t(t.title,{ns:"lm-desktop-routes"}));else{var l,o;let n=null==(o=e.model.context)||null==(l=o.currentRoute)?void 0:l.title;e.model.setProps("title",e.t(t.title||n,{ns:"lm-desktop-routes"}))}e.model.setProps("enableTabs",t.enableTabs),"embed"===e.view.type?(e.model.setProps("headerStyle",{backgroundColor:"var(--colorBgContainer)"}),e.model.setProps("tabBarStyle",{backgroundColor:"var(--colorBgContainer)",marginBottom:0})):(e.model.setProps("headerStyle",{backgroundColor:"var(--colorBgLayout)"}),e.model.setProps("tabBarStyle",{backgroundColor:"var(--colorBgLayout)",marginBottom:0})),e.model.updateDocumentTitle()}}}});var ez=l(68904);class eK extends eV{renderBackButtonWhenTabsDisabled(){var e,t,l;if((null==(t=this.context)||null==(e=t.view)?void 0:e.type)!=="embed")return null;let o=null==(l=this.context)?void 0:l.themeToken,n={...this.props.tabBarStyle,paddingBlock:(null==o?void 0:o.paddingXS)??8};return(0,A.jsx)("div",{style:n,children:(0,A.jsx)(eU,{renderSpacerWhenNoBack:!1})})}async handleDragEnd(e){var t,l;if(!(null==(t=e.active)?void 0:t.id)||!(null==(l=e.over)?void 0:l.id))throw Error("Invalid drag event");this.flowEngine.moveModel(e.active.id,e.over.id)}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&this.props.title&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.props.enableTabs?this.renderTabs():(0,A.jsxs)(A.Fragment,{children:[this.renderBackButtonWhenTabsDisabled(),this.renderFirstTab()]})]})}constructor(...e){super(...e),(0,K._)(this,"tabBarExtraContent",{left:(0,A.jsx)(eU,{})}),(0,K._)(this,"createPageTabModelOptions",()=>({use:"ChildPageTabModel"}))}}let eU=e=>{let{renderSpacerWhenNoBack:t=!0}=e,l=(0,y.useFlowContext)(),o=l.themeToken,n=32,r=(null==o?void 0:o.paddingLG)??16,i=(0,k.useMemo)(()=>({width:"auto",height:"auto",lineHeight:1,padding:o.paddingXS,marginLeft:o.paddingLG,marginRight:n-o.paddingXS}),[o.paddingLG,o.paddingXS]);return"embed"!==l.view.type?t?(0,A.jsx)("span",{"aria-hidden":"true",style:{display:"inline-block",width:r,height:1}}):null:(0,A.jsx)(H.Ay,{"aria-label":"back-button",type:"text",icon:(0,A.jsx)(ez.A,{}),style:i,onClick:l.view.close})};class eW extends y.FlowModel{}eW.registerFlow({key:"pageSettings",title:(0,y.tExpr)("Page settings"),steps:{general:{title:(0,y.tExpr)("General"),uiSchema:{title:{type:"string",title:(0,y.tExpr)("Page title"),"x-decorator":"FormItem","x-component":"Input","x-reactions":{dependencies:["displayTitle"],fulfill:{state:{visible:"{{$deps[0]}}"}}}},displayTitle:{type:"boolean",title:(0,y.tExpr)("Display page title"),"x-decorator":"FormItem","x-component":"Switch"}},defaultParams:e=>({displayTitle:!0,enableTabs:!1}),async handler(e,t){if(e.model.setProps("displayTitle",t.displayTitle),e.model.context.closable)e.model.setProps("title",t.title?e.t(t.title):null);else{var l,o;let n=null==(o=e.model.context)||null==(l=o.currentRoute)?void 0:l.title;e.model.setProps("title",e.t(t.title||n))}e.model.setProps("enableTabs",t.enableTabs),e.model.context.closable?(e.model.setProps("headerStyle",{backgroundColor:e.themeToken.colorBgContainer}),e.model.setProps("tabBarStyle",{backgroundColor:e.themeToken.colorBgLayout,paddingInline:16,marginBottom:0})):(e.model.setProps("headerStyle",{backgroundColor:e.themeToken.colorBgContainer}),e.model.setProps("tabBarStyle",{backgroundColor:e.themeToken.colorBgContainer,paddingInline:16,marginBottom:0}))}}}});class eH extends eW{renderFirstTab(){var e;return(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels.tabs)?void 0:e[0]})}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.renderFirstTab()]})}}function eY(e){let{ctx:t,options:l}=e,{data:o,loading:n}=(0,N.A)(async()=>{let e=await t.engine.loadOrCreateModel(l,{skipSave:!t.flowSettingsEnabled});return e.context.addDelegate(t),e},{refreshDeps:[t.model.uid]}),r=(null==t?void 0:t.isMobileLayout)?8:null==t?void 0:t.themeToken.marginBlock;return!n&&(null==o?void 0:o.uid)?(0,A.jsx)(y.FlowModelRenderer,{model:o,fallback:(0,A.jsx)(q,{style:{margin:r}})}):(0,A.jsx)(q,{style:{margin:r}})}function eG(e){return Array.isArray(e)?e.find(e=>!!e&&"object"==typeof e):e&&"object"==typeof e?e:void 0}class eJ extends y.FlowModel{onInit(e){super.onInit(e),this.context.defineProperty("tabActive",{value:y.observable.ref(!0),info:{description:"Whether current tab is active (observable.ref).",detail:"observable.ref<boolean>"}})}getTabTitle(){var e,t;let l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"Untitled",o=this.context.t(l,{ns:"client"});return this.context.t(null==(t=this.stepParams.pageTabSettings)||null==(e=t.tab)?void 0:e.title,{ns:"lm-desktop-routes"})||o}getTabIcon(){var e,t;return null==(t=this.stepParams.pageTabSettings)||null==(e=t.tab)?void 0:e.icon}renderChildren(){return null}renderHiddenInConfig(){return(0,A.jsxs)("span",{style:{display:"inline-block",opacity:.5},children:[(0,A.jsx)(b.In,{style:{marginRight:8},type:this.getTabIcon()}),this.getTabTitle()]})}render(){return(0,A.jsxs)("span",{style:{display:"inline-block"},children:[(0,A.jsx)(b.In,{style:{marginRight:8},type:this.getTabIcon()}),this.getTabTitle()]})}}eJ.registerFlow({key:"pageTabSettings",title:(0,y.tExpr)("Tab settings"),steps:{tab:{title:(0,y.tExpr)("Edit tab"),preset:!0,uiSchema:{title:{title:(0,y.tExpr)("Tab name"),"x-component":"Input","x-decorator":"FormItem",required:!0},documentTitle:{type:"string",title:(0,y.tExpr)("Document title"),description:(0,y.tExpr)("Used as the browser tab title when this tab is active. Supports variables. Leave empty to use Tab name."),"x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1,maxRows:6}},icon:{title:(0,y.tExpr)("Icon"),"x-decorator":"FormItem","x-component":"IconPicker"}},async handler(e,t){var l;let o="function"==typeof(null==e?void 0:e.t)?e.t.bind(e):e=>e;e.model.setProps("title",o(t.title,{ns:"lm-desktop-routes"})),e.model.setProps("icon",t.icon);let n=e.engine.getModel(e.model.parentId);null==n||null==(l=n.updateDocumentTitle)||l.call(n)}}}});class eX extends eJ{renderChildren(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}async saveStepParams(){return this.save()}async save(){var e,t,l,o,n;let r=this.serialize(),i=null==(l=this.stepParams)||null==(t=l.pageTabSettings)||null==(e=t.tab)?void 0:e.documentTitle,a=await this.context.api.request({method:"post",url:"desktopRoutes:updateOrCreate",params:{filterKeys:["schemaUid"]},data:{...this.props.route,title:this.getTabTitle(""),icon:this.getTabIcon(),options:{flowRegistry:r.flowRegistry,documentTitle:i}}}),s=eG(null==a||null==(o=a.data)?void 0:o.data);s&&this.setProps("route",{...this.props.route,...s,options:{...null==(n=this.props.route)?void 0:n.options,...s.options}})}async destroy(){return this.observerDispose(),this.invalidateFlowCache("beforeRender",!0),this.flowEngine.removeModel(this.uid),await this.context.api.request({method:"post",url:"desktopRoutes:destroy",params:{filter:{schemaUid:this.uid}},data:this.props.route}),!0}}class eQ extends eJ{renderChildren(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}}class eZ extends y.FlowModel{render(){return(0,A.jsx)(eY,{ctx:this.context,options:{parentId:this.uid,subKey:"grid",async:!0,subType:"object",use:"BlockGridModel"}})}}class e0 extends eV{async ensurePersistedRouteId(e){var t,l,o,n;let r=null==e||null==(l=e.props)||null==(t=l.route)?void 0:t.id;return null!=r?r:("function"==typeof(null==e?void 0:e.save)&&await e.save(),null==e||null==(n=e.props)||null==(o=n.route)?void 0:o.id)}onMount(){super.onMount(),(0,y.reaction)(()=>this.context.pageActive.value,()=>{var e,t;if(this.context.pageActive.value&&this.mounted){let t=null==(e=this.subModels.tabs)?void 0:e[0];t&&(this.setProps("tabActiveKey",t.uid),this.invokeTabModelLifecycleMethod(t.uid,"onActive",!0))}if(!1===this.context.pageActive.value)if(this.props.tabActiveKey)this.invokeTabModelLifecycleMethod(this.props.tabActiveKey,"onInactive");else{let e=null==(t=this.subModels.tabs)?void 0:t[0];e&&this.invokeTabModelLifecycleMethod(e.uid,"onInactive")}this.mounted=!0})}async saveStepParams(){await super.saveStepParams(),this.stepParams.pageSettings&&this.context.api.request({url:`desktopRoutes:update?filter[id]=${this.props.routeId}`,method:"post",data:{enableTabs:!!this.stepParams.pageSettings.general.enableTabs}})}async handleDragEnd(e){var t,l;let o=this.flowEngine.getModel(null==(t=e.active)?void 0:t.id),n=this.flowEngine.getModel(null==(l=e.over)?void 0:l.id);if(!o||!n||o.uid===n.uid)return;let[r,i]=await Promise.all([this.ensurePersistedRouteId(o),this.ensurePersistedRouteId(n)]);null!=r&&null!=i&&(await this.context.api.request({url:"desktopRoutes:move",method:"post",params:{sourceId:r,targetId:i,sortField:"sort"}}),this.flowEngine.moveModel(o.uid,n.uid,{persist:!1}))}constructor(...e){super(...e),(0,K._)(this,"mounted",!1)}}e0.registerFlow({key:"rootPageSettings",steps:{init:{async handler(e,t){if(e.model.hasSubModel("tabs"))return;let l=e.routeRepository.getRouteBySchemaUid(e.model.parentId);for(let t of(e.model.setProps("routeId",null==l?void 0:l.id),j().castArray(null==l?void 0:l.children).sort((e,t)=>e.sort-t.sort))){var o,n;if(t.hideInMenu)continue;let l=e.engine.createModel({parentId:e.model.uid,uid:t.schemaUid,subKey:"tabs",subType:"array",use:"RootPageTabModel",sortIndex:t.sort,props:{route:t},flowRegistry:null==(o=t.options)?void 0:o.flowRegistry,stepParams:{pageTabSettings:{tab:{title:t.title,icon:t.icon,documentTitle:null==(n=t.options)?void 0:n.documentTitle}}}});e.model.addSubModel("tabs",l)}}}}});class e1 extends eW{renderFirstTab(){var e;return(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels.tabs)?void 0:e[0]})}render(){return(0,A.jsxs)(A.Fragment,{children:[this.props.displayTitle&&(0,A.jsx)(eB.z,{title:this.props.title,style:this.props.headerStyle}),this.renderFirstTab()]})}}var e2=l(76059);class e4 extends X{constructor(...e){super(...e),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Popup"),icon:"ExportOutlined"})}}e4.define({label:(0,y.tExpr)("Popup")}),e4.registerFlow(e2.g);class e5 extends X{}e5.define({children:async e=>(await (0,y.buildSubModelItems)(X)(e)).filter(t=>e.engine.getModelClass(t.useModel)._isScene(J.record))});var e8=l(23235);class e3 extends e4{getAclActionName(){return"create"}constructor(...e){super(...e),(0,K._)(this,"defaultPopupTitle",(0,y.tExpr)("Add new")),(0,K._)(this,"defaultProps",{type:"primary",title:(0,y.tExpr)("Add new"),icon:"PlusOutlined"})}}(0,K._)(e3,"scene",J.collection),e3.define({label:(0,y.tExpr)("Add new"),sort:10});class e6 extends X{getAclActionName(){return"destroy"}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Delete"),icon:"DeleteOutlined"})}}(0,K._)(e6,"scene",J.collection),(0,K._)(e6,"capabilityActionName","destroyMany"),e6.define({label:(0,y.tExpr)("Delete")}),e6.registerFlow({key:"deleteSettings",title:(0,y.tExpr)("Delete settings"),on:"click",steps:{confirm:{use:"confirm",defaultParams:{enable:!0,title:(0,y.tExpr)("Delete record"),content:(0,y.tExpr)("Are you sure you want to delete it?")}},delete:{async handler(e,t){var l;if(!(null==(l=e.blockModel)?void 0:l.resource))return void e.message.error(e.t("No resource selected for deletion"));let o=e.blockModel.resource;0===o.getSelectedRows().length?e.message.warning(e.t("Please select at least one record to delete")):(await o.destroy(e.blockModel.collection.getFilterByTK(o.getSelectedRows())),e.message.success(e.t("Selected records deleted successfully")))}}}});class e9 extends X{getAclActionName(){return"destroy"}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"link",title:(0,y.tExpr)("Delete"),icon:"DeleteOutlined"})}}(0,K._)(e9,"scene",J.record),e9.define({label:(0,y.tExpr)("Delete"),sort:60}),e9.registerFlow({key:"deleteSettings",title:(0,y.tExpr)("Delete settings"),on:"click",steps:{confirm:{use:"confirm",defaultParams:{enable:!0,title:(0,y.tExpr)("Delete record"),content:(0,y.tExpr)("Are you sure you want to delete it?")}},delete:{async handler(e,t){e.resource?e.record?(await e.resource.destroy(e.blockModel.collection.getFilterByTK(e.record)),e.message.success(e.t("Record deleted successfully"))):e.message.error(e.t("No resource or record selected for deletion")):e.message.error(e.t("No resource selected for deletion"))}}}});class e7 extends e4{getAclActionName(){return"update"}constructor(...e){super(...e),(0,K._)(this,"defaultPopupTitle",(0,y.tExpr)("Edit")),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("Edit"),icon:"EditOutlined"})}}(0,K._)(e7,"scene",J.record),e7.define({label:(0,y.tExpr)("Edit"),sort:20});var te=l(28073),tt=l(94384),tl=l(68669);class to extends X{getIgnoreFieldNames(){var e;if(this.map.has(this.props.filterableFieldNames))return this.map.get(this.props.filterableFieldNames);let t=(null==(e=this.context.blockModel.collection)?void 0:e.getFields())||[],l=tr(this.props.filterableFieldNames||[],t.map(e=>e.name));return this.map.set(this.props.filterableFieldNames,l),l}render(){return this.context.isMobileLayout?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(y.MobilePopup,{title:this.context.t("Filter"),visible:this.props.open,onClose:()=>{this.setProps("open",!1)},children:(0,A.jsxs)("div",{style:{padding:this.context.themeToken.paddingMD,backgroundColor:this.context.themeToken.colorBgContainer},children:[(0,A.jsx)(tl.a,{value:this.props.filterValue||this.props.defaultFilterValue,ctx:this.context,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:this,ignoreFieldNames:this.getIgnoreFieldNames()})}),(0,A.jsx)("div",{style:{height:150}})]})}),super.render()]}):(0,A.jsx)(te.A,{open:this.props.open,content:(0,A.jsx)(tl.a,{value:this.props.filterValue||this.props.defaultFilterValue,ctx:this.context,FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:this,ignoreFieldNames:this.getIgnoreFieldNames()})}),trigger:"click",placement:"bottomLeft",onOpenChange:e=>{!1===e&&this.setProps("open",void 0)},children:super.render()})}constructor(...e){super(...e),(0,K._)(this,"map",new WeakMap),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("Filter"),icon:"FilterOutlined",filterValue:{logic:"$and",items:[]}})}}function tn(e,t){var l;let o=(null==e||null==(l=e.getFields)?void 0:l.call(e))||[];return t?o.filter(e=>{if(!(null==e?void 0:e.interface)||(null==e?void 0:e.filterable)===!1)return!1;let l=t.getFieldInterface(e.interface);return!!(null==l?void 0:l.filterable)}):[]}function tr(e,t){return null==t?void 0:t.filter(t=>!e.includes(t))}(0,K._)(to,"scene","collection"),to.define({label:(0,y.tExpr)("Filter"),toggleable:!0,sort:5}),to.registerFlow({key:"filterSettings",title:(0,y.tExpr)("Filter settings"),steps:{position:{handler(e,t){e.model.setProps("position",t.position||"left")}},filterableFieldNames:{title:(0,y.tExpr)("Filterable fields"),uiSchema:{filterableFieldNames:{type:"array","x-decorator":"FormItem","x-component":e=>{var t,l;let{model:o}=(0,y.useFlowSettingsContext)(),n=null==o||null==(l=o.context)||null==(t=l.app)?void 0:t.dataSourceManager,r=null==n?void 0:n.collectionFieldInterfaceManager,i=tn(o.context.blockModel.collection,r).map(e=>({key:e.name,title:e.title}));return(0,A.jsx)(tt.A,{...e,dataSource:i,targetKeys:e.value||[],onChange:t=>{var l;return null==(l=e.onChange)?void 0:l.call(e,t)},render:e=>e.title})},"x-component-props":{showSearch:!0,listStyle:{width:280,height:360}}}},defaultParams(e){var t,l,o;let n=null==e||null==(o=e.model)||null==(l=o.context)||null==(t=l.app)?void 0:t.dataSourceManager,r=null==n?void 0:n.collectionFieldInterfaceManager;return{filterableFieldNames:tn(e.blockModel.collection,r).map(e=>e.name)||[]}},handler(e,t){e.model.setProps("filterableFieldNames",t.filterableFieldNames)}},defaultFilter:{title:(0,y.tExpr)("Default filter conditions"),uiSchema:{defaultFilter:{type:"object","x-decorator":"FormItem","x-component":e=>{let{model:t}=(0,y.useFlowSettingsContext)();return(0,A.jsx)(C.I8,{value:e.value||{},FilterItem:e=>(0,A.jsx)(C.Et,{...e,model:t})})}}},defaultParams:e=>({defaultFilter:e.model.defaultProps.filterValue}),handler(e,t){e.model.setProps("defaultFilterValue",j().cloneDeep(t.defaultFilter)),e.model.setProps("filterValue",j().cloneDeep(t.defaultFilter))}}}}),to.registerFlow({key:"submitSettings",on:"submit",steps:{submit:{handler(e,t){let l=e.blockModel,o=null==l?void 0:l.resource;if(!l||!o)return;let n=(0,w.transformFilter)(e.model.props.filterValue),r=!(0,w.isEmptyFilter)(n);l.setFilterActive(e.model.uid,r),r?(o.addFilterGroup(e.model.uid,n),o.setPage(1)):o.removeFilterGroup(e.model.uid),"manual"!==l.getDataLoadingMode()||r||l.hasActiveFilters()?o.refresh():(o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1),e.model.setProps("open",!1)}}}}),to.registerFlow({key:"resetSettings",title:(0,y.tExpr)("Reset"),on:"reset",steps:{reset:{handler(e,t){let l=e.blockModel,o=null==l?void 0:l.resource;if(!l||!o)return;o.removeFilterGroup(e.model.uid),l.setFilterActive(e.model.uid,!1);let n=l.getDataLoadingMode(),r=e.model.props.defaultFilterValue,i=!(0,w.isEmptyFilter)((0,w.transformFilter)(r));"manual"!==n||i||l.hasActiveFilters()?(i&&(o.addFilterGroup(e.model.uid,(0,w.transformFilter)(r)),l.setFilterActive(e.model.uid,!0),o.setPage(1)),o.refresh()):(o.setData([]),o.setMeta({count:0,hasNext:!1}),"function"==typeof o.setPage&&o.setPage(1),o.loading=!1),e.model.setProps("open",!1),e.model.setProps("filterValue",j().cloneDeep(r))}}}}),to.registerFlow({key:"openSettings",on:"click",steps:{open:{handler(e,t){e.model.setProps("open",!e.model.props.open)}}}});var ti=l(95266);function ta(e,t){var l;let o=(null==(l=e.inputArgs)?void 0:l.preview)||{},n=(null==o?void 0:o.version)??(null==t?void 0:t.version)??"v1";return{code:("string"==typeof(null==o?void 0:o.code)?o.code:void 0)??(null==t?void 0:t.code)??"",version:n}}class ts extends X{constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"default",title:(0,y.tExpr)("JS action"),icon:"JavaScriptOutlined"})}}ts.define({label:(0,y.tExpr)("JS action"),sort:9999,createModelOptions:{use:"JSActionModel"}}),ts.registerFlow({key:"clickSettings",on:"click",title:(0,y.tExpr)("Click settings"),steps:{runJs:{title:(0,y.tExpr)("Write JavaScript"),useRawParams:!0,uiSchema:{code:{type:"string","x-component":ti.BY,"x-component-props":{minHeight:"320px",theme:"light",enableLinter:!0,wrapperStyle:{position:"fixed",inset:8}}}},uiMode:{type:"embed",props:{styles:{body:{transform:"translateX(0)"}}}},defaultParams:e=>({version:"v2",code:`
247
247
  ctx.message.info('Hello JS action.');
248
248
  `}),async handler(e,t){let{code:l,version:o}=ta(e,t),n=(0,y.createSafeNavigator)();await e.runjs(l,{window:(0,y.createSafeWindow)({navigator:n}),document:(0,y.createSafeDocument)(),navigator:n},{version:o})}}}});class td extends X{constructor(...e){super(...e),(0,K._)(this,"defaultProps",{title:(0,y.tExpr)("JS action"),icon:"JavaScriptOutlined"})}}(0,K._)(td,"scene",J.collection),td.define({label:(0,y.tExpr)("JS action"),sort:9999,createModelOptions:{use:"JSCollectionActionModel"}}),td.registerFlow({key:"clickSettings",on:"click",title:(0,y.tExpr)("Click settings"),steps:{runJs:{title:(0,y.tExpr)("Write JavaScript"),useRawParams:!0,uiSchema:{code:{type:"string","x-component":ti.BY,"x-component-props":{minHeight:"320px",theme:"light",enableLinter:!0,wrapperStyle:{position:"fixed",inset:8}}}},uiMode:{type:"embed",props:{styles:{body:{transform:"translateX(0)"}}}},defaultParams:e=>({version:"v2",code:`
249
249
  const rows = ctx.resource?.getSelectedRows?.() || [];
@@ -285,7 +285,7 @@ if (!ctx.record) {
285
285
  flex-shrink: 0;
286
286
  flex: 1;
287
287
  }
288
- `},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{t("Name")}}'}},value:{type:"string","x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}},properties:{add:{type:"void",title:'{{t("Add parameter")}}',"x-component":"ArrayItems.Addition"}}},openInNewWindow:{type:"boolean","x-content":t("Open in new window"),"x-decorator":"FormItem","x-component":"Checkbox","x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}}}},handler(e,t){e.model.setProps({url:t.url,searchParams:t.searchParams,openInNewWindow:t.openInNewWindow})}}}});class tO extends X{setTitle(e){this.setProps({title:e})}setExpandFlag(e){this.expandFlag=e}getTitle(){return this.expandFlag?this.context.t("Collapse all"):this.context.t("Expand all")}getIcon(){return this.expandFlag?"NodeCollapseOutlined":"NodeExpandOutlined"}constructor(...e){super(...e),(0,K._)(this,"expandFlag",void 0),(0,K._)(this,"defaultProps",{type:"default",icon:"DownOutlined"})}}function t$(e){let{idKey:t="id",childrenKey:l="children"}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=[];function n(e){if(Array.isArray(e))for(let r of e){let e=r[l];o.push(r[t]),Array.isArray(e)&&e.length>0&&n(e)}}return n(e),o}(0,K._)(tO,"scene",J.collection);let tB=e=>t$(e);tO.registerFlow({key:"expandCollapseSettingsInit",sort:200,steps:{init:{handler(e,t){e.blockModel.props.defaultExpandAllRows?e.model.setExpandFlag(!0):e.model.setExpandFlag(!1)}}}}),tO.registerFlow({key:"expandCollapseSettings",on:"click",steps:{expandCollapse:{async handler(e,t){var l;if(!(null==(l=e.blockModel)?void 0:l.resource))return;let o=e.blockModel.resource,{treeTable:n}=e.blockModel.props;if(n)if(e.model.expandFlag)e.blockModel.setProps({expandedRowKeys:[]}),e.model.setExpandFlag(!1);else{let t=tB(o.getData());e.blockModel.setProps({expandedRowKeys:t}),e.model.setExpandFlag(!0)}}}}}),tO.define({label:(0,y.escapeT)("Expand/Collapse"),hide(e){var t;return(null==(t=e.collection)?void 0:t.template)!=="tree"||!1===e.model.props.treeTable}});class tq extends e4{getAclActionName(){return"create"}onInit(e){super.onInit(e),this.context.defineProperty("association",{get:()=>this.context.blockModel.dataSource.getAssociation(`${this.context.blockModel.collection.name}.children`)})}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"link",title:(0,y.tExpr)("Add child"),icon:"PlusOutlined"})}}(0,K._)(tq,"capabilityActionName",null),tq.registerFlow({key:"addChildSettingsInit",steps:{addChildInit:{async handler(e,t){e.model.onClick=t=>{e.model.dispatchEvent("click",{event:t,...e.inputArgs,sourceId:e.record.id,filterByTk:null},{debounce:!0})}}}}}),tq.define({label:(0,y.tExpr)("Add child"),hide(e){var t;return(null==(t=e.collection)?void 0:t.template)!=="tree"||!1===e.blockModel.props.treeTable}}),et.registerActionModels({AddChildActionModel:tq});var tL=l(89013),tV=l(93821);class tz extends tV.F4{useHooksBeforeRender(){let[e]=tL.A.useForm();this.context.defineProperty("form",{get:()=>e})}onInit(e){super.onInit(e);let t=(0,y.createCurrentRecordMetaFactory)(this.context,()=>this.collection);this.context.defineProperty("record",{get:()=>{var e,t;return null==(e=(t=this).getCurrentRecord)?void 0:e.call(t)},cache:!1,resolveOnServer:(0,y.createRecordResolveOnServerWithLocal)(()=>this.collection,()=>{var e,t;return null==(e=(t=this).getCurrentRecord)?void 0:e.call(t)}),meta:t}),this.context.defineProperty("filterManager",{once:!0,get:()=>new es(this,null==e?void 0:e.filterManager)}),this.isManualRefresh=!0}createResource(e,t){let l=this.context.createResource(y.SingleRecordResource);return l.isNewRecord=!0,l}renderComponent(){var e;let{colon:t,labelAlign:l,labelWidth:o,labelWrap:n,layout:r}=this.props;return(0,A.jsx)(tV.s2,{model:this,layoutProps:{colon:t,labelAlign:l,labelWidth:o,labelWrap:n,layout:r},children:(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels)?void 0:e.grid,showFlowSettings:!1})})}setInitialAssignedValues(e){var t;let l=null==(t=this.subModels)?void 0:t.grid;Object.entries(e||{}).forEach(e=>{let[t,o]=e;l.addOrEnsureItem(t,o)})}getAssignedValues(){return this.subModels.grid.getAssignedValues()||{}}}tz.define({label:(0,y.tExpr)("Field assignments"),hide:!0,createModelOptions:{use:"AssignFormModel",subModels:{grid:{use:"AssignFormGridModel"}}}});var tK=l(49655);class tU extends eA{renderAddSubModelButton(){return(0,A.jsx)(y.AddSubModelButton,{subModelKey:"items",subModelBaseClasses:[this.context.getModelClassName("FormItemModel"),this.context.getModelClassName("FormAssociationFieldGroupModel"),this.context.getModelClassName("FormCustomItemModel"),this.context.getModelClassName("FormJSFieldItemModel")].filter(Boolean),model:this,keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})})}render(){var e,t;let l=null==(e=this.props)?void 0:e.height,o=null==(t=this.props)?void 0:t.heightModel,n=this.context.themeToken,r=super.render();return"defaultHeight"===o?r:(0,A.jsx)("div",{style:{height:l,overflowY:"auto",marginLeft:`-${n.marginLG}px`,marginRight:`-${n.marginLG}px`,paddingLeft:`${n.marginLG}px`,paddingRight:`${n.marginLG}px`,paddingTop:5},children:r})}constructor(...e){super(...e),(0,K._)(this,"itemFallback",(0,A.jsx)(B.A.Input,{block:!0,size:"small",style:{marginBottom:"0.5rem"}})),(0,K._)(this,"itemSettingsMenuLevel",2),(0,K._)(this,"itemFlowSettings",{showBackground:!0,style:{top:-6,left:-6,right:-6,bottom:-6}}),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-6,height:24},after:{offsetTop:3,height:24}},columnEdge:{left:{offsetLeft:-5,width:24},right:{offsetLeft:8,width:24}},rowGap:{above:{offsetTop:-2,height:24},below:{offsetTop:-12,height:24}}})}}tU.registerFlow({key:"formFieldGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",0),e.model.setProps("colGap",16)}}}});class tW extends tU{renderAddSubModelButton(){var e,t;let l=null==(e=this.context)?void 0:e.collection,o=(null==l||null==(t=l.getFields)?void 0:t.call(l))||[],n="function"==typeof(null==l?void 0:l.getPrimaryKey)?l.getPrimaryKey():void 0,r=null==l?void 0:l.filterTargetKey,i=e=>!!e&&!!(n&&e===n||"string"==typeof r&&e===r||Array.isArray(r)&&r.includes(e)),a=o.filter(e=>!i(null==e?void 0:e.name)).map(e=>{let t=e.name,o=e.title||e.name,n=y.EditableItemModel.getDefaultBindingByField(this.context,e);if(!n)return;let r=n.modelName;return{key:t,label:o,toggleable:e=>{let l=e.getStepParams("fieldSettings","init")||{};return(null==l?void 0:l.fieldPath)===t},useModel:"AssignFormItemModel",createModelOptions:()=>({use:"AssignFormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:null==l?void 0:l.dataSourceKey,collectionName:null==l?void 0:l.name,fieldPath:t}}},subModels:{field:{use:r,stepParams:{fieldSettings:{init:{dataSourceKey:null==l?void 0:l.dataSourceKey,collectionName:null==l?void 0:l.name,fieldPath:t}}}}}})}}).filter(Boolean);return(0,A.jsx)(y.AddSubModelButton,{subModelKey:"items",model:this,items:a,keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})})}addOrEnsureItem(e,t){var l,o,n;let r=null==(l=this.context)?void 0:l.collection,i=((null==(o=this.subModels)?void 0:o.items)||[]).find(t=>{try{let l="function"==typeof(null==t?void 0:t.getStepParams)?t.getStepParams("fieldSettings","init"):null;return(null==l?void 0:l.fieldPath)===e}catch(e){return!1}});if(i){"function"==typeof(null==i?void 0:i.setStepParams)&&i.setStepParams("fieldSettings","assignValue",{value:t}),i.assignValue=t;return}let a=((null==r||null==(n=r.getFields)?void 0:n.call(r))||[]).find(t=>t.name===e),s=y.EditableItemModel.getDefaultBindingByField(this.context,a);if(!s)return;let d=s.modelName;this.flowEngine.createModel({use:"AssignFormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:null==r?void 0:r.dataSourceKey,collectionName:null==r?void 0:r.name,fieldPath:e},assignValue:{value:t}}},subModels:{field:{use:d,stepParams:{fieldSettings:{init:{dataSourceKey:null==r?void 0:r.dataSourceKey,collectionName:null==r?void 0:r.name,fieldPath:e}}}}},parentId:this.uid,subKey:"items"}).assignValue=t}getAssignedValues(){var e;let t=(null==(e=this.subModels)?void 0:e.items)||[],l={};for(let e of t){let t="function"==typeof e.getAssignedEntry?e.getAssignedEntry():null;t&&Array.isArray(t)&&(l[t[0]]=t[1])}return l}}tW.define({label:(0,y.tExpr)("Assign grid")});var tH=l(95243),tY=l(44329);function tG(e){return"string"==typeof e?e:"function"==typeof e&&e.name?e.name:void 0}function tJ(e){var t,l;let o=null==e||null==(l=e.stepParams)||null==(t=l.fieldBinding)?void 0:t.use;return"string"==typeof o?o:void 0}async function tX(e){var t,l,o;let{parentModel:n,targetUse:r,defaultProps:i,pattern:a,fieldSettingsInit:s}=e,d=n.subModels.field,u=null==d?void 0:d.uid,c=null==d||null==(l=d.serialize)||null==(t=l.call(d))?void 0:t.subModels;for(let e in c)!1===c[e].delegateToParent&&delete c[e];let p=tG(tJ(d)||(null==d?void 0:d.use))===r&&(null==d?void 0:d.stepParams)||{},h=s??(null==(o=n.getFieldSettingsInitParams)?void 0:o.call(n)),{fieldBinding:m,...f}=p,g={...f,fieldSettings:{...f.fieldSettings||{},init:h}},v=n.flowEngine;u&&(null==d||d.invalidateFlowCache("beforeRender",!0),v.removeModelWithSubModels(u));let y=n.setSubModel("field",{uid:u,use:r,props:{...i||{},...a?{pattern:a}:{}},stepParams:g,subModels:c});await y.dispatchEvent("beforeRender",void 0,{useCache:!1}),await n.save()}var tQ=l(13940);function tZ(e,t,l){let o=(0,P.castArray)(l).filter(e=>"string"==typeof e),n=t.split(".");if(null==o?void 0:o.length){let t=[],l=0,r=0;for(;l<n.length;){let e=n[l];if(t.push(e),r<o.length){let[l,n]=o[r].split(":");l===e&&(t.push(Number(n)),r++)}l++}return(0,P.get)(e,t)}return(0,P.get)(e,n)}function t0(e){let{record:t,currentObject:l,fieldPath:o,prefixFieldPath:n,idx:r}=e,i=tZ(t,o,r);if(void 0!==i||null==l)return i;if(n&&o===n)return l;let a=n&&o.startsWith(`${n}.`)?o.slice(n.length+1):o;return a?(0,P.get)(l,a):l}function t1(e,t){return!(0,tQ.E4)(e)||Array.isArray(t)?t:t&&"object"==typeof t&&Array.isArray(t.rows)?t.rows:null==t?[]:[t]}class t2 extends y.DisplayItemModel{static defineChildren(e){let t=e.collection;return t.getFields().map(l=>{let o=this.getDefaultBindingByField(e,l,{fallbackToTargetTitleField:!0});if(!o)return null;let n=o.modelName,r=e.prefixFieldPath?`${e.prefixFieldPath}.${l.name}`:l.name;return{key:r,label:l.title,refreshTargets:["DetailsCustomItemModel/DetailsJSFieldItemModel"],toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===r},useModel:"DetailsItemModel",createModelOptions:()=>({use:"DetailsItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:t.dataSourceKey,collectionName:e.model.context.blockModel.collection.name,fieldPath:r}}},subModels:{field:{use:n,props:"function"==typeof o.defaultProps?o.defaultProps(e,l):o.defaultProps}}})}}).filter(Boolean)}onInit(e){super.onInit(e),this.context.defineProperty("actionName",{get:()=>"view",cache:!1})}renderItem(){let e=this.subModels.field,t=this.context.fieldIndex,l=this.context.record,o=this.context.currentObject,n=this.context.item,r=this.context.getPropertyOptions("item"),i=this.context.prefixFieldPath,a=null!=t?(()=>{let i=e.createFork({},`${t}`);i.context.defineProperty("fieldIndex",{get:()=>t}),i.context.defineProperty("record",{get:()=>l,cache:!1}),i.context.defineProperty("currentObject",{get:()=>o,cache:!1});let{value:a,...s}=r||{};return i.context.defineProperty("item",{...s,get:()=>n,cache:!1}),this.context.pattern&&i.context.defineProperty("pattern",{get:()=>this.context.pattern}),i})():e,s=this.context.pattern?{...this.context.blockModel.props,...this.props,pattern:this.context.pattern,disabled:"readPretty"===this.context.pattern}:{...this.context.blockModel.props,...this.props},d=t1(this.collectionField,t0({record:l,currentObject:o,fieldPath:this.fieldPath,prefixFieldPath:i,idx:t}));return(0,A.jsx)(y.FormItem,{...s,value:d,children:(0,A.jsx)(y.FieldModelRenderer,{model:a})})}}t2.define({label:(0,y.tExpr)("Display fields"),sort:100}),t2.registerFlow({key:"detailItemSettings",sort:300,title:(0,y.tExpr)("Detail item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({title:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>{var t;return{title:null==(t=e.collectionField)?void 0:t.title}},handler(e,t){var l;let o={ns:"lm-flow-engine",compareWith:null==(l=e.collectionField)?void 0:l.title};e.model.setProps({label:e.t(t.title,o)})}},aclCheck:{use:"aclCheck"},init:{async handler(e){let{collectionField:t}=e.model;t&&e.model.setProps(t.getComponentProps())}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},model:{title:(0,y.tExpr)("Field component"),use:"displayFieldComponent"},fieldNames:{use:"titleField",title:(0,y.tExpr)("Title field"),beforeParamsSave:async(e,t,l)=>{if(!e.collectionField||!e.collectionField.isAssociationField())return null;if(t.label!==l.label){var o,n;e.model.setProps({titleField:t.label,...null==(n=e.collectionField.targetCollection)||null==(o=n.getField(t.label))?void 0:o.getComponentProps()});let l=e.collectionField.targetCollection.getField(t.label),r=y.DisplayItemModel.getDefaultBindingByField(e,l),i=r.modelName;await tX({parentModel:e.model,targetUse:i,defaultProps:"function"==typeof(null==r?void 0:r.defaultProps)?r.defaultProps(e,e.collectionField):null==r?void 0:r.defaultProps,pattern:e.model.getProps().pattern})}},async handler(e,t){var l,o;if(!e.collectionField||e.model.subModels.field.disableTitleField)return;e.model.setProps({titleField:t.label,...null==(o=e.collectionField.targetCollection)||null==(l=o.getField(t.label))?void 0:l.getComponentProps()});let n=e.collectionField.targetCollection;if(n){let l=n.getField(t.label),o=y.DisplayItemModel.getDefaultBindingByField(e,l).modelName;o!==e.model.subModels.field.use&&e.model.setStepParams(e.flowKey,"model",{use:o})}},hideInSettings:async e=>!e.collectionField||!e.collectionField.isAssociationField()||e.model.subModels.field.disableTitleField}}}),t2.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh"}}});var t4=l(71616);function t5(e){if(!e)return!1;let t=null==e?void 0:e.type;return"belongsToMany"===t||"hasMany"===t||"belongsToArray"===t}function t8(e,t){var l;let o=!!(null==e||null==(l=e.isAssociationField)?void 0:l.call(e)),n=t5(e);return o&&!n&&Array.isArray(t)?t.length?t[0]:void 0:t}function t3(e,t){if(!(null==t?void 0:t.length))return e;let[l,o]=String(t[t.length-1]).split(":"),n=Number(o);if(!l||!Number.isFinite(n))return e;let r=0;for(let e of t){let[t]=String(e).split(":");t===l&&(r+=1)}let i=-1,a=0;for(let t=0;t<e.length;t++)if(String(e[t])===l&&(a+=1)===r){i=t;break}if(-1===i){for(let t=e.length-1;t>=0;t--)if(String(e[t])===l){i=t;break}}return -1===i?e:[n,...e.slice(i+1)]}let t6=["o2o","oho","obo","o2m","attachment","expression","point","lineString","circle","polygon","sequence","formula"];class t9 extends y.EditableItemModel{static defineChildren(e){let t=e.collection;return t.getFields().map(l=>{let o=this.getDefaultBindingByField(e,l);if(!o)return;let n=o.modelName,r=e.prefixFieldPath?`${e.prefixFieldPath}.${l.name}`:l.name;return{key:r,label:l.title,refreshTargets:["FormItemModel/FormJSFieldItemModel"],toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===r},useModel:"FormItemModel",createModelOptions:()=>({use:"FormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:t.dataSourceKey,collectionName:e.model.context.blockModel.collection.name,fieldPath:r}}},subModels:{field:{use:n,props:"function"==typeof o.defaultProps?o.defaultProps(e,l):o.defaultProps}}})}}).filter(Boolean)}onInit(e){super.onInit(e),this.emitter.on("onSubModelAdded",e=>{if(this.collectionField){let t=this.collectionField.getComponentProps();e.setProps(t),this.setProps({...j().pick(t,"rules")||{}})}})}renderItem(){var e,t;let l=this.subModels.field,o=this.context.fieldIndex,n=this.context.fieldKey,r=(null==(e=this.parent)?void 0:e.context.fieldPathArray)||[],i=null!=o?(()=>{let e=l.createFork({},`${n}`);e.context.defineProperty("fieldIndex",{get:()=>o}),e.context.defineProperty("fieldKey",{get:()=>n}),this.context.currentObject&&e.context.defineProperty("currentObject",{get:()=>this.context.currentObject});let t=this.context.getPropertyOptions("item");if(this.context.item){let{value:l,...o}=t||{};e.context.defineProperty("item",{...o,get:()=>this.context.item,cache:!1})}return this.context.pattern&&e.context.defineProperty("pattern",{get:()=>this.context.pattern}),e})():l,{initialValue:a,...s}=this.context.pattern?{...this.props,pattern:this.context.pattern}:this.props,d=t3(this.props.name,o);this.context.defineProperty("fieldPathArray",{value:[...r,...j().castArray(d)]});let u=(null==(t=this.context.item)?void 0:t.value)||this.context.record;return(0,A.jsx)(y.FormItem,{...s,name:d,validateFirst:!0,disabled:this.props.disabled||!j().isEmpty(u)&&!u.__is_new__&&this.props.aclDisabled||!j().isEmpty(u)&&u.__is_new__&&this.props.aclCreateDisabled,children:(0,A.jsx)(y.FieldModelRenderer,{model:i,name:d})})}}t9.define({label:(0,y.tExpr)("Display fields"),sort:100}),t9.registerFlow({key:"editItemSettings",sort:300,title:(0,y.tExpr)("Form item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({label:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>{var t;return{label:null==(t=e.collectionField)?void 0:t.title}},handler(e,t){var l;let o={ns:"lm-flow-engine",compareWith:null==(l=e.collectionField)?void 0:l.title};e.model.setProps({label:e.t(t.label,o)})}},aclCheck:{use:"aclCheck",async handler(e,t){var l,o,n,r,i,a,s,d,u,c,p,h,m;if(!e.collectionField||!e.blockModel)return;let f=e.blockModel.context.actionName,g=await e.aclCheck({dataSourceKey:null==(l=e.dataSource)?void 0:l.key,resourceName:null==(o=e.collectionField)?void 0:o.collectionName,fields:[null==(n=e.collectionField)?void 0:n.name],actionName:f});if("update"===f){let t=await e.aclCheck({dataSourceKey:null==(r=e.dataSource)?void 0:r.key,resourceName:null==(i=e.collectionField)?void 0:i.collectionName,fields:[e.collectionField.name],actionName:"view"});e.prefixFieldPath&&e.item&&(await e.aclCheck({dataSourceKey:null==(s=e.dataSource)?void 0:s.key,resourceName:null==(d=e.collectionField)?void 0:d.collectionName,fields:[e.collectionField.name],actionName:"create"})||e.model.setProps({aclCreateDisabled:!0}));let l=(null==(a=e.item)?void 0:a.__is_new__)??!1;t||l||(e.model.hidden=!0,e.model.forbidden={actionName:"view"},e.exitAll()),g||e.model.setProps({aclDisabled:!0})}else if("create"===f){let t=await e.aclCheck({dataSourceKey:null==(u=e.dataSource)?void 0:u.key,resourceName:null==(c=e.collectionField)?void 0:c.collectionName,actionName:"update"}),l=await e.aclCheck({dataSourceKey:null==(p=e.dataSource)?void 0:p.key,resourceName:null==(h=e.collectionField)?void 0:h.collectionName,fields:[e.collectionField.name],actionName:"update"}),o=(null==(m=e.item)?void 0:m.__is_stored__)??!1;g||o||(e.model.hidden=!0,e.model.forbidden={actionName:f},e.exitAll()),t&&l||e.model.setProps({aclDisabled:!0})}}},init:{async handler(e){let t=e.model.fieldPath,l=t.includes(".")?t.split("."):t;e.model.setProps({name:l})}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem","x-component-props":{autoSize:!0}}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},initialValue:{title:(0,y.tExpr)("Default value"),disabledInSettings:!0,disabledReasonInSettings:e=>`${e.t("This setting has been moved to")}: ${e.t("Form block settings")} > ${e.t("Field values")}`,uiSchema:e=>{var t,l,o,n;if(e.model.parent.parent instanceof t4.EditFormModel||(null==(l=e.model.subModels)||null==(t=l.field)?void 0:t.updateAssociation))return;let r=null==(o=e.model.collectionField)?void 0:o.interface;if(null==t6||null==(n=t6.includes)||!n.call(t6,r))return{defaultValue:{"x-component":"DefaultValue","x-decorator":"FormItem"}}},defaultParams:e=>{let t=e.model.collectionField;if("nanoid"===t.interface&&!1!==t.options.autoFill){let{size:e,customAlphabet:l}=t.options||{size:21};return{defaultValue:(0,tY.d_)(l,e)()}}return{defaultValue:t.defaultValue}},handler(e,t){var l,o;let n=null==(l=e.model.collectionField)?void 0:l.interface;if(null==t6||null==(o=t6.includes)?void 0:o.call(t6,n))return;let r=t8(e.model.collectionField,t.defaultValue);e.model.setProps({initialValue:r})}},validation:{title:(0,y.tExpr)("Validation"),use:"validation"},required:{title:(0,y.tExpr)("Required"),use:"required"},model:{use:"fieldComponent",title:(0,y.tExpr)("Field component")},pattern:{use:"pattern"},titleField:{use:"titleField",hideInSettings:e=>!(e.collectionField&&e.collectionField.isAssociationField()&&e.collectionField.isAssociationField()&&"readPretty"===e.model.getProps().pattern),defaultParams:e=>({titleField:e.model.props.titleField||e.model.context.collectionField.targetCollectionTitleFieldName}),beforeParamsSave:async(e,t,l)=>{if(!(e.collectionField.isAssociationField()&&"readPretty"===e.model.getProps().pattern))return null;let o=t.titleField||t.label;if(o!==l.titleField){let t=e.collectionField.targetCollection,l=t.getField(o),n=t2.getDefaultBindingByField(e,l);if(n.modelName!==e.model.subModels.field.use){let l=e.model.subModels.field.uid;await e.engine.destroyModel(l);let r=e.model.setSubModel("field",{use:n.modelName,stepParams:{fieldSettings:{init:{dataSourceKey:e.model.collectionField.dataSourceKey,collectionName:t.name,fieldPath:o}}}});await r.save()}e.model.setProps(e.collectionField.targetCollection.getField(o).getComponentProps())}},async handler(e,t){"readPretty"===e.model.props.pattern?e.model.setProps({titleField:null==t?void 0:t.label}):e.model.setProps({titleField:t.titleField})}}}}),t9.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh",defaultParams:{strategy:"formItem"}}}});var t7=l(85352),le=l(90199);class lt extends t9{onInit(e){var t,l,o,n,r,i,a;let s=null==(t=this.getStepParams("fieldSettings","assignValue"))?void 0:t.value;void 0!==s&&(this.assignValue=s),this.context.defineProperty("collectionField",{get:()=>{var e,t;let l=this.getStepParams("fieldSettings","init")||{},o=`${null==l?void 0:l.dataSourceKey}.${null==l?void 0:l.collectionName}.${null==l?void 0:l.fieldPath}`,n=null==(e=this.context)?void 0:e.dataSourceManager;return null==n||null==(t=n.getCollectionField)?void 0:t.call(n,o)}});let d=this.context,u=null==d?void 0:d.collection,c=this.fieldInit;if(!(null==(l=this.subModels)?void 0:l.field)&&(null==u?void 0:u.getFields)){let e=(u.getFields()||[]).find(e=>(null==e?void 0:e.name)===(null==c?void 0:c.fieldPath));null==u||null==(n=u.getField)||n.call(u,null==c?void 0:c.fieldPath);let t=y.EditableItemModel.getDefaultBindingByField(d,e);if(!t)return;let l=t.modelName;null==d||null==(i=d.engine)||null==(r=i.createModel)||r.call(i,{use:l,stepParams:{fieldSettings:{init:c}},parentId:this.uid,subKey:"field"})}let p=null==(o=this.context)?void 0:o.collection,h=this.fieldPath;if(h){let e=null==p||null==(a=p.getField)?void 0:a.call(p,h),t=(null==e?void 0:e.title)||h,l=h.includes(".")?h.split("."):[h];this.setProps({label:t,name:l})}}get fieldInit(){return this.getStepParams("fieldSettings","init")||{}}get fieldPath(){var e;return null==(e=this.fieldInit)?void 0:e.fieldPath}getAssignedEntry(){let e=this.fieldPath;return e?[e,this.assignValue]:null}render(){var e;let t=this.context,l=t.collection,o=this.fieldInit,n=(null==(e=this.props)?void 0:e.name)||(this.fieldPath?[this.fieldPath]:void 0),r=this.fieldPath,i=()=>{var e,i,a;let[s,d]=k.useState(null);k.useEffect(()=>{var e,n,i,a,s,u,c,p,h,m,f,g,v,b,x,w,S,M,F,A,k;if(!r)return;let C=((null==l||null==(e=l.getFields)?void 0:e.call(l))||[]).find(e=>(null==e?void 0:e.name)===r);l.getField(r);let P=y.EditableItemModel.getDefaultBindingByField(t,C);if(!P)return;let j=P.modelName,I=null==t||null==(i=t.engine)||null==(n=i.createModel)?void 0:n.call(i,{use:"VariableFieldFormModel",subModels:{fields:[{use:j,stepParams:{fieldSettings:{init:o}}}]}});if(!I)return;null==(s=I.context)||null==(a=s.defineProperty)||a.call(s,"collection",{value:l});let E=null==t?void 0:t.dataSource;E&&(null==(c=I.context)||null==(u=c.defineProperty)||u.call(c,"dataSource",{value:E}));let _=null==l||null==(p=l.getField)?void 0:p.call(l,null==o?void 0:o.fieldPath);_&&(null==(m=I.context)||null==(h=m.defineProperty)||h.call(m,"collectionField",{value:_}));let R=null==t?void 0:t.blockModel;R&&(null==(g=I.context)||null==(f=g.defineProperty)||f.call(g,"blockModel",{value:R}));let T=t.form;T&&(null==(A=I.context)||null==(F=A.defineProperty)||F.call(A,"form",{value:T})),I.context&&Object.defineProperty(I.context,"resource",{configurable:!0,enumerable:!0,get:()=>null==R?void 0:R.resource});let D=null==I||null==(b=I.subModels)||null==(v=b.fields)?void 0:v[0],N=null==l||null==(x=l.getField)?void 0:x.call(l,null==o?void 0:o.fieldPath),O=null==N?void 0:N.type,$=null==N?void 0:N.interface,B="belongsToMany"===O||"hasMany"===O||"belongsToArray"===O||"m2m"===$||"o2m"===$||"mbm"===$;if(null==D||null==(w=D.setProps)||w.call(D,{disabled:!1,readPretty:!1,pattern:"editable",updateAssociation:!1,multiple:B}),null==D||null==(S=D.dispatchEvent)||S.call(D,"beforeRender",void 0,{sequential:!0,useCache:!0}),(0,t7.NI)(D,N),!(null==D||null==(M=D.props)?void 0:M.fieldNames)&&(null==N?void 0:N.targetCollection)){let e=N.targetCollection,t=(null==N?void 0:N.targetKey)||(null==e?void 0:e.filterTargetKey)||"id";null==D||null==(k=D.setProps)||k.call(D,{fieldNames:{label:null==e?void 0:e.titleField,value:t}})}return d(I),()=>{var e,t,l,o;null==I||null==(l=I.subModels)||null==(t=l.fields)||null==(e=t.forEach)||e.call(t,e=>{var t;return null==e||null==(t=e.remove)?void 0:t.call(e)}),null==I||null==(o=I.remove)||o.call(I)}},[]);let u=e=>(k.useEffect(()=>{var t,l,o,n;if(!s)return;null==(t=s.setProps)||t.call(s,{...e});let r=null==s||null==(o=s.subModels)||null==(l=o.fields)?void 0:l[0];r&&(null==(n=r.setProps)||n.call(r,{value:null==e?void 0:e.value,onChange:function(){for(var t,l=arguments.length,o=Array(l),n=0;n<l;n++)o[n]=arguments[n];let r=o&&o.length?o[0]:void 0;null==e||null==(t=e.onChange)||t.call(e,r)}}))},[e]),s?(0,A.jsx)("div",{style:{width:"100%"},children:(0,A.jsx)(y.FlowModelRenderer,{model:s,showFlowSettings:!1})}):null),c=()=>(0,A.jsx)(ey.A,{placeholder:"<Null>",readOnly:!0,style:{width:"100%"}}),p=e=>(0,A.jsx)(le.h,{t:this.context.t,value:null==e?void 0:e.value,onChange:null==e?void 0:e.onChange,containerStyle:{width:"100%"}}),h={renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?u:"null"===l?c:"runjs"===l?p:void 0},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:"runjs"===l?{code:"",version:"v2"}:void 0},resolvePathFromValue:e=>null===e?["null"]:(0,y.isRunJSValue)(e)?["runjs"]:(0,y.isVariableExpression)(e)?(0,y.parseValueToPath)(e):["constant"]},m=async()=>{var e;let t=null==(e=this.context)?void 0:e.getPropertyMetaTree,l="function"==typeof t?await t():[];return[{title:(0,y.tExpr)("Constant"),name:"constant",type:"string",paths:["constant"],render:u},{title:(0,y.tExpr)("Null"),name:"null",type:"object",paths:["null"],render:c},{title:(0,y.tExpr)("RunJS"),name:"runjs",type:"object",paths:["runjs"],render:p},...l]},f=(null==(e=this.props)?void 0:e.label)??this.fieldPath??"",g=null==l||null==(i=l.getField)?void 0:i.call(l,this.fieldPath);return f=(null==(a=this.props)?void 0:a.label)??(null==g?void 0:g.title)??f,(0,A.jsx)(y.FormItem,{...this.props,label:f,name:n,initialValue:this.assignValue,valuePropName:"__assign_value__",trigger:"__assign_trigger__",validateTrigger:"__assign_trigger__",children:k.createElement(e=>{let t=null==e?void 0:e.__assign_value__,l=void 0===t?this.assignValue:t;return(0,A.jsx)(y.VariableInput,{value:l,onChange:t=>{var l;this.assignValue=t,null==e||null==(l=e.__assign_trigger__)||l.call(e,t)},metaTree:m,converters:h,clearValue:""})})})};return(0,A.jsx)(i,{})}constructor(e){super(e),(0,K._)(this,"assignValue",void 0),(0,tH.define)(this,{assignValue:tH.observable})}}lt.define({label:(0,y.tExpr)("Assign field")}),lt.registerFlow({key:"editItemSettings",sort:300,title:(0,y.tExpr)("Form item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({label:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>({label:e.model.collectionField.title}),handler(e,t){var l;t.label&&t.label===(null==(l=e.model.collectionField)?void 0:l.title)?e.model.setProps({label:t.label}):e.model.setProps({label:e.t(t.label,{ns:"lm-flow-engine"})})}},init:{async handler(e){let t=e.model.collectionField;t&&e.model.setProps(t.getComponentProps());let l=e.model.fieldPath,o=l.includes(".")?l.split("."):l;e.model.setProps({name:o})}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},validation:{title:(0,y.tExpr)("Validation"),use:"validation"},required:{title:(0,y.tExpr)("Required"),use:"required"}}});class ll extends eo{}(0,K._)(ll,"itemModelName","DetailsItemModel"),ll.define({label:'{{t("Display association fields")}}'});var lo=l(58929);let ln=e=>{if(!e)return 0;let t=e.getBoundingClientRect(),l=window.getComputedStyle(e),o=parseFloat(l.marginTop)||0,n=parseFloat(l.marginBottom)||0;return t.height+o+n},lr=e=>{let{heightMode:t,containerRef:l,actionsRef:o,paginationRef:n,deps:r=[]}=e,[i,a]=(0,k.useState)(),s=(0,k.useCallback)(()=>{if("specifyValue"!==t&&"fullHeight"!==t)return void a(e=>void 0===e?e:void 0);let e=l.current;if(!e)return;let r=e.getBoundingClientRect().height;if(!r)return;let i=Math.max(0,Math.floor(r-ln(o.current)-ln(n.current)));a(e=>e===i?e:i)},[t,l,o,n]);return(0,k.useLayoutEffect)(()=>{s()},[s,...r]),(0,k.useEffect)(()=>{if(!l.current||"u"<typeof ResizeObserver)return;let e=l.current,t=o.current,r=n.current,i=new ResizeObserver(()=>s());return i.observe(e),t&&i.observe(t),r&&i.observe(r),()=>i.disconnect()},[s,l,o,n,...r]),i};class li extends eT.t{createResource(e,t){var l,o;if((null==(l=this.association)?void 0:l.type)==="hasOne"||(null==(o=this.association)?void 0:o.type)==="belongsTo"||Object.keys(t).includes("filterByTk")){let e=this.context.createResource(y.SingleRecordResource);return e.isNewRecord=!1,e}let n=this.context.createResource(y.MultiRecordResource);return n.setPageSize(1),n}onInit(e){var t,l;super.onInit(e),this.hadSingleRecordData=(null==(l=this.resource)||null==(t=l.hasData)?void 0:t.call(l))??!1,this.hasMultiRefreshDispatched=!1;let o=(0,y.createCurrentRecordMetaFactory)(this.context,()=>this.collection);this.context.defineProperty("record",{get:()=>this.getCurrentRecord(),cache:!1,resolveOnServer:(0,y.createRecordResolveOnServerWithLocal)(()=>this.collection,()=>this.getCurrentRecord()),meta:o}),this.resource.on("refresh",()=>{var e,t;if(this.isMultiRecordResource()){this.hasMultiRefreshDispatched=!0,(0,tS.Xi)(this,"paginationChange");return}let l=this.hadSingleRecordData;this.hadSingleRecordData=(null==(t=this.resource)||null==(e=t.hasData)?void 0:e.call(t))??!1,l&&(0,tS.Xi)(this,"paginationChange")})}isMultiRecordResource(){return this.resource instanceof y.MultiRecordResource}hasDispatchedMultiRefresh(){return this.hasMultiRefreshDispatched}getCurrentRecord(){let e=this.resource.getData();return Array.isArray(e)?e[0]:e}hasAvailableData(){return this.resource.hasData()}async refresh(){await this.resource.refresh()}renderPagination(){if(!this.resource.loading&&!this.hasAvailableData()){var e,t;return(0,A.jsx)("div",{style:{textAlign:"center",color:null==(t=this.context)||null==(e=t.themeToken)?void 0:e.colorTextDescription},children:this.translate("No available data currently")})}let l=this.resource;return!this.isMultiRecordResource()||!l.getPage()||1>=this.resource.getMeta("count")?null:(0,A.jsx)("div",{style:{textAlign:"center"},children:(0,A.jsx)(lo.A,{simple:!0,pageSize:1,showSizeChanger:!1,defaultCurrent:l.getPage(),total:l.getTotalPage(),onChange:this.handlePageChange,style:{display:"inline-block"}})})}renderConfigureActions(){return(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"actions",subModelBaseClass:this.getModelClassName("RecordActionGroupModel"),afterSubModelInit:async e=>{e.setStepParams("buttonSettings","general",{type:"default"})},children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Actions")})},"details-actions-add")}renderComponent(){let{colon:e,labelAlign:t,labelWidth:l,labelWrap:o,layout:n}=this.props,r=!!this.context.flowSettingsEnabled,i=!r&&!this.hasAvailableData(),{heightMode:a,height:s}=this.decoratorProps;return(0,A.jsx)(la,{model:this,gridModel:this.subModels.grid,isConfigMode:r,heightMode:a,height:s,layoutProps:{colon:e,labelAlign:t,labelWidth:l,labelWrap:o,layout:n},actions:(0,A.jsx)(y.DndProvider,{children:(0,A.jsx)("div",{style:i?{pointerEvents:"none",opacity:.45}:void 0,children:(0,A.jsxs)(eu.A,{wrap:!0,children:[this.mapSubModels("actions",e=>{if(!e.hidden||r)return(0,A.jsx)(y.Droppable,{model:e,children:(0,A.jsx)(y.FlowModelRenderer,{model:e,showFlowSettings:{showBackground:!1,showBorder:!1,toolbarPosition:"above"},extraToolbarItems:[{key:"drag-handler",component:y.DragHandler,sort:1}]})},e.uid)}),this.renderConfigureActions()]})})})})}constructor(...e){super(...e),(0,K._)(this,"hadSingleRecordData",!1),(0,K._)(this,"hasMultiRefreshDispatched",!1),(0,K._)(this,"_defaultCustomModelClasses",{RecordActionGroupModel:"RecordActionGroupModel",DetailsItemModel:"DetailsItemModel",DetailsAssociationFieldGroupModel:"DetailsAssociationFieldGroupModel",DetailsCustomItemModel:"DetailsCustomItemModel"}),(0,K._)(this,"customModelClasses",{}),(0,K._)(this,"handlePageChange",async e=>{if(this.resource instanceof y.MultiRecordResource){let t=this.resource;t.setPage(e),t.loading=!0,await this.refresh()}})}}(0,K._)(li,"scene",e_.P.oam);let la=e=>{let{model:t,gridModel:l,isConfigMode:o,heightMode:n,height:r,layoutProps:i,actions:a}=e,s=(0,k.useRef)(null),d=(0,k.useRef)(null),u=(0,k.useRef)(null),c="specifyValue"===n||"fullHeight"===n,p=lr({heightMode:n,containerRef:s,actionsRef:d,paginationRef:u,deps:[r]});(0,k.useEffect)(()=>{var e,t;if(!l)return;let o=c?p:void 0;((null==(e=l.props)?void 0:e.height)!==o||(null==(t=l.props)?void 0:t.heightMode)!==n)&&l.setProps({height:o,heightMode:n})},[l,p,c,n]);let h=c?{display:"flex",flexDirection:"column",minHeight:0,height:"100%"}:void 0,m=c?{display:"flex",flexDirection:"column",minHeight:0,flex:1}:void 0;return(0,A.jsx)(tV.s2,{model:t,layoutProps:i,style:h,children:(0,A.jsxs)("div",{ref:s,style:m,children:[(0,A.jsx)("div",{ref:d,style:{textAlign:"right",lineHeight:"0px",paddingBottom:o&&t.context.themeToken.padding},children:a}),(0,A.jsx)(y.FlowModelRenderer,{model:l,showFlowSettings:!1},`${(null==l?void 0:l.uid)||"details-grid"}:${o?"design":"runtime"}`),(0,A.jsx)("div",{ref:u,children:t.renderPagination()})]})})};li.registerFlow({key:"detailsSettings",title:(0,y.tExpr)("Details settings"),sort:150,steps:{refresh:{async handler(e){if(!e.resource)throw Error("Resource is not initialized");await e.model.applySubModelsBeforeRenderFlows("grid")}},layout:{use:"layout",title:(0,y.tExpr)("Layout")},dataScope:{use:"dataScope"},defaultSorting:{use:"sortingRule",title:(0,y.tExpr)("Default sorting")},linkageRules:{use:"detailsFieldLinkageRules"}}}),li.registerFlow({key:"paginationChange",on:"paginationChange",steps:{blockLinkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"blockLinkageRules",flowKey:"cardSettings",stepKey:"linkageRules"}},fieldslinkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"detailsFieldLinkageRules",flowKey:"detailsSettings",stepKey:"linkageRules"}}}}),li.registerFlow({key:"initialPaginationChangeRefresh",sort:10001,steps:{refreshPaginationRelatedStates:{async handler(e){if(e.model.hidden||!e.model.isMultiRecordResource()||e.model.hasDispatchedMultiRefresh())return;let t=e.model.resource;if(!t)return;let l="manual"===(t.dataLoadingMode??t.loadingMode),o="function"==typeof t.hasActiveFilters&&t.hasActiveFilters();l&&!o&&await (0,tS.Xi)(e.model,"paginationChange")}}}}),li.define({label:(0,y.tExpr)("Details"),searchable:!0,searchPlaceholder:(0,y.tExpr)("Search"),createModelOptions:{use:"DetailsBlockModel",subModels:{grid:{use:"DetailsGridModel"}}},sort:350});class ls extends y.FlowModel{static defineChildren(e){let t=e.engine.filterModelClassByParent("CommonItemModel"),l=e.engine.filterModelClassByParent("DetailsCustomItemModel"),o=t=>Array.from(t.entries()).map(t=>{var l,o,n,r,i;let[a,s]=t,d="function"==typeof s.defineChildren||!!(null==(l=s.meta)?void 0:l.children),u={key:a,label:e.t(s.meta.label),sort:s.meta.sort??999,searchable:!!(null==(o=s.meta)?void 0:o.searchable),searchPlaceholder:null==(n=s.meta)?void 0:n.searchPlaceholder,hide:null==(r=s.meta)?void 0:r.hide};return d?u.children=e=>{var t;return"function"==typeof s.defineChildren?s.defineChildren(e):(null==(t=s.meta)?void 0:t.children)||[]}:u.createModelOptions=(null==(i=s.meta)?void 0:i.createModelOptions)||{use:a},u});return j().sortBy([...o(t),...o(l)],"sort")}}(0,K._)(ls,"renderMode",y.ModelRenderMode.RenderFunction),ls.define({hide:!0,label:(0,y.tExpr)("Others")});class ld extends eA{renderAddSubModelButton(){return this.context.flowSettingsEnabled?(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"items",subModelBaseClasses:[this.context.getModelClassName("DetailsItemModel"),this.context.getModelClassName("DetailsAssociationFieldGroupModel"),this.context.getModelClassName("DetailsCustomItemModel")].filter(Boolean),keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})}):null}render(){var e,t;let l=null==(e=this.props)?void 0:e.height,o=null==(t=this.props)?void 0:t.heightMode,n=this.context.themeToken,r=super.render();return"defaultHeight"===o?r:(0,A.jsx)("div",{style:{height:l,overflowY:"auto",marginLeft:`-${n.marginLG}px`,marginRight:`-${n.marginLG}px`,paddingLeft:`${n.marginLG}px`,paddingRight:`${n.marginLG}px`},children:r})}constructor(...e){super(...e),(0,K._)(this,"itemFallback",(0,A.jsx)(B.A.Input,{block:!0,size:"small",style:{marginBottom:"0.5rem"}})),(0,K._)(this,"itemSettingsMenuLevel",2),(0,K._)(this,"itemFlowSettings",{showBackground:!0,style:{top:-6,left:-6,right:-6,bottom:-6}}),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-6,height:24},after:{offsetTop:3,height:24}},columnEdge:{left:{offsetLeft:-5,width:24},right:{offsetLeft:8,width:24}},rowGap:{above:{offsetTop:-2,height:24},below:{offsetTop:-12,height:24}}})}}function lu(e,t){let{fieldUseModel:l,refreshTargets:o}=t,n=e=>Array.isArray(e)?e.map(e=>{let t={...e};if(t.children)if("function"==typeof t.children){let e=t.children;t.children=async t=>n(await e(t))}else Array.isArray(t.children)&&(t.children=n(t.children));if(t.createModelOptions){let e=t.createModelOptions;t.createModelOptions=async(t,o)=>{let n=await ("function"==typeof e?e(t,o):e);return n.subModels=n.subModels||{},n.subModels.field={...n.subModels.field||{},use:l},n},t.refreshTargets=t.refreshTargets||o}return t}):[];return n(e)}function lc(e,t,l){let{fieldUseModel:o,refreshTargets:n}=l,r=l.key??"js-association-fields",i=l.label??(0,y.tExpr)("Display association fields");return{key:r,type:"group",label:i,searchable:l.searchable??!0,searchPlaceholder:l.searchPlaceholder??(0,y.tExpr)("Search fields"),children:async e=>lu(await t(e),{fieldUseModel:o,refreshTargets:n})}}ld.registerFlow({key:"detailFieldGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",0),e.model.setProps("colGap",16)}}}});class lp extends eo{}async function lh(e,t){var l;let{useModel:o,fieldUseModel:n,refreshTargets:r,associationPathName:i,associationProvider:a}=t,s=(0,y.buildWrapperFieldChildren)(e,{useModel:o,fieldUseModel:n,associationPathName:i,refreshTargets:r}),d=[],u=null==s||null==(l=s[0])?void 0:l.children;if(Array.isArray(u)&&(d=u),!a)return d;let c=await a(e);return Array.isArray(c)&&0!==c.length?[...d,lc(e,a,{fieldUseModel:n,refreshTargets:r})]:d}(0,K._)(lp,"itemModelName","FormItemModel");class lm extends ls{static defineChildren(e){return lh(e,{useModel:"DetailsItemModel",fieldUseModel:"JSFieldModel",refreshTargets:["DetailsItemModel"],associationProvider:e=>ll.defineChildren(e)})}}lm.define({label:(0,y.tExpr)("JS field"),searchable:!0,searchPlaceholder:(0,y.tExpr)("Search fields"),sort:110});class lf extends eO.o{}var lg=l(36492),lv=l(85196),ly=l(71500);class lb extends eO.o{constructor(...e){super(...e),(0,K._)(this,"operator","$eq"),(0,K._)(this,"updateAssociation",!0)}}lb.registerFlow({key:"AssociationFieldInit",sort:800,steps:{init:{async handler(e,t){if(e.model.updateAssociation){var l,o;let t=e.model.context.blockModel,n=null==t||null==(l=t.context)?void 0:l.resource,r=null==(o=e.model.parent)?void 0:o.fieldPath;n&&r&&n.addUpdateAssociationValues(r)}}},allowCreateCheck:{async handler(e){var t;let l=await e.aclCheck({dataSourceKey:e.collectionField.dataSourceKey,resourceName:null==(t=e.collectionField)?void 0:t.target,actionName:"create"});e.model.setProps({allowCreate:!!l})}}}});let lx=(e,t)=>e===t,lw=e=>{if(e&&"object"==typeof e){let t=e.data;return t&&"object"==typeof t?t:e}};function lS(e){return"string"==typeof e&&e?e:Array.isArray(e)&&1===e.length&&"string"==typeof e[0]?e[0]:void 0}function lM(e,t){var l;let o="string"==typeof(null==t||null==(l=t.titleCollectionField)?void 0:l.name)?t.titleCollectionField.name:void 0,n=lS(null==t?void 0:t.filterTargetKey)||"id",r="string"==typeof(null==e?void 0:e.value)&&e.value&&!lx(e.value,"value")?e.value:void 0,i="string"==typeof(null==e?void 0:e.label)&&e.label&&!lx(e.label,"label")?e.label:void 0,a=r||n;return{label:i||o||a,value:a}}function lF(e){var t,l,o,n,r,i;let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=!!a.navigation,d=e=>{if(Array.isArray(e))return e.filter(e=>"string"==typeof e&&!!e)},u=d(null==(l=e.view)||null==(t=l.inputArgs)?void 0:t.openerUids),c=d(a.openerUids),p=u||c||[];if(s)return(c||p).filter(Boolean);let h=null==(n=e.view)||null==(o=n.inputArgs)?void 0:o.viewUid,m=null==(i=e.model.context)||null==(r=i.inputArgs)?void 0:r.viewUid;return[...p,"string"==typeof h&&h?h:"string"==typeof m&&m?m:e.model.uid].filter(Boolean)}function lA(e){if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e;if(Array.isArray(e)){let t=e.map(e=>{if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e;if(e&&"object"==typeof e){let t=e.label??e.name;if("string"==typeof t||"number"==typeof t||"boolean"==typeof t)return t}}).filter(e=>void 0!==e);return t.length?t.map(String).join(", "):void 0}if(e&&"object"==typeof e){let t=e.label??e.name;if("string"==typeof t||"number"==typeof t||"boolean"==typeof t)return t}}function lk(e){var t,l,o;let{option:n,fieldNames:r}=e,i=(0,y.useFlowModel)(),a=lw(n),s=lM(r,null==(t=i.context.collectionField)?void 0:t.targetCollection),d=i.subModels.field,u=lA(null==a?void 0:a[s.label])??lA(null==a?void 0:a.label)??lA(null==a?void 0:a[s.value]);if(!d)return(0,A.jsx)("span",{children:u??"N/A"});let c=String((null==a?void 0:a[s.value])??u??"association-option"),p=d.createFork({},c);p.context.defineProperty("record",{get:()=>a,cache:!1,meta:(0,y.createCurrentRecordMetaFactory)(p.context,()=>p.context.collection)});let h=null==(o=i.context.collectionField.targetCollection)||null==(l=o.getField)?void 0:l.call(o,s.label),m=h&&"function"==typeof h.getComponentProps?h.getComponentProps():{};p.setProps({value:u,clickToOpen:!1,...m});let f=null!=u&&""!==u?p.render():"N/A";return(0,A.jsx)("span",{style:{pointerEvents:"none"},children:f})}function lC(e,t){let l=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"record",n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];if(!e)return l?[]:void 0;let{value:r}=t||{},i=e=>"object"==typeof e&&null!==e,a=e=>{if(i(e))return{label:(0,A.jsx)(lk,{option:e,fieldNames:t}),value:e[r]}};if("value"===o){let t=e=>{if("object"==typeof e&&null!==e)return a(e);let t=n.find(t=>(null==t?void 0:t[r])===e);return t?a(t):{label:String(e),value:e}};return l?Array.isArray(e)?e.map(e=>t(e)).filter(Boolean):[]:Array.isArray(e)?t(e[0]):t(e)}if(l)return Array.isArray(e)?e.filter(i).map(a).filter(Boolean):[];if(Array.isArray(e)){let t=e[0];return i(t)?a(t):void 0}return i(e)?a(e):void 0}function lP(e,t,l){return(null==e?void 0:e.length)?e.map(e=>(0,P.omit)(e,"disabled","options","style")):l?Array.isArray(t)?t.filter(e=>"object"==typeof e&&null!==e):[]:t&&"object"==typeof t?[t]:[]}var lj=l(6433);let lI=(0,tI.AH)`
288
+ `},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{t("Name")}}'}},value:{type:"string","x-decorator":"FormItem","x-component":S.n,"x-component-props":{rows:1}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}},properties:{add:{type:"void",title:'{{t("Add parameter")}}',"x-component":"ArrayItems.Addition"}}},openInNewWindow:{type:"boolean","x-content":t("Open in new window"),"x-decorator":"FormItem","x-component":"Checkbox","x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}}}},handler(e,t){e.model.setProps({url:t.url,searchParams:t.searchParams,openInNewWindow:t.openInNewWindow})}}}});class tO extends X{setTitle(e){this.setProps({title:e})}setExpandFlag(e){this.expandFlag=e}getTitle(){return this.expandFlag?this.context.t("Collapse all"):this.context.t("Expand all")}getIcon(){return this.expandFlag?"NodeCollapseOutlined":"NodeExpandOutlined"}constructor(...e){super(...e),(0,K._)(this,"expandFlag",void 0),(0,K._)(this,"defaultProps",{type:"default",icon:"DownOutlined"})}}function t$(e){let{idKey:t="id",childrenKey:l="children"}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=[];function n(e){if(Array.isArray(e))for(let r of e){let e=r[l];o.push(r[t]),Array.isArray(e)&&e.length>0&&n(e)}}return n(e),o}(0,K._)(tO,"scene",J.collection);let tB=e=>t$(e);tO.registerFlow({key:"expandCollapseSettingsInit",sort:200,steps:{init:{handler(e,t){e.blockModel.props.defaultExpandAllRows?e.model.setExpandFlag(!0):e.model.setExpandFlag(!1)}}}}),tO.registerFlow({key:"expandCollapseSettings",on:"click",steps:{expandCollapse:{async handler(e,t){var l;if(!(null==(l=e.blockModel)?void 0:l.resource))return;let o=e.blockModel.resource,{treeTable:n}=e.blockModel.props;if(n)if(e.model.expandFlag)e.blockModel.setProps({expandedRowKeys:[]}),e.model.setExpandFlag(!1);else{let t=tB(o.getData());e.blockModel.setProps({expandedRowKeys:t}),e.model.setExpandFlag(!0)}}}}}),tO.define({label:(0,y.escapeT)("Expand/Collapse"),hide(e){var t;return(null==(t=e.collection)?void 0:t.template)!=="tree"||!1===e.model.props.treeTable}});class tq extends e4{getAclActionName(){return"create"}onInit(e){super.onInit(e),this.context.defineProperty("association",{get:()=>this.context.blockModel.dataSource.getAssociation(`${this.context.blockModel.collection.name}.children`)})}constructor(...e){super(...e),(0,K._)(this,"defaultProps",{type:"link",title:(0,y.tExpr)("Add child"),icon:"PlusOutlined"})}}(0,K._)(tq,"capabilityActionName",null),tq.registerFlow({key:"addChildSettingsInit",steps:{addChildInit:{async handler(e,t){e.model.onClick=t=>{e.model.dispatchEvent("click",{event:t,...e.inputArgs,sourceId:e.record.id,filterByTk:null},{debounce:!0})}}}}}),tq.define({label:(0,y.tExpr)("Add child"),hide(e){var t;return(null==(t=e.collection)?void 0:t.template)!=="tree"||!1===e.blockModel.props.treeTable}}),et.registerActionModels({AddChildActionModel:tq});var tL=l(89013),tV=l(93821);class tz extends tV.F4{useHooksBeforeRender(){let[e]=tL.A.useForm();this.context.defineProperty("form",{get:()=>e})}onInit(e){super.onInit(e);let t=(0,y.createCurrentRecordMetaFactory)(this.context,()=>this.collection);this.context.defineProperty("record",{get:()=>{var e,t;return null==(e=(t=this).getCurrentRecord)?void 0:e.call(t)},cache:!1,resolveOnServer:(0,y.createRecordResolveOnServerWithLocal)(()=>this.collection,()=>{var e,t;return null==(e=(t=this).getCurrentRecord)?void 0:e.call(t)}),meta:t}),this.context.defineProperty("filterManager",{once:!0,get:()=>new es(this,null==e?void 0:e.filterManager)}),this.isManualRefresh=!0}createResource(e,t){let l=this.context.createResource(y.SingleRecordResource);return l.isNewRecord=!0,l}renderComponent(){var e;let{colon:t,labelAlign:l,labelWidth:o,labelWrap:n,layout:r}=this.props;return(0,A.jsx)(tV.s2,{model:this,layoutProps:{colon:t,labelAlign:l,labelWidth:o,labelWrap:n,layout:r},children:(0,A.jsx)(y.FlowModelRenderer,{model:null==(e=this.subModels)?void 0:e.grid,showFlowSettings:!1})})}setInitialAssignedValues(e){var t;let l=null==(t=this.subModels)?void 0:t.grid;Object.entries(e||{}).forEach(e=>{let[t,o]=e;l.addOrEnsureItem(t,o)})}getAssignedValues(){return this.subModels.grid.getAssignedValues()||{}}}tz.define({label:(0,y.tExpr)("Field assignments"),hide:!0,createModelOptions:{use:"AssignFormModel",subModels:{grid:{use:"AssignFormGridModel"}}}});var tK=l(49655);class tU extends eA{renderAddSubModelButton(){return(0,A.jsx)(y.AddSubModelButton,{subModelKey:"items",subModelBaseClasses:[this.context.getModelClassName("FormItemModel"),this.context.getModelClassName("FormAssociationFieldGroupModel"),this.context.getModelClassName("FormCustomItemModel"),this.context.getModelClassName("FormJSFieldItemModel")].filter(Boolean),model:this,keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})})}render(){var e,t;let l=null==(e=this.props)?void 0:e.height,o=null==(t=this.props)?void 0:t.heightModel,n=this.context.themeToken,r=super.render();return"defaultHeight"===o?r:(0,A.jsx)("div",{style:{height:l,overflowY:"auto",marginLeft:`-${n.marginLG}px`,marginRight:`-${n.marginLG}px`,paddingLeft:`${n.marginLG}px`,paddingRight:`${n.marginLG}px`,paddingTop:5},children:r})}constructor(...e){super(...e),(0,K._)(this,"itemFallback",(0,A.jsx)(B.A.Input,{block:!0,size:"small",style:{marginBottom:"0.5rem"}})),(0,K._)(this,"itemSettingsMenuLevel",2),(0,K._)(this,"itemFlowSettings",{showBackground:!0,style:{top:-6,left:-6,right:-6,bottom:-6}}),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-6,height:24},after:{offsetTop:3,height:24}},columnEdge:{left:{offsetLeft:-5,width:24},right:{offsetLeft:8,width:24}},rowGap:{above:{offsetTop:-2,height:24},below:{offsetTop:-12,height:24}}})}}tU.registerFlow({key:"formFieldGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",0),e.model.setProps("colGap",16)}}}});class tW extends tU{renderAddSubModelButton(){var e,t;let l=null==(e=this.context)?void 0:e.collection,o=(null==l||null==(t=l.getFields)?void 0:t.call(l))||[],n="function"==typeof(null==l?void 0:l.getPrimaryKey)?l.getPrimaryKey():void 0,r=null==l?void 0:l.filterTargetKey,i=e=>!!e&&!!(n&&e===n||"string"==typeof r&&e===r||Array.isArray(r)&&r.includes(e)),a=o.filter(e=>!i(null==e?void 0:e.name)).map(e=>{let t=e.name,o=e.title||e.name,n=y.EditableItemModel.getDefaultBindingByField(this.context,e);if(!n)return;let r=n.modelName;return{key:t,label:o,toggleable:e=>{let l=e.getStepParams("fieldSettings","init")||{};return(null==l?void 0:l.fieldPath)===t},useModel:"AssignFormItemModel",createModelOptions:()=>({use:"AssignFormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:null==l?void 0:l.dataSourceKey,collectionName:null==l?void 0:l.name,fieldPath:t}}},subModels:{field:{use:r,stepParams:{fieldSettings:{init:{dataSourceKey:null==l?void 0:l.dataSourceKey,collectionName:null==l?void 0:l.name,fieldPath:t}}}}}})}}).filter(Boolean);return(0,A.jsx)(y.AddSubModelButton,{subModelKey:"items",model:this,items:a,keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})})}addOrEnsureItem(e,t){var l,o,n;let r=null==(l=this.context)?void 0:l.collection,i=((null==(o=this.subModels)?void 0:o.items)||[]).find(t=>{try{let l="function"==typeof(null==t?void 0:t.getStepParams)?t.getStepParams("fieldSettings","init"):null;return(null==l?void 0:l.fieldPath)===e}catch(e){return!1}});if(i){"function"==typeof(null==i?void 0:i.setStepParams)&&i.setStepParams("fieldSettings","assignValue",{value:t}),i.assignValue=t;return}let a=((null==r||null==(n=r.getFields)?void 0:n.call(r))||[]).find(t=>t.name===e),s=y.EditableItemModel.getDefaultBindingByField(this.context,a);if(!s)return;let d=s.modelName;this.flowEngine.createModel({use:"AssignFormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:null==r?void 0:r.dataSourceKey,collectionName:null==r?void 0:r.name,fieldPath:e},assignValue:{value:t}}},subModels:{field:{use:d,stepParams:{fieldSettings:{init:{dataSourceKey:null==r?void 0:r.dataSourceKey,collectionName:null==r?void 0:r.name,fieldPath:e}}}}},parentId:this.uid,subKey:"items"}).assignValue=t}getAssignedValues(){var e;let t=(null==(e=this.subModels)?void 0:e.items)||[],l={};for(let e of t){let t="function"==typeof e.getAssignedEntry?e.getAssignedEntry():null;t&&Array.isArray(t)&&(l[t[0]]=t[1])}return l}}tW.define({label:(0,y.tExpr)("Assign grid")});var tH=l(95243),tY=l(44329);function tG(e){return"string"==typeof e?e:"function"==typeof e&&e.name?e.name:void 0}function tJ(e){var t,l;let o=null==e||null==(l=e.stepParams)||null==(t=l.fieldBinding)?void 0:t.use;return"string"==typeof o?o:void 0}async function tX(e){var t,l,o;let{parentModel:n,targetUse:r,defaultProps:i,pattern:a,fieldSettingsInit:s}=e,d=n.subModels.field,u=null==d?void 0:d.uid,c=null==d||null==(l=d.serialize)||null==(t=l.call(d))?void 0:t.subModels;for(let e in c)!1===c[e].delegateToParent&&delete c[e];let p=tG(tJ(d)||(null==d?void 0:d.use))===r&&(null==d?void 0:d.stepParams)||{},h=s??(null==(o=n.getFieldSettingsInitParams)?void 0:o.call(n)),{fieldBinding:m,...f}=p,g={...f,fieldSettings:{...f.fieldSettings||{},init:h}},v=n.flowEngine;u&&(null==d||d.invalidateFlowCache("beforeRender",!0),v.removeModelWithSubModels(u));let y=n.setSubModel("field",{uid:u,use:r,props:{...i||{},...a?{pattern:a}:{}},stepParams:g,subModels:c});await y.dispatchEvent("beforeRender",void 0,{useCache:!1}),await n.save()}var tQ=l(13940);function tZ(e,t,l){let o=(0,P.castArray)(l).filter(e=>"string"==typeof e),n=t.split(".");if(null==o?void 0:o.length){let t=[],l=0,r=0;for(;l<n.length;){let e=n[l];if(t.push(e),r<o.length){let[l,n]=o[r].split(":");l===e&&(t.push(Number(n)),r++)}l++}return(0,P.get)(e,t)}return(0,P.get)(e,n)}function t0(e){let{record:t,currentObject:l,fieldPath:o,prefixFieldPath:n,idx:r}=e,i=tZ(t,o,r);if(void 0!==i||null==l)return i;if(n&&o===n)return l;let a=n&&o.startsWith(`${n}.`)?o.slice(n.length+1):o;return a?(0,P.get)(l,a):l}function t1(e,t){return!(0,tQ.E4)(e)||Array.isArray(t)?t:t&&"object"==typeof t&&Array.isArray(t.rows)?t.rows:null==t?[]:[t]}class t2 extends y.DisplayItemModel{static defineChildren(e){let t=e.collection;return t.getFields().map(l=>{let o=this.getDefaultBindingByField(e,l,{fallbackToTargetTitleField:!0});if(!o)return null;let n=o.modelName,r=e.prefixFieldPath?`${e.prefixFieldPath}.${l.name}`:l.name;return{key:r,label:l.title,refreshTargets:["DetailsCustomItemModel/DetailsJSFieldItemModel"],toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===r},useModel:"DetailsItemModel",createModelOptions:()=>({use:"DetailsItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:t.dataSourceKey,collectionName:e.model.context.blockModel.collection.name,fieldPath:r}}},subModels:{field:{use:n,props:"function"==typeof o.defaultProps?o.defaultProps(e,l):o.defaultProps}}})}}).filter(Boolean)}onInit(e){super.onInit(e),this.context.defineProperty("actionName",{get:()=>"view",cache:!1})}renderItem(){let e=this.subModels.field,t=this.context.fieldIndex,l=this.context.record,o=this.context.currentObject,n=this.context.item,r=this.context.getPropertyOptions("item"),i=this.context.prefixFieldPath,a=null!=t?(()=>{let i=e.createFork({},`${t}`);i.context.defineProperty("fieldIndex",{get:()=>t}),i.context.defineProperty("record",{get:()=>l,cache:!1}),i.context.defineProperty("currentObject",{get:()=>o,cache:!1});let{value:a,...s}=r||{};return i.context.defineProperty("item",{...s,get:()=>n,cache:!1}),this.context.pattern&&i.context.defineProperty("pattern",{get:()=>this.context.pattern}),i})():e,s=this.context.pattern?{...this.context.blockModel.props,...this.props,pattern:this.context.pattern,disabled:"readPretty"===this.context.pattern}:{...this.context.blockModel.props,...this.props},d=t1(this.collectionField,t0({record:l,currentObject:o,fieldPath:this.fieldPath,prefixFieldPath:i,idx:t}));return(0,A.jsx)(y.FormItem,{...s,value:d,children:(0,A.jsx)(y.FieldModelRenderer,{model:a})})}}t2.define({label:(0,y.tExpr)("Display fields"),sort:100}),t2.registerFlow({key:"detailItemSettings",sort:300,title:(0,y.tExpr)("Detail item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({title:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>{var t;return{title:null==(t=e.collectionField)?void 0:t.title}},handler(e,t){var l;let o={ns:"lm-flow-engine",compareWith:null==(l=e.collectionField)?void 0:l.title};e.model.setProps({label:e.t(t.title,o)})}},aclCheck:{use:"aclCheck"},init:{async handler(e){let{collectionField:t}=e.model;t&&e.model.setProps(t.getComponentProps())}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},model:{title:(0,y.tExpr)("Field component"),use:"displayFieldComponent"},fieldNames:{use:"titleField",title:(0,y.tExpr)("Title field"),beforeParamsSave:async(e,t,l)=>{if(!e.collectionField||!e.collectionField.isAssociationField())return null;if(t.label!==l.label){var o,n;e.model.setProps({titleField:t.label,...null==(n=e.collectionField.targetCollection)||null==(o=n.getField(t.label))?void 0:o.getComponentProps()});let l=e.collectionField.targetCollection.getField(t.label),r=y.DisplayItemModel.getDefaultBindingByField(e,l),i=r.modelName;await tX({parentModel:e.model,targetUse:i,defaultProps:"function"==typeof(null==r?void 0:r.defaultProps)?r.defaultProps(e,e.collectionField):null==r?void 0:r.defaultProps,pattern:e.model.getProps().pattern})}},async handler(e,t){var l,o;if(!e.collectionField||e.model.subModels.field.disableTitleField)return;e.model.setProps({titleField:t.label,...null==(o=e.collectionField.targetCollection)||null==(l=o.getField(t.label))?void 0:l.getComponentProps()});let n=e.collectionField.targetCollection;if(n){let l=n.getField(t.label),o=y.DisplayItemModel.getDefaultBindingByField(e,l).modelName;o!==e.model.subModels.field.use&&e.model.setStepParams(e.flowKey,"model",{use:o})}},hideInSettings:async e=>!e.collectionField||!e.collectionField.isAssociationField()||e.model.subModels.field.disableTitleField}}}),t2.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh"}}});var t4=l(71616);function t5(e){if(!e)return!1;let t=null==e?void 0:e.type;return"belongsToMany"===t||"hasMany"===t||"belongsToArray"===t}function t8(e,t){var l;let o=!!(null==e||null==(l=e.isAssociationField)?void 0:l.call(e)),n=t5(e);return o&&!n&&Array.isArray(t)?t.length?t[0]:void 0:t}function t3(e,t){if(!(null==t?void 0:t.length))return e;let[l,o]=String(t[t.length-1]).split(":"),n=Number(o);if(!l||!Number.isFinite(n))return e;let r=0;for(let e of t){let[t]=String(e).split(":");t===l&&(r+=1)}let i=-1,a=0;for(let t=0;t<e.length;t++)if(String(e[t])===l&&(a+=1)===r){i=t;break}if(-1===i){for(let t=e.length-1;t>=0;t--)if(String(e[t])===l){i=t;break}}return -1===i?e:[n,...e.slice(i+1)]}let t6=["o2o","oho","obo","o2m","attachment","expression","point","lineString","circle","polygon","sequence","formula"];class t9 extends y.EditableItemModel{static defineChildren(e){let t=e.collection;return t.getFields().map(l=>{let o=this.getDefaultBindingByField(e,l);if(!o)return;let n=o.modelName,r=e.prefixFieldPath?`${e.prefixFieldPath}.${l.name}`:l.name;return{key:r,label:l.title,refreshTargets:["FormItemModel/FormJSFieldItemModel"],toggleable:e=>{var t;return(null==(t=e.getStepParams("fieldSettings","init"))?void 0:t.fieldPath)===r},useModel:"FormItemModel",createModelOptions:()=>({use:"FormItemModel",stepParams:{fieldSettings:{init:{dataSourceKey:t.dataSourceKey,collectionName:e.model.context.blockModel.collection.name,fieldPath:r}}},subModels:{field:{use:n,props:"function"==typeof o.defaultProps?o.defaultProps(e,l):o.defaultProps}}})}}).filter(Boolean)}onInit(e){super.onInit(e),this.emitter.on("onSubModelAdded",e=>{if(this.collectionField){let t=this.collectionField.getComponentProps();e.setProps(t),this.setProps({...j().pick(t,"rules")||{}})}})}renderItem(){var e,t;let l=this.subModels.field,o=this.context.fieldIndex,n=this.context.fieldKey,r=(null==(e=this.parent)?void 0:e.context.fieldPathArray)||[],i=null!=o?(()=>{let e=l.createFork({},`${n}`);e.context.defineProperty("fieldIndex",{get:()=>o}),e.context.defineProperty("fieldKey",{get:()=>n}),this.context.currentObject&&e.context.defineProperty("currentObject",{get:()=>this.context.currentObject});let t=this.context.getPropertyOptions("item");if(this.context.item){let{value:l,...o}=t||{};e.context.defineProperty("item",{...o,get:()=>this.context.item,cache:!1})}return this.context.pattern&&e.context.defineProperty("pattern",{get:()=>this.context.pattern}),e})():l,{initialValue:a,...s}=this.context.pattern?{...this.props,pattern:this.context.pattern}:this.props,d=t3(this.props.name,o);this.context.defineProperty("fieldPathArray",{value:[...r,...j().castArray(d)]});let u=(null==(t=this.context.item)?void 0:t.value)||this.context.record;return(0,A.jsx)(y.FormItem,{...s,name:d,validateFirst:!0,disabled:this.props.disabled||!j().isEmpty(u)&&!u.__is_new__&&this.props.aclDisabled||!j().isEmpty(u)&&u.__is_new__&&this.props.aclCreateDisabled,children:(0,A.jsx)(y.FieldModelRenderer,{model:i,name:d})})}}t9.define({label:(0,y.tExpr)("Display fields"),sort:100}),t9.registerFlow({key:"editItemSettings",sort:300,title:(0,y.tExpr)("Form item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({label:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>{var t;return{label:null==(t=e.collectionField)?void 0:t.title}},handler(e,t){var l;let o={ns:"lm-flow-engine",compareWith:null==(l=e.collectionField)?void 0:l.title};e.model.setProps({label:e.t(t.label,o)})}},aclCheck:{use:"aclCheck",async handler(e,t){var l,o,n,r,i,a,s,d,u,c,p,h,m;if(!e.collectionField||!e.blockModel)return;let f=e.blockModel.context.actionName,g=await e.aclCheck({dataSourceKey:null==(l=e.dataSource)?void 0:l.key,resourceName:null==(o=e.collectionField)?void 0:o.collectionName,fields:[null==(n=e.collectionField)?void 0:n.name],actionName:f});if("update"===f){let t=await e.aclCheck({dataSourceKey:null==(r=e.dataSource)?void 0:r.key,resourceName:null==(i=e.collectionField)?void 0:i.collectionName,fields:[e.collectionField.name],actionName:"view"});e.prefixFieldPath&&e.item&&(await e.aclCheck({dataSourceKey:null==(s=e.dataSource)?void 0:s.key,resourceName:null==(d=e.collectionField)?void 0:d.collectionName,fields:[e.collectionField.name],actionName:"create"})||e.model.setProps({aclCreateDisabled:!0}));let l=(null==(a=e.item)?void 0:a.__is_new__)??!1;t||l||(e.model.hidden=!0,e.model.forbidden={actionName:"view"},e.exitAll()),g||e.model.setProps({aclDisabled:!0})}else if("create"===f){let t=await e.aclCheck({dataSourceKey:null==(u=e.dataSource)?void 0:u.key,resourceName:null==(c=e.collectionField)?void 0:c.collectionName,actionName:"update"}),l=await e.aclCheck({dataSourceKey:null==(p=e.dataSource)?void 0:p.key,resourceName:null==(h=e.collectionField)?void 0:h.collectionName,fields:[e.collectionField.name],actionName:"update"}),o=(null==(m=e.item)?void 0:m.__is_stored__)??!1;g||o||(e.model.hidden=!0,e.model.forbidden={actionName:f},e.exitAll()),t&&l||e.model.setProps({aclDisabled:!0})}}},init:{async handler(e){let t=e.model.fieldPath,l=t.includes(".")?t.split("."):t;e.model.setProps({name:l})}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem","x-component-props":{autoSize:!0}}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},initialValue:{title:(0,y.tExpr)("Default value"),disabledInSettings:!0,disabledReasonInSettings:e=>`${e.t("This setting has been moved to")}: ${e.t("Form block settings")} > ${e.t("Field values")}`,uiSchema:e=>{var t,l,o,n;if(e.model.parent.parent instanceof t4.EditFormModel||(null==(l=e.model.subModels)||null==(t=l.field)?void 0:t.updateAssociation))return;let r=null==(o=e.model.collectionField)?void 0:o.interface;if(null==t6||null==(n=t6.includes)||!n.call(t6,r))return{defaultValue:{"x-component":"DefaultValue","x-decorator":"FormItem"}}},defaultParams:e=>{let t=e.model.collectionField;if("nanoid"===t.interface&&!1!==t.options.autoFill){let{size:e,customAlphabet:l}=t.options||{size:21};return{defaultValue:(0,tY.d_)(l,e)()}}return{defaultValue:t.defaultValue}},handler(e,t){var l,o;let n=null==(l=e.model.collectionField)?void 0:l.interface;if(null==t6||null==(o=t6.includes)?void 0:o.call(t6,n))return;let r=t8(e.model.collectionField,t.defaultValue);e.model.setProps({initialValue:r})}},validation:{title:(0,y.tExpr)("Validation"),use:"validation"},required:{title:(0,y.tExpr)("Required"),use:"required"},model:{use:"fieldComponent",title:(0,y.tExpr)("Field component")},pattern:{use:"pattern"},titleField:{use:"titleField",hideInSettings:e=>!(e.collectionField&&e.collectionField.isAssociationField()&&e.collectionField.isAssociationField()&&"readPretty"===e.model.getProps().pattern),defaultParams:e=>({titleField:e.model.props.titleField||e.model.context.collectionField.targetCollectionTitleFieldName}),beforeParamsSave:async(e,t,l)=>{if(!(e.collectionField.isAssociationField()&&"readPretty"===e.model.getProps().pattern))return null;let o=t.titleField||t.label;if(o!==l.titleField){let t=e.collectionField.targetCollection,l=t.getField(o),n=t2.getDefaultBindingByField(e,l);if(n.modelName!==e.model.subModels.field.use){let l=e.model.subModels.field.uid;await e.engine.destroyModel(l);let r=e.model.setSubModel("field",{use:n.modelName,stepParams:{fieldSettings:{init:{dataSourceKey:e.model.collectionField.dataSourceKey,collectionName:t.name,fieldPath:o}}}});await r.save()}e.model.setProps(e.collectionField.targetCollection.getField(o).getComponentProps())}},async handler(e,t){"readPretty"===e.model.props.pattern?e.model.setProps({titleField:null==t?void 0:t.label}):e.model.setProps({titleField:t.titleField})}}}}),t9.registerFlow({key:"paginationChange",on:"paginationChange",steps:{aclCheckRefresh:{use:"aclCheckRefresh",defaultParams:{strategy:"formItem"}}}});var t7=l(85352),le=l(90199);class lt extends t9{onInit(e){var t,l,o,n,r,i,a;let s=null==(t=this.getStepParams("fieldSettings","assignValue"))?void 0:t.value;void 0!==s&&(this.assignValue=s),this.context.defineProperty("collectionField",{get:()=>{var e,t;let l=this.getStepParams("fieldSettings","init")||{},o=`${null==l?void 0:l.dataSourceKey}.${null==l?void 0:l.collectionName}.${null==l?void 0:l.fieldPath}`,n=null==(e=this.context)?void 0:e.dataSourceManager;return null==n||null==(t=n.getCollectionField)?void 0:t.call(n,o)}});let d=this.context,u=null==d?void 0:d.collection,c=this.fieldInit;if(!(null==(l=this.subModels)?void 0:l.field)&&(null==u?void 0:u.getFields)){let e=(u.getFields()||[]).find(e=>(null==e?void 0:e.name)===(null==c?void 0:c.fieldPath));null==u||null==(n=u.getField)||n.call(u,null==c?void 0:c.fieldPath);let t=y.EditableItemModel.getDefaultBindingByField(d,e);if(!t)return;let l=t.modelName;null==d||null==(i=d.engine)||null==(r=i.createModel)||r.call(i,{use:l,stepParams:{fieldSettings:{init:c}},parentId:this.uid,subKey:"field"})}let p=null==(o=this.context)?void 0:o.collection,h=this.fieldPath;if(h){let e=null==p||null==(a=p.getField)?void 0:a.call(p,h),t=(null==e?void 0:e.title)||h,l=h.includes(".")?h.split("."):[h];this.setProps({label:t,name:l})}}get fieldInit(){return this.getStepParams("fieldSettings","init")||{}}get fieldPath(){var e;return null==(e=this.fieldInit)?void 0:e.fieldPath}getAssignedEntry(){let e=this.fieldPath;return e?[e,this.assignValue]:null}render(){var e;let t=this.context,l=t.collection,o=this.fieldInit,n=(null==(e=this.props)?void 0:e.name)||(this.fieldPath?[this.fieldPath]:void 0),r=this.fieldPath,i=()=>{var e,i,a;let[s,d]=k.useState(null);k.useEffect(()=>{var e,n,i,a,s,u,c,p,h,m,f,g,v,b,x,w,S,M,F,A,k;if(!r)return;let C=((null==l||null==(e=l.getFields)?void 0:e.call(l))||[]).find(e=>(null==e?void 0:e.name)===r);l.getField(r);let P=y.EditableItemModel.getDefaultBindingByField(t,C);if(!P)return;let j=P.modelName,I=null==t||null==(i=t.engine)||null==(n=i.createModel)?void 0:n.call(i,{use:"VariableFieldFormModel",subModels:{fields:[{use:j,stepParams:{fieldSettings:{init:o}}}]}});if(!I)return;null==(s=I.context)||null==(a=s.defineProperty)||a.call(s,"collection",{value:l});let E=null==t?void 0:t.dataSource;E&&(null==(c=I.context)||null==(u=c.defineProperty)||u.call(c,"dataSource",{value:E}));let _=null==l||null==(p=l.getField)?void 0:p.call(l,null==o?void 0:o.fieldPath);_&&(null==(m=I.context)||null==(h=m.defineProperty)||h.call(m,"collectionField",{value:_}));let R=null==t?void 0:t.blockModel;R&&(null==(g=I.context)||null==(f=g.defineProperty)||f.call(g,"blockModel",{value:R}));let T=t.form;T&&(null==(A=I.context)||null==(F=A.defineProperty)||F.call(A,"form",{value:T})),I.context&&Object.defineProperty(I.context,"resource",{configurable:!0,enumerable:!0,get:()=>null==R?void 0:R.resource});let D=null==I||null==(b=I.subModels)||null==(v=b.fields)?void 0:v[0],N=null==l||null==(x=l.getField)?void 0:x.call(l,null==o?void 0:o.fieldPath),O=null==N?void 0:N.type,$=null==N?void 0:N.interface,B="belongsToMany"===O||"hasMany"===O||"belongsToArray"===O||"m2m"===$||"o2m"===$||"mbm"===$;if(null==D||null==(w=D.setProps)||w.call(D,{disabled:!1,readPretty:!1,pattern:"editable",updateAssociation:!1,multiple:B}),null==D||null==(S=D.dispatchEvent)||S.call(D,"beforeRender",void 0,{sequential:!0,useCache:!0}),(0,t7.NI)(D,N),!(null==D||null==(M=D.props)?void 0:M.fieldNames)&&(null==N?void 0:N.targetCollection)){let e=N.targetCollection,t=(null==N?void 0:N.targetKey)||(null==e?void 0:e.filterTargetKey)||"id";null==D||null==(k=D.setProps)||k.call(D,{fieldNames:{label:null==e?void 0:e.titleField,value:t}})}return d(I),()=>{var e,t,l,o;null==I||null==(l=I.subModels)||null==(t=l.fields)||null==(e=t.forEach)||e.call(t,e=>{var t;return null==e||null==(t=e.remove)?void 0:t.call(e)}),null==I||null==(o=I.remove)||o.call(I)}},[]);let u=e=>(k.useEffect(()=>{var t,l,o,n;if(!s)return;null==(t=s.setProps)||t.call(s,{...e});let r=null==s||null==(o=s.subModels)||null==(l=o.fields)?void 0:l[0];r&&(null==(n=r.setProps)||n.call(r,{value:null==e?void 0:e.value,onChange:function(){for(var t,l=arguments.length,o=Array(l),n=0;n<l;n++)o[n]=arguments[n];let r=o&&o.length?o[0]:void 0;null==e||null==(t=e.onChange)||t.call(e,r)}}))},[e]),s?(0,A.jsx)("div",{style:{width:"100%"},children:(0,A.jsx)(y.FlowModelRenderer,{model:s,showFlowSettings:!1})}):null),c=()=>(0,A.jsx)(ey.A,{placeholder:"<Null>",readOnly:!0,style:{width:"100%"}}),p=e=>(0,A.jsx)(le.h,{t:this.context.t,value:null==e?void 0:e.value,onChange:null==e?void 0:e.onChange,containerStyle:{width:"100%"}}),h={renderInputComponent:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?u:"null"===l?c:"runjs"===l?p:void 0},resolveValueFromPath:e=>{var t;let l=null==e||null==(t=e.paths)?void 0:t[0];return"constant"===l?"":"null"===l?null:"runjs"===l?{code:"",version:"v2"}:void 0},resolvePathFromValue:e=>null===e?["null"]:(0,y.isRunJSValue)(e)?["runjs"]:(0,y.isVariableExpression)(e)?(0,y.parseValueToPath)(e):["constant"]},m=async()=>{var e;let t=null==(e=this.context)?void 0:e.getPropertyMetaTree,l="function"==typeof t?await t():[];return[{title:(0,y.tExpr)("Constant"),name:"constant",type:"string",paths:["constant"],render:u},{title:(0,y.tExpr)("Null"),name:"null",type:"object",paths:["null"],render:c},{title:(0,y.tExpr)("RunJS"),name:"runjs",type:"object",paths:["runjs"],render:p},...l]},f=(null==(e=this.props)?void 0:e.label)??this.fieldPath??"",g=null==l||null==(i=l.getField)?void 0:i.call(l,this.fieldPath);return f=(null==(a=this.props)?void 0:a.label)??(null==g?void 0:g.title)??f,(0,A.jsx)(y.FormItem,{...this.props,label:f,name:n,initialValue:this.assignValue,valuePropName:"__assign_value__",trigger:"__assign_trigger__",validateTrigger:"__assign_trigger__",children:k.createElement(e=>{let t=null==e?void 0:e.__assign_value__,l=void 0===t?this.assignValue:t;return(0,A.jsx)(y.VariableInput,{value:l,onChange:t=>{var l;this.assignValue=t,null==e||null==(l=e.__assign_trigger__)||l.call(e,t)},metaTree:m,converters:h,clearValue:""})})})};return(0,A.jsx)(i,{})}constructor(e){super(e),(0,K._)(this,"assignValue",void 0),(0,tH.define)(this,{assignValue:tH.observable})}}lt.define({label:(0,y.tExpr)("Assign field")}),lt.registerFlow({key:"editItemSettings",sort:300,title:(0,y.tExpr)("Form item settings"),steps:{showLabel:{title:(0,y.tExpr)("Show label"),uiMode:{type:"switch",key:"showLabel"},defaultParams:{showLabel:!0},handler(e,t){e.model.setProps({showLabel:t.showLabel})}},label:{title:(0,y.tExpr)("Label"),uiSchema:e=>({label:{"x-component":"Input","x-decorator":"FormItem","x-reactions":t=>{var l;let o=e.model,n=null==(l=o.collectionField)?void 0:l.title;t.decoratorProps={...t.decoratorProps,extra:o.context.t("Original field title: ")+n}}}}),defaultParams:e=>({label:e.model.collectionField.title}),handler(e,t){var l;t.label&&t.label===(null==(l=e.model.collectionField)?void 0:l.title)?e.model.setProps({label:t.label}):e.model.setProps({label:e.t(t.label,{ns:"lm-flow-engine"})})}},init:{async handler(e){let t=e.model.collectionField;t&&e.model.setProps(t.getComponentProps());let l=e.model.fieldPath,o=l.includes(".")?l.split("."):l;e.model.setProps({name:o})}},tooltip:{title:(0,y.tExpr)("Tooltip"),uiSchema:{tooltip:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({tooltip:e.t(t.tooltip,{ns:"lm-flow-engine"})})}},description:{title:(0,y.tExpr)("Description"),uiSchema:{description:{"x-component":"Input.TextArea","x-decorator":"FormItem"}},handler(e,t){e.model.setProps({extra:e.t(t.description,{ns:"lm-flow-engine"})})}},validation:{title:(0,y.tExpr)("Validation"),use:"validation"},required:{title:(0,y.tExpr)("Required"),use:"required"}}});class ll extends eo{}(0,K._)(ll,"itemModelName","DetailsItemModel"),ll.define({label:'{{t("Display association fields")}}'});var lo=l(58929);let ln=e=>{if(!e)return 0;let t=e.getBoundingClientRect(),l=window.getComputedStyle(e),o=parseFloat(l.marginTop)||0,n=parseFloat(l.marginBottom)||0;return t.height+o+n},lr=e=>{let{heightMode:t,containerRef:l,actionsRef:o,paginationRef:n,deps:r=[]}=e,[i,a]=(0,k.useState)(),s=(0,k.useCallback)(()=>{if("specifyValue"!==t&&"fullHeight"!==t)return void a(e=>void 0===e?e:void 0);let e=l.current;if(!e)return;let r=e.getBoundingClientRect().height;if(!r)return;let i=Math.max(0,Math.floor(r-ln(o.current)-ln(n.current)));a(e=>e===i?e:i)},[t,l,o,n]);return(0,k.useLayoutEffect)(()=>{s()},[s,...r]),(0,k.useEffect)(()=>{if(!l.current||"u"<typeof ResizeObserver)return;let e=l.current,t=o.current,r=n.current,i=new ResizeObserver(()=>s());return i.observe(e),t&&i.observe(t),r&&i.observe(r),()=>i.disconnect()},[s,l,o,n,...r]),i};class li extends eT.t{createResource(e,t){var l,o;if((null==(l=this.association)?void 0:l.type)==="hasOne"||(null==(o=this.association)?void 0:o.type)==="belongsTo"||Object.keys(t).includes("filterByTk")){let e=this.context.createResource(y.SingleRecordResource);return e.isNewRecord=!1,e}let n=this.context.createResource(y.MultiRecordResource);return n.setPageSize(1),n}onInit(e){var t,l;super.onInit(e),this.hadSingleRecordData=(null==(l=this.resource)||null==(t=l.hasData)?void 0:t.call(l))??!1,this.hasMultiRefreshDispatched=!1;let o=(0,y.createCurrentRecordMetaFactory)(this.context,()=>this.collection);this.context.defineProperty("record",{get:()=>this.getCurrentRecord(),cache:!1,resolveOnServer:(0,y.createRecordResolveOnServerWithLocal)(()=>this.collection,()=>this.getCurrentRecord()),meta:o}),this.resource.on("refresh",()=>{var e,t;if(this.isMultiRecordResource()){this.hasMultiRefreshDispatched=!0,(0,tS.Xi)(this,"paginationChange");return}let l=this.hadSingleRecordData;this.hadSingleRecordData=(null==(t=this.resource)||null==(e=t.hasData)?void 0:e.call(t))??!1,l&&(0,tS.Xi)(this,"paginationChange")})}isMultiRecordResource(){return this.resource instanceof y.MultiRecordResource}hasDispatchedMultiRefresh(){return this.hasMultiRefreshDispatched}getCurrentRecord(){let e=this.resource.getData();return Array.isArray(e)?e[0]:e}hasAvailableData(){return this.resource.hasData()}async refresh(){await this.resource.refresh()}renderPagination(){if(!this.resource.loading&&!this.hasAvailableData()){var e,t;return(0,A.jsx)("div",{style:{textAlign:"center",color:null==(t=this.context)||null==(e=t.themeToken)?void 0:e.colorTextDescription},children:this.translate("No available data currently")})}let l=this.resource;return!this.isMultiRecordResource()||!l.getPage()||1>=this.resource.getMeta("count")?null:(0,A.jsx)("div",{style:{textAlign:"center"},children:(0,A.jsx)(lo.A,{simple:!0,pageSize:1,showSizeChanger:!1,defaultCurrent:l.getPage(),total:l.getTotalPage(),onChange:this.handlePageChange,style:{display:"inline-block"}})})}renderConfigureActions(){return(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"actions",subModelBaseClass:this.getModelClassName("RecordActionGroupModel"),afterSubModelInit:async e=>{e.setStepParams("buttonSettings","general",{type:"default"})},children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Actions")})},"details-actions-add")}renderComponent(){let{colon:e,labelAlign:t,labelWidth:l,labelWrap:o,layout:n}=this.props,r=!!this.context.flowSettingsEnabled,i=!r&&!this.hasAvailableData(),{heightMode:a,height:s}=this.decoratorProps;return(0,A.jsx)(la,{model:this,gridModel:this.subModels.grid,isConfigMode:r,heightMode:a,height:s,layoutProps:{colon:e,labelAlign:t,labelWidth:l,labelWrap:o,layout:n},actions:(0,A.jsx)(y.DndProvider,{children:(0,A.jsx)("div",{style:i?{pointerEvents:"none",opacity:.45}:void 0,children:(0,A.jsxs)(eu.A,{wrap:!0,children:[this.mapSubModels("actions",e=>{if(!e.hidden||r)return(0,A.jsx)(y.Droppable,{model:e,children:(0,A.jsx)(y.FlowModelRenderer,{model:e,showFlowSettings:{showBackground:!1,showBorder:!1,toolbarPosition:"above"},extraToolbarItems:[{key:"drag-handler",component:y.DragHandler,sort:1}]})},e.uid)}),this.renderConfigureActions()]})})})})}constructor(...e){super(...e),(0,K._)(this,"hadSingleRecordData",!1),(0,K._)(this,"hasMultiRefreshDispatched",!1),(0,K._)(this,"_defaultCustomModelClasses",{RecordActionGroupModel:"RecordActionGroupModel",DetailsItemModel:"DetailsItemModel",DetailsAssociationFieldGroupModel:"DetailsAssociationFieldGroupModel",DetailsCustomItemModel:"DetailsCustomItemModel"}),(0,K._)(this,"customModelClasses",{}),(0,K._)(this,"handlePageChange",async e=>{if(this.resource instanceof y.MultiRecordResource){let t=this.resource;t.setPage(e),t.loading=!0,await this.refresh()}})}}(0,K._)(li,"scene",e_.P.oam);let la=e=>{let{model:t,gridModel:l,isConfigMode:o,heightMode:n,height:r,layoutProps:i,actions:a}=e,s=(0,k.useRef)(null),d=(0,k.useRef)(null),u=(0,k.useRef)(null),c="specifyValue"===n||"fullHeight"===n,p=lr({heightMode:n,containerRef:s,actionsRef:d,paginationRef:u,deps:[r]});(0,k.useEffect)(()=>{var e,t;if(!l)return;let o=c?p:void 0;((null==(e=l.props)?void 0:e.height)!==o||(null==(t=l.props)?void 0:t.heightMode)!==n)&&l.setProps({height:o,heightMode:n})},[l,p,c,n]);let h=c?{display:"flex",flexDirection:"column",minHeight:0,height:"100%"}:void 0,m=c?{display:"flex",flexDirection:"column",minHeight:0,flex:1}:void 0;return(0,A.jsx)(tV.s2,{model:t,layoutProps:i,style:h,children:(0,A.jsxs)("div",{ref:s,style:m,children:[(0,A.jsx)("div",{ref:d,style:{textAlign:"right",lineHeight:"0px",paddingBottom:o&&t.context.themeToken.padding},children:a}),(0,A.jsx)(y.FlowModelRenderer,{model:l,showFlowSettings:!1},`${(null==l?void 0:l.uid)||"details-grid"}:${o?"design":"runtime"}`),(0,A.jsx)("div",{ref:u,children:t.renderPagination()})]})})};li.registerFlow({key:"detailsSettings",title:(0,y.tExpr)("Details settings"),sort:150,steps:{refresh:{async handler(e){if(!e.resource)throw Error("Resource is not initialized");await e.model.applySubModelsBeforeRenderFlows("grid")}},layout:{use:"layout",title:(0,y.tExpr)("Layout")},dataScope:{use:"dataScope"},defaultSorting:{use:"sortingRule",title:(0,y.tExpr)("Default sorting")},linkageRules:{use:"detailsFieldLinkageRules"}}}),li.registerFlow({key:"paginationChange",on:"paginationChange",steps:{blockLinkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"blockLinkageRules",flowKey:"cardSettings",stepKey:"linkageRules"}},fieldslinkageRulesRefresh:{use:"linkageRulesRefresh",defaultParams:{actionName:"detailsFieldLinkageRules",flowKey:"detailsSettings",stepKey:"linkageRules"}}}}),li.registerFlow({key:"initialPaginationChangeRefresh",sort:10001,steps:{refreshPaginationRelatedStates:{async handler(e){if(e.model.hidden||!e.model.isMultiRecordResource()||e.model.hasDispatchedMultiRefresh())return;let t=e.model.resource;if(!t)return;let l="manual"===(t.dataLoadingMode??t.loadingMode),o="function"==typeof t.hasActiveFilters&&t.hasActiveFilters();l&&!o&&await (0,tS.Xi)(e.model,"paginationChange")}}}}),li.define({label:(0,y.tExpr)("Details"),searchable:!0,searchPlaceholder:(0,y.tExpr)("Search"),createModelOptions:{use:"DetailsBlockModel",subModels:{grid:{use:"DetailsGridModel"}}},sort:350});class ls extends y.FlowModel{static defineChildren(e){let t=e.engine.filterModelClassByParent("CommonItemModel"),l=e.engine.filterModelClassByParent("DetailsCustomItemModel"),o=t=>Array.from(t.entries()).map(t=>{var l,o,n,r,i;let[a,s]=t,d="function"==typeof s.defineChildren||!!(null==(l=s.meta)?void 0:l.children),u={key:a,label:e.t(s.meta.label),sort:s.meta.sort??999,searchable:!!(null==(o=s.meta)?void 0:o.searchable),searchPlaceholder:null==(n=s.meta)?void 0:n.searchPlaceholder,hide:null==(r=s.meta)?void 0:r.hide};return d?u.children=e=>{var t;return"function"==typeof s.defineChildren?s.defineChildren(e):(null==(t=s.meta)?void 0:t.children)||[]}:u.createModelOptions=(null==(i=s.meta)?void 0:i.createModelOptions)||{use:a},u});return j().sortBy([...o(t),...o(l)],"sort")}}(0,K._)(ls,"renderMode",y.ModelRenderMode.RenderFunction),ls.define({hide:!0,label:(0,y.tExpr)("Others")});class ld extends eA{renderAddSubModelButton(){return this.context.flowSettingsEnabled?(0,A.jsx)(y.AddSubModelButton,{model:this,subModelKey:"items",subModelBaseClasses:[this.context.getModelClassName("DetailsItemModel"),this.context.getModelClassName("DetailsAssociationFieldGroupModel"),this.context.getModelClassName("DetailsCustomItemModel")].filter(Boolean),keepDropdownOpen:!0,children:(0,A.jsx)(y.FlowSettingsButton,{icon:(0,A.jsx)(tK.A,{}),children:this.translate("Fields")})}):null}render(){var e,t;let l=null==(e=this.props)?void 0:e.height,o=null==(t=this.props)?void 0:t.heightMode,n=this.context.themeToken,r=super.render();return"defaultHeight"===o?r:(0,A.jsx)("div",{style:{height:l,overflowY:"auto",marginLeft:`-${n.marginLG}px`,marginRight:`-${n.marginLG}px`,paddingLeft:`${n.marginLG}px`,paddingRight:`${n.marginLG}px`},children:r})}constructor(...e){super(...e),(0,K._)(this,"itemFallback",(0,A.jsx)(B.A.Input,{block:!0,size:"small",style:{marginBottom:"0.5rem"}})),(0,K._)(this,"itemSettingsMenuLevel",2),(0,K._)(this,"itemFlowSettings",{showBackground:!0,style:{top:-6,left:-6,right:-6,bottom:-6}}),(0,K._)(this,"dragOverlayConfig",{columnInsert:{before:{offsetTop:-6,height:24},after:{offsetTop:3,height:24}},columnEdge:{left:{offsetLeft:-5,width:24},right:{offsetLeft:8,width:24}},rowGap:{above:{offsetTop:-2,height:24},below:{offsetTop:-12,height:24}}})}}function lu(e,t){let{fieldUseModel:l,refreshTargets:o}=t,n=e=>Array.isArray(e)?e.map(e=>{let t={...e};if(t.children)if("function"==typeof t.children){let e=t.children;t.children=async t=>n(await e(t))}else Array.isArray(t.children)&&(t.children=n(t.children));if(t.createModelOptions){let e=t.createModelOptions;t.createModelOptions=async(t,o)=>{let n=await ("function"==typeof e?e(t,o):e);return n.subModels=n.subModels||{},n.subModels.field={...n.subModels.field||{},use:l},n},t.refreshTargets=t.refreshTargets||o}return t}):[];return n(e)}function lc(e,t,l){let{fieldUseModel:o,refreshTargets:n}=l,r=l.key??"js-association-fields",i=l.label??(0,y.tExpr)("Display association fields");return{key:r,type:"group",label:i,searchable:l.searchable??!0,searchPlaceholder:l.searchPlaceholder??(0,y.tExpr)("Search fields"),children:async e=>lu(await t(e),{fieldUseModel:o,refreshTargets:n})}}ld.registerFlow({key:"detailFieldGridSettings",steps:{grid:{handler(e,t){e.model.setProps("rowGap",0),e.model.setProps("colGap",16)}}}});class lp extends eo{}async function lh(e,t){var l;let{useModel:o,fieldUseModel:n,refreshTargets:r,associationPathName:i,associationProvider:a}=t,s=(0,y.buildWrapperFieldChildren)(e,{useModel:o,fieldUseModel:n,associationPathName:i,refreshTargets:r}),d=[],u=null==s||null==(l=s[0])?void 0:l.children;if(Array.isArray(u)&&(d=u),!a)return d;let c=await a(e);return Array.isArray(c)&&0!==c.length?[...d,lc(e,a,{fieldUseModel:n,refreshTargets:r})]:d}(0,K._)(lp,"itemModelName","FormItemModel");class lm extends ls{static defineChildren(e){return lh(e,{useModel:"DetailsItemModel",fieldUseModel:"JSFieldModel",refreshTargets:["DetailsItemModel"],associationProvider:e=>ll.defineChildren(e)})}}lm.define({label:(0,y.tExpr)("JS field"),searchable:!0,searchPlaceholder:(0,y.tExpr)("Search fields"),sort:110});class lf extends eO.o{}var lg=l(36492),lv=l(85196),ly=l(71500);class lb extends eO.o{constructor(...e){super(...e),(0,K._)(this,"operator","$eq"),(0,K._)(this,"updateAssociation",!0)}}lb.registerFlow({key:"AssociationFieldInit",sort:800,steps:{init:{async handler(e,t){if(e.model.updateAssociation){var l,o;let t=e.model.context.blockModel,n=null==t||null==(l=t.context)?void 0:l.resource,r=null==(o=e.model.parent)?void 0:o.fieldPath;n&&r&&n.addUpdateAssociationValues(r)}}},allowCreateCheck:{async handler(e){var t;let l=await e.aclCheck({dataSourceKey:e.collectionField.dataSourceKey,resourceName:null==(t=e.collectionField)?void 0:t.target,actionName:"create"});e.model.setProps({allowCreate:!!l})}}}});let lx=(e,t)=>e===t,lw=e=>{if(e&&"object"==typeof e){let t=e.data;return t&&"object"==typeof t?t:e}};function lS(e){return"string"==typeof e&&e?e:Array.isArray(e)&&1===e.length&&"string"==typeof e[0]?e[0]:void 0}function lM(e,t){var l;let o="string"==typeof(null==t||null==(l=t.titleCollectionField)?void 0:l.name)?t.titleCollectionField.name:void 0,n=lS(null==t?void 0:t.filterTargetKey)||"id",r="string"==typeof(null==e?void 0:e.value)&&e.value&&!lx(e.value,"value")?e.value:void 0,i="string"==typeof(null==e?void 0:e.label)&&e.label&&!lx(e.label,"label")?e.label:void 0,a=r||n;return{label:i||o||a,value:a}}function lF(e){var t,l,o,n,r,i;let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=!!a.navigation,d=e=>{if(Array.isArray(e))return e.filter(e=>"string"==typeof e&&!!e)},u=d(null==(l=e.view)||null==(t=l.inputArgs)?void 0:t.openerUids),c=d(a.openerUids),p=u||c||[];if(s)return(c||p).filter(Boolean);let h=null==(n=e.view)||null==(o=n.inputArgs)?void 0:o.viewUid,m=null==(i=e.model.context)||null==(r=i.inputArgs)?void 0:r.viewUid;return[...p,"string"==typeof h&&h?h:"string"==typeof m&&m?m:e.model.uid].filter(Boolean)}function lA(e){if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e;if(Array.isArray(e)){let t=e.map(e=>{if("string"==typeof e||"number"==typeof e||"boolean"==typeof e)return e;if(e&&"object"==typeof e){let t=e.label??e.name;if("string"==typeof t||"number"==typeof t||"boolean"==typeof t)return t}}).filter(e=>void 0!==e);return t.length?t.map(String).join(", "):void 0}if(e&&"object"==typeof e){let t=e.label??e.name;if("string"==typeof t||"number"==typeof t||"boolean"==typeof t)return t}}function lk(e){var t,l,o;let{option:n,fieldNames:r}=e,i=(0,y.useFlowModel)(),a=lw(n),s=lM(r,null==(t=i.context.collectionField)?void 0:t.targetCollection),d=i.subModels.field,u=lA(null==a?void 0:a[s.label])??lA(null==a?void 0:a.label)??lA(null==a?void 0:a[s.value]);if(!d)return(0,A.jsx)("span",{children:u??"N/A"});let c=String((null==a?void 0:a[s.value])??u??"association-option"),p=d.createFork({},c);p.context.defineProperty("record",{get:()=>a,cache:!1,meta:(0,y.createCurrentRecordMetaFactory)(p.context,()=>p.context.collection)});let h=null==(o=i.context.collectionField.targetCollection)||null==(l=o.getField)?void 0:l.call(o,s.label),m=h&&"function"==typeof h.getComponentProps?h.getComponentProps():{};p.setProps({value:u,clickToOpen:!1,...m});let f=null!=u&&""!==u?p.render():"N/A";return(0,A.jsx)("span",{style:{pointerEvents:"none"},children:f})}function lC(e,t){let l=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"record",n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];if(!e)return l?[]:void 0;let{value:r}=t||{},i=e=>"object"==typeof e&&null!==e,a=e=>{if(i(e))return{label:(0,A.jsx)(lk,{option:e,fieldNames:t}),value:e[r]}};if("value"===o){let t=e=>{if("object"==typeof e&&null!==e)return a(e);let t=n.find(t=>(null==t?void 0:t[r])===e);return t?a(t):{label:String(e),value:e}};return l?Array.isArray(e)?e.map(e=>t(e)).filter(Boolean):[]:Array.isArray(e)?t(e[0]):t(e)}if(l)return Array.isArray(e)?e.filter(i).map(a).filter(Boolean):[];if(Array.isArray(e)){let t=e[0];return i(t)?a(t):void 0}return i(e)?a(e):void 0}function lP(e,t,l){return(null==e?void 0:e.length)?e.map(e=>(0,P.omit)(e,"disabled","options","style")):l?Array.isArray(t)?t.filter(e=>"object"==typeof e&&null!==e):[]:t&&"object"==typeof t?[t]:[]}var lj=l(77577);let lI=(0,tI.AH)`
289
289
  div {
290
290
  white-space: nowrap !important;
291
291
  overflow: hidden;
@@ -956,55 +956,55 @@ ctx.render(<JsItem />);
956
956
  .ant-pagination-item-link {
957
957
  min-width: ${l}px;
958
958
  }
959
- `},r,a.createElement("div",{style:o},t)):r},m=(e,t)=>t?{...e,showTotal:!1,showSizeChanger:!1,showLessItems:!0,className:p(e.className,c())}:e},36098(e,t,l){l.d(t,{n:()=>n});var o=l(40532);let n=()=>(0,o.useFlowEngineContext)().app},99002(e,t,l){l.d(t,{n:()=>n});var o=l(36098);function n(e){return(0,o.n)().pm.get(e)}},65970(e,t,l){l.r(t),l.d(t,{EditFormModel:()=>eU.Y5n,linkageRulesRefresh:()=>eU.S3Z,filterFormDefaultValues:()=>eU.IBN,DisplayTimeFieldModel:()=>eU.$FU,FlowRoute:()=>eU.YmV,LinkActionModel:()=>eU.CII,RecordActionModel:()=>eU.LAC,UpdatedAtFieldInterface:()=>lo,buildRecordPickerParentItemContext:()=>eU.oM7,FormSubmitActionModel:()=>eU.u36,RootPageTabModel:()=>eU._$j,AIManager:()=>B,redirectToLegacySignin:()=>eT.BE,openViewFlow:()=>eU.gvx,toTreeSelectItems:()=>eU.Gap,InputFieldInterface:()=>tL,AppError:()=>L.uV,IconFieldInterface:()=>tO,UrlFieldInterface:()=>lr,blockHeight:()=>eU.Bum,PercentFieldInterface:()=>t4,GlobalThemeProvider:()=>N.U_,PluginSettingsTopbarActionModel:()=>eU.ESx,convertV2AdminPathToLegacy:()=>eT.Sx,UpdatedByFieldInterface:()=>ln,getDetailsItemValue:()=>eU.ROt,resolveCustomFieldOperatorList:()=>eU.eCD,DateFieldInterface:()=>ld,CreateFormModel:()=>eU.wLo,AdminLayoutComponent:()=>eU.V6y,FilterManager:()=>eU.qh$,findPrevSiblingRoute:()=>eU.Cuw,DisplayTitleFieldModel:()=>eU.mU7,useMobileLayout:()=>eU.mYX,M2MFieldInterface:()=>tH,useUIConfigurationPermissions:()=>eR.uM,SubTableFieldModel:()=>eU.mHU,AppMaintaining:()=>L.be,CreatedAtFieldInterface:()=>tR,EmailFieldInterface:()=>tN,PopupSubTableActionsColumnModel:()=>eU.FaR,PopupSubTableFormSubmitActionModel:()=>eU.spd,FormBlockModel:()=>eU.F4f,MockFlowModelRepository:()=>eU.WuM,BaseApplication:()=>ed,FilterBlockModel:()=>eU.v$f,FieldDeletePlaceholder:()=>eU.xIu,findNextSiblingRoute:()=>eU.Evi,DateTimeNoTzFilterFieldModel:()=>eU.e7h,icons:()=>L.Pt,CollectionSelectorFieldModel:()=>eU.Z0H,blockLinkageRules:()=>eU.aWb,CheckboxGroupFieldInterface:()=>tI,defaultTheme:()=>N.zQ,FilterFormActionGroupModel:()=>eU.dv2,collectCascadeHydrationCandidate:()=>eU.qlo,ObjectNester:()=>eU.Xmd,TableJSFieldItemModel:()=>eU._e9,DetailsAssociationFieldGroupModel:()=>eU.sD1,fieldLinkageRules:()=>eU.znN,mergePaginationClassName:()=>eU.M6q,RichTextFieldModel:()=>eU.DvX,FilterFormResetActionModel:()=>eU.zUb,UnitConversion:()=>eU.VPO,AdminLayoutModel:()=>eU.pXX,UserCenterTopbarActionModel:()=>eU.ccc,RefreshActionModel:()=>eU.n6C,buildInsertRouteSchema:()=>eU.QBt,linkageSetBlockProps:()=>eU.LFq,DisplayIconFieldModel:()=>eU.xEQ,CollectionBlockModel:()=>eU.tPG,DisplayJSONFieldModel:()=>eU.qPo,PopupActionModel:()=>eU.a6D,FieldOperatorSelect:()=>eU.T8$,ActionWithoutPermission:()=>eU._TB,NanoidFieldInterface:()=>la,O2MFieldInterface:()=>tQ,OBOFieldInterface:()=>t1,NocoBaseBuildInPluginV2:()=>tt,AdminLayoutMenuModelRenderer:()=>eU.xc1,ViewActionModel:()=>eU.v8l,SubTableColumnModel:()=>eU.WHj,CheckboxFieldInterface:()=>tj,FieldModel:()=>eU.oLV,O2OFieldInterface:()=>tZ,UUIDFieldInterface:()=>li,linkageSetDetailsFieldProps:()=>eU.KAX,resolveAdminLayoutMenuLink:()=>eU.fi1,FilterFormRecordSelectFieldModel:()=>eU.ZMt,getDefaultV2AdminRedirectPath:()=>eT.uk,CollectionFieldInterfaceManager:()=>em,customVariable:()=>eU.I6c,getQuickEditFieldProps:()=>eU.YXr,ACLRolesCheckProvider:()=>eR.rR,DisplayNumberFieldModel:()=>eU.LbM,EditFormContent:()=>eU.AV5,getMobileCompactPaginationClassName:()=>eU.NYj,RecordActionGroupModel:()=>eU.gk0,PageModel:()=>eU.XK0,BulkDeleteActionModel:()=>eU.Ni4,getValueWithIndex:()=>eU.kPK,JSItemActionModel:()=>eU.ymi,FormGridModel:()=>eU.Ybt,toToolsMap:()=>q,ChildPageTabModel:()=>eU.wW_,FilterItem:()=>eU.qi_,SystemSettingsSource:()=>eU.orA,transformNestedData:()=>eU.Anr,layout:()=>eU.Zpx,createCompactSimpleItemRender:()=>eU.hHg,AssociationFieldModel:()=>eU.bPr,ADMIN_SETTINGS_PATH:()=>eS.wq,ADMIN_SETTINGS_LAYOUT_MODEL_UID:()=>eU.OaU,ApplicationContext:()=>eD,UserCenterActionItemModel:()=>eU.ngq,MainPageModel:()=>eU.qir,Application:()=>eE,DisplayURLFieldModel:()=>eU.Vrl,LayoutContent:()=>eU.A14,RichTextField:()=>eU.OsV,numberFormat:()=>eU.jqd,FilterFormActionModel:()=>eU.cNN,getAllDataModels:()=>eU.w5F,JSFieldModel:()=>eU.P0,matchesRoutePath:()=>eU.Qb_,connectFields:()=>eU.KYF,GridModel:()=>eU.QuL,getUnknownCountPaginationTotal:()=>eU.SMJ,DisplaySubItemFieldModel:()=>eU.dhL,PluginManagerPage:()=>eU.ksX,ADMIN_SETTINGS_KEY:()=>eS.w$,UnixTimestampFieldInterface:()=>ls,compatOldTheme:()=>N.Ne,JSBlockModel:()=>eU.YJB,buildMenuTitleWithIcon:()=>eU.riZ,getAdminLayoutMenuMovePositionOptions:()=>eU.B82,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>eU.i6C,PercentInput:()=>eU.er5,AdminLayoutContent:()=>eU.xtQ,DisplaySubListFieldModel:()=>eU.k9Q,CollectionActionModel:()=>eU.UZR,injectRecordPickerPopupContext:()=>eU.gaO,editMarkdownFlow:()=>eU.uMh,getMenuCreationDefaultParams:()=>eU.y8o,AdminLayoutMenuItemRenderer:()=>eU.B_2,NBColorPicker:()=>eU.qtW,DisplayCheckboxFieldModel:()=>eU.v9U,SubTableRecordAction:()=>eU.sJA,operatorComponentProps:()=>eU.KHY,transformRowsToSingleColumn:()=>eU.vbm,RemoteFlowModelRenderer:()=>eU.zCA,UpdateRecordActionModel:()=>eU.MhO,getMenuCreationUiSchema:()=>eU._IX,findSettingsByName:()=>eU.R0X,FilterContent:()=>eU.oJ5,VariableFilterItem:()=>eU.Et2,AntdAppProvider:()=>D,FilterFormJSActionModel:()=>eU.t_n,AppNotFound:()=>L.bM,DefaultToolsManager:()=>$,LinkageFilterItem:()=>eU.Ru1,UserCenterSelectItemModel:()=>eU.FKm,TextAreaWithContextSelector:()=>eU.nap,CommonItemModel:()=>eU.Uhv,IntegerFieldInterface:()=>tV,FormComponent:()=>eU.s2f,RouteRepository:()=>z,TableCustomColumnModel:()=>eU.Fts,SubPageModel:()=>eU.RLu,customAlgorithm:()=>N.ze,customizeFilterRender:()=>eU.wUQ,registerIcons:()=>L.K1,FilterFormCustomRecordSelectFieldModel:()=>eU.udY,DisplaySubTableFieldModel:()=>eU.m5p,UIEditorTopbarActionModel:()=>eU.h2d,PluginSettingsManager:()=>eS.mz,SelectFieldModel:()=>eU.CCB,UserCenterItemModel:()=>eU.np$,findFirstInternalSettingsPage:()=>eU.X2M,AddChildActionModel:()=>eU.lcp,OHOFieldInterface:()=>t0,PopupSubTableEditActionModel:()=>eU.oIl,linkageRunjs:()=>eU.Myf,RootPageModel:()=>eU.T6P,getAdminLayoutMenuVirtualPath:()=>eU.Px_,DateTimeTzPicker:()=>eU.mUg,ColorFieldInterface:()=>t_,RecordSelectFieldModel:()=>eU.BgT,resolveAdminLayoutMenuDragMoveOptionsFromEvent:()=>eU.eLO,AppSpin:()=>L.gv,PercentFieldModel:()=>eU.v6e,fixed:()=>eU.Zu2,formatNumber:()=>eU.ZVp,FormJSFieldItemModel:()=>eU.kN,JSEditableFieldModel:()=>eU.Nxx,findFirstAccessiblePageRoute:()=>eU.MMn,getCurrentV2RedirectPath:()=>eT.vi,languageCodes:()=>eK.A,useAclSnippets:()=>eR.K3,DisplayTextFieldModel:()=>eU.Tuv,PluginManager:()=>ew,ApplicationModel:()=>ep,dataScope:()=>eU.fAh,buildRecordPickerPopupContextInputArgs:()=>eU.S5n,ActionModel:()=>eU.S0L,DateTimeNoTzPicker:()=>eU.pVr,recalculateGridSizes:()=>eU.aDm,DateOnlyFilterFieldModel:()=>eU.K4N,toOperatorSelectOptions:()=>eU.kA1,PhoneFieldInterface:()=>t5,QUICK_EDIT_FORM_MAX_HEIGHT:()=>eU.x_D,JsonFieldInterface:()=>tK,CodeEditorExtension:()=>eU.o8y,DateTimeNoTzFieldModel:()=>eU.cPq,findOptionPathByTk:()=>eU.s5W,titleField:()=>eU.Pqd,UserCenterTextItemModel:()=>eU.ysz,FilterGroup:()=>eU.I8R,USER_CENTER_ACTION_ID:()=>eU.Bnh,diagnoseRunJS:()=>eU.fLT,DisplayHtmlFieldModel:()=>eU.vrA,useRouter:()=>ez,aclCheck:()=>eU.VGp,SubFormListFieldModel:()=>eU.sW6,JsonInput:()=>eU.fnr,FilterFormSubmitActionModel:()=>eU.y2s,getAdminLayoutMenuInitializerButton:()=>eU.Tnx,TableBlockModel:()=>eU.zDb,getMenuItems:()=>eU.gLn,BlockSceneEnum:()=>eU.PW6,FormBlockContent:()=>eU.JUj,JSFormActionModel:()=>eU.l5h,getPinnedPluginListKeys:()=>e_.k,reconcileAdminLayoutMenuItems:()=>eU.tSM,FilterFormCollapseActionModel:()=>eU.D1b,useACLRoleContext:()=>eR.v6,replaceRouteParams:()=>eU.uTv,Plugin:()=>eL,ResetThemeTokenAndKeepAlgorithm:()=>eU.fCM,normalizeAdminLayoutMenuLegacyVariables:()=>eU.ux6,PinnedPluginListLite:()=>eU.Kgy,useRoleRecheck:()=>eR.N5,MobileMenuControlContext:()=>eU.Qt8,CustomWidth:()=>eU.K$V,CollectionSelectFieldInterface:()=>tE,BlockGridModel:()=>eU.LaP,NocoBaseBuildInPlugin:()=>tt,AdminLayoutRouteCoordinator:()=>eU.N9e,CollectionFieldInterface:()=>tP,filterRenderableSettings:()=>eU.Ui7,TableActionsColumnModel:()=>eU.B6V,runjs:()=>eU.ZCq,resolveAdminRouteRuntimeTarget:()=>eU.YjI,ACLContext:()=>eR.w0,buildLinkSettingSchema:()=>eU.qNx,subFormFieldLinkageRules:()=>eU.D2p,subFormLinkageSetFieldProps:()=>eU.gbJ,RouteModel:()=>eU.j0c,IdFieldInterface:()=>t$,FormCustomItemModel:()=>eU.wBN,CheckboxGroupFieldModel:()=>eU.MeX,MENU_TYPE_OPTIONS:()=>eU.o2o,AdminSettingsLayout:()=>eU.djK,TableColumnModel:()=>eU.ivU,required:()=>eU.mw3,PopupCollectionActionModel:()=>eU.YXI,FilterFormCustomItemModel:()=>eU.I6Z,MAX_MESSAGE_CHARS:()=>eU.hPI,BlankComponent:()=>L.ct,JSItemModel:()=>eU.qJ3,SkeletonFallback:()=>eU.KSc,FormActionModel:()=>eU.sEB,validation:()=>eU.Eq4,applyMobilePaginationProps:()=>eU.hOt,PopupSubTableFieldModel:()=>eU.Uk$,DeleteActionModel:()=>eU.rvE,shouldRenderIconInTitle:()=>eU.Ucr,CreatedByFieldInterface:()=>tT,CascadeSelectListFieldModel:()=>eU.W4I,NumberFieldInterface:()=>tX,DateTimeTzFieldModel:()=>eU.zqF,PLUGIN_MANAGER_SETTING_NAME:()=>eU.BmO,isFilterValueEmpty:()=>eU.tUI,BasePageTabModel:()=>eU.BpQ,pattern:()=>eU.T16,AssociationFieldGroupModel:()=>eU.mw1,DetailsBlockModel:()=>eU.PU8,JSActionModel:()=>eU.Hn2,Icon:()=>L.In,WebSocketClient:()=>K,useApp:()=>E.n,getUniqueKeyFromCollection:()=>tW,FilterFormItemModel:()=>eU.vIF,CheckboxFieldModel:()=>eU.zFh,navigateToURL:()=>eU.isP,resolveLegacySigninRedirect:()=>eT.M4,DisplayDateTimeFieldModel:()=>eU.Ra0,formatRunJSPreviewMessage:()=>eU.byO,IconFieldModel:()=>eU.rpg,ActionSceneEnum:()=>eU.s5y,JSRecordActionModel:()=>eU.uVo,SnowflakeIdFieldInterface:()=>t9,formAssignRules:()=>eU.dWc,ChildPageModel:()=>eU.JvK,resolveDefaultCustomFieldOperator:()=>eU.T9,SYSTEM_SETTINGS_SETTING_NAME:()=>eU.jmZ,TimeFieldModel:()=>eU.Fy3,ActionGroupModel:()=>eU.xdz,createDefaultCollectionBlockTitle:()=>eU.lrV,AssignFormItemModel:()=>eU.saj,toViewStack:()=>eU.Hwd,SourceCascader:()=>eU.AvD,FilterFormCustomFieldModel:()=>eU.xz3,FilterFormFieldModel:()=>eU.Mf0,LinkToFieldInterface:()=>tU,createSettingsPathMap:()=>eU.nCj,dateTimeFormat:()=>eU.LE6,useACLContext:()=>eR.bq,PasswordFieldInterface:()=>t2,InputNumberField:()=>eU.mLo,displayFieldComponent:()=>eU.kkB,CodeEditor:()=>eU.BYM,SNIPPET_PREFIX:()=>eS.tJ,MarkdownFieldInterface:()=>tG,RadioGroupFieldInterface:()=>t8,RecordPickerContent:()=>eU.vy4,M2OFieldInterface:()=>tY,actionLinkageRules:()=>eU.tQF,TableSelectModel:()=>eU.mSG,afterSuccess:()=>eU.mKE,PopupSubTableFormActionGroupModel:()=>eU.d13,matchSettingsRoute:()=>eU.CM3,InputFieldModel:()=>eU.mRH,filterVisibleSettings:()=>eU.eDc,showMessage:()=>eU.rGX,BlockModel:()=>eU.zgg,resolveAdminLayoutMenuDragMoveOptions:()=>eU.OtO,PopupSubTableRemoveActionModel:()=>eU.Ie6,GRID_FLOW_KEY:()=>eU.cEK,JSColumnModel:()=>eU.l2T,FormAssociationItemModel:()=>eU.ur8,PopupSubTableActionGroupModel:()=>eU.HJv,showNotification:()=>eU.Dsh,RouterManager:()=>ek,GRID_STEP:()=>eU._UX,FilterFormBlockModel:()=>eU.D8m,FilterFormGridModel:()=>eU.www,confirm:()=>eU.lJp,registerIcon:()=>L.pU,toRouterNavigationPath:()=>eU.Yjq,SubFormFieldModel:()=>eU.Imp,MarkdownItemModel:()=>eU.qqP,openAdminLayoutMenuLink:()=>eU.jjG,DatetimeFieldInterface:()=>tD,JSCollectionActionModel:()=>eU.dIg,addCustomAlgorithmToTheme:()=>N._l,FormAssociationFieldGroupModel:()=>eU.EcU,TableoidFieldInterface:()=>le,linkageSetActionProps:()=>eU.mQM,setTargetDataScope:()=>eU.mp5,TextareaFieldInterface:()=>lt,CreateContent:()=>eU.G9F,linkageAssignField:()=>eU.fMK,AdminLayoutMenuItemModel:()=>eU.xFY,buildLegacySigninHref:()=>eT.LQ,AssignFormGridModel:()=>eU.dpX,createMockClient:()=>eq,CollectionActionGroupModel:()=>eU.zsf,AddNewActionModel:()=>eU.to1,DetailsGridModel:()=>eU.ql0,DateOnlyPicker:()=>eU.xkv,SelectFieldInterface:()=>t6,DateTimeFilterFieldModel:()=>eU.foc,TimeFieldInterface:()=>ll,dispatchEventDeep:()=>eU.Xig,getDefaultOperator:()=>eU.aqk,usePlugin:()=>eV.n,DetailsJSFieldItemModel:()=>eU.ODR,DataBlockModel:()=>eU.RBt,SubTableFieldInterface:()=>t7,overflowMode:()=>eU.COB,useSystemSettings:()=>eU.e6V,NumberFieldModel:()=>eU.r39,DividerItemModel:()=>eU.upH,FieldModelSelect:()=>eU.khg,DateTimeTzFilterFieldModel:()=>eU.pKk,JsonFieldModel:()=>eU.mNj,PopupSubTableFormModel:()=>eU.iT0,getMenuEditDefaultParams:()=>eU.n8$,DetailsItemModel:()=>eU.ZjK,fieldComponent:()=>eU.e7P,DisplayPasswordFieldModel:()=>eU.$T1,PinnedPluginListContext:()=>e_.D,RichTextFieldInterface:()=>t3,useGlobalTheme:()=>N.my,SystemSettingsPage:()=>eU.WzN,TableAssociationFieldGroupModel:()=>eU.GJ1,dataLoadingMode:()=>eU.kbf,buildDisplayPathFromValue:()=>eU.d6j,FlowPage:()=>eU.KTk,subFormLinkageAssignField:()=>eU.zTu,EditActionModel:()=>eU.m2W,ExpandCollapseActionModel:()=>eU.hCX,createInsertMenuStep:()=>eU.FWr,MultipleSelectFieldInterface:()=>tJ,buildMenuBasicSchema:()=>eU.ThI,getAdminLayoutModel:()=>eU.t_Y,PasswordFieldModel:()=>eU.dWg,aclCheckRefresh:()=>eU.Yh4,defaultOperator:()=>eU.CDb,DateOnlyFieldModel:()=>eU.s2k,getDefaultSettingsPath:()=>eU.C9C,hasIcon:()=>L.cE,joinUrlSearch:()=>eU.wqT,markCascadeHydrationDone:()=>eU.Ck8,ColorFieldModel:()=>eU.t4X,FormActionGroupModel:()=>eU.R8A,DetailsCustomItemModel:()=>eU.ivi,openView:()=>eU.e8C,InternalAdminSettingsLayout:()=>eU.Q7G,PageTabModel:()=>eU.sYw,RadioGroupFieldModel:()=>eU.wwh,AppMaintainingDialog:()=>L.tp,PluginFlowEngine:()=>eU.s$$,renderMode:()=>eU.IAc,AssignFormModel:()=>eU.Xw5,FilterActionModel:()=>eU.omq,ADMIN_LAYOUT_MODEL_UID:()=>eU.Mxl,FlowModelRepository:()=>eU.cYG,TopbarActionModel:()=>eU.k9E,getDisplayNumber:()=>eU.cm5,RouterContextCleaner:()=>L.PK,CascadeSelectInnerFieldModel:()=>eU.mzg,ClickableFieldModel:()=>eU.upW,CascadeSelectFieldModel:()=>eU.sJK,createAclSnippetAllow:()=>eR.rN,collectAssociationHydrationCandidates:()=>eU.ULH,getSimpleModePaginationClassName:()=>eU.HZo,linkageSetFieldProps:()=>eU.uFv,TextareaFieldModel:()=>eU.AMH,previewRunJS:()=>eU.zA_,FormModel:()=>eU.mOW,getTopbarPluginSettingsItems:()=>eU.XCP,VariableFieldFormModel:()=>eU.m$$,DisplayColorFieldModel:()=>eU.Ppd,detailsFieldLinkageRules:()=>eU.Dhs,RecordPickerFieldModel:()=>eU.J$w,hasOwnSettingsPage:()=>eU.lv4,useApplications:()=>eU.HWn,DisplayPercentFieldModel:()=>eU.hNf,QuickEditFormModel:()=>eU.biS,sortingRule:()=>eU.hsC,AdminSettingsLayoutModel:()=>eU.C_u,HeaderContext:()=>eU.B94,QUICK_EDIT_MARKDOWN_HEIGHT:()=>eU.vW_,sortTopLevelSettings:()=>eU.p$W,useCurrentRoleMode:()=>eR.GL,DatetimeNoTzFieldInterface:()=>lu,insertRouteSchema:()=>eU.eDQ,FormItemModel:()=>eU.JgE,refreshTargetBlocks:()=>eU.J9o,DisplayEnumFieldModel:()=>eU.VcJ});var o={};l.r(o),l.d(o,{ACLContext:()=>eR.w0,ACLRolesCheckProvider:()=>eR.rR,ADMIN_LAYOUT_MODEL_UID:()=>eU.Mxl,ADMIN_SETTINGS_KEY:()=>eS.w$,ADMIN_SETTINGS_LAYOUT_MODEL_UID:()=>eU.OaU,ADMIN_SETTINGS_PATH:()=>eS.wq,AIManager:()=>B,ActionGroupModel:()=>eU.xdz,ActionModel:()=>eU.S0L,ActionSceneEnum:()=>eU.s5y,ActionWithoutPermission:()=>eU._TB,AddChildActionModel:()=>eU.lcp,AddNewActionModel:()=>eU.to1,AdminLayoutComponent:()=>eU.V6y,AdminLayoutContent:()=>eU.xtQ,AdminLayoutMenuItemModel:()=>eU.xFY,AdminLayoutMenuItemRenderer:()=>eU.B_2,AdminLayoutMenuModelRenderer:()=>eU.xc1,AdminLayoutModel:()=>eU.pXX,AdminLayoutRouteCoordinator:()=>eU.N9e,AdminSettingsLayout:()=>eU.djK,AdminSettingsLayoutModel:()=>eU.C_u,AntdAppProvider:()=>D,AppError:()=>L.uV,AppMaintaining:()=>L.be,AppMaintainingDialog:()=>L.tp,AppNotFound:()=>L.bM,AppSpin:()=>L.gv,Application:()=>eE,ApplicationContext:()=>eD,ApplicationModel:()=>ep,AssignFormGridModel:()=>eU.dpX,AssignFormItemModel:()=>eU.saj,AssignFormModel:()=>eU.Xw5,AssociationFieldGroupModel:()=>eU.mw1,AssociationFieldModel:()=>eU.bPr,BaseApplication:()=>ed,BasePageTabModel:()=>eU.BpQ,BlankComponent:()=>L.ct,BlockGridModel:()=>eU.LaP,BlockModel:()=>eU.zgg,BlockSceneEnum:()=>eU.PW6,BulkDeleteActionModel:()=>eU.Ni4,CascadeSelectFieldModel:()=>eU.sJK,CascadeSelectInnerFieldModel:()=>eU.mzg,CascadeSelectListFieldModel:()=>eU.W4I,CheckboxFieldInterface:()=>tj,CheckboxFieldModel:()=>eU.zFh,CheckboxGroupFieldInterface:()=>tI,CheckboxGroupFieldModel:()=>eU.MeX,ChildPageModel:()=>eU.JvK,ChildPageTabModel:()=>eU.wW_,ClickableFieldModel:()=>eU.upW,CodeEditor:()=>eU.BYM,CodeEditorExtension:()=>eU.o8y,CollectionActionGroupModel:()=>eU.zsf,CollectionActionModel:()=>eU.UZR,CollectionBlockModel:()=>eU.tPG,CollectionFieldInterface:()=>tP,CollectionFieldInterfaceManager:()=>em,CollectionSelectFieldInterface:()=>tE,CollectionSelectorFieldModel:()=>eU.Z0H,ColorFieldInterface:()=>t_,ColorFieldModel:()=>eU.t4X,CommonItemModel:()=>eU.Uhv,CreateContent:()=>eU.G9F,CreateFormModel:()=>eU.wLo,CreatedAtFieldInterface:()=>tR,CreatedByFieldInterface:()=>tT,CustomWidth:()=>eU.K$V,DataBlockModel:()=>eU.RBt,DateFieldInterface:()=>ld,DateOnlyFieldModel:()=>eU.s2k,DateOnlyFilterFieldModel:()=>eU.K4N,DateOnlyPicker:()=>eU.xkv,DateTimeFilterFieldModel:()=>eU.foc,DateTimeNoTzFieldModel:()=>eU.cPq,DateTimeNoTzFilterFieldModel:()=>eU.e7h,DateTimeNoTzPicker:()=>eU.pVr,DateTimeTzFieldModel:()=>eU.zqF,DateTimeTzFilterFieldModel:()=>eU.pKk,DateTimeTzPicker:()=>eU.mUg,DatetimeFieldInterface:()=>tD,DatetimeNoTzFieldInterface:()=>lu,DefaultToolsManager:()=>$,DeleteActionModel:()=>eU.rvE,DetailsAssociationFieldGroupModel:()=>eU.sD1,DetailsBlockModel:()=>eU.PU8,DetailsCustomItemModel:()=>eU.ivi,DetailsGridModel:()=>eU.ql0,DetailsItemModel:()=>eU.ZjK,DetailsJSFieldItemModel:()=>eU.ODR,DisplayCheckboxFieldModel:()=>eU.v9U,DisplayColorFieldModel:()=>eU.Ppd,DisplayDateTimeFieldModel:()=>eU.Ra0,DisplayEnumFieldModel:()=>eU.VcJ,DisplayHtmlFieldModel:()=>eU.vrA,DisplayIconFieldModel:()=>eU.xEQ,DisplayJSONFieldModel:()=>eU.qPo,DisplayNumberFieldModel:()=>eU.LbM,DisplayPasswordFieldModel:()=>eU.$T1,DisplayPercentFieldModel:()=>eU.hNf,DisplaySubItemFieldModel:()=>eU.dhL,DisplaySubListFieldModel:()=>eU.k9Q,DisplaySubTableFieldModel:()=>eU.m5p,DisplayTextFieldModel:()=>eU.Tuv,DisplayTimeFieldModel:()=>eU.$FU,DisplayTitleFieldModel:()=>eU.mU7,DisplayURLFieldModel:()=>eU.Vrl,DividerItemModel:()=>eU.upH,EditActionModel:()=>eU.m2W,EditFormContent:()=>eU.AV5,EditFormModel:()=>eU.Y5n,EmailFieldInterface:()=>tN,ExpandCollapseActionModel:()=>eU.hCX,FieldDeletePlaceholder:()=>eU.xIu,FieldModel:()=>eU.oLV,FieldModelSelect:()=>eU.khg,FieldOperatorSelect:()=>eU.T8$,FilterActionModel:()=>eU.omq,FilterBlockModel:()=>eU.v$f,FilterContent:()=>eU.oJ5,FilterFormActionGroupModel:()=>eU.dv2,FilterFormActionModel:()=>eU.cNN,FilterFormBlockModel:()=>eU.D8m,FilterFormCollapseActionModel:()=>eU.D1b,FilterFormCustomFieldModel:()=>eU.xz3,FilterFormCustomItemModel:()=>eU.I6Z,FilterFormCustomRecordSelectFieldModel:()=>eU.udY,FilterFormFieldModel:()=>eU.Mf0,FilterFormGridModel:()=>eU.www,FilterFormItemModel:()=>eU.vIF,FilterFormJSActionModel:()=>eU.t_n,FilterFormRecordSelectFieldModel:()=>eU.ZMt,FilterFormResetActionModel:()=>eU.zUb,FilterFormSubmitActionModel:()=>eU.y2s,FilterGroup:()=>eU.I8R,FilterItem:()=>eU.qi_,FilterManager:()=>eU.qh$,FlowModelRepository:()=>eU.cYG,FlowPage:()=>eU.KTk,FlowRoute:()=>eU.YmV,FormActionGroupModel:()=>eU.R8A,FormActionModel:()=>eU.sEB,FormAssociationFieldGroupModel:()=>eU.EcU,FormAssociationItemModel:()=>eU.ur8,FormBlockContent:()=>eU.JUj,FormBlockModel:()=>eU.F4f,FormComponent:()=>eU.s2f,FormCustomItemModel:()=>eU.wBN,FormGridModel:()=>eU.Ybt,FormItemModel:()=>eU.JgE,FormJSFieldItemModel:()=>eU.kN,FormModel:()=>eU.mOW,FormSubmitActionModel:()=>eU.u36,GRID_FLOW_KEY:()=>eU.cEK,GRID_STEP:()=>eU._UX,GlobalThemeProvider:()=>N.U_,GridModel:()=>eU.QuL,HeaderContext:()=>eU.B94,Icon:()=>L.In,IconFieldInterface:()=>tO,IconFieldModel:()=>eU.rpg,IdFieldInterface:()=>t$,InputFieldInterface:()=>tL,InputFieldModel:()=>eU.mRH,InputNumberField:()=>eU.mLo,IntegerFieldInterface:()=>tV,InternalAdminSettingsLayout:()=>eU.Q7G,JSActionModel:()=>eU.Hn2,JSBlockModel:()=>eU.YJB,JSCollectionActionModel:()=>eU.dIg,JSColumnModel:()=>eU.l2T,JSEditableFieldModel:()=>eU.Nxx,JSFieldModel:()=>eU.P0,JSFormActionModel:()=>eU.l5h,JSItemActionModel:()=>eU.ymi,JSItemModel:()=>eU.qJ3,JSRecordActionModel:()=>eU.uVo,JsonFieldInterface:()=>tK,JsonFieldModel:()=>eU.mNj,JsonInput:()=>eU.fnr,LayoutContent:()=>eU.A14,LinkActionModel:()=>eU.CII,LinkToFieldInterface:()=>tU,LinkageFilterItem:()=>eU.Ru1,M2MFieldInterface:()=>tH,M2OFieldInterface:()=>tY,MAX_MESSAGE_CHARS:()=>eU.hPI,MENU_TYPE_OPTIONS:()=>eU.o2o,MainPageModel:()=>eU.qir,MarkdownFieldInterface:()=>tG,MarkdownItemModel:()=>eU.qqP,MobileMenuControlContext:()=>eU.Qt8,MockFlowModelRepository:()=>eU.WuM,MultipleSelectFieldInterface:()=>tJ,NBColorPicker:()=>eU.qtW,NanoidFieldInterface:()=>la,NocoBaseBuildInPlugin:()=>tt,NocoBaseBuildInPluginV2:()=>tt,NumberFieldInterface:()=>tX,NumberFieldModel:()=>eU.r39,O2MFieldInterface:()=>tQ,O2OFieldInterface:()=>tZ,OBOFieldInterface:()=>t1,OHOFieldInterface:()=>t0,ObjectNester:()=>eU.Xmd,PLUGIN_MANAGER_SETTING_NAME:()=>eU.BmO,PageModel:()=>eU.XK0,PageTabModel:()=>eU.sYw,PasswordFieldInterface:()=>t2,PasswordFieldModel:()=>eU.dWg,PercentFieldInterface:()=>t4,PercentFieldModel:()=>eU.v6e,PercentInput:()=>eU.er5,PhoneFieldInterface:()=>t5,PinnedPluginListContext:()=>e_.D,PinnedPluginListLite:()=>eU.Kgy,Plugin:()=>eL,PluginFlowEngine:()=>eU.s$$,PluginManager:()=>ew,PluginManagerPage:()=>eU.ksX,PluginSettingsManager:()=>eS.mz,PluginSettingsTopbarActionModel:()=>eU.ESx,PopupActionModel:()=>eU.a6D,PopupCollectionActionModel:()=>eU.YXI,PopupSubTableActionGroupModel:()=>eU.HJv,PopupSubTableActionsColumnModel:()=>eU.FaR,PopupSubTableEditActionModel:()=>eU.oIl,PopupSubTableFieldModel:()=>eU.Uk$,PopupSubTableFormActionGroupModel:()=>eU.d13,PopupSubTableFormModel:()=>eU.iT0,PopupSubTableFormSubmitActionModel:()=>eU.spd,PopupSubTableRemoveActionModel:()=>eU.Ie6,QUICK_EDIT_FORM_MAX_HEIGHT:()=>eU.x_D,QUICK_EDIT_MARKDOWN_HEIGHT:()=>eU.vW_,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>eU.i6C,QuickEditFormModel:()=>eU.biS,RadioGroupFieldInterface:()=>t8,RadioGroupFieldModel:()=>eU.wwh,RecordActionGroupModel:()=>eU.gk0,RecordActionModel:()=>eU.LAC,RecordPickerContent:()=>eU.vy4,RecordPickerFieldModel:()=>eU.J$w,RecordSelectFieldModel:()=>eU.BgT,RefreshActionModel:()=>eU.n6C,RemoteFlowModelRenderer:()=>eU.zCA,ResetThemeTokenAndKeepAlgorithm:()=>eU.fCM,RichTextField:()=>eU.OsV,RichTextFieldInterface:()=>t3,RichTextFieldModel:()=>eU.DvX,RootPageModel:()=>eU.T6P,RootPageTabModel:()=>eU._$j,RouteModel:()=>eU.j0c,RouteRepository:()=>z,RouterContextCleaner:()=>L.PK,RouterManager:()=>ek,SNIPPET_PREFIX:()=>eS.tJ,SYSTEM_SETTINGS_SETTING_NAME:()=>eU.jmZ,SelectFieldInterface:()=>t6,SelectFieldModel:()=>eU.CCB,SkeletonFallback:()=>eU.KSc,SnowflakeIdFieldInterface:()=>t9,SourceCascader:()=>eU.AvD,SubFormFieldModel:()=>eU.Imp,SubFormListFieldModel:()=>eU.sW6,SubPageModel:()=>eU.RLu,SubTableColumnModel:()=>eU.WHj,SubTableFieldInterface:()=>t7,SubTableFieldModel:()=>eU.mHU,SubTableRecordAction:()=>eU.sJA,SystemSettingsPage:()=>eU.WzN,SystemSettingsSource:()=>eU.orA,TableActionsColumnModel:()=>eU.B6V,TableAssociationFieldGroupModel:()=>eU.GJ1,TableBlockModel:()=>eU.zDb,TableColumnModel:()=>eU.ivU,TableCustomColumnModel:()=>eU.Fts,TableJSFieldItemModel:()=>eU._e9,TableSelectModel:()=>eU.mSG,TableoidFieldInterface:()=>le,TextAreaWithContextSelector:()=>eU.nap,TextareaFieldInterface:()=>lt,TextareaFieldModel:()=>eU.AMH,TimeFieldInterface:()=>ll,TimeFieldModel:()=>eU.Fy3,TopbarActionModel:()=>eU.k9E,UIEditorTopbarActionModel:()=>eU.h2d,USER_CENTER_ACTION_ID:()=>eU.Bnh,UUIDFieldInterface:()=>li,UnitConversion:()=>eU.VPO,UnixTimestampFieldInterface:()=>ls,UpdateRecordActionModel:()=>eU.MhO,UpdatedAtFieldInterface:()=>lo,UpdatedByFieldInterface:()=>ln,UrlFieldInterface:()=>lr,UserCenterActionItemModel:()=>eU.ngq,UserCenterItemModel:()=>eU.np$,UserCenterSelectItemModel:()=>eU.FKm,UserCenterTextItemModel:()=>eU.ysz,UserCenterTopbarActionModel:()=>eU.ccc,VariableFieldFormModel:()=>eU.m$$,VariableFilterItem:()=>eU.Et2,ViewActionModel:()=>eU.v8l,WebSocketClient:()=>K,aclCheck:()=>eU.VGp,aclCheckRefresh:()=>eU.Yh4,actionLinkageRules:()=>eU.tQF,addCustomAlgorithmToTheme:()=>N._l,afterSuccess:()=>eU.mKE,applyMobilePaginationProps:()=>eU.hOt,blockHeight:()=>eU.Bum,blockLinkageRules:()=>eU.aWb,buildDisplayPathFromValue:()=>eU.d6j,buildInsertRouteSchema:()=>eU.QBt,buildLegacySigninHref:()=>eT.LQ,buildLinkSettingSchema:()=>eU.qNx,buildMenuBasicSchema:()=>eU.ThI,buildMenuTitleWithIcon:()=>eU.riZ,buildRecordPickerParentItemContext:()=>eU.oM7,buildRecordPickerPopupContextInputArgs:()=>eU.S5n,collectAssociationHydrationCandidates:()=>eU.ULH,collectCascadeHydrationCandidate:()=>eU.qlo,compatOldTheme:()=>N.Ne,confirm:()=>eU.lJp,connectFields:()=>eU.KYF,convertV2AdminPathToLegacy:()=>eT.Sx,createAclSnippetAllow:()=>eR.rN,createCompactSimpleItemRender:()=>eU.hHg,createDefaultCollectionBlockTitle:()=>eU.lrV,createInsertMenuStep:()=>eU.FWr,createMockClient:()=>eq,createSettingsPathMap:()=>eU.nCj,customAlgorithm:()=>N.ze,customVariable:()=>eU.I6c,customizeFilterRender:()=>eU.wUQ,dataLoadingMode:()=>eU.kbf,dataScope:()=>eU.fAh,dateTimeFormat:()=>eU.LE6,defaultOperator:()=>eU.CDb,defaultTheme:()=>N.zQ,detailsFieldLinkageRules:()=>eU.Dhs,diagnoseRunJS:()=>eU.fLT,dispatchEventDeep:()=>eU.Xig,displayFieldComponent:()=>eU.kkB,editMarkdownFlow:()=>eU.uMh,fieldComponent:()=>eU.e7P,fieldLinkageRules:()=>eU.znN,filterFormDefaultValues:()=>eU.IBN,filterRenderableSettings:()=>eU.Ui7,filterVisibleSettings:()=>eU.eDc,findFirstAccessiblePageRoute:()=>eU.MMn,findFirstInternalSettingsPage:()=>eU.X2M,findNextSiblingRoute:()=>eU.Evi,findOptionPathByTk:()=>eU.s5W,findPrevSiblingRoute:()=>eU.Cuw,findSettingsByName:()=>eU.R0X,fixed:()=>eU.Zu2,formAssignRules:()=>eU.dWc,formatNumber:()=>eU.ZVp,formatRunJSPreviewMessage:()=>eU.byO,getAdminLayoutMenuInitializerButton:()=>eU.Tnx,getAdminLayoutMenuMovePositionOptions:()=>eU.B82,getAdminLayoutMenuVirtualPath:()=>eU.Px_,getAdminLayoutModel:()=>eU.t_Y,getAllDataModels:()=>eU.w5F,getCurrentV2RedirectPath:()=>eT.vi,getDefaultOperator:()=>eU.aqk,getDefaultSettingsPath:()=>eU.C9C,getDefaultV2AdminRedirectPath:()=>eT.uk,getDetailsItemValue:()=>eU.ROt,getDisplayNumber:()=>eU.cm5,getMenuCreationDefaultParams:()=>eU.y8o,getMenuCreationUiSchema:()=>eU._IX,getMenuEditDefaultParams:()=>eU.n8$,getMenuItems:()=>eU.gLn,getMobileCompactPaginationClassName:()=>eU.NYj,getPinnedPluginListKeys:()=>e_.k,getQuickEditFieldProps:()=>eU.YXr,getSimpleModePaginationClassName:()=>eU.HZo,getTopbarPluginSettingsItems:()=>eU.XCP,getUniqueKeyFromCollection:()=>tW,getUnknownCountPaginationTotal:()=>eU.SMJ,getValueWithIndex:()=>eU.kPK,hasIcon:()=>L.cE,hasOwnSettingsPage:()=>eU.lv4,icons:()=>L.Pt,injectRecordPickerPopupContext:()=>eU.gaO,insertRouteSchema:()=>eU.eDQ,isFilterValueEmpty:()=>eU.tUI,joinUrlSearch:()=>eU.wqT,languageCodes:()=>eK.A,layout:()=>eU.Zpx,linkageAssignField:()=>eU.fMK,linkageRulesRefresh:()=>eU.S3Z,linkageRunjs:()=>eU.Myf,linkageSetActionProps:()=>eU.mQM,linkageSetBlockProps:()=>eU.LFq,linkageSetDetailsFieldProps:()=>eU.KAX,linkageSetFieldProps:()=>eU.uFv,markCascadeHydrationDone:()=>eU.Ck8,matchSettingsRoute:()=>eU.CM3,matchesRoutePath:()=>eU.Qb_,mergePaginationClassName:()=>eU.M6q,navigateToURL:()=>eU.isP,normalizeAdminLayoutMenuLegacyVariables:()=>eU.ux6,numberFormat:()=>eU.jqd,openAdminLayoutMenuLink:()=>eU.jjG,openView:()=>eU.e8C,openViewFlow:()=>eU.gvx,operatorComponentProps:()=>eU.KHY,overflowMode:()=>eU.COB,pattern:()=>eU.T16,previewRunJS:()=>eU.zA_,recalculateGridSizes:()=>eU.aDm,reconcileAdminLayoutMenuItems:()=>eU.tSM,redirectToLegacySignin:()=>eT.BE,refreshTargetBlocks:()=>eU.J9o,registerIcon:()=>L.pU,registerIcons:()=>L.K1,renderMode:()=>eU.IAc,replaceRouteParams:()=>eU.uTv,required:()=>eU.mw3,resolveAdminLayoutMenuDragMoveOptions:()=>eU.OtO,resolveAdminLayoutMenuDragMoveOptionsFromEvent:()=>eU.eLO,resolveAdminLayoutMenuLink:()=>eU.fi1,resolveAdminRouteRuntimeTarget:()=>eU.YjI,resolveCustomFieldOperatorList:()=>eU.eCD,resolveDefaultCustomFieldOperator:()=>eU.T9,resolveLegacySigninRedirect:()=>eT.M4,runjs:()=>eU.ZCq,setTargetDataScope:()=>eU.mp5,shouldRenderIconInTitle:()=>eU.Ucr,showMessage:()=>eU.rGX,showNotification:()=>eU.Dsh,sortTopLevelSettings:()=>eU.p$W,sortingRule:()=>eU.hsC,subFormFieldLinkageRules:()=>eU.D2p,subFormLinkageAssignField:()=>eU.zTu,subFormLinkageSetFieldProps:()=>eU.gbJ,titleField:()=>eU.Pqd,toOperatorSelectOptions:()=>eU.kA1,toRouterNavigationPath:()=>eU.Yjq,toToolsMap:()=>q,toTreeSelectItems:()=>eU.Gap,toViewStack:()=>eU.Hwd,transformNestedData:()=>eU.Anr,transformRowsToSingleColumn:()=>eU.vbm,useACLContext:()=>eR.bq,useACLRoleContext:()=>eR.v6,useAclSnippets:()=>eR.K3,useApp:()=>E.n,useApplications:()=>eU.HWn,useCurrentRoleMode:()=>eR.GL,useGlobalTheme:()=>N.my,useMobileLayout:()=>eU.mYX,usePlugin:()=>eV.n,useRoleRecheck:()=>eR.N5,useRouter:()=>ez,useSystemSettings:()=>eU.e6V,useUIConfigurationPermissions:()=>eR.uM,validation:()=>eU.Eq4}),l(70571);var n=l(58587),r=l(18150),i=l(68238),a=l(50467),s=l(74848),d=l(95243),u=l(40532),c=l(88909),p=l(55373),h=l.n(p);let m=(e,t)=>{if(!e)return;let l="function"==typeof e.toJSON?e.toJSON():e,o=Object.keys(l||{}).find(e=>e.toLowerCase()===t.toLowerCase());return o?l[o]:void 0},f=(e,t)=>{let l=m(e,t);return null!=l&&""!==l};class g{get storagePrefix(){return this.api.storagePrefix}get locale(){return this.getLocale()}set locale(e){this.setLocale(e)}get role(){return this.getRole()}set role(e){this.setRole(e)}get token(){return this.getToken()}set token(e){this.setToken(e)}get authenticator(){return this.getAuthenticator()}set authenticator(e){this.setAuthenticator(e)}getOption(e){return this.api.storage.getItem(e)}setOption(e,t){return this.options[e]=t,this.api.storage.setItem(e,t||"")}getLocale(){return this.getOption("locale")}setLocale(e){this.setOption("locale",e)}getRole(){return this.getOption("role")}setRole(e){this.setOption("role",e)}getToken(){return this.getOption("token")}setToken(e){this.setOption("token",e),this.api.app&&this.api.app.eventBus.dispatchEvent(new CustomEvent("auth:tokenChanged",{detail:{token:e,authenticator:this.authenticator}}))}getAuthenticator(){return this.getOption("auth")}setAuthenticator(e){this.setOption("auth",e)}middleware(e){return this.locale&&e.headers&&(e.headers["X-Locale"]=this.locale),this.role&&e.headers&&(e.headers["X-Role"]=this.role),this.authenticator&&!f(e.headers,"X-Authenticator")&&e.headers&&(e.headers["X-Authenticator"]=this.authenticator),this.token&&!f(e.headers,"Authorization")&&e.headers&&(e.headers.Authorization=`Bearer ${this.token}`),e}async signIn(e,t){var l;let o=await this.api.request({method:"post",url:"auth:signIn",data:e,headers:{"X-Authenticator":t}}),n=null==o||null==(l=o.data)?void 0:l.data;return this.setAuthenticator(t),this.setToken(null==n?void 0:n.token),o}async signUp(e,t){return await this.api.request({method:"post",url:"auth:signUp",data:e,headers:{"X-Authenticator":t}})}async signOut(){let e=await this.api.request({method:"post",url:"auth:signOut"});return this.setToken(null),this.setRole(null),this.setAuthenticator(null),e}async lostPassword(e){let t=Object.fromEntries(new URLSearchParams(window.location.search).entries());return await this.api.request({method:"post",url:"auth:lostPassword",data:{...e,baseURL:window.location.href.split("/forgot-password")[0]},headers:{"X-Authenticator":t.name}})}async resetPassword(e){return await this.api.request({method:"post",url:"auth:resetPassword",data:e})}async checkResetToken(e){return await this.api.request({method:"post",url:"auth:checkResetToken",data:e})}constructor(e){(0,a._)(this,"api",void 0),(0,a._)(this,"options",{locale:null,role:null,authenticator:null,token:null}),this.api=e,this.api.axios.interceptors.request.use(this.middleware.bind(this))}}class v{toUpperCase(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];return e.toUpperCase()+l.map(e=>e.toUpperCase()).join("_")}constructor(){(0,a._)(this,"storagePrefix",void 0)}}class y extends v{clear(){this.items.clear()}getItem(e){return this.items.get(e)}setItem(e,t){return this.items.set(e,t)}removeItem(e){return this.items.delete(e)}constructor(...e){super(...e),(0,a._)(this,"items",new Map)}}class b extends v{clear(){return this.items.clear()}getItem(e){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.getItem(this.toUpperCase(this.baseStoragePrefix,e)):this.items.getItem(this.toUpperCase(this.storagePrefix,e))}setItem(e,t){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.setItem(this.toUpperCase(this.baseStoragePrefix,e),t):this.items.setItem(this.toUpperCase(this.storagePrefix,e),t)}removeItem(e){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.removeItem(this.toUpperCase(this.baseStoragePrefix,e)):this.items.removeItem(this.toUpperCase(this.storagePrefix,e))}constructor(e,t="",l=!1){super(),(0,a._)(this,"storagePrefix",void 0),(0,a._)(this,"baseStoragePrefix",void 0),(0,a._)(this,"shareToken",void 0),(0,a._)(this,"items",void 0),this.storagePrefix=e,this.baseStoragePrefix=t,this.shareToken=l,this.items=window.localStorage}}class x extends b{constructor(e,t="",l=!1){super(e,t,l),(0,a._)(this,"storagePrefix",void 0),(0,a._)(this,"baseStoragePrefix",void 0),(0,a._)(this,"shareToken",void 0),this.storagePrefix=e,this.baseStoragePrefix=t,this.shareToken=l,this.items=window.sessionStorage}}class w{toErrMessages(e){var t,l,o,n,r,i,a,s,d,u,c;if("u">typeof document&&"string"==typeof(null==e||null==(t=e.response)?void 0:t.data)){let t=document.createElement("div");t.innerHTML=null==e||null==(d=e.response)?void 0:d.data;let l=t.textContent||t.innerText;return l.includes("Error occurred while trying")||l.includes("502 Bad Gateway")?[{code:"APP_WARNING",message:l="The application may be starting up. Please try again later."}]:[{message:l}]}return(null==e||null==(o=e.response)||null==(l=o.data)?void 0:l.error)?[null==e||null==(c=e.response)||null==(u=c.data)?void 0:u.error]:(null==e||null==(r=e.response)||null==(n=r.data)?void 0:n.errors)||(null==e||null==(a=e.response)||null==(i=a.data)?void 0:i.messages)||(null==e||null==(s=e.response)?void 0:s.error)||[{message:e.message||"Server error"}]}getHeaders(){let e={};return this.auth.locale&&(e["X-Locale"]=this.auth.locale),this.auth.role&&(e["X-Role"]=this.auth.role),this.auth.authenticator&&(e["X-Authenticator"]=this.auth.authenticator),this.auth.token&&(e.Authorization=`Bearer ${this.auth.token}`),e}createStorage(e){return"localStorage"===e&&"u">typeof localStorage?new b(this.storagePrefix,this.baseStoragePrefix,this.shareToken):"sessionStorage"===e&&"u">typeof sessionStorage?new x(this.storagePrefix,this.baseStoragePrefix,this.shareToken):new y}initStorage(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"localStorage";if(e){this.storage=new e(this);return}this.storage=this.createStorage(t)}interceptors(){this.axios.interceptors.request.use(e=>(e.paramsSerializer=e=>h().stringify(e,{strictNullHandling:!0,arrayFormat:"brackets"}),e))}request(e){let{resource:t,resourceOf:l,action:o,params:n,headers:r}=e;return t?this.resource(t,l,r)[o](n):this.axios.request(e)}resource(e,t,l,o){return new Proxy({},{get:(n,r)=>{if(o)return;let i=e.split(".").join(`/${encodeURIComponent(t)||"_"}/`),a={url:i+=`:${r.toString()}`};return["get","list"].includes(r)?a.method="get":a.method="post",async(e,t)=>{let{values:o,filter:n,...r}=e||{};return a.params=r,n&&("string"==typeof n?a.params.filter=n:(n["*"]&&delete n["*"],a.params.filter=JSON.stringify(n))),"get"!==a.method&&(a.data=o||{}),await this.request({...a,...t,headers:l})}}})}constructor(e){if((0,a._)(this,"options",void 0),(0,a._)(this,"axios",void 0),(0,a._)(this,"auth",void 0),(0,a._)(this,"storage",void 0),(0,a._)(this,"storagePrefix","NOCOBASE_"),(0,a._)(this,"baseStoragePrefix","NOCOBASE_"),(0,a._)(this,"shareToken",!1),this.options=e,"function"==typeof e)this.axios=e;else{let{appName:t,authClass:l,storageType:o,storageClass:n,storagePrefix:r="NOCOBASE_",shareToken:i=!1,...a}=e||{};this.shareToken=i,this.baseStoragePrefix=r,this.storagePrefix=t?`${r}${t.toUpperCase()}_`:r,this.axios=c.A.create(a),this.initStorage(n,o),l&&(this.auth=new l(this))}this.storage||this.initStorage(),this.auth||(this.auth=new g(this)),this.interceptors()}}let S=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";if("u"<typeof window||!window.location.pathname)return;let t=`${e}apps/`;if(window.location.pathname.startsWith(t))return window.location.pathname.substring(t.length).split("/",1)[0]||""};var M=l(40098),F=l(96540),A=l(5338),k=l(52230),C=l(47665),P=l(84976),j=l(47767),I=l(44363),E=l(36098),_=l(88040);let R=(0,F.memo)(e=>{let{children:t}=e,l=(0,E.n)(),{notification:o}=_.A.useApp();return(0,F.useLayoutEffect)(()=>{l.context.defineProperty("notification",{value:o})},[l,o]),(0,s.jsx)(s.Fragment,{children:t})});R.displayName="AppInner";let T=e=>{let{children:t,className:l,style:o}=e;return(0,s.jsx)(_.A,{className:l,style:{height:"100%",...o},children:(0,s.jsx)(R,{children:t})})};T.displayName="AntdAppProvider";let D=T;var N=l(98666),O=l(96436);class ${async listTools(e){let{data:t}=await this.app.apiClient.resource("aiTools").list({filter:e}),l=null==t?void 0:t.data;return l?l.map(e=>({...e,...this.tools.get(e.definition.name)??{}})):[]}useTools(){let e=new O.Registry;for(let[l,o]of this.tools.getEntities()){var t;e.register(l,{...(null==(t=o.useHooks)?void 0:t.call(o))??o})}return e}registerTools(e,t){this.tools.register(e,{...t})}constructor(e,t=new O.Registry){(0,a._)(this,"app",void 0),(0,a._)(this,"tools",void 0),this.app=e,this.tools=t}}class B{constructor(e){(0,a._)(this,"app",void 0),(0,a._)(this,"toolsManager",void 0),this.app=e,this.toolsManager=new $(this.app)}}let q=e=>new Map(e.map(e=>[e.definition.name,e]));var L=l(45895),V=l(95267);class z{setRoutes(e){this.routes=e,this.accessibleLoaded=!0,this.emitChange()}listAccessible(){return this.routes}isAccessibleLoaded(){return this.accessibleLoaded}async refreshAccessible(){var e;let t=await this.getAPIClient().request({url:"/desktopRoutes:listAccessible",params:{tree:!0,sort:"sort"}}),l=(null==t||null==(e=t.data)?void 0:e.data)||[];return this.setRoutes(l),l}async ensureAccessibleLoaded(){return this.accessibleLoaded?this.routes:(this.accessibleLoadingPromise||(this.accessibleLoadingPromise=this.refreshAccessible().finally(()=>{this.accessibleLoadingPromise=null})),this.accessibleLoadingPromise)}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}unsubscribe(e){this.subscribers.delete(e)}async createRoute(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{refreshAfterMutation:l=!0}=t,o=await this.getResource("desktopRoutes").create({values:e});return l&&await this.refreshAccessible(),o}async updateRoute(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{refreshAfterMutation:o=!0}=l,n=await this.getResource("desktopRoutes").update(Array.isArray(e)?{filter:{id:{$in:e}},values:t}:{filterByTk:e,values:t});return o&&await this.refreshAccessible(),n}async deleteRoute(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{refreshAfterMutation:l=!0}=t,o=await this.getResource("desktopRoutes").destroy({filterByTk:e});return l&&await this.refreshAccessible(),o}async moveRoute(e){let{refreshAfterMove:t=!0,...l}=e,o=await this.getResource("desktopRoutes").move(l);return t&&await this.refreshAccessible(),o}getRouteBySchemaUid(e){return this.findRoute(this.routes,e)}getAPIClient(){var e;if(!(null==(e=this.ctx)?void 0:e.api))throw Error("[NocoBase] RouteRepository requires context.api.");return this.ctx.api}getResource(e){return this.getAPIClient().resource(e)}emitChange(){this.subscribers.forEach(e=>{e()})}findRoute(e,t){for(let l of e){if(l.schemaUid===t)return l;if(l.children){let e=this.findRoute(l.children,t);if(e)return e}}}constructor(e){(0,a._)(this,"ctx",void 0),(0,a._)(this,"routes",void 0),(0,a._)(this,"subscribers",void 0),(0,a._)(this,"accessibleLoaded",void 0),(0,a._)(this,"accessibleLoadingPromise",void 0),this.ctx=e,this.routes=[],this.subscribers=new Set,this.accessibleLoaded=!1,this.accessibleLoadingPromise=null}}class K{getURL(){if(!this.app)return;let e=this.app.getApiUrl();if(!e)return;let t="";if(this.getSubAppName(this.app))t=`?_app=${this.getSubAppName(this.app)}`;else{let e=S(this.app.getPublicPath());t=e?`?__appName=${e}`:""}let l=this.options.basename||"/ws";if(this.options.url){let e=new URL(this.options.url);if("localhost"===e.hostname){let o="https:"===location.protocol?"wss":"ws";return`${o}://${location.hostname}:${e.port}${l}${t}`}return`${this.options.url}${t}`}try{let o=new URL(e);return`${"https:"===o.protocol?"wss":"ws"}://${o.host}${l}${t}`}catch(e){return`${"https:"===location.protocol?"wss":"ws"}://${location.host}${l}${t}`}}get reconnectAttempts(){var e;return(null==(e=this.options)?void 0:e.reconnectAttempts)||30}get reconnectInterval(){var e;return(null==(e=this.options)?void 0:e.reconnectInterval)||1e3}get pingInterval(){var e;return(null==(e=this.options)?void 0:e.pingInterval)||3e5}get readyState(){return this._ws?this._ws.readyState:-1}createWebSocket(){return new WebSocket(this.getURL(),this.options.protocols)}connect(){let e;if(!this.enabled||(0===this._reconnectTimes&&console.log("[nocobase-ws]: connecting..."),this._reconnectTimes>=this.reconnectAttempts||this.readyState===WebSocket.OPEN))return;this._reconnectTimes++;let t=this.createWebSocket();t.onopen=()=>{for(let{type:e,listener:l,options:o}of(console.log("[nocobase-ws]: connected."),this.serverDown=!1,this._ws&&this.removeAllListeners(),this._reconnectTimes=0,this._ws=t,this.events))this._ws.addEventListener(e,l,o);e=setInterval(()=>this.send("ping"),this.pingInterval),this.connected=!0,this.emit("open",{})},t.onerror=async()=>{console.log("onerror",this.readyState,this._reconnectTimes)},t.onclose=async t=>{setTimeout(()=>this.connect(),this.reconnectInterval),console.log("onclose",this.readyState,this._reconnectTimes,this.serverDown),this.connected=!1,clearInterval(e)}}reconnect(){this._reconnectTimes=0,this.connect()}close(){if(this._ws)return this._reconnectTimes=this.reconnectAttempts,this._ws.close()}send(e){if(this._ws)return this._ws.send(e)}on(e,t,l){this.events.push({type:e,listener:t,options:l}),this._ws&&this._ws.addEventListener(e,t,l)}emit(e,t){for(let l of this.events)l.type===e&&l.listener(t)}off(e,t,l){let o=0;for(let l of this.events){if(l.type===e&&l.listener===t){this.events.splice(o,1);break}o++}this._ws&&this._ws.removeEventListener(e,t,l)}removeAllListeners(){if(this._ws)for(let{type:e,listener:t,options:l}of this.events)this._ws.removeEventListener(e,t,l)}constructor(e){if((0,a._)(this,"_ws",void 0),(0,a._)(this,"_reconnectTimes",0),(0,a._)(this,"events",[]),(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"enabled",void 0),(0,a._)(this,"connected",!1),(0,a._)(this,"serverDown",!1),(0,a._)(this,"lastMessage",{}),(0,a._)(this,"getSubAppName",e=>{let t=e.getPublicPath(),l=`^${t}_app/([^/]*)/`,o=location.pathname.match(new RegExp(l));return o?o[1]:null}),!e){this.enabled=!1;return}this.options=!0===e?{}:e,this.enabled=!0,(0,d.define)(this,{serverDown:d.observable.ref,connected:d.observable.ref,lastMessage:d.observable.ref})}}function U(e){if(!e)return console.warn("Failed to mount app: mount target should not be null or undefined."),null;if("string"==typeof e){let t=document.querySelector(e);return t||console.warn(`Failed to mount app: mount target selector "${e}" returned null.`),t}return globalThis.window.ShadowRoot&&e instanceof globalThis.window.ShadowRoot&&"closed"===e.mode&&console.warn('mounting on a ShadowRoot with `{mode: "closed"}` may lead to unpredictable bugs'),e}let W=function(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];let o=t.reduce((e,t)=>{let[l,o]=t,n=t=>{let{children:n}=t;return(0,s.jsx)(e,{children:(0,s.jsx)(l,{...o,children:n})})};return n.displayName=`compose(${l.displayName||l.name})`,n},L.ct);return e=>t=>(0,s.jsx)(o,{children:e&&(0,s.jsx)(e,{...t})})};var H=l(42524),Y=l(81651),G=l(78880),J=l(18220),X=l(27253),Q=l(14264),Z=l(72635),ee=l(40961),et=l(68984);function el(e){e.define("react",()=>F),e.define("react-dom",()=>ee),e.define("react/jsx-runtime",()=>s),e.define("react-router",()=>j),e.define("react-router-dom",()=>P),e.define("antd",()=>Q),e.define("@ant-design/icons",()=>Y),e.define("@ant-design/cssinjs",()=>H),e.define("i18next",()=>Z),e.define("react-i18next",()=>et),e.define("@formily/core",()=>G),e.define("@formily/react",()=>J),e.define("@formily/reactive",()=>d),e.define("@formily/shared",()=>X),e.define("@nocobase/utils",()=>O),e.define("@nocobase/utils/client",()=>O),e.define("@nocobase/client-v2",()=>o),e.define("@nocobase/client-v2/client-v2",()=>o),e.define("@nocobase/flow-engine",()=>u)}var eo=l(40407);let en=/^\/+/,er=/\/+$/,ei=e=>{let t=en.exec(e);return t?e.slice(t[0].length):e},ea=e=>{let t=er.exec(e);return t?e.slice(0,-t[0].length):e},es=e=>(0,I.isValidElementType)(e);class ed{get pm(){return this.pluginManager}get disableAcl(){return this.options.disableAcl}get isWsAuthorized(){return this.wsAuthorized}defineObservableState(){(0,d.define)(this,{maintained:d.observable.ref,maintaining:d.observable.ref,error:d.observable.ref})}initializeExtendedState(){this.systemSettings=new V.o(this.apiClient)}afterManagersInitialized(){this.aiManager=new B(this)}configureContext(){}configureRuntimeAdapters(){}addCustomProviders(){}initListeners(){this.eventBus.addEventListener("auth:tokenChanged",e=>{let t=e.detail;(null==t?void 0:t.token)&&this.setTokenInWebSocket(t)}),this.eventBus.addEventListener("maintaining:end",()=>{this.apiClient.auth.token&&this.setTokenInWebSocket({token:this.apiClient.auth.token,authenticator:this.apiClient.auth.getAuthenticator()})})}setTokenInWebSocket(e){let{token:t,authenticator:l}=e;this.maintaining||this.ws.send(JSON.stringify({type:"auth:token",payload:{token:t,authenticator:l}}))}initRequireJs(){if(void 0===globalThis.window)return;let e=globalThis.window;if(e.requirejs){this.requirejs=e.requirejs;return}e.requirejs=this.requirejs=(0,eo.b)(),el(this.requirejs),e.define=this.requirejs.define}configureBaseContext(){this.flowEngine.context.defineProperty("app",{value:this}),this.flowEngine.context.defineProperty("api",{value:this.apiClient}),this.flowEngine.context.defineProperty("i18n",{value:this.i18n}),this.flowEngine.context.defineProperty("router",{get:()=>this.router.router,cache:!1}),this.flowEngine.context.defineProperty("documentTitle",{get:()=>document.title}),this.flowEngine.context.defineProperty("route",{get:()=>{},observable:!0}),this.flowEngine.context.defineProperty("location",{get:()=>location,observable:!0}),this.flowEngine.context.defineProperty("routeRepository",{value:new z(this.flowEngine.context)}),this.flowEngine.context.defineProperty("appInfo",{get:async()=>{var e;return(null==(e=(await this.apiClient.request({url:"app:getInfo"})).data)?void 0:e.data)||{}}}),this.flowEngine.context.defineProperty("pageInfo",{value:(0,d.observable)({version:void 0})}),this.flowEngine.context.defineProperty("systemSettings",{get:()=>this.systemSettings})}addBaseProviders(){this.use(k.x,{i18n:this.i18n}),this.use(u.FlowEngineProvider,{engine:this.flowEngine}),this.use(N.U_),this.use(D)}addFinalProviders(){this.use(u.FlowEngineGlobalsContextProvider)}addReactRouterComponents(){this.addComponents({Link:P.Link,Navigate:j.Navigate,NavLink:P.NavLink})}addRoutes(){this.router.add("not-found",{path:"*",Component:this.components.AppNotFound})}updateFavicon(e){let t=document.querySelector('link[rel="shortcut icon"]');e&&(this.favicon=e);let l=this.favicon||"/favicon/favicon.ico";t?t.href=l:((t=document.createElement("link")).rel="shortcut icon",t.href=l,document.head.appendChild(t))}setWsAuthorized(e){this.wsAuthorized=e}setMaintaining(e){this.maintaining!==e&&(this.maintaining=e,e||this.eventBus.dispatchEvent(new Event("maintaining:end")))}getOptions(){return this.options}getName(){return S(this.getPublicPath())||null}getPublicPath(){let e=this.options.publicPath||"/";return e.endsWith("/")||(e+="/"),e}getApiUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=this.apiClient.axios.defaults.baseURL??"";if(!t.startsWith("http://")&&!t.startsWith("https://")){let{protocol:e,host:l}=globalThis.window.location;t=`${e}//${l}${t}`}return`${ea(t)}/${ei(e)}`}getRouteUrl(e){return this.getPublicPath()+ei(e)}getHref(e){let t=this.name;return t&&"main"!==t?`${this.getPublicPath()}apps/${t}/${ei(e)}`:this.getPublicPath()+ei(e)}getComposeProviders(){let e=W(...this.providers)(L.ct);return e.displayName="Providers",e}use(e,t){return this.addProvider(e,t)}addProvider(e,t){return this.providers.push([e,t])}addProviders(e){e.forEach(e=>{Array.isArray(e)?this.addProvider(e[0],e[1]):this.addProvider(e)})}getComponent(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],l=e=>t&&console.error(e);if(!e)return void l(`getComponent called with ${e}`);if("string"==typeof e){let t=(0,M.get)(this.components,e);return t||void l(`Component ${e} not found`)}if(es(e))return e;l(`Component ${e} should be a string or a React component`)}renderComponent(e,t,l){let o=this.getComponent(e);return o?F.createElement(o,t,l):null}addComponent(e,t){let l=e,o=t||l.displayName||l.name;o?(0,M.set)(this.components,o,e):console.error("Component must have a displayName or pass name as second argument")}addComponents(e){Object.keys(e).forEach(t=>{this.addComponent(e[t],t)})}getRootFallback(){return this.renderComponent("AppSpin")}getRootComponent(){let e=this.model,t=this.flowEngine,l=()=>this.getRootFallback();return o=>{let{children:n}=o;return(0,F.useLayoutEffect)(()=>{e.setProps({children:n})},[n]),(0,s.jsx)(u.FlowEngineProvider,{engine:t,children:(0,s.jsx)(u.FlowModelRenderer,{fallback:l(),model:e})})}}mount(e){let t=U(e);if(t){let e=this.getRootComponent(),l=(0,A.createRoot)(t);return l.render((0,s.jsx)(e,{})),l}}createWebSocketClient(e){return new K(e.ws??!1)}getDefaultComponents(){return{AppNotFound:L.bM,AppError:L.uV,AppSpin:L.gv,AppMaintaining:L.be,AppMaintainingDialog:L.tp}}constructor(e={}){(0,a._)(this,"options",void 0),(0,a._)(this,"eventBus",void 0),(0,a._)(this,"providers",void 0),(0,a._)(this,"router",void 0),(0,a._)(this,"scopes",void 0),(0,a._)(this,"i18n",void 0),(0,a._)(this,"ws",void 0),(0,a._)(this,"apiClient",void 0),(0,a._)(this,"components",void 0),(0,a._)(this,"pluginManager",void 0),(0,a._)(this,"pluginSettingsManager",void 0),(0,a._)(this,"aiManager",void 0),(0,a._)(this,"devDynamicImport",void 0),(0,a._)(this,"requirejs",void 0),(0,a._)(this,"name",void 0),(0,a._)(this,"favicon",void 0),(0,a._)(this,"flowEngine",void 0),(0,a._)(this,"dataSourceManager",void 0),(0,a._)(this,"context",void 0),(0,a._)(this,"systemSettings",void 0),(0,a._)(this,"maintained",void 0),(0,a._)(this,"maintaining",void 0),(0,a._)(this,"error",void 0),(0,a._)(this,"model",void 0),(0,a._)(this,"wsAuthorized",void 0),(0,a._)(this,"apps",void 0),this.options=e,this.eventBus=new EventTarget,this.providers=[],this.scopes={},this.components={},this.maintained=!1,this.maintaining=!1,this.error=null,this.wsAuthorized=!1,this.apps={Component:null},this.initRequireJs(),this.defineObservableState(),this.devDynamicImport=e.devDynamicImport,this.scopes=(0,M.merge)(this.scopes,e.scopes),this.components=(0,M.merge)(this.getDefaultComponents(),e.components),this.name=this.options.name||S(e.publicPath)||"main",this.apiClient=this.createApiClient(e),this.initializeExtendedState(),this.i18n=this.createI18n(e),this.router=this.createRouterManager(e),this.pluginManager=this.createPluginManager(e),this.flowEngine=new u.FlowEngine,this.flowEngine.registerModels({ApplicationModel:ep}),this.model=this.flowEngine.createModel({use:"ApplicationModel",uid:"__app_model__"}),this.context=this.flowEngine.context,this.configureRuntimeAdapters(),this.context.defineProperty("pluginManager",{get:()=>this.pluginManager}),this.configureBaseContext(),this.configureContext(),this.addBaseProviders(),this.addCustomProviders(),this.addFinalProviders(),this.addReactRouterComponents(),this.addProviders(e.providers||[]),this.ws=this.createWebSocketClient(e),this.ws.app=this,this.pluginSettingsManager=this.createPluginSettingsManager(e),this.addRoutes(),this.i18n.on("languageChanged",e=>{this.apiClient.auth.locale=e}),this.initListeners(),this.afterManagersInitialized()}}var eu=new WeakMap,ec=new WeakMap;class ep extends u.FlowModel{get app(){return this.context.app}getProviders(){return(0,i._)(this,eu,(0,n._)(this,eu)||this.app.getComposeProviders()),(0,n._)(this,eu)}getRouter(){return(0,i._)(this,ec,(0,n._)(this,ec)||this.app.router.getRouterComponent()),(0,n._)(this,ec)}render(){return this.app.maintaining?this.renderMaintaining():this.app.error?this.renderError():this.renderContent()}renderMaintaining(){return this.app.maintained?this.app.renderComponent("AppMaintainingDialog",{app:this.app,error:this.app.error}):this.app.renderComponent("AppMaintaining",{app:this.app,error:this.app.error})}renderError(){return this.app.renderComponent("AppError",{app:this.app,error:this.app.error})}renderContent(){let e=this.app.getComponent("AppError",!1),t=this.getRouter(),l=this.getProviders(),o=(0,s.jsx)(t,{BaseLayout:l});if(!e)return o;let n=(e,t)=>{var l;console.error(e);let o=null==(l=t.componentStack)?void 0:l.trim();if(!o)return;let n=Error("React component stack");n.stack=o,console.error(n)};return(0,s.jsx)(C.tH,{FallbackComponent:t=>(0,s.jsx)(e,{app:this.app,...t}),onError:n,children:o})}constructor(...e){super(...e),(0,r._)(this,eu,{writable:!0,value:void 0}),(0,r._)(this,ec,{writable:!0,value:void 0})}}ep.registerFlow({key:"appFlow",steps:{init:{async handler(e){try{await e.app.load()}catch(t){e.model.app.error=t,console.error(t)}}}}});var eh=l(16350);class em{addFieldInterfaces(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=e.reduce((e,t)=>{let l=new t(this);return(null==l?void 0:l.name)&&(e[l.name]=l,Array.isArray(this.actionList[l.name])&&(this.actionList[l.name].forEach(e=>{var t,o;if("addComponentOption"===e.type){null==(o=l.addComponentOption)||o.call(l,e.data);return}null==(t=l.addOperator)||t.call(l,e.data)}),this.actionList[l.name]=void 0)),e},{});Object.assign(this.collectionFieldInterfaceInstances,t)}addFieldInterfaceComponentOption(e,t){var l;let o=this.getFieldInterface(e);o?null==(l=o.addComponentOption)||l.call(o,t):this.enqueueAction(e,{type:"addComponentOption",data:t})}addFieldInterfaceOperator(e,t){var l;let o=this.getFieldInterface(e);o?null==(l=o.addOperator)||l.call(o,t):this.enqueueAction(e,{type:"addOperator",data:t})}getFieldInterface(e){return this.collectionFieldInterfaceInstances[e]}getFieldInterfaces(e){return Object.values(this.collectionFieldInterfaceInstances).filter(t=>!e||!t.supportDataSourceType&&!t.notSupportDataSourceType||(t.supportDataSourceType?t.supportDataSourceType.includes(e):!t.notSupportDataSourceType||!t.notSupportDataSourceType.includes(e)))}addFieldInterfaceGroups(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.assign(this.collectionFieldGroups,e)}getFieldInterfaceGroups(){return this.collectionFieldGroups}getFieldInterfaceGroup(e){return this.collectionFieldGroups[e]}enqueueAction(e,t){this.actionList[e]||(this.actionList[e]=[]),this.actionList[e].push(t)}constructor(e){(0,a._)(this,"dataSourceManager",void 0),(0,a._)(this,"collectionFieldInterfaceInstances",void 0),(0,a._)(this,"collectionFieldGroups",void 0),(0,a._)(this,"actionList",void 0),this.dataSourceManager=e,this.collectionFieldInterfaceInstances={},this.collectionFieldGroups={},this.actionList={}}}function ef(e){Object.entries(e).forEach(e=>{let[t,l]=e;window.define(`${t}/client-v2`,()=>l)})}function eg(e){window.define(`${e}/client-v2`,["exports",e],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(t).forEach(function(l){"__esModule"===l||l in e&&e[l]===t[l]||Object.defineProperty(e,l,{enumerable:!0,get:function(){return t[l]}})})})}function ev(e,t){e.requirejs.config({waitSeconds:120,paths:t.reduce((e,t)=>(e[t.packageName]=t.url,e),{})})}function ey(e,t){return function(){for(var l=arguments.length,o=Array(l),n=0;n<l;n++)o[n]=arguments[n];t(o.map((t,l)=>[e[l].name,(null==t?void 0:t.default)||t]).filter(e=>e[1]));let r=o.map((e,t)=>e?null:t).filter(e=>null!==e).map(t=>e[t].packageName);r.length>0&&console.error("[nocobase load plugin error]: These plugins do not have an `export.default` exported content or there is an error in the plugins. error plugins: \r\n%s",r.join(", \r\n"))}}function eb(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];ev(e,t);let l=t.map(e=>e.packageName);return l.forEach(e=>{eg(e)}),new Promise((o,n)=>{e.requirejs(l,ey(t,o),n)})}async function ex(e){let{requirejs:t,pluginData:l,devDynamicImport:o}=e;if(0===l.length)return[];let n=[],r={};if(o){for await(let e of l){let t=await o(e.packageName);t&&(n.push([e.name,t.default]),r[e.packageName]=t.default)}ef(r)}let i=l.filter(e=>!r[e.packageName]);if(0===i.length)return n;if(0===n.length){let e=await eb(t,i);n.push(...e)}return n}class ew{async init(e){await this.initStaticPlugins(e),this.loadRemotePlugins&&await this.initRemotePlugins()}getRemotePluginsRequestUrl(){return"pm:listEnabledV2"}async initStaticPlugins(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];for await(let t of e){let e=Array.isArray(t)?t[0]:t,l=Array.isArray(t)?t[1]:void 0;await this.add(e,l)}}async initRemotePlugins(){var e;let t=await this.app.apiClient.request({url:this.getRemotePluginsRequestUrl()}),l=(null==t||null==(e=t.data)?void 0:e.data)||[];for await(let[e,t]of(await ex({requirejs:this.app.requirejs,pluginData:l,devDynamicImport:this.app.devDynamicImport}))){let o=l.find(t=>t.name===e);await this.add(t,o)}}async add(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=this.getInstance(e,t);this.pluginInstances.set(e,l),t.name&&(this.pluginsAliases[t.name]=l),t.packageName&&(this.pluginsAliases[t.packageName]=l),await l.afterAdd()}get(e){return"string"==typeof e?this.pluginsAliases[e]:this.pluginInstances.get(e.default||e)}getInstance(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new e(t,this.app)}async load(){for(let e of(await this.initPlugins,this.pluginInstances.values()))await e.beforeLoad();for(let e of this.pluginInstances.values())await e.load(),this.app.eventBus.dispatchEvent(new CustomEvent(`plugin:${e.options.name}:loaded`,{detail:e}))}constructor(e,t,l){(0,a._)(this,"_plugins",void 0),(0,a._)(this,"loadRemotePlugins",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"pluginInstances",void 0),(0,a._)(this,"pluginsAliases",void 0),(0,a._)(this,"initPlugins",void 0),this._plugins=e,this.loadRemotePlugins=t,this.app=l,this.pluginInstances=new Map,this.pluginsAliases={},this.app=l,this.initPlugins=this.init(e||[]),this.loadRemotePlugins=t}}var eS=l(96204),eM=l(45588);function eF(e){let t=(0,j.useParams)(),l=(0,j.useLocation)(),o=(0,j.useMatches)(),n=e.flowEngine;(0,F.useEffect)(()=>{var e;let l=o[o.length-1];l&&(n.context._observableCache.route={name:l.id,pathname:l.pathname,path:(null==(e=l.handle)?void 0:e.path)||null,params:t})},[n.context,t,o]),(0,F.useEffect)(()=>{n.context._observableCache.location=l},[n.context,l])}function eA(e){let{app:t}=e;return eF(t),null}class ek{get basename(){return this.router.basename}get state(){return this.router.state}get navigate(){return this.router.navigate}resolveLoadedComponent(e){if(e)return"function"==typeof e||"string"==typeof e?e:e.default||e.Component}createRouteLazyComponent(e){let t=F.lazy(()=>e().then(e=>{let t=this.resolveLoadedComponent(e);if(!t)throw Error("componentLoader must resolve to a React component or component module.");return"string"==typeof t?{default:e=>this.app.renderComponent(t,e)}:{default:t}}));return function(e){return(0,s.jsx)(F.Suspense,{fallback:null,children:(0,s.jsx)(t,{...e})})}}getRoutesTree(){let e={};for(let[t,l]of Object.entries(this.routes))(0,M.set)(e,t.split(".").join(".children."),{...(0,M.get)(e,t.split(".").join(".children.")),...l});let t=e=>Object.values(e).reduce((e,l)=>{if(1===Object.keys(l).length&&l.children)e.push(...t(l.children));else{let{Component:o,componentLoader:n,element:r,children:i,...a}=l,s=r;n?s=F.createElement(this.createRouteLazyComponent(n)):o&&(s="string"==typeof o?this.app.renderComponent(o):F.createElement(o));let d={...a,element:s,children:i?t(i):void 0};e.push(d)}return e},[]);return t(e)}getRoutes(){return this.routes}setType(e){this.options.type=e}getBasename(){return this.options.basename}setBasename(e){this.options.basename=e}matchRoutes(e){let t=this.getRoutesTree();return(0,eM.ue)(t,e,this.basename)}isSkippedAuthCheckRoute(e){return(this.matchRoutes(e)||[]).some(e=>{var t;return(null==e||null==(t=e.route)?void 0:t.skipAuthCheck)===!0})}getRouterComponent(e){let{type:t="browser",...l}=this.options,o={hash:P.createHashRouter,browser:P.createBrowserRouter,memory:j.createMemoryRouter},n=this.getRoutesTree(),r=(0,F.createContext)(e=>e.children),i=()=>{let t=(0,F.useContext)(r);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(eA,{app:this.app}),(0,s.jsxs)(t,{children:[(0,s.jsx)(j.Outlet,{}),e]})]})},a=()=>{throw(0,j.useRouteError)()};return this.router=o[t]([{element:(0,s.jsx)(i,{}),errorElement:(0,s.jsx)(a,{}),children:n}],l),e=>{let{BaseLayout:t=L.ct}=e;return(0,s.jsx)(r.Provider,{value:t,children:(0,s.jsx)(L.PK,{children:(0,s.jsx)(P.RouterProvider,{future:{v7_startTransition:!0},router:this.router})})})}}add(e,t){this.routes[e]={id:e,...t,handle:{path:t.path}}}get(e){return this.routes[e]}has(e){return!!this.get(e)}remove(e){delete this.routes[e]}constructor(e={},t){(0,a._)(this,"routes",{}),(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"router",void 0),this.options=e,this.app=t,this.routes=e.routes||{}}}var eC=l(24978),eP=l(35710);let ej=e=>{let{children:t}=e,{token:l}=eP.A.useToken(),o=l.colorFillTertiary,n=new eC.q(l.colorFill).onBackground(l.colorFillSecondary).toHexShortString(),r=new eC.q(l.colorFill).onBackground(l.colorFill).toHexShortString(),i=new eC.q(l.colorFill).onBackground(l.colorFill).onBackground(l.colorFill).toHexShortString();return(0,F.useEffect)(()=>{document.body.style.setProperty("--nb-spacing",`${l.marginLG}px`),document.body.style.setProperty("--nb-designer-offset",`${l.marginXS}px`),document.body.style.setProperty("--nb-header-height",`${l.sizeXXL-2}px`),document.body.style.setProperty("--nb-box-bg",l.colorBgLayout),document.body.style.setProperty("--colorBgLayout",l.colorBgLayout),document.body.style.setProperty("--colorBgContainer",l.colorBgContainer),document.body.style.setProperty("--controlHeightLG",`${l.controlHeightLG}px`),document.body.style.setProperty("--paddingContentVerticalSM",`${l.paddingContentVerticalSM}px`),document.body.style.setProperty("--marginSM",`${l.marginSM}px`),document.body.style.setProperty("--colorInfoBg",l.colorInfoBg),document.body.style.setProperty("--colorInfoBorder",l.colorInfoBorder),document.body.style.setProperty("--colorWarningBg",l.colorWarningBg),document.body.style.setProperty("--colorWarningBorder",l.colorWarningBorder),document.body.style.setProperty("--colorText",l.colorText),document.body.style.setProperty("--colorTextHeaderMenu",l.colorTextHeaderMenu),document.body.style.setProperty("--colorPrimaryText",l.colorPrimaryText),document.body.style.setProperty("--colorPrimaryTextActive",l.colorPrimaryTextActive),document.body.style.setProperty("--colorPrimaryTextHover",l.colorPrimaryTextHover),document.body.style.setProperty("--colorBgSider",l.colorBgSider),document.body.style.setProperty("--colorBgSiderMenuHover",l.colorBgSiderMenuHover),document.body.style.setProperty("--colorBgSiderMenuActive",l.colorBgSiderMenuActive),document.body.style.setProperty("--colorTextSiderMenu",l.colorTextSiderMenu),document.body.style.setProperty("--colorTextSiderMenuHover",l.colorTextSiderMenuHover),document.body.style.setProperty("--colorTextSiderMenuActive",l.colorTextSiderMenuActive),document.body.style.setProperty("--colorBgScrollTrack",o),document.body.style.setProperty("--colorBgScrollBar",n),document.body.style.setProperty("--colorBgScrollBarHover",r),document.body.style.setProperty("--colorBgScrollBarActive",i),document.body.style.setProperty("--colorSettings",l.colorSettings||N.zQ.token.colorSettings),document.body.style.setProperty("--colorBgSettingsHover",l.colorBgSettingsHover),document.body.style.setProperty("--colorTemplateBgSettingsHover",l.colorTemplateBgSettingsHover),document.body.style.setProperty("--colorBorderSettingsHover",l.colorBorderSettingsHover),document.body.style.setProperty("--colorBgMenuItemSelected",l.colorBgHeaderMenuActive),document.body.style.setProperty("background-color",l.colorBgContainer)},[n,i,r,o,l.colorBgContainer,l.colorBgLayout,l.colorBgSettingsHover,l.colorTemplateBgSettingsHover,l.colorBorderSettingsHover,l.colorInfoBg,l.colorInfoBorder,l.colorPrimaryText,l.colorPrimaryTextActive,l.colorPrimaryTextHover,l.colorSettings,l.colorText,l.colorWarningBg,l.colorWarningBorder,l.controlHeightLG,l.marginLG,l.marginSM,l.marginXS,l.paddingContentVerticalSM,l.sizeXXL,l.colorTextHeaderMenu,l.colorBgSider,l.colorBgSiderMenuHover,l.colorBgSiderMenuActive,l.colorTextSiderMenu,l.colorTextSiderMenuHover,l.colorTextSiderMenuActive,l.colorBgHeaderMenuActive]),t};ej.displayName="CSSVariableProvider";let eI=ej;class eE extends ed{createApiClient(e){return new w(e.apiClient)}configureRuntimeAdapters(){this.dataSourceManager=this.flowEngine.context.dataSourceManager,this.dataSourceManager.setRequester(this.apiClient.request.bind(this.apiClient)),this.dataSourceManager.collectionFieldInterfaceManager||this.dataSourceManager.setCollectionFieldInterfaceManager(new em(this.dataSourceManager))}createI18n(e){if(e.i18n)return e.i18n;let t=(0,Z.createInstance)();return t.use(eh.r9).init({lng:"en-US",defaultNS:"client",resources:{},keySeparator:!1,nsSeparator:!1}),t}createRouterManager(e){var t;let l=new ek(e.router,this);if((null==(t=e.router)?void 0:t.basename)===void 0){let e=this.getPublicPath(),t="/"===e?void 0:e.replace(/\/$/,"");t&&l.setBasename(t)}return l}createPluginManager(e){return new ew(e.plugins||[],!!e.loadRemotePlugins,this)}createPluginSettingsManager(e){return new eS.mz(this)}async load(){await this.loadWebSocket(),await this.pm.load(),await this.flowEngine.flowSettings.load(),this.updateFavicon()}async loadWebSocket(){this.eventBus.addEventListener("ws:message:authorized",()=>{this.setWsAuthorized(!0)}),this.ws.on("message",e=>{var t,l,o,n;if(!e.data)return;let r=JSON.parse(e.data);if(null==r||null==(t=r.payload)?void 0:t.refresh)return void globalThis.window.location.reload();if("notification"===r.type){let e=this.context.notification;null==(o=e[(null==(n=r.payload)?void 0:n.type)||"info"])||o.call(e,{message:null==(l=r.payload)?void 0:l.message});return}if(this.error&&"APP_RUNNING"===r.payload.code){this.maintained=!0,this.setMaintaining(!1),this.error=null,globalThis.window.location.reload();return}let i="maintaining"===r.type&&"APP_RUNNING"!==r.payload.code;if(console.log("ws:message",{maintaining:i,data:r}),i)this.setMaintaining(!0),this.error=r.payload;else{this.setMaintaining(!1),this.maintained=!0,this.error=null;let e=r.type;if(!e)return;let t=`ws:message:${e}`;this.eventBus.dispatchEvent(new CustomEvent(t,{detail:r.payload}))}}),this.ws.on("serverDown",()=>{this.maintaining=!0,this.maintained=!1}),this.ws.on("open",()=>{let e=this.apiClient.auth.token;e&&this.setTokenInWebSocket({token:e,authenticator:this.apiClient.auth.getAuthenticator()})}),this.ws.connect()}addCustomProviders(){this.use(eI)}addFieldInterfaces(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return this.dataSourceManager.addFieldInterfaces(e)}addFieldInterfaceGroups(e){return this.dataSourceManager.addFieldInterfaceGroups(e)}addFieldInterfaceComponentOption(e,t){return this.dataSourceManager.addFieldInterfaceComponentOption(e,t)}addFieldInterfaceOperator(e,t){return this.dataSourceManager.addFieldInterfaceOperator(e,t)}}var e_=l(8643),eR=l(966),eT=l(75251);let eD=(0,F.createContext)(null);eD.displayName="ApplicationContext";var eN=l(36093),eO=l.n(eN);class e$ extends eE{constructor(e={}){super({router:{type:"memory",initialEntries:["/"]},...e}),(0,a._)(this,"apiMock",void 0),this.apiMock=new(eO())(this.apiClient.axios),this.ws=new eB(e.ws||{})}}class eB extends K{connect(){}close(){}send(){}on(e,t,l){this.eventBus.addEventListener(e,e=>t({data:JSON.stringify(e.detail)}),l)}emit(e,t){this.eventBus.dispatchEvent(new CustomEvent(e,{detail:t}))}off(e,t,l){this.eventBus.removeEventListener(e,t,l)}removeAllListeners(){}constructor(e){super(e),(0,a._)(this,"eventBus",new EventTarget)}}function eq(e){return new e$(e)}class eL{get pluginManager(){return this.app.pluginManager}get context(){return this.app.context}get flowEngine(){return this.app.flowEngine}get engine(){return this.app.flowEngine}get pm(){return this.app.pm}get router(){return this.app.router}get pluginSettingsManager(){return this.app.pluginSettingsManager}get schemaInitializerManager(){return this.app.schemaInitializerManager}get schemaSettingsManager(){return this.app.schemaSettingsManager}get dataSourceManager(){return this.app.dataSourceManager}get ai(){return this.app.aiManager}async afterAdd(){}async beforeLoad(){}async load(){}t(e){var t;let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.app.i18n.t(e,{ns:null==(t=this.options)?void 0:t.packageName,...l})}constructor(e,t){(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),this.options=e,this.app=t,this.options=e,this.app=t}}var eV=l(99002);let ez=()=>(0,E.n)().router;var eK=l(84256),eU=l(46578),eW=l(16631),eH=l(60183),eY=l(77009),eG=l(74353),eJ=l.n(eG);let eX={"ar-EG":"ar","az-AZ":"az","bg-BG":"bg","bn-BD":"bn-bd","by-BY":"en","ca-ES":"ca","cs-CZ":"cs","da-DK":"da","de-DE":"de","el-GR":"el","en-GB":"en-gb","en-US":"en","es-ES":"es","et-EE":"et","fa-IR":"fa","fi-FI":"fi","fr-BE":"fr","fr-CA":"fr","fr-FR":"fr","ga-IE":"ga","gl-ES":"gl","he-IL":"he","hi-IN":"hi","hr-HR":"hr","hu-HU":"hu","hy-AM":"hy-am","id-ID":"id","is-IS":"is","it-IT":"it","ja-JP":"ja","ka-GE":"ka","kk-KZ":"kk","km-KH":"km","kn-IN":"kn","ko-KR":"ko","ku-IQ":"ku","lt-LT":"lt","lv-LV":"lv","mk-MK":"mk","ml-IN":"ml","mn-MN":"mn","ms-MY":"ms","nb-NO":"nb","ne-NP":"ne","nl-BE":"nl-be","nl-NL":"nl","pl-PL":"pl","pt-BR":"pt-br","pt-PT":"pt","ro-RO":"ro","ru-RU":"ru","si-LK":"si","sk-SK":"sk","sl-SI":"sl","sr-RS":"sr","sv-SE":"sv","ta-IN":"ta","th-TH":"th","tk-TK":"tk","tr-TR":"tr","uk-UA":"uk","ur-PK":"ur","vi-VN":"vi","zh-CN":"zh-cn","zh-HK":"zh-hk","zh-TW":"zh-tw"};var eQ=l(36590),eZ=l.n(eQ);class e0{atX0SecondsPastTheMinuteGt20(){return this.data.atX0SecondsPastTheMinuteGt20}atX0MinutesPastTheHourGt20(){return this.data.atX0MinutesPastTheHourGt20}commaMonthX0ThroughMonthX1(){return this.data.commaMonthX0ThroughMonthX1}commaYearX0ThroughYearX1(){return this.data.commaYearX0ThroughYearX1}use24HourTimeFormatByDefault(){return this.data.use24HourTimeFormatByDefault}anErrorOccuredWhenGeneratingTheExpressionD(){return this.data.anErrorOccuredWhenGeneratingTheExpressionD}everyMinute(){return this.data.everyMinute}everyHour(){return this.data.everyHour}atSpace(){return this.data.atSpace}everyMinuteBetweenX0AndX1(){return this.data.everyMinuteBetweenX0AndX1}at(){return this.data.at}spaceAnd(){return this.data.spaceAnd}everySecond(){return this.data.everySecond}everyX0Seconds(){return this.data.everyX0Seconds}secondsX0ThroughX1PastTheMinute(){return this.data.secondsX0ThroughX1PastTheMinute}atX0SecondsPastTheMinute(){return this.data.atX0SecondsPastTheMinute}everyX0Minutes(){return this.data.everyX0Minutes}minutesX0ThroughX1PastTheHour(){return this.data.minutesX0ThroughX1PastTheHour}atX0MinutesPastTheHour(){return this.data.atX0MinutesPastTheHour}everyX0Hours(){return this.data.everyX0Hours}betweenX0AndX1(){return this.data.betweenX0AndX1}atX0(){return this.data.atX0}commaEveryDay(){return this.data.commaEveryDay}commaEveryX0DaysOfTheWeek(){return this.data.commaEveryX0DaysOfTheWeek}commaX0ThroughX1(){return this.data.commaX0ThroughX1}commaAndX0ThroughX1(){return this.data.commaAndX0ThroughX1}first(){return this.data.first}second(){return this.data.second}third(){return this.data.third}fourth(){return this.data.fourth}fifth(){return this.data.fifth}commaOnThe(){return this.data.commaOnThe}spaceX0OfTheMonth(){return this.data.spaceX0OfTheMonth}lastDay(){return this.data.lastDay}commaOnTheLastX0OfTheMonth(){return this.data.commaOnTheLastX0OfTheMonth}commaOnlyOnX0(){return this.data.commaOnlyOnX0}commaAndOnX0(){return this.data.commaAndOnX0}commaEveryX0Months(){return this.data.commaEveryX0Months}commaOnlyInX0(){return this.data.commaOnlyInX0}commaOnTheLastDayOfTheMonth(){return this.data.commaOnTheLastDayOfTheMonth}commaOnTheLastWeekdayOfTheMonth(){return this.data.commaOnTheLastWeekdayOfTheMonth}commaDaysBeforeTheLastDayOfTheMonth(){return this.data.commaDaysBeforeTheLastDayOfTheMonth}firstWeekday(){return this.data.firstWeekday}weekdayNearestDayX0(){return this.data.weekdayNearestDayX0}commaOnTheX0OfTheMonth(){return this.data.commaOnTheX0OfTheMonth}commaEveryX0Days(){return this.data.commaEveryX0Days}commaBetweenDayX0AndX1OfTheMonth(){return this.data.commaBetweenDayX0AndX1OfTheMonth}commaOnDayX0OfTheMonth(){return this.data.commaOnDayX0OfTheMonth}commaEveryHour(){return this.data.commaEveryHour}commaEveryX0Years(){return this.data.commaEveryX0Years}commaStartingX0(){return this.data.commaStartingX0}daysOfTheWeek(){return this.data.daysOfTheWeek}monthsOfTheYear(){return this.data.monthsOfTheYear}constructor(e){(0,a._)(this,"data",void 0),this.data=e}}let e1=e=>{(eZ().default?eZ().default:eZ()).initialize({load(t){t[null==e?void 0:e.lang]=new e0(null==e?void 0:e.cronstrue)}})};class e2 extends eL{async afterAdd(){let e=this.app.apiClient,t=e.auth.locale;try{var o;let n=await e.request({url:"app:getLang",params:{locale:t},headers:{"X-Role":"anonymous"}}),r=(null==n||null==(o=n.data)?void 0:o.data)||{};this.engine.context.defineProperty("locales",{value:r}),this.app.use(_.A,{component:!1}),r.lang&&(e.auth.setLocale(r.lang),this.app.i18n.changeLanguage(r.lang)),Object.keys(r.resources||{}).forEach(e=>{this.app.i18n.addResources(r.lang,e,r.resources[e]||{})}),(0,eY.tP)(r.lang),e1(r);let i=eX[r.lang]||"en";await l(65359)(`./${i}`),eJ().locale(i),window.cronLocale=r.cron}catch(e){throw e}}}let e4=["/signin","/signup","/forgot-password","/reset-password"];function e5(e,t){if(!t)return e;let l=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),o=RegExp(`^${l.replace(/\/?$/,"")}(\\/|$)`);return e.replace(o,"/")||e}function e8(e,t){let l=e5(e,t);return e4.some(e=>l===e||l.startsWith(`${e}/`))}function e3(e,t){let l=e5(e,t);return"/admin"===l||l.startsWith("/admin/")}let e6=(0,F.createContext)(null);e6.displayName="CurrentUserContext";let e9=e=>{let{children:t}=e,l=(0,E.n)(),o=(0,j.useLocation)(),[n,r]=(0,F.useState)(!0),[i,a]=(0,F.useState)(null),d=(0,F.useRef)(!1);if((0,F.useEffect)(()=>{let e=!0,t=l.router.getBasename(),n=e8(o.pathname,t)||l.router.isSkippedAuthCheckRoute(o.pathname),i=e3(o.pathname,t);if(n||!i){r(!1),a(null);return}return d.current||r(!0),a(null),(async()=>{try{await l.dataSourceManager.ensureLoaded(),d.current=!0,e&&r(!1)}catch(t){if(!e)return;r(!1),a(t instanceof Error?t:Error(String(t)))}})(),()=>{e=!1}},[l,o.pathname]),i)throw i;return n?l.renderComponent("AppSpin"):(0,s.jsx)(s.Fragment,{children:t})},e7=e=>{let{children:t}=e,l=(0,E.n)(),o=(0,j.useLocation)(),[n,r]=(0,F.useState)({loading:!0}),i=(0,F.useRef)(o.pathname);i.current=o.pathname;let a=(0,F.useRef)(o);return(a.current=o,(0,F.useEffect)(()=>{let e=!0,t=e8(i.current,l.router.getBasename())||l.router.isSkippedAuthCheckRoute(i.current),o=e3(i.current,l.router.getBasename());return t||!o?void r({loading:!1}):((async()=>{var t,o;try{let o=await l.apiClient.request({url:"/auth:check",skipNotify:!0,skipAuth:!0}),n=null==o||null==(t=o.data)?void 0:t.data;if((null==n?void 0:n.id)==null)return void(0,eT.BE)(l,(0,eT.vi)(l,a.current),{replace:!0});let i=(0,u.createCollectionContextMeta)(()=>{var e,t;return(null==(t=l.flowEngine.context.dataSourceManager)||null==(e=t.getDataSource("main"))?void 0:e.getCollection("users"))||null},l.flowEngine.translate("Current user"));i.sort=1e3,l.flowEngine.context.defineProperty("user",{value:n,resolveOnServer:!0,meta:i}),e&&r({data:null==o?void 0:o.data,loading:!1})}catch(t){if((null==t||null==(o=t.response)?void 0:o.status)===401||(null==t?void 0:t.status)===401)return void(0,eT.BE)(l,(0,eT.vi)(l,a.current),{replace:!0});throw e&&r({loading:!1}),t}})(),()=>{e=!1})},[l]),n.loading)?l.renderComponent("AppSpin"):(0,s.jsx)(e6.Provider,{value:n,children:t})},te=()=>{var e,t;let l=(0,E.n)(),o=!!(null==l||null==(t=l.apiClient)||null==(e=t.auth)?void 0:e.token);return((0,F.useEffect)(()=>{o||(0,eT.BE)(l,(0,eT.uk)(l),{replace:!0})},[l,o]),o)?(0,s.jsx)(j.Navigate,{replace:!0,to:"/admin"}):l.renderComponent("AppSpin")};class tt extends eL{async afterAdd(){await this.addPlugins()}async load(){this.addComponents(),this.addRoutes(),this.app.use(e9),this.app.use(e7),this.app.flowEngine.registerModels({AdminLayoutModel:eW.pX,AdminLayoutMenuItemModel:eW.xF,AdminSettingsLayoutModel:eH.C_}),this.app.pluginSettingsManager.addMenuItem({key:"plugin-manager",title:this.app.i18n.t("Plugin manager"),icon:"ApiOutlined",aclSnippet:"pm",sort:-200}),this.app.pluginSettingsManager.addPageTabItem({menuKey:"plugin-manager",key:"index",title:this.app.i18n.t("Plugin manager"),componentLoader:()=>Promise.resolve().then(l.bind(l,83458)),aclSnippet:"pm",sort:-200}),this.app.pluginSettingsManager.addMenuItem({key:"system-settings",title:this.app.i18n.t("System settings"),icon:"SettingOutlined",aclSnippet:"pm.system-settings.system-settings",sort:-100}),this.app.pluginSettingsManager.addPageTabItem({menuKey:"system-settings",key:"index",title:this.app.i18n.t("System settings"),componentLoader:()=>Promise.resolve().then(l.bind(l,10300)),aclSnippet:"pm.system-settings.system-settings",sort:-100})}addRoutes(){this.router.add("root",{path:"/",element:(0,s.jsx)(te,{})}),this.router.add("not-found",{path:"*",Component:L.bM}),this.router.add("admin",{path:"/admin",componentLoader:()=>l.e("7531").then(l.bind(l,80566))}),this.router.add("admin.settings",{path:"/admin/settings",componentLoader:()=>Promise.resolve().then(l.bind(l,43089))}),this.router.add("admin.settings.route-empty",{path:"*",Component:j.Outlet}),this.router.add("admin.page",{path:"/admin/:name",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.tab",{path:"/admin/:name/tab/:tabUid",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.view",{path:"/admin/:name/view/*",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.tab.view",{path:"/admin/:name/tab/:tabUid/view/*",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))})}addComponents(){}async addPlugins(){await this.app.pm.add(eU.s$$),await this.app.pm.add(e2,{name:"builtin-locale"})}}var tl=l(22803),to=l(36869);let tn=[{label:'{{t("contains")}}',value:"$includes",selected:!0},{label:'{{t("does not contain")}}',value:"$notIncludes"},{label:'{{t("is")}}',value:"$eq"},{label:'{{t("is not")}}',value:"$ne"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tr=[{label:'{{t("is")}}',value:"$match",selected:!0,schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is not")}}',value:"$notMatch",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is any of")}}',value:"$anyOf",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$noneOf",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],ti=[{label:"{{ t('is') }}",value:"$dateOn",selected:!0,schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is not') }}",value:"$dateNotOn",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is before') }}",value:"$dateBefore",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is after') }}",value:"$dateAfter",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is on or after') }}",value:"$dateNotBefore",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is on or before') }}",value:"$dateNotAfter",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is between') }}",value:"$dateBetween",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!0}}},{label:"{{ t('is empty') }}",value:"$empty",noValue:!0},{label:"{{ t('is not empty') }}",value:"$notEmpty",noValue:!0}],ta=[{label:'{{t("=")}}',value:"$eq",selected:!0},{label:'{{t("≠")}}',value:"$ne"},{label:'{{t(">")}}',value:"$gt"},{label:'{{t("≥")}}',value:"$gte"},{label:'{{t("<")}}',value:"$lt"},{label:'{{t("≤")}}',value:"$lte"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],ts=[{label:'{{t("is")}}',value:"$eq",selected:!0},{label:'{{t("is not")}}',value:"$ne"},{label:'{{t("exists")}}',value:"$exists",noValue:!0},{label:'{{t("not exists")}}',value:"$notExists",noValue:!0}],td=[{label:'{{t("is")}}',value:"$eq",selected:!0,schema:{"x-component":"Select","x-component-props":{mode:null}}},{label:'{{t("is not")}}',value:"$ne",schema:{"x-component":"Select","x-component-props":{mode:null}}},{label:'{{t("is any of")}}',value:"$in",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$notIn",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tu=[{label:'{{t("is")}}',value:"$eq",selected:!0},{label:'{{t("is not")}}',value:"$neq"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tc=[{label:'{{t("Yes")}}',value:"$isTruly",selected:!0,noValue:!0,schema:{"x-component":"Select","x-component-props":{multiple:!1,options:[{label:'{{t("Yes")}}',value:!0},{label:'{{t("No")}}',value:!1}]}}},{label:'{{t("No")}}',value:"$isFalsy",noValue:!0,schema:{"x-component":"Select","x-component-props":{multiple:!1,options:[{label:'{{t("Yes")}}',value:!0},{label:'{{t("No")}}',value:!1}]}}},{label:"{{ t('is empty') }}",value:"$empty",noValue:!0},{label:"{{ t('is not empty') }}",value:"$notEmpty",noValue:!0}],tp=[{label:'{{t("is any of")}}',value:"$childIn",schema:{"x-component":"CollectionSelect","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$childNotIn",schema:{"x-component":"CollectionSelect","x-component-props":{mode:"tags"}}}],th=[{label:'{{t("is")}}',value:"$eq",selected:!0,schema:{"x-component":"DataSourceCollectionCascader"}},{label:'{{t("is not")}}',value:"$ne",schema:{"x-component":"DataSourceCollectionCascader"}},{label:'{{t("is any of")}}',value:"$in",schema:{"x-component":"DataSourceCollectionCascader","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$notIn",schema:{"x-component":"DataSourceCollectionCascader","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tm=[{label:'{{t("contains")}}',value:"$includes",selected:!0,schema:{type:"string","x-component":"Input"}},{label:'{{t("does not contain")}}',value:"$notIncludes",schema:{type:"string","x-component":"Input"}},{label:'{{t("is")}}',value:"$eq",schema:{type:"string","x-component":"Input"}},{label:'{{t("is not")}}',value:"$ne",schema:{type:"string","x-component":"Input"}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0,schema:{type:"string","x-component":"Input"}},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0,schema:{type:"string","x-component":"Input"}}],tf={type:"boolean","x-content":'{{t("Unique")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly || primaryKeyOnly }}","x-reactions":[{dependencies:["primaryKey"],when:"{{$deps[0]}}",fulfill:{state:{value:!1}}}]},tg={type:"boolean","x-content":'{{t("Primary")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly || primaryKeyOnly }}","x-reactions":[{dependencies:["unique"],when:"{{$deps[0]&&createMainOnly}}",fulfill:{state:{value:!1}}}]},tv={type:"boolean",title:'{{t("Auto increment")}}',"x-content":'{{t("Auto increment")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly }}","x-reactions":[{dependencies:["primaryKey"],when:"{{$deps[0]&&createMainOnly}}",fulfill:{state:{value:!0}}}]},ty={type:"boolean",title:'{{t("Default value")}}',"x-content":'{{t("Automatically generate default values")}}',"x-decorator":"FormItem","x-component":"Checkbox",default:!0},tb={type:"string",title:'{{t("Relationship type")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Select",enum:[{label:"{{t('HasOne')}}",value:"hasOne"},{label:"{{t('HasMany')}}",value:"hasMany"},{label:"{{t('BelongsTo')}}",value:"belongsTo"},{label:"{{t('BelongsToMany')}}",value:"belongsToMany"}]},tx={onDelete:{type:"string",title:'{{t("ON DELETE")}}',required:!0,default:"SET NULL","x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Select",enum:[{label:"{{t('SET NULL')}}",value:"SET NULL"},{label:"{{t('RESTRICT')}}",value:"RESTRICT"},{label:"{{t('CASCADE')}}",value:"CASCADE"},{label:"{{t('NO ACTION')}}",value:"NO ACTION"}]}},tw={reverse:{type:"void","x-component":"div",properties:{autoCreateReverseField:{type:"boolean",default:!1,"x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Create inverse field in the target collection")}}',"x-reactions":[{target:"reverseField.type",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},{target:"reverseField.uiSchema.title",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},{target:"reverseField.name",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},e=>{let{reverseField:t}=e.form.values;e.value=!!(null==t?void 0:t.key),e.disabled=!!(null==t?void 0:t.key)}]},"reverseField.type":{...tb,title:'{{t("Inverse relationship type")}}'},"reverseField.uiSchema.title":{type:"string",title:'{{t("Inverse field display name")}}',default:"{{record.title}}",required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !showReverseFieldConfig }}"},"reverseField.name":{type:"string",title:'{{t("Inverse field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-validator":"uid","x-disabled":"{{ !showReverseFieldConfig }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}}},tS={"uiSchema.x-component-props.picker":{type:"string",title:'{{t("Picker")}}',"x-decorator":"FormItem","x-component":"Radio.Group",default:"date",enum:[{label:'{{t("Date")}}',value:"date"},{label:'{{t("Month")}}',value:"month"},{label:'{{t("Quarter")}}',value:"quarter"},{label:'{{t("Year")}}',value:"year"}]},"uiSchema.x-component-props.dateFormat":{type:"string",title:'{{t("Date format")}}',"x-decorator":"FormItem","x-component":"ExpiresRadio","x-decorator-props":{},"x-component-props":{className:(0,tl.AH)`
959
+ `},r,a.createElement("div",{style:o},t)):r},m=(e,t)=>t?{...e,showTotal:!1,showSizeChanger:!1,showLessItems:!0,className:p(e.className,c())}:e},36098(e,t,l){l.d(t,{n:()=>n});var o=l(40532);let n=()=>(0,o.useFlowEngineContext)().app},99002(e,t,l){l.d(t,{n:()=>n});var o=l(36098);function n(e){return(0,o.n)().pm.get(e)}},65970(e,t,l){l.r(t),l.d(t,{EditFormModel:()=>eW.Y5n,linkageRulesRefresh:()=>eW.S3Z,filterFormDefaultValues:()=>eW.IBN,DisplayTimeFieldModel:()=>eW.$FU,FlowRoute:()=>eW.YmV,LinkActionModel:()=>eW.CII,RecordActionModel:()=>eW.LAC,UpdatedAtFieldInterface:()=>ln,buildRecordPickerParentItemContext:()=>eW.oM7,FormSubmitActionModel:()=>eW.u36,RootPageTabModel:()=>eW._$j,AIManager:()=>B,redirectToLegacySignin:()=>eD.BE,openViewFlow:()=>eW.gvx,toTreeSelectItems:()=>eW.Gap,InputFieldInterface:()=>tV,AppError:()=>L.uV,IconFieldInterface:()=>t$,UrlFieldInterface:()=>li,blockHeight:()=>eW.Bum,PercentFieldInterface:()=>t5,GlobalThemeProvider:()=>N.U_,PluginSettingsTopbarActionModel:()=>eW.ESx,convertV2AdminPathToLegacy:()=>eD.Sx,UpdatedByFieldInterface:()=>lr,getDetailsItemValue:()=>eW.ROt,resolveCustomFieldOperatorList:()=>eW.eCD,DateFieldInterface:()=>lu,CreateFormModel:()=>eW.wLo,AdminLayoutComponent:()=>eW.V6y,FilterManager:()=>eW.qh$,findPrevSiblingRoute:()=>eW.Cuw,DisplayTitleFieldModel:()=>eW.mU7,useMobileLayout:()=>eW.mYX,M2MFieldInterface:()=>tY,useUIConfigurationPermissions:()=>eT.uM,SubTableFieldModel:()=>eW.mHU,AppMaintaining:()=>L.be,CreatedAtFieldInterface:()=>tT,EmailFieldInterface:()=>tO,PopupSubTableActionsColumnModel:()=>eW.FaR,PopupSubTableFormSubmitActionModel:()=>eW.spd,FormBlockModel:()=>eW.F4f,MockFlowModelRepository:()=>eW.WuM,BaseApplication:()=>eu,FilterBlockModel:()=>eW.v$f,FieldDeletePlaceholder:()=>eW.xIu,findNextSiblingRoute:()=>eW.Evi,DateTimeNoTzFilterFieldModel:()=>eW.e7h,icons:()=>L.Pt,CollectionSelectorFieldModel:()=>eW.Z0H,blockLinkageRules:()=>eW.aWb,CheckboxGroupFieldInterface:()=>tE,defaultTheme:()=>N.zQ,FilterFormActionGroupModel:()=>eW.dv2,collectCascadeHydrationCandidate:()=>eW.qlo,ObjectNester:()=>eW.Xmd,TableJSFieldItemModel:()=>eW._e9,DetailsAssociationFieldGroupModel:()=>eW.sD1,fieldLinkageRules:()=>eW.znN,mergePaginationClassName:()=>eW.M6q,RichTextFieldModel:()=>eW.DvX,FilterFormResetActionModel:()=>eW.zUb,UnitConversion:()=>eW.VPO,AdminLayoutModel:()=>eW.pXX,UserCenterTopbarActionModel:()=>eW.ccc,RefreshActionModel:()=>eW.n6C,buildInsertRouteSchema:()=>eW.QBt,linkageSetBlockProps:()=>eW.LFq,DisplayIconFieldModel:()=>eW.xEQ,CollectionBlockModel:()=>eW.tPG,DisplayJSONFieldModel:()=>eW.qPo,PopupActionModel:()=>eW.a6D,FieldOperatorSelect:()=>eW.T8$,ActionWithoutPermission:()=>eW._TB,NanoidFieldInterface:()=>ls,O2MFieldInterface:()=>tZ,OBOFieldInterface:()=>t2,NocoBaseBuildInPluginV2:()=>tl,AdminLayoutMenuModelRenderer:()=>eW.xc1,ViewActionModel:()=>eW.v8l,SubTableColumnModel:()=>eW.WHj,CheckboxFieldInterface:()=>tI,FieldModel:()=>eW.oLV,O2OFieldInterface:()=>t0,UUIDFieldInterface:()=>la,linkageSetDetailsFieldProps:()=>eW.KAX,resolveAdminLayoutMenuLink:()=>eW.fi1,FilterFormRecordSelectFieldModel:()=>eW.ZMt,getDefaultV2AdminRedirectPath:()=>eD.uk,CollectionFieldInterfaceManager:()=>ef,customVariable:()=>eW.I6c,getQuickEditFieldProps:()=>eW.YXr,ACLRolesCheckProvider:()=>eT.rR,DisplayNumberFieldModel:()=>eW.LbM,EditFormContent:()=>eW.AV5,getMobileCompactPaginationClassName:()=>eW.NYj,RecordActionGroupModel:()=>eW.gk0,PageModel:()=>eW.XK0,BulkDeleteActionModel:()=>eW.Ni4,getValueWithIndex:()=>eW.kPK,JSItemActionModel:()=>eW.ymi,FormGridModel:()=>eW.Ybt,toToolsMap:()=>q,ChildPageTabModel:()=>eW.wW_,FilterItem:()=>eW.qi_,SystemSettingsSource:()=>eW.orA,transformNestedData:()=>eW.Anr,layout:()=>eW.Zpx,createCompactSimpleItemRender:()=>eW.hHg,AssociationFieldModel:()=>eW.bPr,ADMIN_SETTINGS_PATH:()=>eM.wq,ADMIN_SETTINGS_LAYOUT_MODEL_UID:()=>eW.OaU,ApplicationContext:()=>eN,UserCenterActionItemModel:()=>eW.ngq,MainPageModel:()=>eW.qir,Application:()=>e_,DisplayURLFieldModel:()=>eW.Vrl,LayoutContent:()=>eW.A14,RichTextField:()=>eW.OsV,numberFormat:()=>eW.jqd,FilterFormActionModel:()=>eW.cNN,getAllDataModels:()=>eW.w5F,JSFieldModel:()=>eW.P0,matchesRoutePath:()=>eW.Qb_,connectFields:()=>eW.KYF,GridModel:()=>eW.QuL,getUnknownCountPaginationTotal:()=>eW.SMJ,DisplaySubItemFieldModel:()=>eW.dhL,PluginManagerPage:()=>eW.ksX,ADMIN_SETTINGS_KEY:()=>eM.w$,UnixTimestampFieldInterface:()=>ld,compatOldTheme:()=>N.Ne,JSBlockModel:()=>eW.YJB,buildMenuTitleWithIcon:()=>eW.riZ,getAdminLayoutMenuMovePositionOptions:()=>eW.B82,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>eW.i6C,PercentInput:()=>eW.er5,AdminLayoutContent:()=>eW.xtQ,DisplaySubListFieldModel:()=>eW.k9Q,CollectionActionModel:()=>eW.UZR,injectRecordPickerPopupContext:()=>eW.gaO,editMarkdownFlow:()=>eW.uMh,getMenuCreationDefaultParams:()=>eW.y8o,AdminLayoutMenuItemRenderer:()=>eW.B_2,NBColorPicker:()=>eW.qtW,DisplayCheckboxFieldModel:()=>eW.v9U,SubTableRecordAction:()=>eW.sJA,operatorComponentProps:()=>eW.KHY,transformRowsToSingleColumn:()=>eW.vbm,RemoteFlowModelRenderer:()=>eW.zCA,UpdateRecordActionModel:()=>eW.MhO,getMenuCreationUiSchema:()=>eW._IX,findSettingsByName:()=>eW.R0X,FilterContent:()=>eW.oJ5,VariableFilterItem:()=>eW.Et2,AntdAppProvider:()=>D,FilterFormJSActionModel:()=>eW.t_n,AppNotFound:()=>L.bM,DefaultToolsManager:()=>$,LinkageFilterItem:()=>eW.Ru1,UserCenterSelectItemModel:()=>eW.FKm,TextAreaWithContextSelector:()=>eW.nap,CommonItemModel:()=>eW.Uhv,IntegerFieldInterface:()=>tz,FormComponent:()=>eW.s2f,RouteRepository:()=>z,TableCustomColumnModel:()=>eW.Fts,SubPageModel:()=>eW.RLu,customAlgorithm:()=>N.ze,customizeFilterRender:()=>eW.wUQ,registerIcons:()=>L.K1,FilterFormCustomRecordSelectFieldModel:()=>eW.udY,DisplaySubTableFieldModel:()=>eW.m5p,UIEditorTopbarActionModel:()=>eW.h2d,PluginSettingsManager:()=>eM.mz,SelectFieldModel:()=>eW.CCB,UserCenterItemModel:()=>eW.np$,findFirstInternalSettingsPage:()=>eW.X2M,AddChildActionModel:()=>eW.lcp,OHOFieldInterface:()=>t1,PopupSubTableEditActionModel:()=>eW.oIl,linkageRunjs:()=>eW.Myf,RootPageModel:()=>eW.T6P,getAdminLayoutMenuVirtualPath:()=>eW.Px_,DateTimeTzPicker:()=>eW.mUg,ColorFieldInterface:()=>tR,RecordSelectFieldModel:()=>eW.BgT,resolveAdminLayoutMenuDragMoveOptionsFromEvent:()=>eW.eLO,AppSpin:()=>L.gv,PercentFieldModel:()=>eW.v6e,fixed:()=>eW.Zu2,formatNumber:()=>eW.ZVp,FormJSFieldItemModel:()=>eW.kN,JSEditableFieldModel:()=>eW.Nxx,findFirstAccessiblePageRoute:()=>eW.MMn,getCurrentV2RedirectPath:()=>eD.vi,languageCodes:()=>eU.A,useAclSnippets:()=>eT.K3,DisplayTextFieldModel:()=>eW.Tuv,PluginManager:()=>eS,ApplicationModel:()=>eh,dataScope:()=>eW.fAh,buildRecordPickerPopupContextInputArgs:()=>eW.S5n,ActionModel:()=>eW.S0L,DateTimeNoTzPicker:()=>eW.pVr,recalculateGridSizes:()=>eW.aDm,DateOnlyFilterFieldModel:()=>eW.K4N,toOperatorSelectOptions:()=>eW.kA1,PhoneFieldInterface:()=>t8,QUICK_EDIT_FORM_MAX_HEIGHT:()=>eW.x_D,JsonFieldInterface:()=>tU,CodeEditorExtension:()=>eW.o8y,DateTimeNoTzFieldModel:()=>eW.cPq,findOptionPathByTk:()=>eW.s5W,titleField:()=>eW.Pqd,UserCenterTextItemModel:()=>eW.ysz,FilterGroup:()=>eW.I8R,USER_CENTER_ACTION_ID:()=>eW.Bnh,diagnoseRunJS:()=>eW.fLT,DisplayHtmlFieldModel:()=>eW.vrA,useRouter:()=>eK,aclCheck:()=>eW.VGp,SubFormListFieldModel:()=>eW.sW6,JsonInput:()=>eW.fnr,FilterFormSubmitActionModel:()=>eW.y2s,getAdminLayoutMenuInitializerButton:()=>eW.Tnx,TableBlockModel:()=>eW.zDb,getMenuItems:()=>eW.gLn,BlockSceneEnum:()=>eW.PW6,FormBlockContent:()=>eW.JUj,JSFormActionModel:()=>eW.l5h,getPinnedPluginListKeys:()=>eR.k,reconcileAdminLayoutMenuItems:()=>eW.tSM,FilterFormCollapseActionModel:()=>eW.D1b,useACLRoleContext:()=>eT.v6,replaceRouteParams:()=>eW.uTv,Plugin:()=>eV,ResetThemeTokenAndKeepAlgorithm:()=>eW.fCM,normalizeAdminLayoutMenuLegacyVariables:()=>eW.ux6,PinnedPluginListLite:()=>eW.Kgy,useRoleRecheck:()=>eT.N5,MobileMenuControlContext:()=>eW.Qt8,CustomWidth:()=>eW.K$V,CollectionSelectFieldInterface:()=>t_,BlockGridModel:()=>eW.LaP,NocoBaseBuildInPlugin:()=>tl,AdminLayoutRouteCoordinator:()=>eW.N9e,CollectionFieldInterface:()=>tj,filterRenderableSettings:()=>eW.Ui7,TableActionsColumnModel:()=>eW.B6V,runjs:()=>eW.ZCq,resolveAdminRouteRuntimeTarget:()=>eW.YjI,ACLContext:()=>eT.w0,buildLinkSettingSchema:()=>eW.qNx,subFormFieldLinkageRules:()=>eW.D2p,subFormLinkageSetFieldProps:()=>eW.gbJ,RouteModel:()=>eW.j0c,IdFieldInterface:()=>tB,FormCustomItemModel:()=>eW.wBN,CheckboxGroupFieldModel:()=>eW.MeX,MENU_TYPE_OPTIONS:()=>eW.o2o,AdminSettingsLayout:()=>eW.djK,TableColumnModel:()=>eW.ivU,required:()=>eW.mw3,PopupCollectionActionModel:()=>eW.YXI,FilterFormCustomItemModel:()=>eW.I6Z,MAX_MESSAGE_CHARS:()=>eW.hPI,BlankComponent:()=>L.ct,JSItemModel:()=>eW.qJ3,SkeletonFallback:()=>eW.KSc,FormActionModel:()=>eW.sEB,validation:()=>eW.Eq4,applyMobilePaginationProps:()=>eW.hOt,PopupSubTableFieldModel:()=>eW.Uk$,DeleteActionModel:()=>eW.rvE,shouldRenderIconInTitle:()=>eW.Ucr,CreatedByFieldInterface:()=>tD,CascadeSelectListFieldModel:()=>eW.W4I,NumberFieldInterface:()=>tQ,DateTimeTzFieldModel:()=>eW.zqF,PLUGIN_MANAGER_SETTING_NAME:()=>eW.BmO,isFilterValueEmpty:()=>eW.tUI,BasePageTabModel:()=>eW.BpQ,pattern:()=>eW.T16,AssociationFieldGroupModel:()=>eW.mw1,DetailsBlockModel:()=>eW.PU8,JSActionModel:()=>eW.Hn2,Icon:()=>L.In,WebSocketClient:()=>K,useApp:()=>E.n,getUniqueKeyFromCollection:()=>tH,FilterFormItemModel:()=>eW.vIF,CheckboxFieldModel:()=>eW.zFh,navigateToURL:()=>eW.isP,resolveLegacySigninRedirect:()=>eD.M4,DisplayDateTimeFieldModel:()=>eW.Ra0,formatRunJSPreviewMessage:()=>eW.byO,IconFieldModel:()=>eW.rpg,ActionSceneEnum:()=>eW.s5y,JSRecordActionModel:()=>eW.uVo,SnowflakeIdFieldInterface:()=>t7,formAssignRules:()=>eW.dWc,ChildPageModel:()=>eW.JvK,resolveDefaultCustomFieldOperator:()=>eW.T9,SYSTEM_SETTINGS_SETTING_NAME:()=>eW.jmZ,TimeFieldModel:()=>eW.Fy3,ActionGroupModel:()=>eW.xdz,createDefaultCollectionBlockTitle:()=>eW.lrV,AssignFormItemModel:()=>eW.saj,toViewStack:()=>eW.Hwd,SourceCascader:()=>eW.AvD,FilterFormCustomFieldModel:()=>eW.xz3,FilterFormFieldModel:()=>eW.Mf0,LinkToFieldInterface:()=>tW,createSettingsPathMap:()=>eW.nCj,dateTimeFormat:()=>eW.LE6,useACLContext:()=>eT.bq,PasswordFieldInterface:()=>t4,InputNumberField:()=>eW.mLo,displayFieldComponent:()=>eW.kkB,CodeEditor:()=>eW.BYM,SNIPPET_PREFIX:()=>eM.tJ,MarkdownFieldInterface:()=>tJ,RadioGroupFieldInterface:()=>t3,RecordPickerContent:()=>eW.vy4,M2OFieldInterface:()=>tG,actionLinkageRules:()=>eW.tQF,TableSelectModel:()=>eW.mSG,afterSuccess:()=>eW.mKE,PopupSubTableFormActionGroupModel:()=>eW.d13,matchSettingsRoute:()=>eW.CM3,InputFieldModel:()=>eW.mRH,filterVisibleSettings:()=>eW.eDc,showMessage:()=>eW.rGX,BlockModel:()=>eW.zgg,resolveAdminLayoutMenuDragMoveOptions:()=>eW.OtO,PopupSubTableRemoveActionModel:()=>eW.Ie6,GRID_FLOW_KEY:()=>eW.cEK,JSColumnModel:()=>eW.l2T,FormAssociationItemModel:()=>eW.ur8,PopupSubTableActionGroupModel:()=>eW.HJv,showNotification:()=>eW.Dsh,RouterManager:()=>eC,GRID_STEP:()=>eW._UX,FilterFormBlockModel:()=>eW.D8m,FilterFormGridModel:()=>eW.www,confirm:()=>eW.lJp,registerIcon:()=>L.pU,toRouterNavigationPath:()=>eW.Yjq,SubFormFieldModel:()=>eW.Imp,MarkdownItemModel:()=>eW.qqP,openAdminLayoutMenuLink:()=>eW.jjG,DatetimeFieldInterface:()=>tN,JSCollectionActionModel:()=>eW.dIg,addCustomAlgorithmToTheme:()=>N._l,FormAssociationFieldGroupModel:()=>eW.EcU,TableoidFieldInterface:()=>lt,linkageSetActionProps:()=>eW.mQM,setTargetDataScope:()=>eW.mp5,TextareaFieldInterface:()=>ll,CreateContent:()=>eW.G9F,linkageAssignField:()=>eW.fMK,AdminLayoutMenuItemModel:()=>eW.xFY,buildLegacySigninHref:()=>eD.LQ,AssignFormGridModel:()=>eW.dpX,createMockClient:()=>eL,CollectionActionGroupModel:()=>eW.zsf,AddNewActionModel:()=>eW.to1,DetailsGridModel:()=>eW.ql0,DateOnlyPicker:()=>eW.xkv,SelectFieldInterface:()=>t9,DateTimeFilterFieldModel:()=>eW.foc,TimeFieldInterface:()=>lo,dispatchEventDeep:()=>eW.Xig,getDefaultOperator:()=>eW.aqk,usePlugin:()=>ez.n,DetailsJSFieldItemModel:()=>eW.ODR,DataBlockModel:()=>eW.RBt,SubTableFieldInterface:()=>le,overflowMode:()=>eW.COB,useSystemSettings:()=>eW.e6V,NumberFieldModel:()=>eW.r39,DividerItemModel:()=>eW.upH,FieldModelSelect:()=>eW.khg,DateTimeTzFilterFieldModel:()=>eW.pKk,JsonFieldModel:()=>eW.mNj,PopupSubTableFormModel:()=>eW.iT0,getMenuEditDefaultParams:()=>eW.n8$,DetailsItemModel:()=>eW.ZjK,fieldComponent:()=>eW.e7P,DisplayPasswordFieldModel:()=>eW.$T1,PinnedPluginListContext:()=>eR.D,RichTextFieldInterface:()=>t6,useGlobalTheme:()=>N.my,SystemSettingsPage:()=>eW.WzN,TableAssociationFieldGroupModel:()=>eW.GJ1,dataLoadingMode:()=>eW.kbf,buildDisplayPathFromValue:()=>eW.d6j,FlowPage:()=>eW.KTk,subFormLinkageAssignField:()=>eW.zTu,EditActionModel:()=>eW.m2W,ExpandCollapseActionModel:()=>eW.hCX,createInsertMenuStep:()=>eW.FWr,MultipleSelectFieldInterface:()=>tX,buildMenuBasicSchema:()=>eW.ThI,getAdminLayoutModel:()=>eW.t_Y,PasswordFieldModel:()=>eW.dWg,aclCheckRefresh:()=>eW.Yh4,defaultOperator:()=>eW.CDb,DateOnlyFieldModel:()=>eW.s2k,getDefaultSettingsPath:()=>eW.C9C,hasIcon:()=>L.cE,joinUrlSearch:()=>eW.wqT,markCascadeHydrationDone:()=>eW.Ck8,ColorFieldModel:()=>eW.t4X,FormActionGroupModel:()=>eW.R8A,DetailsCustomItemModel:()=>eW.ivi,openView:()=>eW.e8C,InternalAdminSettingsLayout:()=>eW.Q7G,PageTabModel:()=>eW.sYw,RadioGroupFieldModel:()=>eW.wwh,AppMaintainingDialog:()=>L.tp,PluginFlowEngine:()=>eW.s$$,renderMode:()=>eW.IAc,AssignFormModel:()=>eW.Xw5,FilterActionModel:()=>eW.omq,ADMIN_LAYOUT_MODEL_UID:()=>eW.Mxl,FlowModelRepository:()=>eW.cYG,TopbarActionModel:()=>eW.k9E,getDisplayNumber:()=>eW.cm5,RouterContextCleaner:()=>L.PK,CascadeSelectInnerFieldModel:()=>eW.mzg,ClickableFieldModel:()=>eW.upW,CascadeSelectFieldModel:()=>eW.sJK,createAclSnippetAllow:()=>eT.rN,collectAssociationHydrationCandidates:()=>eW.ULH,getSimpleModePaginationClassName:()=>eW.HZo,linkageSetFieldProps:()=>eW.uFv,TextareaFieldModel:()=>eW.AMH,previewRunJS:()=>eW.zA_,FormModel:()=>eW.mOW,getTopbarPluginSettingsItems:()=>eW.XCP,VariableFieldFormModel:()=>eW.m$$,DisplayColorFieldModel:()=>eW.Ppd,detailsFieldLinkageRules:()=>eW.Dhs,RecordPickerFieldModel:()=>eW.J$w,hasOwnSettingsPage:()=>eW.lv4,useApplications:()=>eW.HWn,DisplayPercentFieldModel:()=>eW.hNf,QuickEditFormModel:()=>eW.biS,sortingRule:()=>eW.hsC,AdminSettingsLayoutModel:()=>eW.C_u,HeaderContext:()=>eW.B94,QUICK_EDIT_MARKDOWN_HEIGHT:()=>eW.vW_,sortTopLevelSettings:()=>eW.p$W,useCurrentRoleMode:()=>eT.GL,DatetimeNoTzFieldInterface:()=>lc,insertRouteSchema:()=>eW.eDQ,FormItemModel:()=>eW.JgE,refreshTargetBlocks:()=>eW.J9o,DisplayEnumFieldModel:()=>eW.VcJ});var o={};l.r(o),l.d(o,{ACLContext:()=>eT.w0,ACLRolesCheckProvider:()=>eT.rR,ADMIN_LAYOUT_MODEL_UID:()=>eW.Mxl,ADMIN_SETTINGS_KEY:()=>eM.w$,ADMIN_SETTINGS_LAYOUT_MODEL_UID:()=>eW.OaU,ADMIN_SETTINGS_PATH:()=>eM.wq,AIManager:()=>B,ActionGroupModel:()=>eW.xdz,ActionModel:()=>eW.S0L,ActionSceneEnum:()=>eW.s5y,ActionWithoutPermission:()=>eW._TB,AddChildActionModel:()=>eW.lcp,AddNewActionModel:()=>eW.to1,AdminLayoutComponent:()=>eW.V6y,AdminLayoutContent:()=>eW.xtQ,AdminLayoutMenuItemModel:()=>eW.xFY,AdminLayoutMenuItemRenderer:()=>eW.B_2,AdminLayoutMenuModelRenderer:()=>eW.xc1,AdminLayoutModel:()=>eW.pXX,AdminLayoutRouteCoordinator:()=>eW.N9e,AdminSettingsLayout:()=>eW.djK,AdminSettingsLayoutModel:()=>eW.C_u,AntdAppProvider:()=>D,AppError:()=>L.uV,AppMaintaining:()=>L.be,AppMaintainingDialog:()=>L.tp,AppNotFound:()=>L.bM,AppSpin:()=>L.gv,Application:()=>e_,ApplicationContext:()=>eN,ApplicationModel:()=>eh,AssignFormGridModel:()=>eW.dpX,AssignFormItemModel:()=>eW.saj,AssignFormModel:()=>eW.Xw5,AssociationFieldGroupModel:()=>eW.mw1,AssociationFieldModel:()=>eW.bPr,BaseApplication:()=>eu,BasePageTabModel:()=>eW.BpQ,BlankComponent:()=>L.ct,BlockGridModel:()=>eW.LaP,BlockModel:()=>eW.zgg,BlockSceneEnum:()=>eW.PW6,BulkDeleteActionModel:()=>eW.Ni4,CascadeSelectFieldModel:()=>eW.sJK,CascadeSelectInnerFieldModel:()=>eW.mzg,CascadeSelectListFieldModel:()=>eW.W4I,CheckboxFieldInterface:()=>tI,CheckboxFieldModel:()=>eW.zFh,CheckboxGroupFieldInterface:()=>tE,CheckboxGroupFieldModel:()=>eW.MeX,ChildPageModel:()=>eW.JvK,ChildPageTabModel:()=>eW.wW_,ClickableFieldModel:()=>eW.upW,CodeEditor:()=>eW.BYM,CodeEditorExtension:()=>eW.o8y,CollectionActionGroupModel:()=>eW.zsf,CollectionActionModel:()=>eW.UZR,CollectionBlockModel:()=>eW.tPG,CollectionFieldInterface:()=>tj,CollectionFieldInterfaceManager:()=>ef,CollectionSelectFieldInterface:()=>t_,CollectionSelectorFieldModel:()=>eW.Z0H,ColorFieldInterface:()=>tR,ColorFieldModel:()=>eW.t4X,CommonItemModel:()=>eW.Uhv,CreateContent:()=>eW.G9F,CreateFormModel:()=>eW.wLo,CreatedAtFieldInterface:()=>tT,CreatedByFieldInterface:()=>tD,CustomWidth:()=>eW.K$V,DataBlockModel:()=>eW.RBt,DateFieldInterface:()=>lu,DateOnlyFieldModel:()=>eW.s2k,DateOnlyFilterFieldModel:()=>eW.K4N,DateOnlyPicker:()=>eW.xkv,DateTimeFilterFieldModel:()=>eW.foc,DateTimeNoTzFieldModel:()=>eW.cPq,DateTimeNoTzFilterFieldModel:()=>eW.e7h,DateTimeNoTzPicker:()=>eW.pVr,DateTimeTzFieldModel:()=>eW.zqF,DateTimeTzFilterFieldModel:()=>eW.pKk,DateTimeTzPicker:()=>eW.mUg,DatetimeFieldInterface:()=>tN,DatetimeNoTzFieldInterface:()=>lc,DefaultToolsManager:()=>$,DeleteActionModel:()=>eW.rvE,DetailsAssociationFieldGroupModel:()=>eW.sD1,DetailsBlockModel:()=>eW.PU8,DetailsCustomItemModel:()=>eW.ivi,DetailsGridModel:()=>eW.ql0,DetailsItemModel:()=>eW.ZjK,DetailsJSFieldItemModel:()=>eW.ODR,DisplayCheckboxFieldModel:()=>eW.v9U,DisplayColorFieldModel:()=>eW.Ppd,DisplayDateTimeFieldModel:()=>eW.Ra0,DisplayEnumFieldModel:()=>eW.VcJ,DisplayHtmlFieldModel:()=>eW.vrA,DisplayIconFieldModel:()=>eW.xEQ,DisplayJSONFieldModel:()=>eW.qPo,DisplayNumberFieldModel:()=>eW.LbM,DisplayPasswordFieldModel:()=>eW.$T1,DisplayPercentFieldModel:()=>eW.hNf,DisplaySubItemFieldModel:()=>eW.dhL,DisplaySubListFieldModel:()=>eW.k9Q,DisplaySubTableFieldModel:()=>eW.m5p,DisplayTextFieldModel:()=>eW.Tuv,DisplayTimeFieldModel:()=>eW.$FU,DisplayTitleFieldModel:()=>eW.mU7,DisplayURLFieldModel:()=>eW.Vrl,DividerItemModel:()=>eW.upH,EditActionModel:()=>eW.m2W,EditFormContent:()=>eW.AV5,EditFormModel:()=>eW.Y5n,EmailFieldInterface:()=>tO,ExpandCollapseActionModel:()=>eW.hCX,FieldDeletePlaceholder:()=>eW.xIu,FieldModel:()=>eW.oLV,FieldModelSelect:()=>eW.khg,FieldOperatorSelect:()=>eW.T8$,FilterActionModel:()=>eW.omq,FilterBlockModel:()=>eW.v$f,FilterContent:()=>eW.oJ5,FilterFormActionGroupModel:()=>eW.dv2,FilterFormActionModel:()=>eW.cNN,FilterFormBlockModel:()=>eW.D8m,FilterFormCollapseActionModel:()=>eW.D1b,FilterFormCustomFieldModel:()=>eW.xz3,FilterFormCustomItemModel:()=>eW.I6Z,FilterFormCustomRecordSelectFieldModel:()=>eW.udY,FilterFormFieldModel:()=>eW.Mf0,FilterFormGridModel:()=>eW.www,FilterFormItemModel:()=>eW.vIF,FilterFormJSActionModel:()=>eW.t_n,FilterFormRecordSelectFieldModel:()=>eW.ZMt,FilterFormResetActionModel:()=>eW.zUb,FilterFormSubmitActionModel:()=>eW.y2s,FilterGroup:()=>eW.I8R,FilterItem:()=>eW.qi_,FilterManager:()=>eW.qh$,FlowModelRepository:()=>eW.cYG,FlowPage:()=>eW.KTk,FlowRoute:()=>eW.YmV,FormActionGroupModel:()=>eW.R8A,FormActionModel:()=>eW.sEB,FormAssociationFieldGroupModel:()=>eW.EcU,FormAssociationItemModel:()=>eW.ur8,FormBlockContent:()=>eW.JUj,FormBlockModel:()=>eW.F4f,FormComponent:()=>eW.s2f,FormCustomItemModel:()=>eW.wBN,FormGridModel:()=>eW.Ybt,FormItemModel:()=>eW.JgE,FormJSFieldItemModel:()=>eW.kN,FormModel:()=>eW.mOW,FormSubmitActionModel:()=>eW.u36,GRID_FLOW_KEY:()=>eW.cEK,GRID_STEP:()=>eW._UX,GlobalThemeProvider:()=>N.U_,GridModel:()=>eW.QuL,HeaderContext:()=>eW.B94,Icon:()=>L.In,IconFieldInterface:()=>t$,IconFieldModel:()=>eW.rpg,IdFieldInterface:()=>tB,InputFieldInterface:()=>tV,InputFieldModel:()=>eW.mRH,InputNumberField:()=>eW.mLo,IntegerFieldInterface:()=>tz,InternalAdminSettingsLayout:()=>eW.Q7G,JSActionModel:()=>eW.Hn2,JSBlockModel:()=>eW.YJB,JSCollectionActionModel:()=>eW.dIg,JSColumnModel:()=>eW.l2T,JSEditableFieldModel:()=>eW.Nxx,JSFieldModel:()=>eW.P0,JSFormActionModel:()=>eW.l5h,JSItemActionModel:()=>eW.ymi,JSItemModel:()=>eW.qJ3,JSRecordActionModel:()=>eW.uVo,JsonFieldInterface:()=>tU,JsonFieldModel:()=>eW.mNj,JsonInput:()=>eW.fnr,LayoutContent:()=>eW.A14,LinkActionModel:()=>eW.CII,LinkToFieldInterface:()=>tW,LinkageFilterItem:()=>eW.Ru1,M2MFieldInterface:()=>tY,M2OFieldInterface:()=>tG,MAX_MESSAGE_CHARS:()=>eW.hPI,MENU_TYPE_OPTIONS:()=>eW.o2o,MainPageModel:()=>eW.qir,MarkdownFieldInterface:()=>tJ,MarkdownItemModel:()=>eW.qqP,MobileMenuControlContext:()=>eW.Qt8,MockFlowModelRepository:()=>eW.WuM,MultipleSelectFieldInterface:()=>tX,NBColorPicker:()=>eW.qtW,NanoidFieldInterface:()=>ls,NocoBaseBuildInPlugin:()=>tl,NocoBaseBuildInPluginV2:()=>tl,NumberFieldInterface:()=>tQ,NumberFieldModel:()=>eW.r39,O2MFieldInterface:()=>tZ,O2OFieldInterface:()=>t0,OBOFieldInterface:()=>t2,OHOFieldInterface:()=>t1,ObjectNester:()=>eW.Xmd,PLUGIN_MANAGER_SETTING_NAME:()=>eW.BmO,PageModel:()=>eW.XK0,PageTabModel:()=>eW.sYw,PasswordFieldInterface:()=>t4,PasswordFieldModel:()=>eW.dWg,PercentFieldInterface:()=>t5,PercentFieldModel:()=>eW.v6e,PercentInput:()=>eW.er5,PhoneFieldInterface:()=>t8,PinnedPluginListContext:()=>eR.D,PinnedPluginListLite:()=>eW.Kgy,Plugin:()=>eV,PluginFlowEngine:()=>eW.s$$,PluginManager:()=>eS,PluginManagerPage:()=>eW.ksX,PluginSettingsManager:()=>eM.mz,PluginSettingsTopbarActionModel:()=>eW.ESx,PopupActionModel:()=>eW.a6D,PopupCollectionActionModel:()=>eW.YXI,PopupSubTableActionGroupModel:()=>eW.HJv,PopupSubTableActionsColumnModel:()=>eW.FaR,PopupSubTableEditActionModel:()=>eW.oIl,PopupSubTableFieldModel:()=>eW.Uk$,PopupSubTableFormActionGroupModel:()=>eW.d13,PopupSubTableFormModel:()=>eW.iT0,PopupSubTableFormSubmitActionModel:()=>eW.spd,PopupSubTableRemoveActionModel:()=>eW.Ie6,QUICK_EDIT_FORM_MAX_HEIGHT:()=>eW.x_D,QUICK_EDIT_MARKDOWN_HEIGHT:()=>eW.vW_,QUICK_EDIT_POPOVER_MAX_HEIGHT:()=>eW.i6C,QuickEditFormModel:()=>eW.biS,RadioGroupFieldInterface:()=>t3,RadioGroupFieldModel:()=>eW.wwh,RecordActionGroupModel:()=>eW.gk0,RecordActionModel:()=>eW.LAC,RecordPickerContent:()=>eW.vy4,RecordPickerFieldModel:()=>eW.J$w,RecordSelectFieldModel:()=>eW.BgT,RefreshActionModel:()=>eW.n6C,RemoteFlowModelRenderer:()=>eW.zCA,ResetThemeTokenAndKeepAlgorithm:()=>eW.fCM,RichTextField:()=>eW.OsV,RichTextFieldInterface:()=>t6,RichTextFieldModel:()=>eW.DvX,RootPageModel:()=>eW.T6P,RootPageTabModel:()=>eW._$j,RouteModel:()=>eW.j0c,RouteRepository:()=>z,RouterContextCleaner:()=>L.PK,RouterManager:()=>eC,SNIPPET_PREFIX:()=>eM.tJ,SYSTEM_SETTINGS_SETTING_NAME:()=>eW.jmZ,SelectFieldInterface:()=>t9,SelectFieldModel:()=>eW.CCB,SkeletonFallback:()=>eW.KSc,SnowflakeIdFieldInterface:()=>t7,SourceCascader:()=>eW.AvD,SubFormFieldModel:()=>eW.Imp,SubFormListFieldModel:()=>eW.sW6,SubPageModel:()=>eW.RLu,SubTableColumnModel:()=>eW.WHj,SubTableFieldInterface:()=>le,SubTableFieldModel:()=>eW.mHU,SubTableRecordAction:()=>eW.sJA,SystemSettingsPage:()=>eW.WzN,SystemSettingsSource:()=>eW.orA,TableActionsColumnModel:()=>eW.B6V,TableAssociationFieldGroupModel:()=>eW.GJ1,TableBlockModel:()=>eW.zDb,TableColumnModel:()=>eW.ivU,TableCustomColumnModel:()=>eW.Fts,TableJSFieldItemModel:()=>eW._e9,TableSelectModel:()=>eW.mSG,TableoidFieldInterface:()=>lt,TextAreaWithContextSelector:()=>eW.nap,TextareaFieldInterface:()=>ll,TextareaFieldModel:()=>eW.AMH,TimeFieldInterface:()=>lo,TimeFieldModel:()=>eW.Fy3,TopbarActionModel:()=>eW.k9E,UIEditorTopbarActionModel:()=>eW.h2d,USER_CENTER_ACTION_ID:()=>eW.Bnh,UUIDFieldInterface:()=>la,UnitConversion:()=>eW.VPO,UnixTimestampFieldInterface:()=>ld,UpdateRecordActionModel:()=>eW.MhO,UpdatedAtFieldInterface:()=>ln,UpdatedByFieldInterface:()=>lr,UrlFieldInterface:()=>li,UserCenterActionItemModel:()=>eW.ngq,UserCenterItemModel:()=>eW.np$,UserCenterSelectItemModel:()=>eW.FKm,UserCenterTextItemModel:()=>eW.ysz,UserCenterTopbarActionModel:()=>eW.ccc,VariableFieldFormModel:()=>eW.m$$,VariableFilterItem:()=>eW.Et2,ViewActionModel:()=>eW.v8l,WebSocketClient:()=>K,aclCheck:()=>eW.VGp,aclCheckRefresh:()=>eW.Yh4,actionLinkageRules:()=>eW.tQF,addCustomAlgorithmToTheme:()=>N._l,afterSuccess:()=>eW.mKE,applyMobilePaginationProps:()=>eW.hOt,blockHeight:()=>eW.Bum,blockLinkageRules:()=>eW.aWb,buildDisplayPathFromValue:()=>eW.d6j,buildInsertRouteSchema:()=>eW.QBt,buildLegacySigninHref:()=>eD.LQ,buildLinkSettingSchema:()=>eW.qNx,buildMenuBasicSchema:()=>eW.ThI,buildMenuTitleWithIcon:()=>eW.riZ,buildRecordPickerParentItemContext:()=>eW.oM7,buildRecordPickerPopupContextInputArgs:()=>eW.S5n,collectAssociationHydrationCandidates:()=>eW.ULH,collectCascadeHydrationCandidate:()=>eW.qlo,compatOldTheme:()=>N.Ne,confirm:()=>eW.lJp,connectFields:()=>eW.KYF,convertV2AdminPathToLegacy:()=>eD.Sx,createAclSnippetAllow:()=>eT.rN,createCompactSimpleItemRender:()=>eW.hHg,createDefaultCollectionBlockTitle:()=>eW.lrV,createInsertMenuStep:()=>eW.FWr,createMockClient:()=>eL,createSettingsPathMap:()=>eW.nCj,customAlgorithm:()=>N.ze,customVariable:()=>eW.I6c,customizeFilterRender:()=>eW.wUQ,dataLoadingMode:()=>eW.kbf,dataScope:()=>eW.fAh,dateTimeFormat:()=>eW.LE6,defaultOperator:()=>eW.CDb,defaultTheme:()=>N.zQ,detailsFieldLinkageRules:()=>eW.Dhs,diagnoseRunJS:()=>eW.fLT,dispatchEventDeep:()=>eW.Xig,displayFieldComponent:()=>eW.kkB,editMarkdownFlow:()=>eW.uMh,fieldComponent:()=>eW.e7P,fieldLinkageRules:()=>eW.znN,filterFormDefaultValues:()=>eW.IBN,filterRenderableSettings:()=>eW.Ui7,filterVisibleSettings:()=>eW.eDc,findFirstAccessiblePageRoute:()=>eW.MMn,findFirstInternalSettingsPage:()=>eW.X2M,findNextSiblingRoute:()=>eW.Evi,findOptionPathByTk:()=>eW.s5W,findPrevSiblingRoute:()=>eW.Cuw,findSettingsByName:()=>eW.R0X,fixed:()=>eW.Zu2,formAssignRules:()=>eW.dWc,formatNumber:()=>eW.ZVp,formatRunJSPreviewMessage:()=>eW.byO,getAdminLayoutMenuInitializerButton:()=>eW.Tnx,getAdminLayoutMenuMovePositionOptions:()=>eW.B82,getAdminLayoutMenuVirtualPath:()=>eW.Px_,getAdminLayoutModel:()=>eW.t_Y,getAllDataModels:()=>eW.w5F,getCurrentV2RedirectPath:()=>eD.vi,getDefaultOperator:()=>eW.aqk,getDefaultSettingsPath:()=>eW.C9C,getDefaultV2AdminRedirectPath:()=>eD.uk,getDetailsItemValue:()=>eW.ROt,getDisplayNumber:()=>eW.cm5,getMenuCreationDefaultParams:()=>eW.y8o,getMenuCreationUiSchema:()=>eW._IX,getMenuEditDefaultParams:()=>eW.n8$,getMenuItems:()=>eW.gLn,getMobileCompactPaginationClassName:()=>eW.NYj,getPinnedPluginListKeys:()=>eR.k,getQuickEditFieldProps:()=>eW.YXr,getSimpleModePaginationClassName:()=>eW.HZo,getTopbarPluginSettingsItems:()=>eW.XCP,getUniqueKeyFromCollection:()=>tH,getUnknownCountPaginationTotal:()=>eW.SMJ,getValueWithIndex:()=>eW.kPK,hasIcon:()=>L.cE,hasOwnSettingsPage:()=>eW.lv4,icons:()=>L.Pt,injectRecordPickerPopupContext:()=>eW.gaO,insertRouteSchema:()=>eW.eDQ,isFilterValueEmpty:()=>eW.tUI,joinUrlSearch:()=>eW.wqT,languageCodes:()=>eU.A,layout:()=>eW.Zpx,linkageAssignField:()=>eW.fMK,linkageRulesRefresh:()=>eW.S3Z,linkageRunjs:()=>eW.Myf,linkageSetActionProps:()=>eW.mQM,linkageSetBlockProps:()=>eW.LFq,linkageSetDetailsFieldProps:()=>eW.KAX,linkageSetFieldProps:()=>eW.uFv,markCascadeHydrationDone:()=>eW.Ck8,matchSettingsRoute:()=>eW.CM3,matchesRoutePath:()=>eW.Qb_,mergePaginationClassName:()=>eW.M6q,navigateToURL:()=>eW.isP,normalizeAdminLayoutMenuLegacyVariables:()=>eW.ux6,numberFormat:()=>eW.jqd,openAdminLayoutMenuLink:()=>eW.jjG,openView:()=>eW.e8C,openViewFlow:()=>eW.gvx,operatorComponentProps:()=>eW.KHY,overflowMode:()=>eW.COB,pattern:()=>eW.T16,previewRunJS:()=>eW.zA_,recalculateGridSizes:()=>eW.aDm,reconcileAdminLayoutMenuItems:()=>eW.tSM,redirectToLegacySignin:()=>eD.BE,refreshTargetBlocks:()=>eW.J9o,registerIcon:()=>L.pU,registerIcons:()=>L.K1,renderMode:()=>eW.IAc,replaceRouteParams:()=>eW.uTv,required:()=>eW.mw3,resolveAdminLayoutMenuDragMoveOptions:()=>eW.OtO,resolveAdminLayoutMenuDragMoveOptionsFromEvent:()=>eW.eLO,resolveAdminLayoutMenuLink:()=>eW.fi1,resolveAdminRouteRuntimeTarget:()=>eW.YjI,resolveCustomFieldOperatorList:()=>eW.eCD,resolveDefaultCustomFieldOperator:()=>eW.T9,resolveLegacySigninRedirect:()=>eD.M4,runjs:()=>eW.ZCq,setTargetDataScope:()=>eW.mp5,shouldRenderIconInTitle:()=>eW.Ucr,showMessage:()=>eW.rGX,showNotification:()=>eW.Dsh,sortTopLevelSettings:()=>eW.p$W,sortingRule:()=>eW.hsC,subFormFieldLinkageRules:()=>eW.D2p,subFormLinkageAssignField:()=>eW.zTu,subFormLinkageSetFieldProps:()=>eW.gbJ,titleField:()=>eW.Pqd,toOperatorSelectOptions:()=>eW.kA1,toRouterNavigationPath:()=>eW.Yjq,toToolsMap:()=>q,toTreeSelectItems:()=>eW.Gap,toViewStack:()=>eW.Hwd,transformNestedData:()=>eW.Anr,transformRowsToSingleColumn:()=>eW.vbm,useACLContext:()=>eT.bq,useACLRoleContext:()=>eT.v6,useAclSnippets:()=>eT.K3,useApp:()=>E.n,useApplications:()=>eW.HWn,useCurrentRoleMode:()=>eT.GL,useGlobalTheme:()=>N.my,useMobileLayout:()=>eW.mYX,usePlugin:()=>ez.n,useRoleRecheck:()=>eT.N5,useRouter:()=>eK,useSystemSettings:()=>eW.e6V,useUIConfigurationPermissions:()=>eT.uM,validation:()=>eW.Eq4}),l(70571);var n=l(58587),r=l(18150),i=l(68238),a=l(50467),s=l(74848),d=l(95243),u=l(40532),c=l(88909),p=l(55373),h=l.n(p);let m=(e,t)=>{if(!e)return;let l="function"==typeof e.toJSON?e.toJSON():e,o=Object.keys(l||{}).find(e=>e.toLowerCase()===t.toLowerCase());return o?l[o]:void 0},f=(e,t)=>{let l=m(e,t);return null!=l&&""!==l};class g{get storagePrefix(){return this.api.storagePrefix}get locale(){return this.getLocale()}set locale(e){this.setLocale(e)}get role(){return this.getRole()}set role(e){this.setRole(e)}get token(){return this.getToken()}set token(e){this.setToken(e)}get authenticator(){return this.getAuthenticator()}set authenticator(e){this.setAuthenticator(e)}getOption(e){return this.api.storage.getItem(e)}setOption(e,t){return this.options[e]=t,this.api.storage.setItem(e,t||"")}getLocale(){return this.getOption("locale")}setLocale(e){this.setOption("locale",e)}getRole(){return this.getOption("role")}setRole(e){this.setOption("role",e)}getToken(){return this.getOption("token")}setToken(e){this.setOption("token",e),this.api.app&&this.api.app.eventBus.dispatchEvent(new CustomEvent("auth:tokenChanged",{detail:{token:e,authenticator:this.authenticator}}))}getAuthenticator(){return this.getOption("auth")}setAuthenticator(e){this.setOption("auth",e)}middleware(e){return this.locale&&e.headers&&(e.headers["X-Locale"]=this.locale),this.role&&e.headers&&(e.headers["X-Role"]=this.role),this.authenticator&&!f(e.headers,"X-Authenticator")&&e.headers&&(e.headers["X-Authenticator"]=this.authenticator),this.token&&!f(e.headers,"Authorization")&&e.headers&&(e.headers.Authorization=`Bearer ${this.token}`),e}async signIn(e,t){var l;let o=await this.api.request({method:"post",url:"auth:signIn",data:e,headers:{"X-Authenticator":t}}),n=null==o||null==(l=o.data)?void 0:l.data;return this.setAuthenticator(t),this.setToken(null==n?void 0:n.token),o}async signUp(e,t){return await this.api.request({method:"post",url:"auth:signUp",data:e,headers:{"X-Authenticator":t}})}async signOut(){let e=await this.api.request({method:"post",url:"auth:signOut"});return this.setToken(null),this.setRole(null),this.setAuthenticator(null),e}async lostPassword(e){let t=Object.fromEntries(new URLSearchParams(window.location.search).entries());return await this.api.request({method:"post",url:"auth:lostPassword",data:{...e,baseURL:window.location.href.split("/forgot-password")[0]},headers:{"X-Authenticator":t.name}})}async resetPassword(e){return await this.api.request({method:"post",url:"auth:resetPassword",data:e})}async checkResetToken(e){return await this.api.request({method:"post",url:"auth:checkResetToken",data:e})}constructor(e){(0,a._)(this,"api",void 0),(0,a._)(this,"options",{locale:null,role:null,authenticator:null,token:null}),this.api=e,this.api.axios.interceptors.request.use(this.middleware.bind(this))}}class v{toUpperCase(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];return e.toUpperCase()+l.map(e=>e.toUpperCase()).join("_")}constructor(){(0,a._)(this,"storagePrefix",void 0)}}class y extends v{clear(){this.items.clear()}getItem(e){return this.items.get(e)}setItem(e,t){return this.items.set(e,t)}removeItem(e){return this.items.delete(e)}constructor(...e){super(...e),(0,a._)(this,"items",new Map)}}class b extends v{clear(){return this.items.clear()}getItem(e){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.getItem(this.toUpperCase(this.baseStoragePrefix,e)):this.items.getItem(this.toUpperCase(this.storagePrefix,e))}setItem(e,t){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.setItem(this.toUpperCase(this.baseStoragePrefix,e),t):this.items.setItem(this.toUpperCase(this.storagePrefix,e),t)}removeItem(e){return this.shareToken&&"token"===e&&this.baseStoragePrefix?this.items.removeItem(this.toUpperCase(this.baseStoragePrefix,e)):this.items.removeItem(this.toUpperCase(this.storagePrefix,e))}constructor(e,t="",l=!1){super(),(0,a._)(this,"storagePrefix",void 0),(0,a._)(this,"baseStoragePrefix",void 0),(0,a._)(this,"shareToken",void 0),(0,a._)(this,"items",void 0),this.storagePrefix=e,this.baseStoragePrefix=t,this.shareToken=l,this.items=window.localStorage}}class x extends b{constructor(e,t="",l=!1){super(e,t,l),(0,a._)(this,"storagePrefix",void 0),(0,a._)(this,"baseStoragePrefix",void 0),(0,a._)(this,"shareToken",void 0),this.storagePrefix=e,this.baseStoragePrefix=t,this.shareToken=l,this.items=window.sessionStorage}}class w{toErrMessages(e){var t,l,o,n,r,i,a,s,d,u,c;if("u">typeof document&&"string"==typeof(null==e||null==(t=e.response)?void 0:t.data)){let t=document.createElement("div");t.innerHTML=null==e||null==(d=e.response)?void 0:d.data;let l=t.textContent||t.innerText;return l.includes("Error occurred while trying")||l.includes("502 Bad Gateway")?[{code:"APP_WARNING",message:l="The application may be starting up. Please try again later."}]:[{message:l}]}return(null==e||null==(o=e.response)||null==(l=o.data)?void 0:l.error)?[null==e||null==(c=e.response)||null==(u=c.data)?void 0:u.error]:(null==e||null==(r=e.response)||null==(n=r.data)?void 0:n.errors)||(null==e||null==(a=e.response)||null==(i=a.data)?void 0:i.messages)||(null==e||null==(s=e.response)?void 0:s.error)||[{message:e.message||"Server error"}]}getHeaders(){let e={};return this.auth.locale&&(e["X-Locale"]=this.auth.locale),this.auth.role&&(e["X-Role"]=this.auth.role),this.auth.authenticator&&(e["X-Authenticator"]=this.auth.authenticator),this.auth.token&&(e.Authorization=`Bearer ${this.auth.token}`),e}createStorage(e){return"localStorage"===e&&"u">typeof localStorage?new b(this.storagePrefix,this.baseStoragePrefix,this.shareToken):"sessionStorage"===e&&"u">typeof sessionStorage?new x(this.storagePrefix,this.baseStoragePrefix,this.shareToken):new y}initStorage(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"localStorage";if(e){this.storage=new e(this);return}this.storage=this.createStorage(t)}interceptors(){this.axios.interceptors.request.use(e=>(e.paramsSerializer=e=>h().stringify(e,{strictNullHandling:!0,arrayFormat:"brackets"}),e))}request(e){let{resource:t,resourceOf:l,action:o,params:n,headers:r}=e;return t?this.resource(t,l,r)[o](n):this.axios.request(e)}resource(e,t,l,o){return new Proxy({},{get:(n,r)=>{if(o)return;let i=e.split(".").join(`/${encodeURIComponent(t)||"_"}/`),a={url:i+=`:${r.toString()}`};return["get","list"].includes(r)?a.method="get":a.method="post",async(e,t)=>{let{values:o,filter:n,...r}=e||{};return a.params=r,n&&("string"==typeof n?a.params.filter=n:(n["*"]&&delete n["*"],a.params.filter=JSON.stringify(n))),"get"!==a.method&&(a.data=o||{}),await this.request({...a,...t,headers:l})}}})}constructor(e){if((0,a._)(this,"options",void 0),(0,a._)(this,"axios",void 0),(0,a._)(this,"auth",void 0),(0,a._)(this,"storage",void 0),(0,a._)(this,"storagePrefix","NOCOBASE_"),(0,a._)(this,"baseStoragePrefix","NOCOBASE_"),(0,a._)(this,"shareToken",!1),this.options=e,"function"==typeof e)this.axios=e;else{let{appName:t,authClass:l,storageType:o,storageClass:n,storagePrefix:r="NOCOBASE_",shareToken:i=!1,...a}=e||{};this.shareToken=i,this.baseStoragePrefix=r,this.storagePrefix=t?`${r}${t.toUpperCase()}_`:r,this.axios=c.A.create(a),this.initStorage(n,o),l&&(this.auth=new l(this))}this.storage||this.initStorage(),this.auth||(this.auth=new g(this)),this.interceptors()}}let S=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/";if("u"<typeof window||!window.location.pathname)return;let t=`${e}apps/`;if(window.location.pathname.startsWith(t))return window.location.pathname.substring(t.length).split("/",1)[0]||""};var M=l(40098),F=l(96540),A=l(5338),k=l(52230),C=l(47665),P=l(84976),j=l(47767),I=l(44363),E=l(36098),_=l(88040);let R=(0,F.memo)(e=>{let{children:t}=e,l=(0,E.n)(),{notification:o}=_.A.useApp();return(0,F.useLayoutEffect)(()=>{l.context.defineProperty("notification",{value:o})},[l,o]),(0,s.jsx)(s.Fragment,{children:t})});R.displayName="AppInner";let T=e=>{let{children:t,className:l,style:o}=e;return(0,s.jsx)(_.A,{className:l,style:{height:"100%",...o},children:(0,s.jsx)(R,{children:t})})};T.displayName="AntdAppProvider";let D=T;var N=l(98666),O=l(96436);class ${async listTools(e){let{data:t}=await this.app.apiClient.resource("aiTools").list({filter:e}),l=null==t?void 0:t.data;return l?l.map(e=>({...e,...this.tools.get(e.definition.name)??{}})):[]}useTools(){let e=new O.Registry;for(let[l,o]of this.tools.getEntities()){var t;e.register(l,{...(null==(t=o.useHooks)?void 0:t.call(o))??o})}return e}registerTools(e,t){this.tools.register(e,{...t})}constructor(e,t=new O.Registry){(0,a._)(this,"app",void 0),(0,a._)(this,"tools",void 0),this.app=e,this.tools=t}}class B{constructor(e){(0,a._)(this,"app",void 0),(0,a._)(this,"toolsManager",void 0),this.app=e,this.toolsManager=new $(this.app)}}let q=e=>new Map(e.map(e=>[e.definition.name,e]));var L=l(45895),V=l(95267);class z{setRoutes(e){this.routes=e,this.accessibleLoaded=!0,this.emitChange()}listAccessible(){return this.routes}isAccessibleLoaded(){return this.accessibleLoaded}async refreshAccessible(){var e;let t=await this.getAPIClient().request({url:"/desktopRoutes:listAccessible",params:{tree:!0,sort:"sort"}}),l=(null==t||null==(e=t.data)?void 0:e.data)||[];return this.setRoutes(l),l}async ensureAccessibleLoaded(){return this.accessibleLoaded?this.routes:(this.accessibleLoadingPromise||(this.accessibleLoadingPromise=this.refreshAccessible().finally(()=>{this.accessibleLoadingPromise=null})),this.accessibleLoadingPromise)}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}unsubscribe(e){this.subscribers.delete(e)}async createRoute(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{refreshAfterMutation:l=!0}=t,o=await this.getResource("desktopRoutes").create({values:e});return l&&await this.refreshAccessible(),o}async updateRoute(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{refreshAfterMutation:o=!0}=l,n=await this.getResource("desktopRoutes").update(Array.isArray(e)?{filter:{id:{$in:e}},values:t}:{filterByTk:e,values:t});return o&&await this.refreshAccessible(),n}async deleteRoute(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{refreshAfterMutation:l=!0}=t,o=await this.getResource("desktopRoutes").destroy({filterByTk:e});return l&&await this.refreshAccessible(),o}async moveRoute(e){let{refreshAfterMove:t=!0,...l}=e,o=await this.getResource("desktopRoutes").move(l);return t&&await this.refreshAccessible(),o}getRouteBySchemaUid(e){return this.findRoute(this.routes,e)}getAPIClient(){var e;if(!(null==(e=this.ctx)?void 0:e.api))throw Error("[NocoBase] RouteRepository requires context.api.");return this.ctx.api}getResource(e){return this.getAPIClient().resource(e)}emitChange(){this.subscribers.forEach(e=>{e()})}findRoute(e,t){for(let l of e){if(l.schemaUid===t)return l;if(l.children){let e=this.findRoute(l.children,t);if(e)return e}}}constructor(e){(0,a._)(this,"ctx",void 0),(0,a._)(this,"routes",void 0),(0,a._)(this,"subscribers",void 0),(0,a._)(this,"accessibleLoaded",void 0),(0,a._)(this,"accessibleLoadingPromise",void 0),this.ctx=e,this.routes=[],this.subscribers=new Set,this.accessibleLoaded=!1,this.accessibleLoadingPromise=null}}class K{getURL(){if(!this.app)return;let e=this.app.getApiUrl();if(!e)return;let t="";if(this.getSubAppName(this.app))t=`?_app=${this.getSubAppName(this.app)}`;else{let e=S(this.app.getPublicPath());t=e?`?__appName=${e}`:""}let l=this.options.basename||"/ws";if(this.options.url){let e=new URL(this.options.url);if("localhost"===e.hostname){let o="https:"===location.protocol?"wss":"ws";return`${o}://${location.hostname}:${e.port}${l}${t}`}return`${this.options.url}${t}`}try{let o=new URL(e);return`${"https:"===o.protocol?"wss":"ws"}://${o.host}${l}${t}`}catch(e){return`${"https:"===location.protocol?"wss":"ws"}://${location.host}${l}${t}`}}get reconnectAttempts(){var e;return(null==(e=this.options)?void 0:e.reconnectAttempts)||30}get reconnectInterval(){var e;return(null==(e=this.options)?void 0:e.reconnectInterval)||1e3}get pingInterval(){var e;return(null==(e=this.options)?void 0:e.pingInterval)||3e5}get readyState(){return this._ws?this._ws.readyState:-1}createWebSocket(){return new WebSocket(this.getURL(),this.options.protocols)}connect(){let e;if(!this.enabled||(0===this._reconnectTimes&&console.log("[nocobase-ws]: connecting..."),this._reconnectTimes>=this.reconnectAttempts||this.readyState===WebSocket.OPEN))return;this._reconnectTimes++;let t=this.createWebSocket();t.onopen=()=>{for(let{type:e,listener:l,options:o}of(console.log("[nocobase-ws]: connected."),this.serverDown=!1,this._ws&&this.removeAllListeners(),this._reconnectTimes=0,this._ws=t,this.events))this._ws.addEventListener(e,l,o);e=setInterval(()=>this.send("ping"),this.pingInterval),this.connected=!0,this.emit("open",{})},t.onerror=async()=>{console.log("onerror",this.readyState,this._reconnectTimes)},t.onclose=async t=>{setTimeout(()=>this.connect(),this.reconnectInterval),console.log("onclose",this.readyState,this._reconnectTimes,this.serverDown),this.connected=!1,clearInterval(e)}}reconnect(){this._reconnectTimes=0,this.connect()}close(){if(this._ws)return this._reconnectTimes=this.reconnectAttempts,this._ws.close()}send(e){if(this._ws)return this._ws.send(e)}on(e,t,l){this.events.push({type:e,listener:t,options:l}),this._ws&&this._ws.addEventListener(e,t,l)}emit(e,t){for(let l of this.events)l.type===e&&l.listener(t)}off(e,t,l){let o=0;for(let l of this.events){if(l.type===e&&l.listener===t){this.events.splice(o,1);break}o++}this._ws&&this._ws.removeEventListener(e,t,l)}removeAllListeners(){if(this._ws)for(let{type:e,listener:t,options:l}of this.events)this._ws.removeEventListener(e,t,l)}constructor(e){if((0,a._)(this,"_ws",void 0),(0,a._)(this,"_reconnectTimes",0),(0,a._)(this,"events",[]),(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"enabled",void 0),(0,a._)(this,"connected",!1),(0,a._)(this,"serverDown",!1),(0,a._)(this,"lastMessage",{}),(0,a._)(this,"getSubAppName",e=>{let t=e.getPublicPath(),l=`^${t}_app/([^/]*)/`,o=location.pathname.match(new RegExp(l));return o?o[1]:null}),!e){this.enabled=!1;return}this.options=!0===e?{}:e,this.enabled=!0,(0,d.define)(this,{serverDown:d.observable.ref,connected:d.observable.ref,lastMessage:d.observable.ref})}}function U(e){if(!e)return console.warn("Failed to mount app: mount target should not be null or undefined."),null;if("string"==typeof e){let t=document.querySelector(e);return t||console.warn(`Failed to mount app: mount target selector "${e}" returned null.`),t}return globalThis.window.ShadowRoot&&e instanceof globalThis.window.ShadowRoot&&"closed"===e.mode&&console.warn('mounting on a ShadowRoot with `{mode: "closed"}` may lead to unpredictable bugs'),e}let W=function(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];let o=t.reduce((e,t)=>{let[l,o]=t,n=t=>{let{children:n}=t;return(0,s.jsx)(e,{children:(0,s.jsx)(l,{...o,children:n})})};return n.displayName=`compose(${l.displayName||l.name})`,n},L.ct);return e=>t=>(0,s.jsx)(o,{children:e&&(0,s.jsx)(e,{...t})})};var H=l(42524),Y=l(81651),G=l(78880),J=l(18220),X=l(27253),Q=l(51647),Z=l(14264),ee=l(72635),et=l(40961),el=l(68984);function eo(e){e.define("react",()=>F),e.define("react-dom",()=>et),e.define("react/jsx-runtime",()=>s),e.define("react-router",()=>j),e.define("react-router-dom",()=>P),e.define("antd",()=>Z),e.define("@ant-design/icons",()=>Y),e.define("@ant-design/cssinjs",()=>H),e.define("i18next",()=>ee),e.define("react-i18next",()=>el),e.define("@formily/core",()=>G),e.define("@formily/react",()=>J),e.define("@formily/reactive",()=>d),e.define("@formily/shared",()=>X),e.define("@nocobase/utils",()=>O),e.define("@nocobase/utils/client",()=>O),e.define("@nocobase/client-v2",()=>o),e.define("@nocobase/client-v2/client-v2",()=>o),e.define("@nocobase/flow-engine",()=>u),e.define("ahooks",()=>Q)}var en=l(40407);let er=/^\/+/,ei=/\/+$/,ea=e=>{let t=er.exec(e);return t?e.slice(t[0].length):e},es=e=>{let t=ei.exec(e);return t?e.slice(0,-t[0].length):e},ed=e=>(0,I.isValidElementType)(e);class eu{get pm(){return this.pluginManager}get disableAcl(){return this.options.disableAcl}get isWsAuthorized(){return this.wsAuthorized}defineObservableState(){(0,d.define)(this,{maintained:d.observable.ref,maintaining:d.observable.ref,error:d.observable.ref})}initializeExtendedState(){this.systemSettings=new V.o(this.apiClient)}afterManagersInitialized(){this.aiManager=new B(this)}configureContext(){}configureRuntimeAdapters(){}addCustomProviders(){}initListeners(){this.eventBus.addEventListener("auth:tokenChanged",e=>{let t=e.detail;(null==t?void 0:t.token)&&this.setTokenInWebSocket(t)}),this.eventBus.addEventListener("maintaining:end",()=>{this.apiClient.auth.token&&this.setTokenInWebSocket({token:this.apiClient.auth.token,authenticator:this.apiClient.auth.getAuthenticator()})})}setTokenInWebSocket(e){let{token:t,authenticator:l}=e;this.maintaining||this.ws.send(JSON.stringify({type:"auth:token",payload:{token:t,authenticator:l}}))}initRequireJs(){if(void 0===globalThis.window)return;let e=globalThis.window;if(e.requirejs){this.requirejs=e.requirejs;return}e.requirejs=this.requirejs=(0,en.b)(),eo(this.requirejs),e.define=this.requirejs.define}configureBaseContext(){this.flowEngine.context.defineProperty("app",{value:this}),this.flowEngine.context.defineProperty("api",{value:this.apiClient}),this.flowEngine.context.defineProperty("i18n",{value:this.i18n}),this.flowEngine.context.defineProperty("router",{get:()=>this.router.router,cache:!1}),this.flowEngine.context.defineProperty("documentTitle",{get:()=>document.title}),this.flowEngine.context.defineProperty("route",{get:()=>{},observable:!0}),this.flowEngine.context.defineProperty("location",{get:()=>location,observable:!0}),this.flowEngine.context.defineProperty("routeRepository",{value:new z(this.flowEngine.context)}),this.flowEngine.context.defineProperty("appInfo",{get:async()=>{var e;return(null==(e=(await this.apiClient.request({url:"app:getInfo"})).data)?void 0:e.data)||{}}}),this.flowEngine.context.defineProperty("pageInfo",{value:(0,d.observable)({version:void 0})}),this.flowEngine.context.defineProperty("systemSettings",{get:()=>this.systemSettings})}addBaseProviders(){this.use(k.x,{i18n:this.i18n}),this.use(u.FlowEngineProvider,{engine:this.flowEngine}),this.use(N.U_),this.use(D)}addFinalProviders(){this.use(u.FlowEngineGlobalsContextProvider)}addReactRouterComponents(){this.addComponents({Link:P.Link,Navigate:j.Navigate,NavLink:P.NavLink})}addRoutes(){this.router.add("not-found",{path:"*",Component:this.components.AppNotFound})}updateFavicon(e){let t=document.querySelector('link[rel="shortcut icon"]');e&&(this.favicon=e);let l=this.favicon||"/favicon/favicon.ico";t?t.href=l:((t=document.createElement("link")).rel="shortcut icon",t.href=l,document.head.appendChild(t))}setWsAuthorized(e){this.wsAuthorized=e}setMaintaining(e){this.maintaining!==e&&(this.maintaining=e,e||this.eventBus.dispatchEvent(new Event("maintaining:end")))}getOptions(){return this.options}getName(){return S(this.getPublicPath())||null}getPublicPath(){let e=this.options.publicPath||"/";return e.endsWith("/")||(e+="/"),e}getApiUrl(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=this.apiClient.axios.defaults.baseURL??"";if(!t.startsWith("http://")&&!t.startsWith("https://")){let{protocol:e,host:l}=globalThis.window.location;t=`${e}//${l}${t}`}return`${es(t)}/${ea(e)}`}getRouteUrl(e){return this.getPublicPath()+ea(e)}getHref(e){let t=this.name;return t&&"main"!==t?`${this.getPublicPath()}apps/${t}/${ea(e)}`:this.getPublicPath()+ea(e)}getComposeProviders(){let e=W(...this.providers)(L.ct);return e.displayName="Providers",e}use(e,t){return this.addProvider(e,t)}addProvider(e,t){return this.providers.push([e,t])}addProviders(e){e.forEach(e=>{Array.isArray(e)?this.addProvider(e[0],e[1]):this.addProvider(e)})}getComponent(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1],l=e=>t&&console.error(e);if(!e)return void l(`getComponent called with ${e}`);if("string"==typeof e){let t=(0,M.get)(this.components,e);return t||void l(`Component ${e} not found`)}if(ed(e))return e;l(`Component ${e} should be a string or a React component`)}renderComponent(e,t,l){let o=this.getComponent(e);return o?F.createElement(o,t,l):null}addComponent(e,t){let l=e,o=t||l.displayName||l.name;o?(0,M.set)(this.components,o,e):console.error("Component must have a displayName or pass name as second argument")}addComponents(e){Object.keys(e).forEach(t=>{this.addComponent(e[t],t)})}getRootFallback(){return this.renderComponent("AppSpin")}getRootComponent(){let e=this.model,t=this.flowEngine,l=()=>this.getRootFallback();return o=>{let{children:n}=o;return(0,F.useLayoutEffect)(()=>{e.setProps({children:n})},[n]),(0,s.jsx)(u.FlowEngineProvider,{engine:t,children:(0,s.jsx)(u.FlowModelRenderer,{fallback:l(),model:e})})}}mount(e){let t=U(e);if(t){let e=this.getRootComponent(),l=(0,A.createRoot)(t);return l.render((0,s.jsx)(e,{})),l}}createWebSocketClient(e){return new K(e.ws??!1)}getDefaultComponents(){return{AppNotFound:L.bM,AppError:L.uV,AppSpin:L.gv,AppMaintaining:L.be,AppMaintainingDialog:L.tp}}constructor(e={}){(0,a._)(this,"options",void 0),(0,a._)(this,"eventBus",void 0),(0,a._)(this,"providers",void 0),(0,a._)(this,"router",void 0),(0,a._)(this,"scopes",void 0),(0,a._)(this,"i18n",void 0),(0,a._)(this,"ws",void 0),(0,a._)(this,"apiClient",void 0),(0,a._)(this,"components",void 0),(0,a._)(this,"pluginManager",void 0),(0,a._)(this,"pluginSettingsManager",void 0),(0,a._)(this,"aiManager",void 0),(0,a._)(this,"devDynamicImport",void 0),(0,a._)(this,"requirejs",void 0),(0,a._)(this,"name",void 0),(0,a._)(this,"favicon",void 0),(0,a._)(this,"flowEngine",void 0),(0,a._)(this,"dataSourceManager",void 0),(0,a._)(this,"context",void 0),(0,a._)(this,"systemSettings",void 0),(0,a._)(this,"maintained",void 0),(0,a._)(this,"maintaining",void 0),(0,a._)(this,"error",void 0),(0,a._)(this,"model",void 0),(0,a._)(this,"wsAuthorized",void 0),(0,a._)(this,"apps",void 0),this.options=e,this.eventBus=new EventTarget,this.providers=[],this.scopes={},this.components={},this.maintained=!1,this.maintaining=!1,this.error=null,this.wsAuthorized=!1,this.apps={Component:null},this.initRequireJs(),this.defineObservableState(),this.devDynamicImport=e.devDynamicImport,this.scopes=(0,M.merge)(this.scopes,e.scopes),this.components=(0,M.merge)(this.getDefaultComponents(),e.components),this.name=this.options.name||S(e.publicPath)||"main",this.apiClient=this.createApiClient(e),this.initializeExtendedState(),this.i18n=this.createI18n(e),this.router=this.createRouterManager(e),this.pluginManager=this.createPluginManager(e),this.flowEngine=new u.FlowEngine,this.flowEngine.registerModels({ApplicationModel:eh}),this.model=this.flowEngine.createModel({use:"ApplicationModel",uid:"__app_model__"}),this.context=this.flowEngine.context,this.configureRuntimeAdapters(),this.context.defineProperty("pluginManager",{get:()=>this.pluginManager}),this.configureBaseContext(),this.configureContext(),this.addBaseProviders(),this.addCustomProviders(),this.addFinalProviders(),this.addReactRouterComponents(),this.addProviders(e.providers||[]),this.ws=this.createWebSocketClient(e),this.ws.app=this,this.pluginSettingsManager=this.createPluginSettingsManager(e),this.addRoutes(),this.i18n.on("languageChanged",e=>{this.apiClient.auth.locale=e}),this.initListeners(),this.afterManagersInitialized()}}var ec=new WeakMap,ep=new WeakMap;class eh extends u.FlowModel{get app(){return this.context.app}getProviders(){return(0,i._)(this,ec,(0,n._)(this,ec)||this.app.getComposeProviders()),(0,n._)(this,ec)}getRouter(){return(0,i._)(this,ep,(0,n._)(this,ep)||this.app.router.getRouterComponent()),(0,n._)(this,ep)}render(){return this.app.maintaining?this.renderMaintaining():this.app.error?this.renderError():this.renderContent()}renderMaintaining(){return this.app.maintained?this.app.renderComponent("AppMaintainingDialog",{app:this.app,error:this.app.error}):this.app.renderComponent("AppMaintaining",{app:this.app,error:this.app.error})}renderError(){return this.app.renderComponent("AppError",{app:this.app,error:this.app.error})}renderContent(){let e=this.app.getComponent("AppError",!1),t=this.getRouter(),l=this.getProviders(),o=(0,s.jsx)(t,{BaseLayout:l});if(!e)return o;let n=(e,t)=>{var l;console.error(e);let o=null==(l=t.componentStack)?void 0:l.trim();if(!o)return;let n=Error("React component stack");n.stack=o,console.error(n)};return(0,s.jsx)(C.tH,{FallbackComponent:t=>(0,s.jsx)(e,{app:this.app,...t}),onError:n,children:o})}constructor(...e){super(...e),(0,r._)(this,ec,{writable:!0,value:void 0}),(0,r._)(this,ep,{writable:!0,value:void 0})}}eh.registerFlow({key:"appFlow",steps:{init:{async handler(e){try{await e.app.load()}catch(t){e.model.app.error=t,console.error(t)}}}}});var em=l(16350);class ef{addFieldInterfaces(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=e.reduce((e,t)=>{let l=new t(this);return(null==l?void 0:l.name)&&(e[l.name]=l,Array.isArray(this.actionList[l.name])&&(this.actionList[l.name].forEach(e=>{var t,o;if("addComponentOption"===e.type){null==(o=l.addComponentOption)||o.call(l,e.data);return}null==(t=l.addOperator)||t.call(l,e.data)}),this.actionList[l.name]=void 0)),e},{});Object.assign(this.collectionFieldInterfaceInstances,t)}addFieldInterfaceComponentOption(e,t){var l;let o=this.getFieldInterface(e);o?null==(l=o.addComponentOption)||l.call(o,t):this.enqueueAction(e,{type:"addComponentOption",data:t})}addFieldInterfaceOperator(e,t){var l;let o=this.getFieldInterface(e);o?null==(l=o.addOperator)||l.call(o,t):this.enqueueAction(e,{type:"addOperator",data:t})}getFieldInterface(e){return this.collectionFieldInterfaceInstances[e]}getFieldInterfaces(e){return Object.values(this.collectionFieldInterfaceInstances).filter(t=>!e||!t.supportDataSourceType&&!t.notSupportDataSourceType||(t.supportDataSourceType?t.supportDataSourceType.includes(e):!t.notSupportDataSourceType||!t.notSupportDataSourceType.includes(e)))}addFieldInterfaceGroups(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.assign(this.collectionFieldGroups,e)}getFieldInterfaceGroups(){return this.collectionFieldGroups}getFieldInterfaceGroup(e){return this.collectionFieldGroups[e]}enqueueAction(e,t){this.actionList[e]||(this.actionList[e]=[]),this.actionList[e].push(t)}constructor(e){(0,a._)(this,"dataSourceManager",void 0),(0,a._)(this,"collectionFieldInterfaceInstances",void 0),(0,a._)(this,"collectionFieldGroups",void 0),(0,a._)(this,"actionList",void 0),this.dataSourceManager=e,this.collectionFieldInterfaceInstances={},this.collectionFieldGroups={},this.actionList={}}}function eg(e){Object.entries(e).forEach(e=>{let[t,l]=e;window.define(`${t}/client-v2`,()=>l)})}function ev(e){window.define(`${e}/client-v2`,["exports",e],function(e,t){Object.defineProperty(e,"__esModule",{value:!0}),Object.keys(t).forEach(function(l){"__esModule"===l||l in e&&e[l]===t[l]||Object.defineProperty(e,l,{enumerable:!0,get:function(){return t[l]}})})})}function ey(e,t){e.requirejs.config({waitSeconds:120,paths:t.reduce((e,t)=>(e[t.packageName]=t.url,e),{})})}function eb(e,t){return function(){for(var l=arguments.length,o=Array(l),n=0;n<l;n++)o[n]=arguments[n];t(o.map((t,l)=>[e[l].name,(null==t?void 0:t.default)||t]).filter(e=>e[1]));let r=o.map((e,t)=>e?null:t).filter(e=>null!==e).map(t=>e[t].packageName);r.length>0&&console.error("[nocobase load plugin error]: These plugins do not have an `export.default` exported content or there is an error in the plugins. error plugins: \r\n%s",r.join(", \r\n"))}}function ex(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];ey(e,t);let l=t.map(e=>e.packageName);return l.forEach(e=>{ev(e)}),new Promise((o,n)=>{e.requirejs(l,eb(t,o),n)})}async function ew(e){let{requirejs:t,pluginData:l,devDynamicImport:o}=e;if(0===l.length)return[];let n=[],r={};if(o){for await(let e of l){let t=await o(e.packageName);t&&(n.push([e.name,t.default]),r[e.packageName]=t.default)}eg(r)}let i=l.filter(e=>!r[e.packageName]);if(0===i.length)return n;if(0===n.length){let e=await ex(t,i);n.push(...e)}return n}class eS{async init(e){await this.initStaticPlugins(e),this.loadRemotePlugins&&await this.initRemotePlugins()}getRemotePluginsRequestUrl(){return"pm:listEnabledV2"}async initStaticPlugins(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];for await(let t of e){let e=Array.isArray(t)?t[0]:t,l=Array.isArray(t)?t[1]:void 0;await this.add(e,l)}}async initRemotePlugins(){var e;let t=await this.app.apiClient.request({url:this.getRemotePluginsRequestUrl()}),l=(null==t||null==(e=t.data)?void 0:e.data)||[];for await(let[e,t]of(await ew({requirejs:this.app.requirejs,pluginData:l,devDynamicImport:this.app.devDynamicImport}))){let o=l.find(t=>t.name===e);await this.add(t,o)}}async add(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=this.getInstance(e,t);this.pluginInstances.set(e,l),t.name&&(this.pluginsAliases[t.name]=l),t.packageName&&(this.pluginsAliases[t.packageName]=l),await l.afterAdd()}get(e){return"string"==typeof e?this.pluginsAliases[e]:this.pluginInstances.get(e.default||e)}getInstance(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return new e(t,this.app)}async load(){for(let e of(await this.initPlugins,this.pluginInstances.values()))await e.beforeLoad();for(let e of this.pluginInstances.values())await e.load(),this.app.eventBus.dispatchEvent(new CustomEvent(`plugin:${e.options.name}:loaded`,{detail:e}))}constructor(e,t,l){(0,a._)(this,"_plugins",void 0),(0,a._)(this,"loadRemotePlugins",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"pluginInstances",void 0),(0,a._)(this,"pluginsAliases",void 0),(0,a._)(this,"initPlugins",void 0),this._plugins=e,this.loadRemotePlugins=t,this.app=l,this.pluginInstances=new Map,this.pluginsAliases={},this.app=l,this.initPlugins=this.init(e||[]),this.loadRemotePlugins=t}}var eM=l(96204),eF=l(45588);function eA(e){let t=(0,j.useParams)(),l=(0,j.useLocation)(),o=(0,j.useMatches)(),n=e.flowEngine;(0,F.useEffect)(()=>{var e;let l=o[o.length-1];l&&(n.context._observableCache.route={name:l.id,pathname:l.pathname,path:(null==(e=l.handle)?void 0:e.path)||null,params:t})},[n.context,t,o]),(0,F.useEffect)(()=>{n.context._observableCache.location=l},[n.context,l])}function ek(e){let{app:t}=e;return eA(t),null}class eC{get basename(){return this.router.basename}get state(){return this.router.state}get navigate(){return this.router.navigate}resolveLoadedComponent(e){if(e)return"function"==typeof e||"string"==typeof e?e:e.default||e.Component}createRouteLazyComponent(e){let t=F.lazy(()=>e().then(e=>{let t=this.resolveLoadedComponent(e);if(!t)throw Error("componentLoader must resolve to a React component or component module.");return"string"==typeof t?{default:e=>this.app.renderComponent(t,e)}:{default:t}}));return function(e){return(0,s.jsx)(F.Suspense,{fallback:null,children:(0,s.jsx)(t,{...e})})}}getRoutesTree(){let e={};for(let[t,l]of Object.entries(this.routes))(0,M.set)(e,t.split(".").join(".children."),{...(0,M.get)(e,t.split(".").join(".children.")),...l});let t=e=>Object.values(e).reduce((e,l)=>{if(1===Object.keys(l).length&&l.children)e.push(...t(l.children));else{let{Component:o,componentLoader:n,element:r,children:i,...a}=l,s=r;n?s=F.createElement(this.createRouteLazyComponent(n)):o&&(s="string"==typeof o?this.app.renderComponent(o):F.createElement(o));let d={...a,element:s,children:i?t(i):void 0};e.push(d)}return e},[]);return t(e)}getRoutes(){return this.routes}setType(e){this.options.type=e}getBasename(){return this.options.basename}setBasename(e){this.options.basename=e}matchRoutes(e){let t=this.getRoutesTree();return(0,eF.ue)(t,e,this.basename)}isSkippedAuthCheckRoute(e){return(this.matchRoutes(e)||[]).some(e=>{var t;return(null==e||null==(t=e.route)?void 0:t.skipAuthCheck)===!0})}getRouterComponent(e){let{type:t="browser",...l}=this.options,o={hash:P.createHashRouter,browser:P.createBrowserRouter,memory:j.createMemoryRouter},n=this.getRoutesTree(),r=(0,F.createContext)(e=>e.children),i=()=>{let t=(0,F.useContext)(r);return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(ek,{app:this.app}),(0,s.jsxs)(t,{children:[(0,s.jsx)(j.Outlet,{}),e]})]})},a=()=>{throw(0,j.useRouteError)()};return this.router=o[t]([{element:(0,s.jsx)(i,{}),errorElement:(0,s.jsx)(a,{}),children:n}],l),e=>{let{BaseLayout:t=L.ct}=e;return(0,s.jsx)(r.Provider,{value:t,children:(0,s.jsx)(L.PK,{children:(0,s.jsx)(P.RouterProvider,{future:{v7_startTransition:!0},router:this.router})})})}}add(e,t){this.routes[e]={id:e,...t,handle:{path:t.path}}}get(e){return this.routes[e]}has(e){return!!this.get(e)}remove(e){delete this.routes[e]}constructor(e={},t){(0,a._)(this,"routes",{}),(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),(0,a._)(this,"router",void 0),this.options=e,this.app=t,this.routes=e.routes||{}}}var eP=l(24978),ej=l(35710);let eI=e=>{let{children:t}=e,{token:l}=ej.A.useToken(),o=l.colorFillTertiary,n=new eP.q(l.colorFill).onBackground(l.colorFillSecondary).toHexShortString(),r=new eP.q(l.colorFill).onBackground(l.colorFill).toHexShortString(),i=new eP.q(l.colorFill).onBackground(l.colorFill).onBackground(l.colorFill).toHexShortString();return(0,F.useEffect)(()=>{document.body.style.setProperty("--nb-spacing",`${l.marginLG}px`),document.body.style.setProperty("--nb-designer-offset",`${l.marginXS}px`),document.body.style.setProperty("--nb-header-height",`${l.sizeXXL-2}px`),document.body.style.setProperty("--nb-box-bg",l.colorBgLayout),document.body.style.setProperty("--colorBgLayout",l.colorBgLayout),document.body.style.setProperty("--colorBgContainer",l.colorBgContainer),document.body.style.setProperty("--controlHeightLG",`${l.controlHeightLG}px`),document.body.style.setProperty("--paddingContentVerticalSM",`${l.paddingContentVerticalSM}px`),document.body.style.setProperty("--marginSM",`${l.marginSM}px`),document.body.style.setProperty("--colorInfoBg",l.colorInfoBg),document.body.style.setProperty("--colorInfoBorder",l.colorInfoBorder),document.body.style.setProperty("--colorWarningBg",l.colorWarningBg),document.body.style.setProperty("--colorWarningBorder",l.colorWarningBorder),document.body.style.setProperty("--colorText",l.colorText),document.body.style.setProperty("--colorTextHeaderMenu",l.colorTextHeaderMenu),document.body.style.setProperty("--colorPrimaryText",l.colorPrimaryText),document.body.style.setProperty("--colorPrimaryTextActive",l.colorPrimaryTextActive),document.body.style.setProperty("--colorPrimaryTextHover",l.colorPrimaryTextHover),document.body.style.setProperty("--colorBgSider",l.colorBgSider),document.body.style.setProperty("--colorBgSiderMenuHover",l.colorBgSiderMenuHover),document.body.style.setProperty("--colorBgSiderMenuActive",l.colorBgSiderMenuActive),document.body.style.setProperty("--colorTextSiderMenu",l.colorTextSiderMenu),document.body.style.setProperty("--colorTextSiderMenuHover",l.colorTextSiderMenuHover),document.body.style.setProperty("--colorTextSiderMenuActive",l.colorTextSiderMenuActive),document.body.style.setProperty("--colorBgScrollTrack",o),document.body.style.setProperty("--colorBgScrollBar",n),document.body.style.setProperty("--colorBgScrollBarHover",r),document.body.style.setProperty("--colorBgScrollBarActive",i),document.body.style.setProperty("--colorSettings",l.colorSettings||N.zQ.token.colorSettings),document.body.style.setProperty("--colorBgSettingsHover",l.colorBgSettingsHover),document.body.style.setProperty("--colorTemplateBgSettingsHover",l.colorTemplateBgSettingsHover),document.body.style.setProperty("--colorBorderSettingsHover",l.colorBorderSettingsHover),document.body.style.setProperty("--colorBgMenuItemSelected",l.colorBgHeaderMenuActive),document.body.style.setProperty("background-color",l.colorBgContainer)},[n,i,r,o,l.colorBgContainer,l.colorBgLayout,l.colorBgSettingsHover,l.colorTemplateBgSettingsHover,l.colorBorderSettingsHover,l.colorInfoBg,l.colorInfoBorder,l.colorPrimaryText,l.colorPrimaryTextActive,l.colorPrimaryTextHover,l.colorSettings,l.colorText,l.colorWarningBg,l.colorWarningBorder,l.controlHeightLG,l.marginLG,l.marginSM,l.marginXS,l.paddingContentVerticalSM,l.sizeXXL,l.colorTextHeaderMenu,l.colorBgSider,l.colorBgSiderMenuHover,l.colorBgSiderMenuActive,l.colorTextSiderMenu,l.colorTextSiderMenuHover,l.colorTextSiderMenuActive,l.colorBgHeaderMenuActive]),t};eI.displayName="CSSVariableProvider";let eE=eI;class e_ extends eu{createApiClient(e){return new w(e.apiClient)}configureRuntimeAdapters(){this.dataSourceManager=this.flowEngine.context.dataSourceManager,this.dataSourceManager.setRequester(this.apiClient.request.bind(this.apiClient)),this.dataSourceManager.collectionFieldInterfaceManager||this.dataSourceManager.setCollectionFieldInterfaceManager(new ef(this.dataSourceManager))}createI18n(e){if(e.i18n)return e.i18n;let t=(0,ee.createInstance)();return t.use(em.r9).init({lng:"en-US",defaultNS:"client",resources:{},keySeparator:!1,nsSeparator:!1}),t}createRouterManager(e){var t;let l=new eC(e.router,this);if((null==(t=e.router)?void 0:t.basename)===void 0){let e=this.getPublicPath(),t="/"===e?void 0:e.replace(/\/$/,"");t&&l.setBasename(t)}return l}createPluginManager(e){return new eS(e.plugins||[],!!e.loadRemotePlugins,this)}createPluginSettingsManager(e){return new eM.mz(this)}async load(){await this.loadWebSocket(),await this.pm.load(),await this.flowEngine.flowSettings.load(),this.updateFavicon()}async loadWebSocket(){this.eventBus.addEventListener("ws:message:authorized",()=>{this.setWsAuthorized(!0)}),this.ws.on("message",e=>{var t,l,o,n;if(!e.data)return;let r=JSON.parse(e.data);if(null==r||null==(t=r.payload)?void 0:t.refresh)return void globalThis.window.location.reload();if("notification"===r.type){let e=this.context.notification;null==(o=e[(null==(n=r.payload)?void 0:n.type)||"info"])||o.call(e,{message:null==(l=r.payload)?void 0:l.message});return}if(this.error&&"APP_RUNNING"===r.payload.code){this.maintained=!0,this.setMaintaining(!1),this.error=null,globalThis.window.location.reload();return}let i="maintaining"===r.type&&"APP_RUNNING"!==r.payload.code;if(console.log("ws:message",{maintaining:i,data:r}),i)this.setMaintaining(!0),this.error=r.payload;else{this.setMaintaining(!1),this.maintained=!0,this.error=null;let e=r.type;if(!e)return;let t=`ws:message:${e}`;this.eventBus.dispatchEvent(new CustomEvent(t,{detail:r.payload}))}}),this.ws.on("serverDown",()=>{this.maintaining=!0,this.maintained=!1}),this.ws.on("open",()=>{let e=this.apiClient.auth.token;e&&this.setTokenInWebSocket({token:e,authenticator:this.apiClient.auth.getAuthenticator()})}),this.ws.connect()}addCustomProviders(){this.use(eE)}addFieldInterfaces(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return this.dataSourceManager.addFieldInterfaces(e)}addFieldInterfaceGroups(e){return this.dataSourceManager.addFieldInterfaceGroups(e)}addFieldInterfaceComponentOption(e,t){return this.dataSourceManager.addFieldInterfaceComponentOption(e,t)}addFieldInterfaceOperator(e,t){return this.dataSourceManager.addFieldInterfaceOperator(e,t)}}var eR=l(8643),eT=l(966),eD=l(75251);let eN=(0,F.createContext)(null);eN.displayName="ApplicationContext";var eO=l(36093),e$=l.n(eO);class eB extends e_{constructor(e={}){super({router:{type:"memory",initialEntries:["/"]},...e}),(0,a._)(this,"apiMock",void 0),this.apiMock=new(e$())(this.apiClient.axios),this.ws=new eq(e.ws||{})}}class eq extends K{connect(){}close(){}send(){}on(e,t,l){this.eventBus.addEventListener(e,e=>t({data:JSON.stringify(e.detail)}),l)}emit(e,t){this.eventBus.dispatchEvent(new CustomEvent(e,{detail:t}))}off(e,t,l){this.eventBus.removeEventListener(e,t,l)}removeAllListeners(){}constructor(e){super(e),(0,a._)(this,"eventBus",new EventTarget)}}function eL(e){return new eB(e)}class eV{get pluginManager(){return this.app.pluginManager}get context(){return this.app.context}get flowEngine(){return this.app.flowEngine}get engine(){return this.app.flowEngine}get pm(){return this.app.pm}get router(){return this.app.router}get pluginSettingsManager(){return this.app.pluginSettingsManager}get schemaInitializerManager(){return this.app.schemaInitializerManager}get schemaSettingsManager(){return this.app.schemaSettingsManager}get dataSourceManager(){return this.app.dataSourceManager}get ai(){return this.app.aiManager}async afterAdd(){}async beforeLoad(){}async load(){}t(e){var t;let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.app.i18n.t(e,{ns:null==(t=this.options)?void 0:t.packageName,...l})}constructor(e,t){(0,a._)(this,"options",void 0),(0,a._)(this,"app",void 0),this.options=e,this.app=t,this.options=e,this.app=t}}var ez=l(99002);let eK=()=>(0,E.n)().router;var eU=l(84256),eW=l(46578),eH=l(16631),eY=l(60183),eG=l(77009),eJ=l(74353),eX=l.n(eJ);let eQ={"ar-EG":"ar","az-AZ":"az","bg-BG":"bg","bn-BD":"bn-bd","by-BY":"en","ca-ES":"ca","cs-CZ":"cs","da-DK":"da","de-DE":"de","el-GR":"el","en-GB":"en-gb","en-US":"en","es-ES":"es","et-EE":"et","fa-IR":"fa","fi-FI":"fi","fr-BE":"fr","fr-CA":"fr","fr-FR":"fr","ga-IE":"ga","gl-ES":"gl","he-IL":"he","hi-IN":"hi","hr-HR":"hr","hu-HU":"hu","hy-AM":"hy-am","id-ID":"id","is-IS":"is","it-IT":"it","ja-JP":"ja","ka-GE":"ka","kk-KZ":"kk","km-KH":"km","kn-IN":"kn","ko-KR":"ko","ku-IQ":"ku","lt-LT":"lt","lv-LV":"lv","mk-MK":"mk","ml-IN":"ml","mn-MN":"mn","ms-MY":"ms","nb-NO":"nb","ne-NP":"ne","nl-BE":"nl-be","nl-NL":"nl","pl-PL":"pl","pt-BR":"pt-br","pt-PT":"pt","ro-RO":"ro","ru-RU":"ru","si-LK":"si","sk-SK":"sk","sl-SI":"sl","sr-RS":"sr","sv-SE":"sv","ta-IN":"ta","th-TH":"th","tk-TK":"tk","tr-TR":"tr","uk-UA":"uk","ur-PK":"ur","vi-VN":"vi","zh-CN":"zh-cn","zh-HK":"zh-hk","zh-TW":"zh-tw"};var eZ=l(36590),e0=l.n(eZ);class e1{atX0SecondsPastTheMinuteGt20(){return this.data.atX0SecondsPastTheMinuteGt20}atX0MinutesPastTheHourGt20(){return this.data.atX0MinutesPastTheHourGt20}commaMonthX0ThroughMonthX1(){return this.data.commaMonthX0ThroughMonthX1}commaYearX0ThroughYearX1(){return this.data.commaYearX0ThroughYearX1}use24HourTimeFormatByDefault(){return this.data.use24HourTimeFormatByDefault}anErrorOccuredWhenGeneratingTheExpressionD(){return this.data.anErrorOccuredWhenGeneratingTheExpressionD}everyMinute(){return this.data.everyMinute}everyHour(){return this.data.everyHour}atSpace(){return this.data.atSpace}everyMinuteBetweenX0AndX1(){return this.data.everyMinuteBetweenX0AndX1}at(){return this.data.at}spaceAnd(){return this.data.spaceAnd}everySecond(){return this.data.everySecond}everyX0Seconds(){return this.data.everyX0Seconds}secondsX0ThroughX1PastTheMinute(){return this.data.secondsX0ThroughX1PastTheMinute}atX0SecondsPastTheMinute(){return this.data.atX0SecondsPastTheMinute}everyX0Minutes(){return this.data.everyX0Minutes}minutesX0ThroughX1PastTheHour(){return this.data.minutesX0ThroughX1PastTheHour}atX0MinutesPastTheHour(){return this.data.atX0MinutesPastTheHour}everyX0Hours(){return this.data.everyX0Hours}betweenX0AndX1(){return this.data.betweenX0AndX1}atX0(){return this.data.atX0}commaEveryDay(){return this.data.commaEveryDay}commaEveryX0DaysOfTheWeek(){return this.data.commaEveryX0DaysOfTheWeek}commaX0ThroughX1(){return this.data.commaX0ThroughX1}commaAndX0ThroughX1(){return this.data.commaAndX0ThroughX1}first(){return this.data.first}second(){return this.data.second}third(){return this.data.third}fourth(){return this.data.fourth}fifth(){return this.data.fifth}commaOnThe(){return this.data.commaOnThe}spaceX0OfTheMonth(){return this.data.spaceX0OfTheMonth}lastDay(){return this.data.lastDay}commaOnTheLastX0OfTheMonth(){return this.data.commaOnTheLastX0OfTheMonth}commaOnlyOnX0(){return this.data.commaOnlyOnX0}commaAndOnX0(){return this.data.commaAndOnX0}commaEveryX0Months(){return this.data.commaEveryX0Months}commaOnlyInX0(){return this.data.commaOnlyInX0}commaOnTheLastDayOfTheMonth(){return this.data.commaOnTheLastDayOfTheMonth}commaOnTheLastWeekdayOfTheMonth(){return this.data.commaOnTheLastWeekdayOfTheMonth}commaDaysBeforeTheLastDayOfTheMonth(){return this.data.commaDaysBeforeTheLastDayOfTheMonth}firstWeekday(){return this.data.firstWeekday}weekdayNearestDayX0(){return this.data.weekdayNearestDayX0}commaOnTheX0OfTheMonth(){return this.data.commaOnTheX0OfTheMonth}commaEveryX0Days(){return this.data.commaEveryX0Days}commaBetweenDayX0AndX1OfTheMonth(){return this.data.commaBetweenDayX0AndX1OfTheMonth}commaOnDayX0OfTheMonth(){return this.data.commaOnDayX0OfTheMonth}commaEveryHour(){return this.data.commaEveryHour}commaEveryX0Years(){return this.data.commaEveryX0Years}commaStartingX0(){return this.data.commaStartingX0}daysOfTheWeek(){return this.data.daysOfTheWeek}monthsOfTheYear(){return this.data.monthsOfTheYear}constructor(e){(0,a._)(this,"data",void 0),this.data=e}}let e2=e=>{(e0().default?e0().default:e0()).initialize({load(t){t[null==e?void 0:e.lang]=new e1(null==e?void 0:e.cronstrue)}})};class e4 extends eV{async afterAdd(){let e=this.app.apiClient,t=e.auth.locale;try{var o;let n=await e.request({url:"app:getLang",params:{locale:t},headers:{"X-Role":"anonymous"}}),r=(null==n||null==(o=n.data)?void 0:o.data)||{};this.engine.context.defineProperty("locales",{value:r}),this.app.use(_.A,{component:!1}),r.lang&&(e.auth.setLocale(r.lang),this.app.i18n.changeLanguage(r.lang)),Object.keys(r.resources||{}).forEach(e=>{this.app.i18n.addResources(r.lang,e,r.resources[e]||{})}),(0,eG.tP)(r.lang),e2(r);let i=eQ[r.lang]||"en";await l(65359)(`./${i}`),eX().locale(i),window.cronLocale=r.cron}catch(e){throw e}}}let e5=["/signin","/signup","/forgot-password","/reset-password"];function e8(e,t){if(!t)return e;let l=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),o=RegExp(`^${l.replace(/\/?$/,"")}(\\/|$)`);return e.replace(o,"/")||e}function e3(e,t){let l=e8(e,t);return e5.some(e=>l===e||l.startsWith(`${e}/`))}function e6(e,t){let l=e8(e,t);return"/admin"===l||l.startsWith("/admin/")}let e9=(0,F.createContext)(null);e9.displayName="CurrentUserContext";let e7=e=>{let{children:t}=e,l=(0,E.n)(),o=(0,j.useLocation)(),[n,r]=(0,F.useState)(!0),[i,a]=(0,F.useState)(null),d=(0,F.useRef)(!1);if((0,F.useEffect)(()=>{let e=!0,t=l.router.getBasename(),n=e3(o.pathname,t)||l.router.isSkippedAuthCheckRoute(o.pathname),i=e6(o.pathname,t);if(n||!i){r(!1),a(null);return}return d.current||r(!0),a(null),(async()=>{try{await l.dataSourceManager.ensureLoaded(),d.current=!0,e&&r(!1)}catch(t){if(!e)return;r(!1),a(t instanceof Error?t:Error(String(t)))}})(),()=>{e=!1}},[l,o.pathname]),i)throw i;return n?l.renderComponent("AppSpin"):(0,s.jsx)(s.Fragment,{children:t})},te=e=>{let{children:t}=e,l=(0,E.n)(),o=(0,j.useLocation)(),[n,r]=(0,F.useState)({loading:!0}),i=(0,F.useRef)(o.pathname);i.current=o.pathname;let a=(0,F.useRef)(o);return(a.current=o,(0,F.useEffect)(()=>{let e=!0,t=e3(i.current,l.router.getBasename())||l.router.isSkippedAuthCheckRoute(i.current),o=e6(i.current,l.router.getBasename());return t||!o?void r({loading:!1}):((async()=>{var t,o;try{let o=await l.apiClient.request({url:"/auth:check",skipNotify:!0,skipAuth:!0}),n=null==o||null==(t=o.data)?void 0:t.data;if((null==n?void 0:n.id)==null)return void(0,eD.BE)(l,(0,eD.vi)(l,a.current),{replace:!0});let i=(0,u.createCollectionContextMeta)(()=>{var e,t;return(null==(t=l.flowEngine.context.dataSourceManager)||null==(e=t.getDataSource("main"))?void 0:e.getCollection("users"))||null},l.flowEngine.translate("Current user"));i.sort=1e3,l.flowEngine.context.defineProperty("user",{value:n,resolveOnServer:!0,meta:i}),e&&r({data:null==o?void 0:o.data,loading:!1})}catch(t){if((null==t||null==(o=t.response)?void 0:o.status)===401||(null==t?void 0:t.status)===401)return void(0,eD.BE)(l,(0,eD.vi)(l,a.current),{replace:!0});throw e&&r({loading:!1}),t}})(),()=>{e=!1})},[l]),n.loading)?l.renderComponent("AppSpin"):(0,s.jsx)(e9.Provider,{value:n,children:t})},tt=()=>{var e,t;let l=(0,E.n)(),o=!!(null==l||null==(t=l.apiClient)||null==(e=t.auth)?void 0:e.token);return((0,F.useEffect)(()=>{o||(0,eD.BE)(l,(0,eD.uk)(l),{replace:!0})},[l,o]),o)?(0,s.jsx)(j.Navigate,{replace:!0,to:"/admin"}):l.renderComponent("AppSpin")};class tl extends eV{async afterAdd(){await this.addPlugins()}async load(){this.addComponents(),this.addRoutes(),this.app.use(e7),this.app.use(te),this.app.flowEngine.registerModels({AdminLayoutModel:eH.pX,AdminLayoutMenuItemModel:eH.xF,AdminSettingsLayoutModel:eY.C_}),this.app.pluginSettingsManager.addMenuItem({key:"plugin-manager",title:this.app.i18n.t("Plugin manager"),icon:"ApiOutlined",aclSnippet:"pm",sort:-200}),this.app.pluginSettingsManager.addPageTabItem({menuKey:"plugin-manager",key:"index",title:this.app.i18n.t("Plugin manager"),componentLoader:()=>Promise.resolve().then(l.bind(l,83458)),aclSnippet:"pm",sort:-200}),this.app.pluginSettingsManager.addMenuItem({key:"system-settings",title:this.app.i18n.t("System settings"),icon:"SettingOutlined",aclSnippet:"pm.system-settings.system-settings",sort:-100}),this.app.pluginSettingsManager.addPageTabItem({menuKey:"system-settings",key:"index",title:this.app.i18n.t("System settings"),componentLoader:()=>Promise.resolve().then(l.bind(l,10300)),aclSnippet:"pm.system-settings.system-settings",sort:-100})}addRoutes(){this.router.add("root",{path:"/",element:(0,s.jsx)(tt,{})}),this.router.add("not-found",{path:"*",Component:L.bM}),this.router.add("admin",{path:"/admin",componentLoader:()=>l.e("7531").then(l.bind(l,80566))}),this.router.add("admin.settings",{path:"/admin/settings",componentLoader:()=>Promise.resolve().then(l.bind(l,43089))}),this.router.add("admin.settings.route-empty",{path:"*",Component:j.Outlet}),this.router.add("admin.page",{path:"/admin/:name",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.tab",{path:"/admin/:name/tab/:tabUid",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.view",{path:"/admin/:name/view/*",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))}),this.router.add("admin.page.tab.view",{path:"/admin/:name/tab/:tabUid/view/*",componentLoader:()=>Promise.resolve().then(l.bind(l,9556))})}addComponents(){}async addPlugins(){await this.app.pm.add(eW.s$$),await this.app.pm.add(e4,{name:"builtin-locale"})}}var to=l(22803),tn=l(36869);let tr=[{label:'{{t("contains")}}',value:"$includes",selected:!0},{label:'{{t("does not contain")}}',value:"$notIncludes"},{label:'{{t("is")}}',value:"$eq"},{label:'{{t("is not")}}',value:"$ne"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],ti=[{label:'{{t("is")}}',value:"$match",selected:!0,schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is not")}}',value:"$notMatch",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is any of")}}',value:"$anyOf",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$noneOf",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],ta=[{label:"{{ t('is') }}",value:"$dateOn",selected:!0,schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is not') }}",value:"$dateNotOn",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is before') }}",value:"$dateBefore",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is after') }}",value:"$dateAfter",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is on or after') }}",value:"$dateNotBefore",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is on or before') }}",value:"$dateNotAfter",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!1}},onlyFilterAction:!0},{label:"{{ t('is between') }}",value:"$dateBetween",schema:{"x-component":"DateFilterDynamicComponent","x-component-props":{isRange:!0}}},{label:"{{ t('is empty') }}",value:"$empty",noValue:!0},{label:"{{ t('is not empty') }}",value:"$notEmpty",noValue:!0}],ts=[{label:'{{t("=")}}',value:"$eq",selected:!0},{label:'{{t("≠")}}',value:"$ne"},{label:'{{t(">")}}',value:"$gt"},{label:'{{t("≥")}}',value:"$gte"},{label:'{{t("<")}}',value:"$lt"},{label:'{{t("≤")}}',value:"$lte"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],td=[{label:'{{t("is")}}',value:"$eq",selected:!0},{label:'{{t("is not")}}',value:"$ne"},{label:'{{t("exists")}}',value:"$exists",noValue:!0},{label:'{{t("not exists")}}',value:"$notExists",noValue:!0}],tu=[{label:'{{t("is")}}',value:"$eq",selected:!0,schema:{"x-component":"Select","x-component-props":{mode:null}}},{label:'{{t("is not")}}',value:"$ne",schema:{"x-component":"Select","x-component-props":{mode:null}}},{label:'{{t("is any of")}}',value:"$in",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$notIn",schema:{"x-component":"Select","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tc=[{label:'{{t("is")}}',value:"$eq",selected:!0},{label:'{{t("is not")}}',value:"$neq"},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tp=[{label:'{{t("Yes")}}',value:"$isTruly",selected:!0,noValue:!0,schema:{"x-component":"Select","x-component-props":{multiple:!1,options:[{label:'{{t("Yes")}}',value:!0},{label:'{{t("No")}}',value:!1}]}}},{label:'{{t("No")}}',value:"$isFalsy",noValue:!0,schema:{"x-component":"Select","x-component-props":{multiple:!1,options:[{label:'{{t("Yes")}}',value:!0},{label:'{{t("No")}}',value:!1}]}}},{label:"{{ t('is empty') }}",value:"$empty",noValue:!0},{label:"{{ t('is not empty') }}",value:"$notEmpty",noValue:!0}],th=[{label:'{{t("is any of")}}',value:"$childIn",schema:{"x-component":"CollectionSelect","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$childNotIn",schema:{"x-component":"CollectionSelect","x-component-props":{mode:"tags"}}}],tm=[{label:'{{t("is")}}',value:"$eq",selected:!0,schema:{"x-component":"DataSourceCollectionCascader"}},{label:'{{t("is not")}}',value:"$ne",schema:{"x-component":"DataSourceCollectionCascader"}},{label:'{{t("is any of")}}',value:"$in",schema:{"x-component":"DataSourceCollectionCascader","x-component-props":{mode:"tags"}}},{label:'{{t("is none of")}}',value:"$notIn",schema:{"x-component":"DataSourceCollectionCascader","x-component-props":{mode:"tags"}}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0}],tf=[{label:'{{t("contains")}}',value:"$includes",selected:!0,schema:{type:"string","x-component":"Input"}},{label:'{{t("does not contain")}}',value:"$notIncludes",schema:{type:"string","x-component":"Input"}},{label:'{{t("is")}}',value:"$eq",schema:{type:"string","x-component":"Input"}},{label:'{{t("is not")}}',value:"$ne",schema:{type:"string","x-component":"Input"}},{label:'{{t("is empty")}}',value:"$empty",noValue:!0,schema:{type:"string","x-component":"Input"}},{label:'{{t("is not empty")}}',value:"$notEmpty",noValue:!0,schema:{type:"string","x-component":"Input"}}],tg={type:"boolean","x-content":'{{t("Unique")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly || primaryKeyOnly }}","x-reactions":[{dependencies:["primaryKey"],when:"{{$deps[0]}}",fulfill:{state:{value:!1}}}]},tv={type:"boolean","x-content":'{{t("Primary")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly || primaryKeyOnly }}","x-reactions":[{dependencies:["unique"],when:"{{$deps[0]&&createMainOnly}}",fulfill:{state:{value:!1}}}]},ty={type:"boolean",title:'{{t("Auto increment")}}',"x-content":'{{t("Auto increment")}}',"x-decorator":"FormItem","x-component":"Checkbox","x-disabled":"{{ !createMainOnly }}","x-reactions":[{dependencies:["primaryKey"],when:"{{$deps[0]&&createMainOnly}}",fulfill:{state:{value:!0}}}]},tb={type:"boolean",title:'{{t("Default value")}}',"x-content":'{{t("Automatically generate default values")}}',"x-decorator":"FormItem","x-component":"Checkbox",default:!0},tx={type:"string",title:'{{t("Relationship type")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Select",enum:[{label:"{{t('HasOne')}}",value:"hasOne"},{label:"{{t('HasMany')}}",value:"hasMany"},{label:"{{t('BelongsTo')}}",value:"belongsTo"},{label:"{{t('BelongsToMany')}}",value:"belongsToMany"}]},tw={onDelete:{type:"string",title:'{{t("ON DELETE")}}',required:!0,default:"SET NULL","x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Select",enum:[{label:"{{t('SET NULL')}}",value:"SET NULL"},{label:"{{t('RESTRICT')}}",value:"RESTRICT"},{label:"{{t('CASCADE')}}",value:"CASCADE"},{label:"{{t('NO ACTION')}}",value:"NO ACTION"}]}},tS={reverse:{type:"void","x-component":"div",properties:{autoCreateReverseField:{type:"boolean",default:!1,"x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Create inverse field in the target collection")}}',"x-reactions":[{target:"reverseField.type",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},{target:"reverseField.uiSchema.title",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},{target:"reverseField.name",when:"{{!!$self.value}}",fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0}}},e=>{let{reverseField:t}=e.form.values;e.value=!!(null==t?void 0:t.key),e.disabled=!!(null==t?void 0:t.key)}]},"reverseField.type":{...tx,title:'{{t("Inverse relationship type")}}'},"reverseField.uiSchema.title":{type:"string",title:'{{t("Inverse field display name")}}',default:"{{record.title}}",required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !showReverseFieldConfig }}"},"reverseField.name":{type:"string",title:'{{t("Inverse field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-validator":"uid","x-disabled":"{{ !showReverseFieldConfig }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}}},tM={"uiSchema.x-component-props.picker":{type:"string",title:'{{t("Picker")}}',"x-decorator":"FormItem","x-component":"Radio.Group",default:"date",enum:[{label:'{{t("Date")}}',value:"date"},{label:'{{t("Month")}}',value:"month"},{label:'{{t("Quarter")}}',value:"quarter"},{label:'{{t("Year")}}',value:"year"}]},"uiSchema.x-component-props.dateFormat":{type:"string",title:'{{t("Date format")}}',"x-decorator":"FormItem","x-component":"ExpiresRadio","x-decorator-props":{},"x-component-props":{className:(0,to.AH)`
960
960
  .ant-radio-wrapper {
961
961
  display: flex;
962
962
  margin: 5px 0px;
963
963
  }
964
- `,defaultValue:"dddd",formats:["MMMM Do YYYY","YYYY-MM-DD","MM/DD/YY","YYYY/MM/DD","DD/MM/YYYY"]},default:"YYYY-MM-DD",enum:[{label:(0,to.b)({format:"MMMM Do YYYY"}),value:"MMMM Do YYYY"},{label:(0,to.b)({format:"YYYY-MM-DD"}),value:"YYYY-MM-DD"},{label:(0,to.b)({format:"MM/DD/YY"}),value:"MM/DD/YY"},{label:(0,to.b)({format:"YYYY/MM/DD"}),value:"YYYY/MM/DD"},{label:(0,to.b)({format:"DD/MM/YYYY"}),value:"DD/MM/YYYY"},{label:"custom",value:"custom"}],"x-reactions":{dependencies:["uiSchema.x-component-props.picker"],fulfill:{state:{value:"{{ getPickerFormat($deps[0])}}",componentProps:{picker:"{{$deps[0]}}"}}}}},"uiSchema.x-component-props.showTime":{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Show time")}}',"x-reactions":[`{{(field) => {
964
+ `,defaultValue:"dddd",formats:["MMMM Do YYYY","YYYY-MM-DD","MM/DD/YY","YYYY/MM/DD","DD/MM/YYYY"]},default:"YYYY-MM-DD",enum:[{label:(0,tn.b)({format:"MMMM Do YYYY"}),value:"MMMM Do YYYY"},{label:(0,tn.b)({format:"YYYY-MM-DD"}),value:"YYYY-MM-DD"},{label:(0,tn.b)({format:"MM/DD/YY"}),value:"MM/DD/YY"},{label:(0,tn.b)({format:"YYYY/MM/DD"}),value:"YYYY/MM/DD"},{label:(0,tn.b)({format:"DD/MM/YYYY"}),value:"DD/MM/YYYY"},{label:"custom",value:"custom"}],"x-reactions":{dependencies:["uiSchema.x-component-props.picker"],fulfill:{state:{value:"{{ getPickerFormat($deps[0])}}",componentProps:{picker:"{{$deps[0]}}"}}}}},"uiSchema.x-component-props.showTime":{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Show time")}}',"x-reactions":[`{{(field) => {
965
965
  field.query('..[].timeFormat').take(f => {
966
966
  f.display = field.value ? 'visible' : 'none';
967
967
  f.value='HH:mm:ss'
968
968
  });
969
- }}}`,{dependencies:["uiSchema.x-component-props.picker"],when:'{{$deps[0]==="date"}}',fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0,value:!1}}}]},"uiSchema.x-component-props.timeFormat":{type:"string",title:'{{t("Time format")}}',"x-component":"Radio.Group","x-decorator":"FormItem",default:"HH:mm:ss",enum:[{label:'{{t("12 hour")}}',value:"hh:mm:ss a"},{label:'{{t("24 hour")}}',value:"HH:mm:ss"}],"x-reactions":{dependencies:["uiSchema.x-component-props.showTime"],fulfill:{state:{hidden:"{{ !$deps[0] }}"}}}}},tM={"uiSchema.x-component-props.format":{type:"string",title:'{{t("Time format")}}',"x-component":"ExpiresRadio","x-decorator":"FormItem","x-component-props":{className:(0,tl.AH)`
969
+ }}}`,{dependencies:["uiSchema.x-component-props.picker"],when:'{{$deps[0]==="date"}}',fulfill:{state:{hidden:!1}},otherwise:{state:{hidden:!0,value:!1}}}]},"uiSchema.x-component-props.timeFormat":{type:"string",title:'{{t("Time format")}}',"x-component":"Radio.Group","x-decorator":"FormItem",default:"HH:mm:ss",enum:[{label:'{{t("12 hour")}}',value:"hh:mm:ss a"},{label:'{{t("24 hour")}}',value:"HH:mm:ss"}],"x-reactions":{dependencies:["uiSchema.x-component-props.showTime"],fulfill:{state:{hidden:"{{ !$deps[0] }}"}}}}},tF={"uiSchema.x-component-props.format":{type:"string",title:'{{t("Time format")}}',"x-component":"ExpiresRadio","x-decorator":"FormItem","x-component-props":{className:(0,to.AH)`
970
970
  color: red;
971
971
  .ant-radio-wrapper {
972
972
  display: flex;
973
973
  margin: 5px 0px;
974
974
  }
975
- `,defaultValue:"h:mm a",formats:["hh:mm:ss a","HH:mm:ss"],timeFormat:!0},default:"HH:mm:ss",enum:[{label:(0,to.b)({format:"hh:mm:ss a"}),value:"hh:mm:ss a"},{label:(0,to.b)({format:"HH:mm:ss"}),value:"HH:mm:ss"},{label:"custom",value:"custom"}]}},tF={type:"array",title:'{{t("Options")}}',"x-decorator":"FormItem","x-component":"ArrayTable","x-component-props":{pagination:{pageSize:1e3}},items:{type:"object",properties:{column1:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},column2:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Option value")}}'},properties:{value:{type:"string",required:!0,"x-decorator":"FormItem","x-component":"Input","x-reactions":e=>{e.initialValue||e.initialized||(e.initialValue=(0,X.uid)(),e.setValue((0,X.uid)()))}}}},column3:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Option label")}}'},properties:{label:{type:"string",required:!0,"x-decorator":"FormItem","x-component":"Input"}}},column4:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Color")}}'},properties:{color:{type:"string","x-decorator":"FormItem","x-component":"ColorSelect"}}},column5:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:"",dataIndex:"operations",fixed:"right"},properties:{item:{type:"void","x-component":"FormItem",properties:{remove:{type:"void","x-component":"ArrayTable.Remove"}}}}}}},properties:{add:{type:"void","x-component":"ArrayTable.Addition","x-component-props":{randomValue:!0},title:"{{t('Add option')}}"}}},tA={"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input","x-validator":"uid",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}},tk={type:"void",title:'{{ t("View record") }}',"x-component":"RecordPicker.Viewer","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"popup:addTab",properties:{tab1:{type:"void",title:'{{t("Details")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":"popup:common:addBlock",properties:{}}}}}}}},tC={type:"string",title:'{{t("Options")}}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{multiple:!0},enum:"{{collections}}"};class tP{addComponentOption(e){if(!this.componentOptions){var t,l,o,n,r,i;this.componentOptions=[];let e=null==(l=this.default)||null==(t=l.uiSchema)?void 0:t["x-component"],a=null==(n=this.default)||null==(o=n.uiSchema)?void 0:o["x-component-props"];if(e){let t=(null==(i=this.default)||null==(r=i.uiSchema)?void 0:r.type)||"string",l=(0,O.tval)(e.startsWith("Input")?(0,M.capitalize)(t):e.split(".").pop());this.componentOptions=[{label:l,value:e,useProps:()=>a||{}}]}}this.componentOptions.push(e)}getConfigureFormProperties(e){var t;let l=this.hasDefaultValue?this.getDefaultValueProperty():{};this.availableValidationOptions.push("required");let o=null==e?void 0:e.view,n=(null==e?void 0:e.template)==="sql"||(null==e?void 0:e.sql),r=o||n||!this.validationType?{}:{validation:{title:'{{ t("Validation") }}',required:!1,"x-decorator":"FormItem","x-component":"FieldValidation","x-component-props":{type:this.validationType,availableValidationOptions:[...new Set(this.availableValidationOptions)],excludeValidationOptions:[...new Set(this.excludeValidationOptions)],isAssociation:this.isAssociation}}};return{...(0,M.cloneDeep)({...tA,...null==(t=this)?void 0:t.properties}),...l,...r}}getDefaultValueProperty(){var e,t,l,o;return{defaultValue:{...(0,M.cloneDeep)(null==(t=this)||null==(e=t.default)?void 0:e.uiSchema),...null==(o=this)||null==(l=o.properties)?void 0:l.uiSchema,required:!1,title:'{{ t("Default value") }}',"x-decorator":"FormItem","x-reactions":[{dependencies:["uiSchema.x-component-props.gmt","uiSchema.x-component-props.showTime","uiSchema.x-component-props.dateFormat","uiSchema.x-component-props.timeFormat","uiSchema.x-component-props.picker","uiSchema.x-component-props.format"],fulfill:{state:{componentProps:{gmt:"{{$deps[0]}}",showTime:"{{$deps[1]}}",dateFormat:"{{$deps[2]}}",timeFormat:"{{$deps[3]}}",picker:"{{$deps[4]}}",format:"{{$deps[5]}}"}}}},{dependencies:["uiSchema.x-component-props.picker"],fulfill:{state:{value:null}}},{dependencies:["primaryKey","unique","autoIncrement","defaultToCurrentTime"],when:"{{$deps[0]||$deps[1]||$deps[2]||$deps[3]}}",fulfill:{state:{hidden:!0,value:null}},otherwise:{state:{hidden:!1}}},{dependencies:["uiSchema.enum"],fulfill:{state:{dataSource:"{{$deps[0]}}"}}}]}}}addOperator(e){(0,M.set)(this,"filterable.operators",[...this.filterable.operators||[]]),this.filterable.operators.find(t=>t.value===e.value)||this.filterable.operators.push(e)}constructor(e){(0,a._)(this,"collectionFieldInterfaceManager",void 0),(0,a._)(this,"name",void 0),(0,a._)(this,"group",void 0),(0,a._)(this,"title",void 0),(0,a._)(this,"description",void 0),(0,a._)(this,"primaryKeyDescription",void 0),(0,a._)(this,"order",void 0),(0,a._)(this,"default",void 0),(0,a._)(this,"sortable",void 0),(0,a._)(this,"availableTypes",void 0),(0,a._)(this,"type",void 0),(0,a._)(this,"supportDataSourceType",void 0),(0,a._)(this,"notSupportDataSourceType",void 0),(0,a._)(this,"hasDefaultValue",void 0),(0,a._)(this,"componentOptions",void 0),(0,a._)(this,"isAssociation",void 0),(0,a._)(this,"operators",void 0),(0,a._)(this,"properties",void 0),(0,a._)(this,"validationType",void 0),(0,a._)(this,"availableValidationOptions",void 0),(0,a._)(this,"excludeValidationOptions",void 0),(0,a._)(this,"filterable",void 0),(0,a._)(this,"titleUsable",void 0),(0,a._)(this,"hidden",void 0),this.collectionFieldInterfaceManager=e,this.availableValidationOptions=[]}}class tj extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","checkbox"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Checkbox")}}'),(0,a._)(this,"default",{type:"boolean",uiSchema:{type:"boolean","x-component":"Checkbox"}}),(0,a._)(this,"availableTypes",["boolean","integer","bigInt","bit"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"filterable",{operators:tc})}}class tI extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","checkboxGroup"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Checkbox group")}}'),(0,a._)(this,"default",{interface:"checkboxGroup",type:"array",defaultValue:[],uiSchema:{type:"string","x-component":"Checkbox.Group"}}),(0,a._)(this,"availableTypes",["array","json"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,"uiSchema.enum":tF}),(0,a._)(this,"filterable",{operators:tr})}}class tE extends tP{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","collection"),(0,a._)(this,"type","string"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Collection selector")}}'),(0,a._)(this,"description",'{{t("Providing certain collections as options for users, typically used in polymorphic or inheritance scenarios")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"CollectionSelect"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!1),(0,a._)(this,"properties",{...tA,"uiSchema.enum":tC}),(0,a._)(this,"filterable",{operators:th})}}class t_ extends tP{constructor(...e){super(...e),(0,a._)(this,"name","color"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",10),(0,a._)(this,"title",'{{t("Color")}}'),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"ColorPicker"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"filterable",{operators:tn})}}class tR extends tP{constructor(...e){super(...e),(0,a._)(this,"name","createdAt"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Created at")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",field:"createdAt",uiSchema:{type:"datetime",title:'{{t("Created at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}),(0,a._)(this,"description",'{{t("Store the creation time of each record")}}'),(0,a._)(this,"availableTypes",[]),(0,a._)(this,"properties",{...tA,...tS}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}class tT extends tP{schemaInitialize(e,t){let{block:l}=t;e.properties={viewer:(0,M.cloneDeep)(tk)},["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","createdBy"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Created by")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsTo",target:"users",foreignKey:"createdById",uiSchema:{type:"object",title:'{{t("Created by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"filterable",{nested:!0,children:[]}),(0,a._)(this,"description",'{{t("Store the creation user of each record")}}')}}class tD extends tP{constructor(...e){super(...e),(0,a._)(this,"name","datetime"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Datetime (with time zone)")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,timezone:!0,uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{showTime:!1,utc:!0}}}),(0,a._)(this,"availableTypes",["date","string","datetime","datetimeTz"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tA,...tS,defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp on update")}}'},"uiSchema.x-component-props.gmt":{type:"boolean",title:'{{t("GMT")}}',"x-hidden":!0,"x-component":"Checkbox","x-content":'{{t("Use the same time zone (GMT) for all users")}}',"x-decorator":"FormItem",default:!1}}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}class tN extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","email"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Email")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Input","x-validator":"email"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","email","pattern"]),(0,a._)(this,"properties",{...tA,unique:tf}),(0,a._)(this,"filterable",{operators:tn}),(0,a._)(this,"titleUsable",!0)}}class tO extends tP{constructor(...e){super(...e),(0,a._)(this,"name","icon"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",10),(0,a._)(this,"title",'{{t("Icon")}}'),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"IconPicker"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA})}}class t$ extends tP{constructor(...e){super(...e),(0,a._)(this,"name","id"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("ID")}}'),(0,a._)(this,"hidden",!0),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{name:"id",type:"bigInt",autoIncrement:!0,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["bigInt","integer"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,default:"ID","x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}),(0,a._)(this,"filterable",{operators:ts}),(0,a._)(this,"description",'{{t("Primary key, unique identifier, self growth") }}'),(0,a._)(this,"titleUsable",!0)}}let tB=e=>e,tq=e=>{if((0,X.isArr)(e)){for(let t=0;t<e.length;t++)if((0,X.isValid)(e[t]))return!1;return!0}if(null==e?void 0:e.getCurrentContent){var t;return!(null==(t=e.getCurrentContent())?void 0:t.hasText())}return(0,X.isEmpty)(e)};(0,eY.D1)({username:e=>/^[^@<>"'/]{1,50}$/.test(e)||tB("Must be 1-50 characters in length (excluding @<>\"'/)"),required:(e,t)=>!1===t.required?"":("string"==typeof e&&(e=e.trim()),tq(e)?t.message:"")});class tL extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}validateSchema(e){return{max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
975
+ `,defaultValue:"h:mm a",formats:["hh:mm:ss a","HH:mm:ss"],timeFormat:!0},default:"HH:mm:ss",enum:[{label:(0,tn.b)({format:"hh:mm:ss a"}),value:"hh:mm:ss a"},{label:(0,tn.b)({format:"HH:mm:ss"}),value:"HH:mm:ss"},{label:"custom",value:"custom"}]}},tA={type:"array",title:'{{t("Options")}}',"x-decorator":"FormItem","x-component":"ArrayTable","x-component-props":{pagination:{pageSize:1e3}},items:{type:"object",properties:{column1:{type:"void","x-component":"ArrayTable.Column","x-component-props":{width:50,title:"",align:"center"},properties:{sort:{type:"void","x-component":"ArrayTable.SortHandle"}}},column2:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Option value")}}'},properties:{value:{type:"string",required:!0,"x-decorator":"FormItem","x-component":"Input","x-reactions":e=>{e.initialValue||e.initialized||(e.initialValue=(0,X.uid)(),e.setValue((0,X.uid)()))}}}},column3:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Option label")}}'},properties:{label:{type:"string",required:!0,"x-decorator":"FormItem","x-component":"Input"}}},column4:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:'{{t("Color")}}'},properties:{color:{type:"string","x-decorator":"FormItem","x-component":"ColorSelect"}}},column5:{type:"void","x-component":"ArrayTable.Column","x-component-props":{title:"",dataIndex:"operations",fixed:"right"},properties:{item:{type:"void","x-component":"FormItem",properties:{remove:{type:"void","x-component":"ArrayTable.Remove"}}}}}}},properties:{add:{type:"void","x-component":"ArrayTable.Addition","x-component-props":{randomValue:!0},title:"{{t('Add option')}}"}}},tk={"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input","x-validator":"uid",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}},tC={type:"void",title:'{{ t("View record") }}',"x-component":"RecordPicker.Viewer","x-component-props":{className:"nb-action-popup"},properties:{tabs:{type:"void","x-component":"Tabs","x-component-props":{},"x-initializer":"popup:addTab",properties:{tab1:{type:"void",title:'{{t("Details")}}',"x-component":"Tabs.TabPane","x-designer":"Tabs.Designer","x-component-props":{},properties:{grid:{type:"void","x-component":"Grid","x-initializer":"popup:common:addBlock",properties:{}}}}}}}},tP={type:"string",title:'{{t("Options")}}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{multiple:!0},enum:"{{collections}}"};class tj{addComponentOption(e){if(!this.componentOptions){var t,l,o,n,r,i;this.componentOptions=[];let e=null==(l=this.default)||null==(t=l.uiSchema)?void 0:t["x-component"],a=null==(n=this.default)||null==(o=n.uiSchema)?void 0:o["x-component-props"];if(e){let t=(null==(i=this.default)||null==(r=i.uiSchema)?void 0:r.type)||"string",l=(0,O.tval)(e.startsWith("Input")?(0,M.capitalize)(t):e.split(".").pop());this.componentOptions=[{label:l,value:e,useProps:()=>a||{}}]}}this.componentOptions.push(e)}getConfigureFormProperties(e){var t;let l=this.hasDefaultValue?this.getDefaultValueProperty():{};this.availableValidationOptions.push("required");let o=null==e?void 0:e.view,n=(null==e?void 0:e.template)==="sql"||(null==e?void 0:e.sql),r=o||n||!this.validationType?{}:{validation:{title:'{{ t("Validation") }}',required:!1,"x-decorator":"FormItem","x-component":"FieldValidation","x-component-props":{type:this.validationType,availableValidationOptions:[...new Set(this.availableValidationOptions)],excludeValidationOptions:[...new Set(this.excludeValidationOptions)],isAssociation:this.isAssociation}}};return{...(0,M.cloneDeep)({...tk,...null==(t=this)?void 0:t.properties}),...l,...r}}getDefaultValueProperty(){var e,t,l,o;return{defaultValue:{...(0,M.cloneDeep)(null==(t=this)||null==(e=t.default)?void 0:e.uiSchema),...null==(o=this)||null==(l=o.properties)?void 0:l.uiSchema,required:!1,title:'{{ t("Default value") }}',"x-decorator":"FormItem","x-reactions":[{dependencies:["uiSchema.x-component-props.gmt","uiSchema.x-component-props.showTime","uiSchema.x-component-props.dateFormat","uiSchema.x-component-props.timeFormat","uiSchema.x-component-props.picker","uiSchema.x-component-props.format"],fulfill:{state:{componentProps:{gmt:"{{$deps[0]}}",showTime:"{{$deps[1]}}",dateFormat:"{{$deps[2]}}",timeFormat:"{{$deps[3]}}",picker:"{{$deps[4]}}",format:"{{$deps[5]}}"}}}},{dependencies:["uiSchema.x-component-props.picker"],fulfill:{state:{value:null}}},{dependencies:["primaryKey","unique","autoIncrement","defaultToCurrentTime"],when:"{{$deps[0]||$deps[1]||$deps[2]||$deps[3]}}",fulfill:{state:{hidden:!0,value:null}},otherwise:{state:{hidden:!1}}},{dependencies:["uiSchema.enum"],fulfill:{state:{dataSource:"{{$deps[0]}}"}}}]}}}addOperator(e){(0,M.set)(this,"filterable.operators",[...this.filterable.operators||[]]),this.filterable.operators.find(t=>t.value===e.value)||this.filterable.operators.push(e)}constructor(e){(0,a._)(this,"collectionFieldInterfaceManager",void 0),(0,a._)(this,"name",void 0),(0,a._)(this,"group",void 0),(0,a._)(this,"title",void 0),(0,a._)(this,"description",void 0),(0,a._)(this,"primaryKeyDescription",void 0),(0,a._)(this,"order",void 0),(0,a._)(this,"default",void 0),(0,a._)(this,"sortable",void 0),(0,a._)(this,"availableTypes",void 0),(0,a._)(this,"type",void 0),(0,a._)(this,"supportDataSourceType",void 0),(0,a._)(this,"notSupportDataSourceType",void 0),(0,a._)(this,"hasDefaultValue",void 0),(0,a._)(this,"componentOptions",void 0),(0,a._)(this,"isAssociation",void 0),(0,a._)(this,"operators",void 0),(0,a._)(this,"properties",void 0),(0,a._)(this,"validationType",void 0),(0,a._)(this,"availableValidationOptions",void 0),(0,a._)(this,"excludeValidationOptions",void 0),(0,a._)(this,"filterable",void 0),(0,a._)(this,"titleUsable",void 0),(0,a._)(this,"hidden",void 0),this.collectionFieldInterfaceManager=e,this.availableValidationOptions=[]}}class tI extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","checkbox"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Checkbox")}}'),(0,a._)(this,"default",{type:"boolean",uiSchema:{type:"boolean","x-component":"Checkbox"}}),(0,a._)(this,"availableTypes",["boolean","integer","bigInt","bit"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"filterable",{operators:tp})}}class tE extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","checkboxGroup"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Checkbox group")}}'),(0,a._)(this,"default",{interface:"checkboxGroup",type:"array",defaultValue:[],uiSchema:{type:"string","x-component":"Checkbox.Group"}}),(0,a._)(this,"availableTypes",["array","json"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,"uiSchema.enum":tA}),(0,a._)(this,"filterable",{operators:ti})}}class t_ extends tj{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","collection"),(0,a._)(this,"type","string"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Collection selector")}}'),(0,a._)(this,"description",'{{t("Providing certain collections as options for users, typically used in polymorphic or inheritance scenarios")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"CollectionSelect"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!1),(0,a._)(this,"properties",{...tk,"uiSchema.enum":tP}),(0,a._)(this,"filterable",{operators:tm})}}class tR extends tj{constructor(...e){super(...e),(0,a._)(this,"name","color"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",10),(0,a._)(this,"title",'{{t("Color")}}'),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"ColorPicker"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"filterable",{operators:tr})}}class tT extends tj{constructor(...e){super(...e),(0,a._)(this,"name","createdAt"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Created at")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",field:"createdAt",uiSchema:{type:"datetime",title:'{{t("Created at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}),(0,a._)(this,"description",'{{t("Store the creation time of each record")}}'),(0,a._)(this,"availableTypes",[]),(0,a._)(this,"properties",{...tk,...tM}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class tD extends tj{schemaInitialize(e,t){let{block:l}=t;e.properties={viewer:(0,M.cloneDeep)(tC)},["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","createdBy"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Created by")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsTo",target:"users",foreignKey:"createdById",uiSchema:{type:"object",title:'{{t("Created by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"filterable",{nested:!0,children:[]}),(0,a._)(this,"description",'{{t("Store the creation user of each record")}}')}}class tN extends tj{constructor(...e){super(...e),(0,a._)(this,"name","datetime"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Datetime (with time zone)")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,timezone:!0,uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{showTime:!1,utc:!0}}}),(0,a._)(this,"availableTypes",["date","string","datetime","datetimeTz"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tk,...tM,defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp on update")}}'},"uiSchema.x-component-props.gmt":{type:"boolean",title:'{{t("GMT")}}',"x-hidden":!0,"x-component":"Checkbox","x-content":'{{t("Use the same time zone (GMT) for all users")}}',"x-decorator":"FormItem",default:!1}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class tO extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","email"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Email")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Input","x-validator":"email"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","email","pattern"]),(0,a._)(this,"properties",{...tk,unique:tg}),(0,a._)(this,"filterable",{operators:tr}),(0,a._)(this,"titleUsable",!0)}}class t$ extends tj{constructor(...e){super(...e),(0,a._)(this,"name","icon"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",10),(0,a._)(this,"title",'{{t("Icon")}}'),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"IconPicker"}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk})}}class tB extends tj{constructor(...e){super(...e),(0,a._)(this,"name","id"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("ID")}}'),(0,a._)(this,"hidden",!0),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{name:"id",type:"bigInt",autoIncrement:!0,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["bigInt","integer"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,default:"ID","x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}),(0,a._)(this,"filterable",{operators:td}),(0,a._)(this,"description",'{{t("Primary key, unique identifier, self growth") }}'),(0,a._)(this,"titleUsable",!0)}}let tq=e=>e,tL=e=>{if((0,X.isArr)(e)){for(let t=0;t<e.length;t++)if((0,X.isValid)(e[t]))return!1;return!0}if(null==e?void 0:e.getCurrentContent){var t;return!(null==(t=e.getCurrentContent())?void 0:t.hasText())}return(0,X.isEmpty)(e)};(0,eG.D1)({username:e=>/^[^@<>"'/]{1,50}$/.test(e)||tq("Must be 1-50 characters in length (excluding @<>\"'/)"),required:(e,t)=>!1===t.required?"":("string"==typeof e&&(e=e.trim()),tL(e)?t.message:"")});class tV extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}validateSchema(e){return{max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
976
976
  const targetValue = field.query('.min').value();
977
977
  field.selfErrors =
978
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Max length must greater than min length")}' : ''
979
- }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Min length must less than max length")}' : ''}}`}}}},len:{type:"number",title:'{{ t("Length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("url") }}',value:"url"},{label:'{{ t("email") }}',value:"email"},{label:'{{ t("ipv6") }}',value:"ipv6"},{label:'{{ t("ipv4") }}',value:"ipv4"},{label:'{{ t("number") }}',value:"number"},{label:'{{ t("integer") }}',value:"integer"},{label:'{{ t("idcard") }}',value:"idcard"},{label:'{{ t("qq") }}',value:"qq"},{label:'{{ t("phone") }}',value:"phone"},{label:'{{ t("money") }}',value:"money"},{label:'{{ t("zh") }}',value:"zh"},{label:'{{ t("date") }}',value:"date"},{label:'{{ t("zip") }}',value:"zip"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}}constructor(...e){super(...e),(0,a._)(this,"name","input"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Single line text")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{interface:"input",type:"string",uiSchema:{type:"string","x-component":"Input"}}),(0,a._)(this,"availableTypes",["string","uid"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"properties",{...tA,trim:{type:"boolean","x-content":'{{t("Automatically remove heading and tailing spaces")}}',"x-decorator":"FormItem","x-component":"Checkbox"},layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tg,unique:tf}}}),(0,a._)(this,"filterable",{operators:tn}),(0,a._)(this,"titleUsable",!0)}}(0,G.registerValidateFormats)({odd:/^-?\d*[13579]$/,even:/^-?\d*[02468]$/});class tV extends tP{constructor(...e){super(...e),(0,a._)(this,"name","integer"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",6),(0,a._)(this,"title",'{{t("Integer")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier, self growth")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"bigInt",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,step:"1"},"x-validator":"integer"}}),(0,a._)(this,"availableTypes",["bigInt","integer","sort","snowflakeId"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["precision"]),(0,a._)(this,"properties",{...tA,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tg,unique:tf}},autoIncrement:tv}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"validateSchema",e=>({maximum:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
978
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Max length must greater than min length")}' : ''
979
+ }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Min length must less than max length")}' : ''}}`}}}},len:{type:"number",title:'{{ t("Length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("url") }}',value:"url"},{label:'{{ t("email") }}',value:"email"},{label:'{{ t("ipv6") }}',value:"ipv6"},{label:'{{ t("ipv4") }}',value:"ipv4"},{label:'{{ t("number") }}',value:"number"},{label:'{{ t("integer") }}',value:"integer"},{label:'{{ t("idcard") }}',value:"idcard"},{label:'{{ t("qq") }}',value:"qq"},{label:'{{ t("phone") }}',value:"phone"},{label:'{{ t("money") }}',value:"money"},{label:'{{ t("zh") }}',value:"zh"},{label:'{{ t("date") }}',value:"date"},{label:'{{ t("zip") }}',value:"zip"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}}constructor(...e){super(...e),(0,a._)(this,"name","input"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Single line text")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{interface:"input",type:"string",uiSchema:{type:"string","x-component":"Input"}}),(0,a._)(this,"availableTypes",["string","uid"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"properties",{...tk,trim:{type:"boolean","x-content":'{{t("Automatically remove heading and tailing spaces")}}',"x-decorator":"FormItem","x-component":"Checkbox"},layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tv,unique:tg}}}),(0,a._)(this,"filterable",{operators:tr}),(0,a._)(this,"titleUsable",!0)}}(0,G.registerValidateFormats)({odd:/^-?\d*[13579]$/,even:/^-?\d*[02468]$/});class tz extends tj{constructor(...e){super(...e),(0,a._)(this,"name","integer"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",6),(0,a._)(this,"title",'{{t("Integer")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier, self growth")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"bigInt",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,step:"1"},"x-validator":"integer"}}),(0,a._)(this,"availableTypes",["bigInt","integer","sort","snowflakeId"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["precision"]),(0,a._)(this,"properties",{...tk,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tv,unique:tg}},autoIncrement:ty}),(0,a._)(this,"filterable",{operators:ts}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"validateSchema",e=>({maximum:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
980
980
  const targetValue = field.query('.minimum').value();
981
981
  field.selfErrors =
982
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Maximum must greater than minimum")}' : ''
983
- }}}`},minimum:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Minimum must less than maximum")}' : ''}}`}}}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Odd") }}',value:"odd"},{label:'{{ t("Even") }}',value:"even"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}))}}var tz=l(88967);(0,G.registerValidateRules)({json(e){try{return JSON.parse(e),!0}catch(e){return{type:"error",message:e.message}}}});class tK extends tP{constructor(...e){super(...e),(0,a._)(this,"name","json"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("JSON")}}'),(0,a._)(this,"sortable",!1),(0,a._)(this,"default",{type:"json",uiSchema:{type:"object","x-component":"Input.JSON","x-component-props":{autoSize:{minRows:5}},default:null}}),(0,a._)(this,"availableTypes",["json","array","set","jsonb","text","circle","lineString","point","polygon"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,jsonb:{type:"boolean",title:"JSONB","x-decorator":e=>{let{children:t}=e;return(0,s.jsx)(tz.FormLayout,{children:(0,s.jsx)(tz.FormItem,{children:t})})},"x-component":"Checkbox","x-hidden":"{{ !isDialect('postgres') }}","x-disabled":"{{ disabledJSONB }}"}})}}class tU extends tP{schemaInitialize(e,t){let{readPretty:l,block:o,targetCollection:n}=t;(null==n?void 0:n.titleField)&&e["x-component-props"]&&(e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:n.filterTargetKey||"id"},e["x-component-props"].fieldNames.label=n.titleField),["Table","Kanban"].includes(o)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","linkTo"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Link to")}}'),(0,a._)(this,"description",'{{t("Link to description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"id",value:"id"}}},reverseField:{interface:"linkTo",type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"id",value:"id"}}}}}),(0,a._)(this,"initialize",e=>{"belongsToMany"===e.type&&(e.through||(e.through=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`),e.otherKey||(e.otherKey=`f_${(0,X.uid)()}`),e.sourceKey||(e.sourceKey="id"),e.targetKey||(e.targetKey="id"))}),(0,a._)(this,"properties",{...tA,target:{type:"string",title:'{{t("Related collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"},"uiSchema.x-component-props.multiple":{type:"boolean","x-content":'{{t("Allow linking to multiple records")}}',"x-decorator":"FormItem","x-component":"Checkbox"}}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}function tW(e){if(null==e?void 0:e.filterTargetKey){if(Array.isArray(e.filterTargetKey)){var t;return null==e||null==(t=e.filterTargetKey)?void 0:t[0]}return null==e?void 0:e.filterTargetKey}return(null==e?void 0:e.getPrimaryKey())||"id"}class tH extends tP{schemaInitialize(e,t){var l;let{field:o,readPretty:n,block:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tW(i),["Table","Kanban"].includes(r)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}initialize(e){"belongsToMany"===e.type&&(e.through||(e.through=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`),e.otherKey||(e.otherKey=`f_${(0,X.uid)()}`),e.sourceKey||(e.sourceKey="id"),e.targetKey||(e.targetKey="id"))}constructor(...e){super(...e),(0,a._)(this,"name","m2m"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",6),(0,a._)(this,"title",'{{t("Many to many")}}'),(0,a._)(this,"description",'{{t("Many to many description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}},reverseField:{interface:"m2m",type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}}}}),(0,a._)(this,"availableTypes",["belongsToMany"]),(0,a._)(this,"validationType","object"),(0,a._)(this,"properties",{...tA,type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"string",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{through:{type:"string",title:'{{t("Through collection")}}',description:'{{ t("Generated automatically if left blank") }}',"x-decorator":"FormItem","x-disabled":"{{ !createOnly }}","x-component":"ThroughCollection","x-component-props":{allowClear:!0}}}},col13:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key 1")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly||override }}"}}},col23:{type:"void","x-component":"Grid.Col",properties:{}}}},row3:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{}},col22:{type:"void","x-component":"Grid.Col",properties:{otherKey:{type:"string",title:'{{t("Foreign key 2")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly||override }}"}}},col23:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',"x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}",description:"{{t('Field values must be unique.')}}"}}}}}}},...tw}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class tY extends tP{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tW(i),["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","m2o"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Many to one")}}'),(0,a._)(this,"description",'{{t("Many to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"o2m",type:"hasMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}}}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}"}}}}}}},...tx,...tw}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class tG extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}validateSchema(e){return{max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
982
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Maximum must greater than minimum")}' : ''
983
+ }}}`},minimum:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Minimum must less than maximum")}' : ''}}`}}}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Odd") }}',value:"odd"},{label:'{{ t("Even") }}',value:"even"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}))}}var tK=l(88967);(0,G.registerValidateRules)({json(e){try{return JSON.parse(e),!0}catch(e){return{type:"error",message:e.message}}}});class tU extends tj{constructor(...e){super(...e),(0,a._)(this,"name","json"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("JSON")}}'),(0,a._)(this,"sortable",!1),(0,a._)(this,"default",{type:"json",uiSchema:{type:"object","x-component":"Input.JSON","x-component-props":{autoSize:{minRows:5}},default:null}}),(0,a._)(this,"availableTypes",["json","array","set","jsonb","text","circle","lineString","point","polygon"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,jsonb:{type:"boolean",title:"JSONB","x-decorator":e=>{let{children:t}=e;return(0,s.jsx)(tK.FormLayout,{children:(0,s.jsx)(tK.FormItem,{children:t})})},"x-component":"Checkbox","x-hidden":"{{ !isDialect('postgres') }}","x-disabled":"{{ disabledJSONB }}"}})}}class tW extends tj{schemaInitialize(e,t){let{readPretty:l,block:o,targetCollection:n}=t;(null==n?void 0:n.titleField)&&e["x-component-props"]&&(e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:n.filterTargetKey||"id"},e["x-component-props"].fieldNames.label=n.titleField),["Table","Kanban"].includes(o)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","linkTo"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",1),(0,a._)(this,"title",'{{t("Link to")}}'),(0,a._)(this,"description",'{{t("Link to description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"id",value:"id"}}},reverseField:{interface:"linkTo",type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"id",value:"id"}}}}}),(0,a._)(this,"initialize",e=>{"belongsToMany"===e.type&&(e.through||(e.through=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`),e.otherKey||(e.otherKey=`f_${(0,X.uid)()}`),e.sourceKey||(e.sourceKey="id"),e.targetKey||(e.targetKey="id"))}),(0,a._)(this,"properties",{...tk,target:{type:"string",title:'{{t("Related collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"},"uiSchema.x-component-props.multiple":{type:"boolean","x-content":'{{t("Allow linking to multiple records")}}',"x-decorator":"FormItem","x-component":"Checkbox"}}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}function tH(e){if(null==e?void 0:e.filterTargetKey){if(Array.isArray(e.filterTargetKey)){var t;return null==e||null==(t=e.filterTargetKey)?void 0:t[0]}return null==e?void 0:e.filterTargetKey}return(null==e?void 0:e.getPrimaryKey())||"id"}class tY extends tj{schemaInitialize(e,t){var l;let{field:o,readPretty:n,block:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tH(i),["Table","Kanban"].includes(r)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}initialize(e){"belongsToMany"===e.type&&(e.through||(e.through=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`),e.otherKey||(e.otherKey=`f_${(0,X.uid)()}`),e.sourceKey||(e.sourceKey="id"),e.targetKey||(e.targetKey="id"))}constructor(...e){super(...e),(0,a._)(this,"name","m2m"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",6),(0,a._)(this,"title",'{{t("Many to many")}}'),(0,a._)(this,"description",'{{t("Many to many description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}},reverseField:{interface:"m2m",type:"belongsToMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}}}}),(0,a._)(this,"availableTypes",["belongsToMany"]),(0,a._)(this,"validationType","object"),(0,a._)(this,"properties",{...tk,type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"string",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{through:{type:"string",title:'{{t("Through collection")}}',description:'{{ t("Generated automatically if left blank") }}',"x-decorator":"FormItem","x-disabled":"{{ !createOnly }}","x-component":"ThroughCollection","x-component-props":{allowClear:!0}}}},col13:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key 1")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly||override }}"}}},col23:{type:"void","x-component":"Grid.Col",properties:{}}}},row3:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{}},col22:{type:"void","x-component":"Grid.Col",properties:{otherKey:{type:"string",title:'{{t("Foreign key 2")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly||override }}"}}},col23:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',"x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}",description:"{{t('Field values must be unique.')}}"}}}}}}},...tS}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class tG extends tj{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tH(i),["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","m2o"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("Many to one")}}'),(0,a._)(this,"description",'{{t("Many to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"o2m",type:"hasMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}}}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}"}}}}}}},...tw,...tS}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class tJ extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}validateSchema(e){return{max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
984
984
  const targetValue = field.query('.min').value();
985
985
  field.selfErrors =
986
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Max length must greater than min length")}' : ''
987
- }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Min length must less than max length")}' : ''}}`}}}}}}constructor(...e){super(...e),(0,a._)(this,"name","markdown"),(0,a._)(this,"type","object"),(0,a._)(this,"title",'{{t("Markdown")}}'),(0,a._)(this,"group","media"),(0,a._)(this,"default",{type:"text",uiSchema:{type:"string","x-component":"Markdown"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"filterable",{operators:tm})}}class tJ extends tP{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","multipleSelect"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Multiple select")}}'),(0,a._)(this,"default",{type:"array",defaultValue:[],uiSchema:{type:"array","x-component":"Select","x-component-props":{mode:"multiple"},enum:[]}}),(0,a._)(this,"availableTypes",["array","json"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,"uiSchema.enum":tF}),(0,a._)(this,"filterable",{operators:tr})}}class tX extends tP{validateSchema(e){return{maximum:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-reactions":`{{(field) => {
986
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Max length must greater than min length")}' : ''
987
+ }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Min length must less than max length")}' : ''}}`}}}}}}constructor(...e){super(...e),(0,a._)(this,"name","markdown"),(0,a._)(this,"type","object"),(0,a._)(this,"title",'{{t("Markdown")}}'),(0,a._)(this,"group","media"),(0,a._)(this,"default",{type:"text",uiSchema:{type:"string","x-component":"Markdown"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"filterable",{operators:tf})}}class tX extends tj{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","multipleSelect"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Multiple select")}}'),(0,a._)(this,"default",{type:"array",defaultValue:[],uiSchema:{type:"array","x-component":"Select","x-component-props":{mode:"multiple"},enum:[]}}),(0,a._)(this,"availableTypes",["array","json"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,"uiSchema.enum":tA}),(0,a._)(this,"filterable",{operators:ti})}}class tQ extends tj{validateSchema(e){return{maximum:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-reactions":`{{(field) => {
988
988
  const targetValue = field.query('.minimum').value();
989
989
  field.selfErrors =
990
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Maximum must greater than minimum")}' : ''
991
- }}}`},minimum:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Minimum must less than maximum")}' : ''}}`}}}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Integer") }}',value:"integer"},{label:'{{ t("Odd") }}',value:"odd"},{label:'{{ t("Even") }}',value:"even"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}}constructor(...e){super(...e),(0,a._)(this,"name","number"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",7),(0,a._)(this,"title",'{{t("Number")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"double",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,step:"1"}}}),(0,a._)(this,"availableTypes",["double","float","decimal"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["integer"]),(0,a._)(this,"properties",{type:{type:"string",title:'{{t("Data type")}}',"x-component":"Select","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:"double",enum:[{label:'{{t("Double")}}',value:"double"},{label:'{{t("Float")}}',value:"float"},{label:'{{t("Decimal")}}',value:"decimal"}]},...tA,unique:tf,"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision(UI)")}}',"x-component":"Select","x-decorator":"FormItem",default:"1",enum:[{value:"1",label:"1"},{value:"0.1",label:"1.0"},{value:"0.01",label:"1.00"},{value:"0.001",label:"1.000"},{value:"0.0001",label:"1.0000"},{value:"0.00001",label:"1.00000"},{value:"0.000001",label:"1.000000"},{value:"0.0000001",label:"1.0000000"},{value:"0.00000001",label:"1.00000000"}]},precision:{type:"string",title:'{{t("Precision")}}',"x-component":"InputNumber","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:10,"x-reactions":{dependencies:["type"],fulfill:{state:{visible:'{{$deps[0] === "decimal"}}'}}}},scale:{type:"string",title:'{{t("Scale")}}',"x-component":"InputNumber","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:2,"x-reactions":{dependencies:["type"],fulfill:{state:{visible:'{{$deps[0] === "decimal"}}'}}}}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class tQ extends tP{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tW(i),["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","o2m"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("One to many")}}'),(0,a._)(this,"description",'{{t("One to many description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}},reverseField:{interface:"m2o",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasMany"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection"}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}",default:"id",enum:[{label:"ID",value:"id"}],"x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}},row3:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',"x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}",description:"{{t('Field values must be unique.')}}"}}}}}}},...tx,...tw}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class tZ extends tP{schemaInitialize(e,t){let{field:l,block:o,readPretty:n,action:r,targetCollection:i}=t;["Table","Kanban"].includes(o)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(i)},e["x-component-props"].fieldNames.label=(null==i?void 0:i.titleField)||tW(i)}constructor(...e){super(...e),(0,a._)(this,"name","o2o"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"obo",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasOne"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}}}},"reverseField.name":{type:"string",title:'{{t("Inverse field name")}}',"x-hidden":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t0 extends tP{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,action:i,targetCollection:a}=t;["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(a)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==a?void 0:a.titleField)||tW(a)}constructor(...e){super(...e),(0,a._)(this,"name","oho"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one (has one)")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"obo",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasOne"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}}}},...tx,...tw}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t1 extends tP{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,action:i,targetCollection:a}=t;["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tW(a)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==a?void 0:a.titleField)||tW(a)}constructor(...e){super(...e),(0,a._)(this,"name","obo"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one (belongs to)")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"oho",type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tb,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}"}}}}}}},...tx,...tw}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t2 extends tP{constructor(...e){super(...e),(0,a._)(this,"name","password"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",9),(0,a._)(this,"title",'{{t("Password")}}'),(0,a._)(this,"default",{type:"password",hidden:!0,uiSchema:{type:"string","x-component":"Password"}}),(0,a._)(this,"availableTypes",["password","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"properties",{...tA,unique:tf}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
990
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Maximum must greater than minimum")}' : ''
991
+ }}}`},minimum:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"InputNumber","x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Minimum must less than maximum")}' : ''}}`}}}},format:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Integer") }}',value:"integer"},{label:'{{ t("Odd") }}',value:"odd"},{label:'{{ t("Even") }}',value:"even"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}}constructor(...e){super(...e),(0,a._)(this,"name","number"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",7),(0,a._)(this,"title",'{{t("Number")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"double",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,step:"1"}}}),(0,a._)(this,"availableTypes",["double","float","decimal"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["integer"]),(0,a._)(this,"properties",{type:{type:"string",title:'{{t("Data type")}}',"x-component":"Select","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:"double",enum:[{label:'{{t("Double")}}',value:"double"},{label:'{{t("Float")}}',value:"float"},{label:'{{t("Decimal")}}',value:"decimal"}]},...tk,unique:tg,"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision(UI)")}}',"x-component":"Select","x-decorator":"FormItem",default:"1",enum:[{value:"1",label:"1"},{value:"0.1",label:"1.0"},{value:"0.01",label:"1.00"},{value:"0.001",label:"1.000"},{value:"0.0001",label:"1.0000"},{value:"0.00001",label:"1.00000"},{value:"0.000001",label:"1.000000"},{value:"0.0000001",label:"1.0000000"},{value:"0.00000001",label:"1.00000000"}]},precision:{type:"string",title:'{{t("Precision")}}',"x-component":"InputNumber","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:10,"x-reactions":{dependencies:["type"],fulfill:{state:{visible:'{{$deps[0] === "decimal"}}'}}}},scale:{type:"string",title:'{{t("Scale")}}',"x-component":"InputNumber","x-decorator":"FormItem","x-disabled":"{{ !createOnly }}",default:2,"x-reactions":{dependencies:["type"],fulfill:{state:{visible:'{{$deps[0] === "decimal"}}'}}}}}),(0,a._)(this,"filterable",{operators:ts}),(0,a._)(this,"titleUsable",!0)}}class tZ extends tj{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,targetCollection:i}=t;e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(i)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==i?void 0:i.titleField)||tH(i),["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small")}constructor(...e){super(...e),(0,a._)(this,"name","o2m"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("One to many")}}'),(0,a._)(this,"description",'{{t("One to many description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasMany",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!0}},reverseField:{interface:"m2o",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasMany"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection"}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}",default:"id",enum:[{label:"ID",value:"id"}],"x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}},row3:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',"x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}",description:"{{t('Field values must be unique.')}}"}}}}}}},...tw,...tS}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t0 extends tj{schemaInitialize(e,t){let{field:l,block:o,readPretty:n,action:r,targetCollection:i}=t;["Table","Kanban"].includes(o)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(i)},e["x-component-props"].fieldNames.label=(null==i?void 0:i.titleField)||tH(i)}constructor(...e){super(...e),(0,a._)(this,"name","o2o"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"obo",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasOne"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}}}},"reverseField.name":{type:"string",title:'{{t("Inverse field name")}}',"x-hidden":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"}}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t1 extends tj{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,action:i,targetCollection:a}=t;["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(a)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==a?void 0:a.titleField)||tH(a)}constructor(...e){super(...e),(0,a._)(this,"name","oho"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one (has one)")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"obo",type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["hasOne"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{sourceKey:{type:"string",title:'{{t("Source key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"SourceKey"}}},col22:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}}}}}},...tw,...tS}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t2 extends tj{schemaInitialize(e,t){var l;let{field:o,block:n,readPretty:r,action:i,targetCollection:a}=t;["Table","Kanban"].includes(n)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0,e["x-component-props"].size="small"),e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].fieldNames=e["x-component-props"].fieldNames||{value:tH(a)},e["x-component-props"].fieldNames.label=(null==(l=e["x-component-props"].fieldNames)?void 0:l.label)||(null==a?void 0:a.titleField)||tH(a)}constructor(...e){super(...e),(0,a._)(this,"name","obo"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("One to one (belongs to)")}}'),(0,a._)(this,"description",'{{t("One to one description")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"validationType","object"),(0,a._)(this,"default",{type:"belongsTo",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}},reverseField:{interface:"oho",type:"hasOne",uiSchema:{"x-component":"AssociationField","x-component-props":{multiple:!1}}}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":"{{ !createOnly }}","x-decorator":"FormItem","x-component":"Input",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},type:tx,grid:{type:"void","x-component":"Grid",properties:{row1:{type:"void","x-component":"Grid.Row",properties:{col11:{type:"void","x-component":"Grid.Col",properties:{source:{type:"void",title:'{{t("Source collection")}}',"x-decorator":"FormItem","x-component":"SourceCollection","x-disabled":!0}}},col12:{type:"void","x-component":"Grid.Col",properties:{target:{type:"string",title:'{{t("Target collection")}}',required:!0,"x-reactions":["{{useAsyncDataSource(loadCollections)}}"],"x-decorator":"FormItem","x-component":"Select","x-disabled":"{{ !createOnly }}"}}}}},row2:{type:"void","x-component":"Grid.Row",properties:{col21:{type:"void","x-component":"Grid.Col",properties:{foreignKey:{type:"string",title:'{{t("Foreign key")}}',required:!0,default:'{{ useNewId("f_") }}',description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}","x-decorator":"FormItem","x-component":"ForeignKey","x-validator":"uid","x-disabled":"{{ !createOnly }}"}}},col22:{type:"void","x-component":"Grid.Col",properties:{targetKey:{type:"string",title:'{{t("Target key")}}',description:"{{t('Field values must be unique.')}}","x-decorator":"FormItem","x-component":"TargetKey","x-disabled":"{{ !createOnly }}"}}}}}}},...tw,...tS}),(0,a._)(this,"filterable",{nested:!0,children:[]})}}class t4 extends tj{constructor(...e){super(...e),(0,a._)(this,"name","password"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",9),(0,a._)(this,"title",'{{t("Password")}}'),(0,a._)(this,"default",{type:"password",hidden:!0,uiSchema:{type:"string","x-component":"Password"}}),(0,a._)(this,"availableTypes",["password","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"properties",{...tk,unique:tg}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
992
992
  const targetValue = field.query('.min').value();
993
993
  field.selfErrors =
994
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Max length must greater than min length")}' : ''
995
- }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tn})}}(0,G.registerValidateRules)({percentMode(e,t){let{maxValue:l,minValue:o}=t;return l&&e>l?{type:"error",message:`${tB("The field value cannot be greater than ")}${100*l}%`}:!o||!(e<o)||{type:"error",message:`${tB("The field value cannot be less than ")}${100*o}%`}},percentFormats(e,t){let{percentFormat:l}=t;return!e||"Integer"!==l||!1!==/^-?[1-9]\d*$/.test((100*e).toString())||{type:"error",message:`${tB("The field value is not an integer number")}`}}});class t4 extends tP{schemaInitialize(e,t){let{field:l,block:o,readPretty:n,action:r}=t,i=e["x-component-props"]=e["x-component-props"]||{};e["x-component-props"].style={...i.style||{},width:"100%"}}constructor(...e){super(...e),(0,a._)(this,"name","percent"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",8),(0,a._)(this,"title",'{{t("Percent")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"float",uiSchema:{type:"string","x-component":"Percent","x-component-props":{stringMode:!0,step:"1",addonAfter:"%"}}}),(0,a._)(this,"availableTypes",["float","double","decimal"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["integer"]),(0,a._)(this,"properties",{...tA,unique:tf,"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision")}}',"x-component":"Select","x-decorator":"FormItem",default:"1",enum:[{value:"1",label:"1%"},{value:"0.1",label:"1.0%"},{value:"0.01",label:"1.00%"},{value:"0.001",label:"1.000%"},{value:"0.0001",label:"1.0000%"},{value:"0.00001",label:"1.00000%"}]}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"validateSchema",e=>({maxValue:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"Percent","x-component-props":{addonAfter:"%"},"x-reactions":`{{(field) => {
994
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Max length must greater than min length")}' : ''
995
+ }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tr})}}(0,G.registerValidateRules)({percentMode(e,t){let{maxValue:l,minValue:o}=t;return l&&e>l?{type:"error",message:`${tq("The field value cannot be greater than ")}${100*l}%`}:!o||!(e<o)||{type:"error",message:`${tq("The field value cannot be less than ")}${100*o}%`}},percentFormats(e,t){let{percentFormat:l}=t;return!e||"Integer"!==l||!1!==/^-?[1-9]\d*$/.test((100*e).toString())||{type:"error",message:`${tq("The field value is not an integer number")}`}}});class t5 extends tj{schemaInitialize(e,t){let{field:l,block:o,readPretty:n,action:r}=t,i=e["x-component-props"]=e["x-component-props"]||{};e["x-component-props"].style={...i.style||{},width:"100%"}}constructor(...e){super(...e),(0,a._)(this,"name","percent"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",8),(0,a._)(this,"title",'{{t("Percent")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"float",uiSchema:{type:"string","x-component":"Percent","x-component-props":{stringMode:!0,step:"1",addonAfter:"%"}}}),(0,a._)(this,"availableTypes",["float","double","decimal"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","number"),(0,a._)(this,"excludeValidationOptions",["integer"]),(0,a._)(this,"properties",{...tk,unique:tg,"uiSchema.x-component-props.step":{type:"string",title:'{{t("Precision")}}',"x-component":"Select","x-decorator":"FormItem",default:"1",enum:[{value:"1",label:"1%"},{value:"0.1",label:"1.0%"},{value:"0.01",label:"1.00%"},{value:"0.001",label:"1.000%"},{value:"0.0001",label:"1.0000%"},{value:"0.00001",label:"1.00000%"}]}}),(0,a._)(this,"filterable",{operators:ts}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"validateSchema",e=>({maxValue:{type:"number",title:'{{ t("Maximum") }}',"x-decorator":"FormItem","x-component":"Percent","x-component-props":{addonAfter:"%"},"x-reactions":`{{(field) => {
996
996
  const targetValue = field.query('.minimum').value();
997
997
  field.selfErrors =
998
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Maximum must greater than minimum")}' : ''
999
- }}}`},minValue:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"Percent","x-component-props":{addonAfter:"%"},"x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Minimum must less than maximum")}' : ''}}`}}}},percentFormat:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Integer") }}',value:"Integer"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}))}}class t5 extends tP{constructor(...e){super(...e),(0,a._)(this,"name","phone"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Phone")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Input","x-component-props":{type:"tel"}}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,unique:tf}),(0,a._)(this,"filterable",{operators:tn}),(0,a._)(this,"titleUsable",!0)}}class t8 extends tP{constructor(...e){super(...e),(0,a._)(this,"name","radioGroup"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Radio group")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Radio.Group"}}),(0,a._)(this,"availableTypes",["string","integer","boolean","integer"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,"uiSchema.enum":tF}),(0,a._)(this,"filterable",{operators:td}),(0,a._)(this,"titleUsable",!0)}}class t3 extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","richText"),(0,a._)(this,"type","object"),(0,a._)(this,"group","media"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Rich Text")}}'),(0,a._)(this,"default",{interface:"richText",type:"text",uiSchema:{type:"string","x-component":"RichText"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
998
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Maximum must greater than minimum")}' : ''
999
+ }}}`},minValue:{type:"number",title:'{{ t("Minimum") }}',"x-decorator":"FormItem","x-component":"Percent","x-component-props":{addonAfter:"%"},"x-reactions":{dependencies:[".maximum"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Minimum must less than maximum")}' : ''}}`}}}},percentFormat:{type:"string",title:'{{ t("Format") }}',"x-decorator":"FormItem","x-component":"Select","x-component-props":{allowClear:!0},enum:[{label:'{{ t("Integer") }}',value:"Integer"}]},pattern:{type:"string",title:'{{ t("Regular expression") }}',"x-decorator":"FormItem","x-component":"Input","x-component-props":{prefix:"/",suffix:"/"}}}))}}class t8 extends tj{constructor(...e){super(...e),(0,a._)(this,"name","phone"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("Phone")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Input","x-component-props":{type:"tel"}}}),(0,a._)(this,"availableTypes",["string"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","pattern"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,unique:tg}),(0,a._)(this,"filterable",{operators:tr}),(0,a._)(this,"titleUsable",!0)}}class t3 extends tj{constructor(...e){super(...e),(0,a._)(this,"name","radioGroup"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Radio group")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Radio.Group"}}),(0,a._)(this,"availableTypes",["string","integer","boolean","integer"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,"uiSchema.enum":tA}),(0,a._)(this,"filterable",{operators:tu}),(0,a._)(this,"titleUsable",!0)}}class t6 extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","richText"),(0,a._)(this,"type","object"),(0,a._)(this,"group","media"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Rich Text")}}'),(0,a._)(this,"default",{interface:"richText",type:"text",uiSchema:{type:"string","x-component":"RichText"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
1000
1000
  const targetValue = field.query('.min').value();
1001
1001
  field.selfErrors =
1002
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Max length must greater than min length")}' : ''
1003
- }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tm})}}class t6 extends tP{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","select"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Single select")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Select",enum:[]}}),(0,a._)(this,"availableTypes",["string","bigInt","boolean"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,"uiSchema.enum":tF}),(0,a._)(this,"filterable",{operators:td}),(0,a._)(this,"titleUsable",!0)}}class t9 extends tP{constructor(...e){super(...e),(0,a._)(this,"name","snowflakeId"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Snowflake ID (53-bit)")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, distributed uniqueness, time-ordering")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"snowflakeId",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,separator:"0.00",step:"1"},"x-validator":"integer"}}),(0,a._)(this,"availableTypes",["snowflakeId"]),(0,a._)(this,"properties",{...tA,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tg,unique:tf}}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"description",'{{t("A 53-bit Snowflake ID designed to be compatible with JavaScript’s safe integer range, providing both time-ordering and uniqueness.") }}'),(0,a._)(this,"titleUsable",!0)}}class t7 extends tP{schemaInitialize(e,t){let{field:l,readPretty:o}=t,n=`${l.collectionName}.${l.name}`;e.type="void",e["x-component"]="TableField",e.properties={block:{type:"void","x-decorator":"TableFieldProvider","x-acl-action":`${l.target}:list`,"x-decorator-props":{collection:l.target,association:n,resource:n,action:"list",params:{paginate:!1},showIndex:!0,dragSort:!1},properties:{actions:{type:"void","x-initializer":"subTable:configureActions","x-component":"TableField.ActionBar","x-component-props":{}},[l.name]:{type:"array","x-initializer":"table:configureColumns","x-component":"TableV2","x-use-component-props":"useTableFieldProps","x-component-props":{rowSelection:{type:"checkbox"}}}}}}}constructor(...e){super(...e),(0,a._)(this,"name","subTable"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Sub-table")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"hasMany",uiSchema:{type:"void","x-component":"TableField","x-component-props":{}}}),(0,a._)(this,"availableTypes",["hasMany"]),(0,a._)(this,"initialize",e=>{e.target||(e.target=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`)}),(0,a._)(this,"properties",{...tA,subtable:{type:"void","x-component":"SubFieldDataSourceProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{},properties:{delete:{type:"void",title:'{{ t("Delete") }}',"x-component":"Action","x-component-props":{useAction:"{{ ds.useBulkDestroyAction }}",confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}},create:{type:"void",title:'{{ t("Add new") }}',"x-component":"AddSubFieldAction","x-component-props":{type:"primary"}}}},children:{type:"array",title:'{{t("Fields")}}',"x-decorator":"FormItem","x-component":"Table.Array","x-component-props":{pagination:!1,expandable:{childrenColumnName:"__nochildren__"},rowKey:"name",rowSelection:{type:"checkbox"},useSelectedRowKeys:"{{ ds.useSelectedRowKeys }}",useDataSource:"{{ ds.useDataSource }}"},properties:{column1:{type:"void",title:'{{ t("Field display name") }}',"x-component":"Table.Column",properties:{"uiSchema.title":{type:"number","x-component":"Input","x-read-pretty":!0}}},column2:{type:"void",title:'{{ t("Field name") }}',"x-component":"Table.Column",properties:{name:{"x-component":"Input","x-read-pretty":!0}}},column3:{type:"void",title:'{{ t("Field interface") }}',"x-component":"Table.Column",properties:{interface:{"x-component":"Input","x-read-pretty":!0}}},column4:{type:"void",title:'{{ t("Actions") }}',"x-component":"Table.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{update:{type:"void",title:'{{ t("Edit") }}',"x-component":"EditSubFieldAction","x-component-props":{}},delete:{type:"void",title:'{{ t("Delete") }}',"x-component":"Action.Link","x-component-props":{useAction:"{{ ds.useDestroyAction }}",confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}}}}}}}}}}})}}class le extends tP{constructor(...e){super(...e),(0,a._)(this,"name","tableoid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Table OID")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{name:"__collection",type:"virtual",uiSchema:{type:"string",title:'{{t("Table OID")}}',"x-component":"CollectionSelect","x-component-props":{isTableOid:!0},"x-read-pretty":!0}}),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Input"}}),(0,a._)(this,"filterable",{operators:tp})}}class lt extends tP{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","textarea"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Long text")}}'),(0,a._)(this,"default",{interface:"textarea",type:"text",uiSchema:{type:"string","x-component":"Input.TextArea"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","case","pattern"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"properties",{...tA,trim:{type:"boolean","x-content":'{{t("Automatically remove heading and tailing spaces")}}',"x-decorator":"FormItem","x-component":"Checkbox"}}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
1002
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Max length must greater than min length")}' : ''
1003
+ }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tf})}}class t9 extends tj{schemaInitialize(e,t){let{block:l}=t,o=e["x-component-props"]=e["x-component-props"]||{};o.style={...o.style||{},width:"100%"},["Table","Kanban"].includes(l)&&(o.ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","select"),(0,a._)(this,"type","object"),(0,a._)(this,"group","choices"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Single select")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"string",uiSchema:{type:"string","x-component":"Select",enum:[]}}),(0,a._)(this,"availableTypes",["string","bigInt","boolean"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,"uiSchema.enum":tA}),(0,a._)(this,"filterable",{operators:tu}),(0,a._)(this,"titleUsable",!0)}}class t7 extends tj{constructor(...e){super(...e),(0,a._)(this,"name","snowflakeId"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Snowflake ID (53-bit)")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, distributed uniqueness, time-ordering")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"snowflakeId",uiSchema:{type:"number","x-component":"InputNumber","x-component-props":{stringMode:!0,separator:"0.00",step:"1"},"x-validator":"integer"}}),(0,a._)(this,"availableTypes",["snowflakeId"]),(0,a._)(this,"properties",{...tk,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tv,unique:tg}}}),(0,a._)(this,"filterable",{operators:ts}),(0,a._)(this,"description",'{{t("A 53-bit Snowflake ID designed to be compatible with JavaScript’s safe integer range, providing both time-ordering and uniqueness.") }}'),(0,a._)(this,"titleUsable",!0)}}class le extends tj{schemaInitialize(e,t){let{field:l,readPretty:o}=t,n=`${l.collectionName}.${l.name}`;e.type="void",e["x-component"]="TableField",e.properties={block:{type:"void","x-decorator":"TableFieldProvider","x-acl-action":`${l.target}:list`,"x-decorator-props":{collection:l.target,association:n,resource:n,action:"list",params:{paginate:!1},showIndex:!0,dragSort:!1},properties:{actions:{type:"void","x-initializer":"subTable:configureActions","x-component":"TableField.ActionBar","x-component-props":{}},[l.name]:{type:"array","x-initializer":"table:configureColumns","x-component":"TableV2","x-use-component-props":"useTableFieldProps","x-component-props":{rowSelection:{type:"checkbox"}}}}}}}constructor(...e){super(...e),(0,a._)(this,"name","subTable"),(0,a._)(this,"type","object"),(0,a._)(this,"group","relation"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Sub-table")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"hasMany",uiSchema:{type:"void","x-component":"TableField","x-component-props":{}}}),(0,a._)(this,"availableTypes",["hasMany"]),(0,a._)(this,"initialize",e=>{e.target||(e.target=`t_${(0,X.uid)()}`),e.foreignKey||(e.foreignKey=`f_${(0,X.uid)()}`)}),(0,a._)(this,"properties",{...tk,subtable:{type:"void","x-component":"SubFieldDataSourceProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{},properties:{delete:{type:"void",title:'{{ t("Delete") }}',"x-component":"Action","x-component-props":{useAction:"{{ ds.useBulkDestroyAction }}",confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}},create:{type:"void",title:'{{ t("Add new") }}',"x-component":"AddSubFieldAction","x-component-props":{type:"primary"}}}},children:{type:"array",title:'{{t("Fields")}}',"x-decorator":"FormItem","x-component":"Table.Array","x-component-props":{pagination:!1,expandable:{childrenColumnName:"__nochildren__"},rowKey:"name",rowSelection:{type:"checkbox"},useSelectedRowKeys:"{{ ds.useSelectedRowKeys }}",useDataSource:"{{ ds.useDataSource }}"},properties:{column1:{type:"void",title:'{{ t("Field display name") }}',"x-component":"Table.Column",properties:{"uiSchema.title":{type:"number","x-component":"Input","x-read-pretty":!0}}},column2:{type:"void",title:'{{ t("Field name") }}',"x-component":"Table.Column",properties:{name:{"x-component":"Input","x-read-pretty":!0}}},column3:{type:"void",title:'{{ t("Field interface") }}',"x-component":"Table.Column",properties:{interface:{"x-component":"Input","x-read-pretty":!0}}},column4:{type:"void",title:'{{ t("Actions") }}',"x-component":"Table.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{update:{type:"void",title:'{{ t("Edit") }}',"x-component":"EditSubFieldAction","x-component-props":{}},delete:{type:"void",title:'{{ t("Delete") }}',"x-component":"Action.Link","x-component-props":{useAction:"{{ ds.useDestroyAction }}",confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}}}}}}}}}}})}}class lt extends tj{constructor(...e){super(...e),(0,a._)(this,"name","tableoid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Table OID")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{name:"__collection",type:"virtual",uiSchema:{type:"string",title:'{{t("Table OID")}}',"x-component":"CollectionSelect","x-component-props":{isTableOid:!0},"x-read-pretty":!0}}),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-disabled":!0,"x-decorator":"FormItem","x-component":"Input"}}),(0,a._)(this,"filterable",{operators:th})}}class ll extends tj{schemaInitialize(e,t){let{block:l}=t;["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","textarea"),(0,a._)(this,"type","object"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Long text")}}'),(0,a._)(this,"default",{interface:"textarea",type:"text",uiSchema:{type:"string","x-component":"Input.TextArea"}}),(0,a._)(this,"availableTypes",["text","json","string"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["min","max","length","case","pattern"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"properties",{...tk,trim:{type:"boolean","x-content":'{{t("Automatically remove heading and tailing spaces")}}',"x-decorator":"FormItem","x-component":"Checkbox"}}),(0,a._)(this,"validateSchema",e=>({max:{type:"number",title:'{{ t("Max length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":`{{(field) => {
1004
1004
  const targetValue = field.query('.min').value();
1005
1005
  field.selfErrors =
1006
- !!targetValue && !!field.value && targetValue > field.value ? '${tB("Max length must greater than min length")}' : ''
1007
- }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tB("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tn})}}class ll extends tP{constructor(...e){super(...e),(0,a._)(this,"name","time"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Time")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"time",uiSchema:{type:"string","x-component":"TimePicker"}}),(0,a._)(this,"availableTypes",["time"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tA,...tM}),(0,a._)(this,"filterable",{operators:tu}),(0,a._)(this,"titleUsable",!0)}}class lo extends tP{constructor(...e){super(...e),(0,a._)(this,"name","updatedAt"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Last updated at")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",field:"updatedAt",uiSchema:{type:"datetime",title:'{{t("Last updated at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}),(0,a._)(this,"description",'{{t("Store the last update time of each record")}}'),(0,a._)(this,"availableTypes",[]),(0,a._)(this,"properties",{...tA,...tS}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}class ln extends tP{schemaInitialize(e,t){let{block:l}=t;e.properties={viewer:(0,M.cloneDeep)(tk)},["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","updatedBy"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Last updated by")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsTo",target:"users",foreignKey:"updatedById",uiSchema:{type:"object",title:'{{t("Last updated by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"filterable",{nested:!0,children:[]}),(0,a._)(this,"description",'{{t("Store the last update user of each record")}}')}}class lr extends tP{schemaInitialize(e,t){let{block:l}=t}constructor(...e){super(...e),(0,a._)(this,"name","url"),(0,a._)(this,"type","string"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("URL")}}'),(0,a._)(this,"default",{type:"text",uiSchema:{type:"string","x-component":"Input.URL"}}),(0,a._)(this,"componentOptions",[{label:"URL",value:"Input.URL"},{label:"Preview",value:"Input.Preview"}]),(0,a._)(this,"availableTypes",["string","text"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["uri","pattern"]),(0,a._)(this,"properties",{...tA}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"filterable",{operators:tn})}}class li extends tP{constructor(...e){super(...e),(0,a._)(this,"name","uuid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("UUID")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"uuid",uiSchema:{type:"string","x-component":"Input","x-validator":"uuid"}}),(0,a._)(this,"availableTypes",["uid","uuid"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["uuid","pattern"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !createOnly }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},autoFill:ty,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tg,unique:tf}}}),(0,a._)(this,"filterable",{operators:tn}),(0,a._)(this,"titleUsable",!0)}}class la extends tP{constructor(...e){super(...e),(0,a._)(this,"name","nanoid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Nano ID")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"nanoid",uiSchema:{type:"string","x-component":"NanoIDInput"}}),(0,a._)(this,"availableTypes",["nanoid"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !createOnly }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},customAlphabet:{type:"string",title:'{{t("Alphabet")}}',default:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz","x-decorator":"FormItem","x-component":"Input"},size:{type:"number",title:'{{t("Length")}}',default:21,"x-decorator":"FormItem","x-component":"InputNumber"},autoFill:ty,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tg,unique:tf}}}),(0,a._)(this,"filterable",{operators:tn}),(0,a._)(this,"titleUsable",!0)}}class ls extends tP{constructor(...e){super(...e),(0,a._)(this,"name","unixTimestamp"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Unix Timestamp")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"unixTimestamp",accuracy:"second",timezone:!0,defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,uiSchema:{type:"number","x-component":"UnixTimestamp","x-component-props":{showTime:!0}}}),(0,a._)(this,"availableTypes",["unixTimestamp"]),(0,a._)(this,"hasDefaultValue",!1),(0,a._)(this,"validationType","date"),(0,a._)(this,"availableValidationOptions",["timestamp"]),(0,a._)(this,"properties",{...tA,...tS,accuracy:{type:"string",title:'{{t("Accuracy")}}',"x-component":"Radio.Group","x-decorator":"FormItem",default:"second",enum:[{value:"millisecond",label:'{{t("Millisecond")}}'},{value:"second",label:'{{t("Second")}}'}]},defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp on update")}}'}}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}class ld extends tP{constructor(...e){super(...e),(0,a._)(this,"name","date"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("DateOnly")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"dateOnly",uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{dateOnly:!0,showTime:!1}}}),(0,a._)(this,"availableTypes",["dateOnly"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tA,...tS,"uiSchema.x-component-props.showTime":{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-visible":!1}}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}class lu extends tP{constructor(...e){super(...e),(0,a._)(this,"name","datetimeNoTz"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Datetime (without time zone)")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"datetimeNoTz",defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,timezone:!1,uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{showTime:!1,utc:!1}}}),(0,a._)(this,"availableTypes",["string","datetimeNoTz"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tA,...tS,defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current server time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp to the current server time on update")}}'},"uiSchema.x-component-props.gmt":{type:"boolean",title:'{{t("GMT")}}',"x-hidden":!0,"x-component":"Checkbox","x-content":'{{t("Use the same time zone (GMT) for all users")}}',"x-decorator":"FormItem",default:!1}}),(0,a._)(this,"filterable",{operators:ti}),(0,a._)(this,"titleUsable",!0)}}},84256(e,t,l){l.d(t,{A:()=>o});let o={"ar-EG":{label:"العربية"},"az-AZ":{label:"Azərbaycan dili"},"bg-BG":{label:"Български"},"bn-BD":{label:"Bengali"},"by-BY":{label:"Беларускі"},"ca-ES":{label:"Сatal\xe0/Espanya"},"cs-CZ":{label:"Česky"},"da-DK":{label:"Dansk"},"de-DE":{label:"Deutsch"},"el-GR":{label:"Ελληνικά"},"en-GB":{label:"English(GB)"},"en-US":{label:"English"},"es-ES":{label:"Espa\xf1ol"},"et-EE":{label:"Estonian (Eesti)"},"fa-IR":{label:"فارسی"},"fi-FI":{label:"Suomi"},"fr-BE":{label:"Fran\xe7ais(BE)"},"fr-CA":{label:"Fran\xe7ais(CA)"},"fr-FR":{label:"Fran\xe7ais"},"ga-IE":{label:"Gaeilge"},"gl-ES":{label:"Galego"},"he-IL":{label:"עברית"},"hi-IN":{label:"हिन्दी"},"hr-HR":{label:"Hrvatski jezik"},"hu-HU":{label:"Magyar"},"hy-AM":{label:"Հայերեն"},"id-ID":{label:"Bahasa Indonesia"},"is-IS":{label:"\xcdslenska"},"it-IT":{label:"Italiano"},"ja-JP":{label:"日本語"},"ka-GE":{label:"ქართული"},"kk-KZ":{label:"Қазақ тілі"},"km-KH":{label:"ភាសាខ្មែរ"},"kn-IN":{label:"ಕನ್ನಡ"},"ko-KR":{label:"한국어"},"ku-IQ":{label:"کوردی"},"lt-LT":{label:"lietuvių"},"lv-LV":{label:"Latviešu valoda"},"mk-MK":{label:"македонски јазик"},"ml-IN":{label:"മലയാളം"},"mn-MN":{label:"Монгол хэл"},"ms-MY":{label:"بهاس ملايو"},"nb-NO":{label:"Norsk bokm\xe5l"},"ne-NP":{label:"नेपाली"},"nl-BE":{label:"Vlaams"},"nl-NL":{label:"Nederlands"},"pl-PL":{label:"Polski"},"pt-BR":{label:"Portugu\xeas brasileiro"},"pt-PT":{label:"Portugu\xeas"},"ro-RO":{label:"Rom\xe2nia"},"ru-RU":{label:"Русский"},"si-LK":{label:"සිංහල"},"sk-SK":{label:"Slovenčina"},"sl-SI":{label:"Slovenščina"},"sr-RS":{label:"српски језик"},"sv-SE":{label:"Svenska"},"ta-IN":{label:"Tamil"},"th-TH":{label:"ภาษาไทย"},"tk-TK":{label:"Turkmen"},"tr-TR":{label:"T\xfcrk\xe7e"},"uk-UA":{label:"Українська"},"ur-PK":{label:"Oʻzbekcha"},"vi-VN":{label:"Tiếng Việt"},"zh-CN":{label:"简体中文"},"zh-HK":{label:"繁體中文(香港)"},"zh-TW":{label:"繁體中文(台湾)"}}},43089(e,t,l){l.r(t),l.d(t,{AdminSettingsLayout:()=>S,InternalAdminSettingsLayout:()=>w,default:()=>M});var o=l(74848),n=l(13525),r=l(44279),i=l(22803),a=l(40532),s=l(92275),d=l(35710),u=l(66043),c=l(56474),p=l(96540),h=l(18492),m=l(47767),f=l(966),g=l(96204),v=l(36098),y=l(14306),b=l(17586);function x(e){let{type:t}=e,{t:l}=(0,h.B)();return"route"===t?(0,o.jsx)(s.Ay,{status:"warning",title:l("Current settings page is unavailable"),subTitle:l("The requested settings page does not exist or you do not have permission to access it.")}):(0,o.jsx)(s.Ay,{status:"info",title:l("No settings pages available"),subTitle:l("No settings pages are currently available in Client V2. Settings registered by migrated plugins will appear here automatically.")})}let w=()=>{var e,t,l;let i=(0,v.n)(),a=(0,m.useNavigate)(),s=(0,m.useLocation)(),y=(0,m.useParams)(),{token:w}=d.A.useToken(),{t:S}=(0,h.B)(),{snippets:M=[]}=(0,f.v6)(),F=(0,p.useMemo)(()=>(0,b.Ui)(i.pluginSettingsManager.getList(!1)),[i.pluginSettingsManager]),A=(0,p.useMemo)(()=>(0,b.eD)((0,b.Ui)(i.pluginSettingsManager.getList(!0))),[i.pluginSettingsManager]),k=(0,p.useMemo)(()=>A.find(e=>e.name===b.Bm)||null,[A]),C=(0,p.useMemo)(()=>(0,b.p$)(A.filter(e=>e.name!==b.Bm)),[A]),P=(0,p.useMemo)(()=>k?[k,...C]:C,[C,k]),j=(0,p.useMemo)(()=>(0,b.nC)(F),[F]),I=(0,p.useMemo)(()=>(0,b.nC)(P),[P]),E=(0,p.useMemo)(()=>(0,b.CM)(j,s.pathname),[s.pathname,j]),_=(0,p.useMemo)(()=>(0,b.CM)(I,s.pathname),[s.pathname,I]),R=(0,p.useMemo)(()=>E?F.find(e=>e.name===E.topLevelName)||E:null,[F,E]),T=(0,p.useMemo)(()=>E&&P.find(e=>e.name===E.topLevelName)||null,[P,E]),D=(0,p.useMemo)(()=>(0,b.C9)(P),[P]),N=(0,p.useMemo)(()=>((null==T?void 0:T.children)||[]).filter(e=>!e.hidden),[null==T?void 0:T.children]),O=N.length>1&&(null==T?void 0:T.showTabs)!==!1;(0,p.useEffect)(()=>{let e=R&&"string"==typeof R.title?R.title:null==R?void 0:R.topLevelName;e&&(document.title=e)},[R]);let $=(0,p.useMemo)(()=>{let e=[];return k&&M.includes("pm")&&e.push({key:k.name,icon:k.icon||(0,o.jsx)(n.A,{}),label:k.label||S("Plugin manager")}),e.length&&C.length&&e.push({type:"divider"}),e.push(...(0,b.gL)(C.map(e=>({...e,children:void 0})))||[]),e},[C,k,M,S]),B=s.pathname===g.wq||s.pathname===g.wq.replace(/\/$/,"")||s.pathname===`${g.wq}index`;if(B&&D)return(0,o.jsx)(m.Navigate,{replace:!0,to:D});if(B&&!D)return(0,o.jsx)(x,{type:"home"});if(!E||!_&&!1===E.isAllow)return(0,o.jsx)(x,{type:"route"});if(E.link)return(0,o.jsx)(m.Navigate,{replace:!0,to:E.link});if(s.pathname===(null==R?void 0:R.path)&&(null==R||null==(e=R.children)?void 0:e.length)){let e=null==T||null==(l=T.children)||null==(t=l.find(e=>"index"===e.pageKey))?void 0:t.path,n=(0,b.C9)(null==T?void 0:T.children),r=e||n;if(r&&r!==s.pathname)return(0,o.jsx)(m.Navigate,{replace:!0,to:r})}return(0,o.jsxs)(u.A,{style:{height:"100%",minHeight:"100%",background:w.colorBgLayout,borderRadius:w.borderRadiusLG,overflow:"hidden"},children:[(0,o.jsx)(u.A.Sider,{width:200,style:{background:w.colorBgContainer,borderInlineEnd:`${w.lineWidth}px solid ${w.colorBorderSecondary}`},children:(0,o.jsx)(c.A,{selectedKeys:(null==T?void 0:T.name)?[T.name]:[],style:{height:"100%",borderInlineEnd:"none"},onClick:e=>{var t;let{key:l}=e,o=P.find(e=>e.name===l);if(!o)return;if(o.link)return void window.open(o.link,"_blank","noopener,noreferrer");let n=(null==(t=o.children)?void 0:t.length)?(0,b.C9)(o.children):o.path;n&&a(n)},items:$})}),(0,o.jsxs)(u.A.Content,{style:{background:w.colorBgLayout,display:"flex",flexDirection:"column",minWidth:0,overflowY:"auto",overflowX:"hidden"},children:[(0,o.jsx)(r.z,{ghost:!1,title:null==R?void 0:R.title,style:{background:w.colorBgContainer,borderBlockEnd:`${w.lineWidth}px solid ${w.colorBorderSecondary}`,paddingBottom:O?0:w.padding},footer:O?(0,o.jsx)(c.A,{mode:"horizontal",selectedKeys:[(null==_?void 0:_.name)||(null==E?void 0:E.name)],items:(0,b.gL)(N),onClick:e=>{let{key:t}=e,l=(0,b.uT)(i.pluginSettingsManager.getRoutePath(String(t)),y);s.pathname!==l&&a(l)},style:{marginLeft:-w.marginSM,borderBottom:"none"}}):null}),(0,o.jsx)("div",{style:{padding:w.paddingLG},children:(0,o.jsx)(m.Outlet,{})})]})]})},S=e=>{let t=(0,a.useFlowEngine)(),l=(0,p.useRef)(null),n=(0,p.useMemo)(()=>(0,o.jsx)(w,{...e}),[e]),r=(0,i.AH)`
1006
+ !!targetValue && !!field.value && targetValue > field.value ? '${tq("Max length must greater than min length")}' : ''
1007
+ }}}`},min:{type:"number",title:'{{ t("Min length") }}',minimum:0,"x-decorator":"FormItem","x-component":"InputNumber","x-component-props":{precision:0},"x-reactions":{dependencies:[".max"],fulfill:{state:{selfErrors:`{{!!$deps[0] && !!$self.value && $deps[0] < $self.value ? '${tq("Min length must less than max length")}' : ''}}`}}}}})),(0,a._)(this,"filterable",{operators:tr})}}class lo extends tj{constructor(...e){super(...e),(0,a._)(this,"name","time"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Time")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"time",uiSchema:{type:"string","x-component":"TimePicker"}}),(0,a._)(this,"availableTypes",["time"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"properties",{...tk,...tF}),(0,a._)(this,"filterable",{operators:tc}),(0,a._)(this,"titleUsable",!0)}}class ln extends tj{constructor(...e){super(...e),(0,a._)(this,"name","updatedAt"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Last updated at")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"date",field:"updatedAt",uiSchema:{type:"datetime",title:'{{t("Last updated at")}}',"x-component":"DatePicker","x-component-props":{},"x-read-pretty":!0}}),(0,a._)(this,"description",'{{t("Store the last update time of each record")}}'),(0,a._)(this,"availableTypes",[]),(0,a._)(this,"properties",{...tk,...tM}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class lr extends tj{schemaInitialize(e,t){let{block:l}=t;e.properties={viewer:(0,M.cloneDeep)(tC)},["Table","Kanban"].includes(l)&&(e["x-component-props"]=e["x-component-props"]||{},e["x-component-props"].ellipsis=!0)}constructor(...e){super(...e),(0,a._)(this,"name","updatedBy"),(0,a._)(this,"type","object"),(0,a._)(this,"group","systemInfo"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Last updated by")}}'),(0,a._)(this,"isAssociation",!0),(0,a._)(this,"default",{type:"belongsTo",target:"users",foreignKey:"updatedById",uiSchema:{type:"object",title:'{{t("Last updated by")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{value:"id",label:"nickname"}},"x-read-pretty":!0}}),(0,a._)(this,"availableTypes",["belongsTo"]),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"filterable",{nested:!0,children:[]}),(0,a._)(this,"description",'{{t("Store the last update user of each record")}}')}}class li extends tj{schemaInitialize(e,t){let{block:l}=t}constructor(...e){super(...e),(0,a._)(this,"name","url"),(0,a._)(this,"type","string"),(0,a._)(this,"group","basic"),(0,a._)(this,"order",5),(0,a._)(this,"title",'{{t("URL")}}'),(0,a._)(this,"default",{type:"text",uiSchema:{type:"string","x-component":"Input.URL"}}),(0,a._)(this,"componentOptions",[{label:"URL",value:"Input.URL"},{label:"Preview",value:"Input.Preview"}]),(0,a._)(this,"availableTypes",["string","text"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["uri","pattern"]),(0,a._)(this,"properties",{...tk}),(0,a._)(this,"titleUsable",!0),(0,a._)(this,"filterable",{operators:tr})}}class la extends tj{constructor(...e){super(...e),(0,a._)(this,"name","uuid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("UUID")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"uuid",uiSchema:{type:"string","x-component":"Input","x-validator":"uuid"}}),(0,a._)(this,"availableTypes",["uid","uuid"]),(0,a._)(this,"validationType","string"),(0,a._)(this,"availableValidationOptions",["uuid","pattern"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !createOnly }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},autoFill:tb,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tv,unique:tg}}}),(0,a._)(this,"filterable",{operators:tr}),(0,a._)(this,"titleUsable",!0)}}class ls extends tj{constructor(...e){super(...e),(0,a._)(this,"name","nanoid"),(0,a._)(this,"type","object"),(0,a._)(this,"group","advanced"),(0,a._)(this,"order",0),(0,a._)(this,"title",'{{t("Nano ID")}}'),(0,a._)(this,"primaryKeyDescription",'{{t("Primary key, unique identifier")}}'),(0,a._)(this,"hidden",!1),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"nanoid",uiSchema:{type:"string","x-component":"NanoIDInput"}}),(0,a._)(this,"availableTypes",["nanoid"]),(0,a._)(this,"properties",{"uiSchema.title":{type:"string",title:'{{t("Field display name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input"},name:{type:"string",title:'{{t("Field name")}}',required:!0,"x-decorator":"FormItem","x-component":"Input","x-disabled":"{{ !createOnly }}",description:"{{t('Randomly generated and can be modified. Support letters, numbers and underscores, must start with an letter.')}}"},customAlphabet:{type:"string",title:'{{t("Alphabet")}}',default:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz","x-decorator":"FormItem","x-component":"Input"},size:{type:"number",title:'{{t("Length")}}',default:21,"x-decorator":"FormItem","x-component":"InputNumber"},autoFill:tb,layout:{type:"void",title:'{{t("Index")}}',"x-component":"Space","x-decorator":"FormItem","x-decorator-props":{style:{marginBottom:"0px"}},properties:{primaryKey:tv,unique:tg}}}),(0,a._)(this,"filterable",{operators:tr}),(0,a._)(this,"titleUsable",!0)}}class ld extends tj{constructor(...e){super(...e),(0,a._)(this,"name","unixTimestamp"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",4),(0,a._)(this,"title",'{{t("Unix Timestamp")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"unixTimestamp",accuracy:"second",timezone:!0,defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,uiSchema:{type:"number","x-component":"UnixTimestamp","x-component-props":{showTime:!0}}}),(0,a._)(this,"availableTypes",["unixTimestamp"]),(0,a._)(this,"hasDefaultValue",!1),(0,a._)(this,"validationType","date"),(0,a._)(this,"availableValidationOptions",["timestamp"]),(0,a._)(this,"properties",{...tk,...tM,accuracy:{type:"string",title:'{{t("Accuracy")}}',"x-component":"Radio.Group","x-decorator":"FormItem",default:"second",enum:[{value:"millisecond",label:'{{t("Millisecond")}}'},{value:"second",label:'{{t("Second")}}'}]},defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp on update")}}'}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class lu extends tj{constructor(...e){super(...e),(0,a._)(this,"name","date"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",3),(0,a._)(this,"title",'{{t("DateOnly")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"dateOnly",uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{dateOnly:!0,showTime:!1}}}),(0,a._)(this,"availableTypes",["dateOnly"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tk,...tM,"uiSchema.x-component-props.showTime":{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-visible":!1}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}class lc extends tj{constructor(...e){super(...e),(0,a._)(this,"name","datetimeNoTz"),(0,a._)(this,"type","object"),(0,a._)(this,"group","datetime"),(0,a._)(this,"order",2),(0,a._)(this,"title",'{{t("Datetime (without time zone)")}}'),(0,a._)(this,"sortable",!0),(0,a._)(this,"default",{type:"datetimeNoTz",defaultToCurrentTime:!1,onUpdateToCurrentTime:!1,timezone:!1,uiSchema:{type:"string","x-component":"DatePicker","x-component-props":{showTime:!1,utc:!1}}}),(0,a._)(this,"availableTypes",["string","datetimeNoTz"]),(0,a._)(this,"hasDefaultValue",!0),(0,a._)(this,"validationType","date"),(0,a._)(this,"properties",{...tk,...tM,defaultToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Default value to current server time")}}'},onUpdateToCurrentTime:{type:"boolean","x-decorator":"FormItem","x-component":"Checkbox","x-content":'{{t("Automatically update timestamp to the current server time on update")}}'},"uiSchema.x-component-props.gmt":{type:"boolean",title:'{{t("GMT")}}',"x-hidden":!0,"x-component":"Checkbox","x-content":'{{t("Use the same time zone (GMT) for all users")}}',"x-decorator":"FormItem",default:!1}}),(0,a._)(this,"filterable",{operators:ta}),(0,a._)(this,"titleUsable",!0)}}},84256(e,t,l){l.d(t,{A:()=>o});let o={"ar-EG":{label:"العربية"},"az-AZ":{label:"Azərbaycan dili"},"bg-BG":{label:"Български"},"bn-BD":{label:"Bengali"},"by-BY":{label:"Беларускі"},"ca-ES":{label:"Сatal\xe0/Espanya"},"cs-CZ":{label:"Česky"},"da-DK":{label:"Dansk"},"de-DE":{label:"Deutsch"},"el-GR":{label:"Ελληνικά"},"en-GB":{label:"English(GB)"},"en-US":{label:"English"},"es-ES":{label:"Espa\xf1ol"},"et-EE":{label:"Estonian (Eesti)"},"fa-IR":{label:"فارسی"},"fi-FI":{label:"Suomi"},"fr-BE":{label:"Fran\xe7ais(BE)"},"fr-CA":{label:"Fran\xe7ais(CA)"},"fr-FR":{label:"Fran\xe7ais"},"ga-IE":{label:"Gaeilge"},"gl-ES":{label:"Galego"},"he-IL":{label:"עברית"},"hi-IN":{label:"हिन्दी"},"hr-HR":{label:"Hrvatski jezik"},"hu-HU":{label:"Magyar"},"hy-AM":{label:"Հայերեն"},"id-ID":{label:"Bahasa Indonesia"},"is-IS":{label:"\xcdslenska"},"it-IT":{label:"Italiano"},"ja-JP":{label:"日本語"},"ka-GE":{label:"ქართული"},"kk-KZ":{label:"Қазақ тілі"},"km-KH":{label:"ភាសាខ្មែរ"},"kn-IN":{label:"ಕನ್ನಡ"},"ko-KR":{label:"한국어"},"ku-IQ":{label:"کوردی"},"lt-LT":{label:"lietuvių"},"lv-LV":{label:"Latviešu valoda"},"mk-MK":{label:"македонски јазик"},"ml-IN":{label:"മലയാളം"},"mn-MN":{label:"Монгол хэл"},"ms-MY":{label:"بهاس ملايو"},"nb-NO":{label:"Norsk bokm\xe5l"},"ne-NP":{label:"नेपाली"},"nl-BE":{label:"Vlaams"},"nl-NL":{label:"Nederlands"},"pl-PL":{label:"Polski"},"pt-BR":{label:"Portugu\xeas brasileiro"},"pt-PT":{label:"Portugu\xeas"},"ro-RO":{label:"Rom\xe2nia"},"ru-RU":{label:"Русский"},"si-LK":{label:"සිංහල"},"sk-SK":{label:"Slovenčina"},"sl-SI":{label:"Slovenščina"},"sr-RS":{label:"српски језик"},"sv-SE":{label:"Svenska"},"ta-IN":{label:"Tamil"},"th-TH":{label:"ภาษาไทย"},"tk-TK":{label:"Turkmen"},"tr-TR":{label:"T\xfcrk\xe7e"},"uk-UA":{label:"Українська"},"ur-PK":{label:"Oʻzbekcha"},"vi-VN":{label:"Tiếng Việt"},"zh-CN":{label:"简体中文"},"zh-HK":{label:"繁體中文(香港)"},"zh-TW":{label:"繁體中文(台湾)"}}},43089(e,t,l){l.r(t),l.d(t,{AdminSettingsLayout:()=>S,InternalAdminSettingsLayout:()=>w,default:()=>M});var o=l(74848),n=l(13525),r=l(44279),i=l(22803),a=l(40532),s=l(92275),d=l(35710),u=l(66043),c=l(56474),p=l(96540),h=l(18492),m=l(47767),f=l(966),g=l(96204),v=l(36098),y=l(14306),b=l(17586);function x(e){let{type:t}=e,{t:l}=(0,h.B)();return"route"===t?(0,o.jsx)(s.Ay,{status:"warning",title:l("Current settings page is unavailable"),subTitle:l("The requested settings page does not exist or you do not have permission to access it.")}):(0,o.jsx)(s.Ay,{status:"info",title:l("No settings pages available"),subTitle:l("No settings pages are currently available in Client V2. Settings registered by migrated plugins will appear here automatically.")})}let w=()=>{var e,t,l;let i=(0,v.n)(),a=(0,m.useNavigate)(),s=(0,m.useLocation)(),y=(0,m.useParams)(),{token:w}=d.A.useToken(),{t:S}=(0,h.B)(),{snippets:M=[]}=(0,f.v6)(),F=(0,p.useMemo)(()=>(0,b.Ui)(i.pluginSettingsManager.getList(!1)),[i.pluginSettingsManager]),A=(0,p.useMemo)(()=>(0,b.eD)((0,b.Ui)(i.pluginSettingsManager.getList(!0))),[i.pluginSettingsManager]),k=(0,p.useMemo)(()=>A.find(e=>e.name===b.Bm)||null,[A]),C=(0,p.useMemo)(()=>(0,b.p$)(A.filter(e=>e.name!==b.Bm)),[A]),P=(0,p.useMemo)(()=>k?[k,...C]:C,[C,k]),j=(0,p.useMemo)(()=>(0,b.nC)(F),[F]),I=(0,p.useMemo)(()=>(0,b.nC)(P),[P]),E=(0,p.useMemo)(()=>(0,b.CM)(j,s.pathname),[s.pathname,j]),_=(0,p.useMemo)(()=>(0,b.CM)(I,s.pathname),[s.pathname,I]),R=(0,p.useMemo)(()=>E?F.find(e=>e.name===E.topLevelName)||E:null,[F,E]),T=(0,p.useMemo)(()=>E&&P.find(e=>e.name===E.topLevelName)||null,[P,E]),D=(0,p.useMemo)(()=>(0,b.C9)(P),[P]),N=(0,p.useMemo)(()=>((null==T?void 0:T.children)||[]).filter(e=>!e.hidden),[null==T?void 0:T.children]),O=N.length>1&&(null==T?void 0:T.showTabs)!==!1;(0,p.useEffect)(()=>{let e=R&&"string"==typeof R.title?R.title:null==R?void 0:R.topLevelName;e&&(document.title=e)},[R]);let $=(0,p.useMemo)(()=>{let e=[];return k&&M.includes("pm")&&e.push({key:k.name,icon:k.icon||(0,o.jsx)(n.A,{}),label:k.label||S("Plugin manager")}),e.length&&C.length&&e.push({type:"divider"}),e.push(...(0,b.gL)(C.map(e=>({...e,children:void 0})))||[]),e},[C,k,M,S]),B=s.pathname===g.wq||s.pathname===g.wq.replace(/\/$/,"")||s.pathname===`${g.wq}index`;if(B&&D)return(0,o.jsx)(m.Navigate,{replace:!0,to:D});if(B&&!D)return(0,o.jsx)(x,{type:"home"});if(!E||!_&&!1===E.isAllow)return(0,o.jsx)(x,{type:"route"});if(E.link)return(0,o.jsx)(m.Navigate,{replace:!0,to:E.link});if(s.pathname===(null==R?void 0:R.path)&&(null==R||null==(e=R.children)?void 0:e.length)){let e=null==T||null==(l=T.children)||null==(t=l.find(e=>"index"===e.pageKey))?void 0:t.path,n=(0,b.C9)(null==T?void 0:T.children),r=e||n;if(r&&r!==s.pathname)return(0,o.jsx)(m.Navigate,{replace:!0,to:r})}return(0,o.jsxs)(u.A,{style:{height:"100%",minHeight:"100%",background:w.colorBgLayout,borderRadius:w.borderRadiusLG,overflow:"hidden"},children:[(0,o.jsx)(u.A.Sider,{width:200,style:{background:w.colorBgContainer,borderInlineEnd:`${w.lineWidth}px solid ${w.colorBorderSecondary}`},children:(0,o.jsx)(c.A,{selectedKeys:(null==T?void 0:T.name)?[T.name]:[],style:{height:"100%",borderInlineEnd:"none"},onClick:e=>{var t;let{key:l}=e,o=P.find(e=>e.name===l);if(!o)return;if(o.link)return void window.open(o.link,"_blank","noopener,noreferrer");let n=(null==(t=o.children)?void 0:t.length)?(0,b.C9)(o.children):o.path;n&&a(n)},items:$})}),(0,o.jsxs)(u.A.Content,{style:{background:w.colorBgLayout,display:"flex",flexDirection:"column",minWidth:0,overflowY:"auto",overflowX:"hidden"},children:[(0,o.jsx)(r.z,{ghost:!1,title:null==R?void 0:R.title,style:{background:w.colorBgContainer,borderBlockEnd:`${w.lineWidth}px solid ${w.colorBorderSecondary}`,paddingBottom:O?0:w.padding},footer:O?(0,o.jsx)(c.A,{mode:"horizontal",selectedKeys:[(null==_?void 0:_.name)||(null==E?void 0:E.name)],items:(0,b.gL)(N),onClick:e=>{let{key:t}=e,l=(0,b.uT)(i.pluginSettingsManager.getRoutePath(String(t)),y);s.pathname!==l&&a(l)},style:{marginLeft:-w.marginSM,borderBottom:"none"}}):null}),(0,o.jsx)("div",{style:{padding:w.paddingLG},children:(0,o.jsx)(m.Outlet,{})})]})]})},S=e=>{let t=(0,a.useFlowEngine)(),l=(0,p.useRef)(null),n=(0,p.useMemo)(()=>(0,o.jsx)(w,{...e}),[e]),r=(0,i.AH)`
1008
1008
  height: 100%;
1009
1009
  > div {
1010
1010
  height: 100%;
@@ -1022,7 +1022,7 @@ ctx.render(<JsItem />);
1022
1022
  } catch (e) {
1023
1023
  throw e;
1024
1024
  }
1025
- })()`,o=new Compartment(this.globals);try{let e=o.evaluate(l),t=new Promise((e,t)=>setTimeout(()=>t(Error("Execution timed out")),this.timeoutMs)),n=await Promise.race([e,t]);return{success:!0,value:n}}catch(o){if(o instanceof n.sy||o instanceof n.zz)throw o;let t=a(e),l=s(o,t)&&t?d(o,t):o;return console.error(l),{success:!1,error:l,timeout:(null==l?void 0:l.message)==="Execution timed out"}}}constructor(e={}){var t,l;(0,o._)(this,"globals",void 0),(0,o._)(this,"timeoutMs",void 0);let n=e=>{if("u">typeof window&&"function"==typeof window[e])return window[e].bind(window);let t=globalThis[e];return"function"==typeof t?t.bind(globalThis):t},r=e.globals||{},i={};if(!Object.prototype.hasOwnProperty.call(r,"Blob"))try{let e=null==(t=r.window)?void 0:t.Blob;void 0!==e&&(i.Blob=e)}catch{}if(!Object.prototype.hasOwnProperty.call(r,"URL"))try{let e=null==(l=r.window)?void 0:l.URL;void 0!==e&&(i.URL=e)}catch{}this.globals={console,setTimeout:n("setTimeout"),clearTimeout:n("clearTimeout"),setInterval:n("setInterval"),clearInterval:n("clearInterval"),...i,...r},this.timeoutMs=e.timeoutMs??5e3}}},47451(e,t,l){l.d(t,{_:()=>r});var o=l(81440),n=l(16639);function r(e){let t=new o.$;Object.defineProperty(t,n.i6,{value:"view",configurable:!0}),e.modelRepository&&t.setModelRepository(e.modelRepository),t.context.addDelegate(e.context);let l=t.unlinkFromStack.bind(t);t.unlinkFromStack=function(){var e;return null==(e=t.disposeScheduler)||e.call(t),l()};let r=new Set(["_modelInstances","_applyFlowCache","executor","context",n.i6,"previousEngine","nextEngine","emitter","_modelOperationScheduler","getScheduler","scheduleModelOperation","disposeScheduler","unlinkFromStack","linkAfter","_previousEngine","_nextEngine","getModel","_destroyView","setDestroyView","destroyView"]),i={get(t,l,o){if(r.has(l))return Reflect.get(t,l,o);let n=Reflect.get(e,l,o);return"registerModels"===l&&"function"==typeof n?n.bind(e):n},set:(t,l,o)=>r.has(l)?Reflect.set(t,l,o):Reflect.set(e,l,o),has:(t,l)=>l in t||l in e};return t.linkAfter(e),new Proxy(t,i)}},64171(e,t,l){l.d(t,{Z:()=>n});var o=l(50467);class n{onActionRegistered(){}registerActions(e){for(let[,t]of Object.entries(e||{}))this.registerAction(t)}registerAction(e){if(!(null==e?void 0:e.name))throw Error("Action must have a name.");this.actions.has(e.name)&&console.warn(`Action '${e.name}' is already registered. It will be overwritten.`),this.actions.set(e.name,e),this.onActionRegistered()}constructor(){(0,o._)(this,"actions",new Map)}}},31102(e,t,l){l.d(t,{e:()=>s});var o=l(74848),n=l(96540),r=l(42443),i=l(89013);let a=["colon","dependencies","extra","getValueFromEvent","getValueProps","hasFeedback","help","htmlFor","initialValue","label","labelAlign","labelCol","messageVariables","name","normalize","noStyle","preserve","rules","tooltip","trigger","validateStatus","validateTrigger","valuePropName","wrapperCol","labelWidth","labelWrap","layout","required","showLabel"],s=e=>{let{children:t,showLabel:l=!0,labelWidth:s,...d}=e,u=Object.fromEntries(Object.entries(d).filter(e=>{let[t]=e;return!a.includes(t)})),c="function"==typeof t?t:n.Children.map(t,e=>n.isValidElement(e)?n.cloneElement(e,{...u}):e),{label:p,labelWrap:h,colon:m=!0,layout:f}=d,g=!f||"vertical"===f||h,v=()=>l?g?(0,o.jsxs)("div",{style:{width:"100%",whiteSpace:"normal",wordBreak:"break-word",display:"flex",alignItems:"center",justifyContent:"flex-start",fontWeight:600},children:[(0,o.jsx)("span",{style:{flex:1},children:p}),m&&(0,o.jsx)("span",{style:{marginLeft:4,flexShrink:0},children:":"})]}):(0,o.jsx)(r.A,{title:p,children:(0,o.jsxs)("div",{style:{display:"inline-flex",alignItems:"center",maxWidth:("number"==typeof s?s:120)-20,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",verticalAlign:"middle",fontWeight:600},children:[(0,o.jsx)("span",{style:{flexShrink:1,overflow:"hidden",textOverflow:"ellipsis"},children:p}),m&&(0,o.jsx)("span",{style:{marginLeft:4,flexShrink:0},children:":"})]})}):null;return(0,o.jsx)(i.A.Item,{...d,labelCol:{style:{width:s}},layout:f,label:v(),colon:!1,extra:d.extra&&(0,o.jsx)("span",{style:{whiteSpace:"pre-wrap"},children:d.extra}),tooltip:d.tooltip&&{title:d.tooltip,overlayInnerStyle:{whiteSpace:"pre-line"}},children:c})}},61793(e,t,l){let o,n;l.d(t,{D:()=>w});var r=l(74848),i=l(4888),a=l(96540),s=l(42524),d=l(27253),u=l(35710);let c=(e,t)=>{let{getPrefixCls:l}=(0,a.useContext)(i.Ay.ConfigContext)||{};if("ConfigContext"in i.Ay)return(null==l?void 0:l(e,null==t?void 0:t.prefixCls))||"";{let l=(null==t?void 0:t.prefixCls)??"ant-";return`${l}${e??""}`}},{ConfigContext:p}=i.Ay,h=()=>(0,a.useContext)(p),m=u.A.useToken,f=(e,t)=>{let{fontFamily:l,fontSize:o}=e,n=`[class^="${t}"], [class*=" ${t}"]`;return{[n]:{fontFamily:l,fontSize:o,boxSizing:"border-box","&::before, &::after":{boxSizing:"border-box"},[n]:{boxSizing:"border-box","&::before, &::after":{boxSizing:"border-box"}}}}},g=(o="nb-mobile-action-drawer",n=e=>{let{componentCls:t}=e;return{[t]:{".nb-mobile-action-drawer-header":{height:"var(--nb-mobile-page-header-height)",display:"flex",alignItems:"center",justifyContent:"space-between",borderBottom:`1px solid ${e.colorSplit}`,position:"sticky",top:0,backgroundColor:"white",zIndex:1e3,"& + .nb-grid-container > .nb-grid > .nb-grid-warp > .ant-btn":{margin:12}},".nb-mobile-action-drawer-placeholder":{display:"inline-block",padding:12,visibility:"hidden"},".nb-mobile-action-drawer-close-icon":{display:"inline-block",padding:12,cursor:"pointer"},".nb-mobile-action-drawer-body":{borderTopLeftRadius:8,borderTopRightRadius:8,maxHeight:"calc(100% - var(--nb-mobile-page-header-height))",overflowY:"auto",overflowX:"hidden",backgroundColor:e.colorBgLayout,"& > .nb-grid-container":{padding:`${e.paddingPageVertical}px ${e.paddingPageHorizontal}px`},".ant-tabs-nav":{marginBottom:"0px !important",padding:`0 ${e.paddingPageHorizontal+e.borderRadiusBlock/2}px`,backgroundColor:e.colorBgContainer},"& > .nb-grid-container > .nb-grid > .nb-grid-warp > .nb-grid-row:nth-last-child(2) .noco-card-item":{marginBottom:0,"& > .ant-card":{marginBottom:"0 !important"}}},".nb-mobile-action-drawer-footer":{padding:"8px var(--nb-mobile-page-tabs-content-padding)",display:"flex",alignItems:"center",justifyContent:"flex-end",position:"sticky",bottom:0,left:0,right:0,zIndex:1e3,borderTop:`1px solid ${e.colorSplit}`,backgroundColor:e.colorBgLayout,".ant-btn":{marginLeft:8}}}}},e=>{let{theme:t,token:l,hashId:r}=m(),{getPrefixCls:i,iconPrefixCls:u}=h(),p=c(o),g=i(),v=(0,s.useStyleRegister)({theme:t,token:l,hashId:r,path:["formily-antd",o,p,u]},()=>{let t=`.${p}`,o=n((0,d.merge)(l,{componentCls:t,prefixCls:p,iconCls:`.${u}`,antCls:`.${g}`}),e,{hashId:r,prefixCls:p,rootPrefixCls:g,iconPrefixCls:u});return[f(l,p),o]});return{wrapSSR:(0,a.useMemo)(()=>v,[t,l,r,p,u,g,e]),hashId:r,componentCls:p,rootPrefixCls:g}});var v=l(18492),y=l(22505);let{Popup:b}=(0,y.R)(()=>Promise.resolve().then(l.bind(l,6433)),"Popup"),{CloseOutline:x}=(0,y.R)(()=>l.e("3279").then(l.bind(l,38370)),"CloseOutline"),w=e=>{let{title:t,visible:l,onClose:o,children:n,minHeight:s,className:d,footer:u}=e,{t:c}=(0,v.B)(),{componentCls:p,hashId:h}=g(),m=(0,a.useMemo)(()=>({minHeight:s}),[s]),f=(0,a.useMemo)(()=>({token:{paddingPageHorizontal:8,paddingPageVertical:8,marginBlock:12,borderRadiusBlock:8,fontSize:14}}),[]);return(0,r.jsx)(i.Ay,{theme:f,children:(0,r.jsxs)(b,{className:`${p} ${h} ${d||""}`,visible:l,onClose:o,onMaskClick:o,bodyClassName:"nb-mobile-action-drawer-body",bodyStyle:{padding:0},maskStyle:m,style:m,destroyOnClose:!0,children:[(0,r.jsxs)("div",{className:"nb-mobile-action-drawer-header",children:[(0,r.jsx)("span",{className:"nb-mobile-action-drawer-placeholder",children:(0,r.jsx)(x,{})}),(0,r.jsx)("span",{children:t}),(0,r.jsx)("span",{className:"nb-mobile-action-drawer-close-icon",onClick:o,role:"button",tabIndex:0,"aria-label":c("Close"),children:(0,r.jsx)(x,{})})]}),n,u&&(0,r.jsx)("div",{className:"nb-mobile-action-drawer-footer",children:u})]})})}},96332(e,t,l){l.d(t,{openRequiredParamsStepFormDialog:()=>m});var o=l(74848),n=l(18220),r=l(95243),i=l(87959),a=l(71021),s=l(96540),d=l(29007),u=l(16296),c=l(48555);let p=(0,n.createSchemaField)(),h=e=>{let{model:t,requiredSteps:l,formStep:n,children:r}=e,i=l[(null==n?void 0:n.current)??0],a=s.useMemo(()=>{let{flowKey:e,step:l}=i,o=t.getFlow(e),n=new d.W5(t,e,"settings");return(0,c.wx)(n,(null==o?void 0:o.steps)||{},t,e),n.defineProperty("currentStep",{value:l}),n},[t,i]);return(0,o.jsx)(u.u,{value:a,children:r})},m=async e=>{let{model:t,dialogWidth:s=800,dialogTitle:m}=e,f=(0,c.lW)(t);if(m||f("Step parameter configuration"),!t)throw i.Ay.error(f("Invalid model provided")),Error(f("Invalid model provided"));return new Promise((e,i)=>{(async()=>{try{var g,v,y;let i=t.getFlows(),b=[];for(let[e,l]of i)for(let o in l.steps){let n=l.steps[o];if(n.paramsRequired||n.preset){let r=await (0,c.o7)(t,l,n);if(r){t.getStepParams(e,o);let i=!1;console.log(`Flow: ${e}, Step: ${o}, hasAllRequiredParams:`,i),i||b.push({flowKey:e,stepKey:o,step:n,uiSchema:r,title:n.title||o,flowTitle:l.title||e})}}}if(console.log("Required steps:",b),0===b.length)return void e({});let x={};for(let{flowKey:e,stepKey:l,step:o}of b){let n=t.getStepParams(e,l)||{},i={};o.use&&(i=(null==(y=t.flowEngine)||null==(v=y.getAction)?void 0:v.call(y,o.use)).defaultParams||{});let a=new d.W5(t,e,"settings"),s=t.getFlow(e);s&&(0,c.wx)(a,s.steps,t,e),a.defineProperty("currentStep",{value:o});let u=await (0,c.gG)(i,a),p=await (0,c.gG)(o.defaultParams,a),h={...(0,r.toJS)(u),...(0,r.toJS)(p),...(0,r.toJS)(n)};Object.keys(h).length>0&&(x[e]||(x[e]={}),x[e][l]=h)}let w={};b.forEach(e=>{let{flowKey:t,stepKey:l,uiSchema:o,title:n,flowTitle:r}=e;w[`${t}_${l}`]={type:"void","x-component":"FormStep.StepPane","x-component-props":{title:`${n}`,description:`Flow: ${r}`},properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:{[t]:{type:"object",properties:{[l]:{type:"object",properties:o}}}}}}}});let S=1===b.length?{type:"object",properties:{...Object.values(w)[0].properties}}:{type:"object",properties:{step:{type:"void","x-component":"FormStep","x-component-props":{formStep:"{{formStep}}"},properties:w}}},{FormDialog:M,FormStep:F}=await Promise.resolve().then(l.bind(l,88967)),A=b.length>1?F.createFormStep(0):null,k=t.flowEngine,C={formStep:A,totalSteps:b.length,requiredSteps:b,useFlowSettingsContext:u.s,...null==(g=k.flowSettings)?void 0:g.scopes},P=M({title:m||f("Step parameter configuration"),width:s,footer:null,destroyOnClose:!0},l=>{var r;let i=async()=>{try{await l.submit();let o=l.values;b.forEach(e=>{var l;let{flowKey:n,stepKey:r}=e,i=null==(l=o[n])?void 0:l[r];i&&t.setStepParams(n,r,i)}),await t.saveStepParams(),e(o),P.close()}catch(e){console.error(f("Error submitting form"),":",e)}},s=()=>{P.close(),e({})},d={...C,closeDialog:s,handleNext:()=>{l.validate().then(()=>{A&&A.next()}).catch(e=>{console.log(f("Form validation failed"),":",e)})}},u=(0,c.ln)(d,S);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(h,{model:t,requiredSteps:b,formStep:A,children:(0,o.jsx)(p,{schema:u,components:{FormStep:F,...null==(r=k.flowSettings)?void 0:r.components},scope:d})}),(0,o.jsx)(n.FormConsumer,{children:()=>(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:24,paddingTop:16,borderTop:"1px solid #f0f0f0"},children:1===b.length?(0,o.jsx)(a.Ay,{type:"primary",onClick:i,children:f("Complete configuration")}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(a.Ay,{disabled:!(null==A?void 0:A.allowBack),onClick:()=>{A&&A.back()},children:f("Previous step")}),(0,o.jsx)(a.Ay,{disabled:!(null==A?void 0:A.allowNext),type:"primary",onClick:()=>{l.validate().then(()=>{A&&A.next()}).catch(e=>{console.log(f("Form validation failed"),":",e)})},style:{display:((null==A?void 0:A.current)??0)<b.length-1?"inline-block":"none"},children:f("Next step")}),(0,o.jsx)(a.Ay,{disabled:null==A?void 0:A.allowNext,type:"primary",onClick:i,style:{display:((null==A?void 0:A.current)??0)>=b.length-1?"inline-block":"none"},children:f("Complete configuration")})]})})})]})});P.open({initialValues:(0,c.ln)(C,x)})}catch(e){i(Error(`${f("Failed to import FormDialog or FormStep")}: ${e.message}`))}})()}).catch(e=>{console.error(e)})}},23183(e,t,l){l.d(t,{openStepSettingsDialog:()=>f});var o=l(74848),n=l(78880),r=l(18220),i=l(95243),a=l(84626),s=l(71021),d=l(96540),u=l(16296),c=l(48555),p=l(31108),h=l(52847);let m=(0,r.createSchemaField)(),f=async e=>{var t,l,f,g,v,y,b,x;let{model:w,flowKey:S,stepKey:M,dialogWidth:F=600,dialogTitle:A,mode:k="dialog",ctx:C,uiModeProps:P,cleanup:j}=e,I=(0,c.lW)(w),E=w.context.message;if(!w)throw E.error(I("Invalid model provided")),Error(I("Invalid model provided"));let _=w.getFlow(S),R=null==_||null==(t=_.steps)?void 0:t[M];if(!_)throw E.error(I("Flow with key {{flowKey}} not found",{flowKey:S})),Error(I("Flow with key {{flowKey}} not found",{flowKey:S}));if(!R)throw E.error(I("Step with key {{stepKey}} not found",{stepKey:M})),Error(I("Step with key {{stepKey}} not found",{stepKey:M}));let T=R.title,D=R.beforeParamsSave,N=R.afterParamsSave,O={};if(R.use){let e=null==(x=w.flowEngine)||null==(b=x.getAction)?void 0:b.call(x,R.use);e&&(O=e.defaultParams||{},T=T||e.title,D=D||e.beforeParamsSave,N=N||e.afterParamsSave)}let $=w.getFlow(S),B=await (0,c.o7)(w,$,R);if(!B)return E.info(I("This step has no configurable parameters")),{};let q=C;q.currentStep&&q.currentStep===R||q.defineProperty("currentStep",{value:R});let L=w.flowEngine,V={useFlowSettingsContext:u.s,...null==(l=L.flowSettings)?void 0:l.scopes},z=w.getStepParams(S,M)||{},K=await (0,c.gG)(R.defaultParams,q),U=await (0,c.gG)(O,q),W={...(0,i.toJS)(U),...(0,i.toJS)(K),...(0,i.toJS)(z)},H={...(0,i.toJS)(z)},Y={type:"object",properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:B}}},G=w.context.viewer[k].bind(w.context.viewer),{zIndex:J,...X}=(0,i.toJS)(P)||{},Q=e=>{var t,l;return Math.max("function"==typeof(null==(t=w.context.viewer)?void 0:t.getNextZIndex)?w.context.viewer.getNextZIndex():((null==(l=w.context.themeToken)?void 0:l.zIndexPopupBase)||1e3)+1,Number(e)||0)},Z=Q(J),ee=(0,n.createForm)({initialValues:(0,c.ln)(V,W)}),et=(null==(f=w.context.view)?void 0:f.inputArgs)||{},el=(null==C||null==(g=C.view)?void 0:g.navigation)??(null==(v=w.context.view)?void 0:v.navigation),eo={...et,...el?{navigation:el}:{},...(null==(y=(0,i.toJS)(P))?void 0:y.inputArgs)||{},__isSettingsPopup:!0};G({title:A||I(T),width:F,destroyOnClose:!0,...X,zIndex:Z,inputArgs:eo,onClose:()=>{j&&j()},content:e=>{let t=(0,h.PA)(()=>{var t;(0,d.useEffect)(()=>(0,i.autorun)(()=>{let{zIndex:t,...l}=(0,i.toJS)(P)||{};e.update({...l,zIndex:Q(t)})}),[]);let l=(0,c.ln)(V,Y);return(0,o.jsx)(r.FormProvider,{form:ee,children:(0,o.jsxs)(u.u,{value:q,children:[(0,o.jsx)(m,{schema:l,components:{...null==(t=L.flowSettings)?void 0:t.components},scope:V}),(0,o.jsx)(e.Footer,{children:(0,o.jsxs)(a.A,{align:"end",children:[(0,o.jsx)(s.Ay,{type:"default",onClick:()=>{e.close()},children:I("Cancel")}),(0,o.jsx)(s.Ay,{type:"primary",onClick:async()=>{try{await ee.submit();let t=ee.values;w.setStepParams(S,M,t),D&&await D(q,t,H),e.close(),await w.saveStepParams(),E.success(I("Configuration saved")),N&&await N(q,t,H)}catch(t){if(t instanceof c.VD)return;if(t instanceof c.sy||t instanceof p.zz)return void e.close();console.error(I("Error saving configuration"),":",t),E.error(I("Error saving configuration, please check console"))}},children:I("OK")})]})})]})})});return(0,o.jsx)(t,{})}})}},41594(e,t,l){l.d(t,{Ls:()=>a,Qp:()=>c,jx:()=>p,yG:()=>u,z5:()=>d});var o=l(2543),n=l.n(o),r=l(48555);async function i(e,t){return"function"==typeof e?await e(t):e}async function a(e,t){let l=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=e.meta??{};if(await i(o.hide,t)&&!l)return;let n={key:e.name,label:o.label||e.name,searchable:!!o.searchable,searchPlaceholder:o.searchPlaceholder,toggleable:o.toggleable,useModel:e.name,sort:o.sort||1e3,children:s(e,t)};return n.createModelOptions=o.createModelOptions||{use:e.name},n}function s(e,t){let l,o=e.meta??{};if(!1===o.children)return!1;if(o.children&&(l=o.children),e.defineChildren&&(l=e.defineChildren.bind(e)),"function"==typeof l){let e=l;l=async()=>{let l=await e(t),i=e=>null==e?void 0:e.map(e=>{let l={...e};if(l.children)l.children=Array.isArray(l.children)?i(l.children):l.children;else if(l.createModelOptions){let e=l.createModelOptions;l.createModelOptions=async function(){for(var l=arguments.length,i=Array(l),a=0;a<l;a++)i[a]=arguments[a];let s=i&&i.length>0?i[i.length-1]:void 0,d=await (0,r.mv)(null==o?void 0:o.createModelOptions,t,s),u=await (0,r.mv)(e,t,s);return n().merge({},n().cloneDeep(d),u)}}return l});return i(l)}}return l}function d(e){return async t=>{let l=await c([e])(t);if(0===l.length)return[];let o=l.shift().children;return"function"==typeof o?o(t):o}}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return async l=>{var o,n;let s=l.engine.getSubclassesOf(e),d=[];for(let e of Array.from(s.values()))await i(null==(o=e.meta)?void 0:o.hide,l)||d.push(e);if(0===(d=d.filter(e=>{for(let l of t)if("string"==typeof l){if(e.name===l)return!1}else if(e===l||(0,r.FA)(e,l))return!1;return!0}).sort((e,t)=>{var l,o;return((null==(l=e.meta)?void 0:l.sort)??1e3)-((null==(o=t.meta)?void 0:o.sort)??1e3)})).length){let t="string"==typeof e?l.engine.getModelClass(e):e;t&&!await i(null==(n=t.meta)?void 0:n.hide,l)&&(d=[t])}let u=[];for(let e of d){let t=await a(e,l);t&&u.push(t)}return u}}function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return async t=>{let l=[],o=[];for(let a of e){var n,r,i;let e="string"==typeof a?t.engine.getModelClass(a):a;if(!e)continue;let d=s(e,t);d||(d=await u(a,o)(t)),o.push(e);let c=!1;if("function"==typeof d)try{let e=await d(t);c=Array.isArray(e)?e.length>0:!!e}catch(e){c=!1}else c=Array.isArray(d)?d.length>0:!!d;if(!c)continue;let p=(null==e||null==(n=e.meta)?void 0:n.label)||("string"==typeof a?a:e.name),h="string"==typeof a?a:e.name,m=(null==e||null==(r=e.meta)?void 0:r.menuType)||"group",f=(null==e||null==(i=e.meta)?void 0:i.sort)??1e3;"submenu"===m?l.push({key:h,label:p,sort:f,children:d}):l.push({key:h,type:"group",label:p,sort:f,children:d})}return l.sort((e,t)=>((null==e?void 0:e.sort)??1e3)-((null==t?void 0:t.sort)??1e3))}}function p(e,t){let{useModel:l,fieldUseModel:o,associationPathName:n,refreshTargets:r}=t,i=t.collection||e.model.collection||e.collection,a=i.getFields(),s=[];for(let e of a){var d;if(!(null==e||null==(d=e.options)?void 0:d.interface))continue;let t=n?`${n}.${e.name}`:e.name,a="function"==typeof o?o(e):o??"FieldModel";if(a){let o={dataSourceKey:i.dataSourceKey,collectionName:i.name,fieldPath:e.name,associationPathName:n};s.push({key:t,label:e.title,toggleable:e=>{let{associationPathName:l,fieldPath:o}=e.getStepParams("fieldSettings","init")||{};return(l?`${l}.${o}`:o)===t},useModel:l,refreshTargets:r,createModelOptions:()=>({use:l,stepParams:{fieldSettings:{init:o}},subModels:{field:{use:a,stepParams:{fieldSettings:{init:o}}}}})})}}return[{key:`addField_${i.name}`,label:"",type:"group",searchable:!0,searchPlaceholder:e.t("Search fields"),children:s.filter(Boolean)}]}},76546(e,t,l){l.d(t,{pM:()=>m,qG:()=>h,qS:()=>p,JL:()=>f,Ns:()=>d,zA:()=>c,Xk:()=>g});var o=l(50467),n=l(95243),r=l(2543),i=l.n(r),a=l(16075),s=l.n(a);function d(e){var t;let l;switch(e.type){case"string":l=s().string();break;case"number":l=s().number();break;case"array":l=s().array();break;case"boolean":l=s().boolean();break;default:l=s().any()}let o=(e,t)=>{if(!t||0===Object.keys(t).length)return[];if(Array.isArray(t))return t;if("email"===e){var l;let e={...t};return(null==(l=e.tlds)?void 0:l.allow)===!0?e.tlds.allow=!1:e.tlds||(e.tlds={allow:!1}),[e]}if(["length","min","max"].includes(e))return[t.limit];if("pattern"===e){let e=null==t?void 0:t.regex;return e instanceof RegExp?[e]:[new RegExp(e)]}let o=Object.values(t);return o.length?o:[]},n=!1;return null==(t=e.rules)||t.forEach(e=>{let{name:t,args:r}=e;if("required"===t&&(n=!0),"function"==typeof l[t])try{l=l[t](...o(t,r))}catch(e){console.warn(`调用 Joi 方法 ${t} 失败:`,e)}else console.warn(`Joi schema 上不存在方法: ${t}`)}),n||(l=(l=l.optional().allow("")).optional().allow(null)),l}function u(e){let t=[],l=new Set,o=new Set,n=new Map;e.forEach(e=>{n.set(e.name,e)});let r=e=>{if(o.has(e.name))throw Error(`Circular dependency detected: ${e.name} inherits from itself through a chain`);if(!l.has(e.name)){for(let t of(o.add(e.name),e.inherits||[])){let l=n.get(t);if(!l){console.warn(`Warning: Collection ${t}, inherited by ${e.name}, not found.`);continue}r(l)}o.delete(e.name),l.add(e.name),t.push(e)}};for(let t of e)r(t);return t}class c{setFlowEngine(e){this.flowEngine=e}setRequester(e){this.requester=e}setCollectionFieldInterfaceManager(e){this.collectionFieldInterfaceManager=e}addFieldInterfaces(){var e,t;let l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];null==(t=this.collectionFieldInterfaceManager)||null==(e=t.addFieldInterfaces)||e.call(t,l)}addFieldInterfaceGroups(e){var t,l;null==(l=this.collectionFieldInterfaceManager)||null==(t=l.addFieldInterfaceGroups)||t.call(l,e)}addFieldInterfaceComponentOption(e,t){var l,o;null==(o=this.collectionFieldInterfaceManager)||null==(l=o.addFieldInterfaceComponentOption)||l.call(o,e,t)}addFieldInterfaceOperator(e,t){var l,o;null==(o=this.collectionFieldInterfaceManager)||null==(l=o.addFieldInterfaceOperator)||l.call(o,e,t)}registerLoader(e,t){this.loaders.set(e,t)}removeLoader(e){this.loaders.delete(e)}addDataSource(e){if(this.dataSources.has(e.key))throw Error(`DataSource with name ${e.key} already exists`);e instanceof p||(e=new(e.use||p)(e)),this.dataSources.set(e.key,e),e.setDataSourceManager(this)}upsertDataSource(e){if(this.dataSources.has(e.key)){var t;null==(t=this.dataSources.get(e.key))||t.patchOptions(e)}else this.addDataSource(e)}removeDataSource(e){this.dataSources.delete(e)}clearDataSources(){this.dataSources.clear()}getDataSources(){return Array.from(this.dataSources.values())}getDataSource(e){return this.dataSources.get(e)}getCollection(e,t){let l=this.getDataSource(e);if(l)return l.collectionManager.getCollection(t)}getCollectionField(e){let[t,...l]=e.split("."),o=this.getDataSource(t);if(o)return o.getCollectionField(l.join("."))}async ensureLoaded(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{force:t=!1}=e,l=this.resolveLoadKeys(e.keys),o=t?l:l.filter(e=>!this.loadedKeys.has(e));if(o.length)return this.loadingPromise||(this.loadingPromise=(async()=>{try{for(let e of o)await this.loadKey(e,{initial:!this.loadedKeys.has(e),force:t})}finally{this.loadingPromise=null}})()),this.loadingPromise}async reload(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.resolveLoadKeys(e.keys);if(t.length)return this.loadingPromise||(this.loadingPromise=(async()=>{try{for(let e of t)await this.loadKey(e,{initial:!1,force:!0})}finally{this.loadingPromise=null}})()),this.loadingPromise}async reloadDataSource(e){return this.loadingKeys.has(e)&&this.loadingPromise?this.loadingPromise:!this.loaders.has(e)&&this.loaders.has("*")?this.reload({keys:["*"]}):this.reload({keys:[e]})}resolveLoadKeys(e){let t=(null==e?void 0:e.length)?e:["main"],l=t.filter(e=>this.loaders.has(e));return this.loaders.has("*")?i().uniq(["*",...l]):l.length?l:t}getApp(){var e,t;return null==(t=this.flowEngine)||null==(e=t.context)?void 0:e.app}dispatchDataSourceEvent(e,t){var l,o;null==(o=this.getApp())||null==(l=o.eventBus)||l.dispatchEvent(new CustomEvent(e,{detail:t}))}setDataSourceState(e,t){let l=this.getDataSource(e);l&&l.patchOptions(t)}applyDataSourceLoadResult(e,t){if("*"===e)return void((null==t?void 0:t.dataSources)||[]).forEach(e=>{let{collections:t,...l}=e;if(this.upsertDataSource(l),t){var o;null==(o=this.getDataSource(l.key))||o.setCollections(t,{clearFields:!0})}});let l=this.getDataSource(e);l&&l.setCollections((null==t?void 0:t.collections)||[],{clearFields:!0})}async loadKey(e,t){let l=this.loaders.get(e);if(!l)return;this.getDataSource(e)||"*"===e||this.addDataSource({key:e});let{initial:o}=t;this.loadingKeys.add(e),"*"!==e&&this.setDataSourceState(e,{status:o?"loading":"reloading",errorMessage:void 0}),this.loadErrors.set(e,null);try{let t=await l({key:e,manager:this})||{};this.applyDataSourceLoadResult(e,t),this.loadedKeys.add(e),"*"!==e&&this.setDataSourceState(e,{status:"loaded",errorMessage:void 0}),this.dispatchDataSourceEvent("dataSource:loaded",{dataSourceKey:e,initial:o})}catch(l){let t=l instanceof Error?l:Error(String(l));throw this.loadErrors.set(e,t),"*"!==e&&this.setDataSourceState(e,{status:o?"loading-failed":"reloading-failed",errorMessage:t.message}),this.dispatchDataSourceEvent("dataSource:loadFailed",{dataSourceKey:e,initial:o,error:t}),t}finally{this.loadingKeys.delete(e)}}constructor(){(0,o._)(this,"dataSources",void 0),(0,o._)(this,"flowEngine",void 0),(0,o._)(this,"requester",void 0),(0,o._)(this,"collectionFieldInterfaceManager",void 0),(0,o._)(this,"loaders",new Map),(0,o._)(this,"loadedKeys",new Set),(0,o._)(this,"loadingKeys",new Set),(0,o._)(this,"loadErrors",new Map),(0,o._)(this,"loadingPromise",null),this.dataSources=n.observable.shallow(new Map)}}class p{get flowEngine(){return this.dataSourceManager.flowEngine}get displayName(){return this.flowEngine.translate(this.options.displayName,{ns:"lm-collections"})||this.key}get key(){return this.options.key}get name(){return this.options.key}get status(){return this.options.status}get errorMessage(){return this.options.errorMessage}setDataSourceManager(e){this.dataSourceManager=e}getCollections(){return this.collectionManager.getCollections()}getCollection(e){return this.collectionManager.getCollection(e)}getAssocation(e){return this.getAssociation(e)}getAssociation(e){return this.collectionManager.getAssociation(e)}addCollection(e){return this.collectionManager.addCollection(e)}updateCollection(e){return this.collectionManager.updateCollection(e)}upsertCollection(e){return this.collectionManager.upsertCollection(e)}upsertCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.collectionManager.upsertCollections(e,t)}setCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.collectionManager.setCollections(e,t)}removeCollection(e){return this.collectionManager.removeCollection(e)}clearCollections(){this.collectionManager.clearCollections()}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e)}patchOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.assign(this.options,e)}reload(){return this.dataSourceManager.reloadDataSource(this.key)}getCollectionField(e){let[t,...l]=e.split("."),o=l.join("."),n=this.getCollection(t);if(!n)return;let r=n.getFieldByPath(o);if(r)return r}constructor(e={}){(0,o._)(this,"dataSourceManager",void 0),(0,o._)(this,"collectionManager",void 0),(0,o._)(this,"options",void 0),this.options=(0,n.observable)({...e}),this.collectionManager=new h(this)}}class h{resetCaches(){this.childrenCollectionsName={},this.allCollectionsInheritChain=void 0}get flowEngine(){return this.dataSource.flowEngine}addCollection(e){let t;(t=e instanceof m?e:new m(e)).setDataSource(this.dataSource),t.initInherits(),this.collections.set(t.name,t),this.resetCaches()}removeCollection(e){this.collections.delete(e),this.resetCaches()}updateCollection(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=this.getCollection(e.name);if(!l)throw Error(`Collection ${e.name} not found`);l.setOptions(e,t),this.resetCaches()}upsertCollection(e){return this.collections.has(e.name)?this.updateCollection(e):this.addCollection(e),this.getCollection(e.name)}upsertCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(let l of u(e))this.collections.has(l.name)?this.updateCollection(l,t):this.addCollection(l);this.resetCaches()}setCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.clearCollections(),this.upsertCollections(e,t)}sortCollectionsByInherits(e){let t=new Map;for(let l of e)t.set(l.name,l);let l={},o={};for(let t of e)l[t.name]=new Set,o[t.name]=0;for(let t of e)for(let e of t.inherits||[])l[e]||(l[e]=new Set),l[e].add(t.name),o[t.name]=(o[t.name]||0)+1;let n=[];for(let e in o)0===o[e]&&n.push(e);let r=[];for(;n.length;){let e=n.shift();for(let i of(t.has(e)&&r.push(t.get(e)),l[e]||[]))o[i]--,0===o[i]&&n.push(i)}if(r.length!==e.length)throw Error("Collection inherits has circular dependency!");return r}getCollection(e){if(e.includes(".")){let[t,l]=e.split("."),o=this.getCollection(t);if(!o)throw Error(`Collection ${t} not found in data source ${this.dataSource.key}`);let n=o.getField(l);if(!n)throw Error(`Field ${l} not found in collection ${t}`);return n.targetCollection}return this.collections.get(e)}getCollections(){return i().sortBy(Array.from(this.collections.values()).filter(e=>!e.hidden),"sort")}clearCollections(){this.collections.clear(),this.resetCaches()}getAssociation(e){let[t,l]=e.split("."),o=this.getCollection(t);if(!o)throw Error(`Collection ${t} not found in data source ${this.dataSource.key}`);return o.getField(l)}getChildrenCollections(e){let t=[],l=Array.from(this.collections.values()),o=e=>(l.filter(t=>{var l;return null==(l=t.options.inherits)?void 0:l.includes(e)}).forEach(e=>{let l=e.name;return t.push(e),o(l)}),t);return o(e)}getChildrenCollectionsName(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],l=t?"supportView":"notSupportView";if(this.childrenCollectionsName[l])return this.childrenCollectionsName[l].slice();let o=[],n=[...this.getCollections()],r=e=>(n.filter(t=>{var l;return l=[...t.inherits],l.includes(e)}).forEach(e=>{let t=e.name;return o.push(t),r(t)}),t&&n.filter(t=>{var l;return l=[...t.sources],l.length===1&&(null==t?void 0:t.sources[0])===e}).forEach(e=>{let t=e.name;return o.push(e.name),r(t)}),i().uniq(o));return this.childrenCollectionsName[l]=r(e),this.childrenCollectionsName[l]}getAllCollectionsInheritChain(e){if(this.allCollectionsInheritChain)return this.allCollectionsInheritChain.slice();let t=[e],l=e=>{let o=this.getCollection(e);if(o){let{inherits:n}=o,r=this.getChildrenCollectionsName(e);if(n)for(let e=0;e<n.length;e++){let o=n[e];t.includes(o)||(t.push(o),l(o))}if(r)for(let e=0;e<r.length;e++){let o=this.getCollection(r[e]).name;t.includes(o)||(t.push(o),l(o))}}return t};return this.allCollectionsInheritChain=l(e),this.allCollectionsInheritChain||[]}constructor(e){(0,o._)(this,"dataSource",void 0),(0,o._)(this,"collections",void 0),(0,o._)(this,"allCollectionsInheritChain",void 0),(0,o._)(this,"childrenCollectionsName",void 0),this.dataSource=e,this.childrenCollectionsName={},this.collections=n.observable.shallow(new Map)}}class m{clone(){let e=new m(i().cloneDeep(this.options));return e.setDataSource(this.dataSource),e}getFilterByTK(e){if(!e)throw Error("Record is required to get filterByTk");if(Array.isArray(e))return e.map(e=>this.getFilterByTK(e));if(!this.filterTargetKey)throw Error(`filterTargetKey is not defined for collection ${this.name}`);return"string"==typeof this.filterTargetKey?e[this.filterTargetKey]:Array.isArray(this.filterTargetKey)&&1===this.filterTargetKey.length?e[this.filterTargetKey[0]]:i().pick(e,this.filterTargetKey)}get titleableFields(){return this.getFields().filter(e=>e.titleable)}get hidden(){return this.options.hidden||!1}get flowEngine(){return this.dataSource.flowEngine}get collectionManager(){return this.dataSource.collectionManager}get sort(){return this.options.sort||0}get filterTargetKey(){return this.options.filterTargetKey}get dataSourceKey(){return this.dataSource.key}get name(){return this.options.name}get template(){return this.options.template}get storage(){return this.options.storage||"local"}get title(){return this.flowEngine.translate(this.options.title,{ns:"lm-collections"})||this.name}get titleCollectionField(){let e=this.options.titleField||this.filterTargetKey;if(Array.isArray(e)){if(1!==e.length)return;return this.getField(e[0])}return this.getField(e)}initInherits(){for(let e of(this.inherits.clear(),this.options.inherits||[])){let t=this.collectionManager.getCollection(e);if(!t){console.warn(`Warning: Collection ${e} not found for collection ${this.name}`);continue}this.inherits.set(e,t)}}setDataSource(e){this.dataSource=e}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e),this.initInherits(),t.clearFields&&this.clearFields(),this.upsertFields(this.options.fields||[])}setOption(e,t){this.options[e]=t}getFields(){let e=new Map;for(let t of this.inherits.values())if(t&&"function"==typeof t.getFields)for(let l of t.getFields())e.set(l.name,l);for(let[t,l]of this.fields.entries())e.set(t,l);return Array.from(e.values())}getToOneAssociationFields(){return this.getAssociationFields(["one"])}getAssociationFields(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.includes("new")?this.getFields().filter(e=>["hasMany","belongsToMany","belongsToArray"].includes(e.type)):e.includes("many")&&e.includes("one")?this.getFields().filter(e=>e.isAssociationField()):e.includes("many")?this.getFields().filter(e=>["hasMany","belongsToMany","belongsToArray"].includes(e.type)):e.includes("one")?this.getFields().filter(e=>["hasOne","belongsTo"].includes(e.type)):this.getFields().filter(e=>e.isAssociationField())}mapFields(e){return this.getFields().map(e)}setFields(e){for(let t of(this.fields.clear(),e))this.addField(t)}upsertFields(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];for(let t of e)this.fields.has(t.name)?this.fields.get(t.name).setOptions(t):this.addField(t)}getFieldByPath(e){let[t,...l]=e.split("."),o=this.getField(t);return 0===l.length?o:(null==o?void 0:o.targetCollection)?o.targetCollection.getFieldByPath(l.join(".")):null}getField(e){return this.fields.get(e)}getFullFieldPath(e){return this.dataSource.key+"."+this.name+"."+e}addField(e){if(e.name&&this.fields.has(e.name))throw Error(`Field with name ${e.name} already exists in collection ${this.name}`);if(e instanceof f)e.setCollection(this),this.fields.set(e.name,e);else{let t=new f(e);t.setCollection(this),this.fields.set(t.name,t)}}removeField(e){return this.fields.delete(e)}clearFields(){return this.fields.clear()}refresh(){}getRelationshipFields(){let e=["o2o","oho","obo","m2o","createdBy","updatedBy","o2m","m2m","linkTo","chinaRegion","mbm"];return this.getFields().filter(t=>e.includes(t.interface))}getRelatedCollections(){let e=this.getRelationshipFields(),t=[],l=new Set;for(let o of e)if(o.target&&!l.has(o.target)){let e=this.collectionManager.getCollection(o.target);e&&e.name!==this.name&&(t.push(e),l.add(o.target))}return t}hasRelationshipFields(){return this.getRelationshipFields().length>0}constructor(e={}){(0,o._)(this,"fields",void 0),(0,o._)(this,"options",void 0),(0,o._)(this,"inherits",void 0),(0,o._)(this,"dataSource",void 0),this.options=(0,n.observable)({...e}),this.fields=n.observable.shallow(new Map),this.inherits=n.observable.shallow(new Map),this.setFields(e.fields||[])}}class f{setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e)}setCollection(e){this.collection=e}get targetCollectionTitleFieldName(){var e,t;return null==(t=this.targetCollection)||null==(e=t.titleCollectionField)?void 0:e.name}get targetCollectionTitleField(){var e;return null==(e=this.targetCollection)?void 0:e.titleCollectionField}get flowEngine(){return this.collection.flowEngine}get dataSourceKey(){var e;return null==(e=this.collection)?void 0:e.dataSourceKey}get resourceName(){return`${this.collection.name}.${this.name}`}get collectionName(){var e;return(null==(e=this.collection)?void 0:e.name)||this.options.collectionName}get readonly(){var e;return this.options.readonly||(null==(e=this.options.uiSchema)?void 0:e["x-read-pretty"])||!1}get titleable(){return!!(this.options.titleable??this.options.titleUsable)}get fullpath(){return this.collection.dataSource.key+"."+this.collection.name+"."+this.name}get name(){return this.options.name}get type(){return this.options.type}get dataType(){return this.options.dataType}get foreignKey(){return this.options.foreignKey}get targetKey(){return this.options.targetKey||this.targetCollection.filterTargetKey}get sourceKey(){return this.options.sourceKey}get target(){return this.options.target}get title(){var e,t,l;let o=(null==(t=this.options)||null==(e=t.uiSchema)?void 0:e.title)||(null==(l=this.options)?void 0:l.title);return this.flowEngine.translate(o,{ns:"lm-collections"})||this.options.name}set title(e){this.options.title=e}get enum(){var e;let t=(null==(e=this.options.uiSchema)?void 0:e.enum)||[];return"integer"===this.type?t.map(e=>"object"!=typeof e||null===e.value||void 0===e.value?e:{...e,label:e.label?this.flowEngine.translate(e.label,{ns:"lm-collections"}):e.label,value:Number(e.value)}):t.map(e=>({...e,label:this.flowEngine.translate(e.label,{ns:"lm-collections"})}))}get defaultValue(){return null==this.options.defaultValue?void 0:this.options.defaultValue}get interface(){return this.options.interface}get filterable(){var e;return this.options.filterable||(null==(e=this.getInterfaceOptions())?void 0:e.filterable)}get inputable(){return this.options.inputable}get uiSchema(){return this.options.uiSchema||{}}get targetCollection(){var e;return this.options.target&&(null==(e=this.collection)?void 0:e.collectionManager.getCollection(this.options.target))}get validation(){return this.options.validation}getComponentProps(){var e,t;let{type:l,target:o}=this.options,n=i().omitBy({...i().omit((null==(e=this.options.uiSchema)?void 0:e["x-component-props"])||{},"fieldNames"),options:this.enum.length?this.enum:void 0,mode:"array"===this.type?"multiple":void 0,multiple:o?["belongsToMany","hasMany","belongsToArray"].includes(l):void 0,maxCount:o&&!["belongsToMany","hasMany","belongsToArray"].includes(l)?1:void 0,target:o,template:null==(t=this.targetCollection)?void 0:t.template},i().isUndefined);if(this.validation){let e=[],t=d(this.validation),l=this.title;e.push({validator:(e,o)=>{let{error:n}=t.validate(o,{context:{label:l},abortEarly:!1});return n?Promise.reject(n.details.map(e=>e.message.replace(/"value"/g,`"${l}"`)).join(", ")):Promise.resolve()}}),n.rules=e}return n}getFields(){if(!this.options.target)return[];if(!this.targetCollection)throw Error(`Target collection ${this.options.target} not found for field ${this.name}`);return this.targetCollection.getFields()}getInterfaceOptions(){return this.flowEngine.context.app.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(this.interface)}getFilterOperators(){var e;let t=this.getInterfaceOptions();return(null==t||null==(e=t.filterable)?void 0:e.operators)||[]}getSubclassesOf(e){return this.flowEngine.getSubclassesOf(e,(e,t)=>g(e.supportedFieldInterfaces,this.interface))}getFirstSubclassNameOf(e){for(let[t,l]of this.getSubclassesOf(e))if("*"!==l.supportedFieldInterfaces)return t}isAssociationField(){return["belongsToMany","belongsTo","hasMany","hasOne","belongsToArray"].includes(this.type)}isRelationshipField(){return["o2o","oho","obo","m2o","createdBy","updatedBy","o2m","m2m","linkTo","chinaRegion","mbm"].includes(this.interface)}constructor(e){(0,o._)(this,"options",void 0),(0,o._)(this,"collection",void 0),this.options=(0,n.observable)({...e})}}function g(e,t){return!!e&&("*"===e||("string"==typeof e?e===t:!!Array.isArray(e)&&(e.includes("*")||e.includes(t))))}},48036(e,t,l){l.d(t,{v:()=>n});var o=l(50467);class n{setPaused(e){this.paused=e}on(e,t){var l,o;((l=this.events)[o=e]||(l[o]=[])).push(t)}off(e,t){this.events[e]=(this.events[e]||[]).filter(e=>e!==t)}emit(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];this.paused||(this.events[e]||[]).forEach(e=>e(...l))}async emitAsync(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];if(!this.paused)for(let t of(this.events[e]||[]).slice())await t(...l)}constructor(){(0,o._)(this,"events",{}),(0,o._)(this,"paused",!1)}}},26955(e,t,l){l.d(t,{L:()=>n});var o=l(50467);class n{onEventRegistered(){}registerEvents(e){for(let[,t]of Object.entries(e||{}))this.registerEvent(t)}registerEvent(e){if(!(null==e?void 0:e.name))throw Error("Event must have a name.");this.events.has(e.name)&&console.warn(`Event '${e.name}' is already registered. It will be overwritten.`),this.events.set(e.name,e),this.onEventRegistered()}constructor(){(0,o._)(this,"events",new Map)}}},29007(e,t,l){l.d(t,{W5:()=>ej,uk:()=>eW,Hl:()=>eP,o0:()=>ek,d6:()=>eC,cB:()=>eg,Bt:()=>eL});var o=l(58587),n=l(18150),r=l(68238),i=l(88243),a=l(16213),s=l(50467),d=l(95243),u=l(88909),c=l(14264),p=l(2543),h=l.n(p),m=l(55373),f=l.n(m),g=l(96540),v=l(5338),y=l.t(v,2),b=l(63128);class x{setData(e){this.data=h().cloneDeep(e)}setMeta(e){this.meta=h().cloneDeep(e)}async load(){var e,t,l,o;let n=(null==(o=this.flowEngine)||null==(l=o.context)||null==(t=l.api)||null==(e=t.auth)?void 0:e.token)||"";this.loaded&&this.lastToken!==n&&(this.loaded=!1,this.loadingPromise=null,this.data={},this.meta={});let{data:r}=await this.flowEngine.context.api.request({url:"roles:check"});this.data=(null==r?void 0:r.data)||{},this.meta=(null==r?void 0:r.meta)||{},this.loaded=!0,this.lastToken=n,await this.loadingPromise}getActionAlias(e){var t;return(null==(t=this.data.actionAlias)?void 0:t[e])||e}inResources(e,t){var l,o,n;let{dataSources:r}=(null==(l=this)?void 0:l.meta)||{};return null==(n=({...this.data,...(0,p.omit)(null==r?void 0:r[t],"snippets")}).resources)||null==(o=n.includes)?void 0:o.call(n,e)}getResourceActionParams(e,t,l){var o,n,r;let i=this.getActionAlias(t),{dataSources:a}=(null==(o=this)?void 0:o.meta)||{},s={...this.data,...(0,p.omit)(null==a?void 0:a[l],"snippets")};return(null==(n=s.actions)?void 0:n[`${e}:${i}`])||(null==(r=s.actions)?void 0:r[t])}getStrategyActionParams(e,t){var l,o,n;let r=this.getActionAlias(e),{dataSources:i}=(null==(l=this)?void 0:l.meta)||{},a={...this.data,...(0,p.omit)(null==i?void 0:i[t],"snippets")};return(null==a||null==(n=a.strategy)||null==(o=n.actions)?void 0:o.find(e=>{let[t]=e.split(":");return t===r}))?{}:null}parseAction(e){var t;let{resourceName:l,actionName:o,dataSourceKey:n="main",recordPkValue:r,allowedActions:i}=e,a=(null==l?void 0:l.includes("."))&&(null==(t=this.flowEngine.context.dataSourceManager.getDataSource(n).collectionManager.getAssociation(l))?void 0:t.target);return this.getIgnoreScope(e)||this.verifyScope(o,r,i)?this.inResources(a,n)?this.getResourceActionParams(a,o,n):this.inResources(l,n)?this.getResourceActionParams(l,o,n):this.getStrategyActionParams(o,n):null}parseField(e){let{fields:t}=e,l=this.parseAction(e),o=[].concat((null==l?void 0:l.whitelist)||[]).concat((null==l?void 0:l.fields)||[]).concat((null==l?void 0:l.appends)||[]);return!!l&&!Object.keys(l).length||o.includes(t[0])}async aclCheck(e){let{allowAll:t}=this.data;return!!t||(e.fields?this.parseField(e):this.parseAction(e))}constructor(e){(0,s._)(this,"flowEngine",void 0),(0,s._)(this,"data",void 0),(0,s._)(this,"meta",void 0),(0,s._)(this,"loaded",void 0),(0,s._)(this,"loadingPromise",void 0),(0,s._)(this,"lastToken",void 0),(0,s._)(this,"getIgnoreScope",void 0),(0,s._)(this,"verifyScope",void 0),this.flowEngine=e,this.data={},this.meta={},this.loaded=!1,this.loadingPromise=null,this.lastToken=null,this.getIgnoreScope=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{recordPkValue:t,allowedActions:l,actionName:o}=e,n=!1;return e.ignoreScope&&(n=!0),"create"===o&&(n=!0),t&&l||(n=!0),n},this.verifyScope=(e,t,l)=>{let o=this.getActionAlias(e),n=null==l?void 0:l[o];return Array.isArray(n)?n.map(e=>String(e)).includes(String(t)):null}}}let w=Symbol.toPrimitive;class S{toString(){return`{{${this.path.join(".")}}}`}valueOf(){return this.toString()}[w](){return this.toString()}static create(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["ctx"];return new Proxy(new S(e),{get(t,l,o){if("symbol"==typeof l)return;if(l in t){let e=t[l];return"function"==typeof e?e.bind(t):e}let n=[...e,l.toString()];return S.create(n)}})}constructor(e){(0,s._)(this,"path",void 0),this.path=e}}var M=l(76546),F=l(81440);class A{translate(e,t){return!e||"string"!=typeof e||(null==t?void 0:t.compareWith)&&e===t.compareWith?e:this.isTemplate(e)?this.compileTemplate(e):this.translateKey(e,t)}translateKey(e,t){var l,o;if(null==(o=this.context)||null==(l=o.i18n)?void 0:l.t){let l=this.context.i18n.t(e,t);return null==l||""===l?e:l}return e}isTemplate(e){return/\{\{\s*t\s*\(\s*["'`].*?["'`]\s*(?:,\s*.*?)?\s*\)\s*\}\}/g.test(e)}compileTemplate(e){return e.replace(/\{\{\s*t\s*\(\s*["'`](.*?)["'`]\s*(?:,\s*((?:[^{}]|\{[^}]*\})*?))?\s*\)\s*\}\}/g,(e,t,l)=>{try{let o={};if(l&&(l=l.trim()).startsWith("{")&&l.endsWith("}"))try{o=Function("$root",`with($root) { return (${l}); }`)({})}catch(t){return e}return this.translateKey(t,o)}catch(t){return console.warn(`FlowEngine: Failed to compile template "${e}":`,t),e}})}constructor(e){(0,s._)(this,"context",void 0),this.context=e}}var k=l(91013),C=l(27667),P=l(48555),j=l(31108),I=l(81982),E=l(22928),_=l(73398),R=l(37966),T=l(62572),D=l(74353),N=l.n(D),O=l(98192),$=l(47684),B=l(51143);function q(e){try{if(!e||"object"!=typeof e&&"function"!=typeof e)return[];return Object.getOwnPropertyNames(e)}catch(e){return[]}}function L(e,t){if(!e.length)return[];if(!t.length)return[...e];let l=new Set(t),o=[];for(let t of e)l.has(t)||o.push(t);return o}async function V(e){let t,l=globalThis;l.__nocobaseRunjsModuleLoadLock=(l.__nocobaseRunjsModuleLoadLock||Promise.resolve()).catch(()=>{});let o=l.__nocobaseRunjsModuleLoadLock,n=new Promise(e=>{t=e});l.__nocobaseRunjsModuleLoadLock=o.then(()=>n),await o;try{return await e()}finally{null==t||t()}}function z(){let e=globalThis,t=null==e?void 0:e.define,l=null==t?void 0:t.amd;if(!t||!l)return()=>{};let o=Object.getOwnPropertyDescriptor(t,"amd"),n=!!o,r=l;try{(null==o?void 0:o.writable)?t.amd=void 0:(null==o?void 0:o.configurable)?delete t.amd:t.amd=void 0}catch(e){}return()=>{try{if(n&&o)return void Object.defineProperty(t,"amd",o);t.amd=r}catch(e){}}}function K(){var e,t;let l=globalThis,o=null==l||null==(e=l.requirejs)?void 0:e.requirejs,n=null==o||null==(t=o.s)?void 0:t.contexts;if(!n||"object"!=typeof n)return!1;for(let e of Object.keys(n)){let t=n[e],l=null==t?void 0:t.registry;if(l&&"object"==typeof l)for(let e of Object.keys(l)){let t=l[e];if(!t||"object"!=typeof t||!t.enabled||t.error)continue;let o=t.map;if(o&&"object"==typeof o&&!t.inited&&t.fetched&&o.isDefine)return!0}}return!1}async function U(e){let t=Math.max(0,(null==e?void 0:e.timeoutMs)??1500),l=Math.max(10,(null==e?void 0:e.pollMs)??30);if(0===t)return;let o=Date.now();for(;K();){if(Date.now()-o>=t)return;await new Promise(e=>setTimeout(e,l))}}async function W(e,t){let l="string"==typeof e?e.trim():"";if(!l)return;let o=globalThis;o.__nocobaseImportAsyncPrefetchCache=o.__nocobaseImportAsyncPrefetchCache||new Map;let n=o.__nocobaseImportAsyncPrefetchCache;if(n.has(l))return await n.get(l);let r=Math.max(0,(null==t?void 0:t.timeoutMs)??5e3),i=(async()=>{try{var e,t,o;if("u">typeof document&&(null==(e=document)?void 0:e.createElement)){let e=new URL(l,(null==(o=globalThis)||null==(t=o.location)?void 0:t.href)||void 0).toString(),n=document.head||document.getElementsByTagName("head")[0];if(n){let t=`link[rel="modulepreload"][href="${e}"]`;if(!document.querySelector(t)){let t=document.createElement("link");return t.rel="modulepreload",t.href=e,t.crossOrigin="anonymous",await new Promise(e=>{let l=!1,o=()=>{l||(l=!0,t.onload=null,t.onerror=null,e())},i=r>0?setTimeout(()=>{o()},r):void 0;t.onload=()=>{i&&clearTimeout(i),o()},t.onerror=()=>{i&&clearTimeout(i),o()},n.appendChild(t)})}}}}catch(e){}try{if("function"!=typeof fetch)return;let e="function"==typeof AbortController?new AbortController:void 0,t=e&&r>0?setTimeout(()=>{try{e.abort()}catch(e){}},r):void 0,o=await fetch(l,{method:"GET",mode:"cors",credentials:"omit",cache:"force-cache",signal:null==e?void 0:e.signal});if(t&&clearTimeout(t),o&&o.ok&&"function"==typeof o.arrayBuffer)try{await o.arrayBuffer()}catch(e){}}catch(e){}})().catch(()=>{});return n.set(l,i),await i}async function H(e,t){return await V(async()=>{let l,o,n="u">typeof window?q(window):[],r="u">typeof document?q(document):[];try{l=await new Promise((l,o)=>{e?e([t],function(){for(var e=arguments.length,t=Array(e),o=0;o<e;o++)t[o]=arguments[o];l(t[0])},o):o(Error("requirejs is not available"))})}catch(e){o=e}finally{let e="u">typeof window?q(window):[],t="u">typeof document?q(document):[],l=L(e,n),o=L(t,r);(0,B.Vm)(l),(0,B.yz)(o)}if(o)throw o;return l})}async function Y(e){var t,l;if(!e||"string"!=typeof e)throw Error("invalid url");let o=e.trim(),n=!!(null==(l=globalThis)||null==(t=l.define)?void 0:t.amd);return n&&await W(o),await V(async()=>{await U();let e=n?z():()=>{};try{let e=()=>import(o),t=()=>(0,eval)("u => import(u)")(o);try{return await e()}catch(e){try{return await t()}catch(t){throw t||e}}}finally{e()}})}function G(e){let t=e.indexOf("?"),l=e.indexOf("#"),o=t>=0&&l>=0?Math.min(t,l):t>=0?t:l;return o>=0?e.slice(0,o):e}function J(e){if(!e||"string"!=typeof e)return null;let t=G(e).trim();if(!t||t.startsWith("http://")||t.startsWith("https://"))return null;let l=t.replace(/^\//,"");if(!l)return null;if(l.startsWith("@")){let e=l.match(/^(@[^/]+\/[^/]+?)(?:@([^/]+))?(?:\/(.*))?$/);return e?{name:e[1],version:e[2],subpath:e[3]}:null}let o=l.match(/^([^/]+?)(?:@([^/]+))?(?:\/(.*))?$/);return o?{name:o[1],version:o[2],subpath:o[3]}:null}function X(e,t){if(!e||"string"!=typeof e)return e;let l=e.trim(),o=l.indexOf("#"),n=o>=0?l.slice(0,o):l,r=o>=0?l.slice(o):"",i=n.indexOf("?"),a=i>=0?n.slice(0,i):n,s=new URLSearchParams(i>=0?n.slice(i+1):"");for(let[e,l]of Object.entries(t))e&&(s.has(e)||s.set(e,l));let d=s.toString();return d?`${a}?${d}${r}`:`${a}${r}`}function Q(){let e=globalThis;if("string"==typeof(null==e?void 0:e.__esm_cdn_base_url__))return e.__esm_cdn_base_url__;let t="u">typeof window?window:null==e?void 0:e.window;return"string"==typeof(null==t?void 0:t.__esm_cdn_base_url__)?t.__esm_cdn_base_url__:"https://esm.sh"}function Z(e){if(e&&"object"==typeof e&&"default"in e){let t=Object.keys(e);if(1===t.length&&"default"===t[0])return e.default}return e}async function ee(e,t,l){if(!t||"string"!=typeof t)throw Error("invalid url");let o=t,n=J(t);if((null==n?void 0:n.name)==="antd"&&!n.subpath&&"string"==typeof Q()){let t={bundle:"1"},l=null==e?void 0:e.__runjsExternalReact,n=null==l?void 0:l.version;n&&"string"==typeof n&&(t.deps=`react@${n},react-dom@${n}`),o=X(o,t)}let r=(0,$.i)(o,{addSuffix:(null==l?void 0:l.addSuffix)??!0}),i=(null==l?void 0:l.importer)||Y,a=globalThis;a.__nocobaseImportAsyncCache=a.__nocobaseImportAsyncCache||new Map;let s=a.__nocobaseImportAsyncCache,d=s.get(r)||(async()=>Z(await i(r)))();s.set(r,d);let u=await d,c=null==e?void 0:e.libs;if(!c||"object"!=typeof c)return u;let p=J(o);if(!p)return u;let h=p.subpath||"";if("react"!==p.name||h)"react-dom"===p.name&&("client"===h||h.startsWith("client/"))?((0,O.qf)(e,"ReactDOM",u),e.__runjsExternalReactDOM={specifier:t,version:p.version,url:r}):"antd"!==p.name||h?"@ant-design/icons"!==p.name||h||((0,O.qf)(e,"antdIcons",u,{topLevelKey:!1}),e.__runjsExternalAntdIcons={specifier:t,version:p.version,url:r}):((0,O.qf)(e,"antd",u),e.__runjsExternalAntd={specifier:t,version:p.version,url:r});else{(0,O.qf)(e,"React",u),e.__runjsExternalReact={specifier:t,version:p.version,url:r};let l=p.version?`react-dom@${p.version}/client`:"react-dom/client";try{await e.importAsync(l)}catch(o){let e=Error(`External React has been loaded via ctx.importAsync("${t}"), but auto-loading "${l}" failed.
1025
+ })()`,o=new Compartment(this.globals);try{let e=o.evaluate(l),t=new Promise((e,t)=>setTimeout(()=>t(Error("Execution timed out")),this.timeoutMs)),n=await Promise.race([e,t]);return{success:!0,value:n}}catch(o){if(o instanceof n.sy||o instanceof n.zz)throw o;let t=a(e),l=s(o,t)&&t?d(o,t):o;return console.error(l),{success:!1,error:l,timeout:(null==l?void 0:l.message)==="Execution timed out"}}}constructor(e={}){var t,l;(0,o._)(this,"globals",void 0),(0,o._)(this,"timeoutMs",void 0);let n=e=>{if("u">typeof window&&"function"==typeof window[e])return window[e].bind(window);let t=globalThis[e];return"function"==typeof t?t.bind(globalThis):t},r=e.globals||{},i={};if(!Object.prototype.hasOwnProperty.call(r,"Blob"))try{let e=null==(t=r.window)?void 0:t.Blob;void 0!==e&&(i.Blob=e)}catch{}if(!Object.prototype.hasOwnProperty.call(r,"URL"))try{let e=null==(l=r.window)?void 0:l.URL;void 0!==e&&(i.URL=e)}catch{}this.globals={console,setTimeout:n("setTimeout"),clearTimeout:n("clearTimeout"),setInterval:n("setInterval"),clearInterval:n("clearInterval"),...i,...r},this.timeoutMs=e.timeoutMs??5e3}}},47451(e,t,l){l.d(t,{_:()=>r});var o=l(81440),n=l(16639);function r(e){let t=new o.$;Object.defineProperty(t,n.i6,{value:"view",configurable:!0}),e.modelRepository&&t.setModelRepository(e.modelRepository),t.context.addDelegate(e.context);let l=t.unlinkFromStack.bind(t);t.unlinkFromStack=function(){var e;return null==(e=t.disposeScheduler)||e.call(t),l()};let r=new Set(["_modelInstances","_applyFlowCache","executor","context",n.i6,"previousEngine","nextEngine","emitter","_modelOperationScheduler","getScheduler","scheduleModelOperation","disposeScheduler","unlinkFromStack","linkAfter","_previousEngine","_nextEngine","getModel","_destroyView","setDestroyView","destroyView"]),i={get(t,l,o){if(r.has(l))return Reflect.get(t,l,o);let n=Reflect.get(e,l,o);return"registerModels"===l&&"function"==typeof n?n.bind(e):n},set:(t,l,o)=>r.has(l)?Reflect.set(t,l,o):Reflect.set(e,l,o),has:(t,l)=>l in t||l in e};return t.linkAfter(e),new Proxy(t,i)}},64171(e,t,l){l.d(t,{Z:()=>n});var o=l(50467);class n{onActionRegistered(){}registerActions(e){for(let[,t]of Object.entries(e||{}))this.registerAction(t)}registerAction(e){if(!(null==e?void 0:e.name))throw Error("Action must have a name.");this.actions.has(e.name)&&console.warn(`Action '${e.name}' is already registered. It will be overwritten.`),this.actions.set(e.name,e),this.onActionRegistered()}constructor(){(0,o._)(this,"actions",new Map)}}},31102(e,t,l){l.d(t,{e:()=>s});var o=l(74848),n=l(96540),r=l(42443),i=l(89013);let a=["colon","dependencies","extra","getValueFromEvent","getValueProps","hasFeedback","help","htmlFor","initialValue","label","labelAlign","labelCol","messageVariables","name","normalize","noStyle","preserve","rules","tooltip","trigger","validateStatus","validateTrigger","valuePropName","wrapperCol","labelWidth","labelWrap","layout","required","showLabel"],s=e=>{let{children:t,showLabel:l=!0,labelWidth:s,...d}=e,u=Object.fromEntries(Object.entries(d).filter(e=>{let[t]=e;return!a.includes(t)})),c="function"==typeof t?t:n.Children.map(t,e=>n.isValidElement(e)?n.cloneElement(e,{...u}):e),{label:p,labelWrap:h,colon:m=!0,layout:f}=d,g=!f||"vertical"===f||h,v=()=>l?g?(0,o.jsxs)("div",{style:{width:"100%",whiteSpace:"normal",wordBreak:"break-word",display:"flex",alignItems:"center",justifyContent:"flex-start",fontWeight:600},children:[(0,o.jsx)("span",{style:{flex:1},children:p}),m&&(0,o.jsx)("span",{style:{marginLeft:4,flexShrink:0},children:":"})]}):(0,o.jsx)(r.A,{title:p,children:(0,o.jsxs)("div",{style:{display:"inline-flex",alignItems:"center",maxWidth:("number"==typeof s?s:120)-20,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",verticalAlign:"middle",fontWeight:600},children:[(0,o.jsx)("span",{style:{flexShrink:1,overflow:"hidden",textOverflow:"ellipsis"},children:p}),m&&(0,o.jsx)("span",{style:{marginLeft:4,flexShrink:0},children:":"})]})}):null;return(0,o.jsx)(i.A.Item,{...d,labelCol:{style:{width:s}},layout:f,label:v(),colon:!1,extra:d.extra&&(0,o.jsx)("span",{style:{whiteSpace:"pre-wrap"},children:d.extra}),tooltip:d.tooltip&&{title:d.tooltip,overlayInnerStyle:{whiteSpace:"pre-line"}},children:c})}},61793(e,t,l){let o,n;l.d(t,{D:()=>w});var r=l(74848),i=l(4888),a=l(96540),s=l(42524),d=l(27253),u=l(35710);let c=(e,t)=>{let{getPrefixCls:l}=(0,a.useContext)(i.Ay.ConfigContext)||{};if("ConfigContext"in i.Ay)return(null==l?void 0:l(e,null==t?void 0:t.prefixCls))||"";{let l=(null==t?void 0:t.prefixCls)??"ant-";return`${l}${e??""}`}},{ConfigContext:p}=i.Ay,h=()=>(0,a.useContext)(p),m=u.A.useToken,f=(e,t)=>{let{fontFamily:l,fontSize:o}=e,n=`[class^="${t}"], [class*=" ${t}"]`;return{[n]:{fontFamily:l,fontSize:o,boxSizing:"border-box","&::before, &::after":{boxSizing:"border-box"},[n]:{boxSizing:"border-box","&::before, &::after":{boxSizing:"border-box"}}}}},g=(o="nb-mobile-action-drawer",n=e=>{let{componentCls:t}=e;return{[t]:{".nb-mobile-action-drawer-header":{height:"var(--nb-mobile-page-header-height)",display:"flex",alignItems:"center",justifyContent:"space-between",borderBottom:`1px solid ${e.colorSplit}`,position:"sticky",top:0,backgroundColor:"white",zIndex:1e3,"& + .nb-grid-container > .nb-grid > .nb-grid-warp > .ant-btn":{margin:12}},".nb-mobile-action-drawer-placeholder":{display:"inline-block",padding:12,visibility:"hidden"},".nb-mobile-action-drawer-close-icon":{display:"inline-block",padding:12,cursor:"pointer"},".nb-mobile-action-drawer-body":{borderTopLeftRadius:8,borderTopRightRadius:8,maxHeight:"calc(100% - var(--nb-mobile-page-header-height))",overflowY:"auto",overflowX:"hidden",backgroundColor:e.colorBgLayout,"& > .nb-grid-container":{padding:`${e.paddingPageVertical}px ${e.paddingPageHorizontal}px`},".ant-tabs-nav":{marginBottom:"0px !important",padding:`0 ${e.paddingPageHorizontal+e.borderRadiusBlock/2}px`,backgroundColor:e.colorBgContainer},"& > .nb-grid-container > .nb-grid > .nb-grid-warp > .nb-grid-row:nth-last-child(2) .noco-card-item":{marginBottom:0,"& > .ant-card":{marginBottom:"0 !important"}}},".nb-mobile-action-drawer-footer":{padding:"8px var(--nb-mobile-page-tabs-content-padding)",display:"flex",alignItems:"center",justifyContent:"flex-end",position:"sticky",bottom:0,left:0,right:0,zIndex:1e3,borderTop:`1px solid ${e.colorSplit}`,backgroundColor:e.colorBgLayout,".ant-btn":{marginLeft:8}}}}},e=>{let{theme:t,token:l,hashId:r}=m(),{getPrefixCls:i,iconPrefixCls:u}=h(),p=c(o),g=i(),v=(0,s.useStyleRegister)({theme:t,token:l,hashId:r,path:["formily-antd",o,p,u]},()=>{let t=`.${p}`,o=n((0,d.merge)(l,{componentCls:t,prefixCls:p,iconCls:`.${u}`,antCls:`.${g}`}),e,{hashId:r,prefixCls:p,rootPrefixCls:g,iconPrefixCls:u});return[f(l,p),o]});return{wrapSSR:(0,a.useMemo)(()=>v,[t,l,r,p,u,g,e]),hashId:r,componentCls:p,rootPrefixCls:g}});var v=l(18492),y=l(22505);let{Popup:b}=(0,y.R)(()=>Promise.resolve().then(l.bind(l,77577)),"Popup"),{CloseOutline:x}=(0,y.R)(()=>l.e("3279").then(l.bind(l,38370)),"CloseOutline"),w=e=>{let{title:t,visible:l,onClose:o,children:n,minHeight:s,className:d,footer:u}=e,{t:c}=(0,v.B)(),{componentCls:p,hashId:h}=g(),m=(0,a.useMemo)(()=>({minHeight:s}),[s]),f=(0,a.useMemo)(()=>({token:{paddingPageHorizontal:8,paddingPageVertical:8,marginBlock:12,borderRadiusBlock:8,fontSize:14}}),[]);return(0,r.jsx)(i.Ay,{theme:f,children:(0,r.jsxs)(b,{className:`${p} ${h} ${d||""}`,visible:l,onClose:o,onMaskClick:o,bodyClassName:"nb-mobile-action-drawer-body",bodyStyle:{padding:0},maskStyle:m,style:m,destroyOnClose:!0,children:[(0,r.jsxs)("div",{className:"nb-mobile-action-drawer-header",children:[(0,r.jsx)("span",{className:"nb-mobile-action-drawer-placeholder",children:(0,r.jsx)(x,{})}),(0,r.jsx)("span",{children:t}),(0,r.jsx)("span",{className:"nb-mobile-action-drawer-close-icon",onClick:o,role:"button",tabIndex:0,"aria-label":c("Close"),children:(0,r.jsx)(x,{})})]}),n,u&&(0,r.jsx)("div",{className:"nb-mobile-action-drawer-footer",children:u})]})})}},96332(e,t,l){l.d(t,{openRequiredParamsStepFormDialog:()=>m});var o=l(74848),n=l(18220),r=l(95243),i=l(87959),a=l(71021),s=l(96540),d=l(29007),u=l(16296),c=l(48555);let p=(0,n.createSchemaField)(),h=e=>{let{model:t,requiredSteps:l,formStep:n,children:r}=e,i=l[(null==n?void 0:n.current)??0],a=s.useMemo(()=>{let{flowKey:e,step:l}=i,o=t.getFlow(e),n=new d.W5(t,e,"settings");return(0,c.wx)(n,(null==o?void 0:o.steps)||{},t,e),n.defineProperty("currentStep",{value:l}),n},[t,i]);return(0,o.jsx)(u.u,{value:a,children:r})},m=async e=>{let{model:t,dialogWidth:s=800,dialogTitle:m}=e,f=(0,c.lW)(t);if(m||f("Step parameter configuration"),!t)throw i.Ay.error(f("Invalid model provided")),Error(f("Invalid model provided"));return new Promise((e,i)=>{(async()=>{try{var g,v,y;let i=t.getFlows(),b=[];for(let[e,l]of i)for(let o in l.steps){let n=l.steps[o];if(n.paramsRequired||n.preset){let r=await (0,c.o7)(t,l,n);if(r){t.getStepParams(e,o);let i=!1;console.log(`Flow: ${e}, Step: ${o}, hasAllRequiredParams:`,i),i||b.push({flowKey:e,stepKey:o,step:n,uiSchema:r,title:n.title||o,flowTitle:l.title||e})}}}if(console.log("Required steps:",b),0===b.length)return void e({});let x={};for(let{flowKey:e,stepKey:l,step:o}of b){let n=t.getStepParams(e,l)||{},i={};o.use&&(i=(null==(y=t.flowEngine)||null==(v=y.getAction)?void 0:v.call(y,o.use)).defaultParams||{});let a=new d.W5(t,e,"settings"),s=t.getFlow(e);s&&(0,c.wx)(a,s.steps,t,e),a.defineProperty("currentStep",{value:o});let u=await (0,c.gG)(i,a),p=await (0,c.gG)(o.defaultParams,a),h={...(0,r.toJS)(u),...(0,r.toJS)(p),...(0,r.toJS)(n)};Object.keys(h).length>0&&(x[e]||(x[e]={}),x[e][l]=h)}let w={};b.forEach(e=>{let{flowKey:t,stepKey:l,uiSchema:o,title:n,flowTitle:r}=e;w[`${t}_${l}`]={type:"void","x-component":"FormStep.StepPane","x-component-props":{title:`${n}`,description:`Flow: ${r}`},properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:{[t]:{type:"object",properties:{[l]:{type:"object",properties:o}}}}}}}});let S=1===b.length?{type:"object",properties:{...Object.values(w)[0].properties}}:{type:"object",properties:{step:{type:"void","x-component":"FormStep","x-component-props":{formStep:"{{formStep}}"},properties:w}}},{FormDialog:M,FormStep:F}=await Promise.resolve().then(l.bind(l,88967)),A=b.length>1?F.createFormStep(0):null,k=t.flowEngine,C={formStep:A,totalSteps:b.length,requiredSteps:b,useFlowSettingsContext:u.s,...null==(g=k.flowSettings)?void 0:g.scopes},P=M({title:m||f("Step parameter configuration"),width:s,footer:null,destroyOnClose:!0},l=>{var r;let i=async()=>{try{await l.submit();let o=l.values;b.forEach(e=>{var l;let{flowKey:n,stepKey:r}=e,i=null==(l=o[n])?void 0:l[r];i&&t.setStepParams(n,r,i)}),await t.saveStepParams(),e(o),P.close()}catch(e){console.error(f("Error submitting form"),":",e)}},s=()=>{P.close(),e({})},d={...C,closeDialog:s,handleNext:()=>{l.validate().then(()=>{A&&A.next()}).catch(e=>{console.log(f("Form validation failed"),":",e)})}},u=(0,c.ln)(d,S);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(h,{model:t,requiredSteps:b,formStep:A,children:(0,o.jsx)(p,{schema:u,components:{FormStep:F,...null==(r=k.flowSettings)?void 0:r.components},scope:d})}),(0,o.jsx)(n.FormConsumer,{children:()=>(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",gap:8,marginTop:24,paddingTop:16,borderTop:"1px solid #f0f0f0"},children:1===b.length?(0,o.jsx)(a.Ay,{type:"primary",onClick:i,children:f("Complete configuration")}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(a.Ay,{disabled:!(null==A?void 0:A.allowBack),onClick:()=>{A&&A.back()},children:f("Previous step")}),(0,o.jsx)(a.Ay,{disabled:!(null==A?void 0:A.allowNext),type:"primary",onClick:()=>{l.validate().then(()=>{A&&A.next()}).catch(e=>{console.log(f("Form validation failed"),":",e)})},style:{display:((null==A?void 0:A.current)??0)<b.length-1?"inline-block":"none"},children:f("Next step")}),(0,o.jsx)(a.Ay,{disabled:null==A?void 0:A.allowNext,type:"primary",onClick:i,style:{display:((null==A?void 0:A.current)??0)>=b.length-1?"inline-block":"none"},children:f("Complete configuration")})]})})})]})});P.open({initialValues:(0,c.ln)(C,x)})}catch(e){i(Error(`${f("Failed to import FormDialog or FormStep")}: ${e.message}`))}})()}).catch(e=>{console.error(e)})}},23183(e,t,l){l.d(t,{openStepSettingsDialog:()=>f});var o=l(74848),n=l(78880),r=l(18220),i=l(95243),a=l(84626),s=l(71021),d=l(96540),u=l(16296),c=l(48555),p=l(31108),h=l(52847);let m=(0,r.createSchemaField)(),f=async e=>{var t,l,f,g,v,y,b,x;let{model:w,flowKey:S,stepKey:M,dialogWidth:F=600,dialogTitle:A,mode:k="dialog",ctx:C,uiModeProps:P,cleanup:j}=e,I=(0,c.lW)(w),E=w.context.message;if(!w)throw E.error(I("Invalid model provided")),Error(I("Invalid model provided"));let _=w.getFlow(S),R=null==_||null==(t=_.steps)?void 0:t[M];if(!_)throw E.error(I("Flow with key {{flowKey}} not found",{flowKey:S})),Error(I("Flow with key {{flowKey}} not found",{flowKey:S}));if(!R)throw E.error(I("Step with key {{stepKey}} not found",{stepKey:M})),Error(I("Step with key {{stepKey}} not found",{stepKey:M}));let T=R.title,D=R.beforeParamsSave,N=R.afterParamsSave,O={};if(R.use){let e=null==(x=w.flowEngine)||null==(b=x.getAction)?void 0:b.call(x,R.use);e&&(O=e.defaultParams||{},T=T||e.title,D=D||e.beforeParamsSave,N=N||e.afterParamsSave)}let $=w.getFlow(S),B=await (0,c.o7)(w,$,R);if(!B)return E.info(I("This step has no configurable parameters")),{};let q=C;q.currentStep&&q.currentStep===R||q.defineProperty("currentStep",{value:R});let L=w.flowEngine,V={useFlowSettingsContext:u.s,...null==(l=L.flowSettings)?void 0:l.scopes},z=w.getStepParams(S,M)||{},K=await (0,c.gG)(R.defaultParams,q),U=await (0,c.gG)(O,q),W={...(0,i.toJS)(U),...(0,i.toJS)(K),...(0,i.toJS)(z)},H={...(0,i.toJS)(z)},Y={type:"object",properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:B}}},G=w.context.viewer[k].bind(w.context.viewer),{zIndex:J,...X}=(0,i.toJS)(P)||{},Q=e=>{var t,l;return Math.max("function"==typeof(null==(t=w.context.viewer)?void 0:t.getNextZIndex)?w.context.viewer.getNextZIndex():((null==(l=w.context.themeToken)?void 0:l.zIndexPopupBase)||1e3)+1,Number(e)||0)},Z=Q(J),ee=(0,n.createForm)({initialValues:(0,c.ln)(V,W)}),et=(null==(f=w.context.view)?void 0:f.inputArgs)||{},el=(null==C||null==(g=C.view)?void 0:g.navigation)??(null==(v=w.context.view)?void 0:v.navigation),eo={...et,...el?{navigation:el}:{},...(null==(y=(0,i.toJS)(P))?void 0:y.inputArgs)||{},__isSettingsPopup:!0};G({title:A||I(T),width:F,destroyOnClose:!0,...X,zIndex:Z,inputArgs:eo,onClose:()=>{j&&j()},content:e=>{let t=(0,h.PA)(()=>{var t;(0,d.useEffect)(()=>(0,i.autorun)(()=>{let{zIndex:t,...l}=(0,i.toJS)(P)||{};e.update({...l,zIndex:Q(t)})}),[]);let l=(0,c.ln)(V,Y);return(0,o.jsx)(r.FormProvider,{form:ee,children:(0,o.jsxs)(u.u,{value:q,children:[(0,o.jsx)(m,{schema:l,components:{...null==(t=L.flowSettings)?void 0:t.components},scope:V}),(0,o.jsx)(e.Footer,{children:(0,o.jsxs)(a.A,{align:"end",children:[(0,o.jsx)(s.Ay,{type:"default",onClick:()=>{e.close()},children:I("Cancel")}),(0,o.jsx)(s.Ay,{type:"primary",onClick:async()=>{try{await ee.submit();let t=ee.values;w.setStepParams(S,M,t),D&&await D(q,t,H),e.close(),await w.saveStepParams(),E.success(I("Configuration saved")),N&&await N(q,t,H)}catch(t){if(t instanceof c.VD)return;if(t instanceof c.sy||t instanceof p.zz)return void e.close();console.error(I("Error saving configuration"),":",t),E.error(I("Error saving configuration, please check console"))}},children:I("OK")})]})})]})})});return(0,o.jsx)(t,{})}})}},41594(e,t,l){l.d(t,{Ls:()=>a,Qp:()=>c,jx:()=>p,yG:()=>u,z5:()=>d});var o=l(2543),n=l.n(o),r=l(48555);async function i(e,t){return"function"==typeof e?await e(t):e}async function a(e,t){let l=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=e.meta??{};if(await i(o.hide,t)&&!l)return;let n={key:e.name,label:o.label||e.name,searchable:!!o.searchable,searchPlaceholder:o.searchPlaceholder,toggleable:o.toggleable,useModel:e.name,sort:o.sort||1e3,children:s(e,t)};return n.createModelOptions=o.createModelOptions||{use:e.name},n}function s(e,t){let l,o=e.meta??{};if(!1===o.children)return!1;if(o.children&&(l=o.children),e.defineChildren&&(l=e.defineChildren.bind(e)),"function"==typeof l){let e=l;l=async()=>{let l=await e(t),i=e=>null==e?void 0:e.map(e=>{let l={...e};if(l.children)l.children=Array.isArray(l.children)?i(l.children):l.children;else if(l.createModelOptions){let e=l.createModelOptions;l.createModelOptions=async function(){for(var l=arguments.length,i=Array(l),a=0;a<l;a++)i[a]=arguments[a];let s=i&&i.length>0?i[i.length-1]:void 0,d=await (0,r.mv)(null==o?void 0:o.createModelOptions,t,s),u=await (0,r.mv)(e,t,s);return n().merge({},n().cloneDeep(d),u)}}return l});return i(l)}}return l}function d(e){return async t=>{let l=await c([e])(t);if(0===l.length)return[];let o=l.shift().children;return"function"==typeof o?o(t):o}}function u(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return async l=>{var o,n;let s=l.engine.getSubclassesOf(e),d=[];for(let e of Array.from(s.values()))await i(null==(o=e.meta)?void 0:o.hide,l)||d.push(e);if(0===(d=d.filter(e=>{for(let l of t)if("string"==typeof l){if(e.name===l)return!1}else if(e===l||(0,r.FA)(e,l))return!1;return!0}).sort((e,t)=>{var l,o;return((null==(l=e.meta)?void 0:l.sort)??1e3)-((null==(o=t.meta)?void 0:o.sort)??1e3)})).length){let t="string"==typeof e?l.engine.getModelClass(e):e;t&&!await i(null==(n=t.meta)?void 0:n.hide,l)&&(d=[t])}let u=[];for(let e of d){let t=await a(e,l);t&&u.push(t)}return u}}function c(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return async t=>{let l=[],o=[];for(let a of e){var n,r,i;let e="string"==typeof a?t.engine.getModelClass(a):a;if(!e)continue;let d=s(e,t);d||(d=await u(a,o)(t)),o.push(e);let c=!1;if("function"==typeof d)try{let e=await d(t);c=Array.isArray(e)?e.length>0:!!e}catch(e){c=!1}else c=Array.isArray(d)?d.length>0:!!d;if(!c)continue;let p=(null==e||null==(n=e.meta)?void 0:n.label)||("string"==typeof a?a:e.name),h="string"==typeof a?a:e.name,m=(null==e||null==(r=e.meta)?void 0:r.menuType)||"group",f=(null==e||null==(i=e.meta)?void 0:i.sort)??1e3;"submenu"===m?l.push({key:h,label:p,sort:f,children:d}):l.push({key:h,type:"group",label:p,sort:f,children:d})}return l.sort((e,t)=>((null==e?void 0:e.sort)??1e3)-((null==t?void 0:t.sort)??1e3))}}function p(e,t){let{useModel:l,fieldUseModel:o,associationPathName:n,refreshTargets:r}=t,i=t.collection||e.model.collection||e.collection,a=i.getFields(),s=[];for(let e of a){var d;if(!(null==e||null==(d=e.options)?void 0:d.interface))continue;let t=n?`${n}.${e.name}`:e.name,a="function"==typeof o?o(e):o??"FieldModel";if(a){let o={dataSourceKey:i.dataSourceKey,collectionName:i.name,fieldPath:e.name,associationPathName:n};s.push({key:t,label:e.title,toggleable:e=>{let{associationPathName:l,fieldPath:o}=e.getStepParams("fieldSettings","init")||{};return(l?`${l}.${o}`:o)===t},useModel:l,refreshTargets:r,createModelOptions:()=>({use:l,stepParams:{fieldSettings:{init:o}},subModels:{field:{use:a,stepParams:{fieldSettings:{init:o}}}}})})}}return[{key:`addField_${i.name}`,label:"",type:"group",searchable:!0,searchPlaceholder:e.t("Search fields"),children:s.filter(Boolean)}]}},76546(e,t,l){l.d(t,{pM:()=>m,qG:()=>h,qS:()=>p,JL:()=>f,Ns:()=>d,zA:()=>c,Xk:()=>g});var o=l(50467),n=l(95243),r=l(2543),i=l.n(r),a=l(16075),s=l.n(a);function d(e){var t;let l;switch(e.type){case"string":l=s().string();break;case"number":l=s().number();break;case"array":l=s().array();break;case"boolean":l=s().boolean();break;default:l=s().any()}let o=(e,t)=>{if(!t||0===Object.keys(t).length)return[];if(Array.isArray(t))return t;if("email"===e){var l;let e={...t};return(null==(l=e.tlds)?void 0:l.allow)===!0?e.tlds.allow=!1:e.tlds||(e.tlds={allow:!1}),[e]}if(["length","min","max"].includes(e))return[t.limit];if("pattern"===e){let e=null==t?void 0:t.regex;return e instanceof RegExp?[e]:[new RegExp(e)]}let o=Object.values(t);return o.length?o:[]},n=!1;return null==(t=e.rules)||t.forEach(e=>{let{name:t,args:r}=e;if("required"===t&&(n=!0),"function"==typeof l[t])try{l=l[t](...o(t,r))}catch(e){console.warn(`调用 Joi 方法 ${t} 失败:`,e)}else console.warn(`Joi schema 上不存在方法: ${t}`)}),n||(l=(l=l.optional().allow("")).optional().allow(null)),l}function u(e){let t=[],l=new Set,o=new Set,n=new Map;e.forEach(e=>{n.set(e.name,e)});let r=e=>{if(o.has(e.name))throw Error(`Circular dependency detected: ${e.name} inherits from itself through a chain`);if(!l.has(e.name)){for(let t of(o.add(e.name),e.inherits||[])){let l=n.get(t);if(!l){console.warn(`Warning: Collection ${t}, inherited by ${e.name}, not found.`);continue}r(l)}o.delete(e.name),l.add(e.name),t.push(e)}};for(let t of e)r(t);return t}class c{setFlowEngine(e){this.flowEngine=e}setRequester(e){this.requester=e}setCollectionFieldInterfaceManager(e){this.collectionFieldInterfaceManager=e}addFieldInterfaces(){var e,t;let l=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];null==(t=this.collectionFieldInterfaceManager)||null==(e=t.addFieldInterfaces)||e.call(t,l)}addFieldInterfaceGroups(e){var t,l;null==(l=this.collectionFieldInterfaceManager)||null==(t=l.addFieldInterfaceGroups)||t.call(l,e)}addFieldInterfaceComponentOption(e,t){var l,o;null==(o=this.collectionFieldInterfaceManager)||null==(l=o.addFieldInterfaceComponentOption)||l.call(o,e,t)}addFieldInterfaceOperator(e,t){var l,o;null==(o=this.collectionFieldInterfaceManager)||null==(l=o.addFieldInterfaceOperator)||l.call(o,e,t)}registerLoader(e,t){this.loaders.set(e,t)}removeLoader(e){this.loaders.delete(e)}addDataSource(e){if(this.dataSources.has(e.key))throw Error(`DataSource with name ${e.key} already exists`);e instanceof p||(e=new(e.use||p)(e)),this.dataSources.set(e.key,e),e.setDataSourceManager(this)}upsertDataSource(e){if(this.dataSources.has(e.key)){var t;null==(t=this.dataSources.get(e.key))||t.patchOptions(e)}else this.addDataSource(e)}removeDataSource(e){this.dataSources.delete(e)}clearDataSources(){this.dataSources.clear()}getDataSources(){return Array.from(this.dataSources.values())}getDataSource(e){return this.dataSources.get(e)}getCollection(e,t){let l=this.getDataSource(e);if(l)return l.collectionManager.getCollection(t)}getCollectionField(e){let[t,...l]=e.split("."),o=this.getDataSource(t);if(o)return o.getCollectionField(l.join("."))}async ensureLoaded(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{force:t=!1}=e,l=this.resolveLoadKeys(e.keys),o=t?l:l.filter(e=>!this.loadedKeys.has(e));if(o.length)return this.loadingPromise||(this.loadingPromise=(async()=>{try{for(let e of o)await this.loadKey(e,{initial:!this.loadedKeys.has(e),force:t})}finally{this.loadingPromise=null}})()),this.loadingPromise}async reload(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=this.resolveLoadKeys(e.keys);if(t.length)return this.loadingPromise||(this.loadingPromise=(async()=>{try{for(let e of t)await this.loadKey(e,{initial:!1,force:!0})}finally{this.loadingPromise=null}})()),this.loadingPromise}async reloadDataSource(e){return this.loadingKeys.has(e)&&this.loadingPromise?this.loadingPromise:!this.loaders.has(e)&&this.loaders.has("*")?this.reload({keys:["*"]}):this.reload({keys:[e]})}resolveLoadKeys(e){let t=(null==e?void 0:e.length)?e:["main"],l=t.filter(e=>this.loaders.has(e));return this.loaders.has("*")?i().uniq(["*",...l]):l.length?l:t}getApp(){var e,t;return null==(t=this.flowEngine)||null==(e=t.context)?void 0:e.app}dispatchDataSourceEvent(e,t){var l,o;null==(o=this.getApp())||null==(l=o.eventBus)||l.dispatchEvent(new CustomEvent(e,{detail:t}))}setDataSourceState(e,t){let l=this.getDataSource(e);l&&l.patchOptions(t)}applyDataSourceLoadResult(e,t){if("*"===e)return void((null==t?void 0:t.dataSources)||[]).forEach(e=>{let{collections:t,...l}=e;if(this.upsertDataSource(l),t){var o;null==(o=this.getDataSource(l.key))||o.setCollections(t,{clearFields:!0})}});let l=this.getDataSource(e);l&&l.setCollections((null==t?void 0:t.collections)||[],{clearFields:!0})}async loadKey(e,t){let l=this.loaders.get(e);if(!l)return;this.getDataSource(e)||"*"===e||this.addDataSource({key:e});let{initial:o}=t;this.loadingKeys.add(e),"*"!==e&&this.setDataSourceState(e,{status:o?"loading":"reloading",errorMessage:void 0}),this.loadErrors.set(e,null);try{let t=await l({key:e,manager:this})||{};this.applyDataSourceLoadResult(e,t),this.loadedKeys.add(e),"*"!==e&&this.setDataSourceState(e,{status:"loaded",errorMessage:void 0}),this.dispatchDataSourceEvent("dataSource:loaded",{dataSourceKey:e,initial:o})}catch(l){let t=l instanceof Error?l:Error(String(l));throw this.loadErrors.set(e,t),"*"!==e&&this.setDataSourceState(e,{status:o?"loading-failed":"reloading-failed",errorMessage:t.message}),this.dispatchDataSourceEvent("dataSource:loadFailed",{dataSourceKey:e,initial:o,error:t}),t}finally{this.loadingKeys.delete(e)}}constructor(){(0,o._)(this,"dataSources",void 0),(0,o._)(this,"flowEngine",void 0),(0,o._)(this,"requester",void 0),(0,o._)(this,"collectionFieldInterfaceManager",void 0),(0,o._)(this,"loaders",new Map),(0,o._)(this,"loadedKeys",new Set),(0,o._)(this,"loadingKeys",new Set),(0,o._)(this,"loadErrors",new Map),(0,o._)(this,"loadingPromise",null),this.dataSources=n.observable.shallow(new Map)}}class p{get flowEngine(){return this.dataSourceManager.flowEngine}get displayName(){return this.flowEngine.translate(this.options.displayName,{ns:"lm-collections"})||this.key}get key(){return this.options.key}get name(){return this.options.key}get status(){return this.options.status}get errorMessage(){return this.options.errorMessage}setDataSourceManager(e){this.dataSourceManager=e}getCollections(){return this.collectionManager.getCollections()}getCollection(e){return this.collectionManager.getCollection(e)}getAssocation(e){return this.getAssociation(e)}getAssociation(e){return this.collectionManager.getAssociation(e)}addCollection(e){return this.collectionManager.addCollection(e)}updateCollection(e){return this.collectionManager.updateCollection(e)}upsertCollection(e){return this.collectionManager.upsertCollection(e)}upsertCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.collectionManager.upsertCollections(e,t)}setCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.collectionManager.setCollections(e,t)}removeCollection(e){return this.collectionManager.removeCollection(e)}clearCollections(){this.collectionManager.clearCollections()}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e)}patchOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.assign(this.options,e)}reload(){return this.dataSourceManager.reloadDataSource(this.key)}getCollectionField(e){let[t,...l]=e.split("."),o=l.join("."),n=this.getCollection(t);if(!n)return;let r=n.getFieldByPath(o);if(r)return r}constructor(e={}){(0,o._)(this,"dataSourceManager",void 0),(0,o._)(this,"collectionManager",void 0),(0,o._)(this,"options",void 0),this.options=(0,n.observable)({...e}),this.collectionManager=new h(this)}}class h{resetCaches(){this.childrenCollectionsName={},this.allCollectionsInheritChain=void 0}get flowEngine(){return this.dataSource.flowEngine}addCollection(e){let t;(t=e instanceof m?e:new m(e)).setDataSource(this.dataSource),t.initInherits(),this.collections.set(t.name,t),this.resetCaches()}removeCollection(e){this.collections.delete(e),this.resetCaches()}updateCollection(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=this.getCollection(e.name);if(!l)throw Error(`Collection ${e.name} not found`);l.setOptions(e,t),this.resetCaches()}upsertCollection(e){return this.collections.has(e.name)?this.updateCollection(e):this.addCollection(e),this.getCollection(e.name)}upsertCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(let l of u(e))this.collections.has(l.name)?this.updateCollection(l,t):this.addCollection(l);this.resetCaches()}setCollections(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.clearCollections(),this.upsertCollections(e,t)}sortCollectionsByInherits(e){let t=new Map;for(let l of e)t.set(l.name,l);let l={},o={};for(let t of e)l[t.name]=new Set,o[t.name]=0;for(let t of e)for(let e of t.inherits||[])l[e]||(l[e]=new Set),l[e].add(t.name),o[t.name]=(o[t.name]||0)+1;let n=[];for(let e in o)0===o[e]&&n.push(e);let r=[];for(;n.length;){let e=n.shift();for(let i of(t.has(e)&&r.push(t.get(e)),l[e]||[]))o[i]--,0===o[i]&&n.push(i)}if(r.length!==e.length)throw Error("Collection inherits has circular dependency!");return r}getCollection(e){if(e.includes(".")){let[t,l]=e.split("."),o=this.getCollection(t);if(!o)throw Error(`Collection ${t} not found in data source ${this.dataSource.key}`);let n=o.getField(l);if(!n)throw Error(`Field ${l} not found in collection ${t}`);return n.targetCollection}return this.collections.get(e)}getCollections(){return i().sortBy(Array.from(this.collections.values()).filter(e=>!e.hidden),"sort")}clearCollections(){this.collections.clear(),this.resetCaches()}getAssociation(e){let[t,l]=e.split("."),o=this.getCollection(t);if(!o)throw Error(`Collection ${t} not found in data source ${this.dataSource.key}`);return o.getField(l)}getChildrenCollections(e){let t=[],l=Array.from(this.collections.values()),o=e=>(l.filter(t=>{var l;return null==(l=t.options.inherits)?void 0:l.includes(e)}).forEach(e=>{let l=e.name;return t.push(e),o(l)}),t);return o(e)}getChildrenCollectionsName(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],l=t?"supportView":"notSupportView";if(this.childrenCollectionsName[l])return this.childrenCollectionsName[l].slice();let o=[],n=[...this.getCollections()],r=e=>(n.filter(t=>{var l;return l=[...t.inherits],l.includes(e)}).forEach(e=>{let t=e.name;return o.push(t),r(t)}),t&&n.filter(t=>{var l;return l=[...t.sources],l.length===1&&(null==t?void 0:t.sources[0])===e}).forEach(e=>{let t=e.name;return o.push(e.name),r(t)}),i().uniq(o));return this.childrenCollectionsName[l]=r(e),this.childrenCollectionsName[l]}getAllCollectionsInheritChain(e){if(this.allCollectionsInheritChain)return this.allCollectionsInheritChain.slice();let t=[e],l=e=>{let o=this.getCollection(e);if(o){let{inherits:n}=o,r=this.getChildrenCollectionsName(e);if(n)for(let e=0;e<n.length;e++){let o=n[e];t.includes(o)||(t.push(o),l(o))}if(r)for(let e=0;e<r.length;e++){let o=this.getCollection(r[e]).name;t.includes(o)||(t.push(o),l(o))}}return t};return this.allCollectionsInheritChain=l(e),this.allCollectionsInheritChain||[]}constructor(e){(0,o._)(this,"dataSource",void 0),(0,o._)(this,"collections",void 0),(0,o._)(this,"allCollectionsInheritChain",void 0),(0,o._)(this,"childrenCollectionsName",void 0),this.dataSource=e,this.childrenCollectionsName={},this.collections=n.observable.shallow(new Map)}}class m{clone(){let e=new m(i().cloneDeep(this.options));return e.setDataSource(this.dataSource),e}getFilterByTK(e){if(!e)throw Error("Record is required to get filterByTk");if(Array.isArray(e))return e.map(e=>this.getFilterByTK(e));if(!this.filterTargetKey)throw Error(`filterTargetKey is not defined for collection ${this.name}`);return"string"==typeof this.filterTargetKey?e[this.filterTargetKey]:Array.isArray(this.filterTargetKey)&&1===this.filterTargetKey.length?e[this.filterTargetKey[0]]:i().pick(e,this.filterTargetKey)}get titleableFields(){return this.getFields().filter(e=>e.titleable)}get hidden(){return this.options.hidden||!1}get flowEngine(){return this.dataSource.flowEngine}get collectionManager(){return this.dataSource.collectionManager}get sort(){return this.options.sort||0}get filterTargetKey(){return this.options.filterTargetKey}get dataSourceKey(){return this.dataSource.key}get name(){return this.options.name}get template(){return this.options.template}get storage(){return this.options.storage||"local"}get title(){return this.flowEngine.translate(this.options.title,{ns:"lm-collections"})||this.name}get titleCollectionField(){let e=this.options.titleField||this.filterTargetKey;if(Array.isArray(e)){if(1!==e.length)return;return this.getField(e[0])}return this.getField(e)}initInherits(){for(let e of(this.inherits.clear(),this.options.inherits||[])){let t=this.collectionManager.getCollection(e);if(!t){console.warn(`Warning: Collection ${e} not found for collection ${this.name}`);continue}this.inherits.set(e,t)}}setDataSource(e){this.dataSource=e}setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e),this.initInherits(),t.clearFields&&this.clearFields(),this.upsertFields(this.options.fields||[])}setOption(e,t){this.options[e]=t}getFields(){let e=new Map;for(let t of this.inherits.values())if(t&&"function"==typeof t.getFields)for(let l of t.getFields())e.set(l.name,l);for(let[t,l]of this.fields.entries())e.set(t,l);return Array.from(e.values())}getToOneAssociationFields(){return this.getAssociationFields(["one"])}getAssociationFields(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return e.includes("new")?this.getFields().filter(e=>["hasMany","belongsToMany","belongsToArray"].includes(e.type)):e.includes("many")&&e.includes("one")?this.getFields().filter(e=>e.isAssociationField()):e.includes("many")?this.getFields().filter(e=>["hasMany","belongsToMany","belongsToArray"].includes(e.type)):e.includes("one")?this.getFields().filter(e=>["hasOne","belongsTo"].includes(e.type)):this.getFields().filter(e=>e.isAssociationField())}mapFields(e){return this.getFields().map(e)}setFields(e){for(let t of(this.fields.clear(),e))this.addField(t)}upsertFields(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];for(let t of e)this.fields.has(t.name)?this.fields.get(t.name).setOptions(t):this.addField(t)}getFieldByPath(e){let[t,...l]=e.split("."),o=this.getField(t);return 0===l.length?o:(null==o?void 0:o.targetCollection)?o.targetCollection.getFieldByPath(l.join(".")):null}getField(e){return this.fields.get(e)}getFullFieldPath(e){return this.dataSource.key+"."+this.name+"."+e}addField(e){if(e.name&&this.fields.has(e.name))throw Error(`Field with name ${e.name} already exists in collection ${this.name}`);if(e instanceof f)e.setCollection(this),this.fields.set(e.name,e);else{let t=new f(e);t.setCollection(this),this.fields.set(t.name,t)}}removeField(e){return this.fields.delete(e)}clearFields(){return this.fields.clear()}refresh(){}getRelationshipFields(){let e=["o2o","oho","obo","m2o","createdBy","updatedBy","o2m","m2m","linkTo","chinaRegion","mbm"];return this.getFields().filter(t=>e.includes(t.interface))}getRelatedCollections(){let e=this.getRelationshipFields(),t=[],l=new Set;for(let o of e)if(o.target&&!l.has(o.target)){let e=this.collectionManager.getCollection(o.target);e&&e.name!==this.name&&(t.push(e),l.add(o.target))}return t}hasRelationshipFields(){return this.getRelationshipFields().length>0}constructor(e={}){(0,o._)(this,"fields",void 0),(0,o._)(this,"options",void 0),(0,o._)(this,"inherits",void 0),(0,o._)(this,"dataSource",void 0),this.options=(0,n.observable)({...e}),this.fields=n.observable.shallow(new Map),this.inherits=n.observable.shallow(new Map),this.setFields(e.fields||[])}}class f{setOptions(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Object.keys(this.options).forEach(e=>delete this.options[e]),Object.assign(this.options,e)}setCollection(e){this.collection=e}get targetCollectionTitleFieldName(){var e,t;return null==(t=this.targetCollection)||null==(e=t.titleCollectionField)?void 0:e.name}get targetCollectionTitleField(){var e;return null==(e=this.targetCollection)?void 0:e.titleCollectionField}get flowEngine(){return this.collection.flowEngine}get dataSourceKey(){var e;return null==(e=this.collection)?void 0:e.dataSourceKey}get resourceName(){return`${this.collection.name}.${this.name}`}get collectionName(){var e;return(null==(e=this.collection)?void 0:e.name)||this.options.collectionName}get readonly(){var e;return this.options.readonly||(null==(e=this.options.uiSchema)?void 0:e["x-read-pretty"])||!1}get titleable(){return!!(this.options.titleable??this.options.titleUsable)}get fullpath(){return this.collection.dataSource.key+"."+this.collection.name+"."+this.name}get name(){return this.options.name}get type(){return this.options.type}get dataType(){return this.options.dataType}get foreignKey(){return this.options.foreignKey}get targetKey(){return this.options.targetKey||this.targetCollection.filterTargetKey}get sourceKey(){return this.options.sourceKey}get target(){return this.options.target}get title(){var e,t,l;let o=(null==(t=this.options)||null==(e=t.uiSchema)?void 0:e.title)||(null==(l=this.options)?void 0:l.title);return this.flowEngine.translate(o,{ns:"lm-collections"})||this.options.name}set title(e){this.options.title=e}get enum(){var e;let t=(null==(e=this.options.uiSchema)?void 0:e.enum)||[];return"integer"===this.type?t.map(e=>"object"!=typeof e||null===e.value||void 0===e.value?e:{...e,label:e.label?this.flowEngine.translate(e.label,{ns:"lm-collections"}):e.label,value:Number(e.value)}):t.map(e=>({...e,label:this.flowEngine.translate(e.label,{ns:"lm-collections"})}))}get defaultValue(){return null==this.options.defaultValue?void 0:this.options.defaultValue}get interface(){return this.options.interface}get filterable(){var e;return this.options.filterable||(null==(e=this.getInterfaceOptions())?void 0:e.filterable)}get inputable(){return this.options.inputable}get uiSchema(){return this.options.uiSchema||{}}get targetCollection(){var e;return this.options.target&&(null==(e=this.collection)?void 0:e.collectionManager.getCollection(this.options.target))}get validation(){return this.options.validation}getComponentProps(){var e,t;let{type:l,target:o}=this.options,n=i().omitBy({...i().omit((null==(e=this.options.uiSchema)?void 0:e["x-component-props"])||{},"fieldNames"),options:this.enum.length?this.enum:void 0,mode:"array"===this.type?"multiple":void 0,multiple:o?["belongsToMany","hasMany","belongsToArray"].includes(l):void 0,maxCount:o&&!["belongsToMany","hasMany","belongsToArray"].includes(l)?1:void 0,target:o,template:null==(t=this.targetCollection)?void 0:t.template},i().isUndefined);if(this.validation){let e=[],t=d(this.validation),l=this.title;e.push({validator:(e,o)=>{let{error:n}=t.validate(o,{context:{label:l},abortEarly:!1});return n?Promise.reject(n.details.map(e=>e.message.replace(/"value"/g,`"${l}"`)).join(", ")):Promise.resolve()}}),n.rules=e}return n}getFields(){if(!this.options.target)return[];if(!this.targetCollection)throw Error(`Target collection ${this.options.target} not found for field ${this.name}`);return this.targetCollection.getFields()}getInterfaceOptions(){return this.flowEngine.context.app.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(this.interface)}getFilterOperators(){var e;let t=this.getInterfaceOptions();return(null==t||null==(e=t.filterable)?void 0:e.operators)||[]}getSubclassesOf(e){return this.flowEngine.getSubclassesOf(e,(e,t)=>g(e.supportedFieldInterfaces,this.interface))}getFirstSubclassNameOf(e){for(let[t,l]of this.getSubclassesOf(e))if("*"!==l.supportedFieldInterfaces)return t}isAssociationField(){return["belongsToMany","belongsTo","hasMany","hasOne","belongsToArray"].includes(this.type)}isRelationshipField(){return["o2o","oho","obo","m2o","createdBy","updatedBy","o2m","m2m","linkTo","chinaRegion","mbm"].includes(this.interface)}constructor(e){(0,o._)(this,"options",void 0),(0,o._)(this,"collection",void 0),this.options=(0,n.observable)({...e})}}function g(e,t){return!!e&&("*"===e||("string"==typeof e?e===t:!!Array.isArray(e)&&(e.includes("*")||e.includes(t))))}},48036(e,t,l){l.d(t,{v:()=>n});var o=l(50467);class n{setPaused(e){this.paused=e}on(e,t){var l,o;((l=this.events)[o=e]||(l[o]=[])).push(t)}off(e,t){this.events[e]=(this.events[e]||[]).filter(e=>e!==t)}emit(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];this.paused||(this.events[e]||[]).forEach(e=>e(...l))}async emitAsync(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];if(!this.paused)for(let t of(this.events[e]||[]).slice())await t(...l)}constructor(){(0,o._)(this,"events",{}),(0,o._)(this,"paused",!1)}}},26955(e,t,l){l.d(t,{L:()=>n});var o=l(50467);class n{onEventRegistered(){}registerEvents(e){for(let[,t]of Object.entries(e||{}))this.registerEvent(t)}registerEvent(e){if(!(null==e?void 0:e.name))throw Error("Event must have a name.");this.events.has(e.name)&&console.warn(`Event '${e.name}' is already registered. It will be overwritten.`),this.events.set(e.name,e),this.onEventRegistered()}constructor(){(0,o._)(this,"events",new Map)}}},29007(e,t,l){l.d(t,{W5:()=>ej,uk:()=>eW,Hl:()=>eP,o0:()=>ek,d6:()=>eC,cB:()=>eg,Bt:()=>eL});var o=l(58587),n=l(18150),r=l(68238),i=l(88243),a=l(16213),s=l(50467),d=l(95243),u=l(88909),c=l(14264),p=l(2543),h=l.n(p),m=l(55373),f=l.n(m),g=l(96540),v=l(5338),y=l.t(v,2),b=l(63128);class x{setData(e){this.data=h().cloneDeep(e)}setMeta(e){this.meta=h().cloneDeep(e)}async load(){var e,t,l,o;let n=(null==(o=this.flowEngine)||null==(l=o.context)||null==(t=l.api)||null==(e=t.auth)?void 0:e.token)||"";this.loaded&&this.lastToken!==n&&(this.loaded=!1,this.loadingPromise=null,this.data={},this.meta={});let{data:r}=await this.flowEngine.context.api.request({url:"roles:check"});this.data=(null==r?void 0:r.data)||{},this.meta=(null==r?void 0:r.meta)||{},this.loaded=!0,this.lastToken=n,await this.loadingPromise}getActionAlias(e){var t;return(null==(t=this.data.actionAlias)?void 0:t[e])||e}inResources(e,t){var l,o,n;let{dataSources:r}=(null==(l=this)?void 0:l.meta)||{};return null==(n=({...this.data,...(0,p.omit)(null==r?void 0:r[t],"snippets")}).resources)||null==(o=n.includes)?void 0:o.call(n,e)}getResourceActionParams(e,t,l){var o,n,r;let i=this.getActionAlias(t),{dataSources:a}=(null==(o=this)?void 0:o.meta)||{},s={...this.data,...(0,p.omit)(null==a?void 0:a[l],"snippets")};return(null==(n=s.actions)?void 0:n[`${e}:${i}`])||(null==(r=s.actions)?void 0:r[t])}getStrategyActionParams(e,t){var l,o,n;let r=this.getActionAlias(e),{dataSources:i}=(null==(l=this)?void 0:l.meta)||{},a={...this.data,...(0,p.omit)(null==i?void 0:i[t],"snippets")};return(null==a||null==(n=a.strategy)||null==(o=n.actions)?void 0:o.find(e=>{let[t]=e.split(":");return t===r}))?{}:null}parseAction(e){var t;let{resourceName:l,actionName:o,dataSourceKey:n="main",recordPkValue:r,allowedActions:i}=e,a=(null==l?void 0:l.includes("."))&&(null==(t=this.flowEngine.context.dataSourceManager.getDataSource(n).collectionManager.getAssociation(l))?void 0:t.target);return this.getIgnoreScope(e)||this.verifyScope(o,r,i)?this.inResources(a,n)?this.getResourceActionParams(a,o,n):this.inResources(l,n)?this.getResourceActionParams(l,o,n):this.getStrategyActionParams(o,n):null}parseField(e){let{fields:t}=e,l=this.parseAction(e),o=[].concat((null==l?void 0:l.whitelist)||[]).concat((null==l?void 0:l.fields)||[]).concat((null==l?void 0:l.appends)||[]);return!!l&&!Object.keys(l).length||o.includes(t[0])}async aclCheck(e){let{allowAll:t}=this.data;return!!t||(e.fields?this.parseField(e):this.parseAction(e))}constructor(e){(0,s._)(this,"flowEngine",void 0),(0,s._)(this,"data",void 0),(0,s._)(this,"meta",void 0),(0,s._)(this,"loaded",void 0),(0,s._)(this,"loadingPromise",void 0),(0,s._)(this,"lastToken",void 0),(0,s._)(this,"getIgnoreScope",void 0),(0,s._)(this,"verifyScope",void 0),this.flowEngine=e,this.data={},this.meta={},this.loaded=!1,this.loadingPromise=null,this.lastToken=null,this.getIgnoreScope=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{recordPkValue:t,allowedActions:l,actionName:o}=e,n=!1;return e.ignoreScope&&(n=!0),"create"===o&&(n=!0),t&&l||(n=!0),n},this.verifyScope=(e,t,l)=>{let o=this.getActionAlias(e),n=null==l?void 0:l[o];return Array.isArray(n)?n.map(e=>String(e)).includes(String(t)):null}}}let w=Symbol.toPrimitive;class S{toString(){return`{{${this.path.join(".")}}}`}valueOf(){return this.toString()}[w](){return this.toString()}static create(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["ctx"];return new Proxy(new S(e),{get(t,l,o){if("symbol"==typeof l)return;if(l in t){let e=t[l];return"function"==typeof e?e.bind(t):e}let n=[...e,l.toString()];return S.create(n)}})}constructor(e){(0,s._)(this,"path",void 0),this.path=e}}var M=l(76546),F=l(81440);class A{translate(e,t){return!e||"string"!=typeof e||(null==t?void 0:t.compareWith)&&e===t.compareWith?e:this.isTemplate(e)?this.compileTemplate(e):this.translateKey(e,t)}translateKey(e,t){var l,o;if(null==(o=this.context)||null==(l=o.i18n)?void 0:l.t){let l=this.context.i18n.t(e,t);return null==l||""===l?e:l}return e}isTemplate(e){return/\{\{\s*t\s*\(\s*["'`].*?["'`]\s*(?:,\s*.*?)?\s*\)\s*\}\}/g.test(e)}compileTemplate(e){return e.replace(/\{\{\s*t\s*\(\s*["'`](.*?)["'`]\s*(?:,\s*((?:[^{}]|\{[^}]*\})*?))?\s*\)\s*\}\}/g,(e,t,l)=>{try{let o={};if(l&&(l=l.trim()).startsWith("{")&&l.endsWith("}"))try{o=Function("$root",`with($root) { return (${l}); }`)({})}catch(t){return e}return this.translateKey(t,o)}catch(t){return console.warn(`FlowEngine: Failed to compile template "${e}":`,t),e}})}constructor(e){(0,s._)(this,"context",void 0),this.context=e}}var k=l(91013),C=l(27667),P=l(48555),j=l(31108),I=l(81982),E=l(22928),_=l(73398),R=l(37966),T=l(62572),D=l(74353),N=l.n(D),O=l(98192),$=l(47684),B=l(51143);function q(e){try{if(!e||"object"!=typeof e&&"function"!=typeof e)return[];return Object.getOwnPropertyNames(e)}catch(e){return[]}}function L(e,t){if(!e.length)return[];if(!t.length)return[...e];let l=new Set(t),o=[];for(let t of e)l.has(t)||o.push(t);return o}async function V(e){let t,l=globalThis;l.__nocobaseRunjsModuleLoadLock=(l.__nocobaseRunjsModuleLoadLock||Promise.resolve()).catch(()=>{});let o=l.__nocobaseRunjsModuleLoadLock,n=new Promise(e=>{t=e});l.__nocobaseRunjsModuleLoadLock=o.then(()=>n),await o;try{return await e()}finally{null==t||t()}}function z(){let e=globalThis,t=null==e?void 0:e.define,l=null==t?void 0:t.amd;if(!t||!l)return()=>{};let o=Object.getOwnPropertyDescriptor(t,"amd"),n=!!o,r=l;try{(null==o?void 0:o.writable)?t.amd=void 0:(null==o?void 0:o.configurable)?delete t.amd:t.amd=void 0}catch(e){}return()=>{try{if(n&&o)return void Object.defineProperty(t,"amd",o);t.amd=r}catch(e){}}}function K(){var e,t;let l=globalThis,o=null==l||null==(e=l.requirejs)?void 0:e.requirejs,n=null==o||null==(t=o.s)?void 0:t.contexts;if(!n||"object"!=typeof n)return!1;for(let e of Object.keys(n)){let t=n[e],l=null==t?void 0:t.registry;if(l&&"object"==typeof l)for(let e of Object.keys(l)){let t=l[e];if(!t||"object"!=typeof t||!t.enabled||t.error)continue;let o=t.map;if(o&&"object"==typeof o&&!t.inited&&t.fetched&&o.isDefine)return!0}}return!1}async function U(e){let t=Math.max(0,(null==e?void 0:e.timeoutMs)??1500),l=Math.max(10,(null==e?void 0:e.pollMs)??30);if(0===t)return;let o=Date.now();for(;K();){if(Date.now()-o>=t)return;await new Promise(e=>setTimeout(e,l))}}async function W(e,t){let l="string"==typeof e?e.trim():"";if(!l)return;let o=globalThis;o.__nocobaseImportAsyncPrefetchCache=o.__nocobaseImportAsyncPrefetchCache||new Map;let n=o.__nocobaseImportAsyncPrefetchCache;if(n.has(l))return await n.get(l);let r=Math.max(0,(null==t?void 0:t.timeoutMs)??5e3),i=(async()=>{try{var e,t,o;if("u">typeof document&&(null==(e=document)?void 0:e.createElement)){let e=new URL(l,(null==(o=globalThis)||null==(t=o.location)?void 0:t.href)||void 0).toString(),n=document.head||document.getElementsByTagName("head")[0];if(n){let t=`link[rel="modulepreload"][href="${e}"]`;if(!document.querySelector(t)){let t=document.createElement("link");return t.rel="modulepreload",t.href=e,t.crossOrigin="anonymous",await new Promise(e=>{let l=!1,o=()=>{l||(l=!0,t.onload=null,t.onerror=null,e())},i=r>0?setTimeout(()=>{o()},r):void 0;t.onload=()=>{i&&clearTimeout(i),o()},t.onerror=()=>{i&&clearTimeout(i),o()},n.appendChild(t)})}}}}catch(e){}try{if("function"!=typeof fetch)return;let e="function"==typeof AbortController?new AbortController:void 0,t=e&&r>0?setTimeout(()=>{try{e.abort()}catch(e){}},r):void 0,o=await fetch(l,{method:"GET",mode:"cors",credentials:"omit",cache:"force-cache",signal:null==e?void 0:e.signal});if(t&&clearTimeout(t),o&&o.ok&&"function"==typeof o.arrayBuffer)try{await o.arrayBuffer()}catch(e){}}catch(e){}})().catch(()=>{});return n.set(l,i),await i}async function H(e,t){return await V(async()=>{let l,o,n="u">typeof window?q(window):[],r="u">typeof document?q(document):[];try{l=await new Promise((l,o)=>{e?e([t],function(){for(var e=arguments.length,t=Array(e),o=0;o<e;o++)t[o]=arguments[o];l(t[0])},o):o(Error("requirejs is not available"))})}catch(e){o=e}finally{let e="u">typeof window?q(window):[],t="u">typeof document?q(document):[],l=L(e,n),o=L(t,r);(0,B.Vm)(l),(0,B.yz)(o)}if(o)throw o;return l})}async function Y(e){var t,l;if(!e||"string"!=typeof e)throw Error("invalid url");let o=e.trim(),n=!!(null==(l=globalThis)||null==(t=l.define)?void 0:t.amd);return n&&await W(o),await V(async()=>{await U();let e=n?z():()=>{};try{let e=()=>import(o),t=()=>(0,eval)("u => import(u)")(o);try{return await e()}catch(e){try{return await t()}catch(t){throw t||e}}}finally{e()}})}function G(e){let t=e.indexOf("?"),l=e.indexOf("#"),o=t>=0&&l>=0?Math.min(t,l):t>=0?t:l;return o>=0?e.slice(0,o):e}function J(e){if(!e||"string"!=typeof e)return null;let t=G(e).trim();if(!t||t.startsWith("http://")||t.startsWith("https://"))return null;let l=t.replace(/^\//,"");if(!l)return null;if(l.startsWith("@")){let e=l.match(/^(@[^/]+\/[^/]+?)(?:@([^/]+))?(?:\/(.*))?$/);return e?{name:e[1],version:e[2],subpath:e[3]}:null}let o=l.match(/^([^/]+?)(?:@([^/]+))?(?:\/(.*))?$/);return o?{name:o[1],version:o[2],subpath:o[3]}:null}function X(e,t){if(!e||"string"!=typeof e)return e;let l=e.trim(),o=l.indexOf("#"),n=o>=0?l.slice(0,o):l,r=o>=0?l.slice(o):"",i=n.indexOf("?"),a=i>=0?n.slice(0,i):n,s=new URLSearchParams(i>=0?n.slice(i+1):"");for(let[e,l]of Object.entries(t))e&&(s.has(e)||s.set(e,l));let d=s.toString();return d?`${a}?${d}${r}`:`${a}${r}`}function Q(){let e=globalThis;if("string"==typeof(null==e?void 0:e.__esm_cdn_base_url__))return e.__esm_cdn_base_url__;let t="u">typeof window?window:null==e?void 0:e.window;return"string"==typeof(null==t?void 0:t.__esm_cdn_base_url__)?t.__esm_cdn_base_url__:"https://esm.sh"}function Z(e){if(e&&"object"==typeof e&&"default"in e){let t=Object.keys(e);if(1===t.length&&"default"===t[0])return e.default}return e}async function ee(e,t,l){if(!t||"string"!=typeof t)throw Error("invalid url");let o=t,n=J(t);if((null==n?void 0:n.name)==="antd"&&!n.subpath&&"string"==typeof Q()){let t={bundle:"1"},l=null==e?void 0:e.__runjsExternalReact,n=null==l?void 0:l.version;n&&"string"==typeof n&&(t.deps=`react@${n},react-dom@${n}`),o=X(o,t)}let r=(0,$.i)(o,{addSuffix:(null==l?void 0:l.addSuffix)??!0}),i=(null==l?void 0:l.importer)||Y,a=globalThis;a.__nocobaseImportAsyncCache=a.__nocobaseImportAsyncCache||new Map;let s=a.__nocobaseImportAsyncCache,d=s.get(r)||(async()=>Z(await i(r)))();s.set(r,d);let u=await d,c=null==e?void 0:e.libs;if(!c||"object"!=typeof c)return u;let p=J(o);if(!p)return u;let h=p.subpath||"";if("react"!==p.name||h)"react-dom"===p.name&&("client"===h||h.startsWith("client/"))?((0,O.qf)(e,"ReactDOM",u),e.__runjsExternalReactDOM={specifier:t,version:p.version,url:r}):"antd"!==p.name||h?"@ant-design/icons"!==p.name||h||((0,O.qf)(e,"antdIcons",u,{topLevelKey:!1}),e.__runjsExternalAntdIcons={specifier:t,version:p.version,url:r}):((0,O.qf)(e,"antd",u),e.__runjsExternalAntd={specifier:t,version:p.version,url:r});else{(0,O.qf)(e,"React",u),e.__runjsExternalReact={specifier:t,version:p.version,url:r};let l=p.version?`react-dom@${p.version}/client`:"react-dom/client";try{await e.importAsync(l)}catch(o){let e=Error(`External React has been loaded via ctx.importAsync("${t}"), but auto-loading "${l}" failed.
1026
1026
  Please run: await ctx.importAsync("${l}") to ensure ctx.render uses a matching ReactDOM.`);throw e.cause=o,e}}return u}function et(e){return e.endsWith("/")?e:`${e}/`}function el(e,t){try{let l=new URL(e);if(!["http:","https:"].includes(l.protocol))return!1;if(!(null==t?void 0:t.getApiUrl))return!0;let o=new URL(t.getApiUrl()),n=et(o.pathname),r=et(l.pathname);return l.origin!==o.origin||!r.startsWith(n)}catch{return!1}}function eo(e){return!!(e&&"object"==typeof e&&"collection"in e&&"filterByTk"in e)}function en(e,t){if(t&&0!==t.length){if(eo(e))return e;if(e&&"object"==typeof e&&!Array.isArray(e)){let l={};for(let[o,n]of Object.entries(e))t.some(e=>e===o||e.startsWith(`${o}.`)||e.startsWith(`${o}[`))&&(l[o]=n);return l}}}function er(e){if(!e)return;let t=String(e).match(/^([^.[]+)/);return null==t?void 0:t[1]}function ei(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];if(!Array.isArray(e)||0===e.length)return{generatedAppends:void 0,generatedFields:void 0};let t=new Set,l=new Set,o=e=>{if(!e)return"";let t=String(e);return(t=(t=(t=t.replace(/\[(?:\d+)\]/g,"")).replace(/\[(?:"((?:[^"\\]|\\.)*)"|'((?:[^'\\]|\\.)*)')\]/g,(e,t,l)=>`.${t||l}`)).replace(/\.\.+/g,".")).replace(/^\./,"").replace(/\.$/,"")};for(let n of e){if(!n)continue;for(;/^\[(\d+)\](\.|$)/.test(n);)n=n.replace(/^\[(\d+)\]\.?/,"");let e=o(n);if(!e)continue;let r=e.split(".").filter(Boolean);if(0!==r.length){if(1===r.length){l.add(r[0]);continue}for(let e=0;e<r.length-1;e++)t.add(r.slice(0,e+1).join("."));l.add(r.join("."))}}return{generatedAppends:t.size?Array.from(t):void 0,generatedFields:l.size?Array.from(l):void 0}}var ea=new WeakMap,es=new WeakSet,ed=new WeakSet,eu=new WeakSet,ec=new WeakSet,ep=new WeakSet,eh=new WeakSet,em=new WeakSet,ef=new WeakSet;class eg{createProxy(){return(0,o._)(this,ea)||(0,r._)(this,ea,new Proxy(this,{get:(e,t,l)=>{if("string"==typeof t){if(Reflect.has(e,t)){let o=Reflect.get(e,t,l);return"function"==typeof o?o.bind(e):o}if(Object.prototype.hasOwnProperty.call(e._props,t))return e._getOwnProperty(t,this.createProxy());if(Object.prototype.hasOwnProperty.call(e._methods,t))return e._getOwnMethod(t,this.createProxy());let o=this._findInDelegates(e._delegates,t);return void 0!==o?o.result:void 0}return Reflect.get(e,t,l)},has:(e,t)=>!!("string"==typeof t&&(Reflect.has(e,t)||Object.prototype.hasOwnProperty.call(e._props,t)||Object.prototype.hasOwnProperty.call(e._methods,t)||this._hasInDelegates(e._delegates,t)))||Reflect.has(e,t)})),(0,o._)(this,ea)}defineProperty(e,t){var l;if(this._props[e]&&(null==(l=this._props[e])?void 0:l.once))return;let o=this._props[e];(null==o?void 0:o.meta)&&this._clearMetaNodeCacheFor(o.meta),this._props[e]=t,delete this._observableCache[e],delete this._cache[e],Object.defineProperty(this,e,{configurable:!0,enumerable:!0,get:()=>this._getOwnProperty(e,this.createProxy())})}defineMethod(e,t,l){this._methods[e]=t,"string"==typeof l?this._methodInfos[e]={description:l}:l&&"object"==typeof l?this._methodInfos[e]=l:delete this._methodInfos[e],Object.defineProperty(this,e,{configurable:!0,enumerable:!1,writable:!1,value:t.bind(this.createProxy())})}removeCache(e){if(e in this._observableCache)return delete this._observableCache[e],!0;if(e in this._cache)return delete this._cache[e],!0;if(e in this._pending)return delete this._pending[e],!0;for(let t of this._delegates)if(t.removeCache(e))return!0}delegate(e){if(!(e instanceof eg))throw Error("Delegate must be an instance of FlowContext");this._delegates.includes(e)?console.warn(`[FlowContext] delegate - skip duplicate delegate: ${this._delegates.length}`):this._delegates.unshift(e)}addDelegate(e){if(!(e instanceof eg))throw Error("Delegate must be an instance of FlowContext");this._delegates.includes(e)||this._delegates.unshift(e)}clearDelegates(){this._delegates=[],this._metaNodeCache=new WeakMap}removeDelegate(e){if(!(e instanceof eg))throw Error("Delegate must be an instance of FlowContext");let t=this._delegates.indexOf(e);-1!==t&&this._delegates.splice(t,1)}_clearMetaNodeCacheFor(e){this._metaNodeCache.delete(e)}has(e){return!!this._props[e]}getPropertyMetaTree(e,t){let l=this._getPropertiesMeta();if(e){let l=(0,P.YB)(e);if(l&&l.length>0){let e=async(e,t,l)=>{try{let l="function"==typeof e?await e():e;if(!(null==l?void 0:l.properties))return[];let o=l.properties;if("function"==typeof o){let e=await o();l.properties=e,o=e}let n=(0,i._)(this,es,ev).call(this,o,t,[],l);return Array.isArray(n)?n:await n()}catch(e){return console.warn(`Failed to load meta for ${l}:`,e),[]}},o=(0,i._)(this,ed,ey).call(this,l);if(o){let[n,r,a]=o;if(1===l.length){if("function"==typeof r)return()=>e(r,a,n);if(r.properties){if("function"==typeof r.properties)return()=>e(r,a,n);let t=(0,i._)(this,es,ev).call(this,r.properties,a,[],r);return Array.isArray(t)?t:[]}return[]}if("function"==typeof r){if(null==t?void 0:t.flatten)return()=>e(r,a,n);let l=(0,i._)(this,em,eS).call(this,a);return[(0,i._)(this,ef,eM).call(this,n,r,a,l)]}if(r.properties){let e=[...(0,i._)(this,em,eS).call(this,a),r.title],t=(0,i._)(this,es,ev).call(this,r.properties,a,e,r);return Array.isArray(t)?t:[]}}return[]}if(null===l)return console.warn(`[FlowContext] getPropertyMetaTree - unsupported value format: "${e}". Only "{{ ctx.propertyName }}" format is supported. Returning empty meta tree.`),[]}return Object.entries(l).sort((e,t)=>{let[,l]=e,[,o]=t,n=("function"==typeof l?l.sort:null==l?void 0:l.sort)??0;return(("function"==typeof o?o.sort:null==o?void 0:o.sort)??0)-n}).map(e=>{let[t,l]=e;return(0,i._)(this,ef,eM).call(this,t,l,[t],[])})}async getApiInfos(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.version||"v1",l=this.createProxy(),o=e=>"string"==typeof e&&e.startsWith("_"),n=e=>"record"===e||"formValues"===e||"popup"===e,r=e=>!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then,i=(()=>{var e,l,o,n,r,i,a,s;let d=(0,R.B)(this),u=R.F.resolve(t,d)||R.F.resolve(t,"*");if(!u)return{};let c=(null==(o=this)||null==(l=o.api)||null==(e=l.auth)?void 0:e.locale)||(null==(r=this)||null==(n=r.i18n)?void 0:n.language)||(null==(i=this)?void 0:i.locale);try{if(null==u||null==(a=u.getDoc)?void 0:a.length)return u.getDoc(c)||{};return(null==u||null==(s=u.getDoc)?void 0:s.call(u))||{}}catch(e){return{}}})(),a=eT(null==i?void 0:i.methods)?i.methods:{},s=eT(null==i?void 0:i.properties)?i.properties:{},d=e=>"string"==typeof e?{description:e}:eT(e)?e:void 0,u=(e,t)=>{let l="string"==typeof t?t:eT(t)&&"string"==typeof t.description?String(t.description):void 0;return l&&l.includes(`ctx.libs.${e}`)?`libs.${e}`:e},c=e=>{let t=d(e);if(!t)return{};let l={};for(let e of["description","examples","ref","params","returns"]){let o=t[e];void 0!==o&&(l[e]=o)}return Array.isArray(l.examples)&&(l.examples=l.examples.filter(e=>"string"==typeof e&&e.trim())),l},p=e=>{let t=d(e);if(!t)return{};let l={};for(let e of["title","type","interface","description","examples","ref","params","returns"]){let o=t[e];void 0!==o&&(l[e]=o)}return Array.isArray(l.examples)&&(l.examples=l.examples.filter(e=>"string"==typeof e&&e.trim())),l},h=e=>{let t=new WeakSet,l=o=>{if(!o||"object"!=typeof o||t.has(o))return;if(t.add(o),Object.prototype.hasOwnProperty.call(o._methodInfos||{},e)){var n;return null==(n=o._methodInfos)?void 0:n[e]}let r=o._delegates;if(Array.isArray(r))for(let e of r){let t=l(e);if(t)return t}};return l(this)},m=async e=>{let t=this.getPropertyOptions(e);if(null==t?void 0:t.info)try{let e="function"==typeof t.info?t.info.call(l,l):t.info;return(r(e)?await e:e)??void 0}catch(e){return}},f=new Set,g=new Set;for(let e of Object.keys(s))f.add(e);for(let e of Object.keys(a))g.add(e);let v=(e,t)=>{if(e&&"object"==typeof e&&!t.has(e)){t.add(e);try{let t=e._props;if(t&&"object"==typeof t)for(let[e,l]of Object.entries(t))(null==l?void 0:l.info)&&f.add(e)}catch(e){}try{let t=e._methodInfos;if(t&&"object"==typeof t)for(let e of Object.keys(t))g.add(e)}catch(e){}try{let l=e._delegates;if(Array.isArray(l))for(let e of l)v(e,t)}catch(e){}}};v(this,new WeakSet);let y={};for(let e of f){if(o(e)||n(e))continue;let t=s[e],l=await m(e);if(void 0===t&&void 0===l)continue;let r=d(t),i=d(l),a={};if(a={...a={...a,...p(r)},...p(i)},delete a.properties,delete a.completion,!Object.keys(a).length)continue;let c=u(e,t);y[c]=y[c]?{...y[c]||{},...a||{}}:a}for(let e of g){if(o(e))continue;let t=a[e],l=h(e);if(void 0===t&&void 0===l)continue;let n=d(t),r={};r={...r={...r,...c(n)},...c(l)},delete r.properties,delete r.completion,Object.keys(r).length&&(r.type="function",y[e]?y[e]={...y[e]||{},...r||{}}:y[e]=r)}let b=d(s.libs),x=eT(null==b?void 0:b.properties)?b.properties:void 0;if(x)for(let[e,t]of Object.entries(x)){if(o(e))continue;let l=`libs.${e}`;if(y[l])continue;let n=d(t),r={};r={...r,...p(n)},delete r.properties,delete r.completion,r.description&&String(r.description).trim()&&(y[l]=r)}return y}async getEnvInfos(){var e,t,l;let o=this.createProxy(),n=e=>!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then,r={},i=e=>{try{return e()}catch(e){return}},a=e=>null!=e&&("string"==typeof e?e.trim().length>0:!Array.isArray(e)||e.length>0),s=e=>{var t,l,o,n,r;let i={};if(!e)return i;let s=e;for(let e of["dataSourceKey","collectionName","associationName","filterByTk","sourceId"]){let t=null==s?void 0:s[e];a(t)&&(i[e]=t)}if(!("dataSourceKey"in i)){let e=null==(t=s.getDataSourceKey)?void 0:t.call(s);a(e)&&(i.dataSourceKey=e)}if(!("filterByTk"in i)){let e=null==(l=s.getFilterByTk)?void 0:l.call(s);a(e)&&(i.filterByTk=e)}if(!("filterByTk"in i)){let e=null==(o=s.getMeta)?void 0:o.call(s,"currentFilterByTk");a(e)&&(i.filterByTk=e)}if(!("sourceId"in i)){let e=null==(n=s.getSourceId)?void 0:n.call(s);a(e)&&(i.sourceId=e)}if(!("collectionName"in i)||!("associationName"in i)){let e=null==(r=s.getResourceName)?void 0:r.call(s),t="string"==typeof e?e.trim():"";if(t){let e=t.split(".").map(e=>e.trim()).filter(Boolean);1===e.length?"collectionName"in i||(i.collectionName=e[0]):e.length>=2&&("collectionName"in i||(i.collectionName=e[0]),"associationName"in i||(i.associationName=e.slice(1).join(".")))}}return i},d=await (async()=>{try{let e=o.popup;return n(e)?await e:e}catch(e){return}})(),u=i(()=>o.model),c=i(()=>o.blockModel),p=i(()=>{var e;return null==(e=o.view)?void 0:e.inputArgs}),h=i(()=>o.resource),m=s(null==d?void 0:d.resource),f=c,g=c?"ctx.blockModel":void 0,v=g?`${g}.resource`:void 0,y=s(null==f?void 0:f.resource),b=s(p),x=s(h),w=e=>{for(let t of e)if(a(t.value))return{value:t.value,getVar:t.getVar}},S=e=>a(e.collectionName)||a(e.dataSourceKey)||a(e.associationName),M=S(m)?"ctx.popup.resource":S(y)?v:S(b)?"ctx.view.inputArgs":S(x)?"ctx.resource":void 0,F=w([{value:null==m?void 0:m.collectionName,getVar:"ctx.popup.resource.collectionName"},{value:null==y?void 0:y.collectionName,getVar:`${v}.collectionName`},{value:null==b?void 0:b.collectionName,getVar:"ctx.view.inputArgs.collectionName"},{value:null==x?void 0:x.collectionName,getVar:"ctx.resource.collectionName"}]),A=w([{value:null==m?void 0:m.dataSourceKey,getVar:"ctx.popup.resource.dataSourceKey"},{value:null==y?void 0:y.dataSourceKey,getVar:`${v}.dataSourceKey`},{value:null==b?void 0:b.dataSourceKey,getVar:"ctx.view.inputArgs.dataSourceKey"},{value:null==x?void 0:x.dataSourceKey,getVar:"ctx.resource.dataSourceKey"}]),k=w([{value:null==m?void 0:m.associationName,getVar:"ctx.popup.resource.associationName"},{value:null==y?void 0:y.associationName,getVar:`${v}.associationName`},{value:null==b?void 0:b.associationName,getVar:"ctx.view.inputArgs.associationName"},{value:null==x?void 0:x.associationName,getVar:"ctx.resource.associationName"}]),C=w([{value:null==m?void 0:m.filterByTk,getVar:"ctx.popup.resource.filterByTk"},{value:null==y?void 0:y.filterByTk,getVar:`${v}.filterByTk`},{value:null==b?void 0:b.filterByTk,getVar:"ctx.view.inputArgs.filterByTk"},{value:null==x?void 0:x.filterByTk,getVar:"ctx.resource.filterByTk"}]),P=w([{value:null==m?void 0:m.sourceId,getVar:"ctx.popup.resource.sourceId"},{value:null==y?void 0:y.sourceId,getVar:`${v}.sourceId`},{value:null==b?void 0:b.sourceId,getVar:"ctx.view.inputArgs.sourceId"},{value:null==x?void 0:x.sourceId,getVar:"ctx.resource.sourceId"}]),j={},I=!1,E=null==F?void 0:F.value;a(E)&&(j.collectionName={description:"Collection name",getVar:(null==F?void 0:F.getVar)||(M?`${M}.collectionName`:void 0),value:E},I=!0);let _=null==A?void 0:A.value;a(_)&&(j.dataSourceKey={description:"Data source key",getVar:(null==A?void 0:A.getVar)||(M?`${M}.dataSourceKey`:void 0),value:_},I=!0);let R=null==k?void 0:k.value;a(R)&&(j.associationName={description:"Association name",getVar:(null==k?void 0:k.getVar)||(M?`${M}.associationName`:void 0),value:R},I=!0),I&&(a(null==C?void 0:C.value)&&(j.filterByTk={description:"Record filterByTk",getVar:(null==C?void 0:C.getVar)||(M?`${M}.filterByTk`:void 0)}),a(null==P?void 0:P.value)&&(j.sourceId={description:"Source record ID (sourceId)",getVar:(null==P?void 0:P.getVar)||(M?`${M}.sourceId`:void 0)}),r.resource={description:"Resource information",getVar:M,properties:j}),a(null==C?void 0:C.value)&&(r.record={description:"Current record",getVar:"ctx.record"});let T=e=>{try{let t=null==e?void 0:e.title;if("string"==typeof t&&t.trim())return t}catch(e){}try{var t,l;let o=null==e||null==(l=e.constructor)||null==(t=l.meta)?void 0:t.label;if("string"==typeof o&&o.trim())return o}catch(e){}};if(u){let t=T(u),l=u.uid,o=null==(e=u.constructor)?void 0:e.name,n=s(u.resource),i={},d=!1,c=n.collectionName;a(c)&&(i.collectionName={description:"Collection name",getVar:"ctx.model.resource.collectionName",value:c},d=!0);let p=n.dataSourceKey;a(p)&&(i.dataSourceKey={description:"Data source key",getVar:"ctx.model.resource.dataSourceKey",value:p},d=!0);let h=n.associationName;a(h)&&(i.associationName={description:"Association name",getVar:"ctx.model.resource.associationName",value:h},d=!0),r.flowModel={description:"Current FlowModel information",getVar:"ctx.model",properties:{...a(t)?{label:{description:"Flow model label",value:t}}:{},...a(o)?{modelClass:{description:"Flow model class name",value:o}}:{},...a(l)?{uid:{description:"Flow model uid",getVar:"ctx.model.uid",value:l}}:{},...d?{resource:{description:"Flow model resource",getVar:"ctx.model.resource",properties:i}}:{}}}}if((null==d?void 0:d.uid)&&(r.popup={description:"Current popup information",getVar:"ctx.popup",properties:{uid:{description:"Popup uid",getVar:"ctx.popup.uid",value:d.uid},...(null==d?void 0:d.record)?{record:{description:"Popup record",getVar:"ctx.popup.record"}}:{},...(null==d?void 0:d.sourceRecord)?{sourceRecord:{description:"Popup source record",getVar:"ctx.popup.sourceRecord"}}:{}}}),f){let e=T(f),l=f.uid,o=null==(t=f.constructor)?void 0:t.name,n={},i=!1,s=y.collectionName;a(s)&&(n.collectionName={description:"Collection name",getVar:`${v}.collectionName`,value:s},i=!0);let d=y.dataSourceKey;a(d)&&(n.dataSourceKey={description:"Data source key",getVar:`${v}.dataSourceKey`,value:d},i=!0);let u=y.associationName;a(u)&&(n.associationName={description:"Association name",getVar:`${v}.associationName`,value:u},i=!0),r.block={description:"Current block information",getVar:g,properties:{...a(e)?{label:{description:"Block label",value:e}}:{},...a(o)?{modelClass:{description:"Block model class name",value:o}}:{},...a(l)?{uid:{description:"Block uid",getVar:`${g}.uid`,value:l}}:{},...i?{resource:{description:"Block resource",getVar:v,properties:n}}:{}}}}let D=(()=>{let e=null==d?void 0:d.uid;if(a(e))return String(e).trim();let t=null==p?void 0:p.viewUid;if(a(t))return String(t).trim()})(),N=i(()=>o.engine),O=D?null==N?void 0:N.getModel(D,!0):void 0,$=e=>{var t;return(null==(t=e.context)?void 0:t.blockModel)===e};if(O){let e=[O],t=[];for(let o=0;o<e.length;o++){let n=e[o];if($(n)){let e=(null==(l=n.constructor)?void 0:l.name)||n.uid,o=T(n)||e||n.uid,r=s(n.resource),i={};a(r.dataSourceKey)&&(i.dataSourceKey=r.dataSourceKey),a(r.collectionName)&&(i.collectionName=r.collectionName),a(r.associationName)&&(i.associationName=r.associationName);let d={uid:n.uid,label:o,modelClass:e,...Object.keys(i).length>0?{resource:i}:{}};t.push(d)}let r=n.subModels;if(r&&"object"==typeof r)for(let t of Object.values(r))t&&(Array.isArray(t)?e.push(...t):e.push(t))}t.length&&(r.currentViewBlocks={description:"Current view blocks",value:t})}return r}async getVarInfos(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.maxDepth??3,l=Number.isFinite(t)?Math.max(1,Math.floor(t)):3,o="v1",n=this.createProxy(),r=e=>"string"==typeof e&&e.startsWith("_"),i=e=>!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then,a=new WeakMap,s=async e=>{if(!e)return;if("function"!=typeof e)return e;let t=a.get(e);return t||(t=(async()=>{let t=e.call(n,n);return(i(t)?await t:t)||null})(),a.set(e,t)),await t||void 0},d=e=>{if("string"!=typeof e)return;let t=e.trim();if(!t)return;let l=(0,P.YB)(t);return Array.isArray(l)&&l.length>0?l.join("."):"ctx"===t?"":t.startsWith("ctx.")?t.slice(4).trim():t},u=(()=>{let t=e.path;return("string"==typeof t?[t]:Array.isArray(t)?t:[]).map(e=>d(String(e))).filter(e=>"string"==typeof e&&e.length>0)})(),c=(()=>{let t=e.path;return"string"==typeof t?""===d(t):!!Array.isArray(t)&&t.some(e=>""===d(String(e)))})(),p=(()=>{var e,t,l,n,r,i,a,s;let d=(0,R.B)(this),u=R.F.resolve(o,d)||R.F.resolve(o,"*");if(!u)return{};let c=(null==(l=this)||null==(t=l.api)||null==(e=t.auth)?void 0:e.locale)||(null==(r=this)||null==(n=r.i18n)?void 0:n.language)||(null==(i=this)?void 0:i.locale);try{if(null==u||null==(a=u.getDoc)?void 0:a.length)return u.getDoc(c)||{};return(null==u||null==(s=u.getDoc)?void 0:s.call(u))||{}}catch(e){return{}}})();eT(null==p?void 0:p.methods)&&p.methods,eT(null==p?void 0:p.properties)&&p.properties;let h=e=>"string"==typeof e?{description:e}:eT(e)?e:void 0,m=async(e,t)=>{if(void 0!==e){if("boolean"==typeof e)return e;if("function"==typeof e)try{let l=t(e);return i(l)?!!await l:!!l}catch(e){return!1}return!!e}},f=async(e,t)=>{if(null!=e){if("string"==typeof e)return e;if("function"==typeof e)try{let l=t(e),o=i(l)?await l:l;if("string"==typeof o)return o;return null==o?void 0:String(o)}catch(e){return}return String(e)}},g=async e=>{let t=!1,l=[];try{if("boolean"==typeof e)t=e;else if(Array.isArray(e))l=e;else if("function"==typeof e){let o=e(n),r=i(o)?await o:o;"boolean"==typeof r?t=r:Array.isArray(r)&&(l=r)}}catch(e){t=!1,l=[]}let o=[];if(Array.isArray(l))for(let e of l){if("string"!=typeof e)continue;let t=e.trim();!(!t||"ctx"===t||t.startsWith("ctx."))&&(/\s/.test(t)||o.push(t))}return{hideSelf:!!t,hideSubpaths:o}},v=(e,t)=>{if(!e)return!1;let l=e.split(".").filter(Boolean);for(;l.length;){if(t.has(l.join(".")))return!0;l.pop()}return!1},y=e=>{let t=h(e);if(!t)return{};let l={};for(let e of["title","type","interface","description","examples","completion","ref","params","returns"]){let o=t[e];void 0!==o&&(l[e]=o)}return Array.isArray(l.examples)&&(l.examples=l.examples.filter(e=>"string"==typeof e&&e.trim())),l},b=async e=>{let t,o,{docNode:i,metaNode:a,infoNode:d,depth:u,pathFromRoot:c,hiddenPrefixes:p}=e,x=c.join(".");if(v(x,p))return;let w=h(i),S=h(d),M=await g(null==w?void 0:w.hidden);if(M.hideSelf)return;let F=await g(null==S?void 0:S.hidden);if(F.hideSelf)return;let A=await s(a);if(await m(null==A?void 0:A.hidden,e=>e.call(A,n)))return;let k=new Set(p);for(let e of[...M.hideSubpaths,...F.hideSubpaths]){let t=e.trim();if(!t)continue;let l="ctx"===t?"":t.startsWith("ctx.")?t.slice(4):t;if(!l)continue;let o=x?`${x}.${l}`:l;k.add(o)}let C=await m(null==w?void 0:w.disabled,e=>e(n)),P=await f(null==w?void 0:w.disabledReason,e=>e(n)),j=await m(null==A?void 0:A.disabled,e=>e.call(A,n)),I=await f(null==A?void 0:A.disabledReason,e=>e.call(A,n)),E=await m(null==S?void 0:S.disabled,e=>e(n)),_=await f(null==S?void 0:S.disabledReason,e=>e(n)),R=void 0!==E?E:void 0!==j?j:C,T=void 0!==_?_:void 0!==I?I:P,D={};if(D={...D={...D={...D,...y(w)},...y(A)},...y(S)},void 0!==R&&(D.disabled=!!R),void 0!==T&&(D.disabledReason=T),u>=l)return Object.keys(D).length?D:void 0;let N=eT(null==w?void 0:w.properties)?w.properties:void 0;if(null==A?void 0:A.properties)try{let e=A.properties;if("function"==typeof e){let l=await e.call(A,n);A.properties=l,t=l}else eT(e)&&(t=e)}catch(e){t=void 0}if(eT(S)&&(null==S?void 0:S.properties))try{let e=S.properties;if("function"==typeof e){let t=await e.call(S,n);S.properties=t,o=t}else eT(e)&&(o=e)}catch(e){o=void 0}let O=new Set;if(N)for(let e of Object.keys(N))O.add(e);if(t)for(let e of Object.keys(t))O.add(e);if(o)for(let e of Object.keys(o))O.add(e);if(!O.size)return Object.keys(D).length?D:void 0;let $={};for(let e of O){if(r(e))continue;let l=await b({docNode:null==N?void 0:N[e],metaNode:null==t?void 0:t[e],infoNode:null==o?void 0:o[e],depth:u+1,pathFromRoot:[...c,e],hiddenPrefixes:k});l&&($[e]=l)}if(Object.keys($).length&&(D.properties=$),Object.keys(D).length)return D},x=async e=>{if(!e.length)return;let[t,...l]=e,o=this.getPropertyOptions(t);if(null==o?void 0:o.meta)try{if(!l.length)return o.meta;let e=await s(o.meta);if(!e)return;for(let t=0;t<l.length;t++){let o=l[t],r=null==e?void 0:e.properties;if(!r)break;if("function"==typeof r){let t=await r.call(e,n);e.properties=t,r=t}if(!r||"object"!=typeof r)break;let i=null==r?void 0:r[o];if(!i)break;if(t===l.length-1)return i;let a=await s(i);if(!a)break;e=a}return}catch(e){return}};if(!c&&u.length){let e={};for(let t of u){let l=t.split(".").map(e=>e.trim()).filter(Boolean);if(l.some(e=>r(e))||!l.length)continue;let o=await x(l),n=await b({docNode:void 0,metaNode:o,infoNode:void 0,depth:1,pathFromRoot:[],hiddenPrefixes:new Set});n&&(e[t]=n)}return e}let w=this._getPropertiesMeta(),S={};for(let[e,t]of Object.entries(w)){if(r(e))continue;let l=await b({docNode:void 0,metaNode:t,infoNode:void 0,depth:1,pathFromRoot:[e],hiddenPrefixes:new Set});l&&(S[e]=l)}return S}_getPropertiesMeta(){let e={};for(let t of this._delegates)Object.assign(e,t._getPropertiesMeta());for(let[t,l]of Object.entries(this._props))l.meta&&(e[t]=(l.meta,l.meta));return e}_getOwnProperty(e,t){let l=this._props[e];if(l){if("value"in l)return l.value;if(l.get){if(!1===l.cache)return l.get(t);let o=l.observable?"_observableCache":"_cache";if(e in this[o])return this[o][e];if(this._pending[e])return this._pending[e];let n=l.get(this.createProxy());return"object"==typeof n&&null!==n&&"function"==typeof n.then||"function"==typeof n&&"function"==typeof n.then?(this._pending[e]=n.then(t=>(this[o][e]=t,delete this._pending[e],t),t=>{throw delete this._pending[e],t}),this._pending[e]):(this[o][e]=n,n)}}}_getOwnMethod(e,t){let l=this._methods[e];return"function"==typeof l?l.bind(t):l}_findPropertyInDelegates(e,t){for(let l of e){if(Object.prototype.hasOwnProperty.call(l._props,t))return l._props[t];let e=this._findPropertyInDelegates(l._delegates,t);if(void 0!==e)return e}}_findInDelegates(e,t){for(let l of e){if(Object.prototype.hasOwnProperty.call(l._props,t))return{result:l._getOwnProperty(t,this.createProxy())};if(Object.prototype.hasOwnProperty.call(l._methods,t))return{result:l._getOwnMethod(t,this.createProxy())};let e=this._findInDelegates(l._delegates,t);if(void 0!==e)return e}}_hasInDelegates(e,t){for(let l of e)if(Object.prototype.hasOwnProperty.call(l._props,t)||Object.prototype.hasOwnProperty.call(l._methods,t)||this._hasInDelegates(l._delegates,t))return!0;return!1}getPropertyOptions(e){return Object.prototype.hasOwnProperty.call(this._props,e)?this._props[e]:this._findPropertyInDelegates(this._delegates,e)}constructor(){return(0,a._)(this,es),(0,a._)(this,ed),(0,a._)(this,eu),(0,a._)(this,ec),(0,a._)(this,ep),(0,a._)(this,eh),(0,a._)(this,em),(0,a._)(this,ef),(0,s._)(this,"_props",{}),(0,s._)(this,"_methods",{}),(0,s._)(this,"_methodInfos",{}),(0,s._)(this,"_cache",{}),(0,s._)(this,"_observableCache",d.observable.shallow({})),(0,s._)(this,"_delegates",[]),(0,s._)(this,"_pending",{}),(0,n._)(this,ea,{writable:!0,value:null}),(0,s._)(this,"_metaNodeCache",new WeakMap),this.createProxy()}}function ev(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],o=arguments.length>3?arguments[3]:void 0;return"function"==typeof e?async()=>{let n=await e();o&&(o.properties=n);let r=Object.entries(n);return r.sort((e,t)=>{let[,l]=e,[,o]=t;return((null==o?void 0:o.sort)??0)-((null==l?void 0:l.sort)??0)}),r.map(e=>{let[o,n]=e;return(0,i._)(this,ef,eM).call(this,o,n,[...t,o],l)})}:Object.entries(e).sort((e,t)=>{let[,l]=e,[,o]=t;return((null==o?void 0:o.sort)??0)-((null==l?void 0:l.sort)??0)}).map(e=>{let[o,n]=e;return(0,i._)(this,ef,eM).call(this,o,n,[...t,o],l)})}function ey(e){if(0===e.length)return null;let[t,...l]=e,o=this._props[t];if(null==o?void 0:o.meta)return(0,i._)(this,ec,ex).call(this,t,o.meta,l,[t]);let n=(0,i._)(this,eu,eb).call(this,this._delegates,t);return n?(0,i._)(this,ec,ex).call(this,t,n,l,[t]):null}function eb(e,t){for(let l of e){let e=l._props[t];if(null==e?void 0:e.meta)return e.meta;let o=(0,i._)(this,eu,eb).call(this,l._delegates,t);if(o)return o}return null}function ex(e,t,l,o){if(0===l.length)return[e,t,o];if("function"==typeof t)return[l[l.length-1],async()=>{let e=await t();return await (0,i._)(this,eh,ew).call(this,e,l)},[...o,...l]];if(t.properties){let[e,...n]=l,r=[...o,e];if("function"==typeof t.properties)return[l[l.length-1],async()=>{let l=t.properties,o=await l();t.properties=o;let r=o[e];if(!r)throw Error(`Property ${e} not found in resolved properties`);return await (0,i._)(this,eh,ew).call(this,r,n)},[...o,...l]];let a=t.properties[e];if(a)return(0,i._)(this,ec,ex).call(this,e,a,n,r)}return null}async function ew(e,t){if(0===t.length)return e;let l=e;for(let e of t){let o=h().get(l,"properties");if(!o)throw Error(`Property path not found: ${t.join(".")}`);if("function"==typeof o){let e=await o();l.properties=e,o=e}let n=o[e];if(!n)throw Error(`Property ${e} not found while resolving path: ${t.join(".")}`);l=n}return l}function eS(e){let t=!(arguments.length>1)||void 0===arguments[1]||arguments[1];if(0===e.length)return[];let l=t?e.slice(0,-1):e;if(0===l.length)return[];let o=[],n=this._getPropertiesMeta();for(let e=0;e<l.length;e++){let t=l[e],r=n[t];if(!r||"function"==typeof r){o.push(t);break}if(o.push(r.title||t),e<l.length-1&&r.properties&&"function"!=typeof r.properties)n=r.properties;else if(e<l.length-1){for(let t=e+1;t<l.length;t++)o.push(l[t]);break}}return o}function eM(e,t){let l,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[e],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],r=this._metaNodeCache.get(t);if(r)return r.paths=o,r.parentTitles=n.length>0?n:void 0,r;let a=e=>{if(!e)return{disabled:!1,hidden:!1};let t="function"==typeof e.disabled?e.disabled():e.disabled,l="function"==typeof e.disabledReason?e.disabledReason():e.disabledReason,o="function"==typeof e.hidden?e.hidden():e.hidden;return{disabled:!(t&&"function"==typeof t.then)&&!!t,reason:l&&"function"==typeof l.then?void 0:l,hidden:!(o&&"function"==typeof o.then)&&!!o}};if("function"==typeof t){let r=e,s=t.hasChildren;l={name:e,title:t.title||r,type:"object",interface:void 0,options:void 0,uiSchema:void 0,paths:o,parentTitles:n.length>0?n:void 0,disabled:()=>{let e=t();return(!e||"function"!=typeof e.then)&&a(e).disabled},disabledReason:()=>{let e=t();if(!e||"function"!=typeof e.then)return a(e).reason},hidden:()=>{let e=t();return(!e||"function"!=typeof e.then)&&a(e).hidden},children:!1===s?void 0:async()=>{try{let r=await t(),a=(null==r?void 0:r.title)||e;if(l.title=a,l.type=null==r?void 0:r.type,l.interface=null==r?void 0:r.interface,l.options=null==r?void 0:r.options,l.uiSchema=null==r?void 0:r.uiSchema,!(null==r?void 0:r.properties))return[];let s=(0,i._)(this,es,ev).call(this,r.properties,o,[...n,a],r),d=Array.isArray(s)?s:await s();return l.children=d,d}catch(t){return console.warn(`Failed to load meta for ${e}:`,t),[]}}}}else{let r=t.title,{disabled:s,reason:d,hidden:u}=a(t);l={name:e,title:r,type:t.type,interface:t.interface,options:t.options,uiSchema:t.uiSchema,paths:o,parentTitles:n.length>0?n:void 0,disabled:s,disabledReason:d,hidden:u,children:t.properties?(0,i._)(this,es,ev).call(this,t.properties,o,[...n,r],t):void 0}}return this._metaNodeCache.set(t,l),l}class eF extends eg{constructor(){super(),this.defineMethod("getModel",(e,t)=>this.engine.getModel(e,t)),this.defineMethod("request",e=>{let t=this.app;return"string"==typeof(null==e?void 0:e.url)&&el(e.url,t)?u.A.request(e):this.api.request(e)}),this.defineMethod("runjs",async function(e,t,l){let{preprocessTemplates:o,...n}=l||{},r={...(null==n?void 0:n.globals)||{},...t||{}},i=await this.createJSRunner({...n||{},globals:r}),a=(0,k.R)({version:null==n?void 0:n.version,preprocessTemplates:o}),s=await (0,P.ji)(String(e??""),{preprocessTemplates:a});return i.run(s)})}}class eA extends eF{}class ek extends eF{constructor(e){if(!(e instanceof F.$))throw Error("Invalid FlowEngine instance");super(),(0,s._)(this,"engine",void 0),this.engine=e,this.engine=e;let t=new M.zA;t.setFlowEngine(this.engine);let o=new M.qS({key:"main",displayName:"Main"});t.addDataSource(o),this.defineProperty("engine",{value:this.engine,info:{description:"FlowEngine instance.",detail:"FlowEngine"}}),this.defineProperty("sql",{get:e=>new C.tP(e),cache:!1,info:{description:"SQL helper (FlowSQLRepository).",detail:"FlowSQLRepository"}}),this.defineProperty("dataSourceManager",{value:t,info:{description:"DataSourceManager instance.",detail:"DataSourceManager"}});let n=new A(this);this.defineMethod("t",(e,t)=>n.translate(e,t)),this.defineMethod("renderJson",function(e){return this.resolveJsonTemplate(e)}),this.defineMethod("resolveJsonTemplate",async function(e){let t=(0,P.nN)(e),l=Object.keys(t||{});if(!l.length)return(0,P.M)(e,this);let o={};for(let e of l){let l=t[e]||[],n=this.getPropertyOptions(e),r=null==n?void 0:n.resolveOnServer;if(!0===r)o[e]=l;else if("function"==typeof r){let t=l.filter(e=>{try{return!!r(e)}catch(e){return!1}});t.length&&(o[e]=t)}}let n=Object.keys(o).length>0,r=e;if(n){let t=e=>{let t=(0,_.XU)(e);if(t)return t;try{var l,o,n,r,i,a,s,d,u,c,p,h,m;let t=null==e||null==(o=e.resource)||null==(l=o.getMeta)?void 0:l.call(o,"currentFilterByTk");if(null==t)return;let f=(null==e||null==(n=e.collection)?void 0:n.name)||(null==e||null==(c=e.resource)||null==(u=c.getResourceName)||null==(d=u.call(c))||null==(s=d.split)||null==(a=s.call(d,"."))||null==(i=a.slice)||null==(r=i.call(a,-1))?void 0:r[0]);if(!f)return;let g=(null==e||null==(p=e.collection)?void 0:p.dataSourceKey)||(null==e||null==(m=e.resource)||null==(h=m.getDataSourceKey)?void 0:h.call(m));return{collection:f,dataSourceKey:g,filterByTk:t}}catch(e){return}},l=async()=>{let e={};try{var t,l;let n=null==(t=(l=this)._getPropertiesMeta)?void 0:t.call(l);if(!n||"object"!=typeof n)return e;for(let[t,l]of Object.entries(n))if(o[t])try{let n;if("function"==typeof l){let e=l;n=await e()}else n=l;if(!n||"object"!=typeof n)continue;let r=n.buildVariablesParams;if("function"!=typeof r)continue;let i=await r(this);if(!i)continue;let a=o[t]||[],s=en(i,a);s&&("object"!=typeof s||Object.keys(s).length)&&(e[t]=s)}catch(e){}}catch(e){}return e},n=await l(),s={...n};try{let e="formValues",l=o[e]||[];if(l.length){let o=new Set;for(let e of l){let t=er(e);t&&o.add(t)}let r=null==n?void 0:n[e],i=new Set;if(!r||"object"!=typeof r||Array.isArray(r)||eo(r)||Object.keys(r).forEach(e=>i.add(e)),[...o].filter(e=>!i.has(e)).length){let o=t(this);if(o){let{generatedFields:t,generatedAppends:n}=ei(l),r={...o,fields:t,appends:n},i=s[e];if(i&&"object"==typeof i&&!Array.isArray(i)&&!eo(i)){for(let[t,l]of Object.entries(i))s[`${e}.${t}`]=l;delete s[e]}s[e]=r}}}}catch(e){}let d=Object.keys(s).length?(0,E.d)(this,s):void 0;if(!d){let t=Object.keys(o);if(t.length>0&&t.every(e=>{var t;return null==(t=this.getPropertyOptions(e))?void 0:t.serverOnlyWhenContextParams}))return(0,P.M)(e,this)}if(this.api)try{r=await (0,I.o4)(this,{template:e,contextParams:d||{}})}catch(t){var i,a;null==(a=this.logger)||null==(i=a.warn)||i.call(a,{err:t},"variables:resolve failed, fallback to client-only"),r=e}}return(0,P.M)(r,this)}),this.defineMethod("getVar",async function(e){let t=("string"==typeof e?e:String(e??"")).trim();if(t){if("ctx"!==t&&!t.startsWith("ctx."))throw Error(`ctx.getVar(path) expects an expression starting with "ctx.", got: "${t}"`);return this.resolveJsonTemplate(`{{ ${t} }}`)}},'Resolve a ctx expression value by path (expression starts with "ctx.").'),this.defineProperty("requirejs",{get:()=>{var e,t;return null==(t=this.app)||null==(e=t.requirejs)?void 0:e.requirejs}}),this.defineProperty("token",{get:()=>{var e,t;return null==(t=this.api)||null==(e=t.auth)?void 0:e.token},cache:!1,meta:Object.assign(()=>({type:"string",title:this.t("API Token"),sort:980}),{title:"API Token",sort:980,hasChildren:!1})}),this.defineProperty("role",{get:()=>{var e,t;return null==(t=this.api)||null==(e=t.auth)?void 0:e.role},cache:!1,meta:Object.assign(()=>({type:"string",title:this.t("Current role"),sort:990}),{title:(0,P.MI)("Current role"),sort:990,hasChildren:!1})}),this.defineProperty("urlSearchParams",{cache:!1,get:()=>{var e;let t=(null==(e=this.location)?void 0:e.search)||"",l=t.startsWith("?")?t.slice(1):t;return f().parse(l)||{}},meta:Object.assign(()=>({type:"object",title:this.t("URL search params"),sort:970,disabled:()=>{var e;let t=(null==(e=this.location)?void 0:e.search)||"",l=t.startsWith("?")?t.slice(1):t;return 0===Object.keys(f().parse(l)||{}).length},disabledReason:()=>this.t("The value of this variable is derived from the query string of the page URL. This variable can only be used normally when the page has a query string."),properties:async()=>{var e;let t=(null==(e=this.location)?void 0:e.search)||"",l=t.startsWith("?")?t.slice(1):t,o=f().parse(l)||{},n={};for(let e of Object.keys(o))n[e]={type:"string",title:e};return n}}),{title:(0,P.MI)("URL search params"),sort:970,hasChildren:!0})}),this.defineProperty("logger",{get:()=>this.engine.logger.child({module:"flow-engine"})}),this.defineProperty("auth",{get:()=>({roleName:this.api.auth.role,locale:this.api.auth.locale,token:this.api.auth.token,user:this.user})}),this.defineProperty("date",{get:()=>{let e=t=>new Proxy({},{get:(l,o)=>{if("string"!=typeof o)return;let n=[...t,o];if(!(0,P.JE)(n))return;let r=(0,P.Vv)(n);return void 0!==r?r:e(n)}});return e(["date"])},cache:!1}),this.defineMethod("loadCSS",async e=>{let t=(0,P.i)(e);return new Promise((e,l)=>{if(document.querySelector(`link[href="${t}"]`))return void e(null);let o=document.createElement("link");o.rel="stylesheet",o.href=t,o.onload=()=>e(null),o.onerror=()=>l(Error(`Failed to load CSS: ${t}`)),document.head.appendChild(o)})},{description:"Load a CSS file by URL (browser only).",params:[{name:"href",type:"string",description:"CSS URL."}],returns:{type:"Promise<void>"},completion:{insertText:"await ctx.loadCSS('https://example.com/style.css')"},examples:["await ctx.loadCSS('https://example.com/style.css');"]}),this.defineMethod("requireAsync",async e=>{if((0,P.yp)(e))return this.loadCSS(e);let t=(0,P.i)(e,{raw:!0});return await H(this.requirejs,t)}),this.defineMethod("importAsync",async function(e){return(0,P.yp)(e)?this.loadCSS(e):await ee(this,e,{importer:Y})}),this.defineMethod("createJSRunner",async function(e){try{let e=await Promise.resolve().then(l.bind(l,88828));"function"==typeof(null==e?void 0:e.setupRunJSContexts)&&await e.setupRunJSContexts()}catch(e){}let t=(null==e?void 0:e.version)||"v1",o=(0,R.B)(this),n=R.F.resolve(t,o)||eW,r=new n(this);r.defineMethod("t",(e,t)=>this.t(e,{ns:"runjs",...t}));let i={};try{var a,s,d,u,c,p,h,m;let e=(null==(d=this)||null==(s=d.api)||null==(a=s.auth)?void 0:a.locale)||(null==(c=this)||null==(u=c.i18n)?void 0:u.language)||(null==(p=this)?void 0:p.locale);i=(null==n||null==(h=n.getDoc)?void 0:h.length)?n.getDoc(e)||{}:(null==n||null==(m=n.getDoc)?void 0:m.call(n))||{}}catch(e){i={}}let f={ctx:eL(r,{doc:i}),...(null==e?void 0:e.globals)||{}},{timeoutMs:g}=e||{};return new k.I({globals:f,timeoutMs:g})}),this.defineMethod("buildServerContextParams",function(e){return(0,E.d)(this,e)}),this.defineMethod("getAction",function(e){return this.engine.getAction(e)}),this.defineMethod("getActions",function(){return this.engine.getActions()}),this.defineMethod("getEvents",function(){return this.engine.getEvents()}),this.defineMethod("runAction",async function(e,t){let l=this.engine.getAction(e),o=await (0,T.v)(this,l);if(!l)throw Error(`Action '${e}' not found.`);let n={...await (0,P.gG)(l.defaultParams,o)||{},...t||{}},r=l.useRawParams;if("function"==typeof r&&(r=await r(o)),r||(n=await o.resolveJsonTemplate(n)),!l.handler)throw Error(`Action '${e}' has no handler.`);return l.handler(o,n)}),this.defineProperty("acl",{get:()=>new x(this.engine)}),this.defineMethod("aclCheck",function(e){return this.acl.aclCheck(e)}),this.defineMethod("createResource",function(e){return this.engine.createResource(e,{context:this.createProxy()})}),this.defineMethod("makeResource",function(e){return this.engine.createResource(e,{context:this.createProxy()})}),this.defineMethod("initResource",function(e){return this.has("resource")||this.defineProperty("resource",{get:()=>this.createResource(e)}),this.resource}),this.defineMethod("useResource",function(e){return this.initResource(e)})}}class eC extends eA{constructor(e){if(!e||"object"!=typeof e)throw Error("Invalid FlowModel instance");super(),this.addDelegate(e.flowEngine.context),this.defineMethod("onRefReady",(e,t,l)=>{this.engine.reactView.onRefReady(e,t,l)}),this.defineProperty("model",{value:e,info:{description:"Current FlowModel instance.",detail:"FlowModel"}});let t=(0,g.createRef)();this.defineProperty("ref",{get:()=>(this.model._refCreated=!0,t),info:{description:"Stable React ref for the view container.",detail:"React.RefObject<HTMLDivElement>"}}),this.defineMethod("openView",async function(e,t){var l,o,n,r,i;let a={...t};(a.defineProperties||a.defineMethods)&&(a.navigation=!1);let s=null;if(!(s=await this.engine.loadModel({uid:e}))){let t=(e,t)=>{let l={};for(let o of t)void 0!==(null==e?void 0:e[o])&&(l[o]=e[o]);return l};s=this.engine.createModel({uid:e,use:"PopupActionModel",parentId:this.model.uid,subType:"object",subKey:e,stepParams:{popupSettings:{openView:{...t(a,["dataSourceKey","collectionName","associationName","mode","size"])}}}}),await s.save()}s.setParent(this.model);let d=(null==a?void 0:a.routeViewUid)??(null==a?void 0:a.viewUid)??((null==(o=s.stepParams)||null==(l=o.popupSettings)?void 0:l.openView)?s.uid:this.model.uid),u=this.view,c=(null==a?void 0:a.isMobileLayout)?"embed":(null==a?void 0:a.mode)||"drawer",p={...a,viewUid:d,navigation:a.navigation};p.filterByTk=p.filterByTk||(null==(n=this.inputArgs)?void 0:n.filterByTk),p.sourceId=p.sourceId||(null==(r=this.inputArgs)?void 0:r.sourceId);let h={type:c,inputArgs:p,navigation:null==u?void 0:u.navigation,preventClose:!!(null==a?void 0:a.preventClose),engineCtx:this.engine.context};s.context.defineProperty("view",{value:h});let m=null==(i=s.getFlow)?void 0:i.call(s,"popupSettings"),f=null==m?void 0:m.on,g="click";"string"==typeof f&&f?g=f:f&&"object"==typeof f&&"string"==typeof f.eventName&&f.eventName&&(g=f.eventName),await s.dispatchEvent(g,{...a},{debounce:!0})}),this.defineMethod("getEvents",function(){return this.model.getEvents()}),this.defineMethod("getAction",function(e){return this.model.getAction(e)}),this.defineMethod("getActions",function(){return this.model.getActions()}),this.defineMethod("runAction",async function(e,t){let l=this.model.getAction(e),o=await (0,T.v)(this,l);if(!l)throw Error(`Action '${e}' not found.`);let n={...await (0,P.gG)(l.defaultParams,o)||{},...t||{}},r=l.useRawParams;if("function"==typeof r&&(r=await r(o)),r||(n=await o.resolveJsonTemplate(n)),!l.handler)throw Error(`Action '${e}' has no handler.`);return l.handler(o,n)})}}class eP extends eA{constructor(e,t){if(!e||"object"!=typeof e)throw Error("Invalid FlowModel instance");super(),(0,s._)(this,"master",void 0),(0,s._)(this,"fork",void 0),this.master=e,this.fork=t,this.addDelegate(this.master.context),this.defineMethod("onRefReady",(e,t,l)=>{this.engine.reactView.onRefReady(e,t,l)}),this.defineProperty("model",{get:()=>this.fork,info:{description:"Current ForkFlowModel instance (as model).",detail:"ForkFlowModel"}});let l=(0,g.createRef)();this.defineProperty("ref",{get:()=>(this.fork._refCreated=!0,l),info:{description:"Stable React ref for the view container.",detail:"React.RefObject<HTMLDivElement>"}})}}class ej extends eA{_getOwnProperty(e){if("runtime"===this.mode)return super._getOwnProperty(e,this.createProxy());let t=this._props[e];if(t){if("value"in t)return S.create()[e];if(t.get){if(!1===t.cache)return S.create()[e];let l=t.observable?"_observableCache":"_cache";return e in this[l]||(this[l][e]=S.create()[e]),this[l][e]}}}exit(){throw new j.zz(this.flowKey,this.model.uid)}exitAll(){throw new j.zz(this.flowKey,this.model.uid)}get mode(){return this._mode}constructor(e,t,l="runtime"){super(),(0,s._)(this,"model",void 0),(0,s._)(this,"flowKey",void 0),(0,s._)(this,"_mode",void 0),(0,s._)(this,"stepResults",void 0),this.model=e,this.flowKey=t,this._mode=l,this.stepResults={},this.addDelegate(this.model.context),this.defineMethod("getStepParams",l=>e.getStepParams(t,l)||{}),this.defineMethod("setStepParams",(l,o)=>e.setStepParams(t,l,o)),this.defineMethod("getStepResults",e=>h().get(this.steps,[e,"result"])),this.defineMethod("initResource",t=>{e.context.has("resource")?console.log(`[FlowRuntimeContext] useResource - resource already defined in context: ${t}`):(e.context.defineProperty("resource",{get:()=>this.makeResource(t)}),e.resource||(e.resource=e.context.resource))}),this.defineMethod("useResource",e=>this.initResource(e)),this.defineProperty("resource",{get:()=>e.resource||e.context.resource,cache:!1}),this.defineMethod("onRefReady",(e,t,l)=>{this.engine.reactView.onRefReady(e,t,l)})}}let eI=new WeakMap,eE=new WeakMap,e_=new WeakMap;function eR(e,t){if(null===t)return;if(Array.isArray(e)||Array.isArray(t)||"object"!=typeof e||"object"!=typeof t)return t??e;let l={...e};for(let o of Object.keys(t)){let n=eR(null==e?void 0:e[o],t[o]);void 0===n?delete l[o]:l[o]=n}return l}function eT(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function eD(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}function eN(e){return!0===e||(e&&eT(e)?e:void 0)}function eO(e,t,l){if(!Array.isArray(t)||!t.length)return;let o=e;for(let e of t){if(!e)return;o.children=o.children||{},o.children[e]=o.children[e]||{},o=o.children[e]}o.deprecated=l}function e$(e,t){void 0!==t.deprecated&&(e.deprecated=t.deprecated);let l=t.children||{},o=Object.keys(l);if(o.length)for(let t of(e.children=e.children||{},o))e.children[t]=e.children[t]||{},e$(e.children[t],l[t])}function eB(e){let t={};if(!e)return t;let l=(e,o)=>{if(eT(e))for(let[n,r]of Object.entries(e)){if(!n||!r||"object"!=typeof r||Array.isArray(r))continue;let e=r,i=eN(e.deprecated);i&&eO(t,[...o,n],i),eT(e.properties)&&l(e.properties,[...o,n])}},o=e=>{if(eT(e))for(let[l,o]of Object.entries(e)){if(!l||!o||"object"!=typeof o||Array.isArray(o))continue;let e=eN(o.deprecated);e&&eO(t,[l],e)}};return l(e.properties,[]),o(e.methods),t}function eq(e){let t={},l=new WeakSet,o=(e,l)=>{if(eT(l))for(let[n,r]of Object.entries(l)){if(!n||"string"==typeof r||!r||"object"!=typeof r||Array.isArray(r))continue;let l=r,i=eN(l.deprecated);i&&eO(t,[...e,n],i),eT(l.properties)&&o([...e,n],l.properties)}},n=e=>{if(!e||"object"!=typeof e&&"function"!=typeof e||l.has(e))return;l.add(e);let r=e._methodInfos;if(eT(r))for(let[e,l]of Object.entries(r)){if(!e||!l||"object"!=typeof l||Array.isArray(l))continue;let o=eN(l.deprecated);o&&eO(t,[e],o)}let i=e._props;if(eT(i))for(let[e,l]of Object.entries(i)){if(!e)continue;let n=null==l?void 0:l.info;if(!n||"object"!=typeof n||Array.isArray(n))continue;let r=eN(n.deprecated);r&&eO(t,[e],r),eT(n.properties)&&o([e],n.properties)}let a=e._delegates;if(Array.isArray(a))for(let e of a)n(e)};return n(e),t}function eL(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=eB(t.doc);e$(l,eq(e));let o=new Set,n=new WeakMap,r=new WeakMap,i=new WeakMap,a=e=>{if(!e||"string"!=typeof e)return{};let t=2;for(let l of e.split("\n")){if(!l)continue;let e=l.match(/<anonymous>:(\d+):(\d+)/);if(!e)continue;let o=Number(e[1]),n=Number(e[2]);return{line:Number.isFinite(o)&&o>t?o-t:o,column:Number.isFinite(n)?n:void 0,rawLine:o,rawColumn:n}}return{}},s=(e,t)=>{if(eT(t))for(let[o,n]of Object.entries(t)){if(!o||"string"==typeof n||!n||"object"!=typeof n||Array.isArray(n))continue;let t=n,r=eN(t.deprecated);r&&eO(l,[...e,o],r),eT(t.properties)&&s([...e,o],t.properties)}},d=(e,t)=>{if(!e)return;let o=null==t?void 0:t.info;if(!o||"object"!=typeof o||Array.isArray(o))return;let n=eN(o.deprecated);n&&eO(l,[e],n),eT(o.properties)&&s([e],o.properties)},u=(e,t)=>{if(!e||!t||"object"!=typeof t||Array.isArray(t))return;let o=eN(t.deprecated);o&&eO(l,[e],o)},c=e=>{let t=e;for(;t&&("object"==typeof t||"function"==typeof t);){let e=n.get(t);if(!e)break;t=e}return t},p=e=>{if(e){if("string"==typeof e)return e.trim()||void 0;if(Array.isArray(e)){let t=e.map(e=>"string"==typeof e?e.trim():"").filter(Boolean);return t.length?t.join(", "):void 0}}},h=(t,l,n)=>{if(!t||o.has(t))return;o.add(t);let r=null==e?void 0:e.logger,i="function"==typeof(null==e?void 0:e.t)?(t,l)=>e.t(t,{ns:[P.u4,"client"],nsMode:"fallback",...l}):(e,t)=>{let l=(null==t?void 0:t.defaultValue)??e;return"string"==typeof l&&t?l.replace(/\{\{\s*([a-zA-Z0-9_]+)\s*\}\}/g,(e,l)=>{let o=null==t?void 0:t[l];return"string"==typeof o||"number"==typeof o?String(o):""}):l},s="object"==typeof l&&l?l:{},d=p(s.replacedBy),u="string"==typeof s.since?String(s.since):void 0,c="string"==typeof s.removedIn?String(s.removedIn):void 0,h="string"==typeof s.message?String(s.message):"",m=a(n),f=m.line?`(line ${m.line}${m.column?`:${m.column}`:""})`:"",g=h.trim(),v=g?i("RunJS deprecated warning with message",{defaultValue:"[RunJS][Deprecated] {{api}} {{message}}{{location}}",api:t,message:g,location:f}):i("RunJS deprecated warning",{defaultValue:"[RunJS][Deprecated] {{api}} is deprecated{{location}}",api:t,location:f}),y=i("RunJS deprecated separator",{defaultValue:"; "}),b=[v];d&&b.push(i("RunJS deprecated replacedBy",{defaultValue:"Use {{replacedBy}} instead",replacedBy:d})),u&&b.push(i("RunJS deprecated since",{defaultValue:"since {{since}}",since:u})),c&&b.push(i("RunJS deprecated removedIn",{defaultValue:"will be removed in {{removedIn}}",removedIn:c}));let x=b.filter(Boolean).join(y);try{r&&"function"==typeof r.warn?r.warn(x):console.warn(x)}catch(e){}},m=(e,t,l)=>{let n=t.deprecated;if(!n)return e;let r=i.get(e)||new Map;if(i.set(e,r),r.has(l))return r.get(l);let a=new Proxy(e,{apply(e,t,r){let i=o.has(l)?void 0:Error().stack;return h(l,n,i),Reflect.apply(e,c(t),r)},get:(e,t,l)=>Reflect.get(e,t,l)});return r.set(l,a),a},f=(e,t,l)=>{if(!e||"object"!=typeof e&&"function"!=typeof e||eD(e)||!(t.children&&Object.keys(t.children).length>0)&&"ctx"!==l)return e;let i=r.get(e)||new Map;if(r.set(e,i),i.has(l))return i.get(l);let a=new Proxy(e,{get(e,n,r){var i;if("symbol"==typeof n)return Reflect.get(e,n,c(r));let a=String(n),s=Reflect.get(e,n,c(r));if("ctx"===l&&"defineProperty"===a&&"function"==typeof s)return function(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];let o=s(...t);try{d(String((null==t?void 0:t[0])??""),null==t?void 0:t[1])}catch(e){}return o};if("ctx"===l&&"defineMethod"===a&&"function"==typeof s)return function(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];let o=s(...t);try{u(String((null==t?void 0:t[0])??""),null==t?void 0:t[2])}catch(e){}return o};let p=null==(i=t.children)?void 0:i[a];if(!p)return s;let g=`${l}.${a}`;if("function"==typeof s&&p.deprecated)return m(s,p,g);if(p.deprecated){let e=o.has(g)?void 0:Error().stack;h(g,p.deprecated,e)}return s&&("object"==typeof s||"function"==typeof s)&&p.children?f(s,p,g):s},has:(e,t)=>Reflect.has(e,t)});return n.set(a,e),i.set(l,a),a};return f(e,l,"ctx")}function eV(e,t,l){if(!eT(t))return e;if(!eT(e))return t;let o={...e};for(let n of Object.keys(t)){let r=t[n];if(null===r){delete o[n];continue}let i=l(eT(e)?e[n]:void 0,r);void 0===i?delete o[n]:o[n]=i}return o}function ez(e,t){if(null===t)return;let l=eT(e),o=eT(t),n="string"==typeof e;if("string"==typeof t)return l?ez(e,{description:t}):t;if(o){let o=l?e:n?{description:e}:void 0,r={...o||{}};for(let e of Object.keys(t)){if("properties"===e){let e=t.properties;if(null===e){delete r.properties;continue}let l=eV(null==o?void 0:o.properties,e,ez);void 0===l?delete r.properties:r.properties=l;continue}let l=eR(null==o?void 0:o[e],t[e]);void 0===l?delete r[e]:r[e]=l}return r}return t??e}function eK(e,t){if(null===t)return;let l=eT(e),o=eT(t),n="string"==typeof e;if("string"==typeof t)return l?eK(e,{description:t}):t;if(o){let o=l?e:n?{description:e}:void 0,r={...o||{}};for(let e of Object.keys(t)){let l=eR(null==o?void 0:o[e],t[e]);void 0===l?delete r[e]:r[e]=l}return r}return t??e}function eU(e,t){let l=eT(e)?e:{},o=eT(t)?t:{},n={...l};for(let e of Object.keys(o)){if("properties"===e){let e=eV(l.properties,o.properties,ez);void 0===e?delete n.properties:n.properties=e;continue}if("methods"===e){let e=eV(l.methods,o.methods,eK);void 0===e?delete n.methods:n.methods=e;continue}let t=eR(l[e],o[e]);void 0===t?delete n[e]:n[e]=t}return n}class eW extends eg{exit(){var e;throw new j.zz(this.flowKey,(null==(e=this.model)?void 0:e.uid)||"runjs")}exitAll(){var e;throw new j.zz(this.flowKey,(null==(e=this.model)?void 0:e.uid)||"runjs")}static define(e,t){let l=null==t?void 0:t.locale;if(l){let t=eE.get(this)||new Map,o=t.get(l)||{};t.set(l,eU(o,e)),eE.set(this,t)}else{let t=eI.get(this)||{};eI.set(this,eU(t,e))}e_.delete(this)}static getDoc(e){let t=this,l=e_.get(t),o=String(e||"default");if(l&&l.has(o))return l.get(o);let n=[],r=t;for(;r&&r.prototype;)n.unshift(r),r=Object.getPrototypeOf(r);let i={};for(let e of n)i=eU(i,eI.get(e)||{});if(e)for(let t of n){let l=eE.get(t);l&&l.has(e)&&(i=eU(i,l.get(e)))}return l||(l=new Map,e_.set(t,l)),l.set(o,i),i}constructor(e){super(),this.addDelegate(e),this.defineProperty("React",{value:g}),this.defineProperty("antd",{value:c}),this.defineProperty("dayjs",{value:N()});let t={...y,createRoot:(e,t)=>{let l=(null==e?void 0:e.__el)||e;return this.engine.reactView.createRoot(l,t)}};t.__nbRunjsInternalShim=!0,this.defineProperty("ReactDOM",{value:t}),(0,O.oJ)(this),this.defineMethod("render",function(e,t){let l=t||this.element;if(!l)throw Error("ctx.render: container not provided and ctx.element is not available");let o=(null==l?void 0:l.__el)||l,n=globalThis;n.__nbRunjsRoots=n.__nbRunjsRoots||new WeakMap;let r=n.__nbRunjsRoots,i=e=>{if(!e)return;if(e.disposeTheme&&"function"==typeof e.disposeTheme){try{e.disposeTheme()}catch(e){}e.disposeTheme=void 0}let t=e.root||e;if(t&&"function"==typeof t.unmount)try{t.unmount()}catch(e){}},a=()=>{let e=r.get(o);e&&(i(e),r.delete(o))};if("string"==typeof e)return a(),new b.x(o).innerHTML=String(e??""),null;if(e&&e.nodeType&&(1===e.nodeType||3===e.nodeType||11===e.nodeType)){for(a();o.firstChild;)o.removeChild(o.firstChild);return o.appendChild(e),null}let s=this.ReactDOM,d=this,u=r.get(o);return u&&u.rendererKey===s&&u.ownerKey===d||(u&&(i(u),r.delete(o)),u={rendererKey:s,ownerKey:d,root:this.ReactDOM.createRoot(o),disposeTheme:void 0,lastVnode:void 0},r.set(o,u)),(0,O.$B)({ctx:this,entry:u,vnode:e,containerEl:o,rootMap:r,unmountContainerRoot:a,internalReact:g,internalAntd:c})})}}},81440(e,t,l){l.d(t,{$:()=>ek});var o=l(88243),n=l(16213),r=l(50467),i=l(95243),a=l(2543),s=l.n(a),d=l(81318),u=l.n(d),c=l(64171);class p extends c.Z{getAction(e){return this.actions.get(e)}getActions(){return new Map(this.actions)}}var h=l(26955);class m extends h.L{getEvent(e){return this.events.get(e)}getEvents(){return new Map(this.events)}}var f=l(29007),g=l(48555),v=l(31108),y=l(88439),b=l(62572);class x{async emitModelEventIf(e,t,l){e&&await this.engine.emitter.emitAsync(`model:event:${e}:${t}`,l)}async withApplyFlowCache(e,t){if(!e||!this.engine)return await t();let l=this.engine.applyFlowCache.get(e);if(l){if("resolved"===l.status)return l.data;if("rejected"===l.status)throw l.error;if("pending"===l.status)return await l.promise}let o=t().then(t=>(this.engine.applyFlowCache.set(e,{status:"resolved",data:t,promise:Promise.resolve(t)}),t)).catch(t=>{throw this.engine.applyFlowCache.set(e,{status:"rejected",error:t,promise:Promise.reject(t)}),t});return this.engine.applyFlowCache.set(e,{status:"pending",promise:o}),await o}async runFlow(e,t,l,o,n){var r;let i,a=e.getFlow(t);if(!a)return e.context.logger.error(`BaseModel.applyFlow: Flow with key '${t}' not found.`),Promise.reject(Error(`Flow '${t}' not found.`));let d=new f.W5(e,t);d.defineProperty("reactView",{value:e.reactView}),d.defineProperty("inputArgs",{value:{...l}}),d.defineProperty("runId",{value:o||`run-${Date.now()}`});let u=d.stepResults,c=e.getEvent("string"==typeof a.on?a.on:null==(r=a.on)?void 0:r.eventName);c&&((c={...c}).defaultParams={...s().get(a,"on.defaultParams",{}),...c.defaultParams});let p=c?{eventStep:c,...a.steps}:a.steps;(0,y.w)(d,p,e,t);let h=d.steps,m={uid:e.uid,model:e,runId:d.runId,inputArgs:l,flowKey:t};for(let[l,o]of(await this.emitModelEventIf(n,`flow:${t}:start`,m),Object.entries(p))){let r,a,s={},c=o.useRawParams;if(o.use){let n=e.getAction(o.use);if(!n){d.logger.error(`BaseModel.applyFlow: Action '${o.use}' not found for step '${l}' in flow '${t}'. Skipping.`);continue}a=await (0,b.v)(d,{...n,...o}),r=o.handler||n.handler,c=c??n.useRawParams;let i=await (0,g.gG)(n.defaultParams,a),u=await (0,g.gG)(o.defaultParams,a);s={...i,...u}}else if(o.handler)a=await (0,b.v)(d,o),r=o.handler,s={...await (0,g.gG)(o.defaultParams,a)};else{d.logger.error(`BaseModel.applyFlow: Step '${l}' in flow '${t}' has neither 'use' nor 'handler'. Skipping.`);continue}let p=e.getStepParams(t,l);void 0!==p&&(s={...s,...p}),"function"==typeof c&&(c=await c(a)),c||(s=await a.resolveJsonTemplate(s));try{if(!r){d.logger.error(`BaseModel.applyFlow: No handler available for step '${l}' in flow '${t}'. Skipping.`);continue}await this.emitModelEventIf(n,`flow:${t}:step:${l}:start`,{...m,stepKey:l});let e=r(a,s);i=!1!==o.isAwait?await e:e,u[l]=i,h[l].result=u[l],await this.emitModelEventIf(n,`flow:${t}:step:${l}:end`,{...m,result:i,stepKey:l})}catch(e){if(e instanceof g.sy||e instanceof v.zz||await this.emitModelEventIf(n,`flow:${t}:step:${l}:error`,{...m,error:e,stepKey:l}),e instanceof g.sy)return d.logger.info(`[FlowEngine] ${e.message}`),await this.emitModelEventIf(n,`flow:${t}:step:${l}:end`,{...m,stepKey:l}),await this.emitModelEventIf(n,`flow:${t}:end`,{...m,result:u}),Promise.resolve(u);if(e instanceof v.zz)return d.logger.info(`[FlowEngine] ${e.message}`),await this.emitModelEventIf(n,`flow:${t}:step:${l}:end`,{...m,stepKey:l,aborted:!0}),await this.emitModelEventIf(n,`flow:${t}:end`,{...m,result:e,aborted:!0}),Promise.resolve(e);return await this.emitModelEventIf(n,`flow:${t}:error`,{...m,error:e}),d.logger.error({err:e},`BaseModel.applyFlow: Error executing step '${l}' in flow '${t}':`),Promise.reject(e)}}return await this.emitModelEventIf(n,`flow:${t}:end`,{...m,result:u}),Promise.resolve(u)}async dispatchEvent(e,t,l,o){var n,r,i,a;let s="beforeRender"===t,d=!!(null==o?void 0:o.sequential),u=!!(null==o?void 0:o.useCache),c=s,p=`${e.uid}-${t}-${Date.now()}`,h=e.context.logger,m={uid:e.uid,model:e,runId:p,inputArgs:l};try{await this.emitModelEventIf(t,"start",m),await (null==(n=e.onDispatchEventStart)?void 0:n.call(e,t,o,l))}catch(n){if(s&&n instanceof g.sy)return h.debug(`[FlowModel.dispatchEvent] ${n.message}`),[];try{await (null==(r=e.onDispatchEventError)?void 0:r.call(e,t,o,l,n))}finally{h.error({err:n},`BaseModel.dispatchEvent: Start hook error for event '${t}'`)}if(c)throw n;return}let f=s?e.getEventFlows("beforeRender"):Array.from(e.getFlows().values()).filter(e=>{let l=e.on;return!!l&&("string"==typeof l?l===t:"object"==typeof l&&l.eventName===t)}),y="click"===t&&(null==l?void 0:l.triggerByRouter)===!0?f.filter(e=>{var t;let l=e.flowRegistry;return"instance"!==(null==l||null==(t=l.constructor)?void 0:t._type)}):f,b=[],x=async()=>{let o=!1;if(d){let n=y.map((e,t)=>({f:e,i:t})).slice().sort((e,t)=>{var l,o;let n=e.f.flowRegistry,r=t.f.flowRegistry,i=null==n||null==(l=n.constructor)?void 0:l._type,a=null==r||null==(o=r.constructor)?void 0:o._type,s=+("instance"!==i),d=+("instance"!==a);if(s!==d)return s-d;let u=e.f.sort??0,c=t.f.sort??0;return u!==c?u-c:e.i-t.i}).map(e=>e.f),r=[],i=new Map(n.filter(e=>{var t;let l=e.flowRegistry;return"instance"!==(null==l||null==(t=l.constructor)?void 0:t._type)}).map(e=>[e.key,e])),a=new Set,s=new Map;for(let[o,d]of(n.forEach((e,l)=>{let o=e.on,n="object"==typeof o?o:void 0;if(!n)return;let r=n.phase,d=n.flowKey,u=n.stepKey;if(!r||"beforeAllFlows"===r)return;let c=null;if("afterAllFlows"===r)c=`event:${t}:end`;else if("beforeFlow"===r||"afterFlow"===r)if(d)if(i.get(String(d))){let e="beforeFlow"===r?"start":"end";c=`event:${t}:flow:${String(d)}:${e}`}else c=`event:${t}:end`;else c=`event:${t}:end`;else if("beforeStep"!==r&&"afterStep"!==r)return;else if(d&&u){var p;let e=i.get(String(d)),l=!!(null==e||null==(p=e.hasStep)?void 0:p.call(e,String(u)));if(e&&l){let e="beforeStep"===r?"start":"end";c=`event:${t}:flow:${String(d)}:step:${String(u)}:${e}`}else c=`event:${t}:end`}else c=`event:${t}:end`;if(!c)return;let h=c===`event:${t}:end`||"afterFlow"===r||"afterStep"===r;a.add(e.key);let m=s.get(c)||[];m.push({flow:e,order:l,shouldSkipOnAborted:h}),s.set(c,m)}),s.entries()))for(let n of d.slice().sort((e,t)=>{let l=e.flow.sort??0,o=t.flow.sort??0;return l!==o?l-o:e.order-t.order})){let i=n.shouldSkipOnAborted?Object.assign(e=>e.type===o&&!0!==e.aborted,{__eventType:o}):o,a=e.scheduleModelOperation(e.uid,async e=>{let o=await this.runFlow(e,n.flow.key,l,p,t);if(o instanceof v.zz)throw o;r.push(o)},{when:i});b.push(a)}for(let i of n)if(!a.has(i.key))try{h.debug(`BaseModel '${e.uid}' dispatching event '${t}' to flow '${i.key}' (sequential).`);let n=await this.runFlow(e,i.key,l,p,t);if(n instanceof v.zz){h.debug(`[FlowEngine.dispatchEvent] ${n.message}`),o=!0;break}r.push(n)}catch(e){if(e instanceof v.zz){h.debug(`[FlowEngine.dispatchEvent] ${e.message}`),o=!0;break}throw h.error({err:e},`BaseModel.dispatchEvent: Error executing event-triggered flow '${i.key}' for event '${t}' (sequential):`),e}return{result:r,abortedByExitAll:o}}let n=(await Promise.all(y.map(async o=>{h.debug(`BaseModel '${e.uid}' dispatching event '${t}' to flow '${o.key}'.`);try{return await this.runFlow(e,o.key,l,p,t)}catch(e){if(h.error({err:e},`BaseModel.dispatchEvent: Error executing event-triggered flow '${o.key}' for event '${t}':`),c)throw e;return}}))).filter(e=>void 0!==e);return n.some(e=>e instanceof v.zz)&&(o=!0),{result:n,abortedByExitAll:o}},w=u?JSON.stringify(l??{}):"",S=u?ek.generateApplyFlowCacheKey(`event:${e.getFlowCacheScope(t)}:${w}`,t,e.uid):null;try{let{result:n,abortedByExitAll:r}=await this.withApplyFlowCache(S,x);try{await (null==(i=e.onDispatchEventEnd)?void 0:i.call(e,t,o,l,n))}catch(e){h.error({err:e},`BaseModel.dispatchEvent: End hook error for event '${t}'`)}return await this.emitModelEventIf(t,"end",{...m,result:n,...r?{aborted:!0}:{}}),n&&"object"==typeof n&&Object.defineProperty(n,"__abortedByExitAll",{value:r,configurable:!0}),n}catch(n){try{await (null==(a=e.onDispatchEventError)?void 0:a.call(e,t,o,l,n))}catch(e){}if(e.context.logger.error({err:n},`BaseModel.dispatchEvent: Error executing event '${t}' for model '${e.uid}':`),await this.emitModelEventIf(t,"error",{...m,error:n}),c)throw n}finally{for(let e of b)e()}}constructor(e){(0,r._)(this,"engine",void 0),this.engine=e}}var w=l(58587),S=l(18150),M=l(68238),F=l(78880),A=l(18220),k=l(47674),C=l(21637),P=l(71021),j=l(84626),I=l(96540),E=l(74848),_=l(53619),R=l(92034),T=l(98393),D=l(22803),N=l(42443),O=l(88040),$=l(35710),B=l(18182),q=l(76511),L=l(1314),V=l(57084),z=l(94313),K=l(20616),U=l(52847);let W={marginLeft:32},H=(0,U.PA)(e=>{let{title:t,onChange:l,getDefaultValue:o,disabled:n,itemKey:r,...i}=e,[a,s]=(0,I.useState)(!1),d=(0,K.Db)();(0,I.useEffect)(()=>{let e=!1;return(async()=>{if(o)try{let t=await o();if(e||!t)return;let l=Object.entries(t);if(!l.length)return;let[n,r]=l[0];s(!!r)}catch(e){console.error(e)}})(),()=>{e=!0}},[o]);let u=e=>{s(e),null==l||l({[r]:e})},c=e=>{e.stopPropagation(),n||u(!a)};return(0,E.jsxs)("div",{style:{alignItems:"center",display:"flex",justifyContent:"space-between",cursor:n?"not-allowed":"pointer"},onClick:c,children:[t,(0,E.jsx)(z.A,{size:"small",...i,checkedChildren:i.checkedChildren?d.t(i.checkedChildren):void 0,unCheckedChildren:i.unCheckedChildren?d.t(i.unCheckedChildren):void 0,checked:a,style:W,disabled:n})]})});var Y=l(36492);let G=(e,t)=>{for(let o of e){var l;if(String((null==o?void 0:o.key)??"")===t)return o;if(null==(l=o.children)?void 0:l.length){let e=G(o.children,t);if(e)return e}}},J=(e,t,l)=>{let o=t.maxDepth,n="number"==typeof t.arrayLimit?t.arrayLimit:1/0,r=t.mode??"stack",i=new Set,a=new Set,s=(e,t,d)=>{if(!e||t>o)return;let u=()=>{l(e,{depth:t,modelKey:d}),t>=o||Object.entries(e.subModels||{}).forEach(e=>{let[l,o]=e;if(Array.isArray(o)){let e=Number.isFinite(n)?Math.min(o.length,n):o.length;for(let n=0;n<e;n++){let e=o[n];e instanceof L.WD&&s(e,t+1,`${l}[${n}]`)}return}o instanceof L.WD&&s(o,t+1,l)})};if("visited"===r){if(i.has(e))return;i.add(e),u();return}let c=e.uid||`temp-${Date.now()}`;if(!a.has(c)){a.add(c);try{u()}finally{a.delete(c)}}};s(e,1)},X=(e,t)=>{var l;if(!e||!t||"string"!=typeof t)return console.warn("Invalid input parameters"),null;let o=t.match(/^([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\[(\d+)\])?$/);if(!o)return console.warn(`Invalid subModelKey format: ${t}`),null;let[,n,r]=o,i=null==(l=e.subModels)?void 0:l[n];if(!i)return console.warn(`SubModel '${n}' not found`),null;if(void 0!==r){let e=parseInt(r,10);return Array.isArray(i)?e<0||e>=i.length?(console.warn(`Array index ${e} out of bounds for '${n}'`),null):i[e]instanceof L.WD?i[e]:null:(console.warn(`Expected array for '${n}', got ${typeof i}`),null)}return Array.isArray(i)?(console.warn(`Expected object for '${n}', got array`),null):i instanceof L.WD?i:null},Q={switch:H,select:function(e){let{title:t,getDefaultValue:l,onChange:o,options:n,fieldNames:r,itemKey:i,tooltip:a,...s}=e,[d,u]=(0,I.useState)(!1),[c,p]=(0,I.useState)(""),h=(0,K.Db)();(0,I.useEffect)(()=>{let e=!1;return(async()=>{if(l)try{let t=await l();if(e||!t)return;let o=Object.entries(t);if(!o.length)return;let[n,r]=o[0];p(r)}catch(e){console.error(e)}})(),()=>{e=!0}},[l]);let m=(0,I.useRef)(null),f=e=>{p(e),null==o||o({[i]:e})},g=(0,E.jsx)("span",{style:{whiteSpace:"nowrap",flexShrink:0},children:t});return(0,E.jsxs)("div",{style:{alignItems:"center",display:"flex",justifyContent:"space-between"},onClick:e=>{e.stopPropagation(),u(e=>!e)},onMouseLeave:()=>{m.current=setTimeout(()=>{u(!1)},200)},children:[a?(0,E.jsx)(N.A,{title:a,placement:"top",destroyTooltipOnHide:!0,children:g}):g,(0,E.jsx)(Y.A,{...s,open:d,popupMatchSelectWidth:!1,bordered:!1,value:c,onChange:f,popupClassName:`select-popup-${t.replaceAll(" ","-")}`,fieldNames:r,options:n,labelRender:e=>h.t(e.label),optionRender:e=>h.t(e.label),style:{textAlign:"right",minWidth:100},onMouseEnter:()=>{clearTimeout(m.current)},dropdownRender:e=>s.dropdownRender?s.dropdownRender(e,u,f):e})]})}},Z=e=>{let{title:t,uiMode:l,itemProps:o}=e,n=(null==l?void 0:l.type)||l,r=n?Q[n]:null,i=!!(null==o?void 0:o.disabled),a=null==o?void 0:o.disabledReason,s=null==o?void 0:o.disabledIconColor,d=r?(0,E.jsx)(r,{title:t,...o}):(0,E.jsx)(E.Fragment,{children:t});return i?(0,E.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[d,(0,E.jsx)(N.A,{title:a,placement:"right",destroyTooltipOnHide:!0,children:(0,E.jsx)(_.A,{style:{color:s}})})]}):d},ee=".nb-toolbar-container-icons",et=".nb-toolbar-container",el=(0,D.AH)`
1027
1027
  width: max-content;
1028
1028
  min-width: max-content;
@@ -1031,7 +1031,7 @@ Please run: await ctx.importAsync("${l}") to ensure ctx.render uses a matching R
1031
1031
  width: max-content;
1032
1032
  min-width: max-content;
1033
1033
  }
1034
- `,eo=e=>e?e.closest(ee)||e.closest(et):null,en=e=>{let{model:t,showDeleteButton:l=!0,showCopyUidButton:o=!0,menuLevels:n=1,flattenSubMenus:r=!0,onDropdownVisibleChange:i,getPopupContainer:a}=e,{message:s}=O.A.useApp(),d=(0,I.useMemo)(()=>(0,g.lW)(t),[t]),{token:u}=$.A.useToken(),c=(null==u?void 0:u.colorTextTertiary)||(null==u?void 0:u.colorTextDescription)||(null==u?void 0:u.colorTextSecondary),[p,h]=(0,I.useState)(!1),[m,f]=(0,I.useState)(0),[v,y]=(0,I.useState)([]),[b,x]=(0,I.useState)([]),[w,S]=(0,I.useState)(!0),M=(0,I.useCallback)(()=>{h(!1),null==i||i(!1)},[i]),F=(0,I.useCallback)(e=>eo(e)||(null==a?void 0:a(e))||(null==e?void 0:e.parentElement)||document.body,[a]),A=(0,I.useCallback)((e,t)=>{("trigger"===t.source||e)&&((0,I.startTransition)(()=>{h(e)}),null==i||i(e))},[i]);(0,I.useEffect)(()=>()=>{null==i||i(!1)},[i]);let k=(0,V.t_)([p]);(0,I.useEffect)(()=>{let e=!0,l=async()=>{let l=[],o=[];for(let{model:e,modelKey:i}of(J(t,{maxDepth:n,arrayLimit:50,mode:"stack"},(e,t)=>{let{modelKey:l}=t;o.push({model:e,modelKey:l})}),o)){var r;let t=e.constructor,o=await (null==(r=t.getExtraMenuItems)?void 0:r.call(t,e,d));(null==o?void 0:o.length)&&l.push(...o.map(e=>({...e,key:i?`${i}:${e.key}`:e.key})))}if(e){let e=new Set;y(l.filter(t=>!e.has(`${t.key}`)&&(e.add(`${t.key}`),!0)))}};return p&&l(),()=>{e=!1}},[t,n,d,m,p]);let C=(0,I.useCallback)(async e=>{try{await navigator.clipboard.writeText(e),s.success(d("UID copied to clipboard"))}catch(l){var t;if(console.error(d("Copy failed"),":",l),!("u">typeof window&&(null==(t=window.location)?void 0:t.protocol)==="https:"))return void s.error(d("Copy failed under HTTP. Clipboard API is unavailable on non-HTTPS pages. Please copy [{{uid}}] manually.",{uid:e}));s.error(d("Copy failed, please copy [{{uid}}] manually.",{uid:e}))}},[s,d]),P=(0,I.useCallback)(async()=>{C(t.uid)},[t.uid,C]),j=(0,I.useCallback)(e=>{try{let l=e.replace(/^copy-pop-uid:/,"").split(":"),o=t;if(3===l.length){let[e]=l;o=X(t,e)||t}else if(2!==l.length)return void console.error("Invalid copy-pop-uid key format:",e);C(o.uid)}catch(e){console.error("handleCopyPopupUid error:",e)}},[t,C]),D=(0,I.useCallback)(()=>{M(),B.A.confirm({title:d("Confirm delete"),icon:(0,E.jsx)(R.A,{}),content:d("Are you sure you want to delete this item? This action cannot be undone."),okText:d("Confirm"),okType:"primary",cancelText:d("Cancel"),zIndex:999999,async onOk(){try{await t.destroy()}catch(e){console.error(d("Delete operation failed"),":",e),B.A.error({title:d("Delete failed"),content:d("Delete operation failed, please check the console for details.")})}}})},[M,t,d]),L=(0,I.useCallback)(e=>{let l,o,n=e.split(":");if(n.length<2||n.length>3)return void console.error("Invalid configuration key format:",e);let r=t;if(3===n.length){let[e,i,a]=n;l=i,o=a;let s=X(t,e);if(!s)return void console.error(`Sub-model '${e}' not found`);r=s}else[l,o]=n;try{M(),r.openFlowSettings({flowKey:l,stepKey:o})}catch(e){console.log(d("Configuration popup cancelled or error"),":",e)}},[M,t,d]),z=(0,I.useCallback)(e=>{let t,l,o,n=(e.includes("-")&&/^(.+)-\d+$/.test(e)?e.replace(/-\d+$/,""):e).split(":");if(3===n.length)[t,l,o]=n;else{if(2!==n.length)return!1;[l,o]=n}return b.some(e=>{let{flow:n,steps:r,modelKey:i}=e;return(i||void 0)===t&&n.key===l&&r.some(e=>e.stepKey===o&&!!e.disabled)})},[b]),K=(0,I.useCallback)(e=>{let{key:t}=e,l=t,o=t.includes("-")&&/^(.+)-\d+$/.test(t)?t.replace(/-\d+$/,""):t;if(o.startsWith("copy-pop-uid:")){M(),j(o);return}let n=G(v,l)||G(v,o);if(null==n||!n.disabled){if(null==n?void 0:n.onClick){M(),n.onClick();return}if(!z(o))switch(o){case"copy-uid":M(),P();break;case"delete":D();break;default:L(o)}}},[M,P,D,L,j,v,z]),U=(0,I.useCallback)(async(e,t)=>{try{let l=new Map(e.constructor.globalFlowRegistry.getFlows()),o=Array.from(l.values());return await Promise.all(o.map(async l=>{let o=await Promise.all(Object.entries(l.steps).map(async o=>{let[n,r]=o,i=r,a=i;if(await (0,g._3)(e,l,i))return null;let s=await (0,g.XM)(e,l,i),u=await (0,g.ME)(i.uiMode,e.context),c=null!=i.uiSchema,p=!1,h=i.title;if(i.use)try{var m;let t=null==(m=e.getAction)?void 0:m.call(e,i.use);a={...t||{},...i},u=await (0,g.ME)((null==t?void 0:t.uiMode)||u,e.context),p=t&&null!=t.uiSchema,h=h||(null==t?void 0:t.title)}catch(e){console.warn(d("Failed to get action {{action}}",{action:i.use}),":",e)}let f=["select","switch"].includes((null==u?void 0:u.type)||u);if(!f&&!c&&!p)return null;let v={};try{let t=await (0,g.o7)(e,l,i);if(!t&&!f)return null;v=t}catch(e){return console.warn(d("Failed to resolve uiSchema for step {{stepKey}}",{stepKey:n}),":",e),null}return{stepKey:n,step:a,uiSchema:v,title:d(h)||n,modelKey:t,uiMode:u,disabled:s.disabled,disabledReason:s.reason}})).then(e=>e.filter(Boolean));return o.length>0?{flow:l,steps:o,modelKey:t}:null})).then(e=>e.filter(Boolean))}catch(t){return console.error(d("Failed to get configurable flows for model {{model}}",{model:(null==e?void 0:e.uid)||"unknown"}),":",t),[]}},[]),W=(0,I.useCallback)(async()=>{let e=[],l=[];for(let{model:o,modelKey:r}of(J(t,{maxDepth:n,arrayLimit:50,mode:"stack"},(e,t)=>{let{modelKey:o}=t;l.push({model:e,modelKey:o})}),l)){let t=await U(o,r);e.push(...t)}return e},[t,n,U]);(0,I.useEffect)(()=>{let e=()=>{f(e=>e+1)},l=[];return J(t,{maxDepth:n,mode:"visited"},(t,o)=>{let{depth:n}=o,r=["onStepParamsChanged"];1===n&&r.push("onSubModelAdded","onSubModelRemoved","onSubModelReplaced"),r.forEach(o=>{var n;null==(n=t.emitter)||n.on(o,e),l.push(()=>{var l;return null==(l=t.emitter)?void 0:l.off(o,e)})})}),()=>{l.forEach(e=>e())}},[t,n,m]),(0,I.useEffect)(()=>{(async()=>{S(!0);try{let e=await W();x(e)}catch(e){console.error("Failed to load configurable flows and steps:",e),x([])}finally{S(!1)}})()},[W,m]);let H=(0,I.useMemo)(()=>{let e=[],l=new Map,o=e=>{let t=l.get(e)||0;return l.set(e,t+1),0===t?e:`${e}-${t}`};if(b.length>0)if(r)b.forEach(l=>{let{flow:n,steps:r,modelKey:i}=l,a=o(`flow-group-${i?`${i}-`:""}${n.key}`);"top"===n.options.divider&&e.push({type:"divider"}),n.options.enableTitle&&e.push({key:a,label:d(n.title)||n.key,type:"group"}),r.forEach(l=>{let r=o(i?`${i}:${n.key}:${l.stepKey}`:`${n.key}:${l.stepKey}`),a=l.uiMode,u=(l.modelKey?X(t,l.modelKey):null)||t,p=u.getStepParams(n.key,l.stepKey)||{},h={getDefaultValue:async()=>{let e=await (0,g.gG)(l.step.defaultParams,u.context);if(l.step.use){var t;let o=null==(t=u.getAction)?void 0:t.call(u,l.step.use);e=await (0,g.gG)(o.defaultParams,u.context)}return{...e,...p}},onChange:async e=>{var t;u.setStepParams(n.key,l.stepKey,e),"function"==typeof l.step.beforeParamsSave&&await l.step.beforeParamsSave(u.context,e,p),await u.saveStepParams(),null==s||null==(t=s.success)||t.call(s,d("Configuration saved")),"function"==typeof l.step.afterParamsSave&&await l.step.afterParamsSave(u.context,e,p)},...(null==a?void 0:a.props)||{},itemKey:null==a?void 0:a.key,disabled:!!l.disabled,disabledReason:l.disabledReason,disabledIconColor:c};e.push({key:r,label:(0,E.jsx)(Z,{title:l.title,uiMode:a,itemProps:h}),disabled:!!l.disabled})}),"bottom"===n.options.divider&&e.push({type:"divider"})});else{let t=new Map;b.forEach(e=>{let l=e.modelKey||"current";t.has(l)||t.set(l,[]);let o=t.get(l);o&&o.push(e)}),t.forEach((t,l)=>{if("current"===l)t.forEach(t=>{let{flow:l,steps:n}=t,r=o(`flow-group-${l.key}`);e.push({key:r,label:d(l.title)||l.key,type:"group"}),n.forEach(t=>{let n=o(`${l.key}:${t.stepKey}`);e.push({key:n,label:t.disabled?(0,E.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[t.title,(0,E.jsx)(N.A,{title:t.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,E.jsx)(_.A,{style:{color:c}})})]}):t.title,disabled:!!t.disabled})})});else{let n=o(`sub-menu-${l}`),r=[];t.forEach(e=>{let{flow:t,steps:n}=e;n.forEach(e=>{let n=o(`${l}:${t.key}:${e.stepKey}`);r.push({key:n,label:e.disabled?(0,E.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.title,(0,E.jsx)(N.A,{title:e.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,E.jsx)(_.A,{style:{color:c}})})]}):e.title,disabled:!!e.disabled})})}),e.push({key:n,label:l,children:r})}})}return e},[b,c,r,d]),Y=(0,I.useMemo)(()=>{let e=[...H],n=v.filter(e=>"common-actions"===e.group).sort((e,t)=>(e.sort??0)-(t.sort??0));return(o||l||n.length>0)&&(e.push({type:"divider"}),n.length>0&&e.push(...n),o&&t.uid&&e.push({key:"copy-uid",label:d("Copy UID")}),l&&"function"==typeof t.destroy&&e.push({key:"delete",label:d("Delete")})),e},[H,o,l,t.uid,t.destroy,d,v]),Q=v.some(e=>"common-actions"===e.group);return!w&&(0!==b.length||l||o||Q)?t&&t.uid?(0,E.jsx)(q.A,{getPopupContainer:F,overlayClassName:el,overlayStyle:{width:"max-content",minWidth:"max-content"},onOpenChange:A,open:p,menu:{items:Y,onClick:K,style:{maxHeight:k,overflowY:"auto"}},trigger:["hover"],placement:"bottomRight",children:(0,E.jsx)(T.A,{role:"button","aria-label":"flows-settings",style:{cursor:"pointer",fontSize:12}})}):(console.warn(d("Invalid model provided")),null):null};var er=l(23183),ei=l(48036),ea=l(40532),es=l(16296),ed=l(23200),eu=l(52249),ec=l(22505);let ep=k.A.Panel;var eh=new WeakMap,em=new WeakMap;class ef{on(e,t){(0,w._)(this,em).on(e,t)}off(e,t){(0,w._)(this,em).off(e,t)}addDefaultToolbarItems(){this.toolbarItems.push({key:"settings-menu",component:en,sort:0})}async load(){if(this.antdComponentsLoaded)return void console.log("FlowSettings: Antd components already loaded, skipping...");try{let{ArrayBase:e,ArrayCards:t,ArrayCollapse:o,ArrayItems:n,ArrayTable:r,ArrayTabs:i,Cascader:a,Checkbox:s,DatePicker:d,Editable:u,Form:c,FormDialog:p,FormDrawer:h,FormButtonGroup:m,FormCollapse:f,FormGrid:g,FormItem:v,FormLayout:y,FormStep:b,FormTab:x,Input:w,NumberPicker:S,Password:M,PreviewText:F,Radio:A,Reset:k,Select:C,SelectTable:P,Space:j,Submit:I,Switch:E,TimePicker:_,Transfer:R,TreeSelect:T,Upload:D}=await Promise.resolve().then(l.bind(l,88967)),{Button:N,Alert:O}=await Promise.resolve().then(l.bind(l,14264));this.components.Form=c,this.components.FormDialog=p,this.components.FormDrawer=h,this.components.FormItem=v,this.components.FormLayout=y,this.components.FormGrid=g,this.components.FormStep=b,this.components.FormTab=x,this.components.FormCollapse=f,this.components.FormButtonGroup=m,this.components.Input=w,this.components.NumberPicker=S,this.components.Password=M,this.components.Select=C,this.components.SelectTable=P,this.components.Cascader=a,this.components.TreeSelect=T,this.components.Transfer=R,this.components.DatePicker=d,this.components.TimePicker=_,this.components.Checkbox=s,this.components.Radio=A,this.components.Switch=E,this.components.ArrayBase=e,this.components.ArrayCards=t,this.components.ArrayCollapse=o,this.components.ArrayItems=n,this.components.ArrayTable=r,this.components.ArrayTabs=i,this.components.Upload=D,this.components.Space=j,this.components.Editable=u,this.components.PreviewText=F,this.components.Alert=O,this.components.Button=N,this.components.Submit=I,this.components.Reset=k,this.antdComponentsLoaded=!0,console.log("FlowSettings: Antd components loaded successfully")}catch(e){throw console.error("FlowSettings: Failed to load Antd components:",e),e}}registerComponents(e){Object.keys(e).forEach(t=>{this.components[t]&&console.warn(`FlowSettings: Component with name '${t}' is already registered and will be overwritten.`),this.components[t]=e[t]})}registerComponentLoaders(e){Object.entries(e).forEach(e=>{let[t,l]=e;this.components[t]&&console.warn(`FlowSettings: Component with name '${t}' is already registered and will be overwritten.`),this.components[t]=(0,ec.R)(async()=>{let e=await l();if("function"==typeof e)return{default:e};if((null==e?void 0:e.default)&&"function"==typeof e.default)return{default:e.default};let o=null==e?void 0:e[t];if("function"==typeof o)return{default:o};throw Error(`FlowSettings: component loader for '${t}' must resolve to a React component or a module exporting it.`)})})}registerScopes(e){Object.keys(e).forEach(t=>{this.scopes[t]&&console.warn(`FlowSettings: Scope with name '${t}' is already registered and will be overwritten.`),this.scopes[t]=e[t]})}async enable(){await this.engine.preloadModelLoaders(),this.enabled=!0}async forceEnable(){await this.engine.preloadModelLoaders(),(0,M._)(this,eh,!0),this.enabled=!0}async disable(){(0,w._)(this,eh)||(this.enabled=!1)}async forceDisable(){(0,M._)(this,eh,!1),this.enabled=!1}addToolbarItem(e){let t=this.toolbarItems.findIndex(t=>t.key===e.key);-1!==t?(console.warn(`FlowSettings: Toolbar item with key '${e.key}' already exists and will be replaced.`),this.toolbarItems[t]=e):this.toolbarItems.push(e),this.toolbarItems.sort((e,t)=>(t.sort||0)-(e.sort||0))}addToolbarItems(e){e.forEach(e=>this.addToolbarItem(e))}removeToolbarItem(e){let t=this.toolbarItems.findIndex(t=>t.key===e);-1!==t&&this.toolbarItems.splice(t,1)}getToolbarItems(){return[...this.toolbarItems]}clearToolbarItems(){this.toolbarItems=[]}async openStepSettingsDialog(e){return await (0,er.openStepSettingsDialog)(e)}renderStepForm(e){var t,l;let{uiSchema:o,initialValues:n,flowEngine:r,form:i,onFormValuesChange:a,key:s}=e,d={useFlowSettingsContext:es.s,...(null==r||null==(t=r.flowSettings)?void 0:t.scopes)||{}},u={type:"object",properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:o}}},c=(0,g.ln)(d,u),p=(0,A.createSchemaField)();return I.createElement(eg,{form:i,initialValues:n,onFormValuesChange:a,key:s},I.createElement(p,{schema:c,components:(null==r||null==(l=r.flowSettings)?void 0:l.components)||{},scope:d}))}async open(e){var t,l,o,n,r,a,d;(0,w._)(this,em).emit("beforeOpen",e);let{model:u,flowKey:c,flowKeys:p,stepKey:h,uiMode:m="dialog",preset:y,onCancel:b,onSaved:x}=e;if(!u)throw Error("FlowSettings.open: model is required");let S=(0,g.lW)(u),M=null==(t=u.context)?void 0:t.message,A=u.getFlows(),E=c?[c]:Array.isArray(p)&&p.length?p:Array.from(A.keys()),_=[];for(let e of(await this.load(),E)){let t=u.getFlow(e);if(!t){console.warn(`FlowSettings.open: Flow with key '${e}' not found`);continue}for(let l of Object.keys(t.steps||{})){if(h&&l!==h)continue;let o=t.steps[l];if(!y&&(!o||await (0,g._3)(u,t,o))||y&&!o.preset)continue;let n=await (0,g.o7)(u,t,o),i=o.title,a=o.beforeParamsSave,s=o.afterParamsSave,d={},c=o.uiMode;if(o.use){let e=null==(r=u.getAction)?void 0:r.call(u,o.use);e&&(d=e.defaultParams||{},i=i||e.title,a=a||e.beforeParamsSave,s=s||e.afterParamsSave,c=e.uiMode)}let p=new f.W5(u,e,"settings");(0,g.wx)(p,t.steps,u,e),p.defineProperty("currentStep",{value:o}),p.defineMethod("getStepFormValues",(e,t)=>{var l;return null==(l=L.get(V({flowKey:e,stepKey:t})))?void 0:l.values});let m=u.getStepParams(e,l)||{},v=await (0,g.gG)(o.defaultParams,p),b={...await (0,g.gG)(d,p)||{},...v||{},...m};(n&&0!==Object.keys(n).length||["select","switch"].includes((null==c?void 0:c.type)||c))&&_.push({flowKey:e,flowTitle:S(t.title)||e,stepKey:l,stepTitle:S(i)||l,initialValues:b,previousParams:{...m||{}},mergedUiSchema:n,beforeParamsSave:a,afterParamsSave:s,ctx:p,uiMode:o.uiMode||c})}}if(0===_.length)return y||null==M||null==(a=M.info)||a.call(M,S("This model has no configurable flow settings")),!1;let R=u.context.viewer,T=1===_.length?await (0,g.ME)(_[0].uiMode||m,_[0].ctx):m,D="string"==typeof T?T:T.type||"dialog";if(["select","switch"].includes(D))return;let N=R[D||"dialog"].bind(R),O=u.flowEngine,$={useFlowSettingsContext:es.s,...(null==O||null==(l=O.flowSettings)?void 0:l.scopes)||{}},B="object"==typeof T&&T&&T.props||{};if("embed"===D){let e=document.querySelector(`#${eu.mW}`),t=B.onOpen,l=B.onClose;B={target:e,styles:{body:{padding:null==(d=O.context.themeToken)?void 0:d.padding}},...B,onOpen(){e&&(e.style.width=B.width||"33.3%",e.style.maxWidth=B.maxWidth||"800px",e.style.minWidth=B.minWidth||"0px"),null==t||t()},onClose(){e&&"1"!==e.dataset[eu.xB]&&(e.style.width="auto",e.style.maxWidth="none",e.style.minWidth="auto"),null==l||l()}}}let q={};_.forEach(e=>{q[e.flowKey]||(q[e.flowKey]={title:e.flowTitle,steps:[]}),q[e.flowKey].steps.push(e)});let L=new Map,V=e=>`${e.flowKey}::${e.stepKey}`;_.forEach(e=>{let t=(0,F.createForm)({initialValues:(0,g.ln)($,e.initialValues)});L.set(V(e),t)});let z=Object.keys(q),K=z.length>1,U=()=>c&&h&&1===_.length||!K&&_.length>0?_[0].stepTitle:"",W={value:()=>{}},H=(e,t)=>{W.value=(0,i.reaction)(()=>(0,g.ME)(e.uiMode||m,e.ctx),e=>{e.then(e=>{s().isPlainObject(null==e?void 0:e.props)&&t.update(e.props)}).catch(e=>{console.warn("Error resolving uiMode:",e)})})},Y=(null==(o=u.context.view)?void 0:o.inputArgs)||{},G=null==(n=u.context.view)?void 0:n.navigation,J={...Y,...G?{navigation:G}:{},...(null==B?void 0:B.inputArgs)||{}};return N({title:B.title||U(),width:B.width??600,destroyOnClose:!0,onClose:()=>W.value(),zIndex:5e3,...B,inputArgs:J,content:(e,t)=>{let l;null==t||t.defineMethod("getStepFormValues",(e,t)=>{var l;return null==(l=L.get(V({flowKey:e,stepKey:t})))?void 0:l.values});let o=t=>{let l=L.get(V(t));return l?(t.ctx.view=e,I.createElement(es.u,{value:t.ctx},I.createElement(ed.k.Provider,{value:{params:(0,ea.untracked)(()=>({...t.initialValues,...l.values})),path:`${u.uid}_${t.flowKey}_${t.stepKey}`}},this.renderStepForm({uiSchema:t.mergedUiSchema,initialValues:t.initialValues,flowEngine:O,form:l})))):null},n=e=>e.map(e=>I.createElement(ep,{header:e.stepTitle,key:V(e)},o(e))),r=e=>{let t=q[e];return{key:e,label:S(t.title)||e,children:t.steps.length>1?I.createElement(k.A,{defaultActiveKey:t.steps.map(e=>V(e))},...n(t.steps)):o(t.steps[0])}},i=()=>{if(c&&h&&1===_.length){let t=_[0];return H(t,e),o(t)}if(!K)return H(_[0],e),o(_[0]);let t=z.map(e=>r(e)),l=c&&q[c]?c:z[0];return I.createElement(C.A,{items:t,defaultActiveKey:l})},a=async()=>{var t,l;try{for(let e of _){let t=L.get(V(e));if(!t)continue;await t.submit();let l=t.values;u.setStepParams(e.flowKey,e.stepKey,l),"function"==typeof e.beforeParamsSave&&await e.beforeParamsSave(e.ctx,l,e.previousParams)}for(let e of(await u.saveStepParams(),null==M||null==(t=M.success)||t.call(M,S("Configuration saved")),_)){let t=L.get(V(e));if(!t)continue;let l=t.values;"function"==typeof e.afterParamsSave&&await e.afterParamsSave(e.ctx,l,e.previousParams)}e.close(),u.invalidateFlowCache("beforeRender",!0),await u.rerender();try{await (null==x?void 0:x())}catch(e){console.error("FlowSettings.open: onSaved callback error",e)}}catch(t){if(t instanceof g.VD)return;if(t instanceof g.sy||t instanceof v.zz)return void e.close();console.error("FlowSettings.open: save error",t),null==M||null==(l=M.error)||l.call(M,S("Error saving configuration, please check console"))}};e.submit=a;let d=i(),p=t=>I.createElement(P.Ay,{onClick:async()=>{e.close();try{await (null==b?void 0:b())}catch(e){console.error("FlowSettings.open: onCancel callback error",e)}}},t.title||S("Cancel")),m=e=>I.createElement(P.Ay,{type:"primary",onClick:a},e.title||S("Save")),f=I.createElement(j.A,{align:"end"},I.createElement(p),I.createElement(m));return B.footer&&(f=s().isFunction(B.footer)?B.footer(f,{OkBtn:m,CancelBtn:p}):B.footer),null===B.footer&&(f=null),e.Footer&&(l=I.createElement(e.Footer,null,f)),I.createElement(I.Fragment,null,d,l)}}),!0}constructor(e){(0,r._)(this,"components",{}),(0,r._)(this,"scopes",{}),(0,r._)(this,"antdComponentsLoaded",!1),(0,r._)(this,"enabled",void 0),(0,r._)(this,"engine",void 0),(0,S._)(this,eh,{writable:!0,value:!1}),(0,r._)(this,"toolbarItems",[]),(0,S._)(this,em,{writable:!0,value:new ei.v}),this.engine=e,this.enabled=!1,e.context.defineProperty("flowSettingsEnabled",{get:()=>this.enabled,cache:!1}),this.addDefaultToolbarItems(),(0,i.define)(this,{enabled:i.observable})}}function eg(e){let{children:t,form:l,initialValues:o,onFormValuesChange:n}=e,r=I.useRef(l);return r.current||(r.current=(0,F.createForm)({initialValues:o,effects(){(0,F.onFormValuesChange)(n)}})),I.createElement(A.FormProvider,{form:r.current},t)}var ev=l(4888),ey=l(5338);function eb(e){let{config:t,engine:l,children:o}=e;return(0,E.jsx)(K.I6,{engine:l,children:(0,E.jsx)(ev.Ay,{...t,children:(0,E.jsx)(O.A,{children:o})})})}class ex{createRoot(e){let t,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=(0,ey.createRoot)(e,l),n=()=>{o.render((0,E.jsx)(eb,{engine:this.flowEngine,config:this.flowEngine.context.antdConfig,children:t}))};return{render:e=>{t=e,this.refreshCallback=n,n()},unmount:()=>{this.refreshCallback=null,t=null,o.unmount()}}}refresh(){this.refreshCallback&&this.refreshCallback()}render(e){let t,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=document.createElement("span"),{onRendered:n}=l,r=t=>{let l="function"==typeof e?e(t):e;return(0,E.jsx)(eb,{engine:this.flowEngine,config:this.flowEngine.context.antdConfig,children:l})};return n?n(()=>{(t=(0,ey.createRoot)(o)).render(r(t))}):(t=(0,ey.createRoot)(o)).render(r(t)),o._reactRoot=t,o}onRefReady(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,o=Date.now();function n(){if(e.current)return t(e.current);Date.now()-o>l||setTimeout(n,30)}n()}constructor(e){(0,r._)(this,"flowEngine",void 0),(0,r._)(this,"refreshCallback",void 0),this.flowEngine=e,this.refreshCallback=null}}var ew=l(27667),eS=l(38950);class eM{schedule(e,t,l,o){let n="string"==typeof e?e:null==e?void 0:e.uid;if(!n)throw Error("scheduleModelOperation: invalid from model or uid");if(!t||"string"!=typeof t)throw Error("scheduleModelOperation: invalid target uid");let r={id:(0,eS.L)(),fromUid:n,toUid:t,fn:l,options:{when:(null==o?void 0:o.when)??"created"}},i=this.itemsByTargetUid.get(t);i||(i=new Map,this.itemsByTargetUid.set(t,i)),i.set(r.id,r);let a=this.itemIdsByFromUid.get(n);a||(a=new Set,this.itemIdsByFromUid.set(n,a)),a.add(r.id),this.itemsById.set(r.id,r),this.ensureEventSubscriptionIfNeeded(r.options.when);let s=this.engine.getModel(t);return s&&"created"===r.options.when&&this.tryExecuteOnce(r.id,{type:"created",uid:t,model:s}),()=>this.internalCancel(r.id)}cancel(e){let{fromUid:t,toUid:l}=e||{};if(l&&this.itemsByTargetUid.has(l)){let e=this.itemsByTargetUid.get(l);if(e)for(let l of e.values())t&&l.fromUid!==t||this.internalCancel(l.id);return}if(t&&this.itemIdsByFromUid.has(t)){let e=this.itemIdsByFromUid.get(t);if(e)for(let t of Array.from(e)){let e=this.itemsById.get(t);e&&(l&&e.toUid!==l||this.internalCancel(t))}}}dispose(){try{for(let e of this.unbindHandlers)try{e()}catch(e){}}finally{this.unbindHandlers=[]}for(let e of this.itemsByTargetUid.values())for(let t of e.values())this.internalCancel(t.id);this.itemsByTargetUid.clear(),this.itemIdsByFromUid.clear()}bindEngineLifecycle(){let e=this.engine.emitter;if(!e||"function"!=typeof e.on)return;let t=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"created"})};e.on("model:created",t),this.unbindHandlers.push(()=>e.off("model:created",t));let l=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"mounted"})};e.on("model:mounted",l),this.unbindHandlers.push(()=>e.off("model:mounted",l));let o=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"event:beforeRender:start"})};e.on("model:event:beforeRender:start",o),this.unbindHandlers.push(()=>e.off("model:event:beforeRender:start",o));let n=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"event:beforeRender:end"})};e.on("model:event:beforeRender:end",n),this.unbindHandlers.push(()=>e.off("model:event:beforeRender:end",n));let r=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"unmounted"})};e.on("model:unmounted",r),this.unbindHandlers.push(()=>e.off("model:unmounted",r));let i=async e=>{let t=this.itemsByTargetUid.get(e.uid),l={...e,type:"destroyed"};if(t&&t.size)for(let e of Array.from(t.keys())){let t=this.itemsById.get(e);t&&(this.shouldTrigger(t.options.when,l)?await this.tryExecuteOnce(e,l):this.internalCancel(e))}};e.on("model:destroyed",i),this.unbindHandlers.push(()=>e.off("model:destroyed",i))}ensureEventSubscriptionIfNeeded(e){let t="string"==typeof e?e:"function"==typeof e?e.__eventType:void 0;if(!t)return;let l=this.parseEventWhen(t);if(!l)return;let{name:o}=l;if(this.subscribedEventNames.has(o))return;this.subscribedEventNames.add(o);let n=this.engine.emitter,r=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:start`})},i=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:end`})},a=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:error`})};n.on(`model:event:${o}:start`,r),n.on(`model:event:${o}:end`,i),n.on(`model:event:${o}:error`,a),this.unbindHandlers.push(()=>n.off(`model:event:${o}:start`,r)),this.unbindHandlers.push(()=>n.off(`model:event:${o}:end`,i)),this.unbindHandlers.push(()=>n.off(`model:event:${o}:error`,a))}parseEventWhen(e){if(!e||"string"!=typeof e)return null;let t=/^event:(.+):(start|end|error)$/.exec(e);return t?{name:t[1],phase:t[2]}:null}async processLifecycleEvent(e,t){let l=this.itemsByTargetUid.get(e);if(l&&0!==l.size)for(let e of Array.from(l.keys())){let l=this.itemsById.get(e);l&&this.shouldTrigger(l.options.when,t)&&await this.tryExecuteOnce(e,t)}}shouldTrigger(e,t){return!!e&&("function"==typeof e?!!e(t):e===t.type)}async tryExecuteOnce(e,t){let l=this.takeItem(e);if(l)try{let e=t.model||this.engine.getModel(l.toUid);if(!e)return;await Promise.resolve(l.fn(e))}catch(t){var o,n;if(t instanceof v.zz)throw t;null==(n=this.engine.logger)||null==(o=n.error)||o.call(n,{err:t,id:e,fromUid:l.fromUid,toUid:l.toUid,when:l.options.when},"ModelOperationScheduler: operation execution failed")}}internalCancel(e){return!!this.takeItem(e)}takeItem(e){let t=this.itemsById.get(e);if(!t)return;let{toUid:l,fromUid:o}=t,n=this.itemsByTargetUid.get(l);n&&(n.delete(e),0===n.size&&this.itemsByTargetUid.delete(l));let r=this.itemIdsByFromUid.get(o);return r&&(r.delete(e),0===r.size&&this.itemIdsByFromUid.delete(o)),this.itemsById.delete(e),t}constructor(e){(0,r._)(this,"engine",void 0),(0,r._)(this,"itemsByTargetUid",void 0),(0,r._)(this,"itemIdsByFromUid",void 0),(0,r._)(this,"itemsById",void 0),(0,r._)(this,"unbindHandlers",void 0),(0,r._)(this,"subscribedEventNames",void 0),this.engine=e,this.itemsByTargetUid=new Map,this.itemIdsByFromUid=new Map,this.itemsById=new Map,this.unbindHandlers=[],this.subscribedEventNames=new Set,this.bindEngineLifecycle()}}let eF=eM;var eA=new WeakSet;class ek{getScheduler(){return this._modelOperationScheduler||(this._modelOperationScheduler=new eF(this)),this._modelOperationScheduler}disposeScheduler(){if(this._modelOperationScheduler)try{this._modelOperationScheduler.dispose()}finally{this._modelOperationScheduler=void 0}}markDataSourceDirty(e,t){let l=String(e||"main"),o=String(t||"");if(!o)return this.getDataSourceDirtyVersion(l,o);let n=this._dataSourceDirtyVersions.get(l)||new Map;this._dataSourceDirtyVersions.has(l)||this._dataSourceDirtyVersions.set(l,n);let r=(n.get(o)||0)+1;return n.set(o,r),r}getDataSourceDirtyVersion(e,t){var l;let o=String(e||"main"),n=String(t||"");return n&&(null==(l=this._dataSourceDirtyVersions.get(o))?void 0:l.get(n))||0}scheduleModelOperation(e,t,l,o){return this.getScheduler().schedule(e,t,l,o)}get previousEngine(){return this._previousEngine}get nextEngine(){return this._nextEngine}linkAfter(e){let t=e;for(;t._nextEngine;)t=t._nextEngine;this._previousEngine=t,t&&(t._nextEngine=this)}unlinkFromStack(){let e=this._previousEngine;this._nextEngine,e&&(e._nextEngine=void 0)}setDestroyView(e){this._destroyView=e}destroyView(){return!!this._destroyView&&(this._destroyView(),!0)}get context(){return this._flowContext||(this._flowContext=new f.o0(this)),this._flowContext}get dataSourceManager(){return this.context.dataSourceManager}get applyFlowCache(){return this._applyFlowCache}setModelRepository(e){this._modelRepository&&console.warn("FlowEngine: Model repository is already set and will be overwritten."),this._modelRepository=e}get modelRepository(){return this._modelRepository}translate(e,t){return this.context.t(e,t)}registerActions(e){this._actionRegistry.registerActions(e)}getAction(e){return this._actionRegistry.getAction(e)}getActions(){return this._actionRegistry.getActions()}registerEvents(e){this._eventRegistry.registerEvents(e)}getEvent(e){return this._eventRegistry.getEvent(e)}getEvents(){return this._eventRegistry.getEvents()}_registerModel(e,t){this._modelClasses.has(e)&&console.warn(`FlowEngine: Model class with name '${e}' is already registered and will be overwritten.`),Object.defineProperty(t,"name",{value:e}),this._modelClasses.set(e,t)}registerModels(e){for(let[t,l]of Object.entries(e))(0,o._)(this,eA,eC).call(this,t,l)}registerModelLoaders(e){let t=!1;for(let[l,o]of Object.entries(e)){this._modelLoaders.has(l)&&console.warn(`FlowEngine: Model loader with name '${l}' is already registered and will be overwritten.`);let e={loader:o.loader};null!=o.extends&&(e.extends=(Array.isArray(o.extends)?o.extends:[o.extends]).map(e=>"string"==typeof e?e:e.name)),this._modelLoaders.set(l,e),t=!0}t&&(this._modelLoadersPreloaded=!1,this._modelLoadersPreloadPromise=void 0)}async getModelClassAsync(e){return await this.ensureModel(e),this.getModelClass(e)}async getModelClassesAsync(){return await this.ensureModels(Array.from(this._modelLoaders.keys())),this.getModelClasses()}async createModelAsync(e,t){return await this.resolveModelTree(e),this.createModel(e,t)}normalizeModelLoaderResult(e,t){if("function"==typeof t)return t;if(t&&"object"==typeof t){let l=t.default;if("function"==typeof l)return l;let o=t[e];if("function"==typeof o)return o}return console.warn(`FlowEngine: model loader for '${e}' did not resolve to a valid model constructor.`),null}collectModelNamesFromTree(e,t){if(!e||"object"!=typeof e)return;if(Array.isArray(e))return void e.forEach(e=>this.collectModelNamesFromTree(e,t));let l=e;"string"==typeof l.use&&t.add(l.use);let o=l.subModels;o&&"object"==typeof o&&Object.values(o).forEach(e=>{this.collectModelNamesFromTree(e,t)})}collectModelNamesFromMetaDefaults(e,t){var l;let o=null==(l=e.meta)?void 0:l.createModelOptions;o&&"object"==typeof o&&this.collectModelNamesFromTree(o,t)}async ensureModel(e){let t=this._modelClasses.get(e);if(t)return t;let l=this._loadingModelPromises.get(e);if(l)return l;let o=this._modelLoaders.get(e);if(!o)return console.warn(`FlowEngine: Model entry '${e}' not found. Falling back to ErrorFlowModel when needed.`),null;let n=(async()=>{try{let t=await o.loader(),l=this.normalizeModelLoaderResult(e,t);if(!l)return null;return this._registerModel(e,l),l}catch(t){return console.warn(`FlowEngine: Failed to load model '${e}'. Falling back to ErrorFlowModel when needed.`,t),null}finally{this._loadingModelPromises.delete(e)}})();return this._loadingModelPromises.set(e,n),n}async ensureModels(e){let t=Array.from(new Set(e.filter(e=>!!e))),l=[],o=[];return(await Promise.all(t.map(async e=>{let t=await this.ensureModel(e);return{name:e,modelClass:t}}))).forEach(e=>{let{name:t,modelClass:n}=e;n?l.push(t):o.push({name:t})}),{requested:t,loaded:l,failed:o}}async resolveModelTree(e){let t=new Set,l=new Set,o=new Map,n=new Set,r=new Set;for(this.collectModelNamesFromTree(e,r);r.size>0;){let e=Array.from(r).filter(e=>!n.has(e));if(r.clear(),0===e.length)break;e.forEach(e=>t.add(e));let i=await this.ensureModels(e);i.loaded.forEach(e=>{n.add(e),l.add(e);let t=this.getModelClass(e);if(t){let e=new Set;this.collectModelNamesFromMetaDefaults(t,e),e.forEach(e=>{n.has(e)||r.add(e)})}}),i.failed.forEach(e=>{n.add(e.name),o.set(e.name,e)})}return{requested:Array.from(t),loaded:Array.from(l),failed:Array.from(o.values())}}async preloadModelLoaders(){let e=Array.from(this._modelLoaders.keys()).filter(e=>!this._modelClasses.has(e));return 0===e.length?(this._modelLoadersPreloaded=!0,{requested:[],loaded:[],failed:[]}):(this._modelLoadersPreloadPromise||(this._modelLoadersPreloadPromise=(async()=>{let t=await this.ensureModels(e);return this._modelLoadersPreloaded=0===t.failed.length,this._modelLoadersPreloadPromise=void 0,t})()),this._modelLoadersPreloadPromise)}registerResources(e){for(let[t,l]of Object.entries(e))this._resources.set(t,l)}createResource(e,t){if("string"==typeof e){let l=this._resources.get(e);if(!l)throw Error(`Resource class '${e}' not found. Please register it first.`);return new l((null==t?void 0:t.context)||this.context)}return new e((null==t?void 0:t.context)||this.context)}getModelClasses(){return this._modelClasses}getModelClass(e){return this._modelClasses.get(e)}findModelClass(e){for(let[t,l]of this._modelClasses)if(e(t,l))return[t,l]}getSubclassesOf(e,t){let l="string"==typeof e?this.getModelClass(e):e,o=new Map;if(!l)return o;for(let[e,n]of this._modelClasses)(0,g.FA)(n,l)&&(!t||t(n,e))&&o.set(e,n);return o}async getSubclassesOfAsync(e,t){let l,o="string"==typeof e?e:e.name;if("string"==typeof e?(this.getModelClass(e)||await this.ensureModel(e),l=this.getModelClass(e)):l=e,!l)return new Map;let n=this.getSubclassesOf(l,t),r=[];for(let[e,t]of this._modelLoaders){var i;!(n.has(e)||this._modelClasses.has(e))&&(null==(i=t.extends)?void 0:i.includes(o))&&r.push(e)}for(let e of(r.length>0&&await this.ensureModels(r),r)){let r=this._modelClasses.get(e);if(r){if(!(0,g.FA)(r,l)){console.warn(`FlowEngine: Model '${e}' declares extends '${o}' but does not actually inherit from it. Skipping.`);continue}(!t||t(r,e))&&n.set(e,r)}}return n}createModel(e,t){var l;let o,{parentId:n,uid:r,use:i,subModels:a}=e,s=n?this.getModel(n)||(null==(l=this.previousEngine)?void 0:l.getModel(n)):void 0,d=this._resolveModelClass("string"==typeof i?this.getModelClass(i):i,e,s);return r&&this._modelInstances.has(r)?this._modelInstances.get(r):(d?o=new d({...e,flowEngine:this}):(o=new L._f({...e,flowEngine:this})).setErrorMessage(`Model class '${i}' not found. Please register it first.`),(null==t?void 0:t.delegate)&&o.context.addDelegate(t.delegate),s&&(o.setParent(s),(null==t?void 0:t.delegateToParent)===!1&&o.removeParentDelegate()),this._modelInstances.set(o.uid,o),o.onInit(e),this.emitter.emitAsync("model:created",{uid:o.uid,model:o}),this._applyFlowDefinitionDefaultParams(o).catch(e=>{console.warn("FlowEngine: apply flow defaultParams failed:",e)}),o._createSubModels(e.subModels),o)}_resolveModelClass(e,t,l){let o=e=>e?"object"==typeof e&&"use"in e?{target:e.use,stop:!!e.stop}:{target:e,stop:!1}:{},n=e,r=new Set;for(;n;){let e;if(r.has(n)){console.warn(`FlowEngine: resolveUse circular reference detected on '${n.name}'.`);break}r.add(n);let i=null==n?void 0:n.resolveUse;if("function"!=typeof i)break;let{target:a,stop:s}=o(i(t,this,l));if(!a||a===n)break;if("string"==typeof a){if(!(e=this.getModelClass(a)))return void console.warn(`FlowEngine: resolveUse returned '${a}' but no model is registered under that name.`)}else e=a;if(n=e,s)break}return n}async _applyFlowDefinitionDefaultParams(e){try{let l=e.getFlows();if(!l||0===l.size)return;let o=e.context;for(let[n,r]of l.entries()){var t;let l,i=r.defaultParams;if(!i)continue;try{l="function"==typeof i?await i(o):i}catch(e){console.warn(`FlowEngine: resolve defaultParams of flow '${n}' failed:`,e);continue}if(!l||"object"!=typeof l)continue;let a=null==(t=r.getSteps)?void 0:t.call(r),s=a?Array.from(a.keys()):Object.keys(r.steps||{}),d=Object.entries(l).filter(e=>{let[t]=e;return s.includes(t)});if(0!==d.length)for(let[t,l]of d){let o=e.getStepParams(n,t);void 0===o&&l&&"object"==typeof l&&e.setStepParams(n,t,l)}}}catch(e){console.warn("FlowEngine: apply flow defaultParams error:",e)}}getModel(e,t){if(!t)return this._modelInstances.get(e);let l=this;for(;l.nextEngine;)l=l.nextEngine;let o=l;for(;o;){let t=o._modelInstances.get(e);if(t)return t;o=o.previousEngine}}forEachModel(e){this._modelInstances.forEach(e)}removeModel(e){var t,l,o;if(!this._modelInstances.has(e))return console.warn(`FlowEngine: Model with UID '${e}' does not exist.`),!1;let n=this._modelInstances.get(e);if(n.invalidateFlowCache(void 0,!0),n.clearForks(),null==(t=n.parent)?void 0:t.subModels)for(let e in n.parent.subModels){let t=n.parent.subModels[e];if(Array.isArray(t)){let e=t.findIndex(e=>e==n);if(-1!==e){t.splice(e,1),n.parent.emitter.emit("onSubModelRemoved",n),null==(l=this.emitter)||l.emit("model:subModel:removed",{parentUid:n.parent.uid,parent:n.parent,model:n});break}}else if(t&&t===n){delete n.parent.subModels[e],n.parent.emitter.emit("onSubModelRemoved",n),null==(o=this.emitter)||o.emit("model:subModel:removed",{parentUid:n.parent.uid,parent:n.parent,model:n});break}}return this._modelInstances.delete(e),this.emitter.emitAsync("model:destroyed",{uid:e,model:n}),!0}removeModelWithSubModels(e){let t=this.getModel(e);if(!t)return!1;let l=(e,t)=>{if(e.subModels)for(let o in e.subModels){let n=e.subModels[o];Array.isArray(n)?[...n].forEach(e=>l(e,t)):n&&l(n,t)}t.push(e)},o=[];l(t,o);let n=!0;for(let e of o)this.removeModel(e.uid)||(n=!1);return n}ensureModelRepository(){return!!this._modelRepository}findModelInPreviousEngines(e){let t=this.previousEngine;for(;t;){let l=t.getModel(e);if(l)return l;t=t.previousEngine}}findSubModelInPreviousEngines(e,t){let l=this.previousEngine;for(;l;){let n=l.getModel(e);if(n){var o;let e=null==(o=n.subModels)?void 0:o[t];if(e){let t=Array.isArray(e)?e[0]:e;if(t)return{parent:n,model:t}}}l=l.previousEngine}}async hydrateModelFromPreviousEngines(e,t){let l=null==e?void 0:e.uid,o=null==e?void 0:e.parentId,n=null==e?void 0:e.subKey;if(l&&!this._modelInstances.has(l)){let e=this.findModelInPreviousEngines(l);if(null==e?void 0:e.context.flowSettingsEnabled)return null;if(e){let l=e.serialize();return this.createModelAsync(l,t)}}if(o&&n){var r;let e=this.findSubModelInPreviousEngines(o,n);if(!e||e.parent.context.flowSettingsEnabled)return null;let{parent:l,model:i}=e,a=this.getModel(o);if(!a){let e=l.serialize();delete e.subModels,a=await this.createModelAsync(e,t)}let s=i.serialize(),d=await this.createModelAsync(s,t),u=null==(r=a.subModels)?void 0:r[n];return Array.isArray(u)?u.some(e=>(null==e?void 0:e.uid)===(null==d?void 0:d.uid))||a.addSubModel(n,d):u instanceof L.WD?u.uid!==(null==d?void 0:d.uid)&&a.setSubModel(n,d):(null==d?void 0:d.subType)==="array"?a.addSubModel(n,d):a.setSubModel(n,d),d}return null}async loadModel(e){if(!this.ensureModelRepository())return;let t=!!(null==e?void 0:e.refresh);if(!t){let t=this.findModelByParentId(e.parentId,e.subKey);if(t)return t;let l=await this.hydrateModelFromPreviousEngines(e);if(l)return l}let l=await this._modelRepository.findOne(e);if(!(null==l?void 0:l.uid))return null;if(await this.resolveModelTree(l),t){let e=this.getModel(l.uid);e&&this.removeModelWithSubModels(e.uid)}return this.createModelAsync(l)}findModelByParentId(e,t){if(e&&this._modelInstances.has(e)){let l=this._modelInstances.get(e);if(l&&l.subModels[t]){let e=l.subModels[t];return Array.isArray(e)?e[0]:e}}}async loadOrCreateModel(e,t){if(!this.ensureModelRepository())return;let{uid:l,parentId:o,subKey:n}=e;if(l&&this._modelInstances.has(l))return this._modelInstances.get(l);let r=this.findModelByParentId(o,n);if(r)return r;let i=await this.hydrateModelFromPreviousEngines(e,t);if(i)return i;let a=await this._modelRepository.findOne(e),s=null;if((null==a?void 0:a.uid)?s=await this.createModelAsync(a,t):(s=await this.createModelAsync(e,t),(null==t?void 0:t.skipSave)||await s.save()),s.parent){if(s.parent.findSubModel(s.subKey,e=>e.uid===s.uid))return s;"array"===s.subType?s.parent.addSubModel(s.subKey,s):s.parent.setSubModel(s.subKey,s)}return s}async saveModel(e,t){if(!this.ensureModelRepository())return;let l=e.uid;if(this._savingModels.has(l))return this.logger.debug(`Model ${l} is already being saved, waiting for existing save operation`),await this._savingModels.get(l);let o=this._performModelSave(e,t);this._savingModels.set(l,o);try{return await o}finally{this._savingModels.delete(l)}}async _performModelSave(e,t){this.logger.debug(`Starting save operation for model ${e.uid}`);try{let l=await this._modelRepository.save(e,t);return this.logger.debug(`Successfully saved model ${e.uid}`),l}catch(t){throw this.logger.error(`Failed to save model ${e.uid}:`,t),t}}async destroyModel(e){this.ensureModelRepository()&&await this._modelRepository.destroy(e);let t=this._modelInstances.get(e),l=null==t?void 0:t.parent,o=this.removeModel(e);return l&&l.emitter.emit("onSubModelDestroyed",t),o}async duplicateModel(e){return this.ensureModelRepository()?this._modelRepository.duplicate(e):null}async replaceModel(e,t){let l,o=this.getModel(e);if(!o)return console.warn(`FlowEngine: Cannot replace model. Model with UID '${e}' not found.`),null;let n=o.parent,r=o.subKey,i=o.subType,a=o.serialize();l="function"==typeof t?t(o):t||{};let d={...s().omit(a,["subModels"]),...l};n&&n.emitter.setPaused(!0),await o.destroy();let u=this.createModel(d);if(n&&r&&("array"===i?n.addSubModel(r,u):n.setSubModel(r,u)),n){var c,p;n.emitter.setPaused(!1),n.parent.invalidateFlowCache("beforeRender",!0),null==(c=n.parent)||c.rerender(),n.emitter.emit("onSubModelReplaced",{oldModel:o,newModel:u}),null==(p=this.emitter)||p.emit("model:subModel:replaced",{parentUid:n.uid,parent:n,oldModel:o,newModel:u})}return await u.save(),u}async moveModel(e,t,l){var o,n;let r=this.getModel(e),i=this.getModel(t);if(!r||!i)return void console.warn("FlowEngine: Cannot move model. Source or target model not found.");if(((e,t)=>{if(!e.parent||!t.parent||e.parent!==t.parent)return console.error("FlowModel.moveTo: Both models must have the same parent to perform move operation.");let l=e.parent.subModels[e.subKey];if(!l||!Array.isArray(l))return console.error("FlowModel.moveTo: Parent subModels must be an array to perform move operation.");let o=[...l],n=e=>o.findIndex(t=>t.uid===e.uid),r=n(e),i=n(t);if(-1===r||-1===i)return console.error("FlowModel.moveTo: Current or target model not found in parent subModels.");if(r===i)return console.warn("FlowModel.moveTo: Current model is already at the target position. No action taken.");let[a]=o.splice(r,1);return o.splice(i,0,a),o.forEach((e,t)=>{e.sortIndex=t}),l.splice(0,l.length,...o)})(r,i),(null==l?void 0:l.persist)!==!1&&this.ensureModelRepository()){let l=r.sortIndex-i.sortIndex>0?"after":"before";await this._modelRepository.move(e,t,l)}r.parent.emitter.emit("onSubModelMoved",{source:r,target:i}),null==(n=this.emitter)||n.emit("model:subModel:moved",{parentUid:null==(o=r.parent)?void 0:o.uid,parent:r.parent,source:r,target:i})}filterModelClassByParent(e){let t="string"==typeof e?this.getModelClass(e):e;if(!t)return new Map;let l=new Map;for(let[e,o]of this._modelClasses)(0,g.FA)(o,t)&&l.set(e,o);return l}static generateApplyFlowCacheKey(e,t,l){return`${e}:${t}:${l}`}constructor(){(0,n._)(this,eA),(0,r._)(this,"_actionRegistry",new p),(0,r._)(this,"_eventRegistry",new m),(0,r._)(this,"_modelClasses",i.observable.shallow(new Map)),(0,r._)(this,"_modelLoaders",new Map),(0,r._)(this,"_loadingModelPromises",new Map),(0,r._)(this,"_modelLoadersPreloaded",!1),(0,r._)(this,"_modelLoadersPreloadPromise",void 0),(0,r._)(this,"_modelInstances",new Map),(0,r._)(this,"_modelRepository",null),(0,r._)(this,"_applyFlowCache",new Map),(0,r._)(this,"_savingModels",new Map),(0,r._)(this,"_flowContext",void 0),(0,r._)(this,"_previousEngine",void 0),(0,r._)(this,"_nextEngine",void 0),(0,r._)(this,"_destroyView",void 0),(0,r._)(this,"_resources",new Map),(0,r._)(this,"_dataSourceDirtyVersions",new Map),(0,r._)(this,"emitter",new ei.v),(0,r._)(this,"_modelOperationScheduler",void 0),(0,r._)(this,"logger",void 0),(0,r._)(this,"flowSettings",void 0),(0,r._)(this,"reactView",void 0),(0,r._)(this,"executor",void 0),this.reactView=new ex(this),this.flowSettings=new ef(this),this.flowSettings.registerScopes({t:this.translate.bind(this)}),this.registerModels({FlowModel:L.WD}),this.registerResources({FlowResource:ew.l2,SQLResource:ew.BH,APIResource:ew.hR,SingleRecordResource:ew.sB,MultiRecordResource:ew.Rn}),this.logger=u()({level:"trace",browser:{write:{fatal:e=>console.trace(e),error:e=>console.error(e),warn:e=>console.warn(e),info:e=>console.info(e),debug:e=>console.debug(e),trace:e=>console.trace(e)}}}),this.executor=new x(this)}}function eC(e,t){return this._registerModel(e,t)}},57084(e,t,l){l.d(t,{Ps:()=>i.Ps,PZ:()=>i.PZ,m2:()=>i.m2,sz:()=>d.s,uF:()=>d.u,ke:()=>c.k,GC:()=>s,fh:()=>r,eP:()=>c.e,t_:()=>u});var o=l(96540),n=l(20616);function r(e,t,l){let r=(0,n.uf)();return(0,o.useMemo)(()=>{let o=r.getModel(e);return!o&&t&&(o=r.createModel({uid:e,use:t,stepParams:l})),o},[r,t,e,l])}var i=l(97019),a=l(7259);function s(e,t,l){let r=(0,n.uf)(),i=(0,o.useMemo)(()=>"string"==typeof e?r.getModel(e):e,[e,r]);null==i||i.useHooksBeforeRender();let{loading:s,error:d}=(0,a.A)(async()=>{i&&await i.dispatchEvent("beforeRender",t,{useCache:null==l?void 0:l.useCache})},{refreshDeps:[i,t,null==l?void 0:l.useCache]});if((null==l?void 0:l.throwOnError)!==!1&&d)throw d;return{loading:s,error:d}}var d=l(16296);let u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=(0,o.useRef)(0);return(0,o.useEffect)(()=>{let e=e=>{let{clientY:l}=e;t.current=Math.max(l,window.innerHeight-l)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]),(0,o.useMemo)(()=>t.current-40,e)};var c=l(23200)},97019(e,t,l){l.d(t,{PZ:()=>s,Ps:()=>a,m2:()=>d});var o=l(74848),n=l(96540),r=l(52568);let i=(0,n.createContext)(null),a=e=>{let{model:t,children:l}=e;if(!t)throw Error("FlowModelProvider must be supplied with a model.");return(0,o.jsx)(i.Provider,{value:t,children:(0,o.jsx)(r.Dv,{context:t.context,children:l})})};function s(){let e=(0,n.useContext)(i);if(!e)throw Error("useFlowModel must be used within a FlowModelProvider");return e}function d(){return s().context}},16296(e,t,l){l.d(t,{s:()=>s,u:()=>a});var o=l(74848),n=l(96540),r=l(52568);let i=(0,n.createContext)(null),a=e=>{let{value:t,children:l}=e;return(0,o.jsx)(r.Dv,{context:t,children:(0,o.jsx)(i.Provider,{value:t,children:l})})},s=()=>{let e=(0,n.useContext)(i);if(!e)throw Error("useFlowSettingsContext must be used within a FlowSettingsContextProvider");return e}},23200(e,t,l){l.d(t,{e:()=>r,k:()=>n});var o=l(96540);let n=o.createContext({path:"",params:{}}),r=()=>(0,o.useContext)(n)},40532(e,t,l){l.r(t),l.d(t,{action:()=>p.XI,resolveOverlayAnchorTransform:()=>ej,batch:()=>p.vA,loadMetaTreeChildren:()=>tY,FlowSettingsButton:()=>y,FlowRunJSContext:()=>eQ.uk,compileUiSchema:()=>n.ln,resolveModuleUrl:()=>n.i,FlowsContextMenu:()=>e1,encodeBase64Url:()=>n.DX,setDataNode:()=>p.Jv,collectContextParamsForTemplate:()=>n.ju,simulateLayoutForSlot:()=>eF,CollectionField:()=>oh.JL,isVariableValue:()=>tZ,runjsWithSafeGlobals:()=>n._,createRecordMetaFactory:()=>n.pc,FlowRuntimeContext:()=>eQ.W5,markRaw:()=>p.IG,useFlowModelById:()=>d.fh,contains:()=>p.gR,FlowViewContextProvider:()=>g.YQ,isCompleteCtxDatePath:()=>n.M5,useDialog:()=>oT.sp,DisplayItemModel:()=>u.jG,createEphemeralContext:()=>n.vq,TOOLBAR_DRAG_ACTIVITY_EVENT:()=>ek,isSupportObservable:()=>p.Rq,isFieldInterfaceMatch:()=>oh.Xk,FlowEngineGlobalsContextProvider:()=>c.f7,FlowExitException:()=>n.sy,inferRecordRef:()=>n.XU,preprocessRunJsTemplates:()=>n.mH,FlowForkModelContext:()=>eQ.Hl,FlowCancelSaveException:()=>n.VD,jioToJoiSchema:()=>oh.Ns,getSlotKey:()=>Y,EMPTY_COLUMN_UID:()=>eA,markObservable:()=>p.po,FlowStep:()=>oN.z,FlowEngineContext:()=>eQ.o0,transformItems:()=>l0,COLUMN_EDGE_MIN_WIDTH:()=>j,openStepSettingsDrawer:()=>lF,observe:()=>p.lB,untracked:()=>p.O8,useFlowEngineContext:()=>c.Db,getPageActive:()=>p.SL,FlowExitAllException:()=>n.zz,createCurrentRecordMetaFactory:()=>n.UX,ModelRenderMode:()=>u.NK,createViewScopedEngine:()=>oO._,SingleRecordResource:()=>a.sB,openStepSettingsDialog:()=>eZ.openStepSettingsDialog,DragHandler:()=>eE,useApplyAutoFlows:()=>d.GC,FieldDeletePlaceholder:()=>u.xI,ErrorFlowModel:()=>u._f,Collection:()=>oh.pM,MENU_KEYS:()=>n.Fv,hasCollected:()=>p.KP,projectLayoutToLegacyRows:()=>ei,createSafeWindow:()=>n.ey,resolveStepUiSchema:()=>n.o7,createSafeDocument:()=>n.Xh,VariableTag:()=>l3,resolveRunJSObjectValues:()=>n.mP,DndProvider:()=>eR,FlowsFloatContextMenu:()=>tR,Tracker:()=>p.JD,FlowContextSelector:()=>t9,observer:()=>p.PA,isObservable:()=>p.AT,FlowStepContext:()=>d.ke,normalizeRunJSValue:()=>n.J3,parseValueToPath:()=>tW,getT:()=>n.lW,extractUsedVariablePaths:()=>n.nN,registerRunJSContextContribution:()=>oF.JF,ForkFlowModel:()=>u.yN,BLOCK_GROUP_CONFIGS:()=>n.WJ,BLOCK_TYPES:()=>n.kl,VIEW_ACTIVATED_VERSION:()=>oD.tb,FlowErrorFallbackModal:()=>eV,escapeT:()=>n.MI,prepareRunJsCode:()=>n.ji,useNiceDropdownMaxHeight:()=>d.t_,FlowModelRenderer:()=>tB,extractPropertyPath:()=>n.YB,createCollectionContextMeta:()=>n.H9,useFlowModel:()=>d.PZ,getRunJSDocFor:()=>ob,useDrawer:()=>oT.bt,parsePathnameToViewParams:()=>n.KB,buildWrapperFieldChildren:()=>lV.jx,largeField:()=>om,isInheritedFrom:()=>n.FA,buildSubModelGroups:()=>lV.Qp,FieldModelRenderer:()=>tV,observable:()=>p.sH,registerRunJSSnippet:()=>ok,AddSubModelButton:()=>l2,FlowViewContext:()=>g.PC,FlowDefinition:()=>oN.G,serializeCtxDateValue:()=>n.hz,setupRunJSContexts:()=>oM.setupRunJSContexts,DataNode:()=>p.dw,buildRecordMeta:()=>n.$S,replaceUidInGridLayout:()=>ec,VIEW_ENGINE_SCOPE:()=>"view",FilterItem:()=>a.qi,buildDataTree:()=>p.H_,normalizeGridLayout:()=>eu,autorun:()=>p.fm,ENGINE_SCOPE_KEY:()=>oD.i6,buildItems:()=>lV.z5,clearAutoFlowError:()=>n.Z8,EMBED_REPLACING_DATA_KEY:()=>oT.xB,MobilePopup:()=>op.D,defineFlow:()=>u.oY,DATA_SOURCE_DIRTY_EVENT:()=>oD.HK,isCtxDateExpression:()=>n.y4,usePage:()=>oT.N5,createDefaultConverters:()=>t0,raw:()=>p.lS,FieldPlaceholder:()=>u.WE,tExpr:()=>n.MZ,VariableInput:()=>ol,BaseRecordResource:()=>a.vB,isAnnotation:()=>p.Ir,buildContextSelectorItems:()=>tX,MAX_SLOT_THICKNESS:()=>P,MemoFlowModelRenderer:()=>tq,CollectionFieldModel:()=>u.yW,createRecordResolveOnServerWithLocal:()=>n.xI,isVariableExpression:()=>n.n2,FlowContext:()=>eQ.cB,GLOBAL_EMBED_CONTAINER_ID:()=>oT.mW,createFinalConverters:()=>t1,useFlowViewContext:()=>g.Ww,createAssociationSubpathResolver:()=>n.Hi,SQLResource:()=>a.BH,FlowModelProvider:()=>d.Ps,FormItem:()=>t7.e,COLUMN_EDGE_MAX_WIDTH:()=>I,DataSourceManager:()=>oh.zA,getAutoFlowError:()=>n.yz,SlateVariableEditor:()=>ou,useFlowSettingsContext:()=>d.sz,ActionScene:()=>o,getEmitterViewActivatedVersion:()=>oD.FH,ViewNavigation:()=>oT.U,resolveDefaultParams:()=>n.gG,MIN_SLOT_THICKNESS:()=>C,resolveCreateModelOptions:()=>n.mv,resolveStepDisabledInSettings:()=>n.XM,model:()=>p.ge,DataChange:()=>p.r5,Droppable:()=>e_,FlowsDropdownButton:()=>ll,buildSubModelItem:()=>lV.Ls,useFlowContext:()=>g.$K,useFlowView:()=>g.Vy,resolveExpressions:()=>n.M,preloadContextSelectorPath:()=>tQ,mergeSubModelItems:()=>lY,defineAction:()=>n.QP,FlowSQLRepository:()=>a.tP,decodeBase64Url:()=>n.$X,shouldPreprocessRunJSTemplates:()=>og.R,COLUMN_EDGE_WIDTH_RATIO:()=>E,FlowResource:()=>a.l2,LazyDropdown:()=>lL,FlowEngine:()=>s.$,DataSource:()=>oh.qS,FLOW_ENGINE_NAMESPACE:()=>n.u4,isSameGridLayout:()=>eM,parseCtxDateExpression:()=>n.X4,DEFAULT_GRID_COLUMNS:()=>k,registerRunJSLib:()=>i.T1,resolveDropIntent:()=>Q,findModelUidLayoutPosition:()=>ep,resolveCtxDatePath:()=>n.Vv,shouldHideEventInSettings:()=>n.qI,shouldHideStepInSettings:()=>n._3,MultiRecordResource:()=>a.Rn,usePopover:()=>oT.fP,ElementProxy:()=>of.x,FlowModel:()=>u.WD,isCtxDatePathPrefix:()=>n.JE,openRequiredParamsStepFormDialog:()=>lP.openRequiredParamsStepFormDialog,FlowSettingsContextProvider:()=>d.uF,extractUsedVariableNames:()=>n.vP,InlineVariableTag:()=>oa,isBeforeRenderFlow:()=>n.EI,EditableItemModel:()=>u.B3,FlowSettings:()=>lc,getDataNode:()=>p.D,CollectionManager:()=>oh.qG,createRunJSDeprecationProxy:()=>eQ.Bt,JSRunner:()=>og.I,searchInLoadedNodes:()=>tG,useResolvedMetaTree:()=>t2,FlowErrorFallback:()=>eL,FlowEngineProvider:()=>c.I6,ResourceError:()=>a.BS,formatPathToVariable:()=>n.AP,createBlockScopedEngine:()=>o$,isCssFile:()=>n.yp,extractUsedVariablePathsFromRunJS:()=>n.$n,formatPathToValue:()=>tH,resolveUiMode:()=>n.ME,getRunJSScenesForModel:()=>ow,FlowsSettings:()=>lw,pruneFilter:()=>n.pM,setupRuntimeContextSteps:()=>n.wx,buildSubModelItems:()=>lV.yG,createJSRunnerWithVersion:()=>ox,findModelUidPosition:()=>S,define:()=>p.E8,buildLayoutSnapshot:()=>H,FlowModelContext:()=>eQ.d6,getModelClassName:()=>ov.B,APIResource:()=>a.hR,FilterGroup:()=>a.I8,RunJSContextRegistry:()=>ov.F,useFlowEngine:()=>c.uf,VIEW_ACTIVATED_EVENT:()=>oD.B9,createAssociationAwareObjectMetaFactory:()=>n.af,createSafeRunJSGlobals:()=>n.I2,setAutoFlowError:()=>n.GZ,FilterableItemModel:()=>u.bt,compileRunJs:()=>r.W,filterLoadedContextSelectorItems:()=>tJ,getRunJSScenesForContext:()=>oS,getSnippetBody:()=>o_,useFlowModelContext:()=>d.m2,reaction:()=>p.mJ,FlowContextProvider:()=>g.Dv,isRunJSValue:()=>n.E2,useFlowStep:()=>d.eP,openStepSettings:()=>lC,FlowReactContext:()=>g.bc,createSafeNavigator:()=>n.D1,toJS:()=>p.HO,listSnippetsForContext:()=>oR});var o=function(e){return e[e.BLOCK_LINKAGE_RULES=1]="BLOCK_LINKAGE_RULES",e[e.FIELD_LINKAGE_RULES=2]="FIELD_LINKAGE_RULES",e[e.SUB_FORM_FIELD_LINKAGE_RULES=3]="SUB_FORM_FIELD_LINKAGE_RULES",e[e.DETAILS_FIELD_LINKAGE_RULES=4]="DETAILS_FIELD_LINKAGE_RULES",e[e.ACTION_LINKAGE_RULES=5]="ACTION_LINKAGE_RULES",e[e.DYNAMIC_EVENT_FLOW=6]="DYNAMIC_EVENT_FLOW",e}({}),n=l(48555),r=l(49773),i=l(98192),a=l(27667),s=l(81440),d=l(57084),u=l(1314),c=l(20616),p=l(52847),h=l(74848),m=l(71021),f=l(96540),g=l(52568);function v(e){let t=(0,p.PA)(t=>(0,g.$K)().flowSettingsEnabled?(0,h.jsx)(e,{...t}):null);return t.displayName=`withFlowDesignMode(${e.displayName||e.name||"Component"})`,t}let y=v(e=>(0,h.jsx)(m.Ay,{...e,type:"dashed",style:{...e.style,borderColor:"var(--colorSettings)",color:"var(--colorSettings)",alignSelf:"flex-start"}}));y.displayName="FlowSettingsButton";var b=l(2805),x=l(98668),w=l(40961);let S=(e,t)=>{let l=null;for(let[o,n]of Object.entries(t))for(let t=0;t<n.length;t++){let r=n[t];for(let n=0;n<r.length;n++)r[n]===e&&(l={rowId:o,columnIndex:t,itemIndex:n})}return l};var M=l(27253),F=l(2543),A=l.n(F);let k=24,C=16,P=48,j=12,I=28,E=.2,_=.5,R=.33,T=(e,t)=>{let l=[],o=new Set;return(t||Object.keys(e)).forEach(t=>{e[t]&&!o.has(t)&&(l.push(t),o.add(t))}),Object.keys(e).forEach(e=>{o.has(e)||(l.push(e),o.add(e))}),l},D=(e,t)=>{let l={};return t.forEach(t=>{e[t]&&(l[t]=e[t])}),Object.keys(e).forEach(t=>{l[t]||(l[t]=e[t])}),l},N=e=>{let t=T(e.rows,e.rowOrder);return e.rowOrder=t,e.rows=D(e.rows,t),t},O=e=>({top:e.top,left:e.left,width:e.width,height:e.height}),$=e=>Math.max(C,Math.min(P,e)),B=e=>{let{top:t,left:l,width:o,height:n}=e;return{top:t,left:l,width:o,height:n}},q=(e,t,l)=>{let o=$(e.height*R);if("above"===t){let t=$(Math.max(o,e.top-l.top));return B({top:e.top-t,left:l.left,width:l.width,height:t})}let n=$(Math.max(o,l.top+l.height-(e.top+e.height)));return B({top:e.top+e.height,left:l.left,width:l.width,height:n})},L=(e,t)=>{let l=Math.min(Math.max(j,e.width*E),I);return B({top:e.top,left:"left"===t?e.left:e.left+e.width-l,width:l,height:e.height})},V=(e,t)=>{let l=$(e.height*_);return"before"===t?B({top:e.top,left:e.left,width:e.width,height:l}):B({top:e.top+e.height-l,left:e.left,width:e.width,height:l})},z=e=>{if(e)try{let t=JSON.parse(e);if(!Array.isArray(t))return;let l=t.map(e=>e&&"object"==typeof e&&"string"==typeof e.rowId?{rowId:e.rowId,..."string"==typeof e.cellId?{cellId:e.cellId}:{}}:null).filter(Boolean);return l.length?l:void 0}catch(e){return}},K=(e,t)=>[{rowId:e,cellId:`${e}:cell:${t}`}],U=e=>({top:e.top,left:e.left,width:e.width,height:Math.max(e.height,C)}),W=e=>Array.from(e.querySelectorAll("[data-grid-row-id]")).some(t=>t.closest("[data-grid-column-row-id][data-grid-column-index]")===e),H=e=>{let{container:t}=e;if(!t)return{slots:[],containerRect:{top:0,left:0,width:0,height:0}};let l=(t.hasAttribute("data-grid-root")?t:t.querySelector("[data-grid-root]"))||t,o=O(l.getBoundingClientRect()),n=[],r=Array.from(l.querySelectorAll("[data-grid-row-id]")),i=l.hasAttribute("data-grid-root"),a=r.filter(e=>{let t=e;if(i)return t.closest("[data-grid-root]")===l;let o=t.parentElement;for(;o&&o!==l;){if(o.hasAttribute("data-grid-row-id"))return!1;o=o.parentElement}return!0});if(0===a.length)return n.push({type:"empty-row",rect:B({top:o.top,left:o.left,width:o.width,height:Math.max(o.height,C)})}),{slots:n,containerRect:o};let s=e=>{let t=e.parentElement;return t&&l.contains(t)?t:l},d=new Map;return a.forEach(e=>{let t=s(e);d.set(t,[...d.get(t)||[],e])}),a.forEach(e=>{let t=e.dataset.gridRowId;if(!t)return;let o=O(e.getBoundingClientRect()),r=z(e.dataset.gridPath)||[{rowId:t}],i=s(e),a=O(i.getBoundingClientRect());(d.get(i)||[])[0]===e&&n.push({type:"row-gap",targetRowId:t,position:"above",rect:q(o,"above",a),path:r}),Array.from(l.querySelectorAll(`[data-grid-column-row-id="${t}"][data-grid-column-index]`)).filter(t=>t.closest("[data-grid-row-id]")===e).sort((e,t)=>Number(e.dataset.gridColumnIndex||0)-Number(t.dataset.gridColumnIndex||0)).forEach(e=>{let l=Number(e.dataset.gridColumnIndex||0),o=O(e.getBoundingClientRect()),r=z(e.dataset.gridPath)||K(t,l);n.push({type:"column-edge",rowId:t,columnIndex:l,direction:"left",rect:L(o,"left"),path:r}),n.push({type:"column-edge",rowId:t,columnIndex:l,direction:"right",rect:L(o,"right"),path:r});let i=Array.from(e.querySelectorAll(`[data-grid-item-row-id="${t}"][data-grid-column-index="${l}"]`)).filter(t=>t.closest("[data-grid-column-row-id][data-grid-column-index]")===e).sort((e,t)=>Number(e.dataset.gridItemIndex||0)-Number(t.dataset.gridItemIndex||0));if(0===i.length){if(W(e))return;n.push({type:"empty-column",rowId:t,columnIndex:l,rect:U(o),path:r});return}let a=O(i[0].getBoundingClientRect());n.push({type:"column",rowId:t,columnIndex:l,insertIndex:0,position:"before",rect:V(a,"before"),path:r}),i.forEach((e,o)=>{let i=O(e.getBoundingClientRect()),a=z(e.dataset.gridPath)||r,s=e.dataset.gridItemUid||"";n.push({type:"item-edge",rowId:t,columnIndex:l,itemIndex:o,itemUid:s,direction:"left",rect:L(i,"left"),path:a}),n.push({type:"item-edge",rowId:t,columnIndex:l,itemIndex:o,itemUid:s,direction:"right",rect:L(i,"right"),path:a}),n.push({type:"column",rowId:t,columnIndex:l,insertIndex:o+1,position:"after",rect:V(i,"after"),path:a})})}),n.push({type:"row-gap",targetRowId:t,position:"below",rect:q(o,"below",a),path:r})}),{slots:n,containerRect:o}},Y=e=>{switch(e.type){case"column":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.insertIndex}:${e.position}`;case"column-edge":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.direction}`;case"row-gap":return`${e.type}:${e.targetRowId}:${e.position}`;case"empty-row":return`${e.type}`;case"empty-column":return`${e.type}:${e.rowId}:${e.columnIndex}`;case"item-edge":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.itemUid}:${e.direction}`}},G=(e,t)=>e.x>=t.left&&e.x<=t.left+t.width&&e.y>=t.top&&e.y<=t.top+t.height,J=(e,t)=>{let l=Math.max(t.left-e.x,0,e.x-(t.left+t.width)),o=Math.max(t.top-e.y,0,e.y-(t.top+t.height));return Math.sqrt(l*l+o*o)},X={"item-edge":5,"column-edge":4,column:3,"row-gap":2,"empty-column":1,"empty-row":0},Q=(e,t)=>{if(!t.length)return null;let l=null,o=-1/0;if(t.forEach(t=>{if(!G(e,t.rect))return;let n=X[t.type];n>o&&(o=n,l=t)}),l)return l;let n=null,r=1/0;return t.forEach(t=>{let l=J(e,t.rect);(l<r||l===r&&n&&X[t.type]>X[n.type])&&(r=l,n=t)}),n},Z=(e,t)=>{for(let[l,o]of Object.entries(e))for(let e=0;e<o.length;e+=1){let n=o[e].indexOf(t);if(-1!==n)return{rowId:l,columnIndex:e,itemIndex:n}}return null},ee=(e,t)=>{let l=Z(e.rows,t);if(!l)return;let{rowId:o,columnIndex:n,itemIndex:r}=l,i=e.rows[o],a=null==i?void 0:i[n];if(a){if(a.splice(r,1),0===a.length&&(i.splice(n,1),e.sizes[o]&&e.sizes[o].splice(n,1)),0===i.length){delete e.rows[o],delete e.sizes[o],N(e);return}eh(o,e),N(e)}},et=(e,t)=>{if(0===t)return[];let l=Array.from({length:t},(t,l)=>{let o=e[l];return Number.isFinite(o)&&o>0?o:1}),o=l.reduce((e,t)=>e+t,0)||t,n=l.map(e=>e/o).map(e=>e*k),r=n.map(e=>Math.max(1,Math.floor(e))),i=k-r.reduce((e,t)=>e+t,0);if(i>0){let e=n.map((e,t)=>({index:t,decimal:e-Math.floor(e)})).sort((e,t)=>t.decimal-e.decimal),t=0;for(;i>0&&e.length;){let l=e[t%e.length].index;r[l]+=1,i-=1,t+=1}}else if(i<0){let e=n.map((e,t)=>({index:t,decimal:e-Math.floor(e)})).sort((e,t)=>e.decimal-t.decimal),t=0;for(;i<0&&e.length;){let l=e[t%e.length].index;r[l]>1&&(r[l]-=1,i+=1),t+=1}}let a=k-r.reduce((e,t)=>e+t,0);return 0!==a&&r.length&&(r[r.length-1]+=a),r},el="EMPTY_COLUMN",eo=(e,t)=>({id:t,cells:[{id:`${t}:cell:0`,items:[e]}],sizes:[k]}),en=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=arguments.length>2?arguments[2]:void 0;return{version:2,rows:T(e,l).map(l=>{let o=(e[l]||[]).map((e,t)=>({id:`${l}:cell:${t}`,items:[...e]}));return{id:l,cells:o,sizes:et(t[l]||Array(o.length).fill(1),o.length)}}).filter(e=>e.cells.length>0)}},er=e=>Array.isArray(e.items)?e.items:(e.rows||[]).flatMap(e=>e.cells.flatMap(e=>er(e))),ei=e=>{let t={},l={},o=[];return function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";e.forEach(e=>{let r=n?`${n}/${e.id}`:e.id,i=e.cells.map(e=>er(e)).filter(e=>e.length>0);i.length>0&&(t[r]=i,l[r]=et(e.sizes||Array(i.length).fill(1),i.length),o.push(r))})}(e.rows||[]),{rows:t,sizes:l,rowOrder:o,layout:e}},ea=(e,t)=>(Array.isArray(e)?e:[]).map((e,l)=>{let o=Array.isArray(null==e?void 0:e.cells)?e.cells:[],n=Array.isArray(null==e?void 0:e.sizes)?e.sizes:[],r=o.map((o,r)=>{let i="string"==typeof(null==o?void 0:o.id)&&o.id?o.id:`${(null==e?void 0:e.id)||`row:${l}`}:cell:${r}`,a=n[r];if(Array.isArray(null==o?void 0:o.rows)&&o.rows.length>0){let e=ea(o.rows,t);if(e.length>0)return{cell:{id:i,rows:e},size:a}}let s=Array.isArray(null==o?void 0:o.items)?o.items:void 0,d=(s||[]).filter(e=>"string"==typeof e&&e).filter(e=>!t.validUids||t.validUids.has(e)||e===el).filter(e=>e===el||!t.seenUids.has(e)&&(t.seenUids.add(e),!0));return s&&(d.length>0||0===s.length)?{cell:{id:i,items:d},size:a}:null}).filter(Boolean),i=r.map(e=>e.cell);return 0===i.length?null:{id:"string"==typeof(null==e?void 0:e.id)&&e.id?e.id:`row:${l}`,cells:i,sizes:et(r.map(e=>e.size),i.length)}}).filter(Boolean),es=e=>{var t;if(null==(t=e.rows)?void 0:t.length){let t=ed(e.rows);return 0===t.length?null:1===t.length&&1===t[0].cells.length&&t[0].sizes[0]===k?{id:e.id,...A().omit(t[0].cells[0],["id"])}:{id:e.id,rows:t}}return Array.isArray(e.items)?{id:e.id,items:e.items.filter(Boolean)}:null},ed=e=>e.map(e=>{let t=e.cells.map((t,l)=>{var o;let n=es(t);return n?{cell:n,size:null==(o=e.sizes)?void 0:o[l]}:null}).filter(Boolean),l=t.map(e=>e.cell);return 0===l.length?null:{id:e.id,cells:l,sizes:et(t.map(e=>e.size),l.length)}}).filter(Boolean),eu=e=>{let{layout:t,rows:l,sizes:o,rowOrder:n,itemUids:r,generateId:i=M.uid,logger:a,gridUid:s}=e,d=r?new Set(r):void 0;d&&d.add(el);try{let e=(null==t?void 0:t.version)===2?A().cloneDeep(t):en(l||{},o||{},n||Object.keys(l||{})),a=new Set,s={version:2,rows:ed(ea(e.rows||[],{validUids:d,seenUids:a}))};return(null==r?void 0:r.length)&&r.forEach(e=>{if(e===el||a.has(e))return;let t=i();s.rows.push(eo(e,t)),a.add(e)}),s}catch(e){var u;return null==a||null==(u=a.warn)||u.call(a,`[GridModel] Failed to normalize grid layout${s?` (${s})`:""}.`,e),{version:2,rows:(r||[]).filter(e=>e!==el).map(e=>eo(e,i()))}}},ec=(e,t,l)=>{let o=e=>e.map(e=>({...e,cells:e.cells.map(e=>e.rows?{...e,rows:o(e.rows)}:{...e,items:(e.items||[]).map(e=>e===t?l:e)})}));return{version:2,rows:o(A().cloneDeep(e.rows||[]))}},ep=(e,t)=>{let l=(e,o)=>{for(let n=0;n<e.length;n+=1){let r=e[n];for(let e=0;e<r.cells.length;e+=1){let i=r.cells[e],a=[...o,{rowId:r.id,cellId:i.id}];if(i.items){let l=i.items.indexOf(t);if(-1!==l)return{path:a,rowIndex:n,cellIndex:e,itemIndex:l,itemUid:t}}if(i.rows){let e=l(i.rows,a);if(e)return e}}}return null};return l(e.rows||[],[])},eh=(e,t)=>{let l=t.rows[e];if(!l||0===l.length)return void delete t.sizes[e];let o=t.sizes[e]||Array(l.length).fill(k/l.length),n=o.length===l.length?o:Array(l.length).fill(k/l.length);t.sizes[e]=et(n,l.length)},em=(e,t,l,o,n)=>{let r=Object.entries(e),i={},a=!1;return r.forEach(e=>{let[r,s]=e;a||"before"!==o||r!==t||(i[l]=n,a=!0),i[r]=s,a||"after"!==o||r!==t||(i[l]=n,a=!0)}),a||(i[l]=n),i},ef=(e,t,l)=>{if(!e||0===e.length)return et(Array(l).fill(1),l);let o=e.map(e=>Number.isFinite(e)&&e>0?e:1),n=Math.max(0,Math.min(t,o.length-1)),r=o[n]??1,i=[...o];return i.splice(t,0,r),et(i,l)},eg=(e,t)=>{var l;return"path"in t&&(null==(l=t.path)?void 0:l.length)?t.path:"rowId"in t&&"columnIndex"in t?K(t.rowId,t.columnIndex):void 0},ev=(e,t)=>{if(!t||t.length<=1)return e.rows;let l=e.rows;for(let e=0;e<t.length-1;e+=1){let o=t[e],n=l.find(e=>e.id===o.rowId),r=null==n?void 0:n.cells.find(e=>e.id===o.cellId);if(!(null==r?void 0:r.rows))break;l=r.rows}return l},ey=(e,t)=>{if(!(null==t?void 0:t.length))return null;let l=e.rows;for(let e=0;e<t.length;e+=1){let o=t[e],n=l.findIndex(e=>e.id===o.rowId),r=l[n];if(!r||!o.cellId)break;let i=r.cells.findIndex(e=>e.id===o.cellId),a=r.cells[i];if(!a)break;if(e===t.length-1)return{rows:l,row:r,cell:a,rowIndex:n,cellIndex:i};l=a.rows||[]}return null},eb=(e,t)=>{let l=e=>e.map(e=>{let o=e.cells.map((o,n)=>{var r,i;if(o.rows){let t=l(o.rows);return t.length?{cell:{...o,rows:t},size:null==(i=e.sizes)?void 0:i[n]}:null}let a=o.items||[],s=a.includes(t),d=a.filter(e=>e!==t);return s&&!d.length?null:{cell:{...o,items:d},size:null==(r=e.sizes)?void 0:r[n]}}).filter(Boolean),n=o.map(e=>e.cell);return n.length?{...e,cells:n,sizes:et(o.map(e=>e.size),n.length)}:null}).filter(Boolean);e.rows=ed(l(e.rows))},ex=(e,t,l)=>({id:t,cells:[{id:l,items:[e]}],sizes:[k]}),ew=(e,t)=>{var l,o,n;let r=null==t||null==(l=t.generatedIds)?void 0:l.get(e);if(r)return r;let i=(null==t||null==(o=t.generateId)?void 0:o.call(t,e))||(0,M.uid)();return null==t||null==(n=t.generatedIds)||n.set(e,i),i},eS=e=>{let{slot:t,sourceUid:l,layout:o,generatedIds:n,generateId:r}=e,i=eu({layout:o.layout,rows:o.rows,sizes:o.sizes,rowOrder:o.rowOrder}),a=A().cloneDeep(i),s=Y(t),d=ep(a,l);if("item-edge"===t.type&&t.itemUid===l)return a;let u=eg(a,t),c="item-edge"===t.type?t.itemUid:void 0;switch(eb(a,l),t.type){case"column":{var p;let e=ey(a,u);if(!e)break;if(e.cell.rows){e.cell.rows.push(eo(l,ew(`${s}:row`,{generatedIds:n,generateId:r})));break}(p=e.cell).items||(p.items=[]);let o=Math.max(0,Math.min(t.insertIndex,e.cell.items.length));e.cell.items.splice(o,0,l);break}case"empty-column":{let e=ey(a,u);e&&(delete e.cell.rows,e.cell.items=[l]);break}case"column-edge":{let e=ey(a,u);if(!e)break;let o="left"===t.direction?e.cellIndex:e.cellIndex+1,i=ew(`${s}:cell`,{generatedIds:n,generateId:r});e.row.cells.splice(o,0,{id:i,items:[l]}),e.row.sizes=ef(e.row.sizes,o,e.row.cells.length);break}case"row-gap":{let e=ev(a,t.path),o=e.findIndex(e=>e.id===t.targetRowId),i=-1===o?e.length:"above"===t.position?o:o+1,d=ew(`${s}:row`,{generatedIds:n,generateId:r});e.splice(i,0,ex(l,d,`${d}:cell:0`));break}case"empty-row":{let e=ew(`${s}:row`,{generatedIds:n,generateId:r});a.rows.push(ex(l,e,`${e}:cell:0`));break}case"item-edge":{if(!c)break;let e=ey(a,u);if(!(null==e?void 0:e.cell.items))break;let o=e.cell.items.indexOf(c);if(-1===o)break;let i=[];e.cell.items.forEach((e,a)=>{if(a===o){let o=ew(`${s}:target-row`,{generatedIds:n,generateId:r}),a="left"===t.direction?l:e,d="left"===t.direction?e:l;i.push({id:o,cells:[{id:ew(`${s}:target-cell:0`,{generatedIds:n,generateId:r}),items:[a]},{id:ew(`${s}:target-cell:1`,{generatedIds:n,generateId:r}),items:[d]}],sizes:[12,12]});return}let d=ew(`${s}:row:${a}`,{generatedIds:n,generateId:r});i.push(ex(e,d,`${d}:cell:0`))}),delete e.cell.items,e.cell.rows=i}}let h=eu({layout:a});return d&&eM(h,i)?i:h},eM=(e,t)=>JSON.stringify(e)===JSON.stringify(t),eF=e=>{var t;let{slot:l,sourceUid:o,layout:n,generateRowId:r,generatedIds:i,generateId:a}=e;if(n.layout||"item-edge"===l.type||"path"in l&&(null==(t=l.path)?void 0:t.length))return ei(eS({slot:l,sourceUid:o,layout:n,generateRowId:r,generatedIds:i,generateId:a}));let s={rows:A().cloneDeep(n.rows),sizes:A().cloneDeep(n.sizes),rowOrder:n.rowOrder?[...n.rowOrder]:void 0};N(s),ee(s,o);let d=r??M.uid;switch(l.type){case"column":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e),e[l.columnIndex]||(e[l.columnIndex]=[]),e[l.columnIndex].splice(l.insertIndex,0,o),eh(l.rowId,s);break}case"empty-column":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e),e[l.columnIndex]||(e[l.columnIndex]=[]),e[l.columnIndex]=[o],eh(l.rowId,s);break}case"column-edge":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e);let t="left"===l.direction?l.columnIndex:l.columnIndex+1;e.splice(t,0,[o]),s.sizes[l.rowId]=ef(s.sizes[l.rowId],t,e.length),eh(l.rowId,s);break}case"row-gap":{let e=d(),t="above"===l.position?"before":"after",n=T(s.rows,s.rowOrder);s.rows=em(s.rows,l.targetRowId,e,t,[[o]]),s.sizes[e]=[k];let r=n.indexOf(l.targetRowId),i=-1===r?n.length:"before"===t?r:r+1,a=[...n];a.splice(i,0,e),s.rowOrder=a,s.rows=D(s.rows,a);break}case"empty-row":{let e=d();s.rows={...s.rows,[e]:[[o]]},s.sizes[e]=[k];let t=T(s.rows,s.rowOrder);s.rowOrder=[...t.filter(t=>t!==e),e],s.rows=D(s.rows,s.rowOrder)}}return N(s),s},eA="EMPTY_COLUMN",ek="nb-toolbar-drag-activity",eC="nb-toolbar-drag-anchor",eP=".ant-menu-submenu-popup",ej=e=>{let{activeId:t,active:l,transform:o,activeNodeRect:n,dragAnchorPoint:r}=e;return t&&(null==l?void 0:l.id)===t&&r&&n?{...o,x:o.x+r.x-n.left,y:o.y+r.y-n.top}:o},eI=e=>{let t=null==e?void 0:e.ownerDocument,l=null==e?void 0:e.closest(".nb-toolbar-container[data-model-uid]"),o=null==l?void 0:l.getAttribute("data-model-uid");if(!t||!o)return e;let n=Array.from(t.querySelectorAll(`[data-has-float-menu="true"][data-float-menu-model-uid="${o}"]`)),r=null==l?void 0:l.closest(eP);return r?n.find(e=>e.closest(eP)===r)||e:n.find(e=>!e.closest(eP))||n[0]||e},eE=e=>{let{model:t,children:l=(0,h.jsx)(b.A,{})}=e,{attributes:o,isDragging:n,listeners:r,setActivatorNodeRef:i,setNodeRef:a}=(0,x.PM)({id:t.uid}),s=(0,f.useRef)(null),d=(0,f.useRef)(null),u=(0,f.useRef)(null),c=(0,f.useRef)(n),p=(0,f.useRef)(!1),m=(0,f.useRef)(!1),g=(0,f.useCallback)(e=>{let t=eI(e);d.current!==t&&(d.current=t,a(t))},[a]),v=(0,f.useCallback)(e=>{s.current=e,i(e),g(e)},[i,g]),y=(0,f.useCallback)(e=>{var l;let o=null==(l=s.current)?void 0:l.ownerDocument;o&&o.dispatchEvent(new CustomEvent(ek,{detail:{active:e,modelUid:t.uid}}))},[t.uid]),w=(0,f.useCallback)(e=>{var l;let o=null==(l=s.current)?void 0:l.ownerDocument;o&&o.dispatchEvent(new CustomEvent(eC,{detail:{modelUid:t.uid,point:e.point}}))},[t.uid]),S=(0,f.useCallback)(()=>{var e;null==(e=u.current)||e.call(u),u.current=null},[]),M=(0,f.useCallback)(()=>{let e=p.current||c.current;e!==m.current&&(m.current=e,y(e))},[y]),F=(0,f.useCallback)(()=>{p.current=!1,S(),M()},[S,M]),A=(0,f.useCallback)(()=>{var e;let t=null==(e=s.current)?void 0:e.ownerDocument,l=null==t?void 0:t.defaultView;if(!t)return;S();let o=()=>{F()},n=e=>{"Escape"===e.key&&F()};t.addEventListener("pointerup",o,!0),t.addEventListener("pointercancel",o,!0),t.addEventListener("keydown",n,!0),null==l||l.addEventListener("blur",o),u.current=()=>{t.removeEventListener("pointerup",o,!0),t.removeEventListener("pointercancel",o,!0),t.removeEventListener("keydown",n,!0),null==l||l.removeEventListener("blur",o)}},[S,F]);return(0,f.useEffect)(()=>{g(s.current)},[g]),(0,f.useEffect)(()=>{c.current=n,M()},[n,M]),(0,f.useEffect)(()=>()=>{m.current&&y(!1),p.current=!1,c.current=!1,m.current=!1,S()},[S,y]),(0,h.jsx)("span",{ref:v,...r,...o,onPointerDownCapture:e=>{0===e.button&&(w({point:{x:e.clientX,y:e.clientY}}),p.current=!0,M(),A())},style:{cursor:"grab"},children:l})},e_=e=>{let{model:t,children:l}=e,{setNodeRef:o,isOver:n,active:r}=(0,x.zM)({id:t.uid}),i=(null==r?void 0:r.id)===t.uid;return(0,h.jsxs)("div",{ref:o,style:{position:"relative",opacity:i?.3:1,outline:i?"2px solid var(--colorBorderSettingsHover)":"none",borderRadius:i?t.context.themeToken.borderRadiusLG:"none"},children:[l,(0,h.jsx)("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:n?"var(--colorBgSettingsHover)":"transparent",pointerEvents:"none"}})]})},eR=e=>{let{persist:t=!0,children:l,onDragStart:o,onDragEnd:n,onDragCancel:r,...i}=e,[a,s]=(0,f.useState)(null),[d,u]=(0,f.useState)(null),p=(0,c.uf)();(0,f.useEffect)(()=>{if("u"<typeof document)return;let e=e=>{var t;u((null==(t=e.detail)?void 0:t.point)||null)};return document.addEventListener(eC,e),()=>{document.removeEventListener(eC,e)}},[]);let m=(0,f.useCallback)(e=>{let{active:t,activeNodeRect:l,transform:o}=e;return ej({activeId:a,active:t,transform:o,activeNodeRect:l,dragAnchorPoint:d})},[a,d]);return(0,h.jsxs)(x.Mp,{...i,onDragStart:e=>{s(e.active.id),null==o||o(e)},onDragEnd:e=>{s(null),u(null),n?n(e):e.over&&p.moveModel(e.active.id,e.over.id,{persist:t})},onDragCancel:e=>{s(null),u(null),null==r||r(e)},...i,children:[l,"u">typeof document?(0,w.createPortal)((0,h.jsx)(x.Hd,{dropAnimation:null,modifiers:[m],zIndex:2e3,style:{pointerEvents:"none"},children:a&&(0,h.jsx)("span",{"data-testid":"flow-drag-preview",style:{display:"inline-flex",alignItems:"center",whiteSpace:"nowrap",background:"#fff",border:"1px solid #1890ff",borderRadius:4,padding:"4px 12px",color:"#1890ff",pointerEvents:"none",boxShadow:"0 2px 8px rgba(0,0,0,0.15)"},children:p.translate("Dragging")})}),document.body):null]})};var eT=l(47665),eD=l(84359),eN=l(92275),eO=l(97019);let{Paragraph:e$,Text:eB}=eD.A,eq=e=>{var t;let{error:l,resetErrorBoundary:o}=e,[r,i]=(0,f.useState)(!1),a=(0,eO.PZ)(),s=(0,n.lW)(a),d=async()=>{i(!0);try{let e={message:l.message,stack:l.stack,modelInfo:a?{uid:a.uid,className:a.constructor.name,props:a.props,stepParams:a.stepParams}:null,timestamp:new Date().toISOString()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),console.log("Error information copied to clipboard")}catch(e){console.error("Failed to copy error information:",e)}i(!1)},u=null==a||null==(t=a.context)?void 0:t.api,c=async()=>{if(!u)return void console.error("API client not available");i(!0);try{let e=a.context.api,t={pathname:window.location.pathname,search:window.location.search,hash:window.location.hash,href:window.location.href},o=await e.request({url:"logger:collect",method:"post",responseType:"blob",data:{error:{message:l.message,stack:l.stack},location:t,modelInfo:a?{uid:a.uid,className:a.constructor.name,props:a.props,stepParams:a.stepParams}:null}}),n=window.URL.createObjectURL(new Blob([o.data],{type:"application/gzip"})),r=document.createElement("a");r.setAttribute("href",n),r.setAttribute("download","logs.tar.gz"),r.click(),r.remove(),window.URL.revokeObjectURL(n)}catch(e){console.error("Failed to download logs:",e)}i(!1)},p=(0,h.jsxs)("span",{children:[s("This is likely a NocoBase internals bug. Please open an issue at")," ",(0,h.jsx)("a",{href:"https://github.com/nocobase/nocobase/issues",target:"_blank",rel:"noopener noreferrer",children:s("here")}),a&&(0,h.jsxs)("div",{style:{marginTop:"8px",fontSize:"12px",color:"#999"},children:["Model: ",a.constructor.name," (uid: ",a.uid,")"]})]});return(0,h.jsx)("div",{style:{backgroundColor:"white"},children:(0,h.jsx)(eN.Ay,{style:{maxWidth:"60vw",margin:"auto"},status:"error",title:s("Render failed"),subTitle:p,extra:[(0,h.jsx)(m.Ay,{type:"primary",href:"https://github.com/nocobase/nocobase/issues",target:"_blank",children:s("Feedback")},"feedback"),u&&(0,h.jsx)(m.Ay,{loading:r,onClick:c,children:s("Download logs")},"log"),(0,h.jsx)(m.Ay,{loading:r,onClick:d,children:s("Copy error info")},"copy"),o&&(0,h.jsx)(m.Ay,{danger:!0,onClick:o,children:s("Try again")},"retry")].filter(Boolean),children:(0,h.jsx)(e$,{copyable:{text:l.stack},children:(0,h.jsx)(eB,{type:"danger",style:{whiteSpace:"pre-line",textAlign:"center"},children:l.stack})})})})},eL=e=>{let{error:t,resetErrorBoundary:l}=e,[o,n]=(0,f.useState)(!1);try{return(0,h.jsx)(eq,{error:t,resetErrorBoundary:l})}catch{let e=async()=>{n(!0);try{let e={message:t.message,stack:t.stack,timestamp:new Date().toISOString()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),console.log("Error information copied to clipboard")}catch(e){console.error("Failed to copy error information:",e)}n(!1)},r=(0,h.jsxs)("span",{children:["This is likely a NocoBase internals bug. Please open an issue at ",(0,h.jsx)("a",{href:"https://github.com/nocobase/nocobase/issues",target:"_blank",rel:"noopener noreferrer",children:"here"})]});return(0,h.jsx)("div",{style:{backgroundColor:"white"},children:(0,h.jsx)(eN.Ay,{style:{maxWidth:"60vw",margin:"auto"},status:"error",title:"Render failed",subTitle:r,extra:[(0,h.jsx)(m.Ay,{type:"primary",href:"https://github.com/nocobase/nocobase/issues",target:"_blank",children:"Feedback"},"feedback"),(0,h.jsx)(m.Ay,{loading:o,onClick:e,children:"Copy error info"},"copy"),l&&(0,h.jsx)(m.Ay,{danger:!0,onClick:l,children:"Try again"},"retry")].filter(Boolean),children:(0,h.jsx)(e$,{copyable:{text:t.stack},children:(0,h.jsx)(eB,{type:"danger",style:{whiteSpace:"pre-line",textAlign:"center"},children:t.stack})})})})}},eV=e=>{let{error:t,resetErrorBoundary:l,children:o}=e,[n,r]=(0,f.useState)(!1),i=(0,h.jsx)(e$,{style:{display:"flex",marginBottom:0},copyable:{text:t.message},children:(0,h.jsxs)(eB,{type:"danger",style:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",display:"inline-block",maxWidth:"200px"},children:["Error: ",t.message]})});return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("div",{onMouseOver:()=>r(!0),children:o||i}),n&&(0,h.jsx)("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e4},onClick:()=>r(!1),children:(0,h.jsxs)("div",{style:{backgroundColor:"#fff",borderRadius:"8px",padding:"24px",maxWidth:"60vw",maxHeight:"80vh",overflow:"auto",position:"relative"},onClick:e=>e.stopPropagation(),children:[(0,h.jsx)("button",{style:{position:"absolute",top:"8px",right:"12px",background:"none",border:"none",fontSize:"18px",cursor:"pointer",color:"#999"},onClick:()=>r(!1),children:"\xd7"}),(0,h.jsx)(eL,{error:t,resetErrorBoundary:l})]})})]})};eL.Modal=eV;var ez=l(92034),eK=l(49655),eU=l(53619),eW=l(53138),eH=l(35710),eY=l(18182),eG=l(40919),eJ=l(42443),eX=l(76511),eQ=l(29007),eZ=l(23183);let e0=e=>"uid"in e&&"modelClassName"in e&&!!e.uid&&!!e.modelClassName,e1=e=>e0(e)?(0,h.jsx)(e4,{...e}):(0,h.jsx)(e2,{...e}),e2=(0,p.PA)(e=>{let{model:t,children:l,enabled:o=!0,position:r="right",showDeleteButton:i=!0}=e,a=(0,n.lW)(t),{token:s}=eH.A.useToken(),d=(null==s?void 0:s.colorTextTertiary)||(null==s?void 0:s.colorTextDescription)||(null==s?void 0:s.colorTextSecondary),[u,c]=(0,f.useState)([]),p=(0,f.useCallback)(e=>{let[t,l]=e.split(":");return!!t&&!!l&&u.some(e=>{let{flow:o,steps:n}=e;return o.key===t&&n.some(e=>e.stepKey===l&&!!e.disabled)})},[u]),m=(0,f.useCallback)(e=>{let{key:l}=e;if("delete"===l)eY.A.confirm({title:a("Confirm delete"),icon:(0,h.jsx)(ez.A,{}),content:a("Are you sure you want to delete this item? This action cannot be undone."),okText:a("Confirm Delete"),okType:"danger",cancelText:a("Cancel"),zIndex:999999,onOk(){try{t.dispatchEvent("remove")}catch(e){console.error(a("Delete operation failed"),":",e),eY.A.error({title:a("Delete failed"),content:a("Delete operation failed, please check the console for details.")})}}});else{if(p(l))return;let[e,r]=l.split(":");try{var o;let l=t.getFlow(e),i=null==l||null==(o=l.steps)?void 0:o[r];if(!l||!i)return void console.error(`Flow ${e} or step ${r} not found`);let a=new eQ.W5(t,e,"settings");(0,n.wx)(a,l.steps,t,e),a.defineProperty("currentStep",{value:i}),(0,eZ.openStepSettingsDialog)({model:t,flowKey:e,stepKey:r,ctx:a})}catch(e){console.log("配置弹窗已取消或出错:",e)}}},[p,t]);if(!t)return(0,h.jsx)(eG.A,{message:"提供的模型无效",type:"error"});if(!o||!l)return(0,h.jsx)(h.Fragment,{children:l});let g=(0,f.useCallback)(async()=>{try{let e=t.getFlows(),l=Array.from(e.values());return(await Promise.all(l.map(async e=>{let l=await Promise.all(Object.entries(e.steps).map(async l=>{let[o,r]=l,i=r;if(await (0,n._3)(t,e,i))return null;let a=await (0,n.XM)(t,e,i),s=i.uiSchema||{},d={};if(i.use){var u;let e=null==(u=t.getAction)?void 0:u.call(t,i.use);e&&e.uiSchema&&(d=e.uiSchema)}let c={...d};return(Object.entries(s).forEach(e=>{let[t,l]=e;c[t]?c[t]={...c[t],...l}:c[t]=l}),0===Object.keys(c).length)?null:{stepKey:o,step:i,uiSchema:c,title:i.title||o,disabled:a.disabled,disabledReason:a.reason}})).then(e=>e.filter(Boolean));return l.length>0?{flow:e,steps:l}:null}))).filter(Boolean)}catch(e){return console.warn("[FlowsContextMenu] 获取可配置flows失败:",e),[]}},[t]);if((0,f.useEffect)(()=>{let e=!0;return(async()=>{let t=await g();e&&c(t)})(),()=>{e=!1}},[g]),0===u.length&&!i)return(0,h.jsx)(h.Fragment,{children:l});let v=[];return u.length>0&&u.forEach(e=>{let{flow:t,steps:l}=e;v.push({key:`flow-group-${t.key}`,label:t.title||t.key,type:"group"}),l.forEach(e=>{v.push({key:`${t.key}:${e.stepKey}`,icon:(0,h.jsx)(eK.A,{}),label:e.disabled?(0,h.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.title,(0,h.jsx)(eJ.A,{title:e.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,h.jsx)(eU.A,{style:{color:d}})})]}):e.title,disabled:!!e.disabled})})}),i&&(u.length>0&&v.push({type:"divider"}),v.push({key:"delete",icon:(0,h.jsx)(eW.A,{}),label:"删除"})),(0,h.jsx)(h.Fragment,{children:(0,h.jsx)(eX.A,{menu:{items:v,onClick:m},trigger:["contextMenu"],placement:"left"===r?"bottomLeft":"bottomRight",children:(0,h.jsx)("div",{style:{display:"inline-block",width:"100%"},children:l})})})}),e4=(0,p.PA)(e=>{let{uid:t,modelClassName:l,children:o,enabled:n=!0,position:r="right",showDeleteButton:i=!0}=e,a=(0,d.fh)(t,l);return a?(0,h.jsx)(e2,{model:a,enabled:n,position:r,showDeleteButton:i,children:o}):(0,h.jsx)(eG.A,{message:`未找到ID为 ${t} 的模型`,type:"error"})});var e5=l(84626),e8=l(22803);let e3="#nocobase-app-container",e6=".ant-menu-submenu-popup",e9=".ant-drawer-content-wrapper",e7=".ant-drawer-content",te=".ant-drawer-root",tt=".ant-modal",tl=".ant-modal-wrap",to=".ant-modal-root",tn={top:0,left:0,width:0,height:0},tr=(e,t)=>null==e?void 0:e.closest(t),ti=e=>({mountElement:e,positioningElement:e,positioningMode:"absolute"}),ta=[e=>tr(e,e6),e=>tr(e,e9),e=>tr(e,tl),e=>tr(e,tt),e=>{let t=tr(e,e7);return t?tr(t,e9)||t:null},e=>tr(e,te),e=>tr(e,to)],ts=e=>{for(let t of ta){let l=t(e);if(l)return ti(l)}return null},td=e=>{if("u"<typeof document)return null;let t=ts(e);if(t)return t;let l=document.querySelector(e3);return l?ti(l):{mountElement:document.body,positioningElement:document.body,positioningMode:"fixed"}},tu=e=>{if("number"==typeof e&&Number.isFinite(e))return e;if("string"==typeof e){let t=e.trim();if(/^-?\d+(\.\d+)?(px)?$/.test(t))return Number.parseFloat(t)}return 0},tc=e=>({top:tu(null==e?void 0:e.top),left:tu(null==e?void 0:e.left),right:tu(null==e?void 0:e.right),bottom:tu(null==e?void 0:e.bottom)}),tp=(e,t)=>{if(!t||"absolute"!==t.positioningMode)return(null==t?void 0:t.positioningElement)||null;let l=null==e?void 0:e.offsetParent;return l instanceof HTMLElement&&l!==document.body&&l!==document.documentElement?l:t.positioningElement},th=(e,t,l,o)=>{let n;if(!e)return tn;let r=tc(l),i=e.getBoundingClientRect();if(t&&"fixed"!==t.positioningMode){let e=tp(o||null,t),l=(null==e?void 0:e.getBoundingClientRect())||t.positioningElement.getBoundingClientRect(),r=(null==e?void 0:e.scrollTop)??t.positioningElement.scrollTop,a=(null==e?void 0:e.scrollLeft)??t.positioningElement.scrollLeft;n={top:i.top-l.top+r,left:i.left-l.left+a,width:i.width,height:i.height}}else n={top:i.top,left:i.left,width:i.width,height:i.height};return{top:n.top+r.top,left:n.left+r.left,width:Math.max(0,n.width-r.left-r.right),height:Math.max(0,n.height-r.top-r.bottom)}},tm=e=>{if(!e)return;let t={...e};return delete t.top,delete t.left,delete t.right,delete t.bottom,t},tf=e=>{let{active:t,containerRef:l,toolbarContainerRef:o,toolbarStyle:n}=e,[r,i]=(0,f.useState)(tn),[a,s]=(0,f.useState)(null),d=(0,f.useRef)(null),u=(0,f.useRef)(null),c=(0,f.useCallback)(()=>{let e=l.current;if(!e)return;let t=td(e);d.current=t,s(e=>t?(null==e?void 0:e.mountElement)===t.mountElement&&(null==e?void 0:e.positioningMode)===t.positioningMode?e:{mountElement:t.mountElement,positioningMode:t.positioningMode}:null===e?e:null);let r=th(e,t,n,o.current);i(e=>e.top===r.top&&e.left===r.left&&e.width===r.width&&e.height===r.height?e:r)},[l,o,n]),p=(0,f.useCallback)(()=>{null===u.current&&(u.current=window.requestAnimationFrame(()=>{u.current=null,c()}))},[c]),h=(0,f.useCallback)(e=>{var t,o,n,r,i;let a=(null==e||null==(t=e.ownerDocument)?void 0:t.body)||(null==(n=l.current)||null==(o=n.ownerDocument)?void 0:o.body)||("u">typeof document?document.body:null);return(null==(r=d.current)?void 0:r.mountElement)||(null==(i=td(e||l.current))?void 0:i.mountElement)||a},[l]);return(0,f.useEffect)(()=>{var e,o;if(!t)return;c();let n=()=>{p()},r=l.current,i=null==(e=d.current)?void 0:e.mountElement,a=null==(o=d.current)?void 0:o.positioningElement,s="u">typeof ResizeObserver&&r?new ResizeObserver(()=>{p()}):null;return r&&(null==s||s.observe(r)),i&&i!==r&&(null==s||s.observe(i)),a&&a!==r&&a!==i&&(null==s||s.observe(a)),window.addEventListener("resize",n),window.addEventListener("scroll",n,!0),()=>{null==s||s.disconnect(),window.removeEventListener("resize",n),window.removeEventListener("scroll",n,!0)}},[t,l,p,c]),(0,f.useEffect)(()=>()=>{null!==u.current&&window.cancelAnimationFrame(u.current),d.current=null},[]),{portalRect:r,portalRenderSnapshot:a,getPopupContainer:h,updatePortalRect:c,schedulePortalRectUpdate:p}},tg=180,tv="nb-float-menu-child-activity",ty=(e,t)=>e instanceof Node&&!!(null==t?void 0:t.contains(e)),tb=e=>{var t;return e instanceof Element&&(null==(t=e.closest(".nb-toolbar-container[data-model-uid]"))?void 0:t.getAttribute("data-model-uid"))||null},tx=(e,t,l)=>{let o=tb(e);return!!t&&!!o&&o!==l&&Array.from(t.querySelectorAll('[data-has-float-menu="true"][data-float-menu-model-uid]')).some(e=>e!==t&&e.getAttribute("data-float-menu-model-uid")===o)},tw=e=>{let{modelUid:t,containerRef:l,toolbarContainerRef:o,updatePortalRect:n,schedulePortalRectUpdate:r}=e,[i,a]=(0,f.useState)(!1),[s,d]=(0,f.useState)(!1),[u,c]=(0,f.useState)(!1),[p,h]=(0,f.useState)(!1),[m,g]=(0,f.useState)(!1),[v,y]=(0,f.useState)(!1),[b,x]=(0,f.useState)(!1),[w,S]=(0,f.useState)([]),M=(0,f.useRef)(null),F=(0,f.useRef)(!1),A=(0,f.useRef)(!1),k=(0,f.useRef)(!1),C=(0,f.useRef)(!1),P=(0,f.useRef)(!1),j=(0,f.useRef)(!1),I=(0,f.useCallback)(e=>{A.current=e,d(e)},[]),E=(0,f.useCallback)(e=>{k.current=e,c(e)},[]),_=(0,f.useCallback)(e=>{C.current=e,h(e)},[]),R=(0,f.useCallback)(e=>{P.current=e,g(e)},[]),T=(0,f.useCallback)(e=>{j.current=e,y(e)},[]),D=w.length>0,N=!i&&!D&&(s||u||p||m||v),O=N||v||p||m,$=s||u||p||m||v||b,B=(0,f.useCallback)(()=>{null!==M.current&&(window.clearTimeout(M.current),M.current=null),x(!1)},[]),q=(0,f.useCallback)(()=>{B(),x(!0),M.current=window.setTimeout(()=>{M.current=null,x(!1),C.current||P.current||j.current||(I(!1),E(!1))},tg)},[B,I,E]),L=(0,f.useCallback)(e=>{T(e)},[T]);(0,f.useEffect)(()=>{let e=l.current;if(!e)return;let t=t=>{var l;let o=t;if(!(o.target instanceof HTMLElement)||o.target===e)return;let n=null==(l=o.detail)?void 0:l.modelUid;n&&S(e=>{var t;return(null==(t=o.detail)?void 0:t.active)?e.includes(n)?e:[...e,n]:e.filter(e=>e!==n)})};return e.addEventListener(tv,t),()=>{e.removeEventListener(tv,t)}},[l]),(0,f.useEffect)(()=>{let e=l.current,o=null==e?void 0:e.ownerDocument;if(!o)return;let n=e=>{var l,o;let n=e;if((null==(l=n.detail)?void 0:l.modelUid)===t){if(null==(o=n.detail)?void 0:o.active){B(),R(!0);return}if(R(!1),A.current||k.current||j.current)return void B();q()}};return o.addEventListener(ek,n),()=>{o.removeEventListener(ek,n)}},[B,l,t,q,R]),(0,f.useEffect)(()=>{let e=l.current;e&&F.current!==$&&(F.current=$,e.dispatchEvent(new CustomEvent(tv,{bubbles:!0,detail:{active:$,modelUid:t}})))},[l,$,t]),(0,f.useEffect)(()=>{let e=l.current;return()=>{e&&F.current&&(e.dispatchEvent(new CustomEvent(tv,{bubbles:!0,detail:{active:!1,modelUid:t}})),F.current=!1),B()}},[B,l,t]),(0,f.useEffect)(()=>{v&&(B(),n())},[B,v,n]);let V=(0,f.useCallback)(e=>{let t=e.target.closest("[data-has-float-menu]");t&&t!==l.current||(B(),I(!0)),a(!!t&&t!==l.current)},[B,l,I]),z=(0,f.useCallback)(()=>{B(),a(!1),n(),I(!0)},[B,I,n]),K=(0,f.useCallback)(e=>{if(j.current)return void I(!1);if(ty(e.relatedTarget,o.current)){B(),I(!1),E(!0);return}if(tx(e.relatedTarget,l.current,t)){B(),a(!1),I(!0);return}q()},[B,l,t,q,I,E,o]),U=(0,f.useCallback)(()=>{B(),n(),I(!1),E(!0)},[B,I,E,n]),W=(0,f.useCallback)(e=>{if(j.current||P.current){B(),E(!1);return}if(E(!1),ty(e.relatedTarget,l.current)){B(),I(!0);return}q()},[B,l,q,I,E]);return{isToolbarVisible:N,shouldRenderToolbar:O,handleSettingsMenuOpenChange:L,handleChildHover:V,handleHostMouseEnter:z,handleHostMouseLeave:K,handleToolbarMouseEnter:U,handleToolbarMouseLeave:W,handleResizeDragStart:(0,f.useCallback)(()=>{n(),_(!0),r()},[r,_,n]),handleResizeDragEnd:(0,f.useCallback)(()=>{_(!1),r()},[r,_])}},tS=19,tM=1e3,tF=e=>{if(!e)return"";let t=(null==e?void 0:e.isFork)?null==e?void 0:e.forkId:void 0;return null==t||""===t?String(e.uid||""):`${String(e.uid||"")}::${String(t)}`},tA=(0,e8.AH)`
1034
+ `,eo=e=>e?e.closest(ee)||e.closest(et):null,en=e=>{let{model:t,showDeleteButton:l=!0,showCopyUidButton:o=!0,menuLevels:n=1,flattenSubMenus:r=!0,onDropdownVisibleChange:i,getPopupContainer:a}=e,{message:s}=O.A.useApp(),d=(0,I.useMemo)(()=>(0,g.lW)(t),[t]),{token:u}=$.A.useToken(),c=(null==u?void 0:u.colorTextTertiary)||(null==u?void 0:u.colorTextDescription)||(null==u?void 0:u.colorTextSecondary),[p,h]=(0,I.useState)(!1),[m,f]=(0,I.useState)(0),[v,y]=(0,I.useState)([]),[b,x]=(0,I.useState)([]),[w,S]=(0,I.useState)(!0),M=(0,I.useCallback)(()=>{h(!1),null==i||i(!1)},[i]),F=(0,I.useCallback)(e=>eo(e)||(null==a?void 0:a(e))||(null==e?void 0:e.parentElement)||document.body,[a]),A=(0,I.useCallback)((e,t)=>{("trigger"===t.source||e)&&((0,I.startTransition)(()=>{h(e)}),null==i||i(e))},[i]);(0,I.useEffect)(()=>()=>{null==i||i(!1)},[i]);let k=(0,V.t_)([p]);(0,I.useEffect)(()=>{let e=!0,l=async()=>{let l=[],o=[];for(let{model:e,modelKey:i}of(J(t,{maxDepth:n,arrayLimit:50,mode:"stack"},(e,t)=>{let{modelKey:l}=t;o.push({model:e,modelKey:l})}),o)){var r;let t=e.constructor,o=await (null==(r=t.getExtraMenuItems)?void 0:r.call(t,e,d));(null==o?void 0:o.length)&&l.push(...o.map(e=>({...e,key:i?`${i}:${e.key}`:e.key})))}if(e){let e=new Set;y(l.filter(t=>!e.has(`${t.key}`)&&(e.add(`${t.key}`),!0)))}};return p&&l(),()=>{e=!1}},[t,n,d,m,p]);let C=(0,I.useCallback)(async e=>{try{await navigator.clipboard.writeText(e),s.success(d("UID copied to clipboard"))}catch(l){var t;if(console.error(d("Copy failed"),":",l),!("u">typeof window&&(null==(t=window.location)?void 0:t.protocol)==="https:"))return void s.error(d("Copy failed under HTTP. Clipboard API is unavailable on non-HTTPS pages. Please copy [{{uid}}] manually.",{uid:e}));s.error(d("Copy failed, please copy [{{uid}}] manually.",{uid:e}))}},[s,d]),P=(0,I.useCallback)(async()=>{C(t.uid)},[t.uid,C]),j=(0,I.useCallback)(e=>{try{let l=e.replace(/^copy-pop-uid:/,"").split(":"),o=t;if(3===l.length){let[e]=l;o=X(t,e)||t}else if(2!==l.length)return void console.error("Invalid copy-pop-uid key format:",e);C(o.uid)}catch(e){console.error("handleCopyPopupUid error:",e)}},[t,C]),D=(0,I.useCallback)(()=>{M(),B.A.confirm({title:d("Confirm delete"),icon:(0,E.jsx)(R.A,{}),content:d("Are you sure you want to delete this item? This action cannot be undone."),okText:d("Confirm"),okType:"primary",cancelText:d("Cancel"),zIndex:999999,async onOk(){try{await t.destroy()}catch(e){console.error(d("Delete operation failed"),":",e),B.A.error({title:d("Delete failed"),content:d("Delete operation failed, please check the console for details.")})}}})},[M,t,d]),L=(0,I.useCallback)(e=>{let l,o,n=e.split(":");if(n.length<2||n.length>3)return void console.error("Invalid configuration key format:",e);let r=t;if(3===n.length){let[e,i,a]=n;l=i,o=a;let s=X(t,e);if(!s)return void console.error(`Sub-model '${e}' not found`);r=s}else[l,o]=n;try{M(),r.openFlowSettings({flowKey:l,stepKey:o})}catch(e){console.log(d("Configuration popup cancelled or error"),":",e)}},[M,t,d]),z=(0,I.useCallback)(e=>{let t,l,o,n=(e.includes("-")&&/^(.+)-\d+$/.test(e)?e.replace(/-\d+$/,""):e).split(":");if(3===n.length)[t,l,o]=n;else{if(2!==n.length)return!1;[l,o]=n}return b.some(e=>{let{flow:n,steps:r,modelKey:i}=e;return(i||void 0)===t&&n.key===l&&r.some(e=>e.stepKey===o&&!!e.disabled)})},[b]),K=(0,I.useCallback)(e=>{let{key:t}=e,l=t,o=t.includes("-")&&/^(.+)-\d+$/.test(t)?t.replace(/-\d+$/,""):t;if(o.startsWith("copy-pop-uid:")){M(),j(o);return}let n=G(v,l)||G(v,o);if(null==n||!n.disabled){if(null==n?void 0:n.onClick){M(),n.onClick();return}if(!z(o))switch(o){case"copy-uid":M(),P();break;case"delete":D();break;default:L(o)}}},[M,P,D,L,j,v,z]),U=(0,I.useCallback)(async(e,t)=>{try{let l=new Map(e.constructor.globalFlowRegistry.getFlows()),o=Array.from(l.values());return await Promise.all(o.map(async l=>{let o=await Promise.all(Object.entries(l.steps).map(async o=>{let[n,r]=o,i=r,a=i;if(await (0,g._3)(e,l,i))return null;let s=await (0,g.XM)(e,l,i),u=await (0,g.ME)(i.uiMode,e.context),c=null!=i.uiSchema,p=!1,h=i.title;if(i.use)try{var m;let t=null==(m=e.getAction)?void 0:m.call(e,i.use);a={...t||{},...i},u=await (0,g.ME)((null==t?void 0:t.uiMode)||u,e.context),p=t&&null!=t.uiSchema,h=h||(null==t?void 0:t.title)}catch(e){console.warn(d("Failed to get action {{action}}",{action:i.use}),":",e)}let f=["select","switch"].includes((null==u?void 0:u.type)||u);if(!f&&!c&&!p)return null;let v={};try{let t=await (0,g.o7)(e,l,i);if(!t&&!f)return null;v=t}catch(e){return console.warn(d("Failed to resolve uiSchema for step {{stepKey}}",{stepKey:n}),":",e),null}return{stepKey:n,step:a,uiSchema:v,title:d(h)||n,modelKey:t,uiMode:u,disabled:s.disabled,disabledReason:s.reason}})).then(e=>e.filter(Boolean));return o.length>0?{flow:l,steps:o,modelKey:t}:null})).then(e=>e.filter(Boolean))}catch(t){return console.error(d("Failed to get configurable flows for model {{model}}",{model:(null==e?void 0:e.uid)||"unknown"}),":",t),[]}},[]),W=(0,I.useCallback)(async()=>{let e=[],l=[];for(let{model:o,modelKey:r}of(J(t,{maxDepth:n,arrayLimit:50,mode:"stack"},(e,t)=>{let{modelKey:o}=t;l.push({model:e,modelKey:o})}),l)){let t=await U(o,r);e.push(...t)}return e},[t,n,U]);(0,I.useEffect)(()=>{let e=()=>{f(e=>e+1)},l=[];return J(t,{maxDepth:n,mode:"visited"},(t,o)=>{let{depth:n}=o,r=["onStepParamsChanged"];1===n&&r.push("onSubModelAdded","onSubModelRemoved","onSubModelReplaced"),r.forEach(o=>{var n;null==(n=t.emitter)||n.on(o,e),l.push(()=>{var l;return null==(l=t.emitter)?void 0:l.off(o,e)})})}),()=>{l.forEach(e=>e())}},[t,n,m]),(0,I.useEffect)(()=>{(async()=>{S(!0);try{let e=await W();x(e)}catch(e){console.error("Failed to load configurable flows and steps:",e),x([])}finally{S(!1)}})()},[W,m]);let H=(0,I.useMemo)(()=>{let e=[],l=new Map,o=e=>{let t=l.get(e)||0;return l.set(e,t+1),0===t?e:`${e}-${t}`};if(b.length>0)if(r)b.forEach(l=>{let{flow:n,steps:r,modelKey:i}=l,a=o(`flow-group-${i?`${i}-`:""}${n.key}`);"top"===n.options.divider&&e.push({type:"divider"}),n.options.enableTitle&&e.push({key:a,label:d(n.title)||n.key,type:"group"}),r.forEach(l=>{let r=o(i?`${i}:${n.key}:${l.stepKey}`:`${n.key}:${l.stepKey}`),a=l.uiMode,u=(l.modelKey?X(t,l.modelKey):null)||t,p=u.getStepParams(n.key,l.stepKey)||{},h={getDefaultValue:async()=>{let e=await (0,g.gG)(l.step.defaultParams,u.context);if(l.step.use){var t;let o=null==(t=u.getAction)?void 0:t.call(u,l.step.use);e=await (0,g.gG)(o.defaultParams,u.context)}return{...e,...p}},onChange:async e=>{var t;u.setStepParams(n.key,l.stepKey,e),"function"==typeof l.step.beforeParamsSave&&await l.step.beforeParamsSave(u.context,e,p),await u.saveStepParams(),null==s||null==(t=s.success)||t.call(s,d("Configuration saved")),"function"==typeof l.step.afterParamsSave&&await l.step.afterParamsSave(u.context,e,p)},...(null==a?void 0:a.props)||{},itemKey:null==a?void 0:a.key,disabled:!!l.disabled,disabledReason:l.disabledReason,disabledIconColor:c};e.push({key:r,label:(0,E.jsx)(Z,{title:l.title,uiMode:a,itemProps:h}),disabled:!!l.disabled})}),"bottom"===n.options.divider&&e.push({type:"divider"})});else{let t=new Map;b.forEach(e=>{let l=e.modelKey||"current";t.has(l)||t.set(l,[]);let o=t.get(l);o&&o.push(e)}),t.forEach((t,l)=>{if("current"===l)t.forEach(t=>{let{flow:l,steps:n}=t,r=o(`flow-group-${l.key}`);e.push({key:r,label:d(l.title)||l.key,type:"group"}),n.forEach(t=>{let n=o(`${l.key}:${t.stepKey}`);e.push({key:n,label:t.disabled?(0,E.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[t.title,(0,E.jsx)(N.A,{title:t.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,E.jsx)(_.A,{style:{color:c}})})]}):t.title,disabled:!!t.disabled})})});else{let n=o(`sub-menu-${l}`),r=[];t.forEach(e=>{let{flow:t,steps:n}=e;n.forEach(e=>{let n=o(`${l}:${t.key}:${e.stepKey}`);r.push({key:n,label:e.disabled?(0,E.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.title,(0,E.jsx)(N.A,{title:e.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,E.jsx)(_.A,{style:{color:c}})})]}):e.title,disabled:!!e.disabled})})}),e.push({key:n,label:l,children:r})}})}return e},[b,c,r,d]),Y=(0,I.useMemo)(()=>{let e=[...H],n=v.filter(e=>"common-actions"===e.group).sort((e,t)=>(e.sort??0)-(t.sort??0));return(o||l||n.length>0)&&(e.push({type:"divider"}),n.length>0&&e.push(...n),o&&t.uid&&e.push({key:"copy-uid",label:d("Copy UID")}),l&&"function"==typeof t.destroy&&e.push({key:"delete",label:d("Delete")})),e},[H,o,l,t.uid,t.destroy,d,v]),Q=v.some(e=>"common-actions"===e.group);return!w&&(0!==b.length||l||o||Q)?t&&t.uid?(0,E.jsx)(q.A,{getPopupContainer:F,overlayClassName:el,overlayStyle:{width:"max-content",minWidth:"max-content"},onOpenChange:A,open:p,menu:{items:Y,onClick:K,style:{maxHeight:k,overflowY:"auto"}},trigger:["hover"],placement:"bottomRight",children:(0,E.jsx)(T.A,{role:"button","aria-label":"flows-settings",style:{cursor:"pointer",fontSize:12}})}):(console.warn(d("Invalid model provided")),null):null};var er=l(23183),ei=l(48036),ea=l(40532),es=l(16296),ed=l(23200),eu=l(52249),ec=l(22505);let ep=k.A.Panel;var eh=new WeakMap,em=new WeakMap;class ef{on(e,t){(0,w._)(this,em).on(e,t)}off(e,t){(0,w._)(this,em).off(e,t)}addDefaultToolbarItems(){this.toolbarItems.push({key:"settings-menu",component:en,sort:0})}async load(){if(this.antdComponentsLoaded)return void console.log("FlowSettings: Antd components already loaded, skipping...");try{let{ArrayBase:e,ArrayCards:t,ArrayCollapse:o,ArrayItems:n,ArrayTable:r,ArrayTabs:i,Cascader:a,Checkbox:s,DatePicker:d,Editable:u,Form:c,FormDialog:p,FormDrawer:h,FormButtonGroup:m,FormCollapse:f,FormGrid:g,FormItem:v,FormLayout:y,FormStep:b,FormTab:x,Input:w,NumberPicker:S,Password:M,PreviewText:F,Radio:A,Reset:k,Select:C,SelectTable:P,Space:j,Submit:I,Switch:E,TimePicker:_,Transfer:R,TreeSelect:T,Upload:D}=await Promise.resolve().then(l.bind(l,88967)),{Button:N,Alert:O}=await Promise.resolve().then(l.bind(l,14264));this.components.Form=c,this.components.FormDialog=p,this.components.FormDrawer=h,this.components.FormItem=v,this.components.FormLayout=y,this.components.FormGrid=g,this.components.FormStep=b,this.components.FormTab=x,this.components.FormCollapse=f,this.components.FormButtonGroup=m,this.components.Input=w,this.components.NumberPicker=S,this.components.Password=M,this.components.Select=C,this.components.SelectTable=P,this.components.Cascader=a,this.components.TreeSelect=T,this.components.Transfer=R,this.components.DatePicker=d,this.components.TimePicker=_,this.components.Checkbox=s,this.components.Radio=A,this.components.Switch=E,this.components.ArrayBase=e,this.components.ArrayCards=t,this.components.ArrayCollapse=o,this.components.ArrayItems=n,this.components.ArrayTable=r,this.components.ArrayTabs=i,this.components.Upload=D,this.components.Space=j,this.components.Editable=u,this.components.PreviewText=F,this.components.Alert=O,this.components.Button=N,this.components.Submit=I,this.components.Reset=k,this.antdComponentsLoaded=!0,console.log("FlowSettings: Antd components loaded successfully")}catch(e){throw console.error("FlowSettings: Failed to load Antd components:",e),e}}registerComponents(e){Object.keys(e).forEach(t=>{this.components[t]&&console.warn(`FlowSettings: Component with name '${t}' is already registered and will be overwritten.`),this.components[t]=e[t]})}registerComponentLoaders(e){Object.entries(e).forEach(e=>{let[t,l]=e;this.components[t]&&console.warn(`FlowSettings: Component with name '${t}' is already registered and will be overwritten.`),this.components[t]=(0,ec.R)(async()=>{let e=await l();if("function"==typeof e)return{default:e};if((null==e?void 0:e.default)&&"function"==typeof e.default)return{default:e.default};let o=null==e?void 0:e[t];if("function"==typeof o)return{default:o};throw Error(`FlowSettings: component loader for '${t}' must resolve to a React component or a module exporting it.`)})})}registerScopes(e){Object.keys(e).forEach(t=>{this.scopes[t]&&console.warn(`FlowSettings: Scope with name '${t}' is already registered and will be overwritten.`),this.scopes[t]=e[t]})}async enable(){await this.engine.preloadModelLoaders(),this.enabled=!0}async forceEnable(){await this.engine.preloadModelLoaders(),(0,M._)(this,eh,!0),this.enabled=!0}async disable(){(0,w._)(this,eh)||(this.enabled=!1)}async forceDisable(){(0,M._)(this,eh,!1),this.enabled=!1}addToolbarItem(e){let t=this.toolbarItems.findIndex(t=>t.key===e.key);-1!==t?(console.warn(`FlowSettings: Toolbar item with key '${e.key}' already exists and will be replaced.`),this.toolbarItems[t]=e):this.toolbarItems.push(e),this.toolbarItems.sort((e,t)=>(t.sort||0)-(e.sort||0))}addToolbarItems(e){e.forEach(e=>this.addToolbarItem(e))}removeToolbarItem(e){let t=this.toolbarItems.findIndex(t=>t.key===e);-1!==t&&this.toolbarItems.splice(t,1)}getToolbarItems(){return[...this.toolbarItems]}clearToolbarItems(){this.toolbarItems=[]}async openStepSettingsDialog(e){return await (0,er.openStepSettingsDialog)(e)}renderStepForm(e){var t,l;let{uiSchema:o,initialValues:n,flowEngine:r,form:i,onFormValuesChange:a,key:s}=e,d={useFlowSettingsContext:es.s,...(null==r||null==(t=r.flowSettings)?void 0:t.scopes)||{}},u={type:"object",properties:{layout:{type:"void","x-component":"FormLayout","x-component-props":{layout:"vertical"},properties:o}}},c=(0,g.ln)(d,u),p=(0,A.createSchemaField)();return I.createElement(eg,{form:i,initialValues:n,onFormValuesChange:a,key:s},I.createElement(p,{schema:c,components:(null==r||null==(l=r.flowSettings)?void 0:l.components)||{},scope:d}))}async open(e){var t,l,o,n,r,a,d;(0,w._)(this,em).emit("beforeOpen",e);let{model:u,flowKey:c,flowKeys:p,stepKey:h,uiMode:m="dialog",preset:y,onCancel:b,onSaved:x}=e;if(!u)throw Error("FlowSettings.open: model is required");let S=(0,g.lW)(u),M=null==(t=u.context)?void 0:t.message,A=u.getFlows(),E=c?[c]:Array.isArray(p)&&p.length?p:Array.from(A.keys()),_=[];for(let e of(await this.load(),E)){let t=u.getFlow(e);if(!t){console.warn(`FlowSettings.open: Flow with key '${e}' not found`);continue}for(let l of Object.keys(t.steps||{})){if(h&&l!==h)continue;let o=t.steps[l];if(!y&&(!o||await (0,g._3)(u,t,o))||y&&!o.preset)continue;let n=await (0,g.o7)(u,t,o),i=o.title,a=o.beforeParamsSave,s=o.afterParamsSave,d={},c=o.uiMode;if(o.use){let e=null==(r=u.getAction)?void 0:r.call(u,o.use);e&&(d=e.defaultParams||{},i=i||e.title,a=a||e.beforeParamsSave,s=s||e.afterParamsSave,c=e.uiMode)}let p=new f.W5(u,e,"settings");(0,g.wx)(p,t.steps,u,e),p.defineProperty("currentStep",{value:o}),p.defineMethod("getStepFormValues",(e,t)=>{var l;return null==(l=L.get(V({flowKey:e,stepKey:t})))?void 0:l.values});let m=u.getStepParams(e,l)||{},v=await (0,g.gG)(o.defaultParams,p),b={...await (0,g.gG)(d,p)||{},...v||{},...m};(n&&0!==Object.keys(n).length||["select","switch"].includes((null==c?void 0:c.type)||c))&&_.push({flowKey:e,flowTitle:S(t.title)||e,stepKey:l,stepTitle:S(i)||l,initialValues:b,previousParams:{...m||{}},mergedUiSchema:n,beforeParamsSave:a,afterParamsSave:s,ctx:p,uiMode:o.uiMode||c})}}if(0===_.length)return y||null==M||null==(a=M.info)||a.call(M,S("This model has no configurable flow settings")),!1;let R=u.context.viewer,T=1===_.length?await (0,g.ME)(_[0].uiMode||m,_[0].ctx):m,D="string"==typeof T?T:T.type||"dialog";if(["select","switch"].includes(D))return;let N=R[D||"dialog"].bind(R),O=u.flowEngine,$={useFlowSettingsContext:es.s,...(null==O||null==(l=O.flowSettings)?void 0:l.scopes)||{}},B="object"==typeof T&&T&&T.props||{};if("embed"===D){let e=document.querySelector(`#${eu.mW}`),t=B.onOpen,l=B.onClose;B={target:e,styles:{body:{padding:null==(d=O.context.themeToken)?void 0:d.padding}},...B,onOpen(){e&&(e.style.width=B.width||"33.3%",e.style.maxWidth=B.maxWidth||"800px",e.style.minWidth=B.minWidth||"0px"),null==t||t()},onClose(){e&&"1"!==e.dataset[eu.xB]&&(e.style.width="auto",e.style.maxWidth="none",e.style.minWidth="auto"),null==l||l()}}}let q={};_.forEach(e=>{q[e.flowKey]||(q[e.flowKey]={title:e.flowTitle,steps:[]}),q[e.flowKey].steps.push(e)});let L=new Map,V=e=>`${e.flowKey}::${e.stepKey}`;_.forEach(e=>{let t=(0,F.createForm)({initialValues:(0,g.ln)($,e.initialValues)});L.set(V(e),t)});let z=Object.keys(q),K=z.length>1,U=()=>c&&h&&1===_.length||!K&&_.length>0?_[0].stepTitle:"",W={value:()=>{}},H=(e,t)=>{W.value=(0,i.reaction)(()=>(0,g.ME)(e.uiMode||m,e.ctx),e=>{e.then(e=>{s().isPlainObject(null==e?void 0:e.props)&&t.update(e.props)}).catch(e=>{console.warn("Error resolving uiMode:",e)})})},Y=(null==(o=u.context.view)?void 0:o.inputArgs)||{},G=null==(n=u.context.view)?void 0:n.navigation,J={...Y,...G?{navigation:G}:{},...(null==B?void 0:B.inputArgs)||{}};return N({title:B.title||U(),width:B.width??600,destroyOnClose:!0,onClose:()=>W.value(),zIndex:5e3,...B,inputArgs:J,content:(e,t)=>{let l;null==t||t.defineMethod("getStepFormValues",(e,t)=>{var l;return null==(l=L.get(V({flowKey:e,stepKey:t})))?void 0:l.values});let o=t=>{let l=L.get(V(t));return l?(t.ctx.view=e,I.createElement(es.u,{value:t.ctx},I.createElement(ed.k.Provider,{value:{params:(0,ea.untracked)(()=>({...t.initialValues,...l.values})),path:`${u.uid}_${t.flowKey}_${t.stepKey}`}},this.renderStepForm({uiSchema:t.mergedUiSchema,initialValues:t.initialValues,flowEngine:O,form:l})))):null},n=e=>e.map(e=>I.createElement(ep,{header:e.stepTitle,key:V(e)},o(e))),r=e=>{let t=q[e];return{key:e,label:S(t.title)||e,children:t.steps.length>1?I.createElement(k.A,{defaultActiveKey:t.steps.map(e=>V(e))},...n(t.steps)):o(t.steps[0])}},i=()=>{if(c&&h&&1===_.length){let t=_[0];return H(t,e),o(t)}if(!K)return H(_[0],e),o(_[0]);let t=z.map(e=>r(e)),l=c&&q[c]?c:z[0];return I.createElement(C.A,{items:t,defaultActiveKey:l})},a=async()=>{var t,l;try{for(let e of _){let t=L.get(V(e));if(!t)continue;await t.submit();let l=t.values;u.setStepParams(e.flowKey,e.stepKey,l),"function"==typeof e.beforeParamsSave&&await e.beforeParamsSave(e.ctx,l,e.previousParams)}for(let e of(await u.saveStepParams(),null==M||null==(t=M.success)||t.call(M,S("Configuration saved")),_)){let t=L.get(V(e));if(!t)continue;let l=t.values;"function"==typeof e.afterParamsSave&&await e.afterParamsSave(e.ctx,l,e.previousParams)}e.close(),u.invalidateFlowCache("beforeRender",!0),await u.rerender();try{await (null==x?void 0:x())}catch(e){console.error("FlowSettings.open: onSaved callback error",e)}}catch(t){if(t instanceof g.VD)return;if(t instanceof g.sy||t instanceof v.zz)return void e.close();console.error("FlowSettings.open: save error",t),null==M||null==(l=M.error)||l.call(M,S("Error saving configuration, please check console"))}};e.submit=a;let d=i(),p=t=>I.createElement(P.Ay,{onClick:async()=>{e.close();try{await (null==b?void 0:b())}catch(e){console.error("FlowSettings.open: onCancel callback error",e)}}},t.title||S("Cancel")),m=e=>I.createElement(P.Ay,{type:"primary",onClick:a},e.title||S("Save")),f=I.createElement(j.A,{align:"end"},I.createElement(p),I.createElement(m));return B.footer&&(f=s().isFunction(B.footer)?B.footer(f,{OkBtn:m,CancelBtn:p}):B.footer),null===B.footer&&(f=null),e.Footer&&(l=I.createElement(e.Footer,null,f)),I.createElement(I.Fragment,null,d,l)}}),!0}constructor(e){(0,r._)(this,"components",{}),(0,r._)(this,"scopes",{}),(0,r._)(this,"antdComponentsLoaded",!1),(0,r._)(this,"enabled",void 0),(0,r._)(this,"engine",void 0),(0,S._)(this,eh,{writable:!0,value:!1}),(0,r._)(this,"toolbarItems",[]),(0,S._)(this,em,{writable:!0,value:new ei.v}),this.engine=e,this.enabled=!1,e.context.defineProperty("flowSettingsEnabled",{get:()=>this.enabled,cache:!1}),this.addDefaultToolbarItems(),(0,i.define)(this,{enabled:i.observable})}}function eg(e){let{children:t,form:l,initialValues:o,onFormValuesChange:n}=e,r=I.useRef(l);return r.current||(r.current=(0,F.createForm)({initialValues:o,effects(){(0,F.onFormValuesChange)(n)}})),I.createElement(A.FormProvider,{form:r.current},t)}var ev=l(4888),ey=l(5338);function eb(e){let{config:t,engine:l,children:o}=e;return(0,E.jsx)(K.I6,{engine:l,children:(0,E.jsx)(ev.Ay,{...t,children:(0,E.jsx)(O.A,{children:o})})})}class ex{createRoot(e){let t,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=(0,ey.createRoot)(e,l),n=()=>{o.render((0,E.jsx)(eb,{engine:this.flowEngine,config:this.flowEngine.context.antdConfig,children:t}))};return{render:e=>{t=e,this.refreshCallback=n,n()},unmount:()=>{this.refreshCallback=null,t=null,o.unmount()}}}refresh(){this.refreshCallback&&this.refreshCallback()}render(e){let t,l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=document.createElement("span"),{onRendered:n}=l,r=t=>{let l="function"==typeof e?e(t):e;return(0,E.jsx)(eb,{engine:this.flowEngine,config:this.flowEngine.context.antdConfig,children:l})};return n?n(()=>{(t=(0,ey.createRoot)(o)).render(r(t))}):(t=(0,ey.createRoot)(o)).render(r(t)),o._reactRoot=t,o}onRefReady(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1e4,o=Date.now();function n(){if(e.current)return t(e.current);Date.now()-o>l||setTimeout(n,30)}n()}constructor(e){(0,r._)(this,"flowEngine",void 0),(0,r._)(this,"refreshCallback",void 0),this.flowEngine=e,this.refreshCallback=null}}var ew=l(27667),eS=l(38950);class eM{schedule(e,t,l,o){let n="string"==typeof e?e:null==e?void 0:e.uid;if(!n)throw Error("scheduleModelOperation: invalid from model or uid");if(!t||"string"!=typeof t)throw Error("scheduleModelOperation: invalid target uid");let r={id:(0,eS.L)(),fromUid:n,toUid:t,fn:l,options:{when:(null==o?void 0:o.when)??"created"}},i=this.itemsByTargetUid.get(t);i||(i=new Map,this.itemsByTargetUid.set(t,i)),i.set(r.id,r);let a=this.itemIdsByFromUid.get(n);a||(a=new Set,this.itemIdsByFromUid.set(n,a)),a.add(r.id),this.itemsById.set(r.id,r),this.ensureEventSubscriptionIfNeeded(r.options.when);let s=this.engine.getModel(t);return s&&"created"===r.options.when&&this.tryExecuteOnce(r.id,{type:"created",uid:t,model:s}),()=>this.internalCancel(r.id)}cancel(e){let{fromUid:t,toUid:l}=e||{};if(l&&this.itemsByTargetUid.has(l)){let e=this.itemsByTargetUid.get(l);if(e)for(let l of e.values())t&&l.fromUid!==t||this.internalCancel(l.id);return}if(t&&this.itemIdsByFromUid.has(t)){let e=this.itemIdsByFromUid.get(t);if(e)for(let t of Array.from(e)){let e=this.itemsById.get(t);e&&(l&&e.toUid!==l||this.internalCancel(t))}}}dispose(){try{for(let e of this.unbindHandlers)try{e()}catch(e){}}finally{this.unbindHandlers=[]}for(let e of this.itemsByTargetUid.values())for(let t of e.values())this.internalCancel(t.id);this.itemsByTargetUid.clear(),this.itemIdsByFromUid.clear()}bindEngineLifecycle(){let e=this.engine.emitter;if(!e||"function"!=typeof e.on)return;let t=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"created"})};e.on("model:created",t),this.unbindHandlers.push(()=>e.off("model:created",t));let l=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"mounted"})};e.on("model:mounted",l),this.unbindHandlers.push(()=>e.off("model:mounted",l));let o=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"event:beforeRender:start"})};e.on("model:event:beforeRender:start",o),this.unbindHandlers.push(()=>e.off("model:event:beforeRender:start",o));let n=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"event:beforeRender:end"})};e.on("model:event:beforeRender:end",n),this.unbindHandlers.push(()=>e.off("model:event:beforeRender:end",n));let r=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:"unmounted"})};e.on("model:unmounted",r),this.unbindHandlers.push(()=>e.off("model:unmounted",r));let i=async e=>{let t=this.itemsByTargetUid.get(e.uid),l={...e,type:"destroyed"};if(t&&t.size)for(let e of Array.from(t.keys())){let t=this.itemsById.get(e);t&&(this.shouldTrigger(t.options.when,l)?await this.tryExecuteOnce(e,l):this.internalCancel(e))}};e.on("model:destroyed",i),this.unbindHandlers.push(()=>e.off("model:destroyed",i))}ensureEventSubscriptionIfNeeded(e){let t="string"==typeof e?e:"function"==typeof e?e.__eventType:void 0;if(!t)return;let l=this.parseEventWhen(t);if(!l)return;let{name:o}=l;if(this.subscribedEventNames.has(o))return;this.subscribedEventNames.add(o);let n=this.engine.emitter,r=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:start`})},i=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:end`})},a=async e=>{await this.processLifecycleEvent(e.uid,{...e,type:`event:${o}:error`})};n.on(`model:event:${o}:start`,r),n.on(`model:event:${o}:end`,i),n.on(`model:event:${o}:error`,a),this.unbindHandlers.push(()=>n.off(`model:event:${o}:start`,r)),this.unbindHandlers.push(()=>n.off(`model:event:${o}:end`,i)),this.unbindHandlers.push(()=>n.off(`model:event:${o}:error`,a))}parseEventWhen(e){if(!e||"string"!=typeof e)return null;let t=/^event:(.+):(start|end|error)$/.exec(e);return t?{name:t[1],phase:t[2]}:null}async processLifecycleEvent(e,t){let l=this.itemsByTargetUid.get(e);if(l&&0!==l.size)for(let e of Array.from(l.keys())){let l=this.itemsById.get(e);l&&this.shouldTrigger(l.options.when,t)&&await this.tryExecuteOnce(e,t)}}shouldTrigger(e,t){return!!e&&("function"==typeof e?!!e(t):e===t.type)}async tryExecuteOnce(e,t){let l=this.takeItem(e);if(l)try{let e=t.model||this.engine.getModel(l.toUid);if(!e)return;await Promise.resolve(l.fn(e))}catch(t){var o,n;if(t instanceof v.zz)throw t;null==(n=this.engine.logger)||null==(o=n.error)||o.call(n,{err:t,id:e,fromUid:l.fromUid,toUid:l.toUid,when:l.options.when},"ModelOperationScheduler: operation execution failed")}}internalCancel(e){return!!this.takeItem(e)}takeItem(e){let t=this.itemsById.get(e);if(!t)return;let{toUid:l,fromUid:o}=t,n=this.itemsByTargetUid.get(l);n&&(n.delete(e),0===n.size&&this.itemsByTargetUid.delete(l));let r=this.itemIdsByFromUid.get(o);return r&&(r.delete(e),0===r.size&&this.itemIdsByFromUid.delete(o)),this.itemsById.delete(e),t}constructor(e){(0,r._)(this,"engine",void 0),(0,r._)(this,"itemsByTargetUid",void 0),(0,r._)(this,"itemIdsByFromUid",void 0),(0,r._)(this,"itemsById",void 0),(0,r._)(this,"unbindHandlers",void 0),(0,r._)(this,"subscribedEventNames",void 0),this.engine=e,this.itemsByTargetUid=new Map,this.itemIdsByFromUid=new Map,this.itemsById=new Map,this.unbindHandlers=[],this.subscribedEventNames=new Set,this.bindEngineLifecycle()}}let eF=eM;var eA=new WeakSet;class ek{getScheduler(){return this._modelOperationScheduler||(this._modelOperationScheduler=new eF(this)),this._modelOperationScheduler}disposeScheduler(){if(this._modelOperationScheduler)try{this._modelOperationScheduler.dispose()}finally{this._modelOperationScheduler=void 0}}markDataSourceDirty(e,t){let l=String(e||"main"),o=String(t||"");if(!o)return this.getDataSourceDirtyVersion(l,o);let n=this._dataSourceDirtyVersions.get(l)||new Map;this._dataSourceDirtyVersions.has(l)||this._dataSourceDirtyVersions.set(l,n);let r=(n.get(o)||0)+1;return n.set(o,r),r}getDataSourceDirtyVersion(e,t){var l;let o=String(e||"main"),n=String(t||"");return n&&(null==(l=this._dataSourceDirtyVersions.get(o))?void 0:l.get(n))||0}scheduleModelOperation(e,t,l,o){return this.getScheduler().schedule(e,t,l,o)}get previousEngine(){return this._previousEngine}get nextEngine(){return this._nextEngine}linkAfter(e){let t=e;for(;t._nextEngine;)t=t._nextEngine;this._previousEngine=t,t&&(t._nextEngine=this)}unlinkFromStack(){let e=this._previousEngine;this._nextEngine,e&&(e._nextEngine=void 0)}setDestroyView(e){this._destroyView=e}destroyView(){return!!this._destroyView&&(this._destroyView(),!0)}get context(){return this._flowContext||(this._flowContext=new f.o0(this)),this._flowContext}get dataSourceManager(){return this.context.dataSourceManager}get applyFlowCache(){return this._applyFlowCache}setModelRepository(e){this._modelRepository&&console.warn("FlowEngine: Model repository is already set and will be overwritten."),this._modelRepository=e}get modelRepository(){return this._modelRepository}translate(e,t){return this.context.t(e,t)}registerActions(e){this._actionRegistry.registerActions(e)}getAction(e){return this._actionRegistry.getAction(e)}getActions(){return this._actionRegistry.getActions()}registerEvents(e){this._eventRegistry.registerEvents(e)}getEvent(e){return this._eventRegistry.getEvent(e)}getEvents(){return this._eventRegistry.getEvents()}_registerModel(e,t){this._modelClasses.has(e)&&console.warn(`FlowEngine: Model class with name '${e}' is already registered and will be overwritten.`),Object.defineProperty(t,"name",{value:e}),this._modelClasses.set(e,t)}registerModels(e){for(let[t,l]of Object.entries(e))(0,o._)(this,eA,eC).call(this,t,l)}registerModelLoaders(e){let t=!1;for(let[l,o]of Object.entries(e)){this._modelLoaders.has(l)&&console.warn(`FlowEngine: Model loader with name '${l}' is already registered and will be overwritten.`);let e={loader:o.loader};null!=o.extends&&(e.extends=(Array.isArray(o.extends)?o.extends:[o.extends]).map(e=>"string"==typeof e?e:e.name)),this._modelLoaders.set(l,e),t=!0}t&&(this._modelLoadersPreloaded=!1,this._modelLoadersPreloadPromise=void 0)}async getModelClassAsync(e){return await this.ensureModel(e),this.getModelClass(e)}async getModelClassesAsync(){return await this.ensureModels(Array.from(this._modelLoaders.keys())),this.getModelClasses()}async createModelAsync(e,t){return await this.resolveModelTree(e),this.createModel(e,t)}normalizeModelLoaderResult(e,t){if("function"==typeof t)return t;if(t&&"object"==typeof t){let l=t.default;if("function"==typeof l)return l;let o=t[e];if("function"==typeof o)return o}return console.warn(`FlowEngine: model loader for '${e}' did not resolve to a valid model constructor.`),null}collectModelNamesFromTree(e,t){if(!e||"object"!=typeof e)return;if(Array.isArray(e))return void e.forEach(e=>this.collectModelNamesFromTree(e,t));let l=e;"string"==typeof l.use&&t.add(l.use);let o=l.subModels;o&&"object"==typeof o&&Object.values(o).forEach(e=>{this.collectModelNamesFromTree(e,t)})}collectModelNamesFromMetaDefaults(e,t){var l;let o=null==(l=e.meta)?void 0:l.createModelOptions;o&&"object"==typeof o&&this.collectModelNamesFromTree(o,t)}async ensureModel(e){let t=this._modelClasses.get(e);if(t)return t;let l=this._loadingModelPromises.get(e);if(l)return l;let o=this._modelLoaders.get(e);if(!o)return console.warn(`FlowEngine: Model entry '${e}' not found. Falling back to ErrorFlowModel when needed.`),null;let n=(async()=>{try{let t=await o.loader(),l=this.normalizeModelLoaderResult(e,t);if(!l)return null;return this._registerModel(e,l),l}catch(t){return console.warn(`FlowEngine: Failed to load model '${e}'. Falling back to ErrorFlowModel when needed.`,t),null}finally{this._loadingModelPromises.delete(e)}})();return this._loadingModelPromises.set(e,n),n}async ensureModels(e){let t=Array.from(new Set(e.filter(e=>!!e))),l=[],o=[];return(await Promise.all(t.map(async e=>{let t=await this.ensureModel(e);return{name:e,modelClass:t}}))).forEach(e=>{let{name:t,modelClass:n}=e;n?l.push(t):o.push({name:t})}),{requested:t,loaded:l,failed:o}}async resolveModelTree(e){let t=new Set,l=new Set,o=new Map,n=new Set,r=new Set;for(this.collectModelNamesFromTree(e,r);r.size>0;){let e=Array.from(r).filter(e=>!n.has(e));if(r.clear(),0===e.length)break;e.forEach(e=>t.add(e));let i=await this.ensureModels(e);i.loaded.forEach(e=>{n.add(e),l.add(e);let t=this.getModelClass(e);if(t){let e=new Set;this.collectModelNamesFromMetaDefaults(t,e),e.forEach(e=>{n.has(e)||r.add(e)})}}),i.failed.forEach(e=>{n.add(e.name),o.set(e.name,e)})}return{requested:Array.from(t),loaded:Array.from(l),failed:Array.from(o.values())}}async preloadModelLoaders(){let e=Array.from(this._modelLoaders.keys()).filter(e=>!this._modelClasses.has(e));return 0===e.length?(this._modelLoadersPreloaded=!0,{requested:[],loaded:[],failed:[]}):(this._modelLoadersPreloadPromise||(this._modelLoadersPreloadPromise=(async()=>{let t=await this.ensureModels(e);return this._modelLoadersPreloaded=0===t.failed.length,this._modelLoadersPreloadPromise=void 0,t})()),this._modelLoadersPreloadPromise)}registerResources(e){for(let[t,l]of Object.entries(e))this._resources.set(t,l)}createResource(e,t){if("string"==typeof e){let l=this._resources.get(e);if(!l)throw Error(`Resource class '${e}' not found. Please register it first.`);return new l((null==t?void 0:t.context)||this.context)}return new e((null==t?void 0:t.context)||this.context)}getModelClasses(){return this._modelClasses}getModelClass(e){return this._modelClasses.get(e)}findModelClass(e){for(let[t,l]of this._modelClasses)if(e(t,l))return[t,l]}getSubclassesOf(e,t){let l="string"==typeof e?this.getModelClass(e):e,o=new Map;if(!l)return o;for(let[e,n]of this._modelClasses)(0,g.FA)(n,l)&&(!t||t(n,e))&&o.set(e,n);return o}async getSubclassesOfAsync(e,t){let l,o="string"==typeof e?e:e.name;if("string"==typeof e?(this.getModelClass(e)||await this.ensureModel(e),l=this.getModelClass(e)):l=e,!l)return new Map;let n=this.getSubclassesOf(l,t),r=[];for(let[e,t]of this._modelLoaders){var i;!(n.has(e)||this._modelClasses.has(e))&&(null==(i=t.extends)?void 0:i.includes(o))&&r.push(e)}for(let e of(r.length>0&&await this.ensureModels(r),r)){let r=this._modelClasses.get(e);if(r){if(!(0,g.FA)(r,l)){console.warn(`FlowEngine: Model '${e}' declares extends '${o}' but does not actually inherit from it. Skipping.`);continue}(!t||t(r,e))&&n.set(e,r)}}return n}createModel(e,t){var l;let o,{parentId:n,uid:r,use:i,subModels:a}=e,s=n?this.getModel(n)||(null==(l=this.previousEngine)?void 0:l.getModel(n)):void 0,d=this._resolveModelClass("string"==typeof i?this.getModelClass(i):i,e,s);return r&&this._modelInstances.has(r)?this._modelInstances.get(r):(d?o=new d({...e,flowEngine:this}):(o=new L._f({...e,flowEngine:this})).setErrorMessage(`Model class '${i}' not found. Please register it first.`),(null==t?void 0:t.delegate)&&o.context.addDelegate(t.delegate),s&&(o.setParent(s),(null==t?void 0:t.delegateToParent)===!1&&o.removeParentDelegate()),this._modelInstances.set(o.uid,o),o.onInit(e),this.emitter.emitAsync("model:created",{uid:o.uid,model:o}),this._applyFlowDefinitionDefaultParams(o).catch(e=>{console.warn("FlowEngine: apply flow defaultParams failed:",e)}),o._createSubModels(e.subModels),o)}_resolveModelClass(e,t,l){let o=e=>e?"object"==typeof e&&"use"in e?{target:e.use,stop:!!e.stop}:{target:e,stop:!1}:{},n=e,r=new Set;for(;n;){let e;if(r.has(n)){console.warn(`FlowEngine: resolveUse circular reference detected on '${n.name}'.`);break}r.add(n);let i=null==n?void 0:n.resolveUse;if("function"!=typeof i)break;let{target:a,stop:s}=o(i(t,this,l));if(!a||a===n)break;if("string"==typeof a){if(!(e=this.getModelClass(a)))return void console.warn(`FlowEngine: resolveUse returned '${a}' but no model is registered under that name.`)}else e=a;if(n=e,s)break}return n}async _applyFlowDefinitionDefaultParams(e){try{let l=e.getFlows();if(!l||0===l.size)return;let o=e.context;for(let[n,r]of l.entries()){var t;let l,i=r.defaultParams;if(!i)continue;try{l="function"==typeof i?await i(o):i}catch(e){console.warn(`FlowEngine: resolve defaultParams of flow '${n}' failed:`,e);continue}if(!l||"object"!=typeof l)continue;let a=null==(t=r.getSteps)?void 0:t.call(r),s=a?Array.from(a.keys()):Object.keys(r.steps||{}),d=Object.entries(l).filter(e=>{let[t]=e;return s.includes(t)});if(0!==d.length)for(let[t,l]of d){let o=e.getStepParams(n,t);void 0===o&&l&&"object"==typeof l&&e.setStepParams(n,t,l)}}}catch(e){console.warn("FlowEngine: apply flow defaultParams error:",e)}}getModel(e,t){if(!t)return this._modelInstances.get(e);let l=this;for(;l.nextEngine;)l=l.nextEngine;let o=l;for(;o;){let t=o._modelInstances.get(e);if(t)return t;o=o.previousEngine}}forEachModel(e){this._modelInstances.forEach(e)}removeModel(e){var t,l,o;if(!this._modelInstances.has(e))return console.warn(`FlowEngine: Model with UID '${e}' does not exist.`),!1;let n=this._modelInstances.get(e);if(n.invalidateFlowCache(void 0,!0),n.clearForks(),null==(t=n.parent)?void 0:t.subModels)for(let e in n.parent.subModels){let t=n.parent.subModels[e];if(Array.isArray(t)){let e=t.findIndex(e=>e==n);if(-1!==e){t.splice(e,1),n.parent.emitter.emit("onSubModelRemoved",n),null==(l=this.emitter)||l.emit("model:subModel:removed",{parentUid:n.parent.uid,parent:n.parent,model:n});break}}else if(t&&t===n){delete n.parent.subModels[e],n.parent.emitter.emit("onSubModelRemoved",n),null==(o=this.emitter)||o.emit("model:subModel:removed",{parentUid:n.parent.uid,parent:n.parent,model:n});break}}return this._modelInstances.delete(e),this.emitter.emitAsync("model:destroyed",{uid:e,model:n}),!0}removeModelWithSubModels(e){let t=this.getModel(e);if(!t)return!1;let l=(e,t)=>{if(e.subModels)for(let o in e.subModels){let n=e.subModels[o];Array.isArray(n)?[...n].forEach(e=>l(e,t)):n&&l(n,t)}t.push(e)},o=[];l(t,o);let n=!0;for(let e of o)this.removeModel(e.uid)||(n=!1);return n}ensureModelRepository(){return!!this._modelRepository}findModelInPreviousEngines(e){let t=this.previousEngine;for(;t;){let l=t.getModel(e);if(l)return l;t=t.previousEngine}}findSubModelInPreviousEngines(e,t){let l=this.previousEngine;for(;l;){let n=l.getModel(e);if(n){var o;let e=null==(o=n.subModels)?void 0:o[t];if(e){let t=Array.isArray(e)?e[0]:e;if(t)return{parent:n,model:t}}}l=l.previousEngine}}async hydrateModelFromPreviousEngines(e,t){let l=null==e?void 0:e.uid,o=null==e?void 0:e.parentId,n=null==e?void 0:e.subKey;if(l&&!this._modelInstances.has(l)){let e=this.findModelInPreviousEngines(l);if(null==e?void 0:e.context.flowSettingsEnabled)return null;if(e){let l=e.serialize();return this.createModelAsync(l,t)}}if(o&&n){var r;let e=this.findSubModelInPreviousEngines(o,n);if(!e||e.parent.context.flowSettingsEnabled)return null;let{parent:l,model:i}=e,a=this.getModel(o);if(!a){let e=l.serialize();delete e.subModels,a=await this.createModelAsync(e,t)}let s=i.serialize(),d=await this.createModelAsync(s,t),u=null==(r=a.subModels)?void 0:r[n];return Array.isArray(u)?u.some(e=>(null==e?void 0:e.uid)===(null==d?void 0:d.uid))||a.addSubModel(n,d):u instanceof L.WD?u.uid!==(null==d?void 0:d.uid)&&a.setSubModel(n,d):(null==d?void 0:d.subType)==="array"?a.addSubModel(n,d):a.setSubModel(n,d),d}return null}async loadModel(e){if(!this.ensureModelRepository())return;let t=!!(null==e?void 0:e.refresh);if(!t){let t=this.findModelByParentId(e.parentId,e.subKey);if(t)return t;let l=await this.hydrateModelFromPreviousEngines(e);if(l)return l}let l=await this._modelRepository.findOne(e);if(!(null==l?void 0:l.uid))return null;if(await this.resolveModelTree(l),t){let e=this.getModel(l.uid);e&&this.removeModelWithSubModels(e.uid)}return this.createModelAsync(l)}findModelByParentId(e,t){if(e&&this._modelInstances.has(e)){let l=this._modelInstances.get(e);if(l&&l.subModels[t]){let e=l.subModels[t];return Array.isArray(e)?e[0]:e}}}async loadOrCreateModel(e,t){if(!this.ensureModelRepository())return;let{uid:l,parentId:o,subKey:n}=e;if(l&&this._modelInstances.has(l))return this._modelInstances.get(l);let r=this.findModelByParentId(o,n);if(r)return r;let i=await this.hydrateModelFromPreviousEngines(e,t);if(i)return i;let a=await this._modelRepository.findOne(e),s=null;if((null==a?void 0:a.uid)?s=await this.createModelAsync(a,t):(s=await this.createModelAsync(e,t),(null==t?void 0:t.skipSave)||await s.save()),s.parent){if(s.parent.findSubModel(s.subKey,e=>e.uid===s.uid))return s;"array"===s.subType?s.parent.addSubModel(s.subKey,s):s.parent.setSubModel(s.subKey,s)}return s}async saveModel(e,t){if(!this.ensureModelRepository())return;let l=e.uid;if(this._savingModels.has(l))return this.logger.debug(`Model ${l} is already being saved, waiting for existing save operation`),await this._savingModels.get(l);let o=this._performModelSave(e,t);this._savingModels.set(l,o);try{return await o}finally{this._savingModels.delete(l)}}async _performModelSave(e,t){this.logger.debug(`Starting save operation for model ${e.uid}`);try{let l=await this._modelRepository.save(e,t);return this.logger.debug(`Successfully saved model ${e.uid}`),l}catch(t){throw this.logger.error(`Failed to save model ${e.uid}:`,t),t}}async destroyModel(e){this.ensureModelRepository()&&await this._modelRepository.destroy(e);let t=this._modelInstances.get(e),l=null==t?void 0:t.parent,o=this.removeModel(e);return l&&l.emitter.emit("onSubModelDestroyed",t),o}async duplicateModel(e){return this.ensureModelRepository()?this._modelRepository.duplicate(e):null}async replaceModel(e,t){let l,o=this.getModel(e);if(!o)return console.warn(`FlowEngine: Cannot replace model. Model with UID '${e}' not found.`),null;let n=o.parent,r=o.subKey,i=o.subType,a=o.serialize();l="function"==typeof t?t(o):t||{};let d={...s().omit(a,["subModels"]),...l};n&&n.emitter.setPaused(!0),await o.destroy();let u=this.createModel(d);if(n&&r&&("array"===i?n.addSubModel(r,u):n.setSubModel(r,u)),n){var c,p;n.emitter.setPaused(!1),n.parent.invalidateFlowCache("beforeRender",!0),null==(c=n.parent)||c.rerender(),n.emitter.emit("onSubModelReplaced",{oldModel:o,newModel:u}),null==(p=this.emitter)||p.emit("model:subModel:replaced",{parentUid:n.uid,parent:n,oldModel:o,newModel:u})}return await u.save(),u}async moveModel(e,t,l){var o,n;let r=this.getModel(e),i=this.getModel(t);if(!r||!i)return void console.warn("FlowEngine: Cannot move model. Source or target model not found.");if(((e,t)=>{if(!e.parent||!t.parent||e.parent!==t.parent)return console.error("FlowModel.moveTo: Both models must have the same parent to perform move operation.");let l=e.parent.subModels[e.subKey];if(!l||!Array.isArray(l))return console.error("FlowModel.moveTo: Parent subModels must be an array to perform move operation.");let o=[...l],n=e=>o.findIndex(t=>t.uid===e.uid),r=n(e),i=n(t);if(-1===r||-1===i)return console.error("FlowModel.moveTo: Current or target model not found in parent subModels.");if(r===i)return console.warn("FlowModel.moveTo: Current model is already at the target position. No action taken.");let[a]=o.splice(r,1);return o.splice(i,0,a),o.forEach((e,t)=>{e.sortIndex=t}),l.splice(0,l.length,...o)})(r,i),(null==l?void 0:l.persist)!==!1&&this.ensureModelRepository()){let l=r.sortIndex-i.sortIndex>0?"after":"before";await this._modelRepository.move(e,t,l)}r.parent.emitter.emit("onSubModelMoved",{source:r,target:i}),null==(n=this.emitter)||n.emit("model:subModel:moved",{parentUid:null==(o=r.parent)?void 0:o.uid,parent:r.parent,source:r,target:i})}filterModelClassByParent(e){let t="string"==typeof e?this.getModelClass(e):e;if(!t)return new Map;let l=new Map;for(let[e,o]of this._modelClasses)(0,g.FA)(o,t)&&l.set(e,o);return l}static generateApplyFlowCacheKey(e,t,l){return`${e}:${t}:${l}`}constructor(){(0,n._)(this,eA),(0,r._)(this,"_actionRegistry",new p),(0,r._)(this,"_eventRegistry",new m),(0,r._)(this,"_modelClasses",i.observable.shallow(new Map)),(0,r._)(this,"_modelLoaders",new Map),(0,r._)(this,"_loadingModelPromises",new Map),(0,r._)(this,"_modelLoadersPreloaded",!1),(0,r._)(this,"_modelLoadersPreloadPromise",void 0),(0,r._)(this,"_modelInstances",new Map),(0,r._)(this,"_modelRepository",null),(0,r._)(this,"_applyFlowCache",new Map),(0,r._)(this,"_savingModels",new Map),(0,r._)(this,"_flowContext",void 0),(0,r._)(this,"_previousEngine",void 0),(0,r._)(this,"_nextEngine",void 0),(0,r._)(this,"_destroyView",void 0),(0,r._)(this,"_resources",new Map),(0,r._)(this,"_dataSourceDirtyVersions",new Map),(0,r._)(this,"emitter",new ei.v),(0,r._)(this,"_modelOperationScheduler",void 0),(0,r._)(this,"logger",void 0),(0,r._)(this,"flowSettings",void 0),(0,r._)(this,"reactView",void 0),(0,r._)(this,"executor",void 0),this.reactView=new ex(this),this.flowSettings=new ef(this),this.flowSettings.registerScopes({t:this.translate.bind(this)}),this.registerModels({FlowModel:L.WD}),this.registerResources({FlowResource:ew.l2,SQLResource:ew.BH,APIResource:ew.hR,SingleRecordResource:ew.sB,MultiRecordResource:ew.Rn}),this.logger=u()({level:"trace",browser:{write:{fatal:e=>console.trace(e),error:e=>console.error(e),warn:e=>console.warn(e),info:e=>console.info(e),debug:e=>console.debug(e),trace:e=>console.trace(e)}}}),this.executor=new x(this)}}function eC(e,t){return this._registerModel(e,t)}},57084(e,t,l){l.d(t,{Ps:()=>i.Ps,PZ:()=>i.PZ,m2:()=>i.m2,sz:()=>d.s,uF:()=>d.u,ke:()=>c.k,GC:()=>s,fh:()=>r,eP:()=>c.e,t_:()=>u});var o=l(96540),n=l(20616);function r(e,t,l){let r=(0,n.uf)();return(0,o.useMemo)(()=>{let o=r.getModel(e);return!o&&t&&(o=r.createModel({uid:e,use:t,stepParams:l})),o},[r,t,e,l])}var i=l(97019),a=l(66466);function s(e,t,l){let r=(0,n.uf)(),i=(0,o.useMemo)(()=>"string"==typeof e?r.getModel(e):e,[e,r]);null==i||i.useHooksBeforeRender();let{loading:s,error:d}=(0,a.A)(async()=>{i&&await i.dispatchEvent("beforeRender",t,{useCache:null==l?void 0:l.useCache})},{refreshDeps:[i,t,null==l?void 0:l.useCache]});if((null==l?void 0:l.throwOnError)!==!1&&d)throw d;return{loading:s,error:d}}var d=l(16296);let u=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=(0,o.useRef)(0);return(0,o.useEffect)(()=>{let e=e=>{let{clientY:l}=e;t.current=Math.max(l,window.innerHeight-l)};return window.addEventListener("mousemove",e),()=>{window.removeEventListener("mousemove",e)}},[]),(0,o.useMemo)(()=>t.current-40,e)};var c=l(23200)},97019(e,t,l){l.d(t,{PZ:()=>s,Ps:()=>a,m2:()=>d});var o=l(74848),n=l(96540),r=l(52568);let i=(0,n.createContext)(null),a=e=>{let{model:t,children:l}=e;if(!t)throw Error("FlowModelProvider must be supplied with a model.");return(0,o.jsx)(i.Provider,{value:t,children:(0,o.jsx)(r.Dv,{context:t.context,children:l})})};function s(){let e=(0,n.useContext)(i);if(!e)throw Error("useFlowModel must be used within a FlowModelProvider");return e}function d(){return s().context}},16296(e,t,l){l.d(t,{s:()=>s,u:()=>a});var o=l(74848),n=l(96540),r=l(52568);let i=(0,n.createContext)(null),a=e=>{let{value:t,children:l}=e;return(0,o.jsx)(r.Dv,{context:t,children:(0,o.jsx)(i.Provider,{value:t,children:l})})},s=()=>{let e=(0,n.useContext)(i);if(!e)throw Error("useFlowSettingsContext must be used within a FlowSettingsContextProvider");return e}},23200(e,t,l){l.d(t,{e:()=>r,k:()=>n});var o=l(96540);let n=o.createContext({path:"",params:{}}),r=()=>(0,o.useContext)(n)},40532(e,t,l){l.r(t),l.d(t,{action:()=>p.XI,resolveOverlayAnchorTransform:()=>ej,batch:()=>p.vA,loadMetaTreeChildren:()=>tY,FlowSettingsButton:()=>y,FlowRunJSContext:()=>eQ.uk,compileUiSchema:()=>n.ln,resolveModuleUrl:()=>n.i,FlowsContextMenu:()=>e1,encodeBase64Url:()=>n.DX,setDataNode:()=>p.Jv,collectContextParamsForTemplate:()=>n.ju,simulateLayoutForSlot:()=>eF,CollectionField:()=>oh.JL,isVariableValue:()=>tZ,runjsWithSafeGlobals:()=>n._,createRecordMetaFactory:()=>n.pc,FlowRuntimeContext:()=>eQ.W5,markRaw:()=>p.IG,useFlowModelById:()=>d.fh,contains:()=>p.gR,FlowViewContextProvider:()=>g.YQ,isCompleteCtxDatePath:()=>n.M5,useDialog:()=>oT.sp,DisplayItemModel:()=>u.jG,createEphemeralContext:()=>n.vq,TOOLBAR_DRAG_ACTIVITY_EVENT:()=>ek,isSupportObservable:()=>p.Rq,isFieldInterfaceMatch:()=>oh.Xk,FlowEngineGlobalsContextProvider:()=>c.f7,FlowExitException:()=>n.sy,inferRecordRef:()=>n.XU,preprocessRunJsTemplates:()=>n.mH,FlowForkModelContext:()=>eQ.Hl,FlowCancelSaveException:()=>n.VD,jioToJoiSchema:()=>oh.Ns,getSlotKey:()=>Y,EMPTY_COLUMN_UID:()=>eA,markObservable:()=>p.po,FlowStep:()=>oN.z,FlowEngineContext:()=>eQ.o0,transformItems:()=>l0,COLUMN_EDGE_MIN_WIDTH:()=>j,openStepSettingsDrawer:()=>lF,observe:()=>p.lB,untracked:()=>p.O8,useFlowEngineContext:()=>c.Db,getPageActive:()=>p.SL,FlowExitAllException:()=>n.zz,createCurrentRecordMetaFactory:()=>n.UX,ModelRenderMode:()=>u.NK,createViewScopedEngine:()=>oO._,SingleRecordResource:()=>a.sB,openStepSettingsDialog:()=>eZ.openStepSettingsDialog,DragHandler:()=>eE,useApplyAutoFlows:()=>d.GC,FieldDeletePlaceholder:()=>u.xI,ErrorFlowModel:()=>u._f,Collection:()=>oh.pM,MENU_KEYS:()=>n.Fv,hasCollected:()=>p.KP,projectLayoutToLegacyRows:()=>ei,createSafeWindow:()=>n.ey,resolveStepUiSchema:()=>n.o7,createSafeDocument:()=>n.Xh,VariableTag:()=>l3,resolveRunJSObjectValues:()=>n.mP,DndProvider:()=>eR,FlowsFloatContextMenu:()=>tR,Tracker:()=>p.JD,FlowContextSelector:()=>t9,observer:()=>p.PA,isObservable:()=>p.AT,FlowStepContext:()=>d.ke,normalizeRunJSValue:()=>n.J3,parseValueToPath:()=>tW,getT:()=>n.lW,extractUsedVariablePaths:()=>n.nN,registerRunJSContextContribution:()=>oF.JF,ForkFlowModel:()=>u.yN,BLOCK_GROUP_CONFIGS:()=>n.WJ,BLOCK_TYPES:()=>n.kl,VIEW_ACTIVATED_VERSION:()=>oD.tb,FlowErrorFallbackModal:()=>eV,escapeT:()=>n.MI,prepareRunJsCode:()=>n.ji,useNiceDropdownMaxHeight:()=>d.t_,FlowModelRenderer:()=>tB,extractPropertyPath:()=>n.YB,createCollectionContextMeta:()=>n.H9,useFlowModel:()=>d.PZ,getRunJSDocFor:()=>ob,useDrawer:()=>oT.bt,parsePathnameToViewParams:()=>n.KB,buildWrapperFieldChildren:()=>lV.jx,largeField:()=>om,isInheritedFrom:()=>n.FA,buildSubModelGroups:()=>lV.Qp,FieldModelRenderer:()=>tV,observable:()=>p.sH,registerRunJSSnippet:()=>ok,AddSubModelButton:()=>l2,FlowViewContext:()=>g.PC,FlowDefinition:()=>oN.G,serializeCtxDateValue:()=>n.hz,setupRunJSContexts:()=>oM.setupRunJSContexts,DataNode:()=>p.dw,buildRecordMeta:()=>n.$S,replaceUidInGridLayout:()=>ec,VIEW_ENGINE_SCOPE:()=>"view",FilterItem:()=>a.qi,buildDataTree:()=>p.H_,normalizeGridLayout:()=>eu,autorun:()=>p.fm,ENGINE_SCOPE_KEY:()=>oD.i6,buildItems:()=>lV.z5,clearAutoFlowError:()=>n.Z8,EMBED_REPLACING_DATA_KEY:()=>oT.xB,MobilePopup:()=>op.D,defineFlow:()=>u.oY,DATA_SOURCE_DIRTY_EVENT:()=>oD.HK,isCtxDateExpression:()=>n.y4,usePage:()=>oT.N5,createDefaultConverters:()=>t0,raw:()=>p.lS,FieldPlaceholder:()=>u.WE,tExpr:()=>n.MZ,VariableInput:()=>ol,BaseRecordResource:()=>a.vB,isAnnotation:()=>p.Ir,buildContextSelectorItems:()=>tX,MAX_SLOT_THICKNESS:()=>P,MemoFlowModelRenderer:()=>tq,CollectionFieldModel:()=>u.yW,createRecordResolveOnServerWithLocal:()=>n.xI,isVariableExpression:()=>n.n2,FlowContext:()=>eQ.cB,GLOBAL_EMBED_CONTAINER_ID:()=>oT.mW,createFinalConverters:()=>t1,useFlowViewContext:()=>g.Ww,createAssociationSubpathResolver:()=>n.Hi,SQLResource:()=>a.BH,FlowModelProvider:()=>d.Ps,FormItem:()=>t7.e,COLUMN_EDGE_MAX_WIDTH:()=>I,DataSourceManager:()=>oh.zA,getAutoFlowError:()=>n.yz,SlateVariableEditor:()=>ou,useFlowSettingsContext:()=>d.sz,ActionScene:()=>o,getEmitterViewActivatedVersion:()=>oD.FH,ViewNavigation:()=>oT.U,resolveDefaultParams:()=>n.gG,MIN_SLOT_THICKNESS:()=>C,resolveCreateModelOptions:()=>n.mv,resolveStepDisabledInSettings:()=>n.XM,model:()=>p.ge,DataChange:()=>p.r5,Droppable:()=>e_,FlowsDropdownButton:()=>ll,buildSubModelItem:()=>lV.Ls,useFlowContext:()=>g.$K,useFlowView:()=>g.Vy,resolveExpressions:()=>n.M,preloadContextSelectorPath:()=>tQ,mergeSubModelItems:()=>lY,defineAction:()=>n.QP,FlowSQLRepository:()=>a.tP,decodeBase64Url:()=>n.$X,shouldPreprocessRunJSTemplates:()=>og.R,COLUMN_EDGE_WIDTH_RATIO:()=>E,FlowResource:()=>a.l2,LazyDropdown:()=>lL,FlowEngine:()=>s.$,DataSource:()=>oh.qS,FLOW_ENGINE_NAMESPACE:()=>n.u4,isSameGridLayout:()=>eM,parseCtxDateExpression:()=>n.X4,DEFAULT_GRID_COLUMNS:()=>k,registerRunJSLib:()=>i.T1,resolveDropIntent:()=>Q,findModelUidLayoutPosition:()=>ep,resolveCtxDatePath:()=>n.Vv,shouldHideEventInSettings:()=>n.qI,shouldHideStepInSettings:()=>n._3,MultiRecordResource:()=>a.Rn,usePopover:()=>oT.fP,ElementProxy:()=>of.x,FlowModel:()=>u.WD,isCtxDatePathPrefix:()=>n.JE,openRequiredParamsStepFormDialog:()=>lP.openRequiredParamsStepFormDialog,FlowSettingsContextProvider:()=>d.uF,extractUsedVariableNames:()=>n.vP,InlineVariableTag:()=>oa,isBeforeRenderFlow:()=>n.EI,EditableItemModel:()=>u.B3,FlowSettings:()=>lc,getDataNode:()=>p.D,CollectionManager:()=>oh.qG,createRunJSDeprecationProxy:()=>eQ.Bt,JSRunner:()=>og.I,searchInLoadedNodes:()=>tG,useResolvedMetaTree:()=>t2,FlowErrorFallback:()=>eL,FlowEngineProvider:()=>c.I6,ResourceError:()=>a.BS,formatPathToVariable:()=>n.AP,createBlockScopedEngine:()=>o$,isCssFile:()=>n.yp,extractUsedVariablePathsFromRunJS:()=>n.$n,formatPathToValue:()=>tH,resolveUiMode:()=>n.ME,getRunJSScenesForModel:()=>ow,FlowsSettings:()=>lw,pruneFilter:()=>n.pM,setupRuntimeContextSteps:()=>n.wx,buildSubModelItems:()=>lV.yG,createJSRunnerWithVersion:()=>ox,findModelUidPosition:()=>S,define:()=>p.E8,buildLayoutSnapshot:()=>H,FlowModelContext:()=>eQ.d6,getModelClassName:()=>ov.B,APIResource:()=>a.hR,FilterGroup:()=>a.I8,RunJSContextRegistry:()=>ov.F,useFlowEngine:()=>c.uf,VIEW_ACTIVATED_EVENT:()=>oD.B9,createAssociationAwareObjectMetaFactory:()=>n.af,createSafeRunJSGlobals:()=>n.I2,setAutoFlowError:()=>n.GZ,FilterableItemModel:()=>u.bt,compileRunJs:()=>r.W,filterLoadedContextSelectorItems:()=>tJ,getRunJSScenesForContext:()=>oS,getSnippetBody:()=>o_,useFlowModelContext:()=>d.m2,reaction:()=>p.mJ,FlowContextProvider:()=>g.Dv,isRunJSValue:()=>n.E2,useFlowStep:()=>d.eP,openStepSettings:()=>lC,FlowReactContext:()=>g.bc,createSafeNavigator:()=>n.D1,toJS:()=>p.HO,listSnippetsForContext:()=>oR});var o=function(e){return e[e.BLOCK_LINKAGE_RULES=1]="BLOCK_LINKAGE_RULES",e[e.FIELD_LINKAGE_RULES=2]="FIELD_LINKAGE_RULES",e[e.SUB_FORM_FIELD_LINKAGE_RULES=3]="SUB_FORM_FIELD_LINKAGE_RULES",e[e.DETAILS_FIELD_LINKAGE_RULES=4]="DETAILS_FIELD_LINKAGE_RULES",e[e.ACTION_LINKAGE_RULES=5]="ACTION_LINKAGE_RULES",e[e.DYNAMIC_EVENT_FLOW=6]="DYNAMIC_EVENT_FLOW",e}({}),n=l(48555),r=l(49773),i=l(98192),a=l(27667),s=l(81440),d=l(57084),u=l(1314),c=l(20616),p=l(52847),h=l(74848),m=l(71021),f=l(96540),g=l(52568);function v(e){let t=(0,p.PA)(t=>(0,g.$K)().flowSettingsEnabled?(0,h.jsx)(e,{...t}):null);return t.displayName=`withFlowDesignMode(${e.displayName||e.name||"Component"})`,t}let y=v(e=>(0,h.jsx)(m.Ay,{...e,type:"dashed",style:{...e.style,borderColor:"var(--colorSettings)",color:"var(--colorSettings)",alignSelf:"flex-start"}}));y.displayName="FlowSettingsButton";var b=l(2805),x=l(98668),w=l(40961);let S=(e,t)=>{let l=null;for(let[o,n]of Object.entries(t))for(let t=0;t<n.length;t++){let r=n[t];for(let n=0;n<r.length;n++)r[n]===e&&(l={rowId:o,columnIndex:t,itemIndex:n})}return l};var M=l(27253),F=l(2543),A=l.n(F);let k=24,C=16,P=48,j=12,I=28,E=.2,_=.5,R=.33,T=(e,t)=>{let l=[],o=new Set;return(t||Object.keys(e)).forEach(t=>{e[t]&&!o.has(t)&&(l.push(t),o.add(t))}),Object.keys(e).forEach(e=>{o.has(e)||(l.push(e),o.add(e))}),l},D=(e,t)=>{let l={};return t.forEach(t=>{e[t]&&(l[t]=e[t])}),Object.keys(e).forEach(t=>{l[t]||(l[t]=e[t])}),l},N=e=>{let t=T(e.rows,e.rowOrder);return e.rowOrder=t,e.rows=D(e.rows,t),t},O=e=>({top:e.top,left:e.left,width:e.width,height:e.height}),$=e=>Math.max(C,Math.min(P,e)),B=e=>{let{top:t,left:l,width:o,height:n}=e;return{top:t,left:l,width:o,height:n}},q=(e,t,l)=>{let o=$(e.height*R);if("above"===t){let t=$(Math.max(o,e.top-l.top));return B({top:e.top-t,left:l.left,width:l.width,height:t})}let n=$(Math.max(o,l.top+l.height-(e.top+e.height)));return B({top:e.top+e.height,left:l.left,width:l.width,height:n})},L=(e,t)=>{let l=Math.min(Math.max(j,e.width*E),I);return B({top:e.top,left:"left"===t?e.left:e.left+e.width-l,width:l,height:e.height})},V=(e,t)=>{let l=$(e.height*_);return"before"===t?B({top:e.top,left:e.left,width:e.width,height:l}):B({top:e.top+e.height-l,left:e.left,width:e.width,height:l})},z=e=>{if(e)try{let t=JSON.parse(e);if(!Array.isArray(t))return;let l=t.map(e=>e&&"object"==typeof e&&"string"==typeof e.rowId?{rowId:e.rowId,..."string"==typeof e.cellId?{cellId:e.cellId}:{}}:null).filter(Boolean);return l.length?l:void 0}catch(e){return}},K=(e,t)=>[{rowId:e,cellId:`${e}:cell:${t}`}],U=e=>({top:e.top,left:e.left,width:e.width,height:Math.max(e.height,C)}),W=e=>Array.from(e.querySelectorAll("[data-grid-row-id]")).some(t=>t.closest("[data-grid-column-row-id][data-grid-column-index]")===e),H=e=>{let{container:t}=e;if(!t)return{slots:[],containerRect:{top:0,left:0,width:0,height:0}};let l=(t.hasAttribute("data-grid-root")?t:t.querySelector("[data-grid-root]"))||t,o=O(l.getBoundingClientRect()),n=[],r=Array.from(l.querySelectorAll("[data-grid-row-id]")),i=l.hasAttribute("data-grid-root"),a=r.filter(e=>{let t=e;if(i)return t.closest("[data-grid-root]")===l;let o=t.parentElement;for(;o&&o!==l;){if(o.hasAttribute("data-grid-row-id"))return!1;o=o.parentElement}return!0});if(0===a.length)return n.push({type:"empty-row",rect:B({top:o.top,left:o.left,width:o.width,height:Math.max(o.height,C)})}),{slots:n,containerRect:o};let s=e=>{let t=e.parentElement;return t&&l.contains(t)?t:l},d=new Map;return a.forEach(e=>{let t=s(e);d.set(t,[...d.get(t)||[],e])}),a.forEach(e=>{let t=e.dataset.gridRowId;if(!t)return;let o=O(e.getBoundingClientRect()),r=z(e.dataset.gridPath)||[{rowId:t}],i=s(e),a=O(i.getBoundingClientRect());(d.get(i)||[])[0]===e&&n.push({type:"row-gap",targetRowId:t,position:"above",rect:q(o,"above",a),path:r}),Array.from(l.querySelectorAll(`[data-grid-column-row-id="${t}"][data-grid-column-index]`)).filter(t=>t.closest("[data-grid-row-id]")===e).sort((e,t)=>Number(e.dataset.gridColumnIndex||0)-Number(t.dataset.gridColumnIndex||0)).forEach(e=>{let l=Number(e.dataset.gridColumnIndex||0),o=O(e.getBoundingClientRect()),r=z(e.dataset.gridPath)||K(t,l);n.push({type:"column-edge",rowId:t,columnIndex:l,direction:"left",rect:L(o,"left"),path:r}),n.push({type:"column-edge",rowId:t,columnIndex:l,direction:"right",rect:L(o,"right"),path:r});let i=Array.from(e.querySelectorAll(`[data-grid-item-row-id="${t}"][data-grid-column-index="${l}"]`)).filter(t=>t.closest("[data-grid-column-row-id][data-grid-column-index]")===e).sort((e,t)=>Number(e.dataset.gridItemIndex||0)-Number(t.dataset.gridItemIndex||0));if(0===i.length){if(W(e))return;n.push({type:"empty-column",rowId:t,columnIndex:l,rect:U(o),path:r});return}let a=O(i[0].getBoundingClientRect());n.push({type:"column",rowId:t,columnIndex:l,insertIndex:0,position:"before",rect:V(a,"before"),path:r}),i.forEach((e,o)=>{let i=O(e.getBoundingClientRect()),a=z(e.dataset.gridPath)||r,s=e.dataset.gridItemUid||"";n.push({type:"item-edge",rowId:t,columnIndex:l,itemIndex:o,itemUid:s,direction:"left",rect:L(i,"left"),path:a}),n.push({type:"item-edge",rowId:t,columnIndex:l,itemIndex:o,itemUid:s,direction:"right",rect:L(i,"right"),path:a}),n.push({type:"column",rowId:t,columnIndex:l,insertIndex:o+1,position:"after",rect:V(i,"after"),path:a})})}),n.push({type:"row-gap",targetRowId:t,position:"below",rect:q(o,"below",a),path:r})}),{slots:n,containerRect:o}},Y=e=>{switch(e.type){case"column":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.insertIndex}:${e.position}`;case"column-edge":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.direction}`;case"row-gap":return`${e.type}:${e.targetRowId}:${e.position}`;case"empty-row":return`${e.type}`;case"empty-column":return`${e.type}:${e.rowId}:${e.columnIndex}`;case"item-edge":return`${e.type}:${e.rowId}:${e.columnIndex}:${e.itemUid}:${e.direction}`}},G=(e,t)=>e.x>=t.left&&e.x<=t.left+t.width&&e.y>=t.top&&e.y<=t.top+t.height,J=(e,t)=>{let l=Math.max(t.left-e.x,0,e.x-(t.left+t.width)),o=Math.max(t.top-e.y,0,e.y-(t.top+t.height));return Math.sqrt(l*l+o*o)},X={"item-edge":5,"column-edge":4,column:3,"row-gap":2,"empty-column":1,"empty-row":0},Q=(e,t)=>{if(!t.length)return null;let l=null,o=-1/0;if(t.forEach(t=>{if(!G(e,t.rect))return;let n=X[t.type];n>o&&(o=n,l=t)}),l)return l;let n=null,r=1/0;return t.forEach(t=>{let l=J(e,t.rect);(l<r||l===r&&n&&X[t.type]>X[n.type])&&(r=l,n=t)}),n},Z=(e,t)=>{for(let[l,o]of Object.entries(e))for(let e=0;e<o.length;e+=1){let n=o[e].indexOf(t);if(-1!==n)return{rowId:l,columnIndex:e,itemIndex:n}}return null},ee=(e,t)=>{let l=Z(e.rows,t);if(!l)return;let{rowId:o,columnIndex:n,itemIndex:r}=l,i=e.rows[o],a=null==i?void 0:i[n];if(a){if(a.splice(r,1),0===a.length&&(i.splice(n,1),e.sizes[o]&&e.sizes[o].splice(n,1)),0===i.length){delete e.rows[o],delete e.sizes[o],N(e);return}eh(o,e),N(e)}},et=(e,t)=>{if(0===t)return[];let l=Array.from({length:t},(t,l)=>{let o=e[l];return Number.isFinite(o)&&o>0?o:1}),o=l.reduce((e,t)=>e+t,0)||t,n=l.map(e=>e/o).map(e=>e*k),r=n.map(e=>Math.max(1,Math.floor(e))),i=k-r.reduce((e,t)=>e+t,0);if(i>0){let e=n.map((e,t)=>({index:t,decimal:e-Math.floor(e)})).sort((e,t)=>t.decimal-e.decimal),t=0;for(;i>0&&e.length;){let l=e[t%e.length].index;r[l]+=1,i-=1,t+=1}}else if(i<0){let e=n.map((e,t)=>({index:t,decimal:e-Math.floor(e)})).sort((e,t)=>e.decimal-t.decimal),t=0;for(;i<0&&e.length;){let l=e[t%e.length].index;r[l]>1&&(r[l]-=1,i+=1),t+=1}}let a=k-r.reduce((e,t)=>e+t,0);return 0!==a&&r.length&&(r[r.length-1]+=a),r},el="EMPTY_COLUMN",eo=(e,t)=>({id:t,cells:[{id:`${t}:cell:0`,items:[e]}],sizes:[k]}),en=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=arguments.length>2?arguments[2]:void 0;return{version:2,rows:T(e,l).map(l=>{let o=(e[l]||[]).map((e,t)=>({id:`${l}:cell:${t}`,items:[...e]}));return{id:l,cells:o,sizes:et(t[l]||Array(o.length).fill(1),o.length)}}).filter(e=>e.cells.length>0)}},er=e=>Array.isArray(e.items)?e.items:(e.rows||[]).flatMap(e=>e.cells.flatMap(e=>er(e))),ei=e=>{let t={},l={},o=[];return function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";e.forEach(e=>{let r=n?`${n}/${e.id}`:e.id,i=e.cells.map(e=>er(e)).filter(e=>e.length>0);i.length>0&&(t[r]=i,l[r]=et(e.sizes||Array(i.length).fill(1),i.length),o.push(r))})}(e.rows||[]),{rows:t,sizes:l,rowOrder:o,layout:e}},ea=(e,t)=>(Array.isArray(e)?e:[]).map((e,l)=>{let o=Array.isArray(null==e?void 0:e.cells)?e.cells:[],n=Array.isArray(null==e?void 0:e.sizes)?e.sizes:[],r=o.map((o,r)=>{let i="string"==typeof(null==o?void 0:o.id)&&o.id?o.id:`${(null==e?void 0:e.id)||`row:${l}`}:cell:${r}`,a=n[r];if(Array.isArray(null==o?void 0:o.rows)&&o.rows.length>0){let e=ea(o.rows,t);if(e.length>0)return{cell:{id:i,rows:e},size:a}}let s=Array.isArray(null==o?void 0:o.items)?o.items:void 0,d=(s||[]).filter(e=>"string"==typeof e&&e).filter(e=>!t.validUids||t.validUids.has(e)||e===el).filter(e=>e===el||!t.seenUids.has(e)&&(t.seenUids.add(e),!0));return s&&(d.length>0||0===s.length)?{cell:{id:i,items:d},size:a}:null}).filter(Boolean),i=r.map(e=>e.cell);return 0===i.length?null:{id:"string"==typeof(null==e?void 0:e.id)&&e.id?e.id:`row:${l}`,cells:i,sizes:et(r.map(e=>e.size),i.length)}}).filter(Boolean),es=e=>{var t;if(null==(t=e.rows)?void 0:t.length){let t=ed(e.rows);return 0===t.length?null:1===t.length&&1===t[0].cells.length&&t[0].sizes[0]===k?{id:e.id,...A().omit(t[0].cells[0],["id"])}:{id:e.id,rows:t}}return Array.isArray(e.items)?{id:e.id,items:e.items.filter(Boolean)}:null},ed=e=>e.map(e=>{let t=e.cells.map((t,l)=>{var o;let n=es(t);return n?{cell:n,size:null==(o=e.sizes)?void 0:o[l]}:null}).filter(Boolean),l=t.map(e=>e.cell);return 0===l.length?null:{id:e.id,cells:l,sizes:et(t.map(e=>e.size),l.length)}}).filter(Boolean),eu=e=>{let{layout:t,rows:l,sizes:o,rowOrder:n,itemUids:r,generateId:i=M.uid,logger:a,gridUid:s}=e,d=r?new Set(r):void 0;d&&d.add(el);try{let e=(null==t?void 0:t.version)===2?A().cloneDeep(t):en(l||{},o||{},n||Object.keys(l||{})),a=new Set,s={version:2,rows:ed(ea(e.rows||[],{validUids:d,seenUids:a}))};return(null==r?void 0:r.length)&&r.forEach(e=>{if(e===el||a.has(e))return;let t=i();s.rows.push(eo(e,t)),a.add(e)}),s}catch(e){var u;return null==a||null==(u=a.warn)||u.call(a,`[GridModel] Failed to normalize grid layout${s?` (${s})`:""}.`,e),{version:2,rows:(r||[]).filter(e=>e!==el).map(e=>eo(e,i()))}}},ec=(e,t,l)=>{let o=e=>e.map(e=>({...e,cells:e.cells.map(e=>e.rows?{...e,rows:o(e.rows)}:{...e,items:(e.items||[]).map(e=>e===t?l:e)})}));return{version:2,rows:o(A().cloneDeep(e.rows||[]))}},ep=(e,t)=>{let l=(e,o)=>{for(let n=0;n<e.length;n+=1){let r=e[n];for(let e=0;e<r.cells.length;e+=1){let i=r.cells[e],a=[...o,{rowId:r.id,cellId:i.id}];if(i.items){let l=i.items.indexOf(t);if(-1!==l)return{path:a,rowIndex:n,cellIndex:e,itemIndex:l,itemUid:t}}if(i.rows){let e=l(i.rows,a);if(e)return e}}}return null};return l(e.rows||[],[])},eh=(e,t)=>{let l=t.rows[e];if(!l||0===l.length)return void delete t.sizes[e];let o=t.sizes[e]||Array(l.length).fill(k/l.length),n=o.length===l.length?o:Array(l.length).fill(k/l.length);t.sizes[e]=et(n,l.length)},em=(e,t,l,o,n)=>{let r=Object.entries(e),i={},a=!1;return r.forEach(e=>{let[r,s]=e;a||"before"!==o||r!==t||(i[l]=n,a=!0),i[r]=s,a||"after"!==o||r!==t||(i[l]=n,a=!0)}),a||(i[l]=n),i},ef=(e,t,l)=>{if(!e||0===e.length)return et(Array(l).fill(1),l);let o=e.map(e=>Number.isFinite(e)&&e>0?e:1),n=Math.max(0,Math.min(t,o.length-1)),r=o[n]??1,i=[...o];return i.splice(t,0,r),et(i,l)},eg=(e,t)=>{var l;return"path"in t&&(null==(l=t.path)?void 0:l.length)?t.path:"rowId"in t&&"columnIndex"in t?K(t.rowId,t.columnIndex):void 0},ev=(e,t)=>{if(!t||t.length<=1)return e.rows;let l=e.rows;for(let e=0;e<t.length-1;e+=1){let o=t[e],n=l.find(e=>e.id===o.rowId),r=null==n?void 0:n.cells.find(e=>e.id===o.cellId);if(!(null==r?void 0:r.rows))break;l=r.rows}return l},ey=(e,t)=>{if(!(null==t?void 0:t.length))return null;let l=e.rows;for(let e=0;e<t.length;e+=1){let o=t[e],n=l.findIndex(e=>e.id===o.rowId),r=l[n];if(!r||!o.cellId)break;let i=r.cells.findIndex(e=>e.id===o.cellId),a=r.cells[i];if(!a)break;if(e===t.length-1)return{rows:l,row:r,cell:a,rowIndex:n,cellIndex:i};l=a.rows||[]}return null},eb=(e,t)=>{let l=e=>e.map(e=>{let o=e.cells.map((o,n)=>{var r,i;if(o.rows){let t=l(o.rows);return t.length?{cell:{...o,rows:t},size:null==(i=e.sizes)?void 0:i[n]}:null}let a=o.items||[],s=a.includes(t),d=a.filter(e=>e!==t);return s&&!d.length?null:{cell:{...o,items:d},size:null==(r=e.sizes)?void 0:r[n]}}).filter(Boolean),n=o.map(e=>e.cell);return n.length?{...e,cells:n,sizes:et(o.map(e=>e.size),n.length)}:null}).filter(Boolean);e.rows=ed(l(e.rows))},ex=(e,t,l)=>({id:t,cells:[{id:l,items:[e]}],sizes:[k]}),ew=(e,t)=>{var l,o,n;let r=null==t||null==(l=t.generatedIds)?void 0:l.get(e);if(r)return r;let i=(null==t||null==(o=t.generateId)?void 0:o.call(t,e))||(0,M.uid)();return null==t||null==(n=t.generatedIds)||n.set(e,i),i},eS=e=>{let{slot:t,sourceUid:l,layout:o,generatedIds:n,generateId:r}=e,i=eu({layout:o.layout,rows:o.rows,sizes:o.sizes,rowOrder:o.rowOrder}),a=A().cloneDeep(i),s=Y(t),d=ep(a,l);if("item-edge"===t.type&&t.itemUid===l)return a;let u=eg(a,t),c="item-edge"===t.type?t.itemUid:void 0;switch(eb(a,l),t.type){case"column":{var p;let e=ey(a,u);if(!e)break;if(e.cell.rows){e.cell.rows.push(eo(l,ew(`${s}:row`,{generatedIds:n,generateId:r})));break}(p=e.cell).items||(p.items=[]);let o=Math.max(0,Math.min(t.insertIndex,e.cell.items.length));e.cell.items.splice(o,0,l);break}case"empty-column":{let e=ey(a,u);e&&(delete e.cell.rows,e.cell.items=[l]);break}case"column-edge":{let e=ey(a,u);if(!e)break;let o="left"===t.direction?e.cellIndex:e.cellIndex+1,i=ew(`${s}:cell`,{generatedIds:n,generateId:r});e.row.cells.splice(o,0,{id:i,items:[l]}),e.row.sizes=ef(e.row.sizes,o,e.row.cells.length);break}case"row-gap":{let e=ev(a,t.path),o=e.findIndex(e=>e.id===t.targetRowId),i=-1===o?e.length:"above"===t.position?o:o+1,d=ew(`${s}:row`,{generatedIds:n,generateId:r});e.splice(i,0,ex(l,d,`${d}:cell:0`));break}case"empty-row":{let e=ew(`${s}:row`,{generatedIds:n,generateId:r});a.rows.push(ex(l,e,`${e}:cell:0`));break}case"item-edge":{if(!c)break;let e=ey(a,u);if(!(null==e?void 0:e.cell.items))break;let o=e.cell.items.indexOf(c);if(-1===o)break;let i=[];e.cell.items.forEach((e,a)=>{if(a===o){let o=ew(`${s}:target-row`,{generatedIds:n,generateId:r}),a="left"===t.direction?l:e,d="left"===t.direction?e:l;i.push({id:o,cells:[{id:ew(`${s}:target-cell:0`,{generatedIds:n,generateId:r}),items:[a]},{id:ew(`${s}:target-cell:1`,{generatedIds:n,generateId:r}),items:[d]}],sizes:[12,12]});return}let d=ew(`${s}:row:${a}`,{generatedIds:n,generateId:r});i.push(ex(e,d,`${d}:cell:0`))}),delete e.cell.items,e.cell.rows=i}}let h=eu({layout:a});return d&&eM(h,i)?i:h},eM=(e,t)=>JSON.stringify(e)===JSON.stringify(t),eF=e=>{var t;let{slot:l,sourceUid:o,layout:n,generateRowId:r,generatedIds:i,generateId:a}=e;if(n.layout||"item-edge"===l.type||"path"in l&&(null==(t=l.path)?void 0:t.length))return ei(eS({slot:l,sourceUid:o,layout:n,generateRowId:r,generatedIds:i,generateId:a}));let s={rows:A().cloneDeep(n.rows),sizes:A().cloneDeep(n.sizes),rowOrder:n.rowOrder?[...n.rowOrder]:void 0};N(s),ee(s,o);let d=r??M.uid;switch(l.type){case"column":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e),e[l.columnIndex]||(e[l.columnIndex]=[]),e[l.columnIndex].splice(l.insertIndex,0,o),eh(l.rowId,s);break}case"empty-column":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e),e[l.columnIndex]||(e[l.columnIndex]=[]),e[l.columnIndex]=[o],eh(l.rowId,s);break}case"column-edge":{let e=s.rows[l.rowId]||[];s.rows[l.rowId]||(s.rows[l.rowId]=e);let t="left"===l.direction?l.columnIndex:l.columnIndex+1;e.splice(t,0,[o]),s.sizes[l.rowId]=ef(s.sizes[l.rowId],t,e.length),eh(l.rowId,s);break}case"row-gap":{let e=d(),t="above"===l.position?"before":"after",n=T(s.rows,s.rowOrder);s.rows=em(s.rows,l.targetRowId,e,t,[[o]]),s.sizes[e]=[k];let r=n.indexOf(l.targetRowId),i=-1===r?n.length:"before"===t?r:r+1,a=[...n];a.splice(i,0,e),s.rowOrder=a,s.rows=D(s.rows,a);break}case"empty-row":{let e=d();s.rows={...s.rows,[e]:[[o]]},s.sizes[e]=[k];let t=T(s.rows,s.rowOrder);s.rowOrder=[...t.filter(t=>t!==e),e],s.rows=D(s.rows,s.rowOrder)}}return N(s),s},eA="EMPTY_COLUMN",ek="nb-toolbar-drag-activity",eC="nb-toolbar-drag-anchor",eP=".ant-menu-submenu-popup",ej=e=>{let{activeId:t,active:l,transform:o,activeNodeRect:n,dragAnchorPoint:r}=e;return t&&(null==l?void 0:l.id)===t&&r&&n?{...o,x:o.x+r.x-n.left,y:o.y+r.y-n.top}:o},eI=e=>{let t=null==e?void 0:e.ownerDocument,l=null==e?void 0:e.closest(".nb-toolbar-container[data-model-uid]"),o=null==l?void 0:l.getAttribute("data-model-uid");if(!t||!o)return e;let n=Array.from(t.querySelectorAll(`[data-has-float-menu="true"][data-float-menu-model-uid="${o}"]`)),r=null==l?void 0:l.closest(eP);return r?n.find(e=>e.closest(eP)===r)||e:n.find(e=>!e.closest(eP))||n[0]||e},eE=e=>{let{model:t,children:l=(0,h.jsx)(b.A,{})}=e,{attributes:o,isDragging:n,listeners:r,setActivatorNodeRef:i,setNodeRef:a}=(0,x.PM)({id:t.uid}),s=(0,f.useRef)(null),d=(0,f.useRef)(null),u=(0,f.useRef)(null),c=(0,f.useRef)(n),p=(0,f.useRef)(!1),m=(0,f.useRef)(!1),g=(0,f.useCallback)(e=>{let t=eI(e);d.current!==t&&(d.current=t,a(t))},[a]),v=(0,f.useCallback)(e=>{s.current=e,i(e),g(e)},[i,g]),y=(0,f.useCallback)(e=>{var l;let o=null==(l=s.current)?void 0:l.ownerDocument;o&&o.dispatchEvent(new CustomEvent(ek,{detail:{active:e,modelUid:t.uid}}))},[t.uid]),w=(0,f.useCallback)(e=>{var l;let o=null==(l=s.current)?void 0:l.ownerDocument;o&&o.dispatchEvent(new CustomEvent(eC,{detail:{modelUid:t.uid,point:e.point}}))},[t.uid]),S=(0,f.useCallback)(()=>{var e;null==(e=u.current)||e.call(u),u.current=null},[]),M=(0,f.useCallback)(()=>{let e=p.current||c.current;e!==m.current&&(m.current=e,y(e))},[y]),F=(0,f.useCallback)(()=>{p.current=!1,S(),M()},[S,M]),A=(0,f.useCallback)(()=>{var e;let t=null==(e=s.current)?void 0:e.ownerDocument,l=null==t?void 0:t.defaultView;if(!t)return;S();let o=()=>{F()},n=e=>{"Escape"===e.key&&F()};t.addEventListener("pointerup",o,!0),t.addEventListener("pointercancel",o,!0),t.addEventListener("keydown",n,!0),null==l||l.addEventListener("blur",o),u.current=()=>{t.removeEventListener("pointerup",o,!0),t.removeEventListener("pointercancel",o,!0),t.removeEventListener("keydown",n,!0),null==l||l.removeEventListener("blur",o)}},[S,F]);return(0,f.useEffect)(()=>{g(s.current)},[g]),(0,f.useEffect)(()=>{c.current=n,M()},[n,M]),(0,f.useEffect)(()=>()=>{m.current&&y(!1),p.current=!1,c.current=!1,m.current=!1,S()},[S,y]),(0,h.jsx)("span",{ref:v,...r,...o,onPointerDownCapture:e=>{0===e.button&&(w({point:{x:e.clientX,y:e.clientY}}),p.current=!0,M(),A())},style:{cursor:"grab"},children:l})},e_=e=>{let{model:t,children:l}=e,{setNodeRef:o,isOver:n,active:r}=(0,x.zM)({id:t.uid}),i=(null==r?void 0:r.id)===t.uid;return(0,h.jsxs)("div",{ref:o,style:{position:"relative",opacity:i?.3:1,outline:i?"2px solid var(--colorBorderSettingsHover)":"none",borderRadius:i?t.context.themeToken.borderRadiusLG:"none"},children:[l,(0,h.jsx)("div",{style:{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:n?"var(--colorBgSettingsHover)":"transparent",pointerEvents:"none"}})]})},eR=e=>{let{persist:t=!0,children:l,onDragStart:o,onDragEnd:n,onDragCancel:r,...i}=e,[a,s]=(0,f.useState)(null),[d,u]=(0,f.useState)(null),p=(0,c.uf)();(0,f.useEffect)(()=>{if("u"<typeof document)return;let e=e=>{var t;u((null==(t=e.detail)?void 0:t.point)||null)};return document.addEventListener(eC,e),()=>{document.removeEventListener(eC,e)}},[]);let m=(0,f.useCallback)(e=>{let{active:t,activeNodeRect:l,transform:o}=e;return ej({activeId:a,active:t,transform:o,activeNodeRect:l,dragAnchorPoint:d})},[a,d]);return(0,h.jsxs)(x.Mp,{...i,onDragStart:e=>{s(e.active.id),null==o||o(e)},onDragEnd:e=>{s(null),u(null),n?n(e):e.over&&p.moveModel(e.active.id,e.over.id,{persist:t})},onDragCancel:e=>{s(null),u(null),null==r||r(e)},...i,children:[l,"u">typeof document?(0,w.createPortal)((0,h.jsx)(x.Hd,{dropAnimation:null,modifiers:[m],zIndex:2e3,style:{pointerEvents:"none"},children:a&&(0,h.jsx)("span",{"data-testid":"flow-drag-preview",style:{display:"inline-flex",alignItems:"center",whiteSpace:"nowrap",background:"#fff",border:"1px solid #1890ff",borderRadius:4,padding:"4px 12px",color:"#1890ff",pointerEvents:"none",boxShadow:"0 2px 8px rgba(0,0,0,0.15)"},children:p.translate("Dragging")})}),document.body):null]})};var eT=l(47665),eD=l(84359),eN=l(92275),eO=l(97019);let{Paragraph:e$,Text:eB}=eD.A,eq=e=>{var t;let{error:l,resetErrorBoundary:o}=e,[r,i]=(0,f.useState)(!1),a=(0,eO.PZ)(),s=(0,n.lW)(a),d=async()=>{i(!0);try{let e={message:l.message,stack:l.stack,modelInfo:a?{uid:a.uid,className:a.constructor.name,props:a.props,stepParams:a.stepParams}:null,timestamp:new Date().toISOString()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),console.log("Error information copied to clipboard")}catch(e){console.error("Failed to copy error information:",e)}i(!1)},u=null==a||null==(t=a.context)?void 0:t.api,c=async()=>{if(!u)return void console.error("API client not available");i(!0);try{let e=a.context.api,t={pathname:window.location.pathname,search:window.location.search,hash:window.location.hash,href:window.location.href},o=await e.request({url:"logger:collect",method:"post",responseType:"blob",data:{error:{message:l.message,stack:l.stack},location:t,modelInfo:a?{uid:a.uid,className:a.constructor.name,props:a.props,stepParams:a.stepParams}:null}}),n=window.URL.createObjectURL(new Blob([o.data],{type:"application/gzip"})),r=document.createElement("a");r.setAttribute("href",n),r.setAttribute("download","logs.tar.gz"),r.click(),r.remove(),window.URL.revokeObjectURL(n)}catch(e){console.error("Failed to download logs:",e)}i(!1)},p=(0,h.jsxs)("span",{children:[s("This is likely a NocoBase internals bug. Please open an issue at")," ",(0,h.jsx)("a",{href:"https://github.com/nocobase/nocobase/issues",target:"_blank",rel:"noopener noreferrer",children:s("here")}),a&&(0,h.jsxs)("div",{style:{marginTop:"8px",fontSize:"12px",color:"#999"},children:["Model: ",a.constructor.name," (uid: ",a.uid,")"]})]});return(0,h.jsx)("div",{style:{backgroundColor:"white"},children:(0,h.jsx)(eN.Ay,{style:{maxWidth:"60vw",margin:"auto"},status:"error",title:s("Render failed"),subTitle:p,extra:[(0,h.jsx)(m.Ay,{type:"primary",href:"https://github.com/nocobase/nocobase/issues",target:"_blank",children:s("Feedback")},"feedback"),u&&(0,h.jsx)(m.Ay,{loading:r,onClick:c,children:s("Download logs")},"log"),(0,h.jsx)(m.Ay,{loading:r,onClick:d,children:s("Copy error info")},"copy"),o&&(0,h.jsx)(m.Ay,{danger:!0,onClick:o,children:s("Try again")},"retry")].filter(Boolean),children:(0,h.jsx)(e$,{copyable:{text:l.stack},children:(0,h.jsx)(eB,{type:"danger",style:{whiteSpace:"pre-line",textAlign:"center"},children:l.stack})})})})},eL=e=>{let{error:t,resetErrorBoundary:l}=e,[o,n]=(0,f.useState)(!1);try{return(0,h.jsx)(eq,{error:t,resetErrorBoundary:l})}catch{let e=async()=>{n(!0);try{let e={message:t.message,stack:t.stack,timestamp:new Date().toISOString()};await navigator.clipboard.writeText(JSON.stringify(e,null,2)),console.log("Error information copied to clipboard")}catch(e){console.error("Failed to copy error information:",e)}n(!1)},r=(0,h.jsxs)("span",{children:["This is likely a NocoBase internals bug. Please open an issue at ",(0,h.jsx)("a",{href:"https://github.com/nocobase/nocobase/issues",target:"_blank",rel:"noopener noreferrer",children:"here"})]});return(0,h.jsx)("div",{style:{backgroundColor:"white"},children:(0,h.jsx)(eN.Ay,{style:{maxWidth:"60vw",margin:"auto"},status:"error",title:"Render failed",subTitle:r,extra:[(0,h.jsx)(m.Ay,{type:"primary",href:"https://github.com/nocobase/nocobase/issues",target:"_blank",children:"Feedback"},"feedback"),(0,h.jsx)(m.Ay,{loading:o,onClick:e,children:"Copy error info"},"copy"),l&&(0,h.jsx)(m.Ay,{danger:!0,onClick:l,children:"Try again"},"retry")].filter(Boolean),children:(0,h.jsx)(e$,{copyable:{text:t.stack},children:(0,h.jsx)(eB,{type:"danger",style:{whiteSpace:"pre-line",textAlign:"center"},children:t.stack})})})})}},eV=e=>{let{error:t,resetErrorBoundary:l,children:o}=e,[n,r]=(0,f.useState)(!1),i=(0,h.jsx)(e$,{style:{display:"flex",marginBottom:0},copyable:{text:t.message},children:(0,h.jsxs)(eB,{type:"danger",style:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",display:"inline-block",maxWidth:"200px"},children:["Error: ",t.message]})});return(0,h.jsxs)(h.Fragment,{children:[(0,h.jsx)("div",{onMouseOver:()=>r(!0),children:o||i}),n&&(0,h.jsx)("div",{style:{position:"fixed",top:0,left:0,right:0,bottom:0,backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:1e4},onClick:()=>r(!1),children:(0,h.jsxs)("div",{style:{backgroundColor:"#fff",borderRadius:"8px",padding:"24px",maxWidth:"60vw",maxHeight:"80vh",overflow:"auto",position:"relative"},onClick:e=>e.stopPropagation(),children:[(0,h.jsx)("button",{style:{position:"absolute",top:"8px",right:"12px",background:"none",border:"none",fontSize:"18px",cursor:"pointer",color:"#999"},onClick:()=>r(!1),children:"\xd7"}),(0,h.jsx)(eL,{error:t,resetErrorBoundary:l})]})})]})};eL.Modal=eV;var ez=l(92034),eK=l(49655),eU=l(53619),eW=l(53138),eH=l(35710),eY=l(18182),eG=l(40919),eJ=l(42443),eX=l(76511),eQ=l(29007),eZ=l(23183);let e0=e=>"uid"in e&&"modelClassName"in e&&!!e.uid&&!!e.modelClassName,e1=e=>e0(e)?(0,h.jsx)(e4,{...e}):(0,h.jsx)(e2,{...e}),e2=(0,p.PA)(e=>{let{model:t,children:l,enabled:o=!0,position:r="right",showDeleteButton:i=!0}=e,a=(0,n.lW)(t),{token:s}=eH.A.useToken(),d=(null==s?void 0:s.colorTextTertiary)||(null==s?void 0:s.colorTextDescription)||(null==s?void 0:s.colorTextSecondary),[u,c]=(0,f.useState)([]),p=(0,f.useCallback)(e=>{let[t,l]=e.split(":");return!!t&&!!l&&u.some(e=>{let{flow:o,steps:n}=e;return o.key===t&&n.some(e=>e.stepKey===l&&!!e.disabled)})},[u]),m=(0,f.useCallback)(e=>{let{key:l}=e;if("delete"===l)eY.A.confirm({title:a("Confirm delete"),icon:(0,h.jsx)(ez.A,{}),content:a("Are you sure you want to delete this item? This action cannot be undone."),okText:a("Confirm Delete"),okType:"danger",cancelText:a("Cancel"),zIndex:999999,onOk(){try{t.dispatchEvent("remove")}catch(e){console.error(a("Delete operation failed"),":",e),eY.A.error({title:a("Delete failed"),content:a("Delete operation failed, please check the console for details.")})}}});else{if(p(l))return;let[e,r]=l.split(":");try{var o;let l=t.getFlow(e),i=null==l||null==(o=l.steps)?void 0:o[r];if(!l||!i)return void console.error(`Flow ${e} or step ${r} not found`);let a=new eQ.W5(t,e,"settings");(0,n.wx)(a,l.steps,t,e),a.defineProperty("currentStep",{value:i}),(0,eZ.openStepSettingsDialog)({model:t,flowKey:e,stepKey:r,ctx:a})}catch(e){console.log("配置弹窗已取消或出错:",e)}}},[p,t]);if(!t)return(0,h.jsx)(eG.A,{message:"提供的模型无效",type:"error"});if(!o||!l)return(0,h.jsx)(h.Fragment,{children:l});let g=(0,f.useCallback)(async()=>{try{let e=t.getFlows(),l=Array.from(e.values());return(await Promise.all(l.map(async e=>{let l=await Promise.all(Object.entries(e.steps).map(async l=>{let[o,r]=l,i=r;if(await (0,n._3)(t,e,i))return null;let a=await (0,n.XM)(t,e,i),s=i.uiSchema||{},d={};if(i.use){var u;let e=null==(u=t.getAction)?void 0:u.call(t,i.use);e&&e.uiSchema&&(d=e.uiSchema)}let c={...d};return(Object.entries(s).forEach(e=>{let[t,l]=e;c[t]?c[t]={...c[t],...l}:c[t]=l}),0===Object.keys(c).length)?null:{stepKey:o,step:i,uiSchema:c,title:i.title||o,disabled:a.disabled,disabledReason:a.reason}})).then(e=>e.filter(Boolean));return l.length>0?{flow:e,steps:l}:null}))).filter(Boolean)}catch(e){return console.warn("[FlowsContextMenu] 获取可配置flows失败:",e),[]}},[t]);if((0,f.useEffect)(()=>{let e=!0;return(async()=>{let t=await g();e&&c(t)})(),()=>{e=!1}},[g]),0===u.length&&!i)return(0,h.jsx)(h.Fragment,{children:l});let v=[];return u.length>0&&u.forEach(e=>{let{flow:t,steps:l}=e;v.push({key:`flow-group-${t.key}`,label:t.title||t.key,type:"group"}),l.forEach(e=>{v.push({key:`${t.key}:${e.stepKey}`,icon:(0,h.jsx)(eK.A,{}),label:e.disabled?(0,h.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[e.title,(0,h.jsx)(eJ.A,{title:e.disabledReason,placement:"right",destroyTooltipOnHide:!0,children:(0,h.jsx)(eU.A,{style:{color:d}})})]}):e.title,disabled:!!e.disabled})})}),i&&(u.length>0&&v.push({type:"divider"}),v.push({key:"delete",icon:(0,h.jsx)(eW.A,{}),label:"删除"})),(0,h.jsx)(h.Fragment,{children:(0,h.jsx)(eX.A,{menu:{items:v,onClick:m},trigger:["contextMenu"],placement:"left"===r?"bottomLeft":"bottomRight",children:(0,h.jsx)("div",{style:{display:"inline-block",width:"100%"},children:l})})})}),e4=(0,p.PA)(e=>{let{uid:t,modelClassName:l,children:o,enabled:n=!0,position:r="right",showDeleteButton:i=!0}=e,a=(0,d.fh)(t,l);return a?(0,h.jsx)(e2,{model:a,enabled:n,position:r,showDeleteButton:i,children:o}):(0,h.jsx)(eG.A,{message:`未找到ID为 ${t} 的模型`,type:"error"})});var e5=l(84626),e8=l(22803);let e3="#nocobase-app-container",e6=".ant-menu-submenu-popup",e9=".ant-drawer-content-wrapper",e7=".ant-drawer-content",te=".ant-drawer-root",tt=".ant-modal",tl=".ant-modal-wrap",to=".ant-modal-root",tn={top:0,left:0,width:0,height:0},tr=(e,t)=>null==e?void 0:e.closest(t),ti=e=>({mountElement:e,positioningElement:e,positioningMode:"absolute"}),ta=[e=>tr(e,e6),e=>tr(e,e9),e=>tr(e,tl),e=>tr(e,tt),e=>{let t=tr(e,e7);return t?tr(t,e9)||t:null},e=>tr(e,te),e=>tr(e,to)],ts=e=>{for(let t of ta){let l=t(e);if(l)return ti(l)}return null},td=e=>{if("u"<typeof document)return null;let t=ts(e);if(t)return t;let l=document.querySelector(e3);return l?ti(l):{mountElement:document.body,positioningElement:document.body,positioningMode:"fixed"}},tu=e=>{if("number"==typeof e&&Number.isFinite(e))return e;if("string"==typeof e){let t=e.trim();if(/^-?\d+(\.\d+)?(px)?$/.test(t))return Number.parseFloat(t)}return 0},tc=e=>({top:tu(null==e?void 0:e.top),left:tu(null==e?void 0:e.left),right:tu(null==e?void 0:e.right),bottom:tu(null==e?void 0:e.bottom)}),tp=(e,t)=>{if(!t||"absolute"!==t.positioningMode)return(null==t?void 0:t.positioningElement)||null;let l=null==e?void 0:e.offsetParent;return l instanceof HTMLElement&&l!==document.body&&l!==document.documentElement?l:t.positioningElement},th=(e,t,l,o)=>{let n;if(!e)return tn;let r=tc(l),i=e.getBoundingClientRect();if(t&&"fixed"!==t.positioningMode){let e=tp(o||null,t),l=(null==e?void 0:e.getBoundingClientRect())||t.positioningElement.getBoundingClientRect(),r=(null==e?void 0:e.scrollTop)??t.positioningElement.scrollTop,a=(null==e?void 0:e.scrollLeft)??t.positioningElement.scrollLeft;n={top:i.top-l.top+r,left:i.left-l.left+a,width:i.width,height:i.height}}else n={top:i.top,left:i.left,width:i.width,height:i.height};return{top:n.top+r.top,left:n.left+r.left,width:Math.max(0,n.width-r.left-r.right),height:Math.max(0,n.height-r.top-r.bottom)}},tm=e=>{if(!e)return;let t={...e};return delete t.top,delete t.left,delete t.right,delete t.bottom,t},tf=e=>{let{active:t,containerRef:l,toolbarContainerRef:o,toolbarStyle:n}=e,[r,i]=(0,f.useState)(tn),[a,s]=(0,f.useState)(null),d=(0,f.useRef)(null),u=(0,f.useRef)(null),c=(0,f.useCallback)(()=>{let e=l.current;if(!e)return;let t=td(e);d.current=t,s(e=>t?(null==e?void 0:e.mountElement)===t.mountElement&&(null==e?void 0:e.positioningMode)===t.positioningMode?e:{mountElement:t.mountElement,positioningMode:t.positioningMode}:null===e?e:null);let r=th(e,t,n,o.current);i(e=>e.top===r.top&&e.left===r.left&&e.width===r.width&&e.height===r.height?e:r)},[l,o,n]),p=(0,f.useCallback)(()=>{null===u.current&&(u.current=window.requestAnimationFrame(()=>{u.current=null,c()}))},[c]),h=(0,f.useCallback)(e=>{var t,o,n,r,i;let a=(null==e||null==(t=e.ownerDocument)?void 0:t.body)||(null==(n=l.current)||null==(o=n.ownerDocument)?void 0:o.body)||("u">typeof document?document.body:null);return(null==(r=d.current)?void 0:r.mountElement)||(null==(i=td(e||l.current))?void 0:i.mountElement)||a},[l]);return(0,f.useEffect)(()=>{var e,o;if(!t)return;c();let n=()=>{p()},r=l.current,i=null==(e=d.current)?void 0:e.mountElement,a=null==(o=d.current)?void 0:o.positioningElement,s="u">typeof ResizeObserver&&r?new ResizeObserver(()=>{p()}):null;return r&&(null==s||s.observe(r)),i&&i!==r&&(null==s||s.observe(i)),a&&a!==r&&a!==i&&(null==s||s.observe(a)),window.addEventListener("resize",n),window.addEventListener("scroll",n,!0),()=>{null==s||s.disconnect(),window.removeEventListener("resize",n),window.removeEventListener("scroll",n,!0)}},[t,l,p,c]),(0,f.useEffect)(()=>()=>{null!==u.current&&window.cancelAnimationFrame(u.current),d.current=null},[]),{portalRect:r,portalRenderSnapshot:a,getPopupContainer:h,updatePortalRect:c,schedulePortalRectUpdate:p}},tg=180,tv="nb-float-menu-child-activity",ty=(e,t)=>e instanceof Node&&!!(null==t?void 0:t.contains(e)),tb=e=>{var t;return e instanceof Element&&(null==(t=e.closest(".nb-toolbar-container[data-model-uid]"))?void 0:t.getAttribute("data-model-uid"))||null},tx=(e,t,l)=>{let o=tb(e);return!!t&&!!o&&o!==l&&Array.from(t.querySelectorAll('[data-has-float-menu="true"][data-float-menu-model-uid]')).some(e=>e!==t&&e.getAttribute("data-float-menu-model-uid")===o)},tw=e=>{let{modelUid:t,containerRef:l,toolbarContainerRef:o,updatePortalRect:n,schedulePortalRectUpdate:r}=e,[i,a]=(0,f.useState)(!1),[s,d]=(0,f.useState)(!1),[u,c]=(0,f.useState)(!1),[p,h]=(0,f.useState)(!1),[m,g]=(0,f.useState)(!1),[v,y]=(0,f.useState)(!1),[b,x]=(0,f.useState)(!1),[w,S]=(0,f.useState)([]),M=(0,f.useRef)(null),F=(0,f.useRef)(!1),A=(0,f.useRef)(!1),k=(0,f.useRef)(!1),C=(0,f.useRef)(!1),P=(0,f.useRef)(!1),j=(0,f.useRef)(!1),I=(0,f.useCallback)(e=>{A.current=e,d(e)},[]),E=(0,f.useCallback)(e=>{k.current=e,c(e)},[]),_=(0,f.useCallback)(e=>{C.current=e,h(e)},[]),R=(0,f.useCallback)(e=>{P.current=e,g(e)},[]),T=(0,f.useCallback)(e=>{j.current=e,y(e)},[]),D=w.length>0,N=!i&&!D&&(s||u||p||m||v),O=N||v||p||m,$=s||u||p||m||v||b,B=(0,f.useCallback)(()=>{null!==M.current&&(window.clearTimeout(M.current),M.current=null),x(!1)},[]),q=(0,f.useCallback)(()=>{B(),x(!0),M.current=window.setTimeout(()=>{M.current=null,x(!1),C.current||P.current||j.current||(I(!1),E(!1))},tg)},[B,I,E]),L=(0,f.useCallback)(e=>{T(e)},[T]);(0,f.useEffect)(()=>{let e=l.current;if(!e)return;let t=t=>{var l;let o=t;if(!(o.target instanceof HTMLElement)||o.target===e)return;let n=null==(l=o.detail)?void 0:l.modelUid;n&&S(e=>{var t;return(null==(t=o.detail)?void 0:t.active)?e.includes(n)?e:[...e,n]:e.filter(e=>e!==n)})};return e.addEventListener(tv,t),()=>{e.removeEventListener(tv,t)}},[l]),(0,f.useEffect)(()=>{let e=l.current,o=null==e?void 0:e.ownerDocument;if(!o)return;let n=e=>{var l,o;let n=e;if((null==(l=n.detail)?void 0:l.modelUid)===t){if(null==(o=n.detail)?void 0:o.active){B(),R(!0);return}if(R(!1),A.current||k.current||j.current)return void B();q()}};return o.addEventListener(ek,n),()=>{o.removeEventListener(ek,n)}},[B,l,t,q,R]),(0,f.useEffect)(()=>{let e=l.current;e&&F.current!==$&&(F.current=$,e.dispatchEvent(new CustomEvent(tv,{bubbles:!0,detail:{active:$,modelUid:t}})))},[l,$,t]),(0,f.useEffect)(()=>{let e=l.current;return()=>{e&&F.current&&(e.dispatchEvent(new CustomEvent(tv,{bubbles:!0,detail:{active:!1,modelUid:t}})),F.current=!1),B()}},[B,l,t]),(0,f.useEffect)(()=>{v&&(B(),n())},[B,v,n]);let V=(0,f.useCallback)(e=>{let t=e.target.closest("[data-has-float-menu]");t&&t!==l.current||(B(),I(!0)),a(!!t&&t!==l.current)},[B,l,I]),z=(0,f.useCallback)(()=>{B(),a(!1),n(),I(!0)},[B,I,n]),K=(0,f.useCallback)(e=>{if(j.current)return void I(!1);if(ty(e.relatedTarget,o.current)){B(),I(!1),E(!0);return}if(tx(e.relatedTarget,l.current,t)){B(),a(!1),I(!0);return}q()},[B,l,t,q,I,E,o]),U=(0,f.useCallback)(()=>{B(),n(),I(!1),E(!0)},[B,I,E,n]),W=(0,f.useCallback)(e=>{if(j.current||P.current){B(),E(!1);return}if(E(!1),ty(e.relatedTarget,l.current)){B(),I(!0);return}q()},[B,l,q,I,E]);return{isToolbarVisible:N,shouldRenderToolbar:O,handleSettingsMenuOpenChange:L,handleChildHover:V,handleHostMouseEnter:z,handleHostMouseLeave:K,handleToolbarMouseEnter:U,handleToolbarMouseLeave:W,handleResizeDragStart:(0,f.useCallback)(()=>{n(),_(!0),r()},[r,_,n]),handleResizeDragEnd:(0,f.useCallback)(()=>{_(!1),r()},[r,_])}},tS=19,tM=1e3,tF=e=>{if(!e)return"";let t=(null==e?void 0:e.isFork)?null==e?void 0:e.forkId:void 0;return null==t||""===t?String(e.uid||""):`${String(e.uid||"")}::${String(t)}`},tA=(0,e8.AH)`
1035
1035
  position: relative;
1036
1036
 
1037
1037
  &.has-button-child {
@@ -1222,7 +1222,7 @@ Please run: await ctx.importAsync("${l}") to ensure ctx.render uses a matching R
1222
1222
  max-height: ${m}px !important;
1223
1223
  overflow-y: auto !important;
1224
1224
  }
1225
- `,[m]),T=u&&0===s.length?[{key:"root-loading",label:(0,h.jsx)(lj.A,{size:"small"}),disabled:!0}]:_(s);return(0,h.jsx)(eX.A,{...l,open:n,destroyPopupOnHide:!0,overlayClassName:R,placement:"bottomLeft",menu:{...S,items:T,onClick:()=>{},style:{maxHeight:m,overflowY:"auto",...null==S?void 0:S.style}},onOpenChange:e=>{!e&&C||!e&&I()||r(e)},children:l.children})};var lV=l(41594);let lz={display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",padding:"0"},lK={marginLeft:8,pointerEvents:"none"},lU=e=>e?!!e.use||(console.warn('createModelOptions must specify "use" property:',e),!1):(console.warn("No createModelOptions found for item"),!1),lW=async(e,t)=>{if(console.error("Failed to add sub model:",e),t&&"function"==typeof t.destroy)try{await t.destroy()}catch(e){console.error("Failed to destroy model after creation error:",e)}},lH=async(e,t)=>{let l=e.createModelOptions;return"function"==typeof l&&(l=await l(t)),{use:e.useModel,...l}};function lY(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{addDividers:l=!1}=t,o=e.filter(e=>null!=e);return 0===o.length?[]:1===o.length?o[0]:async e=>{let t=[];for(let n=0;n<o.length;n++){let r=o[n],i=Array.isArray(r)?r:await r(e);n>0&&l&&i.length>0&&t.push({key:`divider-${n}`,type:"divider"}),t.push(...i)}return t}}let lG=(e,t)=>(0,h.jsxs)("div",{style:lz,children:[(0,h.jsx)("span",{children:e}),(0,h.jsx)(ls.A,{size:"small",checked:t,style:lK})]}),lJ=e=>{let t=e=>{for(let l of e)if(l){if("function"==typeof l.hide||!l.children&&(l.toggleDetector||l.toggleable))return!0;if(Array.isArray(l.children)){if(t(l.children))return!0}else if("function"==typeof l.children)return!0}return!1};return t(e)},lX=async(e,t)=>{let l=e.hide;return!!l&&("function"==typeof l?!!await l(t):!!l)},lQ=async(e,t)=>{for(let l of e)if(l){try{if(await lX(l,t))continue}catch(e){console.error("[NocoBase]: Failed to resolve item.hide:",e)}if(Array.isArray(l.children)){if(await lQ(l.children,t))return!0;if("group"===l.type||!l.createModelOptions)continue;return!0}return l.children,!0}return!1},lZ=async(e,t,l,o)=>{if(0===e.length)return[];let n=await Promise.all(e.map(async e=>{if(!e)return!0;try{return await lX(e,t.context)}catch(e){return console.error("[NocoBase]: Failed to resolve item.hide:",e),!1}})),r=e.filter((e,t)=>!!e&&!n[t]);if(0===r.length)return[];let i=[];for(let e=0;e<r.length;e++){let o=r[e],n=o.useModel;if(!n&&o.toggleable)try{let e=await lH(o,t.context);(n=null==e?void 0:e.use)&&(o.useModel=n)}catch(e){console.error("[NocoBase]: Failed to resolve useModel for toggleable item:",e)}o.toggleable&&n&&(o.toggleDetector=e=>{let t=e.engine.getModelClass(n);return!!e.model.findSubModel(l,e=>!0===o.toggleable?e.constructor===t:"function"==typeof o.toggleable?o.toggleable(e):void 0)},o.customRemove=async(e,t)=>{let o=e.engine.getModelClass(n),r=e.model.findSubModel(l,e=>!0===t.toggleable?e.constructor===o:"function"==typeof t.toggleable?t.toggleable(e):void 0);r&&await r.destroy()}),o.toggleDetector&&!o.children&&i.push({item:o,index:e})}let a=await Promise.allSettled(i.map(e=>{let{item:l}=e;return l.toggleDetector?l.toggleDetector(t.context):Promise.resolve(!1)})),s=new Map;i.forEach((e,t)=>{let{index:l}=e,o=a[t];s.set(l,"fulfilled"===o.status&&o.value)});let d=r.map(async(e,n)=>{let r={key:e.key,label:e.label,type:e.type,disabled:e.disabled,icon:e.icon,searchable:e.searchable,searchPlaceholder:e.searchPlaceholder,keepDropdownOpen:e.keepDropdownOpen,originalItem:e};if(e.children)if("function"==typeof e.children)r.children=async()=>{let n=e.children;return lZ(await n(t.context),t,l,o)};else{let n=e.children;if(lJ(n)){if(await lQ(n,t.context))r.children=async()=>lZ(n,t,l,o);else if("group"===e.type||!e.createModelOptions)return null}else r.children=await lZ(n,t,l,o)}if(Array.isArray(r.children)&&0===r.children.length&&("group"===e.type||!e.createModelOptions))return null;if(e.toggleDetector&&!e.children){let l=s.get(n)||!1;r.label=lG(t.translate(e.label)||"",l),r.isToggled=l,r.keepDropdownOpen=e.keepDropdownOpen??!0}return r});return(await Promise.all(d)).filter(e=>!!e)},l0=(e,t,l,o)=>{if("function"==typeof e)return async()=>lZ(await e(t.context),t,l,o);if(lJ(e))return()=>lZ(e,t,l,o);{let n=null;return async()=>(n||(n=await lZ(e,t,l,o)),n)}},l1=e=>async(t,l)=>{let{model:o,subModelKey:n,subModelType:r}=e;if("array"===r){let r=o.subModels[n];if(Array.isArray(r)){let o=await lH(t,l.context),n=r.find(t=>{if(null==o?void 0:o.use){try{let l=e.model.flowEngine.getModelClass(o.use);if(l&&t instanceof l)return!0}catch(e){}return t.uid.includes(o.use)}return!1});if(n){await n.destroy();let e=r.indexOf(n);return e>-1&&r.splice(e,1),n}}}else{let e=o.subModels[n];if(e)return await e.destroy(),o.subModels[n]=void 0,e}return null},l2=v(function(e){let{model:t,items:l,subModelBaseClass:o,subModelBaseClasses:n,subModelType:r="array",subModelKey:i,afterSubModelInit:a,afterSubModelAdd:s,afterSubModelRemove:d,children:u="Add",keepDropdownOpen:c=!1}=e,p=(0,f.useMemo)(()=>{try{let e=t&&t.uid||"unknown-model";return`asmb:${e}:${i}:${r}`}catch(e){return`asmb:unknown:${i}:${r}`}},[t,i,r]),[m,g]=f.useState(0),[v,y]=f.useState(void 0),b=(0,f.useMemo)(()=>{let e=[];return l&&e.push(l),o&&e.push((0,lV.z5)(o)),n&&n.length>0&&e.push((0,lV.Qp)(n)),lY(e,{addDividers:!0})},[l,o,n]),x=(0,f.useMemo)(()=>l1({model:t,subModelKey:i,subModelType:r}),[t,i,r]);f.useEffect(()=>{var e,l,o;let n=()=>{g(e=>e+1)};return null==(e=t.emitter)||e.on("onSubModelAdded",n),null==(l=t.emitter)||l.on("onSubModelRemoved",n),null==(o=t.emitter)||o.on("onSubModelReplaced",n),()=>{var e,l,o;null==(e=t.emitter)||e.off("onSubModelAdded",n),null==(l=t.emitter)||l.off("onSubModelRemoved",n),null==(o=t.emitter)||o.off("onSubModelReplaced",n)}},[t]);let w=async e=>{let l,o=e.originalItem||e,n=o.originalItem||o,u=o.isToggled,c=null==e?void 0:e.key;if(c&&y([c,...(null==n?void 0:n.refreshTargets)||[]]),n.toggleDetector&&u){try{let e=null;try{let l=t.flowEngine.getModelClass(n.useModel);l&&(e=t.findSubModel(i,e=>e.constructor===l))}catch(e){}n.customRemove?await n.customRemove(t.context,n):e=await x(n,t)||e,d&&e&&await d(e),g(e=>e+1)}catch(e){console.error("Failed to remove sub model:",e)}return}let p=await lH(n,t.context);if(lU(p))try{(l=await t.flowEngine.createModelAsync({...A().cloneDeep(p),parentId:t.uid,subKey:i,subType:r})).isNew=!0,l.setParent(t);let e=async()=>{try{a&&await a(l),"array"===r?t.addSubModel(i,l):t.setSubModel(i,l),s&&await s(l),await l.afterAddAsSubModel(),await l.save(),l.isNew=!1,g(e=>e+1)}catch(e){await lW(e,l)}};await l.openFlowSettings({preset:!0,onSaved:async()=>{await e()}})||await e()}catch(e){await lW(e,l)}},S=(0,f.useMemo)(()=>l0(b,t,i,r),[b,t,i,r]);return(0,f.useEffect)(()=>{let e=()=>{g(e=>e+1)};return t.emitter.on("onSubModelAdded",e),t.emitter.on("onSubModelRemoved",e),()=>{t.emitter.off("onSubModelAdded",e),t.emitter.off("onSubModelRemoved",e)}},[t]),(0,h.jsx)(lL,{menu:{items:S,onClick:w,keepDropdownOpen:c,persistKey:p,stateVersion:m,refreshKeys:v},children:u})});var l4=l(85196),l5=l(7259);let l8=e=>{let{value:t,onClear:l,className:o,style:n,metaTreeNode:r,metaTree:i}=e,{resolvedMetaTree:a}=t2(i),s=(0,g.$K)(),{data:d}=(0,l5.A)(async()=>{let e=async e=>{if(!e||!Array.isArray(e)||!Array.isArray(a))return null;let t=new Set((a||[]).map(e=>String(null==e?void 0:e.name))).has(String(e[0]))?e:e.slice(1);if(!t.length)return"";let l=a,o=[],n=0;for(let e=0;e<t.length&&l;e++){let r=String(t[e]),i=l.find(e=>String(null==e?void 0:e.name)===r);if(!i)break;if(o.push(String(i.title??i.name??r)),n=e+1,e<t.length-1)if(Array.isArray(i.children))l=i.children;else if("function"==typeof i.children)try{let e=await i.children();i.children=e,l=e}catch{l=void 0}else l=void 0}if(0===n)return null;let r=o.map(s.t).join("/");if(n<t.length){let e=t.slice(n).join("/");r=e?`${r}/${e}`:r}return r};if(null==r?void 0:r.parentTitles)return[...r.parentTitles,r.title].map(s.t).join("/");if(r){let l=tW(t)||r.paths;return await e(l)??s.t(r.title)??""}if(!t)return String(t);let l=tW(t),o=await e(l);return null!=o?o:Array.isArray(l)?l.join("/"):String(t)},{refreshDeps:[a,t,r]}),{token:u}=eH.A.useToken(),c=(0,e8.AH)`
1225
+ `,[m]),T=u&&0===s.length?[{key:"root-loading",label:(0,h.jsx)(lj.A,{size:"small"}),disabled:!0}]:_(s);return(0,h.jsx)(eX.A,{...l,open:n,destroyPopupOnHide:!0,overlayClassName:R,placement:"bottomLeft",menu:{...S,items:T,onClick:()=>{},style:{maxHeight:m,overflowY:"auto",...null==S?void 0:S.style}},onOpenChange:e=>{!e&&C||!e&&I()||r(e)},children:l.children})};var lV=l(41594);let lz={display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%",padding:"0"},lK={marginLeft:8,pointerEvents:"none"},lU=e=>e?!!e.use||(console.warn('createModelOptions must specify "use" property:',e),!1):(console.warn("No createModelOptions found for item"),!1),lW=async(e,t)=>{if(console.error("Failed to add sub model:",e),t&&"function"==typeof t.destroy)try{await t.destroy()}catch(e){console.error("Failed to destroy model after creation error:",e)}},lH=async(e,t)=>{let l=e.createModelOptions;return"function"==typeof l&&(l=await l(t)),{use:e.useModel,...l}};function lY(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{addDividers:l=!1}=t,o=e.filter(e=>null!=e);return 0===o.length?[]:1===o.length?o[0]:async e=>{let t=[];for(let n=0;n<o.length;n++){let r=o[n],i=Array.isArray(r)?r:await r(e);n>0&&l&&i.length>0&&t.push({key:`divider-${n}`,type:"divider"}),t.push(...i)}return t}}let lG=(e,t)=>(0,h.jsxs)("div",{style:lz,children:[(0,h.jsx)("span",{children:e}),(0,h.jsx)(ls.A,{size:"small",checked:t,style:lK})]}),lJ=e=>{let t=e=>{for(let l of e)if(l){if("function"==typeof l.hide||!l.children&&(l.toggleDetector||l.toggleable))return!0;if(Array.isArray(l.children)){if(t(l.children))return!0}else if("function"==typeof l.children)return!0}return!1};return t(e)},lX=async(e,t)=>{let l=e.hide;return!!l&&("function"==typeof l?!!await l(t):!!l)},lQ=async(e,t)=>{for(let l of e)if(l){try{if(await lX(l,t))continue}catch(e){console.error("[NocoBase]: Failed to resolve item.hide:",e)}if(Array.isArray(l.children)){if(await lQ(l.children,t))return!0;if("group"===l.type||!l.createModelOptions)continue;return!0}return l.children,!0}return!1},lZ=async(e,t,l,o)=>{if(0===e.length)return[];let n=await Promise.all(e.map(async e=>{if(!e)return!0;try{return await lX(e,t.context)}catch(e){return console.error("[NocoBase]: Failed to resolve item.hide:",e),!1}})),r=e.filter((e,t)=>!!e&&!n[t]);if(0===r.length)return[];let i=[];for(let e=0;e<r.length;e++){let o=r[e],n=o.useModel;if(!n&&o.toggleable)try{let e=await lH(o,t.context);(n=null==e?void 0:e.use)&&(o.useModel=n)}catch(e){console.error("[NocoBase]: Failed to resolve useModel for toggleable item:",e)}o.toggleable&&n&&(o.toggleDetector=e=>{let t=e.engine.getModelClass(n);return!!e.model.findSubModel(l,e=>!0===o.toggleable?e.constructor===t:"function"==typeof o.toggleable?o.toggleable(e):void 0)},o.customRemove=async(e,t)=>{let o=e.engine.getModelClass(n),r=e.model.findSubModel(l,e=>!0===t.toggleable?e.constructor===o:"function"==typeof t.toggleable?t.toggleable(e):void 0);r&&await r.destroy()}),o.toggleDetector&&!o.children&&i.push({item:o,index:e})}let a=await Promise.allSettled(i.map(e=>{let{item:l}=e;return l.toggleDetector?l.toggleDetector(t.context):Promise.resolve(!1)})),s=new Map;i.forEach((e,t)=>{let{index:l}=e,o=a[t];s.set(l,"fulfilled"===o.status&&o.value)});let d=r.map(async(e,n)=>{let r={key:e.key,label:e.label,type:e.type,disabled:e.disabled,icon:e.icon,searchable:e.searchable,searchPlaceholder:e.searchPlaceholder,keepDropdownOpen:e.keepDropdownOpen,originalItem:e};if(e.children)if("function"==typeof e.children)r.children=async()=>{let n=e.children;return lZ(await n(t.context),t,l,o)};else{let n=e.children;if(lJ(n)){if(await lQ(n,t.context))r.children=async()=>lZ(n,t,l,o);else if("group"===e.type||!e.createModelOptions)return null}else r.children=await lZ(n,t,l,o)}if(Array.isArray(r.children)&&0===r.children.length&&("group"===e.type||!e.createModelOptions))return null;if(e.toggleDetector&&!e.children){let l=s.get(n)||!1;r.label=lG(t.translate(e.label)||"",l),r.isToggled=l,r.keepDropdownOpen=e.keepDropdownOpen??!0}return r});return(await Promise.all(d)).filter(e=>!!e)},l0=(e,t,l,o)=>{if("function"==typeof e)return async()=>lZ(await e(t.context),t,l,o);if(lJ(e))return()=>lZ(e,t,l,o);{let n=null;return async()=>(n||(n=await lZ(e,t,l,o)),n)}},l1=e=>async(t,l)=>{let{model:o,subModelKey:n,subModelType:r}=e;if("array"===r){let r=o.subModels[n];if(Array.isArray(r)){let o=await lH(t,l.context),n=r.find(t=>{if(null==o?void 0:o.use){try{let l=e.model.flowEngine.getModelClass(o.use);if(l&&t instanceof l)return!0}catch(e){}return t.uid.includes(o.use)}return!1});if(n){await n.destroy();let e=r.indexOf(n);return e>-1&&r.splice(e,1),n}}}else{let e=o.subModels[n];if(e)return await e.destroy(),o.subModels[n]=void 0,e}return null},l2=v(function(e){let{model:t,items:l,subModelBaseClass:o,subModelBaseClasses:n,subModelType:r="array",subModelKey:i,afterSubModelInit:a,afterSubModelAdd:s,afterSubModelRemove:d,children:u="Add",keepDropdownOpen:c=!1}=e,p=(0,f.useMemo)(()=>{try{let e=t&&t.uid||"unknown-model";return`asmb:${e}:${i}:${r}`}catch(e){return`asmb:unknown:${i}:${r}`}},[t,i,r]),[m,g]=f.useState(0),[v,y]=f.useState(void 0),b=(0,f.useMemo)(()=>{let e=[];return l&&e.push(l),o&&e.push((0,lV.z5)(o)),n&&n.length>0&&e.push((0,lV.Qp)(n)),lY(e,{addDividers:!0})},[l,o,n]),x=(0,f.useMemo)(()=>l1({model:t,subModelKey:i,subModelType:r}),[t,i,r]);f.useEffect(()=>{var e,l,o;let n=()=>{g(e=>e+1)};return null==(e=t.emitter)||e.on("onSubModelAdded",n),null==(l=t.emitter)||l.on("onSubModelRemoved",n),null==(o=t.emitter)||o.on("onSubModelReplaced",n),()=>{var e,l,o;null==(e=t.emitter)||e.off("onSubModelAdded",n),null==(l=t.emitter)||l.off("onSubModelRemoved",n),null==(o=t.emitter)||o.off("onSubModelReplaced",n)}},[t]);let w=async e=>{let l,o=e.originalItem||e,n=o.originalItem||o,u=o.isToggled,c=null==e?void 0:e.key;if(c&&y([c,...(null==n?void 0:n.refreshTargets)||[]]),n.toggleDetector&&u){try{let e=null;try{let l=t.flowEngine.getModelClass(n.useModel);l&&(e=t.findSubModel(i,e=>e.constructor===l))}catch(e){}n.customRemove?await n.customRemove(t.context,n):e=await x(n,t)||e,d&&e&&await d(e),g(e=>e+1)}catch(e){console.error("Failed to remove sub model:",e)}return}let p=await lH(n,t.context);if(lU(p))try{(l=await t.flowEngine.createModelAsync({...A().cloneDeep(p),parentId:t.uid,subKey:i,subType:r})).isNew=!0,l.setParent(t);let e=async()=>{try{a&&await a(l),"array"===r?t.addSubModel(i,l):t.setSubModel(i,l),s&&await s(l),await l.afterAddAsSubModel(),await l.save(),l.isNew=!1,g(e=>e+1)}catch(e){await lW(e,l)}};await l.openFlowSettings({preset:!0,onSaved:async()=>{await e()}})||await e()}catch(e){await lW(e,l)}},S=(0,f.useMemo)(()=>l0(b,t,i,r),[b,t,i,r]);return(0,f.useEffect)(()=>{let e=()=>{g(e=>e+1)};return t.emitter.on("onSubModelAdded",e),t.emitter.on("onSubModelRemoved",e),()=>{t.emitter.off("onSubModelAdded",e),t.emitter.off("onSubModelRemoved",e)}},[t]),(0,h.jsx)(lL,{menu:{items:S,onClick:w,keepDropdownOpen:c,persistKey:p,stateVersion:m,refreshKeys:v},children:u})});var l4=l(85196),l5=l(66466);let l8=e=>{let{value:t,onClear:l,className:o,style:n,metaTreeNode:r,metaTree:i}=e,{resolvedMetaTree:a}=t2(i),s=(0,g.$K)(),{data:d}=(0,l5.A)(async()=>{let e=async e=>{if(!e||!Array.isArray(e)||!Array.isArray(a))return null;let t=new Set((a||[]).map(e=>String(null==e?void 0:e.name))).has(String(e[0]))?e:e.slice(1);if(!t.length)return"";let l=a,o=[],n=0;for(let e=0;e<t.length&&l;e++){let r=String(t[e]),i=l.find(e=>String(null==e?void 0:e.name)===r);if(!i)break;if(o.push(String(i.title??i.name??r)),n=e+1,e<t.length-1)if(Array.isArray(i.children))l=i.children;else if("function"==typeof i.children)try{let e=await i.children();i.children=e,l=e}catch{l=void 0}else l=void 0}if(0===n)return null;let r=o.map(s.t).join("/");if(n<t.length){let e=t.slice(n).join("/");r=e?`${r}/${e}`:r}return r};if(null==r?void 0:r.parentTitles)return[...r.parentTitles,r.title].map(s.t).join("/");if(r){let l=tW(t)||r.paths;return await e(l)??s.t(r.title)??""}if(!t)return String(t);let l=tW(t),o=await e(l);return null!=o?o:Array.isArray(l)?l.join("/"):String(t)},{refreshDeps:[a,t,r]}),{token:u}=eH.A.useToken(),c=(0,e8.AH)`
1226
1226
  /* 选择器容器允许收缩并隐藏超出 */
1227
1227
  & .ant-select-selector {
1228
1228
  min-width: 0;
@@ -1275,4 +1275,4 @@ ${r.join("\n")}`:""}function k(e){let t=String((null==e?void 0:e.message)||"");i
1275
1275
  ${i.join("\n")}`:""}function j(e,t){let l=Error(t);l.cause=e;try{let t="string"==typeof(null==e?void 0:e.name)?e.name:"";t&&(l.name=t)}catch(e){}try{let o="string"==typeof(null==e?void 0:e.stack)?e.stack:"";if(o){let e=String(o).split("\n");e.length&&(e[0]=`${l.name}: ${t}`,l.stack=e.join("\n"))}}catch(e){}return l}function I(e){if(!e)return null;let t=u.get(e);if(t)return t;if("function"!=typeof e.createElement)return null;let l=e.Component;if("function"!=typeof l)return null;class n extends l{static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e){try{var t,l,o;let n=null==(t=this.props)?void 0:t.enhanceReactError,r="function"==typeof n?n(e):e,i=String((null==r?void 0:r.message)||"");if(i&&/\[RunJS Hint\]/.test(i)){console.error(i);let e=null==(o=this.props)||null==(l=o.ctx)?void 0:l.logger;e&&"function"==typeof e.error&&e.error(i)}}catch(e){}}componentDidUpdate(e){var t,l;(null==e?void 0:e.resetKey)!==(null==(t=this.props)?void 0:t.resetKey)&&(null==(l=this.state)?void 0:l.error)&&this.setState({error:void 0})}render(){var t,l;let o=null==(t=this.state)?void 0:t.error;if(!o)return this.props.children;let n="";try{let e=null==(l=this.props)?void 0:l.enhanceReactError,t="function"==typeof e?e(o):o;n=String((null==t?void 0:t.message)||t||(null==o?void 0:o.message)||o||"")}catch(e){n=String((null==o?void 0:o.message)||o||"")}let r={boxSizing:"border-box",padding:12,borderRadius:6,border:"1px solid #ffccc7",background:"#fff2f0",color:"#a8071a",fontSize:12,lineHeight:1.5,maxWidth:"100%",overflow:"auto"},i={margin:0,whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace'},a={fontWeight:600,marginBottom:8};return e.createElement("div",{style:r},e.createElement("div",{style:a},"RunJS render error"),e.createElement("pre",{style:i},n))}constructor(...e){super(...e),(0,o._)(this,"state",{})}}return u.set(e,n),n}function E(e){let{ctx:t,vnode:l,enhanceReactError:o,resetKey:n}=e,r=null==t?void 0:t.React,i=I(r);return i?r.createElement(i,{ctx:t,enhanceReactError:o,resetKey:n},l):l}function _(e){var t;let{ctx:l,entry:o,containerEl:n,rootMap:i,unmountContainerRoot:a,enhanceReactError:s,internalReact:d,internalAntd:u}=e;if(!(!(null==(t=l.ReactDOM)?void 0:t.__nbRunjsInternalShim)&&l.React&&l.React!==d&&l.antd&&l.antd!==u&&void 0!==l.antd.ConfigProvider)){if(o.disposeTheme){try{o.disposeTheme()}catch(e){}o.disposeTheme=void 0}return!1}let c=()=>{var e,t,n,r,i,a,s;null==l||null==(t=l.engine)||null==(e=t.context)||e.themeToken;let d=null==l||null==(r=l.engine)||null==(n=r.context)?void 0:n.antdConfig,u=(null==l||null==(s=l.engine)||null==(a=s.context)||null==(i=a.locales)?void 0:i.antd)||(null==d?void 0:d.locale),c=l.antd.ConfigProvider,p=l.antd.App,h={popupMatchSelectWidth:!1,locale:u||{}};d&&"object"==typeof d&&(void 0!==d.direction&&(h.direction=d.direction),"string"==typeof d.prefixCls&&(h.prefixCls=d.prefixCls),"string"==typeof d.iconPrefixCls&&(h.iconPrefixCls=d.iconPrefixCls),"function"==typeof d.getPopupContainer&&(h.getPopupContainer=d.getPopupContainer),d.theme&&"object"==typeof d.theme&&(h.theme=d.theme));let m=o.lastVnode,f=p?l.React.createElement(c,h,l.React.createElement(p,null,m)):l.React.createElement(c,h,m);o.root.render(f)};return o.disposeTheme?c():o.disposeTheme=(0,r.autorun)(()=>{try{if(n&&1===n.nodeType&&"boolean"==typeof n.isConnected&&!n.isConnected&&o.wasConnected)return void queueMicrotask(()=>{i.get(n)===o&&a()});n&&1===n.nodeType&&"boolean"==typeof n.isConnected&&n.isConnected&&(o.wasConnected=!0),c()}catch(e){throw s(e)}}),!0}function R(e){let{ctx:t,entry:l,vnode:o,containerEl:n,rootMap:r,unmountContainerRoot:i,internalReact:a,internalAntd:s}=e,d=e=>{let l=String((null==e?void 0:e.message)||e||"");if(!l||/\[RunJS Hint\]/.test(l))return e;let o=/invalid hook call/i.test(l),n=k(e);if(!o&&!n)return e;let r=A({ctx:t,internalReact:a,internalAntd:s})||P({ctx:t,internalReact:a,internalAntd:s,err:e});return r?j(e,`${l}${r}`):e};try{return l.__nbRunjsRenderSeq=(l.__nbRunjsRenderSeq||0)+1,l.lastVnode=E({ctx:t,vnode:o,enhanceReactError:d,resetKey:l.__nbRunjsRenderSeq}),_({ctx:t,entry:l,containerEl:n,rootMap:r,unmountContainerRoot:i,enhanceReactError:d,internalReact:a,internalAntd:s})||l.root.render(l.lastVnode),l.root}catch(e){throw d(e)}}},44476(e,t,l){l.d(t,{H:()=>d,a:()=>u});var o=l(2543),n=l.n(o),r=l(35846);function i(e){if(!e)return;let t=e.match(/^([^.[]+)/);return null==t?void 0:t[1]}function a(e,t){var l;if(!e||!t)return;let o=e.getField(t);return o||((null==(l=e.getFields)?void 0:l.call(e))||[]).find(e=>e.name===t)}function s(e,t){if(null!=e){if(Array.isArray(t)){if("object"!=typeof e||!e)return;let l={};for(let o of t){let t=e[o];if(null==t)return;l[o]=t}return l}if("string"==typeof e||"number"==typeof e)return e;if("object"==typeof e)return e[t]}}function d(e,t){return l=>{if(!l||!l.includes("."))return!1;let o=i(l);if(!o)return!1;let r=a(e(),o);if(!(null==r?void 0:r.isAssociationField()))return!1;if("function"==typeof t){let e=t();if(e&&"object"==typeof e&&void 0!==n().get(e,l))return!1}return!0}}function u(e,t,l){let o=(0,r.H)(e,t,!0),n=async()=>{let t=await o();return t?{...t,buildVariablesParams:t=>{var o;let n=e(),r=l(t);if(!n||!r||"object"!=typeof r)return{};let i={};for(let e of(null==(o=n.getFields)?void 0:o.call(n))||[]){let t=e.name;if(!t||!e.isAssociationField())continue;let l=e.target,o=e.targetCollection;if(!l||!o)continue;let n=o.filterTargetKey,a=r[t];if(null!=a)if(Array.isArray(a)){let e=a.map(e=>s(e,n)).filter(e=>null!=e);e.length&&(i[t]={collection:l,dataSourceKey:o.dataSourceKey,filterByTk:e})}else{let e=s(a,n);null!=e&&(i[t]={collection:l,dataSourceKey:o.dataSourceKey,filterByTk:e})}}return i}}:null};return n.title=t,n}},35846(e,t,l){l.d(t,{H:()=>d});let o=["belongsTo","hasOne","hasMany","belongsToMany","belongsToArray"],n=["integer","float","double","decimal"];function r(e,t){return!!(e.interface&&(t||e.filterable))}function i(e,t){let l=s(e);if(e.isAssociationField()){let o=e.targetCollection;return o?{type:"object",...l,properties:async()=>{let e={};return o.fields.forEach(l=>{r(l,t)&&(e[l.name]=i(l,t))}),e}}:{type:"object",...l}}return{type:a(e),...l}}function a(e){let t=e.type;if(o.includes(t))return"object";if(n.includes(t))return"number";switch(t){case"boolean":return"boolean";case"json":return"object";case"array":return"array";default:return"string"}}function s(e){return{title:e.title||e.name,interface:e.interface,options:e.options,uiSchema:e.uiSchema||{}}}function d(e,t,l){let o=async()=>{let o="function"==typeof e?e():e;return o?{type:"object",title:t||o.title||o.name,properties:async()=>{let e={};return o.fields.forEach(t=>{r(t,l)&&(e[t.name]=i(t,l))}),e}}:null};return o.title=t,o}},62572(e,t,l){l.d(t,{v:()=>n});var o=l(29007);async function n(e,t){if(null==t||!t.defineProperties&&!t.defineMethods)return e;let l=new o.cB;l.addDelegate(e);let n=l.createProxy(),r=n,i=e,a=t=>{let l=Reflect.get(i,t,i);return"function"==typeof l?l.bind(e):l},s=e=>"defineProperty"===e||"defineMethod"===e||Reflect.has(r,e)||Reflect.has(i,e),d=new Proxy(n,{get:(e,t,o)=>"string"==typeof t?"defineProperty"===t?(e,t)=>l.defineProperty(e,t):"defineMethod"===t?(e,t,o)=>l.defineMethod(e,t,o):Reflect.has(r,t)?Reflect.get(r,t,o):a(t):Reflect.get(r,t,o),set:(e,t,l)=>Reflect.set(i,t,l),has:(e,t)=>s(t),getOwnPropertyDescriptor:(e,t)=>Object.getOwnPropertyDescriptor(r,t)||Object.getOwnPropertyDescriptor(i,t)});if(t)for(let e of Array.isArray(t)?t:[t]){if(!e)continue;let t=e.defineProperties;if(t){let e="function"==typeof t?await t(d):t;if(!e||"object"!=typeof e)throw TypeError("defineProperties must return an object of PropertyOptions");for(let[t,o]of Object.entries(e)){if(!o||"object"!=typeof o)throw TypeError(`defineProperties['${t}'] must be a PropertyOptions object`);l.defineProperty(t,o)}}let o=e.defineMethods;if(o){let e="function"==typeof o?await o(d):o;if(!e||"object"!=typeof e)throw TypeError("defineMethods must return an object of functions");for(let[t,o]of Object.entries(e)){if("function"!=typeof o)throw TypeError(`defineMethods['${t}'] must be a function`);l.defineMethod(t,o)}}}return new Proxy(n,{get:(t,l,o)=>"string"==typeof l?"defineProperty"===l?(t,l)=>e.defineProperty(t,l):"defineMethod"===l?(t,l,o)=>e.defineMethod(t,l,o):Reflect.has(r,l)?Reflect.get(r,l,o):a(l):Reflect.get(r,l,o),set:(e,t,l)=>Reflect.set(i,t,l),has:(e,t)=>s(t),getOwnPropertyDescriptor:(e,t)=>Object.getOwnPropertyDescriptor(r,t)||Object.getOwnPropertyDescriptor(i,t)})}},31108(e,t,l){l.d(t,{VD:()=>i,sy:()=>n,zz:()=>r});var o=l(50467);class n extends Error{constructor(e,t,l){super(l||`Flow '${e}' on model '${t}' exited via ctx.exit().`),(0,o._)(this,"flowKey",void 0),(0,o._)(this,"modelUid",void 0),this.name="FlowExitException",this.flowKey=e,this.modelUid=t}}class r extends Error{constructor(e,t,l){super(l||`Flow '${e}' on model '${t}' exited via ctx.exitAll().`),(0,o._)(this,"flowKey",void 0),(0,o._)(this,"modelUid",void 0),this.name="FlowExitAllException",this.flowKey=e,this.modelUid=t}}class i extends Error{constructor(e="Flow settings save cancelled."){super(e),this.name="FlowCancelSaveException"}}},48555(e,t,l){l.d(t,{pM:()=>eZ,Fv:()=>i,ju:()=>P.ju,MI:()=>d,vq:()=>eQ.v,yz:()=>T,M5:()=>el,X4:()=>eo,Vv:()=>er,E2:()=>es,lW:()=>a,n2:()=>E,FA:()=>p,J3:()=>ed,vP:()=>P.vP,ME:()=>y,H9:()=>k.H,ey:()=>ei.ey,KB:()=>N,JE:()=>K,kl:()=>n,u4:()=>o,UX:()=>P.UX,XM:()=>A,AP:()=>I,mP:()=>ef,zz:()=>u.zz,D1:()=>ei.D1,gG:()=>h.gG,I2:()=>ei.I2,af:()=>C.a,mv:()=>h.mv,QP:()=>c,Xh:()=>ei.Xh,$S:()=>P.$S,EI:()=>e0,_:()=>ei._,qI:()=>M,wx:()=>g.w,Z8:()=>D,ln:()=>w,yp:()=>e1.y,y4:()=>et,$n:()=>em,VD:()=>u.VD,ji:()=>eX,WJ:()=>r,i:()=>e1.i,hz:()=>en,MZ:()=>s,sy:()=>u.sy,YB:()=>j,xI:()=>P.xI,$X:()=>ee,o7:()=>S,mH:()=>eJ,M:()=>h.M,nN:()=>P.nN,GZ:()=>R,Hi:()=>C.H,pc:()=>P.pc,_3:()=>F,DX:()=>Z,XU:()=>P.XU});let o="flow-engine",n={DATA:"dataBlocks",FILTER:"filterBlocks",OTHER:"otherBlocks"},r={data:{key:n.DATA,label:"Data blocks",type:"group",hasCurrentFlowContext:!0},filter:{key:n.FILTER,label:"Filter blocks",type:"group",hasCurrentFlowContext:!1},other:{key:n.OTHER,label:"Other blocks",type:"group",hasCurrentFlowContext:!1}},i={CURRENT_RECORD:"currentRecord",ASSOCIATION_RECORDS:"associationRecords",OTHER_RECORDS:"otherRecords",OTHER_COLLECTIONS:"otherCollections",CURRENT_COLLECTIONS:"currentCollections"};function a(e){var t;return(null==(t=e.flowEngine)?void 0:t.translate)?(t,l)=>e.flowEngine.translate(t,{ns:[o,"client"],nsMode:"fallback",...l}):e=>e}function s(e,t){return t?`{{t(${JSON.stringify(e)}, ${JSON.stringify(t)})}}`:`{{t(${JSON.stringify(e)})}}`}function d(e,t){return s(e,t)}var u=l(31108);function c(e){return e}function p(e,t){if(e===t)return!1;if(e.prototype instanceof t)return!0;let l=Object.getPrototypeOf(e.prototype);for(;l&&l!==Object.prototype;){if(l.constructor===t)return!0;l=Object.getPrototypeOf(l)}return!1}var h=l(81982),m=l(27153),f=l(29007),g=l(88439);async function v(e,t){if(!e)return{};if("function"==typeof e)try{return await e(t)||{}}catch(e){return console.error("Error resolving uiSchema function:",e),{}}return e}async function y(e,t){if(!e)return"dialog";if("function"==typeof e)try{return await e(t)||"dialog"}catch(e){return console.error("Error resolving uiMode function:",e),"dialog"}return e}let b={},x=e=>{if("function"==typeof e)return!0;if(!e||"object"!=typeof e)return!1;let t=new WeakSet,l=e=>{if("function"==typeof e)return!0;if(!e||"object"!=typeof e||t.has(e))return!1;if(t.add(e),Array.isArray(e)){for(let t of e)if(l(t))return!0;return!1}for(let t of Object.keys(e))if(l(e[t]))return!0;return!1};return l(e)};function w(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{noCache:o=!1}=l,n=e=>/\{\{.*?\}\}/g.test(e);return(t=>{let l,r=!1;if("string"==typeof t&&t.startsWith("{{")&&(r=!0,l=t),t&&"object"==typeof t&&!Array.isArray(t)){try{l=JSON.stringify(t)}catch(e){return console.warn("Failed to stringify:",e),t}let i=!!(r=n(l))&&!o&&x(t);if(b[l]&&!o&&!i)return b[l];if(i)try{return m.S.compile(t,e)}catch(e){return console.warn("Failed to compile with Formily Schema.compile:",e),t}}if(Array.isArray(t)){try{l=JSON.stringify(t)}catch(e){return console.warn("Failed to stringify:",e),t}let i=!!(r=n(l))&&!o&&x(t);if(b[l]&&!o&&!i)return b[l];if(i)try{return m.S.compile(t,e)}catch(e){return console.warn("Failed to compile with Formily Schema.compile:",e),t}}if(r){if(!l)try{return m.S.compile(t,e)}catch(e){return console.warn("Failed to compile with Formily Schema.compile:",e),t}try{if(o)return m.S.compile(t,e);return b[l]=b[l]||m.S.compile(t,e),b[l]}catch(l){console.log("compileUiSchema error",t,l);try{return m.S.compile(t,e)}catch(e){}}}return t})(t)}async function S(e,t,l){let o=new f.W5(e,t.key,"settings");(0,g.w)(o,t.steps,e,t.key),o.defineProperty("currentStep",{value:l});let n=l.uiSchema;if(l.use)try{var r;let t=null==(r=e.getAction)?void 0:r.call(e,l.use);t&&t.uiSchema&&(n=n||t.uiSchema)}catch(e){console.warn(`Failed to get action ${l.use}:`,e)}let i=await v(n||{},o);return 0===Object.keys(i).length?null:i}async function M(e,t,l){if(!l)return!0;let{hideInSettings:o}=l;if("function"==typeof o)try{let l=new f.W5(e,t.key,"settings");return(0,g.w)(l,t.steps||{},e,t.key),!!await o(l)}catch(e){return console.warn(`Error evaluating hideInSettings for event '${l.name||""}' in flow '${t.key}':`,e),!1}return!!o}async function F(e,t,l){if(!l)return!0;let o=l.hideInSettings;if(void 0===o&&l.use){var n;let t=null==(n=e.getAction)?void 0:n.call(e,l.use);o=null==t?void 0:t.hideInSettings}if("function"==typeof o)try{let n=new f.W5(e,t.key,"settings");return(0,g.w)(n,t.steps,e,t.key),n.defineProperty("currentStep",{value:l}),!!await o(n)}catch(e){return console.warn(`Error evaluating hideInSettings for step '${l.key||""}' in flow '${t.key}':`,e),!1}return!!o}async function A(e,t,l){let o;if(!l)return{disabled:!1};let n=l.disabledInSettings,r=l.disabledReasonInSettings;if((void 0===n||void 0===r)&&l.use)try{var i;let t=null==(i=e.getAction)?void 0:i.call(e,l.use);void 0===n&&(n=null==t?void 0:t.disabledInSettings),void 0===r&&(r=null==t?void 0:t.disabledReasonInSettings)}catch(e){console.warn(`Failed to get action ${l.use}:`,e)}let a=null,s=()=>(a||(a=new f.W5(e,t.key,"settings"),(0,g.w)(a,t.steps,e,t.key),a.defineProperty("currentStep",{value:l})),a),d=!1;if("function"==typeof n)try{d=!!await n(s())}catch(e){return console.warn(`Error evaluating disabledInSettings for step '${l.key||""}' in flow '${t.key}':`,e),{disabled:!1}}else d=!!n;if(!d)return{disabled:!1};if("function"==typeof r)try{let e=await r(s());null!=e&&""!==e&&(o=String(e))}catch(e){console.warn(`Error evaluating disabledReasonInSettings for step '${l.key||""}' in flow '${t.key}':`,e)}else null!=r&&""!==r&&(o=String(r));return{disabled:!0,reason:o}}var k=l(35846),C=l(44476),P=l(73398);function j(e){if("string"!=typeof e)return null;let t=e.trim(),l=/^\{\{\s*ctx(?:\.(.+?))?\s*\}\}$/,o=t.match(l);if(!o)return null;let n=o[1];return n?n.split(".").map(e=>e.trim()).filter(e=>e.length>0):[]}function I(e){return 0===e.length?"{{ ctx }}":`{{ ctx.${e.join(".")} }}`}function E(e){if("string"!=typeof e)return!1;let t=e.trim();return/^\{\{\s*ctx(?:\..+?)?\s*\}\}$/.test(t)}let _=new WeakMap;function R(e,t){_.set(e,t??null)}function T(e){return _.get(e)??null}function D(e){_.delete(e)}let N=e=>{if(!e||"/"===e)return[];let t=e.replace(/^\/+/,"").split("/").filter(Boolean);if(t.length<2)return[];let l=[],o=null,n=0;for(;n<t.length;){let e=t[n];if("admin"===e||"view"===e)if(o&&l.push(o),n+1<t.length)o={viewUid:t[n+1]},n+=2;else break;else if(o&&n+1<t.length){let l=t[n+1],r=l;try{r=decodeURIComponent(l)}catch(e){}switch(e){case"tab":o.tabUid=r;break;case"filterbytk":{let e=e=>{let t={};return e.split("&").forEach(e=>{let[l,o=""]=e.split("=");if(l)try{let e=decodeURIComponent(l),n=decodeURIComponent(o);t[e]=n}catch(e){t[l]=o}}),t},t=r;if(r&&(r.startsWith("{")||r.startsWith("[")))try{let e=JSON.parse(r);t=e&&"object"==typeof e&&!Array.isArray(e)?e:r}catch(e){t=r}else r&&/^[^=&]+=[^=&]*(?:&[^=&]+=[^=&]*)*$/.test(r)&&(t=e(r));o.filterByTk=t;break}case"sourceid":o.sourceId=r}n+=2}else n++}return o&&l.push(o),l};var O=l(74353),$=l.n(O);let B=/^\{\{\s*ctx\.date(?:\.(.+?))?\s*\}\}$/,q=new Set(["today","now","yesterday","tomorrow","thisWeek","lastWeek","nextWeek","thisMonth","lastMonth","nextMonth","thisQuarter","lastQuarter","nextQuarter","thisYear","lastYear","nextYear"]),L=new Set(["next","past"]),V=new Set(["day","week","month","year"]);function z(e){if("string"!=typeof e)return null;let t=e.trim().match(B);if(!t)return null;let l=String(t[1]||"");return l?l.split(".").map(e=>e.trim()).filter(Boolean):[]}function K(e){let t=U((e||[]).map(e=>String(e)));if("date"!==t[0])return!1;if(1===t.length)return!0;if("preset"===t[1])return 2===t.length||3===t.length&&q.has(t[2]);if("relative"===t[1])return 2===t.length||(3===t.length?L.has(t[2]):4===t.length?L.has(t[2])&&V.has(t[3]):5===t.length&&L.has(t[2])&&V.has(t[3])&&"number"==typeof J(t[4]));if("exact"===t[1]){if(2===t.length)return!0;if("single"===t[2])return 3===t.length||(4===t.length?"date"===t[3]:5===t.length&&"date"===t[3]&&/^v.+/.test(t[4]));if("range"===t[2]){if(3===t.length)return!0;if(4===t.length)return"date"===t[3];if(5===t.length)return"date"===t[3]&&/^v.+/.test(t[4]);if(6===t.length)return"date"===t[3]&&/^v.+/.test(t[4])&&/^v.+/.test(t[5])}}return!1}function U(e){return"date"===e[0]?e:["date",...e]}function W(e){let t=U(e);return`{{ ctx.${t.join(".")} }}`}function H(e){var t;let l=null==(t=globalThis)?void 0:t.Buffer;if(l&&"function"==typeof l.from)return l.from(e,"utf8").toString("base64");if("function"==typeof btoa)return btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(e,t)=>String.fromCharCode(parseInt(t,16))));throw Error("No base64 encoder available")}function Y(e){var t;let l=null==(t=globalThis)?void 0:t.Buffer;if(l&&"function"==typeof l.from)return l.from(e,"base64").toString("utf8");if("function"==typeof atob)return decodeURIComponent(Array.from(atob(e)).map(e=>`%${e.charCodeAt(0).toString(16).padStart(2,"0")}`).join(""));throw Error("No base64 decoder available")}function G(e){if(null!=e){if("string"==typeof e){let t=e.trim();return t.length?t:void 0}if($().isDayjs(e))return e.toISOString();if(e instanceof Date)return $()(e).toISOString();if("number"==typeof e||"boolean"==typeof e)return String(e)}}function J(e){let t=String(e||"").match(/^n(\d+)$/);if(!t)return;let l=Number(t[1]);if(Number.isFinite(l)&&!(l<=0))return l}function X(e){let t=e.day(),l=0===t?-6:1-t;return e.add(l,"day").startOf("day")}function Q(e){let t=3*Math.floor(e.month()/3);return e.month(t).startOf("month")}function Z(e){return H(String(e||"")).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/g,"")}function ee(e){try{let t=String(e||"").replace(/=+$/g,"");if(!t||!/^[A-Za-z0-9_-]+$/.test(t))return;let l=t.replace(/-/g,"+").replace(/_/g,"/"),o=l.length%4==0?0:4-l.length%4,n=`${l}${"=".repeat(o)}`,r=Y(n);if(Z(r)!==t)return;return r}catch(e){return}}function et(e){return"string"==typeof e&&B.test(e.trim())}function el(e){if(!K(e))return!1;let t=U((e||[]).map(e=>String(e)));return"date"===t[0]&&("preset"===t[1]?3===t.length&&q.has(t[2]):"relative"===t[1]?5===t.length&&L.has(t[2])&&V.has(t[3])&&"number"==typeof J(t[4]):"exact"===t[1]&&"single"===t[2]&&"date"===t[3]?5===t.length&&/^v.+/.test(t[4]):"exact"===t[1]&&"range"===t[2]&&"date"===t[3]&&6===t.length&&/^v.+/.test(t[4])&&/^v.+/.test(t[5]))}function eo(e){if(!et(e))return;let t=U(z(e)||[]);if("preset"===t[1]&&3===t.length&&q.has(t[2]))return{type:t[2]};if("relative"===t[1]&&5===t.length&&L.has(t[2])&&V.has(t[3])){let e=J(t[4]);return"number"==typeof e?{type:t[2],unit:t[3],number:e}:void 0}if("exact"===t[1]&&"single"===t[2]&&"date"===t[3]&&5===t.length){let e=String(t[4]||"");if(!e.startsWith("v"))return;return ee(e.slice(1))}if("exact"===t[1]&&"range"===t[2]&&"date"===t[3]&&6===t.length){let e=String(t[4]||""),l=String(t[5]||"");if(!e.startsWith("v")||!l.startsWith("v"))return;let o=ee(e.slice(1)),n=ee(l.slice(1));if(void 0===o||void 0===n)return;return[o,n]}}function en(e){if(et(e))return String(e).trim();if(null==e||""===e)return;if(Array.isArray(e)){let t=G(e[0]),l=G(e[1]);return t&&l?W(["date","exact","range","date",`v${Z(t)}`,`v${Z(l)}`]):t?W(["date","exact","single","date",`v${Z(t)}`]):void 0}if("object"==typeof e&&e){let t=e,l="string"==typeof t.type?t.type:"";if("past"===l||"next"===l){let e="string"==typeof t.unit&&V.has(t.unit)?t.unit:"day",o=Number(t.number),n=Number.isFinite(o)&&o>0?Math.floor(o):1;return W(["date","relative",l,e,`n${n}`])}if(q.has(l))return W(["date","preset",l])}let t=G(e);if(t)return W(["date","exact","single","date",`v${Z(t)}`])}function er(e){let t=U((e||[]).map(e=>String(e)));if("date"===t[0]){if("preset"===t[1]&&3===t.length){let e=t[2];if("now"===e)return $()().toISOString();let l=$()();return"today"===e?l.format("YYYY-MM-DD"):"yesterday"===e?l.add(-1,"day").format("YYYY-MM-DD"):"tomorrow"===e?l.add(1,"day").format("YYYY-MM-DD"):"thisWeek"===e?X(l).format("YYYY-MM-DD"):"lastWeek"===e?X(l.add(-1,"week")).format("YYYY-MM-DD"):"nextWeek"===e?X(l.add(1,"week")).format("YYYY-MM-DD"):"thisMonth"===e?l.startOf("month").format("YYYY-MM-DD"):"lastMonth"===e?l.add(-1,"month").startOf("month").format("YYYY-MM-DD"):"nextMonth"===e?l.add(1,"month").startOf("month").format("YYYY-MM-DD"):"thisQuarter"===e?Q(l).format("YYYY-MM-DD"):"lastQuarter"===e?Q(l.add(-3,"month")).format("YYYY-MM-DD"):"nextQuarter"===e?Q(l.add(3,"month")).format("YYYY-MM-DD"):"thisYear"===e?l.startOf("year").format("YYYY-MM-DD"):"lastYear"===e?l.add(-1,"year").startOf("year").format("YYYY-MM-DD"):"nextYear"===e?l.add(1,"year").startOf("year").format("YYYY-MM-DD"):void 0}if("relative"===t[1]&&5===t.length&&L.has(t[2])&&V.has(t[3])){let e=J(t[4]);if("number"!=typeof e)return;let l="past"===t[2]?-1:1,o=t[3];return $()().add(l*e,o).format("YYYY-MM-DD")}if("exact"===t[1]&&"single"===t[2]&&"date"===t[3]&&5===t.length){let e=String(t[4]||"");if(!e.startsWith("v"))return;return ee(e.slice(1))}if("exact"===t[1]&&"range"===t[2]&&"date"===t[3]&&6===t.length){let e=String(t[4]||""),l=String(t[5]||"");if(!e.startsWith("v")||!l.startsWith("v"))return;let o=ee(e.slice(1)),n=ee(l.slice(1));if(void 0===o||void 0===n)return;return[o,n]}}}var ei=l(51143);let ea=new Set(["code","version"]);function es(e){if(!e||"object"!=typeof e||Array.isArray(e))return!1;let t=Object.keys(e);if(!t.includes("code")||"string"!=typeof e.code||"version"in e&&null!=e.version&&"string"!=typeof e.version)return!1;for(let e of t)if(!ea.has(e))return!1;return!0}function ed(e){return{code:String((null==e?void 0:e.code)??""),version:String((null==e?void 0:e.version)??"v1")}}function eu(e){let t="",l="code";for(let o=0;o<e.length;o++){let n=e[o],r=o+1<e.length?e[o+1]:"";if("code"===l){if("/"===n&&"/"===r){t+=" ",o++,l="line";continue}if("/"===n&&"*"===r){t+=" ",o++,l="block";continue}if("'"===n){t+=" ",l="single";continue}if('"'===n){t+=" ",l="double";continue}t+=n;continue}if("line"===l){"\n"===n?(t+="\n",l="code"):t+=" ";continue}if("block"===l){"*"===n&&"/"===r?(t+=" ",o++,l="code"):t+="\n"===n?"\n":" ";continue}if("single"===l){if("\\"===n){t+=" ",o++;continue}"'"===n?(t+=" ",l="code"):t+="\n"===n?"\n":" ";continue}if("\\"===n){t+=" ",o++;continue}'"'===n?(t+=" ",l="code"):t+="\n"===n?"\n":" "}return t}function ec(e){let t="",l="code";for(let o=0;o<e.length;o++){let n=e[o],r=o+1<e.length?e[o+1]:"";if("code"===l){if("/"===n&&"/"===r){t+=" ",o++,l="line";continue}if("/"===n&&"*"===r){t+=" ",o++,l="block";continue}if("'"===n){t+=n,l="single";continue}if('"'===n){t+=n,l="double";continue}t+=n;continue}if("line"===l){"\n"===n?(t+="\n",l="code"):t+=" ";continue}if("block"===l){"*"===n&&"/"===r?(t+=" ",o++,l="code"):t+="\n"===n?"\n":" ";continue}if("single"===l){if(t+=n,"\\"===n){let l=o+1<e.length?e[o+1]:"";l&&(t+=l,o++);continue}"'"===n&&(l="code");continue}if(t+=n,"\\"===n){let l=o+1<e.length?e[o+1]:"";l&&(t+=l,o++);continue}'"'===n&&(l="code")}return t}function ep(e){let t;if(!e)return{subPath:"",wildcard:!1};let l=e;l=l.replace(/\[['"]([a-zA-Z_$][a-zA-Z0-9_$]*)['"]\]/g,".$1");let o=/\[([^\]]+)\]/g;for(;t=o.exec(l);){let e=String(t[1]??"").trim();if(!(/^\d+$/.test(e)||/^['"][a-zA-Z_$][a-zA-Z0-9_$]*['"]$/.test(e)))return{subPath:l.startsWith(".")?l.slice(1):l,wildcard:!0}}return l.startsWith(".")&&(l=l.slice(1)),{subPath:l,wildcard:!1}}function eh(e){let t=String(e||"").trim();if(!t||"ctx"===t)return null;let l=t.match(/^ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)([\s\S]*)$/);if(l){let e=l[1]||"",t=ep(l[2]||"");return{varName:e,subPath:t.subPath,wildcard:t.wildcard}}let o=t.match(/^ctx\s*\[\s*(['"])([a-zA-Z_$][a-zA-Z0-9_$]*)\1\s*\]([\s\S]*)$/);if(o){let e=o[2]||"",t=ep(o[3]||"");return{varName:e,subPath:t.subPath,wildcard:t.wildcard}}return null}function em(e){let t;if("string"!=typeof e||!e.trim())return{};let l=eu(e),o=ec(e),n=new Map,r=(e,t)=>{if(!e)return;let l=n.get(e)||new Set;l.add(t||""),n.set(e,l)},i=e=>{let t=eh(e);(null==t?void 0:t.varName)&&r(t.varName,t.wildcard?"":t.subPath)},a=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*(?:(?:\.[a-zA-Z_$][a-zA-Z0-9_$]*)|(?:\[[^\]]+\]))*)(?!\s*\()/g;for(;t=a.exec(l);)i(`ctx.${t[1]||""}`);let s=/ctx\s*\[\s*(['"])([a-zA-Z_$][a-zA-Z0-9_$]*)\1\s*\]((?:(?:\.[a-zA-Z_$][a-zA-Z0-9_$]*)|(?:\[[^\]]+\]))*)(?!\s*\()/g;for(;t=s.exec(o);)i(`ctx['${t[2]||""}']${t[3]||""}`);let d=/ctx\.getVar\s*\(\s*(['"])((?:\\.|(?!\1)[\s\S])*)\1\s*\)/g;for(;t=d.exec(o);){let e=String(t[2]||"").replace(/\\'/g,"'").replace(/\\"/g,'"').trim();e.startsWith("ctx")&&i(e)}let u={};for(let[e,t]of n.entries())u[e]=Array.from(t);return u}async function ef(e,t){let l={};if(!t||"object"!=typeof t||Array.isArray(t))return l;for(let[o,n]of Object.entries(t))if(void 0!==n){if(es(n)){let{code:t,version:r}=ed(n);if(!t.trim())continue;let i=await (0,ei._)(e,t,{version:r});if(!(null==i?void 0:i.success))throw Error(`RunJS execution failed for "${o}"`);void 0!==i.value&&(l[o]=i.value);continue}l[o]=n}return l}var eg=l(49773);let ev="ctx.resolveJsonTemplate",ey=/\{\{\s*ctx(?:\.|\[|\?\.)/,eb=/\bctx(?:\?\.|\.)libs\b/,ex="__runjs_templateValueToString",ew=/\b__runjs_ctx_tpl_\d+\b/,eS=/\b__runjs_templateValueToString(?:_\d+)?\b/,eM=/\b__runjs_ctx_tpl_\d+\b|\b__runjs_templateValueToString(?:_\d+)?\b/,eF=/\b__runjs_ensure_libs\b/,eA=256,ek={withTemplates:new Map,withoutTemplates:new Map};function eC(e,t){let l=e.get(t);if(void 0!==l)return e.delete(t),e.set(t,l),l}function eP(e,t,l,o){if(e.has(t)&&e.delete(t),e.set(t,l),e.size<=o)return;let n=e.keys().next().value;void 0!==n&&e.delete(n)}function ej(e){return!!e&&/[A-Za-z0-9_$]/.test(e)}function eI(e){if(!e.startsWith("{{")||!e.endsWith("}}"))return!1;let t=e.slice(2,-2).trim();return t.startsWith("ctx.")||t.startsWith("ctx[")||t.startsWith("ctx?.")}function eE(e,t){if(!e.startsWith(ev,t))return!1;let l=t>0?e[t-1]:"",o=e[t+ev.length]||"";return!(ej(l)||ej(o))}function e_(e,t){let l=t+2;for(;l<e.length;){let t=e[l];if(l+=1,"\n"===t)break}return l}function eR(e,t){let l=t+2;for(;l<e.length;){let t=e[l],o=e[l+1];if("*"===t&&"/"===o)return l+2;l+=1}return l}function eT(e,t,l){let o=t+1;for(;o<e.length;){let t=e[o];if("\\"===t){o+=2;continue}if(o+=1,t===l)break}return o}function eD(e,t){let l=t+1;for(;l<e.length;){let t=e[l];if("\\"===t){l+=2;continue}if("`"===t)return l+1;if("$"===t&&"{"===e[l+1]){l+=2;let t=1;for(;l<e.length&&t>0;){let o=e[l],n=e[l+1];if("'"===o||'"'===o){l=eT(e,l,o);continue}if("`"===o){l=eD(e,l);continue}if("/"===o&&"/"===n){l=e_(e,l);continue}if("/"===o&&"*"===n){l=eR(e,l);continue}"{"===o?t+=1:"}"===o&&(t-=1),l+=1}continue}l+=1}return l}function eN(e){if(!ey.test(e))return[];let t=[],l=0;for(;l<e.length;){let o=e.indexOf("{{",l);if(-1===o)break;let n=e.indexOf("}}",o+2);if(-1===n)break;let r=e.slice(o,n+2);eI(r)&&t.push(r),l=n+2}return t}function eO(e,t){let l=t;for(;l<e.length&&/\s/.test(e[l]);)l+=1;return l}function e$(e,t){let l=t;for(;l>=0&&/\s/.test(e[l]);)l-=1;return l}function eB(e,t){let l=t;for(;;){l=eO(e,l);let t=e[l],o=e[l+1];if("/"===t&&"/"===o){l=e_(e,l);continue}if("/"===t&&"*"===o){l=eR(e,l);continue}return l}}function eq(e){return!!e&&/[A-Za-z_$]/.test(e)}function eL(e,t){if(!eq(e[t]))return null;let l=t+1;for(;l<e.length&&ej(e[l]);)l+=1;return{name:e.slice(t,l),end:l}}function eV(e,t,l){if(e[t]!==l)return null;let o=t+1,n="";for(;o<e.length;){let t=e[o];if("\\"===t){let t=e[o+1];if(void 0===t)break;n+=t,o+=2;continue}if(t===l)return{value:n,end:o+1};n+=t,o+=1}return null}function ez(e,t){if(!e.startsWith("ctx",t))return null;let l=t>0?e[t-1]:"",o=e[t+3]||"";if(ej(l)||ej(o))return null;let n=e.slice(t+3);return n.startsWith(".libs")?t+3+5:n.startsWith("?.libs")?t+3+6:null}function eK(e,t){let l=ez(e,t);if(null===l)return null;let o=eB(e,l),n=e[o],r=e[o+1],i=e[o+2];if("?"===n&&"."===r&&"["===i){o=eB(e,o+3);let t=e[o];if("'"===t||'"'===t){let l=eV(e,o,t);if(!l)return{end:o+1};let n=eB(e,l.end);return"]"===e[n]&&(n+=1),{end:n,key:l.value}}return{end:o}}if("["===n){o=eB(e,o+1);let t=e[o];if("'"===t||'"'===t){let l=eV(e,o,t);if(!l)return{end:o+1};let n=eB(e,l.end);return"]"===e[n]&&(n+=1),{end:n,key:l.value}}return{end:o}}if("?"===n&&"."===r){o=eB(e,o+2);let t=eL(e,o);return t?{end:t.end,key:t.name}:{end:o}}if("."===n){o=eB(e,o+1);let t=eL(e,o);return t?{end:t.end,key:t.name}:{end:o}}return{end:l}}function eU(e){let t=[],l=String(e??""),o=0,n=0,r=0,i=0,a=e=>{let l=String(e??"").trim();if(!l||l.startsWith("..."))return;let o=l,n=0,r=0,i=0,a=0;for(;n<l.length;){let e=l[n],t=l[n+1];if("/"===e&&"/"===t)break;if("/"===e&&"*"===t){let e=l.indexOf("*/",n+2);n=-1===e?l.length:e+2;continue}if("'"===e||'"'===e){let t=n+1;for(;t<l.length;){let o=l[t];if("\\"===o){t+=2;continue}if(t+=1,o===e)break}n=t;continue}if("`"===e){let e=n+1;for(;e<l.length;){let t=l[e];if("\\"===t){e+=2;continue}if(e+=1,"`"===t)break}n=e;continue}if("{"===e?r+=1:"}"===e?r-=1:"["===e?i+=1:"]"===e?i-=1:"("===e?a+=1:")"===e&&(a-=1),0===r&&0===i&&0===a&&(":"===e||"="===e)){o=l.slice(0,n).trim();break}n+=1}if(!o)return;if(o.startsWith("'")||o.startsWith('"')){let e=o[0],l=eV(o,0,e);l&&t.push(l.value);return}let s=o.match(/^[A-Za-z_$][A-Za-z0-9_$]*/);s&&t.push(s[0])},s=0;for(;s<l.length;){let e=l[s],t=l[s+1];if("/"===e&&"/"===t)break;if("/"===e&&"*"===t){let e=l.indexOf("*/",s+2);s=-1===e?l.length:e+2;continue}if("'"===e||'"'===e){s=eT(l,s,e);continue}if("`"===e){s=eD(l,s);continue}"{"===e?n+=1:"}"===e?n-=1:"["===e?r+=1:"]"===e?r-=1:"("===e?i+=1:")"===e&&(i-=1),0===n&&0===r&&0===i&&","===e&&(a(l.slice(o,s)),o=s+1),s+=1}return a(l.slice(o)),t}function eW(e){if(!eb.test(e))return[];let t=new Set,l=l=>{let n=l,r=1;for(;n<e.length&&r>0;){let l=e[n],i=e[n+1];if("/"===l&&"/"===i){n=e_(e,n);continue}if("/"===l&&"*"===i){n=eR(e,n);continue}if("'"===l||'"'===l){n=eT(e,n,l);continue}if("`"===l){n=o(n+1);continue}let a=eK(e,n);if(a){a.key&&t.add(a.key),n=a.end;continue}"{"===l?r+=1:"}"===l&&(r-=1),n+=1}return n},o=t=>{let o=t;for(;o<e.length;){let t=e[o],n=e[o+1];if("\\"===t){o+=2;continue}if("`"===t)return o+1;if("$"===t&&"{"===n){o=l(o+2);continue}o+=1}return o},n=0;for(;n<e.length;){let l=e[n],r=e[n+1];if("/"===l&&"/"===r){n=e_(e,n);continue}if("/"===l&&"*"===r){n=eR(e,n);continue}if("'"===l||'"'===l){n=eT(e,n,l);continue}if("`"===l){n=o(n+1);continue}let i=eK(e,n);if(i){i.key&&t.add(i.key),n=i.end;continue}if("="===l&&"="!==r&&">"!==r&&"<"!==r){let l=eB(e,n+1);if(null!==ez(e,l)){let l=e$(e,n-1);if("}"===e[l]){let o=0,n=l;for(;n>=0;){let t=e[n];if("}"===t)o+=1;else if("{"===t&&0==(o-=1))break;n-=1}if(n>=0&&"{"===e[n])for(let o of eU(e.slice(n+1,l)))t.add(o)}}}n+=1}return Array.from(t)}function eH(e){if(eF.test(e)||!eb.test(e))return e;let t=eW(e);return t.length?`/* __runjs_ensure_libs */
1276
1276
  await ctx.__ensureLibs(${JSON.stringify(t)});
1277
1277
  ${e}`:e}function eY(e,t,l){let o=eO(e,l);if(":"!==e[o])return!1;let n=e$(e,t-1),r=n>=0?e[n]:"";return"{"===r||","===r}function eG(e,t,l,o){let n=Array.from(new Set(t));if(!n.length)return e;let r=e;for(let e of n){let t=l(e);r=`(${r}).split(${JSON.stringify(e)}).join(${o}(${t}, ${JSON.stringify(e)}))`}return r}function eJ(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!ey.test(e))return e;let l=!1!==t.processBarePlaceholders,o=!1!==t.processStringLiterals;if(l&&o&&eM.test(e)||l&&!o&&ew.test(e)||!l&&o&&eS.test(e))return e;let n=new Map,r=[],i=!1,a=new Set,s=(t=>{if(!e.includes(t)&&!a.has(t))return a.add(t),t;let l=1;for(;e.includes(`${t}_${l}`)||a.has(`${t}_${l}`);)l+=1;let o=`${t}_${l}`;return a.add(o),o})(ex),d=0,u=()=>{for(;;){let t=`__runjs_ctx_tpl_${d}`;if(d+=1,!(e.includes(t)||a.has(t)))return a.add(t),t}},c=e=>{let t=n.get(e);if(t)return t;let l=u();return n.set(e,l),r.push(`const ${l} = await ctx.resolveJsonTemplate(${JSON.stringify(e)});`),l},p="",h=0,m=!1,f=0;for(;h<e.length;){let t=e[h],n=e[h+1];if("/"===t&&"/"===n){let t=e_(e,h);p+=e.slice(h,t),h=t;continue}if("/"===t&&"*"===n){let t=eR(e,h);p+=e.slice(h,t),h=t;continue}if("'"===t||'"'===t){let l=eT(e,h,t),n=e.slice(h,l);if(o&&0===f){let t=eN(n);if(t.length){i=!0;let o=eG(n,t,c,s);p+=eY(e,h,l)?`[${o}]`:o}else p+=n}else p+=n;h=l;continue}if("`"===t){let t=eD(e,h),l=e.slice(h,t);if(o&&0===f){let o=eN(l);if(o.length){i=!0;let n=eG(l,o,c,s);p+=eY(e,h,t)?`[${n}]`:n}else p+=l}else p+=l;h=t;continue}if(0===f&&!m&&eE(e,h)){p+=ev,h+=ev.length,m=!0;continue}if(m){if(/\s/.test(t)){p+=t,h+=1;continue}if("("===t){p+=t,h+=1,m=!1,f=1;continue}m=!1;continue}if(f>0){"("===t?f+=1:")"===t&&(f-=1),p+=t,h+=1;continue}if(l&&"{"===t&&"{"===n){let t=e.indexOf("}}",h+2);if(-1!==t){let l=e.slice(h,t+2);if(eI(l)){p+=c(l),h=t+2;continue}}}p+=t,h+=1}if(!r.length)return p;let g=[];return i&&g.push(`const ${s} = (value, placeholder) => {`," if (typeof value === 'undefined') return placeholder;"," if (typeof value === 'object' && value !== null) {"," try {"," return JSON.stringify(value);"," } catch (e) {"," return String(value);"," }"," }"," return String(value);","};"),g.push(...r),`${g.join("\n")}
1278
- ${p}`}async function eX(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l="string"==typeof e?e:String(e??""),o=!!t.preprocessTemplates,n=o?ek.withTemplates:ek.withoutTemplates,r=eC(n,l);if(r)return await r;let i=(async()=>{if(!o)return eH(await (0,eg.W)(l));let e=eJ(l,{processStringLiterals:!1});return eH(eJ(await (0,eg.W)(e),{processBarePlaceholders:!1}))})();eP(n,l,i,eA);try{return await i}catch(e){throw n.delete(l),e}}var eQ=l(62572);function eZ(e){if(Array.isArray(e)){let t=e.map(e=>eZ(e)).filter(e=>void 0!==e);return t.length?t:void 0}if(e&&"object"==typeof e){let t={};return Object.keys(e).forEach(l=>{let o=eZ(e[l]);void 0!==o&&(t[l]=o)}),Object.keys(t).length?t:void 0}return null==e||"string"==typeof e&&""===e?void 0:e}let e0=e=>"string"==typeof e.on?"beforeRender"===e.on:"object"==typeof e.on?"beforeRender"===e.on.eventName:!e.on&&!0!==e.manual;var e1=l(47684)},49773(e,t,l){l.d(t,{W:()=>o});async function o(e){if(!/<[A-Za-z]|<\//.test(e))return e;try{var t;let o=await l.e("7761").then(l.bind(l,1608)),n=(null==o?void 0:o.transform)||(null==o||null==(t=o.default)?void 0:t.transform);if("function"!=typeof n)return e;let r=n(e,{transforms:["jsx"],jsxPragma:"ctx.React.createElement",jsxFragmentPragma:"ctx.React.Fragment",disableESTransforms:!0,production:!0});return(r&&(r.code||(null==r?void 0:r.output)))??e}catch(t){return e}}},81982(e,t,l){l.d(t,{M:()=>h,gG:()=>i,mv:()=>a,o4:()=>p});var o=l(40542),n=l(2543),r=l.n(n);async function i(e,t){if(!e)return{};if("function"==typeof e)try{return await e(t)||{}}catch(e){return console.error("Error resolving defaultParams function:",e),{}}return e}async function a(e,t,l){if(!e)return{};if("function"==typeof e)try{return await e(t,l)||{}}catch(e){return console.error("Error resolving createModelOptions function:",e),{}}return e}let s={queue:[],timer:null,inflightByRun:new Map},d=10;function u(e){if(Array.isArray(e))return e.map(u);if(r().isPlainObject(e)){let t=Object.entries(e).map(e=>{let[t,l]=e;return[t,u(l)]});return Object.fromEntries(r().sortBy(t,e=>{let[t]=e;return t}))}return e}function c(e){try{return JSON.stringify(u(e))}catch{try{return JSON.stringify(e)}catch{return String(e)}}}function p(e,t){let l,o,n=s,r=e.runId||"GLOBAL",i=c(t),a=n.inflightByRun.get(r);a||(a=new Map,n.inflightByRun.set(r,a));let u=a.get(i);if(u)return u;let p=new Promise((e,t)=>{l=e,o=t});a.set(i,p);let h={id:`${Date.now()}-${Math.random().toString(36).slice(2)}`,ctx:e,payload:t,resolve:l,reject:o,runId:r,dedupKey:i};n.queue.push(h);let m=async()=>{var t,l,o,r,i,a;let s=n.queue.splice(0,n.queue.length);if(n.timer=null,!s.length)return;let d=null==(t=s[0].ctx)?void 0:t.api;if(!d){for(let e of s)try{e.resolve(e.payload.template)}catch(t){e.reject(t)}finally{null==(l=n.inflightByRun.get(e.runId))||l.delete(e.dedupKey)}return}try{let e=s.map(e=>({id:e.id,template:e.payload.template,contextParams:e.payload.contextParams||{}})),t=await d.request({method:"POST",url:"variables:resolve",data:{values:{batch:e}}}),l=t.data??t,r=l.data??l,i=null==r?void 0:r.results,a=Array.isArray(i)?i:Array.isArray(r)?r:[],u=new Map;for(let e of a){let t=(null==e?void 0:e.id)!=null?String(e.id):"";t&&u.set(t,null==e?void 0:e.data)}for(let e of s)try{let t=String(e.id),l=u.has(t)?u.get(t):e.payload.template;e.resolve(l)}catch(t){e.reject(t)}finally{null==(o=n.inflightByRun.get(e.runId))||o.delete(e.dedupKey)}}catch(t){for(let l of s)try{null==e||null==(i=e.logger)||null==(r=i.warn)||r.call(i,{err:t},"variables:resolve(batch) failed, fallback"),l.resolve(l.payload.template)}catch(e){l.reject(e)}finally{null==(a=n.inflightByRun.get(l.runId))||a.delete(l.dedupKey)}}};return n.timer||(n.timer=setTimeout(m,d)),p}async function h(e,t){let l=async e=>{if("string"==typeof e&&/\{\{.*?\}\}/.test(e))return await g(e,t);if(Array.isArray(e))return Promise.all(e.map(l));if(e&&"object"==typeof e){let t={};for(let[o,n]of Object.entries(e))t[o]=await l(n);return t}return e};return l(e)}async function m(e,t){let l=await f(e.trim(),t),o=await t.runjs(`return ${l}`,{t:t.t});return(null==o?void 0:o.success)?o.value:void 0}async function f(e,t){let l,o=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*(?:(?:\.[a-zA-Z_$][a-zA-Z0-9_$]*)|(?:\[[^\]]+\]))*)(?!\s*\()/g,n=[],r=new Set;for(;null!==(l=o.exec(e));){let e=l[0],t=l[1],o=t.match(/^([a-zA-Z_$][a-zA-Z0-9_$]*)/);if(o){let l=o[1],i=t.substring(l.length);n.push({fullPath:e,firstKey:l,restPath:i}),r.add(l)}}if(0===n.length)return e;let i=new Map;for(let e of r)try{let l=await t[e],o=l&&!0===l.__isRecordProxy__;i.set(e,o)}catch(t){i.set(e,!1)}n.sort((e,t)=>t.fullPath.length-e.fullPath.length);let a=e;for(let{fullPath:e,firstKey:t,restPath:l}of n){let o,n=i.get(t)||!1;o=""===l?`await ctx.${t}`:n?`await (await ctx.${t})${l}`:`(await ctx.${t})${l}`;let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),s=RegExp(`\\b${r}\\b`,"g");a=a.replace(s,o)}return a}async function g(e,t){let l=e=>{let t=e.trim().match(/^ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\.([a-zA-Z_$][a-zA-Z0-9_$-]*(?:\.[a-zA-Z_$][a-zA-Z0-9_$-]*)*))?$/);return t?t[2]?`${t[1]}.${t[2]}`:t[1]:null},n=async e=>{let l=e.split("."),n=l.shift();if(!n)return;let r=await t[n];return 0===l.length?r:(0,o.D)(r,l.join("."))},r=async e=>{let o=l(e);if(o){let l=await n(o);return void 0===l&&o.includes("-")?await m(e,t):l}return await m(e,t)},i=e.match(/^\s*\{\{\s*([^{}]+?)\s*\}\}\s*$/);if(i){let e=i[1];return await r(e)}let a=[...e.matchAll(/\{\{\s*(.+?)\s*\}\}/g)],s=e;for(let[e,t]of a){let l=await r(t);if(void 0!==l){let t="object"==typeof l&&null!==l?JSON.stringify(l):String(l);s=s.replace(e,t)}}return s}},47684(e,t,l){function o(e,t){if(!e||"string"!=typeof e)throw Error("invalid url");let l=e.trim();if(l.startsWith("http://")||l.startsWith("https://"))return l;let o=window.__esm_cdn_base_url__||"https://esm.sh",n=(null==t?void 0:t.addSuffix)&&window.__esm_cdn_suffix__||"",r=o.replace(/\/$/,""),i=l.replace(/^\//,"");if(null==t?void 0:t.raw){let e=i.includes("?")?"&":"?";return`${r}/${i}${e}raw`}return`${r}/${i}${n}`}function n(e){return!!e&&"string"==typeof e&&e.split("?")[0].split("#")[0].endsWith(".css")}l.d(t,{i:()=>o,y:()=>n})},51143(e,t,l){function o(){var e,t;let l=globalThis;if((null==(e=l.__nocobaseRunJSSafeGlobalsRegistry)?void 0:e.windowAllow)&&(null==(t=l.__nocobaseRunJSSafeGlobalsRegistry)?void 0:t.documentAllow))return l.__nocobaseRunJSSafeGlobalsRegistry;let o={windowAllow:new Set,documentAllow:new Set};return l.__nocobaseRunJSSafeGlobalsRegistry=o,o}function n(e){if(!e)return;let t=o();for(let l of e){if("string"!=typeof l)continue;let e=l.trim();e&&t.windowAllow.add(e)}}function r(e){if(!e)return;let t=o();for(let l of e){if("string"!=typeof l)continue;let e=l.trim();e&&t.documentAllow.add(e)}}function i(e){return o().windowAllow.has(e)}function a(e){return o().documentAllow.has(e)}function s(e){let t=()=>`${window.location.origin}${window.location.pathname}`,l=(e,l,o)=>{if(!(e=>{try{let l=new URL(e,t()),o=l.protocol.toLowerCase();if("about:"===o)return"about:blank"===l.href;return"http:"===o||"https:"===o}catch{return!1}})(e))throw Error("Unsafe URL: window.open only allows http/https/about:blank.");let n="_blank",r=(e=>{let t=new Set;return e&&e.split(",").map(e=>e.trim()).filter(Boolean).forEach(e=>{let l=e.split("=")[0].trim().toLowerCase();"noopener"!==l&&"noreferrer"!==l&&t.add(e)}),t.add("noopener"),t.add("noreferrer"),Array.from(t).join(",")})(o),i=window.open.call(window,e,n,r);if(i&&"opener"in i)try{i.opener=null}catch{}return i},o=(e,o)=>{let n=new URL(e,t()),r=n.protocol.toLowerCase(),i="about:"===r&&"about:blank"===n.href;if("http:"!==r&&"https:"!==r&&!i)throw Error("Unsafe URL: only http/https/about:blank are allowed.");if(i)return(null==o?void 0:o.replace)?window.location.replace("about:blank"):window.location.assign("about:blank");if(n.protocol===window.location.protocol&&n.hostname===window.location.hostname&&n.port===window.location.port)return(null==o?void 0:o.replace)?window.location.replace(n.href):window.location.assign(n.href);if(!l(n.href))throw Error("Popup blocked: cross-origin navigation is opened in a new tab.")},n=new Proxy({},{get(e,t){switch(t){case"origin":return window.location.origin;case"protocol":return window.location.protocol;case"host":return window.location.host;case"hostname":return window.location.hostname;case"port":return window.location.port;case"pathname":return window.location.pathname;case"assign":return e=>o(e,{replace:!1});case"replace":return e=>o(e,{replace:!0});case"reload":return window.location.reload.bind(window.location);case"href":throw Error("Reading location.href is not allowed.");default:throw Error(`Access to location property "${t}" is not allowed.`)}},set(e,t,l){if("href"===t)return o(String(l),{replace:!1}),!0;throw Error("Mutation on location is not allowed.")}}),r={setTimeout:window.setTimeout.bind(window),clearTimeout:window.clearTimeout.bind(window),setInterval:window.setInterval.bind(window),clearInterval:window.clearInterval.bind(window),console,Math,Date,FormData,..."u">typeof Blob?{Blob}:{},..."u">typeof URL?{URL}:{},addEventListener:addEventListener.bind(window),open:l,location:n,...e||{}};return new Proxy(Object.create(null),{get(e,t){if("string"!=typeof t)return Reflect.get(e,t);if(t in r)return r[t];if(Object.prototype.hasOwnProperty.call(e,t))return e[t];if(i(t)){let e=window[t];return"function"==typeof e?e.bind(window):e}throw Error(`Access to global property "${t}" is not allowed.`)},set(e,t,l){if("string"!=typeof t)return Reflect.set(e,t,l),!0;if(t in r)throw Error(`Mutation of global property "${t}" is not allowed.`);return e[t]=l,!0},has:(e,t)=>"string"!=typeof t?Reflect.has(e,t):!!(t in r||Object.prototype.hasOwnProperty.call(e,t)||i(t))})}function d(e){let t={createElement:document.createElement.bind(document),querySelector:document.querySelector.bind(document),querySelectorAll:document.querySelectorAll.bind(document),...e||{}};return new Proxy(Object.create(null),{get(e,l){if("string"!=typeof l)return Reflect.get(e,l);if(l in t)return t[l];if(Object.prototype.hasOwnProperty.call(e,l))return e[l];if(a(l)){let e=document[l];return"function"==typeof e?e.bind(document):e}throw Error(`Access to document property "${l}" is not allowed.`)},set(e,l,o){if("string"!=typeof l)return Reflect.set(e,l,o),!0;if(l in t)throw Error(`Mutation of document property "${l}" is not allowed.`);return e[l]=o,!0},has:(e,l)=>"string"!=typeof l?Reflect.has(e,l):!!(l in t||Object.prototype.hasOwnProperty.call(e,l)||a(l))})}function u(e){var t;let l="u">typeof window&&window.navigator||void 0,o={},n=null==l||null==(t=l.clipboard)?void 0:t.writeText;"function"==typeof n&&(o.writeText=n.bind(l.clipboard));let r={clipboard:o};return Object.defineProperty(r,"onLine",{get:()=>!!(null==l?void 0:l.onLine),enumerable:!0,configurable:!1}),Object.defineProperty(r,"language",{get:()=>null==l?void 0:l.language,enumerable:!0,configurable:!1}),Object.defineProperty(r,"languages",{get:()=>(null==l?void 0:l.languages)?[...l.languages]:void 0,enumerable:!0,configurable:!1}),Object.assign(r,e||{}),new Proxy({},{get(e,t){if(t in r)return r[t];throw Error(`Access to navigator property "${String(t)}" is not allowed.`)}})}function c(e){let t={};try{let e=u();t.navigator=e;try{t.window=s({navigator:e})}catch{}}catch{}try{t.document=d()}catch{}return e?{...t,...e}:t}async function p(e,t,l,o){if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.runjs)return e.runjs(t,c(o),l)}l.d(t,{D1:()=>u,I2:()=>c,Vm:()=>n,Xh:()=>d,_:()=>p,ey:()=>s,yz:()=>r})},22928(e,t,l){function o(e){let t={};return Object.entries(e||{}).forEach(e=>{let[l,o]=e;null!=o&&(t[l]=o)}),t}function n(e,t,l){try{var o,n,r,i,a;let s=null==(n=e.dataSourceManager)||null==(o=n.getDataSource)?void 0:o.call(n,t||"main"),d=null==s||null==(i=s.collectionManager)||null==(r=i.getCollection)?void 0:r.call(i,l);return(null==d||null==(a=d.getPrimaryKey)?void 0:a.call(d))||"id"}catch(e){return"id"}}function r(e,t){var l,r;if(!t)return;let i=t.dataSourceKey||"main",a=t.collection||(null==(l=t.record)?void 0:l.__collectionName);if(!a)return;let s=n(e,i,a)||"id",d=void 0!==t.filterByTk?t.filterByTk:void 0!==t.id?t.id:null==(r=t.record)?void 0:r[s];if(void 0!==d)return o({collection:a,filterByTk:d,dataSourceKey:i,associationName:t.associationName,sourceId:t.sourceId,fields:t.fields,appends:t.appends})}function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=e=>!!e&&"object"==typeof e&&"string"==typeof e.collection&&(void 0!==e.filterByTk||void 0!==e.id||e.record),o={},n=(t,i)=>{if(l(t)){let l=r(e,t);l&&(o[i.join(".")]=l);return}if(Array.isArray(t)){for(let e=0;e<t.length;e++)n(t[e],[...i,String(e)]);return}if(t&&"object"==typeof t){for(let[e,l]of Object.entries(t))n(l,[...i,e]);return}};return n(t,[]),Object.keys(o).length?o:void 0}l.d(t,{d:()=>i})},88439(e,t,l){l.d(t,{w:()=>o});function o(e,t,l,o){let n={},r={};for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){let s=t[a],d={};if(s.uiSchema&&"object"==typeof s.uiSchema){for(let[e,t]of Object.entries(s.uiSchema))if(t&&"object"==typeof t){var i;let l=t;d[e]={type:l.type||"any",title:l.title||(null==(i=l["x-decorator-props"])?void 0:i.label)||e,interface:l["x-component"],uiSchema:l}}}let u=Object.keys(d).length>0;r[a]={type:"object",title:e.t(s.title)||a,display:u?"default":"none",properties:u?{params:{type:"object",title:"Parameters",display:"flatten",properties:d}}:void 0},n[a]={get params(){return l.getStepParams(o,a)||{}},get uiSchema(){return s.uiSchema},result:void 0}}e.defineProperty("steps",{get:()=>n})}},73398(e,t,l){function o(e){let t=new Set,l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)/g;for(;null!==(e=r.exec(n));)t.add(e[1]);let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]/g;for(;null!==(o=i.exec(n));)t.add(o[2])}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}function n(e){let t={},l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)([^\s)]*)/g;for(;null!==(e=r.exec(n));){let l=e[1],o=e[2]||"";if(t[l]=t[l]||[],o.startsWith("."))t[l].push(o.slice(1));else if(o.startsWith("[")){let e=o.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(e){let o=e[2],n=e[3]||"";t[l].push(`${o}${n}`)}else{let e=o.match(/^\[(\d+)\](.*)$/);if(e){let o=e[1],n=e[2]||"";t[l].push(`[${o}]${n}`)}}}else o.startsWith("(")&&!t[l].length&&t[l].push("")}let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]([^\s)]*)/g;for(;null!==(o=i.exec(n));){let e=o[2],l=o[3]||"";if(t[e]=t[e]||[],l.startsWith("."))t[e].push(l.slice(1));else if(l.startsWith("[")){let o=l.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(o){let l=o[2],n=o[3]||"";t[e].push(`${l}${n}`)}else{let o=l.match(/^\[(\d+)\](.*)$/);if(o){let l=o[1],n=o[2]||"";t[e].push(`[${l}]${n}`)}}}else l.startsWith("(")&&!t[e].length&&t[e].push("")}}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}l.d(t,{xI:()=>m,vP:()=>y,$S:()=>f,pc:()=>g,Cg:()=>c,nN:()=>b,ju:()=>x,Xx:()=>h,vE:()=>p,XU:()=>u,UX:()=>v});var r=l(22928),i=l(35846),a=l(44476),s=l(2543),d=l.n(s);function u(e){var t,l,o,n;let r=e.resource,i=e.collection,a=e.record,s=(null==i?void 0:i.name)||(null==r||null==(t=r.getResourceName)?void 0:t.call(r)),d=(null==i?void 0:i.dataSourceKey)||(null==r||null==(l=r.getDataSourceKey)?void 0:l.call(r)),u=(null==r||null==(o=r.getFilterByTk)?void 0:o.call(r))??(null==i||null==(n=i.getFilterByTK)?void 0:n.call(i,a));if(!s||null==u)return;let c=String(s).split(".");return{collection:c[c.length-1],dataSourceKey:d,filterByTk:u}}function c(e){var t,l,o;let n=e.view;if(!n)return;let r=(null==n?void 0:n.inputArgs)||{},i=(null==r?void 0:r.collectionName)||(null==n||null==(t=n.record)?void 0:t.collection),a=(null==r?void 0:r.dataSourceKey)||(null==n||null==(l=n.record)?void 0:l.dataSourceKey)||"main",s=(null==r?void 0:r.filterByTk)||(null==n||null==(o=n.record)?void 0:o.filterByTk),d=null==r?void 0:r.associationName,u=null==r?void 0:r.sourceId;if(i&&null!=s)return{collection:i,dataSourceKey:a,filterByTk:s,sourceId:u,associationName:d}}function p(e,t){var l,o,n;let r=null==(l=e.inputArgs)?void 0:l.record,i=null==(o=e.collection)?void 0:o.filterTargetKey;if(!r||!i)return;let a=t.view,s=null==a||null==(n=a.inputArgs)?void 0:n.filterByTk,u=r[i];if(null!=s&&null!=u&&s===u)return d().cloneDeep(r)}function h(e,t){return l=>{var o,n,r,i;if(!("record"===l||l.startsWith("record.")))return!1;let s=t();if(!s)return!0;if("record"===l)return!1;let d=c(e),u=null==d?void 0:d.collection,p=(null==d?void 0:d.dataSourceKey)||"main";if(!u)return!0;let h=null==(n=e.dataSourceManager)||null==(o=n.getDataSource)?void 0:o.call(n,p),m=null==h||null==(i=h.collectionManager)||null==(r=i.getCollection)?void 0:r.call(i,u);if(!m)return!0;let f=(0,a.H)(()=>m,()=>s),g=l.startsWith("record.")?l.slice(7):"";return!!g&&f(g)}}function m(e,t){let l=(0,a.H)(e,()=>t());return o=>{let n=t();if(!n)return!0;if(!o)return!1;let r=e();if(!o.includes(".")){var i;let e,t=o;return r&&("function"==typeof r.getField&&(e=r.getField(t)),e||"function"!=typeof r.getFields||(e=(r.getFields()||[]).find(e=>(null==e?void 0:e.name)===t))),!!(null==e||null==(i=e.isAssociationField)?void 0:i.call(e))&&null==(null==n?void 0:n[t])}return l(o)}}async function f(e,t,l){let o=await (0,i.H)(e,t,!0)();return o?{...o,buildVariablesParams:e=>l?l(e):u(e)}:null}function g(e,t,l){let o=async()=>f(e,t,l);return o.title=t,o}function v(e,t,l){var o,n;return g(t,(null==l?void 0:l.title)?(null==(o=e.t)?void 0:o.call(e,l.title))||l.title:(null==(n=e.t)?void 0:n.call(e,"Current record"))||"Current record",e=>u(e))}let y=o,b=n;async function x(e,t){let l=Object.keys(n(t)||{});if(!l.length)return;let o={};for(let t of l){var i;let l,n=null==(i=e.getPropertyOptions)?void 0:i.call(e,t),r=null==n?void 0:n.meta;if(r){try{let t="function"==typeof r?await r():r,o=null==t?void 0:t.buildVariablesParams;"function"==typeof o&&(l=await o(e))}catch(e){continue}l&&(o[t]=l)}}return(0,r.d)(e,o)}},52249(e,t,l){l.d(t,{sp:()=>w,bt:()=>A,U:()=>z,N5:()=>T,xB:()=>_,mW:()=>E,fP:()=>$});var o=l(74848),n=l(96540),r=l(99418),i=l(40532),a=l(29007),s=l(52568),d=l(73398);function u(e,t){let l=t=>e.t(t),o=e=>{var t,l;if(!e)return!1;let o=Array.isArray(null==(t=e.navigation)?void 0:t.viewStack)?e.navigation.viewStack:[],n=null==e||null==(l=e.inputArgs)?void 0:l.openerUids,r=Array.isArray(n)&&n.length>0;return o.length>=2||r},n=()=>o(t??e.view),r=async e=>{let l=t??e.view;if(!l||!o(l))return;let n=await c(e,l),r=null==n?void 0:n.resource;return(null==r?void 0:r.collectionName)&&null!=r.filterByTk?{collection:r.collectionName,dataSourceKey:r.dataSourceKey||"main",filterByTk:r.filterByTk,associationName:r.associationName,sourceId:r.sourceId}:(0,d.Cg)(e)},i=async()=>{var t,l,o,n;let i=await r(e);if(!(null==i?void 0:i.collection))return null;let a=null==(l=e.dataSourceManager)||null==(t=l.getDataSource)?void 0:t.call(l,i.dataSourceKey||"main");return(null==a||null==(n=a.collectionManager)||null==(o=n.getCollection)?void 0:o.call(n,i.collection))||null},a=async(t,l)=>{var o,n,r,i,a,s,d;try{let s=l||e,d=null==(o=s.view)?void 0:o.navigation,u=Array.isArray(null==d?void 0:d.viewStack)?d.viewStack:[];if(u.length<2||t<1)return;let c=u.length-1-t;if(c<0)return;let p=u[c];if(!(null==p?void 0:p.viewUid))return;let h=null==(n=s.engine)?void 0:n.getModel(p.viewUid,!0);if(!h)try{h=await s.engine.loadModel({uid:p.viewUid})}catch(t){null==(a=s.logger||e.logger)||null==(i=a.warn)||i.call(a,{err:t},"[FlowEngine] popup.getParentRecordRef loadModel failed")}let m=(null==h||null==(r=h.getStepParams)?void 0:r.call(h,"popupSettings","openView"))||{},f=null==m?void 0:m.collectionName,g=(null==m?void 0:m.dataSourceKey)||"main",v=(null==p?void 0:p.filterByTk)??(null==p?void 0:p.sourceId);if(!f||null==v)return;return{collection:f,dataSourceKey:g,filterByTk:v,sourceId:null==p?void 0:p.sourceId,associationName:null==m?void 0:m.associationName}}catch(t){null==(d=(null==l?void 0:l.logger)||e.logger)||null==(s=d.warn)||s.call(d,{err:t},"[FlowEngine] popup.getParentRecordRef failed");return}},s=l=>{try{var o;let n=null==(o=t??e.view)?void 0:o.navigation;return(Array.isArray(null==n?void 0:n.viewStack)?n.viewStack:[]).length>=l+1}catch(e){return!1}},u=t=>{let o=()=>({type:"object",title:l("Parent popup"),disabled:()=>!s(t),disabledReason:()=>s(t)?void 0:l("No parent popup"),hidden:()=>!s(t),properties:async()=>{let o=await a(t),n={};if(n.uid={type:"string",title:l("Popup uid")},o){let t=(()=>{try{var t,l,n,r;let i=null==(l=e.dataSourceManager)||null==(t=l.getDataSource)?void 0:t.call(l,o.dataSourceKey||"main");return(null==i||null==(r=i.collectionManager)||null==(n=r.getCollection)?void 0:n.call(r,o.collection||""))||null}catch(e){return null}})();n.record=await (0,d.$S)(()=>t,l("Popup record"),()=>o)||{type:"object",title:l("Popup record")}}else n.record={type:"object",title:l("Popup record")};return n.resource={type:"object",title:l("Data source"),properties:async()=>({dataSourceKey:{type:"string",title:l("Data source key")},collectionName:{type:"string",title:l("Collection name")},associationName:{type:"string",title:l("Association name")},filterByTk:{type:"string",title:l("filterByTk")},sourceId:{type:"string",title:l("sourceId")}})},n}});return o.title=l("Parent popup"),o},p=()=>({type:"object",title:l("Current popup"),disabled:()=>!n(),hidden:()=>!n(),buildVariablesParams:async e=>{var t,l,o,i,s,d;if(!n())return;let u=await r(e),c=null==(t=e.view)?void 0:t.inputArgs,p={};if(u){let e={...u};!e.associationName&&(null==c?void 0:c.associationName)&&(e.associationName=c.associationName),void 0===e.sourceId&&void 0!==(null==c?void 0:c.sourceId)&&(e.sourceId=null==c?void 0:c.sourceId),p.record=e}try{let t=null==(l=e.view)?void 0:l.navigation;if((Array.isArray(null==t?void 0:t.viewStack)?t.viewStack:[]).length>=2){let t=p,l=1,o=await a(l,e);for(;o;)t.parent||(t.parent={}),t.parent.record=o,t=t.parent,l+=1,o=await a(l,e)}}catch(t){null==(i=e.logger)||null==(o=i.debug)||o.call(i,{err:t},"[FlowEngine] buildVariablesParams: build parent-chain failed")}try{let e=null==c?void 0:c.sourceId,t=null==c?void 0:c.associationName,l=(null==c?void 0:c.dataSourceKey)||"main";if(null!=e&&""!==e&&t&&"string"==typeof t){let o=String(t).split(".")[0];o&&(p.sourceRecord={collection:o,dataSourceKey:l,filterByTk:e})}}catch(t){null==(d=e.logger)||null==(s=d.debug)||s.call(d,{err:t},"[FlowEngine] buildVariablesParams: infer sourceRecord failed")}return p},properties:async()=>{var t,o,n,s,c,p;let h={};if(h.uid={type:"string",title:l("Popup uid")},await r(e)){let e=async()=>{let e=await i();return e?await (0,d.$S)(()=>e,l("Current popup record"),e=>r(e)):null};e.title=l("Current popup record"),e.hasChildren=!0,h.record=e}try{let r=null==(t=e.view)?void 0:t.inputArgs,i=null==r?void 0:r.sourceId,a=null==r?void 0:r.associationName,u=(null==r?void 0:r.dataSourceKey)||"main";if(!a||"string"!=typeof a||!a.includes(".")){let t=null==(o=e.view)?void 0:o.navigation,l=Array.isArray(null==t?void 0:t.viewStack)?t.viewStack:[],r=null==l?void 0:l[l.length-1];if(null==r?void 0:r.viewUid){let t=null==e||null==(n=e.engine)?void 0:n.getModel(r.viewUid,!0);t||(t=await e.engine.loadModel({uid:r.viewUid}));let l=(null==t||null==(s=t.getStepParams)?void 0:s.call(t,"popupSettings","openView"))||{};a=(null==l?void 0:l.associationName)||a,u=(null==l?void 0:l.dataSourceKey)||u}}if(null!=i&&""!==i&&a&&"string"==typeof a){let t=String(a).includes(".")?String(a).split(".")[0]:void 0;if(t){let o=()=>{try{var l,o,n,r;let i=null==(o=e.dataSourceManager)||null==(l=o.getDataSource)?void 0:l.call(o,u);return(null==i||null==(r=i.collectionManager)||null==(n=r.getCollection)?void 0:n.call(r,t))||null}catch(e){return null}},n=await (0,d.$S)(o,l("Current popup parent record"),()=>({collection:t,dataSourceKey:u,filterByTk:i}));n&&(h.sourceRecord=n)}}}catch(t){null==(p=e.logger)||null==(c=p.debug)||c.call(p,{err:t},"[FlowEngine] popup.properties: build sourceRecord failed")}return h.resource={type:"object",title:l("Data source"),properties:async()=>({dataSourceKey:{type:"string",title:l("Data source key")},collectionName:{type:"string",title:l("Collection name")},associationName:{type:"string",title:l("Association name")},filterByTk:{type:"string",title:l("filterByTk")},sourceId:{type:"string",title:l("sourceId")}})},await a(1)&&(h.parent=u(1)),h}});return p.title=l("Current popup"),p.sort=975,p}async function c(e,t){var l,o,n;let r=null==t?void 0:t.navigation,i=Array.isArray(null==r?void 0:r.viewStack)?r.viewStack:[],a=null==t||null==(l=t.inputArgs)?void 0:l.openerUids,s=Array.isArray(a)&&a.length>0;if(!(i.length>=2||s))return;if(!i.length){let e=(null==t?void 0:t.inputArgs)||{};if(!(e.collectionName||null!=e.filterByTk||null!=e.sourceId||e.associationName||e.viewUid))return;return{uid:e.viewUid,resource:{dataSourceKey:e.dataSourceKey||"main",collectionName:e.collectionName,associationName:e.associationName,filterByTk:e.filterByTk,sourceId:e.sourceId}}}let d=async t=>{var l,o,n,r,a,s;if(t<0||!(null==(l=i[t])?void 0:l.viewUid))return;let u=i[t].viewUid,c=null==(o=e.engine)?void 0:o.getModel(u,!0);c||(c=await (null==(s=e.engine)?void 0:s.loadModel({uid:u})));let p=(null==c||null==(n=c.getStepParams)?void 0:n.call(c,"popupSettings","openView"))||{},h=null==p?void 0:p.collectionName,m={uid:u,resource:{dataSourceKey:(null==p?void 0:p.dataSourceKey)||"main",collectionName:h,associationName:null==p?void 0:p.associationName,filterByTk:null==(r=i[t])?void 0:r.filterByTk,sourceId:null==(a=i[t])?void 0:a.sourceId}},f=await d(t-1);return f&&(m.parent=f),m};return await d(((null==t||null==(n=t.navigation)||null==(o=n.viewStack)?void 0:o.length)||1)-1)}function p(e,t){let l=/^(?:record|sourceRecord)(?:\.|$)|^parent(?:\.parent)*(?:\.(?:record|sourceRecord))(?:\.|$)/;e.defineProperty("popup",{get:async()=>c(e,t),meta:u(e,t),resolveOnServer:e=>{try{return!!e&&l.test(e)}catch(e){return!1}}})}var h=l(18182);let m=(0,n.forwardRef)((e,t)=>{let{afterClose:l,footer:r,header:i,hidden:a,...s}=e,[d,u]=(0,n.useState)(!0),[c,p]=(0,n.useState)(s),[m,f]=(0,n.useState)(()=>r),[g,v]=(0,n.useState)(i);(0,n.useImperativeHandle)(t,()=>({destroy:()=>{u(!1),null==l||l()},update:e=>p(t=>({...t,...e})),setFooter:e=>{f(e)},setHeader:e=>{0===Object.values(e||{}).length?v(null):v(e)}}));let y={...c,title:(null==g?void 0:g.title)||c.title,extra:null==g?void 0:g.extra,footer:void 0!==m?m:c.footer??null},b=n.useMemo(()=>document.querySelector("#nocobase-app-container"),[]);return(0,o.jsx)(h.A,{closable:!1,rootClassName:a?"nb-hidden":"",getContainer:b,...y,open:d,onCancel:c.onCancel,afterClose:()=>{null==l||l()},children:c.children})});function f(){let[e,t]=n.useState([]);return[e,n.useCallback(e=>(t(t=>[...t,e]),()=>{t(t=>t.filter(t=>t!==e))}),[])]}var g=l(16639),v=l(20616),y=l(47451);async function b(e,t){var l;return!!t.force||!1!==await (null==(l=e.beforeClose)?void 0:l.call(e,t))}let x=0;function w(){let e=n.useRef(null),t=(t,l)=>{var u,c,h;let f,w,S=null==l?void 0:l.engine;x+=1;let M=n.createRef(),F=new Promise(e=>{w=e}),A=null,k=null,C=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return A=t,null==(e=M.current)||e.setFooter(t),()=>{var e;A=null,null==(e=M.current)||e.setFooter(null)}},[t]),null},P=e=>(n.useEffect(()=>{var t;return k=e,null==(t=M.current)||t.setHeader(e),()=>{var e;k=null,null==(e=M.current)||e.setHeader(null)}},[e]),null),j=new a.cB,I=(0,y._)(l.engine),E=(0,g.eX)(S,I);j.defineProperty("engine",{value:I}),j.addDelegate(I.context),!1!==t.inheritContext?j.addDelegate(l):j.addDelegate(l.engine.context);let _=!1,R={type:"dialog",inputArgs:t.inputArgs||{},preventClose:!!t.preventClose,beforeClose:void 0,destroy:e=>{var l,o,n,r;if(_)return;_=!0,null==(l=t.onClose)||l.call(t),null==(o=M.current)||o.destroy(),null==f||f(),null==w||w(e);let i=null==E?void 0:E.emitter;(0,g.Z8)(i),null==i||null==(r=i.emit)||r.call(i,g.B9,{type:"dialog",viewUid:null==R||null==(n=R.inputArgs)?void 0:n.viewUid}),I.unlinkFromStack()},update:e=>{var t;return null==(t=M.current)?void 0:t.update(e)},close:async(e,l)=>{var o,n;return(!t.preventClose||!!l)&&!!await b(R,{result:e,force:l})&&(t.triggerByRouter&&(null==(n=t.inputArgs)||null==(o=n.navigation)?void 0:o.back)?t.inputArgs.navigation.back():R.destroy(e),!0)},Footer:C,Header:P,setFooter:e=>{var t;A=e,null==(t=M.current)||t.setFooter(e)},setHeader:e=>{var t;k=e,null==(t=M.current)||t.setHeader(e)},navigation:null==(u=t.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(l,j)}};j.defineProperty("view",{get:()=>R,resolveOnServer:(0,d.Xx)(j,()=>(0,d.vE)(l,j))}),I.setDestroyView(()=>{var e,l;t.triggerByRouter&&(null==(l=t.inputArgs)||null==(e=l.navigation)?void 0:e.back)&&t.inputArgs.navigation.back(),R.destroy()}),p(j,R);let T=(0,i.observer)(()=>{var e,l,i,a;let s=n.useRef(!1),d="function"==typeof t.content?t.content(R,j):t.content,u="string"==typeof d?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(d)}}):d;return(n.useEffect(()=>{var e;null==(e=t.onOpen)||e.call(t,R,j)},[]),(null==(l=t.inputArgs)||null==(e=l.hidden)?void 0:e.value)&&!s.current)?null:(s.current=!0,(0,o.jsx)(m,{className:"nb-dialog-overflow-hidden",ref:M,hidden:null==(a=t.inputArgs)||null==(i=a.hidden)?void 0:i.value,footer:A,header:k,...t,onCancel:()=>{R.close(t.result)},children:u}))},{displayName:"DialogWithContext"}),D=(null==t||null==(c=t.inputArgs)?void 0:c.viewUid)||`page-${x}`,N=(0,o.jsx)(v.I6,{engine:I,children:(0,o.jsx)(s.YQ,{context:j,children:(0,o.jsx)(T,{})})},D);return f=null==(h=e.current)?void 0:h.patchElement(N),Object.assign(F,R)},l=n.useMemo(()=>({open:t}),[]),u=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[r]),(0,o.jsx)(o.Fragment,{children:l})}));return[l,(0,o.jsx)(u,{ref:e},"dialog-holder")]}var S=l(97134),M=l(61793);let F=n.forwardRef((e,t)=>{var l;let{children:r,footer:i,title:a,extra:s,hidden:d,isMobile:u,...c}=e,[p,h]=n.useState(!0),[m,f]=n.useState(()=>i),[g,v]=n.useState({title:a,extra:s,...c.header});n.useImperativeHandle(t,()=>({destroy:()=>{h(!1)},update:e=>{Object.assign(c,e)},setFooter:e=>{f(e)},setHeader:e=>{0===Object.values(e||{}).length?v(null):v(e)}}),[]);let y=n.useMemo(()=>document.querySelector("#nocobase-app-container"),[]);return u?(0,o.jsx)(M.D,{className:d?"nb-hidden":"",visible:p,...c,footer:m,...g,onClose:c.onClose,children:r}):(0,o.jsx)(S.A,{rootClassName:d?"nb-hidden":"",closable:!1,getContainer:y,...c,open:p,footer:m,styles:{...c.styles,footer:{display:"flex",justifyContent:"flex-end",...null==(l=c.styles)?void 0:l.footer}},...g,onClose:c.onClose,children:r})});function A(){let e=n.useRef(null),t=n.useMemo(()=>i.observable.shallow({value:[]}),[]),l=n.memo(e=>{let{index:r}=e,[a,s]=n.useState(null);return(n.useEffect(()=>{(0,i.autorun)(()=>{let e=t.value;e[r]&&a!==e[r]&&s(e[r]),e[r]||s(null)})},[a,r]),a)?(0,o.jsx)(a,{children:(0,o.jsx)(l,{index:r+1})}):null});l.displayName="RenderNestedDrawer";let u=(t,l)=>{var u,c;let h,m,f=l.engine,x=n.createRef(),w=new Promise(e=>{m=e}),S=null,M=null,A=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return S=t,null==(e=x.current)||e.setFooter(t),()=>{var e;S=null,null==(e=x.current)||e.setFooter(null)}},[t]),null},k=e=>(n.useEffect(()=>{var t;return M=e,null==(t=x.current)||t.setHeader(e),()=>{var e;M=null,null==(e=x.current)||e.setHeader(null)}},[e]),null),C=new a.cB,P=(0,y._)(l.engine),j=(0,g.eX)(f,P);C.defineProperty("engine",{value:P}),C.addDelegate(P.context),!1!==t.inheritContext?C.addDelegate(l):C.addDelegate(l.engine.context);let I=!1,E={type:"drawer",inputArgs:t.inputArgs||{},preventClose:!!t.preventClose,beforeClose:void 0,destroy:e=>{var l,o,n,r;if(I)return;I=!0,null==(l=t.onClose)||l.call(t),null==(o=x.current)||o.destroy(),null==h||h(),null==m||m(e);let i=null==j?void 0:j.emitter;(0,g.Z8)(i),null==i||null==(r=i.emit)||r.call(i,g.B9,{type:"drawer",viewUid:null==E||null==(n=E.inputArgs)?void 0:n.viewUid}),P.unlinkFromStack()},update:e=>{var t;return null==(t=x.current)?void 0:t.update(e)},close:async(e,l)=>{var o,n;return(!t.preventClose||!!l)&&!!await b(E,{result:e,force:l})&&(t.triggerByRouter&&(null==(n=t.inputArgs)||null==(o=n.navigation)?void 0:o.back)?t.inputArgs.navigation.back():E.destroy(e),!0)},Footer:A,Header:k,setFooter:e=>{var t;S=e,null==(t=x.current)||t.setFooter(e)},setHeader:e=>{var t;M=e,null==(t=x.current)||t.setHeader(e)},navigation:null==(u=t.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(l,C)}};C.defineProperty("view",{get:()=>E,resolveOnServer:(0,d.Xx)(C,()=>(0,d.vE)(l,C))}),P.setDestroyView(()=>{var e,l;t.triggerByRouter&&(null==(l=t.inputArgs)||null==(e=l.navigation)?void 0:e.back)&&t.inputArgs.navigation.back(),E.destroy()}),p(C,E);let _=n.memo((0,i.observer)(e=>{var l,i,a,s;let d=n.useRef(!1),u="function"==typeof t.content?t.content(E,C):t.content,c="string"==typeof u?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(u)}}):u;return(n.useEffect(()=>{var e;null==(e=t.onOpen)||e.call(t,E,C)},[]),(null==(i=t.inputArgs)||null==(l=i.hidden)?void 0:l.value)&&!d.current)?(0,o.jsx)(o.Fragment,{children:e.children}):(d.current=!0,(0,o.jsxs)(F,{ref:x,...t,footer:S,header:t.header||M,hidden:null==(s=t.inputArgs)||null==(a=s.hidden)?void 0:a.value,onClose:()=>{E.close(t.result)},isMobile:C.isMobileLayout,children:[c,e.children]}))}));_.displayName="DrawerWithContext";let R=n.memo(e=>{let{children:t}=e;return(0,o.jsx)(v.I6,{engine:P,children:(0,o.jsx)(s.YQ,{context:C,children:(0,o.jsx)(_,{children:t})})})});return R.displayName="RenderDrawer",h=null==(c=e.current)?void 0:c.patchElement(R),Object.assign(w,E)},c=n.useMemo(()=>({open:u}),[]),h=n.memo(n.forwardRef((e,r)=>{let[i,a]=f();return n.useImperativeHandle(r,()=>({patchElement:a}),[a]),n.useEffect(()=>{t.value=i},[i]),(0,o.jsx)(l,{index:0})}));return[c,(0,o.jsx)(h,{ref:e},"drawer-holder")]}var k=l(40961),C=l(31333),P=l(71021);let j=(0,n.forwardRef)((e,t)=>{let[l,r]=n.useState({}),{visible:i=!0,footer:a=null,header:s=null,children:d,hidden:u,title:c,styles:p={},zIndex:h=4}={...e,...l},m=(0,n.useRef)(!1),f=(0,v.uf)(),[g,y]=(0,n.useState)(()=>a),[b,x]=(0,n.useState)(s);(0,n.useImperativeHandle)(t,()=>({destroy:()=>{m.current||(m.current=!0)},update:e=>{r(e)},setFooter:e=>{y(e)},setHeader:e=>{0===Object.values(e||{}).length?x(null):x(e)}}));let w=(0,n.useMemo)(()=>({display:u?"none":"flex",flexDirection:"column",height:"100%",zIndex:h}),[u,h]),S=(0,n.useMemo)(()=>{if(!b&&!c)return null;let{title:t=c,extra:l}=b||{},n=f.context.themeToken;return(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:`${n.paddingSM}px ${n.padding}px`,borderBottom:`1px solid ${n.colorSplit}`,backgroundColor:n.colorBgContainer,...p.header},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:n.marginXS},children:[(0,o.jsx)(P.Ay,{type:"text",size:"small",icon:(0,o.jsx)(C.A,{}),onClick:()=>{if(!m.current){var t;m.current=!0,null==(t=e.onClose)||t.call(e)}},style:{color:n.colorTextTertiary}}),t&&(0,o.jsx)("div",{style:{fontSize:n.fontSizeLG,fontWeight:n.fontWeightStrong,color:n.colorText},children:t})]}),l&&(0,o.jsx)("div",{children:l})]})},[b,c,f.context.themeToken,p.header,e.onClose]),M=(0,n.useMemo)(()=>{if(!g)return null;let e=f.context.themeToken;return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",padding:`${e.paddingXS}px ${e.padding}px`,borderTop:`1px solid ${e.colorSplit}`,backgroundColor:e.colorBgContainer,...p.footer},children:g})},[g,f.context.themeToken,p.footer]);return i?(0,o.jsxs)("div",{style:{...w,...p.content},children:[S,(0,o.jsx)("div",{style:{flex:1,overflowY:"auto",...p.body},children:d}),M]}):null}),I=0,E="nocobase-embed-container",_="nocobaseEmbedReplacing",R=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[r]),(0,o.jsx)(o.Fragment,{children:l})}));function T(){let e=n.useRef(null),t=n.useRef(null),l=(l,r)=>{var u,c,h;let m,f,x=null==r?void 0:r.engine;I+=1;let w=n.createRef(),S=new Promise(e=>{f=e}),M=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return null==(e=w.current)||e.setFooter(t),()=>{var e;null==(e=w.current)||e.setFooter(null)}},[t]),null},F=e=>(n.useEffect(()=>{var t;return null==(t=w.current)||t.setHeader(e),()=>{var e;null==(e=w.current)||e.setHeader(null)}},[e]),null),{target:A,content:C,preventClose:P,inheritContext:R=!0,inputArgs:T={},...D}=l,N=A instanceof HTMLElement&&A.id===E;if(N&&t.current)try{A.dataset[_]="1",t.current.destroy()}finally{delete A.dataset[_],t.current=null}let O=new a.cB,$=(0,y._)(r.engine),B=(0,g.eX)(x,$);O.defineProperty("engine",{value:$}),O.addDelegate($.context),R?O.addDelegate(r):O.addDelegate(r.engine.context);let q={type:"embed",inputArgs:T,preventClose:!!l.preventClose,beforeClose:void 0,destroy:e=>{var o,n,r,i,a;if(null==(o=l.onClose)||o.call(l),null==f||f(e),null==(n=w.current)||n.destroy(),null==m||m(),N&&(t.current=null),!(N&&A instanceof HTMLElement&&(null==(r=A.dataset)?void 0:r[_])==="1")){let e=null==B?void 0:B.emitter;(0,g.Z8)(e),null==e||null==(a=e.emit)||a.call(e,g.B9,{type:"embed",viewUid:null==q||null==(i=q.inputArgs)?void 0:i.viewUid})}$.unlinkFromStack()},update:e=>{var t;return null==(t=w.current)?void 0:t.update(e)},close:async(e,t)=>{var o,n;return(!P||!!t)&&!!await b(q,{result:e,force:t})&&(l.triggerByRouter&&(null==(n=l.inputArgs)||null==(o=n.navigation)?void 0:o.back)?l.inputArgs.navigation.back():q.destroy(e),!0)},Header:F,Footer:M,setFooter:e=>{var t;null==(t=w.current)||t.setFooter(e)},setHeader:e=>{var t;null==(t=w.current)||t.setHeader(e)},navigation:null==(u=l.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(r,O)}};O.defineProperty("view",{get:()=>q,resolveOnServer:(0,d.Xx)(O,()=>(0,d.vE)(r,O))}),p(O,q);let L=(0,i.observer)(()=>{var e,t,r,i;let a=n.useRef(!1),s=n.useMemo(()=>"function"==typeof C?C(q,O):C,[]);return(O.themeToken,n.useEffect(()=>{var e;null==(e=l.onOpen)||e.call(l,q,O)},[]),(null==(t=l.inputArgs)||null==(e=t.hidden)?void 0:e.value)&&!a.current)?null:(a.current=!0,(0,o.jsx)(j,{ref:w,hidden:null==(i=l.inputArgs)||null==(r=i.hidden)?void 0:r.value,...D,onClose:()=>{q.close(l.result)},children:s}))},{displayName:"PageWithContext"}),V=(null==T?void 0:T.viewUid)||`page-${I}`,z=(0,o.jsx)(v.I6,{engine:$,children:(0,o.jsx)(s.YQ,{context:O,children:(0,o.jsx)(L,{})})},V);return m=A&&A instanceof HTMLElement?null==(c=e.current)?void 0:c.patchElement(k.createPortal(z,A,V)):null==(h=e.current)?void 0:h.patchElement(z),N&&(t.current={destroy:q.destroy}),Object.assign(S,q)};return[n.useMemo(()=>({open:l}),[]),(0,o.jsx)(R,{ref:e},"page-holder")]}var D=l(28073);let N=0,O=n.forwardRef((e,t)=>{var l,r;let{afterClose:i,content:a,placement:s,rect:d,...u}=e,[c,p]=n.useState(!0),[h,m]=n.useState({content:a,placement:s,rect:d,...u});return n.useImperativeHandle(t,()=>({destroy:()=>p(!1),update:e=>m(t=>({...t,...e})),close:(e,t)=>p(!1)})),n.useEffect(()=>{c||null==i||i()},[c,i]),(0,o.jsx)(D.A,{arrow:!1,open:c,trigger:["click"],destroyTooltipOnHide:!0,content:h.content,placement:h.placement,getPopupContainer:()=>document.querySelector("#nocobase-app-container")||document.body,onOpenChange:e=>{(e||!h.preventClose)&&(p(e),e||null==i||i())},...h,children:(0,o.jsx)("span",{style:{position:"absolute",top:((null==(l=h.rect)?void 0:l.top)??0)+window.scrollY,left:((null==(r=h.rect)?void 0:r.left)??0)+window.scrollX,width:0,height:0}})})});function $(){let e=n.useRef(null),t=t=>{var l,i;let a,s;N+=1;let{target:d,placement:u="rightTop",content:c,...p}=t,h=n.createRef(),m=(null==d||null==(l=d.getBoundingClientRect)?void 0:l.call(d))??{top:0,left:0},f=new Promise(e=>{s=e}),g={type:"popover",destroy:()=>{var e;return null==(e=h.current)?void 0:e.destroy()},update:e=>{var t;return null==(t=h.current)?void 0:t.update(e)},close:e=>{var t;null==s||s(e),null==(t=h.current)||t.close(e)}},v="function"==typeof c?c(g):c,y="string"==typeof v?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(v)}}):v,b=(0,o.jsx)(O,{ref:h,content:y,placement:u,rect:m,afterClose:()=>{var e;null==a||a(),null==(e=t.onClose)||e.call(t),null==s||s(t.result)},...p},`popover-${N}`);return a=null==(i=e.current)?void 0:i.patchElement(b),Object.assign(f,g)},l=n.useMemo(()=>({open:t}),[]),i=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[]),(0,o.jsx)(o.Fragment,{children:l})}));return[l,(0,o.jsx)(i,{ref:e},"popover-holder")]}var B=l(50467),q=l(52847);function L(e){return null==e?"":e&&"object"==typeof e&&!Array.isArray(e)?encodeURIComponent(Object.entries(e).map(e=>{let[t,l]=e;return`${encodeURIComponent(String(t))}=${encodeURIComponent(String(l))}`}).join("&")):encodeURIComponent(String(e))}function V(e){if(!e||0===e.length)return"/admin";let t=["admin"];return e.forEach((e,l)=>{if(l>0&&t.push("view"),t.push(e.viewUid),e.tabUid&&t.push("tab",e.tabUid),null!=e.filterByTk){let l=L(e.filterByTk);l&&t.push("filterbytk",l)}e.sourceId&&t.push("sourceid",e.sourceId)}),"/"+t.join("/")}class z{setViewStack(e){this.viewStack=Object.freeze([...e]),this.viewParams=this.viewStack[this.viewStack.length-1]||{}}changeTo(e){let t=V(this.viewStack.map((t,l)=>l===this.viewStack.length-1?{...t,...e}:{...t}));this.ctx.router.navigate(t,{replace:!0})}navigateTo(e,t){let l=V([...this.viewStack,e]);this.ctx.router.navigate(l,t)}back(){let e=V(this.viewStack.slice(0,-1));this.ctx.router.navigate(e,{replace:!0})}constructor(e,t){(0,B._)(this,"viewStack",void 0),(0,B._)(this,"ctx",void 0),(0,B._)(this,"viewParams",void 0),this.setViewStack(t),this.ctx=e,(0,q.E8)(this,{viewParams:q.sH})}}},16639(e,t,l){l.d(t,{B9:()=>n,FH:()=>s,HK:()=>r,Z8:()=>d,eX:()=>p,i6:()=>i,tb:()=>o});let o=Symbol.for("__NOCOBASE_VIEW_ACTIVATED_VERSION__"),n="view:activated",r="dataSource:dirty",i="__NOCOBASE_ENGINE_SCOPE__",a="view";function s(e){let t=Reflect.get(e,o),l="number"==typeof t?t:Number(t);return Number.isFinite(l)&&l>0?l:0}function d(e){let t=s(e);if(!Object.isExtensible(e))return t;let l=t+1;return Reflect.set(e,o,l),l}function u(e){return Reflect.get(e,i)===a}function c(e){let t=e,l=0;for(;t&&l++<50;){if(u(t))return t;t=t.previousEngine}}function p(e,t){if(!e)return;let l=c(e);return l||c(null==t?void 0:t.previousEngine)||e}},40542(e,t,l){l.d(t,{D:()=>o});let o=(e,t,l)=>{if(!e)return l;let n=t.split("."),r=[],i=e,a=!1;for(let e=0;e<n.length;e++){let t=n[e];if(Array.isArray(i)){for(let t of(a=!0,i)){let i=o(t,n.slice(e).join("."),l);r=r.concat(i)}break}if((null==i?void 0:i[t])===void 0)break;i=i[t],e===n.length-1&&r.push(i)}return 0===(r=r.filter(e=>void 0!==e)).length?l:a?r.filter(e=>null!==e):r[0]}},96436(e,t,l){l.r(t),l.d(t,{getDayRange:()=>tl,isEmptyFilter:()=>ed,sleep:()=>es,getDateVars:()=>ta,isString:()=>ee,unflatten:()=>e8,sortTree:()=>ea,forEach:()=>ek,utc2unit:()=>tn,extractUsedVariablePaths:()=>tI,getValuesByPath:()=>eC,isArray:()=>et,moment2str:()=>eb,transformLiquidContext:()=>t_,isURL:()=>tF,isPortalInBody:()=>tb,extractUsedVariableNames:()=>tj,parseHTML:()=>tx,toGmt:()=>ep,isPlainObject:()=>eo,lockdownSes:()=>tg,splitPathToTwoParts:()=>ts,transformFilter:()=>G,parseSQLBindParams:()=>tD,getPickerFormat:()=>eM,nextTick:()=>er,removeNullCondition:()=>eu,CollectionsGraph:()=>V,isValidFilter:()=>eR,evaluateConditions:()=>Z,toUnit:()=>tr,BASE_BLOCKED_IDENTIFIERS:()=>th,getFormatFromDateStr:()=>eA,removeInvalidFilterItems:()=>J,toLocal:()=>eh,getDayRangeByParams:()=>q,getDefaultFormat:()=>ec,transformMultiColumnToSingleColumn:()=>tC,treeFind:()=>ei,transformSQL:()=>tN,parseFilter:()=>tt,flatten:()=>e5,getOffsetRangeByParams:()=>N,isEmpty:()=>el,offsetFromString:()=>ex,tval:()=>tv,error:()=>eL,Registry:()=>tu,lodash:()=>n(),parse:()=>eO,hasEmptyValue:()=>en,toFixedByStep:()=>eJ,getDateTimeFormat:()=>eF,showToast:()=>eH,Handlebars:()=>eI(),getLiquidContext:()=>tR,merge:()=>eU,dayjs:()=>i(),parseLiquidContext:()=>tT,uid:()=>tM,str2moment:()=>eg});var o=l(2543),n=l.n(o),r=l(74353),i=l.n(r),a=l(97375),s=l.n(a),d=l(90445),u=l.n(d),c=l(43522),p=l.n(c),h=l(37872),m=l.n(h),f=l(98867),g=l.n(f),v=l(8906),y=l.n(v),b=l(68313),x=l.n(b),w=l(21840),S=l.n(w),M=l(41816),F=l.n(M),A=l(88569),k=l.n(A),C=l(83826),P=l.n(C),j=l(8134),I=l.n(j),E=l(28623),_=l.n(E),R=l(46986),T=l.n(R);i().extend(T()),i().extend(S()),i().extend(k()),i().extend(P()),i().extend(F()),i().extend(x()),i().extend(m()),i().extend(g()),i().extend(y()),i().extend(I()),i().extend(_()),i().extend(u()),i().extend(s()),i().extend(p());let D=e=>{if(!e)return i()();if(/^[+-]\d{2}:\d{2}$/.test(e)){let[t,l,o]=e.match(/([+-])(\d{2}):(\d{2})/).slice(1),n=(60*parseInt(l)+parseInt(o))*("+"===t?1:-1);return i()().utcOffset(n)}return i()().tz(e)},N=e=>{let t,l,{type:o,unit:n="day",number:r=1,timezone:i}=e,a=D(i),s="week"===n?"isoWeek":n;if("past"===o){let e=a.startOf(s);t=e.subtract(r,n).startOf(s),l=e.subtract(1,n).endOf(s)}else if("next"===o)l=(t=a.startOf(s).add(1,n).startOf(s)).add(r-1,n).endOf(s);else throw Error(`Unsupported type: ${o}`);return[t.format("YYYY-MM-DD HH:mm:ss"),l.format("YYYY-MM-DD HH:mm:ss")]},O=(e,t,l)=>{let o="isoWeek"===t?"week":t;return D(l).add(e,o).startOf(t)},$=(e,t,l)=>{let o="isoWeek"===t?"week":t;return D(l).add(e,o).endOf(t)},B={today:e=>[O(0,"day",null==e?void 0:e.timezone),$(0,"day",null==e?void 0:e.timezone)],yesterday:e=>[O(-1,"day",null==e?void 0:e.timezone),$(-1,"day",null==e?void 0:e.timezone)],tomorrow:e=>[O(1,"day",null==e?void 0:e.timezone),$(1,"day",null==e?void 0:e.timezone)],thisWeek:e=>[O(0,"isoWeek",null==e?void 0:e.timezone),$(0,"isoWeek",null==e?void 0:e.timezone)],lastWeek:e=>[O(-1,"isoWeek",null==e?void 0:e.timezone),$(-1,"isoWeek",null==e?void 0:e.timezone)],nextWeek:e=>[O(1,"isoWeek",null==e?void 0:e.timezone),$(1,"isoWeek",null==e?void 0:e.timezone)],thisMonth:e=>[O(0,"month",null==e?void 0:e.timezone),$(0,"month",null==e?void 0:e.timezone)],lastMonth:e=>[O(-1,"month",null==e?void 0:e.timezone),$(-1,"month",null==e?void 0:e.timezone)],nextMonth:e=>[O(1,"month",null==e?void 0:e.timezone),$(1,"month",null==e?void 0:e.timezone)],thisQuarter:e=>[O(0,"quarter",null==e?void 0:e.timezone),$(0,"quarter",null==e?void 0:e.timezone)],lastQuarter:e=>[O(-1,"quarter",null==e?void 0:e.timezone),$(-1,"quarter",null==e?void 0:e.timezone)],nextQuarter:e=>[O(1,"quarter",null==e?void 0:e.timezone),$(1,"quarter",null==e?void 0:e.timezone)],thisYear:e=>[O(0,"year",null==e?void 0:e.timezone),$(0,"year",null==e?void 0:e.timezone)],lastYear:e=>[O(-1,"year",null==e?void 0:e.timezone),$(-1,"year",null==e?void 0:e.timezone)],nextYear:e=>[O(1,"year",null==e?void 0:e.timezone),$(1,"year",null==e?void 0:e.timezone)]},q=e=>{if("past"===e.type||"next"===e.type)return N(e);let t=B[e.type];if(!t)throw Error(`Unsupported type: ${e.type}`);let[l,o]=t(e);return[l.format("YYYY-MM-DD HH:mm:ss"),o.format("YYYY-MM-DD HH:mm:ss")]};var L=l(38362);class V{static graphlib(){return L}static connectedNodes(e){let t=(0,o.castArray)(e.nodes),l=(0,o.castArray)(e.excludes||[]),n=V.build(e),r=new Set;for(let e of t)for(let t of L.alg.preorder(n,e))l.includes(t)||r.add(t);return Array.from(r)}static preOrder(e){return V.graphlib().alg.preorder(V.build(e),e.node)}static build(e){let t=e.collections,l="forward"===((null==e?void 0:e.direction)||"forward"),o=new L.Graph;for(let e of t)o.setNode(e.name);for(let e of t){for(let t of e.inherits||[])l?o.setEdge(e.name,t):o.setEdge(t,e.name);for(let t of e.fields||[])if(("hasMany"===t.type||"belongsTo"===t.type||"hasOne"===t.type)&&(l?o.setEdge(e.name,t.target):o.setEdge(t.target,e.name)),"belongsToMany"===t.type){let n=t.through;l?(o.setEdge(e.name,n),o.setEdge(n,t.target)):(o.setEdge(t.target,n),o.setEdge(n,e.name))}}return o}}var z=l(81814),K=l.n(z);function U(e){return"path"in e&&"operator"in e}function W(e){return"logic"in e&&"items"in e}function H(e){let{path:t,operator:l,value:o}=e;return{[t]:{[l]:o}}}function Y(e){let{logic:t,items:l}=e;return{[t]:l.map(e=>{if(U(e))return H(e);if(W(e))return Y(e);throw Error("Invalid filter item type")})}}function G(e){if(!e||"object"!=typeof e)throw Error("Invalid filter: filter must be an object");if(!W(e))throw Error("Invalid filter: filter must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid filter: items must be an array");return eu(Y(e))}function J(e){if(!e||"object"!=typeof e)throw Error("Invalid filter: filter must be an object");if(!W(e))throw Error("Invalid filter: filter must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid filter: items must be an array");return e.items=e.items.filter(e=>U(e)?!!e.operator:!!W(e)&&J(e)),{...e}}function X(e,t){let{path:l,operator:o,value:n}=e;return t(l,o,n)}function Q(e,t){let{logic:l,items:o}=e;if(!o||0===o.length)return!0;let n=o.map(e=>{if(U(e))return X(e,t);if(W(e))return Q(e,t);throw Error("Invalid filter item type")});if("$and"===l)return n.every(e=>!0===e);if("$or"===l)return n.some(e=>!0===e);throw Error(`Unsupported logic operator: ${l}`)}function Z(e,t){if(!e||"object"!=typeof e)throw Error("Invalid conditions: conditions must be an object");if(!W(e))throw Error("Invalid conditions: conditions must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid conditions: items must be an array");if("function"!=typeof t)throw Error("Invalid evaluator: evaluator must be a function");return Q(e,t)}let ee=e=>"string"==typeof e,et=e=>Array.isArray(e),el=e=>eo(e)?0===Object.keys(e).length:!!Array.isArray(e)&&0===e.length,eo=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);return null===t||t===Object.prototype},en=e=>{let t=!0;for(let l in e){if(t=!1,et(e[l])&&0===e[l].length||!e[l])return!0;if(eo(e[l])||et(e[l]))return en(e[l])}return t},er=e=>{setTimeout(e)};function ei(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return;let{childrenKey:o="children"}=l;for(let n of Array.isArray(e)?[...e]:[e]){if(t(n))return n;let e="function"==typeof o?o(n):n[o];if(Array.isArray(e)&&e.length>0){let o=ei(e,t,l);if(void 0!==o)return o}}}function ea(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"children",o=!(arguments.length>3)||void 0===arguments[3]||arguments[3];return e&&Array.isArray(e)&&0!==e.length?n().orderBy(e,t,o?"asc":"desc").map(e=>e[l]&&e[l].length>0?{...e,[l]:ea(e[l],t,l,o)}:e):e}function es(e){return new Promise(t=>{setTimeout(t,e)})}function ed(e){return!!(!e||"$and"in e&&n().isEmpty(e.$and)||"$or"in e&&n().isEmpty(e.$or))}let eu=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K(),l=t(e||{}),o={};for(let e in l){let t=l[e];null==t||el(t)||""===t||(o[e]=t)}let r=t.unflatten(o);for(let e in r)Array.isArray(r[e])&&(r[e]=r[e].filter(e=>null!=e));return n().isEmpty(r)?void 0:r},ec=e=>e.format?e.format:e.dateFormat?e.showTime?`${e.dateFormat} ${e.timeFormat||"HH:mm:ss"}`:e.dateFormat:"month"===e.picker?"YYYY-MM":"quarter"===e.picker?"YYYY-\\QQ":"year"===e.picker?"YYYY":"week"===e.picker?"YYYY[W]W":e.showTime?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD",ep=e=>e&&i().isDayjs(e)?`${e.format("YYYY-MM-DD")}T${e.format("HH:mm:ss.SSS")}Z`:e,eh=e=>e?Array.isArray(e)?e.map(e=>e.startOf("second").toISOString()):i().isDayjs(e)?e.startOf("second").toISOString():void 0:e,em=e=>{try{let t=parseInt(e.slice(0,4)),l=parseInt(e.slice(-1));return i()().quarter(l).year(t)}catch(e){return null}},ef=(e,t)=>{if(!e)return;let l=t.utcOffset,{gmt:o,picker:n,utc:r=!0,dateOnly:a}=t;if(!i()(e).isValid())return em(e);if(a){let t=i()(e);if(!t.isValid())return e;let l=t.format("YYYY-MM-DD");return i().utc(l,"YYYY-MM-DD")}return r?i().isDayjs(e)?l?e.utcOffset(ex(l)):e:o?i()(e).utcOffset(0):l?i()(e).utcOffset(ex(l)):i()(e):i()(e)},eg=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)?e.map(e=>ef(e,t)):e?ef(e,t):e},ev=(e,t)=>"year"===t?e.format("YYYY")+"-01-01T00:00:00.000Z":"month"===t||"quarter"===t?e.format("YYYY-MM")+"-01T00:00:00.000Z":e.format("YYYY-MM-DD")+"T00:00:00.000Z",ey=(e,t)=>e?Array.isArray(e)?e.map(e=>ev(e,t)):i().isDayjs(e)?ev(e,t):void 0:e,eb=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{showTime:l,gmt:o,picker:n}=t;return e?l?o?ep(e):eh(e):ey(e,n):e};function ex(e){if(!n().isString(e))return e;let t=/([+-]|\d\d)/gi,l=/Z|[+-]\d\d(?::?\d\d)?/gi,o=/[+-]?\d+(\.\d{1,3})?/,r=(e||"").match(l);if(null===r&&(r=(e||"").match(o)),null===r)return null;let i=((r[r.length-1]||[])+"").match(t)||["-",0,0],a=+(60*Number(i[1]))+ew(i[2]);return 0===a?0:"+"===i[0]?a:-a}function ew(e){let t=+e,l=0;return 0!==t&&isFinite(t)&&(l=eS(t)),l}function eS(e){return e<0?Math.ceil(e)||0:Math.floor(e)}let eM=e=>{switch(e){case"week":return"YYYY[W]W";case"month":return"YYYY-MM";case"quarter":return"YYYY[Q]Q";case"year":return"YYYY";default:return"YYYY-MM-DD"}},eF=(e,t,l,o)=>"date"===e&&l?`${t} ${o||"HH:mm:ss"}`:t;function eA(e){return/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(e)?"YYYY-MM-DD HH:mm:ss":/^\d{4}-\d{2}-\d{2}$/.test(e)?"YYYY-MM-DD":/^\d{4}-\d{2}$/.test(e)?"YYYY-MM":/^\d{4}$/.test(e)?"YYYY":/^\d{4}Q[1-4]$/.test(e)?"YYYY[Q]Q":/^\d{4}-\d{2}-\d{2}T/.test(e)?"YYYY-MM-DDTHH:mm:ss.SSSZ":null}let ek=(e,t)=>{Array.isArray(e)?e.forEach(t):Object.keys(e).forEach(l=>{t(e[l],l)})},eC=(e,t,l)=>{if(!e)return l;let o=t.split("."),n=[],r=e,i=!1;for(let e=0;e<o.length;e++){let t=o[e];if(Array.isArray(r)){for(let t of(i=!0,r)){let r=eC(t,o.slice(e).join("."),l);n=n.concat(r)}break}if((null==r?void 0:r[t])===void 0)break;r=r[t],e===o.length-1&&n.push(r)}return 0===(n=n.filter(e=>void 0!==e)).length?l:i?n.filter(e=>null!==e):n[0]};var eP=l(88835),ej=l(60639),eI=l.n(ej),eE=l(79441);let e_=l.n(eE)()();function eR(e){if(!e)return!1;let t=[e.$and,e.$or].filter(Boolean);return 0==t.length?Object.keys(e).length>0:t.some(e=>{if(Array.isArray(e))return e.some(eR);if(e.$and||e.$or)return eR(e);let[t]=Object.keys(e);if(!t||!e[t])return!1;let[l]=Object.keys(e[t]);return!!l&&void 0!==e[t][l]})}function eT(e){let t=typeof e;return Array.isArray(e)?t="array":e instanceof Date?t="date":null===e&&(t="null"),t}function eD(e){let t=e.substr(2,e.length-4).trim(),l=t.indexOf(":");return -1!==l?{key:t.substr(0,l),defaultValue:t.substr(l+1)}:{key:t}}function eN(e,t){return e.parameters=Array.from(new Map(t.map(e=>[e.key,e])).values()),e}function eO(e){switch(eT(e)){case"string":return e$(e);case"object":return eB(e);case"array":return eq(e);default:return eN(function(){return e},[])}}Object.keys(e_).forEach(function(e){eI().registerHelper(e,e_[e])}),eI().registerHelper("json",function(e){return JSON.stringify(e)}),eI().registerHelper("urlParse",function(e){try{return JSON.stringify(eP.parse(e))}catch(t){return`Invalid URL: ${e}`}}),eI().registerHelper("dateFormat",(e,t,l)=>"string"==typeof l?i()(e).tz(l).format(t):i()(e).format(t)),eI().registerHelper("isNull",e=>n().isNull(e));let e$=(()=>{let e=/{{(\w|:|[\s-+.,@/()?=*_$])+}}/g;return t=>{let l=[],n=e=>t,r=t.match(e);return r&&(l=r.map(eD),n=e=>(e=e||{},r.reduce((n,i,a)=>{let s=l[a],d=(0,o.get)(e,s.key);return(void 0===d&&(d=s.defaultValue),"function"==typeof d&&(d=d()),1===r.length&&t.startsWith("{{")&&t.endsWith("}}"))?d:(d instanceof Date&&(d=d.toISOString()),n.replace(i,null==d?"":d))},t))),eN(n,l)}})();function eB(e){let t=Object.keys(e).map(t=>({keyTemplate:e$(t),valueTemplate:eO(e[t])}));return eN(e=>t.reduce((t,l)=>(t[l.keyTemplate(e)]=l.valueTemplate(e),t),{}),t.reduce((e,t)=>e.concat(t.valueTemplate.parameters,t.keyTemplate.parameters),[]))}function eq(e){let t=e.map(eO);return eN(e=>t.map(t=>t(e)),t.reduce((e,t)=>e.concat(t.parameters),[]))}let eL=function(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];console.error(e,...l)};var eV=l(14744),ez=l.n(eV);let eK=(e,t,l)=>t;function eU(e,t,l){return ez()(e,t,{arrayMerge:eK,...l})}var eW=l(98892);let eH=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info",l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5e3;eW.Ay[t]({message:e,duration:l})};var eY=l(5062),eG=l(85738);function eJ(e,t){if(null==e||""===e)return"";let l=(0,eY.i5)(t);return(0,eG.Mg)(String(e),".",l)}var eX=l(63560),eQ=l.n(eX),eZ=l(95093),e0=l.n(eZ);let e1=/^\s*\{\{([\s\S]*)\}\}\s*$/;function e2(e){return e&&e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function e4(e){return e}function e5(e,t){let l=(t=t||{}).delimiter||".",o=t.maxDepth,r=t.transformKey||e4,i=t.transformValue||e4,a={};function s(e,d,u){u=u||1,n().isObjectLike(e)&&Object.keys(e).forEach(function(n){var c;let p=e[n],h=t.safe&&Array.isArray(p),m=Object.prototype.toString.call(p),f=e2(p),g="[object Object]"===m||"[object Array]"===m,v=d?d+l+r(n):r(n);if(null==(c=t.breakOn)?void 0:c.call(t,{key:n,value:p,path:v})){a[v]=i(p,v);return}if(!h&&!f&&g&&Object.keys(p).length&&(!t.maxDepth||u<o))return s(p,v,u+1);a[v]=i(p,v)})}return s(e),a}function e8(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l={},o=t.transformValue||e4;for(let t of Object.keys(e))eQ()(l,t,o(e[t],t));return l}let e3=e=>{let t=e.split(".").pop()||"";return t.startsWith("$")||(t=""),{operator:t}},e6=e=>["$dateOn","$dateNotOn","$dateBefore","$dateAfter","$dateNotBefore","$dateNotAfter","$dateBetween"].includes(e);function e9(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function e7(e){return(null==e?void 0:e.type)==="dateOnly"||(null==e?void 0:e.type)==="datetimeNoTz"||(null==e?void 0:e.constructor.name)==="DateOnlyField"||(null==e?void 0:e.constructor.name)==="DatetimeNoTzField"}let te=(e,t)=>e?(e.type&&(e=q({...e,timezone:t})),Array.isArray(e))?(2===e.length?e.push("[]",t):3===e.length&&e.push(t),e):"string"==typeof e?!t||/(\+|-)\d\d:\d\d$/.test(e)?e:e+t:e9(e)?e.toISOString():void 0:null,tt=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=new Set,o=t.vars||{},n=t.timezone,r=t.now,i=t.getField,a=e5(e,{breakOn(e){let{key:t}=e;return t.startsWith("$")&&"$and"!==t&&"$or"!==t},transformValue(e){if("string"!=typeof e)return e;let t=e1.exec(e);if(t){let e=t[1].trim();e.startsWith("$user")&&l.add(e.substring(6))}return e}});if(l.size>0){let e=await o.$user({fields:[...l.values()]});Object.assign(o,{$user:e})}return e8(a,{transformValue(e,t){let{operator:l}=e3(t);if("string"==typeof e){let a=e1.exec(e);if(a){let s=eC(o,a[1].trim(),null),d=null==i?void 0:i(t);e="function"==typeof s?null==s?void 0:s({field:d,operator:l,timezone:n,now:r}):s}}if(e6(l)){let l=null==i?void 0:i(t);return e7(l)?e.type?q({...e,timezone:(null==l?void 0:l.timezone)||n}):e:te(e,(null==l?void 0:l.timezone)||n)}return e}})};function tl(e){let{now:t,timezone:l="+00:00",offset:o}=e,n=to(t).utcOffset(ex(l));return o>0?[(n=n.add(1,"day").startOf("day")).format("YYYY-MM-DD"),n.clone().add(o,"day").startOf("day").format("YYYY-MM-DD"),"[)",l]:[n.clone().subtract(-1*o-1,"day").startOf("day").format("YYYY-MM-DD"),n.clone().add(1,"day").startOf("day").format("YYYY-MM-DD"),"[)",l]}function to(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e?i().isDayjs(e)?e:t?e0()(e):i()(e):t?e0()():i()()}function tn(e){var t;let{now:l,unit:o,timezone:n="+00:00",offset:r}=e,i=to(l,"isoWeek"===o);i=(i=i.utcOffset(ex(n))).startOf(o),r>0?i=i.add(r,o):r<0&&(i=i.subtract(-1*r,o));let a={year:()=>i.format("YYYY"),quarter:()=>i.format("YYYY[Q]Q"),month:()=>i.format("YYYY-MM"),week:()=>i.format("gggg[w]ww"),isoWeek:()=>i.format("GGGG[W]WW"),day:()=>i.format("YYYY-MM-DD")},s=null==(t=a[o])?void 0:t.call(a);return n?s+n:s}let tr=(e,t)=>l=>{let{now:o,timezone:n,field:r}=l;return(null==r?void 0:r.timezone)&&(n=null==r?void 0:r.timezone),tn({now:o,timezone:n,unit:e,offset:t})},ti=e=>t=>{let{now:l,timezone:o,field:n}=t;return(null==n?void 0:n.timezone)&&(o=null==n?void 0:n.timezone),tl({now:l,timezone:o,offset:e})};function ta(){return{now:new Date().toISOString(),today:tr("day"),yesterday:tr("day",-1),tomorrow:tr("day",1),thisWeek:tr("week"),lastWeek:tr("week",-1),nextWeek:tr("week",1),thisIsoWeek:tr("isoWeek"),lastIsoWeek:tr("isoWeek",-1),nextIsoWeek:tr("isoWeek",1),thisMonth:tr("month"),lastMonth:tr("month",-1),nextMonth:tr("month",1),thisQuarter:tr("quarter"),lastQuarter:tr("quarter",-1),nextQuarter:tr("quarter",1),thisYear:tr("year"),lastYear:tr("year",-1),nextYear:tr("year",1),last7Days:ti(-7),next7Days:ti(7),last30Days:ti(-30),next30Days:ti(30),last90Days:ti(-90),next90Days:ti(90)}}function ts(e){let t=e.split(".");return[t.shift(),t.join(".")]}var td=l(50467);class tu{register(e,t){if(!this.options.override&&this.map.has(e))throw Error(`this registry does not allow to override existing keys: "${e}"`);this.map.set(e,t)}get(e){return this.map.get(e)}getKeys(){return this.map.keys()}getValues(){return this.map.values()}getEntities(){return this.map.entries()}constructor(e={override:!1}){(0,td._)(this,"map",new Map),(0,td._)(this,"options",void 0),this.options=e}}l(67980);let tc=Symbol.for("nocobase.utils.sesLockdown"),tp=Symbol.for("nocobase.utils.bufferOverrides"),th=["globalThis","global","self","Function","AsyncFunction","GeneratorFunction","eval","Compartment","lockdown","harden","assert"];function tm(e){return!!e&&"object"==typeof e&&(e.message||"").includes("(SES_ALREADY_LOCKED_DOWN)")}function tf(){let e=globalThis;if(e[tp])return;let t=e.Buffer;if(!t||!t.prototype)return;let l=t.prototype;for(let e of Reflect.ownKeys(l)){let t=Object.getOwnPropertyDescriptor(l,e);if(!t||"function"!=typeof t.value||!t.configurable)continue;let o=t.value,n=function(){return o},r=function(t){if(this===l)throw TypeError(`Cannot assign to read only property '${String(e)}' of object 'Buffer.prototype'`);Object.defineProperty(this,e,{configurable:!0,enumerable:!0,writable:!0,value:t})};Object.defineProperty(n,"originalValue",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(l,e,{configurable:t.configurable,enumerable:t.enumerable,get:n,set:r})}e[tp]=!0}function tg(e){tf();let t=globalThis;if(!t[tc]){if("function"!=typeof lockdown)throw Error("SES lockdown is unavailable in the current runtime environment.");try{lockdown(e)}catch(e){if(!tm(e))throw e}t[tc]=!0}}function tv(e,t){return t?`{{t(${JSON.stringify(e)}, ${JSON.stringify(t)})}}`:`{{t(${JSON.stringify(e)})}}`}var ty=l(65606);let tb=e=>{for(;e;){var t;if("root"===e.id||(null==(t=e.classList)?void 0:t.contains("nb-action")))return!1;e=e.parentNode}return!ty.env.__TEST__};function tx(e,t){return e.replace(/\{\{(\w+)\}\}/g,function(e,l){return void 0!==t[l]?t[l]:e})}let tw=36,tS="";for(;tw--;)tS+=tw.toString(36);function tM(e){let t="",l=e||11;for(;l--;)t+=tS[36*Math.random()|0];return t}function tF(e){let t;try{t=new URL(e)}catch(e){return!1}return"http:"===t.protocol||"https:"===t.protocol}var tA=l(27153),tk=JSON.parse('{"rE":"2.1.0-alpha.28"}');let tC=(e,t)=>{if(!e)return e;if("Grid"!==e["x-component"])return Object.keys(e.properties||{}).forEach(l=>{e.properties[l]=tC(e.properties[l],t)}),e;let l=e.parent;e=e.toJSON?e.toJSON():n().cloneDeep(e);let o={},{properties:r={}}=e,i=0;if(Object.keys(r).forEach((e,l)=>{let a=r[e];if("Grid.Row"!==a["x-component"]){a["x-index"]=++i,o[e]=a;return}if(a.properties){if(1===Object.keys(a.properties).length){a["x-index"]=++i,o[e]=a;return}Object.keys(a.properties).forEach((l,r)=>{let s=a.properties[l];if(n().set(s,"x-component-props.width",100),0===r){a["x-index"]=++i,o[e]=a;return}null!=t&&t(s)||(delete a.properties[l],o[`${tM()}_${l}`]=tP(s,l,++i))})}}),e.properties=o,l){let t=new tA.S(e,l);return l.properties&&Object.keys(l.properties).forEach(o=>{o===e.name&&(l.properties[o]=t)}),t}return e};function tP(e,t,l){return{type:"void",version:"2.0","x-component":"Grid.Row","x-app-version":tk.rE,"x-uid":tM(),"x-async":!1,"x-index":l,_isJSONSchemaObject:!0,properties:{[t]:e}}}function tj(e){let t=new Set,l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)/g;for(;null!==(e=r.exec(n));)t.add(e[1]);let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]/g;for(;null!==(o=i.exec(n));)t.add(o[2])}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}function tI(e){let t={},l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)([^\s)]*)/g;for(;null!==(e=r.exec(n));){let l=e[1],o=e[2]||"";if(t[l]=t[l]||[],o.startsWith("."))t[l].push(o.slice(1));else if(o.startsWith("[")){let e=o.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(e){let o=e[2],n=e[3]||"";t[l].push(`${o}${n}`)}else{let e=o.match(/^\[(\d+)\](.*)$/);if(e){let o=e[1],n=e[2]||"";t[l].push(`[${o}]${n}`)}}}else o.startsWith("(")&&!t[l].length&&t[l].push("")}let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]([^\s)]*)/g;for(;null!==(o=i.exec(n));){let e=o[2],l=o[3]||"";if(t[e]=t[e]||[],l.startsWith("."))t[e].push(l.slice(1));else if(l.startsWith("[")){let o=l.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(o){let l=o[2],n=o[3]||"";t[e].push(`${l}${n}`)}else{let o=l.match(/^\[(\d+)\](.*)$/);if(o){let l=o[1],n=o[2]||"";t[e].push(`[${l}]${n}`)}}}else l.startsWith("(")&&!t[e].length&&t[e].push("")}}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}let tE=new(l(23155)).HX;function t_(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t={};for(let l of e){let e=l.replace(/^ctx\./,"").split("."),o=t;for(let t=0;t<e.length;t++){let n=e[t];t===e.length-1?o[n]=`{{${l}}}`:(o[n]=o[n]||{},o=o[n])}}return t}async function tR(e){return t_(await tE.fullVariables(e))}async function tT(e,t){return await tE.parseAndRender(e,{ctx:t})}function tD(e){let t=1,l={};return{sql:e.replace(/{{\s*([^}]+)\s*}}/g,(e,o)=>{let n=`__var${t}`;return l[n]=`{{${o.trim()}}}`,t++,`$${n}`}),bind:l}}async function tN(e){let{sql:t,bind:l}=tD(e),o=await tR(t);return{sql:t,bind:l,liquidContext:o}}},59598(){},23005(){},14892(){},2813(){},9845(){}};import{__webpack_require__}from"./runtime-6c2a757b.js";var __webpack_exec__=function(e){return __webpack_require__(__webpack_require__.s=e)};import*as __rspack_chunk_1 from"./vendor-antd-ecosystem-de737eca.js";__webpack_require__.C(__rspack_chunk_1);import*as __rspack_chunk_2 from"./vendor-moment-84b317dc.js";__webpack_require__.C(__rspack_chunk_2);import*as __rspack_chunk_3 from"./vendor-lodash-905dd3b8.js";__webpack_require__.C(__rspack_chunk_3);import*as __rspack_chunk_4 from"./vendor-ses-b7bccbcd.js";__webpack_require__.C(__rspack_chunk_4);import*as __rspack_chunk_5 from"./vendor-antd-icons-794fdbb6.js";__webpack_require__.C(__rspack_chunk_5);import*as __rspack_chunk_6 from"./vendor-antd-f8c3ace1.js";__webpack_require__.C(__rspack_chunk_6);import*as __rspack_chunk_7 from"./3990-42dfb40d.js";__webpack_require__.C(__rspack_chunk_7);import*as __rspack_chunk_8 from"./index-44832e66.js";__webpack_require__.C(__rspack_chunk_8),__webpack_exec__(56777);
1278
+ ${p}`}async function eX(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l="string"==typeof e?e:String(e??""),o=!!t.preprocessTemplates,n=o?ek.withTemplates:ek.withoutTemplates,r=eC(n,l);if(r)return await r;let i=(async()=>{if(!o)return eH(await (0,eg.W)(l));let e=eJ(l,{processStringLiterals:!1});return eH(eJ(await (0,eg.W)(e),{processBarePlaceholders:!1}))})();eP(n,l,i,eA);try{return await i}catch(e){throw n.delete(l),e}}var eQ=l(62572);function eZ(e){if(Array.isArray(e)){let t=e.map(e=>eZ(e)).filter(e=>void 0!==e);return t.length?t:void 0}if(e&&"object"==typeof e){let t={};return Object.keys(e).forEach(l=>{let o=eZ(e[l]);void 0!==o&&(t[l]=o)}),Object.keys(t).length?t:void 0}return null==e||"string"==typeof e&&""===e?void 0:e}let e0=e=>"string"==typeof e.on?"beforeRender"===e.on:"object"==typeof e.on?"beforeRender"===e.on.eventName:!e.on&&!0!==e.manual;var e1=l(47684)},49773(e,t,l){l.d(t,{W:()=>o});async function o(e){if(!/<[A-Za-z]|<\//.test(e))return e;try{var t;let o=await l.e("7761").then(l.bind(l,1608)),n=(null==o?void 0:o.transform)||(null==o||null==(t=o.default)?void 0:t.transform);if("function"!=typeof n)return e;let r=n(e,{transforms:["jsx"],jsxPragma:"ctx.React.createElement",jsxFragmentPragma:"ctx.React.Fragment",disableESTransforms:!0,production:!0});return(r&&(r.code||(null==r?void 0:r.output)))??e}catch(t){return e}}},81982(e,t,l){l.d(t,{M:()=>h,gG:()=>i,mv:()=>a,o4:()=>p});var o=l(40542),n=l(2543),r=l.n(n);async function i(e,t){if(!e)return{};if("function"==typeof e)try{return await e(t)||{}}catch(e){return console.error("Error resolving defaultParams function:",e),{}}return e}async function a(e,t,l){if(!e)return{};if("function"==typeof e)try{return await e(t,l)||{}}catch(e){return console.error("Error resolving createModelOptions function:",e),{}}return e}let s={queue:[],timer:null,inflightByRun:new Map},d=10;function u(e){if(Array.isArray(e))return e.map(u);if(r().isPlainObject(e)){let t=Object.entries(e).map(e=>{let[t,l]=e;return[t,u(l)]});return Object.fromEntries(r().sortBy(t,e=>{let[t]=e;return t}))}return e}function c(e){try{return JSON.stringify(u(e))}catch{try{return JSON.stringify(e)}catch{return String(e)}}}function p(e,t){let l,o,n=s,r=e.runId||"GLOBAL",i=c(t),a=n.inflightByRun.get(r);a||(a=new Map,n.inflightByRun.set(r,a));let u=a.get(i);if(u)return u;let p=new Promise((e,t)=>{l=e,o=t});a.set(i,p);let h={id:`${Date.now()}-${Math.random().toString(36).slice(2)}`,ctx:e,payload:t,resolve:l,reject:o,runId:r,dedupKey:i};n.queue.push(h);let m=async()=>{var t,l,o,r,i,a;let s=n.queue.splice(0,n.queue.length);if(n.timer=null,!s.length)return;let d=null==(t=s[0].ctx)?void 0:t.api;if(!d){for(let e of s)try{e.resolve(e.payload.template)}catch(t){e.reject(t)}finally{null==(l=n.inflightByRun.get(e.runId))||l.delete(e.dedupKey)}return}try{let e=s.map(e=>({id:e.id,template:e.payload.template,contextParams:e.payload.contextParams||{}})),t=await d.request({method:"POST",url:"variables:resolve",data:{values:{batch:e}}}),l=t.data??t,r=l.data??l,i=null==r?void 0:r.results,a=Array.isArray(i)?i:Array.isArray(r)?r:[],u=new Map;for(let e of a){let t=(null==e?void 0:e.id)!=null?String(e.id):"";t&&u.set(t,null==e?void 0:e.data)}for(let e of s)try{let t=String(e.id),l=u.has(t)?u.get(t):e.payload.template;e.resolve(l)}catch(t){e.reject(t)}finally{null==(o=n.inflightByRun.get(e.runId))||o.delete(e.dedupKey)}}catch(t){for(let l of s)try{null==e||null==(i=e.logger)||null==(r=i.warn)||r.call(i,{err:t},"variables:resolve(batch) failed, fallback"),l.resolve(l.payload.template)}catch(e){l.reject(e)}finally{null==(a=n.inflightByRun.get(l.runId))||a.delete(l.dedupKey)}}};return n.timer||(n.timer=setTimeout(m,d)),p}async function h(e,t){let l=async e=>{if("string"==typeof e&&/\{\{.*?\}\}/.test(e))return await g(e,t);if(Array.isArray(e))return Promise.all(e.map(l));if(e&&"object"==typeof e){let t={};for(let[o,n]of Object.entries(e))t[o]=await l(n);return t}return e};return l(e)}async function m(e,t){let l=await f(e.trim(),t),o=await t.runjs(`return ${l}`,{t:t.t});return(null==o?void 0:o.success)?o.value:void 0}async function f(e,t){let l,o=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*(?:(?:\.[a-zA-Z_$][a-zA-Z0-9_$]*)|(?:\[[^\]]+\]))*)(?!\s*\()/g,n=[],r=new Set;for(;null!==(l=o.exec(e));){let e=l[0],t=l[1],o=t.match(/^([a-zA-Z_$][a-zA-Z0-9_$]*)/);if(o){let l=o[1],i=t.substring(l.length);n.push({fullPath:e,firstKey:l,restPath:i}),r.add(l)}}if(0===n.length)return e;let i=new Map;for(let e of r)try{let l=await t[e],o=l&&!0===l.__isRecordProxy__;i.set(e,o)}catch(t){i.set(e,!1)}n.sort((e,t)=>t.fullPath.length-e.fullPath.length);let a=e;for(let{fullPath:e,firstKey:t,restPath:l}of n){let o,n=i.get(t)||!1;o=""===l?`await ctx.${t}`:n?`await (await ctx.${t})${l}`:`(await ctx.${t})${l}`;let r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),s=RegExp(`\\b${r}\\b`,"g");a=a.replace(s,o)}return a}async function g(e,t){let l=e=>{let t=e.trim().match(/^ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)(?:\.([a-zA-Z_$][a-zA-Z0-9_$-]*(?:\.[a-zA-Z_$][a-zA-Z0-9_$-]*)*))?$/);return t?t[2]?`${t[1]}.${t[2]}`:t[1]:null},n=async e=>{let l=e.split("."),n=l.shift();if(!n)return;let r=await t[n];return 0===l.length?r:(0,o.D)(r,l.join("."))},r=async e=>{let o=l(e);if(o){let l=await n(o);return void 0===l&&o.includes("-")?await m(e,t):l}return await m(e,t)},i=e.match(/^\s*\{\{\s*([^{}]+?)\s*\}\}\s*$/);if(i){let e=i[1];return await r(e)}let a=[...e.matchAll(/\{\{\s*(.+?)\s*\}\}/g)],s=e;for(let[e,t]of a){let l=await r(t);if(void 0!==l){let t="object"==typeof l&&null!==l?JSON.stringify(l):String(l);s=s.replace(e,t)}}return s}},47684(e,t,l){function o(e,t){if(!e||"string"!=typeof e)throw Error("invalid url");let l=e.trim();if(l.startsWith("http://")||l.startsWith("https://"))return l;let o=window.__esm_cdn_base_url__||"https://esm.sh",n=(null==t?void 0:t.addSuffix)&&window.__esm_cdn_suffix__||"",r=o.replace(/\/$/,""),i=l.replace(/^\//,"");if(null==t?void 0:t.raw){let e=i.includes("?")?"&":"?";return`${r}/${i}${e}raw`}return`${r}/${i}${n}`}function n(e){return!!e&&"string"==typeof e&&e.split("?")[0].split("#")[0].endsWith(".css")}l.d(t,{i:()=>o,y:()=>n})},51143(e,t,l){function o(){var e,t;let l=globalThis;if((null==(e=l.__nocobaseRunJSSafeGlobalsRegistry)?void 0:e.windowAllow)&&(null==(t=l.__nocobaseRunJSSafeGlobalsRegistry)?void 0:t.documentAllow))return l.__nocobaseRunJSSafeGlobalsRegistry;let o={windowAllow:new Set,documentAllow:new Set};return l.__nocobaseRunJSSafeGlobalsRegistry=o,o}function n(e){if(!e)return;let t=o();for(let l of e){if("string"!=typeof l)continue;let e=l.trim();e&&t.windowAllow.add(e)}}function r(e){if(!e)return;let t=o();for(let l of e){if("string"!=typeof l)continue;let e=l.trim();e&&t.documentAllow.add(e)}}function i(e){return o().windowAllow.has(e)}function a(e){return o().documentAllow.has(e)}function s(e){let t=()=>`${window.location.origin}${window.location.pathname}`,l=(e,l,o)=>{if(!(e=>{try{let l=new URL(e,t()),o=l.protocol.toLowerCase();if("about:"===o)return"about:blank"===l.href;return"http:"===o||"https:"===o}catch{return!1}})(e))throw Error("Unsafe URL: window.open only allows http/https/about:blank.");let n="_blank",r=(e=>{let t=new Set;return e&&e.split(",").map(e=>e.trim()).filter(Boolean).forEach(e=>{let l=e.split("=")[0].trim().toLowerCase();"noopener"!==l&&"noreferrer"!==l&&t.add(e)}),t.add("noopener"),t.add("noreferrer"),Array.from(t).join(",")})(o),i=window.open.call(window,e,n,r);if(i&&"opener"in i)try{i.opener=null}catch{}return i},o=(e,o)=>{let n=new URL(e,t()),r=n.protocol.toLowerCase(),i="about:"===r&&"about:blank"===n.href;if("http:"!==r&&"https:"!==r&&!i)throw Error("Unsafe URL: only http/https/about:blank are allowed.");if(i)return(null==o?void 0:o.replace)?window.location.replace("about:blank"):window.location.assign("about:blank");if(n.protocol===window.location.protocol&&n.hostname===window.location.hostname&&n.port===window.location.port)return(null==o?void 0:o.replace)?window.location.replace(n.href):window.location.assign(n.href);if(!l(n.href))throw Error("Popup blocked: cross-origin navigation is opened in a new tab.")},n=new Proxy({},{get(e,t){switch(t){case"origin":return window.location.origin;case"protocol":return window.location.protocol;case"host":return window.location.host;case"hostname":return window.location.hostname;case"port":return window.location.port;case"pathname":return window.location.pathname;case"assign":return e=>o(e,{replace:!1});case"replace":return e=>o(e,{replace:!0});case"reload":return window.location.reload.bind(window.location);case"href":throw Error("Reading location.href is not allowed.");default:throw Error(`Access to location property "${t}" is not allowed.`)}},set(e,t,l){if("href"===t)return o(String(l),{replace:!1}),!0;throw Error("Mutation on location is not allowed.")}}),r={setTimeout:window.setTimeout.bind(window),clearTimeout:window.clearTimeout.bind(window),setInterval:window.setInterval.bind(window),clearInterval:window.clearInterval.bind(window),console,Math,Date,FormData,..."u">typeof Blob?{Blob}:{},..."u">typeof URL?{URL}:{},addEventListener:addEventListener.bind(window),open:l,location:n,...e||{}};return new Proxy(Object.create(null),{get(e,t){if("string"!=typeof t)return Reflect.get(e,t);if(t in r)return r[t];if(Object.prototype.hasOwnProperty.call(e,t))return e[t];if(i(t)){let e=window[t];return"function"==typeof e?e.bind(window):e}throw Error(`Access to global property "${t}" is not allowed.`)},set(e,t,l){if("string"!=typeof t)return Reflect.set(e,t,l),!0;if(t in r)throw Error(`Mutation of global property "${t}" is not allowed.`);return e[t]=l,!0},has:(e,t)=>"string"!=typeof t?Reflect.has(e,t):!!(t in r||Object.prototype.hasOwnProperty.call(e,t)||i(t))})}function d(e){let t={createElement:document.createElement.bind(document),querySelector:document.querySelector.bind(document),querySelectorAll:document.querySelectorAll.bind(document),...e||{}};return new Proxy(Object.create(null),{get(e,l){if("string"!=typeof l)return Reflect.get(e,l);if(l in t)return t[l];if(Object.prototype.hasOwnProperty.call(e,l))return e[l];if(a(l)){let e=document[l];return"function"==typeof e?e.bind(document):e}throw Error(`Access to document property "${l}" is not allowed.`)},set(e,l,o){if("string"!=typeof l)return Reflect.set(e,l,o),!0;if(l in t)throw Error(`Mutation of document property "${l}" is not allowed.`);return e[l]=o,!0},has:(e,l)=>"string"!=typeof l?Reflect.has(e,l):!!(l in t||Object.prototype.hasOwnProperty.call(e,l)||a(l))})}function u(e){var t;let l="u">typeof window&&window.navigator||void 0,o={},n=null==l||null==(t=l.clipboard)?void 0:t.writeText;"function"==typeof n&&(o.writeText=n.bind(l.clipboard));let r={clipboard:o};return Object.defineProperty(r,"onLine",{get:()=>!!(null==l?void 0:l.onLine),enumerable:!0,configurable:!1}),Object.defineProperty(r,"language",{get:()=>null==l?void 0:l.language,enumerable:!0,configurable:!1}),Object.defineProperty(r,"languages",{get:()=>(null==l?void 0:l.languages)?[...l.languages]:void 0,enumerable:!0,configurable:!1}),Object.assign(r,e||{}),new Proxy({},{get(e,t){if(t in r)return r[t];throw Error(`Access to navigator property "${String(t)}" is not allowed.`)}})}function c(e){let t={};try{let e=u();t.navigator=e;try{t.window=s({navigator:e})}catch{}}catch{}try{t.document=d()}catch{}return e?{...t,...e}:t}async function p(e,t,l,o){if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.runjs)return e.runjs(t,c(o),l)}l.d(t,{D1:()=>u,I2:()=>c,Vm:()=>n,Xh:()=>d,_:()=>p,ey:()=>s,yz:()=>r})},22928(e,t,l){function o(e){let t={};return Object.entries(e||{}).forEach(e=>{let[l,o]=e;null!=o&&(t[l]=o)}),t}function n(e,t,l){try{var o,n,r,i,a;let s=null==(n=e.dataSourceManager)||null==(o=n.getDataSource)?void 0:o.call(n,t||"main"),d=null==s||null==(i=s.collectionManager)||null==(r=i.getCollection)?void 0:r.call(i,l);return(null==d||null==(a=d.getPrimaryKey)?void 0:a.call(d))||"id"}catch(e){return"id"}}function r(e,t){var l,r;if(!t)return;let i=t.dataSourceKey||"main",a=t.collection||(null==(l=t.record)?void 0:l.__collectionName);if(!a)return;let s=n(e,i,a)||"id",d=void 0!==t.filterByTk?t.filterByTk:void 0!==t.id?t.id:null==(r=t.record)?void 0:r[s];if(void 0!==d)return o({collection:a,filterByTk:d,dataSourceKey:i,associationName:t.associationName,sourceId:t.sourceId,fields:t.fields,appends:t.appends})}function i(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=e=>!!e&&"object"==typeof e&&"string"==typeof e.collection&&(void 0!==e.filterByTk||void 0!==e.id||e.record),o={},n=(t,i)=>{if(l(t)){let l=r(e,t);l&&(o[i.join(".")]=l);return}if(Array.isArray(t)){for(let e=0;e<t.length;e++)n(t[e],[...i,String(e)]);return}if(t&&"object"==typeof t){for(let[e,l]of Object.entries(t))n(l,[...i,e]);return}};return n(t,[]),Object.keys(o).length?o:void 0}l.d(t,{d:()=>i})},88439(e,t,l){l.d(t,{w:()=>o});function o(e,t,l,o){let n={},r={};for(let a in t)if(Object.prototype.hasOwnProperty.call(t,a)){let s=t[a],d={};if(s.uiSchema&&"object"==typeof s.uiSchema){for(let[e,t]of Object.entries(s.uiSchema))if(t&&"object"==typeof t){var i;let l=t;d[e]={type:l.type||"any",title:l.title||(null==(i=l["x-decorator-props"])?void 0:i.label)||e,interface:l["x-component"],uiSchema:l}}}let u=Object.keys(d).length>0;r[a]={type:"object",title:e.t(s.title)||a,display:u?"default":"none",properties:u?{params:{type:"object",title:"Parameters",display:"flatten",properties:d}}:void 0},n[a]={get params(){return l.getStepParams(o,a)||{}},get uiSchema(){return s.uiSchema},result:void 0}}e.defineProperty("steps",{get:()=>n})}},73398(e,t,l){function o(e){let t=new Set,l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)/g;for(;null!==(e=r.exec(n));)t.add(e[1]);let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]/g;for(;null!==(o=i.exec(n));)t.add(o[2])}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}function n(e){let t={},l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)([^\s)]*)/g;for(;null!==(e=r.exec(n));){let l=e[1],o=e[2]||"";if(t[l]=t[l]||[],o.startsWith("."))t[l].push(o.slice(1));else if(o.startsWith("[")){let e=o.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(e){let o=e[2],n=e[3]||"";t[l].push(`${o}${n}`)}else{let e=o.match(/^\[(\d+)\](.*)$/);if(e){let o=e[1],n=e[2]||"";t[l].push(`[${o}]${n}`)}}}else o.startsWith("(")&&!t[l].length&&t[l].push("")}let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]([^\s)]*)/g;for(;null!==(o=i.exec(n));){let e=o[2],l=o[3]||"";if(t[e]=t[e]||[],l.startsWith("."))t[e].push(l.slice(1));else if(l.startsWith("[")){let o=l.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(o){let l=o[2],n=o[3]||"";t[e].push(`${l}${n}`)}else{let o=l.match(/^\[(\d+)\](.*)$/);if(o){let l=o[1],n=o[2]||"";t[e].push(`[${l}]${n}`)}}}else l.startsWith("(")&&!t[e].length&&t[e].push("")}}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}l.d(t,{xI:()=>m,vP:()=>y,$S:()=>f,pc:()=>g,Cg:()=>c,nN:()=>b,ju:()=>x,Xx:()=>h,vE:()=>p,XU:()=>u,UX:()=>v});var r=l(22928),i=l(35846),a=l(44476),s=l(2543),d=l.n(s);function u(e){var t,l,o,n;let r=e.resource,i=e.collection,a=e.record,s=(null==i?void 0:i.name)||(null==r||null==(t=r.getResourceName)?void 0:t.call(r)),d=(null==i?void 0:i.dataSourceKey)||(null==r||null==(l=r.getDataSourceKey)?void 0:l.call(r)),u=(null==r||null==(o=r.getFilterByTk)?void 0:o.call(r))??(null==i||null==(n=i.getFilterByTK)?void 0:n.call(i,a));if(!s||null==u)return;let c=String(s).split(".");return{collection:c[c.length-1],dataSourceKey:d,filterByTk:u}}function c(e){var t,l,o;let n=e.view;if(!n)return;let r=(null==n?void 0:n.inputArgs)||{},i=(null==r?void 0:r.collectionName)||(null==n||null==(t=n.record)?void 0:t.collection),a=(null==r?void 0:r.dataSourceKey)||(null==n||null==(l=n.record)?void 0:l.dataSourceKey)||"main",s=(null==r?void 0:r.filterByTk)||(null==n||null==(o=n.record)?void 0:o.filterByTk),d=null==r?void 0:r.associationName,u=null==r?void 0:r.sourceId;if(i&&null!=s)return{collection:i,dataSourceKey:a,filterByTk:s,sourceId:u,associationName:d}}function p(e,t){var l,o,n;let r=null==(l=e.inputArgs)?void 0:l.record,i=null==(o=e.collection)?void 0:o.filterTargetKey;if(!r||!i)return;let a=t.view,s=null==a||null==(n=a.inputArgs)?void 0:n.filterByTk,u=r[i];if(null!=s&&null!=u&&s===u)return d().cloneDeep(r)}function h(e,t){return l=>{var o,n,r,i;if(!("record"===l||l.startsWith("record.")))return!1;let s=t();if(!s)return!0;if("record"===l)return!1;let d=c(e),u=null==d?void 0:d.collection,p=(null==d?void 0:d.dataSourceKey)||"main";if(!u)return!0;let h=null==(n=e.dataSourceManager)||null==(o=n.getDataSource)?void 0:o.call(n,p),m=null==h||null==(i=h.collectionManager)||null==(r=i.getCollection)?void 0:r.call(i,u);if(!m)return!0;let f=(0,a.H)(()=>m,()=>s),g=l.startsWith("record.")?l.slice(7):"";return!!g&&f(g)}}function m(e,t){let l=(0,a.H)(e,()=>t());return o=>{let n=t();if(!n)return!0;if(!o)return!1;let r=e();if(!o.includes(".")){var i;let e,t=o;return r&&("function"==typeof r.getField&&(e=r.getField(t)),e||"function"!=typeof r.getFields||(e=(r.getFields()||[]).find(e=>(null==e?void 0:e.name)===t))),!!(null==e||null==(i=e.isAssociationField)?void 0:i.call(e))&&null==(null==n?void 0:n[t])}return l(o)}}async function f(e,t,l){let o=await (0,i.H)(e,t,!0)();return o?{...o,buildVariablesParams:e=>l?l(e):u(e)}:null}function g(e,t,l){let o=async()=>f(e,t,l);return o.title=t,o}function v(e,t,l){var o,n;return g(t,(null==l?void 0:l.title)?(null==(o=e.t)?void 0:o.call(e,l.title))||l.title:(null==(n=e.t)?void 0:n.call(e,"Current record"))||"Current record",e=>u(e))}let y=o,b=n;async function x(e,t){let l=Object.keys(n(t)||{});if(!l.length)return;let o={};for(let t of l){var i;let l,n=null==(i=e.getPropertyOptions)?void 0:i.call(e,t),r=null==n?void 0:n.meta;if(r){try{let t="function"==typeof r?await r():r,o=null==t?void 0:t.buildVariablesParams;"function"==typeof o&&(l=await o(e))}catch(e){continue}l&&(o[t]=l)}}return(0,r.d)(e,o)}},52249(e,t,l){l.d(t,{sp:()=>w,bt:()=>A,U:()=>z,N5:()=>T,xB:()=>_,mW:()=>E,fP:()=>$});var o=l(74848),n=l(96540),r=l(99418),i=l(40532),a=l(29007),s=l(52568),d=l(73398);function u(e,t){let l=t=>e.t(t),o=e=>{var t,l;if(!e)return!1;let o=Array.isArray(null==(t=e.navigation)?void 0:t.viewStack)?e.navigation.viewStack:[],n=null==e||null==(l=e.inputArgs)?void 0:l.openerUids,r=Array.isArray(n)&&n.length>0;return o.length>=2||r},n=()=>o(t??e.view),r=async e=>{let l=t??e.view;if(!l||!o(l))return;let n=await c(e,l),r=null==n?void 0:n.resource;return(null==r?void 0:r.collectionName)&&null!=r.filterByTk?{collection:r.collectionName,dataSourceKey:r.dataSourceKey||"main",filterByTk:r.filterByTk,associationName:r.associationName,sourceId:r.sourceId}:(0,d.Cg)(e)},i=async()=>{var t,l,o,n;let i=await r(e);if(!(null==i?void 0:i.collection))return null;let a=null==(l=e.dataSourceManager)||null==(t=l.getDataSource)?void 0:t.call(l,i.dataSourceKey||"main");return(null==a||null==(n=a.collectionManager)||null==(o=n.getCollection)?void 0:o.call(n,i.collection))||null},a=async(t,l)=>{var o,n,r,i,a,s,d;try{let s=l||e,d=null==(o=s.view)?void 0:o.navigation,u=Array.isArray(null==d?void 0:d.viewStack)?d.viewStack:[];if(u.length<2||t<1)return;let c=u.length-1-t;if(c<0)return;let p=u[c];if(!(null==p?void 0:p.viewUid))return;let h=null==(n=s.engine)?void 0:n.getModel(p.viewUid,!0);if(!h)try{h=await s.engine.loadModel({uid:p.viewUid})}catch(t){null==(a=s.logger||e.logger)||null==(i=a.warn)||i.call(a,{err:t},"[FlowEngine] popup.getParentRecordRef loadModel failed")}let m=(null==h||null==(r=h.getStepParams)?void 0:r.call(h,"popupSettings","openView"))||{},f=null==m?void 0:m.collectionName,g=(null==m?void 0:m.dataSourceKey)||"main",v=(null==p?void 0:p.filterByTk)??(null==p?void 0:p.sourceId);if(!f||null==v)return;return{collection:f,dataSourceKey:g,filterByTk:v,sourceId:null==p?void 0:p.sourceId,associationName:null==m?void 0:m.associationName}}catch(t){null==(d=(null==l?void 0:l.logger)||e.logger)||null==(s=d.warn)||s.call(d,{err:t},"[FlowEngine] popup.getParentRecordRef failed");return}},s=l=>{try{var o;let n=null==(o=t??e.view)?void 0:o.navigation;return(Array.isArray(null==n?void 0:n.viewStack)?n.viewStack:[]).length>=l+1}catch(e){return!1}},u=t=>{let o=()=>({type:"object",title:l("Parent popup"),disabled:()=>!s(t),disabledReason:()=>s(t)?void 0:l("No parent popup"),hidden:()=>!s(t),properties:async()=>{let o=await a(t),n={};if(n.uid={type:"string",title:l("Popup uid")},o){let t=(()=>{try{var t,l,n,r;let i=null==(l=e.dataSourceManager)||null==(t=l.getDataSource)?void 0:t.call(l,o.dataSourceKey||"main");return(null==i||null==(r=i.collectionManager)||null==(n=r.getCollection)?void 0:n.call(r,o.collection||""))||null}catch(e){return null}})();n.record=await (0,d.$S)(()=>t,l("Popup record"),()=>o)||{type:"object",title:l("Popup record")}}else n.record={type:"object",title:l("Popup record")};return n.resource={type:"object",title:l("Data source"),properties:async()=>({dataSourceKey:{type:"string",title:l("Data source key")},collectionName:{type:"string",title:l("Collection name")},associationName:{type:"string",title:l("Association name")},filterByTk:{type:"string",title:l("filterByTk")},sourceId:{type:"string",title:l("sourceId")}})},n}});return o.title=l("Parent popup"),o},p=()=>({type:"object",title:l("Current popup"),disabled:()=>!n(),hidden:()=>!n(),buildVariablesParams:async e=>{var t,l,o,i,s,d;if(!n())return;let u=await r(e),c=null==(t=e.view)?void 0:t.inputArgs,p={};if(u){let e={...u};!e.associationName&&(null==c?void 0:c.associationName)&&(e.associationName=c.associationName),void 0===e.sourceId&&void 0!==(null==c?void 0:c.sourceId)&&(e.sourceId=null==c?void 0:c.sourceId),p.record=e}try{let t=null==(l=e.view)?void 0:l.navigation;if((Array.isArray(null==t?void 0:t.viewStack)?t.viewStack:[]).length>=2){let t=p,l=1,o=await a(l,e);for(;o;)t.parent||(t.parent={}),t.parent.record=o,t=t.parent,l+=1,o=await a(l,e)}}catch(t){null==(i=e.logger)||null==(o=i.debug)||o.call(i,{err:t},"[FlowEngine] buildVariablesParams: build parent-chain failed")}try{let e=null==c?void 0:c.sourceId,t=null==c?void 0:c.associationName,l=(null==c?void 0:c.dataSourceKey)||"main";if(null!=e&&""!==e&&t&&"string"==typeof t){let o=String(t).split(".")[0];o&&(p.sourceRecord={collection:o,dataSourceKey:l,filterByTk:e})}}catch(t){null==(d=e.logger)||null==(s=d.debug)||s.call(d,{err:t},"[FlowEngine] buildVariablesParams: infer sourceRecord failed")}return p},properties:async()=>{var t,o,n,s,c,p;let h={};if(h.uid={type:"string",title:l("Popup uid")},await r(e)){let e=async()=>{let e=await i();return e?await (0,d.$S)(()=>e,l("Current popup record"),e=>r(e)):null};e.title=l("Current popup record"),e.hasChildren=!0,h.record=e}try{let r=null==(t=e.view)?void 0:t.inputArgs,i=null==r?void 0:r.sourceId,a=null==r?void 0:r.associationName,u=(null==r?void 0:r.dataSourceKey)||"main";if(!a||"string"!=typeof a||!a.includes(".")){let t=null==(o=e.view)?void 0:o.navigation,l=Array.isArray(null==t?void 0:t.viewStack)?t.viewStack:[],r=null==l?void 0:l[l.length-1];if(null==r?void 0:r.viewUid){let t=null==e||null==(n=e.engine)?void 0:n.getModel(r.viewUid,!0);t||(t=await e.engine.loadModel({uid:r.viewUid}));let l=(null==t||null==(s=t.getStepParams)?void 0:s.call(t,"popupSettings","openView"))||{};a=(null==l?void 0:l.associationName)||a,u=(null==l?void 0:l.dataSourceKey)||u}}if(null!=i&&""!==i&&a&&"string"==typeof a){let t=String(a).includes(".")?String(a).split(".")[0]:void 0;if(t){let o=()=>{try{var l,o,n,r;let i=null==(o=e.dataSourceManager)||null==(l=o.getDataSource)?void 0:l.call(o,u);return(null==i||null==(r=i.collectionManager)||null==(n=r.getCollection)?void 0:n.call(r,t))||null}catch(e){return null}},n=await (0,d.$S)(o,l("Current popup parent record"),()=>({collection:t,dataSourceKey:u,filterByTk:i}));n&&(h.sourceRecord=n)}}}catch(t){null==(p=e.logger)||null==(c=p.debug)||c.call(p,{err:t},"[FlowEngine] popup.properties: build sourceRecord failed")}return h.resource={type:"object",title:l("Data source"),properties:async()=>({dataSourceKey:{type:"string",title:l("Data source key")},collectionName:{type:"string",title:l("Collection name")},associationName:{type:"string",title:l("Association name")},filterByTk:{type:"string",title:l("filterByTk")},sourceId:{type:"string",title:l("sourceId")}})},await a(1)&&(h.parent=u(1)),h}});return p.title=l("Current popup"),p.sort=975,p}async function c(e,t){var l,o,n;let r=null==t?void 0:t.navigation,i=Array.isArray(null==r?void 0:r.viewStack)?r.viewStack:[],a=null==t||null==(l=t.inputArgs)?void 0:l.openerUids,s=Array.isArray(a)&&a.length>0;if(!(i.length>=2||s))return;if(!i.length){let e=(null==t?void 0:t.inputArgs)||{};if(!(e.collectionName||null!=e.filterByTk||null!=e.sourceId||e.associationName||e.viewUid))return;return{uid:e.viewUid,resource:{dataSourceKey:e.dataSourceKey||"main",collectionName:e.collectionName,associationName:e.associationName,filterByTk:e.filterByTk,sourceId:e.sourceId}}}let d=async t=>{var l,o,n,r,a,s;if(t<0||!(null==(l=i[t])?void 0:l.viewUid))return;let u=i[t].viewUid,c=null==(o=e.engine)?void 0:o.getModel(u,!0);c||(c=await (null==(s=e.engine)?void 0:s.loadModel({uid:u})));let p=(null==c||null==(n=c.getStepParams)?void 0:n.call(c,"popupSettings","openView"))||{},h=null==p?void 0:p.collectionName,m={uid:u,resource:{dataSourceKey:(null==p?void 0:p.dataSourceKey)||"main",collectionName:h,associationName:null==p?void 0:p.associationName,filterByTk:null==(r=i[t])?void 0:r.filterByTk,sourceId:null==(a=i[t])?void 0:a.sourceId}},f=await d(t-1);return f&&(m.parent=f),m};return await d(((null==t||null==(n=t.navigation)||null==(o=n.viewStack)?void 0:o.length)||1)-1)}function p(e,t){let l=/^(?:record|sourceRecord)(?:\.|$)|^parent(?:\.parent)*(?:\.(?:record|sourceRecord))(?:\.|$)/;e.defineProperty("popup",{get:async()=>c(e,t),meta:u(e,t),resolveOnServer:e=>{try{return!!e&&l.test(e)}catch(e){return!1}}})}var h=l(18182);let m=(0,n.forwardRef)((e,t)=>{let{afterClose:l,footer:r,header:i,hidden:a,...s}=e,[d,u]=(0,n.useState)(!0),[c,p]=(0,n.useState)(s),[m,f]=(0,n.useState)(()=>r),[g,v]=(0,n.useState)(i);(0,n.useImperativeHandle)(t,()=>({destroy:()=>{u(!1),null==l||l()},update:e=>p(t=>({...t,...e})),setFooter:e=>{f(e)},setHeader:e=>{0===Object.values(e||{}).length?v(null):v(e)}}));let y={...c,title:(null==g?void 0:g.title)||c.title,extra:null==g?void 0:g.extra,footer:void 0!==m?m:c.footer??null},b=n.useMemo(()=>document.querySelector("#nocobase-app-container"),[]);return(0,o.jsx)(h.A,{closable:!1,rootClassName:a?"nb-hidden":"",getContainer:b,...y,open:d,onCancel:c.onCancel,afterClose:()=>{null==l||l()},children:c.children})});function f(){let[e,t]=n.useState([]);return[e,n.useCallback(e=>(t(t=>[...t,e]),()=>{t(t=>t.filter(t=>t!==e))}),[])]}var g=l(16639),v=l(20616),y=l(47451);async function b(e,t){var l;return!!t.force||!1!==await (null==(l=e.beforeClose)?void 0:l.call(e,t))}let x=0;function w(){let e=n.useRef(null),t=(t,l)=>{var u,c,h;let f,w,S=null==l?void 0:l.engine;x+=1;let M=n.createRef(),F=new Promise(e=>{w=e}),A=null,k=null,C=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return A=t,null==(e=M.current)||e.setFooter(t),()=>{var e;A=null,null==(e=M.current)||e.setFooter(null)}},[t]),null},P=e=>(n.useEffect(()=>{var t;return k=e,null==(t=M.current)||t.setHeader(e),()=>{var e;k=null,null==(e=M.current)||e.setHeader(null)}},[e]),null),j=new a.cB,I=(0,y._)(l.engine),E=(0,g.eX)(S,I);j.defineProperty("engine",{value:I}),j.addDelegate(I.context),!1!==t.inheritContext?j.addDelegate(l):j.addDelegate(l.engine.context);let _=!1,R={type:"dialog",inputArgs:t.inputArgs||{},preventClose:!!t.preventClose,beforeClose:void 0,destroy:e=>{var l,o,n,r;if(_)return;_=!0,null==(l=t.onClose)||l.call(t),null==(o=M.current)||o.destroy(),null==f||f(),null==w||w(e);let i=null==E?void 0:E.emitter;(0,g.Z8)(i),null==i||null==(r=i.emit)||r.call(i,g.B9,{type:"dialog",viewUid:null==R||null==(n=R.inputArgs)?void 0:n.viewUid}),I.unlinkFromStack()},update:e=>{var t;return null==(t=M.current)?void 0:t.update(e)},close:async(e,l)=>{var o,n;return(!t.preventClose||!!l)&&!!await b(R,{result:e,force:l})&&(t.triggerByRouter&&(null==(n=t.inputArgs)||null==(o=n.navigation)?void 0:o.back)?t.inputArgs.navigation.back():R.destroy(e),!0)},Footer:C,Header:P,setFooter:e=>{var t;A=e,null==(t=M.current)||t.setFooter(e)},setHeader:e=>{var t;k=e,null==(t=M.current)||t.setHeader(e)},navigation:null==(u=t.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(l,j)}};j.defineProperty("view",{get:()=>R,resolveOnServer:(0,d.Xx)(j,()=>(0,d.vE)(l,j))}),I.setDestroyView(()=>{var e,l;t.triggerByRouter&&(null==(l=t.inputArgs)||null==(e=l.navigation)?void 0:e.back)&&t.inputArgs.navigation.back(),R.destroy()}),p(j,R);let T=(0,i.observer)(()=>{var e,l,i,a;let s=n.useRef(!1),d="function"==typeof t.content?t.content(R,j):t.content,u="string"==typeof d?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(d)}}):d;return(n.useEffect(()=>{var e;null==(e=t.onOpen)||e.call(t,R,j)},[]),(null==(l=t.inputArgs)||null==(e=l.hidden)?void 0:e.value)&&!s.current)?null:(s.current=!0,(0,o.jsx)(m,{className:"nb-dialog-overflow-hidden",ref:M,hidden:null==(a=t.inputArgs)||null==(i=a.hidden)?void 0:i.value,footer:A,header:k,...t,onCancel:()=>{R.close(t.result)},children:u}))},{displayName:"DialogWithContext"}),D=(null==t||null==(c=t.inputArgs)?void 0:c.viewUid)||`page-${x}`,N=(0,o.jsx)(v.I6,{engine:I,children:(0,o.jsx)(s.YQ,{context:j,children:(0,o.jsx)(T,{})})},D);return f=null==(h=e.current)?void 0:h.patchElement(N),Object.assign(F,R)},l=n.useMemo(()=>({open:t}),[]),u=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[r]),(0,o.jsx)(o.Fragment,{children:l})}));return[l,(0,o.jsx)(u,{ref:e},"dialog-holder")]}var S=l(97134),M=l(61793);let F=n.forwardRef((e,t)=>{var l;let{children:r,footer:i,title:a,extra:s,hidden:d,isMobile:u,...c}=e,[p,h]=n.useState(!0),[m,f]=n.useState(()=>i),[g,v]=n.useState({title:a,extra:s,...c.header});n.useImperativeHandle(t,()=>({destroy:()=>{h(!1)},update:e=>{Object.assign(c,e)},setFooter:e=>{f(e)},setHeader:e=>{0===Object.values(e||{}).length?v(null):v(e)}}),[]);let y=n.useMemo(()=>document.querySelector("#nocobase-app-container"),[]);return u?(0,o.jsx)(M.D,{className:d?"nb-hidden":"",visible:p,...c,footer:m,...g,onClose:c.onClose,children:r}):(0,o.jsx)(S.A,{rootClassName:d?"nb-hidden":"",closable:!1,getContainer:y,...c,open:p,footer:m,styles:{...c.styles,footer:{display:"flex",justifyContent:"flex-end",...null==(l=c.styles)?void 0:l.footer}},...g,onClose:c.onClose,children:r})});function A(){let e=n.useRef(null),t=n.useMemo(()=>i.observable.shallow({value:[]}),[]),l=n.memo(e=>{let{index:r}=e,[a,s]=n.useState(null);return(n.useEffect(()=>{(0,i.autorun)(()=>{let e=t.value;e[r]&&a!==e[r]&&s(e[r]),e[r]||s(null)})},[a,r]),a)?(0,o.jsx)(a,{children:(0,o.jsx)(l,{index:r+1})}):null});l.displayName="RenderNestedDrawer";let u=(t,l)=>{var u,c;let h,m,f=l.engine,x=n.createRef(),w=new Promise(e=>{m=e}),S=null,M=null,A=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return S=t,null==(e=x.current)||e.setFooter(t),()=>{var e;S=null,null==(e=x.current)||e.setFooter(null)}},[t]),null},k=e=>(n.useEffect(()=>{var t;return M=e,null==(t=x.current)||t.setHeader(e),()=>{var e;M=null,null==(e=x.current)||e.setHeader(null)}},[e]),null),C=new a.cB,P=(0,y._)(l.engine),j=(0,g.eX)(f,P);C.defineProperty("engine",{value:P}),C.addDelegate(P.context),!1!==t.inheritContext?C.addDelegate(l):C.addDelegate(l.engine.context);let I=!1,E={type:"drawer",inputArgs:t.inputArgs||{},preventClose:!!t.preventClose,beforeClose:void 0,destroy:e=>{var l,o,n,r;if(I)return;I=!0,null==(l=t.onClose)||l.call(t),null==(o=x.current)||o.destroy(),null==h||h(),null==m||m(e);let i=null==j?void 0:j.emitter;(0,g.Z8)(i),null==i||null==(r=i.emit)||r.call(i,g.B9,{type:"drawer",viewUid:null==E||null==(n=E.inputArgs)?void 0:n.viewUid}),P.unlinkFromStack()},update:e=>{var t;return null==(t=x.current)?void 0:t.update(e)},close:async(e,l)=>{var o,n;return(!t.preventClose||!!l)&&!!await b(E,{result:e,force:l})&&(t.triggerByRouter&&(null==(n=t.inputArgs)||null==(o=n.navigation)?void 0:o.back)?t.inputArgs.navigation.back():E.destroy(e),!0)},Footer:A,Header:k,setFooter:e=>{var t;S=e,null==(t=x.current)||t.setFooter(e)},setHeader:e=>{var t;M=e,null==(t=x.current)||t.setHeader(e)},navigation:null==(u=t.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(l,C)}};C.defineProperty("view",{get:()=>E,resolveOnServer:(0,d.Xx)(C,()=>(0,d.vE)(l,C))}),P.setDestroyView(()=>{var e,l;t.triggerByRouter&&(null==(l=t.inputArgs)||null==(e=l.navigation)?void 0:e.back)&&t.inputArgs.navigation.back(),E.destroy()}),p(C,E);let _=n.memo((0,i.observer)(e=>{var l,i,a,s;let d=n.useRef(!1),u="function"==typeof t.content?t.content(E,C):t.content,c="string"==typeof u?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(u)}}):u;return(n.useEffect(()=>{var e;null==(e=t.onOpen)||e.call(t,E,C)},[]),(null==(i=t.inputArgs)||null==(l=i.hidden)?void 0:l.value)&&!d.current)?(0,o.jsx)(o.Fragment,{children:e.children}):(d.current=!0,(0,o.jsxs)(F,{ref:x,...t,footer:S,header:t.header||M,hidden:null==(s=t.inputArgs)||null==(a=s.hidden)?void 0:a.value,onClose:()=>{E.close(t.result)},isMobile:C.isMobileLayout,children:[c,e.children]}))}));_.displayName="DrawerWithContext";let R=n.memo(e=>{let{children:t}=e;return(0,o.jsx)(v.I6,{engine:P,children:(0,o.jsx)(s.YQ,{context:C,children:(0,o.jsx)(_,{children:t})})})});return R.displayName="RenderDrawer",h=null==(c=e.current)?void 0:c.patchElement(R),Object.assign(w,E)},c=n.useMemo(()=>({open:u}),[]),h=n.memo(n.forwardRef((e,r)=>{let[i,a]=f();return n.useImperativeHandle(r,()=>({patchElement:a}),[a]),n.useEffect(()=>{t.value=i},[i]),(0,o.jsx)(l,{index:0})}));return[c,(0,o.jsx)(h,{ref:e},"drawer-holder")]}var k=l(40961),C=l(31333),P=l(71021);let j=(0,n.forwardRef)((e,t)=>{let[l,r]=n.useState({}),{visible:i=!0,footer:a=null,header:s=null,children:d,hidden:u,title:c,styles:p={},zIndex:h=4}={...e,...l},m=(0,n.useRef)(!1),f=(0,v.uf)(),[g,y]=(0,n.useState)(()=>a),[b,x]=(0,n.useState)(s);(0,n.useImperativeHandle)(t,()=>({destroy:()=>{m.current||(m.current=!0)},update:e=>{r(e)},setFooter:e=>{y(e)},setHeader:e=>{0===Object.values(e||{}).length?x(null):x(e)}}));let w=(0,n.useMemo)(()=>({display:u?"none":"flex",flexDirection:"column",height:"100%",zIndex:h}),[u,h]),S=(0,n.useMemo)(()=>{if(!b&&!c)return null;let{title:t=c,extra:l}=b||{},n=f.context.themeToken;return(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:`${n.paddingSM}px ${n.padding}px`,borderBottom:`1px solid ${n.colorSplit}`,backgroundColor:n.colorBgContainer,...p.header},children:[(0,o.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:n.marginXS},children:[(0,o.jsx)(P.Ay,{type:"text",size:"small",icon:(0,o.jsx)(C.A,{}),onClick:()=>{if(!m.current){var t;m.current=!0,null==(t=e.onClose)||t.call(e)}},style:{color:n.colorTextTertiary}}),t&&(0,o.jsx)("div",{style:{fontSize:n.fontSizeLG,fontWeight:n.fontWeightStrong,color:n.colorText},children:t})]}),l&&(0,o.jsx)("div",{children:l})]})},[b,c,f.context.themeToken,p.header,e.onClose]),M=(0,n.useMemo)(()=>{if(!g)return null;let e=f.context.themeToken;return(0,o.jsx)("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",padding:`${e.paddingXS}px ${e.padding}px`,borderTop:`1px solid ${e.colorSplit}`,backgroundColor:e.colorBgContainer,...p.footer},children:g})},[g,f.context.themeToken,p.footer]);return i?(0,o.jsxs)("div",{style:{...w,...p.content},children:[S,(0,o.jsx)("div",{style:{flex:1,overflowY:"auto",...p.body},children:d}),M]}):null}),I=0,E="nocobase-embed-container",_="nocobaseEmbedReplacing",R=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[r]),(0,o.jsx)(o.Fragment,{children:l})}));function T(){let e=n.useRef(null),t=n.useRef(null),l=(l,r)=>{var u,c,h;let m,f,x=null==r?void 0:r.engine;I+=1;let w=n.createRef(),S=new Promise(e=>{f=e}),M=e=>{let{children:t}=e;return n.useEffect(()=>{var e;return null==(e=w.current)||e.setFooter(t),()=>{var e;null==(e=w.current)||e.setFooter(null)}},[t]),null},F=e=>(n.useEffect(()=>{var t;return null==(t=w.current)||t.setHeader(e),()=>{var e;null==(e=w.current)||e.setHeader(null)}},[e]),null),{target:A,content:C,preventClose:P,inheritContext:R=!0,inputArgs:T={},...D}=l,N=A instanceof HTMLElement&&A.id===E;if(N&&t.current)try{A.dataset[_]="1",t.current.destroy()}finally{delete A.dataset[_],t.current=null}let O=new a.cB,$=(0,y._)(r.engine),B=(0,g.eX)(x,$);O.defineProperty("engine",{value:$}),O.addDelegate($.context),R?O.addDelegate(r):O.addDelegate(r.engine.context);let q={type:"embed",inputArgs:T,preventClose:!!l.preventClose,beforeClose:void 0,destroy:e=>{var o,n,r,i,a;if(null==(o=l.onClose)||o.call(l),null==f||f(e),null==(n=w.current)||n.destroy(),null==m||m(),N&&(t.current=null),!(N&&A instanceof HTMLElement&&(null==(r=A.dataset)?void 0:r[_])==="1")){let e=null==B?void 0:B.emitter;(0,g.Z8)(e),null==e||null==(a=e.emit)||a.call(e,g.B9,{type:"embed",viewUid:null==q||null==(i=q.inputArgs)?void 0:i.viewUid})}$.unlinkFromStack()},update:e=>{var t;return null==(t=w.current)?void 0:t.update(e)},close:async(e,t)=>{var o,n;return(!P||!!t)&&!!await b(q,{result:e,force:t})&&(l.triggerByRouter&&(null==(n=l.inputArgs)||null==(o=n.navigation)?void 0:o.back)?l.inputArgs.navigation.back():q.destroy(e),!0)},Header:F,Footer:M,setFooter:e=>{var t;null==(t=w.current)||t.setFooter(e)},setHeader:e=>{var t;null==(t=w.current)||t.setHeader(e)},navigation:null==(u=l.inputArgs)?void 0:u.navigation,get record(){return(0,d.vE)(r,O)}};O.defineProperty("view",{get:()=>q,resolveOnServer:(0,d.Xx)(O,()=>(0,d.vE)(r,O))}),p(O,q);let L=(0,i.observer)(()=>{var e,t,r,i;let a=n.useRef(!1),s=n.useMemo(()=>"function"==typeof C?C(q,O):C,[]);return(O.themeToken,n.useEffect(()=>{var e;null==(e=l.onOpen)||e.call(l,q,O)},[]),(null==(t=l.inputArgs)||null==(e=t.hidden)?void 0:e.value)&&!a.current)?null:(a.current=!0,(0,o.jsx)(j,{ref:w,hidden:null==(i=l.inputArgs)||null==(r=i.hidden)?void 0:r.value,...D,onClose:()=>{q.close(l.result)},children:s}))},{displayName:"PageWithContext"}),V=(null==T?void 0:T.viewUid)||`page-${I}`,z=(0,o.jsx)(v.I6,{engine:$,children:(0,o.jsx)(s.YQ,{context:O,children:(0,o.jsx)(L,{})})},V);return m=A&&A instanceof HTMLElement?null==(c=e.current)?void 0:c.patchElement(k.createPortal(z,A,V)):null==(h=e.current)?void 0:h.patchElement(z),N&&(t.current={destroy:q.destroy}),Object.assign(S,q)};return[n.useMemo(()=>({open:l}),[]),(0,o.jsx)(R,{ref:e},"page-holder")]}var D=l(28073);let N=0,O=n.forwardRef((e,t)=>{var l,r;let{afterClose:i,content:a,placement:s,rect:d,...u}=e,[c,p]=n.useState(!0),[h,m]=n.useState({content:a,placement:s,rect:d,...u});return n.useImperativeHandle(t,()=>({destroy:()=>p(!1),update:e=>m(t=>({...t,...e})),close:(e,t)=>p(!1)})),n.useEffect(()=>{c||null==i||i()},[c,i]),(0,o.jsx)(D.A,{arrow:!1,open:c,trigger:["click"],destroyTooltipOnHide:!0,content:h.content,placement:h.placement,getPopupContainer:()=>document.querySelector("#nocobase-app-container")||document.body,onOpenChange:e=>{(e||!h.preventClose)&&(p(e),e||null==i||i())},...h,children:(0,o.jsx)("span",{style:{position:"absolute",top:((null==(l=h.rect)?void 0:l.top)??0)+window.scrollY,left:((null==(r=h.rect)?void 0:r.left)??0)+window.scrollX,width:0,height:0}})})});function $(){let e=n.useRef(null),t=t=>{var l,i;let a,s;N+=1;let{target:d,placement:u="rightTop",content:c,...p}=t,h=n.createRef(),m=(null==d||null==(l=d.getBoundingClientRect)?void 0:l.call(d))??{top:0,left:0},f=new Promise(e=>{s=e}),g={type:"popover",destroy:()=>{var e;return null==(e=h.current)?void 0:e.destroy()},update:e=>{var t;return null==(t=h.current)?void 0:t.update(e)},close:e=>{var t;null==s||s(e),null==(t=h.current)||t.close(e)}},v="function"==typeof c?c(g):c,y="string"==typeof v?(0,o.jsx)("div",{dangerouslySetInnerHTML:{__html:r.A.sanitize(v)}}):v,b=(0,o.jsx)(O,{ref:h,content:y,placement:u,rect:m,afterClose:()=>{var e;null==a||a(),null==(e=t.onClose)||e.call(t),null==s||s(t.result)},...p},`popover-${N}`);return a=null==(i=e.current)?void 0:i.patchElement(b),Object.assign(f,g)},l=n.useMemo(()=>({open:t}),[]),i=n.memo(n.forwardRef((e,t)=>{let[l,r]=f();return n.useImperativeHandle(t,()=>({patchElement:r}),[]),(0,o.jsx)(o.Fragment,{children:l})}));return[l,(0,o.jsx)(i,{ref:e},"popover-holder")]}var B=l(50467),q=l(52847);function L(e){return null==e?"":e&&"object"==typeof e&&!Array.isArray(e)?encodeURIComponent(Object.entries(e).map(e=>{let[t,l]=e;return`${encodeURIComponent(String(t))}=${encodeURIComponent(String(l))}`}).join("&")):encodeURIComponent(String(e))}function V(e){if(!e||0===e.length)return"/admin";let t=["admin"];return e.forEach((e,l)=>{if(l>0&&t.push("view"),t.push(e.viewUid),e.tabUid&&t.push("tab",e.tabUid),null!=e.filterByTk){let l=L(e.filterByTk);l&&t.push("filterbytk",l)}e.sourceId&&t.push("sourceid",e.sourceId)}),"/"+t.join("/")}class z{setViewStack(e){this.viewStack=Object.freeze([...e]),this.viewParams=this.viewStack[this.viewStack.length-1]||{}}changeTo(e){let t=V(this.viewStack.map((t,l)=>l===this.viewStack.length-1?{...t,...e}:{...t}));this.ctx.router.navigate(t,{replace:!0})}navigateTo(e,t){let l=V([...this.viewStack,e]);this.ctx.router.navigate(l,t)}back(){let e=V(this.viewStack.slice(0,-1));this.ctx.router.navigate(e,{replace:!0})}constructor(e,t){(0,B._)(this,"viewStack",void 0),(0,B._)(this,"ctx",void 0),(0,B._)(this,"viewParams",void 0),this.setViewStack(t),this.ctx=e,(0,q.E8)(this,{viewParams:q.sH})}}},16639(e,t,l){l.d(t,{B9:()=>n,FH:()=>s,HK:()=>r,Z8:()=>d,eX:()=>p,i6:()=>i,tb:()=>o});let o=Symbol.for("__NOCOBASE_VIEW_ACTIVATED_VERSION__"),n="view:activated",r="dataSource:dirty",i="__NOCOBASE_ENGINE_SCOPE__",a="view";function s(e){let t=Reflect.get(e,o),l="number"==typeof t?t:Number(t);return Number.isFinite(l)&&l>0?l:0}function d(e){let t=s(e);if(!Object.isExtensible(e))return t;let l=t+1;return Reflect.set(e,o,l),l}function u(e){return Reflect.get(e,i)===a}function c(e){let t=e,l=0;for(;t&&l++<50;){if(u(t))return t;t=t.previousEngine}}function p(e,t){if(!e)return;let l=c(e);return l||c(null==t?void 0:t.previousEngine)||e}},40542(e,t,l){l.d(t,{D:()=>o});let o=(e,t,l)=>{if(!e)return l;let n=t.split("."),r=[],i=e,a=!1;for(let e=0;e<n.length;e++){let t=n[e];if(Array.isArray(i)){for(let t of(a=!0,i)){let i=o(t,n.slice(e).join("."),l);r=r.concat(i)}break}if((null==i?void 0:i[t])===void 0)break;i=i[t],e===n.length-1&&r.push(i)}return 0===(r=r.filter(e=>void 0!==e)).length?l:a?r.filter(e=>null!==e):r[0]}},96436(e,t,l){l.r(t),l.d(t,{getDayRange:()=>tl,isEmptyFilter:()=>ed,sleep:()=>es,getDateVars:()=>ta,isString:()=>ee,unflatten:()=>e8,sortTree:()=>ea,forEach:()=>ek,utc2unit:()=>tn,extractUsedVariablePaths:()=>tI,getValuesByPath:()=>eC,isArray:()=>et,moment2str:()=>eb,transformLiquidContext:()=>t_,isURL:()=>tF,isPortalInBody:()=>tb,extractUsedVariableNames:()=>tj,parseHTML:()=>tx,toGmt:()=>ep,isPlainObject:()=>eo,lockdownSes:()=>tg,splitPathToTwoParts:()=>ts,transformFilter:()=>G,parseSQLBindParams:()=>tD,getPickerFormat:()=>eM,nextTick:()=>er,removeNullCondition:()=>eu,CollectionsGraph:()=>V,isValidFilter:()=>eR,evaluateConditions:()=>Z,toUnit:()=>tr,BASE_BLOCKED_IDENTIFIERS:()=>th,getFormatFromDateStr:()=>eA,removeInvalidFilterItems:()=>J,toLocal:()=>eh,getDayRangeByParams:()=>q,getDefaultFormat:()=>ec,transformMultiColumnToSingleColumn:()=>tC,treeFind:()=>ei,transformSQL:()=>tN,parseFilter:()=>tt,flatten:()=>e5,getOffsetRangeByParams:()=>N,isEmpty:()=>el,offsetFromString:()=>ex,tval:()=>tv,error:()=>eL,Registry:()=>tu,lodash:()=>n(),parse:()=>eO,hasEmptyValue:()=>en,toFixedByStep:()=>eJ,getDateTimeFormat:()=>eF,showToast:()=>eH,Handlebars:()=>eI(),getLiquidContext:()=>tR,merge:()=>eU,dayjs:()=>i(),parseLiquidContext:()=>tT,uid:()=>tM,str2moment:()=>eg});var o=l(2543),n=l.n(o),r=l(74353),i=l.n(r),a=l(97375),s=l.n(a),d=l(90445),u=l.n(d),c=l(43522),p=l.n(c),h=l(37872),m=l.n(h),f=l(98867),g=l.n(f),v=l(8906),y=l.n(v),b=l(68313),x=l.n(b),w=l(21840),S=l.n(w),M=l(41816),F=l.n(M),A=l(88569),k=l.n(A),C=l(83826),P=l.n(C),j=l(8134),I=l.n(j),E=l(28623),_=l.n(E),R=l(46986),T=l.n(R);i().extend(T()),i().extend(S()),i().extend(k()),i().extend(P()),i().extend(F()),i().extend(x()),i().extend(m()),i().extend(g()),i().extend(y()),i().extend(I()),i().extend(_()),i().extend(u()),i().extend(s()),i().extend(p());let D=e=>{if(!e)return i()();if(/^[+-]\d{2}:\d{2}$/.test(e)){let[t,l,o]=e.match(/([+-])(\d{2}):(\d{2})/).slice(1),n=(60*parseInt(l)+parseInt(o))*("+"===t?1:-1);return i()().utcOffset(n)}return i()().tz(e)},N=e=>{let t,l,{type:o,unit:n="day",number:r=1,timezone:i}=e,a=D(i),s="week"===n?"isoWeek":n;if("past"===o){let e=a.startOf(s);t=e.subtract(r,n).startOf(s),l=e.subtract(1,n).endOf(s)}else if("next"===o)l=(t=a.startOf(s).add(1,n).startOf(s)).add(r-1,n).endOf(s);else throw Error(`Unsupported type: ${o}`);return[t.format("YYYY-MM-DD HH:mm:ss"),l.format("YYYY-MM-DD HH:mm:ss")]},O=(e,t,l)=>{let o="isoWeek"===t?"week":t;return D(l).add(e,o).startOf(t)},$=(e,t,l)=>{let o="isoWeek"===t?"week":t;return D(l).add(e,o).endOf(t)},B={today:e=>[O(0,"day",null==e?void 0:e.timezone),$(0,"day",null==e?void 0:e.timezone)],yesterday:e=>[O(-1,"day",null==e?void 0:e.timezone),$(-1,"day",null==e?void 0:e.timezone)],tomorrow:e=>[O(1,"day",null==e?void 0:e.timezone),$(1,"day",null==e?void 0:e.timezone)],thisWeek:e=>[O(0,"isoWeek",null==e?void 0:e.timezone),$(0,"isoWeek",null==e?void 0:e.timezone)],lastWeek:e=>[O(-1,"isoWeek",null==e?void 0:e.timezone),$(-1,"isoWeek",null==e?void 0:e.timezone)],nextWeek:e=>[O(1,"isoWeek",null==e?void 0:e.timezone),$(1,"isoWeek",null==e?void 0:e.timezone)],thisMonth:e=>[O(0,"month",null==e?void 0:e.timezone),$(0,"month",null==e?void 0:e.timezone)],lastMonth:e=>[O(-1,"month",null==e?void 0:e.timezone),$(-1,"month",null==e?void 0:e.timezone)],nextMonth:e=>[O(1,"month",null==e?void 0:e.timezone),$(1,"month",null==e?void 0:e.timezone)],thisQuarter:e=>[O(0,"quarter",null==e?void 0:e.timezone),$(0,"quarter",null==e?void 0:e.timezone)],lastQuarter:e=>[O(-1,"quarter",null==e?void 0:e.timezone),$(-1,"quarter",null==e?void 0:e.timezone)],nextQuarter:e=>[O(1,"quarter",null==e?void 0:e.timezone),$(1,"quarter",null==e?void 0:e.timezone)],thisYear:e=>[O(0,"year",null==e?void 0:e.timezone),$(0,"year",null==e?void 0:e.timezone)],lastYear:e=>[O(-1,"year",null==e?void 0:e.timezone),$(-1,"year",null==e?void 0:e.timezone)],nextYear:e=>[O(1,"year",null==e?void 0:e.timezone),$(1,"year",null==e?void 0:e.timezone)]},q=e=>{if("past"===e.type||"next"===e.type)return N(e);let t=B[e.type];if(!t)throw Error(`Unsupported type: ${e.type}`);let[l,o]=t(e);return[l.format("YYYY-MM-DD HH:mm:ss"),o.format("YYYY-MM-DD HH:mm:ss")]};var L=l(38362);class V{static graphlib(){return L}static connectedNodes(e){let t=(0,o.castArray)(e.nodes),l=(0,o.castArray)(e.excludes||[]),n=V.build(e),r=new Set;for(let e of t)for(let t of L.alg.preorder(n,e))l.includes(t)||r.add(t);return Array.from(r)}static preOrder(e){return V.graphlib().alg.preorder(V.build(e),e.node)}static build(e){let t=e.collections,l="forward"===((null==e?void 0:e.direction)||"forward"),o=new L.Graph;for(let e of t)o.setNode(e.name);for(let e of t){for(let t of e.inherits||[])l?o.setEdge(e.name,t):o.setEdge(t,e.name);for(let t of e.fields||[])if(("hasMany"===t.type||"belongsTo"===t.type||"hasOne"===t.type)&&(l?o.setEdge(e.name,t.target):o.setEdge(t.target,e.name)),"belongsToMany"===t.type){let n=t.through;l?(o.setEdge(e.name,n),o.setEdge(n,t.target)):(o.setEdge(t.target,n),o.setEdge(n,e.name))}}return o}}var z=l(81814),K=l.n(z);function U(e){return"path"in e&&"operator"in e}function W(e){return"logic"in e&&"items"in e}function H(e){let{path:t,operator:l,value:o}=e;return{[t]:{[l]:o}}}function Y(e){let{logic:t,items:l}=e;return{[t]:l.map(e=>{if(U(e))return H(e);if(W(e))return Y(e);throw Error("Invalid filter item type")})}}function G(e){if(!e||"object"!=typeof e)throw Error("Invalid filter: filter must be an object");if(!W(e))throw Error("Invalid filter: filter must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid filter: items must be an array");return eu(Y(e))}function J(e){if(!e||"object"!=typeof e)throw Error("Invalid filter: filter must be an object");if(!W(e))throw Error("Invalid filter: filter must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid filter: items must be an array");return e.items=e.items.filter(e=>U(e)?!!e.operator:!!W(e)&&J(e)),{...e}}function X(e,t){let{path:l,operator:o,value:n}=e;return t(l,o,n)}function Q(e,t){let{logic:l,items:o}=e;if(!o||0===o.length)return!0;let n=o.map(e=>{if(U(e))return X(e,t);if(W(e))return Q(e,t);throw Error("Invalid filter item type")});if("$and"===l)return n.every(e=>!0===e);if("$or"===l)return n.some(e=>!0===e);throw Error(`Unsupported logic operator: ${l}`)}function Z(e,t){if(!e||"object"!=typeof e)throw Error("Invalid conditions: conditions must be an object");if(!W(e))throw Error("Invalid conditions: conditions must have logic and items properties");if(!Array.isArray(e.items))throw Error("Invalid conditions: items must be an array");if("function"!=typeof t)throw Error("Invalid evaluator: evaluator must be a function");return Q(e,t)}let ee=e=>"string"==typeof e,et=e=>Array.isArray(e),el=e=>eo(e)?0===Object.keys(e).length:!!Array.isArray(e)&&0===e.length,eo=e=>{if("[object Object]"!==Object.prototype.toString.call(e))return!1;let t=Object.getPrototypeOf(e);return null===t||t===Object.prototype},en=e=>{let t=!0;for(let l in e){if(t=!1,et(e[l])&&0===e[l].length||!e[l])return!0;if(eo(e[l])||et(e[l]))return en(e[l])}return t},er=e=>{setTimeout(e)};function ei(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return;let{childrenKey:o="children"}=l;for(let n of Array.isArray(e)?[...e]:[e]){if(t(n))return n;let e="function"==typeof o?o(n):n[o];if(Array.isArray(e)&&e.length>0){let o=ei(e,t,l);if(void 0!==o)return o}}}function ea(e,t){let l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"children",o=!(arguments.length>3)||void 0===arguments[3]||arguments[3];return e&&Array.isArray(e)&&0!==e.length?n().orderBy(e,t,o?"asc":"desc").map(e=>e[l]&&e[l].length>0?{...e,[l]:ea(e[l],t,l,o)}:e):e}function es(e){return new Promise(t=>{setTimeout(t,e)})}function ed(e){return!!(!e||"$and"in e&&n().isEmpty(e.$and)||"$or"in e&&n().isEmpty(e.$or))}let eu=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:K(),l=t(e||{}),o={};for(let e in l){let t=l[e];null==t||el(t)||""===t||(o[e]=t)}let r=t.unflatten(o);for(let e in r)Array.isArray(r[e])&&(r[e]=r[e].filter(e=>null!=e));return n().isEmpty(r)?void 0:r},ec=e=>e.format?e.format:e.dateFormat?e.showTime?`${e.dateFormat} ${e.timeFormat||"HH:mm:ss"}`:e.dateFormat:"month"===e.picker?"YYYY-MM":"quarter"===e.picker?"YYYY-\\QQ":"year"===e.picker?"YYYY":"week"===e.picker?"YYYY[W]W":e.showTime?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD",ep=e=>e&&i().isDayjs(e)?`${e.format("YYYY-MM-DD")}T${e.format("HH:mm:ss.SSS")}Z`:e,eh=e=>e?Array.isArray(e)?e.map(e=>e.startOf("second").toISOString()):i().isDayjs(e)?e.startOf("second").toISOString():void 0:e,em=e=>{try{let t=parseInt(e.slice(0,4)),l=parseInt(e.slice(-1));return i()().quarter(l).year(t)}catch(e){return null}},ef=(e,t)=>{if(!e)return;let l=t.utcOffset,{gmt:o,picker:n,utc:r=!0,dateOnly:a}=t;if(!i()(e).isValid())return em(e);if(a){let t=i()(e);if(!t.isValid())return e;let l=t.format("YYYY-MM-DD");return i().utc(l,"YYYY-MM-DD")}return r?i().isDayjs(e)?l?e.utcOffset(ex(l)):e:o?i()(e).utcOffset(0):l?i()(e).utcOffset(ex(l)):i()(e):i()(e)},eg=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)?e.map(e=>ef(e,t)):e?ef(e,t):e},ev=(e,t)=>"year"===t?e.format("YYYY")+"-01-01T00:00:00.000Z":"month"===t||"quarter"===t?e.format("YYYY-MM")+"-01T00:00:00.000Z":e.format("YYYY-MM-DD")+"T00:00:00.000Z",ey=(e,t)=>e?Array.isArray(e)?e.map(e=>ev(e,t)):i().isDayjs(e)?ev(e,t):void 0:e,eb=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{showTime:l,gmt:o,picker:n}=t;return e?l?o?ep(e):eh(e):ey(e,n):e};function ex(e){if(!n().isString(e))return e;let t=/([+-]|\d\d)/gi,l=/Z|[+-]\d\d(?::?\d\d)?/gi,o=/[+-]?\d+(\.\d{1,3})?/,r=(e||"").match(l);if(null===r&&(r=(e||"").match(o)),null===r)return null;let i=((r[r.length-1]||[])+"").match(t)||["-",0,0],a=+(60*Number(i[1]))+ew(i[2]);return 0===a?0:"+"===i[0]?a:-a}function ew(e){let t=+e,l=0;return 0!==t&&isFinite(t)&&(l=eS(t)),l}function eS(e){return e<0?Math.ceil(e)||0:Math.floor(e)}let eM=e=>{switch(e){case"week":return"YYYY[W]W";case"month":return"YYYY-MM";case"quarter":return"YYYY[Q]Q";case"year":return"YYYY";default:return"YYYY-MM-DD"}},eF=(e,t,l,o)=>"date"===e&&l?`${t} ${o||"HH:mm:ss"}`:t;function eA(e){return/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test(e)?"YYYY-MM-DD HH:mm:ss":/^\d{4}-\d{2}-\d{2}$/.test(e)?"YYYY-MM-DD":/^\d{4}-\d{2}$/.test(e)?"YYYY-MM":/^\d{4}$/.test(e)?"YYYY":/^\d{4}Q[1-4]$/.test(e)?"YYYY[Q]Q":/^\d{4}-\d{2}-\d{2}T/.test(e)?"YYYY-MM-DDTHH:mm:ss.SSSZ":null}let ek=(e,t)=>{Array.isArray(e)?e.forEach(t):Object.keys(e).forEach(l=>{t(e[l],l)})},eC=(e,t,l)=>{if(!e)return l;let o=t.split("."),n=[],r=e,i=!1;for(let e=0;e<o.length;e++){let t=o[e];if(Array.isArray(r)){for(let t of(i=!0,r)){let r=eC(t,o.slice(e).join("."),l);n=n.concat(r)}break}if((null==r?void 0:r[t])===void 0)break;r=r[t],e===o.length-1&&n.push(r)}return 0===(n=n.filter(e=>void 0!==e)).length?l:i?n.filter(e=>null!==e):n[0]};var eP=l(88835),ej=l(60639),eI=l.n(ej),eE=l(79441);let e_=l.n(eE)()();function eR(e){if(!e)return!1;let t=[e.$and,e.$or].filter(Boolean);return 0==t.length?Object.keys(e).length>0:t.some(e=>{if(Array.isArray(e))return e.some(eR);if(e.$and||e.$or)return eR(e);let[t]=Object.keys(e);if(!t||!e[t])return!1;let[l]=Object.keys(e[t]);return!!l&&void 0!==e[t][l]})}function eT(e){let t=typeof e;return Array.isArray(e)?t="array":e instanceof Date?t="date":null===e&&(t="null"),t}function eD(e){let t=e.substr(2,e.length-4).trim(),l=t.indexOf(":");return -1!==l?{key:t.substr(0,l),defaultValue:t.substr(l+1)}:{key:t}}function eN(e,t){return e.parameters=Array.from(new Map(t.map(e=>[e.key,e])).values()),e}function eO(e){switch(eT(e)){case"string":return e$(e);case"object":return eB(e);case"array":return eq(e);default:return eN(function(){return e},[])}}Object.keys(e_).forEach(function(e){eI().registerHelper(e,e_[e])}),eI().registerHelper("json",function(e){return JSON.stringify(e)}),eI().registerHelper("urlParse",function(e){try{return JSON.stringify(eP.parse(e))}catch(t){return`Invalid URL: ${e}`}}),eI().registerHelper("dateFormat",(e,t,l)=>"string"==typeof l?i()(e).tz(l).format(t):i()(e).format(t)),eI().registerHelper("isNull",e=>n().isNull(e));let e$=(()=>{let e=/{{(\w|:|[\s-+.,@/()?=*_$])+}}/g;return t=>{let l=[],n=e=>t,r=t.match(e);return r&&(l=r.map(eD),n=e=>(e=e||{},r.reduce((n,i,a)=>{let s=l[a],d=(0,o.get)(e,s.key);return(void 0===d&&(d=s.defaultValue),"function"==typeof d&&(d=d()),1===r.length&&t.startsWith("{{")&&t.endsWith("}}"))?d:(d instanceof Date&&(d=d.toISOString()),n.replace(i,null==d?"":d))},t))),eN(n,l)}})();function eB(e){let t=Object.keys(e).map(t=>({keyTemplate:e$(t),valueTemplate:eO(e[t])}));return eN(e=>t.reduce((t,l)=>(t[l.keyTemplate(e)]=l.valueTemplate(e),t),{}),t.reduce((e,t)=>e.concat(t.valueTemplate.parameters,t.keyTemplate.parameters),[]))}function eq(e){let t=e.map(eO);return eN(e=>t.map(t=>t(e)),t.reduce((e,t)=>e.concat(t.parameters),[]))}let eL=function(e){for(var t=arguments.length,l=Array(t>1?t-1:0),o=1;o<t;o++)l[o-1]=arguments[o];console.error(e,...l)};var eV=l(14744),ez=l.n(eV);let eK=(e,t,l)=>t;function eU(e,t,l){return ez()(e,t,{arrayMerge:eK,...l})}var eW=l(98892);let eH=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"info",l=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5e3;eW.Ay[t]({message:e,duration:l})};var eY=l(5062),eG=l(85738);function eJ(e,t){if(null==e||""===e)return"";let l=(0,eY.i5)(t);return(0,eG.Mg)(String(e),".",l)}var eX=l(63560),eQ=l.n(eX),eZ=l(95093),e0=l.n(eZ);let e1=/^\s*\{\{([\s\S]*)\}\}\s*$/;function e2(e){return e&&e.constructor&&"function"==typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}function e4(e){return e}function e5(e,t){let l=(t=t||{}).delimiter||".",o=t.maxDepth,r=t.transformKey||e4,i=t.transformValue||e4,a={};function s(e,d,u){u=u||1,n().isObjectLike(e)&&Object.keys(e).forEach(function(n){var c;let p=e[n],h=t.safe&&Array.isArray(p),m=Object.prototype.toString.call(p),f=e2(p),g="[object Object]"===m||"[object Array]"===m,v=d?d+l+r(n):r(n);if(null==(c=t.breakOn)?void 0:c.call(t,{key:n,value:p,path:v})){a[v]=i(p,v);return}if(!h&&!f&&g&&Object.keys(p).length&&(!t.maxDepth||u<o))return s(p,v,u+1);a[v]=i(p,v)})}return s(e),a}function e8(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l={},o=t.transformValue||e4;for(let t of Object.keys(e))eQ()(l,t,o(e[t],t));return l}let e3=e=>{let t=e.split(".").pop()||"";return t.startsWith("$")||(t=""),{operator:t}},e6=e=>["$dateOn","$dateNotOn","$dateBefore","$dateAfter","$dateNotBefore","$dateNotAfter","$dateBetween"].includes(e);function e9(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function e7(e){return(null==e?void 0:e.type)==="dateOnly"||(null==e?void 0:e.type)==="datetimeNoTz"||(null==e?void 0:e.constructor.name)==="DateOnlyField"||(null==e?void 0:e.constructor.name)==="DatetimeNoTzField"}let te=(e,t)=>e?(e.type&&(e=q({...e,timezone:t})),Array.isArray(e))?(2===e.length?e.push("[]",t):3===e.length&&e.push(t),e):"string"==typeof e?!t||/(\+|-)\d\d:\d\d$/.test(e)?e:e+t:e9(e)?e.toISOString():void 0:null,tt=async function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=new Set,o=t.vars||{},n=t.timezone,r=t.now,i=t.getField,a=e5(e,{breakOn(e){let{key:t}=e;return t.startsWith("$")&&"$and"!==t&&"$or"!==t},transformValue(e){if("string"!=typeof e)return e;let t=e1.exec(e);if(t){let e=t[1].trim();e.startsWith("$user")&&l.add(e.substring(6))}return e}});if(l.size>0){let e=await o.$user({fields:[...l.values()]});Object.assign(o,{$user:e})}return e8(a,{transformValue(e,t){let{operator:l}=e3(t);if("string"==typeof e){let a=e1.exec(e);if(a){let s=eC(o,a[1].trim(),null),d=null==i?void 0:i(t);e="function"==typeof s?null==s?void 0:s({field:d,operator:l,timezone:n,now:r}):s}}if(e6(l)){let l=null==i?void 0:i(t);return e7(l)?e.type?q({...e,timezone:(null==l?void 0:l.timezone)||n}):e:te(e,(null==l?void 0:l.timezone)||n)}return e}})};function tl(e){let{now:t,timezone:l="+00:00",offset:o}=e,n=to(t).utcOffset(ex(l));return o>0?[(n=n.add(1,"day").startOf("day")).format("YYYY-MM-DD"),n.clone().add(o,"day").startOf("day").format("YYYY-MM-DD"),"[)",l]:[n.clone().subtract(-1*o-1,"day").startOf("day").format("YYYY-MM-DD"),n.clone().add(1,"day").startOf("day").format("YYYY-MM-DD"),"[)",l]}function to(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e?i().isDayjs(e)?e:t?e0()(e):i()(e):t?e0()():i()()}function tn(e){var t;let{now:l,unit:o,timezone:n="+00:00",offset:r}=e,i=to(l,"isoWeek"===o);i=(i=i.utcOffset(ex(n))).startOf(o),r>0?i=i.add(r,o):r<0&&(i=i.subtract(-1*r,o));let a={year:()=>i.format("YYYY"),quarter:()=>i.format("YYYY[Q]Q"),month:()=>i.format("YYYY-MM"),week:()=>i.format("gggg[w]ww"),isoWeek:()=>i.format("GGGG[W]WW"),day:()=>i.format("YYYY-MM-DD")},s=null==(t=a[o])?void 0:t.call(a);return n?s+n:s}let tr=(e,t)=>l=>{let{now:o,timezone:n,field:r}=l;return(null==r?void 0:r.timezone)&&(n=null==r?void 0:r.timezone),tn({now:o,timezone:n,unit:e,offset:t})},ti=e=>t=>{let{now:l,timezone:o,field:n}=t;return(null==n?void 0:n.timezone)&&(o=null==n?void 0:n.timezone),tl({now:l,timezone:o,offset:e})};function ta(){return{now:new Date().toISOString(),today:tr("day"),yesterday:tr("day",-1),tomorrow:tr("day",1),thisWeek:tr("week"),lastWeek:tr("week",-1),nextWeek:tr("week",1),thisIsoWeek:tr("isoWeek"),lastIsoWeek:tr("isoWeek",-1),nextIsoWeek:tr("isoWeek",1),thisMonth:tr("month"),lastMonth:tr("month",-1),nextMonth:tr("month",1),thisQuarter:tr("quarter"),lastQuarter:tr("quarter",-1),nextQuarter:tr("quarter",1),thisYear:tr("year"),lastYear:tr("year",-1),nextYear:tr("year",1),last7Days:ti(-7),next7Days:ti(7),last30Days:ti(-30),next30Days:ti(30),last90Days:ti(-90),next90Days:ti(90)}}function ts(e){let t=e.split(".");return[t.shift(),t.join(".")]}var td=l(50467);class tu{register(e,t){if(!this.options.override&&this.map.has(e))throw Error(`this registry does not allow to override existing keys: "${e}"`);this.map.set(e,t)}get(e){return this.map.get(e)}getKeys(){return this.map.keys()}getValues(){return this.map.values()}getEntities(){return this.map.entries()}constructor(e={override:!1}){(0,td._)(this,"map",new Map),(0,td._)(this,"options",void 0),this.options=e}}l(67980);let tc=Symbol.for("nocobase.utils.sesLockdown"),tp=Symbol.for("nocobase.utils.bufferOverrides"),th=["globalThis","global","self","Function","AsyncFunction","GeneratorFunction","eval","Compartment","lockdown","harden","assert"];function tm(e){return!!e&&"object"==typeof e&&(e.message||"").includes("(SES_ALREADY_LOCKED_DOWN)")}function tf(){let e=globalThis;if(e[tp])return;let t=e.Buffer;if(!t||!t.prototype)return;let l=t.prototype;for(let e of Reflect.ownKeys(l)){let t=Object.getOwnPropertyDescriptor(l,e);if(!t||"function"!=typeof t.value||!t.configurable)continue;let o=t.value,n=function(){return o},r=function(t){if(this===l)throw TypeError(`Cannot assign to read only property '${String(e)}' of object 'Buffer.prototype'`);Object.defineProperty(this,e,{configurable:!0,enumerable:!0,writable:!0,value:t})};Object.defineProperty(n,"originalValue",{configurable:!1,enumerable:!1,writable:!1,value:o}),Object.defineProperty(l,e,{configurable:t.configurable,enumerable:t.enumerable,get:n,set:r})}e[tp]=!0}function tg(e){tf();let t=globalThis;if(!t[tc]){if("function"!=typeof lockdown)throw Error("SES lockdown is unavailable in the current runtime environment.");try{lockdown(e)}catch(e){if(!tm(e))throw e}t[tc]=!0}}function tv(e,t){return t?`{{t(${JSON.stringify(e)}, ${JSON.stringify(t)})}}`:`{{t(${JSON.stringify(e)})}}`}var ty=l(65606);let tb=e=>{for(;e;){var t;if("root"===e.id||(null==(t=e.classList)?void 0:t.contains("nb-action")))return!1;e=e.parentNode}return!ty.env.__TEST__};function tx(e,t){return e.replace(/\{\{(\w+)\}\}/g,function(e,l){return void 0!==t[l]?t[l]:e})}let tw=36,tS="";for(;tw--;)tS+=tw.toString(36);function tM(e){let t="",l=e||11;for(;l--;)t+=tS[36*Math.random()|0];return t}function tF(e){let t;try{t=new URL(e)}catch(e){return!1}return"http:"===t.protocol||"https:"===t.protocol}var tA=l(27153),tk=JSON.parse('{"rE":"2.1.0-alpha.29"}');let tC=(e,t)=>{if(!e)return e;if("Grid"!==e["x-component"])return Object.keys(e.properties||{}).forEach(l=>{e.properties[l]=tC(e.properties[l],t)}),e;let l=e.parent;e=e.toJSON?e.toJSON():n().cloneDeep(e);let o={},{properties:r={}}=e,i=0;if(Object.keys(r).forEach((e,l)=>{let a=r[e];if("Grid.Row"!==a["x-component"]){a["x-index"]=++i,o[e]=a;return}if(a.properties){if(1===Object.keys(a.properties).length){a["x-index"]=++i,o[e]=a;return}Object.keys(a.properties).forEach((l,r)=>{let s=a.properties[l];if(n().set(s,"x-component-props.width",100),0===r){a["x-index"]=++i,o[e]=a;return}null!=t&&t(s)||(delete a.properties[l],o[`${tM()}_${l}`]=tP(s,l,++i))})}}),e.properties=o,l){let t=new tA.S(e,l);return l.properties&&Object.keys(l.properties).forEach(o=>{o===e.name&&(l.properties[o]=t)}),t}return e};function tP(e,t,l){return{type:"void",version:"2.0","x-component":"Grid.Row","x-app-version":tk.rE,"x-uid":tM(),"x-async":!1,"x-index":l,_isJSONSchemaObject:!0,properties:{[t]:e}}}function tj(e){let t=new Set,l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)/g;for(;null!==(e=r.exec(n));)t.add(e[1]);let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]/g;for(;null!==(o=i.exec(n));)t.add(o[2])}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}function tI(e){let t={},l=e=>{if("string"==typeof e){let l,o=/\{\{\s*([^}]+?)\s*\}\}/g;for(;null!==(l=o.exec(e));){let e,o,n=l[1],r=/ctx\.([a-zA-Z_$][a-zA-Z0-9_$]*)([^\s)]*)/g;for(;null!==(e=r.exec(n));){let l=e[1],o=e[2]||"";if(t[l]=t[l]||[],o.startsWith("."))t[l].push(o.slice(1));else if(o.startsWith("[")){let e=o.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(e){let o=e[2],n=e[3]||"";t[l].push(`${o}${n}`)}else{let e=o.match(/^\[(\d+)\](.*)$/);if(e){let o=e[1],n=e[2]||"";t[l].push(`[${o}]${n}`)}}}else o.startsWith("(")&&!t[l].length&&t[l].push("")}let i=/ctx\[\s*(["'])\s*([a-zA-Z_$][a-zA-Z0-9_$]*)\s*\1\s*\]([^\s)]*)/g;for(;null!==(o=i.exec(n));){let e=o[2],l=o[3]||"";if(t[e]=t[e]||[],l.startsWith("."))t[e].push(l.slice(1));else if(l.startsWith("[")){let o=l.match(/^\[\s*(["'])\s*([^'"\]]+)\s*\1\s*\](.*)$/);if(o){let l=o[2],n=o[3]||"";t[e].push(`${l}${n}`)}else{let o=l.match(/^\[(\d+)\](.*)$/);if(o){let l=o[1],n=o[2]||"";t[e].push(`[${l}]${n}`)}}}else l.startsWith("(")&&!t[e].length&&t[e].push("")}}}else Array.isArray(e)?e.forEach(l):e&&"object"==typeof e&&Object.values(e).forEach(l)};return l(e),t}let tE=new(l(23155)).HX;function t_(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t={};for(let l of e){let e=l.replace(/^ctx\./,"").split("."),o=t;for(let t=0;t<e.length;t++){let n=e[t];t===e.length-1?o[n]=`{{${l}}}`:(o[n]=o[n]||{},o=o[n])}}return t}async function tR(e){return t_(await tE.fullVariables(e))}async function tT(e,t){return await tE.parseAndRender(e,{ctx:t})}function tD(e){let t=1,l={};return{sql:e.replace(/{{\s*([^}]+)\s*}}/g,(e,o)=>{let n=`__var${t}`;return l[n]=`{{${o.trim()}}}`,t++,`$${n}`}),bind:l}}async function tN(e){let{sql:t,bind:l}=tD(e),o=await tR(t);return{sql:t,bind:l,liquidContext:o}}},59598(){},23005(){},14892(){},2813(){},9845(){}};import{__webpack_require__}from"./runtime-134591aa.js";var __webpack_exec__=function(e){return __webpack_require__(__webpack_require__.s=e)};import*as __rspack_chunk_1 from"./vendor-antd-ecosystem-de737eca.js";__webpack_require__.C(__rspack_chunk_1);import*as __rspack_chunk_2 from"./vendor-moment-84b317dc.js";__webpack_require__.C(__rspack_chunk_2);import*as __rspack_chunk_3 from"./vendor-lodash-905dd3b8.js";__webpack_require__.C(__rspack_chunk_3);import*as __rspack_chunk_4 from"./vendor-ses-b7bccbcd.js";__webpack_require__.C(__rspack_chunk_4);import*as __rspack_chunk_5 from"./vendor-antd-icons-794fdbb6.js";__webpack_require__.C(__rspack_chunk_5);import*as __rspack_chunk_6 from"./vendor-antd-f8c3ace1.js";__webpack_require__.C(__rspack_chunk_6);import*as __rspack_chunk_7 from"./8289-0b424501.js";__webpack_require__.C(__rspack_chunk_7);import*as __rspack_chunk_8 from"./index-2fa95927.js";__webpack_require__.C(__rspack_chunk_8),__webpack_exec__(56777);