@next-bricks/advanced 0.50.0 → 0.50.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bricks.json +8 -8
- package/dist/chunks/{4837.252e0a15.js → 4837.efaf868f.js} +2 -2
- package/dist/chunks/{4837.252e0a15.js.map → 4837.efaf868f.js.map} +1 -1
- package/dist/chunks/{7218.a0df7078.js → 7218.27d24f55.js} +2 -2
- package/dist/chunks/{7218.a0df7078.js.map → 7218.27d24f55.js.map} +1 -1
- package/dist/chunks/{8382.6a118a39.js → 8382.37b568c1.js} +2 -2
- package/dist/chunks/{8382.6a118a39.js.map → 8382.37b568c1.js.map} +1 -1
- package/dist/chunks/{9118.2a6000ef.js → 9118.5b3f23c5.js} +3 -3
- package/dist/chunks/{9118.2a6000ef.js.map → 9118.5b3f23c5.js.map} +1 -1
- package/dist/chunks/948.cc530ed3.js +3 -0
- package/dist/chunks/948.cc530ed3.js.map +1 -0
- package/dist/chunks/{capture-snapshot.27f1b5a0.js → capture-snapshot.8f6e201d.js} +2 -2
- package/dist/chunks/{capture-snapshot.27f1b5a0.js.map → capture-snapshot.8f6e201d.js.map} +1 -1
- package/dist/chunks/{eo-cascader.b540372d.js → eo-cascader.f15962bc.js} +2 -2
- package/dist/chunks/{eo-cascader.b540372d.js.map → eo-cascader.f15962bc.js.map} +1 -1
- package/dist/chunks/{eo-next-table.337e35dc.js → eo-next-table.b3aa73a1.js} +2 -2
- package/dist/chunks/{eo-next-table.337e35dc.js.map → eo-next-table.b3aa73a1.js.map} +1 -1
- package/dist/chunks/{eo-table.65cb5fd5.js → eo-table.81f03d81.js} +2 -2
- package/dist/chunks/{eo-table.65cb5fd5.js.map → eo-table.81f03d81.js.map} +1 -1
- package/dist/chunks/{eo-tree-select.bf621207.js → eo-tree-select.b56998a8.js} +2 -2
- package/dist/chunks/{eo-tree-select.bf621207.js.map → eo-tree-select.b56998a8.js.map} +1 -1
- package/dist/chunks/{eo-tree.eaa6decf.js → eo-tree.09821737.js} +3 -3
- package/dist/chunks/{eo-tree.eaa6decf.js.map → eo-tree.09821737.js.map} +1 -1
- package/dist/chunks/{eo-workbench-layout-v2.849c18b3.js → eo-workbench-layout-v2.b3461c69.js} +3 -3
- package/dist/chunks/{eo-workbench-layout-v2.849c18b3.js.map → eo-workbench-layout-v2.b3461c69.js.map} +1 -1
- package/dist/chunks/{eo-workbench-layout.ccd7ef3e.js → eo-workbench-layout.ec167db5.js} +2 -2
- package/dist/chunks/{eo-workbench-layout.ccd7ef3e.js.map → eo-workbench-layout.ec167db5.js.map} +1 -1
- package/dist/chunks/main.fedc663e.js +2 -0
- package/dist/chunks/{main.6c8ad570.js.map → main.fedc663e.js.map} +1 -1
- package/dist/index.1f107633.js +2 -0
- package/dist/{index.1ce56ab2.js.map → index.1f107633.js.map} +1 -1
- package/dist/manifest.json +40 -40
- package/package.json +2 -2
- package/dist/chunks/948.0d1d643b.js +0 -3
- package/dist/chunks/948.0d1d643b.js.map +0 -1
- package/dist/chunks/main.6c8ad570.js +0 -2
- package/dist/index.1ce56ab2.js +0 -2
- /package/dist/chunks/{9118.2a6000ef.js.LICENSE.txt → 9118.5b3f23c5.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{948.0d1d643b.js.LICENSE.txt → 948.cc530ed3.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-tree.eaa6decf.js.LICENSE.txt → eo-tree.09821737.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{eo-workbench-layout-v2.849c18b3.js.LICENSE.txt → eo-workbench-layout-v2.b3461c69.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chunks/eo-workbench-layout-v2.849c18b3.js","mappings":";mIA4DAA,EAAOC,QAjBP,SAAgBC,GACd,GAAwB,oBAAbC,SACT,MAAO,CACLC,OAAQ,WAAmB,EAC3BC,OAAQ,WAAmB,GAG/B,IAAIC,EAAeJ,EAAQK,mBAAmBL,GAC9C,MAAO,CACLE,OAAQ,SAAgBI,IAjD5B,SAAeF,EAAcJ,EAASM,GACpC,IAAIC,EAAM,GACND,EAAIE,WACND,GAAO,cAAcE,OAAOH,EAAIE,SAAU,QAExCF,EAAII,QACNH,GAAO,UAAUE,OAAOH,EAAII,MAAO,OAErC,IAAIC,OAAiC,IAAdL,EAAIM,MACvBD,IACFJ,GAAO,SAASE,OAAOH,EAAIM,MAAMC,OAAS,EAAI,IAAIJ,OAAOH,EAAIM,OAAS,GAAI,OAE5EL,GAAOD,EAAIC,IACPI,IACFJ,GAAO,KAELD,EAAII,QACNH,GAAO,KAELD,EAAIE,WACND,GAAO,KAET,IAAIO,EAAYR,EAAIQ,UAChBA,GAA6B,oBAATC,OACtBR,GAAO,uDAAuDE,OAAOM,KAAKC,SAASC,mBAAmBC,KAAKC,UAAUL,MAAe,QAKtId,EAAQoB,kBAAkBb,EAAKH,EAAcJ,EAAQA,QACvD,CAoBMqB,CAAMjB,EAAcJ,EAASM,EAC/B,EACAH,OAAQ,YArBZ,SAA4BC,GAE1B,GAAgC,OAA5BA,EAAakB,WACf,OAAO,EAETlB,EAAakB,WAAWC,YAAYnB,EACtC,CAgBMoB,CAAmBpB,EACrB,EAEJ,+DC1De,SAASqB,EAAoBC,EAAGC,EAAGC,GAChD,OAAOA,GAAE,OAAiBF,EAAGC,GAC/B,sLCQI3B,EAAU,CAAC,EAEfA,EAAQoB,kBAAoB,IAC5BpB,EAAQ6B,cAAgB,IACxB7B,EAAQ8B,OAAS,SAAc,KAAM,QACrC9B,EAAQ+B,OAAS,IACjB/B,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,IAAQgC,OAAS,IAAQA,YAASC,6gBCsBnEC,EAAAA,EAAAA,qBAAoBC,EAAAA,GAAIC,EAAAA,GAExB,MAAM,cAAEC,GAAa,SAAEC,GAAQ,MAAEC,GAAK,OAAEC,KAAWC,EAAAA,EAAAA,oBAE7CC,IAAgBC,EAAAA,EAAAA,WAA+B,aAC/CC,IAAwBD,EAAAA,EAAAA,WAK5B,qBAAsB,CAAEE,cAAe,iBACnCC,IAAaC,EAAAA,EAAAA,gBAAmC,qBAKhDC,GAAa,GAAGC,OAAOC,SAASC,UAASC,EAAAA,EAAAA,8GAyBzCC,GAAcC,GAClBA,SAAAA,EAAKC,SAAS,KAAOD,EAAIE,MAAM,KAAK,GAAKF,GACrC,QAAEG,IAAYC,EAAAA,KAAKC,UAEZC,IAA6BC,EAAAA,EAAAA,aAGxC,SAAmCC,EAgBnCC,GACA,IAhBA,UACEC,EAAY,OACZC,QAASC,EAAY,2BACrBC,EAA0B,cAC1BC,EAAa,cACbC,EAAgB,GAAE,OAClBC,EAAM,kBACNC,EAAiB,SACjBC,EAAQ,OACRC,EAAM,SACNC,EAAQ,cACR7B,EAAa,UACb8B,EAAS,IACTC,GACDd,EAGD,MAAMe,GAA4BC,EAAAA,EAAAA,UAChC,KAAMC,EAAAA,EAAAA,eAAcC,EAAAA,aACpB,KAEI,EAAEC,IAAMC,EAAAA,EAAAA,gBAAe/C,EAAAA,IACvBgD,GAAgBC,EAAAA,EAAAA,QAAuB,MACvCC,GAAmBD,EAAAA,EAAAA,QAAuB,MAC1CE,GAAiBF,EAAAA,EAAAA,QAAsBlB,QAAAA,EAAgB,KACtDD,EAASsB,IAAeC,EAAAA,EAAAA,UAC7BF,EAAeG,SAEXC,GAAkBZ,EAAAA,EAAAA,UACtB,KAAMa,EAAAA,EAAAA,OAAMtB,EAAe,QAC3B,CAACA,KAEIuB,EAAMC,IAAWL,EAAAA,EAAAA,UAAiB,IAClCM,EAAoBC,IACzBP,EAAAA,EAAAA,YACIQ,GAAuBZ,EAAAA,EAAAA,UAEvBa,GAAaC,EAAAA,EAAAA,cAAajC,IAC9BqB,EAAeG,QAAUxB,EACzBsB,EAAYtB,EAAQ,GACnB,KAEHkC,EAAAA,EAAAA,qBAAoBpC,GAAK,KAAM,CAAGkC,iBAElC,MAAMG,GAAeF,EAAAA,EAAAA,cAClBjC,IACCgC,EAAWhC,GACXO,SAAAA,EAAWP,EAAQ,GAErB,CAACO,EAAUyB,IAmBPI,GAAqBH,EAAAA,EAAAA,cACxBI,IACC,IAAKhC,EACH,OAIF,GAAIgC,EAAcC,MAAMC,GAAMA,EAAEC,cAC9B,OAGF,MAAMC,GAAoBf,EAAAA,EAAAA,OAAM1B,EAAS,KACzC,IAAK,IAAIgB,EAAI,EAAGA,EAAIqB,EAAczF,OAAQoE,IAAK,CAC7C,MAAM,EAAE0B,EAAC,EAAEC,EAAC,EAAEC,EAAC,EAAEC,EAAC,EAAEC,EAAC,KAAEC,GAASV,EAAcrB,GAK7B,IAAAgC,EAJjB,GAAU,IAANL,GAAWD,EAAI,EACCL,EAAcY,MAC7BC,GAASA,EAAKJ,IAAMA,GAAgB,IAAXI,EAAKP,GAAWO,EAAKN,IAAMA,GAAKF,EAAI,MAG9DL,EAAcrB,GAAG+B,KAA4B,QAAxBC,EAAGX,EAAcrB,GAAG+B,YAAI,IAAAC,EAAAA,EAAIH,QAGnDR,EAAcrB,GAAG6B,EAAIE,QAAAA,EAAQF,EAC7BR,EAAcrB,GAAG+B,UAAO/E,CAE5B,CAEAmE,EACEE,EAAcc,KAAKZ,IAEV,IADYE,aAAiB,EAAjBA,EAAoBF,EAAEO,MACdP,EAAGa,KAAMhE,GAAWmD,EAAEO,OAEpD,GAEH,CAACX,EAAc9B,EAAQL,IAOnBqD,EAAoBA,KACxBlB,EAAa,GAAG,EAGZmB,GAAarB,EAAAA,EAAAA,cAAY,KAC7BzB,SAAAA,EAASR,EAAQ,GAChB,CAACA,EAASQ,IA0BP+C,EAAeA,CACnBC,EACAC,KAEA,MAAMC,GAAoBC,EAAAA,EAAAA,GACxBH,EAAUnE,IACVa,GAEIuC,GAAoBf,EAAAA,EAAAA,OAAM+B,EAAgB,KAC1CG,EAAa5D,EAAQmD,KAAKU,IACvB,IACFA,MACAC,EAAAA,EAAAA,MAAKrB,aAAiB,EAAjBA,EAAoBoB,EAAOf,GAAI,CAAC,IAAK,UAGjD,IAAIiB,EAAY,IACXL,KACAF,EAAUQ,SACblB,EAAG,GAAGU,EAAUnE,OAAO4E,KAAKC,WAC5BC,UAAWX,EAAUQ,SAASrB,EAC9BS,KAAMI,EAAUnE,IAChBqD,EAAGc,EAAUQ,SAASrB,EAAI,EAAI,EAAsB,EAAjB3C,EAAQpD,OAAc+E,EACzDiB,EAAGwB,KAEL,GAAIX,EAAgB,CAClB,MAAMY,EAAWZ,EAAeR,MAAMV,GAAc,sBAARA,EAAEO,IAM9C,OALAiB,EAAY,IACPA,MACAD,EAAAA,EAAAA,MAAKO,EAAU,IAAK,WAEzBlC,EAAa,CAAC4B,KAAcH,GAE9B,CACAzB,EAAanC,EAAQxD,OAAOuH,GAAW,EAGnCO,GAAmBrC,EAAAA,EAAAA,cACtBa,IAAc,IAAAyB,EACbpC,EAAmD,QAAvCoC,EAACvE,EAAQwE,QAAQtB,GAASA,EAAKJ,IAAMA,WAAE,IAAAyB,EAAAA,EAAI,GAAG,GAE5D,CAACpC,EAAcnC,IAIXyE,GAAexC,EAAAA,EAAAA,cACnB,CAACa,EAAW4B,KACV,MAAMC,EAAY3E,EAAQiD,MAAMY,GAAwBA,EAAOf,IAAMA,IAC/D8B,GAIF,GAH+B,WAA/BD,aAAS,EAATA,EAAWE,mBACTF,aAAS,EAATA,EAAWG,kBACX,GAEFJ,GACC/D,QAAAA,EApOW,OAqOZA,QAAAA,EArOY,IAFH,GAwOPoE,EAAO1E,EAAS4D,KAAKe,KAAKJ,GAAYA,EAE5C,GAAKD,IAEYtE,EAAS4D,KAAKe,KAAKL,EAAU9B,GAAK8B,EAAU9B,KAC5CkC,EAAM,CACrB,MAAMnB,EAAa5D,EAAQmD,KAAKD,GAC9BA,EAAKJ,IAAMA,EAAI,IAAKI,EAAML,EAAGkC,GAAS7B,IAExCf,EAAayB,EACf,IAEF,CAAC5D,EAASmC,EAAcxB,EAAKN,IAGzB4E,GAAcpE,EAAAA,EAAAA,UAAQ,IACnBb,EACJmD,KAAKU,IAAW,IAAAqB,EAAAC,EAAAC,EACf,MAAM5B,EAAY/B,EAAgBrC,GAAWyE,EAAOT,OACpD,IAAKI,EACH,OAAO,KAET,MAAM6B,EACmB,aAAvBxB,aAAM,EAANA,EAAQyB,YACJ,QAAQvG,KAAa8E,aAAM,EAANA,EAAQ0B,4CACN,cAAvB1B,aAAM,EAANA,EAAQyB,YACN,OACuB,WAAvBzB,aAAM,EAANA,EAAQyB,YACNzB,aAAM,EAANA,EAAQ0B,eACR,OACJC,EACwB,WAA5B3B,aAAM,EAANA,EAAQgB,iBACJ,GAAGhB,aAAM,EAANA,EAAQiB,qBAAqBjB,aAAM,EAANA,EAAQgB,mBAAmBhB,aAAM,EAANA,EAAQ4B,kBAC3C,QAD4DP,EACnFrB,aAAM,EAANA,EAAQgB,uBAAe,IAAAK,EAAAA,EAAI,oBAC5BQ,EAAe,GAA2B,QAA3BP,EAAGtB,aAAM,EAANA,EAAQ8B,wBAAgB,IAAAR,EAAAA,EAAI,MAEpD,OACES,IAAAA,cAAA,OACEC,UAAU,WACV,YAAW,IACa,QAAtBT,EAAI5B,EAAUQ,gBAAQ,IAAAoB,EAAAA,EAAI,CAAC,KACxBvB,EACHlB,EAAGkB,EAAOM,WAAaN,EAAOlB,GAEhCtD,IAAKwE,EAAOf,EACZgD,MAAO,IACDtC,EAAUsC,OAAS,CAAC,EACxBT,aACAG,SACAE,eACAK,eAAgB,eAGlBH,IAAAA,cAACI,EAAAA,OAAM,CAACC,eAAa,IAClBC,IAAc,IAAb,KAAEC,GAAMD,EAIR,OAHIC,EAAKC,QACP3B,EAAaZ,EAAOf,EAAGqD,EAAKC,QAG5BR,IAAAA,cAACS,EAAAA,EAA4B,CAC3B7C,UAAWA,EACXnD,OAAQA,EACRwD,OAAQA,EACRyC,SAAUhC,GACV,IAIJ,IAGTE,OAAO+B,UACT,CAACvG,EAASyB,EAAiBpB,EAAQiE,EAAkBG,IAElD+B,GAA8BvE,EAAAA,EAAAA,cAAY,KAC9C,GAAIb,GAAoBf,EAAQ,KAAAoG,EAAAC,EAC9B,MAAM,IAAEC,GACyC,QADpCF,EACa,QADbC,EACXtF,EAAiBI,eAAO,IAAAkF,GAAkB,QAAlBA,EAAxBA,EAA0BE,wBAAgB,IAAAF,OAAA,EAA1CA,EAA6C,UAAE,IAAAD,EAAAA,EAAK,CAAC,OAC/CzI,IAAR2I,GACE7E,EAAsB,CACpBsE,OAAQpK,SAAS6K,KAAKC,aAAeH,GAE3C,IACC,CAACtG,IAcJ,OAZA0G,EAAAA,EAAAA,YAAU,KACR,GAAI1G,EAKF,OAJAmG,IACAxE,EAAW/B,GAAgB,IAC3BjB,OAAOgI,iBAAiB,SAAUR,GAE3B,KACLxH,OAAOiI,oBAAoB,SAAUT,EAA4B,CAErE,GACC,CAACnG,EAAQmG,EAA6BvG,EAAc+B,IAGrD4D,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOC,kBAAmBrH,IAAKoB,GAC5Cb,GACCuF,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOE,iBAAkBtB,MAAOjE,GAC9C+D,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOG,gBAAiBtH,GACxC6F,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAO9G,eACpBA,aAAa,EAAbA,EAAe+C,KAAI,CAACK,EAAW8D,IAC9B1B,IAAAA,cAAC2B,EAAAA,EAA0B,CACzB/D,UAAWA,EACXgE,QAASA,KACPjE,EAAaC,EAAU,EAEzBiE,YAAaA,KACX1F,EAAqBP,QAAUgC,CAAS,EAE1CkE,UAAWA,KACT3F,EAAqBP,aAAUxD,CAAS,EAE1CqB,IAAKmE,EAAUnE,KAAOiI,OAGzBnH,aAAa,EAAbA,EAAewH,WACd/B,IAAAA,cAACgC,EAAAA,uBAAsB,CAACD,SAAUxH,EAAcwH,aAKxD/B,IAAAA,cAAA,OACEC,UAAWqB,EAAAA,EAAOW,cAClB/H,IAAKsB,EACL0E,MAAOjE,GAENxB,GACCuF,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOY,gBACrBlC,IAAAA,cAACnH,GAAa,CAAC2E,KAAK,UAAUoE,QAASlE,GACpCtC,EAAE+G,EAAAA,EAAEC,OAEPpC,IAAAA,cAACnH,GAAa,CAAC+I,QAjNJS,KACnBxH,SAAAA,GAAY,GAgNmCO,EAAE+G,EAAAA,EAAEG,SAC1C5H,GACCsF,IAAAA,cAACnH,GAAa,CACZ,cAAY,iBACZ+I,QAzNQW,KACpBzH,SAAAA,GAAa,GA0NAM,EAAE+G,EAAAA,EAAEK,UAGTxC,IAAAA,cAACjH,GAAqB,CACpB0J,QAASrH,EAAE+G,EAAAA,EAAEO,MACbC,KAAM,CAAEC,IAAK,OAAQD,KAAM,QAC3BE,QAAS,IACHjJ,GACA,CAAC,CAAEkJ,KAAM1H,EAAE+G,EAAAA,EAAEY,kBAAmBrK,MAAO,mBACvC,GACJ,CAAEoK,KAAM1H,EAAE+G,EAAAA,EAAEa,oBAAqBtK,MAAO,oBACxC,CAAEoK,KAAM1H,EAAE+G,EAAAA,EAAEc,WAAYC,QAAQ,EAAMxK,MAAO,UAE/CM,cAAgBmK,IAhODC,KACzB,MAAM,MAAE1K,GAAU0K,EAGX,UADC1K,EAEJO,GAAW,CACTuE,KAAM,UACN6F,MAAOjI,EAAE+G,EAAAA,EAAEmB,eACXC,QAASnI,EAAE+G,EAAAA,EAAEqB,yBACZC,KAAKhG,GAGRzE,SAAAA,EAAgBoK,EAAQhJ,QAAAA,EAAW,GACvC,EAoNYsJ,CAAkBP,EAAEQ,OAAO,EAE7B,cAAY,yBAIlB3D,IAAAA,cAAChF,EAAyB,CACxBiF,UAAW2D,IAAWtC,EAAAA,EAAOrD,OAAQ,CACnC,CAAC,GAAGqD,EAAAA,EAAOuC,cAAepJ,IAE5BqJ,gBAAiB,IAAIC,EAAAA,EAAiBC,wCACtCC,YAAa,CAAEC,GAAI,KAAMC,GAAI,KAAMC,GAAI,KACvCC,UA9YS,EA+YTtI,KAAM,CAAEmI,GAAI,EAAGC,GAAI,EAAGC,GAAI3J,EAAS,EAAI,GACvC6J,aAAa,EACb1H,YAAanC,EACb8J,YAAa9J,EACb+J,YAAY,WACZC,OAAQ,CAAC1J,QAAAA,EAnZE,GAmZmBA,QAAAA,EAlZlB,IAoZZ2J,kBAAkB,EAClBC,eAAgBA,KACd,GAAIxI,EAAqBP,QACvB,OAAOsC,EAAAA,EAAAA,MAAK/B,EAAqBP,QAAQwC,SAAU,CAAC,IAAK,KAC3D,EAEFwG,OAAS3G,IACH9B,EAAqBP,SACvB+B,EAAaxB,EAAqBP,QAASqC,EAC7C,EAEF4G,eAAgBrI,EAChBsI,mBArRuBC,CAACC,EAAwBC,KACtDjJ,EAAQiJ,EAAQ,GAsRT5F,IAKX,IAEA,IAAA6F,GAAA,IAAAC,GAAA,IAAAC,QAAAC,GAAA,IAAAD,QAAAE,GAAA,IAAAF,QAAAG,GAAA,IAAAH,QAAAI,GAAA,IAAAJ,QAAAK,GAAA,IAAAL,QAAAM,GAAA,IAAAN,QAAAO,GAAA,IAAAP,QAAAQ,GAAA,IAAAR,QAAAS,GAAA,IAAAT,QAAAU,GAAA,IAAAC,QAAAC,GAAA,IAAAZ,QAAAa,GAAA,IAAAb,QAAAc,GAAA,IAAAd,QAAAe,GAAA,IAAAf,QAAAgB,GAAA,IAAAhB,QAAAiB,GAAA,IAAAjB,QAAAkB,GAAA,IAAAlB,QAAAmB,GAAA,IAAAnB,QAAAoB,GAAA,IAAApB,QAIA,MAAAqB,WACkCC,EAAAA,iBAAiBC,WAAAA,GAAA,SAAAC,YAAAC,EAAAA,EAAAA,GAAA,KAAAf,KACjDgB,EAAAA,EAAAA,GAAA,KAAA3B,IAAa4B,EAAA,OAAGC,EAAAA,EAAAA,gBAA6CF,EAAAA,EAAAA,GAAA,KAAAzB,GAAA4B,EAAA,QAAAH,EAAAA,EAAAA,GAAA,KAAAxB,IAAA4B,EAAA,MAAAC,EAAA,SAAAL,EAAAA,EAAAA,GAAA,KAAAvB,IAAA6B,EAAA,MAAAC,EAAA,SAAAP,EAAAA,EAAAA,GAAA,KAAAtB,IAAA8B,EAAA,MAAAC,EAAA,SAAAT,EAAAA,EAAAA,GAAA,KAAArB,IAAA+B,EAAA,MAAAC,EAAA,SAiB7DX,EAAAA,EAAAA,GAAA,KAAApB,IAAAgC,EAAA,MAAAC,EAAA,SAQAb,EAAAA,EAAAA,GAAA,KAAAnB,IAAAiC,EAAA,MAAAC,EAAA,SAMAf,EAAAA,EAAAA,GAAA,KAAAlB,IAAAkC,EAAA,MAAAC,EAAA,SAAAjB,EAAAA,EAAAA,GAAA,KAAAjB,IAAAmC,EAAA,MAAAC,EAAA,SASAnB,EAAAA,EAAAA,GAAA,KAAAd,IAAakC,EAAA,MAAI9N,KACfxC,EAAAA,EAAAA,GAAAkO,GAAAqC,KAAKC,GAAaC,KAAKjO,EAAQ,KAC/B0M,EAAAA,EAAAA,GAAA,KAAAb,GAAAqC,EAAA,QAKFxB,EAAAA,EAAAA,GAAA,KAAAZ,IAAWqC,GAAA,MAAInO,KACbxC,EAAAA,EAAAA,GAAAkO,GAAAqC,KAAKK,IAAWH,KAAKjO,EAAQ,KAC7B0M,EAAAA,EAAAA,GAAA,KAAAX,GAAAsC,GAAA,QAKF3B,EAAAA,EAAAA,GAAA,KAAAV,IAAasC,GAAA,MAAG,MACd9Q,EAAAA,EAAAA,GAAAkO,GAAAqC,KAAKQ,IAAaN,MAAM,KACxBvB,EAAAA,EAAAA,GAAA,KAAAT,GAAAuC,GAAA,QAIF9B,EAAAA,EAAAA,GAAA,KAAAR,IAAcuC,GAAA,MAAG,MACfjR,EAAAA,EAAAA,GAAAkO,GAAAqC,KAAKW,IAAcT,MAAM,KAG3BvB,EAAAA,EAAAA,GAAA,KAAAP,GAAAwC,GAAA,QAaAjC,EAAAA,EAAAA,GAAA,KAAAN,IAAkBwC,GAAA,MAAG,CAAC5F,EAAsBhJ,MAC1CxC,EAAAA,EAAAA,GAAAkO,GAAAqC,KAAKc,IAAkBZ,KAAK,CAAEjF,SAAQhJ,YACtCgJ,EAAO1K,OACLyP,KAAKe,cAAc,IAAIC,YAAY/F,EAAO1K,MAAO,CAAEiL,OAAQvJ,IAAW,GACxE,cA9EOD,GAAS,OAAAiP,EAAAA,EAAAA,GAAA/D,GAAA,mBAATlL,CAASwC,IAAA0M,EAAAA,EAAAA,GAAAhE,GAAA,KAAA1I,EAAA,WAGTlC,GAAM,OAAA2O,EAAAA,EAAAA,GAAA9D,GAAA,gBAAN7K,CAAMkC,IAAA0M,EAAAA,EAAAA,GAAA/D,GAAA,KAAA3I,EAAA,YAGNvC,GAAO,OAAAgP,EAAAA,EAAAA,GAAA7D,GAAA,iBAAPnL,CAAOuC,IAAA0M,EAAAA,EAAAA,GAAA9D,GAAA,KAAA5I,EAAA,kBAGPpC,GAAa,OAAA6O,EAAAA,EAAAA,GAAA5D,GAAA,uBAAbjL,CAAaoC,IAAA0M,EAAAA,EAAAA,GAAA7D,GAAA,KAAA7I,EAAA,kBAGbnC,GAAa,OAAA4O,EAAAA,EAAAA,GAAA3D,GAAA,uBAAbjL,CAAamC,IAAA0M,EAAAA,EAAAA,GAAA5D,GAAA,KAAA9I,EAAA,+BAMbrC,GAA0B,OAAA8O,EAAAA,EAAAA,GAAA1D,GAAA,oCAA1BpL,CAA0BqC,IAAA0M,EAAAA,EAAAA,GAAA3D,GAAA,KAAA/I,EAAA,sBAQ1BjC,GAAiB,OAAA0O,EAAAA,EAAAA,GAAAzD,GAAA,2BAAjBjL,CAAiBiC,IAAA0M,EAAAA,EAAAA,GAAA1D,GAAA,KAAAhJ,EAAA,QAMjB5B,GAAG,OAAAqO,EAAAA,EAAAA,GAAAxD,GAAA,aAAH7K,CAAG4B,IAAA0M,EAAAA,EAAAA,GAAAzD,GAAA,KAAAjJ,EAAA,CAiDZP,UAAAA,CAAWhC,GAAmB,IAAAkP,EACF,QAA1BA,GAAAF,EAAAA,EAAAA,GAAKjE,GAALgD,MAAmBvM,eAAO,IAAA0N,GAA1BA,EAA4BlN,WAAWhC,EACzC,CAEAmP,iBAAAA,GAGOpB,KAAKjI,MAAMsJ,UACdrB,KAAKjI,MAAMsJ,QAAU,SAEvBC,MAAMF,mBACR,CAEAG,MAAAA,GACE,OACE1J,IAAAA,cAACjG,GAA0B,CACzBI,UAAWgO,KAAKhO,UAChBC,QAAS+N,KAAK/N,QACdW,IAAKoN,KAAKpN,IACVR,cAAe4N,KAAK5N,cACpBC,cAAe2N,KAAK3N,cACpBE,kBAAmByN,KAAKzN,kBACxBD,OAAQ0N,KAAK1N,OACbH,2BAA4B6N,KAAK7N,2BACjCK,UAAUyO,EAAAA,EAAAA,GAAKpD,GAALmC,MACVvN,QAAQwO,EAAAA,EAAAA,GAAKlD,GAALiC,MACRtN,UAAUuO,EAAAA,EAAAA,GAAKhD,GAAL+B,MACVnP,eAAeoQ,EAAAA,EAAAA,GAAK5C,GAAL2B,MACfrN,WAAWsO,EAAAA,EAAAA,GAAK9C,GAAL6B,MACXjO,KAAKkP,EAAAA,EAAAA,GAAKjE,GAALgD,OAGX,EACDwB,EAAAlD,KAAAtD,GAAA8D,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAG,EAAAwB,EAAA1B,EAAAI,EAAAE,GAAAqB,GAAAtB,GAAAE,GAAAE,GAAAmB,GAAApB,GAAAE,GAAAE,GAAAiB,GAAAlB,GAAAE,GAAAE,GAAAe,GAAAhB,GAAAjC,GAAAkD,GAAA/E,GAAAgF,KAAAC,EAAAA,EAAAA,GAAAR,EAAA,CAvHAnR,GAAc,yBAA0B,CAAE4R,eAAe,KAAQ,EAI/D3R,KAAU,gBAGVA,GAAS,CAAE+E,KAAMmD,UAAU,aAG3BlI,GAAS,CAAE4R,WAAW,IAAQ,cAG9B5R,GAAS,CAAE4R,WAAW,IAAQ,oBAG9B5R,GAAS,CAAE4R,WAAW,IAAQ,oBAM9B5R,GAAS,CAAE4R,WAAW,IAAQ,iCAQ9B5R,GAAS,CAAE+E,KAAMmD,UAAU,wBAM3BlI,GAAS,CAAE+E,KAAM8M,SAAS,UAG1B5R,GAAM,CAAE8E,KAAM,WAAW,gBAAA+M,IAAAnB,EAAAA,EAAAA,GAAAvD,GAAA0E,GAAA,CAAAA,EAAA5N,KAAA0M,EAAAA,EAAAA,GAAAxD,GAAA0E,EAAA5N,IAAA,CAOzBjE,GAAM,CAAE8E,KAAM,SAAS,cAAA+M,IAAAnB,EAAAA,EAAAA,GAAAnD,GAAAsE,GAAA,CAAAA,EAAA5N,KAAA0M,EAAAA,EAAAA,GAAApD,GAAAsE,EAAA5N,IAAA,CAOvBjE,GAAM,CAAE8E,KAAM,WAAW,gBAAA+M,IAAAnB,EAAAA,EAAAA,GAAAjD,GAAAoE,GAAA,CAAAA,EAAA5N,KAAA0M,EAAAA,EAAAA,GAAAlD,GAAAoE,EAAA5N,IAAA,CAOzBjE,GAAM,CAAE8E,KAAM,YAAY,iBAAA+M,IAAAnB,EAAAA,EAAAA,GAAA/C,GAAAkE,GAAA,CAAAA,EAAA5N,KAAA0M,EAAAA,EAAAA,GAAAhD,GAAAkE,EAAA5N,IAAA,CAa1BjE,GAAM,CAAE8E,KAAM,iBAAiB,qBAAA+M,IAAAnB,EAAAA,EAAAA,GAAA7C,GAAAgE,GAAA,CAAAA,EAAA5N,KAAA0M,EAAAA,EAAAA,GAAA9C,GAAAgE,EAAA5N,IAAA,CAY/BhE,KAAQ,oBAAA6R,GAAAhE,GAAAiE,KAAAC,EAAAA,EAAAA,GAAAF,KApFuB9D,EAAAA,mBAAgBwD,kCClelDjU,EAAOC,QANP,SAAwCK,GACtC,IAAIoU,EAAmD,KACnDA,GACFpU,EAAaqU,aAAa,QAASD,EAEvC,uLCGIxU,EAAU,CAAC,EAEfA,EAAQoB,kBAAoB,IAC5BpB,EAAQ6B,cAAgB,IACxB7B,EAAQ8B,OAAS,SAAc,KAAM,QACrC9B,EAAQ+B,OAAS,IACjB/B,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,IAAQgC,OAAS,IAAQA,YAASC,kECxB5D,IAAK+J,EAAC,SAADA,GAAC,OAADA,EAAC,8BAADA,EAAC,sBAADA,EAAC,8CAADA,EAAC,YAADA,EAAC,gBAADA,EAAC,kBAADA,EAAC,YAADA,EAAC,oCAADA,EAAC,wCAADA,EAAC,sBAADA,CAAC,MAab,MA0Ba7J,EAAK,yCAELC,EAAU,CAAEsS,GA5BN,CACjBvH,cAAe,gBACfwH,UAAW,YACXtH,sBAAuB,kGACvBpB,KAAM,OACNE,OAAQ,SACRE,QAAS,UACTE,KAAM,OACNK,iBAAkB,mBAClBC,mBAAoB,qBACpBC,UAAW,aAkBgB8H,GAfV,CACjBzH,cAAe,OACfwH,UAAW,OACXtH,sBAAuB,0BACvBpB,KAAM,KACNE,OAAQ,KACRE,QAAS,KACTE,KAAM,KACNK,iBAAkB,QAClBC,mBAAoB,QACpBC,UAAW,wBCpCb,OAOC,WACA,aAEA,IAAI+H,EAAS,CAAC,EAAEC,eAEhB,SAASrH,IAGR,IAFA,IAAIsH,EAAU,GAELhO,EAAI,EAAGA,EAAI0J,UAAU5P,OAAQkG,IAAK,CAC1C,IAAIiO,EAAMvE,UAAU1J,GAChBiO,IACHD,EAAUE,EAAYF,EAASG,EAAWF,IAE5C,CAEA,OAAOD,CACR,CAEA,SAASG,EAAYF,GACpB,GAAmB,iBAARA,GAAmC,iBAARA,EACrC,OAAOA,EAGR,GAAmB,iBAARA,EACV,MAAO,GAGR,GAAIG,MAAMC,QAAQJ,GACjB,OAAOvH,EAAWpM,MAAM,KAAM2T,GAG/B,GAAIA,EAAIK,WAAaC,OAAOC,UAAUF,WAAaL,EAAIK,SAASA,WAAW9R,SAAS,iBACnF,OAAOyR,EAAIK,WAGZ,IAAIN,EAAU,GAEd,IAAK,IAAIzR,KAAO0R,EACXH,EAAOW,KAAKR,EAAK1R,IAAQ0R,EAAI1R,KAChCyR,EAAUE,EAAYF,EAASzR,IAIjC,OAAOyR,CACR,CAEA,SAASE,EAAaQ,EAAOC,GAC5B,OAAKA,EAIDD,EACIA,EAAQ,IAAMC,EAGfD,EAAQC,EAPPD,CAQT,CAEqC3V,EAAOC,SAC3C0N,EAAWkI,QAAUlI,EACrB3N,EAAOC,QAAU0N,QAKhB,KAFwB,EAAF,WACtB,OAAOA,CACP,UAFoB,OAEpB,YAIH,CArEA,sHCMA,MAAMmI,GAAcjT,EAAAA,EAAAA,WAAyC,WASvDsF,EAAW,CAAC,IAAK,IAAK,IAAK,KAE1B,SAAS4N,EACdC,GAEA,MAAM,UAAErO,EAAS,OAAEnD,EAAM,SAAEiG,EAAQ,OAAEzC,GAAWgO,EAa1ClK,GAAW9G,EAAAA,EAAAA,UACf,KAAMiR,EAAAA,EAAAA,WAAUtO,EAAUmE,WAC1B,CAACnE,EAAUmE,YAENoK,EAAaC,IAAkBzQ,EAAAA,EAAAA,WAAS,KAC7C0Q,EAAAA,EAAAA,MACE,IACKpO,EACHM,UAAWN,EAAOM,WAAaX,EAAUQ,SAASrB,EAClD5C,UAAWyD,EAAUyF,OAEvBjF,MAMJ+C,EAAAA,EAAAA,YAAU,KACR,MAAMmL,GAAiBD,EAAAA,EAAAA,MACrB,IACKpO,EACHM,UAAWN,EAAOM,WAAaX,EAAUQ,SAASrB,GAEpDqB,IAGGmO,EAAAA,EAAAA,SAAQD,EAAgBH,IAC3BC,EAAeE,EACjB,GACC,CAACrO,EAAQkO,EAAavO,EAAUQ,SAASrB,IAE5C,MAAMmC,GAAkBjE,EAAAA,EAAAA,UAAQ,IACU,KAAjCkR,aAAW,EAAXA,EAAajN,kBACfiN,aAAW,EAAXA,EAAajN,iBAA0B,EACxC,GACH,CAACiN,IAEEK,GAAcvR,EAAAA,EAAAA,UAAQ,IACnB,GAAKiE,GACX,CAACA,IACEuN,GAAYxR,EAAAA,EAAAA,UAAQ,IACjBgD,EAAOwO,WACb,CAACxO,IAEEyO,GAAqBzR,EAAAA,EAAAA,UAAQ,KAE1B,CACL8F,IAAM0L,EAAkB,EAFd,GAGVE,MAHU,MAKX,CAACF,IAEJ,OACEzM,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOsL,aACpBnS,GACCuF,IAAAA,cAAA,OACEC,UAAWqB,EAAAA,EAAOuL,SAClB3M,MAAO,CACLa,IAAKyL,GAEPM,YAvEqB3J,IAC3BA,EAAE4J,gBAAgB,EAuEZ,cAAY,8CAGhB/M,IAAAA,cAACgN,EAAAA,cAAa,CAACjL,SAAUA,EAAUkL,KAAMd,IACxC1R,GACCuF,IAAAA,cAAC+L,EAAW,CACVpJ,KAAK,SACLC,IAAI,OACJ1C,MAAOwM,EACPzM,UAAWqB,EAAAA,EAAO0C,WAClBpC,QA9EmBuB,IACzBA,EAAE4J,iBACFrM,SAAAA,EAAWzC,EAAOf,EAAE,EA6Ed,cAAY,2CAKtB,CAEO,MAAMuD,GAA+ByM,EAAAA,EAAAA,MAC1ClB,qFCrHEmB,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACnX,EAAOoX,GAAI,glBAAilB,KAE1nBF,EAAwBhV,OAAS,CAChC,kBAAqB,8BACrB,qBAAwB,iCACxB,mBAAsB,+BACtB,qBAAwB,iCACxB,uBAA0B,oCAE3B,+eCXIgV,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACnX,EAAOoX,GAAI,+gBAAghB,KAEzjBF,EAAwBhV,OAAS,CAChC,UAAa,sBACb,SAAY,qBACZ,WAAc,uBACd,YAAe,yBAEhB,2FCHO,SAASwJ,EACdsK,GAEA,MAAM,UAAErO,EAAS,QAAEgE,EAAO,YAAEC,EAAW,UAAEC,GAAcmK,GACjD,IAAExS,EAAG,MAAE4J,EAAK,UAAEiK,GAAc1P,EAElC,OACEoC,IAAAA,cAAA,OACEC,UAAWqB,EAAAA,EAAOiM,qBAClB,cAAY,iCAEZvN,IAAAA,cAAA,OAAKC,UAAWqB,EAAAA,EAAOkM,oBAAqBnK,GAC5CrD,IAAAA,cAAA,OACEC,UAAWqB,EAAAA,EAAOmM,qBAClBC,WAAS,EACT7L,YAAcsB,IACZA,EAAEwK,aAAaC,QAAQ,aAAcnU,GACrCoI,SAAAA,GAAe,EAEjBC,UAAWA,EACXF,QAASA,EACT,cAAY,2CAEZ5B,IAAAA,cAAA,OACEC,UAAWqB,EAAAA,EAAOuM,uBAClBC,IAAKR,EACLS,IAAK1K,KAKf,uLC9BIlN,EAAU,CAAC,EAEfA,EAAQoB,kBAAoB,IAC5BpB,EAAQ6B,cAAgB,IACxB7B,EAAQ8B,OAAS,SAAc,KAAM,QACrC9B,EAAQ+B,OAAS,IACjB/B,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,IAAQgC,OAAS,IAAQA,YAASC,0BCtBnE,IAAI4V,EAAc,GAClB,SAASC,EAAqBC,GAE5B,IADA,IAAIC,GAAU,EACLjR,EAAI,EAAGA,EAAI8Q,EAAYhX,OAAQkG,IACtC,GAAI8Q,EAAY9Q,GAAGgR,aAAeA,EAAY,CAC5CC,EAASjR,EACT,KACF,CAEF,OAAOiR,CACT,CACA,SAASC,EAAaC,EAAMlY,GAG1B,IAFA,IAAImY,EAAa,CAAC,EACdC,EAAc,GACTrR,EAAI,EAAGA,EAAImR,EAAKrX,OAAQkG,IAAK,CACpC,IAAII,EAAO+Q,EAAKnR,GACZmQ,EAAKlX,EAAQqY,KAAOlR,EAAK,GAAKnH,EAAQqY,KAAOlR,EAAK,GAClDmR,EAAQH,EAAWjB,IAAO,EAC1Ba,EAAa,GAAGtX,OAAOyW,EAAI,KAAKzW,OAAO6X,GAC3CH,EAAWjB,GAAMoB,EAAQ,EACzB,IAAIC,EAAoBT,EAAqBC,GACzCzX,EAAM,CACRC,IAAK4G,EAAK,GACVzG,MAAOyG,EAAK,GACZrG,UAAWqG,EAAK,GAChB3G,SAAU2G,EAAK,GACfvG,MAAOuG,EAAK,IAEd,IAA2B,IAAvBoR,EACFV,EAAYU,GAAmBC,aAC/BX,EAAYU,GAAmBE,QAAQnY,OAClC,CACL,IAAImY,EAAUC,EAAgBpY,EAAKN,GACnCA,EAAQ2Y,QAAU5R,EAClB8Q,EAAYe,OAAO7R,EAAG,EAAG,CACvBgR,WAAYA,EACZU,QAASA,EACTD,WAAY,GAEhB,CACAJ,EAAYnB,KAAKc,EACnB,CACA,OAAOK,CACT,CACA,SAASM,EAAgBpY,EAAKN,GAC5B,IAAI6Y,EAAM7Y,EAAQ+B,OAAO/B,GAYzB,OAXA6Y,EAAI3Y,OAAOI,GACG,SAAiBwY,GAC7B,GAAIA,EAAQ,CACV,GAAIA,EAAOvY,MAAQD,EAAIC,KAAOuY,EAAOpY,QAAUJ,EAAII,OAASoY,EAAOhY,YAAcR,EAAIQ,WAAagY,EAAOtY,WAAaF,EAAIE,UAAYsY,EAAOlY,QAAUN,EAAIM,MACzJ,OAEFiY,EAAI3Y,OAAOI,EAAMwY,EACnB,MACED,EAAI1Y,QAER,CAEF,CACAL,EAAOC,QAAU,SAAUmY,EAAMlY,GAG/B,IAAI+Y,EAAkBd,EADtBC,EAAOA,GAAQ,GADflY,EAAUA,GAAW,CAAC,GAGtB,OAAO,SAAgBgZ,GACrBA,EAAUA,GAAW,GACrB,IAAK,IAAIjS,EAAI,EAAGA,EAAIgS,EAAgBlY,OAAQkG,IAAK,CAC/C,IACIwE,EAAQuM,EADKiB,EAAgBhS,IAEjC8Q,EAAYtM,GAAOiN,YACrB,CAEA,IADA,IAAIS,EAAqBhB,EAAae,EAAShZ,GACtCkZ,EAAK,EAAGA,EAAKH,EAAgBlY,OAAQqY,IAAM,CAClD,IACIC,EAASrB,EADKiB,EAAgBG,IAEK,IAAnCrB,EAAYsB,GAAQX,aACtBX,EAAYsB,GAAQV,UACpBZ,EAAYe,OAAOO,EAAQ,GAE/B,CACAJ,EAAkBE,CACpB,CACF,0BCtEAnZ,EAAOC,QAVP,SAA2BQ,EAAKH,GAC9B,GAAIA,EAAagZ,WACfhZ,EAAagZ,WAAWC,QAAU9Y,MAC7B,CACL,KAAOH,EAAakZ,YAClBlZ,EAAamB,YAAYnB,EAAakZ,YAExClZ,EAAamZ,YAAYtZ,SAASuZ,eAAejZ,GACnD,CACF,gECXe,SAASmQ,EAA4BpQ,EAAKmZ,IACvD,OAA0BnZ,EAAKmZ,GAC/BA,EAAWC,IAAIpZ,EACjB,sKCOIN,EAAU,CAAC,EAEfA,EAAQoB,kBAAoB,IAC5BpB,EAAQ6B,cAAgB,IACxB7B,EAAQ8B,OAAS,SAAc,KAAM,QACrC9B,EAAQ+B,OAAS,IACjB/B,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKJ,KAAW,IAAQgC,QAAS,IAAQA,wHCnBtDgV,EAA0B,IAA4B,KAC1DA,EAAwBjQ,EAAE,KAC1BiQ,EAAwBjQ,EAAE,KAE1BiQ,EAAwBC,KAAK,CAACnX,EAAOoX,GAAI,sMAAuM,KAEhP,kCCTA,IAAIH,EAAO,CAAC,EA+BZjX,EAAOC,QAPP,SAA0B+B,EAAQiI,GAChC,IAAI4P,EAtBN,SAAmBA,GACjB,QAA4B,IAAjB5C,EAAK4C,GAAyB,CACvC,IAAIC,EAAc3Z,SAAS4Z,cAAcF,GAGzC,GAAI1W,OAAO6W,mBAAqBF,aAAuB3W,OAAO6W,kBAC5D,IAGEF,EAAcA,EAAYG,gBAAgBC,IAC5C,CAAE,MAAOhN,GAEP4M,EAAc,IAChB,CAEF7C,EAAK4C,GAAUC,CACjB,CACA,OAAO7C,EAAK4C,EACd,CAIeM,CAAUnY,GACvB,IAAK6X,EACH,MAAM,IAAIO,MAAM,2GAElBP,EAAOJ,YAAYxP,EACrB,iDC9BO,MAAMpC,EAAqC,CAChDS,UAAW,EACX+R,cAAc,EACdrR,gBAAiB,QACjBsR,kBAAmB,GACnBrR,gBAAiB,EACjBa,iBAAkB,EAClByQ,eAAgB,UAChB3Q,gBAAiB,UACjBH,WAAY,QAGD3B,EAA6BA,CACxC0S,EACAnW,KACoB,IAAAoW,EACpB,MAAMC,EAAyD,CAC7D,cAAe,CACbC,aAAc,2BACdN,cAAc,EACdO,aAAc,MAEhB,2BAA4B,CAC1BD,aAAc,yBACdN,cAAc,EACdO,aAAc,MAEhB,aAAc,CACZD,aAAc,0CACdN,cAAc,EACdO,aAAc,MAEhBC,kCAAmC,CACjCF,aAAc,+BACdN,cAAc,EACdO,aAAc,MAEhBE,gCAAiC,CAC/BH,aAAc,oCACdN,cAAc,EACdO,aAAc,SAEZvW,QAAAA,EAA8B,CAAC,GAErC,MAAO,IACFwD,KACkC,QAArC4S,EAAIC,aAAqB,EAArBA,EAAwBF,UAAS,IAAAC,EAAAA,EAAI,CAAC,EAC3C,oFC9CCvD,QAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACnX,EAAOoX,GAAI,yrDAA0rD,KAEnuDF,EAAwBhV,OAAS,CAChC,kBAAqB,8BACrB,iBAAoB,6BACpB,eAAkB,2BAClB,cAAiB,0BACjB,cAAiB,0BACjB,OAAU,mBACV,eAAkB,2BAClB,WAAc,wBAEf,kCCRAlC,EAAOC,QANP,SAA4BC,GAC1B,IAAI6a,EAAU5a,SAAS6a,cAAc,SAGrC,OAFA9a,EAAQ6B,cAAcgZ,EAAS7a,EAAQ+a,YACvC/a,EAAQ8B,OAAO+Y,EAAS7a,EAAQA,SACzB6a,CACT","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.module.css?66f3","webpack:///./src/workbench-layout-v2/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css?5d2f","webpack:///./src/workbench-layout-v2/i18n.ts","webpack:///../../node_modules/classnames/index.js","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.tsx","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.module.css","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.tsx","webpack:///./src/workbench-layout-v2/styles.module.css?4307","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///./src/workbench-layout-v2/styles.css?4d90","webpack:///./src/workbench-layout-v2/styles.css","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/workbench-layout-v2/utils.ts","webpack:///./src/workbench-layout-v2/styles.module.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DraggableComponentMenuItem.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DraggableComponentMenuItem.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport { UseSingleBrickConf } from \"@next-core/types\";\nimport { ReactUseMultipleBricks } from \"@next-core/react-runtime\";\nimport { auth } from \"@next-core/easyops-runtime\";\nimport { Layout, Responsive, WidthProvider } from \"react-grid-layout\";\nimport \"@next-core/theme\";\nimport type { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport {\n DropdownButton,\n DropdownButtonEvents,\n DropdownButtonEventsMap,\n DropdownButtonProps,\n} from \"@next-bricks/basic/dropdown-button\";\nimport type { showDialog as _showDialog } from \"@next-bricks/basic/data-providers/show-dialog/show-dialog\";\nimport { SimpleAction } from \"@next-bricks/basic/actions\";\nimport { keyBy, pick } from \"lodash\";\nimport { SizeMe } from \"react-sizeme\";\nimport { getBasePath } from \"@next-core/runtime\";\nimport {\n WorkbenchComponent,\n ExtraLayout,\n CardStyleConfig,\n} from \"../interfaces\";\nimport { DroppableComponentLayoutItem } from \"./DroppableComponentLayoutItem\";\nimport { DraggableComponentMenuItem } from \"./DraggableComponentMenuItem\";\nimport { getLayoutDefaultCardConfig } from \"./utils\";\n\nimport styles from \"./styles.module.css\";\nimport layoutItemStyles from \"./DroppableComponentLayoutItem.module.css\";\nimport \"./styles.css\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\nconst WrappedDropdownButton = wrapBrick<\n DropdownButton,\n DropdownButtonProps,\n DropdownButtonEvents,\n DropdownButtonEventsMap\n>(\"eo-dropdown-button\", { onActionClick: \"action.click\" });\nconst showDialog = unwrapProvider<typeof _showDialog>(\"basic.show-dialog\");\n\nconst ROW_HEIGHT = 1;\nconst MARGIN_WIDTH = 16;\nconst MARGIN_HEIGHT = 16;\nconst URl_PREFIX = `${window.location.origin}${getBasePath()}api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/sys-setting/object/`;\nexport interface EoWorkbenchLayoutV2Props {\n cardTitle?: string;\n layouts?: ExtraLayout[];\n toolbarBricks?: { useBrick: UseSingleBrickConf[] };\n componentList?: WorkbenchComponent[];\n isEdit?: boolean;\n showSettingButton?: boolean;\n customDefaultCardConfigMap?: Record<string, CardStyleConfig>;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentRef {\n setLayouts(layouts: ExtraLayout[]): void;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentProps\n extends EoWorkbenchLayoutV2Props {\n gap?: number;\n onChange?: (layout: ExtraLayout[]) => void;\n onSave?: (layout: ExtraLayout[]) => void;\n onCancel?: () => void;\n onActionClick?: (action: SimpleAction, layouts: ExtraLayout[]) => void;\n onSetting?: () => void;\n}\n\nconst getRealKey = (key: string): string =>\n key?.includes(\":\") ? key.split(\":\")[0] : key;\nconst { isAdmin } = auth.getAuth();\n\nexport const EoWorkbenchLayoutComponent = forwardRef<\n EoWorkbenchLayoutV2ComponentRef,\n EoWorkbenchLayoutV2ComponentProps\n>(function EoWorkbenchLayoutComponent(\n {\n cardTitle = \"卡片列表\",\n layouts: layoutsProps,\n customDefaultCardConfigMap,\n toolbarBricks,\n componentList = [],\n isEdit,\n showSettingButton,\n onChange,\n onSave,\n onCancel,\n onActionClick,\n onSetting,\n gap,\n },\n ref\n) {\n const ResponsiveReactGridLayout = useMemo(\n () => WidthProvider(Responsive),\n []\n );\n const { t } = useTranslation(NS);\n const gridLayoutRef = useRef<HTMLDivElement>(null);\n const layoutWrapperRef = useRef<HTMLDivElement>(null);\n const layoutCacheRef = useRef<ExtraLayout[]>(layoutsProps ?? []);\n const [layouts, _setLayouts] = useState<ExtraLayout[]>(\n layoutCacheRef.current\n );\n const keyComponentMap = useMemo(\n () => keyBy(componentList, \"key\"),\n [componentList]\n );\n const [cols, setCols] = useState<number>(3);\n const [layoutWrapperStyle, setLayoutWrapperStyle] =\n useState<React.CSSProperties>();\n const draggingComponentRef = useRef<WorkbenchComponent>();\n\n const setLayouts = useCallback((layouts: ExtraLayout[]) => {\n layoutCacheRef.current = layouts;\n _setLayouts(layouts);\n }, []);\n\n useImperativeHandle(ref, () => ({ setLayouts }));\n\n const handleChange = useCallback(\n (layouts: ExtraLayout[]) => {\n setLayouts(layouts);\n onChange?.(layouts);\n },\n [onChange, setLayouts]\n );\n\n // const handleDragCallback: ItemCallback = (layout, oldItem, newItem) => {\n // const placeholderDOM = gridLayoutRef.current?.querySelector(\n // \".react-grid-placeholder\"\n // );\n // if (placeholderDOM) {\n // if (newItem.w > 1 && newItem.x > 0) {\n // !placeholderDOM.classList.contains(\"forbidden\") &&\n // placeholderDOM.classList.add(\"forbidden\");\n // } else {\n // placeholderDOM.classList.contains(\"forbidden\") &&\n // placeholderDOM.classList.remove(\"forbidden\");\n // }\n // }\n // };\n\n /* istanbul ignore next */\n const handleLayoutChange = useCallback(\n (currentLayout: ExtraLayout[]) => {\n if (!isEdit) {\n return;\n }\n\n // 占位拖拽不触发 setLayouts\n if (currentLayout.some((v) => v.isDraggable)) {\n return;\n }\n\n const currentLayoutsMap = keyBy(layouts, \"i\");\n for (let t = 0; t < currentLayout.length; t++) {\n const { x, w, y, h, i, minH } = currentLayout[t];\n if (w === 1 && x < 2) {\n const matchItem = currentLayout.find(\n (item) => item.i !== i && item.w === 1 && item.y === y && x < 2\n );\n if (matchItem) {\n currentLayout[t].minH = currentLayout[t].minH ?? h;\n }\n } else {\n currentLayout[t].h = minH ?? h;\n currentLayout[t].minH = undefined;\n }\n }\n\n handleChange(\n currentLayout.map((v) => {\n const layoutItem = currentLayoutsMap?.[v.i];\n return { ...layoutItem, ...v, type: getRealKey(v.i) };\n })\n );\n },\n [handleChange, isEdit, layouts]\n );\n\n const handleBreakpointChange = (_newBreakpoint: string, newCols: number) => {\n setCols(newCols);\n };\n\n const handleClearLayout = () => {\n handleChange([]);\n };\n\n const handleSave = useCallback(() => {\n onSave?.(layouts);\n }, [layouts, onSave]);\n\n const handleSetting = () => {\n onSetting?.();\n };\n\n const handleCancel = () => {\n onCancel?.();\n };\n\n const handleActionClick = (action: SimpleAction) => {\n const { event } = action;\n\n switch (event) {\n case \"clear\":\n showDialog({\n type: \"confirm\",\n title: t(K.CLEAR_CONFIRM) as string,\n content: t(K.CLEAR_CONFIRM_MESSAGE),\n }).then(handleClearLayout);\n break;\n default:\n onActionClick?.(action, layouts ?? []);\n }\n };\n\n const addComponent = (\n component: WorkbenchComponent,\n currentLayouts?: Layout[]\n ): void => {\n const defaultCardConfig = getLayoutDefaultCardConfig(\n component.key,\n customDefaultCardConfigMap\n );\n const currentLayoutsMap = keyBy(currentLayouts, \"i\");\n const newLayouts = layouts.map((layout) => {\n return {\n ...layout,\n ...pick(currentLayoutsMap?.[layout.i], [\"x\", \"y\"]),\n };\n });\n let newLayout = {\n ...defaultCardConfig,\n ...component.position,\n i: `${component.key}:${Math.random()}`,\n cardWidth: component.position.w,\n type: component.key,\n x: component.position.w > 1 ? 0 : (layouts.length * 2) % cols,\n y: Infinity,\n };\n if (currentLayouts) {\n const dropItem = currentLayouts.find((v) => v.i === \"__dropping-elem__\");\n newLayout = {\n ...newLayout,\n ...pick(dropItem, \"x\", \"y\"),\n };\n handleChange([newLayout, ...newLayouts]);\n return;\n }\n handleChange(layouts.concat(newLayout));\n };\n\n const handleDeleteItem = useCallback(\n (i: string) => {\n handleChange(layouts.filter((item) => item.i !== i) ?? []);\n },\n [handleChange, layouts]\n );\n\n /* istanbul ignore next */\n const handleResize = useCallback(\n (i: string, contentHeight: number) => {\n const oldLayout = layouts.find((layout: ExtraLayout) => layout.i === i);\n const initNewH =\n ((oldLayout?.cardBorderStyle === \"solid\"\n ? oldLayout?.cardBorderWidth || 0\n : 0) *\n 2 +\n contentHeight +\n (gap ?? MARGIN_HEIGHT)) /\n ((gap ?? MARGIN_HEIGHT) + ROW_HEIGHT);\n const newH = isEdit ? Math.ceil(initNewH) : initNewH;\n\n if (!oldLayout) return;\n\n const currentH = isEdit ? Math.ceil(oldLayout.h) : oldLayout.h;\n if (currentH !== newH) {\n const newLayouts = layouts.map((item) =>\n item.i === i ? { ...item, h: newH } : item\n );\n handleChange(newLayouts);\n }\n },\n [layouts, handleChange, gap, isEdit]\n );\n\n const renderChild = useMemo(() => {\n return layouts\n .map((layout) => {\n const component = keyComponentMap[getRealKey(layout.type as string)];\n if (!component) {\n return null;\n }\n const background =\n layout?.cardBgType === \"picture\"\n ? `url(\"${URl_PREFIX}${layout?.cardBackground}\") no-repeat center / cover`\n : layout?.cardBgType === \"realNone\"\n ? \"none\"\n : layout?.cardBgType === \"color\"\n ? layout?.cardBackground\n : \"#fff\";\n const border =\n layout?.cardBorderStyle === \"solid\"\n ? `${layout?.cardBorderWidth}px ${layout?.cardBorderStyle} ${layout?.cardBorderColor}`\n : (layout?.cardBorderStyle ?? \"1px solid #e8e8e8\");\n const borderRadius = `${layout?.cardBorderRadius ?? 6}px`;\n\n return (\n <div\n className=\"drag-box\"\n data-grid={{\n ...(component.position ?? {}),\n ...layout,\n w: layout.cardWidth || layout.w,\n }}\n key={layout.i}\n style={{\n ...(component.style || {}),\n background,\n border,\n borderRadius,\n backdropFilter: \"blur(10px)\",\n }}\n >\n <SizeMe monitorHeight>\n {({ size }) => {\n if (size.height) {\n handleResize(layout.i, size.height);\n }\n return (\n <DroppableComponentLayoutItem\n component={component}\n isEdit={isEdit}\n layout={layout}\n onDelete={handleDeleteItem}\n />\n );\n }}\n </SizeMe>\n </div>\n );\n })\n .filter(Boolean);\n }, [layouts, keyComponentMap, isEdit, handleDeleteItem, handleResize]);\n\n const handleWatchLayoutSizeChange = useCallback(() => {\n if (layoutWrapperRef && isEdit) {\n const { top } =\n layoutWrapperRef.current?.getClientRects()?.[0] ?? ({} as DOMRect);\n top !== undefined &&\n setLayoutWrapperStyle({\n height: document.body.clientHeight - top,\n });\n }\n }, [isEdit]);\n\n useEffect(() => {\n if (isEdit) {\n handleWatchLayoutSizeChange();\n setLayouts(layoutsProps || []); // 编辑的情况下需要动态改变一些布局\n window.addEventListener(\"resize\", handleWatchLayoutSizeChange);\n\n return () => {\n window.removeEventListener(\"resize\", handleWatchLayoutSizeChange);\n };\n }\n }, [isEdit, handleWatchLayoutSizeChange, layoutsProps, setLayouts]);\n\n return (\n <div className={styles.gridLayoutWrapper} ref={gridLayoutRef}>\n {isEdit && (\n <div className={styles.componentWrapper} style={layoutWrapperStyle}>\n <div className={styles.componentTitle}>{cardTitle}</div>\n <div className={styles.componentList}>\n {componentList?.map((component, index) => (\n <DraggableComponentMenuItem\n component={component}\n onClick={() => {\n addComponent(component);\n }}\n onDragStart={() => {\n draggingComponentRef.current = component;\n }}\n onDragEnd={() => {\n draggingComponentRef.current = undefined;\n }}\n key={component.key || index}\n />\n ))}\n {toolbarBricks?.useBrick && (\n <ReactUseMultipleBricks useBrick={toolbarBricks.useBrick} />\n )}\n </div>\n </div>\n )}\n <div\n className={styles.layoutWrapper}\n ref={layoutWrapperRef}\n style={layoutWrapperStyle}\n >\n {isEdit && (\n <div className={styles.actionsWrapper}>\n <WrappedButton type=\"primary\" onClick={handleSave}>\n {t(K.SAVE)}\n </WrappedButton>\n <WrappedButton onClick={handleCancel}>{t(K.CANCEL)}</WrappedButton>\n {showSettingButton && (\n <WrappedButton\n data-testid=\"setting-button\"\n onClick={handleSetting}\n >\n {t(K.SETTING)}\n </WrappedButton>\n )}\n <WrappedDropdownButton\n btnText={t(K.MORE) as string}\n icon={{ lib: \"antd\", icon: \"down\" }}\n actions={[\n ...(isAdmin\n ? [{ text: t(K.SAVE_AS_TEMPLATE), event: \"saveAsTemplate\" }]\n : []),\n { text: t(K.LOAD_FROM_TEMPLATE), event: \"loadFromTemplate\" },\n { text: t(K.CLEAR_ALL), danger: true, event: \"clear\" },\n ]}\n onActionClick={(e) => {\n handleActionClick(e.detail);\n }}\n data-testid=\"edit-layout-actions\"\n />\n </div>\n )}\n <ResponsiveReactGridLayout\n className={classNames(styles.layout, {\n [`${styles.layoutEdit}`]: isEdit,\n })}\n draggableCancel={`.${layoutItemStyles.deleteIcon},.edit-actions,.ignore-item`}\n breakpoints={{ lg: 1300, md: 1024, sm: 768 }}\n rowHeight={ROW_HEIGHT}\n cols={{ lg: 3, md: 3, sm: isEdit ? 3 : 1 }}\n isResizable={false}\n isDraggable={isEdit}\n isDroppable={isEdit}\n compactType=\"vertical\"\n margin={[gap ?? MARGIN_WIDTH, gap ?? MARGIN_HEIGHT]}\n // onDrag={handleDragCallback}\n useCSSTransforms={false}\n onDropDragOver={() => {\n if (draggingComponentRef.current) {\n return pick(draggingComponentRef.current.position, [\"w\", \"h\"]);\n }\n }}\n onDrop={(layout) => {\n if (draggingComponentRef.current) {\n addComponent(draggingComponentRef.current, layout);\n }\n }}\n onLayoutChange={handleLayoutChange}\n onBreakpointChange={handleBreakpointChange}\n >\n {renderChild}\n </ResponsiveReactGridLayout>\n </div>\n </div>\n );\n});\n\n/**\n * 工作台布局V2, 未使用shadow dom\n */\nexport\n@defineElement(\"eo-workbench-layout-v2\", { shadowOptions: false })\nclass EoWorkbenchLayoutV2 extends ReactNextElement {\n #componentRef = createRef<EoWorkbenchLayoutV2ComponentRef>();\n\n @property()\n accessor cardTitle: string | undefined;\n\n @property({ type: Boolean })\n accessor isEdit: boolean | undefined;\n\n @property({ attribute: false })\n accessor layouts: ExtraLayout[] | undefined;\n\n @property({ attribute: false })\n accessor toolbarBricks: { useBrick: UseSingleBrickConf[] } | undefined;\n\n @property({ attribute: false })\n accessor componentList: WorkbenchComponent[] | undefined;\n\n /**\n * 自定义卡片默认配置, 用于覆盖默认卡片配置\n */\n @property({ attribute: false })\n accessor customDefaultCardConfigMap:\n | Record<string, CardStyleConfig>\n | undefined;\n\n /**\n * description: 用于设置页面样式和布局的按钮\n */\n @property({ type: Boolean })\n accessor showSettingButton: boolean | undefined;\n\n /**\n * description: 卡片间隔\n */\n @property({ type: Number })\n accessor gap: number | undefined;\n\n @event({ type: \"change\" })\n accessor #changeEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleChange = (layouts: ExtraLayout[]) => {\n this.#changeEvent.emit(layouts);\n };\n\n @event({ type: \"save\" })\n accessor #saveEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleSave = (layouts: ExtraLayout[]) => {\n this.#saveEvent.emit(layouts);\n };\n\n @event({ type: \"cancel\" })\n accessor #cancelEvent!: EventEmitter<void>;\n\n #handleCancel = () => {\n this.#cancelEvent.emit();\n };\n\n @event({ type: \"setting\" })\n accessor #settingEvent!: EventEmitter<void>;\n #handleSetting = () => {\n this.#settingEvent.emit();\n };\n\n /**\n * 操作点击事件\n * @detail {\n action: SimpleAction;\n layouts: Layout[];\n }\n */\n @event({ type: \"action.click\" })\n accessor #actionClickEvent!: EventEmitter<{\n action: SimpleAction;\n layouts: Layout[];\n }>;\n\n #handleActionClick = (action: SimpleAction, layouts: Layout[]): void => {\n this.#actionClickEvent.emit({ action, layouts });\n action.event &&\n this.dispatchEvent(new CustomEvent(action.event, { detail: layouts }));\n };\n\n @method()\n setLayouts(layouts: Layout[]) {\n this.#componentRef.current?.setLayouts(layouts);\n }\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <EoWorkbenchLayoutComponent\n cardTitle={this.cardTitle}\n layouts={this.layouts}\n gap={this.gap}\n toolbarBricks={this.toolbarBricks}\n componentList={this.componentList}\n showSettingButton={this.showSettingButton}\n isEdit={this.isEdit}\n customDefaultCardConfigMap={this.customDefaultCardConfigMap}\n onChange={this.#handleChange}\n onSave={this.#handleSave}\n onCancel={this.#handleCancel}\n onActionClick={this.#handleActionClick}\n onSetting={this.#handleSetting}\n ref={this.#componentRef}\n />\n );\n }\n}\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","export enum K {\n CLEAR_CONFIRM = \"CLEAR_CONFIRM\",\n CARD_LIST = \"CARD_LIST\",\n CLEAR_CONFIRM_MESSAGE = \"CLEAR_CONFIRM_MESSAGE\",\n SAVE = \"SAVE\",\n CANCEL = \"CANCEL\",\n SETTING = \"SETTING\",\n MORE = \"MORE\",\n SAVE_AS_TEMPLATE = \"SAVE_AS_TEMPLATE\",\n LOAD_FROM_TEMPLATE = \"LOAD_FROM_TEMPLATE\",\n CLEAR_ALL = \"CLEAR_ALL\"\n}\n\nconst en: Locale = {\n CLEAR_CONFIRM: \"Clear Confirm\",\n CARD_LIST: \"Card List\",\n CLEAR_CONFIRM_MESSAGE: \"All cards will be cleared and editing will start from scratch. This operation cannot be undone.\",\n SAVE: \"Save\",\n CANCEL: \"Cancel\",\n SETTING: \"Setting\",\n MORE: \"More\",\n SAVE_AS_TEMPLATE: \"Save As Template\",\n LOAD_FROM_TEMPLATE: \"Load From Template\",\n CLEAR_ALL: \"Clear All\"\n};\n\nconst zh: Locale = {\n CLEAR_CONFIRM: \"清空确认\",\n CARD_LIST: \"卡片列表\",\n CLEAR_CONFIRM_MESSAGE: \"将清空所有卡片,从零开始编辑,该操作无法撤回。\",\n SAVE: \"保存\",\n CANCEL: \"取消\",\n SETTING: \"设置\",\n MORE: \"更多\",\n SAVE_AS_TEMPLATE: \"另存为模板\",\n LOAD_FROM_TEMPLATE: \"从模板加载\",\n CLEAR_ALL: \"清空所有\"\n};\n\nexport const NS = \"bricks/advanced/eo-workbench-layout-v2\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { memo, useEffect, useMemo, useState } from \"react\";\nimport { ReactUseBrick } from \"@next-core/react-runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\n\nimport { WorkbenchComponent, ExtraLayout } from \"../interfaces\";\n\nimport styles from \"./DroppableComponentLayoutItem.module.css\";\nimport { cloneDeep, isEqual, omit } from \"lodash\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface DroppableComponentLayoutItemProps {\n component: WorkbenchComponent;\n layout: ExtraLayout;\n isEdit?: boolean;\n onDelete?(i: string): void;\n}\n\nconst position = [\"x\", \"y\", \"w\", \"h\"];\n\nexport function DroppableComponentLayoutItemElement(\n props: DroppableComponentLayoutItemProps\n): React.ReactElement {\n const { component, isEdit, onDelete, layout } = props;\n\n const handleEditMaskClick = (e: React.MouseEvent) => {\n e.preventDefault();\n };\n\n const handleDeleteClick = (e: React.MouseEvent) => {\n e.preventDefault();\n onDelete?.(layout.i);\n };\n /**\n * cloneDeep 操作是为了让 useBrick事件抛出的值是计算后的值\n */\n const useBrick = useMemo(\n () => cloneDeep(component.useBrick),\n [component.useBrick]\n );\n const [cardConfigs, setCardConfigs] = useState(() =>\n omit(\n {\n ...layout,\n cardWidth: layout.cardWidth || component.position.w,\n cardTitle: component.title,\n },\n position\n )\n );\n\n // todo 用于处理 layout 重新渲染导致页面卡顿\n /* istanbul ignore next */\n useEffect(() => {\n const newCardConfigs = omit(\n {\n ...layout,\n cardWidth: layout.cardWidth || component.position.w,\n },\n position\n );\n\n if (!isEqual(newCardConfigs, cardConfigs)) {\n setCardConfigs(newCardConfigs);\n }\n }, [layout, cardConfigs, component.position.w]);\n\n const cardBorderWidth = useMemo(() => {\n return cardConfigs?.cardBorderWidth !== 1\n ? (cardConfigs?.cardBorderWidth as any) - 1\n : 0;\n }, [cardConfigs]);\n\n const editMaskTop = useMemo(() => {\n return 45 + cardBorderWidth;\n }, [cardBorderWidth]);\n const noPadding = useMemo(() => {\n return layout.noPadding;\n }, [layout]);\n\n const deleteIconPosition = useMemo(() => {\n const top = 15;\n return {\n top: !noPadding ? top : 0,\n right: top,\n };\n }, [noPadding]);\n\n return (\n <div className={styles.itemWrapper}>\n {isEdit && (\n <div\n className={styles.editMask}\n style={{\n top: editMaskTop,\n }}\n onMouseDown={handleEditMaskClick}\n data-testid=\"droppable-component-layout-item-edit-mask\"\n />\n )}\n <ReactUseBrick useBrick={useBrick} data={cardConfigs} />\n {isEdit && (\n <WrappedIcon\n icon=\"delete\"\n lib=\"antd\"\n style={deleteIconPosition}\n className={styles.deleteIcon}\n onClick={handleDeleteClick}\n data-testid=\"droppable-component-layout-item-delete\"\n />\n )}\n </div>\n );\n}\n\nexport const DroppableComponentLayoutItem = memo(\n DroppableComponentLayoutItemElement\n);\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.componentItemIcon--znvUWa0v{font-size:16px;color:#262626;margin-top:2px}.componentItemWrapper--mLC8xy_9{display:flex;flex-direction:column}.componentItemTitle--zo3KGnys{font-weight:400;font-size:12px;color:#595959;line-height:18px;text-align:left;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.componentItemContent--zOG8IL31{background-color:#f3f4f7;cursor:move;display:flex;justify-content:center;align-items:center}.componentItemThumbnail--epDINDMl{background:#ffffff;border:4px solid #f3f4f7;width:96px;height:64px;border-radius:1px}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"componentItemIcon\": `componentItemIcon--znvUWa0v`,\n\t\"componentItemWrapper\": `componentItemWrapper--mLC8xy_9`,\n\t\"componentItemTitle\": `componentItemTitle--zo3KGnys`,\n\t\"componentItemContent\": `componentItemContent--zOG8IL31`,\n\t\"componentItemThumbnail\": `componentItemThumbnail--epDINDMl`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.component--MVAoEnGN{height:100%}.editMask--nl6r17tE{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.deleteIcon--tNyE_ou4{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.deleteIcon--tNyE_ou4:hover{color:var(--color-error)}.deleteIcon--tNyE_ou4:active{color:var(--color-error-active)}.itemWrapper--_lUkkTz1{position:relative;width:100%}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"component\": `component--MVAoEnGN`,\n\t\"editMask\": `editMask--nl6r17tE`,\n\t\"deleteIcon\": `deleteIcon--tNyE_ou4`,\n\t\"itemWrapper\": `itemWrapper--_lUkkTz1`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { WorkbenchComponent } from \"../interfaces\";\nimport styles from \"./DraggableComponentMenuItem.module.css\";\nexport interface DraggableComponentMenuItemProps {\n component: WorkbenchComponent;\n onClick?(): void;\n onDragStart?(): void;\n onDragEnd?(): void;\n}\n\nexport function DraggableComponentMenuItem(\n props: DraggableComponentMenuItemProps\n): React.ReactElement {\n const { component, onClick, onDragStart, onDragEnd } = props;\n const { key, title, thumbnail } = component;\n\n return (\n <div\n className={styles.componentItemWrapper}\n data-testid=\"draggable-component-menu-item\"\n >\n <div className={styles.componentItemTitle}>{title}</div>\n <div\n className={styles.componentItemContent}\n draggable\n onDragStart={(e) => {\n e.dataTransfer.setData(\"text/plain\", key);\n onDragStart?.();\n }}\n onDragEnd={onDragEnd}\n onClick={onClick}\n data-testid=\"draggable-component-menu-item-thumbnail\"\n >\n <img\n className={styles.componentItemThumbnail}\n src={thumbnail}\n alt={title}\n />\n </div>\n </div>\n );\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./styles.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./styles.css\";\n export default content && content.locals ? content.locals : undefined;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_0___ from \"-!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../../../node_modules/react-grid-layout/css/styles.css\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_1___ from \"-!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../../../node_modules/react-resizable/css/styles.css\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import { CardStyleConfig } from \"../interfaces\";\n\nexport const defaultCardConfig: CardStyleConfig = {\n cardWidth: 2,\n showMoreIcon: false,\n cardBorderStyle: \"solid\",\n cardTitleFontSize: 16,\n cardBorderWidth: 1,\n cardBorderRadius: 6,\n cardTitleColor: \"#262626\",\n cardBorderColor: \"#e8e8e8\",\n cardBgType: \"none\",\n};\n\nexport const getLayoutDefaultCardConfig = (\n cardType: string,\n customDefaultCardConfigMap?: Record<string, CardStyleConfig>\n): CardStyleConfig => {\n const moreLinkByCardTypeMap: Record<string, CardStyleConfig> = {\n \"notice-card\": {\n moreIconLink: \"/announcement-management\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n \"cmdb-object-collect-card\": {\n moreIconLink: \"/cmdb-model-management\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n \"itsm-todos\": {\n moreIconLink: \"/itsc-workbench/workbench?activeKey=run\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n abnormalResourceInspectionResults: {\n moreIconLink: \"/automatic-inspection/suites\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n abnormalSystemInspectionResults: {\n moreIconLink: \"/automatic-inspection/system/list\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n ...(customDefaultCardConfigMap ?? {}),\n };\n return {\n ...defaultCardConfig,\n ...(moreLinkByCardTypeMap?.[cardType] ?? {}),\n };\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.gridLayoutWrapper--DIttynOM{display:flex;height:100%;position:relative;width:100%}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP{width:132px;padding:6px 12px 6px 16px;overflow-y:auto;box-shadow:1px 0 0 0 var(--palette-gray-4);background:var(--color-fill-bg-container-1);z-index:998;position:sticky;top:0}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentTitle--nKf9GEoj{font-size:16px;padding:6px 0;font-weight:500;color:#262626;line-height:22px;text-align:left}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB{margin-top:12px;width:100%;display:flex;flex-direction:column;gap:10px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{flex:1;display:flex;flex-direction:column;align-items:center;width:100%;overflow:hidden}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{width:100%}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj{flex-grow:1}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layoutEdit--FVqWXNWj{overflow-y:auto}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{position:sticky;top:0;z-index:997;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"gridLayoutWrapper\": `gridLayoutWrapper--DIttynOM`,\n\t\"componentWrapper\": `componentWrapper--P8xsKOQP`,\n\t\"componentTitle\": `componentTitle--nKf9GEoj`,\n\t\"componentList\": `componentList--s3XnAYsB`,\n\t\"layoutWrapper\": `layoutWrapper--pk1t3UAR`,\n\t\"layout\": `layout--kz28taJj`,\n\t\"actionsWrapper\": `actionsWrapper--vQro2Dyn`,\n\t\"layoutEdit\": `layoutEdit--FVqWXNWj`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","_classPrivateGetter","s","r","a","setAttributes","insert","domAPI","locals","undefined","initializeReactI18n","NS","locales","defineElement","property","event","method","createDecorators","WrappedButton","wrapBrick","WrappedDropdownButton","onActionClick","showDialog","unwrapProvider","URl_PREFIX","window","location","origin","getBasePath","getRealKey","key","includes","split","isAdmin","auth","getAuth","EoWorkbenchLayoutComponent","forwardRef","_ref","ref","cardTitle","layouts","layoutsProps","customDefaultCardConfigMap","toolbarBricks","componentList","isEdit","showSettingButton","onChange","onSave","onCancel","onSetting","gap","ResponsiveReactGridLayout","useMemo","WidthProvider","Responsive","t","useTranslation","gridLayoutRef","useRef","layoutWrapperRef","layoutCacheRef","_setLayouts","useState","current","keyComponentMap","keyBy","cols","setCols","layoutWrapperStyle","setLayoutWrapperStyle","draggingComponentRef","setLayouts","useCallback","useImperativeHandle","handleChange","handleLayoutChange","currentLayout","some","v","isDraggable","currentLayoutsMap","x","w","y","h","i","minH","_currentLayout$t$minH","find","item","map","type","handleClearLayout","handleSave","addComponent","component","currentLayouts","defaultCardConfig","getLayoutDefaultCardConfig","newLayouts","layout","pick","newLayout","position","Math","random","cardWidth","Infinity","dropItem","handleDeleteItem","_layouts$filter","filter","handleResize","contentHeight","oldLayout","initNewH","cardBorderStyle","cardBorderWidth","newH","ceil","renderChild","_layout$cardBorderSty","_layout$cardBorderRad","_component$position","background","cardBgType","cardBackground","border","cardBorderColor","borderRadius","cardBorderRadius","React","className","style","backdropFilter","SizeMe","monitorHeight","_ref2","size","height","DroppableComponentLayoutItem","onDelete","Boolean","handleWatchLayoutSizeChange","_layoutWrapperRef$cur","_layoutWrapperRef$cur2","top","getClientRects","body","clientHeight","useEffect","addEventListener","removeEventListener","styles","gridLayoutWrapper","componentWrapper","componentTitle","index","DraggableComponentMenuItem","onClick","onDragStart","onDragEnd","useBrick","ReactUseMultipleBricks","layoutWrapper","actionsWrapper","K","SAVE","handleCancel","CANCEL","handleSetting","SETTING","btnText","MORE","icon","lib","actions","text","SAVE_AS_TEMPLATE","LOAD_FROM_TEMPLATE","CLEAR_ALL","danger","e","action","title","CLEAR_CONFIRM","content","CLEAR_CONFIRM_MESSAGE","then","handleActionClick","detail","classNames","layoutEdit","draggableCancel","layoutItemStyles","deleteIcon","breakpoints","lg","md","sm","rowHeight","isResizable","isDroppable","compactType","margin","useCSSTransforms","onDropDragOver","onDrop","onLayoutChange","onBreakpointChange","handleBreakpointChange","_newBreakpoint","newCols","_EoWorkbenchLayoutV","_componentRef","WeakMap","_A","_B","_C","_D","_E","_F","_G","_H","_I","_EoWorkbenchLayoutV2_brand","WeakSet","_handleChange","_J","_handleSave","_K","_handleCancel","_L","_handleSetting","_M","_handleActionClick","EoWorkbenchLayoutV2","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","createRef","_init_cardTitle","_init_extra_cardTitle","_init_isEdit","_init_extra_isEdit","_init_layouts","_init_extra_layouts","_init_toolbarBricks","_init_extra_toolbarBricks","_init_componentList","_init_extra_componentList","_init_customDefaultCardConfigMap","_init_extra_customDefaultCardConfigMap","_init_showSettingButton","_init_extra_showSettingButton","_init_gap","_init_extra_gap","_init_changeEvent","_init_extra_changeEvent","this","_get_changeEvent","emit","_init_saveEvent","_init_extra_saveEvent","_get_saveEvent","_init_cancelEvent","_init_extra_cancelEvent","_get_cancelEvent","_init_settingEvent","_init_extra_settingEvent","_get_settingEvent","_init_actionClickEvent","_init_extra_actionClickEvent","_get_actionClickEvent","dispatchEvent","CustomEvent","_classPrivateFieldGet","_classPrivateFieldSet","_classPrivateFieldGet2","connectedCallback","display","super","render","_EoWorkbenchLayoutV2","_set_changeEvent","_set_saveEvent","_set_cancelEvent","_set_settingEvent","_set_actionClickEvent","c","_initClass","_applyDecs","shadowOptions","attribute","Number","o","_","has","_checkInRHS","nonce","setAttribute","en","CARD_LIST","zh","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","toString","Object","prototype","call","value","newClass","default","WrappedIcon","DroppableComponentLayoutItemElement","props","cloneDeep","cardConfigs","setCardConfigs","omit","newCardConfigs","isEqual","editMaskTop","noPadding","deleteIconPosition","right","itemWrapper","editMask","onMouseDown","preventDefault","ReactUseBrick","data","memo","___CSS_LOADER_EXPORT___","push","id","thumbnail","componentItemWrapper","componentItemTitle","componentItemContent","draggable","dataTransfer","setData","componentItemThumbnail","src","alt","stylesInDOM","getIndexByIdentifier","identifier","result","modulesToDom","list","idCountMap","identifiers","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","privateSet","add","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","getTarget","Error","showMoreIcon","cardTitleFontSize","cardTitleColor","cardType","_moreLinkByCardTypeMa","moreLinkByCardTypeMap","moreIconLink","moreIconText","abnormalResourceInspectionResults","abnormalSystemInspectionResults","element","createElement","attributes"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"chunks/eo-workbench-layout-v2.b3461c69.js","mappings":"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","sources":["webpack:///../../node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.module.css?66f3","webpack:///./src/workbench-layout-v2/index.tsx","webpack:///../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css?5d2f","webpack:///./src/workbench-layout-v2/i18n.ts","webpack:///../../node_modules/classnames/index.js","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.tsx","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.module.css","webpack:///./src/workbench-layout-v2/DroppableComponentLayoutItem.module.css","webpack:///./src/workbench-layout-v2/DraggableComponentMenuItem.tsx","webpack:///./src/workbench-layout-v2/styles.module.css?4307","webpack:///../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack:///../../node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///./src/workbench-layout-v2/styles.css?4d90","webpack:///./src/workbench-layout-v2/styles.css","webpack:///../../node_modules/style-loader/dist/runtime/insertBySelector.js","webpack:///./src/workbench-layout-v2/utils.ts","webpack:///./src/workbench-layout-v2/styles.module.css","webpack:///../../node_modules/style-loader/dist/runtime/insertStyleElement.js"],"sourcesContent":["\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DraggableComponentMenuItem.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DraggableComponentMenuItem.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","import React, {\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport classNames from \"classnames\";\nimport { EventEmitter, createDecorators } from \"@next-core/element\";\nimport { ReactNextElement, wrapBrick } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport { UseSingleBrickConf } from \"@next-core/types\";\nimport { ReactUseMultipleBricks } from \"@next-core/react-runtime\";\nimport { auth } from \"@next-core/easyops-runtime\";\nimport { Layout, Responsive, WidthProvider } from \"react-grid-layout\";\nimport \"@next-core/theme\";\nimport type { Button, ButtonProps } from \"@next-bricks/basic/button\";\nimport {\n DropdownButton,\n DropdownButtonEvents,\n DropdownButtonEventsMap,\n DropdownButtonProps,\n} from \"@next-bricks/basic/dropdown-button\";\nimport type { showDialog as _showDialog } from \"@next-bricks/basic/data-providers/show-dialog/show-dialog\";\nimport { SimpleAction } from \"@next-bricks/basic/actions\";\nimport { keyBy, pick } from \"lodash\";\nimport { SizeMe } from \"react-sizeme\";\nimport { getBasePath } from \"@next-core/runtime\";\nimport {\n WorkbenchComponent,\n ExtraLayout,\n CardStyleConfig,\n} from \"../interfaces\";\nimport { DroppableComponentLayoutItem } from \"./DroppableComponentLayoutItem\";\nimport { DraggableComponentMenuItem } from \"./DraggableComponentMenuItem\";\nimport { getLayoutDefaultCardConfig } from \"./utils\";\n\nimport styles from \"./styles.module.css\";\nimport layoutItemStyles from \"./DroppableComponentLayoutItem.module.css\";\nimport \"./styles.css\";\nimport { K, NS, locales } from \"./i18n.js\";\nimport { useTranslation, initializeReactI18n } from \"@next-core/i18n/react\";\n\ninitializeReactI18n(NS, locales);\n\nconst { defineElement, property, event, method } = createDecorators();\n\nconst WrappedButton = wrapBrick<Button, ButtonProps>(\"eo-button\");\nconst WrappedDropdownButton = wrapBrick<\n DropdownButton,\n DropdownButtonProps,\n DropdownButtonEvents,\n DropdownButtonEventsMap\n>(\"eo-dropdown-button\", { onActionClick: \"action.click\" });\nconst showDialog = unwrapProvider<typeof _showDialog>(\"basic.show-dialog\");\n\nconst ROW_HEIGHT = 1;\nconst MARGIN_WIDTH = 16;\nconst MARGIN_HEIGHT = 16;\nconst URl_PREFIX = `${window.location.origin}${getBasePath()}api/gateway/object_store.object_store.GetObject/api/v1/objectStore/bucket/sys-setting/object/`;\nexport interface EoWorkbenchLayoutV2Props {\n cardTitle?: string;\n layouts?: ExtraLayout[];\n toolbarBricks?: { useBrick: UseSingleBrickConf[] };\n componentList?: WorkbenchComponent[];\n isEdit?: boolean;\n showSettingButton?: boolean;\n customDefaultCardConfigMap?: Record<string, CardStyleConfig>;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentRef {\n setLayouts(layouts: ExtraLayout[]): void;\n}\n\nexport interface EoWorkbenchLayoutV2ComponentProps\n extends EoWorkbenchLayoutV2Props {\n gap?: number;\n onChange?: (layout: ExtraLayout[]) => void;\n onSave?: (layout: ExtraLayout[]) => void;\n onCancel?: () => void;\n onActionClick?: (action: SimpleAction, layouts: ExtraLayout[]) => void;\n onSetting?: () => void;\n}\n\nconst getRealKey = (key: string): string =>\n key?.includes(\":\") ? key.split(\":\")[0] : key;\nconst { isAdmin } = auth.getAuth();\n\nexport const EoWorkbenchLayoutComponent = forwardRef<\n EoWorkbenchLayoutV2ComponentRef,\n EoWorkbenchLayoutV2ComponentProps\n>(function EoWorkbenchLayoutComponent(\n {\n cardTitle = \"卡片列表\",\n layouts: layoutsProps,\n customDefaultCardConfigMap,\n toolbarBricks,\n componentList = [],\n isEdit,\n showSettingButton,\n onChange,\n onSave,\n onCancel,\n onActionClick,\n onSetting,\n gap,\n },\n ref\n) {\n const ResponsiveReactGridLayout = useMemo(\n () => WidthProvider(Responsive),\n []\n );\n const { t } = useTranslation(NS);\n const gridLayoutRef = useRef<HTMLDivElement>(null);\n const layoutWrapperRef = useRef<HTMLDivElement>(null);\n const layoutCacheRef = useRef<ExtraLayout[]>(layoutsProps ?? []);\n const [layouts, _setLayouts] = useState<ExtraLayout[]>(\n layoutCacheRef.current\n );\n const keyComponentMap = useMemo(\n () => keyBy(componentList, \"key\"),\n [componentList]\n );\n const [cols, setCols] = useState<number>(3);\n const [layoutWrapperStyle, setLayoutWrapperStyle] =\n useState<React.CSSProperties>();\n const draggingComponentRef = useRef<WorkbenchComponent>();\n\n const setLayouts = useCallback((layouts: ExtraLayout[]) => {\n layoutCacheRef.current = layouts;\n _setLayouts(layouts);\n }, []);\n\n useImperativeHandle(ref, () => ({ setLayouts }));\n\n const handleChange = useCallback(\n (layouts: ExtraLayout[]) => {\n setLayouts(layouts);\n onChange?.(layouts);\n },\n [onChange, setLayouts]\n );\n\n // const handleDragCallback: ItemCallback = (layout, oldItem, newItem) => {\n // const placeholderDOM = gridLayoutRef.current?.querySelector(\n // \".react-grid-placeholder\"\n // );\n // if (placeholderDOM) {\n // if (newItem.w > 1 && newItem.x > 0) {\n // !placeholderDOM.classList.contains(\"forbidden\") &&\n // placeholderDOM.classList.add(\"forbidden\");\n // } else {\n // placeholderDOM.classList.contains(\"forbidden\") &&\n // placeholderDOM.classList.remove(\"forbidden\");\n // }\n // }\n // };\n\n /* istanbul ignore next */\n const handleLayoutChange = useCallback(\n (currentLayout: ExtraLayout[]) => {\n if (!isEdit) {\n return;\n }\n\n // 占位拖拽不触发 setLayouts\n if (currentLayout.some((v) => v.isDraggable)) {\n return;\n }\n\n const currentLayoutsMap = keyBy(layouts, \"i\");\n for (let t = 0; t < currentLayout.length; t++) {\n const { x, w, y, h, i, minH } = currentLayout[t];\n if (w === 1 && x < 2) {\n const matchItem = currentLayout.find(\n (item) => item.i !== i && item.w === 1 && item.y === y && x < 2\n );\n if (matchItem) {\n currentLayout[t].minH = currentLayout[t].minH ?? h;\n }\n } else {\n currentLayout[t].h = minH ?? h;\n currentLayout[t].minH = undefined;\n }\n }\n\n handleChange(\n currentLayout.map((v) => {\n const layoutItem = currentLayoutsMap?.[v.i];\n return { ...layoutItem, ...v, type: getRealKey(v.i) };\n })\n );\n },\n [handleChange, isEdit, layouts]\n );\n\n const handleBreakpointChange = (_newBreakpoint: string, newCols: number) => {\n setCols(newCols);\n };\n\n const handleClearLayout = () => {\n handleChange([]);\n };\n\n const handleSave = useCallback(() => {\n onSave?.(layouts);\n }, [layouts, onSave]);\n\n const handleSetting = () => {\n onSetting?.();\n };\n\n const handleCancel = () => {\n onCancel?.();\n };\n\n const handleActionClick = (action: SimpleAction) => {\n const { event } = action;\n\n switch (event) {\n case \"clear\":\n showDialog({\n type: \"confirm\",\n title: t(K.CLEAR_CONFIRM) as string,\n content: t(K.CLEAR_CONFIRM_MESSAGE),\n }).then(handleClearLayout);\n break;\n default:\n onActionClick?.(action, layouts ?? []);\n }\n };\n\n const addComponent = (\n component: WorkbenchComponent,\n currentLayouts?: Layout[]\n ): void => {\n const defaultCardConfig = getLayoutDefaultCardConfig(\n component.key,\n customDefaultCardConfigMap\n );\n const currentLayoutsMap = keyBy(currentLayouts, \"i\");\n const newLayouts = layouts.map((layout) => {\n return {\n ...layout,\n ...pick(currentLayoutsMap?.[layout.i], [\"x\", \"y\"]),\n };\n });\n let newLayout = {\n ...defaultCardConfig,\n ...component.position,\n i: `${component.key}:${Math.random()}`,\n cardWidth: component.position.w,\n type: component.key,\n x: component.position.w > 1 ? 0 : (layouts.length * 2) % cols,\n y: Infinity,\n };\n if (currentLayouts) {\n const dropItem = currentLayouts.find((v) => v.i === \"__dropping-elem__\");\n newLayout = {\n ...newLayout,\n ...pick(dropItem, \"x\", \"y\"),\n };\n handleChange([newLayout, ...newLayouts]);\n return;\n }\n handleChange(layouts.concat(newLayout));\n };\n\n const handleDeleteItem = useCallback(\n (i: string) => {\n handleChange(layouts.filter((item) => item.i !== i) ?? []);\n },\n [handleChange, layouts]\n );\n\n /* istanbul ignore next */\n const handleResize = useCallback(\n (i: string, contentHeight: number) => {\n const oldLayout = layouts.find((layout: ExtraLayout) => layout.i === i);\n const initNewH =\n ((oldLayout?.cardBorderStyle === \"solid\"\n ? oldLayout?.cardBorderWidth || 0\n : 0) *\n 2 +\n contentHeight +\n (gap ?? MARGIN_HEIGHT)) /\n ((gap ?? MARGIN_HEIGHT) + ROW_HEIGHT);\n const newH = isEdit ? Math.ceil(initNewH) : initNewH;\n\n if (!oldLayout) return;\n\n const currentH = isEdit ? Math.ceil(oldLayout.h) : oldLayout.h;\n if (currentH !== newH) {\n const newLayouts = layouts.map((item) =>\n item.i === i ? { ...item, h: newH } : item\n );\n handleChange(newLayouts);\n }\n },\n [layouts, handleChange, gap, isEdit]\n );\n\n const renderChild = useMemo(() => {\n return layouts\n .map((layout) => {\n const component = keyComponentMap[getRealKey(layout.type as string)];\n if (!component) {\n return null;\n }\n const background =\n layout?.cardBgType === \"picture\"\n ? `url(\"${URl_PREFIX}${layout?.cardBackground}\") no-repeat center / cover`\n : layout?.cardBgType === \"realNone\"\n ? \"none\"\n : layout?.cardBgType === \"color\"\n ? layout?.cardBackground\n : \"#fff\";\n const border =\n layout?.cardBorderStyle === \"solid\"\n ? `${layout?.cardBorderWidth}px ${layout?.cardBorderStyle} ${layout?.cardBorderColor}`\n : (layout?.cardBorderStyle ?? \"1px solid #e8e8e8\");\n const borderRadius = `${layout?.cardBorderRadius ?? 6}px`;\n\n return (\n <div\n className=\"drag-box\"\n data-grid={{\n ...(component.position ?? {}),\n ...layout,\n w: layout.cardWidth || layout.w,\n }}\n key={layout.i}\n style={{\n ...(component.style || {}),\n background,\n border,\n borderRadius,\n backdropFilter: \"blur(10px)\",\n }}\n >\n <SizeMe monitorHeight>\n {({ size }) => {\n if (size.height) {\n handleResize(layout.i, size.height);\n }\n return (\n <DroppableComponentLayoutItem\n component={component}\n isEdit={isEdit}\n layout={layout}\n onDelete={handleDeleteItem}\n />\n );\n }}\n </SizeMe>\n </div>\n );\n })\n .filter(Boolean);\n }, [layouts, keyComponentMap, isEdit, handleDeleteItem, handleResize]);\n\n const handleWatchLayoutSizeChange = useCallback(() => {\n if (layoutWrapperRef && isEdit) {\n const { top } =\n layoutWrapperRef.current?.getClientRects()?.[0] ?? ({} as DOMRect);\n top !== undefined &&\n setLayoutWrapperStyle({\n height: document.body.clientHeight - top,\n });\n }\n }, [isEdit]);\n\n useEffect(() => {\n if (isEdit) {\n handleWatchLayoutSizeChange();\n setLayouts(layoutsProps || []); // 编辑的情况下需要动态改变一些布局\n window.addEventListener(\"resize\", handleWatchLayoutSizeChange);\n\n return () => {\n window.removeEventListener(\"resize\", handleWatchLayoutSizeChange);\n };\n }\n }, [isEdit, handleWatchLayoutSizeChange, layoutsProps, setLayouts]);\n\n return (\n <div className={styles.gridLayoutWrapper} ref={gridLayoutRef}>\n {isEdit && (\n <div className={styles.componentWrapper} style={layoutWrapperStyle}>\n <div className={styles.componentTitle}>{cardTitle}</div>\n <div className={styles.componentList}>\n {componentList?.map((component, index) => (\n <DraggableComponentMenuItem\n component={component}\n onClick={() => {\n addComponent(component);\n }}\n onDragStart={() => {\n draggingComponentRef.current = component;\n }}\n onDragEnd={() => {\n draggingComponentRef.current = undefined;\n }}\n key={component.key || index}\n />\n ))}\n {toolbarBricks?.useBrick && (\n <ReactUseMultipleBricks useBrick={toolbarBricks.useBrick} />\n )}\n </div>\n </div>\n )}\n <div\n className={styles.layoutWrapper}\n ref={layoutWrapperRef}\n style={layoutWrapperStyle}\n >\n {isEdit && (\n <div className={styles.actionsWrapper}>\n <WrappedButton type=\"primary\" onClick={handleSave}>\n {t(K.SAVE)}\n </WrappedButton>\n <WrappedButton onClick={handleCancel}>{t(K.CANCEL)}</WrappedButton>\n {showSettingButton && (\n <WrappedButton\n data-testid=\"setting-button\"\n onClick={handleSetting}\n >\n {t(K.SETTING)}\n </WrappedButton>\n )}\n <WrappedDropdownButton\n btnText={t(K.MORE) as string}\n icon={{ lib: \"antd\", icon: \"down\" }}\n actions={[\n ...(isAdmin\n ? [{ text: t(K.SAVE_AS_TEMPLATE), event: \"saveAsTemplate\" }]\n : []),\n { text: t(K.LOAD_FROM_TEMPLATE), event: \"loadFromTemplate\" },\n { text: t(K.CLEAR_ALL), danger: true, event: \"clear\" },\n ]}\n onActionClick={(e) => {\n handleActionClick(e.detail);\n }}\n data-testid=\"edit-layout-actions\"\n />\n </div>\n )}\n <ResponsiveReactGridLayout\n className={classNames(styles.layout, {\n [`${styles.layoutEdit}`]: isEdit,\n })}\n draggableCancel={`.${layoutItemStyles.deleteIcon},.edit-actions,.ignore-item`}\n breakpoints={{ lg: 1300, md: 1024, sm: 768 }}\n rowHeight={ROW_HEIGHT}\n cols={{ lg: 3, md: 3, sm: isEdit ? 3 : 1 }}\n isResizable={false}\n isDraggable={isEdit}\n isDroppable={isEdit}\n compactType=\"vertical\"\n margin={[gap ?? MARGIN_WIDTH, gap ?? MARGIN_HEIGHT]}\n // onDrag={handleDragCallback}\n useCSSTransforms={false}\n onDropDragOver={() => {\n if (draggingComponentRef.current) {\n return pick(draggingComponentRef.current.position, [\"w\", \"h\"]);\n }\n }}\n onDrop={(layout) => {\n if (draggingComponentRef.current) {\n addComponent(draggingComponentRef.current, layout);\n }\n }}\n onLayoutChange={handleLayoutChange}\n onBreakpointChange={handleBreakpointChange}\n >\n {renderChild}\n </ResponsiveReactGridLayout>\n </div>\n </div>\n );\n});\n\n/**\n * 工作台布局V2, 未使用shadow dom\n */\nexport\n@defineElement(\"eo-workbench-layout-v2\", { shadowOptions: false })\nclass EoWorkbenchLayoutV2 extends ReactNextElement {\n #componentRef = createRef<EoWorkbenchLayoutV2ComponentRef>();\n\n @property()\n accessor cardTitle: string | undefined;\n\n @property({ type: Boolean })\n accessor isEdit: boolean | undefined;\n\n @property({ attribute: false })\n accessor layouts: ExtraLayout[] | undefined;\n\n @property({ attribute: false })\n accessor toolbarBricks: { useBrick: UseSingleBrickConf[] } | undefined;\n\n @property({ attribute: false })\n accessor componentList: WorkbenchComponent[] | undefined;\n\n /**\n * 自定义卡片默认配置, 用于覆盖默认卡片配置\n */\n @property({ attribute: false })\n accessor customDefaultCardConfigMap:\n | Record<string, CardStyleConfig>\n | undefined;\n\n /**\n * description: 用于设置页面样式和布局的按钮\n */\n @property({ type: Boolean })\n accessor showSettingButton: boolean | undefined;\n\n /**\n * description: 卡片间隔\n */\n @property({ type: Number })\n accessor gap: number | undefined;\n\n @event({ type: \"change\" })\n accessor #changeEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleChange = (layouts: ExtraLayout[]) => {\n this.#changeEvent.emit(layouts);\n };\n\n @event({ type: \"save\" })\n accessor #saveEvent!: EventEmitter<ExtraLayout[]>;\n\n #handleSave = (layouts: ExtraLayout[]) => {\n this.#saveEvent.emit(layouts);\n };\n\n @event({ type: \"cancel\" })\n accessor #cancelEvent!: EventEmitter<void>;\n\n #handleCancel = () => {\n this.#cancelEvent.emit();\n };\n\n @event({ type: \"setting\" })\n accessor #settingEvent!: EventEmitter<void>;\n #handleSetting = () => {\n this.#settingEvent.emit();\n };\n\n /**\n * 操作点击事件\n * @detail {\n action: SimpleAction;\n layouts: Layout[];\n }\n */\n @event({ type: \"action.click\" })\n accessor #actionClickEvent!: EventEmitter<{\n action: SimpleAction;\n layouts: Layout[];\n }>;\n\n #handleActionClick = (action: SimpleAction, layouts: Layout[]): void => {\n this.#actionClickEvent.emit({ action, layouts });\n action.event &&\n this.dispatchEvent(new CustomEvent(action.event, { detail: layouts }));\n };\n\n @method()\n setLayouts(layouts: Layout[]) {\n this.#componentRef.current?.setLayouts(layouts);\n }\n\n connectedCallback(): void {\n // Don't override user's style settings.\n // istanbul ignore else\n if (!this.style.display) {\n this.style.display = \"block\";\n }\n super.connectedCallback();\n }\n\n render() {\n return (\n <EoWorkbenchLayoutComponent\n cardTitle={this.cardTitle}\n layouts={this.layouts}\n gap={this.gap}\n toolbarBricks={this.toolbarBricks}\n componentList={this.componentList}\n showSettingButton={this.showSettingButton}\n isEdit={this.isEdit}\n customDefaultCardConfigMap={this.customDefaultCardConfigMap}\n onChange={this.#handleChange}\n onSave={this.#handleSave}\n onCancel={this.#handleCancel}\n onActionClick={this.#handleActionClick}\n onSetting={this.#handleSetting}\n ref={this.#componentRef}\n />\n );\n }\n}\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./DroppableComponentLayoutItem.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","export enum K {\n CLEAR_CONFIRM = \"CLEAR_CONFIRM\",\n CARD_LIST = \"CARD_LIST\",\n CLEAR_CONFIRM_MESSAGE = \"CLEAR_CONFIRM_MESSAGE\",\n SAVE = \"SAVE\",\n CANCEL = \"CANCEL\",\n SETTING = \"SETTING\",\n MORE = \"MORE\",\n SAVE_AS_TEMPLATE = \"SAVE_AS_TEMPLATE\",\n LOAD_FROM_TEMPLATE = \"LOAD_FROM_TEMPLATE\",\n CLEAR_ALL = \"CLEAR_ALL\"\n}\n\nconst en: Locale = {\n CLEAR_CONFIRM: \"Clear Confirm\",\n CARD_LIST: \"Card List\",\n CLEAR_CONFIRM_MESSAGE: \"All cards will be cleared and editing will start from scratch. This operation cannot be undone.\",\n SAVE: \"Save\",\n CANCEL: \"Cancel\",\n SETTING: \"Setting\",\n MORE: \"More\",\n SAVE_AS_TEMPLATE: \"Save As Template\",\n LOAD_FROM_TEMPLATE: \"Load From Template\",\n CLEAR_ALL: \"Clear All\"\n};\n\nconst zh: Locale = {\n CLEAR_CONFIRM: \"清空确认\",\n CARD_LIST: \"卡片列表\",\n CLEAR_CONFIRM_MESSAGE: \"将清空所有卡片,从零开始编辑,该操作无法撤回。\",\n SAVE: \"保存\",\n CANCEL: \"取消\",\n SETTING: \"设置\",\n MORE: \"更多\",\n SAVE_AS_TEMPLATE: \"另存为模板\",\n LOAD_FROM_TEMPLATE: \"从模板加载\",\n CLEAR_ALL: \"清空所有\"\n};\n\nexport const NS = \"bricks/advanced/eo-workbench-layout-v2\";\n\nexport const locales = { en, zh };\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { memo, useEffect, useMemo, useState } from \"react\";\nimport { ReactUseBrick } from \"@next-core/react-runtime\";\nimport { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\n\nimport { WorkbenchComponent, ExtraLayout } from \"../interfaces\";\n\nimport styles from \"./DroppableComponentLayoutItem.module.css\";\nimport { cloneDeep, isEqual, omit } from \"lodash\";\n\nconst WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\n\nexport interface DroppableComponentLayoutItemProps {\n component: WorkbenchComponent;\n layout: ExtraLayout;\n isEdit?: boolean;\n onDelete?(i: string): void;\n}\n\nconst position = [\"x\", \"y\", \"w\", \"h\"];\n\nexport function DroppableComponentLayoutItemElement(\n props: DroppableComponentLayoutItemProps\n): React.ReactElement {\n const { component, isEdit, onDelete, layout } = props;\n\n const handleEditMaskClick = (e: React.MouseEvent) => {\n e.preventDefault();\n };\n\n const handleDeleteClick = (e: React.MouseEvent) => {\n e.preventDefault();\n onDelete?.(layout.i);\n };\n /**\n * cloneDeep 操作是为了让 useBrick事件抛出的值是计算后的值\n */\n const useBrick = useMemo(\n () => cloneDeep(component.useBrick),\n [component.useBrick]\n );\n const [cardConfigs, setCardConfigs] = useState(() =>\n omit(\n {\n ...layout,\n cardWidth: layout.cardWidth || component.position.w,\n cardTitle: component.title,\n },\n position\n )\n );\n\n // todo 用于处理 layout 重新渲染导致页面卡顿\n /* istanbul ignore next */\n useEffect(() => {\n const newCardConfigs = omit(\n {\n ...layout,\n cardWidth: layout.cardWidth || component.position.w,\n },\n position\n );\n\n if (!isEqual(newCardConfigs, cardConfigs)) {\n setCardConfigs(newCardConfigs);\n }\n }, [layout, cardConfigs, component.position.w]);\n\n const cardBorderWidth = useMemo(() => {\n return cardConfigs?.cardBorderWidth !== 1\n ? (cardConfigs?.cardBorderWidth as any) - 1\n : 0;\n }, [cardConfigs]);\n\n const editMaskTop = useMemo(() => {\n return 45 + cardBorderWidth;\n }, [cardBorderWidth]);\n const noPadding = useMemo(() => {\n return layout.noPadding;\n }, [layout]);\n\n const deleteIconPosition = useMemo(() => {\n const top = 15;\n return {\n top: !noPadding ? top : 0,\n right: top,\n };\n }, [noPadding]);\n\n return (\n <div className={styles.itemWrapper}>\n {isEdit && (\n <div\n className={styles.editMask}\n style={{\n top: editMaskTop,\n }}\n onMouseDown={handleEditMaskClick}\n data-testid=\"droppable-component-layout-item-edit-mask\"\n />\n )}\n <ReactUseBrick useBrick={useBrick} data={cardConfigs} />\n {isEdit && (\n <WrappedIcon\n icon=\"delete\"\n lib=\"antd\"\n style={deleteIconPosition}\n className={styles.deleteIcon}\n onClick={handleDeleteClick}\n data-testid=\"droppable-component-layout-item-delete\"\n />\n )}\n </div>\n );\n}\n\nexport const DroppableComponentLayoutItem = memo(\n DroppableComponentLayoutItemElement\n);\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.componentItemIcon--znvUWa0v{font-size:16px;color:#262626;margin-top:2px}.componentItemWrapper--mLC8xy_9{display:flex;flex-direction:column}.componentItemTitle--zo3KGnys{font-weight:400;font-size:12px;color:#595959;line-height:18px;text-align:left;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.componentItemContent--zOG8IL31{background-color:#f3f4f7;cursor:move;display:flex;justify-content:center;align-items:center}.componentItemThumbnail--epDINDMl{background:#ffffff;border:4px solid #f3f4f7;width:96px;height:64px;border-radius:1px}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"componentItemIcon\": `componentItemIcon--znvUWa0v`,\n\t\"componentItemWrapper\": `componentItemWrapper--mLC8xy_9`,\n\t\"componentItemTitle\": `componentItemTitle--zo3KGnys`,\n\t\"componentItemContent\": `componentItemContent--zOG8IL31`,\n\t\"componentItemThumbnail\": `componentItemThumbnail--epDINDMl`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.component--MVAoEnGN{height:100%}.editMask--nl6r17tE{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.deleteIcon--tNyE_ou4{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.deleteIcon--tNyE_ou4:hover{color:var(--color-error)}.deleteIcon--tNyE_ou4:active{color:var(--color-error-active)}.itemWrapper--_lUkkTz1{position:relative;width:100%}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"component\": `component--MVAoEnGN`,\n\t\"editMask\": `editMask--nl6r17tE`,\n\t\"deleteIcon\": `deleteIcon--tNyE_ou4`,\n\t\"itemWrapper\": `itemWrapper--_lUkkTz1`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","import React from \"react\";\nimport { WorkbenchComponent } from \"../interfaces\";\nimport styles from \"./DraggableComponentMenuItem.module.css\";\nexport interface DraggableComponentMenuItemProps {\n component: WorkbenchComponent;\n onClick?(): void;\n onDragStart?(): void;\n onDragEnd?(): void;\n}\n\nexport function DraggableComponentMenuItem(\n props: DraggableComponentMenuItemProps\n): React.ReactElement {\n const { component, onClick, onDragStart, onDragEnd } = props;\n const { key, title, thumbnail } = component;\n\n return (\n <div\n className={styles.componentItemWrapper}\n data-testid=\"draggable-component-menu-item\"\n >\n <div className={styles.componentItemTitle}>{title}</div>\n <div\n className={styles.componentItemContent}\n draggable\n onDragStart={(e) => {\n e.dataTransfer.setData(\"text/plain\", key);\n onDragStart?.();\n }}\n onDragEnd={onDragEnd}\n onClick={onClick}\n data-testid=\"draggable-component-menu-item-thumbnail\"\n >\n <img\n className={styles.componentItemThumbnail}\n src={thumbnail}\n alt={title}\n />\n </div>\n </div>\n );\n}\n","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[3].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[3].use[2]!./styles.module.css\";\n export default content && content.locals ? content.locals : undefined;\n","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","\n import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./styles.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\noptions.insert = insertFn.bind(null, \"head\");\noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./styles.css\";\n export default content && content.locals ? content.locals : undefined;\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_0___ from \"-!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../../../node_modules/react-grid-layout/css/styles.css\";\nimport ___CSS_LOADER_AT_RULE_IMPORT_1___ from \"-!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!../../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!../../../../node_modules/react-resizable/css/styles.css\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___);\n___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","import { CardStyleConfig } from \"../interfaces\";\n\nexport const defaultCardConfig: CardStyleConfig = {\n cardWidth: 2,\n showMoreIcon: false,\n cardBorderStyle: \"solid\",\n cardTitleFontSize: 16,\n cardBorderWidth: 1,\n cardBorderRadius: 6,\n cardTitleColor: \"#262626\",\n cardBorderColor: \"#e8e8e8\",\n cardBgType: \"none\",\n};\n\nexport const getLayoutDefaultCardConfig = (\n cardType: string,\n customDefaultCardConfigMap?: Record<string, CardStyleConfig>\n): CardStyleConfig => {\n const moreLinkByCardTypeMap: Record<string, CardStyleConfig> = {\n \"notice-card\": {\n moreIconLink: \"/announcement-management\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n \"cmdb-object-collect-card\": {\n moreIconLink: \"/cmdb-model-management\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n \"itsm-todos\": {\n moreIconLink: \"/itsc-workbench/workbench?activeKey=run\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n abnormalResourceInspectionResults: {\n moreIconLink: \"/automatic-inspection/suites\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n abnormalSystemInspectionResults: {\n moreIconLink: \"/automatic-inspection/system/list\",\n showMoreIcon: true,\n moreIconText: \"更多\",\n },\n ...(customDefaultCardConfigMap ?? {}),\n };\n return {\n ...defaultCardConfig,\n ...(moreLinkByCardTypeMap?.[cardType] ?? {}),\n };\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.gridLayoutWrapper--DIttynOM{display:flex;height:100%;position:relative;width:100%}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP{width:132px;padding:6px 12px 6px 16px;overflow-y:auto;box-shadow:1px 0 0 0 var(--palette-gray-4);background:var(--color-fill-bg-container-1);z-index:998;position:sticky;top:0}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentTitle--nKf9GEoj{font-size:16px;padding:6px 0;font-weight:500;color:#262626;line-height:22px;text-align:left}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB{margin-top:12px;width:100%;display:flex;flex-direction:column;gap:10px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.gridLayoutWrapper--DIttynOM .componentWrapper--P8xsKOQP .componentList--s3XnAYsB eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR{flex:1;display:flex;flex-direction:column;align-items:center;width:100%;overflow:hidden}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj,.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{width:100%}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layout--kz28taJj{flex-grow:1}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .layoutEdit--FVqWXNWj{overflow-y:auto}.gridLayoutWrapper--DIttynOM .layoutWrapper--pk1t3UAR .actionsWrapper--vQro2Dyn{position:sticky;top:0;z-index:997;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}`, \"\"]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"gridLayoutWrapper\": `gridLayoutWrapper--DIttynOM`,\n\t\"componentWrapper\": `componentWrapper--P8xsKOQP`,\n\t\"componentTitle\": `componentTitle--nKf9GEoj`,\n\t\"componentList\": `componentList--s3XnAYsB`,\n\t\"layoutWrapper\": `layoutWrapper--pk1t3UAR`,\n\t\"layout\": `layout--kz28taJj`,\n\t\"actionsWrapper\": `actionsWrapper--vQro2Dyn`,\n\t\"layoutEdit\": `layoutEdit--FVqWXNWj`\n};\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;"],"names":["module","exports","options","document","update","remove","styleElement","insertStyleElement","obj","css","supports","concat","media","needLayer","layer","length","sourceMap","btoa","unescape","encodeURIComponent","JSON","stringify","styleTagTransform","apply","parentNode","removeChild","removeStyleElement","_classPrivateGetter","s","r","a","setAttributes","insert","domAPI","locals","undefined","initializeReactI18n","NS","locales","defineElement","property","event","method","createDecorators","WrappedButton","wrapBrick","WrappedDropdownButton","onActionClick","showDialog","unwrapProvider","URl_PREFIX","window","location","origin","getBasePath","getRealKey","key","includes","split","isAdmin","auth","getAuth","EoWorkbenchLayoutComponent","forwardRef","_ref","ref","cardTitle","layouts","layoutsProps","customDefaultCardConfigMap","toolbarBricks","componentList","isEdit","showSettingButton","onChange","onSave","onCancel","onSetting","gap","ResponsiveReactGridLayout","useMemo","WidthProvider","Responsive","t","useTranslation","gridLayoutRef","useRef","layoutWrapperRef","layoutCacheRef","_setLayouts","useState","current","keyComponentMap","keyBy","cols","setCols","layoutWrapperStyle","setLayoutWrapperStyle","draggingComponentRef","setLayouts","useCallback","useImperativeHandle","handleChange","handleLayoutChange","currentLayout","some","v","isDraggable","currentLayoutsMap","x","w","y","h","i","minH","_currentLayout$t$minH","find","item","map","type","handleClearLayout","handleSave","addComponent","component","currentLayouts","defaultCardConfig","getLayoutDefaultCardConfig","newLayouts","layout","pick","newLayout","position","Math","random","cardWidth","Infinity","dropItem","handleDeleteItem","_layouts$filter","filter","handleResize","contentHeight","oldLayout","initNewH","cardBorderStyle","cardBorderWidth","newH","ceil","renderChild","_layout$cardBorderSty","_layout$cardBorderRad","_component$position","background","cardBgType","cardBackground","border","cardBorderColor","borderRadius","cardBorderRadius","React","className","style","backdropFilter","SizeMe","monitorHeight","_ref2","size","height","DroppableComponentLayoutItem","onDelete","Boolean","handleWatchLayoutSizeChange","_layoutWrapperRef$cur","_layoutWrapperRef$cur2","top","getClientRects","body","clientHeight","useEffect","addEventListener","removeEventListener","styles","gridLayoutWrapper","componentWrapper","componentTitle","index","DraggableComponentMenuItem","onClick","onDragStart","onDragEnd","useBrick","ReactUseMultipleBricks","layoutWrapper","actionsWrapper","K","SAVE","handleCancel","CANCEL","handleSetting","SETTING","btnText","MORE","icon","lib","actions","text","SAVE_AS_TEMPLATE","LOAD_FROM_TEMPLATE","CLEAR_ALL","danger","e","action","title","CLEAR_CONFIRM","content","CLEAR_CONFIRM_MESSAGE","then","handleActionClick","detail","classNames","layoutEdit","draggableCancel","layoutItemStyles","deleteIcon","breakpoints","lg","md","sm","rowHeight","isResizable","isDroppable","compactType","margin","useCSSTransforms","onDropDragOver","onDrop","onLayoutChange","onBreakpointChange","handleBreakpointChange","_newBreakpoint","newCols","_EoWorkbenchLayoutV","_componentRef","WeakMap","_A","_B","_C","_D","_E","_F","_G","_H","_I","_EoWorkbenchLayoutV2_brand","WeakSet","_handleChange","_J","_handleSave","_K","_handleCancel","_L","_handleSetting","_M","_handleActionClick","EoWorkbenchLayoutV2","ReactNextElement","constructor","arguments","_classPrivateMethodInitSpec","_classPrivateFieldInitSpec","_initProto","createRef","_init_cardTitle","_init_extra_cardTitle","_init_isEdit","_init_extra_isEdit","_init_layouts","_init_extra_layouts","_init_toolbarBricks","_init_extra_toolbarBricks","_init_componentList","_init_extra_componentList","_init_customDefaultCardConfigMap","_init_extra_customDefaultCardConfigMap","_init_showSettingButton","_init_extra_showSettingButton","_init_gap","_init_extra_gap","_init_changeEvent","_init_extra_changeEvent","this","_get_changeEvent","emit","_init_saveEvent","_init_extra_saveEvent","_get_saveEvent","_init_cancelEvent","_init_extra_cancelEvent","_get_cancelEvent","_init_settingEvent","_init_extra_settingEvent","_get_settingEvent","_init_actionClickEvent","_init_extra_actionClickEvent","_get_actionClickEvent","dispatchEvent","CustomEvent","_classPrivateFieldGet","_classPrivateFieldSet","_classPrivateFieldGet2","connectedCallback","display","super","render","_EoWorkbenchLayoutV2","_set_changeEvent","_set_saveEvent","_set_cancelEvent","_set_settingEvent","_set_actionClickEvent","c","_initClass","_applyDecs","shadowOptions","attribute","Number","o","_","has","_checkInRHS","nonce","setAttribute","en","CARD_LIST","zh","hasOwn","hasOwnProperty","classes","arg","appendClass","parseValue","Array","isArray","toString","Object","prototype","call","value","newClass","default","WrappedIcon","DroppableComponentLayoutItemElement","props","cloneDeep","cardConfigs","setCardConfigs","omit","newCardConfigs","isEqual","editMaskTop","noPadding","deleteIconPosition","right","itemWrapper","editMask","onMouseDown","preventDefault","ReactUseBrick","data","memo","___CSS_LOADER_EXPORT___","push","id","thumbnail","componentItemWrapper","componentItemTitle","componentItemContent","draggable","dataTransfer","setData","componentItemThumbnail","src","alt","stylesInDOM","getIndexByIdentifier","identifier","result","modulesToDom","list","idCountMap","identifiers","base","count","indexByIdentifier","references","updater","addElementStyle","byIndex","splice","api","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","styleSheet","cssText","firstChild","appendChild","createTextNode","privateSet","add","target","styleTarget","querySelector","HTMLIFrameElement","contentDocument","head","getTarget","Error","showMoreIcon","cardTitleFontSize","cardTitleColor","cardType","_moreLinkByCardTypeMa","moreLinkByCardTypeMap","moreIconLink","moreIconText","abnormalResourceInspectionResults","abnormalSystemInspectionResults","element","createElement","attributes"],"sourceRoot":""}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";(globalThis.webpackChunk_next_bricks_advanced=globalThis.webpackChunk_next_bricks_advanced||[]).push([[9326],{5536:(e,t,r)=>{r.d(t,{A:()=>i});var a=r(12559);function i(e,t,r){return r((0,a.A)(e,t))}},16322:(e,t,r)=>{r.d(t,{A:()=>h});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n),s=r(20062),l=r.n(s),c=new URL(r(59224),r.b),d=o()(i()),p=l()(c);d.push([e.id,`.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(${p});background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,\n.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,\n.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}`,""]);const h=d.toString()},34566:(e,t,r)=>{r.d(t,{A:()=>s});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n)()(i());o.push([e.id,'.react-grid-layout{position:relative;transition:height 200ms ease}.react-grid-item{transition:all 200ms ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:0.2;transition-duration:100ms;z-index:2;-webkit-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item > .react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item > .react-resizable-handle::after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,0.4);border-bottom:2px solid rgba(0,0,0,0.4)}.react-resizable-hide > .react-resizable-handle{display:none}.react-grid-item > .react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-w,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-n,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}',""]);const s=o.toString()},40332:(e,t,r)=>{r.r(t),r.d(t,{EoWorkbenchLayout:()=>ie,EoWorkbenchLayoutComponent:()=>ae});var a,i=r(74635),n=r(70918),o=r(26902),s=r(5536),l=r(86121),c=r(70829),d=r(62740),p=r(18769),h=r.n(p),g=r(90870),u=r(30981),m=r(49523),b=r(29711),w=r(69113),v=(r(34419),r(45833)),y=r(91116);let f,x,k,z,A,E,C,M,I,L,N,W,B,D,H,T,R,S,Z,P,j,G,_,Y,Q,F;const{defineElement:$,property:J,event:U,method:X}=(0,g.createDecorators)(),q=(0,u.wrapBrick)("eo-button"),O=(0,u.wrapBrick)("eo-dropdown-button",{onActionClick:"action.click"}),K=(0,u.wrapBrick)("eo-icon"),V=(0,u.wrapBrick)("eo-checkbox",{onChange:"change"}),ee=(0,m.unwrapProvider)("basic.show-dialog"),te=e=>null!=e&&e.includes(":")?e.split(":")[0]:e,{isAdmin:re}=w.auth.getAuth(),ae=(0,p.forwardRef)((function(e,t){let{cardTitle:r="卡片列表",layouts:a,componentList:i=[],isEdit:n,onChange:o,onSave:s,onCancel:l,onActionClick:c}=e;const d=(0,p.useMemo)((()=>(0,v.WidthProvider)(v.Responsive)),[]),g=(0,p.useRef)(null),u=(0,p.useRef)(null),m=(0,p.useRef)(null!=a?a:[]),[w,y]=(0,p.useState)(m.current),[f,x]=(0,p.useState)(3),[k,z]=(0,p.useState)(),A=(0,p.useCallback)((e=>{m.current=e,y(e)}),[]);(0,p.useImperativeHandle)(t,(()=>({setLayouts:A})));const E=(0,p.useCallback)((e=>{A(e),null==o||o(e)}),[o,A]),C=(0,p.useCallback)((e=>{if(!n)return;let t=!0;for(let a=0;a<e.length;a++){const{x:i,w:n,y:o,h:s,i:l,minH:c}=e[a];if(n>1&&i>0){t=!1;break}if(1===n&&i<2){const t=e.find((e=>e.i!==l&&1===e.w&&e.y===o&&i<2));var r;t&&(e[a].minH=null!==(r=e[a].minH)&&void 0!==r?r:s,e[a].h=Math.max(t.h,s))}else e[a].h=null!=c?c:s,e[a].minH=void 0}E(t?e:m.current.map((e=>{const{w:t,i:r}=e,a=`${te(r)}:${Math.random()}`;let i=e.x;return t>1&&i>0&&(i=0),{...e,x:i,i:a}})))}),[E,n]),M=(0,p.useCallback)((e=>{const t=e.detail.map((e=>e.value)),r=w.map((e=>te(e.i))),a=e.detail.filter((e=>!r.includes(e.key))).map((e=>({...e.position,x:e.w>1?0:2*w.length%f,y:1/0})));E(w.filter((e=>t.includes(te(e.i)))).concat(a))}),[w,E,f]),I=()=>{E([])},L=(0,p.useCallback)((()=>{null==s||s(w.map((e=>({...e,i:te(e.i)}))))}),[w,s]),N=(0,p.useCallback)(((e,t)=>{var r;e.stopPropagation(),E(null!==(r=w.filter((e=>te(e.i)!==t.key)))&&void 0!==r?r:[])}),[E,w]),W=e=>{e.preventDefault()},B=(0,p.useMemo)((()=>w.map((e=>{var t;const r=i.find((t=>t.key===te(e.i)));return r?h().createElement("div",{key:e.i,"data-grid":{...null!==(t=r.position)&&void 0!==t?t:{},...e},style:r.style,className:"drag-box"},n&&h().createElement("div",{className:"edit-mask",onMouseDown:W}),h().createElement(b.ReactUseBrick,{useBrick:r.useBrick}),n&&h().createElement(K,{icon:"delete",lib:"antd",className:"delete-icon",onClick:e=>N(e,r)})):null})).filter(Boolean)),[i,N,w,n]),D=(0,p.useMemo)((()=>i.map((e=>({...e,label:e.title,value:e.key})))),[i]),H=(0,p.useMemo)((()=>w.map((e=>te(e.i)))),[w]),T=(0,p.useCallback)((()=>{if(u&&n){var e,t;const{top:r}=null!==(e=null===(t=u.current)||void 0===t||null===(t=t.getClientRects())||void 0===t?void 0:t[0])&&void 0!==e?e:{};void 0!==r&&z({height:document.body.clientHeight-r,overflow:"scroll"})}}),[n]);return(0,p.useEffect)((()=>{if(n)return T(),A(a||[]),window.addEventListener("resize",T),()=>{window.removeEventListener("resize",T)}}),[n,T,a,A]),h().createElement("div",{className:"grid-layout-wrapper",ref:g},n&&h().createElement("div",{className:"component-wrapper"},h().createElement("div",{className:"component-title"},r),h().createElement("div",{className:"component-list"},h().createElement(V,{options:D,value:H,onChange:M}),h().createElement("slot",{name:"toolbar"}))),h().createElement("div",{className:"layout-wrapper",ref:u,style:k},n&&h().createElement("div",{className:"actions-wrapper"},h().createElement(q,{type:"primary",onClick:L},"保存"),h().createElement(q,{onClick:()=>{null==l||l()}},"取消"),h().createElement(O,{btnText:"更多",icon:{lib:"antd",icon:"down"},actions:[...re?[{text:"另存为模板",event:"saveAsTemplate"}]:[],{text:"从模版加载",event:"loadFromTemplate"},{text:"清空所有",danger:!0,event:"clear"}],onActionClick:e=>{(e=>{const{event:t}=e;"clear"===t?ee({type:"confirm",title:"清空确认",content:"将清空所有卡片,从零开始编辑,该操作无法撤回。"}).then(I):null==c||c(e,(null!=w?w:[]).map((e=>({...e,i:te(e.i)}))))})(e.detail)},"data-testid":"edit-layout-actions"})),h().createElement(d,{className:"layout",draggableCancel:".delete-icon,.edit-actions,.ignore-item",breakpoints:{lg:1300,md:1024,sm:768},rowHeight:1,cols:{lg:3,md:3,sm:n?3:1},isResizable:!1,isDraggable:n,onDrag:(e,t,r)=>{var a;const i=null===(a=g.current)||void 0===a?void 0:a.querySelector(".react-grid-placeholder");i&&(r.w>1&&r.x>0?!i.classList.contains("forbidden")&&i.classList.add("forbidden"):i.classList.contains("forbidden")&&i.classList.remove("forbidden"))},onLayoutChange:C,onBreakpointChange:(e,t)=>{x(t)}},B)))}));let ie;var ne=new WeakMap,oe=new WeakMap,se=new WeakMap,le=new WeakMap,ce=new WeakMap,de=new WeakMap,pe=new WeakSet,he=new WeakMap,ge=new WeakMap,ue=new WeakMap,me=new WeakMap,be=new WeakMap,we=new WeakMap,ve=new WeakMap;class ye extends u.ReactNextElement{constructor(){super(...arguments),(0,i.A)(this,pe),(0,n.A)(this,ne,(f(this),(0,p.createRef)())),(0,n.A)(this,oe,k(this)),(0,n.A)(this,se,(z(this),A(this))),(0,n.A)(this,le,(E(this),C(this))),(0,n.A)(this,ce,(M(this),I(this))),(0,n.A)(this,de,(L(this),N(this))),(0,n.A)(this,he,(D(this),e=>{(0,s.A)(pe,this,W).emit(e)})),(0,n.A)(this,ge,H(this)),(0,n.A)(this,ue,(S(this),e=>{(0,s.A)(pe,this,T).emit(e)})),(0,n.A)(this,me,Z(this)),(0,n.A)(this,be,(G(this),()=>{(0,s.A)(pe,this,P).emit()})),(0,n.A)(this,we,_(this)),(0,n.A)(this,ve,(F(this),(e,t)=>{(0,s.A)(pe,this,Y).emit({action:e,layouts:t}),e.event&&this.dispatchEvent(new CustomEvent(e.event,{detail:t}))}))}get cardTitle(){return(0,c.A)(oe,this)}set cardTitle(e){(0,l.A)(oe,this,e)}get isEdit(){return(0,c.A)(se,this)}set isEdit(e){(0,l.A)(se,this,e)}get layouts(){return(0,c.A)(le,this)}set layouts(e){(0,l.A)(le,this,e)}get componentList(){return(0,c.A)(ce,this)}set componentList(e){(0,l.A)(ce,this,e)}setLayouts(e){var t;null===(t=(0,c.A)(ne,this).current)||void 0===t||t.setLayouts(e)}render(){return h().createElement(ae,{cardTitle:this.cardTitle,layouts:this.layouts,componentList:this.componentList,isEdit:this.isEdit,onChange:(0,c.A)(he,this),onSave:(0,c.A)(ue,this),onCancel:(0,c.A)(be,this),onActionClick:(0,c.A)(ve,this),ref:(0,c.A)(ne,this)})}}a=ye,({e:[k,z,A,E,C,M,I,L,N,W,B,D,H,T,R,S,Z,P,j,G,_,Y,Q,F,f],c:[ie,x]}=(0,d.A)(a,[$("eo-workbench-layout",{styleTexts:[y.A]})],[[J(),1,"cardTitle"],[J({type:Boolean}),1,"isEdit"],[J({attribute:!1}),1,"layouts"],[J({attribute:!1}),1,"componentList"],[U({type:"change"}),1,"changeEvent",e=>(0,c.A)(de,e),(e,t)=>(0,l.A)(de,e,t)],[U({type:"save"}),1,"saveEvent",e=>(0,c.A)(ge,e),(e,t)=>(0,l.A)(ge,e,t)],[U({type:"cancel"}),1,"cancelEvent",e=>(0,c.A)(me,e),(e,t)=>(0,l.A)(me,e,t)],[U({type:"action.click"}),1,"actionClickEvent",e=>(0,c.A)(we,e),(e,t)=>(0,l.A)(we,e,t)],[X(),2,"setLayouts"]],0,(e=>ve.has((0,o.A)(e))),u.ReactNextElement)),x()},59224:e=>{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+"},74635:(e,t,r)=>{r.d(t,{A:()=>i});var a=r(72016);function i(e,t){(0,a.A)(e,t),t.add(e)}},91116:(e,t,r)=>{r.d(t,{A:()=>d});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n),s=r(34566),l=r(16322),c=o()(i());c.i(s.A),c.i(l.A),c.push([e.id,":host{display:block}:host([hidden]){display:none}.grid-layout-wrapper{display:flex;height:100%;position:relative}.grid-layout-wrapper .component-wrapper{width:150px;padding:6px 12px;overflow-y:scroll;box-shadow:1px 0 0 0 var(--palette-gray-5);background:var(--color-fill-bg-container-1);z-index:999;position:sticky;top:0}.grid-layout-wrapper .component-wrapper .component-title{font-size:16px;padding:6px 0;font-weight:500}.grid-layout-wrapper .component-wrapper .component-list{margin-top:6px}.grid-layout-wrapper .component-wrapper .component-list eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.grid-layout-wrapper .component-wrapper .component-list eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.grid-layout-wrapper .layout-wrapper{flex:1}.grid-layout-wrapper .layout-wrapper .layout{max-width:1300px;margin:0 auto}.grid-layout-wrapper .layout-wrapper .actions-wrapper{position:sticky;top:0;z-index:999;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}.grid-layout-wrapper .layout-wrapper .edit-mask{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.grid-layout-wrapper .layout-wrapper .delete-icon{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.grid-layout-wrapper .layout-wrapper .delete-icon:hover{color:var(--color-error)}.grid-layout-wrapper .layout-wrapper .delete-icon:active{color:var(--color-error-active)}.react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}",""]);const d=c.toString()}}]);
|
|
2
|
-
//# sourceMappingURL=eo-workbench-layout.
|
|
1
|
+
"use strict";(globalThis.webpackChunk_next_bricks_advanced=globalThis.webpackChunk_next_bricks_advanced||[]).push([[9326],{5536:(e,t,r)=>{r.d(t,{A:()=>i});var a=r(12559);function i(e,t,r){return r((0,a.A)(e,t))}},16322:(e,t,r)=>{r.d(t,{A:()=>h});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n),s=r(20062),l=r.n(s),c=new URL(r(59224),r.b),d=o()(i()),p=l()(c);d.push([e.id,`.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(${p});background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,\n.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,\n.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}`,""]);const h=d.toString()},34566:(e,t,r)=>{r.d(t,{A:()=>s});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n)()(i());o.push([e.id,'.react-grid-layout{position:relative;transition:height 200ms ease}.react-grid-item{transition:all 200ms ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:0.2;transition-duration:100ms;z-index:2;-webkit-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item > .react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item > .react-resizable-handle::after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,0.4);border-bottom:2px solid rgba(0,0,0,0.4)}.react-resizable-hide > .react-resizable-handle{display:none}.react-grid-item > .react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-w,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-n,\n.react-grid-item > .react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item > .react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item > .react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}',""]);const s=o.toString()},40332:(e,t,r)=>{r.r(t),r.d(t,{EoWorkbenchLayout:()=>ie,EoWorkbenchLayoutComponent:()=>ae});var a,i=r(74635),n=r(70918),o=r(26902),s=r(5536),l=r(86121),c=r(70829),d=r(62740),p=r(18769),h=r.n(p),g=r(90870),u=r(30981),m=r(49523),b=r(60709),w=r(69113),v=(r(34419),r(45833)),y=r(91116);let f,x,k,z,A,E,C,M,I,L,N,W,B,D,H,T,R,S,Z,P,j,G,_,Y,Q,F;const{defineElement:$,property:J,event:U,method:X}=(0,g.createDecorators)(),q=(0,u.wrapBrick)("eo-button"),O=(0,u.wrapBrick)("eo-dropdown-button",{onActionClick:"action.click"}),K=(0,u.wrapBrick)("eo-icon"),V=(0,u.wrapBrick)("eo-checkbox",{onChange:"change"}),ee=(0,m.unwrapProvider)("basic.show-dialog"),te=e=>null!=e&&e.includes(":")?e.split(":")[0]:e,{isAdmin:re}=w.auth.getAuth(),ae=(0,p.forwardRef)((function(e,t){let{cardTitle:r="卡片列表",layouts:a,componentList:i=[],isEdit:n,onChange:o,onSave:s,onCancel:l,onActionClick:c}=e;const d=(0,p.useMemo)((()=>(0,v.WidthProvider)(v.Responsive)),[]),g=(0,p.useRef)(null),u=(0,p.useRef)(null),m=(0,p.useRef)(null!=a?a:[]),[w,y]=(0,p.useState)(m.current),[f,x]=(0,p.useState)(3),[k,z]=(0,p.useState)(),A=(0,p.useCallback)((e=>{m.current=e,y(e)}),[]);(0,p.useImperativeHandle)(t,(()=>({setLayouts:A})));const E=(0,p.useCallback)((e=>{A(e),null==o||o(e)}),[o,A]),C=(0,p.useCallback)((e=>{if(!n)return;let t=!0;for(let a=0;a<e.length;a++){const{x:i,w:n,y:o,h:s,i:l,minH:c}=e[a];if(n>1&&i>0){t=!1;break}if(1===n&&i<2){const t=e.find((e=>e.i!==l&&1===e.w&&e.y===o&&i<2));var r;t&&(e[a].minH=null!==(r=e[a].minH)&&void 0!==r?r:s,e[a].h=Math.max(t.h,s))}else e[a].h=null!=c?c:s,e[a].minH=void 0}E(t?e:m.current.map((e=>{const{w:t,i:r}=e,a=`${te(r)}:${Math.random()}`;let i=e.x;return t>1&&i>0&&(i=0),{...e,x:i,i:a}})))}),[E,n]),M=(0,p.useCallback)((e=>{const t=e.detail.map((e=>e.value)),r=w.map((e=>te(e.i))),a=e.detail.filter((e=>!r.includes(e.key))).map((e=>({...e.position,x:e.w>1?0:2*w.length%f,y:1/0})));E(w.filter((e=>t.includes(te(e.i)))).concat(a))}),[w,E,f]),I=()=>{E([])},L=(0,p.useCallback)((()=>{null==s||s(w.map((e=>({...e,i:te(e.i)}))))}),[w,s]),N=(0,p.useCallback)(((e,t)=>{var r;e.stopPropagation(),E(null!==(r=w.filter((e=>te(e.i)!==t.key)))&&void 0!==r?r:[])}),[E,w]),W=e=>{e.preventDefault()},B=(0,p.useMemo)((()=>w.map((e=>{var t;const r=i.find((t=>t.key===te(e.i)));return r?h().createElement("div",{key:e.i,"data-grid":{...null!==(t=r.position)&&void 0!==t?t:{},...e},style:r.style,className:"drag-box"},n&&h().createElement("div",{className:"edit-mask",onMouseDown:W}),h().createElement(b.ReactUseBrick,{useBrick:r.useBrick}),n&&h().createElement(K,{icon:"delete",lib:"antd",className:"delete-icon",onClick:e=>N(e,r)})):null})).filter(Boolean)),[i,N,w,n]),D=(0,p.useMemo)((()=>i.map((e=>({...e,label:e.title,value:e.key})))),[i]),H=(0,p.useMemo)((()=>w.map((e=>te(e.i)))),[w]),T=(0,p.useCallback)((()=>{if(u&&n){var e,t;const{top:r}=null!==(e=null===(t=u.current)||void 0===t||null===(t=t.getClientRects())||void 0===t?void 0:t[0])&&void 0!==e?e:{};void 0!==r&&z({height:document.body.clientHeight-r,overflow:"scroll"})}}),[n]);return(0,p.useEffect)((()=>{if(n)return T(),A(a||[]),window.addEventListener("resize",T),()=>{window.removeEventListener("resize",T)}}),[n,T,a,A]),h().createElement("div",{className:"grid-layout-wrapper",ref:g},n&&h().createElement("div",{className:"component-wrapper"},h().createElement("div",{className:"component-title"},r),h().createElement("div",{className:"component-list"},h().createElement(V,{options:D,value:H,onChange:M}),h().createElement("slot",{name:"toolbar"}))),h().createElement("div",{className:"layout-wrapper",ref:u,style:k},n&&h().createElement("div",{className:"actions-wrapper"},h().createElement(q,{type:"primary",onClick:L},"保存"),h().createElement(q,{onClick:()=>{null==l||l()}},"取消"),h().createElement(O,{btnText:"更多",icon:{lib:"antd",icon:"down"},actions:[...re?[{text:"另存为模板",event:"saveAsTemplate"}]:[],{text:"从模版加载",event:"loadFromTemplate"},{text:"清空所有",danger:!0,event:"clear"}],onActionClick:e=>{(e=>{const{event:t}=e;"clear"===t?ee({type:"confirm",title:"清空确认",content:"将清空所有卡片,从零开始编辑,该操作无法撤回。"}).then(I):null==c||c(e,(null!=w?w:[]).map((e=>({...e,i:te(e.i)}))))})(e.detail)},"data-testid":"edit-layout-actions"})),h().createElement(d,{className:"layout",draggableCancel:".delete-icon,.edit-actions,.ignore-item",breakpoints:{lg:1300,md:1024,sm:768},rowHeight:1,cols:{lg:3,md:3,sm:n?3:1},isResizable:!1,isDraggable:n,onDrag:(e,t,r)=>{var a;const i=null===(a=g.current)||void 0===a?void 0:a.querySelector(".react-grid-placeholder");i&&(r.w>1&&r.x>0?!i.classList.contains("forbidden")&&i.classList.add("forbidden"):i.classList.contains("forbidden")&&i.classList.remove("forbidden"))},onLayoutChange:C,onBreakpointChange:(e,t)=>{x(t)}},B)))}));let ie;var ne=new WeakMap,oe=new WeakMap,se=new WeakMap,le=new WeakMap,ce=new WeakMap,de=new WeakMap,pe=new WeakSet,he=new WeakMap,ge=new WeakMap,ue=new WeakMap,me=new WeakMap,be=new WeakMap,we=new WeakMap,ve=new WeakMap;class ye extends u.ReactNextElement{constructor(){super(...arguments),(0,i.A)(this,pe),(0,n.A)(this,ne,(f(this),(0,p.createRef)())),(0,n.A)(this,oe,k(this)),(0,n.A)(this,se,(z(this),A(this))),(0,n.A)(this,le,(E(this),C(this))),(0,n.A)(this,ce,(M(this),I(this))),(0,n.A)(this,de,(L(this),N(this))),(0,n.A)(this,he,(D(this),e=>{(0,s.A)(pe,this,W).emit(e)})),(0,n.A)(this,ge,H(this)),(0,n.A)(this,ue,(S(this),e=>{(0,s.A)(pe,this,T).emit(e)})),(0,n.A)(this,me,Z(this)),(0,n.A)(this,be,(G(this),()=>{(0,s.A)(pe,this,P).emit()})),(0,n.A)(this,we,_(this)),(0,n.A)(this,ve,(F(this),(e,t)=>{(0,s.A)(pe,this,Y).emit({action:e,layouts:t}),e.event&&this.dispatchEvent(new CustomEvent(e.event,{detail:t}))}))}get cardTitle(){return(0,c.A)(oe,this)}set cardTitle(e){(0,l.A)(oe,this,e)}get isEdit(){return(0,c.A)(se,this)}set isEdit(e){(0,l.A)(se,this,e)}get layouts(){return(0,c.A)(le,this)}set layouts(e){(0,l.A)(le,this,e)}get componentList(){return(0,c.A)(ce,this)}set componentList(e){(0,l.A)(ce,this,e)}setLayouts(e){var t;null===(t=(0,c.A)(ne,this).current)||void 0===t||t.setLayouts(e)}render(){return h().createElement(ae,{cardTitle:this.cardTitle,layouts:this.layouts,componentList:this.componentList,isEdit:this.isEdit,onChange:(0,c.A)(he,this),onSave:(0,c.A)(ue,this),onCancel:(0,c.A)(be,this),onActionClick:(0,c.A)(ve,this),ref:(0,c.A)(ne,this)})}}a=ye,({e:[k,z,A,E,C,M,I,L,N,W,B,D,H,T,R,S,Z,P,j,G,_,Y,Q,F,f],c:[ie,x]}=(0,d.A)(a,[$("eo-workbench-layout",{styleTexts:[y.A]})],[[J(),1,"cardTitle"],[J({type:Boolean}),1,"isEdit"],[J({attribute:!1}),1,"layouts"],[J({attribute:!1}),1,"componentList"],[U({type:"change"}),1,"changeEvent",e=>(0,c.A)(de,e),(e,t)=>(0,l.A)(de,e,t)],[U({type:"save"}),1,"saveEvent",e=>(0,c.A)(ge,e),(e,t)=>(0,l.A)(ge,e,t)],[U({type:"cancel"}),1,"cancelEvent",e=>(0,c.A)(me,e),(e,t)=>(0,l.A)(me,e,t)],[U({type:"action.click"}),1,"actionClickEvent",e=>(0,c.A)(we,e),(e,t)=>(0,l.A)(we,e,t)],[X(),2,"setLayouts"]],0,(e=>ve.has((0,o.A)(e))),u.ReactNextElement)),x()},59224:e=>{e.exports="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+"},74635:(e,t,r)=>{r.d(t,{A:()=>i});var a=r(72016);function i(e,t){(0,a.A)(e,t),t.add(e)}},91116:(e,t,r)=>{r.d(t,{A:()=>d});var a=r(36758),i=r.n(a),n=r(40935),o=r.n(n),s=r(34566),l=r(16322),c=o()(i());c.i(s.A),c.i(l.A),c.push([e.id,":host{display:block}:host([hidden]){display:none}.grid-layout-wrapper{display:flex;height:100%;position:relative}.grid-layout-wrapper .component-wrapper{width:150px;padding:6px 12px;overflow-y:scroll;box-shadow:1px 0 0 0 var(--palette-gray-5);background:var(--color-fill-bg-container-1);z-index:999;position:sticky;top:0}.grid-layout-wrapper .component-wrapper .component-title{font-size:16px;padding:6px 0;font-weight:500}.grid-layout-wrapper .component-wrapper .component-list{margin-top:6px}.grid-layout-wrapper .component-wrapper .component-list eo-checkbox::part(checkbox-wrapper){display:flex;flex-wrap:wrap;gap:8px}.grid-layout-wrapper .component-wrapper .component-list eo-checkbox::part(checkbox-option){margin-left:0;width:100%;background:none}.grid-layout-wrapper .layout-wrapper{flex:1}.grid-layout-wrapper .layout-wrapper .layout{max-width:1300px;margin:0 auto}.grid-layout-wrapper .layout-wrapper .actions-wrapper{position:sticky;top:0;z-index:999;margin-left:1px;display:flex;gap:8px;justify-content:flex-end;background:var(--color-fill-bg-container-1);padding:8px 12px;box-shadow:0 1px 1px 0 var(--palette-gray-5)}.grid-layout-wrapper .layout-wrapper .edit-mask{position:absolute;left:0;right:0;top:45px;bottom:0;z-index:10}.grid-layout-wrapper .layout-wrapper .delete-icon{position:absolute;right:15px;top:15px;cursor:pointer;font-size:16px;width:30px;height:30px;display:flex;justify-content:center;align-items:center;background:var(--color-fill-bg-container-1);color:var(--color-normal-text)}.grid-layout-wrapper .layout-wrapper .delete-icon:hover{color:var(--color-error)}.grid-layout-wrapper .layout-wrapper .delete-icon:active{color:var(--color-error-active)}.react-grid-item.react-grid-placeholder{background-color:#ddd}.react-grid-item.react-draggable-dragging{pointer-events:none}.react-grid-item.react-grid-placeholder.forbidden{background-color:red}",""]);const d=c.toString()}}]);
|
|
2
|
+
//# sourceMappingURL=eo-workbench-layout.ec167db5.js.map
|