@vercel/microfrontends 0.13.0 → 0.15.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.
Files changed (120) hide show
  1. package/README.md +3 -3
  2. package/dist/bin/cli.cjs +403 -1627
  3. package/dist/config.cjs +460 -1004
  4. package/dist/config.cjs.map +1 -1
  5. package/dist/config.d.ts +4 -25
  6. package/dist/config.js +456 -983
  7. package/dist/config.js.map +1 -1
  8. package/dist/{index-83133f2d.d.ts → index-bf67a461.d.ts} +3 -10
  9. package/dist/{v2/microfrontends → microfrontends}/server.cjs +128 -194
  10. package/dist/microfrontends/server.cjs.map +1 -0
  11. package/dist/{v2/microfrontends → microfrontends}/server.d.ts +6 -5
  12. package/dist/{v2/microfrontends → microfrontends}/server.js +125 -191
  13. package/dist/microfrontends/server.js.map +1 -0
  14. package/dist/{v2/microfrontends.cjs → microfrontends.cjs} +21 -35
  15. package/dist/microfrontends.cjs.map +1 -0
  16. package/dist/{v2/microfrontends.d.ts → microfrontends.d.ts} +4 -3
  17. package/dist/{v2/microfrontends.js → microfrontends.js} +20 -34
  18. package/dist/microfrontends.js.map +1 -0
  19. package/dist/next/client.cjs +1 -1
  20. package/dist/next/client.cjs.map +1 -1
  21. package/dist/next/client.js +1 -1
  22. package/dist/next/client.js.map +1 -1
  23. package/dist/next/config.cjs +1323 -1024
  24. package/dist/next/config.cjs.map +1 -1
  25. package/dist/next/config.d.ts +1 -1
  26. package/dist/next/config.js +1327 -1028
  27. package/dist/next/config.js.map +1 -1
  28. package/dist/next/endpoints.cjs +77 -18
  29. package/dist/next/endpoints.cjs.map +1 -1
  30. package/dist/next/endpoints.d.ts +14 -3
  31. package/dist/next/endpoints.js +77 -18
  32. package/dist/next/endpoints.js.map +1 -1
  33. package/dist/next/middleware.cjs +745 -425
  34. package/dist/next/middleware.cjs.map +1 -1
  35. package/dist/next/middleware.d.ts +10 -5
  36. package/dist/next/middleware.js +745 -425
  37. package/dist/next/middleware.js.map +1 -1
  38. package/dist/next/testing.cjs +595 -1032
  39. package/dist/next/testing.cjs.map +1 -1
  40. package/dist/next/testing.d.ts +14 -12
  41. package/dist/next/testing.js +589 -1016
  42. package/dist/next/testing.js.map +1 -1
  43. package/dist/overrides.cjs +40 -108
  44. package/dist/overrides.cjs.map +1 -1
  45. package/dist/overrides.d.ts +24 -2
  46. package/dist/overrides.js +36 -106
  47. package/dist/overrides.js.map +1 -1
  48. package/dist/routing.cjs +19 -0
  49. package/dist/routing.cjs.map +1 -0
  50. package/dist/routing.d.ts +26 -0
  51. package/dist/routing.js +1 -0
  52. package/dist/{v2/schema.cjs → schema.cjs} +1 -1
  53. package/dist/schema.cjs.map +1 -0
  54. package/dist/schema.d.ts +1 -0
  55. package/dist/schema.js.map +1 -0
  56. package/dist/{types-a995174e.d.ts → types-a29d224a.d.ts} +1 -7
  57. package/dist/{types-15b7f215.d.ts → types-cfe3308b.d.ts} +1 -1
  58. package/dist/types-fc30696d.d.ts +11 -0
  59. package/dist/utils/mfe-port.cjs +254 -1362
  60. package/dist/utils/mfe-port.cjs.map +1 -1
  61. package/dist/utils/mfe-port.js +250 -1358
  62. package/dist/utils/mfe-port.js.map +1 -1
  63. package/dist/validation.cjs +31 -365
  64. package/dist/validation.cjs.map +1 -1
  65. package/dist/validation.d.ts +3 -152
  66. package/dist/validation.js +30 -363
  67. package/dist/validation.js.map +1 -1
  68. package/package.json +32 -80
  69. package/schema/schema.json +174 -244
  70. package/dist/config/client.cjs +0 -54
  71. package/dist/config/client.cjs.map +0 -1
  72. package/dist/config/client.d.ts +0 -23
  73. package/dist/config/client.js +0 -28
  74. package/dist/config/client.js.map +0 -1
  75. package/dist/config/edge.cjs +0 -508
  76. package/dist/config/edge.cjs.map +0 -1
  77. package/dist/config/edge.d.ts +0 -20
  78. package/dist/config/edge.js +0 -481
  79. package/dist/config/edge.js.map +0 -1
  80. package/dist/microfrontend-config-983a5139.d.ts +0 -154
  81. package/dist/schema-2922d49e.d.ts +0 -182
  82. package/dist/v2/config.cjs +0 -723
  83. package/dist/v2/config.cjs.map +0 -1
  84. package/dist/v2/config.d.ts +0 -3
  85. package/dist/v2/config.js +0 -698
  86. package/dist/v2/config.js.map +0 -1
  87. package/dist/v2/microfrontends/server.cjs.map +0 -1
  88. package/dist/v2/microfrontends/server.js.map +0 -1
  89. package/dist/v2/microfrontends.cjs.map +0 -1
  90. package/dist/v2/microfrontends.js.map +0 -1
  91. package/dist/v2/next/client.cjs +0 -3
  92. package/dist/v2/next/client.cjs.map +0 -1
  93. package/dist/v2/next/client.d.ts +0 -45
  94. package/dist/v2/next/client.js +0 -3
  95. package/dist/v2/next/client.js.map +0 -1
  96. package/dist/v2/next/config.cjs +0 -2132
  97. package/dist/v2/next/config.cjs.map +0 -1
  98. package/dist/v2/next/config.d.ts +0 -22
  99. package/dist/v2/next/config.js +0 -2097
  100. package/dist/v2/next/config.js.map +0 -1
  101. package/dist/v2/next/endpoints.cjs +0 -141
  102. package/dist/v2/next/endpoints.cjs.map +0 -1
  103. package/dist/v2/next/endpoints.d.ts +0 -15
  104. package/dist/v2/next/endpoints.js +0 -116
  105. package/dist/v2/next/endpoints.js.map +0 -1
  106. package/dist/v2/next/middleware.cjs +0 -1143
  107. package/dist/v2/next/middleware.cjs.map +0 -1
  108. package/dist/v2/next/middleware.d.ts +0 -29
  109. package/dist/v2/next/middleware.js +0 -1115
  110. package/dist/v2/next/middleware.js.map +0 -1
  111. package/dist/v2/overrides.cjs +0 -75
  112. package/dist/v2/overrides.cjs.map +0 -1
  113. package/dist/v2/overrides.d.ts +0 -24
  114. package/dist/v2/overrides.js +0 -45
  115. package/dist/v2/overrides.js.map +0 -1
  116. package/dist/v2/schema.cjs.map +0 -1
  117. package/dist/v2/schema.d.ts +0 -1
  118. package/schema/schema-v2.json +0 -270
  119. /package/dist/{v2/schema.js.map → routing.js.map} +0 -0
  120. /package/dist/{v2/schema.js → schema.js} +0 -0
@@ -1,2 +1,24 @@
1
- export { A as ApplicationOverrideConfig, b as OVERRIDES_COOKIE_PREFIX, c as Overrides, O as OverridesConfig } from './microfrontend-config-983a5139.js';
2
- import './schema-2922d49e.js';
1
+ import { O as OverridesConfig } from './types-cfe3308b.js';
2
+ export { A as ApplicationOverrideConfig } from './types-cfe3308b.js';
3
+ import './types-a29d224a.js';
4
+
5
+ declare function isOverrideCookie(cookie: {
6
+ name?: string;
7
+ }): boolean;
8
+
9
+ declare function parseOverrides(cookies: {
10
+ name: string;
11
+ value?: string | null;
12
+ }[]): OverridesConfig;
13
+
14
+ declare function getOverrideFromCookie(cookie: {
15
+ name: string;
16
+ value?: string | null;
17
+ }): {
18
+ application: string;
19
+ host: string;
20
+ } | undefined;
21
+
22
+ declare function getAppEnvOverrideCookieName(application: string): string;
23
+
24
+ export { OverridesConfig, getAppEnvOverrideCookieName, getOverrideFromCookie, isOverrideCookie, parseOverrides };
package/dist/overrides.js CHANGED
@@ -1,115 +1,45 @@
1
- // src/routing/url.ts
2
- function buildUrlSafeString(givenOpts = {}) {
3
- const options = {
4
- joinString: "-",
5
- lowercaseOnly: true,
6
- maxLen: 100,
7
- regexRemovePattern: /(?:(?!(?:[a-z0-9])).)/gi,
8
- trimWhitespace: true,
9
- ...givenOpts
10
- };
1
+ // src/config/overrides/constants.ts
2
+ var OVERRIDES_COOKIE_PREFIX = "vercel-micro-frontends-override";
3
+ var OVERRIDES_ENV_COOKIE_PREFIX = `${OVERRIDES_COOKIE_PREFIX}:env:`;
4
+
5
+ // src/config/overrides/is-override-cookie.ts
6
+ function isOverrideCookie(cookie) {
7
+ var _a;
8
+ return Boolean((_a = cookie.name) == null ? void 0 : _a.startsWith(OVERRIDES_COOKIE_PREFIX));
9
+ }
10
+
11
+ // src/config/overrides/get-override-from-cookie.ts
12
+ function getOverrideFromCookie(cookie) {
13
+ if (!isOverrideCookie(cookie) || !cookie.value)
14
+ return;
11
15
  return {
12
- generate: (...args) => {
13
- const reJoinString = new RegExp(`${options.joinString}+`, "g");
14
- let tag;
15
- if (args.length === 0) {
16
- throw new Error("generate method must be passed at least one argument");
17
- }
18
- for (let i = 0; i < args.length; i++) {
19
- const arg = args[i];
20
- if (typeof arg !== "string")
21
- throw new Error("all supplied arguments must be Strings");
22
- if (options.trimWhitespace) {
23
- args[i] = arg.trim();
24
- }
25
- }
26
- tag = args.join(options.joinString);
27
- tag = tag.replace(/\s/g, options.joinString);
28
- if (options.lowercaseOnly)
29
- tag = tag.toLowerCase();
30
- tag = tag.replace(options.regexRemovePattern, (match) => {
31
- if (match === options.joinString)
32
- return match;
33
- return "";
34
- });
35
- if (tag.length > options.maxLen)
36
- tag = tag.substring(0, options.maxLen);
37
- tag = tag.replace(reJoinString, options.joinString);
38
- return tag;
39
- }
16
+ application: cookie.name.replace(OVERRIDES_ENV_COOKIE_PREFIX, ""),
17
+ host: cookie.value
40
18
  };
41
19
  }
42
- var urlSafeString = buildUrlSafeString().generate;
43
- function makeUrlSafe(name) {
44
- return urlSafeString(name.replace(/\//g, "-")).replace(/^-*/g, "").replace(/-*$/g, "");
45
- }
46
20
 
47
- // src/config/overrides/config.ts
48
- var OVERRIDES_COOKIE_PREFIX = "vercel-micro-frontends-override";
49
- var _Overrides = class {
50
- constructor(config) {
51
- this.config = config;
52
- }
53
- static getAppEnvOverrideCookieName(zone) {
54
- return `${_Overrides.overrideEnvCookiePrefix}${zone}`;
55
- }
56
- static isOverrideCookie(cookie) {
57
- var _a;
58
- return Boolean((_a = cookie.name) == null ? void 0 : _a.startsWith(OVERRIDES_COOKIE_PREFIX));
59
- }
60
- static getOverrideFromCookie(cookie) {
61
- if (!_Overrides.isOverrideCookie(cookie) || !cookie.value)
21
+ // src/config/overrides/parse-overrides.ts
22
+ function parseOverrides(cookies) {
23
+ const overridesConfig = { applications: {} };
24
+ cookies.forEach((cookie) => {
25
+ const override = getOverrideFromCookie(cookie);
26
+ if (!override)
62
27
  return;
63
- return {
64
- zone: cookie.name.replace(_Overrides.overrideEnvCookiePrefix, ""),
65
- host: cookie.value
28
+ overridesConfig.applications[override.application] = {
29
+ environment: { host: override.host }
66
30
  };
67
- }
68
- static parseOverrides(cookies) {
69
- const overridesConfig = { applications: {} };
70
- cookies.forEach((cookie) => {
71
- const override = _Overrides.getOverrideFromCookie(cookie);
72
- if (!override)
73
- return;
74
- overridesConfig.applications[override.zone] = {
75
- environment: { host: override.host }
76
- };
77
- });
78
- return overridesConfig;
79
- }
80
- static validOverrideDomainsForZone(microfrontendConfig, zone) {
81
- var _a, _b, _c, _d, _e;
82
- const projectName = (_a = microfrontendConfig.getZone(zone).vercel) == null ? void 0 : _a.projectName;
83
- if (!projectName) {
84
- return [microfrontendConfig.getZone(zone).production.host];
85
- }
86
- const parsedProjectName = makeUrlSafe(projectName);
87
- const previewDeploymentSuffix = (_c = (_b = microfrontendConfig.options) == null ? void 0 : _b.vercel) == null ? void 0 : _c.previewDeploymentSuffix;
88
- const teamSlug = (_e = (_d = microfrontendConfig.options) == null ? void 0 : _d.vercel) == null ? void 0 : _e.teamSlug;
89
- if (!teamSlug && !previewDeploymentSuffix) {
90
- return [microfrontendConfig.getZone(zone).production.host];
91
- }
92
- const suffix = previewDeploymentSuffix ? `.${previewDeploymentSuffix}` : `-${teamSlug}.vercel.app`;
93
- return [
94
- `${parsedProjectName}-git-([a-zA-Z0-9-]+)${suffix}`,
95
- microfrontendConfig.getZone(zone).production.host
96
- ];
97
- }
98
- static validateOverrideDomain(microfrontendConfig, zone, domain) {
99
- return new RegExp(
100
- `^${_Overrides.validOverrideDomainsForZone(microfrontendConfig, zone).join(
101
- "|"
102
- )}$`
103
- ).test(domain);
104
- }
105
- serialize() {
106
- return this.config;
107
- }
108
- };
109
- var Overrides = _Overrides;
110
- Overrides.overrideEnvCookiePrefix = `${OVERRIDES_COOKIE_PREFIX}:env:`;
31
+ });
32
+ return overridesConfig;
33
+ }
34
+
35
+ // src/config/overrides/get-app-env-override-cookie-name.ts
36
+ function getAppEnvOverrideCookieName(application) {
37
+ return `${OVERRIDES_ENV_COOKIE_PREFIX}${application}`;
38
+ }
111
39
  export {
112
- OVERRIDES_COOKIE_PREFIX,
113
- Overrides
40
+ getAppEnvOverrideCookieName,
41
+ getOverrideFromCookie,
42
+ isOverrideCookie,
43
+ parseOverrides
114
44
  };
115
45
  //# sourceMappingURL=overrides.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/routing/url.ts","../src/config/overrides/config.ts"],"sourcesContent":["// NOTE: This is copied from https://github.com/vercel/api/blob/main/packages/util-func/src/url-safe-string.ts.\n// See https://linear.app/vercel/issue/FDRTN-199/spike-move-preview-domain-generation-logic-into-build-and-deploy\n// for cleaning this up before release.\n\ninterface Options {\n joinString?: string;\n lowercaseOnly?: boolean;\n maxLen?: number;\n regexRemovePattern?: RegExp;\n trimWhitespace?: boolean;\n}\n\n/**\n * This function allows to convert single string to URL-safe tags to use for routing,\n * SEO purposes, etc. It is taken from https://www.npmjs.com/package/url-safe-string\n * and implemented here to be typed and skip the dependency.\n */\nfunction buildUrlSafeString(givenOpts: Options = {}): {\n generate: (...args: string[]) => string;\n} {\n const options = {\n joinString: '-',\n lowercaseOnly: true,\n maxLen: 100,\n regexRemovePattern: /(?:(?!(?:[a-z0-9])).)/gi,\n trimWhitespace: true,\n ...givenOpts,\n };\n\n return {\n generate: (...args: string[]) => {\n const reJoinString = new RegExp(`${options.joinString}+`, 'g');\n\n // biome-ignore lint/suspicious/noImplicitAnyLet: Ignored using `--suppress`\n let tag;\n\n if (args.length === 0) {\n throw new Error('generate method must be passed at least one argument');\n }\n\n // Validate, trim all arguments:\n for (let i = 0; i < args.length; i++) {\n const arg = args[i];\n if (typeof arg !== 'string')\n throw new Error('all supplied arguments must be Strings');\n\n if (options.trimWhitespace) {\n args[i] = arg.trim();\n }\n }\n\n // Join strings and convert whitespace between words to join string\n tag = args.join(options.joinString);\n tag = tag.replace(/\\s/g, options.joinString);\n if (options.lowercaseOnly) tag = tag.toLowerCase();\n // Regex away anything \"unsafe\", but ignore the join string!\n tag = tag.replace(options.regexRemovePattern, (match) => {\n if (match === options.joinString) return match;\n\n return '';\n });\n\n // Truncate in excess of maxLen\n if (tag.length > options.maxLen) tag = tag.substring(0, options.maxLen);\n\n // Remove any duplicates of the join string using this pattern: /<join string>+/g\n tag = tag.replace(reJoinString, options.joinString);\n\n return tag;\n },\n };\n}\n\n/**\n * Export a preconfigured version for convenience.\n */\nexport const urlSafeString = buildUrlSafeString().generate;\n\nexport function makeUrlSafe(name: string): string {\n return urlSafeString(name.replace(/\\//g, '-'))\n .replace(/^-*/g, '')\n .replace(/-*$/g, '');\n}\n","import { makeUrlSafe } from '../../routing/url';\nimport type { MicrofrontendConfig } from '../microfrontend-config';\nimport type { OverridesConfig } from './types';\n\nexport const OVERRIDES_COOKIE_PREFIX = 'vercel-micro-frontends-override';\n\nexport class Overrides {\n config: OverridesConfig;\n\n constructor(config: OverridesConfig) {\n this.config = config;\n }\n\n static overrideEnvCookiePrefix = `${OVERRIDES_COOKIE_PREFIX}:env:`;\n\n static getAppEnvOverrideCookieName(zone: string): string {\n return `${Overrides.overrideEnvCookiePrefix}${zone}`;\n }\n\n static isOverrideCookie(cookie: { name?: string }): boolean {\n return Boolean(cookie.name?.startsWith(OVERRIDES_COOKIE_PREFIX));\n }\n\n static getOverrideFromCookie(cookie: {\n name: string;\n value?: string | null;\n }): { zone: string; host: string } | undefined {\n if (!Overrides.isOverrideCookie(cookie) || !cookie.value) return;\n return {\n zone: cookie.name.replace(Overrides.overrideEnvCookiePrefix, ''),\n host: cookie.value,\n };\n }\n\n static parseOverrides(\n cookies: { name: string; value?: string | null }[],\n ): OverridesConfig {\n const overridesConfig: OverridesConfig = { applications: {} };\n\n cookies.forEach((cookie) => {\n const override = Overrides.getOverrideFromCookie(cookie);\n if (!override) return;\n overridesConfig.applications[override.zone] = {\n environment: { host: override.host },\n };\n });\n\n return overridesConfig;\n }\n\n static validOverrideDomainsForZone(\n microfrontendConfig: MicrofrontendConfig,\n zone: string,\n ): string[] {\n const projectName = microfrontendConfig.getZone(zone).vercel?.projectName;\n if (!projectName) {\n return [microfrontendConfig.getZone(zone).production.host];\n }\n const parsedProjectName = makeUrlSafe(projectName);\n const previewDeploymentSuffix =\n microfrontendConfig.options?.vercel?.previewDeploymentSuffix;\n const teamSlug = microfrontendConfig.options?.vercel?.teamSlug;\n if (!teamSlug && !previewDeploymentSuffix) {\n return [microfrontendConfig.getZone(zone).production.host];\n }\n\n const suffix = previewDeploymentSuffix\n ? `.${previewDeploymentSuffix}`\n : `-${teamSlug}.vercel.app`;\n\n // <project-name>-git-<branch-name>-<scope-slug>.vercel.app\n // <project-name>-git-<branch-name>.<custom-suffix>\n return [\n `${parsedProjectName}-git-([a-zA-Z0-9-]+)${suffix}`,\n microfrontendConfig.getZone(zone).production.host,\n ];\n }\n\n static validateOverrideDomain(\n microfrontendConfig: MicrofrontendConfig,\n zone: string,\n domain: string,\n ): boolean {\n return new RegExp(\n `^${Overrides.validOverrideDomainsForZone(microfrontendConfig, zone).join(\n '|',\n )}$`,\n ).test(domain);\n }\n\n serialize(): OverridesConfig {\n return this.config;\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/config/overrides/constants.ts","../src/config/overrides/is-override-cookie.ts","../src/config/overrides/get-override-from-cookie.ts","../src/config/overrides/parse-overrides.ts","../src/config/overrides/get-app-env-override-cookie-name.ts"],"sourcesContent":["// cookie name needs to match proxy\n// https://github.com/vercel/proxy/blob/fb00d723136ad539a194e4a851dd272010527c35/lib/routing/micro_frontends_overrides.lua#L7\nexport const OVERRIDES_COOKIE_PREFIX = 'vercel-micro-frontends-override';\nexport const OVERRIDES_ENV_COOKIE_PREFIX = `${OVERRIDES_COOKIE_PREFIX}:env:`;\n","import { OVERRIDES_COOKIE_PREFIX } from './constants';\n\nexport function isOverrideCookie(cookie: { name?: string }): boolean {\n return Boolean(cookie.name?.startsWith(OVERRIDES_COOKIE_PREFIX));\n}\n","import { isOverrideCookie } from './is-override-cookie';\nimport { OVERRIDES_ENV_COOKIE_PREFIX } from './constants';\n\nexport function getOverrideFromCookie(cookie: {\n name: string;\n value?: string | null;\n}): { application: string; host: string } | undefined {\n if (!isOverrideCookie(cookie) || !cookie.value) return;\n return {\n application: cookie.name.replace(OVERRIDES_ENV_COOKIE_PREFIX, ''),\n host: cookie.value,\n };\n}\n","import type { OverridesConfig } from './types';\nimport { getOverrideFromCookie } from './get-override-from-cookie';\n\nexport function parseOverrides(\n cookies: { name: string; value?: string | null }[],\n): OverridesConfig {\n const overridesConfig: OverridesConfig = { applications: {} };\n\n cookies.forEach((cookie) => {\n const override = getOverrideFromCookie(cookie);\n if (!override) return;\n overridesConfig.applications[override.application] = {\n environment: { host: override.host },\n };\n });\n\n return overridesConfig;\n}\n","import { OVERRIDES_ENV_COOKIE_PREFIX } from './constants';\n\nexport function getAppEnvOverrideCookieName(application: string): string {\n return `${OVERRIDES_ENV_COOKIE_PREFIX}${application}`;\n}\n"],"mappings":";AAEO,IAAM,0BAA0B;AAChC,IAAM,8BAA8B,GAAG;;;ACDvC,SAAS,iBAAiB,QAAoC;AAFrE;AAGE,SAAO,SAAQ,YAAO,SAAP,mBAAa,WAAW,wBAAwB;AACjE;;;ACDO,SAAS,sBAAsB,QAGgB;AACpD,MAAI,CAAC,iBAAiB,MAAM,KAAK,CAAC,OAAO;AAAO;AAChD,SAAO;AAAA,IACL,aAAa,OAAO,KAAK,QAAQ,6BAA6B,EAAE;AAAA,IAChE,MAAM,OAAO;AAAA,EACf;AACF;;;ACTO,SAAS,eACd,SACiB;AACjB,QAAM,kBAAmC,EAAE,cAAc,CAAC,EAAE;AAE5D,UAAQ,QAAQ,CAAC,WAAW;AAC1B,UAAM,WAAW,sBAAsB,MAAM;AAC7C,QAAI,CAAC;AAAU;AACf,oBAAgB,aAAa,SAAS,WAAW,IAAI;AAAA,MACnD,aAAa,EAAE,MAAM,SAAS,KAAK;AAAA,IACrC;AAAA,EACF,CAAC;AAED,SAAO;AACT;;;ACfO,SAAS,4BAA4B,aAA6B;AACvE,SAAO,GAAG,8BAA8B;AAC1C;","names":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+
16
+ // src/routing/index.ts
17
+ var routing_exports = {};
18
+ module.exports = __toCommonJS(routing_exports);
19
+ //# sourceMappingURL=routing.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/routing/index.ts"],"sourcesContent":["export * from './types';\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1,26 @@
1
+ interface VercelRelatedProject {
2
+ /**
3
+ * Vercel project data
4
+ */
5
+ project: {
6
+ id: string;
7
+ name: string;
8
+ };
9
+ production: {
10
+ url?: string;
11
+ alias?: string;
12
+ };
13
+ /**
14
+ * Preview deployment aliases
15
+ * NOTE: Only the branch alias is returned as we can't guess the value of deployment.url
16
+ * (which is used as the commit alias) because it's non-deterministic.
17
+ */
18
+ preview: {
19
+ /**
20
+ * The branch alias for the preview deployment
21
+ */
22
+ branch?: string;
23
+ };
24
+ }
25
+
26
+ export { VercelRelatedProject };
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=routing.js.map
@@ -13,7 +13,7 @@ var __copyProps = (to, from, except, desc) => {
13
13
  };
14
14
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
15
 
16
- // src/config-v2/schema/index.ts
16
+ // src/config/schema/index.ts
17
17
  var schema_exports = {};
18
18
  module.exports = __toCommonJS(schema_exports);
19
19
  //# sourceMappingURL=schema.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/config/schema/index.ts"],"sourcesContent":["export {\n Application as MicrofrontendApplicationSchema,\n Config as MicrofrontendSchema,\n MainConfig as MainMicrofrontendSchema,\n} from './types';\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
@@ -0,0 +1 @@
1
+ export { M as MainMicrofrontendSchema, A as MicrofrontendApplicationSchema, C as MicrofrontendSchema } from './types-a29d224a.js';
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -109,12 +109,6 @@ interface Vercel {
109
109
  projectId: string;
110
110
  }
111
111
  interface VercelOptions {
112
- /**
113
- * If your team uses a custom Preview Deployment Suffix, please specify it here.
114
- * See https://vercel.com/docs/deployments/preview-deployment-suffix.
115
- * The default is `vercel.app`.
116
- */
117
- previewDeploymentSuffix?: string;
118
112
  /**
119
113
  * Team slug for the Vercel team
120
114
  */
@@ -145,4 +139,4 @@ interface LocalProxyOptions {
145
139
  port?: number;
146
140
  }
147
141
 
148
- export { ApplicationId as A, Config as C, DefaultApplication as D, HostConfig as H, LocalHostConfig as L, MainConfig as M, PathGroup as P, Vercel as V, ChildConfig as a, ChildApplication as b, Application as c };
142
+ export { Application as A, Config as C, DefaultApplication as D, HostConfig as H, LocalHostConfig as L, MainConfig as M, PathGroup as P, Vercel as V, ChildConfig as a, ChildApplication as b, ApplicationId as c };
@@ -1,4 +1,4 @@
1
- import { H as HostConfig, A as ApplicationId } from './types-a995174e.js';
1
+ import { H as HostConfig, c as ApplicationId } from './types-a29d224a.js';
2
2
 
3
3
  interface ApplicationOverrideConfig {
4
4
  environment?: HostConfig;
@@ -0,0 +1,11 @@
1
+ import { c as ApplicationId, P as PathGroup } from './types-a29d224a.js';
2
+
3
+ interface ClientApplication {
4
+ routing?: PathGroup[];
5
+ default?: boolean;
6
+ }
7
+ interface ClientConfig {
8
+ applications: Record<ApplicationId, ClientApplication>;
9
+ }
10
+
11
+ export { ClientConfig as C };