@emailmaker/emailmaker 1.1.65 → 1.1.70
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/README.md +1 -1
- package/assets/images/project-settings-inbox-envelope.png +0 -0
- package/assets/images/project-settings-plugin-support-avatar.png +0 -0
- package/{emailmaker-core.ec746d58.js → emailmaker-core.ce3741e5.js} +8 -8
- package/emailmaker-esm.js +23 -20
- package/emailmaker-po.ce3741e5.js +5945 -0
- package/emailmaker.d.ts +36 -525
- package/emailmaker.js +3 -3
- package/fileManager.d.ts +519 -0
- package/iframe/css/sandbox-dark.css +1 -1
- package/iframe/css/sandbox-darktheme.css +1 -1
- package/iframe/css/sandbox-light.css +1 -1
- package/iframe/css/sandbox.css +112 -89
- package/iframe/js/amp.D4LpeCG3.js +1 -0
- package/iframe/js/iframe-eblock.js +1 -1
- package/iframe/js/iframe.js +1 -1
- package/iframe/js/rules.B-wCbIo7.js +1 -1
- package/npm-publish.manifest.json +15 -7
- package/package.json +4 -1
- package/runtime/THIRD_PARTY_LICENSES.txt +1 -1
- package/static/core/{8b25ab0f2.js → 0eb6825f2.js} +3 -3
- package/static/core/{14bac801.js → 10343d072.js} +32 -32
- package/static/core/{89a7f5e22.js → 11ecb3732.js} +3 -3
- package/static/core/13d868f1.js +2119 -0
- package/static/core/{e3282461.js → 14b57b51.js} +5 -5
- package/static/core/{d06b7a22.js → 1537984c.js} +5 -5
- package/static/core/{ff54d2c22.js → 15e90aa1.js} +3 -3
- package/static/core/18d7246c.js +11437 -0
- package/static/core/{2d89e8f32.js → 1b3a7794.js} +3 -3
- package/static/core/{f1c452562.js → 1b815379.js} +3 -3
- package/static/core/{51a22b29.js → 1cdcd63d.js} +8 -8
- package/static/core/{b67fcff12.js → 1f0f8d052.js} +3 -3
- package/static/core/{227f9a41.js → 20ecbcb12.js} +9 -9
- package/static/core/{f62e420c.js → 2181dfc12.js} +4965 -4753
- package/static/core/{cbf00549.js → 2242ba4c.js} +3 -3
- package/static/core/{668756522.js → 225aa8cf2.js} +3 -3
- package/static/core/{fde5b48c.js → 2289d149.js} +7 -7
- package/static/core/{5c2a668f.js → 2569b2ec.js} +3 -3
- package/static/core/{b3b3281c2.js → 267d83c02.js} +3 -3
- package/static/core/{d8e8c189.js → 28c04df32.js} +3 -3
- package/static/core/{7144829c2.js → 290a5a3e.js} +3 -3
- package/static/core/{c6c12a4c2.js → 2bb9001a2.js} +3 -3
- package/static/core/2dd8b882.js +583 -0
- package/static/core/{d4fae48f2.js → 2eba2c3d2.js} +7 -7
- package/static/core/{e3f7dda5.js → 2f940a6e.js} +3 -3
- package/static/core/{29d379ee.js → 3137210f.js} +3 -3
- package/static/core/{3e444726.js → 319cf5c8.js} +173 -173
- package/static/core/{2d52ee4e2.js → 331100cc2.js} +3 -3
- package/static/core/{996d1d512.js → 33c2762f2.js} +3 -3
- package/static/core/{371b11182.js → 33ed2f102.js} +5 -5
- package/static/core/{fabe8bf6.js → 36878d5e.js} +3 -3
- package/static/core/{4e33c418.js → 378d1eee.js} +4 -4
- package/static/core/{15d6b9c02.js → 3b4ea1e02.js} +4 -4
- package/static/core/{7200aced.js → 3c5b0572.js} +3 -3
- package/static/core/{1ad06ad4.js → 3ca00db5.js} +3 -3
- package/static/core/{1d1b8fee.js → 3cf11ac9.js} +1846 -1847
- package/static/core/{ee605dd2.js → 3fa35a4a.js} +3 -3
- package/static/core/{73d8bc22.js → 413788c12.js} +6 -6
- package/static/core/{bae89f052.js → 42608663.js} +3 -3
- package/static/core/{707c11bf2.js → 43386b222.js} +5 -5
- package/static/core/{72806c12.js → 449b0f092.js} +5 -5
- package/static/core/{cffc0d1c.js → 45a5a8c32.js} +3 -3
- package/static/core/{3f7f42ec2.js → 46ee74792.js} +3 -3
- package/static/core/{c0fde0fe.js → 4905ac72.js} +3 -3
- package/static/core/{4e7df2bb.js → 4930a7d4.js} +20 -20
- package/static/core/4a3fcabb2.js +8956 -0
- package/static/core/{e47b96042.js → 4b6cd5362.js} +3 -3
- package/static/core/4c113afa.js +33627 -0
- package/static/core/4ca47ce1.js +22 -0
- package/static/core/{ffd09066.js → 4cf4cef0.js} +3 -3
- package/static/core/{58062cfb.js → 4d14fed2.js} +15 -15
- package/static/core/{46e22b84.js → 53bc27c1.js} +3 -3
- package/static/core/{3c9b91ec.js → 53e1b147.js} +17 -17
- package/static/core/53fb6a84.js +468 -0
- package/static/core/{60dc03552.js → 5466b5932.js} +3 -3
- package/static/core/{88d5dd5c2.js → 563426652.js} +3 -3
- package/static/core/{80d7bfb8.js → 569bf67b.js} +3 -3
- package/static/core/{f577dd74.js → 58755545.js} +3 -3
- package/static/core/{34a063a22.js → 5ab6d1fe2.js} +3 -3
- package/static/core/{bcf642bb2.js → 5ddd3b2f2.js} +13 -13
- package/static/core/{6df8804e.js → 5f203ce92.js} +8 -8
- package/static/core/{271a49fb.js → 5f6bab5a.js} +3 -3
- package/static/core/{aae0d578.js → 611fb42b2.js} +4 -4
- package/static/core/{af6b87cb.js → 618600ac.js} +3 -3
- package/static/core/{caf4f82e2.js → 632e1fd02.js} +43 -43
- package/static/core/{cec04bb12.js → 67371af1.js} +3 -3
- package/static/core/{e0369425.js → 67830da5.js} +640 -638
- package/static/core/{17432659.js → 68472e1c.js} +3 -3
- package/static/core/{9106dd642.js → 69a225e42.js} +3 -3
- package/static/core/69ce726e2.js +3251 -0
- package/static/core/{9d20ebd5.js → 6ae41b98.js} +4 -4
- package/static/core/{57dfc32e2.js → 6e7d7f79.js} +3 -3
- package/static/core/{a9e90b632.js → 72e7bba12.js} +5 -5
- package/static/core/{67a4e05c.js → 7569a429.js} +3 -3
- package/static/core/{35d38b9a.js → 75e4001f.js} +3 -3
- package/static/core/{364eb3852.js → 76dad1b82.js} +3 -3
- package/static/core/{d40acbef2.js → 792eec912.js} +5 -5
- package/static/core/{d3d2bbf4.js → 793710d0.js} +387 -385
- package/static/core/{f88178782.js → 7a29f2ca2.js} +3 -3
- package/static/core/7df48ae1.js +56 -0
- package/static/core/{f341769b.js → 8129560f.js} +3 -3
- package/static/core/{1d8d16e5.js → 8280ec49.js} +13 -13
- package/static/core/828e59c3.js +683 -0
- package/static/core/{2cfb56bd2.js → 86892434.js} +3 -3
- package/static/core/{3ee18f2b.js → 8c0912ba.js} +3 -3
- package/static/core/{4b2be4062.js → 8c376d26.js} +3 -3
- package/static/core/{b1e55882.js → 8d7ebc6e.js} +6 -6
- package/static/core/{cb05db0a2.js → 8e1070c9.js} +519 -523
- package/static/core/{dc6c47462.js → 8eaf2a78.js} +3 -3
- package/static/core/{ff1278ae2.js → 9083dd91.js} +3 -3
- package/static/core/{4d1a6fda.js → 92f7fcaf.js} +41520 -45391
- package/static/core/{144da511.js → 95c1e180.js} +241 -260
- package/static/core/9883f8862.js +39 -0
- package/static/core/{310a7e6a2.js → 99909d1c2.js} +6 -6
- package/static/core/{d95c732e.js → 9db17827.js} +3 -3
- package/static/core/{c48ee4d52.js → 9e7380e4.js} +10 -10
- package/static/core/{1dcbf663.js → a1277731.js} +3 -3
- package/static/core/{adf38d4b.js → a2b7e614.js} +3 -3
- package/static/core/{9c8553be.js → a5a25e092.js} +200 -192
- package/static/core/{5b4bfdc0.js → a6231152.js} +9 -9
- package/static/core/{319db1a52.js → a6a389a6.js} +3 -3
- package/static/core/{abbb437b2.js → acb6a6e7.js} +3 -3
- package/static/core/{89779037.js → acb8d0f5.js} +3 -3
- package/static/core/{7463de00.js → b1addbc3.js} +3 -3
- package/static/core/{93f3e6dc.js → b1bb0b5b.js} +5 -5
- package/static/core/b33e034e.js +49 -0
- package/static/core/{1bfa4a862.js → be477222.js} +3 -3
- package/static/core/{5964c48f2.js → c2ff6632.js} +3 -3
- package/static/core/{537db3fa2.js → c4bc67442.js} +6 -6
- package/static/core/{cf4af6152.js → c889a63f.js} +3 -3
- package/static/core/{9c9dde252.js → ca51b8dc2.js} +10 -10
- package/static/core/{6f213c532.js → cbe4dd062.js} +11 -11
- package/static/core/{149f1be2.js → cbed29852.js} +3 -3
- package/static/core/{d5363339.js → cca304812.js} +5 -5
- package/static/core/{d4c4a927.js → d076c7272.js} +3 -3
- package/static/core/{a53e376b.js → d28e9842.js} +134 -134
- package/static/core/{710ad006.js → d2975cfe.js} +3050 -2914
- package/static/core/{dc3e2e44.js → d6ca53ee.js} +3 -3
- package/static/core/{ee84fb29.js → d7c64097.js} +3 -3
- package/static/core/{e2f5fcb1.js → db9eabde.js} +7 -7
- package/static/core/{613bcc0a.js → dd6d3ae42.js} +120 -120
- package/static/core/e1dddb82.js +126 -0
- package/static/core/{aebb34822.js → e2a0a5402.js} +3 -3
- package/static/core/{3156997d.js → e6b7a22c.js} +3 -3
- package/static/core/{27702468.js → e700a71a2.js} +2018 -1808
- package/static/core/{a11cd5642.js → e73371cf.js} +3 -3
- package/static/core/{d1e45451.js → e7d36446.js} +5 -5
- package/static/core/{29051452.js → e8ccbcef.js} +3 -3
- package/static/core/{3a580bd62.js → eb8cf6d62.js} +3 -3
- package/static/core/{92d3d1a9.js → eb9f4ec02.js} +3 -3
- package/static/core/{575c1be3.js → ee440378.js} +3 -3
- package/static/core/{f63cbc642.js → f419b36f2.js} +3 -3
- package/static/core/{25988409.js → f5b378e4.js} +3 -3
- package/static/core/{8eb0b7cd.js → f5f707b8.js} +54 -54
- package/static/core/{c6db3a31.js → f679001c.js} +3 -3
- package/static/core/{95fa393a2.js → f6f67a712.js} +3 -3
- package/static/core/{9fc67893.js → f740b7ec2.js} +3 -3
- package/static/core/{6076ed7e.js → f98c6ce2.js} +4 -4
- package/static/core/fc878f95.js +61 -0
- package/static/core/{434c7eda2.js → fdf372f4.js} +4 -4
- package/static/media/image-editor/fonts/Rubik-Black.woff2 +0 -0
- package/static/media/image-editor/fonts/Rubik-Bold.woff2 +0 -0
- package/static/media/image-editor/fonts/Rubik-Light.woff2 +0 -0
- package/static/media/image-editor/fonts/Rubik-Regular.woff2 +0 -0
- package/static/media/image-editor/fonts/caveat-v23-cyrillic_latin-regular.woff2 +0 -0
- package/static/media/image-editor/fonts/commissioner-v24-cyrillic_latin-regular.woff2 +0 -0
- package/static/media/image-editor/fonts/inter-v20-cyrillic_latin-regular.woff2 +0 -0
- package/static/media/image-editor/fonts/oswald-v57-cyrillic_latin-regular.woff2 +0 -0
- package/static/media/image-editor/fonts/pacifico-v23-cyrillic_latin-regular.woff2 +0 -0
- package/static/media/image-editor/fonts/playfair-display-v40-cyrillic_latin-regular.woff2 +0 -0
- package/static/umd-runtime/ui-kit.js +1638 -1416
- package/test-font.otf +0 -0
- package/test-font.ttf +0 -0
- package/test-font.woff2 +0 -0
- package/two_step_headless_plugin.html +1 -1
- package/ui-kit/index.js +1317 -1104
- package/vite/index.cjs +4 -4
- package/vite/index.d.ts +4 -4
- package/vite/index.js +4 -4
- package/vite/pluginDev/index.cjs +2 -2
- package/vite/pluginDev/index.d.ts +12 -12
- package/vite/pluginDev/index.js +2 -2
- package/webpack/pluginDev/index.d.ts +12 -12
- package/iframe/js/amp.V09Q6hy6.js +0 -1
- package/static/core/1704ac6f.js +0 -12281
- package/static/core/1c2ae249.js +0 -2089
- package/static/core/30cfda89.js +0 -465
- package/static/core/3d6ea013.js +0 -43109
- package/static/core/4031d739.js +0 -93052
- package/static/core/57b7148c.js +0 -666
- package/static/core/6e7c1c68.js +0 -124
- package/static/core/c64d880f.js +0 -68
- package/static/core/cc1c5d33.js +0 -27
- /package/iframe/{iframe-eblock.ec746d58.html → iframe-eblock.ce3741e5.html} +0 -0
- /package/iframe/{iframe.ec746d58.html → iframe.ce3741e5.html} +0 -0
package/vite/index.cjs
CHANGED
|
@@ -458,7 +458,7 @@ var BUNDLER_DEFAULT_APP_NAME = "emailmaker";
|
|
|
458
458
|
`${BUNDLER_DEFAULT_APP_NAME}`;
|
|
459
459
|
//#endregion
|
|
460
460
|
//#region src/vite/depsRuntimePaths.ts
|
|
461
|
-
/**
|
|
461
|
+
/** For tests and the plugin: one RegExp per process, never rebuilt in the hot path. */
|
|
462
462
|
function createAppCoreOptimizedDepRe(appName) {
|
|
463
463
|
return new RegExp(`^${appName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}-core\\.[a-f0-9]+\\.js$`);
|
|
464
464
|
}
|
|
@@ -468,7 +468,7 @@ function normalizeDepsPathname(value) {
|
|
|
468
468
|
var STATIC_CORE_IN_DEPS_RE = /^static\/core\/[^/]+\.js$/;
|
|
469
469
|
/**
|
|
470
470
|
* Vite prebundles may rewrite runtime asset requests under `/.vite/deps/`.
|
|
471
|
-
* Maps request pathname →
|
|
471
|
+
* Maps request pathname → absolute file path at the runtime package root.
|
|
472
472
|
*/
|
|
473
473
|
function getDepsRuntimeFilePath(pathname, packageRoot, appCoreOptimizedDepRe) {
|
|
474
474
|
const normalizedPathname = normalizeDepsPathname(pathname);
|
|
@@ -642,8 +642,8 @@ function renderDuplicateWarn(pluginName, mainPackage, duplicates) {
|
|
|
642
642
|
//#endregion
|
|
643
643
|
//#region src/vite/reactDuplicateRuntimeCheck.ts
|
|
644
644
|
/**
|
|
645
|
-
*
|
|
646
|
-
* CLI
|
|
645
|
+
* The `BUNDLER_RUNTIME_STRICT=1` env flag switches the defensive detectors to throw mode.
|
|
646
|
+
* The CLI sets it automatically when a plugin is built locally from our repository.
|
|
647
647
|
*/
|
|
648
648
|
var STRICT_ENV_FLAG = "BUNDLER_RUNTIME_STRICT";
|
|
649
649
|
function isStrictMode(envSource = process.env) {
|
package/vite/index.d.ts
CHANGED
|
@@ -7,8 +7,8 @@ type HostPluginLogLevel = 'silent' | 'error' | 'warn' | 'info' | 'debug';
|
|
|
7
7
|
//#endregion
|
|
8
8
|
//#region node_modules/.cache/bundler-plugins-dts/vite/reactDuplicateRuntimeCheck.d.ts
|
|
9
9
|
/**
|
|
10
|
-
*
|
|
11
|
-
* CLI
|
|
10
|
+
* The `BUNDLER_RUNTIME_STRICT=1` env flag switches the defensive detectors to throw mode.
|
|
11
|
+
* The CLI sets it automatically when a plugin is built locally from our repository.
|
|
12
12
|
*/
|
|
13
13
|
declare const STRICT_ENV_FLAG = "BUNDLER_RUNTIME_STRICT";
|
|
14
14
|
declare function isStrictMode(envSource?: NodeJS.ProcessEnv): boolean;
|
|
@@ -27,11 +27,11 @@ declare function runReactDuplicateRuntimeCheck(opts: {
|
|
|
27
27
|
}, signals?: RuntimeDuplicateCheckSignals): RuntimeDuplicateCheckOutcome;
|
|
28
28
|
//#endregion
|
|
29
29
|
//#region node_modules/.cache/bundler-plugins-dts/vite/depsRuntimePaths.d.ts
|
|
30
|
-
/**
|
|
30
|
+
/** For tests and the plugin: one RegExp per process, never rebuilt in the hot path. */
|
|
31
31
|
declare function createAppCoreOptimizedDepRe(appName: string): RegExp;
|
|
32
32
|
/**
|
|
33
33
|
* Vite prebundles may rewrite runtime asset requests under `/.vite/deps/`.
|
|
34
|
-
* Maps request pathname →
|
|
34
|
+
* Maps request pathname → absolute file path at the runtime package root.
|
|
35
35
|
*/
|
|
36
36
|
declare function getDepsRuntimeFilePath(pathname: string, packageRoot: string, appCoreOptimizedDepRe: RegExp): string | null;
|
|
37
37
|
//#endregion
|
package/vite/index.js
CHANGED
|
@@ -429,7 +429,7 @@ var BUNDLER_DEFAULT_APP_NAME = "emailmaker";
|
|
|
429
429
|
`${BUNDLER_DEFAULT_APP_NAME}`;
|
|
430
430
|
//#endregion
|
|
431
431
|
//#region src/vite/depsRuntimePaths.ts
|
|
432
|
-
/**
|
|
432
|
+
/** For tests and the plugin: one RegExp per process, never rebuilt in the hot path. */
|
|
433
433
|
function createAppCoreOptimizedDepRe(appName) {
|
|
434
434
|
return new RegExp(`^${appName.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}-core\\.[a-f0-9]+\\.js$`);
|
|
435
435
|
}
|
|
@@ -439,7 +439,7 @@ function normalizeDepsPathname(value) {
|
|
|
439
439
|
var STATIC_CORE_IN_DEPS_RE = /^static\/core\/[^/]+\.js$/;
|
|
440
440
|
/**
|
|
441
441
|
* Vite prebundles may rewrite runtime asset requests under `/.vite/deps/`.
|
|
442
|
-
* Maps request pathname →
|
|
442
|
+
* Maps request pathname → absolute file path at the runtime package root.
|
|
443
443
|
*/
|
|
444
444
|
function getDepsRuntimeFilePath(pathname, packageRoot, appCoreOptimizedDepRe) {
|
|
445
445
|
const normalizedPathname = normalizeDepsPathname(pathname);
|
|
@@ -613,8 +613,8 @@ function renderDuplicateWarn(pluginName, mainPackage, duplicates) {
|
|
|
613
613
|
//#endregion
|
|
614
614
|
//#region src/vite/reactDuplicateRuntimeCheck.ts
|
|
615
615
|
/**
|
|
616
|
-
*
|
|
617
|
-
* CLI
|
|
616
|
+
* The `BUNDLER_RUNTIME_STRICT=1` env flag switches the defensive detectors to throw mode.
|
|
617
|
+
* The CLI sets it automatically when a plugin is built locally from our repository.
|
|
618
618
|
*/
|
|
619
619
|
var STRICT_ENV_FLAG = "BUNDLER_RUNTIME_STRICT";
|
|
620
620
|
function isStrictMode(envSource = process.env) {
|
package/vite/pluginDev/index.cjs
CHANGED
|
@@ -878,8 +878,8 @@ function renderDuplicateWarn(pluginName, mainPackage, duplicates) {
|
|
|
878
878
|
//#endregion
|
|
879
879
|
//#region src/vite/reactDuplicateRuntimeCheck.ts
|
|
880
880
|
/**
|
|
881
|
-
*
|
|
882
|
-
* CLI
|
|
881
|
+
* The `BUNDLER_RUNTIME_STRICT=1` env flag switches the defensive detectors to throw mode.
|
|
882
|
+
* The CLI sets it automatically when a plugin is built locally from our repository.
|
|
883
883
|
*/
|
|
884
884
|
var STRICT_ENV_FLAG$1 = "BUNDLER_RUNTIME_STRICT";
|
|
885
885
|
function isStrictMode(envSource = process.env) {
|
|
@@ -5,21 +5,21 @@ type PluginDevOptions = {
|
|
|
5
5
|
externals?: PluginDevExternalsMode | 'global';
|
|
6
6
|
alias?: boolean;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* singleton
|
|
8
|
+
* Exact bare specifiers of runtime package deep imports that are **allowed** to bypass
|
|
9
|
+
* the singleton invariant (for example, `'antd/es/locale/zh_CN'`).
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* By default every deep import of a runtime package (`antd/es/...`, `react-dom/server`, …)
|
|
12
|
+
* that is not declared in `runtime-contract.ts` **fails the plugin build**, so that the
|
|
13
|
+
* singleton graph is not split between host and plugin (host + plugin = two copies).
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
* -
|
|
17
|
-
* -
|
|
18
|
-
* -
|
|
15
|
+
* This allowlist is an escape hatch for the rare case where the plugin author:
|
|
16
|
+
* - deliberately pulls a deep subpath from a local `node_modules/<pkg>/...`,
|
|
17
|
+
* - accepts a **second instance** of the package inside their bundle,
|
|
18
|
+
* - and states it explicitly in the plugin config (review-friendly).
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
20
|
+
* A match only prints `console.warn(...)`; the plugin keeps building.
|
|
21
|
+
* Comparison is strict (exact match) — wildcards and RegExp are not supported,
|
|
22
|
+
* every deep path has to be listed explicitly.
|
|
23
23
|
*
|
|
24
24
|
* @example
|
|
25
25
|
* ```ts
|
package/vite/pluginDev/index.js
CHANGED
|
@@ -852,8 +852,8 @@ function renderDuplicateWarn(pluginName, mainPackage, duplicates) {
|
|
|
852
852
|
//#endregion
|
|
853
853
|
//#region src/vite/reactDuplicateRuntimeCheck.ts
|
|
854
854
|
/**
|
|
855
|
-
*
|
|
856
|
-
* CLI
|
|
855
|
+
* The `BUNDLER_RUNTIME_STRICT=1` env flag switches the defensive detectors to throw mode.
|
|
856
|
+
* The CLI sets it automatically when a plugin is built locally from our repository.
|
|
857
857
|
*/
|
|
858
858
|
var STRICT_ENV_FLAG$1 = "BUNDLER_RUNTIME_STRICT";
|
|
859
859
|
function isStrictMode(envSource = process.env) {
|
|
@@ -5,21 +5,21 @@ type PluginDevOptions = {
|
|
|
5
5
|
externals?: PluginDevExternalsMode | 'global';
|
|
6
6
|
alias?: boolean;
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* singleton
|
|
8
|
+
* Exact bare specifiers of runtime package deep imports that are **allowed** to bypass
|
|
9
|
+
* the singleton invariant (for example, `'antd/es/locale/zh_CN'`).
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
11
|
+
* By default every deep import of a runtime package (`antd/es/...`, `react-dom/server`, …)
|
|
12
|
+
* that is not declared in `runtime-contract.ts` **fails the plugin build**, so that the
|
|
13
|
+
* singleton graph is not split between host and plugin (host + plugin = two copies).
|
|
14
14
|
*
|
|
15
|
-
*
|
|
16
|
-
* -
|
|
17
|
-
* -
|
|
18
|
-
* -
|
|
15
|
+
* This allowlist is an escape hatch for the rare case where the plugin author:
|
|
16
|
+
* - deliberately pulls a deep subpath from a local `node_modules/<pkg>/...`,
|
|
17
|
+
* - accepts a **second instance** of the package inside their bundle,
|
|
18
|
+
* - and states it explicitly in the plugin config (review-friendly).
|
|
19
19
|
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
20
|
+
* A match only prints `console.warn(...)`; the plugin keeps building.
|
|
21
|
+
* Comparison is strict (exact match) — wildcards and RegExp are not supported,
|
|
22
|
+
* every deep path has to be listed explicitly.
|
|
23
23
|
*
|
|
24
24
|
* @example
|
|
25
25
|
* ```ts
|