@perses-dev/histogram-chart-plugin 0.11.0 → 0.12.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__mf/css/async/133.85c2cbf6.css +1 -0
- package/__mf/font/inter-cyrillic-300-normal.432f2b21.woff +0 -0
- package/__mf/font/inter-cyrillic-300-normal.9da91009.woff2 +0 -0
- package/__mf/font/inter-cyrillic-400-normal.372704ff.woff2 +0 -0
- package/__mf/font/inter-cyrillic-400-normal.a6b6ef6f.woff +0 -0
- package/__mf/font/inter-cyrillic-500-normal.7c15bba8.woff2 +0 -0
- package/__mf/font/inter-cyrillic-500-normal.b9f8c929.woff +0 -0
- package/__mf/font/inter-cyrillic-600-normal.2f42892a.woff2 +0 -0
- package/__mf/font/inter-cyrillic-600-normal.c3987adc.woff +0 -0
- package/__mf/font/inter-cyrillic-700-normal.93eba3c3.woff +0 -0
- package/__mf/font/inter-cyrillic-700-normal.e9e5b2dc.woff2 +0 -0
- package/__mf/font/inter-cyrillic-900-normal.f285bd7a.woff2 +0 -0
- package/__mf/font/inter-cyrillic-900-normal.ffbd8a3a.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-300-normal.95bb9038.woff2 +0 -0
- package/__mf/font/inter-cyrillic-ext-300-normal.cfc143a9.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-400-normal.2a31c04b.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-400-normal.f572b170.woff2 +0 -0
- package/__mf/font/inter-cyrillic-ext-500-normal.5a6bb1da.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-500-normal.fe0d9b14.woff2 +0 -0
- package/__mf/font/inter-cyrillic-ext-600-normal.ecbdecad.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-600-normal.f7b3c15b.woff2 +0 -0
- package/__mf/font/inter-cyrillic-ext-700-normal.4b4022a6.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-700-normal.74b516d2.woff2 +0 -0
- package/__mf/font/inter-cyrillic-ext-900-normal.9970ddb5.woff +0 -0
- package/__mf/font/inter-cyrillic-ext-900-normal.a0d59adc.woff2 +0 -0
- package/__mf/font/inter-greek-300-normal.0d7be683.woff2 +0 -0
- package/__mf/font/inter-greek-300-normal.8f0b988e.woff +0 -0
- package/__mf/font/inter-greek-400-normal.cc58c11b.woff +0 -0
- package/__mf/font/inter-greek-400-normal.d7020e3c.woff2 +0 -0
- package/__mf/font/inter-greek-500-normal.d9a33207.woff +0 -0
- package/__mf/font/inter-greek-500-normal.f41f43db.woff2 +0 -0
- package/__mf/font/inter-greek-600-normal.4ec0c1c1.woff +0 -0
- package/__mf/font/inter-greek-600-normal.cc532937.woff2 +0 -0
- package/__mf/font/inter-greek-700-normal.5ec6c758.woff +0 -0
- package/__mf/font/inter-greek-700-normal.97f0eeeb.woff2 +0 -0
- package/__mf/font/inter-greek-900-normal.46b66369.woff2 +0 -0
- package/__mf/font/inter-greek-900-normal.9ae3a3c5.woff +0 -0
- package/__mf/font/inter-greek-ext-300-normal.10247a66.woff2 +0 -0
- package/__mf/font/inter-greek-ext-300-normal.4668e5cb.woff +0 -0
- package/__mf/font/inter-greek-ext-400-normal.4ce1df5d.woff2 +0 -0
- package/__mf/font/inter-greek-ext-400-normal.88ede1ea.woff +0 -0
- package/__mf/font/inter-greek-ext-500-normal.7a4aa726.woff +0 -0
- package/__mf/font/inter-greek-ext-500-normal.cbd51e2d.woff2 +0 -0
- package/__mf/font/inter-greek-ext-600-normal.089a95ee.woff +0 -0
- package/__mf/font/inter-greek-ext-600-normal.1f33d317.woff2 +0 -0
- package/__mf/font/inter-greek-ext-700-normal.31f1075d.woff +0 -0
- package/__mf/font/inter-greek-ext-700-normal.827cd618.woff2 +0 -0
- package/__mf/font/inter-greek-ext-900-normal.531bcee7.woff +0 -0
- package/__mf/font/inter-greek-ext-900-normal.8a9b36b9.woff2 +0 -0
- package/__mf/font/inter-latin-300-normal.15fb600d.woff2 +0 -0
- package/__mf/font/inter-latin-300-normal.6f95f590.woff +0 -0
- package/__mf/font/inter-latin-400-normal.2c7a775c.woff +0 -0
- package/__mf/font/inter-latin-400-normal.ef6d3f52.woff2 +0 -0
- package/__mf/font/inter-latin-500-normal.b7b43ace.woff2 +0 -0
- package/__mf/font/inter-latin-500-normal.cb4c8ceb.woff +0 -0
- package/__mf/font/inter-latin-600-normal.8fb1a964.woff2 +0 -0
- package/__mf/font/inter-latin-600-normal.ce0f5f43.woff +0 -0
- package/__mf/font/inter-latin-700-normal.953b7aa5.woff2 +0 -0
- package/__mf/font/inter-latin-700-normal.9c21d4dc.woff +0 -0
- package/__mf/font/inter-latin-900-normal.2a8028ec.woff2 +0 -0
- package/__mf/font/inter-latin-900-normal.fa252135.woff +0 -0
- package/__mf/font/inter-latin-ext-300-normal.167cc8c9.woff2 +0 -0
- package/__mf/font/inter-latin-ext-300-normal.f695be66.woff +0 -0
- package/__mf/font/inter-latin-ext-400-normal.32a25442.woff2 +0 -0
- package/__mf/font/inter-latin-ext-400-normal.4edcaace.woff +0 -0
- package/__mf/font/inter-latin-ext-500-normal.a19a84a6.woff +0 -0
- package/__mf/font/inter-latin-ext-500-normal.d9b491de.woff2 +0 -0
- package/__mf/font/inter-latin-ext-600-normal.38b075d8.woff2 +0 -0
- package/__mf/font/inter-latin-ext-600-normal.49faa47a.woff +0 -0
- package/__mf/font/inter-latin-ext-700-normal.93534b50.woff +0 -0
- package/__mf/font/inter-latin-ext-700-normal.b63daa1a.woff2 +0 -0
- package/__mf/font/inter-latin-ext-900-normal.0efdb307.woff +0 -0
- package/__mf/font/inter-latin-ext-900-normal.9c0fc2c7.woff2 +0 -0
- package/__mf/font/inter-vietnamese-300-normal.aad496d8.woff +0 -0
- package/__mf/font/inter-vietnamese-300-normal.ad9ef503.woff2 +0 -0
- package/__mf/font/inter-vietnamese-400-normal.a9dd2faf.woff +0 -0
- package/__mf/font/inter-vietnamese-400-normal.de4fc44f.woff2 +0 -0
- package/__mf/font/inter-vietnamese-500-normal.7c0a695f.woff2 +0 -0
- package/__mf/font/inter-vietnamese-500-normal.a3a73b95.woff +0 -0
- package/__mf/font/inter-vietnamese-600-normal.9d518599.woff2 +0 -0
- package/__mf/font/inter-vietnamese-600-normal.c5ce3fcb.woff +0 -0
- package/__mf/font/inter-vietnamese-700-normal.bc68b199.woff +0 -0
- package/__mf/font/inter-vietnamese-700-normal.faf12809.woff2 +0 -0
- package/__mf/font/inter-vietnamese-900-normal.2b782045.woff +0 -0
- package/__mf/font/inter-vietnamese-900-normal.e639b65a.woff2 +0 -0
- package/__mf/js/HistogramChart.56258166.js +7 -0
- package/__mf/js/async/{121.965a8d1f.js → 121.80bade4a.js} +2 -2
- package/__mf/js/async/133.6f0771bf.js +144 -0
- package/__mf/js/async/{12.97ac25db.js.LICENSE.txt → 133.6f0771bf.js.LICENSE.txt} +42 -2
- package/__mf/js/async/39.c873e4b4.js +1 -0
- package/__mf/js/async/392.61cbfb70.js +2 -0
- package/__mf/js/async/470.0d31a960.js +2 -0
- package/__mf/js/async/888.a6ffb759.js +1 -0
- package/__mf/js/async/941.4f06d1da.js +2 -0
- package/__mf/js/async/953.17304f5a.js +10 -0
- package/__mf/js/async/{953.aa8a7194.js.LICENSE.txt → 953.17304f5a.js.LICENSE.txt} +1 -1
- package/__mf/js/async/963.d584ed77.js +1 -0
- package/__mf/js/async/__federation_expose_HistogramChart.41e65455.js +1 -0
- package/__mf/js/main.2679a0f3.js +7 -0
- package/lib/components/HistogramChart.d.ts +2 -1
- package/lib/components/HistogramChart.d.ts.map +1 -1
- package/lib/components/HistogramChart.js.map +1 -1
- package/lib/components/HistogramChartPanel.d.ts +1 -1
- package/lib/components/HistogramChartPanel.d.ts.map +1 -1
- package/lib/components/HistogramChartPanel.js.map +1 -1
- package/lib/histogram-chart-model.d.ts +2 -1
- package/lib/histogram-chart-model.d.ts.map +1 -1
- package/lib/histogram-chart-model.js.map +1 -1
- package/lib/utils/thresholds.d.ts +1 -2
- package/lib/utils/thresholds.d.ts.map +1 -1
- package/lib/utils/thresholds.js.map +1 -1
- package/mf-manifest.json +37 -30
- package/mf-stats.json +43 -30
- package/package.json +4 -4
- package/__mf/css/async/442.d3010b86.css +0 -1
- package/__mf/css/async/61.d3010b86.css +0 -1
- package/__mf/font/lato-all-300-normal.322bdf14.woff +0 -0
- package/__mf/font/lato-all-400-normal.63513b00.woff +0 -0
- package/__mf/font/lato-all-700-normal.bb27db94.woff +0 -0
- package/__mf/font/lato-all-900-normal.a27049a3.woff +0 -0
- package/__mf/font/lato-latin-300-normal.c5195215.woff2 +0 -0
- package/__mf/font/lato-latin-400-normal.b7ffde23.woff2 +0 -0
- package/__mf/font/lato-latin-700-normal.d5eb20bc.woff2 +0 -0
- package/__mf/font/lato-latin-900-normal.d884a71c.woff2 +0 -0
- package/__mf/font/lato-latin-ext-300-normal.abcc64a9.woff2 +0 -0
- package/__mf/font/lato-latin-ext-400-normal.6ebed106.woff2 +0 -0
- package/__mf/font/lato-latin-ext-700-normal.8697d1d5.woff2 +0 -0
- package/__mf/font/lato-latin-ext-900-normal.20a2b415.woff2 +0 -0
- package/__mf/js/HistogramChart.f6bd8f08.js +0 -6
- package/__mf/js/async/12.97ac25db.js +0 -2
- package/__mf/js/async/161.565de0af.js +0 -144
- package/__mf/js/async/161.565de0af.js.LICENSE.txt +0 -21
- package/__mf/js/async/392.712ee0cf.js +0 -2
- package/__mf/js/async/470.5b01bb4c.js +0 -2
- package/__mf/js/async/65.d32ce093.js +0 -1
- package/__mf/js/async/941.a3204a05.js +0 -2
- package/__mf/js/async/953.aa8a7194.js +0 -10
- package/__mf/js/async/963.b60f0498.js +0 -1
- package/__mf/js/async/__federation_expose_HistogramChart.721e2e2a.js +0 -1
- package/__mf/js/main.26934b75.js +0 -6
- /package/__mf/js/async/{121.965a8d1f.js.LICENSE.txt → 121.80bade4a.js.LICENSE.txt} +0 -0
- /package/__mf/js/async/{392.712ee0cf.js.LICENSE.txt → 392.61cbfb70.js.LICENSE.txt} +0 -0
- /package/__mf/js/async/{470.5b01bb4c.js.LICENSE.txt → 470.0d31a960.js.LICENSE.txt} +0 -0
- /package/__mf/js/async/{941.a3204a05.js.LICENSE.txt → 941.4f06d1da.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self["chunk_HistogramChart "]=self["chunk_HistogramChart "]||[]).push([["963"],{38662(e,t,r){r.r(t),r.d(t,{Immer:()=>X,applyPatches:()=>et,castDraft:()=>ea,castImmutable:()=>ei,createDraft:()=>er,current:()=>q,enableMapSet:()=>G,enablePatches:()=>B,finishDraft:()=>en,freeze:()=>z,immerable:()=>i,isDraft:()=>u,isDraftable:()=>l,nothing:()=>a,original:()=>h,produce:()=>T,produceWithPatches:()=>V,setAutoFreeze:()=>Y,setUseStrictIteration:()=>ee,setUseStrictShallowCopy:()=>Z});var n,a=Symbol.for("immer-nothing"),i=Symbol.for("immer-draftable"),s=Symbol.for("immer-state");function o(e){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var c=Object.getPrototypeOf;function u(e){return!!e&&!!e[s]}function l(e){return!!e&&(_(e)||Array.isArray(e)||!!e[i]||!!e.constructor?.[i]||m(e)||S(e))}var f=Object.prototype.constructor.toString(),p=new WeakMap;function _(e){if(!e||"object"!=typeof e)return!1;let t=Object.getPrototypeOf(e);if(null===t||t===Object.prototype)return!0;let r=Object.hasOwnProperty.call(t,"constructor")&&t.constructor;if(r===Object)return!0;if("function"!=typeof r)return!1;let n=p.get(r);return void 0===n&&(n=Function.toString.call(r),p.set(r,n)),n===f}function h(e){return u(e)||o(15,e),e[s].base_}function d(e,t,r=!0){0===y(e)?(r?Reflect.ownKeys(e):Object.keys(e)).forEach(r=>{t(r,e[r],e)}):e.forEach((r,n)=>t(n,r,e))}function y(e){let t=e[s];return t?t.type_:Array.isArray(e)?1:m(e)?2:3*!!S(e)}function b(e,t){return 2===y(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function v(e,t){return 2===y(e)?e.get(t):e[t]}function g(e,t,r){let n=y(e);2===n?e.set(t,r):3===n?e.add(r):e[t]=r}function m(e){return e instanceof Map}function S(e){return e instanceof Set}function w(e){return e.copy_||e.base_}function P(e,t){if(m(e))return new Map(e);if(S(e))return new Set(e);if(Array.isArray(e))return Array.prototype.slice.call(e);let r=_(e);if(!0!==t&&("class_only"!==t||r)){let t=c(e);return null!==t&&r?{...e}:Object.assign(Object.create(t),e)}{let t=Object.getOwnPropertyDescriptors(e);delete t[s];let r=Reflect.ownKeys(t);for(let n=0;n<r.length;n++){let a=r[n],i=t[a];!1===i.writable&&(i.writable=!0,i.configurable=!0),(i.get||i.set)&&(t[a]={configurable:!0,writable:!0,enumerable:i.enumerable,value:e[a]})}return Object.create(c(e),t)}}function z(e,t=!1){return j(e)||u(e)||!l(e)||(y(e)>1&&Object.defineProperties(e,{set:O,add:O,clear:O,delete:O}),Object.freeze(e),t&&Object.values(e).forEach(e=>z(e,!0))),e}var O={value:function(){o(2)}};function j(e){return null===e||"object"!=typeof e||Object.isFrozen(e)}var M={};function A(e){let t=M[e];return t||o(0,e),t}function k(e,t){t&&(A("Patches"),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function D(e){F(e),e.drafts_.forEach(E),e.drafts_=null}function F(e){e===n&&(n=e.parent_)}function I(e){return n={drafts_:[],parent_:n,immer_:e,canAutoFreeze_:!0,unfinalizedDrafts_:0}}function E(e){let t=e[s];0===t.type_||1===t.type_?t.revoke_():t.revoked_=!0}function x(e,t){t.unfinalizedDrafts_=t.drafts_.length;let r=t.drafts_[0];return void 0!==e&&e!==r?(r[s].modified_&&(D(t),o(4)),l(e)&&(e=C(t,e),t.parent_||N(t,e)),t.patches_&&A("Patches").generateReplacementPatches_(r[s].base_,e,t.patches_,t.inversePatches_)):e=C(t,r,[]),D(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e!==a?e:void 0}function C(e,t,r){if(j(t))return t;let n=e.immer_.shouldUseStrictIteration(),a=t[s];if(!a)return d(t,(n,i)=>U(e,a,t,n,i,r),n),t;if(a.scope_!==e)return t;if(!a.modified_)return N(e,a.base_,!0),a.base_;if(!a.finalized_){a.finalized_=!0,a.scope_.unfinalizedDrafts_--;let t=a.copy_,i=t,s=!1;3===a.type_&&(i=new Set(t),t.clear(),s=!0),d(i,(n,i)=>U(e,a,t,n,i,r,s),n),N(e,t,!1),r&&e.patches_&&A("Patches").generatePatches_(a,r,e.patches_,e.inversePatches_)}return a.copy_}function U(e,t,r,n,a,i,s){if(null==a||"object"!=typeof a&&!s)return;let o=j(a);if(!o||s){if(u(a)){let s=C(e,a,i&&t&&3!==t.type_&&!b(t.assigned_,n)?i.concat(n):void 0);if(g(r,n,s),!u(s))return;e.canAutoFreeze_=!1}else s&&r.add(a);if(l(a)&&!o){if(!e.immer_.autoFreeze_&&e.unfinalizedDrafts_<1||t&&t.base_&&t.base_[n]===a&&o)return;C(e,a),(!t||!t.scope_.parent_)&&"symbol"!=typeof n&&(m(r)?r.has(n):Object.prototype.propertyIsEnumerable.call(r,n))&&N(e,a)}}}function N(e,t,r=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&z(t,r)}var R={get(e,t){if(t===s)return e;let r=w(e);if(!b(r,t)){var n;let a;return n=e,(a=H(r,t))?"value"in a?a.value:a.get?.call(n.draft_):void 0}let a=r[t];return e.finalized_||!l(a)?a:a===K(e.base_,t)?(J(e),e.copy_[t]=$(a,e)):a},has:(e,t)=>t in w(e),ownKeys:e=>Reflect.ownKeys(w(e)),set(e,t,r){let n=H(w(e),t);if(n?.set)return n.set.call(e.draft_,r),!0;if(!e.modified_){let n=K(w(e),t),a=n?.[s];if(a&&a.base_===r)return e.copy_[t]=r,e.assigned_[t]=!1,!0;if((r===n?0!==r||1/r==1/n:r!=r&&n!=n)&&(void 0!==r||b(e.base_,t)))return!0;J(e),L(e)}return!!(e.copy_[t]===r&&(void 0!==r||t in e.copy_)||Number.isNaN(r)&&Number.isNaN(e.copy_[t]))||(e.copy_[t]=r,e.assigned_[t]=!0,!0)},deleteProperty:(e,t)=>(void 0!==K(e.base_,t)||t in e.base_?(e.assigned_[t]=!1,J(e),L(e)):delete e.assigned_[t],e.copy_&&delete e.copy_[t],!0),getOwnPropertyDescriptor(e,t){let r=w(e),n=Reflect.getOwnPropertyDescriptor(r,t);return n?{writable:!0,configurable:1!==e.type_||"length"!==t,enumerable:n.enumerable,value:r[t]}:n},defineProperty(){o(11)},getPrototypeOf:e=>c(e.base_),setPrototypeOf(){o(12)}},W={};function K(e,t){let r=e[s];return(r?w(r):e)[t]}function H(e,t){if(!(t in e))return;let r=c(e);for(;r;){let e=Object.getOwnPropertyDescriptor(r,t);if(e)return e;r=c(r)}}function L(e){!e.modified_&&(e.modified_=!0,e.parent_&&L(e.parent_))}function J(e){e.copy_||(e.copy_=P(e.base_,e.scope_.immer_.useStrictShallowCopy_))}d(R,(e,t)=>{W[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}}),W.deleteProperty=function(e,t){return W.set.call(this,e,t,void 0)},W.set=function(e,t,r){return R.set.call(this,e[0],t,r,e[0])};var X=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!0,this.produce=(e,t,r)=>{let n;if("function"==typeof e&&"function"!=typeof t){let r=t;t=e;let n=this;return function(e=r,...a){return n.produce(e,e=>t.call(this,e,...a))}}if("function"!=typeof t&&o(6),void 0!==r&&"function"!=typeof r&&o(7),l(e)){let a=I(this),i=$(e,void 0),s=!0;try{n=t(i),s=!1}finally{s?D(a):F(a)}return k(a,r),x(n,a)}if(e&&"object"==typeof e)o(1,e);else{if(void 0===(n=t(e))&&(n=e),n===a&&(n=void 0),this.autoFreeze_&&z(n,!0),r){let t=[],a=[];A("Patches").generateReplacementPatches_(e,n,t,a),r(t,a)}return n}},this.produceWithPatches=(e,t)=>{let r,n;return"function"==typeof e?(t,...r)=>this.produceWithPatches(t,t=>e(t,...r)):[this.produce(e,t,(e,t)=>{r=e,n=t}),r,n]},"boolean"==typeof e?.autoFreeze&&this.setAutoFreeze(e.autoFreeze),"boolean"==typeof e?.useStrictShallowCopy&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),"boolean"==typeof e?.useStrictIteration&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){l(e)||o(8),u(e)&&(e=q(e));let t=I(this),r=$(e,void 0);return r[s].isManual_=!0,F(t),r}finishDraft(e,t){let r=e&&e[s];r&&r.isManual_||o(9);let{scope_:n}=r;return k(n,t),x(void 0,n)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let r;for(r=t.length-1;r>=0;r--){let n=t[r];if(0===n.path.length&&"replace"===n.op){e=n.value;break}}r>-1&&(t=t.slice(r+1));let n=A("Patches").applyPatches_;return u(e)?n(e,t):this.produce(e,e=>n(e,t))}};function $(e,t){let r=m(e)?A("MapSet").proxyMap_(e,t):S(e)?A("MapSet").proxySet_(e,t):function(e,t){let r=Array.isArray(e),a={type_:+!!r,scope_:t?t.scope_:n,modified_:!1,finalized_:!1,assigned_:{},parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1},i=a,s=R;r&&(i=[a],s=W);let{revoke:o,proxy:c}=Proxy.revocable(i,s);return a.draft_=c,a.revoke_=o,c}(e,t);return(t?t.scope_:n).drafts_.push(r),r}function q(e){return u(e)||o(10,e),function e(t){let r;if(!l(t)||j(t))return t;let n=t[s],a=!0;if(n){if(!n.modified_)return n.base_;n.finalized_=!0,r=P(t,n.scope_.immer_.useStrictShallowCopy_),a=n.scope_.immer_.shouldUseStrictIteration()}else r=P(t,!0);return d(r,(t,n)=>{g(r,t,e(n))},a),n&&(n.finalized_=!1),r}(e)}function B(){let e="replace",t="remove";function r(e){if(!l(e))return e;if(Array.isArray(e))return e.map(r);if(m(e))return new Map(Array.from(e.entries()).map(([e,t])=>[e,r(t)]));if(S(e))return new Set(Array.from(e).map(r));let t=Object.create(c(e));for(let n in e)t[n]=r(e[n]);return b(e,i)&&(t[i]=e[i]),t}function n(e){return u(e)?r(e):e}M.Patches||(M.Patches={applyPatches_:function(n,a){return a.forEach(a=>{let{path:i,op:s}=a,c=n;for(let e=0;e<i.length-1;e++){let t=y(c),r=i[e];"string"!=typeof r&&"number"!=typeof r&&(r=""+r),(0===t||1===t)&&("__proto__"===r||"constructor"===r)&&o(19),"function"==typeof c&&"prototype"===r&&o(19),"object"!=typeof(c=v(c,r))&&o(18,i.join("/"))}let u=y(c),l=r(a.value),f=i[i.length-1];switch(s){case e:switch(u){case 2:return c.set(f,l);case 3:o(16);default:return c[f]=l}case"add":switch(u){case 1:return"-"===f?c.push(l):c.splice(f,0,l);case 2:return c.set(f,l);case 3:return c.add(l);default:return c[f]=l}case t:switch(u){case 1:return c.splice(f,1);case 2:return c.delete(f);case 3:return c.delete(a.value);default:return delete c[f]}default:o(17,s)}}),n},generatePatches_:function(r,a,i,s){switch(r.type_){case 0:case 2:return function(r,a,i,s){let{base_:o,copy_:c}=r;d(r.assigned_,(r,u)=>{let l=v(o,r),f=v(c,r),p=u?b(o,r)?e:"add":t;if(l===f&&p===e)return;let _=a.concat(r);i.push(p===t?{op:p,path:_}:{op:p,path:_,value:f}),s.push("add"===p?{op:t,path:_}:p===t?{op:"add",path:_,value:n(l)}:{op:e,path:_,value:n(l)})})}(r,a,i,s);case 1:return function(r,a,i,s){let{base_:o,assigned_:c}=r,u=r.copy_;u.length<o.length&&([o,u]=[u,o],[i,s]=[s,i]);for(let t=0;t<o.length;t++)if(c[t]&&u[t]!==o[t]){let r=a.concat([t]);i.push({op:e,path:r,value:n(u[t])}),s.push({op:e,path:r,value:n(o[t])})}for(let e=o.length;e<u.length;e++){let t=a.concat([e]);i.push({op:"add",path:t,value:n(u[e])})}for(let e=u.length-1;o.length<=e;--e){let r=a.concat([e]);s.push({op:t,path:r})}}(r,a,i,s);case 3:return function(e,r,n,a){let{base_:i,copy_:s}=e,o=0;i.forEach(e=>{if(!s.has(e)){let i=r.concat([o]);n.push({op:t,path:i,value:e}),a.unshift({op:"add",path:i,value:e})}o++}),o=0,s.forEach(e=>{if(!i.has(e)){let i=r.concat([o]);n.push({op:"add",path:i,value:e}),a.unshift({op:t,path:i,value:e})}o++})}(r,a,i,s)}},generateReplacementPatches_:function(t,r,n,i){n.push({op:e,path:[],value:r===a?void 0:r}),i.push({op:e,path:[],value:t})}})}function G(){class e extends Map{constructor(e,t){super(),this[s]={type_:2,parent_:t,scope_:t?t.scope_:n,modified_:!1,finalized_:!1,copy_:void 0,assigned_:void 0,base_:e,draft_:this,isManual_:!1,revoked_:!1}}get size(){return w(this[s]).size}has(e){return w(this[s]).has(e)}set(e,r){let n=this[s];return i(n),w(n).has(e)&&w(n).get(e)===r||(t(n),L(n),n.assigned_.set(e,!0),n.copy_.set(e,r),n.assigned_.set(e,!0)),this}delete(e){if(!this.has(e))return!1;let r=this[s];return i(r),t(r),L(r),r.base_.has(e)?r.assigned_.set(e,!1):r.assigned_.delete(e),r.copy_.delete(e),!0}clear(){let e=this[s];i(e),w(e).size&&(t(e),L(e),e.assigned_=new Map,d(e.base_,t=>{e.assigned_.set(t,!1)}),e.copy_.clear())}forEach(e,t){w(this[s]).forEach((r,n,a)=>{e.call(t,this.get(n),n,this)})}get(e){let r=this[s];i(r);let n=w(r).get(e);if(r.finalized_||!l(n)||n!==r.base_.get(e))return n;let a=$(n,r);return t(r),r.copy_.set(e,a),a}keys(){return w(this[s]).keys()}values(){let e=this.keys();return{[Symbol.iterator]:()=>this.values(),next:()=>{let t=e.next();return t.done?t:{done:!1,value:this.get(t.value)}}}}entries(){let e=this.keys();return{[Symbol.iterator]:()=>this.entries(),next:()=>{let t=e.next();if(t.done)return t;let r=this.get(t.value);return{done:!1,value:[t.value,r]}}}}[Symbol.iterator](){return this.entries()}}function t(e){e.copy_||(e.assigned_=new Map,e.copy_=new Map(e.base_))}class r extends Set{constructor(e,t){super(),this[s]={type_:3,parent_:t,scope_:t?t.scope_:n,modified_:!1,finalized_:!1,copy_:void 0,base_:e,draft_:this,drafts_:new Map,revoked_:!1,isManual_:!1}}get size(){return w(this[s]).size}has(e){let t=this[s];return(i(t),t.copy_)?!!(t.copy_.has(e)||t.drafts_.has(e)&&t.copy_.has(t.drafts_.get(e))):t.base_.has(e)}add(e){let t=this[s];return i(t),this.has(e)||(a(t),L(t),t.copy_.add(e)),this}delete(e){if(!this.has(e))return!1;let t=this[s];return i(t),a(t),L(t),t.copy_.delete(e)||!!t.drafts_.has(e)&&t.copy_.delete(t.drafts_.get(e))}clear(){let e=this[s];i(e),w(e).size&&(a(e),L(e),e.copy_.clear())}values(){let e=this[s];return i(e),a(e),e.copy_.values()}entries(){let e=this[s];return i(e),a(e),e.copy_.entries()}keys(){return this.values()}[Symbol.iterator](){return this.values()}forEach(e,t){let r=this.values(),n=r.next();for(;!n.done;)e.call(t,n.value,n.value,this),n=r.next()}}function a(e){e.copy_||(e.copy_=new Set,e.base_.forEach(t=>{if(l(t)){let r=$(t,e);e.drafts_.set(t,r),e.copy_.add(r)}else e.copy_.add(t)}))}function i(e){e.revoked_&&o(3,JSON.stringify(w(e)))}M.MapSet||(M.MapSet={proxyMap_:function(t,r){return new e(t,r)},proxySet_:function(e,t){return new r(e,t)}})}var Q=new X,T=Q.produce,V=Q.produceWithPatches.bind(Q),Y=Q.setAutoFreeze.bind(Q),Z=Q.setUseStrictShallowCopy.bind(Q),ee=Q.setUseStrictIteration.bind(Q),et=Q.applyPatches.bind(Q),er=Q.createDraft.bind(Q),en=Q.finishDraft.bind(Q);function ea(e){return e}function ei(e){return e}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self["chunk_HistogramChart "]=self["chunk_HistogramChart "]||[]).push([["759"],{64278(e,t,o){o.r(t),o.d(t,{HistogramChart:()=>C});var l=o(62540),n=o(93648),r=o(8242),i=o(43945),a=o(25632),s=o.n(a);let u={unit:"decimal"},d={defaultColor:"#56b4e9"},h={none:{label:"None",log:void 0},2:{label:"2",log:2},10:{label:"10",log:10}},c=Object.entries(h).map(e=>{let[t,o]=e;return{id:t,...o}});var m=o(315),p=o(88091),g=o(74628),v=o(70451),f=o(74653),x=o(96331);function b(e){let{width:t,height:o,data:n,format:i,min:a,max:s,thresholds:u,logBase:d}=e,h=(0,r.useChartsTheme)(),c=(0,v.useMemo)(()=>n.buckets.map(e=>{let[t,o,l,n]=e,r=parseFloat(o),i=parseFloat(l),a=parseFloat(n);if(void 0!==d&&r<=0){if(i<=0)return null;r=.001*i}return{value:[r,i,a,t],itemStyle:{color:function(e,t,o,l){if(null==t?void 0:t.steps){let n=t.steps.map((n,r)=>e>=n.value?n.color??o.thresholds.palette[r]??t.defaultColor??l:null).filter(e=>null!==e);return n[n.length-1]??t.defaultColor??l}return(null==t?void 0:t.defaultColor)??l}(parseFloat(o),u,h,h.echartsTheme[0])}}}).filter(e=>null!==e),[h,n.buckets,d,u]),m=(0,v.useMemo)(()=>{if(void 0===d){if(a)return a;if(c&&c[0]){var e;return Math.min(0,Math.floor((null==(e=c[0])?void 0:e.value[0])??0))}}},[d,a,c]),p=(0,v.useMemo)(()=>{if(s)return s;if(c&&c[c.length-1]){var e;return Math.ceil((null==(e=c[c.length-1])?void 0:e.value[1])??1)}},[s,c]),g=(0,v.useMemo)(()=>{if(!c)return h.noDataOption;let e={scale:!1,min:m,max:p};return void 0!==d&&(e.type="log",e.logBase=d),{title:{show:!1},tooltip:{},xAxis:e,yAxis:(0,r.getFormattedAxis)({},i),series:[{type:"custom",renderItem:function(e,t){var o;let l=t.value(0),n=t.value(1),r=t.value(2),i=t.coord([l,r]),a=t.coord([n,0]),s=null==i?void 0:i[0],u=null==i?void 0:i[1],d=null==a?void 0:a[0],h=null==a?void 0:a[1];if(void 0===s||void 0===u||void 0===d||void 0===h)return null;let c=d-s,m=h-u,p=null==(o=t.style)?void 0:o.call(t);return Number.isFinite(s)&&Number.isFinite(u)&&Number.isFinite(c)&&Number.isFinite(m)?{type:"rect",shape:{x:s,y:u,width:c,height:m},style:p}:null},label:{show:!1},dimensions:["from","to"],encode:{x:[0,1],y:2,tooltip:[0,1],itemName:2},data:c}]}},[h.noDataOption,i,d,p,m,c]);return(0,l.jsx)(r.EChart,{style:{width:t,height:o},sx:{padding:`${h.container.padding.default}px`},option:g,theme:h.echartsTheme})}(0,f.Y)([x.a]);let C={PanelComponent:function(e){let{spec:t,contentDimensions:o,queryResults:n}=e,{min:i,max:a}=t,h=(0,r.useChartsTheme)(),c=s()({},u,t.format),f=s()({},d,t.thresholds),x=(0,v.useMemo)(()=>{let e=[];for(let t of n)for(let o of t.data.series){if(!o.histograms||0===o.histograms.length)continue;let[,t]=o.histograms[0];t&&t.buckets&&e.push({buckets:t.buckets})}return e},[n]);if(0===x.length)return(0,l.jsx)(m.A,{justifyContent:"center",height:"100%",children:(0,l.jsx)(p.A,{variant:"body2",textAlign:"center",children:"No data available (only native histograms are supported for now)"})});if(void 0===o)return null;let C=o.width/x.length-h.container.padding.default;return C<90&&x.length>1&&(C=90),(0,l.jsx)(m.A,{direction:"row",justifyContent:"center",alignItems:"center",sx:{overflowX:x.length>1?"scroll":"auto"},children:x.map((e,n)=>(0,l.jsx)(g.A,{children:(0,l.jsx)(b,{width:C,height:o.height,data:e,format:c,min:i,max:a,thresholds:f,logBase:t.logBase})},`histogram-series-${n}`))})},supportedQueryTypes:["TimeSeriesQuery"],queryOptions:{mode:"instant"},panelOptionsEditorComponents:[{label:"Settings",content:function(e){let{onChange:t,value:o}=e,a=s()({},u,o.format),m=s()({},d,o.thresholds),p=o.logBase?h[o.logBase]:h.none,g="Enter value";"percent"===a.unit?g="0":"percent-decimal"===a.unit&&(g="0");let v="Enter value";return"percent"===a.unit?v="100":"percent-decimal"===a.unit&&(v="1"),(0,l.jsxs)(r.OptionsEditorGrid,{children:[(0,l.jsx)(r.OptionsEditorColumn,{children:(0,l.jsxs)(r.OptionsEditorGroup,{title:"Misc",children:[(0,l.jsx)(r.FormatControls,{value:a,onChange:e=>{t((0,i.produce)(o,t=>{t.format=e}))}}),(0,l.jsx)(r.OptionsEditorControl,{label:"Min",control:(0,l.jsx)(n.A,{type:"number",value:o.min??"",onChange:e=>{let l=e.target.value?Number(e.target.value):void 0;t((0,i.produce)(o,e=>{e.min=l}))},placeholder:g,sx:{width:"100%"}})}),(0,l.jsx)(r.OptionsEditorControl,{label:"Max",control:(0,l.jsx)(n.A,{type:"number",value:o.max??"",onChange:e=>{let l=e.target.value?Number(e.target.value):void 0;t((0,i.produce)(o,e=>{e.max=l}))},placeholder:v,sx:{width:"100%"}})}),(0,l.jsx)(r.OptionsEditorControl,{label:"Log Base",control:(0,l.jsx)(r.SettingsAutocomplete,{value:{...p,id:(null==p?void 0:p.label)??"None"},options:c,onChange:(e,l)=>{t((0,i.produce)(o,e=>{e.logBase=l.log}))},disableClearable:!0})})]})}),(0,l.jsx)(r.OptionsEditorColumn,{children:(0,l.jsx)(r.ThresholdsEditor,{thresholds:m,onChange:e=>{t((0,i.produce)(o,t=>{t.thresholds=e}))}})})]})}}],createInitialOptions:function(){return{format:u}}}}}]);
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
(()=>{var __webpack_modules__={23362(e,t,r){Promise.all([r.e("312"),r.e("4"),r.e("941")]).then(r.bind(r,86604))},89095(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});let o=r(3958);t.logAndReport=function(e,t,r,n,a,i){return n(o.getShortErrorMsg(e,t,r,a))}},84990(e,t,r){let o=r(44528),n={[o.RUNTIME_001]:"Failed to get remoteEntry exports.",[o.RUNTIME_002]:'The remote entry interface does not contain "init"',[o.RUNTIME_003]:"Failed to get manifest.",[o.RUNTIME_004]:"Failed to locate remote.",[o.RUNTIME_005]:"Invalid loadShareSync function call from bundler runtime",[o.RUNTIME_006]:"Invalid loadShareSync function call from runtime",[o.RUNTIME_007]:"Failed to get remote snapshot.",[o.RUNTIME_008]:"Failed to load script resources.",[o.RUNTIME_009]:"Please call createInstance first.",[o.RUNTIME_010]:'The name option cannot be changed after initialization. If you want to create a new instance with a different name, please use "createInstance" api.',[o.RUNTIME_011]:"The remoteEntry URL is missing from the remote snapshot.",[o.RUNTIME_012]:'The getter for the shared module is not a function. This may be caused by setting "shared.import: false" without the host providing the corresponding lib.'},a={[o.TYPE_001]:"Failed to generate type declaration. Execute the below cmd to reproduce and fix the error."},i={[o.BUILD_001]:"Failed to find expose module.",[o.BUILD_002]:"PublicPath is required in prod mode."},s={...n,...a,...i};t.buildDescMap=i,t.errorDescMap=s,t.runtimeDescMap=n,t.typeDescMap=a},44528(e,t){let r="RUNTIME-001",o="RUNTIME-002",n="RUNTIME-003",a="RUNTIME-004",i="RUNTIME-005",s="RUNTIME-006",l="RUNTIME-007",u="RUNTIME-008",c="RUNTIME-009",d="RUNTIME-010",f="RUNTIME-011",p="RUNTIME-012",h="TYPE-001",m="BUILD-002";t.BUILD_001="BUILD-001",t.BUILD_002=m,t.RUNTIME_001=r,t.RUNTIME_002=o,t.RUNTIME_003=n,t.RUNTIME_004=a,t.RUNTIME_005=i,t.RUNTIME_006=s,t.RUNTIME_007=l,t.RUNTIME_008=u,t.RUNTIME_009=c,t.RUNTIME_010=d,t.RUNTIME_011=f,t.RUNTIME_012=p,t.TYPE_001=h},3958(e,t){let r=e=>`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split("-")[0].toLowerCase()}#${e.toLowerCase()}`;t.getShortErrorMsg=(e,t,o,n)=>{let a=[`${[t[e]]} #${e}`];return o&&a.push(`args: ${JSON.stringify(o)}`),a.push(r(e)),n&&a.push(`Original Error Message:
|
|
2
|
+
${n}`),a.join("\n")}},4071(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});let o=r(44528),n=r(3958),a=r(84990);t.BUILD_001=o.BUILD_001,t.BUILD_002=o.BUILD_002,t.RUNTIME_001=o.RUNTIME_001,t.RUNTIME_002=o.RUNTIME_002,t.RUNTIME_003=o.RUNTIME_003,t.RUNTIME_004=o.RUNTIME_004,t.RUNTIME_005=o.RUNTIME_005,t.RUNTIME_006=o.RUNTIME_006,t.RUNTIME_007=o.RUNTIME_007,t.RUNTIME_008=o.RUNTIME_008,t.RUNTIME_009=o.RUNTIME_009,t.RUNTIME_010=o.RUNTIME_010,t.RUNTIME_011=o.RUNTIME_011,t.RUNTIME_012=o.RUNTIME_012,t.TYPE_001=o.TYPE_001,t.buildDescMap=a.buildDescMap,t.errorDescMap=a.errorDescMap,t.getShortErrorMsg=n.getShortErrorMsg,t.runtimeDescMap=a.runtimeDescMap,t.typeDescMap=a.typeDescMap},36568(e,t){var r=Object.defineProperty;t.__exportAll=(e,t)=>{let o={};for(var n in e)r(o,n,{get:e[n],enumerable:!0});return t||r(o,Symbol.toStringTag,{value:"Module"}),o}},45818(e,t){let r="default";t.DEFAULT_REMOTE_TYPE="global",t.DEFAULT_SCOPE=r},97795(e,t,r){let o=r(85968),n=r(45818),a=r(7269),i=r(90537),s=r(8349),l=r(84616);r(87728);let u=r(11415),c=r(14007),d=r(25344),f=r(69757),p=r(11767),h=r(27185);r(7353);let m=r(62648),g=r(88170),y=r(36292),E=r(39032),S=r(61949),b=r(89850),_=r(4071);t.ModuleFederation=class{initOptions(e){e.name&&e.name!==this.options.name&&o.error((0,_.getShortErrorMsg)(_.RUNTIME_010,_.runtimeDescMap)),this.registerPlugins(e.plugins);let t=this.formatOptions(this.options,e);return this.options=t,t}async loadShare(e,t){return this.sharedHandler.loadShare(e,t)}loadShareSync(e,t){return this.sharedHandler.loadShareSync(e,t)}initializeSharing(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n.DEFAULT_SCOPE,t=arguments.length>1?arguments[1]:void 0;return this.sharedHandler.initializeSharing(e,t)}initRawContainer(e,t,r){let o=l.getRemoteInfo({name:e,entry:t}),n=new u.Module({host:this,remoteInfo:o});return n.remoteEntryExports=r,this.moduleCache.set(e,n),n}async loadRemote(e,t){return this.remoteHandler.loadRemote(e,t)}async preloadRemote(e){return this.remoteHandler.preloadRemote(e)}initShareScopeMap(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.sharedHandler.initShareScopeMap(e,t,r)}formatOptions(e,t){let{allShareInfos:r}=a.formatShareConfigs(e,t),{userOptions:o,options:n}=this.hooks.lifecycle.beforeInit.emit({origin:this,userOptions:t,options:e,shareInfo:r}),i=this.remoteHandler.formatAndRegisterRemote(n,o),{allShareInfos:s}=this.sharedHandler.registerShared(n,o),l=[...n.plugins];o.plugins&&o.plugins.forEach(e=>{l.includes(e)||l.push(e)});let u={...e,...t,plugins:l,remotes:i,shared:s,id:o.id||e.id};return this.hooks.lifecycle.init.emit({origin:this,options:u}),u}registerPlugins(e){let t=s.registerPlugins(e,this);this.options.plugins=this.options.plugins.reduce((e,t)=>(t&&e&&!e.find(e=>e.name===t.name)&&e.push(t),e),t||[])}registerRemotes(e,t){return this.remoteHandler.registerRemotes(e,t)}registerShared(e){this.sharedHandler.registerShared(this.options,{...this.options,shared:e})}constructor(e){this.hooks=new h.PluginSystem({beforeInit:new f.SyncWaterfallHook("beforeInit"),init:new c.SyncHook,beforeInitContainer:new p.AsyncWaterfallHook("beforeInitContainer"),initContainer:new p.AsyncWaterfallHook("initContainer")}),this.version="2.4.0",this.moduleCache=new Map,this.loaderHook=new h.PluginSystem({getModuleInfo:new c.SyncHook,createScript:new c.SyncHook,createLink:new c.SyncHook,fetch:new d.AsyncHook,loadEntryError:new d.AsyncHook,getModuleFactory:new d.AsyncHook}),this.bridgeHook=new h.PluginSystem({beforeBridgeRender:new c.SyncHook,afterBridgeRender:new c.SyncHook,beforeBridgeDestroy:new c.SyncHook,afterBridgeDestroy:new c.SyncHook});const t=[m.snapshotPlugin(),g.generatePreloadAssetsPlugin()],r={id:i.getBuilderId(),name:e.name,plugins:t,remotes:[],shared:{},inBrowser:b.isBrowserEnvValue};this.name=e.name,this.options=r,this.snapshotHandler=new y.SnapshotHandler(this),this.sharedHandler=new E.SharedHandler(this),this.remoteHandler=new S.RemoteHandler(this),this.shareScopeMap=this.sharedHandler.shareScopeMap,this.registerPlugins([...r.plugins,...e.plugins||[]]),this.options=this.formatOptions(r,e)}}},74331(e,t,r){let o=r(85968),n=r(95018),a=r(89850),i="object"==typeof globalThis?globalThis:window,s=(()=>{try{return document.defaultView}catch{return i}})(),l=s;function u(e,t,r){Object.defineProperty(e,t,{value:r,configurable:!1,writable:!0})}function c(e,t){return Object.hasOwnProperty.call(e,t)}c(i,"__GLOBAL_LOADING_REMOTE_ENTRY__")||u(i,"__GLOBAL_LOADING_REMOTE_ENTRY__",{});let d=i.__GLOBAL_LOADING_REMOTE_ENTRY__;function f(e){var t,r,o,n,a,i;c(e,"__VMOK__")&&!c(e,"__FEDERATION__")&&u(e,"__FEDERATION__",e.__VMOK__),c(e,"__FEDERATION__")||(u(e,"__FEDERATION__",{__GLOBAL_PLUGIN__:[],__INSTANCES__:[],moduleInfo:{},__SHARE__:{},__MANIFEST_LOADING__:{},__PRELOADED_MAP__:new Map}),u(e,"__VMOK__",e.__FEDERATION__)),(t=e.__FEDERATION__).__GLOBAL_PLUGIN__??(t.__GLOBAL_PLUGIN__=[]),(r=e.__FEDERATION__).__INSTANCES__??(r.__INSTANCES__=[]),(o=e.__FEDERATION__).moduleInfo??(o.moduleInfo={}),(n=e.__FEDERATION__).__SHARE__??(n.__SHARE__={}),(a=e.__FEDERATION__).__MANIFEST_LOADING__??(a.__MANIFEST_LOADING__={}),(i=e.__FEDERATION__).__PRELOADED_MAP__??(i.__PRELOADED_MAP__=new Map)}function p(){i.__FEDERATION__.__GLOBAL_PLUGIN__=[],i.__FEDERATION__.__INSTANCES__=[],i.__FEDERATION__.moduleInfo={},i.__FEDERATION__.__SHARE__={},i.__FEDERATION__.__MANIFEST_LOADING__={},Object.keys(d).forEach(e=>{delete d[e]})}function h(e){i.__FEDERATION__.__INSTANCES__.push(e)}function m(){return i.__FEDERATION__.__DEBUG_CONSTRUCTOR__}function g(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:(0,a.isDebugMode)();t&&(i.__FEDERATION__.__DEBUG_CONSTRUCTOR__=e,i.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__="2.4.0")}function y(e,t){if("string"==typeof t)if(e[t])return{value:e[t],key:t};else{for(let r of Object.keys(e)){let[o,n]=r.split(":"),a=`${o}:${t}`,i=e[a];if(i)return{value:i,key:a}}return{value:void 0,key:t}}o.error(`getInfoWithoutType: "key" must be a string, got ${typeof t} (${JSON.stringify(t)}).`)}f(i),f(s);let E=()=>s.__FEDERATION__.moduleInfo,S=(e,t)=>{let r=y(t,n.getFMId(e)).value;if(r&&!r.version&&"version"in e&&e.version&&(r.version=e.version),r)return r;if("version"in e&&e.version){let{version:t,...r}=e,o=n.getFMId(r),a=y(s.__FEDERATION__.moduleInfo,o).value;if((null==a?void 0:a.version)===t)return a}},b=e=>S(e,s.__FEDERATION__.moduleInfo),_=(e,t)=>{let r=n.getFMId(e);return s.__FEDERATION__.moduleInfo[r]=t,s.__FEDERATION__.moduleInfo},v=e=>(s.__FEDERATION__.moduleInfo={...s.__FEDERATION__.moduleInfo,...e},()=>{for(let t of Object.keys(e))delete s.__FEDERATION__.moduleInfo[t]}),R=(e,t)=>{let r=t||`__FEDERATION_${e}:custom__`;return{remoteEntryKey:r,entryExports:i[r]}},I=e=>{let{__GLOBAL_PLUGIN__:t}=s.__FEDERATION__;e.forEach(e=>{-1===t.findIndex(t=>t.name===e.name)?t.push(e):o.warn(`The plugin ${e.name} has been registered.`)})},N=()=>s.__FEDERATION__.__GLOBAL_PLUGIN__,T=e=>i.__FEDERATION__.__PRELOADED_MAP__.get(e),M=e=>i.__FEDERATION__.__PRELOADED_MAP__.set(e,!0);t.CurrentGlobal=i,t.Global=l,t.addGlobalSnapshot=v,t.getGlobalFederationConstructor=m,t.getGlobalHostPlugins=N,t.getGlobalSnapshot=E,t.getGlobalSnapshotInfoByModuleInfo=b,t.getInfoWithoutType=y,t.getPreloaded=T,t.getRemoteEntryExports=R,t.getTargetSnapshotInfoByModuleInfo=S,t.globalLoading=d,t.nativeGlobal=s,t.registerGlobalPlugins=I,t.resetFederationGlobalInfo=p,t.setGlobalFederationConstructor=g,t.setGlobalFederationInstance=h,t.setGlobalSnapshotInfoByModuleInfo=_,t.setPreloaded=M},4697(e,t,r){let o=r(74331),n=r(7269),a=r(28395),i=r(84616);r(87728);let s=r(3371),l={getRegisteredShare:n.getRegisteredShare,getGlobalShareScope:n.getGlobalShareScope};t.default={global:{Global:o.Global,nativeGlobal:o.nativeGlobal,resetFederationGlobalInfo:o.resetFederationGlobalInfo,setGlobalFederationInstance:o.setGlobalFederationInstance,getGlobalFederationConstructor:o.getGlobalFederationConstructor,setGlobalFederationConstructor:o.setGlobalFederationConstructor,getInfoWithoutType:o.getInfoWithoutType,getGlobalSnapshot:o.getGlobalSnapshot,getTargetSnapshotInfoByModuleInfo:o.getTargetSnapshotInfoByModuleInfo,getGlobalSnapshotInfoByModuleInfo:o.getGlobalSnapshotInfoByModuleInfo,setGlobalSnapshotInfoByModuleInfo:o.setGlobalSnapshotInfoByModuleInfo,addGlobalSnapshot:o.addGlobalSnapshot,getRemoteEntryExports:o.getRemoteEntryExports,registerGlobalPlugins:o.registerGlobalPlugins,getGlobalHostPlugins:o.getGlobalHostPlugins,getPreloaded:o.getPreloaded,setPreloaded:o.setPreloaded},share:l,utils:{matchRemoteWithNameAndExpose:a.matchRemoteWithNameAndExpose,preloadAssets:s.preloadAssets,getRemoteInfo:i.getRemoteInfo}}},6614(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});let o=r(85968),n=r(95018),a=r(74331),i=r(51209),s=r(7269),l=r(28395),u=r(84616);r(87728);let c=r(4697),d=r(11415),f=r(97795),p=r(94219),h=r(89850),m=c.default;t.CurrentGlobal=a.CurrentGlobal,t.Global=a.Global,t.Module=d.Module,t.ModuleFederation=f.ModuleFederation,t.addGlobalSnapshot=a.addGlobalSnapshot,t.assert=o.assert,t.error=o.error,t.getGlobalFederationConstructor=a.getGlobalFederationConstructor,t.getGlobalSnapshot=a.getGlobalSnapshot,t.getInfoWithoutType=a.getInfoWithoutType,t.getRegisteredShare=s.getRegisteredShare,t.getRemoteEntry=u.getRemoteEntry,t.getRemoteInfo=u.getRemoteInfo,t.helpers=m,t.isStaticResourcesEqual=n.isStaticResourcesEqual,Object.defineProperty(t,"loadScript",{enumerable:!0,get:function(){return h.loadScript}}),Object.defineProperty(t,"loadScriptNode",{enumerable:!0,get:function(){return h.loadScriptNode}}),t.matchRemoteWithNameAndExpose=l.matchRemoteWithNameAndExpose,t.registerGlobalPlugins=a.registerGlobalPlugins,t.resetFederationGlobalInfo=a.resetFederationGlobalInfo,t.safeWrapper=n.safeWrapper,t.satisfy=i.satisfy,t.setGlobalFederationConstructor=a.setGlobalFederationConstructor,t.setGlobalFederationInstance=a.setGlobalFederationInstance,Object.defineProperty(t,"types",{enumerable:!0,get:function(){return p.type_exports}})},11415(e,t,r){let o=r(85968),n=r(95018),a=r(84616),i=r(53565);r(87728);let s=r(89850),l=r(4071);function u(e,t,r){let o=t,n=Array.isArray(e.shareScope)?e.shareScope:[e.shareScope];n.length||n.push("default"),n.forEach(e=>{o[e]||(o[e]={})});let a={version:e.version||"",shareScopeKeys:Array.isArray(e.shareScope)?n:e.shareScope||"default"};return Object.defineProperty(a,"shareScopeMap",{value:o,enumerable:!1}),{remoteEntryInitOptions:a,shareScope:o[n[0]],initScope:r??[]}}t.Module=class{async getEntry(){if(this.remoteEntryExports)return this.remoteEntryExports;let e=await a.getRemoteEntry({origin:this.host,remoteInfo:this.remoteInfo,remoteEntryExports:this.remoteEntryExports});return o.assert(e,`remoteEntryExports is undefined
|
|
3
|
+
${(0,s.safeToString)(this.remoteInfo)}`),this.remoteEntryExports=e,this.remoteEntryExports}async init(e,t,r){let n=await this.getEntry();if(this.inited)return n;if(this.initPromise)return await this.initPromise,n;this.initing=!0,this.initPromise=(async()=>{let{remoteEntryInitOptions:a,shareScope:s,initScope:c}=u(this.remoteInfo,this.host.shareScopeMap,r),d=await this.host.hooks.lifecycle.beforeInitContainer.emit({shareScope:s,remoteEntryInitOptions:a,initScope:c,remoteInfo:this.remoteInfo,origin:this.host});void 0===(null==n?void 0:n.init)&&o.error(l.RUNTIME_002,l.runtimeDescMap,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName},void 0,i.optionsToMFContext(this.host.options)),await n.init(d.shareScope,d.initScope,d.remoteEntryInitOptions),await this.host.hooks.lifecycle.initContainer.emit({...d,id:e,remoteSnapshot:t,remoteEntryExports:n}),this.inited=!0})();try{await this.initPromise}finally{this.initing=!1,this.initPromise=void 0}return n}async get(e,t,r,a){let i,{loadFactory:s=!0}=r||{loadFactory:!0},l=await this.init(e,a);this.lib=l,(i=await this.host.loaderHook.lifecycle.getModuleFactory.emit({remoteEntryExports:l,expose:t,moduleInfo:this.remoteInfo}))||(i=await l.get(t)),o.assert(i,`${n.getFMId(this.remoteInfo)} remote don't export ${t}.`);let u=n.processModuleAlias(this.remoteInfo.name,t),c=this.wraperFactory(i,u);return s?await c():c}wraperFactory(e,t){function r(e,t){e&&"object"==typeof e&&Object.isExtensible(e)&&!Object.getOwnPropertyDescriptor(e,Symbol.for("mf_module_id"))&&Object.defineProperty(e,Symbol.for("mf_module_id"),{value:t,enumerable:!1})}return e instanceof Promise?async()=>{let o=await e();return r(o,t),o}:()=>{let o=e();return r(o,t),o}}constructor({remoteInfo:e,host:t}){this.inited=!1,this.initing=!1,this.lib=void 0,this.remoteInfo=e,this.host=t}}},88170(e,t,r){let o=r(95018),n=r(74331),a=r(7269);r(87728);let i=r(3371),s=r(62648),l=r(89850);function u(e){let t=e.split(":");return 1===t.length?{name:t[0],version:void 0}:2===t.length?{name:t[0],version:t[1]}:{name:t[1],version:t[2]}}function c(e,t,r,a){let i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},s=arguments.length>5?arguments[5]:void 0,{value:d}=n.getInfoWithoutType(e,o.getFMId(t)),f=s||d;if(f&&!(0,l.isManifestProvider)(f)&&(r(f,t,a),f.remotesInfo))for(let t of Object.keys(f.remotesInfo)){if(i[t])continue;i[t]=!0;let o=u(t),n=f.remotesInfo[t];c(e,{name:o.name,version:n.matchedVersion},r,!1,i,void 0)}}let d=(e,t)=>document.querySelector(`${e}[${"link"===e?"href":"src"}="${t}"]`);function f(e,t,r,s,u){let f=[],p=[],h=[],m=new Set,g=new Set,{options:y}=e,{preloadConfig:E}=t,{depsRemote:S}=E;if(c(s,r,(t,r,a)=>{var s;let u;if(a)u=E;else if(Array.isArray(S)){let e=S.find(e=>e.nameOrAlias===r.name||e.nameOrAlias===r.alias);if(!e)return;u=i.defaultPreloadArgs(e)}else{if(!0!==S)return;u=E}let c=(0,l.getResourceUrl)(t,o.getRemoteEntryInfoFromSnapshot(t).url);c&&h.push({name:r.name,moduleInfo:{name:r.name,entry:c,type:"remoteEntryType"in t?t.remoteEntryType:"global",entryGlobalName:"globalName"in t?t.globalName:r.name,shareScope:"",version:"version"in t?t.version:void 0},url:c});let d="modules"in t?t.modules:[],m=i.normalizePreloadExposes(u.exposes);function g(e){let r=e.map(e=>(0,l.getResourceUrl)(t,e));return u.filter?r.filter(u.filter):r}if(m.length&&"modules"in t&&(d=null==t||null==(s=t.modules)?void 0:s.reduce((e,t)=>((null==m?void 0:m.indexOf(t.moduleName))!==-1&&e.push(t),e),[])),d){let o=d.length;for(let a=0;a<o;a++){let o=d[a],i=`${r.name}/${o.moduleName}`;e.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({id:"."===o.moduleName?r.name:i,name:r.name,remoteSnapshot:t,preloadConfig:u,remote:r,origin:e}),n.getPreloaded(i)||("all"===u.resourceCategory?(f.push(...g(o.assets.css.async)),f.push(...g(o.assets.css.sync)),p.push(...g(o.assets.js.async)),p.push(...g(o.assets.js.sync))):"sync"===u.resourceCategory&&(f.push(...g(o.assets.css.sync)),p.push(...g(o.assets.js.sync))),n.setPreloaded(i))}}},!0,{},u),u.shared&&u.shared.length>0){let t=(t,r)=>{let{shared:o}=a.getRegisteredShare(e.shareScopeMap,r.sharedName,t,e.sharedHandler.hooks.lifecycle.resolveShare)||{};o&&"function"==typeof o.lib&&(r.assets.js.sync.forEach(e=>{m.add(e)}),r.assets.css.sync.forEach(e=>{g.add(e)}))};u.shared.forEach(e=>{var r;let n=null==(r=y.shared)?void 0:r[e.sharedName];if(!n)return;let a=e.version?n.find(t=>t.version===e.version):n;a&&o.arrayOptions(a).forEach(r=>{t(r,e)})})}let b=p.filter(e=>!m.has(e)&&!d("script",e));return{cssAssets:f.filter(e=>!g.has(e)&&!d("link",e)),jsAssetsWithoutEntry:b,entryAssets:h.filter(e=>!d("script",e.url))}}t.generatePreloadAssetsPlugin=function(){return{name:"generate-preload-assets-plugin",async generatePreloadAssets(e){let{origin:t,preloadOptions:r,remoteInfo:n,remote:a,globalSnapshot:i,remoteSnapshot:u}=e;return l.isBrowserEnvValue?o.isRemoteInfoWithEntry(a)&&o.isPureRemoteEntry(a)?{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[{name:a.name,url:a.entry,moduleInfo:{name:n.name,entry:a.entry,type:n.type||"global",entryGlobalName:"",shareScope:""}}]}:(s.assignRemoteInfo(n,u),f(t,r,n,i,u)):{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[]}}}}},36292(e,t,r){let o=r(85968),n=r(95018),a=r(74331),i=r(84616),s=r(53565);r(87728);let l=r(25344),u=r(11767),c=r(27185);r(7353);let d=r(89850),f=r(4071);function p(e,t){let r=a.getGlobalSnapshotInfoByModuleInfo({name:t.name,version:t.options.version}),o=r&&"remotesInfo"in r&&r.remotesInfo&&a.getInfoWithoutType(r.remotesInfo,e.name).value;return o&&o.matchedVersion?{hostGlobalSnapshot:r,globalSnapshot:a.getGlobalSnapshot(),remoteSnapshot:a.getGlobalSnapshotInfoByModuleInfo({name:e.name,version:o.matchedVersion})}:{hostGlobalSnapshot:void 0,globalSnapshot:a.getGlobalSnapshot(),remoteSnapshot:a.getGlobalSnapshotInfoByModuleInfo({name:e.name,version:"version"in e?e.version:void 0})}}t.SnapshotHandler=class{async loadRemoteSnapshotInfo(e){let t,r,{moduleInfo:i,id:l,expose:u}=e,{options:c}=this.HostInstance;await this.hooks.lifecycle.beforeLoadRemoteSnapshot.emit({options:c,moduleInfo:i});let p=a.getGlobalSnapshotInfoByModuleInfo({name:this.HostInstance.options.name,version:this.HostInstance.options.version});p||(p={version:this.HostInstance.options.version||"",remoteEntry:"",remotesInfo:{}},a.addGlobalSnapshot({[this.HostInstance.options.name]:p})),p&&"remotesInfo"in p&&!a.getInfoWithoutType(p.remotesInfo,i.name).value&&("version"in i||"entry"in i)&&(p.remotesInfo={...null==p?void 0:p.remotesInfo,[i.name]:{matchedVersion:"version"in i?i.version:i.entry}});let{hostGlobalSnapshot:h,remoteSnapshot:m,globalSnapshot:g}=this.getGlobalRemoteInfo(i),{remoteSnapshot:y,globalSnapshot:E}=await this.hooks.lifecycle.loadSnapshot.emit({options:c,moduleInfo:i,hostGlobalSnapshot:h,remoteSnapshot:m,globalSnapshot:g});if(y)if((0,d.isManifestProvider)(y)){let e=d.isBrowserEnvValue?y.remoteEntry:y.ssrRemoteEntry||y.remoteEntry||"",o=await this.getManifestJson(e,i,{}),n=a.setGlobalSnapshotInfoByModuleInfo({...i,entry:e},o);t=o,r=n}else{let{remoteSnapshot:e}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:i,remoteSnapshot:y,from:"global"});t=e,r=E}else if(n.isRemoteInfoWithEntry(i)){let e=await this.getManifestJson(i.entry,i,{}),o=a.setGlobalSnapshotInfoByModuleInfo(i,e),{remoteSnapshot:n}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:i,remoteSnapshot:e,from:"global"});t=n,r=o}else o.error(f.RUNTIME_007,f.runtimeDescMap,{remoteName:i.name,remoteVersion:i.version,hostName:this.HostInstance.options.name,globalSnapshot:JSON.stringify(E)},void 0,s.optionsToMFContext(this.HostInstance.options));return await this.hooks.lifecycle.afterLoadSnapshot.emit({id:l,host:this.HostInstance,options:c,moduleInfo:i,remoteSnapshot:t}),{remoteSnapshot:t,globalSnapshot:r}}getGlobalRemoteInfo(e){return p(e,this.HostInstance)}async getManifestJson(e,t,r){let n=async()=>{let r=this.manifestCache.get(e);if(r)return r;try{let o=await this.loaderHook.lifecycle.fetch.emit(e,{},i.getRemoteInfo(t));o&&o instanceof Response||(o=await fetch(e,{})),r=await o.json()}catch(n){(r=await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:n,from:"runtime",lifecycle:"afterResolve",origin:this.HostInstance}))||(delete this.manifestLoading[e],o.error(f.RUNTIME_003,f.runtimeDescMap,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name},`${n}`,s.optionsToMFContext(this.HostInstance.options)))}return o.assert(r.metaData&&r.exposes&&r.shared,`"${e}" is not a valid federation manifest for remote "${t.name}". Missing required fields: ${[!r.metaData&&"metaData",!r.exposes&&"exposes",!r.shared&&"shared"].filter(Boolean).join(", ")}.`),this.manifestCache.set(e,r),r},a=async()=>{let r=await n(),o=(0,d.generateSnapshotFromManifest)(r,{version:e}),{remoteSnapshot:a}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:t,manifestJson:r,remoteSnapshot:o,manifestUrl:e,from:"manifest"});return a};return this.manifestLoading[e]||(this.manifestLoading[e]=a().then(e=>e)),this.manifestLoading[e]}constructor(e){this.loadingHostSnapshot=null,this.manifestCache=new Map,this.hooks=new c.PluginSystem({beforeLoadRemoteSnapshot:new l.AsyncHook("beforeLoadRemoteSnapshot"),loadSnapshot:new u.AsyncWaterfallHook("loadGlobalSnapshot"),loadRemoteSnapshot:new u.AsyncWaterfallHook("loadRemoteSnapshot"),afterLoadSnapshot:new u.AsyncWaterfallHook("afterLoadSnapshot")}),this.manifestLoading=a.Global.__FEDERATION__.__MANIFEST_LOADING__,this.HostInstance=e,this.loaderHook=e.loaderHook}},t.getGlobalRemoteInfo=p},62648(e,t,r){let o=r(85968),n=r(95018);r(87728);let a=r(3371),i=r(89850),s=r(4071);function l(e,t){let r=n.getRemoteEntryInfoFromSnapshot(t);r.url||o.error(s.RUNTIME_011,s.runtimeDescMap,{remoteName:e.name});let a=(0,i.getResourceUrl)(t,r.url);i.isBrowserEnvValue||a.startsWith("http")||(a=`https:${a}`),e.type=r.type,e.entryGlobalName=r.globalName,e.entry=a,e.version=t.version,e.buildVersion=t.buildVersion}function u(){return{name:"snapshot-plugin",async afterResolve(e){let{remote:t,pkgNameOrAlias:r,expose:o,origin:i,remoteInfo:s,id:u}=e;if(!n.isRemoteInfoWithEntry(t)||!n.isPureRemoteEntry(t)){let{remoteSnapshot:n,globalSnapshot:c}=await i.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:t,id:u});l(s,n);let d={remote:t,preloadConfig:{nameOrAlias:r,exposes:[o],resourceCategory:"sync",share:!1,depsRemote:!1}},f=await i.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({origin:i,preloadOptions:d,remoteInfo:s,remote:t,remoteSnapshot:n,globalSnapshot:c});return f&&a.preloadAssets(s,i,f,!1),{...e,remoteSnapshot:n}}return e}}}t.assignRemoteInfo=l,t.snapshotPlugin=u},61949(e,t,r){let o=r(85968),n=r(74331),a=r(45818),i=r(7269),s=r(28395),l=r(84616),u=r(53565);r(87728);let c=r(3371),d=r(11415),f=r(14007),p=r(25344),h=r(69757),m=r(11767),g=r(27185);r(7353);let y=r(36292),E=r(89850),S=r(4071);t.RemoteHandler=class{formatAndRegisterRemote(e,t){return(t.remotes||[]).reduce((e,t)=>(this.registerRemote(t,e,{force:!1}),e),e.remotes)}setIdToRemoteMap(e,t){let{remote:r,expose:o}=t,{name:n,alias:a}=r;if(this.idToRemoteMap[e]={name:r.name,expose:o},a&&e.startsWith(n)){let t=e.replace(n,a);this.idToRemoteMap[t]={name:r.name,expose:o};return}if(a&&e.startsWith(a)){let t=e.replace(a,n);this.idToRemoteMap[t]={name:r.name,expose:o}}}async loadRemote(e,t){let{host:r}=this;try{let{loadFactory:o=!0}=t||{loadFactory:!0},{module:n,moduleOptions:a,remoteMatchInfo:i}=await this.getRemoteModuleAndOptions({id:e}),{pkgNameOrAlias:s,remote:l,expose:u,id:c,remoteSnapshot:d}=i,f=await n.get(c,u,t,d),p=await this.hooks.lifecycle.onLoad.emit({id:c,pkgNameOrAlias:s,expose:u,exposeModule:o?f:void 0,exposeModuleFactory:o?void 0:f,remote:l,options:a,moduleInstance:n,origin:r});if(this.setIdToRemoteMap(e,i),"function"==typeof p)return p;return f}catch(a){let{from:o="runtime"}=t||{from:"runtime"},n=await this.hooks.lifecycle.errorLoadRemote.emit({id:e,error:a,from:o,lifecycle:"onLoad",origin:r});if(!n)throw a;return n}}async preloadRemote(e){let{host:t}=this;await this.hooks.lifecycle.beforePreloadRemote.emit({preloadOps:e,options:t.options,origin:t});let r=c.formatPreloadArgs(t.options.remotes,e);await Promise.all(r.map(async e=>{let{remote:r}=e,o=l.getRemoteInfo(r),{globalSnapshot:n,remoteSnapshot:a}=await t.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:r}),i=await this.hooks.lifecycle.generatePreloadAssets.emit({origin:t,preloadOptions:e,remote:r,remoteInfo:o,globalSnapshot:n,remoteSnapshot:a});i&&c.preloadAssets(o,t,i)}))}registerRemotes(e,t){let{host:r}=this;e.forEach(e=>{this.registerRemote(e,r.options.remotes,{force:null==t?void 0:t.force})})}async getRemoteModuleAndOptions(e){let t,{host:r}=this,{id:n}=e;try{t=await this.hooks.lifecycle.beforeRequest.emit({id:n,options:r.options,origin:r})}catch(e){if(!(t=await this.hooks.lifecycle.errorLoadRemote.emit({id:n,options:r.options,origin:r,from:"runtime",error:e,lifecycle:"beforeRequest"})))throw e}let{id:a}=t,i=s.matchRemoteWithNameAndExpose(r.options.remotes,a);i||o.error(S.RUNTIME_004,S.runtimeDescMap,{hostName:r.options.name,requestId:a},void 0,u.optionsToMFContext(r.options));let{remote:c}=i,f=l.getRemoteInfo(c),p=await r.sharedHandler.hooks.lifecycle.afterResolve.emit({id:a,...i,options:r.options,origin:r,remoteInfo:f}),{remote:h,expose:m}=p;o.assert(h&&m,`The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${a}.`);let g=r.moduleCache.get(h.name),y={host:r,remoteInfo:f};return g||(g=new d.Module(y),r.moduleCache.set(h.name,g)),{module:g,moduleOptions:y,remoteMatchInfo:p}}registerRemote(e,t,r){let{host:n}=this,i=()=>{if(e.alias){let r=t.find(t=>{var r;return e.alias&&(t.name.startsWith(e.alias)||(null==(r=t.alias)?void 0:r.startsWith(e.alias)))});o.assert(!r,`The alias ${e.alias} of remote ${e.name} is not allowed to be the prefix of ${r&&r.name} name or alias`)}"entry"in e&&E.isBrowserEnvValue&&"u">typeof window&&!e.entry.startsWith("http")&&(e.entry=new URL(e.entry,window.location.origin).href),e.shareScope||(e.shareScope=a.DEFAULT_SCOPE),e.type||(e.type=a.DEFAULT_REMOTE_TYPE)};this.hooks.lifecycle.beforeRegisterRemote.emit({remote:e,origin:n});let s=t.find(t=>t.name===e.name);if(s){let o=[`The remote "${e.name}" is already registered.`,"Please note that overriding it may cause unexpected errors."];(null==r?void 0:r.force)&&(this.removeRemote(s),i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:n}),(0,E.warn)(o.join(" ")))}else i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:n})}removeRemote(e){try{let{host:r}=this,{name:o}=e,a=r.options.remotes.findIndex(e=>e.name===o);-1!==a&&r.options.remotes.splice(a,1);let s=r.moduleCache.get(e.name);if(s){var t;let o=s.remoteInfo,a=o.entryGlobalName;n.CurrentGlobal[a]&&((null==(t=Object.getOwnPropertyDescriptor(n.CurrentGlobal,a))?void 0:t.configurable)?delete n.CurrentGlobal[a]:n.CurrentGlobal[a]=void 0);let u=l.getRemoteEntryUniqueKey(s.remoteInfo);n.globalLoading[u]&&delete n.globalLoading[u],r.snapshotHandler.manifestCache.delete(o.entry);let c=o.buildVersion?(0,E.composeKeyWithSeparator)(o.name,o.buildVersion):o.name,d=n.CurrentGlobal.__FEDERATION__.__INSTANCES__.findIndex(e=>o.buildVersion?e.options.id===c:e.name===c);if(-1!==d){let e=n.CurrentGlobal.__FEDERATION__.__INSTANCES__[d];c=e.options.id||c;let t=i.getGlobalShareScope(),r=!0,a=[];Object.keys(t).forEach(e=>{let n=t[e];n&&Object.keys(n).forEach(t=>{let i=n[t];i&&Object.keys(i).forEach(n=>{let s=i[n];s&&Object.keys(s).forEach(i=>{let l=s[i];l&&"object"==typeof l&&l.from===o.name&&(l.loaded||l.loading?(l.useIn=l.useIn.filter(e=>e!==o.name),l.useIn.length?r=!1:a.push([e,t,n,i])):a.push([e,t,n,i]))})})})}),r&&(e.shareScopeMap={},delete t[c]),a.forEach(e=>{var r,o,n;let[a,i,s,l]=e;null==(n=t[a])||null==(o=n[i])||null==(r=o[s])||delete r[l]}),n.CurrentGlobal.__FEDERATION__.__INSTANCES__.splice(d,1)}let{hostGlobalSnapshot:f}=y.getGlobalRemoteInfo(e,r);if(f){let t=f&&"remotesInfo"in f&&f.remotesInfo&&n.getInfoWithoutType(f.remotesInfo,e.name).key;t&&(delete f.remotesInfo[t],n.Global.__FEDERATION__.__MANIFEST_LOADING__[t]&&delete n.Global.__FEDERATION__.__MANIFEST_LOADING__[t])}r.moduleCache.delete(e.name)}}catch(e){o.logger.error(`removeRemote failed: ${e instanceof Error?e.message:String(e)}`)}}constructor(e){this.hooks=new g.PluginSystem({beforeRegisterRemote:new h.SyncWaterfallHook("beforeRegisterRemote"),registerRemote:new h.SyncWaterfallHook("registerRemote"),beforeRequest:new m.AsyncWaterfallHook("beforeRequest"),onLoad:new p.AsyncHook("onLoad"),handlePreloadModule:new f.SyncHook("handlePreloadModule"),errorLoadRemote:new p.AsyncHook("errorLoadRemote"),beforePreloadRemote:new p.AsyncHook("beforePreloadRemote"),generatePreloadAssets:new p.AsyncHook("generatePreloadAssets"),afterPreloadRemote:new p.AsyncHook,loadEntry:new p.AsyncHook}),this.host=e,this.idToRemoteMap={}}}},39032(e,t,r){let o=r(85968),n=r(45818),a=r(7269),i=r(53565);r(87728);let s=r(25344),l=r(69757),u=r(11767),c=r(27185);r(7353);let d=r(4071);t.SharedHandler=class{registerShared(e,t){let{newShareInfos:r,allShareInfos:o}=a.formatShareConfigs(e,t);return Object.keys(r).forEach(e=>{r[e].forEach(r=>{r.scope.forEach(o=>{var n;this.hooks.lifecycle.beforeRegisterShare.emit({origin:this.host,pkgName:e,shared:r}),(null==(n=this.shareScopeMap[o])?void 0:n[e])||this.setShared({pkgName:e,lib:r.lib,get:r.get,loaded:r.loaded||!!r.lib,shared:r,from:t.name})})})}),{newShareInfos:r,allShareInfos:o}}async loadShare(e,t){let{host:r}=this,n=a.getTargetSharedOptions({pkgName:e,extraOptions:t,shareInfos:r.options.shared});(null==n?void 0:n.scope)&&await Promise.all(n.scope.map(async e=>{await Promise.all(this.initializeSharing(e,{strategy:n.strategy}))}));let{shareInfo:i}=await this.hooks.lifecycle.beforeLoadShare.emit({pkgName:e,shareInfo:n,shared:r.options.shared,origin:r});o.assert(i,`Cannot find shared "${e}" in host "${r.options.name}". Ensure the shared config for "${e}" is declared in the federation plugin options and the host has been initialized before loading shares.`);let{shared:s,useTreesShaking:l}=a.getRegisteredShare(this.shareScopeMap,e,i,this.hooks.lifecycle.resolveShare)||{};if(s){let t=a.directShare(s,l);if(t.lib)return a.addUseIn(t,r.options.name),t.lib;if(t.loading&&!t.loaded){let e=await t.loading;return t.loaded=!0,t.lib||(t.lib=e),a.addUseIn(t,r.options.name),e}{let o=(async()=>{let e=await t.get();return a.addUseIn(t,r.options.name),t.loaded=!0,t.lib=e,e})();return this.setShared({pkgName:e,loaded:!1,shared:s,from:r.options.name,lib:null,loading:o,treeShaking:l?t:void 0}),o}}{if(null==t?void 0:t.customShareInfo)return!1;let o=a.shouldUseTreeShaking(i.treeShaking),n=a.directShare(i,o),s=(async()=>{let t=await n.get();n.lib=t,n.loaded=!0,a.addUseIn(n,r.options.name);let{shared:o,useTreesShaking:s}=a.getRegisteredShare(this.shareScopeMap,e,i,this.hooks.lifecycle.resolveShare)||{};if(o){let e=a.directShare(o,s);e.lib=t,e.loaded=!0,o.from=i.from}return t})();return this.setShared({pkgName:e,loaded:!1,shared:i,from:r.options.name,lib:null,loading:s,treeShaking:o?n:void 0}),s}}initializeSharing(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:n.DEFAULT_SCOPE,t=arguments.length>1?arguments[1]:void 0,{host:r}=this,o=null==t?void 0:t.from,i=null==t?void 0:t.strategy,s=null==t?void 0:t.initScope,l=[];if("build"!==o){let{initTokens:t}=this;s||(s=[]);let r=t[e];if(r||(r=t[e]={from:this.host.name}),s.indexOf(r)>=0)return l;s.push(r)}let u=this.shareScopeMap,c=r.options.name;u[e]||(u[e]={});let d=u[e],f=(e,t)=>{var r;let{version:o,eager:n}=t;d[e]=d[e]||{};let i=d[e],s=i[o]&&a.directShare(i[o]),l=!!(s&&("eager"in s&&s.eager||"shareConfig"in s&&(null==(r=s.shareConfig)?void 0:r.eager)));(!s||"loaded-first"!==s.strategy&&!s.loaded&&(!n!=!l?n:c>i[o].from))&&(i[o]=t)},p=async e=>{let t,{module:o}=await r.remoteHandler.getRemoteModuleAndOptions({id:e});try{t=await o.getEntry()}catch(o){if(!(t=await r.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:o,from:"runtime",lifecycle:"beforeLoadShare",origin:r})))return}finally{(null==t?void 0:t.init)&&!o.initing&&(o.remoteEntryExports=t,await o.init(void 0,void 0,s))}};return Object.keys(r.options.shared).forEach(t=>{r.options.shared[t].forEach(r=>{r.scope.includes(e)&&f(t,r)})}),("version-first"===r.options.shareStrategy||"version-first"===i)&&r.options.remotes.forEach(t=>{t.shareScope===e&&l.push(p(t.name))}),l}loadShareSync(e,t){let{host:r}=this,n=a.getTargetSharedOptions({pkgName:e,extraOptions:t,shareInfos:r.options.shared});(null==n?void 0:n.scope)&&n.scope.forEach(e=>{this.initializeSharing(e,{strategy:n.strategy})});let{shared:s,useTreesShaking:l}=a.getRegisteredShare(this.shareScopeMap,e,n,this.hooks.lifecycle.resolveShare)||{};if(s){if("function"==typeof s.lib)return a.addUseIn(s,r.options.name),s.loaded||(s.loaded=!0,s.from===r.options.name&&(n.loaded=!0)),s.lib;if("function"==typeof s.get){let t=s.get();if(!(t instanceof Promise))return a.addUseIn(s,r.options.name),this.setShared({pkgName:e,loaded:!0,from:r.options.name,lib:t,shared:s}),t}}if(n.lib)return n.loaded||(n.loaded=!0),n.lib;if(n.get){let a=n.get();return a instanceof Promise&&o.error((null==t?void 0:t.from)==="build"?d.RUNTIME_005:d.RUNTIME_006,d.runtimeDescMap,{hostName:r.options.name,sharedPkgName:e},void 0,i.optionsToMFContext(r.options)),n.lib=a,this.setShared({pkgName:e,loaded:!0,from:r.options.name,lib:n.lib,shared:n}),n.lib}o.error(d.RUNTIME_006,d.runtimeDescMap,{hostName:r.options.name,sharedPkgName:e},void 0,i.optionsToMFContext(r.options))}initShareScopeMap(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{host:o}=this;this.shareScopeMap[e]=t,this.hooks.lifecycle.initContainerShareScopeMap.emit({shareScope:t,options:o.options,origin:o,scopeName:e,hostShareScopeMap:r.hostShareScopeMap})}setShared(e){let{pkgName:t,shared:r,from:o,lib:n,loading:a,loaded:i,get:s,treeShaking:l}=e,{version:u,scope:c="default",...d}=r,f=Array.isArray(c)?c:[c],p=e=>{let t=(e,t,r)=>{r&&!e[t]&&(e[t]=r)},r=l?e.treeShaking:e;t(r,"loaded",i),t(r,"loading",a),t(r,"get",s)};f.forEach(e=>{this.shareScopeMap[e]||(this.shareScopeMap[e]={}),this.shareScopeMap[e][t]||(this.shareScopeMap[e][t]={}),this.shareScopeMap[e][t][u]||(this.shareScopeMap[e][t][u]={version:u,scope:[e],...d,lib:n});let r=this.shareScopeMap[e][t][u];p(r),o&&r.from!==o&&(r.from=o)})}_setGlobalShareScopeMap(e){let t=a.getGlobalShareScope(),r=e.id||e.name;r&&!t[r]&&(t[r]=this.shareScopeMap)}constructor(e){this.hooks=new c.PluginSystem({beforeRegisterShare:new l.SyncWaterfallHook("beforeRegisterShare"),afterResolve:new u.AsyncWaterfallHook("afterResolve"),beforeLoadShare:new u.AsyncWaterfallHook("beforeLoadShare"),loadShare:new s.AsyncHook,resolveShare:new l.SyncWaterfallHook("resolveShare"),initContainerShareScopeMap:new l.SyncWaterfallHook("initContainerShareScopeMap")}),this.host=e,this.shareScopeMap={},this.initTokens={},this._setGlobalShareScopeMap(e.options)}}},94219(e,t,r){var o=r(36568).__exportAll({});Object.defineProperty(t,"type_exports",{enumerable:!0,get:function(){return o}})},53565(e,t){function r(e){return{name:e.name,alias:e.alias,entry:"entry"in e?e.entry:void 0,version:"version"in e?e.version:void 0,type:e.type,entryGlobalName:e.entryGlobalName,shareScope:e.shareScope}}t.optionsToMFContext=function(e){var t,o,n,a,i,s;let l={};for(let[t,r]of Object.entries(e.shared)){let e=r[0];e&&(l[t]={version:e.version,singleton:null==(n=e.shareConfig)?void 0:n.singleton,requiredVersion:(null==(a=e.shareConfig)?void 0:a.requiredVersion)!==!1&&(null==(i=e.shareConfig)?void 0:i.requiredVersion),eager:e.eager,strictVersion:null==(s=e.shareConfig)?void 0:s.strictVersion})}return{project:{name:e.name,mfRole:(null==(t=e.remotes)?void 0:t.length)>0?"host":"unknown"},mfConfig:{name:e.name,remotes:(null==(o=e.remotes)?void 0:o.map(r))??[],shared:l}}}},90537(e,t,r){r(89850),t.getBuilderId=function(){return"HistogramChart:0.12.0-beta.0"}},25344(e,t,r){let o=r(14007);t.AsyncHook=class extends o.SyncHook{emit(){let e;for(var t=arguments.length,r=Array(t),o=0;o<t;o++)r[o]=arguments[o];let n=Array.from(this.listeners);if(n.length>0){let t=0,o=e=>!1!==e&&(t<n.length?Promise.resolve(n[t++].apply(null,r)).then(o):e);e=o()}return Promise.resolve(e)}}},11767(e,t,r){let o=r(85968),n=r(95018),a=r(14007),i=r(69757);t.AsyncWaterfallHook=class extends a.SyncHook{emit(e){n.isObject(e)||o.error(`The response data for the "${this.type}" hook must be an object.`);let t=Array.from(this.listeners);if(t.length>0){let r=0,n=t=>(o.warn(t),this.onerror(t),e),a=o=>{if(i.checkReturnData(e,o)){if(e=o,r<t.length)try{return Promise.resolve(t[r++](e)).then(a,n)}catch(e){return n(e)}}else this.onerror(`A plugin returned an incorrect value for the "${this.type}" type.`);return e};return Promise.resolve(a(e))}return Promise.resolve(e)}constructor(e){super(),this.onerror=o.error,this.type=e}}},7353(e,t,r){r(14007),r(25344),r(69757),r(11767),r(27185)},27185(e,t,r){let o=r(85968),n=r(95018);r(87728),t.PluginSystem=class{applyPlugin(e,t){o.assert(n.isPlainObject(e),"Plugin configuration is invalid.");let r=e.name;if(o.assert(r,"A name must be provided by the plugin."),!this.registerPlugins[r]){var a;this.registerPlugins[r]=e,null==(a=e.apply)||a.call(e,t),Object.keys(this.lifecycle).forEach(t=>{let r=e[t];r&&this.lifecycle[t].on(r)})}}removePlugin(e){o.assert(e,"A name is required.");let t=this.registerPlugins[e];o.assert(t,`The plugin "${e}" is not registered.`),Object.keys(t).forEach(e=>{"name"!==e&&this.lifecycle[e].remove(t[e])})}constructor(e){this.registerPlugins={},this.lifecycle=e,this.lifecycleKeys=Object.keys(e)}}},14007(e,t){t.SyncHook=class{on(e){"function"==typeof e&&this.listeners.add(e)}once(e){let t=this;this.on(function r(){for(var o=arguments.length,n=Array(o),a=0;a<o;a++)n[a]=arguments[a];return t.remove(r),e.apply(null,n)})}emit(){let e;for(var t=arguments.length,r=Array(t),o=0;o<t;o++)r[o]=arguments[o];return this.listeners.size>0&&this.listeners.forEach(t=>{e=t(...r)}),e}remove(e){this.listeners.delete(e)}removeAll(){this.listeners.clear()}constructor(e){this.type="",this.listeners=new Set,e&&(this.type=e)}}},69757(e,t,r){let o=r(85968),n=r(95018),a=r(14007);function i(e,t){if(!n.isObject(t))return!1;if(e!==t){for(let r in e)if(!(r in t))return!1}return!0}t.SyncWaterfallHook=class extends a.SyncHook{emit(e){for(let t of(n.isObject(e)||o.error(`The data for the "${this.type}" hook should be an object.`),this.listeners))try{let r=t(e);if(i(e,r))e=r;else{this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);break}}catch(e){o.warn(e),this.onerror(e)}return e}constructor(e){super(),this.onerror=o.error,this.type=e}},t.checkReturnData=i},87728(e,t,r){r(85968),r(95018),r(90537),r(28395),r(8349),r(84616),r(53565),r(89850)},84616(e,t,r){let o=r(85968),n=r(74331),a=r(45818),i=r(89850),s=r(4071),l=".then(callbacks[0]).catch(callbacks[1])";async function u(e){let{entry:t,remoteEntryExports:r}=e;return new Promise((e,n)=>{try{r?e(r):"u">typeof FEDERATION_ALLOW_NEW_FUNCTION?Function("callbacks",`import("${t}")${l}`)([e,n]):import(t).then(e).catch(n)}catch(e){o.error(`Failed to load ESM entry from "${t}". ${e instanceof Error?e.message:String(e)}`)}})}async function c(e){let{entry:t,remoteEntryExports:r}=e;return new Promise((e,n)=>{try{r?e(r):Function("callbacks",`System.import("${t}")${l}`)([e,n])}catch(e){o.error(`Failed to load SystemJS entry from "${t}". ${e instanceof Error?e.message:String(e)}`)}})}function d(e,t,r){let{remoteEntryKey:a,entryExports:i}=n.getRemoteEntryExports(e,t);return i||o.error(s.RUNTIME_001,s.runtimeDescMap,{remoteName:e,remoteEntryUrl:r,remoteEntryKey:a}),i}async function f(e){let{name:t,globalName:r,entry:a,remoteInfo:l,loaderHook:u,getEntryUrl:c}=e,{entryExports:f}=n.getRemoteEntryExports(t,r);if(f)return f;let p=c?c(a):a;return(0,i.loadScript)(p,{attrs:{},createScriptHook:(e,t)=>{let r=u.lifecycle.createScript.emit({url:e,attrs:t,remoteInfo:l});if(r&&(r instanceof HTMLScriptElement||"script"in r||"timeout"in r))return r}}).then(()=>d(t,r,a),e=>{let r=e instanceof Error?e.message:String(e);o.error(s.RUNTIME_008,s.runtimeDescMap,{remoteName:t,resourceUrl:p},r)})}async function p(e){let{remoteInfo:t,remoteEntryExports:r,loaderHook:o,getEntryUrl:n}=e,{entry:a,entryGlobalName:i,name:s,type:l}=t;switch(l){case"esm":case"module":return u({entry:a,remoteEntryExports:r});case"system":return c({entry:a,remoteEntryExports:r});default:return f({entry:a,globalName:i,name:s,remoteInfo:t,loaderHook:o,getEntryUrl:n})}}async function h(e){let{remoteInfo:t,loaderHook:r}=e,{entry:a,entryGlobalName:s,name:l,type:u}=t,{entryExports:c}=n.getRemoteEntryExports(l,s);return c||(0,i.loadScriptNode)(a,{attrs:{name:l,globalName:s,type:u},loaderHook:{createScriptHook:function(e){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.lifecycle.createScript.emit({url:e,attrs:o,remoteInfo:t});if(n&&"url"in n)return n}}}).then(()=>d(l,s,a)).catch(e=>{o.error(`Failed to load Node.js entry for remote "${l}" from "${a}". ${e instanceof Error?e.message:String(e)}`)})}function m(e){let{entry:t,name:r}=e;return(0,i.composeKeyWithSeparator)(r,t)}async function g(e){let{origin:t,remoteEntryExports:r,remoteInfo:o,getEntryUrl:a,_inErrorHandling:l=!1}=e,u=m(o);if(r)return r;if(!n.globalLoading[u]){let e=t.remoteHandler.hooks.lifecycle.loadEntry,c=t.loaderHook;n.globalLoading[u]=e.emit({loaderHook:c,remoteInfo:o,remoteEntryExports:r}).then(e=>e||(("u">typeof ENV_TARGET?"web"===ENV_TARGET:i.isBrowserEnvValue)?p({remoteInfo:o,remoteEntryExports:r,loaderHook:c,getEntryUrl:a}):h({remoteInfo:o,loaderHook:c}))).catch(async e=>{let a=m(o),i=e instanceof Error&&e.message.includes("ScriptExecutionError");if(e instanceof Error&&e.message.includes(s.RUNTIME_008)&&!i&&!l){let e=e=>g({...e,_inErrorHandling:!0}),i=await t.loaderHook.lifecycle.loadEntryError.emit({getRemoteEntry:e,origin:t,remoteInfo:o,remoteEntryExports:r,globalLoading:n.globalLoading,uniqueKey:a});if(i)return i}throw e})}return n.globalLoading[u]}function y(e){return{...e,entry:"entry"in e?e.entry:"",type:e.type||a.DEFAULT_REMOTE_TYPE,entryGlobalName:e.entryGlobalName||e.name,shareScope:e.shareScope||a.DEFAULT_SCOPE}}t.getRemoteEntry=g,t.getRemoteEntryUniqueKey=m,t.getRemoteInfo=y},85968(e,t,r){let o=r(89850),n=r(89095),a="[ Federation Runtime ]",i=(0,o.createLogger)(a);function s(e,t,r,o,i){if(void 0!==t)return(0,n.logAndReport)(e,t,r??{},e=>{throw Error(`${a}: ${e}`)},o,i);let s=e;if(s instanceof Error)throw s.message.startsWith(a)||(s.message=`${a}: ${s.message}`),s;throw Error(`${a}: ${s}`)}function l(e){e instanceof Error&&(e.message.startsWith(a)||(e.message=`${a}: ${e.message}`)),i.warn(e)}t.assert=function(e,t,r,o,n){e||(void 0!==r?s(t,r,o,void 0,n):s(t))},t.error=s,t.logger=i,t.warn=l},28395(e,t){function r(e,t){for(let r of e){let e=t.startsWith(r.name),o=t.replace(r.name,"");if(e){if(o.startsWith("/"))return{pkgNameOrAlias:r.name,expose:o=`.${o}`,remote:r};else if(""===o)return{pkgNameOrAlias:r.name,expose:".",remote:r}}let n=r.alias&&t.startsWith(r.alias),a=r.alias&&t.replace(r.alias,"");if(r.alias&&n){if(a&&a.startsWith("/"))return{pkgNameOrAlias:r.alias,expose:a=`.${a}`,remote:r};else if(""===a)return{pkgNameOrAlias:r.alias,expose:".",remote:r}}}}t.matchRemote=function(e,t){for(let r of e)if(t===r.name||r.alias&&t===r.alias)return r},t.matchRemoteWithNameAndExpose=r},8349(e,t,r){let o=r(74331);t.registerPlugins=function(e,t){let r=o.getGlobalHostPlugins(),n=[t.hooks,t.remoteHandler.hooks,t.sharedHandler.hooks,t.snapshotHandler.hooks,t.loaderHook,t.bridgeHook];return r.length>0&&r.forEach(t=>{(null==e?void 0:e.find(e=>e.name!==t.name))&&e.push(t)}),e&&e.length>0&&e.forEach(e=>{n.forEach(r=>{r.applyPlugin(e,t)})}),e}},3371(e,t,r){let o=r(85968),n=r(28395),a=r(84616),i=r(89850);function s(e){return{resourceCategory:"sync",share:!0,depsRemote:!0,...e}}function l(e,t){return t.map(t=>{let r=n.matchRemote(e,t.nameOrAlias);return o.assert(r,`Unable to preload ${t.nameOrAlias} as it is not included in ${!r&&(0,i.safeToString)({remoteInfo:r,remotes:e})}`),{remote:r,preloadConfig:s(t)}})}function u(e){return e?e.map(e=>"."===e?e:e.startsWith("./")?e.replace("./",""):e):[]}function c(e,t,r){let o=!(arguments.length>3)||void 0===arguments[3]||arguments[3],{cssAssets:n,jsAssetsWithoutEntry:s,entryAssets:l}=r;if(t.options.inBrowser){if(l.forEach(r=>{let{moduleInfo:o}=r,n=t.moduleCache.get(e.name);n?a.getRemoteEntry({origin:t,remoteInfo:o,remoteEntryExports:n.remoteEntryExports}):a.getRemoteEntry({origin:t,remoteInfo:o,remoteEntryExports:void 0})}),o){let r={rel:"preload",as:"style"};n.forEach(o=>{let{link:n,needAttach:a}=(0,i.createLink)({url:o,cb:()=>{},attrs:r,createLinkHook:(r,o)=>{let n=t.loaderHook.lifecycle.createLink.emit({url:r,attrs:o,remoteInfo:e});if(n instanceof HTMLLinkElement)return n}});a&&document.head.appendChild(n)})}else{let r={rel:"stylesheet",type:"text/css"};n.forEach(o=>{let{link:n,needAttach:a}=(0,i.createLink)({url:o,cb:()=>{},attrs:r,createLinkHook:(r,o)=>{let n=t.loaderHook.lifecycle.createLink.emit({url:r,attrs:o,remoteInfo:e});if(n instanceof HTMLLinkElement)return n},needDeleteLink:!1});a&&document.head.appendChild(n)})}if(o){let r={rel:"preload",as:"script"};s.forEach(o=>{let{link:n,needAttach:a}=(0,i.createLink)({url:o,cb:()=>{},attrs:r,createLinkHook:(r,o)=>{let n=t.loaderHook.lifecycle.createLink.emit({url:r,attrs:o,remoteInfo:e});if(n instanceof HTMLLinkElement)return n}});a&&document.head.appendChild(n)})}else{let r={fetchpriority:"high",type:(null==e?void 0:e.type)==="module"?"module":"text/javascript"};s.forEach(o=>{let{script:n,needAttach:a}=(0,i.createScript)({url:o,cb:()=>{},attrs:r,createScriptHook:(r,o)=>{let n=t.loaderHook.lifecycle.createScript.emit({url:r,attrs:o,remoteInfo:e});if(n instanceof HTMLScriptElement)return n},needDeleteScript:!0});a&&document.head.appendChild(n)})}}}t.defaultPreloadArgs=s,t.formatPreloadArgs=l,t.normalizePreloadExposes=u,t.preloadAssets=c},17564(e,t){function r(e,t){return(e=Number(e)||e)>(t=Number(t)||t)?1:e===t?0:-1}function o(e,t){let{preRelease:o}=e,{preRelease:n}=t;if(void 0===o&&n)return 1;if(o&&void 0===n)return -1;if(void 0===o&&void 0===n)return 0;for(let e=0,t=o.length;e<=t;e++){let t=o[e],a=n[e];if(t!==a){if(void 0===t&&void 0===a)return 0;if(!t)return 1;if(!a)return -1;return r(t,a)}}return 0}function n(e,t){return r(e.major,t.major)||r(e.minor,t.minor)||r(e.patch,t.patch)||o(e,t)}function a(e,t){return e.version===t.version}t.compare=function(e,t){switch(e.operator){case"":case"=":return a(e,t);case">":return 0>n(e,t);case">=":return a(e,t)||0>n(e,t);case"<":return n(e,t)>0;case"<=":return a(e,t)||n(e,t)>0;case void 0:return!0;default:return!1}}},8950(e,t){let r="[0-9A-Za-z-]+",o=`(?:\\+(${r}(?:\\.${r})*))`,n="0|[1-9]\\d*",a="[0-9]+",i="\\d*[a-zA-Z-][a-zA-Z0-9-]*",s=`(?:${a}|${i})`,l=`(?:-?(${s}(?:\\.${s})*))`,u=`(?:${n}|${i})`,c=`(?:-(${u}(?:\\.${u})*))`,d=`${n}|x|X|\\*`,f=`[v=\\s]*(${d})(?:\\.(${d})(?:\\.(${d})(?:${c})?${o}?)?)?`,p=`^\\s*(${f})\\s+-\\s+(${f})\\s*$`,h=`[v=\\s]*${`(${a})\\.(${a})\\.(${a})`}${l}?${o}?`,m="((?:<|>)?=?)",g=`(\\s*)${m}\\s*(${h}|${f})`,y="(?:~>?)",E=`(\\s*)${y}\\s+`,S="(?:\\^)",b=`(\\s*)${S}\\s+`,_="(<|>)?=?\\s*\\*",v=`^${S}${f}$`,R=`v?${`(${n})\\.(${n})\\.(${n})`}${c}?${o}?`,I=`^${y}${f}$`,N=`^${m}\\s*${f}$`,T=`^${m}\\s*(${R})$|^$`,M="^\\s*>=\\s*0.0.0\\s*$";t.caret=v,t.caretTrim=b,t.comparator=T,t.comparatorTrim=g,t.gte0=M,t.hyphenRange=p,t.star=_,t.tilde=I,t.tildeTrim=E,t.xRange=N},51209(e,t,r){let o=r(13842),n=r(92190),a=r(17564);function i(e){return o.pipe(n.parseCarets,n.parseTildes,n.parseXRanges,n.parseStar)(e)}function s(e){return o.pipe(n.parseHyphen,n.parseComparatorTrim,n.parseTildeTrim,n.parseCaretTrim)(e.trim()).split(/\s+/).join(" ")}t.satisfy=function(e,t){if(!e)return!1;let r=o.extractComparator(e);if(!r)return!1;let[,l,,u,c,d,f]=r,p={operator:l,version:o.combineVersion(u,c,d,f),major:u,minor:c,patch:d,preRelease:null==f?void 0:f.split(".")};for(let e of t.split("||")){let t=e.trim();if(!t||"*"===t||"x"===t)return!0;try{let e=s(t);if(!e.trim())return!0;let r=e.split(" ").map(e=>i(e)).join(" ");if(!r.trim())return!0;let l=r.split(/\s+/).map(e=>n.parseGTE0(e)).filter(Boolean);if(0===l.length)continue;let u=!0;for(let e of l){let t=o.extractComparator(e);if(!t){u=!1;break}let[,r,,n,i,s,l]=t;if(!a.compare({operator:r,version:o.combineVersion(n,i,s,l),major:n,minor:i,patch:s,preRelease:null==l?void 0:l.split(".")},p)){u=!1;break}}if(u)return!0}catch(e){console.error(`[semver] Error processing range part "${t}":`,e);continue}}return!1}},92190(e,t,r){let o=r(8950),n=r(13842);function a(e){return e.replace(n.parseRegex(o.hyphenRange),(e,t,r,o,a,i,s,l,u,c,d,f)=>(t=n.isXVersion(r)?"":n.isXVersion(o)?`>=${r}.0.0`:n.isXVersion(a)?`>=${r}.${o}.0`:`>=${t}`,l=n.isXVersion(u)?"":n.isXVersion(c)?`<${Number(u)+1}.0.0-0`:n.isXVersion(d)?`<${u}.${Number(c)+1}.0-0`:f?`<=${u}.${c}.${d}-${f}`:`<=${l}`,`${t} ${l}`.trim()))}function i(e){return e.replace(n.parseRegex(o.comparatorTrim),"$1$2$3")}function s(e){return e.replace(n.parseRegex(o.tildeTrim),"$1~")}function l(e){return e.trim().split(/\s+/).map(e=>e.replace(n.parseRegex(o.caret),(e,t,r,o,a)=>{if(n.isXVersion(t))return"";if(n.isXVersion(r))return`>=${t}.0.0 <${Number(t)+1}.0.0-0`;if(n.isXVersion(o))if("0"===t)return`>=${t}.${r}.0 <${t}.${Number(r)+1}.0-0`;else return`>=${t}.${r}.0 <${Number(t)+1}.0.0-0`;if(a)if("0"!==t)return`>=${t}.${r}.${o}-${a} <${Number(t)+1}.0.0-0`;else if("0"===r)return`>=${t}.${r}.${o}-${a} <${t}.${r}.${Number(o)+1}-0`;else return`>=${t}.${r}.${o}-${a} <${t}.${Number(r)+1}.0-0`;if("0"===t)if("0"===r)return`>=${t}.${r}.${o} <${t}.${r}.${Number(o)+1}-0`;else return`>=${t}.${r}.${o} <${t}.${Number(r)+1}.0-0`;return`>=${t}.${r}.${o} <${Number(t)+1}.0.0-0`})).join(" ")}function u(e){return e.trim().split(/\s+/).map(e=>e.replace(n.parseRegex(o.tilde),(e,t,r,o,a)=>n.isXVersion(t)?"":n.isXVersion(r)?`>=${t}.0.0 <${Number(t)+1}.0.0-0`:n.isXVersion(o)?`>=${t}.${r}.0 <${t}.${Number(r)+1}.0-0`:a?`>=${t}.${r}.${o}-${a} <${t}.${Number(r)+1}.0-0`:`>=${t}.${r}.${o} <${t}.${Number(r)+1}.0-0`)).join(" ")}function c(e){return e.split(/\s+/).map(e=>e.trim().replace(n.parseRegex(o.xRange),(e,t,r,o,a,i)=>{let s=n.isXVersion(r),l=s||n.isXVersion(o),u=l||n.isXVersion(a);if("="===t&&u&&(t=""),i="",s)if(">"===t||"<"===t)return"<0.0.0-0";else return"*";return t&&u?(l&&(o=0),a=0,">"===t?(t=">=",l?(r=Number(r)+1,o=0):o=Number(o)+1,a=0):"<="===t&&(t="<",l?r=Number(r)+1:o=Number(o)+1),"<"===t&&(i="-0"),`${t+r}.${o}.${a}${i}`):l?`>=${r}.0.0${i} <${Number(r)+1}.0.0-0`:u?`>=${r}.${o}.0${i} <${r}.${Number(o)+1}.0-0`:e})).join(" ")}function d(e){return e.trim().replace(n.parseRegex(o.star),"")}function f(e){return e.trim().replace(n.parseRegex(o.gte0),"")}t.parseCaretTrim=function(e){return e.replace(n.parseRegex(o.caretTrim),"$1^")},t.parseCarets=l,t.parseComparatorTrim=i,t.parseGTE0=f,t.parseHyphen=a,t.parseStar=d,t.parseTildeTrim=s,t.parseTildes=u,t.parseXRanges=c},13842(e,t,r){let o=r(8950);function n(e){return new RegExp(e)}function a(e){return!e||"x"===e.toLowerCase()||"*"===e}function i(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return e=>t.reduce((e,t)=>t(e),e)}function s(e){return e.match(n(o.comparator))}t.combineVersion=function(e,t,r,o){let n=`${e}.${t}.${r}`;return o?`${n}-${o}`:n},t.extractComparator=s,t.isXVersion=a,t.parseRegex=n,t.pipe=i},7269(e,t,r){let o=r(85968),n=r(95018),a=r(74331),i=r(45818),s=r(51209),l=r(89850);function u(e,t,r,n){var a,i;let s;return s="get"in e?e.get:"lib"in e?()=>Promise.resolve(e.lib):()=>Promise.resolve(()=>{o.error(`Cannot get shared "${r}" from "${t}": neither "get" nor "lib" is provided in the share config.`)}),(null==(a=e.shareConfig)?void 0:a.eager)&&(null==(i=e.treeShaking)?void 0:i.mode)&&o.error(`Invalid shared config for "${r}" from "${t}": cannot use both "eager: true" and "treeShaking.mode" simultaneously. Choose one strategy.`),{deps:[],useIn:[],from:t,loading:null,...e,shareConfig:{requiredVersion:`^${e.version}`,singleton:!1,eager:!1,strictVersion:!1,...e.shareConfig},get:s,loaded:null!=e&&!!e.loaded||"lib"in e||void 0,version:e.version??"0",scope:Array.isArray(e.scope)?e.scope:[e.scope??"default"],strategy:(e.strategy??n)||"version-first",treeShaking:e.treeShaking?{...e.treeShaking,mode:e.treeShaking.mode??"server-calc",status:e.treeShaking.status??l.TreeShakingStatus.UNKNOWN,useIn:[]}:void 0}}function c(e,t){let r=t.shared||{},o=t.name,a=Object.keys(r).reduce((e,a)=>{let i=n.arrayOptions(r[a]);return e[a]=e[a]||[],i.forEach(r=>{e[a].push(u(r,o,a,t.shareStrategy))}),e},{}),i={...e.shared};return Object.keys(a).forEach(e=>{i[e]?a[e].forEach(t=>{i[e].find(e=>e.version===t.version)||i[e].push(t)}):i[e]=a[e]}),{allShareInfos:i,newShareInfos:a}}function d(e,t){if(!e)return!1;let{status:r,mode:o}=e;return r!==l.TreeShakingStatus.NO_USE&&(r===l.TreeShakingStatus.CALCULATED||"runtime-infer"===o&&(!t||g(e,t)))}function f(e,t){let r=e=>{if(!Number.isNaN(Number(e))){let t=e.split("."),r=e;for(let e=0;e<3-t.length;e++)r+=".0";return r}return e};return!!s.satisfy(r(e),`<=${r(t)}`)}let p=(e,t)=>{let r=t||function(e,t){return f(e,t)};return Object.keys(e).reduce((e,t)=>!e||r(e,t)||"0"===e?t:e,0)},h=e=>!!e.loaded||"function"==typeof e.lib,m=e=>!!e.loading,g=(e,t)=>{if(!e||!t)return!1;let{usedExports:r}=e;return!!r&&!!t.every(e=>r.includes(e))};function y(e,t,r,o){let n=e[t][r],a="",i=d(o),s=function(e,t){return i?!n[e].treeShaking||!!n[t].treeShaking&&!h(n[e].treeShaking)&&f(e,t):!h(n[e])&&f(e,t)};if(i){if(a=p(e[t][r],s))return{version:a,useTreesShaking:i};i=!1}return{version:p(e[t][r],s),useTreesShaking:i}}let E=e=>h(e)||m(e);function S(e,t,r,o){let n=e[t][r],a="",i=d(o),s=function(e,t){if(i){if(!n[e].treeShaking)return!0;if(!n[t].treeShaking)return!1;if(E(n[t].treeShaking))if(E(n[e].treeShaking))return!!f(e,t);else return!0;if(E(n[e].treeShaking))return!1}if(E(n[t]))if(E(n[e]))return!!f(e,t);else return!0;return!E(n[e])&&f(e,t)};if(i){if(a=p(e[t][r],s))return{version:a,useTreesShaking:i};i=!1}return{version:p(e[t][r],s),useTreesShaking:i}}function b(e){return"loaded-first"===e?S:y}function _(e,t,r,n){if(!e)return;let{shareConfig:l,scope:u=i.DEFAULT_SCOPE,strategy:c,treeShaking:f}=r;for(let i of Array.isArray(u)?u:[u])if(l&&e[i]&&e[i][t]){let{requiredVersion:u}=l,{version:p,useTreesShaking:h}=b(c)(e,i,t,f),m=()=>{let n=e[i][t][p];if(l.singleton){if("string"==typeof u&&!s.satisfy(p,u)){let e=`Version ${p} from ${p&&n.from} of shared singleton module ${t} does not satisfy the requirement of ${r.from} which needs ${u})`;l.strictVersion?o.error(e):o.warn(e)}return{shared:n,useTreesShaking:h}}{if(!1===u||"*"===u||s.satisfy(p,u))return{shared:n,useTreesShaking:h};let r=d(f);if(r){for(let[o,n]of Object.entries(e[i][t]))if(d(n.treeShaking,null==f?void 0:f.usedExports)&&s.satisfy(o,u))return{shared:n,useTreesShaking:r}}for(let[r,o]of Object.entries(e[i][t]))if(s.satisfy(r,u))return{shared:o,useTreesShaking:!1}}},g={shareScopeMap:e,scope:i,pkgName:t,version:p,GlobalFederation:a.Global.__FEDERATION__,shareInfo:r,resolver:m};return(n.emit(g)||g).resolver()}}function v(){return a.Global.__FEDERATION__.__SHARE__}function R(e){let{pkgName:t,extraOptions:r,shareInfos:o}=e,n=e=>{if(!e)return;let t={};e.forEach(e=>{t[e.version]=e});let r=function(e,r){return!h(t[e])&&f(e,r)};return t[p(t,r)]},a=(null==r?void 0:r.resolver)??n,i=e=>null!==e&&"object"==typeof e&&!Array.isArray(e),s=function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];let o={};for(let e of t)if(e)for(let[t,r]of Object.entries(e)){let e=o[t];i(e)&&i(r)?o[t]=s(e,r):void 0!==r&&(o[t]=r)}return o};return s(a(o[t]),null==r?void 0:r.customShareInfo)}function I(e,t){return t&&e.treeShaking?e.treeShaking:e}t.addUseIn=(e,t)=>{e.useIn||(e.useIn=[]),n.addUniqueItem(e.useIn,t)},t.directShare=I,t.formatShareConfigs=c,t.getGlobalShareScope=v,t.getRegisteredShare=_,t.getTargetSharedOptions=R,t.shouldUseTreeShaking=d},95018(e,t,r){let o=r(85968),n=r(89850);function a(e,t){return -1===e.findIndex(e=>e===t)&&e.push(t),e}function i(e){return"version"in e&&e.version?`${e.name}:${e.version}`:"entry"in e&&e.entry?`${e.name}:${e.entry}`:`${e.name}`}function s(e){return void 0!==e.entry}function l(e){return!e.entry.includes(".json")}async function u(e,t){try{return await e()}catch(e){t||o.warn(e);return}}function c(e){return e&&"object"==typeof e}let d=Object.prototype.toString;function f(e){return"[object Object]"===d.call(e)}function p(e,t){let r=/^(https?:)?\/\//i;return e.replace(r,"").replace(/\/$/,"")===t.replace(r,"").replace(/\/$/,"")}function h(e){return Array.isArray(e)?e:[e]}function m(e){let t={url:"",type:"global",globalName:""};return n.isBrowserEnvValue||(0,n.isReactNativeEnv)()||!("ssrRemoteEntry"in e)?"remoteEntry"in e?{url:e.remoteEntry,type:e.remoteEntryType,globalName:e.globalName}:t:"ssrRemoteEntry"in e?{url:e.ssrRemoteEntry||t.url,type:e.ssrRemoteEntryType||t.type,globalName:e.globalName}:t}let g=(e,t)=>{let r;return r=e.endsWith("/")?e.slice(0,-1):e,t.startsWith(".")&&(t=t.slice(1)),r+=t};t.addUniqueItem=a,t.arrayOptions=h,t.getFMId=i,t.getRemoteEntryInfoFromSnapshot=m,t.isObject=c,t.isPlainObject=f,t.isPureRemoteEntry=l,t.isRemoteInfoWithEntry=s,t.isStaticResourcesEqual=p,t.objectToString=d,t.processModuleAlias=g,t.safeWrapper=u},66396(e,t){var r=Object.create,o=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,l=(e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var l,u=a(t),c=0,d=u.length;c<d;c++)l=u[c],s.call(e,l)||l===r||o(e,l,{get:(e=>t[e]).bind(null,l),enumerable:!(i=n(t,l))||i.enumerable});return e};t.__toESM=(e,t,n)=>(n=null!=e?r(i(e)):{},l(!t&&e&&e.__esModule?n:o(n,"default",{value:e,enumerable:!0}),e))},86173(e,t,r){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}}),r(66396);let o=r(45229),n=r(6614),a={...n.helpers.global,getGlobalFederationInstance:o.getGlobalFederationInstance},i=n.helpers.share,s=n.helpers.utils;t.default={global:a,share:i,utils:s},t.global=a,t.share=i,t.utils=s},79706(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),r(66396);let o=r(45229),n=r(6614),a=r(4071);function i(e){let t=new((0,n.getGlobalFederationConstructor)()||n.ModuleFederation)({id:`${e.name}@${e.version||Date.now()}`,...e});return(0,n.setGlobalFederationInstance)(t),t}let s=null;function l(e){let t=o.getGlobalFederationInstance(e.name,e.version),r={...e,id:e.id||""};return t?(t.initOptions(r),s||(s=t),t):s=i(r)}function u(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.loadRemote.apply(s,t)}function c(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.loadShare.apply(s,t)}function d(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.loadShareSync.apply(s,t)}function f(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.preloadRemote.apply(s,t)}function p(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.registerRemotes.apply(s,t)}function h(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.registerPlugins.apply(s,t)}function m(){return s}function g(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return(0,n.assert)(s,a.RUNTIME_009,a.runtimeDescMap),s.registerShared.apply(s,t)}(0,n.setGlobalFederationConstructor)(n.ModuleFederation),Object.defineProperty(t,"Module",{enumerable:!0,get:function(){return n.Module}}),t.ModuleFederation=n.ModuleFederation,t.createInstance=i,t.getInstance=m,Object.defineProperty(t,"getRemoteEntry",{enumerable:!0,get:function(){return n.getRemoteEntry}}),Object.defineProperty(t,"getRemoteInfo",{enumerable:!0,get:function(){return n.getRemoteInfo}}),t.init=l,t.loadRemote=u,Object.defineProperty(t,"loadScript",{enumerable:!0,get:function(){return n.loadScript}}),Object.defineProperty(t,"loadScriptNode",{enumerable:!0,get:function(){return n.loadScriptNode}}),t.loadShare=c,t.loadShareSync=d,t.preloadRemote=f,Object.defineProperty(t,"registerGlobalPlugins",{enumerable:!0,get:function(){return n.registerGlobalPlugins}}),t.registerPlugins=h,t.registerRemotes=p,t.registerShared=g},45229(e,t,r){r(66396);let o=r(6614);function n(){return"HistogramChart:0.12.0-beta.0"}t.getGlobalFederationInstance=function(e,t){let r=n();return o.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(o=>!!r&&o.options.id===r||o.options.name===e&&!o.options.version&&!t||o.options.name===e&&!!t&&o.options.version===t)}},21820(e,t){var r=Object.defineProperty;t.__exportAll=(e,t)=>{let o={};for(var n in e)r(o,n,{get:e[n],enumerable:!0});return t||r(o,Symbol.toStringTag,{value:"Module"}),o}},38342(e,t){let r="federation-manifest.json",o=".json",n="FEDERATION_DEBUG",a={AT:"@",HYPHEN:"-",SLASH:"/"},i={[a.AT]:"scope_",[a.HYPHEN]:"_",[a.SLASH]:"__"},s={[i[a.AT]]:a.AT,[i[a.HYPHEN]]:a.HYPHEN,[i[a.SLASH]]:a.SLASH},l=":",u="mf-manifest.json",c="mf-stats.json",d={NPM:"npm",APP:"app"},f="__MF_DEVTOOLS_MODULE_INFO__",p="ENCODE_NAME_PREFIX",h=".federation",m=function(e){return e[e.UNKNOWN=1]="UNKNOWN",e[e.CALCULATED=2]="CALCULATED",e[e.NO_USE=0]="NO_USE",e}({});t.BROWSER_LOG_KEY=n,t.ENCODE_NAME_PREFIX=p,t.EncodedNameTransformMap=s,t.FederationModuleManifest=r,t.MANIFEST_EXT=o,t.MFModuleType=d,t.MODULE_DEVTOOL_IDENTIFIER=f,t.ManifestFileName=u,t.NameTransformMap=i,t.NameTransformSymbol=a,t.SEPARATOR=l,t.StatsFileName=c,t.TEMP_DIR=h,t.TreeShakingStatus=m},94975(e,t){t.createModuleFederationConfig=e=>e},72802(e,t,r){let o=r(33901);async function n(e,t){try{return await e()}catch(e){t||o.warn(e);return}}function a(e,t){let r=/^(https?:)?\/\//i;return e.replace(r,"").replace(/\/$/,"")===t.replace(r,"").replace(/\/$/,"")}function i(e){let t,r=null,o=!0,i=2e4,s=document.getElementsByTagName("script");for(let t=0;t<s.length;t++){let n=s[t],i=n.getAttribute("src");if(i&&a(i,e.url)){r=n,o=!1;break}}if(!r){let t,o=e.attrs;(r=document.createElement("script")).type=(null==o?void 0:o.type)==="module"?"module":"text/javascript",e.createScriptHook&&((t=e.createScriptHook(e.url,e.attrs))instanceof HTMLScriptElement?r=t:"object"==typeof t&&("script"in t&&t.script&&(r=t.script),"timeout"in t&&t.timeout&&(i=t.timeout))),r.src||(r.src=e.url),o&&!t&&Object.keys(o).forEach(e=>{r&&("async"===e||"defer"===e?r[e]=o[e]:r.getAttribute(e)||r.setAttribute(e,o[e]))})}let l=null,u="u">typeof window?t=>{if(t.filename&&a(t.filename,e.url)){let r=Error(`ScriptExecutionError: Script "${e.url}" loaded but threw a runtime error during execution: ${t.message} (${t.filename}:${t.lineno}:${t.colno})`);r.name="ScriptExecutionError",l=r}}:null;u&&window.addEventListener("error",u);let c=async(o,a)=>{clearTimeout(t),u&&window.removeEventListener("error",u);let i=()=>{if((null==a?void 0:a.type)==="error"){let t=Error((null==a?void 0:a.isTimeout)?`ScriptNetworkError: Script "${e.url}" timed out.`:`ScriptNetworkError: Failed to load script "${e.url}" - the script URL is unreachable or the server returned an error (network failure, 404, CORS, etc.)`);t.name="ScriptNetworkError",(null==e?void 0:e.onErrorCallback)&&(null==e||e.onErrorCallback(t))}else l?(null==e?void 0:e.onErrorCallback)&&(null==e||e.onErrorCallback(l)):(null==e?void 0:e.cb)&&(null==e||e.cb())};if(r&&(r.onerror=null,r.onload=null,n(()=>{let{needDeleteScript:t=!0}=e;t&&(null==r?void 0:r.parentNode)&&r.parentNode.removeChild(r)}),o&&"function"==typeof o)){let e=o(a);if(e instanceof Promise){let t=await e;return i(),t}return i(),e}i()};return r.onerror=c.bind(null,r.onerror),r.onload=c.bind(null,r.onload),t=setTimeout(()=>{c(null,{type:"error",isTimeout:!0})},i),{script:r,needAttach:o}}function s(e,t){let{attrs:r={},createScriptHook:o}=t;return new Promise((t,n)=>{let{script:a,needAttach:s}=i({url:e,cb:t,onErrorCallback:n,attrs:{fetchpriority:"high",...r},createScriptHook:o,needDeleteScript:!0});s&&document.head.appendChild(a)})}t.createLink=function(e){let t=null,r=!0,o=document.getElementsByTagName("link");for(let n=0;n<o.length;n++){let i=o[n],s=i.getAttribute("href"),l=i.getAttribute("rel");if(s&&a(s,e.url)&&l===e.attrs.rel){t=i,r=!1;break}}if(!t){let r;(t=document.createElement("link")).setAttribute("href",e.url);let o=e.attrs;e.createLinkHook&&(r=e.createLinkHook(e.url,o))instanceof HTMLLinkElement&&(t=r),o&&!r&&Object.keys(o).forEach(e=>{t&&!t.getAttribute(e)&&t.setAttribute(e,o[e])})}let i=(r,o)=>{let a=()=>{(null==o?void 0:o.type)==="error"?(null==e?void 0:e.onErrorCallback)&&(null==e||e.onErrorCallback(o)):(null==e?void 0:e.cb)&&(null==e||e.cb())};if(t&&(t.onerror=null,t.onload=null,n(()=>{let{needDeleteLink:r=!0}=e;r&&(null==t?void 0:t.parentNode)&&t.parentNode.removeChild(t)}),r)){let e=r(o);return a(),e}a()};return t.onerror=i.bind(null,t.onerror),t.onload=i.bind(null,t.onload),{link:t,needAttach:r}},t.createScript=i,t.isStaticResourcesEqual=a,t.loadScript=s,t.safeWrapper=n},47799(e,t,r){let o=r(38342),n="u">typeof ENV_TARGET?"web"===ENV_TARGET:"u">typeof window&&void 0!==window.document;function a(){return n}function i(){var e;return"u">typeof navigator&&(null==(e=navigator)?void 0:e.product)==="ReactNative"}function s(){try{if(a()&&window.localStorage)return!!localStorage.getItem(o.BROWSER_LOG_KEY)}catch(e){}return!1}function l(){return"u">typeof process&&process.env&&process.env.FEDERATION_DEBUG?!!process.env.FEDERATION_DEBUG:!!("u">typeof FEDERATION_DEBUG&&FEDERATION_DEBUG)||s()}t.getProcessEnv=function(){return"u">typeof process&&process.env?process.env:{}},t.isBrowserEnv=a,t.isBrowserEnvValue=n,t.isDebugMode=l,t.isReactNativeEnv=i},66244(e,t,r){let o=r(38342),n=(e,t)=>{if(!e)return t;let r=(e=>{if("."===e)return"";if(e.startsWith("./"))return e.replace("./","");if(e.startsWith("/")){let t=e.slice(1);return t.endsWith("/")?t.slice(0,-1):t}return e})(e);return r?r.endsWith("/")?`${r}${t}`:`${r}/${t}`:t};function a(e){return e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")}function i(e){return!!("remoteEntry"in e&&e.remoteEntry.includes(o.MANIFEST_EXT))}function s(e){if(!e)return{statsFileName:o.StatsFileName,manifestFileName:o.ManifestFileName};let t="boolean"==typeof e?"":e.filePath||"",r="boolean"==typeof e?"":e.fileName||"",a=".json",i=e=>e.endsWith(a)?e:`${e}${a}`,s=(e,t)=>e.replace(a,`${t}${a}`),l=r?i(r):o.ManifestFileName;return{statsFileName:n(t,r?s(l,"-stats"):o.StatsFileName),manifestFileName:n(t,l)}}t.generateSnapshotFromManifest=function(e){var t;let r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{remotes:i={},overrides:s={},version:l}=o,u=()=>"publicPath"in e.metaData?("auto"===e.metaData.publicPath||""===e.metaData.publicPath)&&l?a(l):e.metaData.publicPath:e.metaData.getPublicPath,c=Object.keys(s),d={};Object.keys(i).length||(d=(null==(t=e.remotes)?void 0:t.reduce((e,t)=>{let r,o=t.federationContainerName;return r=c.includes(o)?s[o]:"version"in t?t.version:t.entry,e[o]={matchedVersion:r},e},{}))||{}),Object.keys(i).forEach(e=>d[e]={matchedVersion:c.includes(e)?s[e]:i[e]});let{remoteEntry:{path:f,name:p,type:h},types:m={path:"",name:"",zip:"",api:""},buildInfo:{buildVersion:g},globalName:y,ssrRemoteEntry:E}=e.metaData,{exposes:S}=e,b={version:l||"",buildVersion:g,globalName:y,remoteEntry:n(f,p),remoteEntryType:h,remoteTypes:n(m.path,m.name),remoteTypesZip:m.zip||"",remoteTypesAPI:m.api||"",remotesInfo:d,shared:null==e?void 0:e.shared.map(e=>({assets:e.assets,sharedName:e.name,version:e.version,usedExports:e.referenceExports||[]})),modules:null==S?void 0:S.map(e=>({moduleName:e.name,modulePath:e.path,assets:e.assets}))};if("publicPath"in e.metaData?(r={...b,publicPath:u()},"string"==typeof e.metaData.ssrPublicPath&&(r.ssrPublicPath=e.metaData.ssrPublicPath)):r={...b,getPublicPath:u()},E){let e=n(E.path,E.name);r.ssrRemoteEntry=e,r.ssrRemoteEntryType=E.type||"commonjs-module"}return r},t.getManifestFileName=s,t.inferAutoPublicPath=a,t.isManifestProvider=i,t.simpleJoinRemoteEntry=n},89850(e,t,r){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"});let o=r(38342),n=r(2413),a=r(70858),i=r(74945),s=r(38861),l=r(84101),u=r(2820),c=r(47799),d=r(33901),f=r(66244),p=r(72290),h=r(72802),m=r(60914),g=r(63651),y=r(94975);t.BROWSER_LOG_KEY=o.BROWSER_LOG_KEY,t.ENCODE_NAME_PREFIX=o.ENCODE_NAME_PREFIX,t.EncodedNameTransformMap=o.EncodedNameTransformMap,t.FederationModuleManifest=o.FederationModuleManifest,t.MANIFEST_EXT=o.MANIFEST_EXT,t.MFModuleType=o.MFModuleType,t.MODULE_DEVTOOL_IDENTIFIER=o.MODULE_DEVTOOL_IDENTIFIER,t.ManifestFileName=o.ManifestFileName,t.NameTransformMap=o.NameTransformMap,t.NameTransformSymbol=o.NameTransformSymbol,t.SEPARATOR=o.SEPARATOR,t.StatsFileName=o.StatsFileName,t.TEMP_DIR=o.TEMP_DIR,t.TreeShakingStatus=o.TreeShakingStatus,t.assert=d.assert,t.bindLoggerToCompiler=p.bindLoggerToCompiler,t.composeKeyWithSeparator=d.composeKeyWithSeparator,Object.defineProperty(t,"consumeSharedPlugin",{enumerable:!0,get:function(){return l.ConsumeSharedPlugin_exports}}),Object.defineProperty(t,"containerPlugin",{enumerable:!0,get:function(){return n.ContainerPlugin_exports}}),Object.defineProperty(t,"containerReferencePlugin",{enumerable:!0,get:function(){return a.ContainerReferencePlugin_exports}}),t.createInfrastructureLogger=p.createInfrastructureLogger,t.createLink=h.createLink,t.createLogger=p.createLogger,t.createModuleFederationConfig=y.createModuleFederationConfig,t.createScript=h.createScript,t.createScriptNode=m.createScriptNode,t.decodeName=d.decodeName,t.encodeName=d.encodeName,t.error=d.error,t.generateExposeFilename=d.generateExposeFilename,t.generateShareFilename=d.generateShareFilename,t.generateSnapshotFromManifest=f.generateSnapshotFromManifest,t.getManifestFileName=f.getManifestFileName,t.getProcessEnv=c.getProcessEnv,t.getResourceUrl=d.getResourceUrl,t.inferAutoPublicPath=f.inferAutoPublicPath,t.infrastructureLogger=p.infrastructureLogger,t.isBrowserEnv=c.isBrowserEnv,t.isBrowserEnvValue=c.isBrowserEnvValue,t.isDebugMode=c.isDebugMode,t.isManifestProvider=f.isManifestProvider,t.isReactNativeEnv=c.isReactNativeEnv,t.isRequiredVersion=d.isRequiredVersion,t.isStaticResourcesEqual=h.isStaticResourcesEqual,t.loadScript=h.loadScript,t.loadScriptNode=m.loadScriptNode,t.logger=p.logger,Object.defineProperty(t,"moduleFederationPlugin",{enumerable:!0,get:function(){return i.ModuleFederationPlugin_exports}}),t.normalizeOptions=g.normalizeOptions,t.parseEntry=d.parseEntry,Object.defineProperty(t,"provideSharedPlugin",{enumerable:!0,get:function(){return u.ProvideSharedPlugin_exports}}),t.safeToString=d.safeToString,t.safeWrapper=h.safeWrapper,Object.defineProperty(t,"sharePlugin",{enumerable:!0,get:function(){return s.SharePlugin_exports}}),t.simpleJoinRemoteEntry=f.simpleJoinRemoteEntry,t.warn=d.warn},72290(e,t,r){let o=r(47799),n="[ Module Federation ]",a=console,i=["logger.ts","logger.js","captureStackTrace","Logger.emit","Logger.log","Logger.info","Logger.warn","Logger.error","Logger.debug"];function s(){try{let e=Error().stack;if(!e)return;let[,...t]=e.split("\n"),r=t.filter(e=>!i.some(t=>e.includes(t)));if(!r.length)return;return`Stack trace:
|
|
4
|
+
${r.slice(0,5).join("\n")}`}catch{return}}var l=class{setPrefix(e){this.prefix=e}setDelegate(e){this.delegate=e??a}emit(e,t){let r=this.delegate,n=o.isDebugMode()?s():void 0,i=n?[...t,n]:t,l=(()=>{switch(e){case"log":return["log","info"];case"info":return["info","log"];case"warn":return["warn","info","log"];case"error":return["error","warn","log"];default:return["debug","log"]}})();for(let e of l){let t=r[e];if("function"==typeof t)return void t.call(r,this.prefix,...i)}for(let e of l){let t=a[e];if("function"==typeof t)return void t.call(a,this.prefix,...i)}}log(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("log",t)}warn(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("warn",t)}error(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("error",t)}success(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("info",t)}info(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("info",t)}ready(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];this.emit("info",t)}debug(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];o.isDebugMode()&&this.emit("debug",t)}constructor(e,t=a){this.prefix=e,this.delegate=t??a}};function u(e){return new l(e)}function c(e){let t=new l(e);return Object.defineProperty(t,"__mf_infrastructure_logger__",{value:!0,enumerable:!1,configurable:!1}),t}function d(e,t,r){if(e.__mf_infrastructure_logger__&&(null==t?void 0:t.getInfrastructureLogger))try{let o=t.getInfrastructureLogger(r);o&&"object"==typeof o&&("function"==typeof o.log||"function"==typeof o.info||"function"==typeof o.warn||"function"==typeof o.error)&&e.setDelegate(o)}catch{e.setDelegate(void 0)}}let f=u(n),p=c(n);t.bindLoggerToCompiler=d,t.createInfrastructureLogger=c,t.createLogger=u,t.infrastructureLogger=p,t.logger=f},60914(__unused_rspack_module,exports){let sdkImportCache=new Map;function importNodeModule(e){if(!e)throw Error("import specifier is required");if(sdkImportCache.has(e))return sdkImportCache.get(e);let t=Function("name","return import(name)")(e).then(e=>e).catch(t=>{throw console.error(`Error importing module ${e}:`,t),sdkImportCache.delete(e),t});return sdkImportCache.set(e,t),t}let loadNodeFetch=async()=>{let e=await importNodeModule("node-fetch");return e.default||e},lazyLoaderHookFetch=async(e,t,r)=>{let o=(e,t)=>r.lifecycle.fetch.emit(e,t),n=await o(e,t||{});return n&&n instanceof Response?n:("u"<typeof fetch?await loadNodeFetch():fetch)(e,t||{})},createScriptNode="u"<typeof ENV_TARGET||"web"!==ENV_TARGET?(url,cb,attrs,loaderHook)=>{let urlObj;if(null==loaderHook?void 0:loaderHook.createScriptHook){let hookResult=loaderHook.createScriptHook(url);hookResult&&"object"==typeof hookResult&&"url"in hookResult&&(url=hookResult.url)}try{urlObj=new URL(url)}catch(e){console.error("Error constructing URL:",e),cb(Error(`Invalid URL: ${e}`));return}let getFetch=async()=>(null==loaderHook?void 0:loaderHook.fetch)?(e,t)=>lazyLoaderHookFetch(e,t,loaderHook):"u"<typeof fetch?loadNodeFetch():fetch,handleScriptFetch=async(f,urlObj)=>{try{var _vm_constants;let requireFn,res=await f(urlObj.href),data=await res.text(),[path,vm]=await Promise.all([importNodeModule("path"),importNodeModule("vm")]),scriptContext={exports:{},module:{exports:{}}},urlDirname=urlObj.pathname.split("/").slice(0,-1).join("/"),filename=path.basename(urlObj.pathname),script=new vm.Script(`(function(exports, module, require, __dirname, __filename) {${data}
|
|
5
|
+
})`,{filename,importModuleDynamically:(null==(_vm_constants=vm.constants)?void 0:_vm_constants.USE_MAIN_CONTEXT_DEFAULT_LOADER)??importNodeModule});requireFn=eval("require"),script.runInThisContext()(scriptContext.exports,scriptContext.module,requireFn,urlDirname,filename);let exportedInterface=scriptContext.module.exports||scriptContext.exports;if(attrs&&exportedInterface&&attrs.globalName)return void cb(void 0,exportedInterface[attrs.globalName]||exportedInterface);cb(void 0,exportedInterface)}catch(e){cb(e instanceof Error?e:Error(`Script execution error: ${e}`))}};getFetch().then(async e=>{if((null==attrs?void 0:attrs.type)==="esm"||(null==attrs?void 0:attrs.type)==="module")return loadModule(urlObj.href,{fetch:e,vm:await importNodeModule("vm")}).then(async e=>{await e.evaluate(),cb(void 0,e.namespace)}).catch(e=>{cb(e instanceof Error?e:Error(`Script execution error: ${e}`))});handleScriptFetch(e,urlObj)}).catch(e=>{cb(e)})}:(e,t,r,o)=>{t(Error("createScriptNode is disabled in non-Node.js environment"))},loadScriptNode="u"<typeof ENV_TARGET||"web"!==ENV_TARGET?(e,t)=>new Promise((r,o)=>{createScriptNode(e,(e,n)=>{if(e)o(e);else{var a,i;let e=(null==t||null==(a=t.attrs)?void 0:a.globalName)||`__FEDERATION_${null==t||null==(i=t.attrs)?void 0:i.name}:custom__`;r(globalThis[e]=n)}},t.attrs,t.loaderHook)}):(e,t)=>{throw Error("loadScriptNode is disabled in non-Node.js environment")},esmModuleCache=new Map;async function loadModule(e,t){if(esmModuleCache.has(e))return esmModuleCache.get(e);let{fetch:r,vm:o}=t,n=await (await r(e)).text(),a=new o.SourceTextModule(n,{importModuleDynamically:async(r,o)=>loadModule(new URL(r,e).href,t)});return esmModuleCache.set(e,a),await a.link(async r=>{let o=new URL(r,e).href;return await loadModule(o,t)}),a}exports.createScriptNode=createScriptNode,exports.loadScriptNode=loadScriptNode},63651(e,t){t.normalizeOptions=function(e,t,r){return function(o){if(!1===o)return!1;if(void 0===o)if(e)return t;else return!1;if(!0===o)return t;if(o&&"object"==typeof o)return{...t,...o};throw Error(`Unexpected type for \`${r}\`, expect boolean/undefined/object, got: ${typeof o}`)}}},84101(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"ConsumeSharedPlugin_exports",{enumerable:!0,get:function(){return o}})},2413(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"ContainerPlugin_exports",{enumerable:!0,get:function(){return o}})},70858(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"ContainerReferencePlugin_exports",{enumerable:!0,get:function(){return o}})},74945(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"ModuleFederationPlugin_exports",{enumerable:!0,get:function(){return o}})},2820(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"ProvideSharedPlugin_exports",{enumerable:!0,get:function(){return o}})},38861(e,t,r){var o=r(21820).__exportAll({});Object.defineProperty(t,"SharePlugin_exports",{enumerable:!0,get:function(){return o}})},33901(e,t,r){let o=r(38342),n=r(47799),a="[ Federation Runtime ]",i=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:o.SEPARATOR,a=e.split(r),i="development"===n.getProcessEnv().NODE_ENV&&t,s="*",l=e=>e.startsWith("http")||e.includes(o.MANIFEST_EXT);if(a.length>=2){let[t,...o]=a;e.startsWith(r)&&(t=a.slice(0,2).join(r),o=[i||a.slice(2).join(r)]);let n=i||o.join(r);return l(n)?{name:t,entry:n}:{name:t,version:n||s}}if(1===a.length){let[e]=a;return i&&l(i)?{name:e,entry:i}:{name:e,version:i||s}}throw`Invalid entry value: ${e}`},s=function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return t.length?t.reduce((e,t)=>t?e?`${e}${o.SEPARATOR}${t}`:t:e,""):""},l=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];try{let n=r?".js":"";return`${t}${e.replace(RegExp(`${o.NameTransformSymbol.AT}`,"g"),o.NameTransformMap[o.NameTransformSymbol.AT]).replace(RegExp(`${o.NameTransformSymbol.HYPHEN}`,"g"),o.NameTransformMap[o.NameTransformSymbol.HYPHEN]).replace(RegExp(`${o.NameTransformSymbol.SLASH}`,"g"),o.NameTransformMap[o.NameTransformSymbol.SLASH])}${n}`}catch(e){throw e}},u=function(e,t,r){try{let n=e;if(t){if(!n.startsWith(t))return n;n=n.replace(RegExp(t,"g"),"")}return n=n.replace(RegExp(`${o.NameTransformMap[o.NameTransformSymbol.AT]}`,"g"),o.EncodedNameTransformMap[o.NameTransformMap[o.NameTransformSymbol.AT]]).replace(RegExp(`${o.NameTransformMap[o.NameTransformSymbol.SLASH]}`,"g"),o.EncodedNameTransformMap[o.NameTransformMap[o.NameTransformSymbol.SLASH]]).replace(RegExp(`${o.NameTransformMap[o.NameTransformSymbol.HYPHEN]}`,"g"),o.EncodedNameTransformMap[o.NameTransformMap[o.NameTransformSymbol.HYPHEN]]),r&&(n=n.replace(".js","")),n}catch(e){throw e}},c=(e,t)=>{if(!e)return"";let r=e;return"."===r&&(r="default_export"),r.startsWith("./")&&(r=r.replace("./","")),l(r,"__federation_expose_",t)},d=(e,t)=>e?l(e,"__federation_shared_",t):"",f=(e,t)=>{if("getPublicPath"in e){let r;return r=e.getPublicPath.startsWith("function")?Function("return "+e.getPublicPath)()():Function(e.getPublicPath)(),`${r}${t}`}return"publicPath"in e?!n.isBrowserEnv()&&!n.isReactNativeEnv()&&"ssrPublicPath"in e&&"string"==typeof e.ssrPublicPath?`${e.ssrPublicPath}${t}`:`${e.publicPath}${t}`:(console.warn("Cannot get resource URL. If in debug mode, please ignore.",e,t),"")},p=e=>{throw Error(`${a}: ${e}`)},h=e=>{console.warn(`${a}: ${e}`)};function m(e){try{return JSON.stringify(e,null,2)}catch(e){return""}}let g=/^([\d^=v<>~]|[*xX]$)/;function y(e){return g.test(e)}t.assert=(e,t)=>{e||p(t)},t.composeKeyWithSeparator=s,t.decodeName=u,t.encodeName=l,t.error=p,t.generateExposeFilename=c,t.generateShareFilename=d,t.getResourceUrl=f,t.isRequiredVersion=y,t.parseEntry=i,t.safeToString=m,t.warn=h},64975(e,t){var r=Object.create,o=Object.defineProperty,n=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,i=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,l=(e,t,r,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(var l,u=a(t),c=0,d=u.length;c<d;c++)l=u[c],s.call(e,l)||l===r||o(e,l,{get:(e=>t[e]).bind(null,l),enumerable:!(i=n(t,l))||i.enumerable});return e};t.__toESM=(e,t,n)=>(n=null!=e?r(i(e)):{},l(!t&&e&&e.__esModule?n:o(n,"default",{value:e,enumerable:!0}),e))},98057(e,t){t.attachShareScopeMap=function(e){e.S&&!e.federation.hasAttachShareScopeMap&&e.federation.instance&&e.federation.instance.shareScopeMap&&(e.S=e.federation.instance.shareScopeMap,e.federation.hasAttachShareScopeMap=!0)}},45509(e,t){Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),t.FEDERATION_SUPPORTED_TYPES=["script"]},52664(e,t,r){let o=r(98057),n=r(47188),a=r(13957),i=r(15589),s=r(76077);t.consumes=function(e){n.updateConsumeOptions(e);let{chunkId:t,promises:r,installedModules:l,webpackRequire:u,chunkMapping:c,moduleToHandlerMapping:d}=e;o.attachShareScopeMap(u),u.o(c,t)&&c[t].forEach(e=>{if(u.o(l,e))return r.push(l[e]);let t=t=>{l[e]=0,u.m[e]=r=>{var o;delete u.c[e];let n=t(),{shareInfo:a}=d[e];if((null==a||null==(o=a.shareConfig)?void 0:o.layer)&&n&&"object"==typeof n)try{n.hasOwnProperty("layer")&&void 0!==n.layer||(n.layer=a.shareConfig.layer)}catch(e){}r.exports=n}},o=t=>{delete l[e],u.m[e]=r=>{throw delete u.c[e],t}};try{let n=u.federation.instance;if(!n)throw Error("Federation instance not found!");let{shareKey:c,getter:f,shareInfo:p,treeShakingGetter:h}=d[e],m=a.getUsedExports(u,c),g={...p};Array.isArray(g.scope)&&Array.isArray(g.scope[0])&&(g.scope=g.scope[0]),m&&(g.treeShaking={usedExports:m,useIn:[n.options.name]});let y=n.loadShare(c,{customShareInfo:g}).then(e=>{if(!1===e){if("function"!=typeof f)throw Error(s.getShortErrorMsg(i.RUNTIME_012,{[i.RUNTIME_012]:'The getter for the shared module is not a function. This may be caused by setting "shared.import: false" without the host providing the corresponding lib.'},{shareKey:c}));return(null==h?void 0:h())||f()}return e});y.then?r.push(l[e]=y.then(t).catch(o)):t(y)}catch(e){o(e)}})}},15589(e,t){t.RUNTIME_012="RUNTIME-012"},76077(e,t){let r=e=>`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split("-")[0].toLowerCase()}#${e.toLowerCase()}`;t.getShortErrorMsg=(e,t,o,n)=>{let a=[`${[t[e]]} #${e}`];return o&&a.push(`args: ${JSON.stringify(o)}`),a.push(r(e)),n&&a.push(`Original Error Message:
|
|
6
|
+
${n}`),a.join("\n")}},59651(e,t){t.getSharedFallbackGetter=e=>{let{shareKey:t,factory:r,version:o,webpackRequire:n,libraryType:a="global"}=e,{runtime:i,instance:s,bundlerRuntime:l,sharedFallback:u}=n.federation;if(!u)return r;let c=u[t];if(!c)return r;let d=o?c.find(e=>e[1]===o):c[0];if(!d)throw Error(`No fallback item found for shareKey: ${t} and version: ${o}`);return()=>i.getRemoteEntry({origin:n.federation.instance,remoteInfo:{name:d[2],entry:`${n.p}${d[0]}`,type:a,entryGlobalName:d[2],shareScope:"default"}}).then(e=>{if(!e)throw Error(`Failed to load fallback entry for shareKey: ${t} and version: ${o}`);return e.init(n.federation.instance,l).then(()=>e.get())})}},13957(e,t){t.getUsedExports=function(e,t){let r=e.federation.usedExports;if(r)return r[t]}},31531(e,t,r){Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});let o=r(64975),n=r(98057),a=r(39490),i=r(52664),s=r(47501),l=r(55331),u=r(34476),c=r(47391),d=r(59651),f=r(79706),p={runtime:f=o.__toESM(f),instance:void 0,initOptions:void 0,bundlerRuntime:{remotes:a.remotes,consumes:i.consumes,I:s.initializeSharing,S:{},installInitialConsumes:l.installInitialConsumes,initContainerEntry:u.initContainerEntry,init:c.init,getSharedFallbackGetter:d.getSharedFallbackGetter},attachShareScopeMap:n.attachShareScopeMap,bundlerRuntimeOptions:{}},h=p.instance,m=p.initOptions,g=p.bundlerRuntime,y=p.bundlerRuntimeOptions;t.attachShareScopeMap=n.attachShareScopeMap,t.bundlerRuntime=g,t.bundlerRuntimeOptions=y,t.default=p,t.initOptions=m,t.instance=h,Object.defineProperty(t,"runtime",{enumerable:!0,get:function(){return f}})},47391(e,t,r){let o=r(64975),n=r(79706),a=r(86173);a=o.__toESM(a),t.init=function(e){var t;let{webpackRequire:o}=e,{initOptions:i,runtime:s,sharedFallback:l,bundlerRuntime:u,libraryType:c}=o.federation;if(!i)throw Error("initOptions is required!");let d=function(){return{name:"tree-shake-plugin",beforeInit(e){let{userOptions:t,origin:i,options:s}=e,d=t.version||s.version;if(!l)return e;let f=t.shared||{},p=[];Object.keys(f).forEach(e=>{(Array.isArray(f[e])?f[e]:[f[e]]).forEach(t=>{if(p.push([e,t]),"get"in t){var r;(r=t).treeShaking||(r.treeShaking={}),t.treeShaking.get=t.get,t.get=u.getSharedFallbackGetter({shareKey:e,factory:t.get,webpackRequire:o,libraryType:c,version:t.version})}})});let h=a.default.global.getGlobalSnapshotInfoByModuleInfo({name:i.name,version:d});if(!h||!("shared"in h))return e;Object.keys(s.shared||{}).forEach(e=>{s.shared[e].forEach(t=>{p.push([e,t])})});let m=(e,t)=>{let o=h.shared.find(t=>t.sharedName===e);if(!o)return;let{treeShaking:a}=t;if(!a)return;let{secondarySharedTreeShakingName:s,secondarySharedTreeShakingEntry:l,treeShakingStatus:u}=o;a.status!==u&&(a.status=u,l&&c&&s&&(a.get=async()=>{let e=await (0,n.getRemoteEntry)({origin:i,remoteInfo:{name:s,entry:l,type:c,entryGlobalName:s,shareScope:"default"}});return await e.init(i,r.federation.bundlerRuntime),e.get()}))};return p.forEach(e=>{let[t,r]=e;m(t,r)}),e}}};return(t=i).plugins||(t.plugins=[]),i.plugins.push(d()),s.init(i)}},34476(e,t){t.initContainerEntry=function(e){let{webpackRequire:t,shareScope:r,initScope:o,shareScopeKey:n,remoteEntryInitOptions:a}=e;if(!t.S||!t.federation||!t.federation.instance||!t.federation.initOptions)return;let i=t.federation.instance;i.initOptions({name:t.federation.initOptions.name,remotes:[],...a});let s=null==a?void 0:a.shareScopeKeys,l=null==a?void 0:a.shareScopeMap;if(n&&"string"!=typeof n)n.forEach(e=>{if(!s||!l)return void i.initShareScopeMap(e,r,{hostShareScopeMap:(null==a?void 0:a.shareScopeMap)||{}});l[e]||(l[e]={});let t=l[e];i.initShareScopeMap(e,t,{hostShareScopeMap:(null==a?void 0:a.shareScopeMap)||{}})});else{let e=n||"default";Array.isArray(s)?s.forEach(e=>{l[e]||(l[e]={});let t=l[e];i.initShareScopeMap(e,t,{hostShareScopeMap:(null==a?void 0:a.shareScopeMap)||{}})}):i.initShareScopeMap(e,r,{hostShareScopeMap:(null==a?void 0:a.shareScopeMap)||{}})}return(t.federation.attachShareScopeMap&&t.federation.attachShareScopeMap(t),Array.isArray(n))?t.federation.initOptions.shared?t.I(n,o):Promise.all(n.map(e=>t.I(e,o))).then(()=>!0):t.I(n||"default",o)}},47501(e,t,r){let o=r(98057),n=r(45509);t.initializeSharing=function(e){let{shareScopeName:t,webpackRequire:r,initPromises:a,initTokens:i,initScope:s}=e,l=Array.isArray(t)?t:[t];var u=[],c=function(e){s||(s=[]);let l=r.federation.instance;var u=i[e];if(u||(u=i[e]={from:l.name}),s.indexOf(u)>=0)return;s.push(u);let c=a[e];if(c)return c;var d=e=>"u">typeof console&&console.warn&&console.warn(e),f=o=>{var n=e=>d("Initialization of sharing external failed: "+e);try{var a=r(o);if(!a)return;var i=o=>o&&o.init&&o.init(r.S[e],s,{shareScopeMap:r.S||{},shareScopeKeys:t});if(a.then)return p.push(a.then(i,n));var l=i(a);if(l&&"boolean"!=typeof l&&l.then)return p.push(l.catch(n))}catch(e){n(e)}};let p=l.initializeSharing(e,{strategy:l.options.shareStrategy,initScope:s,from:"build"});o.attachShareScopeMap(r);let h=r.federation.bundlerRuntimeOptions.remotes;return(h&&Object.keys(h.idToRemoteMap).forEach(e=>{let t=h.idToRemoteMap[e],r=h.idToExternalAndNameMapping[e][2];if(t.length>1)f(r);else if(1===t.length){let e=t[0];n.FEDERATION_SUPPORTED_TYPES.includes(e.externalType)||f(r)}}),p.length)?a[e]=Promise.all(p).then(()=>a[e]=!0):a[e]=!0};return l.forEach(e=>{u.push(c(e))}),Promise.all(u).then(()=>!0)}},55331(e,t,r){let o=r(47188),n=r(13957);function a(e){let{moduleId:t,moduleToHandlerMapping:r,webpackRequire:o,asyncLoad:a}=e,i=o.federation.instance;if(!i)throw Error("Federation instance not found!");let{shareKey:s,shareInfo:l}=r[t];try{let e=n.getUsedExports(o,s),t={...l};if(e&&(t.treeShaking={usedExports:e,useIn:[i.options.name]}),a)return i.loadShare(s,{customShareInfo:t});return i.loadShareSync(s,{customShareInfo:t})}catch(e){throw console.error('loadShareSync failed! The function should not be called unless you set "eager:true". If you do not set it, and encounter this issue, you can check whether an async boundary is implemented.'),console.error("The original error message is as follows: "),e}}t.installInitialConsumes=function(e){o.updateConsumeOptions(e);let{moduleToHandlerMapping:t,webpackRequire:r,installedModules:n,initialConsumes:i,asyncLoad:s}=e,l=[];i.forEach(e=>{let o=()=>a({moduleId:e,moduleToHandlerMapping:t,webpackRequire:r,asyncLoad:s});l.push([e,o])});let u=(e,o)=>{r.m[e]=a=>{var i;n[e]=0,delete r.c[e];let s=o();if("function"!=typeof s)throw Error(`Shared module is not available for eager consumption: ${e}`);let l=s(),{shareInfo:u}=t[e];if((null==u||null==(i=u.shareConfig)?void 0:i.layer)&&l&&"object"==typeof l)try{l.hasOwnProperty("layer")&&void 0!==l.layer||(l.layer=u.shareConfig.layer)}catch(e){}a.exports=l}};if(s)return Promise.all(l.map(async e=>{let[t,r]=e,o=await r();u(t,()=>o)}));l.forEach(e=>{let[t,r]=e;u(t,r)})}},39490(e,t,r){r(64975);let o=r(98057),n=r(45509),a=r(47188),i=r(89850);t.remotes=function(e){a.updateRemoteOptions(e);let{chunkId:t,promises:r,webpackRequire:s,chunkMapping:l,idToExternalAndNameMapping:u,idToRemoteMap:c}=e;o.attachShareScopeMap(s),s.o(l,t)&&l[t].forEach(e=>{let t=s.R;t||(t=[]);let o=u[e],a=c[e]||[];if(t.indexOf(o)>=0)return;if(t.push(o),o.p)return r.push(o.p);let l=t=>{t||(t=Error("Container missing")),"string"==typeof t.message&&(t.message+=`
|
|
7
|
+
while loading "${o[1]}" from ${o[2]}`),s.m[e]=()=>{throw t},o.p=0},d=(e,t,n,a,i,s)=>{try{let u=e(t,n);if(!u||!u.then)return i(u,a,s);{let e=u.then(e=>i(e,a),l);if(!s)return e;r.push(o.p=e)}}catch(e){l(e)}},f=(e,t,r)=>e?d(s.I,o[0],0,e,p,r):l();var p=(e,r,n)=>d(r.get,o[1],t,0,h,n),h=t=>{o.p=1,s.m[e]=e=>{e.exports=t()}};let m=()=>{try{let e=(0,i.decodeName)(a[0].name,i.ENCODE_NAME_PREFIX)+o[1].slice(1),t=s.federation.instance,r=()=>s.federation.instance.loadRemote(e,{loadFactory:!1,from:"build"});if("version-first"===t.options.shareStrategy){let e=Array.isArray(o[0])?o[0]:[o[0]];return Promise.all(e.map(e=>t.sharedHandler.initializeSharing(e))).then(()=>r())}return r()}catch(e){l(e)}};1===a.length&&n.FEDERATION_SUPPORTED_TYPES.includes(a[0].externalType)&&a[0].name?d(m,o[2],0,0,h,1):d(s,o[2],0,0,f,1)})}},47188(e,t){function r(e){var t,r,o,n,a;let{webpackRequire:i,idToExternalAndNameMapping:s={},idToRemoteMap:l={},chunkMapping:u={}}=e,{remotesLoadingData:c}=i,d=null==(o=i.federation)||null==(r=o.bundlerRuntimeOptions)||null==(t=r.remotes)?void 0:t.remoteInfos;if(!c||c._updated||!d)return;let{chunkMapping:f,moduleIdToRemoteDataMapping:p}=c;if(f&&p){for(let[e,t]of Object.entries(p))if(s[e]||(s[e]=[t.shareScope,t.name,t.externalModuleId]),!l[e]&&d[t.remoteName]){let r=d[t.remoteName];(n=l)[a=e]||(n[a]=[]),r.forEach(t=>{l[e].includes(t)||l[e].push(t)})}u&&Object.entries(f).forEach(e=>{let[t,r]=e;u[t]||(u[t]=[]),r.forEach(e=>{u[t].includes(e)||u[t].push(e)})}),c._updated=1}}t.updateConsumeOptions=function(e){let{webpackRequire:t,moduleToHandlerMapping:r}=e,{consumesLoadingData:o,initializeSharingData:n}=t,{sharedFallback:a,bundlerRuntime:i,libraryType:s}=t.federation;if(o&&!o._updated){let{moduleIdToConsumeDataMapping:n={},initialConsumes:l=[],chunkMapping:u={}}=o;if(Object.entries(n).forEach(e=>{let[o,n]=e;r[o]||(r[o]={getter:a?null==i?void 0:i.getSharedFallbackGetter({shareKey:n.shareKey,factory:n.fallback,webpackRequire:t,libraryType:s}):n.fallback,treeShakingGetter:a?n.fallback:void 0,shareInfo:{shareConfig:{requiredVersion:n.requiredVersion,strictVersion:n.strictVersion,singleton:n.singleton,eager:n.eager,layer:n.layer},scope:Array.isArray(n.shareScope)?n.shareScope:[n.shareScope||"default"],treeShaking:a?{get:n.fallback,mode:n.treeShakingMode}:void 0},shareKey:n.shareKey})}),"initialConsumes"in e){let{initialConsumes:t=[]}=e;l.forEach(e=>{t.includes(e)||t.push(e)})}if("chunkMapping"in e){let{chunkMapping:t={}}=e;Object.entries(u).forEach(e=>{let[r,o]=e;t[r]||(t[r]=[]),o.forEach(e=>{t[r].includes(e)||t[r].push(e)})})}o._updated=1}if(n&&!n._updated){let{federation:e}=t;if(!e.instance||!n.scopeToSharingDataMapping)return;let r={};for(let[e,t]of Object.entries(n.scopeToSharingDataMapping))for(let o of t)if("object"==typeof o&&null!==o){let{name:t,version:n,factory:a,eager:i,singleton:s,requiredVersion:l,strictVersion:u}=o,c={requiredVersion:`^${n}`},d=function(e){return void 0!==e};d(s)&&(c.singleton=s),d(l)&&(c.requiredVersion=l),d(i)&&(c.eager=i),d(u)&&(c.strictVersion=u);let f={version:n,scope:[e],shareConfig:c,get:a};r[t]?r[t].push(f):r[t]=[f]}e.instance.registerShared(r),n._updated=1}},t.updateRemoteOptions=r},94335(e,t,r){"use strict";var o,n,a,i,s,l,u,c,d,f,p,h,m=r(31531),g=r.n(m);let y=[].filter(e=>{let{plugin:t}=e;return t}).map(e=>{let{plugin:t,params:r}=e;return t(r)}),E={},S="HistogramChart",b="version-first";if((r.initializeSharingData||r.initializeExposesData)&&r.federation){let e=(e,t,r)=>{e&&e[t]&&(e[t]=r)},t=(e,t,r)=>{var o,n,a,i,s,l;let u=r();Array.isArray(u)?(null!=(a=(o=e)[n=t])||(o[n]=[]),e[t].push(...u)):"object"==typeof u&&null!==u&&(null!=(l=(i=e)[s=t])||(i[s]={}),Object.assign(e[t],u))},m=(e,t,r)=>{var o,n,a;null!=(a=(o=e)[n=t])||(o[n]=r())},_=null!=(o=null==(l=r.remotesLoadingData)?void 0:l.chunkMapping)?o:{},v=null!=(n=null==(u=r.remotesLoadingData)?void 0:u.moduleIdToRemoteDataMapping)?n:{},R=null!=(a=null==(c=r.initializeSharingData)?void 0:c.scopeToSharingDataMapping)?a:{},I=null!=(i=null==(d=r.consumesLoadingData)?void 0:d.chunkMapping)?i:{},N=null!=(s=null==(f=r.consumesLoadingData)?void 0:f.moduleIdToConsumeDataMapping)?s:{},T={},M=[],O={},A=null==(p=r.initializeExposesData)?void 0:p.shareScope;for(let e in g())r.federation[e]=g()[e];m(r.federation,"consumesLoadingModuleToHandlerMapping",()=>{let e={};for(let[t,r]of Object.entries(N))e[t]={getter:r.fallback,shareInfo:{shareConfig:{fixedDependencies:!1,requiredVersion:r.requiredVersion,strictVersion:r.strictVersion,singleton:r.singleton,eager:r.eager},scope:[r.shareScope]},shareKey:r.shareKey};return e}),m(r.federation,"initOptions",()=>({})),m(r.federation.initOptions,"name",()=>S),m(r.federation.initOptions,"shareStrategy",()=>b),m(r.federation.initOptions,"shared",()=>{let e={};for(let[t,r]of Object.entries(R))for(let o of r)if("object"==typeof o&&null!==o){let{name:r,version:n,factory:a,eager:i,singleton:s,requiredVersion:l,strictVersion:u}=o,c={},d=function(e){return void 0!==e};d(s)&&(c.singleton=s),d(l)&&(c.requiredVersion=l),d(i)&&(c.eager=i),d(u)&&(c.strictVersion=u);let f={version:n,scope:[t],shareConfig:c,get:a};e[r]?e[r].push(f):e[r]=[f]}return e}),t(r.federation.initOptions,"remotes",()=>Object.values(E).flat().filter(e=>"script"===e.externalType)),t(r.federation.initOptions,"plugins",()=>y),m(r.federation,"bundlerRuntimeOptions",()=>({})),m(r.federation.bundlerRuntimeOptions,"remotes",()=>({})),m(r.federation.bundlerRuntimeOptions.remotes,"chunkMapping",()=>_),m(r.federation.bundlerRuntimeOptions.remotes,"remoteInfos",()=>E),m(r.federation.bundlerRuntimeOptions.remotes,"idToExternalAndNameMapping",()=>{let e={};for(let[t,r]of Object.entries(v))e[t]=[r.shareScope,r.name,r.externalModuleId,r.remoteName];return e}),m(r.federation.bundlerRuntimeOptions.remotes,"webpackRequire",()=>r),t(r.federation.bundlerRuntimeOptions.remotes,"idToRemoteMap",()=>{let e={};for(let[t,r]of Object.entries(v)){let o=E[r.remoteName];o&&(e[t]=o)}return e}),e(r,"S",r.federation.bundlerRuntime.S),r.federation.attachShareScopeMap&&r.federation.attachShareScopeMap(r),e(r.f,"remotes",(e,t)=>r.federation.bundlerRuntime.remotes({chunkId:e,promises:t,chunkMapping:_,idToExternalAndNameMapping:r.federation.bundlerRuntimeOptions.remotes.idToExternalAndNameMapping,idToRemoteMap:r.federation.bundlerRuntimeOptions.remotes.idToRemoteMap,webpackRequire:r})),e(r.f,"consumes",(e,t)=>r.federation.bundlerRuntime.consumes({chunkId:e,promises:t,chunkMapping:I,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping,installedModules:T,webpackRequire:r})),e(r,"I",(e,t)=>r.federation.bundlerRuntime.I({shareScopeName:e,initScope:t,initPromises:M,initTokens:O,webpackRequire:r})),e(r,"initContainer",(e,t,o)=>r.federation.bundlerRuntime.initContainerEntry({shareScope:e,initScope:t,remoteEntryInitOptions:o,shareScopeKey:A,webpackRequire:r})),e(r,"getContainer",(e,t)=>{var o=r.initializeExposesData.moduleMap;return r.R=t,t=Object.prototype.hasOwnProperty.call(o,e)?o[e]():Promise.resolve().then(()=>{throw Error('Module "'+e+'" does not exist in container.')}),r.R=void 0,t}),r.federation.instance=r.federation.runtime.init(r.federation.initOptions),(null==(h=r.consumesLoadingData)?void 0:h.initialConsumes)&&r.federation.bundlerRuntime.installInitialConsumes({webpackRequire:r,installedModules:T,initialConsumes:r.consumesLoadingData.initialConsumes,moduleToHandlerMapping:r.federation.consumesLoadingModuleToHandlerMapping})}}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var r=__webpack_module_cache__[e]={id:e,loaded:!1,exports:{}};return __webpack_modules__[e].call(r.exports,r,r.exports,__webpack_require__),r.loaded=!0,r.exports}__webpack_require__.m=__webpack_modules__,__webpack_require__.c=__webpack_module_cache__,__webpack_require__.x=()=>__webpack_require__(23362),(()=>{__webpack_require__.federation||(__webpack_require__.federation={chunkMatcher:function(e){return!/^(312|4|505|602)$/.test(e)},rootOutputDir:"../../"})})(),(()=>{__webpack_require__.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return __webpack_require__.d(t,{a:t}),t}})(),(()=>{__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}})(),(()=>{__webpack_require__.f={},__webpack_require__.e=e=>Promise.all(Object.keys(__webpack_require__.f).reduce((t,r)=>(__webpack_require__.f[r](e,t),t),[]))})(),(()=>{__webpack_require__.u=e=>"__mf/js/async/"+e+"."+({121:"80bade4a",133:"6f0771bf",39:"c873e4b4",392:"61cbfb70",470:"0d31a960",888:"a6ffb759",941:"4f06d1da",953:"17304f5a",963:"d584ed77"})[e]+".js"})(),(()=>{__webpack_require__.miniCssF=e=>"__mf/css/async/"+e+".85c2cbf6.css"})(),(()=>{__webpack_require__.g=(()=>{if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}})()})(),(()=>{__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})(),(()=>{var e={},t="HistogramChart:";__webpack_require__.l=function(r,o,n,a){if(e[r])return void e[r].push(o);if(void 0!==n)for(var i,s,l=document.getElementsByTagName("script"),u=0;u<l.length;u++){var c=l[u];if(c.getAttribute("src")==r||c.getAttribute("data-rspack")==t+n){i=c;break}}i||(s=!0,(i=document.createElement("script")).timeout=120,__webpack_require__.nc&&i.setAttribute("nonce",__webpack_require__.nc),i.setAttribute("data-rspack",t+n),i.src=r),e[r]=[o];var d=function(t,o){i.onerror=i.onload=null,clearTimeout(f);var n=e[r];if(delete e[r],i.parentNode&&i.parentNode.removeChild(i),n&&n.forEach(function(e){return e(o)}),t)return t(o)},f=setTimeout(d.bind(null,void 0,{type:"timeout",target:i}),12e4);i.onerror=d.bind(null,i.onerror),i.onload=d.bind(null,i.onload),s&&document.head.appendChild(i)}})(),(()=>{__webpack_require__.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}})(),(()=>{__webpack_require__.nmd=e=>(e.paths=[],e.children||(e.children=[]),e)})(),(()=>{__webpack_require__.nc=void 0})(),(()=>{__webpack_require__.S={},__webpack_require__.initializeSharingData={scopeToSharingDataMapping:{default:[{name:"@perses-dev/components",version:"0.54.0-beta.3",factory:()=>Promise.all([__webpack_require__.e("133"),__webpack_require__.e("953"),__webpack_require__.e("312"),__webpack_require__.e("4"),__webpack_require__.e("505"),__webpack_require__.e("602")]).then(()=>()=>__webpack_require__(11212)),eager:0,singleton:1},{name:"@perses-dev/spec",version:"0.2.0-beta.0",factory:()=>Promise.all([__webpack_require__.e("39"),__webpack_require__.e("888")]).then(()=>()=>__webpack_require__(1826)),eager:0,singleton:1},{name:"immer",version:"10.2.0",factory:()=>__webpack_require__.e("963").then(()=>()=>__webpack_require__(38662)),eager:0,singleton:1},{name:"lodash",version:"4.18.1",factory:()=>__webpack_require__.e("392").then(()=>()=>__webpack_require__(17243)),eager:0,singleton:1},{name:"react-dom",version:"18.3.1",factory:()=>Promise.all([__webpack_require__.e("470"),__webpack_require__.e("312")]).then(()=>()=>__webpack_require__(78325)),eager:0,singleton:1,requiredVersion:"18.2.0"},{name:"react",version:"18.3.1",factory:()=>__webpack_require__.e("121").then(()=>()=>__webpack_require__(63696)),eager:0,singleton:1,requiredVersion:"18.2.0"}]},uniqueName:"HistogramChart"},__webpack_require__.I=__webpack_require__.I||function(){throw Error("should have __webpack_require__.I")}})(),(()=>{__webpack_require__.g.importScripts&&(e=__webpack_require__.g.location+"");var e,t=__webpack_require__.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var r=t.getElementsByTagName("script");if(r.length)for(var o=r.length-1;o>-1&&(!e||!/^http(s?):/.test(e));)e=r[o--].src}if(!e)throw Error("Automatic publicPath is not supported in this browser");__webpack_require__.p=(e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"))+"../../"})(),(()=>{__webpack_require__.consumesLoadingData={chunkMapping:{312:["70451"],4:["20231"],505:["93585","40224"],602:["43945"]},moduleIdToConsumeDataMapping:{70451:{shareScope:"default",shareKey:"react",import:"react",requiredVersion:"18.2.0",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("121").then(()=>()=>__webpack_require__(63696))},43945:{shareScope:"default",shareKey:"immer",import:"immer",requiredVersion:"^10.1.1",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("963").then(()=>()=>__webpack_require__(38662))},40224:{shareScope:"default",shareKey:"lodash",import:"lodash",requiredVersion:"^4.17.21",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("392").then(()=>()=>__webpack_require__(17243))},20231:{shareScope:"default",shareKey:"react-dom",import:"react-dom",requiredVersion:"18.2.0",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("470").then(()=>()=>__webpack_require__(78325))},93585:{shareScope:"default",shareKey:"@perses-dev/spec",import:"@perses-dev/spec",requiredVersion:"0.2.0-beta.0",strictVersion:!1,singleton:!0,eager:!1,fallback:()=>__webpack_require__.e("39").then(()=>()=>__webpack_require__(1826))}},initialConsumes:[]},__webpack_require__.f.consumes=__webpack_require__.f.consumes||function(){throw Error("should have __webpack_require__.f.consumes")}})(),(()=>{if("u">typeof document){var e=function(e,t,r,o,n){var a=document.createElement("link");a.rel="stylesheet",a.type="text/css",__webpack_require__.nc&&(a.nonce=__webpack_require__.nc),a.href=t;var i=function(r){if(a.onerror=a.onload=null,"load"===r.type)o();else{var i=r&&("load"===r.type?"missing":r.type),s=r&&r.target&&r.target.href||t,l=Error("Loading CSS chunk "+e+" failed.\\n("+s+")");l.code="CSS_CHUNK_LOAD_FAILED",l.type=i,l.request=s,a.parentNode&&a.parentNode.removeChild(a),n(l)}};return a.onerror=a.onload=i,r?r.parentNode.insertBefore(a,r.nextSibling):document.head.appendChild(a),a},t=function(e,t){for(var r=document.getElementsByTagName("link"),o=0;o<r.length;o++){var n=r[o],a=n.getAttribute("data-href")||n.getAttribute("href");if(a&&(a=a.split("?")[0]),"stylesheet"===n.rel&&(a===e||a===t))return n}for(var i=document.getElementsByTagName("style"),o=0;o<i.length;o++){var n=i[o],a=n.getAttribute("data-href");if(a===e||a===t)return n}},r=function(r){return new Promise(function(o,n){var a=__webpack_require__.miniCssF(r),i=__webpack_require__.p+a;if(t(a,i))return o();e(r,i,null,o,n)})},o={889:0};__webpack_require__.f.miniCss=function(e,t){var n={133:1};o[e]?t.push(o[e]):0!==o[e]&&n[e]&&t.push(o[e]=r(e).then(function(){o[e]=0},function(t){throw delete o[e],t}))}}})(),(()=>{var e={889:0};__webpack_require__.f.j=function(t,r){var o=__webpack_require__.o(e,t)?e[t]:void 0;if(0!==o)if(o)r.push(o[2]);else if(/^(312|4|505|602)$/.test(t))e[t]=0;else{var n=new Promise((r,n)=>o=e[t]=[r,n]);r.push(o[2]=n);var a=__webpack_require__.p+__webpack_require__.u(t),i=Error(),s=function(r){if(__webpack_require__.o(e,t)&&(0!==(o=e[t])&&(e[t]=void 0),o)){var n=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;i.message="Loading chunk "+t+" failed.\n("+n+": "+a+")",i.name="ChunkLoadError",i.type=n,i.request=a,o[1](i)}};__webpack_require__.l(a,s,"chunk-"+t,t)}};var t=(t,r)=>{var o,n,[a,i,s]=r,l=0;if(a.some(t=>0!==e[t])){for(o in i)__webpack_require__.o(i,o)&&(__webpack_require__.m[o]=i[o]);s&&s(__webpack_require__)}for(t&&t(r);l<a.length;l++)n=a[l],__webpack_require__.o(e,n)&&e[n]&&e[n][0](),e[n]=0},r=self["chunk_HistogramChart "]=self["chunk_HistogramChart "]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{var e=__webpack_require__.x,t=!1;__webpack_require__.x=function(){if(t||(t=!0,__webpack_require__(94335)),"function"==typeof e)return e();console.warn("[MF] Invalid prevStartup")}})();var __webpack_exports__=__webpack_require__.x()})();
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ReactElement } from 'react';
|
|
2
|
-
import { FormatOptions,
|
|
2
|
+
import { FormatOptions, ThresholdOptions } from '@perses-dev/components';
|
|
3
|
+
import { BucketTuple } from '@perses-dev/spec';
|
|
3
4
|
import { LOG_BASE } from '../histogram-chart-model';
|
|
4
5
|
export interface HistogramChartData {
|
|
5
6
|
buckets: BucketTuple[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistogramChart.d.ts","sourceRoot":"","sources":["../../../src/components/HistogramChart.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAW,MAAM,OAAO,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"HistogramChart.d.ts","sourceRoot":"","sources":["../../../src/components/HistogramChart.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAW,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAU,aAAa,EAAoB,gBAAgB,EAAkB,MAAM,wBAAwB,CAAC;AAKnH,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAIpD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,MAAM,EACN,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,UAAU,EACV,OAAO,GACR,EAAE,mBAAmB,GAAG,YAAY,GAAG,IAAI,CA4K3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/HistogramChart.tsx"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { ReactElement, useMemo } from 'react';\nimport { FormatOptions, BucketTuple, ThresholdOptions } from '@perses-dev/core';\nimport { EChart, getFormattedAxis, useChartsTheme } from '@perses-dev/components';\nimport { use, EChartsCoreOption } from 'echarts/core';\nimport { CustomSeriesRenderItemAPI, CustomSeriesRenderItemParams } from 'echarts';\nimport { CustomChart } from 'echarts/charts';\nimport { getColorFromThresholds } from '../utils';\nimport { LOG_BASE } from '../histogram-chart-model';\n\nuse([CustomChart]);\n\nexport interface HistogramChartData {\n buckets: BucketTuple[];\n}\n\nexport interface HistogramChartProps {\n width: number;\n height: number;\n data: HistogramChartData;\n format?: FormatOptions;\n min?: number;\n max?: number;\n thresholds?: ThresholdOptions;\n logBase?: LOG_BASE;\n}\n\nexport function HistogramChart({\n width,\n height,\n data,\n format,\n min,\n max,\n thresholds,\n logBase,\n}: HistogramChartProps): ReactElement | null {\n const chartsTheme = useChartsTheme();\n\n const transformedData = useMemo(() => {\n return data.buckets\n .map(([bucket, lowerBound, upperBound, count]) => {\n let lower = parseFloat(lowerBound);\n const upper = parseFloat(upperBound);\n const countValue = parseFloat(count);\n\n // For logarithmic scales, we need to handle non-positive lower bounds\n // since log(0) and log(negative) are undefined\n if (logBase !== undefined && lower <= 0) {\n // Skip buckets that would be entirely non-positive on a log scale\n if (upper <= 0) {\n return null;\n }\n // For buckets that span from 0 (or negative) to positive,\n // use a small fraction of the upper bound as the lower bound\n // This ensures the bucket is still visible on the log scale\n lower = upper * 0.001; // Use 0.1% of upper bound as minimum\n }\n\n return {\n value: [lower, upper, countValue, bucket],\n itemStyle: {\n color: getColorFromThresholds(\n parseFloat(lowerBound), // Use original lower bound for threshold coloring\n thresholds,\n chartsTheme,\n chartsTheme.echartsTheme[0] as string\n ),\n },\n };\n })\n .filter((item): item is NonNullable<typeof item> => item !== null);\n }, [chartsTheme, data.buckets, logBase, thresholds]);\n\n const minXAxis: number | undefined = useMemo(() => {\n if (logBase !== undefined) {\n // For logarithmic scales, let ECharts auto-calculate the range based on data\n // to avoid issues with non-positive values\n return undefined;\n }\n\n if (min) {\n return min;\n }\n\n if (transformedData && transformedData[0]) {\n return Math.min(0, Math.floor(transformedData[0]?.value[0] ?? 0));\n }\n return undefined;\n }, [logBase, min, transformedData]);\n\n const maxXAxis: number | undefined = useMemo(() => {\n if (max) {\n return max;\n }\n if (transformedData && transformedData[transformedData.length - 1]) {\n return Math.ceil(transformedData[transformedData.length - 1]?.value[1] ?? 1);\n }\n return undefined;\n }, [max, transformedData]);\n\n const option: EChartsCoreOption = useMemo(() => {\n if (!transformedData) return chartsTheme.noDataOption;\n\n // Build xAxis configuration based on whether logarithmic scale is requested\n const xAxisConfig: Record<string, unknown> = {\n scale: false,\n min: minXAxis,\n max: maxXAxis,\n };\n\n // Apply logarithmic scale settings if requested\n if (logBase !== undefined) {\n xAxisConfig.type = 'log';\n xAxisConfig.logBase = logBase;\n }\n\n return {\n title: {\n show: false,\n },\n tooltip: {},\n xAxis: xAxisConfig,\n yAxis: getFormattedAxis({}, format),\n series: [\n {\n type: 'custom',\n renderItem: function (params: CustomSeriesRenderItemParams, api: CustomSeriesRenderItemAPI) {\n const lowerBound = api.value(0) as number;\n const upperBound = api.value(1) as number;\n const yValue = api.value(2) as number;\n\n // Get the pixel coordinates for the start and end points of the bar\n const startCoord = api.coord([lowerBound, yValue]);\n const endCoord = api.coord([upperBound, 0]);\n\n // Extract coordinates with safety checks\n const startX = startCoord?.[0];\n const startY = startCoord?.[1];\n const endX = endCoord?.[0];\n const endY = endCoord?.[1];\n\n // Check if coordinates are valid before proceeding\n if (startX === undefined || startY === undefined || endX === undefined || endY === undefined) {\n return null;\n }\n\n // For logarithmic scales, api.size() doesn't work correctly because\n // the visual width isn't linear. Instead, we calculate the width\n // directly from the pixel coordinates.\n const barWidth = endX - startX;\n const barHeight = endY - startY;\n\n const style = api.style?.();\n\n // Skip rendering if coordinates are invalid (can happen with log scale edge cases)\n if (\n !Number.isFinite(startX) ||\n !Number.isFinite(startY) ||\n !Number.isFinite(barWidth) ||\n !Number.isFinite(barHeight)\n ) {\n return null;\n }\n\n return {\n type: 'rect',\n shape: {\n x: startX,\n y: startY,\n width: barWidth,\n height: barHeight,\n },\n style: style,\n };\n },\n label: {\n show: false,\n },\n dimensions: ['from', 'to'],\n encode: {\n x: [0, 1],\n y: 2,\n tooltip: [0, 1],\n itemName: 2,\n },\n data: transformedData,\n },\n ],\n };\n }, [chartsTheme.noDataOption, format, logBase, maxXAxis, minXAxis, transformedData]);\n\n return (\n <EChart\n style={{\n width: width,\n height: height,\n }}\n sx={{\n padding: `${chartsTheme.container.padding.default}px`,\n }}\n option={option}\n theme={chartsTheme.echartsTheme}\n />\n );\n}\n"],"names":["useMemo","EChart","getFormattedAxis","useChartsTheme","use","CustomChart","getColorFromThresholds","HistogramChart","width","height","data","format","min","max","thresholds","logBase","chartsTheme","transformedData","buckets","map","bucket","lowerBound","upperBound","count","lower","parseFloat","upper","countValue","undefined","value","itemStyle","color","echartsTheme","filter","item","minXAxis","Math","floor","maxXAxis","length","ceil","option","noDataOption","xAxisConfig","scale","type","title","show","tooltip","xAxis","yAxis","series","renderItem","params","api","yValue","startCoord","coord","endCoord","startX","startY","endX","endY","barWidth","barHeight","style","Number","isFinite","shape","x","y","label","dimensions","encode","itemName","sx","padding","container","default","theme"],"mappings":";AAAA,+BAA+B;AAC/B,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,SAAuBA,OAAO,QAAQ,QAAQ;AAE9C,SAASC,MAAM,EAAEC,gBAAgB,EAAEC,cAAc,QAAQ,yBAAyB;AAClF,SAASC,GAAG,QAA2B,eAAe;AAEtD,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,SAASC,sBAAsB,QAAQ,WAAW;AAGlDF,IAAI;IAACC;CAAY;AAiBjB,OAAO,SAASE,eAAe,EAC7BC,KAAK,EACLC,MAAM,EACNC,IAAI,EACJC,MAAM,EACNC,GAAG,EACHC,GAAG,EACHC,UAAU,EACVC,OAAO,EACa;IACpB,MAAMC,cAAcb;IAEpB,MAAMc,kBAAkBjB,QAAQ;QAC9B,OAAOU,KAAKQ,OAAO,CAChBC,GAAG,CAAC,CAAC,CAACC,QAAQC,YAAYC,YAAYC,MAAM;YAC3C,IAAIC,QAAQC,WAAWJ;YACvB,MAAMK,QAAQD,WAAWH;YACzB,MAAMK,aAAaF,WAAWF;YAE9B,sEAAsE;YACtE,+CAA+C;YAC/C,IAAIR,YAAYa,aAAaJ,SAAS,GAAG;gBACvC,kEAAkE;gBAClE,IAAIE,SAAS,GAAG;oBACd,OAAO;gBACT;gBACA,0DAA0D;gBAC1D,6DAA6D;gBAC7D,4DAA4D;gBAC5DF,QAAQE,QAAQ,OAAO,qCAAqC;YAC9D;YAEA,OAAO;gBACLG,OAAO;oBAACL;oBAAOE;oBAAOC;oBAAYP;iBAAO;gBACzCU,WAAW;oBACTC,OAAOzB,uBACLmB,WAAWJ,aACXP,YACAE,aACAA,YAAYgB,YAAY,CAAC,EAAE;gBAE/B;YACF;QACF,GACCC,MAAM,CAAC,CAACC,OAA2CA,SAAS;IACjE,GAAG;QAAClB;QAAaN,KAAKQ,OAAO;QAAEH;QAASD;KAAW;IAEnD,MAAMqB,WAA+BnC,QAAQ;QAC3C,IAAIe,YAAYa,WAAW;YACzB,6EAA6E;YAC7E,2CAA2C;YAC3C,OAAOA;QACT;QAEA,IAAIhB,KAAK;YACP,OAAOA;QACT;QAEA,IAAIK,mBAAmBA,eAAe,CAAC,EAAE,EAAE;YACzC,OAAOmB,KAAKxB,GAAG,CAAC,GAAGwB,KAAKC,KAAK,CAACpB,eAAe,CAAC,EAAE,EAAEY,KAAK,CAAC,EAAE,IAAI;QAChE;QACA,OAAOD;IACT,GAAG;QAACb;QAASH;QAAKK;KAAgB;IAElC,MAAMqB,WAA+BtC,QAAQ;QAC3C,IAAIa,KAAK;YACP,OAAOA;QACT;QACA,IAAII,mBAAmBA,eAAe,CAACA,gBAAgBsB,MAAM,GAAG,EAAE,EAAE;YAClE,OAAOH,KAAKI,IAAI,CAACvB,eAAe,CAACA,gBAAgBsB,MAAM,GAAG,EAAE,EAAEV,KAAK,CAAC,EAAE,IAAI;QAC5E;QACA,OAAOD;IACT,GAAG;QAACf;QAAKI;KAAgB;IAEzB,MAAMwB,SAA4BzC,QAAQ;QACxC,IAAI,CAACiB,iBAAiB,OAAOD,YAAY0B,YAAY;QAErD,4EAA4E;QAC5E,MAAMC,cAAuC;YAC3CC,OAAO;YACPhC,KAAKuB;YACLtB,KAAKyB;QACP;QAEA,gDAAgD;QAChD,IAAIvB,YAAYa,WAAW;YACzBe,YAAYE,IAAI,GAAG;YACnBF,YAAY5B,OAAO,GAAGA;QACxB;QAEA,OAAO;YACL+B,OAAO;gBACLC,MAAM;YACR;YACAC,SAAS,CAAC;YACVC,OAAON;YACPO,OAAOhD,iBAAiB,CAAC,GAAGS;YAC5BwC,QAAQ;gBACN;oBACEN,MAAM;oBACNO,YAAY,SAAUC,MAAoC,EAAEC,GAA8B;wBACxF,MAAMjC,aAAaiC,IAAIzB,KAAK,CAAC;wBAC7B,MAAMP,aAAagC,IAAIzB,KAAK,CAAC;wBAC7B,MAAM0B,SAASD,IAAIzB,KAAK,CAAC;wBAEzB,oEAAoE;wBACpE,MAAM2B,aAAaF,IAAIG,KAAK,CAAC;4BAACpC;4BAAYkC;yBAAO;wBACjD,MAAMG,WAAWJ,IAAIG,KAAK,CAAC;4BAACnC;4BAAY;yBAAE;wBAE1C,yCAAyC;wBACzC,MAAMqC,SAASH,YAAY,CAAC,EAAE;wBAC9B,MAAMI,SAASJ,YAAY,CAAC,EAAE;wBAC9B,MAAMK,OAAOH,UAAU,CAAC,EAAE;wBAC1B,MAAMI,OAAOJ,UAAU,CAAC,EAAE;wBAE1B,mDAAmD;wBACnD,IAAIC,WAAW/B,aAAagC,WAAWhC,aAAaiC,SAASjC,aAAakC,SAASlC,WAAW;4BAC5F,OAAO;wBACT;wBAEA,oEAAoE;wBACpE,iEAAiE;wBACjE,uCAAuC;wBACvC,MAAMmC,WAAWF,OAAOF;wBACxB,MAAMK,YAAYF,OAAOF;wBAEzB,MAAMK,QAAQX,IAAIW,KAAK;wBAEvB,mFAAmF;wBACnF,IACE,CAACC,OAAOC,QAAQ,CAACR,WACjB,CAACO,OAAOC,QAAQ,CAACP,WACjB,CAACM,OAAOC,QAAQ,CAACJ,aACjB,CAACG,OAAOC,QAAQ,CAACH,YACjB;4BACA,OAAO;wBACT;wBAEA,OAAO;4BACLnB,MAAM;4BACNuB,OAAO;gCACLC,GAAGV;gCACHW,GAAGV;gCACHpD,OAAOuD;gCACPtD,QAAQuD;4BACV;4BACAC,OAAOA;wBACT;oBACF;oBACAM,OAAO;wBACLxB,MAAM;oBACR;oBACAyB,YAAY;wBAAC;wBAAQ;qBAAK;oBAC1BC,QAAQ;wBACNJ,GAAG;4BAAC;4BAAG;yBAAE;wBACTC,GAAG;wBACHtB,SAAS;4BAAC;4BAAG;yBAAE;wBACf0B,UAAU;oBACZ;oBACAhE,MAAMO;gBACR;aACD;QACH;IACF,GAAG;QAACD,YAAY0B,YAAY;QAAE/B;QAAQI;QAASuB;QAAUH;QAAUlB;KAAgB;IAEnF,qBACE,KAAChB;QACCgE,OAAO;YACLzD,OAAOA;YACPC,QAAQA;QACV;QACAkE,IAAI;YACFC,SAAS,GAAG5D,YAAY6D,SAAS,CAACD,OAAO,CAACE,OAAO,CAAC,EAAE,CAAC;QACvD;QACArC,QAAQA;QACRsC,OAAO/D,YAAYgB,YAAY;;AAGrC"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/HistogramChart.tsx"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { ReactElement, useMemo } from 'react';\nimport { EChart, FormatOptions, getFormattedAxis, ThresholdOptions, useChartsTheme } from '@perses-dev/components';\nimport { use, EChartsCoreOption } from 'echarts/core';\nimport { CustomSeriesRenderItemAPI, CustomSeriesRenderItemParams } from 'echarts';\nimport { CustomChart } from 'echarts/charts';\nimport { CustomSeriesRenderItemReturn } from 'echarts/types/dist/echarts';\nimport { BucketTuple } from '@perses-dev/spec';\nimport { getColorFromThresholds } from '../utils';\nimport { LOG_BASE } from '../histogram-chart-model';\n\nuse([CustomChart]);\n\nexport interface HistogramChartData {\n buckets: BucketTuple[];\n}\n\nexport interface HistogramChartProps {\n width: number;\n height: number;\n data: HistogramChartData;\n format?: FormatOptions;\n min?: number;\n max?: number;\n thresholds?: ThresholdOptions;\n logBase?: LOG_BASE;\n}\n\nexport function HistogramChart({\n width,\n height,\n data,\n format,\n min,\n max,\n thresholds,\n logBase,\n}: HistogramChartProps): ReactElement | null {\n const chartsTheme = useChartsTheme();\n\n const transformedData = useMemo(() => {\n return data.buckets\n .map(([bucket, lowerBound, upperBound, count]) => {\n let lower = parseFloat(lowerBound);\n const upper = parseFloat(upperBound);\n const countValue = parseFloat(count);\n\n // For logarithmic scales, we need to handle non-positive lower bounds\n // since log(0) and log(negative) are undefined\n if (logBase !== undefined && lower <= 0) {\n // Skip buckets that would be entirely non-positive on a log scale\n if (upper <= 0) {\n return null;\n }\n // For buckets that span from 0 (or negative) to positive,\n // use a small fraction of the upper bound as the lower bound\n // This ensures the bucket is still visible on the log scale\n lower = upper * 0.001; // Use 0.1% of upper bound as minimum\n }\n\n return {\n value: [lower, upper, countValue, bucket],\n itemStyle: {\n color: getColorFromThresholds(\n parseFloat(lowerBound), // Use original lower bound for threshold coloring\n thresholds,\n chartsTheme,\n chartsTheme.echartsTheme[0] as string\n ),\n },\n };\n })\n .filter((item): item is NonNullable<typeof item> => item !== null);\n }, [chartsTheme, data.buckets, logBase, thresholds]);\n\n const minXAxis: number | undefined = useMemo(() => {\n if (logBase !== undefined) {\n // For logarithmic scales, let ECharts auto-calculate the range based on data\n // to avoid issues with non-positive values\n return undefined;\n }\n\n if (min) {\n return min;\n }\n\n if (transformedData && transformedData[0]) {\n return Math.min(0, Math.floor(transformedData[0]?.value[0] ?? 0));\n }\n return undefined;\n }, [logBase, min, transformedData]);\n\n const maxXAxis: number | undefined = useMemo(() => {\n if (max) {\n return max;\n }\n if (transformedData && transformedData[transformedData.length - 1]) {\n return Math.ceil(transformedData[transformedData.length - 1]?.value[1] ?? 1);\n }\n return undefined;\n }, [max, transformedData]);\n\n const option: EChartsCoreOption = useMemo(() => {\n if (!transformedData) return chartsTheme.noDataOption;\n\n // Build xAxis configuration based on whether logarithmic scale is requested\n const xAxisConfig: Record<string, unknown> = {\n scale: false,\n min: minXAxis,\n max: maxXAxis,\n };\n\n // Apply logarithmic scale settings if requested\n if (logBase !== undefined) {\n xAxisConfig.type = 'log';\n xAxisConfig.logBase = logBase;\n }\n\n return {\n title: {\n show: false,\n },\n tooltip: {},\n xAxis: xAxisConfig,\n yAxis: getFormattedAxis({}, format),\n series: [\n {\n type: 'custom',\n renderItem: function (\n params: CustomSeriesRenderItemParams,\n api: CustomSeriesRenderItemAPI\n ): CustomSeriesRenderItemReturn {\n const lowerBound = api.value(0) as number;\n const upperBound = api.value(1) as number;\n const yValue = api.value(2) as number;\n\n // Get the pixel coordinates for the start and end points of the bar\n const startCoord = api.coord([lowerBound, yValue]);\n const endCoord = api.coord([upperBound, 0]);\n\n // Extract coordinates with safety checks\n const startX = startCoord?.[0];\n const startY = startCoord?.[1];\n const endX = endCoord?.[0];\n const endY = endCoord?.[1];\n\n // Check if coordinates are valid before proceeding\n if (startX === undefined || startY === undefined || endX === undefined || endY === undefined) {\n return null;\n }\n\n // For logarithmic scales, api.size() doesn't work correctly because\n // the visual width isn't linear. Instead, we calculate the width\n // directly from the pixel coordinates.\n const barWidth = endX - startX;\n const barHeight = endY - startY;\n\n const style = api.style?.();\n\n // Skip rendering if coordinates are invalid (can happen with log scale edge cases)\n if (\n !Number.isFinite(startX) ||\n !Number.isFinite(startY) ||\n !Number.isFinite(barWidth) ||\n !Number.isFinite(barHeight)\n ) {\n return null;\n }\n\n return {\n type: 'rect',\n shape: {\n x: startX,\n y: startY,\n width: barWidth,\n height: barHeight,\n },\n style: style,\n };\n },\n label: {\n show: false,\n },\n dimensions: ['from', 'to'],\n encode: {\n x: [0, 1],\n y: 2,\n tooltip: [0, 1],\n itemName: 2,\n },\n data: transformedData,\n },\n ],\n };\n }, [chartsTheme.noDataOption, format, logBase, maxXAxis, minXAxis, transformedData]);\n\n return (\n <EChart\n style={{\n width: width,\n height: height,\n }}\n sx={{\n padding: `${chartsTheme.container.padding.default}px`,\n }}\n option={option}\n theme={chartsTheme.echartsTheme}\n />\n );\n}\n"],"names":["useMemo","EChart","getFormattedAxis","useChartsTheme","use","CustomChart","getColorFromThresholds","HistogramChart","width","height","data","format","min","max","thresholds","logBase","chartsTheme","transformedData","buckets","map","bucket","lowerBound","upperBound","count","lower","parseFloat","upper","countValue","undefined","value","itemStyle","color","echartsTheme","filter","item","minXAxis","Math","floor","maxXAxis","length","ceil","option","noDataOption","xAxisConfig","scale","type","title","show","tooltip","xAxis","yAxis","series","renderItem","params","api","yValue","startCoord","coord","endCoord","startX","startY","endX","endY","barWidth","barHeight","style","Number","isFinite","shape","x","y","label","dimensions","encode","itemName","sx","padding","container","default","theme"],"mappings":";AAAA,+BAA+B;AAC/B,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,SAAuBA,OAAO,QAAQ,QAAQ;AAC9C,SAASC,MAAM,EAAiBC,gBAAgB,EAAoBC,cAAc,QAAQ,yBAAyB;AACnH,SAASC,GAAG,QAA2B,eAAe;AAEtD,SAASC,WAAW,QAAQ,iBAAiB;AAG7C,SAASC,sBAAsB,QAAQ,WAAW;AAGlDF,IAAI;IAACC;CAAY;AAiBjB,OAAO,SAASE,eAAe,EAC7BC,KAAK,EACLC,MAAM,EACNC,IAAI,EACJC,MAAM,EACNC,GAAG,EACHC,GAAG,EACHC,UAAU,EACVC,OAAO,EACa;IACpB,MAAMC,cAAcb;IAEpB,MAAMc,kBAAkBjB,QAAQ;QAC9B,OAAOU,KAAKQ,OAAO,CAChBC,GAAG,CAAC,CAAC,CAACC,QAAQC,YAAYC,YAAYC,MAAM;YAC3C,IAAIC,QAAQC,WAAWJ;YACvB,MAAMK,QAAQD,WAAWH;YACzB,MAAMK,aAAaF,WAAWF;YAE9B,sEAAsE;YACtE,+CAA+C;YAC/C,IAAIR,YAAYa,aAAaJ,SAAS,GAAG;gBACvC,kEAAkE;gBAClE,IAAIE,SAAS,GAAG;oBACd,OAAO;gBACT;gBACA,0DAA0D;gBAC1D,6DAA6D;gBAC7D,4DAA4D;gBAC5DF,QAAQE,QAAQ,OAAO,qCAAqC;YAC9D;YAEA,OAAO;gBACLG,OAAO;oBAACL;oBAAOE;oBAAOC;oBAAYP;iBAAO;gBACzCU,WAAW;oBACTC,OAAOzB,uBACLmB,WAAWJ,aACXP,YACAE,aACAA,YAAYgB,YAAY,CAAC,EAAE;gBAE/B;YACF;QACF,GACCC,MAAM,CAAC,CAACC,OAA2CA,SAAS;IACjE,GAAG;QAAClB;QAAaN,KAAKQ,OAAO;QAAEH;QAASD;KAAW;IAEnD,MAAMqB,WAA+BnC,QAAQ;QAC3C,IAAIe,YAAYa,WAAW;YACzB,6EAA6E;YAC7E,2CAA2C;YAC3C,OAAOA;QACT;QAEA,IAAIhB,KAAK;YACP,OAAOA;QACT;QAEA,IAAIK,mBAAmBA,eAAe,CAAC,EAAE,EAAE;YACzC,OAAOmB,KAAKxB,GAAG,CAAC,GAAGwB,KAAKC,KAAK,CAACpB,eAAe,CAAC,EAAE,EAAEY,KAAK,CAAC,EAAE,IAAI;QAChE;QACA,OAAOD;IACT,GAAG;QAACb;QAASH;QAAKK;KAAgB;IAElC,MAAMqB,WAA+BtC,QAAQ;QAC3C,IAAIa,KAAK;YACP,OAAOA;QACT;QACA,IAAII,mBAAmBA,eAAe,CAACA,gBAAgBsB,MAAM,GAAG,EAAE,EAAE;YAClE,OAAOH,KAAKI,IAAI,CAACvB,eAAe,CAACA,gBAAgBsB,MAAM,GAAG,EAAE,EAAEV,KAAK,CAAC,EAAE,IAAI;QAC5E;QACA,OAAOD;IACT,GAAG;QAACf;QAAKI;KAAgB;IAEzB,MAAMwB,SAA4BzC,QAAQ;QACxC,IAAI,CAACiB,iBAAiB,OAAOD,YAAY0B,YAAY;QAErD,4EAA4E;QAC5E,MAAMC,cAAuC;YAC3CC,OAAO;YACPhC,KAAKuB;YACLtB,KAAKyB;QACP;QAEA,gDAAgD;QAChD,IAAIvB,YAAYa,WAAW;YACzBe,YAAYE,IAAI,GAAG;YACnBF,YAAY5B,OAAO,GAAGA;QACxB;QAEA,OAAO;YACL+B,OAAO;gBACLC,MAAM;YACR;YACAC,SAAS,CAAC;YACVC,OAAON;YACPO,OAAOhD,iBAAiB,CAAC,GAAGS;YAC5BwC,QAAQ;gBACN;oBACEN,MAAM;oBACNO,YAAY,SACVC,MAAoC,EACpCC,GAA8B;wBAE9B,MAAMjC,aAAaiC,IAAIzB,KAAK,CAAC;wBAC7B,MAAMP,aAAagC,IAAIzB,KAAK,CAAC;wBAC7B,MAAM0B,SAASD,IAAIzB,KAAK,CAAC;wBAEzB,oEAAoE;wBACpE,MAAM2B,aAAaF,IAAIG,KAAK,CAAC;4BAACpC;4BAAYkC;yBAAO;wBACjD,MAAMG,WAAWJ,IAAIG,KAAK,CAAC;4BAACnC;4BAAY;yBAAE;wBAE1C,yCAAyC;wBACzC,MAAMqC,SAASH,YAAY,CAAC,EAAE;wBAC9B,MAAMI,SAASJ,YAAY,CAAC,EAAE;wBAC9B,MAAMK,OAAOH,UAAU,CAAC,EAAE;wBAC1B,MAAMI,OAAOJ,UAAU,CAAC,EAAE;wBAE1B,mDAAmD;wBACnD,IAAIC,WAAW/B,aAAagC,WAAWhC,aAAaiC,SAASjC,aAAakC,SAASlC,WAAW;4BAC5F,OAAO;wBACT;wBAEA,oEAAoE;wBACpE,iEAAiE;wBACjE,uCAAuC;wBACvC,MAAMmC,WAAWF,OAAOF;wBACxB,MAAMK,YAAYF,OAAOF;wBAEzB,MAAMK,QAAQX,IAAIW,KAAK;wBAEvB,mFAAmF;wBACnF,IACE,CAACC,OAAOC,QAAQ,CAACR,WACjB,CAACO,OAAOC,QAAQ,CAACP,WACjB,CAACM,OAAOC,QAAQ,CAACJ,aACjB,CAACG,OAAOC,QAAQ,CAACH,YACjB;4BACA,OAAO;wBACT;wBAEA,OAAO;4BACLnB,MAAM;4BACNuB,OAAO;gCACLC,GAAGV;gCACHW,GAAGV;gCACHpD,OAAOuD;gCACPtD,QAAQuD;4BACV;4BACAC,OAAOA;wBACT;oBACF;oBACAM,OAAO;wBACLxB,MAAM;oBACR;oBACAyB,YAAY;wBAAC;wBAAQ;qBAAK;oBAC1BC,QAAQ;wBACNJ,GAAG;4BAAC;4BAAG;yBAAE;wBACTC,GAAG;wBACHtB,SAAS;4BAAC;4BAAG;yBAAE;wBACf0B,UAAU;oBACZ;oBACAhE,MAAMO;gBACR;aACD;QACH;IACF,GAAG;QAACD,YAAY0B,YAAY;QAAE/B;QAAQI;QAASuB;QAAUH;QAAUlB;KAAgB;IAEnF,qBACE,KAAChB;QACCgE,OAAO;YACLzD,OAAOA;YACPC,QAAQA;QACV;QACAkE,IAAI;YACFC,SAAS,GAAG5D,YAAY6D,SAAS,CAACD,OAAO,CAACE,OAAO,CAAC,EAAE,CAAC;QACvD;QACArC,QAAQA;QACRsC,OAAO/D,YAAYgB,YAAY;;AAGrC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TimeSeriesData } from '@perses-dev/core';
|
|
2
1
|
import { PanelProps } from '@perses-dev/plugin-system';
|
|
3
2
|
import { ReactElement } from 'react';
|
|
3
|
+
import { TimeSeriesData } from '@perses-dev/spec';
|
|
4
4
|
import { HistogramChartOptions } from '../histogram-chart-model';
|
|
5
5
|
export type HistogramChartPanelProps = PanelProps<HistogramChartOptions, TimeSeriesData>;
|
|
6
6
|
export declare function HistogramChartPanel(props: HistogramChartPanelProps): ReactElement | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HistogramChartPanel.d.ts","sourceRoot":"","sources":["../../../src/components/HistogramChartPanel.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"HistogramChartPanel.d.ts","sourceRoot":"","sources":["../../../src/components/HistogramChartPanel.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAAE,YAAY,EAAW,MAAM,OAAO,CAAC;AAE9C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAsC,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAKrG,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC;AAEzF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,YAAY,GAAG,IAAI,CA2ExF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/HistogramChartPanel.tsx"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { Box, Stack, Typography } from '@mui/material';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../src/components/HistogramChartPanel.tsx"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { Box, Stack, Typography } from '@mui/material';\nimport { PanelProps } from '@perses-dev/plugin-system';\nimport merge from 'lodash/merge';\nimport { ReactElement, useMemo } from 'react';\nimport { useChartsTheme } from '@perses-dev/components';\nimport { TimeSeriesData } from '@perses-dev/spec';\nimport { DEFAULT_FORMAT, DEFAULT_THRESHOLDS, HistogramChartOptions } from '../histogram-chart-model';\nimport { HistogramChart, HistogramChartData } from './HistogramChart';\n\nconst HISTOGRAM_MIN_WIDTH = 90;\n\nexport type HistogramChartPanelProps = PanelProps<HistogramChartOptions, TimeSeriesData>;\n\nexport function HistogramChartPanel(props: HistogramChartPanelProps): ReactElement | null {\n const { spec: pluginSpec, contentDimensions, queryResults } = props;\n const { min, max } = pluginSpec;\n\n const chartsTheme = useChartsTheme();\n // ensures all default format properties set if undef\n const format = merge({}, DEFAULT_FORMAT, pluginSpec.format);\n const thresholds = merge({}, DEFAULT_THRESHOLDS, pluginSpec.thresholds);\n\n const histogramData: HistogramChartData[] = useMemo(() => {\n const histograms: HistogramChartData[] = [];\n\n for (const result of queryResults) {\n for (const timeSeries of result.data.series) {\n if (!timeSeries.histograms || timeSeries.histograms.length === 0) {\n continue;\n }\n\n const [, histoBuckets] = timeSeries.histograms[0]!;\n if (histoBuckets && histoBuckets.buckets) {\n histograms.push({ buckets: histoBuckets.buckets });\n }\n }\n }\n return histograms;\n }, [queryResults]);\n\n // no data message handled inside chart component\n if (histogramData.length === 0) {\n return (\n <Stack justifyContent=\"center\" height=\"100%\">\n <Typography variant=\"body2\" textAlign=\"center\">\n No data available (only native histograms are supported for now)\n </Typography>\n </Stack>\n );\n }\n\n if (contentDimensions === undefined) return null;\n\n // accounts for showing a separate chart for each time series\n let chartWidth = contentDimensions.width / histogramData.length - chartsTheme.container.padding.default;\n if (chartWidth < HISTOGRAM_MIN_WIDTH && histogramData.length > 1) {\n // enables horizontal scroll when charts overflow outside of panel\n chartWidth = HISTOGRAM_MIN_WIDTH;\n }\n\n return (\n <Stack\n direction=\"row\"\n justifyContent=\"center\"\n alignItems=\"center\"\n sx={{\n // so scrollbar only shows when necessary\n overflowX: histogramData.length > 1 ? 'scroll' : 'auto',\n }}\n >\n {histogramData.map((series, seriesIndex) => {\n return (\n <Box key={`histogram-series-${seriesIndex}`}>\n <HistogramChart\n width={chartWidth}\n height={contentDimensions.height}\n data={series}\n format={format}\n min={min}\n max={max}\n thresholds={thresholds}\n logBase={pluginSpec.logBase}\n />\n </Box>\n );\n })}\n </Stack>\n );\n}\n"],"names":["Box","Stack","Typography","merge","useMemo","useChartsTheme","DEFAULT_FORMAT","DEFAULT_THRESHOLDS","HistogramChart","HISTOGRAM_MIN_WIDTH","HistogramChartPanel","props","spec","pluginSpec","contentDimensions","queryResults","min","max","chartsTheme","format","thresholds","histogramData","histograms","result","timeSeries","data","series","length","histoBuckets","buckets","push","justifyContent","height","variant","textAlign","undefined","chartWidth","width","container","padding","default","direction","alignItems","sx","overflowX","map","seriesIndex","logBase"],"mappings":";AAAA,+BAA+B;AAC/B,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAEjC,SAASA,GAAG,EAAEC,KAAK,EAAEC,UAAU,QAAQ,gBAAgB;AAEvD,OAAOC,WAAW,eAAe;AACjC,SAAuBC,OAAO,QAAQ,QAAQ;AAC9C,SAASC,cAAc,QAAQ,yBAAyB;AAExD,SAASC,cAAc,EAAEC,kBAAkB,QAA+B,2BAA2B;AACrG,SAASC,cAAc,QAA4B,mBAAmB;AAEtE,MAAMC,sBAAsB;AAI5B,OAAO,SAASC,oBAAoBC,KAA+B;IACjE,MAAM,EAAEC,MAAMC,UAAU,EAAEC,iBAAiB,EAAEC,YAAY,EAAE,GAAGJ;IAC9D,MAAM,EAAEK,GAAG,EAAEC,GAAG,EAAE,GAAGJ;IAErB,MAAMK,cAAcb;IACpB,qDAAqD;IACrD,MAAMc,SAAShB,MAAM,CAAC,GAAGG,gBAAgBO,WAAWM,MAAM;IAC1D,MAAMC,aAAajB,MAAM,CAAC,GAAGI,oBAAoBM,WAAWO,UAAU;IAEtE,MAAMC,gBAAsCjB,QAAQ;QAClD,MAAMkB,aAAmC,EAAE;QAE3C,KAAK,MAAMC,UAAUR,aAAc;YACjC,KAAK,MAAMS,cAAcD,OAAOE,IAAI,CAACC,MAAM,CAAE;gBAC3C,IAAI,CAACF,WAAWF,UAAU,IAAIE,WAAWF,UAAU,CAACK,MAAM,KAAK,GAAG;oBAChE;gBACF;gBAEA,MAAM,GAAGC,aAAa,GAAGJ,WAAWF,UAAU,CAAC,EAAE;gBACjD,IAAIM,gBAAgBA,aAAaC,OAAO,EAAE;oBACxCP,WAAWQ,IAAI,CAAC;wBAAED,SAASD,aAAaC,OAAO;oBAAC;gBAClD;YACF;QACF;QACA,OAAOP;IACT,GAAG;QAACP;KAAa;IAEjB,iDAAiD;IACjD,IAAIM,cAAcM,MAAM,KAAK,GAAG;QAC9B,qBACE,KAAC1B;YAAM8B,gBAAe;YAASC,QAAO;sBACpC,cAAA,KAAC9B;gBAAW+B,SAAQ;gBAAQC,WAAU;0BAAS;;;IAKrD;IAEA,IAAIpB,sBAAsBqB,WAAW,OAAO;IAE5C,6DAA6D;IAC7D,IAAIC,aAAatB,kBAAkBuB,KAAK,GAAGhB,cAAcM,MAAM,GAAGT,YAAYoB,SAAS,CAACC,OAAO,CAACC,OAAO;IACvG,IAAIJ,aAAa3B,uBAAuBY,cAAcM,MAAM,GAAG,GAAG;QAChE,kEAAkE;QAClES,aAAa3B;IACf;IAEA,qBACE,KAACR;QACCwC,WAAU;QACVV,gBAAe;QACfW,YAAW;QACXC,IAAI;YACF,yCAAyC;YACzCC,WAAWvB,cAAcM,MAAM,GAAG,IAAI,WAAW;QACnD;kBAECN,cAAcwB,GAAG,CAAC,CAACnB,QAAQoB;YAC1B,qBACE,KAAC9C;0BACC,cAAA,KAACQ;oBACC6B,OAAOD;oBACPJ,QAAQlB,kBAAkBkB,MAAM;oBAChCP,MAAMC;oBACNP,QAAQA;oBACRH,KAAKA;oBACLC,KAAKA;oBACLG,YAAYA;oBACZ2B,SAASlC,WAAWkC,OAAO;;eATrB,CAAC,iBAAiB,EAAED,aAAa;QAa/C;;AAGN"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { FormatOptions, ThresholdOptions } from '@perses-dev/components';
|
|
2
2
|
import { OptionsEditorProps } from '@perses-dev/plugin-system';
|
|
3
|
+
import { Definition } from '@perses-dev/spec';
|
|
3
4
|
export declare const DEFAULT_FORMAT: FormatOptions;
|
|
4
5
|
export declare const DEFAULT_THRESHOLDS: ThresholdOptions;
|
|
5
6
|
export declare const DEFAULT_MIN_PERCENT = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"histogram-chart-model.d.ts","sourceRoot":"","sources":["../../src/histogram-chart-model.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"histogram-chart-model.d.ts","sourceRoot":"","sources":["../../src/histogram-chart-model.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,eAAO,MAAM,cAAc,EAAE,aAAmC,CAAC;AACjE,eAAO,MAAM,kBAAkB,EAAE,gBAA8C,CAAC;AAChF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAG7C,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,GAAG,EAAE,CAAC;AAE1C,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAA;CAAE,CAI5E,CAAC;AAGF,eAAO,MAAM,gBAAgB;WAPyB,MAAM;SAAO,QAAQ;QAQ/D,MAAM;GAEf,CAAC;AAEJ;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,UAAU,CAAC,qBAAqB,CAAC;IACjF,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,MAAM,gCAAgC,GAAG,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;AAEzF;;GAEG;AACH,wBAAgB,kCAAkC,IAAI,qBAAqB,CAI1E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/histogram-chart-model.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/histogram-chart-model.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { FormatOptions, ThresholdOptions } from '@perses-dev/components';\nimport { OptionsEditorProps } from '@perses-dev/plugin-system';\nimport { Definition } from '@perses-dev/spec';\n\nexport const DEFAULT_FORMAT: FormatOptions = { unit: 'decimal' };\nexport const DEFAULT_THRESHOLDS: ThresholdOptions = { defaultColor: '#56b4e9' };\nexport const DEFAULT_MIN_PERCENT = 0;\nexport const DEFAULT_MAX_PERCENT = 100;\nexport const DEFAULT_MIN_PERCENT_DECIMAL = 0;\nexport const DEFAULT_MAX_PERCENT_DECIMAL = 1;\n\n// LogBase outlines the allowed log bases for the histogram x-axis.\nexport type LOG_BASE = undefined | 2 | 10;\n\nexport const LOG_BASE_CONFIG: Record<string, { label: string; log: LOG_BASE }> = {\n none: { label: 'None', log: undefined },\n '2': { label: '2', log: 2 },\n '10': { label: '10', log: 10 },\n};\n\n// Options array for SettingsAutocomplete\nexport const LOG_BASE_OPTIONS = Object.entries(LOG_BASE_CONFIG).map(([id, config]) => ({\n id: id as string,\n ...config,\n}));\n\n/**\n * The schema for a HistogramChart panel.\n */\nexport interface HistogramChartDefinition extends Definition<HistogramChartOptions> {\n kind: 'HistogramChart';\n}\n\n/**\n * The Options object type supported by the HistogramChart panel plugin.\n */\nexport interface HistogramChartOptions {\n format?: FormatOptions;\n min?: number;\n max?: number;\n thresholds?: ThresholdOptions;\n logBase?: LOG_BASE;\n}\n\nexport type HistogramChartOptionsEditorProps = OptionsEditorProps<HistogramChartOptions>;\n\n/**\n * Creates the initial/empty options for a HistogramChart panel.\n */\nexport function createInitialHistogramChartOptions(): HistogramChartOptions {\n return {\n format: DEFAULT_FORMAT,\n };\n}\n"],"names":["DEFAULT_FORMAT","unit","DEFAULT_THRESHOLDS","defaultColor","DEFAULT_MIN_PERCENT","DEFAULT_MAX_PERCENT","DEFAULT_MIN_PERCENT_DECIMAL","DEFAULT_MAX_PERCENT_DECIMAL","LOG_BASE_CONFIG","none","label","log","undefined","LOG_BASE_OPTIONS","Object","entries","map","id","config","createInitialHistogramChartOptions","format"],"mappings":"AAAA,+BAA+B;AAC/B,kEAAkE;AAClE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAMjC,OAAO,MAAMA,iBAAgC;IAAEC,MAAM;AAAU,EAAE;AACjE,OAAO,MAAMC,qBAAuC;IAAEC,cAAc;AAAU,EAAE;AAChF,OAAO,MAAMC,sBAAsB,EAAE;AACrC,OAAO,MAAMC,sBAAsB,IAAI;AACvC,OAAO,MAAMC,8BAA8B,EAAE;AAC7C,OAAO,MAAMC,8BAA8B,EAAE;AAK7C,OAAO,MAAMC,kBAAoE;IAC/EC,MAAM;QAAEC,OAAO;QAAQC,KAAKC;IAAU;IACtC,KAAK;QAAEF,OAAO;QAAKC,KAAK;IAAE;IAC1B,MAAM;QAAED,OAAO;QAAMC,KAAK;IAAG;AAC/B,EAAE;AAEF,yCAAyC;AACzC,OAAO,MAAME,mBAAmBC,OAAOC,OAAO,CAACP,iBAAiBQ,GAAG,CAAC,CAAC,CAACC,IAAIC,OAAO,GAAM,CAAA;QACrFD,IAAIA;QACJ,GAAGC,MAAM;IACX,CAAA,GAAI;AAsBJ;;CAEC,GACD,OAAO,SAASC;IACd,OAAO;QACLC,QAAQpB;IACV;AACF"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ThresholdOptions } from '@perses-dev/
|
|
2
|
-
import { PersesChartsTheme } from '@perses-dev/components';
|
|
1
|
+
import { PersesChartsTheme, ThresholdOptions } from '@perses-dev/components';
|
|
3
2
|
export declare function getColorFromThresholds(value: number, thresholds: ThresholdOptions | undefined, chartsTheme: PersesChartsTheme, defaultColor: string): string | null;
|
|
4
3
|
//# sourceMappingURL=thresholds.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thresholds.d.ts","sourceRoot":"","sources":["../../../src/utils/thresholds.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"thresholds.d.ts","sourceRoot":"","sources":["../../../src/utils/thresholds.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,gBAAgB,GAAG,SAAS,EACxC,WAAW,EAAE,iBAAiB,EAC9B,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAcf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utils/thresholds.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \\\"License\\\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \\\"AS IS\\\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { ThresholdOptions } from '@perses-dev/
|
|
1
|
+
{"version":3,"sources":["../../../src/utils/thresholds.ts"],"sourcesContent":["// Copyright The Perses Authors\n// Licensed under the Apache License, Version 2.0 (the \\\"License\\\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \\\"AS IS\\\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\n\nimport { PersesChartsTheme, ThresholdOptions } from '@perses-dev/components';\n\nexport function getColorFromThresholds(\n value: number,\n thresholds: ThresholdOptions | undefined,\n chartsTheme: PersesChartsTheme,\n defaultColor: string\n): string | null {\n if (thresholds?.steps) {\n const matchingColors = thresholds.steps\n .map((step, index) => {\n if (value >= step.value) {\n return step.color ?? chartsTheme.thresholds.palette[index] ?? thresholds.defaultColor ?? defaultColor;\n }\n return null;\n })\n .filter((color): color is string => color !== null);\n\n return matchingColors[matchingColors.length - 1] ?? thresholds.defaultColor ?? defaultColor;\n }\n return thresholds?.defaultColor ?? defaultColor;\n}\n"],"names":["getColorFromThresholds","value","thresholds","chartsTheme","defaultColor","steps","matchingColors","map","step","index","color","palette","filter","length"],"mappings":"AAAA,+BAA+B;AAC/B,oEAAoE;AACpE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,6CAA6C;AAC7C,EAAE;AACF,sEAAsE;AACtE,sEAAsE;AACtE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AAIjC,OAAO,SAASA,uBACdC,KAAa,EACbC,UAAwC,EACxCC,WAA8B,EAC9BC,YAAoB;IAEpB,IAAIF,YAAYG,OAAO;QACrB,MAAMC,iBAAiBJ,WAAWG,KAAK,CACpCE,GAAG,CAAC,CAACC,MAAMC;YACV,IAAIR,SAASO,KAAKP,KAAK,EAAE;gBACvB,OAAOO,KAAKE,KAAK,IAAIP,YAAYD,UAAU,CAACS,OAAO,CAACF,MAAM,IAAIP,WAAWE,YAAY,IAAIA;YAC3F;YACA,OAAO;QACT,GACCQ,MAAM,CAAC,CAACF,QAA2BA,UAAU;QAEhD,OAAOJ,cAAc,CAACA,eAAeO,MAAM,GAAG,EAAE,IAAIX,WAAWE,YAAY,IAAIA;IACjF;IACA,OAAOF,YAAYE,gBAAgBA;AACrC"}
|