@next-bricks/nav 1.12.0 → 1.13.1

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 (114) hide show
  1. package/dist/bricks.json +12 -8
  2. package/dist/chunks/{114.6a43b0f6.js → 114.7a9769ca.js} +2 -2
  3. package/dist/chunks/{114.6a43b0f6.js.map → 114.7a9769ca.js.map} +1 -1
  4. package/dist/chunks/1370.cbe87896.js +2 -0
  5. package/dist/chunks/{1370.531076d0.js.map → 1370.cbe87896.js.map} +1 -1
  6. package/dist/chunks/{2133.8d7b5fdf.js → 2133.57afe59f.js} +2 -2
  7. package/dist/chunks/{2133.8d7b5fdf.js.map → 2133.57afe59f.js.map} +1 -1
  8. package/dist/chunks/2140.2e870601.js +3 -0
  9. package/dist/chunks/2140.2e870601.js.LICENSE.txt +23 -0
  10. package/dist/chunks/2140.2e870601.js.map +1 -0
  11. package/dist/chunks/{2252.307d6b0e.js → 2252.a4907dbe.js} +3 -3
  12. package/dist/chunks/{2252.307d6b0e.js.map → 2252.a4907dbe.js.map} +1 -1
  13. package/dist/chunks/3751.93edf303.js +2 -0
  14. package/dist/chunks/3751.93edf303.js.map +1 -0
  15. package/dist/chunks/{4837.93cd1f47.js → 4837.4de613c0.js} +2 -2
  16. package/dist/chunks/{7218.23cd4106.js.map → 4837.4de613c0.js.map} +1 -1
  17. package/dist/chunks/5009.21202648.js +3 -0
  18. package/dist/chunks/5009.21202648.js.map +1 -0
  19. package/dist/chunks/5399.59a46cfe.js +2 -0
  20. package/dist/chunks/5399.59a46cfe.js.map +1 -0
  21. package/dist/chunks/{6256.1d74d5ae.js → 6256.5623ff67.js} +3 -3
  22. package/dist/chunks/{6256.1d74d5ae.js.map → 6256.5623ff67.js.map} +1 -1
  23. package/dist/chunks/6595.582896fb.js +2 -0
  24. package/dist/chunks/6595.582896fb.js.map +1 -0
  25. package/dist/chunks/6773.b8de20f0.js +2 -0
  26. package/dist/chunks/6773.b8de20f0.js.map +1 -0
  27. package/dist/chunks/{7218.23cd4106.js → 7218.99c42e66.js} +2 -2
  28. package/dist/chunks/{4837.93cd1f47.js.map → 7218.99c42e66.js.map} +1 -1
  29. package/dist/chunks/{7733.897a3dcc.js → 7733.1c59f07a.js} +2 -2
  30. package/dist/chunks/{7733.897a3dcc.js.map → 7733.1c59f07a.js.map} +1 -1
  31. package/dist/chunks/{8518.92aaa235.js → 8518.4a921b6e.js} +2 -2
  32. package/dist/chunks/{8518.92aaa235.js.map → 8518.4a921b6e.js.map} +1 -1
  33. package/dist/chunks/884.57ecb139.js +2 -0
  34. package/dist/chunks/884.57ecb139.js.map +1 -0
  35. package/dist/chunks/9149.6ca3f62d.js +2 -0
  36. package/dist/chunks/9149.6ca3f62d.js.map +1 -0
  37. package/dist/chunks/{easyops-navbar-alerts.d21fc6d9.js → easyops-navbar-alerts.af2663da.js} +2 -2
  38. package/dist/chunks/{easyops-navbar-alerts.d21fc6d9.js.map → easyops-navbar-alerts.af2663da.js.map} +1 -1
  39. package/dist/chunks/{eo-directory-tree.1c463aaf.js → eo-directory-tree.719990de.js} +2 -2
  40. package/dist/chunks/{eo-directory-tree.1c463aaf.js.map → eo-directory-tree.719990de.js.map} +1 -1
  41. package/dist/chunks/{eo-directory.bd369082.js → eo-directory.8ba6c6d0.js} +3 -3
  42. package/dist/chunks/{eo-directory.bd369082.js.map → eo-directory.8ba6c6d0.js.map} +1 -1
  43. package/dist/chunks/{eo-frame-breadcrumb.093f0480.js → eo-frame-breadcrumb.83f52c77.js} +2 -2
  44. package/dist/chunks/{eo-frame-breadcrumb.093f0480.js.map → eo-frame-breadcrumb.83f52c77.js.map} +1 -1
  45. package/dist/chunks/eo-launchpad-button-v2.07be5183.js +3 -0
  46. package/dist/chunks/eo-launchpad-button-v2.07be5183.js.map +1 -0
  47. package/dist/chunks/eo-launchpad-button.e103d796.js +3 -0
  48. package/dist/chunks/eo-launchpad-button.e103d796.js.map +1 -0
  49. package/dist/chunks/{eo-nav-menu.1d01b159.js → eo-nav-menu.f2e0363a.js} +2 -2
  50. package/dist/chunks/{eo-nav-menu.1d01b159.js.map → eo-nav-menu.f2e0363a.js.map} +1 -1
  51. package/dist/chunks/{eo-sidebar-menu-group.1d22d9c5.js → eo-sidebar-menu-group.972dc19f.js} +3 -3
  52. package/dist/chunks/{eo-sidebar-menu-group.1d22d9c5.js.map → eo-sidebar-menu-group.972dc19f.js.map} +1 -1
  53. package/dist/chunks/{eo-sidebar-menu-submenu.94692ea6.js → eo-sidebar-menu-submenu.1dc3020e.js} +3 -3
  54. package/dist/chunks/{eo-sidebar-menu-submenu.94692ea6.js.map → eo-sidebar-menu-submenu.1dc3020e.js.map} +1 -1
  55. package/dist/chunks/{eo-sidebar-menu.17700c2e.js → eo-sidebar-menu.090d1998.js} +2 -2
  56. package/dist/chunks/{eo-sidebar-menu.17700c2e.js.map → eo-sidebar-menu.090d1998.js.map} +1 -1
  57. package/dist/chunks/{eo-sidebar-sub-menu.19672455.js → eo-sidebar-sub-menu.d9d77c4d.js} +3 -3
  58. package/dist/chunks/{eo-sidebar-sub-menu.19672455.js.map → eo-sidebar-sub-menu.d9d77c4d.js.map} +1 -1
  59. package/dist/chunks/{eo-sidebar.61bc9b78.js → eo-sidebar.37543a7e.js} +3 -3
  60. package/dist/chunks/{eo-sidebar.61bc9b78.js.map → eo-sidebar.37543a7e.js.map} +1 -1
  61. package/dist/chunks/{launchpad-config.23e62dea.js → launchpad-config.246a5be8.js} +3 -3
  62. package/dist/chunks/{launchpad-config.23e62dea.js.map → launchpad-config.246a5be8.js.map} +1 -1
  63. package/dist/chunks/main.c675ac30.js +2 -0
  64. package/dist/chunks/main.c675ac30.js.map +1 -0
  65. package/dist/chunks/{nav-logo.0f27b8c0.js → nav-logo.53e00cac.js} +2 -2
  66. package/dist/chunks/{nav-logo.0f27b8c0.js.map → nav-logo.53e00cac.js.map} +1 -1
  67. package/dist/chunks/poll-announce.66b095cb.js +3 -0
  68. package/dist/chunks/poll-announce.66b095cb.js.LICENSE.txt +5 -0
  69. package/dist/chunks/poll-announce.66b095cb.js.map +1 -0
  70. package/dist/examples.json +3 -0
  71. package/dist/index.066a83be.js +2 -0
  72. package/dist/index.066a83be.js.map +1 -0
  73. package/dist/manifest.json +56 -20
  74. package/dist/types.json +86 -0
  75. package/dist-types/bootstrap.d.ts +1 -0
  76. package/dist-types/poll-announce/i18n.d.ts +15 -0
  77. package/dist-types/poll-announce/index.d.ts +39 -0
  78. package/docs/poll-announce.md +23 -0
  79. package/package.json +2 -3
  80. package/dist/chunks/1370.531076d0.js +0 -2
  81. package/dist/chunks/3413.34289625.js +0 -3
  82. package/dist/chunks/3413.34289625.js.map +0 -1
  83. package/dist/chunks/3751.573b450c.js +0 -2
  84. package/dist/chunks/3751.573b450c.js.map +0 -1
  85. package/dist/chunks/5399.16e2bd79.js +0 -2
  86. package/dist/chunks/5399.16e2bd79.js.map +0 -1
  87. package/dist/chunks/6773.4adb9d56.js +0 -2
  88. package/dist/chunks/6773.4adb9d56.js.map +0 -1
  89. package/dist/chunks/8171.7737a47f.js +0 -3
  90. package/dist/chunks/8171.7737a47f.js.map +0 -1
  91. package/dist/chunks/9043.01c7dd1e.js +0 -3
  92. package/dist/chunks/9043.01c7dd1e.js.LICENSE.txt +0 -3
  93. package/dist/chunks/9043.01c7dd1e.js.map +0 -1
  94. package/dist/chunks/9155.e3bb67fc.js +0 -3
  95. package/dist/chunks/9155.e3bb67fc.js.map +0 -1
  96. package/dist/chunks/eo-launchpad-button-v2.fb4da932.js +0 -2
  97. package/dist/chunks/eo-launchpad-button-v2.fb4da932.js.map +0 -1
  98. package/dist/chunks/eo-launchpad-button.8ee6d3fe.js +0 -2
  99. package/dist/chunks/eo-launchpad-button.8ee6d3fe.js.map +0 -1
  100. package/dist/chunks/main.afc0d726.js +0 -2
  101. package/dist/chunks/main.afc0d726.js.map +0 -1
  102. package/dist/index.477d9af4.js +0 -2
  103. package/dist/index.477d9af4.js.map +0 -1
  104. /package/dist/chunks/{2252.307d6b0e.js.LICENSE.txt → 2252.a4907dbe.js.LICENSE.txt} +0 -0
  105. /package/dist/chunks/{3413.34289625.js.LICENSE.txt → 5009.21202648.js.LICENSE.txt} +0 -0
  106. /package/dist/chunks/{6256.1d74d5ae.js.LICENSE.txt → 6256.5623ff67.js.LICENSE.txt} +0 -0
  107. /package/dist/chunks/{eo-directory.bd369082.js.LICENSE.txt → eo-directory.8ba6c6d0.js.LICENSE.txt} +0 -0
  108. /package/dist/chunks/{8171.7737a47f.js.LICENSE.txt → eo-launchpad-button-v2.07be5183.js.LICENSE.txt} +0 -0
  109. /package/dist/chunks/{9155.e3bb67fc.js.LICENSE.txt → eo-launchpad-button.e103d796.js.LICENSE.txt} +0 -0
  110. /package/dist/chunks/{eo-sidebar-menu-group.1d22d9c5.js.LICENSE.txt → eo-sidebar-menu-group.972dc19f.js.LICENSE.txt} +0 -0
  111. /package/dist/chunks/{eo-sidebar-menu-submenu.94692ea6.js.LICENSE.txt → eo-sidebar-menu-submenu.1dc3020e.js.LICENSE.txt} +0 -0
  112. /package/dist/chunks/{eo-sidebar-sub-menu.19672455.js.LICENSE.txt → eo-sidebar-sub-menu.d9d77c4d.js.LICENSE.txt} +0 -0
  113. /package/dist/chunks/{eo-sidebar.61bc9b78.js.LICENSE.txt → eo-sidebar.37543a7e.js.LICENSE.txt} +0 -0
  114. /package/dist/chunks/{launchpad-config.23e62dea.js.LICENSE.txt → launchpad-config.246a5be8.js.LICENSE.txt} +0 -0
package/dist/bricks.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "id": "bricks/nav",
3
3
  "bricks": [
4
- "nav.easyops-navbar-alerts",
5
4
  "nav.launchpad-config",
5
+ "nav.easyops-navbar-alerts",
6
6
  "nav.app-bar-wrapper",
7
- "nav.nav-logo"
7
+ "nav.nav-logo",
8
+ "nav.poll-announce"
8
9
  ],
9
10
  "elements": [
10
11
  "eo-nav-menu",
@@ -12,8 +13,8 @@
12
13
  "eo-launchpad-button-v2",
13
14
  "eo-launchpad-quick-access",
14
15
  "eo-search-launchpad",
15
- "eo-app-bar-wrapper",
16
16
  "eo-launchpad-recent-visits",
17
+ "eo-app-bar-wrapper",
17
18
  "eo-frame-breadcrumb",
18
19
  "eo-sidebar-menu-item",
19
20
  "eo-sidebar-menu-group",
@@ -49,16 +50,16 @@
49
50
  "basic.show-dialog",
50
51
  "basic.show-notification"
51
52
  ],
52
- "nav.easyops-navbar-alerts": [
53
- "eo-icon",
54
- "eo-link"
55
- ],
56
53
  "nav.launchpad-config": [
57
54
  "eo-icon",
58
55
  "eo-link",
59
56
  "eo-dropdown-actions",
60
57
  "basic.show-dialog"
61
58
  ],
59
+ "nav.easyops-navbar-alerts": [
60
+ "eo-icon",
61
+ "eo-link"
62
+ ],
62
63
  "eo-launchpad-quick-access": [
63
64
  "eo-icon",
64
65
  "eo-link",
@@ -130,7 +131,10 @@
130
131
  "nav.nav-logo": [
131
132
  "eo-icon",
132
133
  "eo-link"
134
+ ],
135
+ "nav.poll-announce": [
136
+ "basic.show-notification"
133
137
  ]
134
138
  },
135
- "filePath": "bricks/nav/dist/index.477d9af4.js"
139
+ "filePath": "bricks/nav/dist/index.066a83be.js"
136
140
  }
@@ -1,2 +1,2 @@
1
- "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[114,7733],{5873:(t,e,n)=>{var r=n(1816);e.H=r.createRoot,r.hydrateRoot},2559:(t,e,n)=>{function r(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}n.d(e,{A:()=>r})},2016:(t,e,n)=>{function r(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(e,{A:()=>r})},829:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2559);function s(t,e){return t.get((0,r.A)(t,e))}},918:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2016);function s(t,e,n){(0,r.A)(t,e),e.set(t,n)}},6121:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2559);function s(t,e,n){return t.set((0,r.A)(t,e),n),n}},4635:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2016);function s(t,e){(0,r.A)(t,e),e.add(t)}},9575:(t,e,n)=>{function r(){return r=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},r.apply(this,arguments)}n.d(e,{A:()=>r})},114:(t,e,n)=>{n.r(e),n.d(e,{ReactNextElement:()=>p,wrapBrick:()=>y,wrapLocalBrick:()=>v});var r=n(4635),s=n(918),o=n(2559),i=n(6121),a=n(829),c=n(8769),l=n(5873),h=n(1816),d=n(4782),u=new WeakMap,f=new WeakSet;class p extends d.NextElement{constructor(){super(...arguments),(0,r.A)(this,f),(0,s.A)(this,u,void 0)}connectedCallback(){super._markConnectedCallbackCalled(),(0,o.A)(f,this,A).call(this),this._render()}disconnectedCallback(){var t;null===(t=(0,a.A)(u,this))||void 0===t||t.render(null)}_render(){const t=()=>{if(!this.isConnected||!(0,a.A)(u,this))return;const t=this.constructor;var e;t.shadowOptions?(0,a.A)(u,this).render((0,d.supportsAdoptingStyleSheets)()||null===(e=t.styleTexts)||void 0===e||!e.length?this.render():c.createElement(c.Fragment,null,c.createElement("style",null,t.styleTexts.join("\n")),this.render())):(0,a.A)(u,this).render(this.render())};window.BRICK_NEXT_VERSIONS&&!window.DISABLE_REACT_FLUSH_SYNC?(0,h.flushSync)(t):t()}}function A(){if((0,a.A)(u,this))return;const t=this.constructor;if(t.shadowOptions){const n=this.attachShadow(t.shadowOptions);var e;if((0,d.supportsAdoptingStyleSheets)()&&null!==(e=t.styleTexts)&&void 0!==e&&e.length){const e=new CSSStyleSheet;e.replaceSync(t.styleTexts.join("")),n.adoptedStyleSheets=[e]}(0,i.A)(u,this,(0,l.H)(n))}else(0,i.A)(u,this,(0,l.H)(this))}var w=n(9575);function v(t,e){return(0,c.forwardRef)((function(n,r){let{children:s,...o}=n;const i="string"==typeof t?t:t.__tagName,a=S(o,e);return c.createElement(i,(0,w.A)({},a,{ref:r}),s)}))}function y(t,e){return(0,c.forwardRef)((function(n,r){let{children:s,...o}=n;const i=S(o,e);return c.createElement(t,(0,w.A)({},i,{ref:r}),s)}))}function S(t,e){let n;if(e){n={};for(const[r,s]of Object.entries(t))Object.prototype.hasOwnProperty.call(e,r)?n[`on${e[r]}`]=s:n[r]=s}else n=t;return n}}}]);
2
- //# sourceMappingURL=114.6a43b0f6.js.map
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[114,7733],{5873:(t,e,n)=>{var r=n(9435);e.H=r.createRoot,r.hydrateRoot},2559:(t,e,n)=>{function r(t,e,n){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:n;throw new TypeError("Private element is not present on this object")}n.d(e,{A:()=>r})},2016:(t,e,n)=>{function r(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}n.d(e,{A:()=>r})},829:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2559);function s(t,e){return t.get((0,r.A)(t,e))}},918:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2016);function s(t,e,n){(0,r.A)(t,e),e.set(t,n)}},6121:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2559);function s(t,e,n){return t.set((0,r.A)(t,e),n),n}},4635:(t,e,n)=>{n.d(e,{A:()=>s});var r=n(2016);function s(t,e){(0,r.A)(t,e),e.add(t)}},9575:(t,e,n)=>{function r(){return r=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},r.apply(this,arguments)}n.d(e,{A:()=>r})},114:(t,e,n)=>{n.r(e),n.d(e,{ReactNextElement:()=>p,wrapBrick:()=>y,wrapLocalBrick:()=>v});var r=n(4635),s=n(918),o=n(2559),i=n(6121),a=n(829),c=n(8769),l=n(5873),h=n(9435),d=n(4782),u=new WeakMap,f=new WeakSet;class p extends d.NextElement{constructor(){super(...arguments),(0,r.A)(this,f),(0,s.A)(this,u,void 0)}connectedCallback(){super._markConnectedCallbackCalled(),(0,o.A)(f,this,A).call(this),this._render()}disconnectedCallback(){var t;null===(t=(0,a.A)(u,this))||void 0===t||t.render(null)}_render(){const t=()=>{if(!this.isConnected||!(0,a.A)(u,this))return;const t=this.constructor;var e;t.shadowOptions?(0,a.A)(u,this).render((0,d.supportsAdoptingStyleSheets)()||null===(e=t.styleTexts)||void 0===e||!e.length?this.render():c.createElement(c.Fragment,null,c.createElement("style",null,t.styleTexts.join("\n")),this.render())):(0,a.A)(u,this).render(this.render())};window.BRICK_NEXT_VERSIONS&&!window.DISABLE_REACT_FLUSH_SYNC?(0,h.flushSync)(t):t()}}function A(){if((0,a.A)(u,this))return;const t=this.constructor;if(t.shadowOptions){const n=this.attachShadow(t.shadowOptions);var e;if((0,d.supportsAdoptingStyleSheets)()&&null!==(e=t.styleTexts)&&void 0!==e&&e.length){const e=new CSSStyleSheet;e.replaceSync(t.styleTexts.join("")),n.adoptedStyleSheets=[e]}(0,i.A)(u,this,(0,l.H)(n))}else(0,i.A)(u,this,(0,l.H)(this))}var w=n(9575);function v(t,e){return(0,c.forwardRef)((function(n,r){let{children:s,...o}=n;const i="string"==typeof t?t:t.__tagName,a=S(o,e);return c.createElement(i,(0,w.A)({},a,{ref:r}),s)}))}function y(t,e){return(0,c.forwardRef)((function(n,r){let{children:s,...o}=n;const i=S(o,e);return c.createElement(t,(0,w.A)({},i,{ref:r}),s)}))}function S(t,e){let n;if(e){n={};for(const[r,s]of Object.entries(t))Object.prototype.hasOwnProperty.call(e,r)?n[`on${e[r]}`]=s:n[r]=s}else n=t;return n}}}]);
2
+ //# sourceMappingURL=114.7a9769ca.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/114.6a43b0f6.js","mappings":"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","sources":["webpack:///../../node_modules/react-dom/client.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.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/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@next-core/react-element/dist/esm/ReactNextElement.js","webpack:///../../node_modules/@next-core/react-element/dist/esm/wrapBrick.js"],"sourcesContent":["'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","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 _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 checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nvar _ReactNextElement;\nimport React from \"react\";\nimport { createRoot } from \"react-dom/client\";\nimport { flushSync } from \"react-dom\";\nimport { NextElement, supportsAdoptingStyleSheets } from \"@next-core/element\";\nvar _root = /*#__PURE__*/new WeakMap();\nvar _ReactNextElement_brand = /*#__PURE__*/new WeakSet();\nexport class ReactNextElement extends NextElement {\n constructor() {\n super(...arguments);\n _classPrivateMethodInitSpec(this, _ReactNextElement_brand);\n _classPrivateFieldInitSpec(this, _root, void 0);\n }\n connectedCallback() {\n super._markConnectedCallbackCalled();\n _assertClassBrand(_ReactNextElement_brand, this, _createRoot).call(this);\n this._render();\n }\n disconnectedCallback() {\n var _classPrivateFieldGet2;\n (_classPrivateFieldGet2 = _classPrivateFieldGet(_root, this)) === null || _classPrivateFieldGet2 === void 0 || _classPrivateFieldGet2.render(null);\n }\n _render() {\n const render = () => {\n if (!this.isConnected || !_classPrivateFieldGet(_root, this)) {\n return;\n }\n const ctor = this.constructor;\n if (ctor.shadowOptions) {\n var _ctor$styleTexts;\n _classPrivateFieldGet(_root, this).render(supportsAdoptingStyleSheets() || !((_ctor$styleTexts = ctor.styleTexts) !== null && _ctor$styleTexts !== void 0 && _ctor$styleTexts.length) ? this.render() : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"style\", null, ctor.styleTexts.join(\"\\n\")), this.render()));\n } else {\n _classPrivateFieldGet(_root, this).render(this.render());\n }\n };\n\n // In brick next container, enable flush sync for the initial mount of\n // each page, in order to avoid menu flickering.\n // Otherwise, avoid using flush sync as possible.\n if (window.BRICK_NEXT_VERSIONS && !window.DISABLE_REACT_FLUSH_SYNC) {\n flushSync(render);\n } else {\n render();\n }\n }\n}\n_ReactNextElement = ReactNextElement;\nfunction _createRoot() {\n if (_classPrivateFieldGet(_root, this)) {\n return;\n }\n const ctor = this.constructor;\n if (ctor.shadowOptions) {\n const shadowRoot = this.attachShadow(ctor.shadowOptions);\n if (supportsAdoptingStyleSheets()) {\n var _ctor$styleTexts2;\n if ((_ctor$styleTexts2 = ctor.styleTexts) !== null && _ctor$styleTexts2 !== void 0 && _ctor$styleTexts2.length) {\n const styleSheet = new CSSStyleSheet();\n styleSheet.replaceSync(ctor.styleTexts.join(\"\"));\n shadowRoot.adoptedStyleSheets = [styleSheet];\n }\n }\n _classPrivateFieldSet(_root, this, createRoot(shadowRoot));\n } else {\n var _ctor$styleTexts3;\n if (process.env.NODE_ENV !== \"production\" && (_ctor$styleTexts3 = ctor.styleTexts) !== null && _ctor$styleTexts3 !== void 0 && _ctor$styleTexts3.length) {\n throw new Error(\"Use `styleTexts` with `shadowOptions: false` is not supported\");\n }\n _classPrivateFieldSet(_root, this, createRoot(this));\n }\n}\n//# sourceMappingURL=ReactNextElement.js.map","import _extends from \"@babel/runtime/helpers/extends\";\nimport React, { forwardRef } from \"react\";\nexport function wrapLocalBrick(brick, eventsMapping) {\n // istanbul ignore next\n if (process.env.NODE_ENV === \"development\") {\n if (typeof brick === \"string\" && !customElements.get(brick)) {\n throw new Error(`Brick ${brick} is not defined while using \\`wrapLocalBrick\\`.`);\n }\n }\n return /*#__PURE__*/forwardRef(function BrickReactWrapper(_ref, ref) {\n let {\n children,\n ...props\n } = _ref;\n const WebComponent = typeof brick === \"string\" ? brick : brick.__tagName;\n const properties = getMappedProperties(props, eventsMapping);\n return /*#__PURE__*/React.createElement(WebComponent, _extends({}, properties, {\n ref: ref\n }), children);\n });\n}\nexport function wrapBrick(BrickName, eventsMapping) {\n return /*#__PURE__*/forwardRef(function BrickReactWrapper(_ref2, ref) {\n let {\n children,\n ...props\n } = _ref2;\n const properties = getMappedProperties(props, eventsMapping);\n return /*#__PURE__*/React.createElement(BrickName, _extends({}, properties, {\n ref: ref\n }), children);\n });\n}\nfunction getMappedProperties(props, eventsMapping) {\n let properties;\n if (eventsMapping) {\n properties = {};\n for (const [propName, propValue] of Object.entries(props)) {\n if (Object.prototype.hasOwnProperty.call(eventsMapping, propName)) {\n properties[`on${eventsMapping[propName]}`] = propValue;\n } else {\n properties[propName] = propValue;\n }\n }\n } else {\n properties = props;\n }\n return properties;\n}\n//# sourceMappingURL=wrapBrick.js.map"],"names":["m","exports","createRoot","hydrateRoot","_assertClassBrand","e","t","n","has","arguments","length","TypeError","_checkPrivateRedeclaration","obj","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","value","set","_classPrivateFieldSet2","r","_classPrivateMethodInitSpec","privateSet","add","_extends","Object","assign","bind","target","i","source","key","prototype","hasOwnProperty","call","apply","this","_root","WeakMap","_ReactNextElement_brand","WeakSet","ReactNextElement","NextElement","constructor","super","connectedCallback","_markConnectedCallbackCalled","_createRoot","_render","disconnectedCallback","render","isConnected","ctor","_ctor$styleTexts","shadowOptions","supportsAdoptingStyleSheets","styleTexts","join","window","BRICK_NEXT_VERSIONS","DISABLE_REACT_FLUSH_SYNC","flushSync","shadowRoot","attachShadow","_ctor$styleTexts2","styleSheet","CSSStyleSheet","replaceSync","adoptedStyleSheets","wrapLocalBrick","brick","eventsMapping","forwardRef","_ref","ref","children","props","WebComponent","__tagName","properties","getMappedProperties","wrapBrick","BrickName","_ref2","propName","propValue","entries"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/114.7a9769ca.js","mappings":"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","sources":["webpack:///../../node_modules/react-dom/client.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.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/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///../../node_modules/@next-core/react-element/dist/esm/ReactNextElement.js","webpack:///../../node_modules/@next-core/react-element/dist/esm/wrapBrick.js"],"sourcesContent":["'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","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 _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 checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nvar _ReactNextElement;\nimport React from \"react\";\nimport { createRoot } from \"react-dom/client\";\nimport { flushSync } from \"react-dom\";\nimport { NextElement, supportsAdoptingStyleSheets } from \"@next-core/element\";\nvar _root = /*#__PURE__*/new WeakMap();\nvar _ReactNextElement_brand = /*#__PURE__*/new WeakSet();\nexport class ReactNextElement extends NextElement {\n constructor() {\n super(...arguments);\n _classPrivateMethodInitSpec(this, _ReactNextElement_brand);\n _classPrivateFieldInitSpec(this, _root, void 0);\n }\n connectedCallback() {\n super._markConnectedCallbackCalled();\n _assertClassBrand(_ReactNextElement_brand, this, _createRoot).call(this);\n this._render();\n }\n disconnectedCallback() {\n var _classPrivateFieldGet2;\n (_classPrivateFieldGet2 = _classPrivateFieldGet(_root, this)) === null || _classPrivateFieldGet2 === void 0 || _classPrivateFieldGet2.render(null);\n }\n _render() {\n const render = () => {\n if (!this.isConnected || !_classPrivateFieldGet(_root, this)) {\n return;\n }\n const ctor = this.constructor;\n if (ctor.shadowOptions) {\n var _ctor$styleTexts;\n _classPrivateFieldGet(_root, this).render(supportsAdoptingStyleSheets() || !((_ctor$styleTexts = ctor.styleTexts) !== null && _ctor$styleTexts !== void 0 && _ctor$styleTexts.length) ? this.render() : /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"style\", null, ctor.styleTexts.join(\"\\n\")), this.render()));\n } else {\n _classPrivateFieldGet(_root, this).render(this.render());\n }\n };\n\n // In brick next container, enable flush sync for the initial mount of\n // each page, in order to avoid menu flickering.\n // Otherwise, avoid using flush sync as possible.\n if (window.BRICK_NEXT_VERSIONS && !window.DISABLE_REACT_FLUSH_SYNC) {\n flushSync(render);\n } else {\n render();\n }\n }\n}\n_ReactNextElement = ReactNextElement;\nfunction _createRoot() {\n if (_classPrivateFieldGet(_root, this)) {\n return;\n }\n const ctor = this.constructor;\n if (ctor.shadowOptions) {\n const shadowRoot = this.attachShadow(ctor.shadowOptions);\n if (supportsAdoptingStyleSheets()) {\n var _ctor$styleTexts2;\n if ((_ctor$styleTexts2 = ctor.styleTexts) !== null && _ctor$styleTexts2 !== void 0 && _ctor$styleTexts2.length) {\n const styleSheet = new CSSStyleSheet();\n styleSheet.replaceSync(ctor.styleTexts.join(\"\"));\n shadowRoot.adoptedStyleSheets = [styleSheet];\n }\n }\n _classPrivateFieldSet(_root, this, createRoot(shadowRoot));\n } else {\n var _ctor$styleTexts3;\n if (process.env.NODE_ENV !== \"production\" && (_ctor$styleTexts3 = ctor.styleTexts) !== null && _ctor$styleTexts3 !== void 0 && _ctor$styleTexts3.length) {\n throw new Error(\"Use `styleTexts` with `shadowOptions: false` is not supported\");\n }\n _classPrivateFieldSet(_root, this, createRoot(this));\n }\n}\n//# sourceMappingURL=ReactNextElement.js.map","import _extends from \"@babel/runtime/helpers/extends\";\nimport React, { forwardRef } from \"react\";\nexport function wrapLocalBrick(brick, eventsMapping) {\n // istanbul ignore next\n if (process.env.NODE_ENV === \"development\") {\n if (typeof brick === \"string\" && !customElements.get(brick)) {\n throw new Error(`Brick ${brick} is not defined while using \\`wrapLocalBrick\\`.`);\n }\n }\n return /*#__PURE__*/forwardRef(function BrickReactWrapper(_ref, ref) {\n let {\n children,\n ...props\n } = _ref;\n const WebComponent = typeof brick === \"string\" ? brick : brick.__tagName;\n const properties = getMappedProperties(props, eventsMapping);\n return /*#__PURE__*/React.createElement(WebComponent, _extends({}, properties, {\n ref: ref\n }), children);\n });\n}\nexport function wrapBrick(BrickName, eventsMapping) {\n return /*#__PURE__*/forwardRef(function BrickReactWrapper(_ref2, ref) {\n let {\n children,\n ...props\n } = _ref2;\n const properties = getMappedProperties(props, eventsMapping);\n return /*#__PURE__*/React.createElement(BrickName, _extends({}, properties, {\n ref: ref\n }), children);\n });\n}\nfunction getMappedProperties(props, eventsMapping) {\n let properties;\n if (eventsMapping) {\n properties = {};\n for (const [propName, propValue] of Object.entries(props)) {\n if (Object.prototype.hasOwnProperty.call(eventsMapping, propName)) {\n properties[`on${eventsMapping[propName]}`] = propValue;\n } else {\n properties[propName] = propValue;\n }\n }\n } else {\n properties = props;\n }\n return properties;\n}\n//# sourceMappingURL=wrapBrick.js.map"],"names":["m","exports","createRoot","hydrateRoot","_assertClassBrand","e","t","n","has","arguments","length","TypeError","_checkPrivateRedeclaration","obj","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","value","set","_classPrivateFieldSet2","r","_classPrivateMethodInitSpec","privateSet","add","_extends","Object","assign","bind","target","i","source","key","prototype","hasOwnProperty","call","apply","this","_root","WeakMap","_ReactNextElement_brand","WeakSet","ReactNextElement","NextElement","constructor","super","connectedCallback","_markConnectedCallbackCalled","_createRoot","_render","disconnectedCallback","render","isConnected","ctor","_ctor$styleTexts","shadowOptions","supportsAdoptingStyleSheets","styleTexts","join","window","BRICK_NEXT_VERSIONS","DISABLE_REACT_FLUSH_SYNC","flushSync","shadowRoot","attachShadow","_ctor$styleTexts2","styleSheet","CSSStyleSheet","replaceSync","adoptedStyleSheets","wrapLocalBrick","brick","eventsMapping","forwardRef","_ref","ref","children","props","WebComponent","__tagName","properties","getMappedProperties","wrapBrick","BrickName","_ref2","propName","propValue","entries"],"sourceRoot":""}
@@ -0,0 +1,2 @@
1
+ "use strict";(globalThis.webpackChunk_next_bricks_nav=globalThis.webpackChunk_next_bricks_nav||[]).push([[1370],{2559:(t,r,e)=>{function s(t,r,e){if("function"==typeof t?t===r:t.has(r))return arguments.length<3?r:e;throw new TypeError("Private element is not present on this object")}e.d(r,{A:()=>s})},2016:(t,r,e)=>{function s(t,r){if(r.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")}e.d(r,{A:()=>s})},829:(t,r,e)=>{e.d(r,{A:()=>n});var s=e(2559);function n(t,r){return t.get((0,s.A)(t,r))}},918:(t,r,e)=>{e.d(r,{A:()=>n});var s=e(2016);function n(t,r,e){(0,s.A)(t,r),r.set(t,e)}},6121:(t,r,e)=>{e.d(r,{A:()=>n});var s=e(2559);function n(t,r,e){return t.set((0,s.A)(t,r),e),e}},4635:(t,r,e)=>{e.d(r,{A:()=>n});var s=e(2016);function n(t,r){(0,s.A)(t,r),r.add(t)}},8989:(t,r,e)=>{e.r(r),e.d(r,{HttpAbortError:()=>I,HttpFetchError:()=>q,HttpParseError:()=>F,HttpResponseError:()=>D,createHttpInstance:()=>L,defaultAdapter:()=>B,fetch:()=>_,http:()=>U,isHttpAbortError:()=>J});var s={};e.r(s),e.d(s,{HttpAbortError:()=>E,HttpFetchError:()=>l,HttpParseError:()=>d,HttpResponseError:()=>p,createHttpInstance:()=>R,defaultAdapter:()=>g,fetch:()=>n,getUrlWithParams:()=>H,http:()=>x,isHttpAbortError:()=>w});const n=(t,r)=>{const e=new Request(t,Object.assign({credentials:"same-origin"},r));return self.fetch(e)};var o=e(4635),a=e(918),i=e(4586),c=e(829),h=e(2559),u=e(6121);class l extends Error{constructor(t){super(t),this.name="HttpFetchError",Error.captureStackTrace&&Error.captureStackTrace(this,l)}}class p extends Error{constructor(t,r){super(t.statusText),(0,i.A)(this,"response",void 0),(0,i.A)(this,"responseJson",void 0),this.name="HttpResponseError",Error.captureStackTrace&&Error.captureStackTrace(this,p),this.response=t,this.responseJson=r}}class d extends Error{constructor(t){super(t.statusText),(0,i.A)(this,"response",void 0),this.name="HttpParseError",Error.captureStackTrace&&Error.captureStackTrace(this,d),this.response=t}}class E extends Error{constructor(t){super(t),this.name="HttpAbortError"}}class f{constructor(){(0,i.A)(this,"handlers",[])}use(t,r){return this.handlers.push({fulfilled:t,rejected:r}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}forEach(t){this.handlers.forEach((r=>{null!==r&&t(r)}))}}function A(t){return null==t}const v=document.querySelector("base"),m=v?v.href:location.origin+"/",w=t=>t instanceof DOMException&&20===t.code,b=async(t,r,e)=>new Promise((async(s,o)=>{let a;e.url=t;let i,{responseType:c}=e.options||{};c||(c="json");try{a=await n(t,r)}catch(t){return void o(w(t)?new E(t.toString()):new l(t.toString()))}if(a.ok){try{i=await a[c]()}catch(t){return void o(w(t)?new E(t.toString()):new d(a))}s({status:a.status,statusText:a.statusText,headers:a.headers,data:i})}else{let t;try{t=await a.json()}catch{}o(new p(a,t))}})),H=(t,r)=>{if(r){const e=new URL(t,m);r instanceof URLSearchParams?r.forEach((function(t,r){e.searchParams.append(r,t)})):Object.entries(r).forEach((t=>{let[r,s]=t;Array.isArray(s)?s.forEach((t=>{e.searchParams.append(r,A(t)?"":t)})):e.searchParams.append(r,A(s)?"":s)}));const{href:s}=e;return s.startsWith(m)?s.substr(m.length):s}return t},T=(t,r)=>{if(void 0!==t){const e=new Headers(r||{}),s="Content-Type";let n=t;return e.has(s)||("string"==typeof t?e.set(s,"application/x-www-form-urlencoded"):t instanceof FormData||(e.set(s,"application/json"),n=JSON.stringify(t))),{body:n,headers:e}}return{headers:r}},g=t=>{const{url:r,method:e,data:s}=t;return["DELETE","GET","HEAD"].includes(t.method)?((t,r,e)=>{const{params:s,responseType:n,interceptorParams:o,observe:a,noAbortOnRouteChange:i,useCache:c,...h}=e.options||{};return b(H(r,s),{...h,method:t},e)})(e,r,t):((t,r,e,s)=>{const{params:n,headers:o,responseType:a,interceptorParams:i,observe:c,noAbortOnRouteChange:h,useCache:u,...l}=s.options||{};return b(H(r,n),{...l,method:t,...T(e,o)},s)})(e,r,s,t)};var y=new WeakMap,P=new WeakSet;class k{constructor(t){var r=this;(0,o.A)(this,P),(0,i.A)(this,"interceptors",void 0),(0,a.A)(this,y,g),(0,i.A)(this,"request",(async(t,r,e)=>{const{body:s,method:n,...o}=r||{};return(0,h.A)(P,this,S).call(this,{url:t,data:s,method:n||"GET",options:{...e||{},...o}})})),(0,i.A)(this,"simpleRequest",(function(t,e){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return(0,h.A)(P,r,S).call(r,{url:e,method:t,options:s})})),(0,i.A)(this,"requestWithBody",(function(t,e,s){let n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return(0,h.A)(P,r,S).call(r,{url:e,method:t,data:s,options:n})})),this.interceptors={request:new f,response:new f},null!=t&&t.adapter&&(0,u.A)(y,this,t.adapter)}getUrlWithParams(t,r){return H(t,r)}getBodyAndHeaders(t,r){return T(t,r)}get(t,r){return(0,h.A)(P,this,S).call(this,{url:t,method:"GET",options:r})}delete(t,r){return(0,h.A)(P,this,S).call(this,{url:t,method:"DELETE",options:r})}head(t,r){return(0,h.A)(P,this,S).call(this,{url:t,method:"HEAD",options:r})}post(t,r,e){return(0,h.A)(P,this,S).call(this,{url:t,method:"POST",data:r,options:e})}put(t,r,e){return(0,h.A)(P,this,S).call(this,{url:t,method:"PUT",data:r,options:e})}patch(t,r,e){return(0,h.A)(P,this,S).call(this,{url:t,method:"PATCH",data:r,options:e})}}function S(t){const r=[];let e=Promise.resolve(t);for(this.interceptors.request.forEach((t=>{r.push(t.fulfilled,t.rejected)})),r.push((t=>(0,c.A)(y,this).call(this,t)),void 0),this.interceptors.response.forEach((e=>{r.push((r=>{var s;return null===(s=e.fulfilled)||void 0===s?void 0:s.call(e,r,t)}),(r=>{var s;return null===(s=e.rejected)||void 0===s?void 0:s.call(e,r,t)}))})),r.push((r=>{var e;return"response"===(null===(e=t.options)||void 0===e?void 0:e.observe)?r:r.data}),void 0);r.length;)e=e.then(r.shift(),r.shift());return e}let x=new k;function R(t){x=new k(t)}var j;let C,O;const{dll:W}=window;C=W&&null!==(j=window.BRICK_NEXT_VERSIONS)&&void 0!==j&&null!==(j=j["brick-container"])&&void 0!==j&&j.startsWith("2.")&&(O=W("JxWY"))?O:s;const{fetch:_,HttpFetchError:q,HttpResponseError:D,HttpParseError:F,HttpAbortError:I,http:U,isHttpAbortError:J,createHttpInstance:L,defaultAdapter:B}=C}}]);
2
+ //# sourceMappingURL=1370.cbe87896.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/1370.531076d0.js","mappings":"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","sources":["webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.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/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@next-core/http/dist/esm/fetch.js","webpack:///../../node_modules/@next-core/http/dist/esm/errors.js","webpack:///../../node_modules/@next-core/http/dist/esm/InterceptorManager.js","webpack:///../../node_modules/@next-core/http/dist/esm/http.js","webpack:///../../node_modules/@next-core/http/dist/esm/index.js"],"sourcesContent":["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 _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 checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export const fetch = (input, init) => {\n // Support older browsers which default credentials is \"omit\".\n // Ref https://github.com/whatwg/fetch/pull/585\n const req = new Request(input, Object.assign({\n credentials: \"same-origin\"\n }, init));\n return self.fetch(req);\n};\n//# sourceMappingURL=fetch.js.map","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport class HttpFetchError extends Error {\n constructor(message) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(message);\n this.name = \"HttpFetchError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpFetchError);\n }\n }\n}\nexport class HttpResponseError extends Error {\n constructor(response, responseJson) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(response.statusText);\n _defineProperty(this, \"response\", void 0);\n _defineProperty(this, \"responseJson\", void 0);\n this.name = \"HttpResponseError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpResponseError);\n }\n this.response = response;\n this.responseJson = responseJson;\n }\n}\nexport class HttpParseError extends Error {\n constructor(response) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(response.statusText);\n _defineProperty(this, \"response\", void 0);\n this.name = \"HttpParseError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpParseError);\n }\n this.response = response;\n }\n}\nexport class HttpAbortError extends Error {\n constructor(message) {\n super(message);\n this.name = \"HttpAbortError\";\n }\n}\n//# sourceMappingURL=errors.js.map","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport default class InterceptorManager {\n constructor() {\n _defineProperty(this, \"handlers\", []);\n }\n use(onFulfilled, onRejected) {\n this.handlers.push({\n fulfilled: onFulfilled,\n rejected: onRejected\n });\n return this.handlers.length - 1;\n }\n eject(id) {\n // istanbul ignore else\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n forEach(fn) {\n this.handlers.forEach(handler => {\n // istanbul ignore else\n if (handler !== null) {\n fn(handler);\n }\n });\n }\n}\n//# sourceMappingURL=InterceptorManager.js.map","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nimport { fetch } from \"./fetch.js\";\nimport { HttpAbortError, HttpFetchError, HttpParseError, HttpResponseError } from \"./errors.js\";\nimport InterceptorManager from \"./InterceptorManager.js\";\nfunction isNil(value) {\n return value === undefined || value === null;\n}\nconst base = document.querySelector(\"base\");\nconst fullBaseHref = base ? base.href : location.origin + \"/\";\n/**\n * Detect whether the input is a native browser abort error.\n *\n * @ref https://developer.mozilla.org/en-US/docs/Web/API/DOMException\n */\nexport const isHttpAbortError = error => error instanceof DOMException && error.code === 20;\nconst request = async (url, init, config) => {\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async (resolve, reject) => {\n let response;\n config.url = url;\n let {\n responseType\n } = config.options || {};\n if (!responseType) {\n // Defaults to `json`\n responseType = \"json\";\n }\n try {\n response = await fetch(url, init);\n } catch (e) {\n reject(isHttpAbortError(e) ? new HttpAbortError(e.toString()) : new HttpFetchError(e.toString()));\n return;\n }\n if (!response.ok) {\n let responseJson;\n try {\n responseJson = await response.json();\n } catch {\n // Do nothing.\n }\n reject(new HttpResponseError(response, responseJson));\n return;\n }\n let data;\n try {\n data = await response[responseType]();\n } catch (e) {\n reject(isHttpAbortError(e) ? new HttpAbortError(e.toString()) : new HttpParseError(response));\n return;\n }\n const res = {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n data\n };\n resolve(res);\n });\n};\nexport const getUrlWithParams = (url, params) => {\n if (params) {\n const parsedUrl = new URL(url, fullBaseHref);\n if (params instanceof URLSearchParams) {\n params.forEach(function (value, key) {\n parsedUrl.searchParams.append(key, value);\n });\n } else {\n Object.entries(params).forEach(_ref => {\n let [key, value] = _ref;\n if (Array.isArray(value)) {\n value.forEach(v => {\n parsedUrl.searchParams.append(key, isNil(v) ? \"\" : v);\n });\n } else {\n parsedUrl.searchParams.append(key, isNil(value) ? \"\" : value);\n }\n });\n }\n const {\n href\n } = parsedUrl;\n if (href.startsWith(fullBaseHref)) {\n return href.substr(fullBaseHref.length);\n }\n return href;\n }\n return url;\n};\nconst getBodyAndHeaders = (data, headers) => {\n if (data !== undefined) {\n // `new Headers(undefined)` will throw a TypeError in older browsers (chrome 58).\n // https://bugs.chromium.org/p/chromium/issues/detail?id=335871\n const parsedHeaders = new Headers(headers || {});\n const contentTypeHeader = \"Content-Type\";\n let body = data;\n // If `Content-Type` already provided, ignore detecting content type.\n if (!parsedHeaders.has(contentTypeHeader)) {\n if (typeof data === \"string\") {\n parsedHeaders.set(contentTypeHeader, \"application/x-www-form-urlencoded\");\n } else if (data instanceof FormData) {\n // Do nothing\n } else {\n parsedHeaders.set(contentTypeHeader, \"application/json\");\n body = JSON.stringify(data);\n }\n }\n return {\n body,\n headers: parsedHeaders\n };\n }\n return {\n headers\n };\n};\nconst simpleRequest = (method, url, config) => {\n const {\n params,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n responseType,\n interceptorParams,\n observe,\n noAbortOnRouteChange,\n useCache,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...requestInit\n } = config.options || {};\n return request(getUrlWithParams(url, params), {\n ...requestInit,\n method\n }, config);\n};\nconst requestWithBody = (method, url, data, config) => {\n const {\n params,\n headers,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n responseType,\n interceptorParams,\n observe,\n noAbortOnRouteChange,\n useCache,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...requestInit\n } = config.options || {};\n return request(getUrlWithParams(url, params), {\n ...requestInit,\n method,\n ...getBodyAndHeaders(data, headers)\n }, config);\n};\nconst defaultAdapter = config => {\n const {\n url,\n method,\n data\n } = config;\n\n // \"DELETE\", \"GET\", \"HEAD\" methods.\n if ([\"DELETE\", \"GET\", \"HEAD\"].includes(config.method)) {\n return simpleRequest(method, url, config);\n }\n\n // \"POST\", \"PUT\" , \"PATCH\" methods.\n return requestWithBody(method, url, data, config);\n};\nvar _adapter = /*#__PURE__*/new WeakMap();\nvar _Http_brand = /*#__PURE__*/new WeakSet();\nclass Http {\n constructor(_config) {\n var _this = this;\n _classPrivateMethodInitSpec(this, _Http_brand);\n _defineProperty(this, \"interceptors\", void 0);\n _classPrivateFieldInitSpec(this, _adapter, defaultAdapter);\n _defineProperty(this, \"request\", async (url, init, options) => {\n const {\n body,\n method,\n ...requestInit\n } = init || {};\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n data: body,\n method: method || \"GET\",\n options: {\n ...(options || {}),\n ...requestInit\n }\n });\n });\n _defineProperty(this, \"simpleRequest\", function (method, url) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _assertClassBrand(_Http_brand, _this, _fetch).call(_this, {\n url,\n method,\n options\n });\n });\n _defineProperty(this, \"requestWithBody\", function (method, url, data) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return _assertClassBrand(_Http_brand, _this, _fetch).call(_this, {\n url,\n method,\n data,\n options\n });\n });\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n if (_config !== null && _config !== void 0 && _config.adapter) {\n _classPrivateFieldSet(_adapter, this, _config.adapter);\n }\n }\n getUrlWithParams(url, params) {\n return getUrlWithParams(url, params);\n }\n getBodyAndHeaders(data, headers) {\n return getBodyAndHeaders(data, headers);\n }\n get(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"GET\",\n options\n });\n }\n delete(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"DELETE\",\n options\n });\n }\n head(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"HEAD\",\n options\n });\n }\n post(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"POST\",\n data,\n options\n });\n }\n put(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"PUT\",\n data,\n options\n });\n }\n patch(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"PATCH\",\n data,\n options\n });\n }\n}\nfunction _fetch(config) {\n const chain = [];\n let promise = Promise.resolve(config);\n this.interceptors.request.forEach(interceptor => {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n chain.push(config => _classPrivateFieldGet(_adapter, this).call(this, config), undefined);\n this.interceptors.response.forEach(interceptor => {\n chain.push(res => {\n var _interceptor$fulfille;\n return (_interceptor$fulfille = interceptor.fulfilled) === null || _interceptor$fulfille === void 0 ? void 0 : _interceptor$fulfille.call(interceptor, res, config);\n }, error => {\n var _interceptor$rejected;\n return (_interceptor$rejected = interceptor.rejected) === null || _interceptor$rejected === void 0 ? void 0 : _interceptor$rejected.call(interceptor, error, config);\n });\n });\n chain.push(response => {\n var _config$options;\n return ((_config$options = config.options) === null || _config$options === void 0 ? void 0 : _config$options.observe) === \"response\" ? response : response.data;\n }, undefined);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n return promise;\n}\nlet http = new Http();\nfunction createHttpInstance(config) {\n http = new Http(config);\n}\nexport { http, createHttpInstance, defaultAdapter };\n//# sourceMappingURL=http.js.map","var _window$BRICK_NEXT_VE;\n// istanbul ignore file\n// Make v3 bricks compatible with Brick Next v2.\nimport * as HttpModuleV3 from \"./exports.js\";\nlet HttpModule;\nlet HttpModuleV2;\nconst {\n dll\n} = window;\nif (dll && (_window$BRICK_NEXT_VE = window.BRICK_NEXT_VERSIONS) !== null && _window$BRICK_NEXT_VE !== void 0 && (_window$BRICK_NEXT_VE = _window$BRICK_NEXT_VE[\"brick-container\"]) !== null && _window$BRICK_NEXT_VE !== void 0 && _window$BRICK_NEXT_VE.startsWith(\"2.\") && (HttpModuleV2 = dll(\"JxWY\"))) {\n HttpModule = HttpModuleV2;\n} else {\n HttpModule = HttpModuleV3;\n}\nconst {\n fetch,\n HttpFetchError,\n HttpResponseError,\n HttpParseError,\n HttpAbortError,\n http,\n isHttpAbortError,\n createHttpInstance,\n defaultAdapter\n} = HttpModule;\nexport { fetch, HttpFetchError, HttpResponseError, HttpParseError, HttpAbortError, http, isHttpAbortError, createHttpInstance, defaultAdapter };\n//# sourceMappingURL=index.js.map"],"names":["_assertClassBrand","e","t","n","has","arguments","length","TypeError","_checkPrivateRedeclaration","obj","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","value","set","_classPrivateFieldSet2","r","_classPrivateMethodInitSpec","privateSet","add","fetch","input","init","req","Request","Object","assign","credentials","self","HttpFetchError","Error","constructor","message","super","this","name","captureStackTrace","HttpResponseError","response","responseJson","statusText","HttpParseError","HttpAbortError","InterceptorManager","use","onFulfilled","onRejected","handlers","push","fulfilled","rejected","eject","id","forEach","fn","handler","isNil","base","document","querySelector","fullBaseHref","href","location","origin","isHttpAbortError","error","DOMException","code","request","async","url","config","Promise","resolve","reject","data","responseType","options","toString","ok","status","headers","json","getUrlWithParams","params","parsedUrl","URL","URLSearchParams","key","searchParams","append","entries","_ref","Array","isArray","v","startsWith","substr","getBodyAndHeaders","undefined","parsedHeaders","Headers","contentTypeHeader","body","FormData","JSON","stringify","defaultAdapter","method","includes","interceptorParams","observe","noAbortOnRouteChange","useCache","requestInit","simpleRequest","requestWithBody","_adapter","WeakMap","_Http_brand","WeakSet","Http","_config","_this","_fetch","call","interceptors","adapter","head","post","put","patch","chain","promise","interceptor","res","_interceptor$fulfille","_interceptor$rejected","_config$options","then","shift","http","createHttpInstance","_window$BRICK_NEXT_VE","HttpModule","HttpModuleV2","dll","window","BRICK_NEXT_VERSIONS"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/1370.cbe87896.js","mappings":"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","sources":["webpack:///../../node_modules/@babel/runtime/helpers/esm/assertClassBrand.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/classPrivateMethodInitSpec.js","webpack:///../../node_modules/@next-core/http/dist/esm/fetch.js","webpack:///../../node_modules/@next-core/http/dist/esm/errors.js","webpack:///../../node_modules/@next-core/http/dist/esm/InterceptorManager.js","webpack:///../../node_modules/@next-core/http/dist/esm/http.js","webpack:///../../node_modules/@next-core/http/dist/esm/index.js"],"sourcesContent":["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 _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 checkPrivateRedeclaration from \"./checkPrivateRedeclaration.js\";\nexport default function _classPrivateMethodInitSpec(obj, privateSet) {\n checkPrivateRedeclaration(obj, privateSet);\n privateSet.add(obj);\n}","export const fetch = (input, init) => {\n // Support older browsers which default credentials is \"omit\".\n // Ref https://github.com/whatwg/fetch/pull/585\n const req = new Request(input, Object.assign({\n credentials: \"same-origin\"\n }, init));\n return self.fetch(req);\n};\n//# sourceMappingURL=fetch.js.map","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport class HttpFetchError extends Error {\n constructor(message) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(message);\n this.name = \"HttpFetchError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpFetchError);\n }\n }\n}\nexport class HttpResponseError extends Error {\n constructor(response, responseJson) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(response.statusText);\n _defineProperty(this, \"response\", void 0);\n _defineProperty(this, \"responseJson\", void 0);\n this.name = \"HttpResponseError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpResponseError);\n }\n this.response = response;\n this.responseJson = responseJson;\n }\n}\nexport class HttpParseError extends Error {\n constructor(response) {\n // Pass remaining arguments (including vendor specific ones) to parent constructor\n super(response.statusText);\n _defineProperty(this, \"response\", void 0);\n this.name = \"HttpParseError\";\n\n // Maintains proper stack trace for where our error was thrown (only available on V8)\n // istanbul ignore else\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, HttpParseError);\n }\n this.response = response;\n }\n}\nexport class HttpAbortError extends Error {\n constructor(message) {\n super(message);\n this.name = \"HttpAbortError\";\n }\n}\n//# sourceMappingURL=errors.js.map","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport default class InterceptorManager {\n constructor() {\n _defineProperty(this, \"handlers\", []);\n }\n use(onFulfilled, onRejected) {\n this.handlers.push({\n fulfilled: onFulfilled,\n rejected: onRejected\n });\n return this.handlers.length - 1;\n }\n eject(id) {\n // istanbul ignore else\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n forEach(fn) {\n this.handlers.forEach(handler => {\n // istanbul ignore else\n if (handler !== null) {\n fn(handler);\n }\n });\n }\n}\n//# sourceMappingURL=InterceptorManager.js.map","import _classPrivateMethodInitSpec from \"@babel/runtime/helpers/classPrivateMethodInitSpec\";\nimport _classPrivateFieldInitSpec from \"@babel/runtime/helpers/classPrivateFieldInitSpec\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classPrivateFieldGet from \"@babel/runtime/helpers/classPrivateFieldGet2\";\nimport _assertClassBrand from \"@babel/runtime/helpers/assertClassBrand\";\nimport _classPrivateFieldSet from \"@babel/runtime/helpers/classPrivateFieldSet2\";\nimport { fetch } from \"./fetch.js\";\nimport { HttpAbortError, HttpFetchError, HttpParseError, HttpResponseError } from \"./errors.js\";\nimport InterceptorManager from \"./InterceptorManager.js\";\nfunction isNil(value) {\n return value === undefined || value === null;\n}\nconst base = document.querySelector(\"base\");\nconst fullBaseHref = base ? base.href : location.origin + \"/\";\n/**\n * Detect whether the input is a native browser abort error.\n *\n * @ref https://developer.mozilla.org/en-US/docs/Web/API/DOMException\n */\nexport const isHttpAbortError = error => error instanceof DOMException && error.code === 20;\nconst request = async (url, init, config) => {\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async (resolve, reject) => {\n let response;\n config.url = url;\n let {\n responseType\n } = config.options || {};\n if (!responseType) {\n // Defaults to `json`\n responseType = \"json\";\n }\n try {\n response = await fetch(url, init);\n } catch (e) {\n reject(isHttpAbortError(e) ? new HttpAbortError(e.toString()) : new HttpFetchError(e.toString()));\n return;\n }\n if (!response.ok) {\n let responseJson;\n try {\n responseJson = await response.json();\n } catch {\n // Do nothing.\n }\n reject(new HttpResponseError(response, responseJson));\n return;\n }\n let data;\n try {\n data = await response[responseType]();\n } catch (e) {\n reject(isHttpAbortError(e) ? new HttpAbortError(e.toString()) : new HttpParseError(response));\n return;\n }\n const res = {\n status: response.status,\n statusText: response.statusText,\n headers: response.headers,\n data\n };\n resolve(res);\n });\n};\nexport const getUrlWithParams = (url, params) => {\n if (params) {\n const parsedUrl = new URL(url, fullBaseHref);\n if (params instanceof URLSearchParams) {\n params.forEach(function (value, key) {\n parsedUrl.searchParams.append(key, value);\n });\n } else {\n Object.entries(params).forEach(_ref => {\n let [key, value] = _ref;\n if (Array.isArray(value)) {\n value.forEach(v => {\n parsedUrl.searchParams.append(key, isNil(v) ? \"\" : v);\n });\n } else {\n parsedUrl.searchParams.append(key, isNil(value) ? \"\" : value);\n }\n });\n }\n const {\n href\n } = parsedUrl;\n if (href.startsWith(fullBaseHref)) {\n return href.substr(fullBaseHref.length);\n }\n return href;\n }\n return url;\n};\nconst getBodyAndHeaders = (data, headers) => {\n if (data !== undefined) {\n // `new Headers(undefined)` will throw a TypeError in older browsers (chrome 58).\n // https://bugs.chromium.org/p/chromium/issues/detail?id=335871\n const parsedHeaders = new Headers(headers || {});\n const contentTypeHeader = \"Content-Type\";\n let body = data;\n // If `Content-Type` already provided, ignore detecting content type.\n if (!parsedHeaders.has(contentTypeHeader)) {\n if (typeof data === \"string\") {\n parsedHeaders.set(contentTypeHeader, \"application/x-www-form-urlencoded\");\n } else if (data instanceof FormData) {\n // Do nothing\n } else {\n parsedHeaders.set(contentTypeHeader, \"application/json\");\n body = JSON.stringify(data);\n }\n }\n return {\n body,\n headers: parsedHeaders\n };\n }\n return {\n headers\n };\n};\nconst simpleRequest = (method, url, config) => {\n const {\n params,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n responseType,\n interceptorParams,\n observe,\n noAbortOnRouteChange,\n useCache,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...requestInit\n } = config.options || {};\n return request(getUrlWithParams(url, params), {\n ...requestInit,\n method\n }, config);\n};\nconst requestWithBody = (method, url, data, config) => {\n const {\n params,\n headers,\n /* eslint-disable @typescript-eslint/no-unused-vars */\n responseType,\n interceptorParams,\n observe,\n noAbortOnRouteChange,\n useCache,\n /* eslint-enable @typescript-eslint/no-unused-vars */\n ...requestInit\n } = config.options || {};\n return request(getUrlWithParams(url, params), {\n ...requestInit,\n method,\n ...getBodyAndHeaders(data, headers)\n }, config);\n};\nconst defaultAdapter = config => {\n const {\n url,\n method,\n data\n } = config;\n\n // \"DELETE\", \"GET\", \"HEAD\" methods.\n if ([\"DELETE\", \"GET\", \"HEAD\"].includes(config.method)) {\n return simpleRequest(method, url, config);\n }\n\n // \"POST\", \"PUT\" , \"PATCH\" methods.\n return requestWithBody(method, url, data, config);\n};\nvar _adapter = /*#__PURE__*/new WeakMap();\nvar _Http_brand = /*#__PURE__*/new WeakSet();\nclass Http {\n constructor(_config) {\n var _this = this;\n _classPrivateMethodInitSpec(this, _Http_brand);\n _defineProperty(this, \"interceptors\", void 0);\n _classPrivateFieldInitSpec(this, _adapter, defaultAdapter);\n _defineProperty(this, \"request\", async (url, init, options) => {\n const {\n body,\n method,\n ...requestInit\n } = init || {};\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n data: body,\n method: method || \"GET\",\n options: {\n ...(options || {}),\n ...requestInit\n }\n });\n });\n _defineProperty(this, \"simpleRequest\", function (method, url) {\n let options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n return _assertClassBrand(_Http_brand, _this, _fetch).call(_this, {\n url,\n method,\n options\n });\n });\n _defineProperty(this, \"requestWithBody\", function (method, url, data) {\n let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n return _assertClassBrand(_Http_brand, _this, _fetch).call(_this, {\n url,\n method,\n data,\n options\n });\n });\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n if (_config !== null && _config !== void 0 && _config.adapter) {\n _classPrivateFieldSet(_adapter, this, _config.adapter);\n }\n }\n getUrlWithParams(url, params) {\n return getUrlWithParams(url, params);\n }\n getBodyAndHeaders(data, headers) {\n return getBodyAndHeaders(data, headers);\n }\n get(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"GET\",\n options\n });\n }\n delete(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"DELETE\",\n options\n });\n }\n head(url, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"HEAD\",\n options\n });\n }\n post(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"POST\",\n data,\n options\n });\n }\n put(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"PUT\",\n data,\n options\n });\n }\n patch(url, data, options) {\n return _assertClassBrand(_Http_brand, this, _fetch).call(this, {\n url,\n method: \"PATCH\",\n data,\n options\n });\n }\n}\nfunction _fetch(config) {\n const chain = [];\n let promise = Promise.resolve(config);\n this.interceptors.request.forEach(interceptor => {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n chain.push(config => _classPrivateFieldGet(_adapter, this).call(this, config), undefined);\n this.interceptors.response.forEach(interceptor => {\n chain.push(res => {\n var _interceptor$fulfille;\n return (_interceptor$fulfille = interceptor.fulfilled) === null || _interceptor$fulfille === void 0 ? void 0 : _interceptor$fulfille.call(interceptor, res, config);\n }, error => {\n var _interceptor$rejected;\n return (_interceptor$rejected = interceptor.rejected) === null || _interceptor$rejected === void 0 ? void 0 : _interceptor$rejected.call(interceptor, error, config);\n });\n });\n chain.push(response => {\n var _config$options;\n return ((_config$options = config.options) === null || _config$options === void 0 ? void 0 : _config$options.observe) === \"response\" ? response : response.data;\n }, undefined);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n return promise;\n}\nlet http = new Http();\nfunction createHttpInstance(config) {\n http = new Http(config);\n}\nexport { http, createHttpInstance, defaultAdapter };\n//# sourceMappingURL=http.js.map","var _window$BRICK_NEXT_VE;\n// istanbul ignore file\n// Make v3 bricks compatible with Brick Next v2.\nimport * as HttpModuleV3 from \"./exports.js\";\nlet HttpModule;\nlet HttpModuleV2;\nconst {\n dll\n} = window;\nif (dll && (_window$BRICK_NEXT_VE = window.BRICK_NEXT_VERSIONS) !== null && _window$BRICK_NEXT_VE !== void 0 && (_window$BRICK_NEXT_VE = _window$BRICK_NEXT_VE[\"brick-container\"]) !== null && _window$BRICK_NEXT_VE !== void 0 && _window$BRICK_NEXT_VE.startsWith(\"2.\") && (HttpModuleV2 = dll(\"JxWY\"))) {\n HttpModule = HttpModuleV2;\n} else {\n HttpModule = HttpModuleV3;\n}\nconst {\n fetch,\n HttpFetchError,\n HttpResponseError,\n HttpParseError,\n HttpAbortError,\n http,\n isHttpAbortError,\n createHttpInstance,\n defaultAdapter\n} = HttpModule;\nexport { fetch, HttpFetchError, HttpResponseError, HttpParseError, HttpAbortError, http, isHttpAbortError, createHttpInstance, defaultAdapter };\n//# sourceMappingURL=index.js.map"],"names":["_assertClassBrand","e","t","n","has","arguments","length","TypeError","_checkPrivateRedeclaration","obj","privateCollection","_classPrivateFieldGet2","s","a","get","_classPrivateFieldInitSpec","privateMap","value","set","_classPrivateFieldSet2","r","_classPrivateMethodInitSpec","privateSet","add","fetch","input","init","req","Request","Object","assign","credentials","self","HttpFetchError","Error","constructor","message","super","this","name","captureStackTrace","HttpResponseError","response","responseJson","statusText","HttpParseError","HttpAbortError","InterceptorManager","use","onFulfilled","onRejected","handlers","push","fulfilled","rejected","eject","id","forEach","fn","handler","isNil","base","document","querySelector","fullBaseHref","href","location","origin","isHttpAbortError","error","DOMException","code","request","async","url","config","Promise","resolve","reject","data","responseType","options","toString","ok","status","headers","json","getUrlWithParams","params","parsedUrl","URL","URLSearchParams","key","searchParams","append","entries","_ref","Array","isArray","v","startsWith","substr","getBodyAndHeaders","undefined","parsedHeaders","Headers","contentTypeHeader","body","FormData","JSON","stringify","defaultAdapter","method","includes","interceptorParams","observe","noAbortOnRouteChange","useCache","requestInit","simpleRequest","requestWithBody","_adapter","WeakMap","_Http_brand","WeakSet","Http","_config","_this","_fetch","call","interceptors","adapter","head","post","put","patch","chain","promise","interceptor","res","_interceptor$fulfille","_interceptor$rejected","_config$options","then","shift","http","createHttpInstance","_window$BRICK_NEXT_VE","HttpModule","HttpModuleV2","dll","window","BRICK_NEXT_VERSIONS"],"sourceRoot":""}
@@ -1,2 +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(9435),i=n(2843),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 w(){return(await(0,l.K)({page:1,pageSize:f},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0})).list}function v(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 w(),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)((()=>{e&&z(A.getItem(b)??[])}),[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=>{let{type:t,id:n}=e;const s=A.getItem(b)??[],r=s.findIndex((e=>e.type===t&&e.id===n));r>-1&&s.splice(r,1),s.unshift({type:t,id:n}),s.length>h&&s.pop(),A.setItem(b,s)}),[]),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):w().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 v(e,n);case"custom":return k(e,n);case"dir":{const t=e.items.map((e=>"app"===e.type?v(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 v(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(1389),r=n(279);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(7318);function r(e,t){if(!e)return t;const n=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(0,s.i18nText)(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.8d7b5fdf.js.map
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(8581),i=n(7960),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 w(){return(await(0,l.K)({page:1,pageSize:f},{interceptorParams:{ignoreLoadingBar:!0},noAbortOnRouteChange:!0})).list}function v(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 w(),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)((()=>{e&&z(A.getItem(b)??[])}),[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=>{let{type:t,id:n}=e;const s=A.getItem(b)??[],r=s.findIndex((e=>e.type===t&&e.id===n));r>-1&&s.splice(r,1),s.unshift({type:t,id:n}),s.length>h&&s.pop(),A.setItem(b,s)}),[]),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):w().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 v(e,n);case"custom":return k(e,n);case"dir":{const t=e.items.map((e=>"app"===e.type?v(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 v(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(1389),r=n(279);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(7318);function r(e,t){if(!e)return t;const n=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(0,s.i18nText)(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.57afe59f.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunks/2133.8d7b5fdf.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","getItem","fetch","handleHttpError","startFetchLaunchpadInfo","startFetchFavorites","_getRuntime","getRuntime","getFeatureFlags","startFetchPlatformCategories","visits","filter","Boolean","pushRecentVisit","useCallback","_ref","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","i18nData","Object","fromEntries","entries","lang","resources","_ref2","i18nText","prefix","arguments","undefined","value","JSON","stringify","parse","removeItem","clear"],"sourceRoot":""}
1
+ {"version":3,"file":"chunks/2133.57afe59f.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","getItem","fetch","handleHttpError","startFetchLaunchpadInfo","startFetchFavorites","_getRuntime","getRuntime","getFeatureFlags","startFetchPlatformCategories","visits","filter","Boolean","pushRecentVisit","useCallback","_ref","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","i18nData","Object","fromEntries","entries","lang","resources","_ref2","i18nText","prefix","arguments","undefined","value","JSON","stringify","parse","removeItem","clear"],"sourceRoot":""}
@@ -0,0 +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
@@ -0,0 +1,23 @@
1
+ /**! @contract easyops.api.cmdb.instance.PostSearchV3@1.1.0 */
2
+
3
+ /**! @contract easyops.api.sys_setting.announce.IgnoreAnnounce@1.0.1 */
4
+
5
+ /**! @contract easyops.api.sys_setting.announce.ListEffectiveAnnounce@1.0.1 */
6
+
7
+ /**! @contract easyops.api.sys_setting.announce.PollAnnounce@1.0.0 */
8
+
9
+ /**! @contract easyops.api.user_service.launchpad.CreateCollection@1.0.0 */
10
+
11
+ /**! @contract easyops.api.user_service.launchpad.CreateCollectionV2@1.0.0 */
12
+
13
+ /**! @contract easyops.api.user_service.launchpad.DeleteCollection@1.0.0 */
14
+
15
+ /**! @contract easyops.api.user_service.launchpad.DeleteCollectionV2@1.0.0 */
16
+
17
+ /**! @contract easyops.api.user_service.launchpad.ListCollection@1.0.0 */
18
+
19
+ /**! @contract easyops.api.user_service.launchpad.ListCollectionV2@1.0.0 */
20
+
21
+ /**! @contract easyops.api.user_service.my_collection.ListMyCollection@1.0.0 */
22
+
23
+ /**! @contract easyops.api.user_service.my_collection.UpsertMyCollection@1.0.0 */