@next-bricks/nav 1.14.6 → 1.14.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/bricks.json +1 -1
  2. package/dist/chunks/1491.44fbb12e.js +3 -0
  3. package/dist/chunks/1491.44fbb12e.js.map +1 -0
  4. package/dist/chunks/2133.6c54ee2c.js +2 -0
  5. package/dist/chunks/2133.6c54ee2c.js.map +1 -0
  6. package/dist/chunks/{2140.2e870601.js → 2140.389d0f1b.js} +3 -3
  7. package/dist/chunks/{2140.2e870601.js.map → 2140.389d0f1b.js.map} +1 -1
  8. package/dist/chunks/2252.03e37978.js +3 -0
  9. package/dist/chunks/2252.03e37978.js.map +1 -0
  10. package/dist/chunks/{3703.029f16d4.js → 3703.37244032.js} +3 -3
  11. package/dist/chunks/{3703.029f16d4.js.map → 3703.37244032.js.map} +1 -1
  12. package/dist/chunks/{4837.a82d955e.js → 4837.a9164f03.js} +2 -2
  13. package/dist/chunks/{7218.6b600db7.js.map → 4837.a9164f03.js.map} +1 -1
  14. package/dist/chunks/{5764.962abddb.js → 5764.e74e76af.js} +3 -3
  15. package/dist/chunks/{5764.962abddb.js.map → 5764.e74e76af.js.map} +1 -1
  16. package/dist/chunks/6595.7e2acb0f.js +2 -0
  17. package/dist/chunks/6595.7e2acb0f.js.map +1 -0
  18. package/dist/chunks/{7218.6b600db7.js → 7218.5667890b.js} +2 -2
  19. package/dist/chunks/{4837.a82d955e.js.map → 7218.5667890b.js.map} +1 -1
  20. package/dist/chunks/8518.cc5952ec.js +2 -0
  21. package/dist/chunks/8518.cc5952ec.js.map +1 -0
  22. package/dist/chunks/884.2d6b1603.js +2 -0
  23. package/dist/chunks/884.2d6b1603.js.map +1 -0
  24. package/dist/chunks/{9149.bc3f89b9.js → 9149.606acdd4.js} +2 -2
  25. package/dist/chunks/{9149.bc3f89b9.js.map → 9149.606acdd4.js.map} +1 -1
  26. package/dist/chunks/{easyops-navbar-alerts.2a7aa348.js → easyops-navbar-alerts.57620305.js} +2 -2
  27. package/dist/chunks/{easyops-navbar-alerts.2a7aa348.js.map → easyops-navbar-alerts.57620305.js.map} +1 -1
  28. package/dist/chunks/{eo-directory-tree.32e06471.js → eo-directory-tree.36dc5eb8.js} +2 -2
  29. package/dist/chunks/{eo-directory-tree.32e06471.js.map → eo-directory-tree.36dc5eb8.js.map} +1 -1
  30. package/dist/chunks/{eo-directory.a2873340.js → eo-directory.129e54a1.js} +3 -3
  31. package/dist/chunks/{eo-directory.a2873340.js.map → eo-directory.129e54a1.js.map} +1 -1
  32. package/dist/chunks/eo-frame-breadcrumb.67ebb525.js +2 -0
  33. package/dist/chunks/eo-frame-breadcrumb.67ebb525.js.map +1 -0
  34. package/dist/chunks/{eo-launchpad-button-v2.b742d6be.js → eo-launchpad-button-v2.cb95bd13.js} +3 -3
  35. package/dist/chunks/{eo-launchpad-button-v2.b742d6be.js.map → eo-launchpad-button-v2.cb95bd13.js.map} +1 -1
  36. package/dist/chunks/{eo-launchpad-button.fcc4d860.js → eo-launchpad-button.24496f06.js} +3 -3
  37. package/dist/chunks/{eo-launchpad-button.fcc4d860.js.map → eo-launchpad-button.24496f06.js.map} +1 -1
  38. package/dist/chunks/{eo-launchpad-quick-access.a82ceb9b.js → eo-launchpad-quick-access.787d5827.js} +3 -3
  39. package/dist/chunks/{eo-launchpad-quick-access.a82ceb9b.js.map → eo-launchpad-quick-access.787d5827.js.map} +1 -1
  40. package/dist/chunks/{eo-launchpad-recent-visits.bea0828f.js → eo-launchpad-recent-visits.3db45e88.js} +3 -3
  41. package/dist/chunks/{eo-launchpad-recent-visits.bea0828f.js.map → eo-launchpad-recent-visits.3db45e88.js.map} +1 -1
  42. package/dist/chunks/eo-nav-menu.dfd381c7.js +2 -0
  43. package/dist/chunks/eo-nav-menu.dfd381c7.js.map +1 -0
  44. package/dist/chunks/{eo-sidebar-menu-group.39f75a04.js → eo-sidebar-menu-group.fe402f05.js} +3 -3
  45. package/dist/chunks/{eo-sidebar-menu-group.39f75a04.js.map → eo-sidebar-menu-group.fe402f05.js.map} +1 -1
  46. package/dist/chunks/{eo-sidebar-menu-submenu.370de8ce.js → eo-sidebar-menu-submenu.5500ea32.js} +3 -3
  47. package/dist/chunks/{eo-sidebar-menu-submenu.370de8ce.js.map → eo-sidebar-menu-submenu.5500ea32.js.map} +1 -1
  48. package/dist/chunks/{eo-sidebar-menu.a3df6b8b.js → eo-sidebar-menu.3653ab99.js} +2 -2
  49. package/dist/chunks/{eo-sidebar-menu.a3df6b8b.js.map → eo-sidebar-menu.3653ab99.js.map} +1 -1
  50. package/dist/chunks/eo-sidebar-sub-menu.4142bdb5.js +3 -0
  51. package/dist/chunks/eo-sidebar-sub-menu.4142bdb5.js.map +1 -0
  52. package/dist/chunks/eo-sidebar.e2444da0.js +3 -0
  53. package/dist/chunks/eo-sidebar.e2444da0.js.map +1 -0
  54. package/dist/chunks/launchpad-config.4da1406e.js +3 -0
  55. package/dist/chunks/launchpad-config.4da1406e.js.map +1 -0
  56. package/dist/chunks/{main.8b8ca7cb.js → main.6382f486.js} +2 -2
  57. package/dist/chunks/{main.8b8ca7cb.js.map → main.6382f486.js.map} +1 -1
  58. package/dist/chunks/{nav-logo.c765ac7d.js → nav-logo.401babfb.js} +2 -2
  59. package/dist/chunks/{nav-logo.c765ac7d.js.map → nav-logo.401babfb.js.map} +1 -1
  60. package/dist/chunks/{poll-announce.e41a9d31.js → poll-announce.8b5ec80c.js} +3 -3
  61. package/dist/chunks/{poll-announce.e41a9d31.js.map → poll-announce.8b5ec80c.js.map} +1 -1
  62. package/dist/{index.8c70e8e6.js → index.6d1f79df.js} +2 -2
  63. package/dist/{index.8c70e8e6.js.map → index.6d1f79df.js.map} +1 -1
  64. package/package.json +2 -2
  65. package/dist/chunks/2133.4b32eda4.js +0 -2
  66. package/dist/chunks/2133.4b32eda4.js.map +0 -1
  67. package/dist/chunks/2252.09da952a.js +0 -3
  68. package/dist/chunks/2252.09da952a.js.map +0 -1
  69. package/dist/chunks/4235.f5095d57.js +0 -3
  70. package/dist/chunks/4235.f5095d57.js.map +0 -1
  71. package/dist/chunks/6595.2dc9edb6.js +0 -2
  72. package/dist/chunks/6595.2dc9edb6.js.map +0 -1
  73. package/dist/chunks/8518.1e9320e3.js +0 -2
  74. package/dist/chunks/8518.1e9320e3.js.map +0 -1
  75. package/dist/chunks/884.eb590f61.js +0 -2
  76. package/dist/chunks/884.eb590f61.js.map +0 -1
  77. package/dist/chunks/eo-frame-breadcrumb.67d9af17.js +0 -2
  78. package/dist/chunks/eo-frame-breadcrumb.67d9af17.js.map +0 -1
  79. package/dist/chunks/eo-nav-menu.456dec2c.js +0 -2
  80. package/dist/chunks/eo-nav-menu.456dec2c.js.map +0 -1
  81. package/dist/chunks/eo-sidebar-sub-menu.ea3c5fd7.js +0 -3
  82. package/dist/chunks/eo-sidebar-sub-menu.ea3c5fd7.js.map +0 -1
  83. package/dist/chunks/eo-sidebar.ea770742.js +0 -3
  84. package/dist/chunks/eo-sidebar.ea770742.js.map +0 -1
  85. package/dist/chunks/launchpad-config.4efddc8e.js +0 -3
  86. package/dist/chunks/launchpad-config.4efddc8e.js.map +0 -1
  87. /package/dist/chunks/{4235.f5095d57.js.LICENSE.txt → 1491.44fbb12e.js.LICENSE.txt} +0 -0
  88. /package/dist/chunks/{2140.2e870601.js.LICENSE.txt → 2140.389d0f1b.js.LICENSE.txt} +0 -0
  89. /package/dist/chunks/{2252.09da952a.js.LICENSE.txt → 2252.03e37978.js.LICENSE.txt} +0 -0
  90. /package/dist/chunks/{3703.029f16d4.js.LICENSE.txt → 3703.37244032.js.LICENSE.txt} +0 -0
  91. /package/dist/chunks/{5764.962abddb.js.LICENSE.txt → 5764.e74e76af.js.LICENSE.txt} +0 -0
  92. /package/dist/chunks/{eo-directory.a2873340.js.LICENSE.txt → eo-directory.129e54a1.js.LICENSE.txt} +0 -0
  93. /package/dist/chunks/{eo-launchpad-button-v2.b742d6be.js.LICENSE.txt → eo-launchpad-button-v2.cb95bd13.js.LICENSE.txt} +0 -0
  94. /package/dist/chunks/{eo-launchpad-button.fcc4d860.js.LICENSE.txt → eo-launchpad-button.24496f06.js.LICENSE.txt} +0 -0
  95. /package/dist/chunks/{eo-launchpad-quick-access.a82ceb9b.js.LICENSE.txt → eo-launchpad-quick-access.787d5827.js.LICENSE.txt} +0 -0
  96. /package/dist/chunks/{eo-launchpad-recent-visits.bea0828f.js.LICENSE.txt → eo-launchpad-recent-visits.3db45e88.js.LICENSE.txt} +0 -0
  97. /package/dist/chunks/{eo-sidebar-menu-group.39f75a04.js.LICENSE.txt → eo-sidebar-menu-group.fe402f05.js.LICENSE.txt} +0 -0
  98. /package/dist/chunks/{eo-sidebar-menu-submenu.370de8ce.js.LICENSE.txt → eo-sidebar-menu-submenu.5500ea32.js.LICENSE.txt} +0 -0
  99. /package/dist/chunks/{eo-sidebar-sub-menu.ea3c5fd7.js.LICENSE.txt → eo-sidebar-sub-menu.4142bdb5.js.LICENSE.txt} +0 -0
  100. /package/dist/chunks/{eo-sidebar.ea770742.js.LICENSE.txt → eo-sidebar.e2444da0.js.LICENSE.txt} +0 -0
  101. /package/dist/chunks/{launchpad-config.4efddc8e.js.LICENSE.txt → launchpad-config.4da1406e.js.LICENSE.txt} +0 -0
  102. /package/dist/chunks/{poll-announce.e41a9d31.js.LICENSE.txt → poll-announce.8b5ec80c.js.LICENSE.txt} +0 -0
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[2133],{2133:(e,t,n)=>{n.d(t,{fm:()=>M,ir:()=>_,pU:()=>O,sZ:()=>T});var s=n(8769),r=n(3474),i=n(4953),o=n(4612),a=n(4864),c=n(9393),p=n(3346),l=n(7296),u=n(2824),d=n(2887),m=n(8406);const f=10,h=10;var I,g=n(6659),y=n(1030);async function v(){return(await(0,l.K)({page:1,pageSize:f},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0})).list}function w(e,t){return e.id.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)||e.description&&e.description.toLowerCase().includes(t)?e:null}function k(e,t){return e.id.toLowerCase().includes(t)||e.name.toLowerCase().includes(t)||e.description&&e.description.toLowerCase().includes(t)?e:null}const b=`launchpad-recent-visits:${null===(I=i.auth.getAuth())||void 0===I?void 0:I.org}`,A=new o.G(localStorage);let F=[],C=new Map,S=new Map,B=!1,P=[],x=!1,E=[],L=!1;const _=new a.x((async()=>{({menuGroups:F,microAppsById:C,customLinksById:S}=await async function(){const e=await(0,p.i)({},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0}),t=new Map;for(const n of e.storyboards){const e=n.app;e.localeName=(0,g.F)(e.locales,e.name),t.set(e.id,e)}const n=[],s=new Map;for(const r of e.desktops){const e=[];for(const n of r.items)switch(n.type){case"app":{const s=t.get(n.id);s&&e.push({...n,name:s.localeName,url:s.homepage,menuIcon:s.menuIcon});break}case"custom":e.push(n),s.set(n.id,n);break;case"dir":{const r=[];for(const e of n.items)if("app"===e.type){const n=t.get(e.id);n&&r.push({...e,name:n.localeName,url:n.homepage,menuIcon:n.menuIcon})}else"custom"===e.type&&(r.push(e),s.set(e.id,e));r.length>0&&e.push({...n,items:r});break}}e.length>0&&n.push({...r,items:e})}return{menuGroups:n,microAppsById:t,customLinksById:s}}()),B=!0})),M=new a.x((async()=>{P=await async function(){const e=await v(),t=[];for(const n of e)if("microApp"===n.type){const e=n.relatedApp;e.localeName=(0,g.F)(e.locales,e.name),t.push({favoriteId:n.instanceId,type:"app",name:e.localeName,id:e.appId,url:e.homepage,instanceId:e.instanceId,menuIcon:e.menuIcon})}else if("customItem"===n.type){const e=n.relatedCustomItem;t.push({favoriteId:n.instanceId,type:"custom",name:e.name,id:e.id,url:e.url,menuIcon:e.menuIcon})}else"link"===n.type&&t.push({favoriteId:n.instanceId,type:"link",name:n.name,url:n.link,menuIcon:n.icon});return t}(),x=!0})),O=new a.x((async()=>{E=await async function(){const e=(await(0,m.y)("MICRO_APP_CATEGORY@EASYOPS",{fields:["id","type","name","icon","order","platformApps.appId","platformApps.name","platformApps.homepage","platformApps.description","platformApps.menuIcon","platformApps.locales","platformApps._object_id","platformApps.@.order","platformItems.id","platformItems.name","platformItems.url","platformItems.description","platformItems.menuIcon","platformItems._object_id","platformItems.@.order"],page:1,page_size:300,query:{type:"platform"}})).list,t=null==e?void 0:e.map((e=>{const t=e.platformApps.map((e=>{var t;return{type:"app",name:(0,g.F)(e.locales,e.name),id:e.appId,url:e.homepage,menuIcon:e.menuIcon,description:e.description,instanceId:e.instanceId,order:null===(t=e["@"])||void 0===t?void 0:t.order}})),n=e.platformItems.map((e=>{var t;return{type:"custom",name:e.name,id:e.id,url:e.url,menuIcon:e.menuIcon,description:e.description,instanceId:e.instanceId,order:null===(t=e["@"])||void 0===t?void 0:t.order}})),s=(0,y.sortBy)([...t,...n],"order");return{instanceId:e.instanceId,id:e.id,name:e.name,icon:e.icon,order:e.order,items:s}}));return[{id:"#all",name:"全部",icon:{lib:"easyops",category:"second-menu",icon:"sprint-planning-second-menu"},items:[]},...(0,y.sortBy)(t,"order")]}(),L=!0})),N=e=>(0,c.Ds)({type:"error",message:(0,r.httpErrorToString)(e)});function T(e){const[t,n]=(0,s.useState)(F),[i,o]=(0,s.useState)(C),[a,p]=(0,s.useState)(S),[l,m]=(0,s.useState)(""),[I,g]=(0,s.useState)(!B),[y,T]=(0,s.useState)(!x),[R,j]=(0,s.useState)(!L),[q,z]=(0,s.useState)([]),[D,J]=(0,s.useState)([]),[V,Y]=(0,s.useState)(P),[$,H]=(0,s.useState)(E);(0,s.useEffect)((()=>{e&&!I&&(n(F),o(C),p(S))}),[e,I]),(0,s.useEffect)((()=>{e&&!y&&Y(P)}),[e,y]),(0,s.useEffect)((()=>{e&&!R&&H(E)}),[e,R]),(0,s.useEffect)((()=>{var t;e&&z(null!==(t=A.getItem(b))&&void 0!==t?t:[])}),[e]),(0,s.useEffect)((()=>{e&&(async()=>{try{await _.fetch(),g(!1)}catch(e){(0,r.handleHttpError)(e)}})()}),[e]),(0,s.useEffect)((()=>{e&&(async()=>{try{await M.fetch(),T(!1)}catch(e){T(!1),N(e)}})()}),[e]),(0,s.useEffect)((()=>{var t;e&&null!==(t=(0,r.getRuntime)())&&void 0!==t&&t.getFeatureFlags()["launchpad-show-platform-category"]&&(async()=>{try{await O.fetch(),j(!1)}catch(e){j(!1),N(e)}})()}),[e]),(0,s.useEffect)((()=>{if(I)return;const e=q.map((e=>{if("app"===e.type){const t=i.get(e.id);return t?{type:"app",name:t.localeName,id:t.id,url:t.homepage,instanceId:t.instanceId,menuIcon:t.menuIcon}:null}return a.get(e.id)})).filter(Boolean);J(e)}),[a,I,i,q]);const K=(0,s.useCallback)((e=>{var t;let{type:n,id:s}=e;const r=null!==(t=A.getItem(b))&&void 0!==t?t:[],i=r.findIndex((e=>e.type===n&&e.id===s));i>-1&&r.splice(i,1),r.unshift({type:n,id:s}),r.length>h&&r.pop(),A.setItem(b,r)}),[]),Q=(0,s.useCallback)((e=>V.some((t=>G(e,t)))),[V]),U=(0,s.useCallback)((e=>{const t=V.findIndex((t=>"link"===e.type?t.favoriteId===e.favoriteId:G(e,t)));let n;if(t>-1){const e=V[t];n=V.slice(0,t).concat(V.slice(t+1)),async function(e){return e.favoriteId?(0,d.r)(e.favoriteId):v().then((t=>{var n;const s=null===(n=t.find((t=>{var n,s;return"app"===e.type?"microApp"===t.type&&(null===(n=t.relatedApp)||void 0===n?void 0:n.appId)===e.id:"custom"===e.type&&(null===(s=t.relatedCustomItem)||void 0===s?void 0:s.id)===e.id})))||void 0===n?void 0:n.instanceId;if(s)return(0,d.r)(s);console.error("Menu item to unstar not found:",e)}))}(e).catch(N)}else{if(V.length>=f)return void(0,c.ui)({type:"warn",title:"收藏数量已达上限",content:`当前收藏链接数量已达上限(${f}个),请删除部分收藏后再添加。`});const t={...e};n=V.concat(t),async function(e){return(0,u.k)({type:"app"===e.type?"microApp":"customItem",relatedInstanceId:e.instanceId},{interceptorParams:{ignoreLoadingBar:!0}})}(e).then((e=>{e&&(t.favoriteId=e.instanceId)}),N)}Y(n),P=n}),[V]),Z=(0,s.useMemo)((()=>function(e,t){if(!t)return e;const n=t.toLowerCase();return e.map((e=>({...e,items:e.items.map((e=>{switch(e.type){case"app":return w(e,n);case"custom":return k(e,n);case"dir":{const t=e.items.map((e=>"app"===e.type?w(e,n):"custom"===e.type?k(e,n):null)).filter(Boolean);return t.length>0?{...e,items:t}:null}}})).filter(Boolean)}))).filter((e=>e.items.length>0))}(t,l)),[t,l]),W=(0,s.useMemo)((()=>function(e,t){if(!t)return e;const n=t.toLowerCase();return e.map((e=>({...e,items:e.items.map((e=>{switch(e.type){case"app":return w(e,n);case"custom":return k(e,n)}})).filter(Boolean)})))}($,l)),[$,l]);return{loading:I,q:l,setQ:m,menuGroups:Z,loadingFavorites:y,loadingPlatformCategories:R,favorites:V,recentVisits:D,pushRecentVisit:K,isStarred:Q,toggleStar:U,platformCategories:W}}function G(e,t){return e.instanceId&&t.instanceId?t.instanceId===e.instanceId:t.type===e.type&&t.id===e.id}},9393:(e,t,n)=>{n.d(t,{Bj:()=>i,Ds:()=>c,EM:()=>o,ui:()=>a});var s=n(4295),r=n(3078);const i=(0,s.wrapBrick)("eo-icon"),o=(0,s.wrapBrick)("eo-link"),a=(0,r.unwrapProvider)("basic.show-dialog"),c=(0,r.unwrapProvider)("basic.show-notification")},4864:(e,t,n)=>{n.d(t,{x:()=>r});var s=n(4586);class r{constructor(e){(0,s.A)(this,"preFetchId",null),(0,s.A)(this,"preFetchScheduled",!1),(0,s.A)(this,"firstFetchPromise",null),(0,s.A)(this,"isFetching",!1),(0,s.A)(this,"task",void 0),this.task=e}schedulePrefetch(){if(!this.preFetchScheduled){this.preFetchScheduled=!0;const e=async()=>{this.preFetchId=null,this.fetch()};"function"==typeof window.requestIdleCallback?this.preFetchId=window.requestIdleCallback(e):this.preFetchId=setTimeout(e)}}fetch(e){let t;return this.preFetchId&&("function"==typeof window.cancelIdleCallback?cancelIdleCallback(this.preFetchId):clearTimeout(this.preFetchId),this.preFetchId=null),this.isFetching&&!e||(this.isFetching=!0,t=this.task(),t.catch((e=>{console.error(e),this.firstFetchPromise=null})).finally((()=>{this.isFetching=!1})),this.firstFetchPromise||(this.firstFetchPromise=t),!e)?this.firstFetchPromise:t}}},6659:(e,t,n)=>{n.d(t,{F:()=>r});var s=n(6181);function r(e,t){var n;if(!e)return t;const r=Object.fromEntries(Object.entries(e).filter((e=>{let[t,n]=e;return n.name})).map((e=>{let[t,n]=e;return[t,n.name]})));return null!==(n=(0,s.i18nText)(r))&&void 0!==n?n:t}},4612:(e,t,n)=>{n.d(t,{G:()=>s});class s{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"brick-next-";this.storage=e,this.prefix=t}setItem(e,t){this.storage.setItem(this.prefix+e,JSON.stringify(t))}getItem(e){return JSON.parse(this.storage.getItem(this.prefix+e))}removeItem(e){return this.storage.removeItem(this.prefix+e)}clear(){return this.storage.clear()}}}}]);
2
+ //# sourceMappingURL=2133.6c54ee2c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunks/2133.6c54ee2c.js","mappings":"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","sources":["webpack:///./src/launchpad-button-v2/constants.ts","webpack:///./src/launchpad-button-v2/api.ts","webpack:///./src/launchpad-button-v2/search.ts","webpack:///./src/launchpad-button-v2/useLaunchpadInfo.ts","webpack:///./src/launchpad-button-v2/wrapped-bricks.ts","webpack:///./src/shared/DeferredService.ts","webpack:///./src/shared/getLocaleName.ts","webpack:///../../src/JsonStorage.ts"],"sourcesContent":["export const FAVORITES_LIMIT = 10;\nexport const RECENT_VISITS_LIMIT = 10;\n","import type { Storyboard } from \"@next-core/types\";\nimport { LaunchpadApi_getLaunchpadInfo } from \"@next-api-sdk/micro-app-standalone-sdk\";\nimport {\n LaunchpadApi_createCollectionV2,\n LaunchpadApi_deleteCollectionV2,\n LaunchpadApi_listCollectionV2,\n} from \"@next-api-sdk/user-service-sdk\";\nimport { InstanceApi_postSearchV3 } from \"@next-api-sdk/cmdb-sdk\";\nimport type {\n FavMenuItem,\n MenuGroupData,\n MenuItemData,\n MenuItemDataApp,\n MenuItemDataCustom,\n MenuItemDataDir,\n MenuItemDataNormal,\n MicroAppWithInstanceId,\n PlatformCategoryItem,\n} from \"./interfaces\";\nimport { FAVORITES_LIMIT } from \"./constants\";\nimport { getAppLocaleName } from \"../shared/getLocaleName\";\nimport { sortBy } from \"lodash\";\n\nexport async function fetchLaunchpadInfo() {\n const launchpadInfo = await LaunchpadApi_getLaunchpadInfo(\n {},\n {\n interceptorParams: { ignoreLoadingBar: true },\n noAbortOnRouteChange: true,\n }\n );\n\n const microAppsById = new Map<string, MicroAppWithInstanceId>();\n for (const storyboard of launchpadInfo.storyboards as Storyboard[]) {\n const app = storyboard.app as unknown as MicroAppWithInstanceId;\n app.localeName = getAppLocaleName(app.locales, app.name);\n microAppsById.set(app.id, app);\n }\n\n const menuGroups: MenuGroupData[] = [];\n const customLinksById = new Map<string, MenuItemDataCustom>();\n\n for (const group of launchpadInfo.desktops as unknown as MenuGroupData[]) {\n const items: MenuItemData[] = [];\n for (const item of group.items) {\n switch (item.type) {\n case \"app\": {\n const app = microAppsById.get(item.id);\n if (app) {\n items.push({\n ...item,\n name: app.localeName,\n url: app.homepage,\n menuIcon: app.menuIcon,\n } as MenuItemDataApp);\n }\n break;\n }\n case \"custom\":\n items.push(item);\n customLinksById.set(item.id, item);\n break;\n case \"dir\": {\n const subItems: MenuItemDataNormal[] = [];\n for (const subItem of item.items) {\n if (subItem.type === \"app\") {\n const app = microAppsById.get(subItem.id);\n if (app) {\n subItems.push({\n ...subItem,\n name: app.localeName,\n url: app.homepage,\n menuIcon: app.menuIcon,\n } as MenuItemDataApp);\n }\n } else if (subItem.type === \"custom\") {\n subItems.push(subItem as MenuItemDataCustom);\n customLinksById.set(subItem.id, subItem);\n }\n }\n if (subItems.length > 0) {\n items.push({\n ...item,\n items: subItems,\n } as MenuItemDataDir);\n }\n break;\n }\n }\n }\n if (items.length > 0) {\n menuGroups.push({ ...group, items });\n }\n }\n\n return { menuGroups, microAppsById, customLinksById };\n}\n\nasync function fetchRawFavorites() {\n return (\n await LaunchpadApi_listCollectionV2(\n { page: 1, pageSize: FAVORITES_LIMIT },\n {\n interceptorParams: { ignoreLoadingBar: true },\n noAbortOnRouteChange: true,\n }\n )\n ).list;\n}\n\nexport async function fetchFavorites() {\n const list = await fetchRawFavorites();\n const stored: FavMenuItem[] = [];\n for (const fav of list) {\n if (fav.type === \"microApp\") {\n const app = fav.relatedApp as Omit<MicroAppWithInstanceId, \"id\"> & {\n appId: string;\n };\n app.localeName = getAppLocaleName(app.locales, app.name);\n stored.push({\n favoriteId: fav.instanceId,\n type: \"app\",\n name: app.localeName,\n id: app.appId,\n url: app.homepage,\n instanceId: app.instanceId,\n menuIcon: app.menuIcon,\n } as FavMenuItem);\n } else if (fav.type === \"customItem\") {\n const customItem = fav.relatedCustomItem!;\n stored.push({\n favoriteId: fav.instanceId,\n type: \"custom\",\n name: customItem.name,\n id: customItem.id,\n url: customItem.url,\n menuIcon: customItem.menuIcon,\n } as FavMenuItem);\n } else if (fav.type === \"link\") {\n stored.push({\n favoriteId: fav.instanceId,\n type: \"link\",\n name: fav.name,\n // id: fav.id,\n url: fav.link,\n menuIcon: fav.icon,\n } as FavMenuItem);\n }\n }\n return stored;\n}\n\nexport async function favorite(\n item: MenuItemDataNormal\n): Promise<{ instanceId?: string }> {\n return LaunchpadApi_createCollectionV2(\n {\n type: item.type === \"app\" ? \"microApp\" : \"customItem\",\n relatedInstanceId: item.instanceId,\n },\n {\n interceptorParams: { ignoreLoadingBar: true },\n }\n );\n}\n\nexport async function undoFavorite(item: FavMenuItem) {\n if (item.favoriteId) {\n return LaunchpadApi_deleteCollectionV2(item.favoriteId);\n }\n\n return fetchRawFavorites().then((list) => {\n const foundId = list.find((fav) =>\n item.type === \"app\"\n ? fav.type === \"microApp\" && fav.relatedApp?.appId === item.id\n : item.type === \"custom\" && fav.relatedCustomItem?.id === item.id\n )?.instanceId;\n\n if (foundId) {\n return LaunchpadApi_deleteCollectionV2(foundId);\n }\n // eslint-disable-next-line no-console\n console.error(\"Menu item to unstar not found:\", item);\n });\n}\n\nexport async function fetchPlatformCategories(): Promise<\n PlatformCategoryItem[]\n> {\n const categories = (\n await InstanceApi_postSearchV3(\"MICRO_APP_CATEGORY@EASYOPS\", {\n fields: [\n \"id\",\n \"type\",\n \"name\",\n \"icon\",\n \"order\",\n \"platformApps.appId\",\n \"platformApps.name\",\n \"platformApps.homepage\",\n \"platformApps.description\",\n \"platformApps.menuIcon\",\n \"platformApps.locales\",\n \"platformApps._object_id\",\n \"platformApps.@.order\",\n \"platformItems.id\",\n \"platformItems.name\",\n \"platformItems.url\",\n \"platformItems.description\",\n \"platformItems.menuIcon\",\n \"platformItems._object_id\",\n \"platformItems.@.order\",\n ],\n page: 1,\n page_size: 300,\n query: {\n type: \"platform\",\n },\n })\n ).list;\n\n const _categories = categories?.map((category) => {\n const apps = category.platformApps.map((app: Record<string, any>) => {\n return {\n type: \"app\",\n name: getAppLocaleName(app.locales, app.name),\n id: app.appId,\n url: app.homepage,\n menuIcon: app.menuIcon,\n description: app.description,\n instanceId: app.instanceId,\n order: app[\"@\"]?.order,\n };\n }) as MenuItemDataApp[];\n const customItems = category.platformItems.map(\n (item: Record<string, any>) => {\n return {\n type: \"custom\",\n name: item.name,\n id: item.id,\n url: item.url,\n menuIcon: item.menuIcon,\n description: item.description,\n instanceId: item.instanceId,\n order: item[\"@\"]?.order,\n };\n }\n ) as MenuItemDataCustom[];\n\n const items = sortBy([...apps, ...customItems], \"order\");\n return {\n instanceId: category.instanceId,\n id: category.id,\n name: category.name,\n icon: category.icon,\n order: category.order,\n items,\n } as PlatformCategoryItem;\n });\n\n return [\n {\n id: \"#all\",\n name: \"全部\",\n icon: {\n lib: \"easyops\",\n category: \"second-menu\",\n icon: \"sprint-planning-second-menu\",\n },\n items: [],\n },\n ...sortBy(_categories, \"order\"),\n ];\n}\n","import type {\n MenuGroupData,\n MenuItemData,\n MenuItemDataApp,\n MenuItemDataCustom,\n MenuItemDataNormal,\n PlatformCategoryItem,\n} from \"./interfaces\";\n\nexport function search(\n allMenuGroups: MenuGroupData[],\n q: string\n): MenuGroupData[] {\n if (!q) {\n return allMenuGroups;\n }\n const lowerQ = q.toLowerCase();\n const groups: MenuGroupData[] = allMenuGroups\n .map((group) => ({\n ...group,\n items: group.items\n .map((item) => {\n switch (item.type) {\n case \"app\":\n return matchMenuItemApp(item, lowerQ);\n case \"custom\":\n return matchMenuItemCustom(item, lowerQ);\n case \"dir\": {\n const filteredSubItems = item.items\n .map((sub) =>\n sub.type === \"app\"\n ? matchMenuItemApp(sub, lowerQ)\n : sub.type === \"custom\"\n ? matchMenuItemCustom(sub, lowerQ)\n : null\n )\n .filter(Boolean) as MenuItemData[];\n return filteredSubItems.length > 0\n ? {\n ...item,\n items: filteredSubItems,\n }\n : null;\n }\n }\n })\n // Ignore not matched items\n .filter(Boolean) as MenuItemData[],\n }))\n // ignore empty desktops\n .filter((group) => group.items.length > 0);\n return groups;\n}\n\nexport function searchCategories(\n categories: PlatformCategoryItem[],\n q: string\n): PlatformCategoryItem[] {\n if (!q) {\n return categories;\n }\n\n const lowerQ = q.toLowerCase();\n const _categories = categories.map((category) => ({\n ...category,\n items: category.items\n .map((item) => {\n switch (item.type) {\n case \"app\":\n return matchMenuItemApp(item, lowerQ);\n case \"custom\":\n return matchMenuItemCustom(item, lowerQ);\n }\n })\n // Ignore not matched items\n .filter(Boolean) as MenuItemDataNormal[],\n }));\n return _categories;\n}\n\nfunction matchMenuItemApp(item: MenuItemDataApp, lowerQ: string) {\n return item.id.toLowerCase().includes(lowerQ) ||\n item.name.toLowerCase().includes(lowerQ) ||\n (item.description && item.description.toLowerCase().includes(lowerQ))\n ? item\n : null;\n}\n\nfunction matchMenuItemCustom(item: MenuItemDataCustom, lowerQ: string) {\n return item.id.toLowerCase().includes(lowerQ) ||\n item.name.toLowerCase().includes(lowerQ) ||\n (item.description && item.description.toLowerCase().includes(lowerQ))\n ? item\n : null;\n}\n","import { useCallback, useEffect, useMemo, useState } from \"react\";\nimport {\n getRuntime,\n handleHttpError,\n httpErrorToString,\n} from \"@next-core/runtime\";\nimport { auth } from \"@next-core/easyops-runtime\";\nimport { JsonStorage } from \"@next-shared/general/JsonStorage\";\nimport { DeferredService } from \"../shared/DeferredService\";\nimport { showDialog, showNotification } from \"./wrapped-bricks\";\nimport type {\n FavMenuItem,\n MenuGroupData,\n MenuItemDataCustom,\n MenuItemDataLink,\n MenuItemDataNormal,\n MicroAppWithInstanceId,\n PlatformCategoryItem,\n StoredMenuItem,\n} from \"./interfaces\";\nimport {\n favorite,\n fetchFavorites,\n fetchLaunchpadInfo,\n fetchPlatformCategories,\n undoFavorite,\n} from \"./api\";\nimport { search, searchCategories } from \"./search\";\nimport { FAVORITES_LIMIT, RECENT_VISITS_LIMIT } from \"./constants\";\n\nconst storageKey = `launchpad-recent-visits:${(\n auth.getAuth() as Record<string, string>\n)?.org}`;\nconst storage = new JsonStorage(localStorage);\n\nlet candidateDesktops: MenuGroupData[] = [];\nlet candidateMicroAppsById = new Map<string, MicroAppWithInstanceId>();\nlet candidateCustomLinksById = new Map<string, MenuItemDataCustom>();\nlet preLoaded = false;\n\nlet candidateFavorites: FavMenuItem[] = [];\nlet preLoadedFavorites = false;\n\nlet candidatePlatformCategories: PlatformCategoryItem[] = [];\nlet preLoadedPlatformCategories = false;\n\nexport const deferredLaunchpadInfo = new DeferredService(async () => {\n ({\n menuGroups: candidateDesktops,\n microAppsById: candidateMicroAppsById,\n customLinksById: candidateCustomLinksById,\n } = await fetchLaunchpadInfo());\n preLoaded = true;\n});\n\nexport const deferredFavorites = new DeferredService(async () => {\n candidateFavorites = await fetchFavorites();\n preLoadedFavorites = true;\n});\n\nexport const deferredPlatformCategories = new DeferredService(async () => {\n candidatePlatformCategories = await fetchPlatformCategories();\n preLoadedPlatformCategories = true;\n});\n\nconst showErrorAsNotification = (error: unknown) =>\n showNotification({\n type: \"error\",\n message: httpErrorToString(error),\n });\n\n/**\n * - 页面初始化时预加载 launchpad 信息。\n * - 每次打开 launchpad 都发起请求,但该请求的数据只在下次打开 launchpad 时使用。\n * 即每次打开 launchpad 使用的都是上一次获取的数据,以便达到两个效果:\n * - 每次打开 launchpad 都能立即显示菜单列表;\n * - 同时当用户在 launchpad 上操作时,不会出现数据突然更新(新数据请求完成)。\n */\nexport function useLaunchpadInfo(active?: boolean) {\n const [desktops, setDesktops] = useState(candidateDesktops);\n const [microAppsById, setMicroAppsById] = useState(candidateMicroAppsById);\n const [customLinksById, setCustomLinksById] = useState(\n candidateCustomLinksById\n );\n\n const [q, setQ] = useState(\"\");\n\n const [loading, setLoading] = useState(!preLoaded);\n const [loadingFavorites, setLoadingFavorites] = useState(!preLoadedFavorites);\n const [loadingPlatformCategories, setLoadingPlatformCategories] = useState(\n !preLoadedPlatformCategories\n );\n\n const [storedRecentVisits, setStoredRecentVisits] = useState<\n StoredMenuItem[]\n >([]);\n\n const [recentVisits, setRecentVisits] = useState<MenuItemDataNormal[]>([]);\n\n const [favorites, setFavorites] = useState<FavMenuItem[]>(candidateFavorites);\n const [platformCategories, setPlatformCategories] = useState<\n PlatformCategoryItem[]\n >(candidatePlatformCategories);\n\n useEffect(() => {\n // 仅当首次加载完成或重新打开 launchpad 时更新一次数据。\n if (active && !loading) {\n setDesktops(candidateDesktops);\n setMicroAppsById(candidateMicroAppsById);\n setCustomLinksById(candidateCustomLinksById);\n }\n }, [active, loading]);\n\n useEffect(() => {\n if (active && !loadingFavorites) {\n setFavorites(candidateFavorites);\n }\n }, [active, loadingFavorites]);\n\n useEffect(() => {\n if (active && !loadingPlatformCategories) {\n setPlatformCategories(candidatePlatformCategories);\n }\n }, [active, loadingPlatformCategories]);\n\n useEffect(() => {\n if (active) {\n setStoredRecentVisits(storage.getItem(storageKey) ?? []);\n }\n }, [active]);\n\n useEffect(() => {\n if (active) {\n const startFetchLaunchpadInfo = async (): Promise<void> => {\n try {\n await deferredLaunchpadInfo.fetch();\n setLoading(false);\n } catch (error) {\n handleHttpError(error);\n }\n };\n startFetchLaunchpadInfo();\n }\n }, [active]);\n\n useEffect(() => {\n if (active) {\n const startFetchFavorites = async (): Promise<void> => {\n try {\n await deferredFavorites.fetch();\n setLoadingFavorites(false);\n } catch (error) {\n setLoadingFavorites(false);\n showErrorAsNotification(error);\n }\n };\n startFetchFavorites();\n }\n }, [active]);\n\n useEffect(() => {\n if (\n active &&\n getRuntime()?.getFeatureFlags()[\"launchpad-show-platform-category\"]\n ) {\n const startFetchPlatformCategories = async (): Promise<void> => {\n try {\n await deferredPlatformCategories.fetch();\n setLoadingPlatformCategories(false);\n } catch (error) {\n setLoadingPlatformCategories(false);\n showErrorAsNotification(error);\n }\n };\n startFetchPlatformCategories();\n }\n }, [active]);\n\n useEffect(() => {\n if (loading) {\n return;\n }\n const visits = storedRecentVisits\n .map((item) => {\n // Remembered recent visits maybe no longer existed in launchpad\n if (item.type === \"app\") {\n const app = microAppsById.get(item.id);\n return app\n ? {\n type: \"app\",\n name: app.localeName,\n id: app.id,\n url: app.homepage,\n instanceId: app.instanceId,\n menuIcon: app.menuIcon,\n }\n : null;\n }\n return customLinksById.get(item.id);\n })\n .filter(Boolean) as MenuItemDataNormal[];\n setRecentVisits(visits);\n }, [customLinksById, loading, microAppsById, storedRecentVisits]);\n\n const pushRecentVisit = useCallback(({ type, id }: StoredMenuItem) => {\n const visits: StoredMenuItem[] = storage.getItem(storageKey) ?? [];\n const index = visits.findIndex(\n (visit) => visit.type === type && visit.id === id\n );\n if (index > -1) {\n visits.splice(index, 1);\n }\n visits.unshift({ type, id });\n if (visits.length > RECENT_VISITS_LIMIT) {\n visits.pop();\n }\n // setStoredRecentVisits(visits);\n storage.setItem(storageKey, visits);\n }, []);\n\n const isStarred = useCallback(\n (item: MenuItemDataNormal) =>\n favorites.some((fav) => matchFavorite(item, fav)),\n [favorites]\n );\n\n const toggleStar = useCallback(\n (item: MenuItemDataNormal | MenuItemDataLink) => {\n const index = favorites.findIndex((fav) =>\n item.type === \"link\"\n ? fav.favoriteId === item.favoriteId\n : matchFavorite(item, fav)\n );\n let newFavorites: FavMenuItem[];\n if (index > -1) {\n const removed = favorites[index];\n newFavorites = favorites\n .slice(0, index)\n .concat(favorites.slice(index + 1));\n undoFavorite(removed).catch(showErrorAsNotification);\n } else {\n if (favorites.length >= FAVORITES_LIMIT) {\n showDialog({\n type: \"warn\",\n title: \"收藏数量已达上限\",\n content: `当前收藏链接数量已达上限(${FAVORITES_LIMIT}个),请删除部分收藏后再添加。`,\n });\n return;\n }\n // Assert: no link item\n const fav: FavMenuItem = { ...(item as MenuItemDataNormal) };\n newFavorites = favorites.concat(fav);\n favorite(item as MenuItemDataNormal).then((result) => {\n if (result) {\n fav.favoriteId = result.instanceId;\n }\n }, showErrorAsNotification);\n }\n setFavorites(newFavorites);\n candidateFavorites = newFavorites;\n },\n [favorites]\n );\n\n const menuGroups: MenuGroupData[] = useMemo(\n () => search(desktops, q),\n [desktops, q]\n );\n\n const filteredPlatformCategories: PlatformCategoryItem[] = useMemo(\n () => searchCategories(platformCategories, q),\n [platformCategories, q]\n );\n\n return {\n loading,\n q,\n setQ,\n menuGroups,\n loadingFavorites,\n loadingPlatformCategories,\n favorites,\n recentVisits,\n pushRecentVisit,\n isStarred,\n toggleStar,\n platformCategories: filteredPlatformCategories,\n };\n}\n\nexport function matchFavorite(item: MenuItemDataNormal, fav: FavMenuItem) {\n return item.instanceId && fav.instanceId\n ? fav.instanceId === item.instanceId\n : fav.type === item.type && fav.id === item.id;\n}\n","import { wrapBrick } from \"@next-core/react-element\";\nimport { unwrapProvider } from \"@next-core/utils/general\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type { showDialog as _showDialog } from \"@next-bricks/basic/data-providers/show-dialog/show-dialog\";\nimport type { showNotification as _showNotification } from \"@next-bricks/basic/data-providers/show-notification/show-notification\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nexport const WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\n\n// Use `unwrapProvider` to get the original function of a provider\nexport const showDialog =\n unwrapProvider<typeof _showDialog>(\"basic.show-dialog\");\n\nexport const showNotification = unwrapProvider<typeof _showNotification>(\n \"basic.show-notification\"\n);\n","export class DeferredService {\n private preFetchId: number | null = null;\n private preFetchScheduled = false;\n private firstFetchPromise: Promise<unknown> | null = null;\n private isFetching = false;\n private readonly task: () => Promise<unknown>;\n\n constructor(task: () => Promise<unknown>) {\n this.task = task;\n }\n\n schedulePrefetch(): void {\n if (!this.preFetchScheduled) {\n this.preFetchScheduled = true;\n const preFetchLaunchpadInfo = async (): Promise<void> => {\n this.preFetchId = null;\n this.fetch();\n };\n // istanbul ignore if\n if (typeof window.requestIdleCallback === \"function\") {\n this.preFetchId = window.requestIdleCallback(preFetchLaunchpadInfo);\n } else {\n this.preFetchId = setTimeout(\n preFetchLaunchpadInfo\n ) as unknown as number;\n }\n }\n }\n\n fetch(eager?: boolean): Promise<unknown> {\n if (this.preFetchId) {\n // istanbul ignore if\n if (typeof window.cancelIdleCallback === \"function\") {\n cancelIdleCallback(this.preFetchId);\n } else {\n clearTimeout(this.preFetchId);\n }\n this.preFetchId = null;\n }\n\n let promise: Promise<unknown>;\n if (!this.isFetching || eager) {\n this.isFetching = true;\n promise = this.task();\n promise\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error(error);\n this.firstFetchPromise = null;\n })\n .finally(() => {\n this.isFetching = false;\n });\n if (!this.firstFetchPromise) {\n this.firstFetchPromise = promise;\n }\n if (eager) {\n return promise;\n }\n }\n return this.firstFetchPromise!;\n }\n}\n","import { i18nText } from \"@next-core/i18n\";\nimport type { AppLocales, I18nData } from \"@next-core/types\";\n\nexport function getAppLocaleName(\n locales: AppLocales | undefined,\n name: string\n) {\n if (!locales) {\n return name;\n }\n const i18nData = Object.fromEntries(\n Object.entries(locales)\n .filter(([lang, resources]) => resources.name)\n .map(([lang, resources]) => [lang, resources.name])\n ) as I18nData;\n return i18nText(i18nData) ?? name;\n}\n","export class JsonStorage {\n constructor(\n private storage: Storage,\n private prefix: string = \"brick-next-\"\n ) {}\n\n setItem<T = any>(name: string, value: T): void {\n this.storage.setItem(this.prefix + name, JSON.stringify(value));\n }\n\n getItem<T = any>(name: string): T {\n return JSON.parse(this.storage.getItem(this.prefix + name) as string) as T;\n }\n\n removeItem(name: string): void {\n return this.storage.removeItem(this.prefix + name);\n }\n\n clear(): void {\n return this.storage.clear();\n }\n}\n"],"names":["FAVORITES_LIMIT","RECENT_VISITS_LIMIT","async","fetchRawFavorites","LaunchpadApi_listCollectionV2","page","pageSize","interceptorParams","ignoreLoadingBar","noAbortOnRouteChange","list","matchMenuItemApp","item","lowerQ","id","toLowerCase","includes","name","description","matchMenuItemCustom","storageKey","_auth$getAuth","auth","getAuth","org","storage","JsonStorage","localStorage","candidateDesktops","candidateMicroAppsById","Map","candidateCustomLinksById","preLoaded","candidateFavorites","preLoadedFavorites","candidatePlatformCategories","preLoadedPlatformCategories","deferredLaunchpadInfo","DeferredService","menuGroups","microAppsById","customLinksById","launchpadInfo","LaunchpadApi_getLaunchpadInfo","storyboard","storyboards","app","localeName","getAppLocaleName","locales","set","group","desktops","items","type","get","push","url","homepage","menuIcon","subItems","subItem","length","fetchLaunchpadInfo","deferredFavorites","stored","fav","relatedApp","favoriteId","instanceId","appId","customItem","relatedCustomItem","link","icon","fetchFavorites","deferredPlatformCategories","categories","InstanceApi_postSearchV3","fields","page_size","query","_categories","map","category","apps","platformApps","_app$","order","customItems","platformItems","_item$","sortBy","lib","fetchPlatformCategories","showErrorAsNotification","error","showNotification","message","httpErrorToString","useLaunchpadInfo","active","setDesktops","useState","setMicroAppsById","setCustomLinksById","q","setQ","loading","setLoading","loadingFavorites","setLoadingFavorites","loadingPlatformCategories","setLoadingPlatformCategories","storedRecentVisits","setStoredRecentVisits","recentVisits","setRecentVisits","favorites","setFavorites","platformCategories","setPlatformCategories","useEffect","_storage$getItem","getItem","fetch","handleHttpError","startFetchLaunchpadInfo","startFetchFavorites","_getRuntime","getRuntime","getFeatureFlags","startFetchPlatformCategories","visits","filter","Boolean","pushRecentVisit","useCallback","_ref","_storage$getItem2","index","findIndex","visit","splice","unshift","pop","setItem","isStarred","some","matchFavorite","toggleStar","newFavorites","removed","slice","concat","LaunchpadApi_deleteCollectionV2","then","_list$find","foundId","find","_fav$relatedApp","_fav$relatedCustomIte","console","undoFavorite","catch","showDialog","title","content","LaunchpadApi_createCollectionV2","relatedInstanceId","favorite","result","useMemo","allMenuGroups","filteredSubItems","sub","search","filteredPlatformCategories","searchCategories","WrappedIcon","wrapBrick","WrappedLink","unwrapProvider","constructor","task","_defineProperty","this","schedulePrefetch","preFetchScheduled","preFetchLaunchpadInfo","preFetchId","window","requestIdleCallback","setTimeout","eager","promise","cancelIdleCallback","clearTimeout","isFetching","firstFetchPromise","finally","_i18nText","i18nData","Object","fromEntries","entries","lang","resources","_ref2","i18nText","prefix","arguments","undefined","value","JSON","stringify","parse","removeItem","clear"],"sourceRoot":""}
@@ -1,3 +1,3 @@
1
- /*! For license information please see 2140.2e870601.js.LICENSE.txt */
2
- "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[2140],{1675:(e,t,n)=>{n.d(t,{A:()=>f});var i=n(7502),r=n(9575),a=n(2474),o=n(9140),c=n(8769),l=n.n(c),u=n(9548);function s(e,t){var n=Object.create(null);return e&&c.Children.map(e,(function(e){return e})).forEach((function(e){n[e.key]=function(e){return t&&(0,c.isValidElement)(e)?t(e):e}(e)})),n}function p(e,t,n){return null!=n[t]?n[t]:e.props[t]}function d(e,t,n){var i=s(e.children),r=function(e,t){function n(n){return n in t?t[n]:e[n]}e=e||{},t=t||{};var i,r=Object.create(null),a=[];for(var o in e)o in t?a.length&&(r[o]=a,a=[]):a.push(o);var c={};for(var l in t){if(r[l])for(i=0;i<r[l].length;i++){var u=r[l][i];c[r[l][i]]=n(u)}c[l]=n(l)}for(i=0;i<a.length;i++)c[a[i]]=n(a[i]);return c}(t,i);return Object.keys(r).forEach((function(a){var o=r[a];if((0,c.isValidElement)(o)){var l=a in t,u=a in i,s=t[a],d=(0,c.isValidElement)(s)&&!s.props.in;!u||l&&!d?u||!l||d?u&&l&&(0,c.isValidElement)(s)&&(r[a]=(0,c.cloneElement)(o,{onExited:n.bind(null,o),in:s.props.in,exit:p(o,"exit",e),enter:p(o,"enter",e)})):r[a]=(0,c.cloneElement)(o,{in:!1}):r[a]=(0,c.cloneElement)(o,{onExited:n.bind(null,o),in:!0,exit:p(o,"exit",e),enter:p(o,"enter",e)})}})),r}var h=Object.values||function(e){return Object.keys(e).map((function(t){return e[t]}))},v=function(e){function t(t,n){var i,r=(i=e.call(this,t,n)||this).handleExited.bind((0,a.A)(i));return i.state={contextValue:{isMounting:!0},handleExited:r,firstRender:!0},i}(0,o.A)(t,e);var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(e,t){var n,i,r=t.children,a=t.handleExited;return{children:t.firstRender?(n=e,i=a,s(n.children,(function(e){return(0,c.cloneElement)(e,{onExited:i.bind(null,e),in:!0,appear:p(e,"appear",n),enter:p(e,"enter",n),exit:p(e,"exit",n)})}))):d(e,r,a),firstRender:!1}},n.handleExited=function(e,t){var n=s(this.props.children);e.key in n||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState((function(t){var n=(0,r.A)({},t.children);return delete n[e.key],{children:n}})))},n.render=function(){var e=this.props,t=e.component,n=e.childFactory,r=(0,i.A)(e,["component","childFactory"]),a=this.state.contextValue,o=h(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,null===t?l().createElement(u.A.Provider,{value:a},o):l().createElement(u.A.Provider,{value:a},l().createElement(t,r,o))},t}(l().Component);v.propTypes={},v.defaultProps={component:"div",childFactory:function(e){return e}};const f=v},2559:(e,t,n)=>{function i(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>i})},2474:(e,t,n)=>{function i(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}n.d(t,{A:()=>i})},2016:(e,t,n)=>{function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>i})},829:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t){return e.get((0,i.A)(e,t))}},918:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2016);function r(e,t,n){(0,i.A)(e,t),t.set(e,n)}},6121:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t,n){return e.set((0,i.A)(e,t),n),n}},5536:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t,n){return n((0,i.A)(e,t))}},4635:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2016);function r(e,t){(0,i.A)(e,t),t.add(e)}},8406:(e,t,n)=>{n.d(t,{y:()=>a});var i=n(6330),r=n(3496),a=function(){var e=(0,i.A)((function*(e,t,n){return(yield r.http.post("api/gateway/cmdb.instance.PostSearchV3/v3/object/".concat(e,"/instance/_search"),t,n)).data}));return function(t,n,i){return e.apply(this,arguments)}}()},9896:(e,t,n)=>{n.d(t,{w:()=>r});var i=n(9422);const r=(e,t)=>i.http.post("api/gateway/sys_setting.announce.IgnoreAnnounce/api/sys_setting/v1/announce/ignore",e,t)},8627:(e,t,n)=>{n.d(t,{F:()=>r});var i=n(9422);const r=async(e,t)=>(await i.http.get("api/gateway/sys_setting.announce.ListEffectiveAnnounce/api/sys_setting/v1/announce/effective",{...t,params:e})).data},7439:(e,t,n)=>{n.d(t,{$:()=>r});var i=n(9422);const r=async e=>(await i.http.get("api/gateway/sys_setting.announce.PollAnnounce/api/sys_setting/v1/announce/poll",e)).data},1644:(e,t,n)=>{n.d(t,{a:()=>a});var i=n(6330),r=n(6730),a=function(){var e=(0,i.A)((function*(e,t){return(yield r.http.post("api/gateway/user_service.launchpad.CreateCollection/api/v1/launchpad/collection",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}()},2824:(e,t,n)=>{n.d(t,{k:()=>a});var i=n(6330),r=n(6730),a=function(){var e=(0,i.A)((function*(e,t){return(yield r.http.post("api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}()},3887:(e,t,n)=>{n.d(t,{j:()=>r});var i=n(6730),r=(e,t)=>i.http.delete("api/gateway/user_service.launchpad.DeleteCollection/api/v1/launchpad/collection/".concat(e),t)},2887:(e,t,n)=>{n.d(t,{r:()=>r});var i=n(6730),r=(e,t)=>i.http.delete("api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/".concat(e),t)},9684:(e,t,n)=>{n.d(t,{o:()=>o});var i=n(9740),r=n(6330),a=n(6730),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.launchpad.ListCollection/api/v1/launchpad/collection",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},7296:(e,t,n)=>{n.d(t,{K:()=>o});var i=n(9740),r=n(6330),a=n(6730),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},5343:(e,t,n)=>{n.d(t,{Q:()=>o});var i=n(9740),r=n(6330),a=n(6730),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.my_collection.ListMyCollection/api/v1/user_service/my_collection/collections",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},4156:(e,t,n)=>{n.d(t,{B:()=>r});var i=n(6730),r=(e,t)=>i.http.post("api/gateway/user_service.my_collection.UpsertMyCollection/api/v1/user_service/my_collection/upsert_collections",e,t)}}]);
3
- //# sourceMappingURL=2140.2e870601.js.map
1
+ /*! For license information please see 2140.389d0f1b.js.LICENSE.txt */
2
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[2140],{1675:(e,t,n)=>{n.d(t,{A:()=>f});var i=n(7502),r=n(9575),a=n(2474),o=n(9140),c=n(8769),l=n.n(c),u=n(9548);function s(e,t){var n=Object.create(null);return e&&c.Children.map(e,(function(e){return e})).forEach((function(e){n[e.key]=function(e){return t&&(0,c.isValidElement)(e)?t(e):e}(e)})),n}function p(e,t,n){return null!=n[t]?n[t]:e.props[t]}function d(e,t,n){var i=s(e.children),r=function(e,t){function n(n){return n in t?t[n]:e[n]}e=e||{},t=t||{};var i,r=Object.create(null),a=[];for(var o in e)o in t?a.length&&(r[o]=a,a=[]):a.push(o);var c={};for(var l in t){if(r[l])for(i=0;i<r[l].length;i++){var u=r[l][i];c[r[l][i]]=n(u)}c[l]=n(l)}for(i=0;i<a.length;i++)c[a[i]]=n(a[i]);return c}(t,i);return Object.keys(r).forEach((function(a){var o=r[a];if((0,c.isValidElement)(o)){var l=a in t,u=a in i,s=t[a],d=(0,c.isValidElement)(s)&&!s.props.in;!u||l&&!d?u||!l||d?u&&l&&(0,c.isValidElement)(s)&&(r[a]=(0,c.cloneElement)(o,{onExited:n.bind(null,o),in:s.props.in,exit:p(o,"exit",e),enter:p(o,"enter",e)})):r[a]=(0,c.cloneElement)(o,{in:!1}):r[a]=(0,c.cloneElement)(o,{onExited:n.bind(null,o),in:!0,exit:p(o,"exit",e),enter:p(o,"enter",e)})}})),r}var h=Object.values||function(e){return Object.keys(e).map((function(t){return e[t]}))},v=function(e){function t(t,n){var i,r=(i=e.call(this,t,n)||this).handleExited.bind((0,a.A)(i));return i.state={contextValue:{isMounting:!0},handleExited:r,firstRender:!0},i}(0,o.A)(t,e);var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(e,t){var n,i,r=t.children,a=t.handleExited;return{children:t.firstRender?(n=e,i=a,s(n.children,(function(e){return(0,c.cloneElement)(e,{onExited:i.bind(null,e),in:!0,appear:p(e,"appear",n),enter:p(e,"enter",n),exit:p(e,"exit",n)})}))):d(e,r,a),firstRender:!1}},n.handleExited=function(e,t){var n=s(this.props.children);e.key in n||(e.props.onExited&&e.props.onExited(t),this.mounted&&this.setState((function(t){var n=(0,r.A)({},t.children);return delete n[e.key],{children:n}})))},n.render=function(){var e=this.props,t=e.component,n=e.childFactory,r=(0,i.A)(e,["component","childFactory"]),a=this.state.contextValue,o=h(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,null===t?l().createElement(u.A.Provider,{value:a},o):l().createElement(u.A.Provider,{value:a},l().createElement(t,r,o))},t}(l().Component);v.propTypes={},v.defaultProps={component:"div",childFactory:function(e){return e}};const f=v},2559:(e,t,n)=>{function i(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>i})},2474:(e,t,n)=>{function i(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}n.d(t,{A:()=>i})},2016:(e,t,n)=>{function i(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>i})},829:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t){return e.get((0,i.A)(e,t))}},918:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2016);function r(e,t,n){(0,i.A)(e,t),t.set(e,n)}},6121:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t,n){return e.set((0,i.A)(e,t),n),n}},5536:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2559);function r(e,t,n){return n((0,i.A)(e,t))}},4635:(e,t,n)=>{n.d(t,{A:()=>r});var i=n(2016);function r(e,t){(0,i.A)(e,t),t.add(e)}},8406:(e,t,n)=>{n.d(t,{y:()=>a});var i=n(6330),r=n(3496),a=function(){var e=(0,i.A)((function*(e,t,n){return(yield r.http.post("api/gateway/cmdb.instance.PostSearchV3/v3/object/".concat(e,"/instance/_search"),t,n)).data}));return function(t,n,i){return e.apply(this,arguments)}}()},9896:(e,t,n)=>{n.d(t,{w:()=>r});var i=n(9422);const r=(e,t)=>i.http.post("api/gateway/sys_setting.announce.IgnoreAnnounce/api/sys_setting/v1/announce/ignore",e,t)},8627:(e,t,n)=>{n.d(t,{F:()=>r});var i=n(9422);const r=async(e,t)=>(await i.http.get("api/gateway/sys_setting.announce.ListEffectiveAnnounce/api/sys_setting/v1/announce/effective",{...t,params:e})).data},7439:(e,t,n)=>{n.d(t,{$:()=>r});var i=n(9422);const r=async e=>(await i.http.get("api/gateway/sys_setting.announce.PollAnnounce/api/sys_setting/v1/announce/poll",e)).data},1644:(e,t,n)=>{n.d(t,{a:()=>a});var i=n(6330),r=n(4349),a=function(){var e=(0,i.A)((function*(e,t){return(yield r.http.post("api/gateway/user_service.launchpad.CreateCollection/api/v1/launchpad/collection",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}()},2824:(e,t,n)=>{n.d(t,{k:()=>a});var i=n(6330),r=n(4349),a=function(){var e=(0,i.A)((function*(e,t){return(yield r.http.post("api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}()},3887:(e,t,n)=>{n.d(t,{j:()=>r});var i=n(4349),r=(e,t)=>i.http.delete("api/gateway/user_service.launchpad.DeleteCollection/api/v1/launchpad/collection/".concat(e),t)},2887:(e,t,n)=>{n.d(t,{r:()=>r});var i=n(4349),r=(e,t)=>i.http.delete("api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/".concat(e),t)},9684:(e,t,n)=>{n.d(t,{o:()=>o});var i=n(9740),r=n(6330),a=n(4349),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.launchpad.ListCollection/api/v1/launchpad/collection",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},7296:(e,t,n)=>{n.d(t,{K:()=>o});var i=n(9740),r=n(6330),a=n(4349),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},5343:(e,t,n)=>{n.d(t,{Q:()=>o});var i=n(9740),r=n(6330),a=n(4349),o=function(){var e=(0,r.A)((function*(e,t){return(yield a.http.get("api/gateway/user_service.my_collection.ListMyCollection/api/v1/user_service/my_collection/collections",(0,i.A)((0,i.A)({},t),{},{params:e}))).data}));return function(t,n){return e.apply(this,arguments)}}()},4156:(e,t,n)=>{n.d(t,{B:()=>r});var i=n(4349),r=(e,t)=>i.http.post("api/gateway/user_service.my_collection.UpsertMyCollection/api/v1/user_service/my_collection/upsert_collections",e,t)}}]);
3
+ //# sourceMappingURL=2140.389d0f1b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/2140.2e870601.js","mappings":"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","sources":["webpack:///../../node_modules/react-transition-group/esm/utils/ChildMapping.js","webpack:///../../node_modules/react-transition-group/esm/TransitionGroup.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@next-api-sdk/cmdb-sdk/dist/esm/api/cmdb/instance/postSearchV3.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/ignoreAnnounce.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/listEffectiveAnnounce.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/pollAnnounce.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/my_collection/listMyCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/my_collection/upsertMyCollection.js"],"sourcesContent":["import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `<TransitionGroup>` component manages a set of transition components\n * (`<Transition>` and `<CSSTransition>`) in a list. Like with the transition\n * components, `<TransitionGroup>` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the `<TransitionGroup>`.\n *\n * Note that `<TransitionGroup>` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `<TransitionGroup>` renders a `<div>` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `<div>` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `<Transition>` components, that are toggled `in` and out as they\n * leave. the `<TransitionGroup>` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `<Transition>` as\n * with our `<Fade>` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 搜索实例V3 (支持多属性排序)\n * @endpoint POST /v3/object/:objectId/instance/_search\n */\nexport var InstanceApi_postSearchV3 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (objectId, data, options) {\n return (/**! @contract easyops.api.cmdb.instance.PostSearchV3@1.1.0 */(yield http.post(\"api/gateway/cmdb.instance.PostSearchV3/v3/object/\".concat(objectId, \"/instance/_search\"), data, options)).data\n );\n });\n return function InstanceApi_postSearchV3(_x, _x2, _x3) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=postSearchV3.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 批量忽略公告\n * @endpoint POST /api/sys_setting/v1/announce/ignore\n */\nexport const AnnounceApi_ignoreAnnounce = (data, options) => /**! @contract easyops.api.sys_setting.announce.IgnoreAnnounce@1.0.1 */http.post(\"api/gateway/sys_setting.announce.IgnoreAnnounce/api/sys_setting/v1/announce/ignore\", data, options);\n//# sourceMappingURL=ignoreAnnounce.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 查找当前用户的有效公告\n * @endpoint LIST /api/sys_setting/v1/announce/effective\n */\nexport const AnnounceApi_listEffectiveAnnounce = async (params, options) => /**! @contract easyops.api.sys_setting.announce.ListEffectiveAnnounce@1.0.1 */(await http.get(\"api/gateway/sys_setting.announce.ListEffectiveAnnounce/api/sys_setting/v1/announce/effective\", {\n ...options,\n params\n})).data;\n//# sourceMappingURL=listEffectiveAnnounce.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 获取实时公告,长链接\n * @endpoint GET /api/sys_setting/v1/announce/poll\n */\nexport const AnnounceApi_pollAnnounce = async options => /**! @contract easyops.api.sys_setting.announce.PollAnnounce@1.0.0 */(await http.get(\"api/gateway/sys_setting.announce.PollAnnounce/api/sys_setting/v1/announce/poll\", options)).data;\n//# sourceMappingURL=pollAnnounce.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏\n * @endpoint POST /api/v1/launchpad/collection\n */\nexport var LaunchpadApi_createCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollection@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollection/api/v1/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollection.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏\n * @endpoint DELETE /api/v1/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollection = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollection@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollection/api/v1/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollection.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表\n * @endpoint LIST /api/v1/launchpad/collection\n */\nexport var LaunchpadApi_listCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollection@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollection/api/v1/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollection.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表\n * @endpoint GET /api/v1/user_service/my_collection/collections\n */\nexport var MyCollectionApi_listMyCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.my_collection.ListMyCollection@1.0.0 */(yield http.get(\"api/gateway/user_service.my_collection.ListMyCollection/api/v1/user_service/my_collection/collections\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function MyCollectionApi_listMyCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listMyCollection.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 更新/新增我的收藏,这个接口用于全量更新单实例\n * @endpoint POST /api/v1/user_service/my_collection/upsert_collections\n */\nexport var MyCollectionApi_upsertMyCollection = (data, options) => /**! @contract easyops.api.user_service.my_collection.UpsertMyCollection@1.0.0 */http.post(\"api/gateway/user_service.my_collection.UpsertMyCollection/api/v1/user_service/my_collection/upsert_collections\", data, options);\n//# sourceMappingURL=upsertMyCollection.js.map"],"names":["getChildMapping","children","mapFn","result","Object","create","Children","map","c","forEach","child","key","isValidElement","mapper","getProp","prop","props","getNextChildMapping","nextProps","prevChildMapping","onExited","nextChildMapping","prev","next","getValueForKey","i","nextKeysPending","pendingKeys","prevKey","length","push","childMapping","nextKey","pendingNextKey","mergeChildMappings","keys","hasPrev","hasNext","prevChild","isLeaving","in","cloneElement","bind","exit","enter","values","obj","k","TransitionGroup","_React$Component","context","_this","handleExited","call","this","state","contextValue","isMounting","firstRender","_proto","prototype","componentDidMount","mounted","setState","componentWillUnmount","getDerivedStateFromProps","_ref","appear","node","currentChildMapping","render","_this$props","Component","component","childFactory","TransitionGroupContext","Provider","value","propTypes","defaultProps","_assertClassBrand","e","t","n","has","arguments","TypeError","_assertThisInitialized","self","ReferenceError","_checkPrivateRedeclaration","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","set","_classPrivateFieldSet2","r","_classPrivateGetter","_classPrivateMethodInitSpec","privateSet","add","InstanceApi_postSearchV3","objectId","data","options","http","post","concat","_x","_x2","_x3","apply","AnnounceApi_ignoreAnnounce","AnnounceApi_listEffectiveAnnounce","async","params","AnnounceApi_pollAnnounce","LaunchpadApi_createCollection","LaunchpadApi_createCollectionV2","LaunchpadApi_deleteCollection","instanceId","delete","LaunchpadApi_deleteCollectionV2","LaunchpadApi_listCollection","LaunchpadApi_listCollectionV2","MyCollectionApi_listMyCollection","MyCollectionApi_upsertMyCollection"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/2140.389d0f1b.js","mappings":"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","sources":["webpack:///../../node_modules/react-transition-group/esm/utils/ChildMapping.js","webpack:///../../node_modules/react-transition-group/esm/TransitionGroup.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/checkPrivateRedeclaration.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldGet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateFieldSet2.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateGetter.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@next-api-sdk/cmdb-sdk/dist/esm/api/cmdb/instance/postSearchV3.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/ignoreAnnounce.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/listEffectiveAnnounce.js","webpack:///../../node_modules/@next-api-sdk/sys-setting-sdk/dist/esm/api/sys_setting/announce/pollAnnounce.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/createCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/deleteCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/launchpad/listCollectionV2.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/my_collection/listMyCollection.js","webpack:///../../node_modules/@next-api-sdk/user-service-sdk/dist/esm/api/user_service/my_collection/upsertMyCollection.js"],"sourcesContent":["import { Children, cloneElement, isValidElement } from 'react';\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\n\nexport function getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && isValidElement(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\nexport function mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nexport function getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\nexport function getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!isValidElement(child)) return;\n var hasPrev = (key in prevChildMapping);\n var hasNext = (key in nextChildMapping);\n var prevChild = prevChildMapping[key];\n var isLeaving = isValidElement(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = cloneElement(child, {\n in: false\n });\n } else if (hasNext && hasPrev && isValidElement(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = cloneElement(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { getChildMapping, getInitialChildMapping, getNextChildMapping } from './utils/ChildMapping';\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n/**\n * The `<TransitionGroup>` component manages a set of transition components\n * (`<Transition>` and `<CSSTransition>`) in a list. Like with the transition\n * components, `<TransitionGroup>` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the `<TransitionGroup>`.\n *\n * Note that `<TransitionGroup>` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\nvar TransitionGroup = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_this)); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n contextValue: {\n isMounting: true\n },\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.mounted = true;\n this.setState({\n contextValue: {\n isMounting: false\n }\n });\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? getInitialChildMapping(nextProps, handleExited) : getNextChildMapping(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n } // node is `undefined` when user provided `nodeRef` prop\n ;\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = getChildMapping(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var contextValue = this.state.contextValue;\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(TransitionGroupContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Component, props, children));\n };\n\n return TransitionGroup;\n}(React.Component);\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `<TransitionGroup>` renders a `<div>` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `<div>` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: PropTypes.any,\n\n /**\n * A set of `<Transition>` components, that are toggled `in` and out as they\n * leave. the `<TransitionGroup>` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `<Transition>` as\n * with our `<Fade>` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: PropTypes.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: PropTypes.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\nexport default TransitionGroup;","export default function _assertClassBrand(e, t, n) {\n if (\"function\" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n;\n throw new TypeError(\"Private element is not present on this object\");\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","export default function _checkPrivateRedeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldGet2(s, a) {\n return s.get(assertClassBrand(s, a));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateFieldInitSpec(obj, privateMap, value) {\n checkPrivateRedeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateFieldSet2(s, a, r) {\n return s.set(assertClassBrand(s, a), r), r;\n}","import assertClassBrand from \"./assertClassBrand.js\";\nexport default function _classPrivateGetter(s, r, a) {\n return a(assertClassBrand(s, r));\n}","import checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 搜索实例V3 (支持多属性排序)\n * @endpoint POST /v3/object/:objectId/instance/_search\n */\nexport var InstanceApi_postSearchV3 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (objectId, data, options) {\n return (/**! @contract easyops.api.cmdb.instance.PostSearchV3@1.1.0 */(yield http.post(\"api/gateway/cmdb.instance.PostSearchV3/v3/object/\".concat(objectId, \"/instance/_search\"), data, options)).data\n );\n });\n return function InstanceApi_postSearchV3(_x, _x2, _x3) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=postSearchV3.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 批量忽略公告\n * @endpoint POST /api/sys_setting/v1/announce/ignore\n */\nexport const AnnounceApi_ignoreAnnounce = (data, options) => /**! @contract easyops.api.sys_setting.announce.IgnoreAnnounce@1.0.1 */http.post(\"api/gateway/sys_setting.announce.IgnoreAnnounce/api/sys_setting/v1/announce/ignore\", data, options);\n//# sourceMappingURL=ignoreAnnounce.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 查找当前用户的有效公告\n * @endpoint LIST /api/sys_setting/v1/announce/effective\n */\nexport const AnnounceApi_listEffectiveAnnounce = async (params, options) => /**! @contract easyops.api.sys_setting.announce.ListEffectiveAnnounce@1.0.1 */(await http.get(\"api/gateway/sys_setting.announce.ListEffectiveAnnounce/api/sys_setting/v1/announce/effective\", {\n ...options,\n params\n})).data;\n//# sourceMappingURL=listEffectiveAnnounce.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 获取实时公告,长链接\n * @endpoint GET /api/sys_setting/v1/announce/poll\n */\nexport const AnnounceApi_pollAnnounce = async options => /**! @contract easyops.api.sys_setting.announce.PollAnnounce@1.0.0 */(await http.get(\"api/gateway/sys_setting.announce.PollAnnounce/api/sys_setting/v1/announce/poll\", options)).data;\n//# sourceMappingURL=pollAnnounce.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏\n * @endpoint POST /api/v1/launchpad/collection\n */\nexport var LaunchpadApi_createCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollection@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollection/api/v1/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollection.js.map","import _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 新增我的收藏V2\n * @endpoint POST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_createCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (data, options) {\n return (/**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */(yield http.post(\"api/gateway/user_service.launchpad.CreateCollectionV2/api/v2/launchpad/collection\", data, options)).data\n );\n });\n return function LaunchpadApi_createCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=createCollectionV2.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏\n * @endpoint DELETE /api/v1/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollection = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollection@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollection/api/v1/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollection.js.map","import { http } from \"@next-core/http\";\n\n/**\n * @description 删除我的收藏V2\n * @endpoint DELETE /api/v2/launchpad/collection/:instanceId\n */\nexport var LaunchpadApi_deleteCollectionV2 = (instanceId, options) => /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */http.delete(\"api/gateway/user_service.launchpad.DeleteCollectionV2/api/v2/launchpad/collection/\".concat(instanceId), options);\n//# sourceMappingURL=deleteCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表\n * @endpoint LIST /api/v1/launchpad/collection\n */\nexport var LaunchpadApi_listCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollection@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollection/api/v1/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollection.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表V2\n * @endpoint LIST /api/v2/launchpad/collection\n */\nexport var LaunchpadApi_listCollectionV2 = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */(yield http.get(\"api/gateway/user_service.launchpad.ListCollectionV2/api/v2/launchpad/collection\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function LaunchpadApi_listCollectionV2(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listCollectionV2.js.map","import _objectSpread from \"@babel/runtime/helpers/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/asyncToGenerator\";\nimport { http } from \"@next-core/http\";\n/**\n * @description 获取我的收藏列表\n * @endpoint GET /api/v1/user_service/my_collection/collections\n */\nexport var MyCollectionApi_listMyCollection = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (params, options) {\n return (/**! @contract easyops.api.user_service.my_collection.ListMyCollection@1.0.0 */(yield http.get(\"api/gateway/user_service.my_collection.ListMyCollection/api/v1/user_service/my_collection/collections\", _objectSpread(_objectSpread({}, options), {}, {\n params\n }))).data\n );\n });\n return function MyCollectionApi_listMyCollection(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\n//# sourceMappingURL=listMyCollection.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 更新/新增我的收藏,这个接口用于全量更新单实例\n * @endpoint POST /api/v1/user_service/my_collection/upsert_collections\n */\nexport var MyCollectionApi_upsertMyCollection = (data, options) => /**! @contract easyops.api.user_service.my_collection.UpsertMyCollection@1.0.0 */http.post(\"api/gateway/user_service.my_collection.UpsertMyCollection/api/v1/user_service/my_collection/upsert_collections\", data, options);\n//# sourceMappingURL=upsertMyCollection.js.map"],"names":["getChildMapping","children","mapFn","result","Object","create","Children","map","c","forEach","child","key","isValidElement","mapper","getProp","prop","props","getNextChildMapping","nextProps","prevChildMapping","onExited","nextChildMapping","prev","next","getValueForKey","i","nextKeysPending","pendingKeys","prevKey","length","push","childMapping","nextKey","pendingNextKey","mergeChildMappings","keys","hasPrev","hasNext","prevChild","isLeaving","in","cloneElement","bind","exit","enter","values","obj","k","TransitionGroup","_React$Component","context","_this","handleExited","call","this","state","contextValue","isMounting","firstRender","_proto","prototype","componentDidMount","mounted","setState","componentWillUnmount","getDerivedStateFromProps","_ref","appear","node","currentChildMapping","render","_this$props","Component","component","childFactory","TransitionGroupContext","Provider","value","propTypes","defaultProps","_assertClassBrand","e","t","n","has","arguments","TypeError","_assertThisInitialized","self","ReferenceError","_checkPrivateRedeclaration","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","set","_classPrivateFieldSet2","r","_classPrivateGetter","_classPrivateMethodInitSpec","privateSet","add","InstanceApi_postSearchV3","objectId","data","options","http","post","concat","_x","_x2","_x3","apply","AnnounceApi_ignoreAnnounce","AnnounceApi_listEffectiveAnnounce","async","params","AnnounceApi_pollAnnounce","LaunchpadApi_createCollection","LaunchpadApi_createCollectionV2","LaunchpadApi_deleteCollection","instanceId","delete","LaunchpadApi_deleteCollectionV2","LaunchpadApi_listCollection","LaunchpadApi_listCollectionV2","MyCollectionApi_listMyCollection","MyCollectionApi_upsertMyCollection"],"sourceRoot":""}
@@ -0,0 +1,3 @@
1
+ /*! For license information please see 2252.03e37978.js.LICENSE.txt */
2
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[2252],{2559:(e,t,n)=>{function r(e,t,n){if("function"==typeof e?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}n.d(t,{A:()=>r})},6330:(e,t,n)=>{function r(e,t,n,r,o,i,s){try{var a=e[i](s),c=a.value}catch(e){return void n(e)}a.done?t(c):Promise.resolve(c).then(r,o)}function o(e){return function(){var t=this,n=arguments;return new Promise((function(o,i){var s=e.apply(t,n);function a(e){r(s,o,i,a,c,"next",e)}function c(e){r(s,o,i,a,c,"throw",e)}a(void 0)}))}}n.d(t,{A:()=>o})},2016:(e,t,n)=>{function r(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(t,{A:()=>r})},829:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2559);function o(e,t){return e.get((0,r.A)(e,t))}},918:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2016);function o(e,t,n){(0,r.A)(e,t),t.set(e,n)}},6121:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return e.set((0,r.A)(e,t),n),n}},5536:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2559);function o(e,t,n){return n((0,r.A)(e,t))}},4635:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(2016);function o(e,t){(0,r.A)(e,t),t.add(e)}},4586:(e,t,n)=>{n.d(t,{A:()=>o});var r=n(1369);function o(e,t,n){return(t=(0,r.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},9740:(e,t,n)=>{n.d(t,{A:()=>i});var r=n(4586);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?o(Object(n),!0).forEach((function(t){(0,r.A)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):o(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}},2252:(e,t,n)=>{n.r(t),n.d(t,{analytics:()=>u,auth:()=>mt,checkInstalledApps:()=>o,checkPermissions:()=>ft,flowApi:()=>i,menu:()=>s,messageDispatcher:()=>ht});var r={};n.r(r),n.d(r,{authenticate:()=>m,getAuth:()=>v,isLoggedIn:()=>A,logout:()=>g});var o={};n.r(o),n.d(o,{getCheckedApp:()=>oe,preCheckInstalledApps:()=>ne,waitForCheckingApps:()=>re});var i={};n.r(i),n.d(i,{FLOW_API_PROVIDER:()=>ae,clearCollectWidgetContract:()=>we,clearDebugContract:()=>be,collectContract:()=>ge,collectDebugContract:()=>ye,collectWidgetContract:()=>Ae,getArgsOfFlowApi:()=>Oe,isFlowApiProvider:()=>Ie,registerFlowApiProvider:()=>le});var s={};n.r(s),n.d(s,{fetchMenuById:()=>Ve,getMenuById:()=>Je});var a={};n.r(a),n.d(a,{onRequest:()=>ct,onResponse:()=>ut,onResponseError:()=>lt});var c={};n.r(c),n.d(c,{create:()=>dt});var u={};n.r(u),n.d(u,{http:()=>a,initialize:()=>st,pageView:()=>c});var l=n(4958),p=n(6330),d=n(4349),f=function(){var e=(0,p.A)((function*(e,t){return(yield d.http.post("api/gateway/micro_app.permission.ValidatePermissions/api/micro_app/v1/permission/validate",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}();const h={};function m(e){Object.assign(h,{org:e.org,username:e.username,userInstanceId:e.userInstanceId,loginFrom:e.loginFrom,accessRule:e.accessRule,isAdmin:e.isAdmin,csrfToken:e.csrfToken,license:e.license,accessToken:e.accessToken,userShowValue:e.userShowValue})}function v(){return{...h}}function g(){for(const e of Object.keys(h))h[e]=void 0;w.clear(),y.length=0,b.clear()}function A(){return void 0!==h.username}const w=new Map,y=[],b=new Map;function S(e){if(A()&&!v().isAdmin)return I((0,l.scanPermissionActionsInAny)(e))}async function I(e){const t=e.filter((e=>!y.includes(e)));if(0===t.length)return;const n=[],r=[];for(const e of t){const t=w.get(e);t?n.push(t):r.push(e)}if(r.length>0){const e=(async()=>{try{const e=await f({actions:r},{noAbortOnRouteChange:!0});for(const t of e.actions)b.set(t.action,t.authorizationStatus),"undefined"===t.authorizationStatus&&console.error(`Undefined permission action: "${t.action}"`)}catch(e){console.error("Pre-check permissions failed",e)}finally{y.push(...r)}})();for(const t of r)w.set(t,e);n.push(e)}await Promise.all(n)}var O=n(4635),P=n(918),E=n(5536),k=n(2559),M=n(6121),C=n(829),T=n(3474),_=n(1030);const j=1e3,N=5;var D=new WeakMap,$=new WeakMap,R=new WeakMap,W=new WeakMap,x=new WeakMap,L=new WeakMap,U=new WeakMap,B=new WeakSet;class F{constructor(e){(0,O.A)(this,B),(0,P.A)(this,D,void 0),(0,P.A)(this,$,void 0),(0,P.A)(this,R,[]),(0,P.A)(this,W,new Set),(0,P.A)(this,x,new Set),(0,P.A)(this,L,0),(0,P.A)(this,U,!1),(0,M.A)(D,this,e)}send(e){(0,C.A)($,this)||(0,M.A)($,this,(0,k.A)(B,this,q).call(this));const t=JSON.stringify(e);(0,C.A)($,this).readyState===WebSocket.OPEN?(0,C.A)($,this).send(t):(0,C.A)(R,this).push(t)}onMessage(e){(0,C.A)(W,this).add(e)}onClose(e){(0,C.A)(x,this).add(e)}reset(){(0,C.A)(R,this).length=0,(0,C.A)(W,this).clear(),(0,C.A)(x,this).clear()}close(){var e;(0,M.A)(U,this,!0),(null===(e=(0,C.A)($,this))||void 0===e?void 0:e.readyState)===WebSocket.OPEN&&(0,C.A)($,this).close()}}function q(){console.log("WebSocket connecting ...");const e=new WebSocket((0,C.A)(D,this));let t;return e.addEventListener("open",(n=>{console.log("WebSocket open:",n),t=setTimeout((()=>{t=void 0,(0,M.A)(L,this,0)}),1e3);for(const t of(0,C.A)(R,this))e.send(t);(0,C.A)(R,this).length=0})),e.addEventListener("close",(e=>{if(!(0,C.A)(U,this)){void 0!==t&&clearTimeout(t),console.log("WebSocket close:",e);for(const e of(0,C.A)(x,this))e();1e3!==e.code&&(0,k.A)(B,this,z).call(this)}})),e.addEventListener("error",(e=>{console.error("WebSocket error:",e)})),e.addEventListener("message",(e=>{const t=JSON.parse(e.data);for(const e of(0,C.A)(W,this))e(t)})),e}function z(){if((0,C.A)(L,this)>=N)return void console.error("WebSocket connect retry limit exceeded");const e=Math.pow(2,(0,C.A)(L,this))*j;console.log("WebSocket will reconnect after %d seconds",e/1e3),setTimeout((()=>{var e;(0,M.A)(L,this,(e=(0,C.A)(L,this),++e)),(0,M.A)($,this,(0,k.A)(B,this,q).call(this))}),e)}var H=new WeakMap,G=new WeakMap,J=new WeakMap,V=new WeakSet;function Y(e){if(!(0,C.A)(H,e)){const t=`${"https:"===location.protocol?"wss:":"ws:"}//${window.location.host}${(0,T.getBasePath)()}api/websocket_service/v1/ws`;(0,M.A)(H,e,new F(t))}return(0,C.A)(H,e)}function K(e,t,n,r){const o=(0,C.A)(G,this)[e].get(r);if(o)return o;const i={event:"sub"===e?"TOPIC.SUB":"TOPIC.UNSUB",payload:n},s=new Promise(((t,r)=>{const o=Q(n);(0,E.A)(V,this,Y).onMessage((n=>{const i=n.event===("sub"===e?"TOPIC.SUB_SUCCESS":"TOPIC.UNSUB_SUCCESS"),s=n.event===("sub"===e?"TOPIC.SUB_FAILED":"TOPIC.UNSUB_FAILED");(i||s)&&o===Q(n.payload)&&(i?t:r)(n)})),(0,E.A)(V,this,Y).send(i)}));return"sub"===e&&(0,C.A)(J,this).set(t,r),(0,C.A)(G,this)[e].set(r,s),s}function Q(e){const{system:t,topic:n}=e;return JSON.stringify({system:t,topic:n})}var X=n(3496),Z=function(){var e=(0,p.A)((function*(e,t){return(yield X.http.post("api/gateway/micro_app_standalone.runtime.SearchMicroAppStandalone/api/v1/micro_app_standalone/search",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}();const ee=new Map,te=new Map;function ne(e,t){if(window.STANDALONE_MICRO_APPS&&!window.NO_AUTH_GUARD){const n=function(e){var t;const n={usedArgs:new Set},{customTemplates:r,menus:o}=null!==(t=e.meta)&&void 0!==t?t:{};return(0,l.traverseStoryboardExpressions)([e.routes,r,o],((e,t)=>{(0,l.collectInstalledAppsHasUsage)(n,e,t)}),"INSTALLED_APPS"),[...n.usedArgs]}(e),r=[];for(const e of n)ee.has(e)||t(e)||r.push(e);if(0===r.length)return;const o=Z({query:{appId:{$in:r}},fields:["appId","currentVersion","installStatus"]}).catch((e=>{console.error("Get off site standalone micro-apps failed",e)}));for(const e of r)ee.set(e,o.then((t=>{var n;const r=null==t||null===(n=t.list)||void 0===n?void 0:n.find((t=>t.appId===e)),o=r?{...r,id:e}:void 0;return te.set(e,o),o})))}}async function re(e){await Promise.all(e.map((e=>ee.get(e))))}function oe(e){if(window.STANDALONE_MICRO_APPS)return te.get(e)}var ie=n(3078),se=n(108);const ae="core.provider-flow-api";function ce(e,t){return e.some((e=>e.source===t))}async function ue(e){let{url:t,originalUri:n,method:r="GET",responseWrapper:o=!0,ext_fields:i=[],request:s,isFileType:a,stream:c}=e;const u=["get","delete","head"].includes(r.toLowerCase()),l=a?{responseType:"blob"}:{};let p;for(var d=arguments.length,f=new Array(d>1?d-1:0),h=1;h<d;h++)f[h-1]=arguments[h];if(u){var m,v,g,A;let e,o;var w,y;if(n&&"object"===(null==s?void 0:s.type)&&(null!==(m=null===(v=n.match(/:([^/]+)/g))||void 0===v?void 0:v.length)&&void 0!==m?m:0)===(null!==(g=null===(A=s.fields)||void 0===A?void 0:A.length)&&void 0!==g?g:0)?[o]=f:[e,o]=f,c)return await(0,ie.createSSEStream)(se.http.getUrlWithParams(t,e),{...l,...o,method:r,headers:Object.fromEntries([...new Headers(null!==(w=null===(y=o)||void 0===y?void 0:y.headers)&&void 0!==w?w:{}).entries()])});p=await se.http.simpleRequest(r,t,{params:e,...l,...o})}else{const e=function(e){if("object"!==(null==e?void 0:e.type))return!1;const t=e=>!(0,_.isEmpty)(e)&&e.some((e=>["file","file[]"].includes(e.type)||t(e.fields)));return t(e.fields)}(s),n=function(e){const t=ce(e,"query"),n=ce(e,"body");for(var r=arguments.length,o=new Array(r>1?r-1:0),i=1;i<r;i++)o[i-1]=arguments[i];if(t){if(n){const[e,t,n]=o;return{data:e,options:{params:t,...n}}}const[e,t]=o;return{data:{},options:{params:e,...t}}}const[s,a]=o;return{data:s,options:a}}(i,...f),o=e?function(e){if(e instanceof FormData)return e;const t=new FormData;for(const[n,r]of Object.entries(e))Array.isArray(r)?r.forEach((e=>{t.append(n,e)})):!(0,_.isObject)(r)||r instanceof Blob||r instanceof Date?t.append(n,r):Object.entries(r).forEach((e=>{let[r,o]=e;t.append(`${n}[${r}]`,o)}));return t}(n.data):n.data;if(c){var b;const{body:e,headers:i}=se.http.getBodyAndHeaders(o,null===(b=n.options)||void 0===b?void 0:b.headers);return await(0,ie.createSSEStream)(t,{...l,...n.options,method:r,headers:Object.fromEntries([...new Headers(null!=i?i:{}).entries()]),body:e})}p=await se.http.requestWithBody(r,t,o,{...l,...n.options})}return!a&&o?p.data:p}function le(){customElements.define(ae,(0,ie.createProviderClass)(ue))}var pe=n(8679),de=function(){var e=(0,p.A)((function*(e,t){return(yield d.http.post("api/contract/single_search",e,t)).data}));return function(t,n){return e.apply(this,arguments)}}();const fe=new Map,he=new Map,me=new Map,ve=(e,t)=>{null==e||e.forEach((e=>{t.set(`${e.namespaceId}.${e.name}`,e)}))};function ge(e){ve(e,fe)}function Ae(e){ve(e,he)}function we(){he.clear()}function ye(e){ve(e,me)}function be(){me.clear()}const Se=new Map;function Ie(e){return e.includes("@")}async function Oe(e,t,n,r){if(!e.includes(":"))throw new Error(`You're using legacy Custom API "${e}" which is dropped in v3, please use Flow API instead`);const o=await async function(e){const[t,n]=e.split("@"),[r,o]=n.split(":"),i=function(e){return fe.get(e)||he.get(e)||me.get(e)}(`${t}.${r}`);if(i)return{name:i.name,namespace:i.namespaceId,serviceName:i.serviceName,version:i.version,contract:{endpoint:i.endpoint,response:i.response,request:i.request}};let s=Se.get(e);return s||(s=async function(e,t,n){var r;const{contractData:o}=await de({contractName:`${e}.${t}`,version:n});return o?{name:o.name,namespace:null===(r=o.namespace)||void 0===r||null===(r=r[0])||void 0===r?void 0:r.name,serviceName:o.serviceName,version:o.version,contract:{endpoint:o.endpoint,response:o.response,request:o.request}}:null}(t,r,o),Se.set(e,s)),s}(e);if(!o)throw new Pe(`Flow API not found: "${e}"`);const i=function(e,t){var n,r;const o="string"==typeof t.contract?pe.safeLoad(t.contract,{schema:pe.JSON_SCHEMA,json:!0}):t.contract,{uri:i,method:s="GET",ext_fields:a}=null!==(n=null==o?void 0:o.endpoint)&&void 0!==n?n:{},c=!(null==o||!o.response)&&!1!==o.response.wrapper;if(!i)throw new Error(`Missing endpoint.uri in contract of provider "${e}"`);return{uri:i,method:"list"===s.toLowerCase()?"get":s,ext_fields:a,name:t.name,namespace:t.namespace,serviceName:t.serviceName,version:t.version,isFileType:"file"===(null==o||null===(r=o.response)||void 0===r?void 0:r.type),responseWrapper:c,request:null==o?void 0:o.request}}(e,o);return function(e,t,n,r){let{uri:o,method:i,ext_fields:s,name:a,namespace:c,serviceName:u,responseWrapper:l,version:p,isFileType:d,request:f}=e;const h="saveAs"===n;let m;h&&(m=t.shift());const{url:v,args:g}=function(e,t,n,r,o,i){const s=i?"logic.api.gateway"===o||null!=o&&o.startsWith("logic.api.gateway.")?"":o?`api/gateway/${o}`:`api/gateway/${r}.${n}@${i}`:`api/gateway/api_service.${r}.${n}`,a=t.slice(),c=e.replace(/:([^/]+)/g,(()=>a.shift()));return{url:s?s+c:c.replace(/^\//,""),args:a}}(o,t,a,c,u,p);return[...h?[m]:[],{url:v,originalUri:o,method:i,ext_fields:s,responseWrapper:l,request:f,isFileType:d,stream:r},...g]}(i,t,n,r)}class Pe extends Error{constructor(e){super(e),this.name="FlowApiNotFoundError",Error.captureStackTrace&&Error.captureStackTrace(this,Pe)}}var Ee=function(){var e=(0,p.A)((function*(e,t,n){return(yield X.http.post("api/gateway/cmdb.instance.PostSearch/object/".concat(e,"/instance/_search"),t,n)).data}));return function(t,n,r){return e.apply(this,arguments)}}(),ke=n(9740),Me=function(){var e=(0,p.A)((function*(e,t,n){return(yield d.http.get("api/gateway/micro_app.installed_micro_app.GetMenusInfo/api/v1/micro-app/menus/".concat(e),(0,ke.A)((0,ke.A)({},n),{},{params:t}))).data}));return function(t,n,r){return e.apply(this,arguments)}}(),Ce=n(6181);const Te=Symbol("appId"),_e=Symbol("menuI18nNamespace"),je=Symbol("overrideApp");async function Ne(e,t,n){const r=e.find((e=>"inject"!==e.type));if(!r)return;const o=[],i=new Map,s=new WeakMap;for(const t of e)if(t.i18n){const e=`menu/${t.menuId}~${t.app[0].appId}+${t.instanceId}`;Object.entries(t.i18n).forEach((t=>{let[n,r]=t;Ce.i18n.addResourceBundle(n,e,r)})),s.set(t,e)}await Promise.all(e.map((e=>async function(e,t,n,r){if(e.dynamicItems&&e.itemsResolve){const i=e.app[0].appId,s={...t,pendingPermissionsPreCheck:[...t.pendingPermissionsPreCheck,S(e.itemsResolve)]};var o;i!==t.app.id&&(s.overrideApp=window.STANDALONE_MICRO_APPS?e.overrideApp:null===(o=r.getStoryboardByAppId(i))||void 0===o?void 0:o.app,s.appendI18nNamespace=n.get(e));const a=await r.resolveData({transform:"items",...e.itemsResolve},s);e.items=a.items}}(e,t,s,n))));for(const t of e){var a;if(null!==(a=t.items)&&void 0!==a&&a.length)if("inject"===t.type&&t.injectMenuGroupId){let e=i.get(t.injectMenuGroupId);e||(e=[],i.set(t.injectMenuGroupId,e)),e.push(t)}else o.push(t)}return{...r,items:o.flatMap((e=>De(e.items,e,i,s))),[_e]:s.get(r),[je]:r.overrideApp}}function De(e,t,n,r){return null==e?void 0:e.map((e=>{var o;const i=e.groupId&&n.get(e.groupId);return i&&n.delete(e.groupId),{...e,children:(null!==(o=De(e.children,t,n,r))&&void 0!==o?o:[]).concat(i?i.flatMap((e=>De(e.items,e,n,r))):[]),[Te]:t.app[0].appId,[_e]:r.get(t),[je]:t.overrideApp}}))}function $e(e){e.items=Re(e.items)}function Re(e){return function(e){return(0,_.sortBy)(e,(e=>{var t;return null!==(t=e.sort)&&void 0!==t?t:-1/0}))}(e).map((e=>({...e,children:Re(e.children)})))}var We=n(1744),xe=n(522);function Le(e,t,n,r){if("titleDataSource"in e&&(0,ie.isObject)(e.titleDataSource)&&Object.entries(e.titleDataSource).every((e=>{let[,t]=e;return null===t||""===t}))&&delete e.titleDataSource,"if"in e&&null===e.if&&delete e.if,"to"in e&&e.to&&!(0,xe.isEvaluable)(e.to)){const t=We.pipes.yaml(e.to);(0,ie.isObject)(t)&&["pathname","search","hash"].some((e=>(0,ie.hasOwnProperty)(t,e)))&&(e.to=t)}let o=n;if(t!==n.app.id){var i;const s=window.STANDALONE_MICRO_APPS?e[je]:null===(i=r.getStoryboardByAppId(t))||void 0===i?void 0:i.app;o={...n,overrideApp:s,appendI18nNamespace:e[_e]}}return r.asyncComputeRealValue(e,o,{ignoreSymbols:!0})}function Ue(e,t,n){return Promise.all(e.map((async e=>{let{children:r,...o}=e;const[i,s]=await Promise.all([Le(o,o[Te],t,n),r&&await Ue(r,t,n)]);return{...i,children:s}})))}var Be=function(){var e=(0,p.A)((function*(e,t,n,r){return(yield X.http.get("api/gateway/cmdb.instance.GetDetail/object/".concat(e,"/instance/").concat(t),(0,ke.A)((0,ke.A)({},r),{},{params:n}))).data}));return function(t,n,r,o){return e.apply(this,arguments)}}();const Fe=new Map;async function qe(e){if(e.title||(0,_.isEmpty)(e.titleDataSource))return e.title;const t=JSON.stringify(e.titleDataSource),n=Fe.get(t);if(void 0!==n)return n;const{objectId:r,instanceId:o,attributeId:i}=e.titleDataSource,s=null!=i?i:"name",a=await Be(r,o,{fields:s});let c;if("#showKey"===i&&Array.isArray(a[s])){const[e,...t]=a[s];c=t.length>0?`${e}(${t.join(",")})`:String(e)}else c=String(a[s]);return Fe.set(t,c),c}const ze=new Map,He=new Map;function Ge(e){return null==e?void 0:e.filter(T.checkIfOfComputed).map((e=>{const t=Ge(e.children);return"group"===e.type?{type:"group",title:e.text,childLayout:e.childLayout,items:t,groupId:e.groupId,groupFrom:e.groupFrom}:null!=t&&t.length?{type:"subMenu",childLayout:e.childLayout,title:e.text,icon:e.icon,items:t,defaultExpanded:e.defaultExpanded}:(0,_.omit)(e,["type","items","children"])}))}function Je(e){return He.get(e)}function Ve(e,t,n){let r=ze.get(e);return r||(r=async function(e,t,n){const r=window.STANDALONE_MICRO_APPS?function(e,t,n){var r,o,i,s;const a=n.getStoryboardByAppId(t);return(null!==(r=null!==(o=null===(i=a.meta)||void 0===i?void 0:i.injectMenus)&&void 0!==o?o:null===(s=a.meta)||void 0===s?void 0:s.menus)&&void 0!==r?r:[]).filter((t=>t.menuId===e)).map((e=>{var n;return{...e,...null!==(n=e.app)&&void 0!==n&&null!==(n=n[0])&&void 0!==n&&n.appId?{}:{app:[{appId:t}]}}}))}(e,t.app.id,n):t.flags["three-level-menu-layout"]?(await Me(e,{menuObjectId:"EASYOPS_STORYBOARD_MENU"})).menus:(await Ee("EASYOPS_STORYBOARD_MENU",{page:1,page_size:200,fields:{menuId:!0,title:!0,icon:!0,link:!0,titleDataSource:!0,defaultCollapsed:!0,defaultCollapsedBreakpoint:!0,type:!0,injectMenuGroupId:!0,dynamicItems:!0,itemsResolve:!0,items:!0,i18n:!0,"items.children":!0,"app.appId":!0},query:{menuId:{$eq:e},app:{$size:{$gt:0}}}})).list,o=await Ne(r,t,n);if(!o)throw new Error(`Menu not found: ${e}`);$e(o);const{items:i,app:s,...a}=o,c={...t,pendingPermissionsPreCheck:[...t.pendingPermissionsPreCheck,S([i,a])]};delete c.tplStateStoreId,delete c.forEachItem,delete c.forEachIndex,delete c.forEachSize;const u=s[0].appId,[l,p]=await Promise.all([Le(a,u,c,n),Ue(i,c,n)]),d={title:await qe(l),...(0,_.pick)(l,["icon","link","defaultCollapsed","defaultCollapsedBreakpoint"]),menuItems:Ge(p)};He.set(e,d)}(e,t,n)),r}const Ye=[];let Ke=null;const Qe={maxWaitingTime:5e3,maxLoggedEvents:10};function Xe(){clearTimeout(Ke),Ye.length>Qe.maxLoggedEvents?Ze():Ke=setTimeout(Ze,Qe.maxWaitingTime)}function Ze(){if(0===Ye.length)return;const e={model:"easyops.FRONTEND_STAT",columns:["_ver","st","et","lt","size","time","traceId","code","duration","page","uid","username","api","type","msg","status","pageId","route","apiCount","maxApiTimeCost","apiSizeCost","pageTitle"],data:Ye.splice(0,Qe.maxLoggedEvents)};var t;!function(e,t){const n=new Blob([JSON.stringify(t)],{type:"application/json"});window.navigator.sendBeacon(e,n)}(Qe.api,e),Ye.length&&(t=Ze,(window.requestIdleCallback||window.requestAnimationFrame||(e=>setTimeout(e,17)))(t))}function et(){window.addEventListener("beforeunload",Ze,!1)}let tt,nt=!1,rt=null,ot=!0;const it=[];function st(e){nt||(nt=!0,tt||(tt=function(e,t){return Object.assign(Qe,{...t,api:e}),{sendOnExit:et,emit:Xe}}(e,arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}),tt.sendOnExit()))}const at=Symbol("HttpAnalytics");function ct(e){const t=Math.round(performance.now()),n=Date.now();return e[at]={st:n,time:Math.round(n/1e3),perfStartTime:t},e}function ut(e,t){return pt(!1,e,t)}function lt(e,t){return pt(!0,e,t)}function pt(e,t,n){const r=Math.round(performance.now()),o=Date.now(),{[at]:i,url:s}=n;if(i&&!(e&&t instanceof se.HttpAbortError)){var a,c,u;delete n[at];const{st:p,time:d,perfStartTime:f}=i,{userInstanceId:h,username:m}=v();let g,A,w,y,b,S,I;if(e){const e=t instanceof se.HttpResponseError;(e||t instanceof se.HttpParseError)&&(({status:b,headers:S}=t.response),e&&(I=t.responseJson))}else({status:b,data:I,headers:S}=t);(0,ie.isObject)(I)&&({code:g,message:A}=I),S instanceof Headers&&(w=S.get("x-b3-traceid"),y=S.get("content-length")),l={st:p,_ver:p,uid:h,username:m,time:d,et:o,page:location.href,duration:r-f,api:s,type:"api",code:null!==(a=g)&&void 0!==a?a:-1,msg:null!==(c=A)&&void 0!==c?c:"",status:b,traceId:null!==(u=w)&&void 0!==u?u:"",size:y?Number(y):-1},rt?Ye.push({...l,type:"apiRequest",...rt}):it.push(l)}var l;return e?Promise.reject(t):t}function dt(){const e=Math.round(performance.now()),t=Date.now();return it.length=0,rt=null,function(n){let{status:r,path:o,pageTitle:i}=n;if("ok"!==r)return Ye.push(...it),void(it.length=0);const s=Math.round(performance.now())-e,a=Date.now(),{username:c}=v();(function(e){const t=function(){const e=URL.createObjectURL(new Blob([]));let t=e.substring(e.lastIndexOf("/")+1);return URL.revokeObjectURL(e),ot&&(t="88-"+t,ot=!1),t}(),{lt:n,route:r}=e;rt={lt:n,route:r,pageId:t},Ye.push({...e,pageId:t,apiCount:it.length,maxApiTimeCost:Math.max(0,...it.map((e=>e.duration))),size:it.map((e=>e.size)).filter((e=>e>0)).reduce(((e,t)=>e+t),0)});for(const e of it)Ye.push({...e,...rt});it.length=0,tt.emit()})({type:"page",page:location.href,_ver:t,time:Math.round(t/1e3),st:t,et:a,lt:s,pageTitle:i,username:c,route:o}),window.dispatchEvent(new CustomEvent("route.render",{detail:{renderTime:s}}))}}const ft=Object.freeze({checkPermissions:function(){if(!A())return!1;if(v().isAdmin)return!0;for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];for(const e of t)switch(b.get(e)){case"unauthorized":case"undefined":return!1;case void 0:return console.error(`Un-checked permission action: "${e}", please make sure the permission to check is defined in permissionsPreCheck.`),!1}return!0},preCheckPermissions:function(e){if(A()&&!v().isAdmin)return I((0,l.scanPermissionActionsInStoryboard)(e))},preCheckPermissionsForBrickOrRoute:async function(e,t){if(A()&&!v().isAdmin&&Array.isArray(e.permissionsPreCheck))return I(await t(e.permissionsPreCheck))}}),ht=new class{constructor(){(0,O.A)(this,V),(0,P.A)(this,H,void 0),(0,P.A)(this,G,{sub:new Map,unsub:new Map}),(0,P.A)(this,J,new Map)}subscribe(e,t){const n=JSON.stringify(t);return(0,k.A)(V,this,K).call(this,"sub",e,t,n)}unsubscribe(e){const t=(0,C.A)(J,this).get(e);if(!t){const t=`The message channel to unsubscribe "${e}" is not found`;return console.error(t),Promise.reject(new Error(t))}const n=JSON.parse(t),r=(0,k.A)(V,this,K).call(this,"unsub",e,n,t);return(0,C.A)(G,this).sub.delete(t),r.then((()=>{(0,C.A)(J,this).delete(e)})),r}onMessage(e,t){let n=(0,C.A)(J,this).get(e),r=!1;(0,E.A)(V,this,Y).onMessage((o=>{n||(n=(0,C.A)(J,this).get(e)),n?"MESSAGE.PUSH"===o.event&&function(e,t){const n=JSON.parse(e);return n.system===t.system&&(n.topic===t.topic||"string"==typeof n.topic&&n.topic.includes("*")&&new RegExp(`^${n.topic.replace(/([^*]*)\*([^*]*)/g,((e,t,n)=>`${(0,_.escapeRegExp)(t)}[^/]*${(0,_.escapeRegExp)(n)}`))}$`).test(t.topic))}(n,o.payload)&&t(o.payload.message):r||(console.error(`Message channel: "${e}" not found`),r=!0)}))}onClose(e){(0,E.A)(V,this,Y).onClose(e)}reset(){var e;(0,C.A)(G,this).sub.clear(),(0,C.A)(G,this).unsub.clear(),(0,C.A)(J,this).clear(),null===(e=(0,C.A)(H,this))||void 0===e||e.reset()}},mt=function(){const e=(0,T.getV2RuntimeFromDll)();if(e)return Object.freeze((0,_.pick)(e,["authenticate","getAuth","isLoggedIn","logout"]))}()||r}}]);
3
+ //# sourceMappingURL=2252.03e37978.js.map