@kne-components/components-thirdparty 0.1.11 → 0.1.12

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.
Files changed (49) hide show
  1. package/build/asset-manifest.json +30 -30
  2. package/build/index.html +1 -1
  3. package/build/remoteEntry.js +1 -1
  4. package/build/remoteEntry.js.map +1 -1
  5. package/build/static/css/2643.13debc92.chunk.css +2 -0
  6. package/build/static/css/{2643.1b28ac1b.chunk.css.map → 2643.13debc92.chunk.css.map} +1 -1
  7. package/build/static/css/445.19cc0afc.chunk.css +2 -0
  8. package/build/static/css/{445.f6492d39.chunk.css.map → 445.19cc0afc.chunk.css.map} +1 -1
  9. package/build/static/css/5323.510750fe.chunk.css +12 -0
  10. package/build/static/css/{5323.a2603112.chunk.css.map → 5323.510750fe.chunk.css.map} +1 -1
  11. package/build/static/css/6790.442c9711.chunk.css +2 -0
  12. package/build/static/css/{6790.f6f2a1d0.chunk.css.map → 6790.442c9711.chunk.css.map} +1 -1
  13. package/build/static/css/7413.350334eb.chunk.css +2 -0
  14. package/build/static/css/{7413.75c4a23d.chunk.css.map → 7413.350334eb.chunk.css.map} +1 -1
  15. package/build/static/css/8959.2c5c00bf.chunk.css +2 -0
  16. package/build/static/css/{8959.654cc4d5.chunk.css.map → 8959.2c5c00bf.chunk.css.map} +1 -1
  17. package/build/static/js/{2643.2a994cbf.chunk.js → 2643.d429bb29.chunk.js} +3 -3
  18. package/build/static/js/{2643.2a994cbf.chunk.js.map → 2643.d429bb29.chunk.js.map} +1 -1
  19. package/build/static/js/445.36532c49.chunk.js +3 -0
  20. package/build/static/js/445.36532c49.chunk.js.map +1 -0
  21. package/build/static/js/{5323.5da92169.chunk.js → 5323.3c24bf40.chunk.js} +2 -2
  22. package/build/static/js/{5323.5da92169.chunk.js.map → 5323.3c24bf40.chunk.js.map} +1 -1
  23. package/build/static/js/6763.6b590018.chunk.js +2 -0
  24. package/build/static/js/6763.6b590018.chunk.js.map +1 -0
  25. package/build/static/js/{6790.969672f3.chunk.js → 6790.c8cc11ce.chunk.js} +3 -3
  26. package/build/static/js/{6790.969672f3.chunk.js.map → 6790.c8cc11ce.chunk.js.map} +1 -1
  27. package/build/static/js/{7413.668c2e5a.chunk.js → 7413.cd2672c2.chunk.js} +3 -3
  28. package/build/static/js/7413.cd2672c2.chunk.js.map +1 -0
  29. package/build/static/js/{8959.92460333.chunk.js → 8959.4a5ea116.chunk.js} +3 -3
  30. package/build/static/js/{8959.92460333.chunk.js.map → 8959.4a5ea116.chunk.js.map} +1 -1
  31. package/build/static/js/{main.86096580.js → main.73a816ec.js} +2 -2
  32. package/build/static/js/{main.86096580.js.map → main.73a816ec.js.map} +1 -1
  33. package/package.json +1 -1
  34. package/build/static/css/2643.1b28ac1b.chunk.css +0 -2
  35. package/build/static/css/445.f6492d39.chunk.css +0 -2
  36. package/build/static/css/5323.a2603112.chunk.css +0 -12
  37. package/build/static/css/6790.f6f2a1d0.chunk.css +0 -2
  38. package/build/static/css/7413.75c4a23d.chunk.css +0 -2
  39. package/build/static/css/8959.654cc4d5.chunk.css +0 -2
  40. package/build/static/js/445.0a2e8146.chunk.js +0 -3
  41. package/build/static/js/445.0a2e8146.chunk.js.map +0 -1
  42. package/build/static/js/6763.b5dac783.chunk.js +0 -2
  43. package/build/static/js/6763.b5dac783.chunk.js.map +0 -1
  44. package/build/static/js/7413.668c2e5a.chunk.js.map +0 -1
  45. /package/build/static/js/{2643.2a994cbf.chunk.js.LICENSE.txt → 2643.d429bb29.chunk.js.LICENSE.txt} +0 -0
  46. /package/build/static/js/{445.0a2e8146.chunk.js.LICENSE.txt → 445.36532c49.chunk.js.LICENSE.txt} +0 -0
  47. /package/build/static/js/{6790.969672f3.chunk.js.LICENSE.txt → 6790.c8cc11ce.chunk.js.LICENSE.txt} +0 -0
  48. /package/build/static/js/{7413.668c2e5a.chunk.js.LICENSE.txt → 7413.cd2672c2.chunk.js.LICENSE.txt} +0 -0
  49. /package/build/static/js/{8959.92460333.chunk.js.LICENSE.txt → 8959.4a5ea116.chunk.js.LICENSE.txt} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/6763.6b590018.chunk.js","mappings":"2RAKA,QAAeA,G,gMCATC,EAAS,CACbC,QAAS,KACTD,OAAQE,gBACAC,EAAAA,EAAAA,iBAAgB,UAAW,GAAG,GAADC,QAAKC,EAAAA,EAAAA,eAAc,yBAAwB,wBACvE,CAAEC,QAASC,OAAOD,WAIvBE,EAAcC,IAAiC,IAAhC,KAAEC,EAAI,OAAEC,GAAkBF,EAAPG,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GAC3C,MAAMC,EAAMC,IAAU,KACpBC,EAAYC,SAAWD,EAAYC,QAAQC,WAEvCF,GAAcG,EAAAA,EAAAA,QAAO,OACrB,QAAEd,GAAYI,EAUpB,OATAW,EAAAA,EAAAA,WAAU,KACHf,IAGLW,EAAYC,QAAUZ,EAAQgB,KAAKP,EAAIG,WACtC,CAACZ,EAASS,KACbM,EAAAA,EAAAA,WAAU,KACRJ,EAAYC,SAAWD,EAAYC,QAAQK,UAAUZ,IACpD,CAACA,KACGa,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAASb,GAAK,IAAEG,IAAKA,MAc9B,EAXeW,IAAmC,IAAlC,QAAEzB,EAAO,MAAE0B,GAAiBD,EAAPd,GAAKC,EAAAA,EAAAA,GAAAa,EAAAE,GACxC,OACEJ,EAAAA,EAAAA,KAACK,KAAKJ,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACAK,OAAOC,OAAO,CAAC,EAAG/B,EAAQ,CAAEC,UAAS0B,WAAQ,IACjDK,OAAQC,IAAe,IAAd,KAAEvB,GAAMuB,EACf,OAAOT,EAAAA,EAAAA,KAAChB,GAAWiB,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAKb,GAAK,IAAEF,KAAMA,S,4PCnC7C,QAA2B,+B,qDCyE3B,GA9DiBwB,EAAAA,EAAAA,wBAAuB,CACtCC,QAAS,CAAC,4BADKD,EAGfE,EAAAA,EAAAA,YAAW,CAAA3B,EAAqC4B,KAAY,IAAhD,cAAEC,EAAa,UAAEC,GAAiB9B,EAAH+B,GAAC3B,EAAAA,EAAAA,GAAAJ,EAAAK,GAC1C,MAAO2B,GAAWH,EACZI,GAActB,EAAAA,EAAAA,UACdL,EAAMC,IAAU,KACpB,GAAI0B,EAAYxB,QAAS,CACHwB,EAAYxB,QAAQyB,SAC5BC,YACd,KAEFC,EAAAA,EAAAA,qBAAoBR,EAAQ,IACnBK,EAAYxB,QAAQyB,UAE7B,MAAM/B,EAAQkB,OAAOC,OACnB,CAAC,EACD,CACEe,QAAS,CAACC,IAAeC,IAAmBC,IAAgBC,KAC5DC,YAAa,eACbC,YAAa,IACbC,UAAU,EACVC,kBAAkB,EAClBC,iBAAiB,EACjBC,UAAU,EACVC,SAAU,EACVC,cAAe,CACbC,KAAM,kBACNC,OAAQ,QACRC,MAAO,kDAETC,WAAY,CACVC,MAAO,eACPC,MAAO,SACPC,KAAM,SACNC,IAAK,UAEPC,YAAa,IACbC,OAAQ,QACRC,OAAQ,OACRC,oBAAoB,EACpBC,UAAWA,OACXC,WAAYA,OACZC,aAAc/C,IAAgB,IAAf,MAAEgD,GAAOhD,EACtB,MAAMiD,EAAWD,EAAME,MAAQC,IAAMH,EAAME,OAAOE,OAAO,SAAW,GAClEC,EAASL,EAAMM,IAAMH,IAAMH,EAAMM,KAAKF,OAAO,SAAW,GACpDG,EAAO,GAAA7E,OAAQuE,GAAYI,EAA4BJ,IAAaI,EAAS,GAAE,IAAA3E,OAAOuE,EAAQ,KAAAvE,OAAI2E,EAAM,KAAtE,IAAA3E,OAAOuE,EAAQ,KAA0D,KAAAvE,OAAIsE,EAAMQ,OAE3H,OAAO1D,EAAAA,EAAAA,KAACiB,EAAO,CAACwC,QAASA,EAAQE,SAAEF,KAErCG,YAAaP,MAAQC,OAAO,eAE9BtC,GAEF,OACEhB,EAAAA,EAAAA,KAAA,OAAKe,UAAW8C,IAAWC,EAAmB/C,GAAYxB,IAAKA,EAAIoE,UACjE3D,EAAAA,EAAAA,KAAC+D,KAAY9D,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAKb,GAAK,IAAEG,IAAK2B,S,+CCnEtC,MAuWA,EAvWqB,CACjB8C,KAAM,SACNC,QAAS,w1CAgBTC,IAAK,unGA+HLC,QAAS,CACLC,QAAQ,EACRrD,UAAW,eACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,ohCAgDNC,MAAO,CAAC,CACRR,KAAM,UACNS,YAAa,qBACbC,UAAW,KAEb,CACEhB,MAAO,2BACPY,YAAa,2BACbC,KAAM,u0GA+INC,MAAO,CAAC,CACRR,KAAM,UACNS,YAAa,qBACbC,UAAW,O,gCClWf,MAsCA,EAtCqB,CACjBV,KAAM,iBACNC,QAAS,0CAGTC,IAAK,4JAULC,QAAS,CACLC,QAAQ,EACRrD,UAAW,uBACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,mJAQNC,MAAO,CAAC,CACRR,KAAM,kBACNS,YAAa,6BACbC,U,8FC9BJ,MA8ZA,EA9ZqB,CACjBV,KAAM,WACNC,QAAS,iSAGTC,IAAK,y5CAuDLC,QAAS,CACLC,QAAQ,EACRrD,UAAW,iBACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,2BACPY,YAAa,iLACbC,KAAM,+0DA2BNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,KAEb,CACEhB,MAAO,wBACPY,YAAa,yIACbC,KAAM,2yGAiFNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,GACb,CACEV,KAAM,kBACNS,YAAa,kCACbC,UAAW,KAEb,CACEhB,MAAO,iCACPY,YAAa,qJACbC,KAAM,k6FAuGNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,KAEb,CACEhB,MAAO,iCACPY,YAAa,uIACbC,KAAM,oyDAyCNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,KAEb,CACEhB,MAAO,+BACPY,YAAa,yEACbC,KAAM,41DA2BNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,GACb,CACEV,KAAM,eACNS,YAAa,qBACbC,UAAW,O,gSC5Zf,QAA8B,kCAA9B,EAA0E,8BAA1E,EAAiI,6C,eCgBjI,MAAMC,GAAajE,EAAAA,EAAAA,wBAAuB,CACxCC,QAAS,CAAC,0CAA2C,sCADpCD,CAEhBzB,IAAkC,IAAjC,cAAE6B,EAAa,SAAE6C,GAAU1E,EAC7B,MAAO2F,EAAkBC,GAAc/D,GACjC,OAAEgE,GAAWF,IACbrF,GAAMK,EAAAA,EAAAA,QAAO,OACZmF,IAAmBC,EAAAA,EAAAA,UAAS,IACjCC,IAAS,CAACtB,EAAUf,EAAQsC,KAC1B3F,EAAIG,QAAQyF,UAAY,GACxB,MAAMC,EAAMC,SAASC,cAAc,OACnC/F,EAAIG,QAAQ6F,YAAYH,IACZI,EAAAA,EAAAA,YAAWJ,GACnB5E,QACFR,EAAAA,EAAAA,KAAC6E,EAAU,CAACY,OAAQ,CAAE7C,UAAUsC,WAAYA,EAAWvB,SACpDA,MAGJ,MAKL,OAHA9D,EAAAA,EAAAA,WAAU,KACRkF,EAAgBpB,EAAUmB,EAAOlC,OAAQkC,EAAOI,aAC/C,CAACvB,EAAUmB,EAAOlC,OAAQkC,EAAOI,WAAYH,KACzC/E,EAAAA,EAAAA,KAAA,OAAKT,IAAKA,MAqVnB,GAlV4BmB,EAAAA,EAAAA,wBAAuB,CACjDC,QAAS,CAAC,2BAA4B,2BAA4B,0CAA2C,qCADnFD,EAG1BE,EAAAA,EAAAA,YAAW,CAAAV,EAAwGX,KAAS,IAAhH,cAAEuB,EAAa,aAAE4E,EAAY,WAAEC,EAAa,MAAK,OAAE9C,EAAS,IAAG,KAAE+C,EAAO,CAAEC,OAAM,IAAExC,MAAM,KAAC,SAAEyC,GAAU5F,EAC/G,MAAO6F,EAAUC,EAAUC,EAAgBC,GAAapF,GAClD,KAAEqF,EAAI,UAAEC,GAAcL,GACtB,MAAEM,EAAK,OAAEC,GAAWP,EAASQ,OAC7BC,GAAgB5G,EAAAA,EAAAA,QAAO,OACtB6G,EAAQC,IAAa1B,EAAAA,EAAAA,UAAS,KACnC,IAAKU,EACH,MAAO,CAAC,EAEV,IACE,OAAOiB,KAAKC,OAAMC,EAAAA,EAAAA,QAAOnB,GAC3B,CAAE,MAAOoB,GAEP,OADAC,QAAQ5G,MAAM2G,GACP,CAAC,CACV,IAEIE,GAAkBpH,EAAAA,EAAAA,QAAO8F,GACzBuB,GAAgBC,EAAAA,EAAAA,SAAQ,IACxBC,IAAQV,GACH,IAEFW,EAAAA,EAAAA,QAAOT,KAAKU,UAAUZ,IAC5B,CAACA,KAEGa,EAAWC,IAAgBvC,EAAAA,EAAAA,UAAS,WAErCwC,EAAeC,IAAe3B,GAG9B4B,GAAuB9H,EAAAA,EAAAA,QAAO,MAE/B8H,EAAqBhI,UACxBgI,EAAqBhI,QAAUuF,IAC7B,CAAC0C,EAAOnB,KACN,MAAMoB,EAAY,MAChB,IACE,OAAOjB,KAAKC,OAAMC,EAAAA,EAAAA,QAAOc,GAC3B,CAAE,MAAOb,GAEP,OADAC,QAAQ5G,MAAM2G,GACP,CAAC,CACV,CACD,EAPiB,GAQlBJ,EAAUkB,GACVpB,EAAc9G,SAAW8G,EAAc9G,QAAQmI,SAASD,EAAUnE,SAAW,KAE/E,IACA,CAAEqE,SAAS,EAAMC,UAAU,KAK/B,MAAMC,GAA4BpI,EAAAA,EAAAA,QAAO,MAEpCoI,EAA0BtI,UAC7BsI,EAA0BtI,QAAUuF,IAAS,CAACgD,EAAYvB,EAAWwB,KACnExB,EAAUyB,IAAIlI,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAUkI,GAAI,IAAE1E,QAASwE,MACtC,OAGL5G,EAAAA,EAAAA,qBACE9B,EACA,MACE6I,SAAUA,IAAMnB,EAChBY,SAAUF,GAASD,EAAqBhI,QAAQiI,EAAOnB,KAEzD,CAACS,KAEHpH,EAAAA,EAAAA,WAAU,KACJmH,EAAgBtH,UAAYuH,IAC9BD,EAAgBtH,QAAUuH,EAC1BO,GAAgBA,EAAaP,KAE9B,CAACA,EAAeO,IACnB,MAAOa,EAAKC,IAAUtD,EAAAA,EAAAA,UAASW,IACzB,QAAElC,EAAO,MAAErE,EAAK,MAAEoF,GAAUlE,OAAOC,OAAO,CAAC,EAAG,CAAEkD,QAAS,GAAIrE,MAAO,CAAC,EAAGoF,MAAO,CAAC,GAAKiC,GACrF8B,GAAe3I,EAAAA,EAAAA,QAAO,MACtB4I,GAAe5I,EAAAA,EAAAA,QAAO,MAEtB6I,GACJzI,EAAAA,EAAAA,KAAA,OAAKe,UAAW+C,EAAqBH,UACnC3D,EAAAA,EAAAA,KAAC0I,EAAAA,QAAU,CACTnJ,IAAKiH,EACL3D,OAAQA,EACR6C,aAAcjC,EACdkF,gBAAgB,aAChB7C,SAAU6B,GAASK,EAA0BtI,QAAQiI,EAAOjB,EAAWD,OAKvEmC,GACJ5I,EAAAA,EAAAA,KAACkG,EAAS,CACRpC,MAAO,CACL+E,UAAU,GAADjK,OAAKiE,EAAM,OACpBc,UACF3D,EAAAA,EAAAA,KAAA,OAAKe,UAAW+C,EAAiBH,UAC/B3D,EAAAA,EAAAA,KAAC2E,EAAU,CAAAhB,UACT3D,EAAAA,EAAAA,KAACmG,EAAI,CAAAxC,UACH3D,EAAAA,EAAAA,KAAC8I,EAAAA,QAAiB,CAACrF,QAASwD,EAAerB,KAAMA,YAM3D,OACE5F,EAAAA,EAAAA,KAAC+I,EAAAA,KAAI,CACHzB,UAAWA,EACXxB,SAAUwB,IACRC,EAAaD,GACbiB,EAAa7I,SAAW6I,EAAa7I,QAAQsJ,SAC7CR,EAAa9I,SAAW8I,EAAa9I,QAAQsJ,UAE/CC,mBACgB,YAAd3B,IACEtH,EAAAA,EAAAA,KAACkJ,EAAAA,UAAS,CACRvB,MAAOU,EACPvC,SAAUwC,EACVa,QAAS,CACP,CACEC,MAAO,qBACPzB,MAAO,SACP0B,MAAMrJ,EAAAA,EAAAA,KAACsJ,EAAAA,aAAY,KAErB,CACEF,MAAO,eACPzB,MAAO,MACP0B,MAAMrJ,EAAAA,EAAAA,KAACuJ,EAAAA,mBAAkB,KAE3B,CACEH,MAAO,eACPzB,MAAO,UACP0B,MAAMrJ,EAAAA,EAAAA,KAACwJ,EAAAA,YAAW,QAM5BC,MAAO,CACL,CACEC,IAAK,QACLN,MAAO,2BACPzF,UACE3D,EAAAA,EAAAA,KAACmG,EAAI,CACH5G,IAAKgJ,EACLrJ,KAAM,CACJE,MAAOkB,OAAOqJ,KAAKvK,GAAOwK,IAAI5F,IAC5B,MAAM6F,EAAOvJ,OAAOC,OAAO,CAAC,EAAGnB,EAAM4E,IACrC,MAAO,CACLA,OACA8F,KAAMD,EAAKC,KACXpE,aAAcmE,EAAKnE,iBAIzBqE,SAAUC,IACRtD,EAAUD,GACDnG,OAAOC,OAAO,CAAC,EAAGkG,EAAQ,CAC/BrH,MAAO6K,IACLD,EAAS5K,MACT,CAAC8K,EAAQvC,KACPuC,EAAOvC,EAAM3D,MAAQ,CACnB0B,aACM,CAAC,QAAS,SAAU,UAAW,UAAUyE,QAAQxC,EAAMmC,OAAS,GAGjD,WAAfnC,EAAMmC,KAFDnC,EAAMjC,aAKI,aAAfiC,EAAMmC,KACD,gBADT,EAIFA,KAAMnC,EAAMmC,OAGhB,CAAC,OAIPnG,UACF3D,EAAAA,EAAAA,KAACoG,EAAS,CACR1C,MAAM,2BACNM,KAAK,QACLK,KAAM,EACJrE,EAAAA,EAAAA,KAACqG,EAAK,CAACrC,KAAK,OAAOoF,MAAM,qBAAMgB,KAAK,mBACpCpK,EAAAA,EAAAA,KAACsG,EAAM,CACLtC,KAAK,OACLoF,MAAM,eACNgB,KAAK,MACL1E,aAAa,SACbyD,QAAS,CACP,CAAEC,MAAO,qBAAOzB,MAAO,UACvB,CAAEyB,MAAO,eAAMzB,MAAO,UACtB,CAAEyB,MAAO,qBAAOzB,MAAO,WACvB,CAAEyB,MAAO,eAAMzB,MAAO,SACtB,CAAEyB,MAAO,eAAMzB,MAAO,UACtB,CAAEyB,MAAO,eAAMzB,MAAO,aAExB7B,SAAUA,CAAC6B,EAAOkC,EAAIpJ,KAA8B,IAA5B,QAAE4J,EAAO,UAAEC,GAAW7J,EAC5C8J,WAAW,KACTF,EAAQG,SAAS,CACfxG,KAAM,eACNyG,UAAW,QACXC,WAAYJ,EAAU,GAAGK,MACzBhD,MAAO,MAER,SAGP3H,EAAAA,EAAAA,KAACqG,EAAK,CACJrC,KAAK,eACLoF,MAAM,qBACNgB,KAAK,gBACLQ,QAASC,IAA8B,IAA7B,SAAEb,EAAQ,UAAEM,GAAWO,EAC/B,MAA6D,aAAtDC,IAAId,EAAS5K,MAAM,GAADR,OAAK0L,EAAU,GAAGK,MAAK,cAGpD3K,EAAAA,EAAAA,KAAA,OACEe,UAAW+C,EACXE,KAAK,eACLoF,MAAM,qBACNwB,QAASG,IAA8B,IAA7B,SAAEf,EAAQ,UAAEM,GAAWS,EAC/B,MAA6D,aAAtDD,IAAId,EAAS5K,MAAM,GAADR,OAAK0L,EAAU,GAAGK,MAAK,WAChDhH,SACD,mBAOb,CACE+F,IAAK,QACLN,MAAO,qBACPzF,UACE3D,EAAAA,EAAAA,KAACmG,EAAI,CACH5G,IAAKiJ,EACLtJ,KAAM,CACJsF,MAAOlE,OAAOqJ,KAAKnF,GAAOoF,IAAI5F,IAErB,CACLA,OACAgH,MAHWxG,EAAMR,OAOvB+F,SAAUC,IACRtD,EAAUD,GACDnG,OAAOC,OAAO,CAAC,EAAGkG,EAAQ,CAC/BjC,MAAOyF,IACLD,EAASxF,MACT,CAAC0F,EAAQvC,KACPuC,EAAOvC,EAAM3D,MAAQ2D,EAAMqD,OAE7B,CAAC,OAIPrH,UACF3D,EAAAA,EAAAA,KAACoG,EAAS,CACR1C,MAAM,qBACNM,KAAK,QACLK,KAAM,EAACrE,EAAAA,EAAAA,KAACqG,EAAK,CAACrC,KAAK,OAAOoF,MAAM,qBAAMgB,KAAK,mBAAoBpK,EAAAA,EAAAA,KAACqG,EAAK,CAACrC,KAAK,QAAQoF,MAAM,QAAQgB,KAAK,wBAK9G,CACEV,IAAK,UACLN,MAAO,2BACPzF,UACEsH,EAAAA,EAAAA,MAACC,EAAAA,KAAI,CAACC,UAAQ,EAACC,IAAK,GAAGzH,SAAA,EACrB3D,EAAAA,EAAAA,KAACqL,EAAAA,SAAQ,CACPC,KAAK,QACL7B,MAAO,CACL,CACEC,IAAK,QACLN,MAAO,2BACPzF,UACE3D,EAAAA,EAAAA,KAACuL,EAAAA,MAAK,CACJC,SACExL,EAAAA,EAAAA,KAACgG,EAAQ,CAAArC,UACP3D,EAAAA,EAAAA,KAACiG,EAAc,CACbwF,WAAY,CAAErM,QAAOoF,SACrBkH,IAAK,EACLC,QAAS,CACP,CACE3H,KAAM,QACNN,MAAO,iCACPkI,WAAY/B,GACHvJ,OAAOqJ,KAAKE,EAAKzK,OACrBwK,IAAIiC,GAAG,SAAAjN,OAAaiN,IACpBC,KAAK,MAGZ,CACE9H,KAAM,QACNN,MAAO,iCACPkI,WAAY/B,GACH,CAAC,UAAWvJ,OAAOqJ,KAAKE,EAAKrF,QAAQsH,KAAK,MAGrD,CACE9H,KAAM,MACNN,MAAO,2BACPkI,WAAYA,IACHtL,OAAOqJ,KAAK/D,GAAMkG,KAAK,iBAY3C,WAARzD,GAAoBI,EACZ,QAARJ,IACC4C,EAAAA,EAAAA,MAACc,EAAAA,SAAQ,CAAApI,SAAA,EACP3D,EAAAA,EAAAA,KAAC+L,EAAAA,SAASC,MAAK,CAAArI,SAAE8E,KACjBzI,EAAAA,EAAAA,KAAC+L,EAAAA,SAASC,MAAK,CAAArI,SAAEiF,OAGZ,YAARP,GAAqBO,W,wKCjVtC,MACA,EAAe,IAA0B,6DCCzC,MAAMqD,EACJC,WAAAA,CAAY1N,EAAQ2K,GAClBgD,KAAK3N,OAASA,EACd2N,KAAKhD,QAAUA,EACfgD,KAAKC,eAAiBjD,EAAQiD,gBAAkB,IAChDD,KAAKE,gBAAkBlD,EAAQkD,iBAAmB,GACpD,CAEA,YAAMC,GACJ,MAAMC,QAAaJ,KAAK3N,OAAO+N,KAC/B,GAAmC,oBAAxBJ,KAAKhD,QAAQmD,OAAuB,CAC7CvF,QAAQyF,KAAK,mOACb,MAAMtN,QAAa,IAAIuN,QAAQC,IAC7B,MAAMC,EAAa,IAAIC,WACvBD,EAAWE,OAAS,KAClBH,EAAQC,EAAWzC,SAErByC,EAAWG,cAAcP,KAG3B,MAAO,CACLQ,cAtDmBC,EAsDc9N,EAtDN+N,EAsDYd,KAAKC,eAtDVvJ,EAsD0BsJ,KAAKE,gBArDhE,IAAII,QAAQ,CAACC,EAASQ,KAC3B,MAAMC,EAAM,IAAIC,MAChBD,EAAIE,IAAML,EAEVG,EAAIN,OAAS,WAEX,MAAMS,EAASjI,SAASC,cAAc,UAChCiI,EAAMD,EAAOE,WAAW,MAExBC,EAASN,EAAIF,MAAQA,EACzBS,EAASP,EAAItK,OAASA,EAClB8K,EAAQC,KAAKC,IAAIJ,EAAQC,EAAQ,GAGvCJ,EAAOL,MAAQE,EAAIF,MAAQU,EAC3BL,EAAOzK,OAASsK,EAAItK,OAAS8K,EAG7BJ,EAAIO,UAAUX,EAAK,EAAG,EAAGG,EAAOL,MAAOK,EAAOzK,QAG9C,MAAMkL,EAAgBT,EAAOU,UAAU,aAEvCtB,EAAQqB,EACV,EAEAZ,EAAIc,QAAU,SAAU9N,GACtB+M,EAAO/M,EACT,KA2BA,CAxDsB+N,IAAClB,EAAQC,EAAOpK,EAyDtC,MAAQ3D,KAAMiP,SAAkBhC,KAAKhD,QAAQmD,OAAO,CAAEC,SACtD,OAAqB,IAAjB4B,EAAQ5J,MACV4H,KAAKhD,QAAQqC,QAAQrL,MAAMgO,EAAQC,KAC5B,CAAErB,QAASsB,IAEb,CACLtB,QAASoB,EAAQjP,KAErB,EA+CF,QA5CA,SAAgCuJ,GAC9B,MAAM+C,EAAU/C,EAAO6F,OAAOxD,IAAI,WAC5B3B,EAAU7I,OAAOC,OAAO,CAAC,EAAG,CAAEiL,WAAW/C,EAAO6F,OAAOxD,IAAI,kBACjErC,EAAOnH,QAAQwJ,IAAI,kBAAkByD,oBAAsB/P,GAClD,IAAIyN,EAAiBzN,EAAQ2K,GAEtCV,EAAO+F,QAAQC,KAAKpJ,SAASqJ,GAAG,iBAAkB,CAACC,EAAKzP,KACtD,GAAIuJ,EAAOmG,WACT,OAGF,MACMC,EADe3P,EAAK4P,aACAC,QAAQ,aAE5BC,GADS,IAAIC,WACQC,gBAAgBL,EAAM,aACjD,GAAmD,IAA/CG,EAAYG,iBAAiB,OAAOC,OACtC,OAEFlQ,EAAKuE,QAAUgF,EAAOvJ,KAAKmQ,cAAcC,OAAO,IAChD,MAAMC,EAAe/D,EAAQ/M,QAAQ,kHAAyB,CAAE+Q,SAAU,IAC1E/C,QAAQgD,IACN,GAAGC,MAAMC,KAAKX,EAAYG,iBAAiB,OAAQ,GAAGvF,IAAIlL,UACxD,GAAiC,oBAAtByK,EAAQyG,UAEjB,YADA7I,QAAQyF,KAAK,yLAGf,MAAM,KAAEjI,EAAI,KAAErF,EAAI,IAAEkP,SAAcjF,EAAQyG,UAAU,CAAEC,IAAK1C,EAAIE,MAC/D,GAAa,IAAT9I,EAGF,OAFAwC,QAAQyF,KAAK,6CAAD5N,OAAWwP,SACvBjB,EAAIE,IAAMgB,GAGZlB,EAAIE,IAAMnO,KAGX4Q,KAAK,KACJrH,EAAOsH,MAAMC,cAAcvH,EAAOvJ,KAAK+Q,QAAQxH,EAAOvJ,KAAKmQ,cAAcC,OAAON,EAAYkB,gBAAgBC,eAE7GC,QAAQ,KACPb,OAGR,E,4CC/GA,QAAyB,6B,kHCwEnBc,EAAiB,CACrBC,EAAAA,UACAC,EAAAA,UACAC,EAAAA,SACAC,EAAAA,WACAC,EAAAA,WACAC,EAAAA,KACAC,EAAAA,UACAC,EAAAA,WACAC,EAAAA,oBACAC,EAAAA,UACAC,EAAAA,SACAC,EAAAA,QACAC,EAAAA,UACAC,EAAAA,eACAC,EAAAA,UACAhE,EAAAA,MACAiE,EAAAA,aACAC,EAAAA,YACAC,EAAAA,WACAC,EAAAA,aACAC,EAAAA,YACAC,EAAAA,UACAC,EAAAA,OACAC,EAAAA,YACAC,EAAAA,OACAC,EAAAA,cACAC,EAAAA,KACAC,EAAAA,KACAC,EAAAA,eACAC,EAAAA,WACAC,EAAAA,UACAC,EAAAA,UACAC,EAAAA,gBACAC,EAAAA,aACAC,EAAAA,cACAC,EAAAA,kBACAC,EAAAA,wBACAC,EAAAA,0BACAC,EAAAA,4BACAC,EAAAA,sBACAC,EAAAA,UACAC,EAAAA,YACAC,EAAAA,MACAC,EAAAA,oBACAC,EAAAA,kBACAC,EAAAA,gBACAC,EAAAA,aACAC,EAAAA,mBACAC,EAAAA,SACAC,EAAAA,UACAC,EAAAA,UACAC,EAAAA,mBACAC,EAAAA,MACAC,EAAAA,UACAC,GAGIC,EAAgB,CACpBC,QAAS,CACPpK,MAAO,CACL,OACA,OACA,IACA,UACA,QACA,IACA,OACA,SACA,YACA,gBACA,OACA,eACA,eACA,WACA,sBACA,YACA,WACA,IACA,YACA,YACA,UACA,SACA,IACA,oBACA,YACA,cACA,IACA,cACA,aACA,cACA,YACA,YACA,YACA,iBACA,IACA,YACA,eACA,kBAGJpF,KAAM,CACJyP,WAAY,CACVC,QAAQ,EACRC,YAAY,EACZC,UAAU,IAGdnQ,MAAO,CACLoQ,YAAa,CACX,CACElQ,KAAM,WACNmQ,QAAS,KACTC,QAAS,CAAC,uBAEZ,CACEpQ,KAAM,cACNmQ,QAAS,KACTC,QAAS,CAAC,eAEZ,CACEpQ,KAAM,YACNmQ,QAAS,IACTC,QAAS,CAAC,iBAEZ,CACEpQ,KAAM,OACNmQ,QAAS,IACTC,QAAS,CAAC,SAEZ,CACEpQ,KAAM,eACNmQ,QAAS,IACTC,QAAS,CAAC,iBAEZ,CACEpQ,KAAM,WACNmQ,QAAS,OACTC,QAAS,CAAC,eAIhBC,MAAO,CACLR,QAAS,CACP,uBACA,qBACA,oBACA,mBACA,kBACA,IACA,iBACA,iBACA,iBACA,uBACA,IACA,cAGJS,MAAO,CACLC,eAAgB,CAAC,cAAe,WAAY,kBAAmB,sBAAuB,oBAExFC,YAAa,CACXC,MAAO,CACL,CAAEzQ,KAAM,MAAOoQ,SAAS,EAAML,QAAQ,GACtC,CACE/P,KAAM,UACNoQ,QAAS,CAAC,iBACVL,QAAQ,EACRW,YAAY,MAMdC,EAAgB1V,IAAoH,IAAD2V,EAAAC,EAAA,IAAlH,UAAE9T,EAAS,WAAE+T,EAAU,OAAExG,EAAQhN,QAASyT,EAAgB,GAAInS,OAAQoS,EAAY,cAAEC,GAAyBhW,EAAPG,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GAChI,MAAOqI,EAAO7B,GAAYoP,IAAgB9V,GACpC+V,GAAgBC,EAAAA,EAAAA,gBAAe,WAC/B,KAAEC,IAASC,EAAAA,EAAAA,aACX1S,EAASoS,GAAgBG,EACzB7T,GAAU4F,EAAAA,EAAAA,SAAQ,KACtB,MAAM5F,EAAU,IAAI+O,KAAmB0E,GAIvC,OAHID,GACFxT,EAAQiU,KAAKC,EAAAA,UAERlU,GACN,CAACwT,EAAYC,IAChB,OACE/U,EAAAA,EAAAA,KAAA,OAAKe,UAAW8C,IAAW9C,EAAW+C,GAAiBH,UACrD3D,EAAAA,EAAAA,KAACyV,EAAAA,SAAS,CACRhN,OAAQiN,EAAAA,cACRxW,KAAMyI,EACN2G,OAAQqH,IAAM,CAAC,EAAG/B,EAAetF,EAAQ,CACvCsH,WAAY,MACZtU,UACAuU,aAAc,CAAY,UAAXjT,EAAqBkT,EAAAA,EAAqBC,EAAAA,GACzDd,cAAe3U,OAAOC,OACpB,CAAC,EACD,CACE+L,OAAY,OAAJ+I,QAAI,IAAJA,GAAU,QAANT,EAAJS,EAAM9I,YAAI,IAAAqI,OAAN,EAAJA,EAAYtI,OACpBsD,UAAe,OAAJyF,QAAI,IAAJA,GAAU,QAANR,EAAJQ,EAAM9I,YAAI,IAAAsI,OAAN,EAAJA,EAAYjF,WAEzBqF,KAGJnP,SAAUA,CAAC5C,EAAOuF,KAChB,MAAMvJ,EAAOuJ,EAAOsG,UACpBjJ,EAAS5G,SAOb8W,GAAWtV,EAAAA,EAAAA,wBAAuB,CACtCC,QAAS,CAAC,mCADKD,CAEdR,IAAkC,IAAjC,cAAEY,GAAyBZ,EAAPd,GAAKC,EAAAA,EAAAA,GAAAa,EAAAE,GAC3B,MAAO6V,GAASnV,GACV,aAAEoV,GAAiBD,EAEzB,OADeC,EAAa5V,OAAOC,OAAO,CAAC,EAAGnB,GACvCoB,CAAOmU,KAGhBqB,EAASG,MAAQxB,EAMjBqB,EAASI,QAJS3V,IAA8B,IAA7B,UAAEM,EAAS,SAAE4C,GAAUlD,EACxC,OAAOT,EAAAA,EAAAA,KAAA,OAAKe,UAAW8C,IAAW,gBAAiB9C,GAAYsV,wBAAyB,CAAEC,OAAQ3S,MAKpG,S,0HC3SI5E,OAAOwX,mBACT/X,EAAAA,OAAO8P,OAAO,CAAEkI,MAAO,CAAEC,GAAG,GAAD7X,OAAK8X,IAAY3X,OAAOwX,mBAAkB,cAGvE,MA0BA,GA1BmB3V,EAAAA,EAAAA,YAAW,CAACxB,EAAOG,KACpC,MAAMsB,GAASjB,EAAAA,EAAAA,QAAO,CAAC,GAevB,OAdAyB,EAAAA,EAAAA,qBACE9B,EACA,MACE6I,SAAUA,IACDvH,EAAOnB,QAAQ+I,OAAOL,WAE/BP,SAAUF,IACR9G,EAAOnB,QAAQ+I,OAAOZ,SAASF,IAEjCgP,UAAWA,IAAM9V,EAAOnB,QAAQ+I,OAChCmO,UAAWA,IAAM/V,EAAOnB,QAAQmX,SAElC,KAGA7W,EAAAA,EAAAA,KAAC8W,KAAY7W,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACPK,OAAOC,OAAO,CAAC,EAAG,CAAEsC,OAAQ,KAAOzD,IAAM,IAC7C2X,QAASA,CAACtO,EAAQoO,KAChBhW,EAAOnB,QAAU,CAAE+I,SAAQoO,e,0DC1BnC,MAwMA,EAxMqB,CACjB7S,KAAM,sBACNC,QAAS,i2CAiBTC,IAAK,gsHA+ILC,QAAS,CACLC,QAAQ,EACRrD,UAAW,4BACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,qyCAmBNC,MAAO,CAAC,CACRR,KAAM,uBACNS,YAAa,kCACbC,UAAW,GACb,CACEV,KAAM,OACNS,YAAa,OACbC,UAAW,O,gCCpMf,MA6IA,EA7IqB,CACjBV,KAAM,oBACNC,QAAS,8yCAiBTC,IAAK,w5FAmGLC,QAAS,CACLC,QAAQ,EACRrD,UAAW,0BACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,s5BAQNC,MAAO,CAAC,CACRR,KAAM,qBACNS,YAAa,gCACbC,U,8CCxIJ,MAsLA,EAtLqB,CACjBV,KAAM,WACNC,QAAS,+9CAiBTC,IAAK,uhGA4ILC,QAAS,CACLC,QAAQ,EACRrD,UAAW,iBACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,oIAQNC,MAAO,CAAC,CACRR,KAAM,YACNS,YAAa,uBACbC,U,6LCjLJ,QAAgC,oC,eCUhC,MAAMsS,GAAiBC,EAAAA,EAAAA,MAAKhY,IAAgB,IAAf,MAAEkB,GAAOlB,EACpC,OACEe,EAAAA,EAAAA,KAAA,OAAKe,UAAW+C,EAAuBH,UACrC3D,EAAAA,EAAAA,KAAA,OAAA2D,SAAMxD,QAKN+W,GAAgBC,EAAAA,EAAAA,kBAAiBjX,IAAoD,IAAnD,cAAEY,EAAa,SAAE6C,EAAQ,MAAEvE,EAAK,KAAEwG,EAAO,CAAC,GAAG1F,EACnF,MAAOC,EAAOiX,IAAYpS,EAAAA,EAAAA,UAAS,OAC5BqS,EAAWC,IAAgBtS,EAAAA,EAAAA,UAAS,OACpCuS,EAAcC,IAAmBxS,EAAAA,EAAAA,UAAS,OAE3C,QAAEvB,EAAO,YAAEgU,GAAgB9T,EAC3Ba,GAAQ0C,EAAAA,EAAAA,SAAQ,IACb+C,IACLnJ,EACA,CAACoJ,EAAQwN,EAAQ/M,KACfT,EAAOuN,EAAY9M,IAAU+M,GAE/B,CAAC,GAEF,CAAC5W,EAAe2W,IAGbE,GAAUzQ,EAAAA,EAAAA,SAAQ,IAAM5G,OAAOqJ,KAAK/D,GAAO,CAACA,IAC5CgS,GAAY1Q,EAAAA,EAAAA,SAAQ,IAAM5G,OAAOuX,OAAOjS,GAAO,CAACA,IAkCtD,OA/BA/F,EAAAA,EAAAA,WAAU,KACR,GAAK4D,EAKL,IACE2T,EAAS,MACT,MAAM7S,GAAOuT,EAAAA,EAAAA,WAAW,UAADlZ,OAAW6E,EAAO,MAAM,CAAEsU,QAAS,CAAC,SAAU,WAAYxT,KACjFiT,EAAgBjT,EAClB,CAAE,MAAOuC,GACPsQ,EAAStQ,GACT0Q,EAAgB,KAClB,MAXEA,EAAgB,OAYjB,CAAC/T,KAGJ5D,EAAAA,EAAAA,WAAU,KACR,GAAK0X,EAEL,IACEH,EAAS,MAET,MAAMY,EAAiB,IAAIC,SAAS,QAAS,SAAU,QAAS,UAAWN,KAAYF,EAAaF,GAC9FW,EAAuBT,EAAY7N,IAAI5F,GAAQQ,EAAMR,IAC3DgU,EAAeG,IAAOC,GAAOd,EAAac,GAAMhZ,EAAOiZ,KAAST,KAAcM,EAChF,CAAE,MAAOpR,GACPsQ,EAAStQ,EACX,GACC,CAACyQ,EAAc/S,EAAOiT,EAAarY,EAAOuY,EAASC,KAGpD3M,EAAAA,EAAAA,MAACC,EAAAA,KAAI,CAACC,UAAQ,EAAAxH,SAAA,EACZ3D,EAAAA,EAAAA,KAACsY,IAAa,CAACC,eAAgBvB,EAAerT,SAAE8T,EAAYrI,SAAWtO,EAAcsO,QAASpP,EAAAA,EAAAA,KAACwY,EAAAA,KAAI,IAAMnB,IACxGlX,IAASH,EAAAA,EAAAA,KAACgX,EAAc,CAAC7W,MAAOA,EAAMqL,eAKvC1C,EAAoBrI,IAAyD,IAAtDgD,QAASgV,EAAUrZ,MAAOsZ,EAAc,KAAE9S,GAAMnF,EAC3E,MAAM,QAAEgD,EAAO,MAAErE,EAAK,MAAEoF,EAAK,MAAErE,IAAU+G,EAAAA,EAAAA,SAAQ,KAC/C,IACE,IAAKuR,EACH,MAAO,CAAEhV,QAAS,GAAIe,MAAO,CAAC,EAAGpF,MAAO,CAAC,EAAGe,MAAO,MAErD,MAAM,QAAEsD,EAAO,MAAErE,EAAK,MAAEoF,GAAUmC,KAAKC,OAAMC,EAAAA,EAAAA,QAAO4R,IAEpD,OAAOnY,OAAOC,OACZ,CAAC,EACD,CACEkD,QAASA,GAAW,GACpBe,MAAOlE,OAAOC,OAAO,CAAC,EAAGiE,GACzBpF,MAAOkB,OAAOC,OACZ,CAAC,EACDnB,GACE6K,IACE7K,EACA,CAAC8K,EAAQvC,EAAO3D,KACdkG,EAAOlG,GACD,CAAC,QAAS,SAAU,UAAW,UAAUmG,QAAQxC,EAAMmC,OAAS,EAC3DnD,KAAKC,MAAMe,EAAMjC,cAEP,WAAfiC,EAAMmC,KACDnC,EAAMjC,aAEI,aAAfiC,EAAMmC,KACD,IAAM,UADf,GAKJ,CAAC,IAGP3J,MAAO,MAGb,CAAE,MAAO2G,GACP,MAAO,CAAE3G,MAAO2G,EAAE0E,SAAW,uCAC/B,GACC,CAACiN,IAEEE,GAAczR,EAAAA,EAAAA,SAAQ,IACnB5G,OAAOC,OAAO,CAAC,EAAGnB,EAAOsZ,GAC/B,CAACA,EAAgBtZ,KAEd,SAAEuE,EAAQ,QAAEhD,IAAYuG,EAAAA,EAAAA,SAAQ,KACpC,MAAMuQ,EAAcnX,OAAOqJ,KAAKnF,GAChC,MAAO,CACL7D,QAAS,CAAC,qCAAqC/B,OAAO6Y,EAAY7N,IAAI5F,GAAQQ,EAAMR,KACpFL,SAAU,CAAEF,UAASgU,YAAa,CAAC,cAAc7Y,OAAO6Y,MAEzD,CAACjT,IAEJ,OAAIrE,GACKH,EAAAA,EAAAA,KAACgX,EAAc,CAAC7W,MAAOA,KAGzBH,EAAAA,EAAAA,KAACkX,EAAa,CAAC9X,MAAOuZ,EAAa/S,KAAMA,EAAMjF,QAASA,EAASgD,SAAUA,KAWpF,GARgCsT,EAAAA,EAAAA,MAAK7X,IAEjCY,EAAAA,EAAAA,KAACsY,IAAa,CAACC,eAAgBvB,EAAerT,UAC5C3D,EAAAA,EAAAA,KAAC8I,GAAiB7I,EAAAA,EAAAA,GAAA,GAAKb,M,gCC9I7B,MAgKA,EAhKqB,CACjB4E,KAAM,aACNC,QAAS,8rCAgBTC,IAAK,mvFAuHLC,QAAS,CACLC,QAAQ,EACRrD,UAAW,mBACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,uIAQNC,MAAO,CAAC,CACRR,KAAM,cACNS,YAAa,yBACbC,U,k+nlEC1JJ,MA6IA,EA7IqB,CACjBV,KAAM,eACNC,QAAS,iyCAgBTC,IAAK,mnEA4FLC,QAAS,CACLC,QAAQ,EACRrD,UAAW,qBACX+C,MAAO,GACPO,KAAM,CAAC,CACXX,MAAO,mDACPY,YAAa,mDACbC,KAAM,8NAYNC,MAAO,CAAC,CACRR,KAAM,gBACNS,YAAa,2BACbC,UAAW,GACb,CACEV,KAAM,QACNS,YAAa,oDACbC,U,+KCpHJ,EAnBqBzF,IAA0E,IAAzE,KAAE2Z,EAAI,cAAEC,EAAa,KAAEC,GAAO,EAAI,SAAEC,EAAW,UAAoB9Z,EAAPG,GAAKC,EAAAA,EAAAA,GAAAJ,EAAAK,GACrF,MAAMC,GAAMK,EAAAA,EAAAA,QAAO,MAenB,OAdAC,EAAAA,EAAAA,WAAU,KACR,MAAMmZ,EAAYC,IAAAA,cAAqB,CACrCC,UAAW3Z,EAAIG,QACfqZ,WACAD,OACAK,UAAU,EACVP,OACAC,kBAGF,MAAO,KACLG,EAAUI,YAEX,CAACR,EAAMC,EAAeE,EAAUD,KAC5B9Y,EAAAA,EAAAA,KAAA,OAAAC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAASb,GAAK,IAAEG,IAAKA,K","sources":["components/MarkdownRender/index.js","components/Echart/index.js","webpack://@kne-components/components-thirdparty/./src/components/Calendar/style.module.scss?778d","components/Calendar/index.js","components/Echart/README.md","components/MarkdownRender/README.md","components/CKEditor/README.md","webpack://@kne-components/components-thirdparty/./src/components/LiveComponentEditor/style.module.scss?90c4","components/LiveComponentEditor/index.js","components/CKEditor/OssUploadAdapterPlugin/img_fail.svg","components/CKEditor/OssUploadAdapterPlugin/index.js","webpack://@kne-components/components-thirdparty/./src/components/CKEditor/style.module.scss?ee3b","components/CKEditor/index.js","components/CodeEditor/index.js","components/LiveComponentEditor/README.md","components/LiveComponentView/README.md","components/Calendar/README.md","webpack://@kne-components/components-thirdparty/./src/components/LiveComponentView/style.module.scss?b572","components/LiveComponentView/index.js","components/CodeEditor/README.md","components/LottiePlayer/README.md","components/LottiePlayer/index.js"],"sourcesContent":["import MarkdownComponentsRender from '@kne/markdown-components-render';\nimport '@kne/markdown-components-render/dist/index.css';\n\nexport * from '@kne/markdown-components-render';\n\nexport default MarkdownComponentsRender;\n","import { getOrLoadRemote, getPublicPath } from '@kne/remote-loader';\nimport Fetch from '@kne/react-fetch';\nimport { useRef, useEffect } from 'react';\nimport useResize from '@kne/use-resize';\n\nconst loader = {\n loading: null,\n loader: async () => {\n await getOrLoadRemote('echarts', '', `${getPublicPath('components-thirdparty')}/echarts/echarts.js`);\n return { echarts: window.echarts };\n }\n};\n\nconst EchartInner = ({ data, option, ...props }) => {\n const ref = useResize(() => {\n instanceRef.current && instanceRef.current.resize();\n });\n const instanceRef = useRef(null);\n const { echarts } = data;\n useEffect(() => {\n if (!echarts) {\n return;\n }\n instanceRef.current = echarts.init(ref.current);\n }, [echarts, ref]);\n useEffect(() => {\n instanceRef.current && instanceRef.current.setOption(option);\n }, [option]);\n return <div {...props} ref={ref} />;\n};\n\nconst Echart = ({ loading, error, ...props }) => {\n return (\n <Fetch\n {...Object.assign({}, loader, { loading, error })}\n render={({ data }) => {\n return <EchartInner {...props} data={data} />;\n }}\n />\n );\n};\n\nexport default Echart;\n","// extracted by mini-css-extract-plugin\nexport default {\"calendar\":\"style_calendar__03q35__Glq7o\"};","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport classnames from 'classnames';\nimport { useRef, forwardRef, useImperativeHandle } from 'react';\nimport dayjs from 'dayjs';\nimport FullCalendar from '@fullcalendar/react';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport interactionPlugin from '@fullcalendar/interaction';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport scrollGridPlugin from '@fullcalendar/scrollgrid';\nimport useResize from '@kne/use-resize';\nimport style from './style.module.scss';\n\nconst Calendar = createWithRemoteLoader({\n modules: ['components-core:Tooltip']\n})(\n forwardRef(({ remoteModules, className, ...p }, apiRef) => {\n const [Tooltip] = remoteModules;\n const calendarRef = useRef();\n const ref = useResize(() => {\n if (calendarRef.current) {\n const calendarApi = calendarRef.current.getApi();\n calendarApi.updateSize();\n }\n });\n useImperativeHandle(apiRef, () => {\n return calendarRef.current.getApi();\n });\n const props = Object.assign(\n {},\n {\n plugins: [dayGridPlugin, interactionPlugin, timeGridPlugin, scrollGridPlugin],\n initialView: 'dayGridMonth',\n aspectRatio: 1.6,\n weekends: true,\n slotEventOverlap: false,\n displayEventEnd: true,\n editable: false,\n firstDay: 1,\n headerToolbar: {\n left: 'prev,next today',\n center: 'title',\n right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'\n },\n buttonText: {\n today: '今天',\n month: '月',\n week: '周',\n day: '天'\n },\n dayMinWidth: 100,\n locale: 'zh-cn',\n height: 'auto',\n handleWindowResize: false,\n dateClick: () => {},\n eventClick: () => {},\n eventContent: ({ event }) => {\n const startStr = event.start ? dayjs(event.start).format('HH:ss') : '',\n endStr = event.end ? dayjs(event.end).format('HH:ss') : '';\n const content = `${!(startStr && endStr) ? `[${startStr}]` : startStr === endStr ? '' : `[${startStr}-${endStr}]`} ${event.title}`;\n\n return <Tooltip content={content}>{content}</Tooltip>;\n },\n initialDate: dayjs().format('YYYY-MM-DD')\n },\n p\n );\n return (\n <div className={classnames(style['calendar'], className)} ref={ref}>\n <FullCalendar {...props} ref={calendarRef} />\n </div>\n );\n })\n);\n\nexport default Calendar;\n","import * as component_3 from '@components/Echart';\nconst readmeConfig = {\n name: `Echart`,\n summary: `<h3>组件概述</h3>\n<p>Echart 是基于 Apache ECharts 的图表组件,提供了丰富的数据可视化功能。该组件封装了 ECharts 的初始化、配置更新和响应式调整等核心功能,简化了图表的使用流程。</p>\n<h3>主要特性</h3>\n<ul>\n<li>支持所有 ECharts 图表类型</li>\n<li>自动响应式调整大小</li>\n<li>动态加载 ECharts 核心库</li>\n<li>支持自定义加载和错误状态</li>\n<li>高性能渲染</li>\n<li>丰富的配置选项</li>\n<li>支持图表事件交互</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于需要数据可视化的各类应用,如数据报表、业务分析、监控面板、统计图表等场景。支持柱状图、折线图、饼图、散点图、地图等多种图表类型。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>option</td>\n<td>object</td>\n<td>-</td>\n<td>ECharts 配置对象(必需)</td>\n</tr>\n<tr>\n<td>loading</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>自定义加载状态组件</td>\n</tr>\n<tr>\n<td>error</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>自定义错误状态组件</td>\n</tr>\n<tr>\n<td>className</td>\n<td>string</td>\n<td>-</td>\n<td>自定义样式类名</td>\n</tr>\n<tr>\n<td>style</td>\n<td>object</td>\n<td>-</td>\n<td>自定义内联样式</td>\n</tr>\n</tbody>\n</table>\n<h4>注意事项</h4>\n<ul>\n<li>option 更新时会自动重新渲染图表</li>\n<li>如果 ECharts 库未成功加载,会显示错误状态</li>\n<li>组件会自动处理图表的初始化和销毁</li>\n</ul>\n<h4>option 配置</h4>\n<p>option 对象遵循 ECharts 官方配置规范,主要包含以下部分:</p>\n<table>\n<thead>\n<tr>\n<th>配置项</th>\n<th>类型</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>title</td>\n<td>object</td>\n<td>图表标题配置</td>\n</tr>\n<tr>\n<td>tooltip</td>\n<td>object</td>\n<td>提示框配置</td>\n</tr>\n<tr>\n<td>legend</td>\n<td>object</td>\n<td>图例配置</td>\n</tr>\n<tr>\n<td>grid</td>\n<td>object</td>\n<td>直角坐标系网格配置</td>\n</tr>\n<tr>\n<td>xAxis</td>\n<td>array</td>\n<td>X轴配置</td>\n</tr>\n<tr>\n<td>yAxis</td>\n<td>array</td>\n<td>Y轴配置</td>\n</tr>\n<tr>\n<td>series</td>\n<td>array</td>\n<td>系列列表(核心数据配置)</td>\n</tr>\n</tbody>\n</table>\n<h4>常用图表类型示例</h4>\n<pre><code class=\"language-javascript\">// 柱状图\nconst barOption = {\n xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed'] },\n yAxis: { type: 'value' },\n series: [{ type: 'bar', data: [120, 200, 150] }]\n};\n\n// 折线图 \nconst lineOption = {\n xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed'] },\n yAxis: { type: 'value' },\n series: [{ type: 'line', data: [120, 200, 150] }]\n};\n\n// 饼图\nconst pieOption = {\n series: [{\n type: 'pie',\n data: [{ value: 1048, name: '搜索引擎' }, { value: 735, name: '直接访问' }]\n }]\n};\n</code></pre>\n<h4>注意事项</h4>\n<ul>\n<li>组件会自动处理图表的大小调整</li>\n<li>ECharts 核心库通过远程动态加载</li>\n<li>option 更新时会自动重新渲染图表</li>\n</ul>`,\n example: {\n isFull: false,\n className: `Echart_1f633`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Echart } = _Echart;\nconst BaseExample = () => {\n return (\n <>\n <Echart\n style={{ height: '400px' }}\n option={{\n xAxis: {\n type: 'category',\n data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']\n },\n yAxis: {\n type: 'value'\n },\n series: [\n {\n data: [820, 932, 901, 934, 1290, 1330, 1320],\n type: 'line',\n smooth: true\n }\n ]\n }}\n />\n <Echart\n style={{ height: '400px' }}\n option={{\n xAxis: {\n type: 'category',\n data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']\n },\n yAxis: {\n type: 'value'\n },\n series: [\n {\n data: [120, 200, 150, 80, 70, 110, 130],\n type: 'bar'\n }\n ]\n }}\n />\n </>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Echart\",\n packageName: \"@components/Echart\",\n component: component_3\n}]\n},{\n title: `动态数据`,\n description: `动态数据`,\n code: `const { default: Echart } = _Echart;\nconst { useState, useEffect } = React;\nconst BaseExample = () => {\n const [option, setOption] = useState({\n series: [\n {\n type: 'gauge',\n min: 0,\n max: 100,\n splitNumber: 10,\n radius: '80%',\n axisLine: {\n lineStyle: {\n color: [[1, '#f00']],\n width: 3\n }\n },\n splitLine: {\n distance: -18,\n length: 18,\n lineStyle: {\n color: '#f00'\n }\n },\n axisTick: {\n distance: -12,\n length: 10,\n lineStyle: {\n color: '#f00'\n }\n },\n axisLabel: {\n distance: -50,\n color: '#f00',\n fontSize: 25\n },\n anchor: {\n show: true,\n size: 20,\n itemStyle: {\n borderColor: '#000',\n borderWidth: 2\n }\n },\n pointer: {\n offsetCenter: [0, '10%'],\n icon: 'path://M2090.36389,615.30999 L2090.36389,615.30999 C2091.48372,615.30999 2092.40383,616.194028 2092.44859,617.312956 L2096.90698,728.755929 C2097.05155,732.369577 2094.2393,735.416212 2090.62566,735.56078 C2090.53845,735.564269 2090.45117,735.566014 2090.36389,735.566014 L2090.36389,735.566014 C2086.74736,735.566014 2083.81557,732.63423 2083.81557,729.017692 C2083.81557,728.930412 2083.81732,728.84314 2083.82081,728.755929 L2088.2792,617.312956 C2088.32396,616.194028 2089.24407,615.30999 2090.36389,615.30999 Z',\n length: '115%',\n itemStyle: {\n color: '#000'\n }\n },\n detail: {\n valueAnimation: true,\n precision: 1\n },\n title: {\n offsetCenter: [0, '-50%']\n },\n data: [\n {\n value: 58.46,\n name: 'PLP'\n }\n ]\n },\n {\n type: 'gauge',\n min: 0,\n max: 60,\n splitNumber: 6,\n axisLine: {\n lineStyle: {\n color: [[1, '#000']],\n width: 3\n }\n },\n splitLine: {\n distance: -3,\n length: 18,\n lineStyle: {\n color: '#000'\n }\n },\n axisTick: {\n distance: 0,\n length: 10,\n lineStyle: {\n color: '#000'\n }\n },\n axisLabel: {\n distance: 10,\n fontSize: 25,\n color: '#000'\n },\n pointer: {\n show: false\n },\n title: {\n show: false\n },\n anchor: {\n show: true,\n size: 14,\n itemStyle: {\n color: '#000'\n }\n }\n }\n ]\n });\n useEffect(() => {\n const timer = setInterval(function () {\n setOption({\n series: [\n {\n type: 'gauge',\n data: [\n {\n value: +(Math.random() * 100).toFixed(2),\n name: 'PLP'\n }\n ]\n }\n ]\n });\n }, 1000);\n\n return () => {\n clearInterval(timer);\n };\n }, []);\n return (\n <>\n <Echart style={{ height: '600px' }} option={option} />\n </>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Echart\",\n packageName: \"@components/Echart\",\n component: component_3\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_11 from '@components/MarkdownRender';\nconst readmeConfig = {\n name: `MarkdownRender`,\n summary: `<p>渲染Markdown组件</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n</table>`,\n example: {\n isFull: false,\n className: `MarkdownRender_13ae0`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:MarkdownRender} = _MarkdownRender;\nconst BaseExample = ()=>{\n return <MarkdownRender />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_MarkdownRender\",\n packageName: \"@components/MarkdownRender\",\n component: component_11\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_6 from '@components/CKEditor';\nimport * as component_7 from 'antd';\nimport * as component_8 from '@kne/markdown-components-render';\nimport * as component_9 from '@kne/remote-loader';\nconst readmeConfig = {\n name: `CKEditor`,\n summary: `<p>基于 CKEditor 5 的功能强大的富文本编辑器组件,支持丰富的文本编辑功能、图片上传、表格编辑、Markdown 模式等。</p>`,\n \n \n api: `<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>说明</th>\n<th>类型</th>\n<th>默认值</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>className</td>\n<td>自定义类名</td>\n<td>string</td>\n<td>-</td>\n</tr>\n<tr>\n<td>isMarkdown</td>\n<td>是否启用Markdown模式</td>\n<td>boolean</td>\n<td>false</td>\n</tr>\n<tr>\n<td>config</td>\n<td>编辑器配置对象,可自定义工具栏和插件配置</td>\n<td>object</td>\n<td>详见下方配置</td>\n</tr>\n<tr>\n<td>plugins</td>\n<td>自定义插件数组</td>\n<td>array</td>\n<td>[]</td>\n</tr>\n<tr>\n<td>value</td>\n<td>编辑器内容</td>\n<td>string</td>\n<td>-</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>内容变化回调函数</td>\n<td>function</td>\n<td>-</td>\n</tr>\n</tbody>\n</table>\n<h3>config 配置说明</h3>\n<ul>\n<li><code>toolbar</code>: 工具栏配置,包含各种编辑功能按钮</li>\n<li><code>image</code>: 图片编辑工具栏配置</li>\n<li><code>table</code>: 表格编辑工具栏配置</li>\n<li><code>htmlSupport</code>: HTML支持配置,允许的标签和属性</li>\n</ul>`,\n example: {\n isFull: false,\n className: `CKEditor_8816a`,\n style: ``,\n list: [{\n title: `基础示例`,\n description: `展示富文本编辑器的基本功能,包含完整的工具栏和内容编辑功能`,\n code: `const { default: CKEditor } = _CKEditor;\nconst { Flex, Card, Space, Typography, Divider } = antd;\nconst { useState } = React;\nconst { Title } = Typography;\n\nconst initData = \\`<h2>欢迎使用 CKEditor 5</h2><p>这是一个功能强大的富文本编辑器,支持:</p><ul> <li><strong>文本格式</strong>:加粗、斜体、下划线、删除线等</li> <li><strong>段落</strong>:标题、引用、代码块等</li> <li><strong>列表</strong>:有序列表、无序列表、待办事项</li> <li><strong>图片</strong>:上传、调整大小、设置样式</li> <li><strong>表格</strong>:插入和编辑表格</li> <li><strong>链接</strong>:插入和管理链接</li> <li><strong>更多</strong>:水平线、分页符、特殊字符等</li></ul><p>尝试编辑上面的内容,体验各种编辑功能!</p>\\`;\n\nconst BaseExample = () => {\n const [content, setContent] = useState(initData);\n\n return (\n <Flex vertical gap={16}>\n <Card>\n <Space direction=\"vertical\" style={{ width: '100%' }} size=\"middle\">\n <Title level={4}>基础富文本编辑器</Title>\n <CKEditor.Field value={content} onChange={setContent} />\n <Divider orientation=\"left\">内容预览</Divider>\n <CKEditor.Content>{content}</CKEditor.Content>\n </Space>\n </Card>\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_CKEditor\",\n packageName: \"@components/CKEditor\",\n component: component_6\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_7\n}]\n},{\n title: `Markdown 模式`,\n description: `展示 Markdown 模式下的编辑器,支持 Markdown 语法输入和编辑`,\n code: `const { default: CKEditor } = _CKEditor;\nconst { Flex, Card, Space, Typography, Switch, Divider } = antd;\nconst { useState } = React;\nconst { Title } = Typography;\nconst { default: MarkdownRender } = _MarkdownRender;\n\nconst initData = \\`\n## Markdown output 🛫\n\n[CKEditor 5](https://ckeditor.com/) can be configured to output Markdown instead of HTML. Markdown is a lightweight markup language that you can use to add formatting to plain text documents. Use the **Source** button to check and edit the Markdown source code of this content.\n\nThe editor-produced Markdown output supports most essential features, like [links](https://ckeditor.com/), **different** kinds of _emphasis_, inline code formatting, or code blocks:\n\ncss\np {\n text-align: center;\n color: red;\n}\n\n\n## Markdown input 🛬\n\nThanks to the [autoformatting feature](https://ckeditor.com/docs/ckeditor5/latest/features/autoformat.html), you can use Markdown syntax when writing. Try it out - use these (or any other) Markdown shortcuts in the editor to format the content on the fly 🚀!\n\n| Inline formatting | Shortcut |\n| ----------------- | ----------------------------------- |\n| **Bold** | Type ** or __ around your text. |\n| _Italic_ | Type * or _ around your text. |\n| Code | Type around your text. |\n| ~~Strikethrough~~ | Type ~~ around your text. |\n\nShh! 🤫 Markdown has very basic support for tables. Some advanced table-related features like table or cell styling were disabled in this demo.\n\n## Block formatting\n\nYou can also use Markdown to create various text blocks, such as:\n\n* Block quotes - Start a line with ﹥ followed by a space.\n\n* Headings:\n\n 1. Heading 1 - Start a line with # followed by a space.\n 2. Heading 2 - Start a line with ## followed by a space.\n 3. Heading 3 - Start a line with ### followed by a space.\n\n* Lists, including nested ones:\n\n * Numbered lists - Start a line with 1. or 1) followed by a space.\n * Bulleted lists - Start a line with * or - followed by a space.\n * To-do lists - Start a line with [ ] or [x] followed by a space to insert an unchecked or checked list item.\n\n* Code blocks - Start a line with .\n\n* Horizontal lines - Start a line with ---\n\\`;\n\nconst MarkdownExample = () => {\n const [isMarkdown, setIsMarkdown] = useState(true);\n const [content, setContent] = useState(initData);\n return (\n <Flex vertical gap={16}>\n <Card>\n <Space direction=\"vertical\" style={{ width: '100%' }} size=\"middle\">\n <Flex justify=\"space-between\" align=\"center\">\n <Title level={4} style={{ margin: 0 }}>\n Markdown 模式\n </Title>\n <Switch checked={isMarkdown} onChange={setIsMarkdown} checkedChildren=\"Markdown\" unCheckedChildren=\"富文本\" />\n </Flex>\n <CKEditor.Field key={\\`editor-\\${isMarkdown}\\`} isMarkdown={isMarkdown} value={content} onChange={setContent} />\n <Divider orientation=\"left\">内容预览</Divider>\n {isMarkdown ? <MarkdownRender>{content}</MarkdownRender> : <CKEditor.Content>{content}</CKEditor.Content>}\n </Space>\n </Card>\n </Flex>\n );\n};\n\nrender(<MarkdownExample />);\n\n`,\n scope: [{\n name: \"_CKEditor\",\n packageName: \"@components/CKEditor\",\n component: component_6\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_7\n},{\n name: \"_MarkdownRender\",\n packageName: \"@kne/markdown-components-render\",\n component: component_8\n}]\n},{\n title: `自定义配置`,\n description: `展示如何通过 config 属性自定义编辑器的工具栏和功能配置`,\n code: `const { default: CKEditor } = _CKEditor;\nconst { Flex, Card, Space, Typography, Radio, Divider } = antd;\nconst { useState } = React;\nconst { Title } = Typography;\n\nconst CustomConfigExample = () => {\n const [toolbarType, setToolbarType] = useState('full');\n const [content, setContent] = useState(\\`<h2>自定义配置示例</h2>\\n<p>根据选择的工具栏类型,显示不同的编辑功能。</p>\\`);\n\n const toolbarConfigs = {\n simple: {\n toolbar: {\n items: ['bold', 'italic', 'underline', '|', 'bulletedList', 'numberedList', '|', 'undo', 'redo']\n }\n },\n standard: {\n toolbar: {\n items: [\n 'undo',\n 'redo',\n '|',\n 'heading',\n '|',\n 'bold',\n 'italic',\n 'underline',\n '|',\n 'bulletedList',\n 'numberedList',\n '|',\n 'link',\n 'blockQuote',\n 'codeBlock'\n ]\n }\n },\n full: {\n toolbar: {\n items: [\n 'undo',\n 'redo',\n '|',\n 'heading',\n '|',\n 'bold',\n 'italic',\n 'underline',\n 'strikethrough',\n 'link',\n 'bulletedList',\n 'numberedList',\n 'todoList',\n 'fontBackgroundColor',\n 'fontColor',\n 'fontSize',\n '|',\n 'alignment',\n 'pageBreak',\n 'outdent',\n 'indent',\n '|',\n 'specialCharacters',\n 'subscript',\n 'superscript',\n '|',\n 'imageUpload',\n 'blockQuote',\n 'insertTable',\n 'codeBlock',\n 'htmlEmbed',\n 'highlight',\n 'horizontalLine',\n '|',\n 'selectAll',\n 'removeFormat',\n 'sourceEditing'\n ]\n }\n }\n };\n\n return (\n <Flex vertical gap={16}>\n <Card>\n <Space direction=\"vertical\" style={{ width: '100%' }} size=\"middle\">\n <Title level={4}>自定义工具栏配置</Title>\n <Radio.Group value={toolbarType} onChange={(e) => setToolbarType(e.target.value)} buttonStyle=\"solid\">\n <Radio.Button value=\"simple\">简单</Radio.Button>\n <Radio.Button value=\"standard\">标准</Radio.Button>\n <Radio.Button value=\"full\">完整</Radio.Button>\n </Radio.Group>\n <CKEditor.Field key={toolbarType} config={toolbarConfigs[toolbarType]} value={content} onChange={setContent} />\n <Divider orientation=\"left\">内容预览</Divider>\n <CKEditor.Content key={\\`preview-\\${toolbarType}\\`}>{content}</CKEditor.Content>\n </Space>\n </Card>\n </Flex>\n );\n};\n\nrender(<CustomConfigExample />);\n\n`,\n scope: [{\n name: \"_CKEditor\",\n packageName: \"@components/CKEditor\",\n component: component_6\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_7\n}]\n},{\n title: `国际化支持`,\n description: `展示如何配置编辑器的语言,支持多种国际化选项`,\n code: `const { default: CKEditor } = _CKEditor;\nconst { Flex, Card, Space, Typography, Select, Divider } = antd;\nconst { useState } = React;\nconst { Title, Text } = Typography;\n\nconst I18nExample = () => {\n const [language, setLanguage] = useState('zh-CN');\n const [content, setContent] = useState(\n \\`<h2>国际化示例</h2>\\n<p>CKEditor 5 支持多种语言,可以通过配置 language 属性来切换界面语言。</p>\\n<p>尝试切换下面的语言选择器,观察编辑器界面语言的变化。</p>\\n<ul>\\n <li>简体中文 (zh-CN)</li>\\n <li>英语 (en-US)</li>\\n</ul>\\`\n );\n\n const languageOptions = [\n { label: '简体中文', value: 'zh-CN' },\n { label: 'English', value: 'en-US' }\n ];\n\n return (\n <Flex vertical gap={16}>\n <Card>\n <Space direction=\"vertical\" style={{ width: '100%' }} size=\"middle\">\n <Flex justify=\"space-between\" align=\"center\">\n <Title level={4} style={{ margin: 0 }}>\n 国际化支持\n </Title>\n <Space>\n <Text>选择语言:</Text>\n <Select value={language} onChange={setLanguage} options={languageOptions} style={{ width: 200 }} />\n </Space>\n </Flex>\n <CKEditor.Field key={language} locale={language} value={content} onChange={setContent} />\n <Divider orientation=\"left\">内容预览</Divider>\n <CKEditor.Content key={\\`preview-\\${language}\\`}>{content}</CKEditor.Content>\n </Space>\n </Card>\n </Flex>\n );\n};\n\nrender(<I18nExample />);\n\n`,\n scope: [{\n name: \"_CKEditor\",\n packageName: \"@components/CKEditor\",\n component: component_6\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_7\n}]\n},{\n title: `在Form中使用`,\n description: `展示如何在Form中使用编辑器`,\n code: `const { createWithRemoteLoader } = remoteLoader;\nconst { default: CKEditor } = _CKEditor;\nconst { Flex, Card, Space, Typography } = antd;\nconst { useState } = React;\nconst { Title } = Typography;\n\nconst initData = \\`<h2>欢迎使用 CKEditor 5</h2><p>这是一个功能强大的富文本编辑器,支持:</p><ul> <li><strong>文本格式</strong>:加粗、斜体、下划线、删除线等</li> <li><strong>段落</strong>:标题、引用、代码块等</li> <li><strong>列表</strong>:有序列表、无序列表、待办事项</li> <li><strong>图片</strong>:上传、调整大小、设置样式</li> <li><strong>表格</strong>:插入和编辑表格</li> <li><strong>链接</strong>:插入和管理链接</li> <li><strong>更多</strong>:水平线、分页符、特殊字符等</li></ul><p>尝试编辑上面的内容,体验各种编辑功能!</p>\\`;\n\nconst BaseExample = createWithRemoteLoader({\n modules: ['components-core:FormInfo']\n})(({ remoteModules }) => {\n const [FormInfo] = remoteModules;\n const { Form } = FormInfo;\n const { Input } = FormInfo.fields;\n\n return (\n <Flex vertical gap={16}>\n <Form data={{ title: '文章标题', content: initData }}>\n <FormInfo column={1} list={[<Input name=\"title\" label=\"标题\" rule=\"REQ\" />, <CKEditor name=\"content\" label=\"内容\" />]} />\n </Form>\n </Flex>\n );\n});\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_CKEditor\",\n packageName: \"@components/CKEditor\",\n component: component_6\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_7\n},{\n name: \"remoteLoader\",\n packageName: \"@kne/remote-loader\",\n component: component_9\n}]\n}]\n }\n};\nexport default readmeConfig;\n","// extracted by mini-css-extract-plugin\nexport default {\"code-editor\":\"style_code-editor__D+p0v__Glq7o\",\"preview\":\"style_preview__rTt65__Glq7o\",\"function-default-value\":\"style_function-default-value__Lucxh__Glq7o\"};","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { encode, decode } from 'plantuml-encoder';\nimport { Tabs, Flex, Alert, Segmented, Splitter, Collapse } from 'antd';\nimport { MenuOutlined, SplitCellsOutlined, EyeOutlined } from '@ant-design/icons';\nimport CodeEditor from '@components/CodeEditor';\nimport LiveComponentView from '@components/LiveComponentView';\nimport useRefCallback from '@kne/use-ref-callback';\nimport lodash from 'lodash';\nimport dayjs from 'dayjs';\nimport transform from 'lodash/transform';\nimport debounce from 'lodash/debounce';\nimport isEmpty from 'lodash/isEmpty';\nimport get from 'lodash/get';\nimport { useState, useRef, useEffect, useMemo, useImperativeHandle, forwardRef } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport style from './style.module.scss';\n\nconst SafeRender = createWithRemoteLoader({\n modules: ['components-core:Global@useGlobalContext', 'components-core:Global@PureGlobal']\n})(({ remoteModules, children }) => {\n const [useGlobalContext, PureGlobal] = remoteModules;\n const { global } = useGlobalContext();\n const ref = useRef(null);\n const [renderComponent] = useState(() =>\n debounce((children, locale, themeToken) => {\n ref.current.innerHTML = '';\n const dom = document.createElement('div');\n ref.current.appendChild(dom);\n const app = createRoot(dom);\n app.render(\n <PureGlobal preset={{ locale }} themeToken={themeToken}>\n {children}\n </PureGlobal>\n );\n }, 1000)\n );\n useEffect(() => {\n renderComponent(children, global.locale, global.themeToken);\n }, [children, global.locale, global.themeToken, renderComponent]);\n return <div ref={ref} />;\n});\n\nconst LiveComponentEditor = createWithRemoteLoader({\n modules: ['components-core:FormInfo', 'components-core:InfoPage', 'components-core:InfoPage@CentralContent', 'components-core:Common@SimpleBar']\n})(\n forwardRef(({ remoteModules, defaultValue, defaultMod = 'mix', height = 500, libs = { lodash, dayjs }, onChange }, ref) => {\n const [FormInfo, InfoPage, CentralContent, SimpleBar] = remoteModules;\n const { Form, TableList } = FormInfo;\n const { Input, Select } = FormInfo.fields;\n const codeEditorRef = useRef(null);\n const [params, setParams] = useState(() => {\n if (!defaultValue) {\n return {};\n }\n try {\n return JSON.parse(decode(defaultValue));\n } catch (e) {\n console.error(e);\n return {};\n }\n });\n const defaultValueRef = useRef(defaultValue);\n const outputContent = useMemo(() => {\n if (isEmpty(params)) {\n return '';\n }\n return encode(JSON.stringify(params));\n }, [params]);\n\n const [activeKey, setActiveKey] = useState('content');\n\n const handleChange = useRefCallback(onChange);\n\n // 创建稳定的 setValue debounced 函数\n const setValueDebouncedRef = useRef(null);\n\n if (!setValueDebouncedRef.current) {\n setValueDebouncedRef.current = debounce(\n (value, codeEditorRef) => {\n const newParams = (() => {\n try {\n return JSON.parse(decode(value));\n } catch (e) {\n console.error(e);\n return {};\n }\n })();\n setParams(newParams);\n codeEditorRef.current && codeEditorRef.current.setValue(newParams.content || '');\n },\n 500,\n { leading: true, trailing: true }\n );\n }\n\n // 创建稳定的 content update debounced 函数,避免频繁更新\n const updateContentDebouncedRef = useRef(null);\n\n if (!updateContentDebouncedRef.current) {\n updateContentDebouncedRef.current = debounce((newContent, setParams, prevParams) => {\n setParams(prev => ({ ...prev, content: newContent }));\n }, 300);\n }\n\n useImperativeHandle(\n ref,\n () => ({\n getValue: () => outputContent,\n setValue: value => setValueDebouncedRef.current(value, codeEditorRef)\n }),\n [outputContent]\n );\n useEffect(() => {\n if (defaultValueRef.current !== outputContent) {\n defaultValueRef.current = outputContent;\n handleChange && handleChange(outputContent);\n }\n }, [outputContent, handleChange]);\n const [mod, setMod] = useState(defaultMod);\n const { content, props, scope } = Object.assign({}, { content: '', props: {}, scope: {} }, params);\n const propsFormRef = useRef(null);\n const scopeFormRef = useRef(null);\n\n const editor = (\n <div className={style['code-editor']}>\n <CodeEditor\n ref={codeEditorRef}\n height={height}\n defaultValue={content}\n defaultLanguage=\"javascript\"\n onChange={value => updateContentDebouncedRef.current(value, setParams, params)}\n />\n </div>\n );\n\n const preview = (\n <SimpleBar\n style={{\n maxHeight: `${height}px`\n }}>\n <div className={style['preview']}>\n <SafeRender>\n <Form>\n <LiveComponentView content={outputContent} libs={libs} />\n </Form>\n </SafeRender>\n </div>\n </SimpleBar>\n );\n return (\n <Tabs\n activeKey={activeKey}\n onChange={activeKey => {\n setActiveKey(activeKey);\n propsFormRef.current && propsFormRef.current.submit();\n scopeFormRef.current && scopeFormRef.current.submit();\n }}\n tabBarExtraContent={\n activeKey === 'content' && (\n <Segmented\n value={mod}\n onChange={setMod}\n options={[\n {\n label: '编辑器',\n value: 'editor',\n icon: <MenuOutlined />\n },\n {\n label: '混合',\n value: 'mix',\n icon: <SplitCellsOutlined />\n },\n {\n label: '预览',\n value: 'preview',\n icon: <EyeOutlined />\n }\n ]}\n />\n )\n }\n items={[\n {\n key: 'props',\n label: '组件参数',\n children: (\n <Form\n ref={propsFormRef}\n data={{\n props: Object.keys(props).map(name => {\n const item = Object.assign({}, props[name]);\n return {\n name,\n type: item.type,\n defaultValue: item.defaultValue\n };\n })\n }}\n onSubmit={formData => {\n setParams(params => {\n return Object.assign({}, params, {\n props: transform(\n formData.props,\n (result, value) => {\n result[value.name] = {\n defaultValue: (() => {\n if (['array', 'object', 'boolean', 'number'].indexOf(value.type) > -1) {\n return value.defaultValue;\n }\n if (value.type === 'string') {\n return value.defaultValue;\n }\n if (value.type === 'function') {\n return '()=>null';\n }\n })(),\n type: value.type\n };\n },\n {}\n )\n });\n });\n }}>\n <TableList\n title=\"参数列表\"\n name=\"props\"\n list={[\n <Input name=\"name\" label=\"变量名\" rule=\"REQ LEN-0-100\" />,\n <Select\n name=\"type\"\n label=\"类型\"\n rule=\"REQ\"\n defaultValue=\"string\"\n options={[\n { label: '字符串', value: 'string' },\n { label: '数字', value: 'number' },\n { label: '布尔值', value: 'boolean' },\n { label: '数组', value: 'array' },\n { label: '对象', value: 'object' },\n { label: '函数', value: 'function' }\n ]}\n onChange={(value, item, { openApi, groupArgs }) => {\n setTimeout(() => {\n openApi.setField({\n name: 'defaultValue',\n groupName: 'props',\n groupIndex: groupArgs[0].index,\n value: ''\n });\n }, 100);\n }}\n />,\n <Input\n name=\"defaultValue\"\n label=\"默认值\"\n rule=\"REQ LEN-0-500\"\n display={({ formData, groupArgs }) => {\n return get(formData.props, `${groupArgs[0].index}.type`) !== 'function';\n }}\n />,\n <div\n className={style['function-default-value']}\n name=\"defaultValue\"\n label=\"默认值\"\n display={({ formData, groupArgs }) => {\n return get(formData.props, `${groupArgs[0].index}.type`) === 'function';\n }}>\n {'()=>null'}\n </div>\n ]}\n />\n </Form>\n )\n },\n {\n key: 'scope',\n label: '组件域',\n children: (\n <Form\n ref={scopeFormRef}\n data={{\n scope: Object.keys(scope).map(name => {\n const item = scope[name];\n return {\n name,\n token: item\n };\n })\n }}\n onSubmit={formData => {\n setParams(params => {\n return Object.assign({}, params, {\n scope: transform(\n formData.scope,\n (result, value) => {\n result[value.name] = value.token;\n },\n {}\n )\n });\n });\n }}>\n <TableList\n title=\"域列表\"\n name=\"scope\"\n list={[<Input name=\"name\" label=\"变量名\" rule=\"REQ LEN-0-100\" />, <Input name=\"token\" label=\"Token\" rule=\"REQ LEN-0-100\" />]}\n />\n </Form>\n )\n },\n {\n key: 'content',\n label: '组件内容',\n children: (\n <Flex vertical gap={12}>\n <Collapse\n size=\"small\"\n items={[\n {\n key: 'refer',\n label: '引用参考',\n children: (\n <Alert\n message={\n <InfoPage>\n <CentralContent\n dataSource={{ props, scope }}\n col={1}\n columns={[\n {\n name: 'props',\n title: '可使用参数',\n getValueOf: item => {\n return Object.keys(item.props)\n .map(str => `props.${str}`)\n .join(',');\n }\n },\n {\n name: 'scope',\n title: '可使用组件',\n getValueOf: item => {\n return ['Antd', ...Object.keys(item.scope)].join(',');\n }\n },\n {\n name: 'lib',\n title: '可使用库',\n getValueOf: () => {\n return Object.keys(libs).join(',');\n }\n }\n ]}\n />\n </InfoPage>\n }\n />\n )\n }\n ]}\n />\n {mod === 'editor' && editor}\n {mod === 'mix' && (\n <Splitter>\n <Splitter.Panel>{editor}</Splitter.Panel>\n <Splitter.Panel>{preview}</Splitter.Panel>\n </Splitter>\n )}\n {mod === 'preview' && preview}\n </Flex>\n )\n }\n ]}\n />\n );\n })\n);\n\nexport default LiveComponentEditor;\n","var _path, _path2;\nconst _excluded = [\"title\", \"titleId\"];\nfunction _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }\nfunction _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }\nfunction _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }\nimport * as React from \"react\";\nfunction SvgImgFail(_ref, svgRef) {\n let {\n title,\n titleId\n } = _ref,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n t: 1695715120961,\n className: \"icon\",\n viewBox: \"0 0 1024 1024\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"p-id\": 2413,\n xmlnsXlink: \"http://www.w3.org/1999/xlink\",\n width: 200,\n height: 200,\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M696.43 465.25c40.61 0 73.53-32.72 73.53-73.09s-32.96-73.08-73.53-73.08-73.54 32.72-73.54 73.08 32.92 73.09 73.54 73.09zM535.74 650.62l-273.61-259.4a56.19 56.19 0 0 0-15.36 11.58l-114 119.63-6-222.77c-0.73-26.82 20.84-49.41 47.67-50.14l201.77-5.44 47.34-50-250.43 6.75C119 202.33 76.33 247.17 77.78 301l7.32 271.4 4.5 166.78C91.06 793 136.05 835.47 190.2 834l176-4.75 12-0.32 47.34-50 116.18-122.64z\",\n \"p-id\": 2414\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M861.71 214.8l-242.83-33.86-55.09 41.46L855 263a49.05 49.05 0 0 1 41.79 55.13l-54.33 389.59-120.87-159.05A59.86 59.86 0 0 0 638.06 537l-44 33.08 65.07 86.15L603.84 698l-79.57 60.1-54.92 41.48 34.17 4.76 270.73 37.76a97.55 97.55 0 0 0 109.88-79.6 22.37 22.37 0 0 0 0.65-3.44l60.53-434.16c7.44-53.32-29.95-102.62-83.6-110.1z\",\n \"p-id\": 2415\n })));\n}\nconst ForwardRef = /*#__PURE__*/React.forwardRef(SvgImgFail);\nexport default __webpack_public_path__ + \"static/media/img_fail.92f698baf5c5ad60bf4437eb46f9525a.svg\";\nexport { ForwardRef as ReactComponent };","import imgFail from './img_fail.svg';\n\nconst resizeBase64Image = (base64, width, height) => {\n return new Promise((resolve, reject) => {\n const img = new Image();\n img.src = base64;\n\n img.onload = function () {\n // 创建一个 Canvas 元素\n const canvas = document.createElement('canvas');\n const ctx = canvas.getContext('2d');\n\n const wRatio = img.width / width,\n hRatio = img.height / height;\n const ratio = Math.max(wRatio, hRatio, 1);\n\n // 设置 Canvas 的宽度和高度为缩放后的尺寸\n canvas.width = img.width / ratio;\n canvas.height = img.height / ratio;\n\n // 将图片绘制到 Canvas 上,并缩放\n ctx.drawImage(img, 0, 0, canvas.width, canvas.height);\n\n // 从 Canvas 中获取缩放后的图片数据,并将其转换为 Base64 格式\n const resizedBase64 = canvas.toDataURL('image/png'); // 可以根据需要更改图片格式\n // 调用回调函数,返回缩放后的 Base64 图片\n resolve(resizedBase64);\n };\n\n img.onerror = function (error) {\n reject(error);\n };\n });\n};\n\nclass OssUploadAdapter {\n constructor(loader, options) {\n this.loader = loader;\n this.options = options;\n this.base64MaxWidth = options.base64MaxWidth || 600;\n this.base64MaxHeight = options.base64MaxHeight || 600;\n }\n\n async upload() {\n const file = await this.loader.file;\n if (typeof this.options.upload !== 'function') {\n console.warn('当前图片上传为base64模式,正式环境请在preset apis设置file.upload,或者给CKEditor组件传入 config.ossUpload.upload参数');\n const data = await new Promise(resolve => {\n const fileReader = new FileReader();\n fileReader.onload = () => {\n resolve(fileReader.result);\n };\n fileReader.readAsDataURL(file);\n });\n\n return {\n default: await resizeBase64Image(data, this.base64MaxWidth, this.base64MaxHeight)\n };\n }\n const { data: resData } = await this.options.upload({ file });\n if (resData.code !== 0) {\n this.options.message.error(resData.msg);\n return { default: imgFail };\n }\n return {\n default: resData.data\n };\n }\n}\n\nfunction OssUploadAdapterPlugin(editor) {\n const message = editor.config.get('message');\n const options = Object.assign({}, { message }, editor.config.get('uploadAdapter'));\n editor.plugins.get('FileRepository').createUploadAdapter = loader => {\n return new OssUploadAdapter(loader, options);\n };\n editor.editing.view.document.on('clipboardInput', (evt, data) => {\n if (editor.isReadOnly) {\n return;\n }\n\n const dataTransfer = data.dataTransfer;\n const html = dataTransfer.getData('text/html');\n const parser = new DOMParser();\n const domDocument = parser.parseFromString(html, 'text/html');\n if (domDocument.querySelectorAll('img').length === 0) {\n return;\n }\n data.content = editor.data.htmlProcessor.toView('');\n const loadingClose = message.loading('粘贴内容中含有图片,正在进行图片上传...', { duration: 0 });\n Promise.all(\n [].slice.call(domDocument.querySelectorAll('img'), 0).map(async img => {\n if (typeof options.uploadUrl !== 'function') {\n console.warn('图片上传失败,请在preset apis设置file.uploadUrl,或者给CKEditor组件传入 config.ossUpload.uploadUrl参数');\n return;\n }\n const { code, data, msg } = await options.uploadUrl({ url: img.src });\n if (code !== 0) {\n console.warn(`图片上传失败,${msg}`);\n img.src = imgFail;\n return;\n }\n img.src = data;\n })\n )\n .then(() => {\n editor.model.insertContent(editor.data.toModel(editor.data.htmlProcessor.toView(domDocument.documentElement.outerHTML)));\n })\n .finally(() => {\n loadingClose();\n });\n });\n}\n\nexport default OssUploadAdapterPlugin;\n","// extracted by mini-css-extract-plugin\nexport default {\"editor\":\"style_editor__lqh2n__Glq7o\"};","import { useMemo } from 'react';\nimport { CKEditor as CKEditor5 } from '@ckeditor/ckeditor5-react';\nimport { ClassicEditor } from 'ckeditor5';\nimport { createWithRemoteLoader } from '@kne/remote-loader';\nimport {\n Alignment,\n Autoformat,\n Essentials,\n Paragraph,\n Bold,\n Italic,\n Strikethrough,\n Subscript,\n Superscript,\n Underline,\n BlockQuote,\n CodeBlock,\n FontBackgroundColor,\n FontColor,\n FontSize,\n Heading,\n Highlight,\n HorizontalLine,\n HtmlEmbed,\n AutoImage,\n Image,\n ImageCaption,\n ImageResize,\n ImageStyle,\n ImageToolbar,\n ImageUpload,\n Indent,\n IndentBlock,\n AutoLink,\n Link,\n LinkImage,\n List,\n ListProperties,\n TodoList,\n MediaEmbed,\n PageBreak,\n PasteFromOffice,\n RemoveFormat,\n SourceEditing,\n SpecialCharacters,\n SpecialCharactersArrows,\n SpecialCharactersCurrency,\n SpecialCharactersEssentials,\n SpecialCharactersText,\n Table,\n TableCellProperties,\n TableColumnResize,\n TableProperties,\n TableToolbar,\n TextTransformation,\n WordCount,\n Style,\n GeneralHtmlSupport,\n SelectAll,\n Markdown\n} from 'ckeditor5';\nimport coreTranslationsZh from 'ckeditor5/translations/zh-cn';\nimport coreTranslationsEn from 'ckeditor5/translations/en';\nimport { useGlobalValue, usePreset } from '@kne/global-context';\nimport 'ckeditor5/ckeditor5.css';\nimport classnames from 'classnames';\nimport OssUploadAdapterPlugin from './OssUploadAdapterPlugin';\nimport useControlValue from '@kne/use-control-value';\nimport merge from 'lodash/merge';\nimport style from './style.module.scss';\nimport './ckeditor5-content.css';\nimport './ckeditor.scss';\n\nconst defaultPlugins = [\n Alignment,\n AutoImage,\n AutoLink,\n Autoformat,\n BlockQuote,\n Bold,\n CodeBlock,\n Essentials,\n FontBackgroundColor,\n FontColor,\n FontSize,\n Heading,\n Highlight,\n HorizontalLine,\n HtmlEmbed,\n Image,\n ImageCaption,\n ImageResize,\n ImageStyle,\n ImageToolbar,\n ImageUpload,\n LinkImage,\n Indent,\n IndentBlock,\n Italic,\n Strikethrough,\n Link,\n List,\n ListProperties,\n MediaEmbed,\n PageBreak,\n Paragraph,\n PasteFromOffice,\n RemoveFormat,\n SourceEditing,\n SpecialCharacters,\n SpecialCharactersArrows,\n SpecialCharactersCurrency,\n SpecialCharactersEssentials,\n SpecialCharactersText,\n Subscript,\n Superscript,\n Table,\n TableCellProperties,\n TableColumnResize,\n TableProperties,\n TableToolbar,\n TextTransformation,\n TodoList,\n Underline,\n WordCount,\n GeneralHtmlSupport,\n Style,\n SelectAll,\n OssUploadAdapterPlugin\n];\n\nconst defaultConfig = {\n toolbar: {\n items: [\n 'undo',\n 'redo',\n '|',\n 'heading',\n 'style',\n '|',\n 'bold',\n 'italic',\n 'underline',\n 'strikethrough',\n 'link',\n 'bulletedList',\n 'numberedList',\n 'todoList',\n 'fontBackgroundColor',\n 'fontColor',\n 'fontSize',\n '|',\n 'alignment',\n 'pageBreak',\n 'outdent',\n 'indent',\n '|',\n 'specialCharacters',\n 'subscript',\n 'superscript',\n '|',\n 'imageUpload',\n 'blockQuote',\n 'insertTable',\n 'codeBlock',\n 'htmlEmbed',\n 'highlight',\n 'horizontalLine',\n '|',\n 'selectAll',\n 'removeFormat',\n 'sourceEditing'\n ]\n },\n list: {\n properties: {\n styles: true,\n startIndex: true,\n reversed: true\n }\n },\n style: {\n definitions: [\n {\n name: 'Headings',\n element: 'h2',\n classes: ['primary-part-title']\n },\n {\n name: 'Subheadings',\n element: 'h3',\n classes: ['part-title']\n },\n {\n name: 'Paragraph',\n element: 'p',\n classes: ['part-content']\n },\n {\n name: 'Card',\n element: 'p',\n classes: ['card']\n },\n {\n name: 'Primary Card',\n element: 'p',\n classes: ['primary-card']\n },\n {\n name: 'Keywords',\n element: 'span',\n classes: ['key-word']\n }\n ]\n },\n image: {\n toolbar: [\n 'imageTextAlternative',\n 'toggleImageCaption',\n 'imageStyle:inline',\n 'imageStyle:block',\n 'imageStyle:side',\n '|',\n 'resizeImage:25',\n 'resizeImage:50',\n 'resizeImage:75',\n 'resizeImage:original',\n '|',\n 'linkImage'\n ]\n },\n table: {\n contentToolbar: ['tableColumn', 'tableRow', 'mergeTableCells', 'tableCellProperties', 'tableProperties']\n },\n htmlSupport: {\n allow: [\n { name: 'div', classes: true, styles: true },\n {\n name: 'section',\n classes: ['component-box'],\n styles: true,\n attributes: true\n }\n ]\n }\n};\n\nconst CKEditorField = ({ className, isMarkdown, config, plugins: customPlugins = [], locale: customLocale, uploadAdapter, ...props }) => {\n const [value, onChange] = useControlValue(props);\n const contextLocale = useGlobalValue('locale');\n const { apis } = usePreset();\n const locale = customLocale || contextLocale;\n const plugins = useMemo(() => {\n const plugins = [...defaultPlugins, ...customPlugins];\n if (isMarkdown) {\n plugins.push(Markdown);\n }\n return plugins;\n }, [isMarkdown, customPlugins]);\n return (\n <div className={classnames(className, style['editor'])}>\n <CKEditor5\n editor={ClassicEditor}\n data={value}\n config={merge({}, defaultConfig, config, {\n licenseKey: 'GPL',\n plugins,\n translations: [locale === 'zh-CN' ? coreTranslationsZh : coreTranslationsEn],\n uploadAdapter: Object.assign(\n {},\n {\n upload: apis?.file?.upload,\n uploadUrl: apis?.file?.uploadUrl\n },\n uploadAdapter\n )\n })}\n onChange={(event, editor) => {\n const data = editor.getData();\n onChange(data);\n }}\n />\n </div>\n );\n};\n\nconst CKEditor = createWithRemoteLoader({\n modules: ['components-core:FormInfo@hooks']\n})(({ remoteModules, ...props }) => {\n const [hooks] = remoteModules;\n const { useDecorator } = hooks;\n const render = useDecorator(Object.assign({}, props));\n return render(CKEditorField);\n});\n\nCKEditor.Field = CKEditorField;\n\nconst CKContent = ({ className, children }) => {\n return <div className={classnames('ck ck-content', className)} dangerouslySetInnerHTML={{ __html: children }} />;\n};\n\nCKEditor.Content = CKContent;\n\nexport default CKEditor;\n","import MonacoEditor, { loader } from '@monaco-editor/react';\nimport ensureSlash from '@kne/ensure-slash';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\n\nif (window.MONACO_EDITOR_DIR) {\n loader.config({ paths: { vs: `${ensureSlash(window.MONACO_EDITOR_DIR)}/min/vs` } });\n}\n\nconst CodeEditor = forwardRef((props, ref) => {\n const apiRef = useRef({});\n useImperativeHandle(\n ref,\n () => ({\n getValue: () => {\n return apiRef.current.editor.getValue();\n },\n setValue: value => {\n apiRef.current.editor.setValue(value);\n },\n getEditor: () => apiRef.current.editor,\n getMonaco: () => apiRef.current.monaco\n }),\n []\n );\n return (\n <MonacoEditor\n {...Object.assign({}, { height: 500 }, props)}\n onMount={(editor, monaco) => {\n apiRef.current = { editor, monaco };\n }}\n />\n );\n});\n\nexport default CodeEditor;\n","import * as component_4 from '@components/LiveComponentEditor';\nimport * as component_5 from 'antd';\nconst readmeConfig = {\n name: `LiveComponentEditor`,\n summary: `<h3>组件概述</h3>\n<p>LiveComponentEditor 是一个实时的组件编辑器,允许用户在运行时动态编辑和预览 React 组件。该组件提供了代码编辑、参数配置、作用域管理等功能,并支持多种布局模式。</p>\n<h3>主要特性</h3>\n<ul>\n<li>实时代码编辑和预览</li>\n<li>组件参数可视化配置</li>\n<li>自定义作用域管理</li>\n<li>三种布局模式:编辑器、混合、预览</li>\n<li>支持 PlantUML 编码的数据存储</li>\n<li>集成 FormInfo 进行参数管理</li>\n<li>错误边界保护</li>\n<li>支持 Antd 组件库集成</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于组件开发工具、在线代码编辑器、组件演示平台、教学工具等需要实时编辑和预览 React 组件的场景。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>defaultValue</td>\n<td>string</td>\n<td>-</td>\n<td>默认组件配置(PlantUML 编码)</td>\n</tr>\n<tr>\n<td>defaultMod</td>\n<td>string</td>\n<td>'mix'</td>\n<td>默认显示模式</td>\n</tr>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>500</td>\n<td>编辑器和预览区域高度</td>\n</tr>\n<tr>\n<td>libs</td>\n<td>object</td>\n<td>{ lodash, dayjs }</td>\n<td>可用库集合</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>配置变化回调函数</td>\n</tr>\n</tbody>\n</table>\n<h4>显示模式 (mod)</h4>\n<table>\n<thead>\n<tr>\n<th>模式值</th>\n<th>说明</th>\n<th>图标</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>editor</td>\n<td>仅显示编辑器</td>\n<td>MenuOutlined</td>\n</tr>\n<tr>\n<td>mix</td>\n<td>编辑器和预览分屏显示</td>\n<td>SplitCellsOutlined</td>\n</tr>\n<tr>\n<td>preview</td>\n<td>仅显示预览</td>\n<td>EyeOutlined</td>\n</tr>\n</tbody>\n</table>\n<h4>组件配置结构</h4>\n<pre><code class=\"language-javascript\">// 通过 PlantUML 编码的配置对象结构\n{\n content: \"React组件代码字符串\", // 组件内容\n props: { // 组件参数\n propName: {\n type: \"string|number|boolean|array|object|function\",\n defaultValue: \"默认值\"\n }\n },\n scope: { // 自定义作用域\n scopeName: \"token\" // 组件名称\n }\n}\n</code></pre>\n<h4>可用类型说明</h4>\n<table>\n<thead>\n<tr>\n<th>类型</th>\n<th>说明</th>\n<th>默认值格式</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>string</td>\n<td>字符串类型</td>\n<td>直接字符串值</td>\n</tr>\n<tr>\n<td>number</td>\n<td>数字类型</td>\n<td>数字值</td>\n</tr>\n<tr>\n<td>boolean</td>\n<td>布尔类型</td>\n<td>true/false</td>\n</tr>\n<tr>\n<td>array</td>\n<td>数组类型</td>\n<td>JSON 字符串</td>\n</tr>\n<tr>\n<td>object</td>\n<td>对象类型</td>\n<td>JSON 字符串</td>\n</tr>\n<tr>\n<td>function</td>\n<td>函数类型</td>\n<td>固定为 \" ()=&gt;null \"</td>\n</tr>\n</tbody>\n</table>\n<h4>集成功能</h4>\n<ul>\n<li><strong>CodeEditor</strong>: 基于 Monaco Editor 的代码编辑器</li>\n<li><strong>LiveComponentView</strong>: 实时组件渲染和预览</li>\n<li><strong>FormInfo</strong>: 参数管理和表单配置</li>\n<li><strong>Antd</strong>: UI 组件库支持</li>\n<li><strong>lodash</strong>: 工具函数库</li>\n<li><strong>dayjs</strong>: 日期处理库</li>\n</ul>\n<h4>注意事项</h4>\n<ul>\n<li>函数类型参数仅支持占位符,无法编辑实际函数内容</li>\n<li>组件代码会自动包装在 ErrorBoundary 中进行错误保护</li>\n<li>支持使用 props.* 和 scope.* 中的变量和组件</li>\n</ul>`,\n example: {\n isFull: false,\n className: `LiveComponentEditor_b511b`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: LiveComponentEditor } = _LiveComponentEditor;\nconst { Flex, Alert, Input } = antd;\nconst { useState, useRef } = React;\nconst BaseExample = () => {\n const ref = useRef(null);\n const [value, setValue] = useState(\n 'xLLTIzn05FqhOLvysI_xLCBkWXKjWXHQIr-QFcHdxzhKsPamcSXA22YbeCAoWjikY53i1rqgLHz4ohxuPpPnzrzq9cvYqgwMqbVd9RbtxZdSStCouo7Cg00ga8xASrJK2ui4MjewS65XasYhfbtnPX_uLODgSfKN6MykqGRJX2K8L3oRCzifH86l4SiH5U_bTMcclD2mWDITmXArNQ5HimaL0wc7WJHYre38CFYs7-orPOAxH6q_MtYgBIyyoPVoiwMIWOhLt1t4Aq009ynri4qkcb9MYd_yjZ_kzJFyCc2si1XrCcshvKKmVIRStGmFJoLs9hTk4XTq0oKf0_cvwQXnTpFedcHGIKgYRa2l_BjrpRy6l5PZhSUSkRPM8molnI8j-TquE6c9mRlpqSNdlwkIbLi7uwy_39Iq5oTkKIHLd_UkFlLIY3XnEs9dFzmv3jh7LzsFQLmc_G-pU0ujCSV1p8wX3WxcLgGtDOcmqnbTdYdNN1CgxjyiN5YMTftuMEhVxesE-k7xix1z8dacvChHYlNUsFV6_ZzZ_s73cyFsZUi8gx4XPM9GqgNCwDXz69-wsG6kkBMc9HwvGZ1Q3Jjxmy6NSd7wxZJul4ana4b1qFaGNcodu9dTIQV5f5MPIKSeXnpCR42wXs86UOzWrdHiHgMMF6OSz6JBpw7elb3rqN-dNkhGC5qYNgWXIl3mv_VXO32yF0gtJYM_s53qo17Segl8z_rV'\n );\n return (\n <Flex vertical gap={12}>\n <Alert message={<Input.TextArea variant=\"borderless\" autoSize value={value || ''} onChange={e => ref.current.setValue(e.target.value)} />} />\n <LiveComponentEditor defaultValue={value} onChange={setValue} ref={ref} />\n </Flex>\n );\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_LiveComponentEditor\",\n packageName: \"@components/LiveComponentEditor\",\n component: component_4\n},{\n name: \"antd\",\n packageName: \"antd\",\n component: component_5\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_10 from '@components/LiveComponentView';\nconst readmeConfig = {\n name: `LiveComponentView`,\n summary: `<h3>组件概述</h3>\n<p>LiveComponentView 是一个动态组件渲染器,能够实时渲染和执行用户提供的 React 组件代码。该组件通过 Babel 转译器将代码转换为可执行的 JavaScript,并在沙箱环境中安全运行。</p>\n<h3>主要特性</h3>\n<ul>\n<li>实时渲染 React 组件代码</li>\n<li>支持 ES6+ 语法转译</li>\n<li>错误边界保护和错误显示</li>\n<li>支持自定义组件容器</li>\n<li>集成主题和国际化</li>\n<li>支持组件参数注入</li>\n<li>沙箱环境安全执行</li>\n<li>支持多个远程模块加载</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于代码演示平台、在线编程环境、组件文档展示、教学系统等需要动态执行和渲染 React 代码的场景。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>content</td>\n<td>string</td>\n<td>-</td>\n<td>组件配置(PlantUML 编码,必需)</td>\n</tr>\n<tr>\n<td>props</td>\n<td>object</td>\n<td>-</td>\n<td>注入到组件的属性</td>\n</tr>\n<tr>\n<td>libs</td>\n<td>object</td>\n<td>-</td>\n<td>可用库集合,在组件运行环境中使用</td>\n</tr>\n</tbody>\n</table>\n<h4>输入格式 (content)</h4>\n<p>content 需要通过 PlantUML 编码,解码后的对象结构:</p>\n<pre><code class=\"language-javascript\">{\n content: \"React组件代码\", // 要渲染的 JSX 代码\n props: { // 组件默认属性\n propName: {\n type: \"string|number|boolean|array|object|function\",\n defaultValue: \"默认值\"\n }\n },\n scope: { // 可用组件模块\n componentName: \"moduleToken\"\n }\n}\n</code></pre>\n<h4>内置可用库</h4>\n<p>组件运行环境中内置了以下库:</p>\n<table>\n<thead>\n<tr>\n<th>库名称</th>\n<th>用途</th>\n<th>导入方式</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>React</td>\n<td>React 核心</td>\n<td>内置可用</td>\n</tr>\n<tr>\n<td>Antd</td>\n<td>UI 组件库</td>\n<td>全局可用</td>\n</tr>\n<tr>\n<td>lodash</td>\n<td>工具函数</td>\n<td>全局可用</td>\n</tr>\n<tr>\n<td>dayjs</td>\n<td>日期处理</td>\n<td>全局可用</td>\n</tr>\n</tbody>\n</table>\n<h4>错误处理</h4>\n<p>当组件执行出错时,会显示错误信息:</p>\n<pre><code class=\"language-javascript\">const ErrorComponent = ({ error }) =&gt; {\n return (\n &lt;div className=\"error-message\"&gt;\n &lt;pre&gt;{error}&lt;/pre&gt;\n &lt;/div&gt;\n );\n};\n</code></pre>\n<h4>远程模块加载</h4>\n<p>支持通过 scope 配置加载远程模块,模块会在组件执行前动态加载并注入到运行环境中。</p>\n<h4>安全特性</h4>\n<ul>\n<li>代码在 ErrorBoundary 保护下执行</li>\n<li>支持主题和上下文隔离</li>\n<li>渲染结束后自动清理 DOM</li>\n<li>支持组件卸载时的资源清理</li>\n</ul>`,\n example: {\n isFull: false,\n className: `LiveComponentView_8b922`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:LiveComponentView} = _LiveComponentView;\nconst BaseExample = ()=>{\n return <LiveComponentView content=\"bPHTQnD158R_oZ8ttKAQn3k9JQ3MLYfIFz8xrul9vYIEtPrPTcRRb6MXHGGhb1GQ38WWVc6nQBqeHNBJFvFTDl_2cIJx1Md5kSdiUyvpSjwp9_6HoQW0Ab05BQuorrwZBLPK5utHkjUmYQZwcEzGKzDRKhs71Pwlrdo3QlBWRKo4Hc5RU-moct3GTHSuixOWpL67WzWWDZ1Fw7e-eiuKqUVlf7fGk5KkbsCbY2zBL3IBDd2Esr0aibNzGVtHUf4Bbz0sQUsaFIeY26eJB76c2I8ig1fe-EV7S30ONdoAzauDf5c4Iv_FqkzFPz4YO3LvSOqwdhIARKMh3qNX1bZoCVn-51uUIC7rniMVhZpH7gwiBvGNf0a3bMg56mhNmG8pgTm41xl2bYyaKt_qwdZKFyxLbm_C4OHHdcjR7N-CLUQYjxlHXrF9pXMsiEL1nK29PA2WC9iQzNR3tgySbKYIIg7dmSs-bb-0kTbWdVikynojOJ5pCpP9vCR9bvwr6Bu-kph_yczNCdFl_UZRJmCbxSN2DOwawxF-vUT-XeY5wudzesZ_93mukUnzp78v-JzciG4TiUG2pe-X2TnqoTXlPX9HjtjryLjjpQIWgZtTul7shrhGqLvwNCXrb-acg65AlesTgdyxtlXy6vCVybrF24PhKVTmEFYwM9eTdOKlOsg2DKq8k--YypSPF1UTTbfAMfLA9bTTQgY0kCaSG1KVnH7vzsCocpkCIZyB9dEXaeI2u2y0\"/>;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_LiveComponentView\",\n packageName: \"@components/LiveComponentView\",\n component: component_10\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_1 from '@components/Calendar';\nconst readmeConfig = {\n name: `Calendar`,\n summary: `<h3>组件概述</h3>\n<p>Calendar 是一个基于 FullCalendar 的日历组件,提供了丰富的日历展示和交互功能。该组件支持多种视图模式(月视图、周视图、日视图、列表视图),并集成了拖拽、点击等交互操作。</p>\n<h3>主要特性</h3>\n<ul>\n<li>支持多种视图模式:月视图、周视图、日视图、列表视图</li>\n<li>自动调整大小,响应式设计</li>\n<li>中文本地化支持</li>\n<li>事件内容工具提示显示</li>\n<li>自定义事件渲染</li>\n<li>支持日期点击和事件点击回调</li>\n<li>集成 dayjs 进行日期处理</li>\n<li>可配置的工具栏按钮</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于需要展示和管理日程安排的各类应用,如会议管理系统、活动预约平台、个人日程管理等场景。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>className</td>\n<td>string</td>\n<td>-</td>\n<td>自定义样式类名</td>\n</tr>\n<tr>\n<td>initialView</td>\n<td>string</td>\n<td>'dayGridMonth'</td>\n<td>初始视图模式</td>\n</tr>\n<tr>\n<td>aspectRatio</td>\n<td>number</td>\n<td>1.6</td>\n<td>日历宽高比</td>\n</tr>\n<tr>\n<td>weekends</td>\n<td>boolean</td>\n<td>true</td>\n<td>是否显示周末</td>\n</tr>\n<tr>\n<td>slotEventOverlap</td>\n<td>boolean</td>\n<td>false</td>\n<td>时间槽事件是否允许重叠</td>\n</tr>\n<tr>\n<td>displayEventEnd</td>\n<td>boolean</td>\n<td>true</td>\n<td>是否显示事件结束时间</td>\n</tr>\n<tr>\n<td>editable</td>\n<td>boolean</td>\n<td>false</td>\n<td>事件是否可编辑</td>\n</tr>\n<tr>\n<td>firstDay</td>\n<td>number</td>\n<td>1</td>\n<td>一周的第一天(0=周日,1=周一)</td>\n</tr>\n<tr>\n<td>headerToolbar</td>\n<td>object</td>\n<td>见下方</td>\n<td>工具栏配置</td>\n</tr>\n<tr>\n<td>buttonText</td>\n<td>object</td>\n<td>见下方</td>\n<td>按钮文本配置</td>\n</tr>\n<tr>\n<td>dayMinWidth</td>\n<td>number</td>\n<td>100</td>\n<td>日单元格最小宽度</td>\n</tr>\n<tr>\n<td>locale</td>\n<td>string</td>\n<td>'zh-cn'</td>\n<td>语言本地化</td>\n</tr>\n<tr>\n<td>height</td>\n<td>string</td>\n<td>'auto'</td>\n<td>日历高度</td>\n</tr>\n<tr>\n<td>handleWindowResize</td>\n<td>boolean</td>\n<td>false</td>\n<td>是否处理窗口大小变化</td>\n</tr>\n<tr>\n<td>dateClick</td>\n<td>function</td>\n<td>() =&gt; {}</td>\n<td>日期点击回调</td>\n</tr>\n<tr>\n<td>eventClick</td>\n<td>function</td>\n<td>() =&gt; {}</td>\n<td>事件点击回调</td>\n</tr>\n<tr>\n<td>eventContent</td>\n<td>function</td>\n<td>自定义渲染</td>\n<td>事件内容渲染函数</td>\n</tr>\n<tr>\n<td>initialDate</td>\n<td>string</td>\n<td>当前日期</td>\n<td>初始日期</td>\n</tr>\n</tbody>\n</table>\n<h4>默认配置</h4>\n<pre><code class=\"language-javascript\">// headerToolbar 默认配置\n{\n left: 'prev,next today',\n center: 'title', \n right: 'dayGridMonth,timeGridWeek,timeGridDay,listWeek'\n}\n\n// buttonText 默认配置\n{\n today: '今天',\n month: '月',\n week: '周', \n day: '天'\n}\n</code></pre>\n<h4>Ref 方法</h4>\n<p>通过 ref 可以获取 FullCalendar 的 API 实例,支持调用所有 FullCalendar 的原生方法。</p>`,\n example: {\n isFull: false,\n className: `Calendar_8ff92`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: Calendar } = _Calendar;\nconst BaseExample = () => {\n return <Calendar />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_Calendar\",\n packageName: \"@components/Calendar\",\n component: component_1\n}]\n}]\n }\n};\nexport default readmeConfig;\n","// extracted by mini-css-extract-plugin\nexport default {\"error-message\":\"style_error-message__5udgI__Glq7o\"};","import React, { useEffect, useMemo, memo, useCallback, useState, useRef } from 'react';\nimport { decode } from 'plantuml-encoder';\nimport { withRemoteLoader } from '@kne/remote-loader';\nimport ErrorBoundary from '@kne/react-error-boundary';\nimport { transform as _transform } from '@babel/standalone';\nimport transform from 'lodash/transform';\nimport debounce from 'lodash/debounce';\nimport * as Antd from 'antd';\nimport { Flex, Spin } from 'antd';\nimport style from './style.module.scss';\n\nconst ErrorComponent = memo(({ error }) => {\n return (\n <div className={style['error-message']}>\n <pre>{error}</pre>\n </div>\n );\n});\n\nconst LiveComponent = withRemoteLoader(({ remoteModules, children, props, libs = {} }) => {\n const [error, setError] = useState(null);\n const [renderJsx, setRenderJsx] = useState(null);\n const [compiledCode, setCompiledCode] = useState(null);\n \n const { content, moduleNames } = children;\n const scope = useMemo(() => {\n return transform(\n remoteModules,\n (result, module, index) => {\n result[moduleNames[index]] = module;\n },\n {}\n );\n }, [remoteModules, moduleNames]);\n\n // 预计算 libs keys 和 values\n const libKeys = useMemo(() => Object.keys(libs), [libs]);\n const libValues = useMemo(() => Object.values(libs), [libs]);\n\n // 拆分 useEffect: 1) 编译代码 (content 变化时)\n useEffect(() => {\n if (!content) {\n setCompiledCode(null);\n return;\n }\n \n try {\n setError(null);\n const code = _transform(`render(${content});`, { presets: ['es2015', 'react'] }).code;\n setCompiledCode(code);\n } catch (e) {\n setError(e);\n setCompiledCode(null);\n }\n }, [content]);\n\n // 拆分 useEffect: 2) 渲染组件 (scope/moduleNames/libs 变化时,不需要重新编译)\n useEffect(() => {\n if (!compiledCode) return;\n\n try {\n setError(null);\n // eslint-disable-next-line no-new-func\n const runnerFunction = new Function('React', 'render', 'props', 'Antd', ...libKeys, ...moduleNames, compiledCode);\n const newModuleScopeValues = moduleNames.map(name => scope[name]);\n runnerFunction(React, jsx => setRenderJsx(jsx), props, Antd, ...libValues, ...newModuleScopeValues);\n } catch (e) {\n setError(e);\n }\n }, [compiledCode, scope, moduleNames, props, libKeys, libValues]);\n\n return (\n <Flex vertical>\n <ErrorBoundary errorComponent={ErrorComponent}>{moduleNames.length !== remoteModules.length ? <Spin /> : renderJsx}</ErrorBoundary>\n {error && <ErrorComponent error={error.message} />}\n </Flex>\n );\n});\n\nconst LiveComponentView = ({ content: inputStr, props: componentProps, libs }) => {\n const { content, props, scope, error } = useMemo(() => {\n try {\n if (!inputStr) {\n return { content: '', scope: {}, props: {}, error: null };\n }\n const { content, props, scope } = JSON.parse(decode(inputStr));\n\n return Object.assign(\n {},\n {\n content: content || '',\n scope: Object.assign({}, scope),\n props: Object.assign(\n {},\n props &&\n transform(\n props,\n (result, value, name) => {\n result[name] = (() => {\n if (['array', 'object', 'boolean', 'number'].indexOf(value.type) > -1) {\n return JSON.parse(value.defaultValue);\n }\n if (value.type === 'string') {\n return value.defaultValue;\n }\n if (value.type === 'function') {\n return () => null;\n }\n })();\n },\n {}\n )\n ),\n error: null\n }\n );\n } catch (e) {\n return { error: e.message || '参数无法解析' };\n }\n }, [inputStr]);\n \n const targetProps = useMemo(() => {\n return Object.assign({}, props, componentProps);\n }, [componentProps, props]);\n\n const { children, modules } = useMemo(() => {\n const moduleNames = Object.keys(scope);\n return {\n modules: ['components-core:Global@PureGlobal'].concat(moduleNames.map(name => scope[name])),\n children: { content, moduleNames: ['PureGlobal'].concat(moduleNames) }\n };\n }, [scope]); // 只依赖 scope,不需要依赖 content\n\n if (error) {\n return <ErrorComponent error={error} />;\n }\n\n return <LiveComponent props={targetProps} libs={libs} modules={modules} children={children} />;\n};\n\nconst LiveComponentsViewCatch = memo(props => {\n return (\n <ErrorBoundary errorComponent={ErrorComponent}>\n <LiveComponentView {...props} />\n </ErrorBoundary>\n );\n});\n\nexport default LiveComponentsViewCatch;\n","import * as component_2 from '@components/CodeEditor';\nconst readmeConfig = {\n name: `CodeEditor`,\n summary: `<h3>组件概述</h3>\n<p>CodeEditor 是基于 Monaco Editor 的代码编辑器组件,提供了强大的代码编辑功能。Monaco Editor 是 VS Code 的编辑器核心,支持语法高亮、代码补全、错误检测等特性。</p>\n<h3>主要特性</h3>\n<ul>\n<li>支持多种编程语言的语法高亮</li>\n<li>智能代码补全</li>\n<li>错误检测和提示</li>\n<li>可自定义编辑器主题</li>\n<li>支持代码格式化</li>\n<li>可配置的编辑器高度</li>\n<li>支持外部 Monaco Editor 路径配置</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于需要代码编辑功能的应用,如在线编程平台、配置编辑器、代码示例展示、开发工具等场景。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>height</td>\n<td>number</td>\n<td>500</td>\n<td>编辑器高度</td>\n</tr>\n<tr>\n<td>defaultLanguage</td>\n<td>string</td>\n<td>-</td>\n<td>默认编程语言</td>\n</tr>\n<tr>\n<td>defaultValue</td>\n<td>string</td>\n<td>-</td>\n<td>默认代码内容</td>\n</tr>\n<tr>\n<td>value</td>\n<td>string</td>\n<td>-</td>\n<td>受控的代码内容</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>function</td>\n<td>-</td>\n<td>内容变化回调函数</td>\n</tr>\n<tr>\n<td>theme</td>\n<td>string</td>\n<td>-</td>\n<td>编辑器主题</td>\n</tr>\n<tr>\n<td>options</td>\n<td>object</td>\n<td>-</td>\n<td>Monaco Editor 配置选项</td>\n</tr>\n<tr>\n<td>loading</td>\n<td>ReactNode</td>\n<td>-</td>\n<td>自定义加载组件</td>\n</tr>\n<tr>\n<td>path</td>\n<td>string</td>\n<td>-</td>\n<td>文件路径,用于语言检测</td>\n</tr>\n</tbody>\n</table>\n<h4>Ref 方法</h4>\n<p>通过 ref 可以访问编辑器的实例方法:</p>\n<table>\n<thead>\n<tr>\n<th>方法名</th>\n<th>参数</th>\n<th>返回值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>getValue</td>\n<td>-</td>\n<td>string</td>\n<td>获取编辑器内容</td>\n</tr>\n<tr>\n<td>setValue</td>\n<td>value: string</td>\n<td>-</td>\n<td>设置编辑器内容</td>\n</tr>\n<tr>\n<td>getEditor</td>\n<td>-</td>\n<td>Editor</td>\n<td>获取 Monaco Editor 实例</td>\n</tr>\n<tr>\n<td>getMonaco</td>\n<td>-</td>\n<td>Monaco</td>\n<td>获取 Monaco 命名空间</td>\n</tr>\n</tbody>\n</table>\n<h4>全局配置</h4>\n<p>组件支持通过 <code>window.MONACO_EDITOR_DIR</code> 全局变量配置 Monaco Editor 的路径:</p>\n<pre><code class=\"language-javascript\">window.MONACO_EDITOR_DIR = '/path/to/monaco-editor';\n</code></pre>\n<h4>Monaco Editor 常用配置选项</h4>\n<pre><code class=\"language-javascript\">const options = {\n fontSize: 14, // 字体大小\n wordWrap: 'on', // 自动换行\n minimap: { enabled: false }, // 禁用小地图\n scrollBeyondLastLine: false, // 禁止滚动到最后一行之后\n automaticLayout: true // 自动布局\n};\n</code></pre>`,\n example: {\n isFull: false,\n className: `CodeEditor_89ca2`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const {default:CodeEditor} = _CodeEditor;\nconst BaseExample = ()=>{\n return <CodeEditor />;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_CodeEditor\",\n packageName: \"@components/CodeEditor\",\n component: component_2\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import * as component_12 from '@components/LottiePlayer';\nimport * as component_13 from '@components/LottiePlayer/doc/hello_animation.json';\nconst readmeConfig = {\n name: `LottiePlayer`,\n summary: `<h3>组件概述</h3>\n<p>LottiePlayer 是基于 Lottie Web 的动画播放器组件,用于播放 Adobe After Effects 导出的动画文件。该组件支持 JSON 格式的动画数据,提供了流畅的动画播放体验。</p>\n<h3>主要特性</h3>\n<ul>\n<li>支持外部动画文件路径加载</li>\n<li>支持内联动画数据</li>\n<li>可配置循环播放</li>\n<li>支持多种渲染模式:Canvas、SVG、HTML</li>\n<li>自动播放控制</li>\n<li>资源自动清理</li>\n<li>支持自定义样式和属性</li>\n</ul>\n<h3>使用场景</h3>\n<p>适用于需要展示动画效果的应用,如加载动画、交互反馈、数据可视化动画、UI 动画效果等场景。支持从 URL 加载动画文件或直接使用动画数据。</p>`,\n \n \n api: `<h3>API 文档</h3>\n<h4>组件属性</h4>\n<table>\n<thead>\n<tr>\n<th>属性名</th>\n<th>类型</th>\n<th>默认值</th>\n<th>说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>path</td>\n<td>string</td>\n<td>-</td>\n<td>动画文件路径(URL)</td>\n</tr>\n<tr>\n<td>animationData</td>\n<td>object</td>\n<td>-</td>\n<td>动画数据对象(JSON格式)</td>\n</tr>\n<tr>\n<td>loop</td>\n<td>boolean</td>\n<td>true</td>\n<td>是否循环播放</td>\n</tr>\n<tr>\n<td>renderer</td>\n<td>string</td>\n<td>'canvas'</td>\n<td>渲染模式,可选 'canvas'、'svg'、'html'</td>\n</tr>\n<tr>\n<td>autoplay</td>\n<td>boolean</td>\n<td>true</td>\n<td>是否自动播放</td>\n</tr>\n</tbody>\n</table>\n<h4>渲染模式说明</h4>\n<table>\n<thead>\n<tr>\n<th>渲染模式</th>\n<th>说明</th>\n<th>特点</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>canvas</td>\n<td>Canvas 渲染</td>\n<td>性能较好,适合复杂动画</td>\n</tr>\n<tr>\n<td>svg</td>\n<td>SVG 渲染</td>\n<td>矢量图形,支持缩放</td>\n</tr>\n<tr>\n<td>html</td>\n<td>HTML 渲染</td>\n<td>DOM 元素渲染,适合简单动画</td>\n</tr>\n</tbody>\n</table>\n<h4>使用示例</h4>\n<pre><code class=\"language-javascript\">// 使用外部文件\n&lt;LottiePlayer \n path=\"/animations/loading.json\"\n loop={true}\n renderer=\"svg\"\n/&gt;\n\n// 使用内联数据\n&lt;LottiePlayer \n animationData={animationJson}\n loop={false}\n renderer=\"canvas\"\n/&gt;\n</code></pre>\n<h4>注意事项</h4>\n<ul>\n<li>path 和 animationData 必须提供其中一个</li>\n<li>动画文件必须是 Lottie 兼容的 JSON 格式</li>\n<li>组件会自动处理动画的销毁和清理</li>\n</ul>`,\n example: {\n isFull: false,\n className: `LottiePlayer_e80fd`,\n style: ``,\n list: [{\n title: `这里填写示例标题`,\n description: `这里填写示例说明`,\n code: `const { default: LottiePlayer } = _LottiePlayer;\nconst { default: data } = _data;\n\nconsole.log(data);\n\nconst BaseExample = () => {\n return <LottiePlayer animationData={data}/>;\n};\n\nrender(<BaseExample />);\n\n`,\n scope: [{\n name: \"_LottiePlayer\",\n packageName: \"@components/LottiePlayer\",\n component: component_12\n},{\n name: \"_data\",\n packageName: \"@components/LottiePlayer/doc/hello_animation.json\",\n component: component_13\n}]\n}]\n }\n};\nexport default readmeConfig;\n","import lottie from 'lottie-web';\nimport { useEffect, useRef } from 'react';\n\nconst LottiePlayer = ({ path, animationData, loop = true, renderer = 'canvas', ...props }) => {\n const ref = useRef(null);\n useEffect(() => {\n const animation = lottie.loadAnimation({\n container: ref.current,\n renderer,\n loop,\n autoplay: true,\n path,\n animationData\n });\n\n return () => {\n animation.destroy();\n };\n }, [path, animationData, renderer, loop]);\n return <div {...props} ref={ref} />;\n};\n\nexport default LottiePlayer;\n"],"names":["MarkdownComponentsRender","loader","loading","async","getOrLoadRemote","concat","getPublicPath","echarts","window","EchartInner","_ref","data","option","props","_objectWithoutProperties","_excluded","ref","useResize","instanceRef","current","resize","useRef","useEffect","init","setOption","_jsx","_objectSpread","_ref2","error","_excluded2","Fetch","Object","assign","render","_ref3","createWithRemoteLoader","modules","forwardRef","apiRef","remoteModules","className","p","Tooltip","calendarRef","getApi","updateSize","useImperativeHandle","plugins","dayGridPlugin","interactionPlugin","timeGridPlugin","scrollGridPlugin","initialView","aspectRatio","weekends","slotEventOverlap","displayEventEnd","editable","firstDay","headerToolbar","left","center","right","buttonText","today","month","week","day","dayMinWidth","locale","height","handleWindowResize","dateClick","eventClick","eventContent","event","startStr","start","dayjs","format","endStr","end","content","title","children","initialDate","classnames","style","FullCalendar","name","summary","api","example","isFull","list","description","code","scope","packageName","component","SafeRender","useGlobalContext","PureGlobal","global","renderComponent","useState","debounce","themeToken","innerHTML","dom","document","createElement","appendChild","createRoot","preset","defaultValue","defaultMod","libs","lodash","onChange","FormInfo","InfoPage","CentralContent","SimpleBar","Form","TableList","Input","Select","fields","codeEditorRef","params","setParams","JSON","parse","decode","e","console","defaultValueRef","outputContent","useMemo","isEmpty","encode","stringify","activeKey","setActiveKey","handleChange","useRefCallback","setValueDebouncedRef","value","newParams","setValue","leading","trailing","updateContentDebouncedRef","newContent","prevParams","prev","getValue","mod","setMod","propsFormRef","scopeFormRef","editor","CodeEditor","defaultLanguage","preview","maxHeight","LiveComponentView","Tabs","submit","tabBarExtraContent","Segmented","options","label","icon","MenuOutlined","SplitCellsOutlined","EyeOutlined","items","key","keys","map","item","type","onSubmit","formData","transform","result","indexOf","rule","openApi","groupArgs","setTimeout","setField","groupName","groupIndex","index","display","_ref4","get","_ref5","token","_jsxs","Flex","vertical","gap","Collapse","size","Alert","message","dataSource","col","columns","getValueOf","str","join","Splitter","Panel","OssUploadAdapter","constructor","this","base64MaxWidth","base64MaxHeight","upload","file","warn","Promise","resolve","fileReader","FileReader","onload","readAsDataURL","default","base64","width","reject","img","Image","src","canvas","ctx","getContext","wRatio","hRatio","ratio","Math","max","drawImage","resizedBase64","toDataURL","onerror","resizeBase64Image","resData","msg","imgFail","config","createUploadAdapter","editing","view","on","evt","isReadOnly","html","dataTransfer","getData","domDocument","DOMParser","parseFromString","querySelectorAll","length","htmlProcessor","toView","loadingClose","duration","all","slice","call","uploadUrl","url","then","model","insertContent","toModel","documentElement","outerHTML","finally","defaultPlugins","Alignment","AutoImage","AutoLink","Autoformat","BlockQuote","Bold","CodeBlock","Essentials","FontBackgroundColor","FontColor","FontSize","Heading","Highlight","HorizontalLine","HtmlEmbed","ImageCaption","ImageResize","ImageStyle","ImageToolbar","ImageUpload","LinkImage","Indent","IndentBlock","Italic","Strikethrough","Link","List","ListProperties","MediaEmbed","PageBreak","Paragraph","PasteFromOffice","RemoveFormat","SourceEditing","SpecialCharacters","SpecialCharactersArrows","SpecialCharactersCurrency","SpecialCharactersEssentials","SpecialCharactersText","Subscript","Superscript","Table","TableCellProperties","TableColumnResize","TableProperties","TableToolbar","TextTransformation","TodoList","Underline","WordCount","GeneralHtmlSupport","Style","SelectAll","OssUploadAdapterPlugin","defaultConfig","toolbar","properties","styles","startIndex","reversed","definitions","element","classes","image","table","contentToolbar","htmlSupport","allow","attributes","CKEditorField","_apis$file","_apis$file2","isMarkdown","customPlugins","customLocale","uploadAdapter","useControlValue","contextLocale","useGlobalValue","apis","usePreset","push","Markdown","CKEditor5","ClassicEditor","merge","licenseKey","translations","coreTranslationsZh","coreTranslationsEn","CKEditor","hooks","useDecorator","Field","Content","dangerouslySetInnerHTML","__html","MONACO_EDITOR_DIR","paths","vs","ensureSlash","getEditor","getMonaco","monaco","MonacoEditor","onMount","ErrorComponent","memo","LiveComponent","withRemoteLoader","setError","renderJsx","setRenderJsx","compiledCode","setCompiledCode","moduleNames","module","libKeys","libValues","values","_transform","presets","runnerFunction","Function","newModuleScopeValues","React","jsx","Antd","ErrorBoundary","errorComponent","Spin","inputStr","componentProps","targetProps","path","animationData","loop","renderer","animation","lottie","container","autoplay","destroy"],"ignoreList":[],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see 6790.969672f3.chunk.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[6790],{8151(e,r,o){o.r(r),o.d(r,{default:()=>d,manifest:()=>h});var n=o(42600),t=o(77107),a=o(88289),p=o(39178),s=o(64447),i=o(76447),m=o(89816),c=o(41086);const d={CKEditor:n.A,Calendar:t.A,CodeEditor:a.A,Echart:p.A,LiveComponentEditor:s.A,LiveComponentView:i.A,LottiePlayer:m.A,MarkdownRender:c.A},h={name:"components-thirdparty",version:"0.1.11","open-version":!0,"public-url":"components-thirdparty",modules:[{name:"CKEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CKEditor"},{name:"Calendar",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Calendar"},{name:"CodeEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CodeEditor"},{name:"Echart",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Echart"},{name:"LiveComponentEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentEditor"},{name:"LiveComponentView",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentView"},{name:"LottiePlayer",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LottiePlayer"},{name:"MarkdownRender",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/MarkdownRender"}]}},51153(e,r,o){var n=o(73884),t=Symbol.for("react.element"),a=Symbol.for("react.fragment"),p=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function m(e,r,o){var n,a={},m=null,c=null;for(n in void 0!==o&&(m=""+o),void 0!==r.key&&(m=""+r.key),void 0!==r.ref&&(c=r.ref),r)p.call(r,n)&&!i.hasOwnProperty(n)&&(a[n]=r[n]);if(e&&e.defaultProps)for(n in r=e.defaultProps)void 0===a[n]&&(a[n]=r[n]);return{$$typeof:t,type:e,key:m,ref:c,props:a,_owner:s.current}}r.jsx=m,r.jsxs=m},56465(){},70579(e,r,o){e.exports=o(51153)},84391(e,r,o){var n=o(10486);r.createRoot=n.createRoot,n.hydrateRoot}}]);
3
- //# sourceMappingURL=6790.969672f3.chunk.js.map
1
+ /*! For license information please see 6790.c8cc11ce.chunk.js.LICENSE.txt */
2
+ "use strict";(self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[6790],{8151(e,r,o){o.r(r),o.d(r,{default:()=>d,manifest:()=>h});var n=o(42600),t=o(77107),a=o(88289),p=o(39178),s=o(64447),i=o(76447),m=o(89816),c=o(41086);const d={CKEditor:n.A,Calendar:t.A,CodeEditor:a.A,Echart:p.A,LiveComponentEditor:s.A,LiveComponentView:i.A,LottiePlayer:m.A,MarkdownRender:c.A},h={name:"components-thirdparty",version:"0.1.12","open-version":!0,"public-url":"components-thirdparty",modules:[{name:"CKEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CKEditor"},{name:"Calendar",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Calendar"},{name:"CodeEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CodeEditor"},{name:"Echart",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Echart"},{name:"LiveComponentEditor",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentEditor"},{name:"LiveComponentView",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentView"},{name:"LottiePlayer",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LottiePlayer"},{name:"MarkdownRender",baseDir:"/home/runner/work/components-thirdparty/components-thirdparty/src/components/MarkdownRender"}]}},51153(e,r,o){var n=o(73884),t=Symbol.for("react.element"),a=Symbol.for("react.fragment"),p=Object.prototype.hasOwnProperty,s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,i={key:!0,ref:!0,__self:!0,__source:!0};function m(e,r,o){var n,a={},m=null,c=null;for(n in void 0!==o&&(m=""+o),void 0!==r.key&&(m=""+r.key),void 0!==r.ref&&(c=r.ref),r)p.call(r,n)&&!i.hasOwnProperty(n)&&(a[n]=r[n]);if(e&&e.defaultProps)for(n in r=e.defaultProps)void 0===a[n]&&(a[n]=r[n]);return{$$typeof:t,type:e,key:m,ref:c,props:a,_owner:s.current}}r.jsx=m,r.jsxs=m},56465(){},70579(e,r,o){e.exports=o(51153)},84391(e,r,o){var n=o(10486);r.createRoot=n.createRoot,n.hydrateRoot}}]);
3
+ //# sourceMappingURL=6790.c8cc11ce.chunk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"static/js/6790.969672f3.chunk.js","mappings":";oSAOkE,SAAgBA,SAAQ,IAACC,SAAQ,IAACC,WAAU,IAACC,OAAM,IAACC,oBAAmB,IAACC,kBAAiB,IAACC,aAAY,IAACC,eAAcA,EAAAA,GAC1KC,EAAW,CAAC,KAAO,wBAAwB,QAAU,SAAS,gBAAe,EAAK,aAAa,wBAAwB,QAAU,CAAC,CAAC,KAAO,WAAW,QAAU,yFAAyF,CAAC,KAAO,WAAW,QAAU,yFAAyF,CAAC,KAAO,aAAa,QAAU,2FAA2F,CAAC,KAAO,SAAS,QAAU,uFAAuF,CAAC,KAAO,sBAAsB,QAAU,oGAAoG,CAAC,KAAO,oBAAoB,QAAU,kGAAkG,CAAC,KAAO,eAAe,QAAU,6FAA6F,CAAC,KAAO,iBAAiB,QAAU,gG,mBCC3gCC,EAAEC,EAAQ,OAASC,EAAEC,OAAOC,IAAI,iBAAiBC,EAAEF,OAAOC,IAAI,kBAAkBE,EAAEC,OAAOC,UAAUC,eAAeC,EAAEV,EAAEW,mDAAmDC,kBAAkBC,EAAE,CAACC,KAAI,EAAGC,KAAI,EAAGC,QAAO,EAAGC,UAAS,GAChP,SAASC,EAAEC,EAAEC,EAAEC,GAAG,IAAIC,EAAEC,EAAE,CAAC,EAAEC,EAAE,KAAKC,EAAE,KAAiF,IAAIH,UAA3E,IAAID,IAAIG,EAAE,GAAGH,QAAQ,IAAID,EAAEN,MAAMU,EAAE,GAAGJ,EAAEN,UAAU,IAAIM,EAAEL,MAAMU,EAAEL,EAAEL,KAAcK,EAAEd,EAAEoB,KAAKN,EAAEE,KAAKT,EAAEJ,eAAea,KAAKC,EAAED,GAAGF,EAAEE,IAAI,GAAGH,GAAGA,EAAEQ,aAAa,IAAIL,KAAKF,EAAED,EAAEQ,kBAAoB,IAAIJ,EAAED,KAAKC,EAAED,GAAGF,EAAEE,IAAI,MAAM,CAACM,SAAS1B,EAAE2B,KAAKV,EAAEL,IAAIU,EAAET,IAAIU,EAAEK,MAAMP,EAAEQ,OAAOrB,EAAEsB,QAAQ,CAAoBC,EAAQC,IAAIhB,EAAEe,EAAQE,KAAKjB,C,yBCPxWkB,EAAOH,QAAU,EAAjBG,M,mBCDE9B,EAAIL,EAAQ,OAEdgC,EAAQI,WAAa/B,EAAE+B,WACD/B,EAAEgC,W","sources":["../node_modules/readme/modules.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/jsx-runtime.js","../node_modules/react-dom/client.js"],"sourcesContent":["import CKEditor from '@components/CKEditor/README.md';\nimport Calendar from '@components/Calendar/README.md';\nimport CodeEditor from '@components/CodeEditor/README.md';\nimport Echart from '@components/Echart/README.md';\nimport LiveComponentEditor from '@components/LiveComponentEditor/README.md';\nimport LiveComponentView from '@components/LiveComponentView/README.md';\nimport LottiePlayer from '@components/LottiePlayer/README.md';\nimport MarkdownRender from '@components/MarkdownRender/README.md';export default {CKEditor,Calendar,CodeEditor,Echart,LiveComponentEditor,LiveComponentView,LottiePlayer,MarkdownRender};\nexport const manifest = {\"name\":\"components-thirdparty\",\"version\":\"0.1.11\",\"open-version\":true,\"public-url\":\"components-thirdparty\",\"modules\":[{\"name\":\"CKEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CKEditor\"},{\"name\":\"Calendar\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Calendar\"},{\"name\":\"CodeEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CodeEditor\"},{\"name\":\"Echart\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Echart\"},{\"name\":\"LiveComponentEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentEditor\"},{\"name\":\"LiveComponentView\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentView\"},{\"name\":\"LottiePlayer\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LottiePlayer\"},{\"name\":\"MarkdownRender\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/MarkdownRender\"}]};","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n"],"names":["CKEditor","Calendar","CodeEditor","Echart","LiveComponentEditor","LiveComponentView","LottiePlayer","MarkdownRender","manifest","f","require","k","Symbol","for","l","m","Object","prototype","hasOwnProperty","n","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","p","key","ref","__self","__source","q","c","a","g","b","d","e","h","call","defaultProps","$$typeof","type","props","_owner","current","exports","jsx","jsxs","module","createRoot","hydrateRoot"],"ignoreList":[],"sourceRoot":""}
1
+ {"version":3,"file":"static/js/6790.c8cc11ce.chunk.js","mappings":";oSAOkE,SAAgBA,SAAQ,IAACC,SAAQ,IAACC,WAAU,IAACC,OAAM,IAACC,oBAAmB,IAACC,kBAAiB,IAACC,aAAY,IAACC,eAAcA,EAAAA,GAC1KC,EAAW,CAAC,KAAO,wBAAwB,QAAU,SAAS,gBAAe,EAAK,aAAa,wBAAwB,QAAU,CAAC,CAAC,KAAO,WAAW,QAAU,yFAAyF,CAAC,KAAO,WAAW,QAAU,yFAAyF,CAAC,KAAO,aAAa,QAAU,2FAA2F,CAAC,KAAO,SAAS,QAAU,uFAAuF,CAAC,KAAO,sBAAsB,QAAU,oGAAoG,CAAC,KAAO,oBAAoB,QAAU,kGAAkG,CAAC,KAAO,eAAe,QAAU,6FAA6F,CAAC,KAAO,iBAAiB,QAAU,gG,mBCC3gCC,EAAEC,EAAQ,OAASC,EAAEC,OAAOC,IAAI,iBAAiBC,EAAEF,OAAOC,IAAI,kBAAkBE,EAAEC,OAAOC,UAAUC,eAAeC,EAAEV,EAAEW,mDAAmDC,kBAAkBC,EAAE,CAACC,KAAI,EAAGC,KAAI,EAAGC,QAAO,EAAGC,UAAS,GAChP,SAASC,EAAEC,EAAEC,EAAEC,GAAG,IAAIC,EAAEC,EAAE,CAAC,EAAEC,EAAE,KAAKC,EAAE,KAAiF,IAAIH,UAA3E,IAAID,IAAIG,EAAE,GAAGH,QAAQ,IAAID,EAAEN,MAAMU,EAAE,GAAGJ,EAAEN,UAAU,IAAIM,EAAEL,MAAMU,EAAEL,EAAEL,KAAcK,EAAEd,EAAEoB,KAAKN,EAAEE,KAAKT,EAAEJ,eAAea,KAAKC,EAAED,GAAGF,EAAEE,IAAI,GAAGH,GAAGA,EAAEQ,aAAa,IAAIL,KAAKF,EAAED,EAAEQ,kBAAoB,IAAIJ,EAAED,KAAKC,EAAED,GAAGF,EAAEE,IAAI,MAAM,CAACM,SAAS1B,EAAE2B,KAAKV,EAAEL,IAAIU,EAAET,IAAIU,EAAEK,MAAMP,EAAEQ,OAAOrB,EAAEsB,QAAQ,CAAoBC,EAAQC,IAAIhB,EAAEe,EAAQE,KAAKjB,C,yBCPxWkB,EAAOH,QAAU,EAAjBG,M,mBCDE9B,EAAIL,EAAQ,OAEdgC,EAAQI,WAAa/B,EAAE+B,WACD/B,EAAEgC,W","sources":["../node_modules/readme/modules.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/jsx-runtime.js","../node_modules/react-dom/client.js"],"sourcesContent":["import CKEditor from '@components/CKEditor/README.md';\nimport Calendar from '@components/Calendar/README.md';\nimport CodeEditor from '@components/CodeEditor/README.md';\nimport Echart from '@components/Echart/README.md';\nimport LiveComponentEditor from '@components/LiveComponentEditor/README.md';\nimport LiveComponentView from '@components/LiveComponentView/README.md';\nimport LottiePlayer from '@components/LottiePlayer/README.md';\nimport MarkdownRender from '@components/MarkdownRender/README.md';export default {CKEditor,Calendar,CodeEditor,Echart,LiveComponentEditor,LiveComponentView,LottiePlayer,MarkdownRender};\nexport const manifest = {\"name\":\"components-thirdparty\",\"version\":\"0.1.12\",\"open-version\":true,\"public-url\":\"components-thirdparty\",\"modules\":[{\"name\":\"CKEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CKEditor\"},{\"name\":\"Calendar\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Calendar\"},{\"name\":\"CodeEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/CodeEditor\"},{\"name\":\"Echart\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/Echart\"},{\"name\":\"LiveComponentEditor\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentEditor\"},{\"name\":\"LiveComponentView\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LiveComponentView\"},{\"name\":\"LottiePlayer\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/LottiePlayer\"},{\"name\":\"MarkdownRender\",\"baseDir\":\"/home/runner/work/components-thirdparty/components-thirdparty/src/components/MarkdownRender\"}]};","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n"],"names":["CKEditor","Calendar","CodeEditor","Echart","LiveComponentEditor","LiveComponentView","LottiePlayer","MarkdownRender","manifest","f","require","k","Symbol","for","l","m","Object","prototype","hasOwnProperty","n","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","p","key","ref","__self","__source","q","c","a","g","b","d","e","h","call","defaultProps","$$typeof","type","props","_owner","current","exports","jsx","jsxs","module","createRoot","hydrateRoot"],"ignoreList":[],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see 7413.668c2e5a.chunk.js.LICENSE.txt */
2
- "use strict";(self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[445,7413],{47413(e,t,n){n.r(t),n.d(t,{default:()=>w});var r=n(89379),o=n(13050),l=n(62351),s=n(55199),a=n(24157),c=n(53306),u=n(80445),i=n(96418),p=n.n(i),d=n(53536),m=n.n(d),f=n(57469),b=n.n(f),j=n(22717),h=n.n(j),x=n(93950),g=n.n(x),y=n(54320),O=n.n(y),_=n(33097),v=n.n(_),S=n(73884),R=n(84391);const k="style_code-editor__D+p0v__u+SOm",E="style_preview__rTt65__u+SOm",V="style_function-default-value__Lucxh__u+SOm";var C=n(70579);const N=(0,o.createWithRemoteLoader)({modules:["components-core:Global@useGlobalContext","components-core:Global@PureGlobal"]})(e=>{let{remoteModules:t,children:n}=e;const[r,o]=t,{global:l}=r(),s=(0,S.useRef)(null),[a]=(0,S.useState)(()=>g()((e,t,n)=>{s.current.innerHTML="";const r=document.createElement("div");s.current.appendChild(r);(0,R.createRoot)(r).render((0,C.jsx)(o,{preset:{locale:t},themeToken:n,children:e}))},1e3));return(0,S.useEffect)(()=>{a(n,l.locale,l.themeToken)},[n,l.locale,l.themeToken,a]),(0,C.jsx)("div",{ref:s})}),w=(0,o.createWithRemoteLoader)({modules:["components-core:FormInfo","components-core:InfoPage","components-core:InfoPage@CentralContent","components-core:Common@SimpleBar"]})((0,S.forwardRef)((e,t)=>{let{remoteModules:n,defaultValue:o,defaultMod:i="mix",height:d=500,libs:f={lodash:m(),dayjs:b()},onChange:j}=e;const[x,y,_,R]=n,{Form:w,TableList:M}=x,{Input:A,Select:I}=x.fields,L=(0,S.useRef)(null),[T,P]=(0,S.useState)(()=>{if(!o)return{};try{return JSON.parse((0,l.decode)(o))}catch(e){return console.error(e),{}}}),D=(0,S.useRef)(o),F=(0,S.useMemo)(()=>O()(T)?"":(0,l.encode)(JSON.stringify(T)),[T]),[G,J]=(0,S.useState)("content"),Q=p()(j),H=(0,S.useRef)(null);H.current||(H.current=g()((e,t)=>{const n=(()=>{try{return JSON.parse((0,l.decode)(e))}catch(t){return console.error(t),{}}})();P(n),t.current&&t.current.setValue(n.content||"")},500,{leading:!0,trailing:!0}));const B=(0,S.useRef)(null);B.current||(B.current=g()((e,t,n)=>{t(t=>(0,r.A)((0,r.A)({},t),{},{content:e}))},300)),(0,S.useImperativeHandle)(t,()=>({getValue:()=>F,setValue:e=>H.current(e,L)}),[F]),(0,S.useEffect)(()=>{D.current!==F&&(D.current=F,Q&&Q(F))},[F,Q]);const[W,U]=(0,S.useState)(i),{content:$,props:z,scope:K}=Object.assign({},{content:"",props:{},scope:{}},T),Y=(0,S.useRef)(null),q=(0,S.useRef)(null),X=(0,C.jsx)("div",{className:k,children:(0,C.jsx)(c.default,{ref:L,height:d,defaultValue:$,defaultLanguage:"javascript",onChange:e=>B.current(e,P,T)})}),Z=(0,C.jsx)(R,{style:{maxHeight:"".concat(d,"px")},children:(0,C.jsx)("div",{className:E,children:(0,C.jsx)(N,{children:(0,C.jsx)(w,{children:(0,C.jsx)(u.default,{content:F,libs:f})})})})});return(0,C.jsx)(s.Tabs,{activeKey:G,onChange:e=>{J(e),Y.current&&Y.current.submit(),q.current&&q.current.submit()},tabBarExtraContent:"content"===G&&(0,C.jsx)(s.Segmented,{value:W,onChange:U,options:[{label:"\u7f16\u8f91\u5668",value:"editor",icon:(0,C.jsx)(a.MenuOutlined,{})},{label:"\u6df7\u5408",value:"mix",icon:(0,C.jsx)(a.SplitCellsOutlined,{})},{label:"\u9884\u89c8",value:"preview",icon:(0,C.jsx)(a.EyeOutlined,{})}]}),items:[{key:"props",label:"\u7ec4\u4ef6\u53c2\u6570",children:(0,C.jsx)(w,{ref:Y,data:{props:Object.keys(z).map(e=>{const t=Object.assign({},z[e]);return{name:e,type:t.type,defaultValue:t.defaultValue}})},onSubmit:e=>{P(t=>Object.assign({},t,{props:h()(e.props,(e,t)=>{e[t.name]={defaultValue:["array","object","boolean","number"].indexOf(t.type)>-1||"string"===t.type?t.defaultValue:"function"===t.type?"()=>null":void 0,type:t.type}},{})}))},children:(0,C.jsx)(M,{title:"\u53c2\u6570\u5217\u8868",name:"props",list:[(0,C.jsx)(A,{name:"name",label:"\u53d8\u91cf\u540d",rule:"REQ LEN-0-100"}),(0,C.jsx)(I,{name:"type",label:"\u7c7b\u578b",rule:"REQ",defaultValue:"string",options:[{label:"\u5b57\u7b26\u4e32",value:"string"},{label:"\u6570\u5b57",value:"number"},{label:"\u5e03\u5c14\u503c",value:"boolean"},{label:"\u6570\u7ec4",value:"array"},{label:"\u5bf9\u8c61",value:"object"},{label:"\u51fd\u6570",value:"function"}],onChange:(e,t,n)=>{let{openApi:r,groupArgs:o}=n;setTimeout(()=>{r.setField({name:"defaultValue",groupName:"props",groupIndex:o[0].index,value:""})},100)}}),(0,C.jsx)(A,{name:"defaultValue",label:"\u9ed8\u8ba4\u503c",rule:"REQ LEN-0-500",display:e=>{let{formData:t,groupArgs:n}=e;return"function"!==v()(t.props,"".concat(n[0].index,".type"))}}),(0,C.jsx)("div",{className:V,name:"defaultValue",label:"\u9ed8\u8ba4\u503c",display:e=>{let{formData:t,groupArgs:n}=e;return"function"===v()(t.props,"".concat(n[0].index,".type"))},children:"()=>null"})]})})},{key:"scope",label:"\u7ec4\u4ef6\u57df",children:(0,C.jsx)(w,{ref:q,data:{scope:Object.keys(K).map(e=>({name:e,token:K[e]}))},onSubmit:e=>{P(t=>Object.assign({},t,{scope:h()(e.scope,(e,t)=>{e[t.name]=t.token},{})}))},children:(0,C.jsx)(M,{title:"\u57df\u5217\u8868",name:"scope",list:[(0,C.jsx)(A,{name:"name",label:"\u53d8\u91cf\u540d",rule:"REQ LEN-0-100"}),(0,C.jsx)(A,{name:"token",label:"Token",rule:"REQ LEN-0-100"})]})})},{key:"content",label:"\u7ec4\u4ef6\u5185\u5bb9",children:(0,C.jsxs)(s.Flex,{vertical:!0,gap:12,children:[(0,C.jsx)(s.Collapse,{size:"small",items:[{key:"refer",label:"\u5f15\u7528\u53c2\u8003",children:(0,C.jsx)(s.Alert,{message:(0,C.jsx)(y,{children:(0,C.jsx)(_,{dataSource:{props:z,scope:K},col:1,columns:[{name:"props",title:"\u53ef\u4f7f\u7528\u53c2\u6570",getValueOf:e=>Object.keys(e.props).map(e=>"props.".concat(e)).join(",")},{name:"scope",title:"\u53ef\u4f7f\u7528\u7ec4\u4ef6",getValueOf:e=>["Antd",...Object.keys(e.scope)].join(",")},{name:"lib",title:"\u53ef\u4f7f\u7528\u5e93",getValueOf:()=>Object.keys(f).join(",")}]})})})}]}),"editor"===W&&X,"mix"===W&&(0,C.jsxs)(s.Splitter,{children:[(0,C.jsx)(s.Splitter.Panel,{children:X}),(0,C.jsx)(s.Splitter.Panel,{children:Z})]}),"preview"===W&&Z]})}]})}))},51153(e,t,n){var r=n(73884),o=Symbol.for("react.element"),l=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function u(e,t,n){var r,l={},u=null,i=null;for(r in void 0!==n&&(u=""+n),void 0!==t.key&&(u=""+t.key),void 0!==t.ref&&(i=t.ref),t)s.call(t,r)&&!c.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===l[r]&&(l[r]=t[r]);return{$$typeof:o,type:e,key:u,ref:i,props:l,_owner:a.current}}t.jsx=u,t.jsxs=u},53306(e,t,n){n.r(t),n.d(t,{default:()=>i});var r=n(89379),o=n(98880),l=n.n(o),s=n(18081),a=n.n(s),c=n(73884),u=n(70579);window.MONACO_EDITOR_DIR&&o.loader.config({paths:{vs:"".concat(a()(window.MONACO_EDITOR_DIR),"/min/vs")}});const i=(0,c.forwardRef)((e,t)=>{const n=(0,c.useRef)({});return(0,c.useImperativeHandle)(t,()=>({getValue:()=>n.current.editor.getValue(),setValue:e=>{n.current.editor.setValue(e)},getEditor:()=>n.current.editor,getMonaco:()=>n.current.monaco}),[]),(0,u.jsx)(l(),(0,r.A)((0,r.A)({},Object.assign({},{height:500},e)),{},{onMount:(e,t)=>{n.current={editor:e,monaco:t}}}))})},70579(e,t,n){e.exports=n(51153)},80445(e,t,n){n.r(t),n.d(t,{default:()=>g});var r=n(89379),o=n(73884),l=n.n(o),s=n(62351),a=n(13050),c=n(65288),u=n.n(c),i=n(65171),p=n(22717),d=n.n(p),m=(n(93950),n(55199));const f="style_error-message__5udgI__u+SOm";var b=n(70579);const j=(0,o.memo)(e=>{let{error:t}=e;return(0,b.jsx)("div",{className:f,children:(0,b.jsx)("pre",{children:t})})}),h=(0,a.withRemoteLoader)(e=>{let{remoteModules:t,children:n,props:r,libs:s={}}=e;const[a,c]=(0,o.useState)(null),[p,f]=(0,o.useState)(null),[h,x]=(0,o.useState)(null),[g,y]=(0,o.useState)([]),{content:O,moduleNames:_}=n,v=(0,o.useMemo)(()=>d()(t,(e,t,n)=>{e[_[n]]=t},{}),[t,_]),S=(0,o.useMemo)(()=>Object.keys(s),[s]),R=(0,o.useMemo)(()=>Object.values(s),[s]);return(0,o.useEffect)(()=>{if(O)try{c(null);const e=(0,i.transform)("render(".concat(O,");"),{presets:["es2015","react"]}).code;x(e)}catch(e){c(e),x(null)}else x(null)},[O]),(0,o.useEffect)(()=>{if(h)try{c(null);const e=new Function("React","render","props","Antd",...S,..._,h),t=_.map(e=>v[e]);y(t),e(l(),e=>f(e),r,m,...R,...t)}catch(e){c(e)}},[h,v,_,r,S,R]),(0,b.jsxs)(m.Flex,{vertical:!0,children:[(0,b.jsx)(u(),{errorComponent:j,children:_.length!==t.length?(0,b.jsx)(m.Spin,{}):p}),a&&(0,b.jsx)(j,{error:a.message})]})}),x=e=>{let{content:t,props:n,libs:r}=e;const{content:l,props:a,scope:c,error:u}=(0,o.useMemo)(()=>{try{if(!t)return{content:"",scope:{},props:{},error:null};const{content:e,props:n,scope:r}=JSON.parse((0,s.decode)(t));return Object.assign({},{content:e||"",scope:Object.assign({},r),props:Object.assign({},n&&d()(n,(e,t,n)=>{e[n]=["array","object","boolean","number"].indexOf(t.type)>-1?JSON.parse(t.defaultValue):"string"===t.type?t.defaultValue:"function"===t.type?()=>null:void 0},{})),error:null})}catch(e){return{error:e.message||"\u53c2\u6570\u65e0\u6cd5\u89e3\u6790"}}},[t]),i=(0,o.useMemo)(()=>Object.assign({},a,n),[n,a]),{children:p,modules:m}=(0,o.useMemo)(()=>{const e=Object.keys(c);return{modules:["components-core:Global@PureGlobal"].concat(e.map(e=>c[e])),children:{content:l,moduleNames:["PureGlobal"].concat(e)}}},[c]);return u?(0,b.jsx)(j,{error:u}):(0,b.jsx)(h,{props:i,libs:r,modules:m,children:p})},g=(0,o.memo)(e=>(0,b.jsx)(u(),{errorComponent:j,children:(0,b.jsx)(x,(0,r.A)({},e))}))},84391(e,t,n){var r=n(10486);t.createRoot=r.createRoot,r.hydrateRoot}}]);
3
- //# sourceMappingURL=7413.668c2e5a.chunk.js.map
1
+ /*! For license information please see 7413.cd2672c2.chunk.js.LICENSE.txt */
2
+ "use strict";(self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[445,7413],{47413(e,t,n){n.r(t),n.d(t,{default:()=>w});var r=n(89379),o=n(13050),l=n(62351),s=n(55199),a=n(24157),c=n(53306),u=n(80445),i=n(96418),p=n.n(i),d=n(53536),m=n.n(d),f=n(57469),b=n.n(f),j=n(22717),h=n.n(j),x=n(93950),g=n.n(x),y=n(54320),_=n.n(y),v=n(33097),O=n.n(v),R=n(73884),k=n(84391);const S="style_code-editor__D+p0v__Glq7o",E="style_preview__rTt65__Glq7o",V="style_function-default-value__Lucxh__Glq7o";var C=n(70579);const N=(0,o.createWithRemoteLoader)({modules:["components-core:Global@useGlobalContext","components-core:Global@PureGlobal"]})(e=>{let{remoteModules:t,children:n}=e;const[r,o]=t,{global:l}=r(),s=(0,R.useRef)(null),[a]=(0,R.useState)(()=>g()((e,t,n)=>{s.current.innerHTML="";const r=document.createElement("div");s.current.appendChild(r);(0,k.createRoot)(r).render((0,C.jsx)(o,{preset:{locale:t},themeToken:n,children:e}))},1e3));return(0,R.useEffect)(()=>{a(n,l.locale,l.themeToken)},[n,l.locale,l.themeToken,a]),(0,C.jsx)("div",{ref:s})}),w=(0,o.createWithRemoteLoader)({modules:["components-core:FormInfo","components-core:InfoPage","components-core:InfoPage@CentralContent","components-core:Common@SimpleBar"]})((0,R.forwardRef)((e,t)=>{let{remoteModules:n,defaultValue:o,defaultMod:i="mix",height:d=500,libs:f={lodash:m(),dayjs:b()},onChange:j}=e;const[x,y,v,k]=n,{Form:w,TableList:M}=x,{Input:A,Select:I}=x.fields,L=(0,R.useRef)(null),[T,G]=(0,R.useState)(()=>{if(!o)return{};try{return JSON.parse((0,l.decode)(o))}catch(e){return console.error(e),{}}}),P=(0,R.useRef)(o),D=(0,R.useMemo)(()=>_()(T)?"":(0,l.encode)(JSON.stringify(T)),[T]),[F,J]=(0,R.useState)("content"),Q=p()(j),q=(0,R.useRef)(null);q.current||(q.current=g()((e,t)=>{const n=(()=>{try{return JSON.parse((0,l.decode)(e))}catch(t){return console.error(t),{}}})();G(n),t.current&&t.current.setValue(n.content||"")},500,{leading:!0,trailing:!0}));const H=(0,R.useRef)(null);H.current||(H.current=g()((e,t,n)=>{t(t=>(0,r.A)((0,r.A)({},t),{},{content:e}))},300)),(0,R.useImperativeHandle)(t,()=>({getValue:()=>D,setValue:e=>q.current(e,L)}),[D]),(0,R.useEffect)(()=>{P.current!==D&&(P.current=D,Q&&Q(D))},[D,Q]);const[B,W]=(0,R.useState)(i),{content:U,props:$,scope:z}=Object.assign({},{content:"",props:{},scope:{}},T),K=(0,R.useRef)(null),Y=(0,R.useRef)(null),X=(0,C.jsx)("div",{className:S,children:(0,C.jsx)(c.default,{ref:L,height:d,defaultValue:U,defaultLanguage:"javascript",onChange:e=>H.current(e,G,T)})}),Z=(0,C.jsx)(k,{style:{maxHeight:"".concat(d,"px")},children:(0,C.jsx)("div",{className:E,children:(0,C.jsx)(N,{children:(0,C.jsx)(w,{children:(0,C.jsx)(u.default,{content:D,libs:f})})})})});return(0,C.jsx)(s.Tabs,{activeKey:F,onChange:e=>{J(e),K.current&&K.current.submit(),Y.current&&Y.current.submit()},tabBarExtraContent:"content"===F&&(0,C.jsx)(s.Segmented,{value:B,onChange:W,options:[{label:"\u7f16\u8f91\u5668",value:"editor",icon:(0,C.jsx)(a.MenuOutlined,{})},{label:"\u6df7\u5408",value:"mix",icon:(0,C.jsx)(a.SplitCellsOutlined,{})},{label:"\u9884\u89c8",value:"preview",icon:(0,C.jsx)(a.EyeOutlined,{})}]}),items:[{key:"props",label:"\u7ec4\u4ef6\u53c2\u6570",children:(0,C.jsx)(w,{ref:K,data:{props:Object.keys($).map(e=>{const t=Object.assign({},$[e]);return{name:e,type:t.type,defaultValue:t.defaultValue}})},onSubmit:e=>{G(t=>Object.assign({},t,{props:h()(e.props,(e,t)=>{e[t.name]={defaultValue:["array","object","boolean","number"].indexOf(t.type)>-1||"string"===t.type?t.defaultValue:"function"===t.type?"()=>null":void 0,type:t.type}},{})}))},children:(0,C.jsx)(M,{title:"\u53c2\u6570\u5217\u8868",name:"props",list:[(0,C.jsx)(A,{name:"name",label:"\u53d8\u91cf\u540d",rule:"REQ LEN-0-100"}),(0,C.jsx)(I,{name:"type",label:"\u7c7b\u578b",rule:"REQ",defaultValue:"string",options:[{label:"\u5b57\u7b26\u4e32",value:"string"},{label:"\u6570\u5b57",value:"number"},{label:"\u5e03\u5c14\u503c",value:"boolean"},{label:"\u6570\u7ec4",value:"array"},{label:"\u5bf9\u8c61",value:"object"},{label:"\u51fd\u6570",value:"function"}],onChange:(e,t,n)=>{let{openApi:r,groupArgs:o}=n;setTimeout(()=>{r.setField({name:"defaultValue",groupName:"props",groupIndex:o[0].index,value:""})},100)}}),(0,C.jsx)(A,{name:"defaultValue",label:"\u9ed8\u8ba4\u503c",rule:"REQ LEN-0-500",display:e=>{let{formData:t,groupArgs:n}=e;return"function"!==O()(t.props,"".concat(n[0].index,".type"))}}),(0,C.jsx)("div",{className:V,name:"defaultValue",label:"\u9ed8\u8ba4\u503c",display:e=>{let{formData:t,groupArgs:n}=e;return"function"===O()(t.props,"".concat(n[0].index,".type"))},children:"()=>null"})]})})},{key:"scope",label:"\u7ec4\u4ef6\u57df",children:(0,C.jsx)(w,{ref:Y,data:{scope:Object.keys(z).map(e=>({name:e,token:z[e]}))},onSubmit:e=>{G(t=>Object.assign({},t,{scope:h()(e.scope,(e,t)=>{e[t.name]=t.token},{})}))},children:(0,C.jsx)(M,{title:"\u57df\u5217\u8868",name:"scope",list:[(0,C.jsx)(A,{name:"name",label:"\u53d8\u91cf\u540d",rule:"REQ LEN-0-100"}),(0,C.jsx)(A,{name:"token",label:"Token",rule:"REQ LEN-0-100"})]})})},{key:"content",label:"\u7ec4\u4ef6\u5185\u5bb9",children:(0,C.jsxs)(s.Flex,{vertical:!0,gap:12,children:[(0,C.jsx)(s.Collapse,{size:"small",items:[{key:"refer",label:"\u5f15\u7528\u53c2\u8003",children:(0,C.jsx)(s.Alert,{message:(0,C.jsx)(y,{children:(0,C.jsx)(v,{dataSource:{props:$,scope:z},col:1,columns:[{name:"props",title:"\u53ef\u4f7f\u7528\u53c2\u6570",getValueOf:e=>Object.keys(e.props).map(e=>"props.".concat(e)).join(",")},{name:"scope",title:"\u53ef\u4f7f\u7528\u7ec4\u4ef6",getValueOf:e=>["Antd",...Object.keys(e.scope)].join(",")},{name:"lib",title:"\u53ef\u4f7f\u7528\u5e93",getValueOf:()=>Object.keys(f).join(",")}]})})})}]}),"editor"===B&&X,"mix"===B&&(0,C.jsxs)(s.Splitter,{children:[(0,C.jsx)(s.Splitter.Panel,{children:X}),(0,C.jsx)(s.Splitter.Panel,{children:Z})]}),"preview"===B&&Z]})}]})}))},51153(e,t,n){var r=n(73884),o=Symbol.for("react.element"),l=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,a=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function u(e,t,n){var r,l={},u=null,i=null;for(r in void 0!==n&&(u=""+n),void 0!==t.key&&(u=""+t.key),void 0!==t.ref&&(i=t.ref),t)s.call(t,r)&&!c.hasOwnProperty(r)&&(l[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps)void 0===l[r]&&(l[r]=t[r]);return{$$typeof:o,type:e,key:u,ref:i,props:l,_owner:a.current}}t.jsx=u,t.jsxs=u},53306(e,t,n){n.r(t),n.d(t,{default:()=>i});var r=n(89379),o=n(98880),l=n.n(o),s=n(18081),a=n.n(s),c=n(73884),u=n(70579);window.MONACO_EDITOR_DIR&&o.loader.config({paths:{vs:"".concat(a()(window.MONACO_EDITOR_DIR),"/min/vs")}});const i=(0,c.forwardRef)((e,t)=>{const n=(0,c.useRef)({});return(0,c.useImperativeHandle)(t,()=>({getValue:()=>n.current.editor.getValue(),setValue:e=>{n.current.editor.setValue(e)},getEditor:()=>n.current.editor,getMonaco:()=>n.current.monaco}),[]),(0,u.jsx)(l(),(0,r.A)((0,r.A)({},Object.assign({},{height:500},e)),{},{onMount:(e,t)=>{n.current={editor:e,monaco:t}}}))})},70579(e,t,n){e.exports=n(51153)},80445(e,t,n){n.r(t),n.d(t,{default:()=>g});var r=n(89379),o=n(73884),l=n.n(o),s=n(62351),a=n(13050),c=n(65288),u=n.n(c),i=n(65171),p=n(22717),d=n.n(p),m=(n(93950),n(55199));const f="style_error-message__5udgI__Glq7o";var b=n(70579);const j=(0,o.memo)(e=>{let{error:t}=e;return(0,b.jsx)("div",{className:f,children:(0,b.jsx)("pre",{children:t})})}),h=(0,a.withRemoteLoader)(e=>{let{remoteModules:t,children:n,props:r,libs:s={}}=e;const[a,c]=(0,o.useState)(null),[p,f]=(0,o.useState)(null),[h,x]=(0,o.useState)(null),{content:g,moduleNames:y}=n,_=(0,o.useMemo)(()=>d()(t,(e,t,n)=>{e[y[n]]=t},{}),[t,y]),v=(0,o.useMemo)(()=>Object.keys(s),[s]),O=(0,o.useMemo)(()=>Object.values(s),[s]);return(0,o.useEffect)(()=>{if(g)try{c(null);const e=(0,i.transform)("render(".concat(g,");"),{presets:["es2015","react"]}).code;x(e)}catch(e){c(e),x(null)}else x(null)},[g]),(0,o.useEffect)(()=>{if(h)try{c(null);const e=new Function("React","render","props","Antd",...v,...y,h),t=y.map(e=>_[e]);e(l(),e=>f(e),r,m,...O,...t)}catch(e){c(e)}},[h,_,y,r,v,O]),(0,b.jsxs)(m.Flex,{vertical:!0,children:[(0,b.jsx)(u(),{errorComponent:j,children:y.length!==t.length?(0,b.jsx)(m.Spin,{}):p}),a&&(0,b.jsx)(j,{error:a.message})]})}),x=e=>{let{content:t,props:n,libs:r}=e;const{content:l,props:a,scope:c,error:u}=(0,o.useMemo)(()=>{try{if(!t)return{content:"",scope:{},props:{},error:null};const{content:e,props:n,scope:r}=JSON.parse((0,s.decode)(t));return Object.assign({},{content:e||"",scope:Object.assign({},r),props:Object.assign({},n&&d()(n,(e,t,n)=>{e[n]=["array","object","boolean","number"].indexOf(t.type)>-1?JSON.parse(t.defaultValue):"string"===t.type?t.defaultValue:"function"===t.type?()=>null:void 0},{})),error:null})}catch(e){return{error:e.message||"\u53c2\u6570\u65e0\u6cd5\u89e3\u6790"}}},[t]),i=(0,o.useMemo)(()=>Object.assign({},a,n),[n,a]),{children:p,modules:m}=(0,o.useMemo)(()=>{const e=Object.keys(c);return{modules:["components-core:Global@PureGlobal"].concat(e.map(e=>c[e])),children:{content:l,moduleNames:["PureGlobal"].concat(e)}}},[c]);return u?(0,b.jsx)(j,{error:u}):(0,b.jsx)(h,{props:i,libs:r,modules:m,children:p})},g=(0,o.memo)(e=>(0,b.jsx)(u(),{errorComponent:j,children:(0,b.jsx)(x,(0,r.A)({},e))}))},84391(e,t,n){var r=n(10486);t.createRoot=r.createRoot,r.hydrateRoot}}]);
3
+ //# sourceMappingURL=7413.cd2672c2.chunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static/js/7413.cd2672c2.chunk.js","mappings":";ibACA,QAA8B,kCAA9B,EAA0E,8BAA1E,EAAiI,6C,eCgBjI,MAAMA,GAAaC,EAAAA,EAAAA,wBAAuB,CACxCC,QAAS,CAAC,0CAA2C,sCADpCD,CAEhBE,IAAkC,IAAjC,cAAEC,EAAa,SAAEC,GAAUF,EAC7B,MAAOG,EAAkBC,GAAcH,GACjC,OAAEI,GAAWF,IACbG,GAAMC,EAAAA,EAAAA,QAAO,OACZC,IAAmBC,EAAAA,EAAAA,UAAS,IACjCC,IAAS,CAACR,EAAUS,EAAQC,KAC1BN,EAAIO,QAAQC,UAAY,GACxB,MAAMC,EAAMC,SAASC,cAAc,OACnCX,EAAIO,QAAQK,YAAYH,IACZI,EAAAA,EAAAA,YAAWJ,GACnBK,QACFC,EAAAA,EAAAA,KAACjB,EAAU,CAACkB,OAAQ,CAAEX,UAAUC,WAAYA,EAAWV,SACpDA,MAGJ,MAKL,OAHAqB,EAAAA,EAAAA,WAAU,KACRf,EAAgBN,EAAUG,EAAOM,OAAQN,EAAOO,aAC/C,CAACV,EAAUG,EAAOM,OAAQN,EAAOO,WAAYJ,KACzCa,EAAAA,EAAAA,KAAA,OAAKf,IAAKA,MAqVnB,GAlV4BR,EAAAA,EAAAA,wBAAuB,CACjDC,QAAS,CAAC,2BAA4B,2BAA4B,0CAA2C,qCADnFD,EAG1B0B,EAAAA,EAAAA,YAAW,CAAAC,EAAwGnB,KAAS,IAAhH,cAAEL,EAAa,aAAEyB,EAAY,WAAEC,EAAa,MAAK,OAAEC,EAAS,IAAG,KAAEC,EAAO,CAAEC,OAAM,IAAEC,MAAM,KAAC,SAAEC,GAAUP,EAC/G,MAAOQ,EAAUC,EAAUC,EAAgBC,GAAanC,GAClD,KAAEoC,EAAI,UAAEC,GAAcL,GACtB,MAAEM,EAAK,OAAEC,GAAWP,EAASQ,OAC7BC,GAAgBnC,EAAAA,EAAAA,QAAO,OACtBoC,EAAQC,IAAanC,EAAAA,EAAAA,UAAS,KACnC,IAAKiB,EACH,MAAO,CAAC,EAEV,IACE,OAAOmB,KAAKC,OAAMC,EAAAA,EAAAA,QAAOrB,GAC3B,CAAE,MAAOsB,GAEP,OADAC,QAAQC,MAAMF,GACP,CAAC,CACV,IAEIG,GAAkB5C,EAAAA,EAAAA,QAAOmB,GACzB0B,GAAgBC,EAAAA,EAAAA,SAAQ,IACxBC,IAAQX,GACH,IAEFY,EAAAA,EAAAA,QAAOV,KAAKW,UAAUb,IAC5B,CAACA,KAEGc,EAAWC,IAAgBjD,EAAAA,EAAAA,UAAS,WAErCkD,EAAeC,IAAe5B,GAG9B6B,GAAuBtD,EAAAA,EAAAA,QAAO,MAE/BsD,EAAqBhD,UACxBgD,EAAqBhD,QAAUH,IAC7B,CAACoD,EAAOpB,KACN,MAAMqB,EAAY,MAChB,IACE,OAAOlB,KAAKC,OAAMC,EAAAA,EAAAA,QAAOe,GAC3B,CAAE,MAAOd,GAEP,OADAC,QAAQC,MAAMF,GACP,CAAC,CACV,CACD,EAPiB,GAQlBJ,EAAUmB,GACVrB,EAAc7B,SAAW6B,EAAc7B,QAAQmD,SAASD,EAAUE,SAAW,KAE/E,IACA,CAAEC,SAAS,EAAMC,UAAU,KAK/B,MAAMC,GAA4B7D,EAAAA,EAAAA,QAAO,MAEpC6D,EAA0BvD,UAC7BuD,EAA0BvD,QAAUH,IAAS,CAAC2D,EAAYzB,EAAW0B,KACnE1B,EAAU2B,IAAIC,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GAAUD,GAAI,IAAEN,QAASI,MACtC,OAGLI,EAAAA,EAAAA,qBACEnE,EACA,MACEoE,SAAUA,IAAMtB,EAChBY,SAAUF,GAASD,EAAqBhD,QAAQiD,EAAOpB,KAEzD,CAACU,KAEH7B,EAAAA,EAAAA,WAAU,KACJ4B,EAAgBtC,UAAYuC,IAC9BD,EAAgBtC,QAAUuC,EAC1BO,GAAgBA,EAAaP,KAE9B,CAACA,EAAeO,IACnB,MAAOgB,EAAKC,IAAUnE,EAAAA,EAAAA,UAASkB,IACzB,QAAEsC,EAAO,MAAEY,EAAK,MAAEC,GAAUC,OAAOC,OAAO,CAAC,EAAG,CAAEf,QAAS,GAAIY,MAAO,CAAC,EAAGC,MAAO,CAAC,GAAKnC,GACrFsC,GAAe1E,EAAAA,EAAAA,QAAO,MACtB2E,GAAe3E,EAAAA,EAAAA,QAAO,MAEtB4E,GACJ9D,EAAAA,EAAAA,KAAA,OAAK+D,UAAWC,EAAqBnF,UACnCmB,EAAAA,EAAAA,KAACiE,EAAAA,QAAU,CACThF,IAAKoC,EACLd,OAAQA,EACRF,aAAcuC,EACdsB,gBAAgB,aAChBvD,SAAU8B,GAASM,EAA0BvD,QAAQiD,EAAOlB,EAAWD,OAKvE6C,GACJnE,EAAAA,EAAAA,KAACe,EAAS,CACRiD,MAAO,CACLI,UAAU,GAADC,OAAK9D,EAAM,OACpB1B,UACFmB,EAAAA,EAAAA,KAAA,OAAK+D,UAAWC,EAAiBnF,UAC/BmB,EAAAA,EAAAA,KAACxB,EAAU,CAAAK,UACTmB,EAAAA,EAAAA,KAACgB,EAAI,CAAAnC,UACHmB,EAAAA,EAAAA,KAACsE,EAAAA,QAAiB,CAAC1B,QAASb,EAAevB,KAAMA,YAM3D,OACER,EAAAA,EAAAA,KAACuE,EAAAA,KAAI,CACHnC,UAAWA,EACXzB,SAAUyB,IACRC,EAAaD,GACbwB,EAAapE,SAAWoE,EAAapE,QAAQgF,SAC7CX,EAAarE,SAAWqE,EAAarE,QAAQgF,UAE/CC,mBACgB,YAAdrC,IACEpC,EAAAA,EAAAA,KAAC0E,EAAAA,UAAS,CACRjC,MAAOa,EACP3C,SAAU4C,EACVoB,QAAS,CACP,CACEC,MAAO,qBACPnC,MAAO,SACPoC,MAAM7E,EAAAA,EAAAA,KAAC8E,EAAAA,aAAY,KAErB,CACEF,MAAO,eACPnC,MAAO,MACPoC,MAAM7E,EAAAA,EAAAA,KAAC+E,EAAAA,mBAAkB,KAE3B,CACEH,MAAO,eACPnC,MAAO,UACPoC,MAAM7E,EAAAA,EAAAA,KAACgF,EAAAA,YAAW,QAM5BC,MAAO,CACL,CACEC,IAAK,QACLN,MAAO,2BACP/F,UACEmB,EAAAA,EAAAA,KAACgB,EAAI,CACH/B,IAAK2E,EACLuB,KAAM,CACJ3B,MAAOE,OAAO0B,KAAK5B,GAAO6B,IAAIC,IAC5B,MAAMC,EAAO7B,OAAOC,OAAO,CAAC,EAAGH,EAAM8B,IACrC,MAAO,CACLA,OACAE,KAAMD,EAAKC,KACXnF,aAAckF,EAAKlF,iBAIzBoF,SAAUC,IACRnE,EAAUD,GACDoC,OAAOC,OAAO,CAAC,EAAGrC,EAAQ,CAC/BkC,MAAOmC,IACLD,EAASlC,MACT,CAACoC,EAAQnD,KACPmD,EAAOnD,EAAM6C,MAAQ,CACnBjF,aACM,CAAC,QAAS,SAAU,UAAW,UAAUwF,QAAQpD,EAAM+C,OAAS,GAGjD,WAAf/C,EAAM+C,KAFD/C,EAAMpC,aAKI,aAAfoC,EAAM+C,KACD,gBADT,EAIFA,KAAM/C,EAAM+C,OAGhB,CAAC,OAIP3G,UACFmB,EAAAA,EAAAA,KAACiB,EAAS,CACR6E,MAAM,2BACNR,KAAK,QACLS,KAAM,EACJ/F,EAAAA,EAAAA,KAACkB,EAAK,CAACoE,KAAK,OAAOV,MAAM,qBAAMoB,KAAK,mBACpChG,EAAAA,EAAAA,KAACmB,EAAM,CACLmE,KAAK,OACLV,MAAM,eACNoB,KAAK,MACL3F,aAAa,SACbsE,QAAS,CACP,CAAEC,MAAO,qBAAOnC,MAAO,UACvB,CAAEmC,MAAO,eAAMnC,MAAO,UACtB,CAAEmC,MAAO,qBAAOnC,MAAO,WACvB,CAAEmC,MAAO,eAAMnC,MAAO,SACtB,CAAEmC,MAAO,eAAMnC,MAAO,UACtB,CAAEmC,MAAO,eAAMnC,MAAO,aAExB9B,SAAUA,CAAC8B,EAAO8C,EAAIU,KAA8B,IAA5B,QAAEC,EAAO,UAAEC,GAAWF,EAC5CG,WAAW,KACTF,EAAQG,SAAS,CACff,KAAM,eACNgB,UAAW,QACXC,WAAYJ,EAAU,GAAGK,MACzB/D,MAAO,MAER,SAGPzC,EAAAA,EAAAA,KAACkB,EAAK,CACJoE,KAAK,eACLV,MAAM,qBACNoB,KAAK,gBACLS,QAASC,IAA8B,IAA7B,SAAEhB,EAAQ,UAAES,GAAWO,EAC/B,MAA6D,aAAtDC,IAAIjB,EAASlC,MAAM,GAADa,OAAK8B,EAAU,GAAGK,MAAK,cAGpDxG,EAAAA,EAAAA,KAAA,OACE+D,UAAWC,EACXsB,KAAK,eACLV,MAAM,qBACN6B,QAASG,IAA8B,IAA7B,SAAElB,EAAQ,UAAES,GAAWS,EAC/B,MAA6D,aAAtDD,IAAIjB,EAASlC,MAAM,GAADa,OAAK8B,EAAU,GAAGK,MAAK,WAChD3H,SACD,mBAOb,CACEqG,IAAK,QACLN,MAAO,qBACP/F,UACEmB,EAAAA,EAAAA,KAACgB,EAAI,CACH/B,IAAK4E,EACLsB,KAAM,CACJ1B,MAAOC,OAAO0B,KAAK3B,GAAO4B,IAAIC,IAErB,CACLA,OACAuB,MAHWpD,EAAM6B,OAOvBG,SAAUC,IACRnE,EAAUD,GACDoC,OAAOC,OAAO,CAAC,EAAGrC,EAAQ,CAC/BmC,MAAOkC,IACLD,EAASjC,MACT,CAACmC,EAAQnD,KACPmD,EAAOnD,EAAM6C,MAAQ7C,EAAMoE,OAE7B,CAAC,OAIPhI,UACFmB,EAAAA,EAAAA,KAACiB,EAAS,CACR6E,MAAM,qBACNR,KAAK,QACLS,KAAM,EAAC/F,EAAAA,EAAAA,KAACkB,EAAK,CAACoE,KAAK,OAAOV,MAAM,qBAAMoB,KAAK,mBAAoBhG,EAAAA,EAAAA,KAACkB,EAAK,CAACoE,KAAK,QAAQV,MAAM,QAAQoB,KAAK,wBAK9G,CACEd,IAAK,UACLN,MAAO,2BACP/F,UACEiI,EAAAA,EAAAA,MAACC,EAAAA,KAAI,CAACC,UAAQ,EAACC,IAAK,GAAGpI,SAAA,EACrBmB,EAAAA,EAAAA,KAACkH,EAAAA,SAAQ,CACPC,KAAK,QACLlC,MAAO,CACL,CACEC,IAAK,QACLN,MAAO,2BACP/F,UACEmB,EAAAA,EAAAA,KAACoH,EAAAA,MAAK,CACJC,SACErH,EAAAA,EAAAA,KAACa,EAAQ,CAAAhC,UACPmB,EAAAA,EAAAA,KAACc,EAAc,CACbwG,WAAY,CAAE9D,QAAOC,SACrB8D,IAAK,EACLC,QAAS,CACP,CACElC,KAAM,QACNQ,MAAO,iCACP2B,WAAYlC,GACH7B,OAAO0B,KAAKG,EAAK/B,OACrB6B,IAAIqC,GAAG,SAAArD,OAAaqD,IACpBC,KAAK,MAGZ,CACErC,KAAM,QACNQ,MAAO,iCACP2B,WAAYlC,GACH,CAAC,UAAW7B,OAAO0B,KAAKG,EAAK9B,QAAQkE,KAAK,MAGrD,CACErC,KAAM,MACNQ,MAAO,2BACP2B,WAAYA,IACH/D,OAAO0B,KAAK5E,GAAMmH,KAAK,iBAY3C,WAARrE,GAAoBQ,EACZ,QAARR,IACCwD,EAAAA,EAAAA,MAACc,EAAAA,SAAQ,CAAA/I,SAAA,EACPmB,EAAAA,EAAAA,KAAC4H,EAAAA,SAASC,MAAK,CAAAhJ,SAAEiF,KACjB9D,EAAAA,EAAAA,KAAC4H,EAAAA,SAASC,MAAK,CAAAhJ,SAAEsF,OAGZ,YAARb,GAAqBa,W,mBCzWrB2D,EAAEC,EAAQ,OAASC,EAAEC,OAAOC,IAAI,iBAAiBC,EAAEF,OAAOC,IAAI,kBAAkBE,EAAE1E,OAAO2E,UAAUC,eAAeC,EAAET,EAAEU,mDAAmDC,kBAAkBC,EAAE,CAACxD,KAAI,EAAGjG,KAAI,EAAG0J,QAAO,EAAGC,UAAS,GAChP,SAASC,EAAEC,EAAEC,EAAEC,GAAG,IAAIC,EAAEC,EAAE,CAAC,EAAEvH,EAAE,KAAKwH,EAAE,KAAiF,IAAIF,UAA3E,IAAID,IAAIrH,EAAE,GAAGqH,QAAQ,IAAID,EAAE7D,MAAMvD,EAAE,GAAGoH,EAAE7D,UAAU,IAAI6D,EAAE9J,MAAMkK,EAAEJ,EAAE9J,KAAc8J,EAAEX,EAAEgB,KAAKL,EAAEE,KAAKP,EAAEJ,eAAeW,KAAKC,EAAED,GAAGF,EAAEE,IAAI,GAAGH,GAAGA,EAAEO,aAAa,IAAIJ,KAAKF,EAAED,EAAEO,kBAAoB,IAAIH,EAAED,KAAKC,EAAED,GAAGF,EAAEE,IAAI,MAAM,CAACK,SAAStB,EAAExC,KAAKsD,EAAE5D,IAAIvD,EAAE1C,IAAIkK,EAAE3F,MAAM0F,EAAEK,OAAOhB,EAAE/I,QAAQ,CAAoBgK,EAAQC,IAAIZ,EAAEW,EAAQE,KAAKb,C,0HCNtWc,OAAOC,mBACTC,EAAAA,OAAOC,OAAO,CAAEC,MAAO,CAAEC,GAAG,GAAD3F,OAAK4F,IAAYN,OAAOC,mBAAkB,cAGvE,MA0BA,GA1BmBzJ,EAAAA,EAAAA,YAAW,CAACqD,EAAOvE,KACpC,MAAMiL,GAAShL,EAAAA,EAAAA,QAAO,CAAC,GAevB,OAdAkE,EAAAA,EAAAA,qBACEnE,EACA,MACEoE,SAAUA,IACD6G,EAAO1K,QAAQsE,OAAOT,WAE/BV,SAAUF,IACRyH,EAAO1K,QAAQsE,OAAOnB,SAASF,IAEjC0H,UAAWA,IAAMD,EAAO1K,QAAQsE,OAChCsG,UAAWA,IAAMF,EAAO1K,QAAQ6K,SAElC,KAGArK,EAAAA,EAAAA,KAACsK,KAAYnH,EAAAA,EAAAA,IAAAA,EAAAA,EAAAA,GAAA,GACPO,OAAOC,OAAO,CAAC,EAAG,CAAEpD,OAAQ,KAAOiD,IAAM,IAC7C+G,QAASA,CAACzG,EAAQuG,KAChBH,EAAO1K,QAAU,CAAEsE,SAAQuG,e,eCzBjCG,EAAOhB,QAAU,EAAjBgB,M,+KCFF,QAAgC,oC,eCUhC,MAAMC,GAAiBC,EAAAA,EAAAA,MAAK/L,IAAgB,IAAf,MAAEkD,GAAOlD,EACpC,OACEqB,EAAAA,EAAAA,KAAA,OAAK+D,UAAWC,EAAuBnF,UACrCmB,EAAAA,EAAAA,KAAA,OAAAnB,SAAMgD,QAKN8I,GAAgBC,EAAAA,EAAAA,kBAAiBxK,IAAoD,IAAnD,cAAExB,EAAa,SAAEC,EAAQ,MAAE2E,EAAK,KAAEhD,EAAO,CAAC,GAAGJ,EACnF,MAAOyB,EAAOgJ,IAAYzL,EAAAA,EAAAA,UAAS,OAC5B0L,EAAWC,IAAgB3L,EAAAA,EAAAA,UAAS,OACpC4L,EAAcC,IAAmB7L,EAAAA,EAAAA,UAAS,OAE3C,QAAEwD,EAAO,YAAEsI,GAAgBrM,EAC3B4E,GAAQzB,EAAAA,EAAAA,SAAQ,IACb2D,IACL/G,EACA,CAACgH,EAAQ4E,EAAQhE,KACfZ,EAAOsF,EAAY1E,IAAUgE,GAE/B,CAAC,GAEF,CAAC5L,EAAesM,IAGbC,GAAUnJ,EAAAA,EAAAA,SAAQ,IAAM0B,OAAO0B,KAAK5E,GAAO,CAACA,IAC5C4K,GAAYpJ,EAAAA,EAAAA,SAAQ,IAAM0B,OAAO2H,OAAO7K,GAAO,CAACA,IAkCtD,OA/BAN,EAAAA,EAAAA,WAAU,KACR,GAAK0C,EAKL,IACEiI,EAAS,MACT,MAAMS,GAAOC,EAAAA,EAAAA,WAAW,UAADlH,OAAWzB,EAAO,MAAM,CAAE4I,QAAS,CAAC,SAAU,WAAYF,KACjFL,EAAgBK,EAClB,CAAE,MAAO3J,GACPkJ,EAASlJ,GACTsJ,EAAgB,KAClB,MAXEA,EAAgB,OAYjB,CAACrI,KAGJ1C,EAAAA,EAAAA,WAAU,KACR,GAAK8K,EAEL,IACEH,EAAS,MAET,MAAMY,EAAiB,IAAIC,SAAS,QAAS,SAAU,QAAS,UAAWP,KAAYD,EAAaF,GAC9FW,EAAuBT,EAAY7F,IAAIC,GAAQ7B,EAAM6B,IAC3DmG,EAAeG,IAAOnC,GAAOsB,EAAatB,GAAMjG,EAAOqI,KAAST,KAAcO,EAChF,CAAE,MAAOhK,GACPkJ,EAASlJ,EACX,GACC,CAACqJ,EAAcvH,EAAOyH,EAAa1H,EAAO2H,EAASC,KAGpDtE,EAAAA,EAAAA,MAACC,EAAAA,KAAI,CAACC,UAAQ,EAAAnI,SAAA,EACZmB,EAAAA,EAAAA,KAAC8L,IAAa,CAACC,eAAgBtB,EAAe5L,SAAEqM,EAAYc,SAAWpN,EAAcoN,QAAShM,EAAAA,EAAAA,KAACiM,EAAAA,KAAI,IAAMnB,IACxGjJ,IAAS7B,EAAAA,EAAAA,KAACyK,EAAc,CAAC5I,MAAOA,EAAMwF,eAKvC/C,EAAoB2B,IAAyD,IAAtDrD,QAASsJ,EAAU1I,MAAO2I,EAAc,KAAE3L,GAAMyF,EAC3E,MAAM,QAAErD,EAAO,MAAEY,EAAK,MAAEC,EAAK,MAAE5B,IAAUG,EAAAA,EAAAA,SAAQ,KAC/C,IACE,IAAKkK,EACH,MAAO,CAAEtJ,QAAS,GAAIa,MAAO,CAAC,EAAGD,MAAO,CAAC,EAAG3B,MAAO,MAErD,MAAM,QAAEe,EAAO,MAAEY,EAAK,MAAEC,GAAUjC,KAAKC,OAAMC,EAAAA,EAAAA,QAAOwK,IAEpD,OAAOxI,OAAOC,OACZ,CAAC,EACD,CACEf,QAASA,GAAW,GACpBa,MAAOC,OAAOC,OAAO,CAAC,EAAGF,GACzBD,MAAOE,OAAOC,OACZ,CAAC,EACDH,GACEmC,IACEnC,EACA,CAACoC,EAAQnD,EAAO6C,KACdM,EAAON,GACD,CAAC,QAAS,SAAU,UAAW,UAAUO,QAAQpD,EAAM+C,OAAS,EAC3DhE,KAAKC,MAAMgB,EAAMpC,cAEP,WAAfoC,EAAM+C,KACD/C,EAAMpC,aAEI,aAAfoC,EAAM+C,KACD,IAAM,UADf,GAKJ,CAAC,IAGP3D,MAAO,MAGb,CAAE,MAAOF,GACP,MAAO,CAAEE,MAAOF,EAAE0F,SAAW,uCAC/B,GACC,CAAC6E,IAEEE,GAAcpK,EAAAA,EAAAA,SAAQ,IACnB0B,OAAOC,OAAO,CAAC,EAAGH,EAAO2I,GAC/B,CAACA,EAAgB3I,KAEd,SAAE3E,EAAQ,QAAEH,IAAYsD,EAAAA,EAAAA,SAAQ,KACpC,MAAMkJ,EAAcxH,OAAO0B,KAAK3B,GAChC,MAAO,CACL/E,QAAS,CAAC,qCAAqC2F,OAAO6G,EAAY7F,IAAIC,GAAQ7B,EAAM6B,KACpFzG,SAAU,CAAE+D,UAASsI,YAAa,CAAC,cAAc7G,OAAO6G,MAEzD,CAACzH,IAEJ,OAAI5B,GACK7B,EAAAA,EAAAA,KAACyK,EAAc,CAAC5I,MAAOA,KAGzB7B,EAAAA,EAAAA,KAAC2K,EAAa,CAACnH,MAAO4I,EAAa5L,KAAMA,EAAM9B,QAASA,EAASG,SAAUA,KAWpF,GARgC6L,EAAAA,EAAAA,MAAKlH,IAEjCxD,EAAAA,EAAAA,KAAC8L,IAAa,CAACC,eAAgBtB,EAAe5L,UAC5CmB,EAAAA,EAAAA,KAACsE,GAAiBnB,EAAAA,EAAAA,GAAA,GAAKK,M,mBC7IzB4E,EAAIL,EAAQ,OAEdyB,EAAQ1J,WAAasI,EAAEtI,WACDsI,EAAEiE,W","sources":["webpack://@kne-components/components-thirdparty/./src/components/LiveComponentEditor/style.module.scss?90c4","components/LiveComponentEditor/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","components/CodeEditor/index.js","../node_modules/react/jsx-runtime.js","webpack://@kne-components/components-thirdparty/./src/components/LiveComponentView/style.module.scss?b572","components/LiveComponentView/index.js","../node_modules/react-dom/client.js"],"sourcesContent":["// extracted by mini-css-extract-plugin\nexport default {\"code-editor\":\"style_code-editor__D+p0v__Glq7o\",\"preview\":\"style_preview__rTt65__Glq7o\",\"function-default-value\":\"style_function-default-value__Lucxh__Glq7o\"};","import { createWithRemoteLoader } from '@kne/remote-loader';\nimport { encode, decode } from 'plantuml-encoder';\nimport { Tabs, Flex, Alert, Segmented, Splitter, Collapse } from 'antd';\nimport { MenuOutlined, SplitCellsOutlined, EyeOutlined } from '@ant-design/icons';\nimport CodeEditor from '@components/CodeEditor';\nimport LiveComponentView from '@components/LiveComponentView';\nimport useRefCallback from '@kne/use-ref-callback';\nimport lodash from 'lodash';\nimport dayjs from 'dayjs';\nimport transform from 'lodash/transform';\nimport debounce from 'lodash/debounce';\nimport isEmpty from 'lodash/isEmpty';\nimport get from 'lodash/get';\nimport { useState, useRef, useEffect, useMemo, useImperativeHandle, forwardRef } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport style from './style.module.scss';\n\nconst SafeRender = createWithRemoteLoader({\n modules: ['components-core:Global@useGlobalContext', 'components-core:Global@PureGlobal']\n})(({ remoteModules, children }) => {\n const [useGlobalContext, PureGlobal] = remoteModules;\n const { global } = useGlobalContext();\n const ref = useRef(null);\n const [renderComponent] = useState(() =>\n debounce((children, locale, themeToken) => {\n ref.current.innerHTML = '';\n const dom = document.createElement('div');\n ref.current.appendChild(dom);\n const app = createRoot(dom);\n app.render(\n <PureGlobal preset={{ locale }} themeToken={themeToken}>\n {children}\n </PureGlobal>\n );\n }, 1000)\n );\n useEffect(() => {\n renderComponent(children, global.locale, global.themeToken);\n }, [children, global.locale, global.themeToken, renderComponent]);\n return <div ref={ref} />;\n});\n\nconst LiveComponentEditor = createWithRemoteLoader({\n modules: ['components-core:FormInfo', 'components-core:InfoPage', 'components-core:InfoPage@CentralContent', 'components-core:Common@SimpleBar']\n})(\n forwardRef(({ remoteModules, defaultValue, defaultMod = 'mix', height = 500, libs = { lodash, dayjs }, onChange }, ref) => {\n const [FormInfo, InfoPage, CentralContent, SimpleBar] = remoteModules;\n const { Form, TableList } = FormInfo;\n const { Input, Select } = FormInfo.fields;\n const codeEditorRef = useRef(null);\n const [params, setParams] = useState(() => {\n if (!defaultValue) {\n return {};\n }\n try {\n return JSON.parse(decode(defaultValue));\n } catch (e) {\n console.error(e);\n return {};\n }\n });\n const defaultValueRef = useRef(defaultValue);\n const outputContent = useMemo(() => {\n if (isEmpty(params)) {\n return '';\n }\n return encode(JSON.stringify(params));\n }, [params]);\n\n const [activeKey, setActiveKey] = useState('content');\n\n const handleChange = useRefCallback(onChange);\n\n // 创建稳定的 setValue debounced 函数\n const setValueDebouncedRef = useRef(null);\n\n if (!setValueDebouncedRef.current) {\n setValueDebouncedRef.current = debounce(\n (value, codeEditorRef) => {\n const newParams = (() => {\n try {\n return JSON.parse(decode(value));\n } catch (e) {\n console.error(e);\n return {};\n }\n })();\n setParams(newParams);\n codeEditorRef.current && codeEditorRef.current.setValue(newParams.content || '');\n },\n 500,\n { leading: true, trailing: true }\n );\n }\n\n // 创建稳定的 content update debounced 函数,避免频繁更新\n const updateContentDebouncedRef = useRef(null);\n\n if (!updateContentDebouncedRef.current) {\n updateContentDebouncedRef.current = debounce((newContent, setParams, prevParams) => {\n setParams(prev => ({ ...prev, content: newContent }));\n }, 300);\n }\n\n useImperativeHandle(\n ref,\n () => ({\n getValue: () => outputContent,\n setValue: value => setValueDebouncedRef.current(value, codeEditorRef)\n }),\n [outputContent]\n );\n useEffect(() => {\n if (defaultValueRef.current !== outputContent) {\n defaultValueRef.current = outputContent;\n handleChange && handleChange(outputContent);\n }\n }, [outputContent, handleChange]);\n const [mod, setMod] = useState(defaultMod);\n const { content, props, scope } = Object.assign({}, { content: '', props: {}, scope: {} }, params);\n const propsFormRef = useRef(null);\n const scopeFormRef = useRef(null);\n\n const editor = (\n <div className={style['code-editor']}>\n <CodeEditor\n ref={codeEditorRef}\n height={height}\n defaultValue={content}\n defaultLanguage=\"javascript\"\n onChange={value => updateContentDebouncedRef.current(value, setParams, params)}\n />\n </div>\n );\n\n const preview = (\n <SimpleBar\n style={{\n maxHeight: `${height}px`\n }}>\n <div className={style['preview']}>\n <SafeRender>\n <Form>\n <LiveComponentView content={outputContent} libs={libs} />\n </Form>\n </SafeRender>\n </div>\n </SimpleBar>\n );\n return (\n <Tabs\n activeKey={activeKey}\n onChange={activeKey => {\n setActiveKey(activeKey);\n propsFormRef.current && propsFormRef.current.submit();\n scopeFormRef.current && scopeFormRef.current.submit();\n }}\n tabBarExtraContent={\n activeKey === 'content' && (\n <Segmented\n value={mod}\n onChange={setMod}\n options={[\n {\n label: '编辑器',\n value: 'editor',\n icon: <MenuOutlined />\n },\n {\n label: '混合',\n value: 'mix',\n icon: <SplitCellsOutlined />\n },\n {\n label: '预览',\n value: 'preview',\n icon: <EyeOutlined />\n }\n ]}\n />\n )\n }\n items={[\n {\n key: 'props',\n label: '组件参数',\n children: (\n <Form\n ref={propsFormRef}\n data={{\n props: Object.keys(props).map(name => {\n const item = Object.assign({}, props[name]);\n return {\n name,\n type: item.type,\n defaultValue: item.defaultValue\n };\n })\n }}\n onSubmit={formData => {\n setParams(params => {\n return Object.assign({}, params, {\n props: transform(\n formData.props,\n (result, value) => {\n result[value.name] = {\n defaultValue: (() => {\n if (['array', 'object', 'boolean', 'number'].indexOf(value.type) > -1) {\n return value.defaultValue;\n }\n if (value.type === 'string') {\n return value.defaultValue;\n }\n if (value.type === 'function') {\n return '()=>null';\n }\n })(),\n type: value.type\n };\n },\n {}\n )\n });\n });\n }}>\n <TableList\n title=\"参数列表\"\n name=\"props\"\n list={[\n <Input name=\"name\" label=\"变量名\" rule=\"REQ LEN-0-100\" />,\n <Select\n name=\"type\"\n label=\"类型\"\n rule=\"REQ\"\n defaultValue=\"string\"\n options={[\n { label: '字符串', value: 'string' },\n { label: '数字', value: 'number' },\n { label: '布尔值', value: 'boolean' },\n { label: '数组', value: 'array' },\n { label: '对象', value: 'object' },\n { label: '函数', value: 'function' }\n ]}\n onChange={(value, item, { openApi, groupArgs }) => {\n setTimeout(() => {\n openApi.setField({\n name: 'defaultValue',\n groupName: 'props',\n groupIndex: groupArgs[0].index,\n value: ''\n });\n }, 100);\n }}\n />,\n <Input\n name=\"defaultValue\"\n label=\"默认值\"\n rule=\"REQ LEN-0-500\"\n display={({ formData, groupArgs }) => {\n return get(formData.props, `${groupArgs[0].index}.type`) !== 'function';\n }}\n />,\n <div\n className={style['function-default-value']}\n name=\"defaultValue\"\n label=\"默认值\"\n display={({ formData, groupArgs }) => {\n return get(formData.props, `${groupArgs[0].index}.type`) === 'function';\n }}>\n {'()=>null'}\n </div>\n ]}\n />\n </Form>\n )\n },\n {\n key: 'scope',\n label: '组件域',\n children: (\n <Form\n ref={scopeFormRef}\n data={{\n scope: Object.keys(scope).map(name => {\n const item = scope[name];\n return {\n name,\n token: item\n };\n })\n }}\n onSubmit={formData => {\n setParams(params => {\n return Object.assign({}, params, {\n scope: transform(\n formData.scope,\n (result, value) => {\n result[value.name] = value.token;\n },\n {}\n )\n });\n });\n }}>\n <TableList\n title=\"域列表\"\n name=\"scope\"\n list={[<Input name=\"name\" label=\"变量名\" rule=\"REQ LEN-0-100\" />, <Input name=\"token\" label=\"Token\" rule=\"REQ LEN-0-100\" />]}\n />\n </Form>\n )\n },\n {\n key: 'content',\n label: '组件内容',\n children: (\n <Flex vertical gap={12}>\n <Collapse\n size=\"small\"\n items={[\n {\n key: 'refer',\n label: '引用参考',\n children: (\n <Alert\n message={\n <InfoPage>\n <CentralContent\n dataSource={{ props, scope }}\n col={1}\n columns={[\n {\n name: 'props',\n title: '可使用参数',\n getValueOf: item => {\n return Object.keys(item.props)\n .map(str => `props.${str}`)\n .join(',');\n }\n },\n {\n name: 'scope',\n title: '可使用组件',\n getValueOf: item => {\n return ['Antd', ...Object.keys(item.scope)].join(',');\n }\n },\n {\n name: 'lib',\n title: '可使用库',\n getValueOf: () => {\n return Object.keys(libs).join(',');\n }\n }\n ]}\n />\n </InfoPage>\n }\n />\n )\n }\n ]}\n />\n {mod === 'editor' && editor}\n {mod === 'mix' && (\n <Splitter>\n <Splitter.Panel>{editor}</Splitter.Panel>\n <Splitter.Panel>{preview}</Splitter.Panel>\n </Splitter>\n )}\n {mod === 'preview' && preview}\n </Flex>\n )\n }\n ]}\n />\n );\n })\n);\n\nexport default LiveComponentEditor;\n","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","import MonacoEditor, { loader } from '@monaco-editor/react';\nimport ensureSlash from '@kne/ensure-slash';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\n\nif (window.MONACO_EDITOR_DIR) {\n loader.config({ paths: { vs: `${ensureSlash(window.MONACO_EDITOR_DIR)}/min/vs` } });\n}\n\nconst CodeEditor = forwardRef((props, ref) => {\n const apiRef = useRef({});\n useImperativeHandle(\n ref,\n () => ({\n getValue: () => {\n return apiRef.current.editor.getValue();\n },\n setValue: value => {\n apiRef.current.editor.setValue(value);\n },\n getEditor: () => apiRef.current.editor,\n getMonaco: () => apiRef.current.monaco\n }),\n []\n );\n return (\n <MonacoEditor\n {...Object.assign({}, { height: 500 }, props)}\n onMount={(editor, monaco) => {\n apiRef.current = { editor, monaco };\n }}\n />\n );\n});\n\nexport default CodeEditor;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"error-message\":\"style_error-message__5udgI__Glq7o\"};","import React, { useEffect, useMemo, memo, useCallback, useState, useRef } from 'react';\nimport { decode } from 'plantuml-encoder';\nimport { withRemoteLoader } from '@kne/remote-loader';\nimport ErrorBoundary from '@kne/react-error-boundary';\nimport { transform as _transform } from '@babel/standalone';\nimport transform from 'lodash/transform';\nimport debounce from 'lodash/debounce';\nimport * as Antd from 'antd';\nimport { Flex, Spin } from 'antd';\nimport style from './style.module.scss';\n\nconst ErrorComponent = memo(({ error }) => {\n return (\n <div className={style['error-message']}>\n <pre>{error}</pre>\n </div>\n );\n});\n\nconst LiveComponent = withRemoteLoader(({ remoteModules, children, props, libs = {} }) => {\n const [error, setError] = useState(null);\n const [renderJsx, setRenderJsx] = useState(null);\n const [compiledCode, setCompiledCode] = useState(null);\n \n const { content, moduleNames } = children;\n const scope = useMemo(() => {\n return transform(\n remoteModules,\n (result, module, index) => {\n result[moduleNames[index]] = module;\n },\n {}\n );\n }, [remoteModules, moduleNames]);\n\n // 预计算 libs keys 和 values\n const libKeys = useMemo(() => Object.keys(libs), [libs]);\n const libValues = useMemo(() => Object.values(libs), [libs]);\n\n // 拆分 useEffect: 1) 编译代码 (content 变化时)\n useEffect(() => {\n if (!content) {\n setCompiledCode(null);\n return;\n }\n \n try {\n setError(null);\n const code = _transform(`render(${content});`, { presets: ['es2015', 'react'] }).code;\n setCompiledCode(code);\n } catch (e) {\n setError(e);\n setCompiledCode(null);\n }\n }, [content]);\n\n // 拆分 useEffect: 2) 渲染组件 (scope/moduleNames/libs 变化时,不需要重新编译)\n useEffect(() => {\n if (!compiledCode) return;\n\n try {\n setError(null);\n // eslint-disable-next-line no-new-func\n const runnerFunction = new Function('React', 'render', 'props', 'Antd', ...libKeys, ...moduleNames, compiledCode);\n const newModuleScopeValues = moduleNames.map(name => scope[name]);\n runnerFunction(React, jsx => setRenderJsx(jsx), props, Antd, ...libValues, ...newModuleScopeValues);\n } catch (e) {\n setError(e);\n }\n }, [compiledCode, scope, moduleNames, props, libKeys, libValues]);\n\n return (\n <Flex vertical>\n <ErrorBoundary errorComponent={ErrorComponent}>{moduleNames.length !== remoteModules.length ? <Spin /> : renderJsx}</ErrorBoundary>\n {error && <ErrorComponent error={error.message} />}\n </Flex>\n );\n});\n\nconst LiveComponentView = ({ content: inputStr, props: componentProps, libs }) => {\n const { content, props, scope, error } = useMemo(() => {\n try {\n if (!inputStr) {\n return { content: '', scope: {}, props: {}, error: null };\n }\n const { content, props, scope } = JSON.parse(decode(inputStr));\n\n return Object.assign(\n {},\n {\n content: content || '',\n scope: Object.assign({}, scope),\n props: Object.assign(\n {},\n props &&\n transform(\n props,\n (result, value, name) => {\n result[name] = (() => {\n if (['array', 'object', 'boolean', 'number'].indexOf(value.type) > -1) {\n return JSON.parse(value.defaultValue);\n }\n if (value.type === 'string') {\n return value.defaultValue;\n }\n if (value.type === 'function') {\n return () => null;\n }\n })();\n },\n {}\n )\n ),\n error: null\n }\n );\n } catch (e) {\n return { error: e.message || '参数无法解析' };\n }\n }, [inputStr]);\n \n const targetProps = useMemo(() => {\n return Object.assign({}, props, componentProps);\n }, [componentProps, props]);\n\n const { children, modules } = useMemo(() => {\n const moduleNames = Object.keys(scope);\n return {\n modules: ['components-core:Global@PureGlobal'].concat(moduleNames.map(name => scope[name])),\n children: { content, moduleNames: ['PureGlobal'].concat(moduleNames) }\n };\n }, [scope]); // 只依赖 scope,不需要依赖 content\n\n if (error) {\n return <ErrorComponent error={error} />;\n }\n\n return <LiveComponent props={targetProps} libs={libs} modules={modules} children={children} />;\n};\n\nconst LiveComponentsViewCatch = memo(props => {\n return (\n <ErrorBoundary errorComponent={ErrorComponent}>\n <LiveComponentView {...props} />\n </ErrorBoundary>\n );\n});\n\nexport default LiveComponentsViewCatch;\n","'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n"],"names":["SafeRender","createWithRemoteLoader","modules","_ref","remoteModules","children","useGlobalContext","PureGlobal","global","ref","useRef","renderComponent","useState","debounce","locale","themeToken","current","innerHTML","dom","document","createElement","appendChild","createRoot","render","_jsx","preset","useEffect","forwardRef","_ref2","defaultValue","defaultMod","height","libs","lodash","dayjs","onChange","FormInfo","InfoPage","CentralContent","SimpleBar","Form","TableList","Input","Select","fields","codeEditorRef","params","setParams","JSON","parse","decode","e","console","error","defaultValueRef","outputContent","useMemo","isEmpty","encode","stringify","activeKey","setActiveKey","handleChange","useRefCallback","setValueDebouncedRef","value","newParams","setValue","content","leading","trailing","updateContentDebouncedRef","newContent","prevParams","prev","_objectSpread","useImperativeHandle","getValue","mod","setMod","props","scope","Object","assign","propsFormRef","scopeFormRef","editor","className","style","CodeEditor","defaultLanguage","preview","maxHeight","concat","LiveComponentView","Tabs","submit","tabBarExtraContent","Segmented","options","label","icon","MenuOutlined","SplitCellsOutlined","EyeOutlined","items","key","data","keys","map","name","item","type","onSubmit","formData","transform","result","indexOf","title","list","rule","_ref3","openApi","groupArgs","setTimeout","setField","groupName","groupIndex","index","display","_ref4","get","_ref5","token","_jsxs","Flex","vertical","gap","Collapse","size","Alert","message","dataSource","col","columns","getValueOf","str","join","Splitter","Panel","f","require","k","Symbol","for","l","m","prototype","hasOwnProperty","n","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","ReactCurrentOwner","p","__self","__source","q","c","a","g","b","d","h","call","defaultProps","$$typeof","_owner","exports","jsx","jsxs","window","MONACO_EDITOR_DIR","loader","config","paths","vs","ensureSlash","apiRef","getEditor","getMonaco","monaco","MonacoEditor","onMount","module","ErrorComponent","memo","LiveComponent","withRemoteLoader","setError","renderJsx","setRenderJsx","compiledCode","setCompiledCode","moduleNames","libKeys","libValues","values","code","_transform","presets","runnerFunction","Function","newModuleScopeValues","React","Antd","ErrorBoundary","errorComponent","length","Spin","inputStr","componentProps","targetProps","hydrateRoot"],"ignoreList":[],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see 8959.92460333.chunk.js.LICENSE.txt */
2
- (self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[1605,1760,3986,4617,8959,9379],{20816(t,e,r){"use strict";r.d(e,{A:()=>o});var n=r(82284);function o(t){var e=function(t,e){if("object"!=(0,n.A)(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,e||"default");if("object"!=(0,n.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==(0,n.A)(e)?e:e+""}},38959(t,e,r){"use strict";r.r(e),r.d(e,{default:()=>A});var n=r(89379),o=r(53986),i=r(13050),c=r(98139),a=r.n(c),s=r(73884),u=r(57469),l=r.n(u),f=r(14409),p=r.n(f),y=r(91172),d=r.n(y),b=r(82784),m=r.n(b),v=r(8084),O=r.n(v),h=r(35852),_=r.n(h),g=r(62061),j=r.n(g);const w="style_calendar__03q35__u+SOm";var S=r(70579);const P=["remoteModules","className"],A=(0,i.createWithRemoteLoader)({modules:["components-core:Tooltip"]})((0,s.forwardRef)((t,e)=>{let{remoteModules:r,className:i}=t,c=(0,o.A)(t,P);const[u]=r,f=(0,s.useRef)(),y=j()(()=>{if(f.current){f.current.getApi().updateSize()}});(0,s.useImperativeHandle)(e,()=>f.current.getApi());const b=Object.assign({},{plugins:[d(),m(),O(),_()],initialView:"dayGridMonth",aspectRatio:1.6,weekends:!0,slotEventOverlap:!1,displayEventEnd:!0,editable:!1,firstDay:1,headerToolbar:{left:"prev,next today",center:"title",right:"dayGridMonth,timeGridWeek,timeGridDay,listWeek"},buttonText:{today:"\u4eca\u5929",month:"\u6708",week:"\u5468",day:"\u5929"},dayMinWidth:100,locale:"zh-cn",height:"auto",handleWindowResize:!1,dateClick:()=>{},eventClick:()=>{},eventContent:t=>{let{event:e}=t;const r=e.start?l()(e.start).format("HH:ss"):"",n=e.end?l()(e.end).format("HH:ss"):"",o="".concat(r&&n?r===n?"":"[".concat(r,"-").concat(n,"]"):"[".concat(r,"]")," ").concat(e.title);return(0,S.jsx)(u,{content:o,children:o})},initialDate:l()().format("YYYY-MM-DD")},c);return(0,S.jsx)("div",{className:a()(w,i),ref:y,children:(0,S.jsx)(p(),(0,n.A)((0,n.A)({},b),{},{ref:f}))})}))},51153(t,e,r){"use strict";var n=r(73884),o=Symbol.for("react.element"),i=Symbol.for("react.fragment"),c=Object.prototype.hasOwnProperty,a=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function u(t,e,r){var n,i={},u=null,l=null;for(n in void 0!==r&&(u=""+r),void 0!==e.key&&(u=""+e.key),void 0!==e.ref&&(l=e.ref),e)c.call(e,n)&&!s.hasOwnProperty(n)&&(i[n]=e[n]);if(t&&t.defaultProps)for(n in e=t.defaultProps)void 0===i[n]&&(i[n]=e[n]);return{$$typeof:o,type:t,key:u,ref:l,props:i,_owner:a.current}}e.jsx=u,e.jsxs=u},53986(t,e,r){"use strict";function n(t,e){if(null==t)return{};var r,n,o=function(t,e){if(null==t)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(-1!==e.indexOf(n))continue;r[n]=t[n]}return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)r=i[n],-1===e.indexOf(r)&&{}.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}r.d(e,{A:()=>n})},64467(t,e,r){"use strict";r.d(e,{A:()=>o});var n=r(20816);function o(t,e,r){return(e=(0,n.A)(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}},70579(t,e,r){"use strict";t.exports=r(51153)},82284(t,e,r){"use strict";function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}r.d(e,{A:()=>n})},89379(t,e,r){"use strict";r.d(e,{A:()=>i});var n=r(64467);function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function i(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?o(Object(r),!0).forEach(function(e){(0,n.A)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}},98139(t,e){var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var t="",e=0;e<arguments.length;e++){var r=arguments[e];r&&(t=c(t,i(r)))}return t}function i(t){if("string"===typeof t||"number"===typeof t)return t;if("object"!==typeof t)return"";if(Array.isArray(t))return o.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var e="";for(var r in t)n.call(t,r)&&t[r]&&(e=c(e,r));return e}function c(t,e){return e?t?t+" "+e:t+e:t}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()}}]);
3
- //# sourceMappingURL=8959.92460333.chunk.js.map
1
+ /*! For license information please see 8959.4a5ea116.chunk.js.LICENSE.txt */
2
+ (self.webpackChunk_kne_components_components_thirdparty=self.webpackChunk_kne_components_components_thirdparty||[]).push([[1605,1760,3986,4617,8959,9379],{20816(t,e,r){"use strict";r.d(e,{A:()=>o});var n=r(82284);function o(t){var e=function(t,e){if("object"!=(0,n.A)(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var o=r.call(t,e||"default");if("object"!=(0,n.A)(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==(0,n.A)(e)?e:e+""}},38959(t,e,r){"use strict";r.r(e),r.d(e,{default:()=>A});var n=r(89379),o=r(53986),i=r(13050),c=r(98139),a=r.n(c),s=r(73884),u=r(57469),l=r.n(u),f=r(14409),p=r.n(f),y=r(91172),d=r.n(y),b=r(82784),m=r.n(b),v=r(8084),O=r.n(v),h=r(35852),_=r.n(h),g=r(62061),j=r.n(g);const w="style_calendar__03q35__Glq7o";var S=r(70579);const P=["remoteModules","className"],A=(0,i.createWithRemoteLoader)({modules:["components-core:Tooltip"]})((0,s.forwardRef)((t,e)=>{let{remoteModules:r,className:i}=t,c=(0,o.A)(t,P);const[u]=r,f=(0,s.useRef)(),y=j()(()=>{if(f.current){f.current.getApi().updateSize()}});(0,s.useImperativeHandle)(e,()=>f.current.getApi());const b=Object.assign({},{plugins:[d(),m(),O(),_()],initialView:"dayGridMonth",aspectRatio:1.6,weekends:!0,slotEventOverlap:!1,displayEventEnd:!0,editable:!1,firstDay:1,headerToolbar:{left:"prev,next today",center:"title",right:"dayGridMonth,timeGridWeek,timeGridDay,listWeek"},buttonText:{today:"\u4eca\u5929",month:"\u6708",week:"\u5468",day:"\u5929"},dayMinWidth:100,locale:"zh-cn",height:"auto",handleWindowResize:!1,dateClick:()=>{},eventClick:()=>{},eventContent:t=>{let{event:e}=t;const r=e.start?l()(e.start).format("HH:ss"):"",n=e.end?l()(e.end).format("HH:ss"):"",o="".concat(r&&n?r===n?"":"[".concat(r,"-").concat(n,"]"):"[".concat(r,"]")," ").concat(e.title);return(0,S.jsx)(u,{content:o,children:o})},initialDate:l()().format("YYYY-MM-DD")},c);return(0,S.jsx)("div",{className:a()(w,i),ref:y,children:(0,S.jsx)(p(),(0,n.A)((0,n.A)({},b),{},{ref:f}))})}))},51153(t,e,r){"use strict";var n=r(73884),o=Symbol.for("react.element"),i=Symbol.for("react.fragment"),c=Object.prototype.hasOwnProperty,a=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function u(t,e,r){var n,i={},u=null,l=null;for(n in void 0!==r&&(u=""+r),void 0!==e.key&&(u=""+e.key),void 0!==e.ref&&(l=e.ref),e)c.call(e,n)&&!s.hasOwnProperty(n)&&(i[n]=e[n]);if(t&&t.defaultProps)for(n in e=t.defaultProps)void 0===i[n]&&(i[n]=e[n]);return{$$typeof:o,type:t,key:u,ref:l,props:i,_owner:a.current}}e.jsx=u,e.jsxs=u},53986(t,e,r){"use strict";function n(t,e){if(null==t)return{};var r,n,o=function(t,e){if(null==t)return{};var r={};for(var n in t)if({}.hasOwnProperty.call(t,n)){if(-1!==e.indexOf(n))continue;r[n]=t[n]}return r}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)r=i[n],-1===e.indexOf(r)&&{}.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}r.d(e,{A:()=>n})},64467(t,e,r){"use strict";r.d(e,{A:()=>o});var n=r(20816);function o(t,e,r){return(e=(0,n.A)(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}},70579(t,e,r){"use strict";t.exports=r(51153)},82284(t,e,r){"use strict";function n(t){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(t)}r.d(e,{A:()=>n})},89379(t,e,r){"use strict";r.d(e,{A:()=>i});var n=r(64467);function o(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),r.push.apply(r,n)}return r}function i(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?o(Object(r),!0).forEach(function(e){(0,n.A)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):o(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}},98139(t,e){var r;!function(){"use strict";var n={}.hasOwnProperty;function o(){for(var t="",e=0;e<arguments.length;e++){var r=arguments[e];r&&(t=c(t,i(r)))}return t}function i(t){if("string"===typeof t||"number"===typeof t)return t;if("object"!==typeof t)return"";if(Array.isArray(t))return o.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var e="";for(var r in t)n.call(t,r)&&t[r]&&(e=c(e,r));return e}function c(t,e){return e?t?t+" "+e:t+e:t}t.exports?(o.default=o,t.exports=o):void 0===(r=function(){return o}.apply(e,[]))||(t.exports=r)}()}}]);
3
+ //# sourceMappingURL=8959.4a5ea116.chunk.js.map