create-bluecopa-react-app 1.0.5 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/README.md +47 -10
  2. package/bin/create-bluecopa-react-app.js +257 -51
  3. package/package.json +6 -5
  4. package/templates/latest/Agent.md +254 -0
  5. package/templates/latest/Dockerfile +22 -0
  6. package/templates/latest/README.md +157 -221
  7. package/templates/latest/app/app.css +134 -0
  8. package/templates/latest/app/app.tsx +46 -0
  9. package/templates/latest/app/components/app-sidebar.tsx +174 -0
  10. package/templates/latest/app/components/chart-area-interactive.tsx +290 -0
  11. package/templates/latest/app/components/data-table.tsx +807 -0
  12. package/templates/latest/app/components/nav-documents.tsx +92 -0
  13. package/templates/latest/app/components/nav-main.tsx +56 -0
  14. package/templates/latest/app/components/nav-secondary.tsx +42 -0
  15. package/templates/latest/app/components/nav-user.tsx +112 -0
  16. package/templates/latest/app/components/section-cards.tsx +102 -0
  17. package/templates/latest/app/components/site-header.tsx +19 -0
  18. package/templates/latest/app/components/ui/avatar.tsx +53 -0
  19. package/templates/latest/app/components/ui/badge.tsx +46 -0
  20. package/templates/latest/app/components/ui/breadcrumb.tsx +109 -0
  21. package/templates/latest/app/components/ui/button.tsx +58 -0
  22. package/templates/latest/app/components/ui/card.tsx +92 -0
  23. package/templates/latest/app/components/ui/chart.tsx +352 -0
  24. package/templates/latest/app/components/ui/checkbox.tsx +30 -0
  25. package/templates/latest/app/components/ui/drawer.tsx +139 -0
  26. package/templates/latest/app/components/ui/dropdown-menu.tsx +258 -0
  27. package/templates/latest/app/components/ui/input.tsx +21 -0
  28. package/templates/latest/app/components/ui/label.tsx +24 -0
  29. package/templates/latest/app/components/ui/select.tsx +183 -0
  30. package/templates/latest/app/components/ui/separator.tsx +26 -0
  31. package/templates/latest/app/components/ui/sheet.tsx +139 -0
  32. package/templates/latest/app/components/ui/sidebar.tsx +731 -0
  33. package/templates/latest/app/components/ui/skeleton.tsx +13 -0
  34. package/templates/latest/app/components/ui/sonner.tsx +23 -0
  35. package/templates/latest/app/components/ui/table.tsx +117 -0
  36. package/templates/latest/app/components/ui/tabs.tsx +66 -0
  37. package/templates/latest/app/components/ui/toggle-group.tsx +73 -0
  38. package/templates/latest/app/components/ui/toggle.tsx +47 -0
  39. package/templates/latest/app/components/ui/tooltip.tsx +59 -0
  40. package/templates/latest/app/dashboard/data.json +614 -0
  41. package/templates/latest/app/hooks/use-bluecopa-user.ts +37 -0
  42. package/templates/latest/app/hooks/use-mobile.ts +19 -0
  43. package/templates/latest/{src → app}/lib/utils.ts +1 -1
  44. package/templates/latest/app/main.tsx +12 -0
  45. package/templates/latest/app/routes/home.tsx +40 -0
  46. package/templates/latest/app/routes.tsx +15 -0
  47. package/templates/latest/{src → app}/single-spa.tsx +3 -3
  48. package/templates/latest/components.json +22 -0
  49. package/templates/latest/dist/assets/__federation_expose_App-DRwKKpS2.js +91 -0
  50. package/templates/latest/dist/assets/__federation_fn_import-CzfA7kmP.js +438 -0
  51. package/templates/latest/dist/assets/__federation_shared_react-Bp6HVBS4.js +16 -0
  52. package/templates/latest/dist/assets/__federation_shared_react-dom-BCcRGiYp.js +17 -0
  53. package/templates/latest/dist/assets/client-DgSav55y.js +12658 -0
  54. package/templates/latest/dist/assets/home-DOL6GrYV.js +54951 -0
  55. package/templates/latest/dist/assets/index-BzNimew1.js +69 -0
  56. package/templates/latest/dist/assets/index-DMFtQdNS.js +412 -0
  57. package/templates/latest/dist/assets/index-DdYpcDMk.js +60 -0
  58. package/templates/latest/dist/assets/remoteEntry.js +88 -0
  59. package/templates/latest/dist/assets/style-36A39bNN.css +3683 -0
  60. package/templates/latest/dist/avatars/shadcn.svg +6 -0
  61. package/templates/latest/dist/favicon.ico +0 -0
  62. package/templates/latest/dist/index.html +19 -0
  63. package/templates/latest/index.html +1 -1
  64. package/templates/latest/package-lock.json +1227 -3353
  65. package/templates/latest/package.json +47 -43
  66. package/templates/latest/pnpm-lock.yaml +4767 -0
  67. package/templates/latest/preview/index.html +32 -2
  68. package/templates/latest/public/avatars/shadcn.svg +6 -0
  69. package/templates/latest/public/favicon.ico +0 -0
  70. package/templates/latest/tsconfig.json +19 -12
  71. package/templates/latest/vite.config.ts +41 -41
  72. package/templates/latest/.env.example +0 -14
  73. package/templates/latest/.eslintrc.cjs +0 -42
  74. package/templates/latest/AGENT.md +0 -282
  75. package/templates/latest/clean.sh +0 -40
  76. package/templates/latest/postcss.config.cjs +0 -6
  77. package/templates/latest/public/bluecopa-logo.svg +0 -30
  78. package/templates/latest/public/favicon-32x32.png +0 -0
  79. package/templates/latest/public/favicon-96x96.png +0 -0
  80. package/templates/latest/setup.sh +0 -56
  81. package/templates/latest/src/App.tsx +0 -19
  82. package/templates/latest/src/components/charts/AreaChart.tsx +0 -80
  83. package/templates/latest/src/components/charts/DonutChart.tsx +0 -73
  84. package/templates/latest/src/components/charts/SparkAreaChart.tsx +0 -52
  85. package/templates/latest/src/components/layout/dashboard-header.tsx +0 -139
  86. package/templates/latest/src/components/layout/dashboard-layout.tsx +0 -37
  87. package/templates/latest/src/components/layout/navbar.tsx +0 -106
  88. package/templates/latest/src/components/layout/sidebar.tsx +0 -55
  89. package/templates/latest/src/components/page/dashboard/DashboardMetrics.tsx +0 -97
  90. package/templates/latest/src/components/page/dashboard/PaymentMethodsAnalysis.tsx +0 -182
  91. package/templates/latest/src/components/page/dashboard/RevenueAnalytics.tsx +0 -505
  92. package/templates/latest/src/components/page/dashboard/SalesAnalytics.tsx +0 -313
  93. package/templates/latest/src/components/page/dashboard/TransactionsTable.tsx +0 -256
  94. package/templates/latest/src/components/page/dashboard/dashboard-utils.ts +0 -147
  95. package/templates/latest/src/components/page/dashboard/dashboard.tsx +0 -185
  96. package/templates/latest/src/components/tables/data-grid.tsx +0 -439
  97. package/templates/latest/src/components/ui/alert.tsx +0 -59
  98. package/templates/latest/src/components/ui/avatar.tsx +0 -50
  99. package/templates/latest/src/components/ui/badge.tsx +0 -36
  100. package/templates/latest/src/components/ui/bluecopa-logo.tsx +0 -57
  101. package/templates/latest/src/components/ui/button.tsx +0 -58
  102. package/templates/latest/src/components/ui/card.tsx +0 -79
  103. package/templates/latest/src/components/ui/dropdown-menu.tsx +0 -200
  104. package/templates/latest/src/components/ui/input.tsx +0 -24
  105. package/templates/latest/src/components/ui/label.tsx +0 -21
  106. package/templates/latest/src/components/ui/select.tsx +0 -27
  107. package/templates/latest/src/hooks/use-api.ts +0 -55
  108. package/templates/latest/src/index.css +0 -59
  109. package/templates/latest/src/main.tsx +0 -13
  110. package/templates/latest/src/pages/Dashboard.tsx +0 -13
  111. package/templates/latest/src/pages/Home.tsx +0 -622
  112. package/templates/latest/src/providers/query-provider.tsx +0 -48
  113. package/templates/latest/src/types/api.ts +0 -78
  114. package/templates/latest/src/vite-env.d.ts +0 -11
  115. package/templates/latest/tailwind.config.js +0 -87
  116. package/templates/latest/tsconfig.app.json +0 -32
  117. package/templates/latest/tsconfig.node.json +0 -14
@@ -0,0 +1,40 @@
1
+ import { AppSidebar } from "~/components/app-sidebar"
2
+ import { ChartAreaInteractive } from "~/components/chart-area-interactive"
3
+ import { DataTable } from "~/components/data-table"
4
+ import { SectionCards } from "~/components/section-cards"
5
+ import { SiteHeader } from "~/components/site-header"
6
+ import {
7
+ SidebarInset,
8
+ SidebarProvider,
9
+ } from "~/components/ui/sidebar"
10
+
11
+ import data from "~/dashboard/data.json"
12
+
13
+ export default function Page() {
14
+ return (
15
+ <SidebarProvider
16
+ style={
17
+ {
18
+ "--sidebar-width": "calc(var(--spacing) * 72)",
19
+ "--header-height": "calc(var(--spacing) * 12)",
20
+ } as React.CSSProperties
21
+ }
22
+ >
23
+ <AppSidebar variant="inset" />
24
+ <SidebarInset>
25
+ <SiteHeader />
26
+ <div className="flex flex-1 flex-col">
27
+ <div className="@container/main flex flex-1 flex-col gap-2">
28
+ <div className="flex flex-col gap-4 py-4 md:gap-6 md:py-6">
29
+ <SectionCards />
30
+ <div className="px-4 lg:px-6">
31
+ <ChartAreaInteractive />
32
+ </div>
33
+ <DataTable data={data} />
34
+ </div>
35
+ </div>
36
+ </div>
37
+ </SidebarInset>
38
+ </SidebarProvider>
39
+ )
40
+ }
@@ -0,0 +1,15 @@
1
+ import { Routes, Route, Navigate } from "react-router-dom";
2
+ import { lazy } from "react";
3
+ import "./app.css";
4
+
5
+ const Home = lazy(() => import('~/routes/home'))
6
+
7
+
8
+ export default function RouteConfig() {
9
+ return (
10
+ <Routes>
11
+ <Route path="/" element={<Home />} />
12
+ <Route path="*" element={<Navigate to="/" replace />} />
13
+ </Routes>
14
+ );
15
+ }
@@ -1,9 +1,9 @@
1
1
  import React from "react";
2
- import { createRoot, Root } from "react-dom/client";
2
+ import { createRoot, type Root } from "react-dom/client";
3
3
  import singleSpaReact from "single-spa-react";
4
4
  import { MemoryRouter, BrowserRouter } from "react-router-dom";
5
- import App from "./App";
6
- import { AppProps } from "single-spa";
5
+ import App from "./app";
6
+ import type { AppProps } from "single-spa";
7
7
 
8
8
  // Single-spa lifecycle props interface
9
9
  interface LifecycleProps {
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://ui.shadcn.com/schema.json",
3
+ "style": "new-york",
4
+ "rsc": false,
5
+ "tsx": true,
6
+ "tailwind": {
7
+ "config": "",
8
+ "css": "app/app.css",
9
+ "baseColor": "gray",
10
+ "cssVariables": true,
11
+ "prefix": ""
12
+ },
13
+ "iconLibrary": "lucide",
14
+ "aliases": {
15
+ "components": "~/components",
16
+ "utils": "~/lib/utils",
17
+ "ui": "~/components/ui",
18
+ "lib": "~/lib",
19
+ "hooks": "~/hooks"
20
+ },
21
+ "registries": {}
22
+ }
@@ -0,0 +1,91 @@
1
+ System.register(['./__federation_fn_import-CzfA7kmP.js', './client-DgSav55y.js'], (function (exports, module) {
2
+ 'use strict';
3
+ var importShared, jsxRuntimeExports, clientExports, MemoryRouter, BrowserRouter, App;
4
+ return {
5
+ setters: [module => {
6
+ importShared = module.importShared;
7
+ }, module => {
8
+ jsxRuntimeExports = module.j;
9
+ clientExports = module.c;
10
+ MemoryRouter = module.M;
11
+ BrowserRouter = module.B;
12
+ App = module.A;
13
+ }],
14
+ execute: (async function () {
15
+
16
+ function e(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o);}return n}function t(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{};n%2?e(Object(r),true).forEach((function(e){o(t,e,r[e]);})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):e(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e));}));}return t}function n(e){return (n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:true,configurable:true,writable:true}):e[t]=n,e}function r(e){return (r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function a(e,t){var n;if("function"!=typeof(n=t.domElement?function(){return t.domElement}:t.domElementGetter?t.domElementGetter:e.domElementGetter?e.domElementGetter:function(e){var t=e.appName||e.name;if(!t)throw Error("single-spa's dom-element-getter-helpers was not given an application name as a prop, so it can't make a unique dom element container for the react application");var n="single-spa-application:".concat(t);return function(){var e=document.getElementById(n);return e||((e=document.createElement("div")).id=n,document.body.appendChild(e)),e}}(t)))throw Error("single-spa's dom-element-getter-helpers was given an invalid domElementGetter for application or parcel '".concat(t.name,"'. Expected a function, received ").concat(r(n)));return function(){var e=n(t);if(!(e instanceof HTMLElement))throw Error("single-spa's dom-element-getter-helpers: domElementGetter returned an invalid dom element for application or parcel '".concat(t.name,"'. Expected HTMLElement, received ").concat(r(e)));return e}}var c=null;try{c=require("react").createContext();}catch(e){}var u={React:null,ReactDOM:null,ReactDOMClient:null,rootComponent:null,loadRootComponent:null,errorBoundary:null,errorBoundaryClass:null,domElementGetter:null,parcelCanUpdate:true,suppressComponentDidCatchWarning:false,domElements:{},renderResults:{},updateResolves:{},unmountResolves:{}};function i(e){if("object"!==n(e))throw new Error("single-spa-react requires a configuration object");var o,r=t(t({},u),e);if(!r.React)throw new Error("single-spa-react must be passed opts.React");if(!r.ReactDOM&&!r.ReactDOMClient)throw new Error("single-spa-react must be passed opts.ReactDOM or opts.ReactDOMClient");r.renderType||(null!==(o=r.ReactDOMClient)&&void 0!==o&&o.createRoot?r.renderType="createRoot":r.renderType="render");if(!r.rootComponent&&!r.loadRootComponent)throw new Error("single-spa-react must be passed opts.rootComponent or opts.loadRootComponent");if(r.errorBoundary&&"function"!=typeof r.errorBoundary)throw Error("The errorBoundary opt for single-spa-react must either be omitted or be a function that returns React elements");!c&&r.React.createContext&&(c=r.React.createContext()),r.SingleSpaRoot=function(e){function t(e){t.displayName="SingleSpaRoot(".concat(e.name,")");}return t.prototype=Object.create(e.React.Component.prototype),t.prototype.componentDidMount=function(){setTimeout(this.props.mountFinished);},t.prototype.componentWillUnmount=function(){setTimeout(this.props.unmountFinished);},t.prototype.render=function(){return setTimeout(this.props.updateFinished),this.props.children},t}(r);var a={bootstrap:s.bind(null,r),mount:p.bind(null,r),unmount:l.bind(null,r)};return r.parcelCanUpdate&&(a.update=m.bind(null,r)),a}function s(e,t){return e.rootComponent?Promise.resolve():e.loadRootComponent(t).then((function(t){e.rootComponent=t;}))}function p(e,t){return new Promise((function(n,o){e.suppressComponentDidCatchWarning||!function(e){if(!(e&&"string"==typeof e.version&&e.version.indexOf(".")>=0))return false;var t=e.version.slice(0,e.version.indexOf("."));try{return Number(t)>=16}catch(e){return false}}(e.React)||e.errorBoundary||e.errorBoundaryClass||(e.rootComponent.prototype?e.rootComponent.prototype.componentDidCatch||console.warn("single-spa-react: ".concat(t.name||t.appName||t.childAppName,"'s rootComponent should implement componentDidCatch to avoid accidentally unmounting the entire single-spa application.")):console.warn("single-spa-react: ".concat(t.name||t.appName||t.childAppName,"'s rootComponent does not implement an error boundary. If using a functional component, consider providing an opts.errorBoundary to singleSpaReact(opts).")));var r=y(e,t,(function(){n(this);})),c=a(e,t)(),u=function(e){var t=e.reactDom,n=e.renderType,o=e.elementToRender,r=e.domElement,a=t[n];if("function"!=typeof a)throw new Error('renderType "'.concat(n,'" did not return a function.'));switch(n){case "createRoot":case "unstable_createRoot":case "createBlockingRoot":case "unstable_createBlockingRoot":var c=a(r);return c.render(o),c;case "hydrateRoot":return a(r,o);case "hydrate":default:return a(o,r),null}}({elementToRender:r,domElement:c,reactDom:d(e),renderType:f(e)});e.domElements[t.name]=c,e.renderResults[t.name]=u;}))}function l(e,t){return new Promise((function(n){e.unmountResolves[t.name]=n;var o=e.renderResults[t.name];o&&o.unmount?o.unmount():d(e).unmountComponentAtNode(e.domElements[t.name]),delete e.domElements[t.name],delete e.renderResults[t.name];}))}function m(e,t){return new Promise((function(n){e.updateResolves[t.name]||(e.updateResolves[t.name]=[]),e.updateResolves[t.name].push(n);var o=y(e,t,null),r=e.renderResults[t.name];if(r&&r.render)r.render(o);else {var c=a(e,t)();d(e).render(o,c);}}))}function d(e){return e.ReactDOMClient||e.ReactDOM}function f(e){return "function"==typeof e.renderType?e.renderType():e.renderType}function y(e,n,o){var r=e.React.createElement(e.rootComponent,n),a=c?e.React.createElement(c.Provider,{value:n},r):r;return (e.errorBoundary||n.errorBoundary||e.errorBoundaryClass||n.errorBoundaryClass)&&(e.errorBoundaryClass=e.errorBoundaryClass||n.errorBoundaryClass||function(e,t){function n(t){e.React.Component.apply(this,arguments),this.state={caughtError:null,caughtErrorInfo:null},n.displayName="SingleSpaReactErrorBoundary(".concat(t.name,")");}return n.prototype=Object.create(e.React.Component.prototype),n.prototype.render=function(){return this.state.caughtError?(e.errorBoundary||t.errorBoundary)(this.state.caughtError,this.state.caughtErrorInfo,this.props):this.props.children},n.prototype.componentDidCatch=function(e,t){this.setState({caughtError:e,caughtErrorInfo:t});},n}(e,n),a=e.React.createElement(e.errorBoundaryClass,n,a)),a=e.React.createElement(e.SingleSpaRoot,t(t({},n),{},{mountFinished:o,updateFinished:function(){e.updateResolves[n.name]&&(e.updateResolves[n.name].forEach((function(e){return e()})),delete e.updateResolves[n.name]);},unmountFinished:function(){e.unmountResolves[n.name]&&(e.unmountResolves[n.name](),delete e.unmountResolves[n.name]);}}),a)}
17
+
18
+ const React = await importShared('react');
19
+ let root = null;
20
+ const MicrofrontendRoot = ({ basename = "/", isMicroFrontend = false }) => {
21
+ const Router = isMicroFrontend ? MemoryRouter : BrowserRouter;
22
+ const routerProps = isMicroFrontend ? {} : { basename };
23
+ return /* @__PURE__ */ jsxRuntimeExports.jsx(Router, { ...routerProps, children: /* @__PURE__ */ jsxRuntimeExports.jsx(App, {}) });
24
+ };
25
+ const lifecycles = i({
26
+ React,
27
+ ReactDOMClient: { createRoot: clientExports.createRoot },
28
+ rootComponent: (props) => /* @__PURE__ */ jsxRuntimeExports.jsx(MicrofrontendRoot, { isMicroFrontend: true, basename: props.basename }),
29
+ errorBoundary: (err, info) => {
30
+ console.error("Microfrontend Single-spa Error:", err, info);
31
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: "Something went wrong loading Microfrontend" });
32
+ },
33
+ renderType: "createRoot",
34
+ domElementGetter: () => {
35
+ const el = document.getElementById("single-spa-application:pnl-explorer");
36
+ if (!el)
37
+ throw new Error(
38
+ "Mount target #single-spa-application:pnl-explorer not found"
39
+ );
40
+ return el;
41
+ }
42
+ });
43
+ const { mount, unmount, bootstrap } = lifecycles; exports({ mount, unmount, bootstrap });
44
+ const manualMount = exports("manualMount", async (props) => {
45
+ if (!props.domElement) {
46
+ throw new Error("domElement is required for mounting the application");
47
+ }
48
+ try {
49
+ if (root) {
50
+ root.unmount();
51
+ root = null;
52
+ }
53
+ root = clientExports.createRoot(props.domElement);
54
+ root.render(
55
+ /* @__PURE__ */ jsxRuntimeExports.jsx(
56
+ MicrofrontendRoot,
57
+ {
58
+ isMicroFrontend: true,
59
+ basename: props.basename || "/app/external/microfrontend"
60
+ }
61
+ )
62
+ );
63
+ console.log("Microfrontend mounted successfully");
64
+ return;
65
+ } catch (error) {
66
+ console.error("Failed to mount Microfrontend:", error);
67
+ throw error;
68
+ }
69
+ });
70
+ const manualUnmount = exports("manualUnmount", async () => {
71
+ try {
72
+ if (root) {
73
+ root.unmount();
74
+ root = null;
75
+ }
76
+ console.log("Microfrontend unmounted successfully");
77
+ return Promise.resolve();
78
+ } catch (error) {
79
+ console.error("Failed to unmount Microfrontend:", error);
80
+ return Promise.reject(error);
81
+ }
82
+ });
83
+ const singleSpa = exports("default", {
84
+ mount: manualMount,
85
+ unmount: manualUnmount,
86
+ bootstrap: () => Promise.resolve()
87
+ });
88
+
89
+ })
90
+ };
91
+ }));
@@ -0,0 +1,438 @@
1
+ System.register([], (function (exports, module) {
2
+ 'use strict';
3
+ return {
4
+ execute: (function () {
5
+
6
+ exports({
7
+ importShared: importShared,
8
+ importSharedLocal: getSharedFromLocal,
9
+ importSharedRuntime: getSharedFromRuntime
10
+ });
11
+
12
+ const buildIdentifier = "[0-9A-Za-z-]+";
13
+ const build = `(?:\\+(${buildIdentifier}(?:\\.${buildIdentifier})*))`;
14
+ const numericIdentifier = "0|[1-9]\\d*";
15
+ const numericIdentifierLoose = "[0-9]+";
16
+ const nonNumericIdentifier = "\\d*[a-zA-Z-][a-zA-Z0-9-]*";
17
+ const preReleaseIdentifierLoose = `(?:${numericIdentifierLoose}|${nonNumericIdentifier})`;
18
+ const preReleaseLoose = `(?:-?(${preReleaseIdentifierLoose}(?:\\.${preReleaseIdentifierLoose})*))`;
19
+ const preReleaseIdentifier = `(?:${numericIdentifier}|${nonNumericIdentifier})`;
20
+ const preRelease = `(?:-(${preReleaseIdentifier}(?:\\.${preReleaseIdentifier})*))`;
21
+ const xRangeIdentifier = `${numericIdentifier}|x|X|\\*`;
22
+ const xRangePlain = `[v=\\s]*(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:${preRelease})?${build}?)?)?`;
23
+ const hyphenRange = `^\\s*(${xRangePlain})\\s+-\\s+(${xRangePlain})\\s*$`;
24
+ const mainVersionLoose = `(${numericIdentifierLoose})\\.(${numericIdentifierLoose})\\.(${numericIdentifierLoose})`;
25
+ const loosePlain = `[v=\\s]*${mainVersionLoose}${preReleaseLoose}?${build}?`;
26
+ const gtlt = "((?:<|>)?=?)";
27
+ const comparatorTrim = `(\\s*)${gtlt}\\s*(${loosePlain}|${xRangePlain})`;
28
+ const loneTilde = "(?:~>?)";
29
+ const tildeTrim = `(\\s*)${loneTilde}\\s+`;
30
+ const loneCaret = "(?:\\^)";
31
+ const caretTrim = `(\\s*)${loneCaret}\\s+`;
32
+ const star = "(<|>)?=?\\s*\\*";
33
+ const caret = `^${loneCaret}${xRangePlain}$`;
34
+ const mainVersion = `(${numericIdentifier})\\.(${numericIdentifier})\\.(${numericIdentifier})`;
35
+ const fullPlain = `v?${mainVersion}${preRelease}?${build}?`;
36
+ const tilde = `^${loneTilde}${xRangePlain}$`;
37
+ const xRange = `^${gtlt}\\s*${xRangePlain}$`;
38
+ const comparator = `^${gtlt}\\s*(${fullPlain})$|^$`;
39
+ const gte0 = "^\\s*>=\\s*0.0.0\\s*$";
40
+ function parseRegex(source) {
41
+ return new RegExp(source);
42
+ }
43
+ function isXVersion(version) {
44
+ return !version || version.toLowerCase() === "x" || version === "*";
45
+ }
46
+ function pipe(...fns) {
47
+ return (x) => {
48
+ return fns.reduce((v, f) => f(v), x);
49
+ };
50
+ }
51
+ function extractComparator(comparatorString) {
52
+ return comparatorString.match(parseRegex(comparator));
53
+ }
54
+ function combineVersion(major, minor, patch, preRelease2) {
55
+ const mainVersion2 = `${major}.${minor}.${patch}`;
56
+ if (preRelease2) {
57
+ return `${mainVersion2}-${preRelease2}`;
58
+ }
59
+ return mainVersion2;
60
+ }
61
+ function parseHyphen(range) {
62
+ return range.replace(
63
+ parseRegex(hyphenRange),
64
+ (_range, from, fromMajor, fromMinor, fromPatch, _fromPreRelease, _fromBuild, to, toMajor, toMinor, toPatch, toPreRelease) => {
65
+ if (isXVersion(fromMajor)) {
66
+ from = "";
67
+ } else if (isXVersion(fromMinor)) {
68
+ from = `>=${fromMajor}.0.0`;
69
+ } else if (isXVersion(fromPatch)) {
70
+ from = `>=${fromMajor}.${fromMinor}.0`;
71
+ } else {
72
+ from = `>=${from}`;
73
+ }
74
+ if (isXVersion(toMajor)) {
75
+ to = "";
76
+ } else if (isXVersion(toMinor)) {
77
+ to = `<${+toMajor + 1}.0.0-0`;
78
+ } else if (isXVersion(toPatch)) {
79
+ to = `<${toMajor}.${+toMinor + 1}.0-0`;
80
+ } else if (toPreRelease) {
81
+ to = `<=${toMajor}.${toMinor}.${toPatch}-${toPreRelease}`;
82
+ } else {
83
+ to = `<=${to}`;
84
+ }
85
+ return `${from} ${to}`.trim();
86
+ }
87
+ );
88
+ }
89
+ function parseComparatorTrim(range) {
90
+ return range.replace(parseRegex(comparatorTrim), "$1$2$3");
91
+ }
92
+ function parseTildeTrim(range) {
93
+ return range.replace(parseRegex(tildeTrim), "$1~");
94
+ }
95
+ function parseCaretTrim(range) {
96
+ return range.replace(parseRegex(caretTrim), "$1^");
97
+ }
98
+ function parseCarets(range) {
99
+ return range.trim().split(/\s+/).map((rangeVersion) => {
100
+ return rangeVersion.replace(
101
+ parseRegex(caret),
102
+ (_, major, minor, patch, preRelease2) => {
103
+ if (isXVersion(major)) {
104
+ return "";
105
+ } else if (isXVersion(minor)) {
106
+ return `>=${major}.0.0 <${+major + 1}.0.0-0`;
107
+ } else if (isXVersion(patch)) {
108
+ if (major === "0") {
109
+ return `>=${major}.${minor}.0 <${major}.${+minor + 1}.0-0`;
110
+ } else {
111
+ return `>=${major}.${minor}.0 <${+major + 1}.0.0-0`;
112
+ }
113
+ } else if (preRelease2) {
114
+ if (major === "0") {
115
+ if (minor === "0") {
116
+ return `>=${major}.${minor}.${patch}-${preRelease2} <${major}.${minor}.${+patch + 1}-0`;
117
+ } else {
118
+ return `>=${major}.${minor}.${patch}-${preRelease2} <${major}.${+minor + 1}.0-0`;
119
+ }
120
+ } else {
121
+ return `>=${major}.${minor}.${patch}-${preRelease2} <${+major + 1}.0.0-0`;
122
+ }
123
+ } else {
124
+ if (major === "0") {
125
+ if (minor === "0") {
126
+ return `>=${major}.${minor}.${patch} <${major}.${minor}.${+patch + 1}-0`;
127
+ } else {
128
+ return `>=${major}.${minor}.${patch} <${major}.${+minor + 1}.0-0`;
129
+ }
130
+ }
131
+ return `>=${major}.${minor}.${patch} <${+major + 1}.0.0-0`;
132
+ }
133
+ }
134
+ );
135
+ }).join(" ");
136
+ }
137
+ function parseTildes(range) {
138
+ return range.trim().split(/\s+/).map((rangeVersion) => {
139
+ return rangeVersion.replace(
140
+ parseRegex(tilde),
141
+ (_, major, minor, patch, preRelease2) => {
142
+ if (isXVersion(major)) {
143
+ return "";
144
+ } else if (isXVersion(minor)) {
145
+ return `>=${major}.0.0 <${+major + 1}.0.0-0`;
146
+ } else if (isXVersion(patch)) {
147
+ return `>=${major}.${minor}.0 <${major}.${+minor + 1}.0-0`;
148
+ } else if (preRelease2) {
149
+ return `>=${major}.${minor}.${patch}-${preRelease2} <${major}.${+minor + 1}.0-0`;
150
+ }
151
+ return `>=${major}.${minor}.${patch} <${major}.${+minor + 1}.0-0`;
152
+ }
153
+ );
154
+ }).join(" ");
155
+ }
156
+ function parseXRanges(range) {
157
+ return range.split(/\s+/).map((rangeVersion) => {
158
+ return rangeVersion.trim().replace(
159
+ parseRegex(xRange),
160
+ (ret, gtlt2, major, minor, patch, preRelease2) => {
161
+ const isXMajor = isXVersion(major);
162
+ const isXMinor = isXMajor || isXVersion(minor);
163
+ const isXPatch = isXMinor || isXVersion(patch);
164
+ if (gtlt2 === "=" && isXPatch) {
165
+ gtlt2 = "";
166
+ }
167
+ preRelease2 = "";
168
+ if (isXMajor) {
169
+ if (gtlt2 === ">" || gtlt2 === "<") {
170
+ return "<0.0.0-0";
171
+ } else {
172
+ return "*";
173
+ }
174
+ } else if (gtlt2 && isXPatch) {
175
+ if (isXMinor) {
176
+ minor = 0;
177
+ }
178
+ patch = 0;
179
+ if (gtlt2 === ">") {
180
+ gtlt2 = ">=";
181
+ if (isXMinor) {
182
+ major = +major + 1;
183
+ minor = 0;
184
+ patch = 0;
185
+ } else {
186
+ minor = +minor + 1;
187
+ patch = 0;
188
+ }
189
+ } else if (gtlt2 === "<=") {
190
+ gtlt2 = "<";
191
+ if (isXMinor) {
192
+ major = +major + 1;
193
+ } else {
194
+ minor = +minor + 1;
195
+ }
196
+ }
197
+ if (gtlt2 === "<") {
198
+ preRelease2 = "-0";
199
+ }
200
+ return `${gtlt2 + major}.${minor}.${patch}${preRelease2}`;
201
+ } else if (isXMinor) {
202
+ return `>=${major}.0.0${preRelease2} <${+major + 1}.0.0-0`;
203
+ } else if (isXPatch) {
204
+ return `>=${major}.${minor}.0${preRelease2} <${major}.${+minor + 1}.0-0`;
205
+ }
206
+ return ret;
207
+ }
208
+ );
209
+ }).join(" ");
210
+ }
211
+ function parseStar(range) {
212
+ return range.trim().replace(parseRegex(star), "");
213
+ }
214
+ function parseGTE0(comparatorString) {
215
+ return comparatorString.trim().replace(parseRegex(gte0), "");
216
+ }
217
+ function compareAtom(rangeAtom, versionAtom) {
218
+ rangeAtom = +rangeAtom || rangeAtom;
219
+ versionAtom = +versionAtom || versionAtom;
220
+ if (rangeAtom > versionAtom) {
221
+ return 1;
222
+ }
223
+ if (rangeAtom === versionAtom) {
224
+ return 0;
225
+ }
226
+ return -1;
227
+ }
228
+ function comparePreRelease(rangeAtom, versionAtom) {
229
+ const { preRelease: rangePreRelease } = rangeAtom;
230
+ const { preRelease: versionPreRelease } = versionAtom;
231
+ if (rangePreRelease === void 0 && !!versionPreRelease) {
232
+ return 1;
233
+ }
234
+ if (!!rangePreRelease && versionPreRelease === void 0) {
235
+ return -1;
236
+ }
237
+ if (rangePreRelease === void 0 && versionPreRelease === void 0) {
238
+ return 0;
239
+ }
240
+ for (let i = 0, n = rangePreRelease.length; i <= n; i++) {
241
+ const rangeElement = rangePreRelease[i];
242
+ const versionElement = versionPreRelease[i];
243
+ if (rangeElement === versionElement) {
244
+ continue;
245
+ }
246
+ if (rangeElement === void 0 && versionElement === void 0) {
247
+ return 0;
248
+ }
249
+ if (!rangeElement) {
250
+ return 1;
251
+ }
252
+ if (!versionElement) {
253
+ return -1;
254
+ }
255
+ return compareAtom(rangeElement, versionElement);
256
+ }
257
+ return 0;
258
+ }
259
+ function compareVersion(rangeAtom, versionAtom) {
260
+ return compareAtom(rangeAtom.major, versionAtom.major) || compareAtom(rangeAtom.minor, versionAtom.minor) || compareAtom(rangeAtom.patch, versionAtom.patch) || comparePreRelease(rangeAtom, versionAtom);
261
+ }
262
+ function eq(rangeAtom, versionAtom) {
263
+ return rangeAtom.version === versionAtom.version;
264
+ }
265
+ function compare(rangeAtom, versionAtom) {
266
+ switch (rangeAtom.operator) {
267
+ case "":
268
+ case "=":
269
+ return eq(rangeAtom, versionAtom);
270
+ case ">":
271
+ return compareVersion(rangeAtom, versionAtom) < 0;
272
+ case ">=":
273
+ return eq(rangeAtom, versionAtom) || compareVersion(rangeAtom, versionAtom) < 0;
274
+ case "<":
275
+ return compareVersion(rangeAtom, versionAtom) > 0;
276
+ case "<=":
277
+ return eq(rangeAtom, versionAtom) || compareVersion(rangeAtom, versionAtom) > 0;
278
+ case void 0: {
279
+ return true;
280
+ }
281
+ default:
282
+ return false;
283
+ }
284
+ }
285
+ function parseComparatorString(range) {
286
+ return pipe(
287
+ parseCarets,
288
+ parseTildes,
289
+ parseXRanges,
290
+ parseStar
291
+ )(range);
292
+ }
293
+ function parseRange(range) {
294
+ return pipe(
295
+ parseHyphen,
296
+ parseComparatorTrim,
297
+ parseTildeTrim,
298
+ parseCaretTrim
299
+ )(range.trim()).split(/\s+/).join(" ");
300
+ }
301
+ function satisfy(version, range) {
302
+ if (!version) {
303
+ return false;
304
+ }
305
+ const parsedRange = parseRange(range);
306
+ const parsedComparator = parsedRange.split(" ").map((rangeVersion) => parseComparatorString(rangeVersion)).join(" ");
307
+ const comparators = parsedComparator.split(/\s+/).map((comparator2) => parseGTE0(comparator2));
308
+ const extractedVersion = extractComparator(version);
309
+ if (!extractedVersion) {
310
+ return false;
311
+ }
312
+ const [
313
+ ,
314
+ versionOperator,
315
+ ,
316
+ versionMajor,
317
+ versionMinor,
318
+ versionPatch,
319
+ versionPreRelease
320
+ ] = extractedVersion;
321
+ const versionAtom = {
322
+ version: combineVersion(
323
+ versionMajor,
324
+ versionMinor,
325
+ versionPatch,
326
+ versionPreRelease
327
+ ),
328
+ major: versionMajor,
329
+ minor: versionMinor,
330
+ patch: versionPatch,
331
+ preRelease: versionPreRelease == null ? void 0 : versionPreRelease.split(".")
332
+ };
333
+ for (const comparator2 of comparators) {
334
+ const extractedComparator = extractComparator(comparator2);
335
+ if (!extractedComparator) {
336
+ return false;
337
+ }
338
+ const [
339
+ ,
340
+ rangeOperator,
341
+ ,
342
+ rangeMajor,
343
+ rangeMinor,
344
+ rangePatch,
345
+ rangePreRelease
346
+ ] = extractedComparator;
347
+ const rangeAtom = {
348
+ operator: rangeOperator,
349
+ version: combineVersion(
350
+ rangeMajor,
351
+ rangeMinor,
352
+ rangePatch,
353
+ rangePreRelease
354
+ ),
355
+ major: rangeMajor,
356
+ minor: rangeMinor,
357
+ patch: rangePatch,
358
+ preRelease: rangePreRelease == null ? void 0 : rangePreRelease.split(".")
359
+ };
360
+ if (!compare(rangeAtom, versionAtom)) {
361
+ return false;
362
+ }
363
+ }
364
+ return true;
365
+ }
366
+
367
+ const currentImports = {};
368
+
369
+ // eslint-disable-next-line no-undef
370
+ const moduleMap = {'react':{get:()=>()=>__federation_import(new URL('__federation_shared_react-Bp6HVBS4.js', module.meta.url).href),import:true},'react-dom':{get:()=>()=>__federation_import(new URL('__federation_shared_react-dom-BCcRGiYp.js', module.meta.url).href),import:true}};
371
+ const moduleCache = Object.create(null);
372
+ async function importShared(name, shareScope = 'default') {
373
+ return moduleCache[name]
374
+ ? new Promise((r) => r(moduleCache[name]))
375
+ : (await getSharedFromRuntime(name, shareScope)) || getSharedFromLocal(name)
376
+ }
377
+ // eslint-disable-next-line
378
+ async function __federation_import(name) {
379
+ currentImports[name] ??= module.import(name);
380
+ return currentImports[name]
381
+ }
382
+ async function getSharedFromRuntime(name, shareScope) {
383
+ let module = null;
384
+ if (globalThis?.__federation_shared__?.[shareScope]?.[name]) {
385
+ const versionObj = globalThis.__federation_shared__[shareScope][name];
386
+ const requiredVersion = moduleMap[name]?.requiredVersion;
387
+ const hasRequiredVersion = !!requiredVersion;
388
+ if (hasRequiredVersion) {
389
+ const versionKey = Object.keys(versionObj).find((version) =>
390
+ satisfy(version, requiredVersion)
391
+ );
392
+ if (versionKey) {
393
+ const versionValue = versionObj[versionKey];
394
+ module = await (await versionValue.get())();
395
+ } else {
396
+ console.log(
397
+ `provider support ${name}(${versionKey}) is not satisfied requiredVersion(\${moduleMap[name].requiredVersion})`
398
+ );
399
+ }
400
+ } else {
401
+ const versionKey = Object.keys(versionObj)[0];
402
+ const versionValue = versionObj[versionKey];
403
+ module = await (await versionValue.get())();
404
+ }
405
+ }
406
+ if (module) {
407
+ return flattenModule(module, name)
408
+ }
409
+ }
410
+ async function getSharedFromLocal(name) {
411
+ if (moduleMap[name]?.import) {
412
+ let module = await (await moduleMap[name].get())();
413
+ return flattenModule(module, name)
414
+ } else {
415
+ console.error(
416
+ `consumer config import=false,so cant use callback shared module`
417
+ );
418
+ }
419
+ }
420
+ function flattenModule(module, name) {
421
+ // use a shared module which export default a function will getting error 'TypeError: xxx is not a function'
422
+ if (typeof module.default === 'function') {
423
+ Object.keys(module).forEach((key) => {
424
+ if (key !== 'default') {
425
+ module.default[key] = module[key];
426
+ }
427
+ });
428
+ moduleCache[name] = module.default;
429
+ return module.default
430
+ }
431
+ if (module.default) module = Object.assign({}, module.default, module);
432
+ moduleCache[name] = module;
433
+ return module
434
+ }
435
+
436
+ })
437
+ };
438
+ }));
@@ -0,0 +1,16 @@
1
+ System.register(['./index-BzNimew1.js'], (function (exports, module) {
2
+ 'use strict';
3
+ var requireReact, getDefaultExportFromCjs;
4
+ return {
5
+ setters: [module => {
6
+ requireReact = module.r;
7
+ getDefaultExportFromCjs = module.g;
8
+ }],
9
+ execute: (function () {
10
+
11
+ var reactExports = requireReact();
12
+ const index = exports("default", /*@__PURE__*/getDefaultExportFromCjs(reactExports));
13
+
14
+ })
15
+ };
16
+ }));
@@ -0,0 +1,17 @@
1
+ System.register(['./index-BzNimew1.js', './index-DMFtQdNS.js'], (function (exports, module) {
2
+ 'use strict';
3
+ var getDefaultExportFromCjs, requireReactDom;
4
+ return {
5
+ setters: [module => {
6
+ getDefaultExportFromCjs = module.g;
7
+ }, module => {
8
+ requireReactDom = module.r;
9
+ }],
10
+ execute: (function () {
11
+
12
+ var reactDomExports = requireReactDom();
13
+ const index = exports("default", /*@__PURE__*/getDefaultExportFromCjs(reactDomExports));
14
+
15
+ })
16
+ };
17
+ }));