@strapi/strapi 5.55.0 → 5.56.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 (52) hide show
  1. package/admin-styles.css +5 -0
  2. package/dist/node/core/admin-vite-aliases.d.ts +9 -0
  3. package/dist/node/core/admin-vite-aliases.d.ts.map +1 -1
  4. package/dist/node/core/aliases.d.ts +4 -1
  5. package/dist/node/core/aliases.d.ts.map +1 -1
  6. package/dist/node/core/scan-roots.d.ts +20 -0
  7. package/dist/node/core/scan-roots.d.ts.map +1 -0
  8. package/dist/node/create-build-context.d.ts +10 -1
  9. package/dist/node/create-build-context.d.ts.map +1 -1
  10. package/dist/node/develop.d.ts.map +1 -1
  11. package/dist/node/staticFiles.d.ts +3 -1
  12. package/dist/node/staticFiles.d.ts.map +1 -1
  13. package/dist/node/vite/config.d.ts.map +1 -1
  14. package/dist/node/vite/plugins.d.ts +2 -1
  15. package/dist/node/vite/plugins.d.ts.map +1 -1
  16. package/dist/node/vite/plugins.test.d.ts +2 -0
  17. package/dist/node/vite/plugins.test.d.ts.map +1 -0
  18. package/dist/package.json.js +1 -1
  19. package/dist/package.json.mjs +1 -1
  20. package/dist/src/node/core/admin-vite-aliases.js +51 -0
  21. package/dist/src/node/core/admin-vite-aliases.js.map +1 -1
  22. package/dist/src/node/core/admin-vite-aliases.mjs +46 -1
  23. package/dist/src/node/core/admin-vite-aliases.mjs.map +1 -1
  24. package/dist/src/node/core/aliases.js +6 -0
  25. package/dist/src/node/core/aliases.js.map +1 -1
  26. package/dist/src/node/core/aliases.mjs +6 -1
  27. package/dist/src/node/core/aliases.mjs.map +1 -1
  28. package/dist/src/node/core/scan-roots.js +87 -0
  29. package/dist/src/node/core/scan-roots.js.map +1 -0
  30. package/dist/src/node/core/scan-roots.mjs +79 -0
  31. package/dist/src/node/core/scan-roots.mjs.map +1 -0
  32. package/dist/src/node/create-build-context.js +40 -1
  33. package/dist/src/node/create-build-context.js.map +1 -1
  34. package/dist/src/node/create-build-context.mjs +40 -1
  35. package/dist/src/node/create-build-context.mjs.map +1 -1
  36. package/dist/src/node/develop.js +2 -1
  37. package/dist/src/node/develop.js.map +1 -1
  38. package/dist/src/node/develop.mjs +2 -1
  39. package/dist/src/node/develop.mjs.map +1 -1
  40. package/dist/src/node/staticFiles.js +43 -0
  41. package/dist/src/node/staticFiles.js.map +1 -1
  42. package/dist/src/node/staticFiles.mjs +42 -1
  43. package/dist/src/node/staticFiles.mjs.map +1 -1
  44. package/dist/src/node/vite/config.js +12 -1
  45. package/dist/src/node/vite/config.js.map +1 -1
  46. package/dist/src/node/vite/config.mjs +8 -1
  47. package/dist/src/node/vite/config.mjs.map +1 -1
  48. package/dist/src/node/vite/plugins.js +27 -1
  49. package/dist/src/node/vite/plugins.js.map +1 -1
  50. package/dist/src/node/vite/plugins.mjs +23 -1
  51. package/dist/src/node/vite/plugins.mjs.map +1 -1
  52. package/package.json +30 -25
@@ -0,0 +1,5 @@
1
+ /**
2
+ * The entry the generated admin stylesheet imports. It ships in `@strapi/strapi`, so an application
3
+ * needs no Tailwind entry and no design system entry of its own
4
+ */
5
+ @import '@strapi/design-system/next/source.css';
@@ -8,6 +8,15 @@
8
8
  * @internal
9
9
  */
10
10
  export declare const buildAdminViteResolveAliases: () => Record<string, string>;
11
+ /**
12
+ * Alias key and absolute target for each exports subpath a browser build can import
13
+ *
14
+ * The bare key rewrites to a directory. A directory rewrite bypasses the exports map. Thus each
15
+ * subpath needs its own exact key. Wildcards and `./package.json` get no key
16
+ *
17
+ * @internal
18
+ */
19
+ export declare const getSubpathEntries: (mod: string) => Array<readonly [string, string]>;
11
20
  /**
12
21
  * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any
13
22
  * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).
@@ -1 +1 @@
1
- {"version":3,"file":"admin-vite-aliases.d.ts","sourceRoot":"","sources":["../../../src/node/core/admin-vite-aliases.ts"],"names":[],"mappings":"AAGA;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,QAAO,MAAM,CAAC,MAAM,EAAE,MAAM,CAIjE,CAAC;AAEL;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,QAAO,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAa5E,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,QAAO,MAAM,EACL,CAAC"}
1
+ {"version":3,"file":"admin-vite-aliases.d.ts","sourceRoot":"","sources":["../../../src/node/core/admin-vite-aliases.ts"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,QAAO,MAAM,CAAC,MAAM,EAAE,MAAM,CAMjE,CAAC;AAEL;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAiC9E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,QAAO,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAa5E,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,QAAO,MAAM,EACL,CAAC"}
@@ -1,8 +1,11 @@
1
1
  import { StrapiMonorepo } from './monorepo';
2
+ declare const getMonorepoEeAdminSource: ({ monorepo, }: {
3
+ monorepo?: StrapiMonorepo;
4
+ }) => string | undefined;
2
5
  declare const getMonorepoAliases: ({ monorepo }: {
3
6
  monorepo?: StrapiMonorepo;
4
7
  }) => {
5
8
  [k: string]: string;
6
9
  };
7
- export { getMonorepoAliases };
10
+ export { getMonorepoAliases, getMonorepoEeAdminSource };
8
11
  //# sourceMappingURL=aliases.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../../../src/node/core/aliases.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA2B5C,QAAA,MAAM,kBAAkB,GAAI,cAAc;IAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;CAAE;;CAUtE,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"aliases.d.ts","sourceRoot":"","sources":["../../../src/node/core/aliases.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAiC5C,QAAA,MAAM,wBAAwB,GAAI,eAE/B;IACD,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B,KAAG,MAAM,GAAG,SAAmF,CAAC;AAEjG,QAAA,MAAM,kBAAkB,GAAI,cAAc;IAAE,QAAQ,CAAC,EAAE,cAAc,CAAA;CAAE;;CAUtE,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { BuildContext } from '../create-build-context';
2
+ /** The `@strapi/strapi` dependencies that `src/admin.ts` imports, so no plugin walk finds them */
3
+ declare const HOST_ADMIN_PACKAGES: string[];
4
+ type ScanContext = Pick<BuildContext, 'cwd' | 'runtimeDir' | 'plugins' | 'customisations'>;
5
+ /**
6
+ * The directories Tailwind scans for class names. Tailwind never looks in `node_modules`, so the
7
+ * stylesheet must name every directory that holds admin code.
8
+ *
9
+ * @param dev - true for the Vite development server, which serves `admin/src`. Tailwind must scan
10
+ * what Vite serves. Every other case scans `dist`
11
+ */
12
+ declare const getScanRoots: (ctx: ScanContext, dev: boolean) => Promise<string[]>;
13
+ /**
14
+ * Converts a system path to the glob form the `@source` lines need. A glob separator is a forward
15
+ * slash on every platform, Windows included
16
+ */
17
+ declare const toGlobPath: (value: string) => string;
18
+ export { getScanRoots, toGlobPath, HOST_ADMIN_PACKAGES };
19
+ export type { ScanContext };
20
+ //# sourceMappingURL=scan-roots.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-roots.d.ts","sourceRoot":"","sources":["../../../src/node/core/scan-roots.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,kGAAkG;AAClG,QAAA,MAAM,mBAAmB,UASxB,CAAC;AAEF,KAAK,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,KAAK,GAAG,YAAY,GAAG,SAAS,GAAG,gBAAgB,CAAC,CAAC;AAE3F;;;;;;GAMG;AACH,QAAA,MAAM,YAAY,GAAU,KAAK,WAAW,EAAE,KAAK,OAAO,KAAG,OAAO,CAAC,MAAM,EAAE,CA8C5E,CAAC;AAEF;;;GAGG;AACH,QAAA,MAAM,UAAU,GAAI,OAAO,MAAM,KAAG,MAAmC,CAAC;AAExE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,mBAAmB,EAAE,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -28,12 +28,21 @@ interface BuildContext extends BaseContext {
28
28
  * incl. internal plugins, third party plugins & local plugins
29
29
  */
30
30
  plugins: PluginMeta[];
31
+ /**
32
+ * True when the `unstableNextDesignSystem` future flag is on and the bundler is Vite. The single
33
+ * decision point for the Tailwind plugin, the host stylesheet and the scan roots
34
+ */
35
+ nextDesignSystem: boolean;
36
+ /** The directories Tailwind scans. Computed once: the stylesheet, Vite and the watcher share it */
37
+ scanRoots: string[];
31
38
  }
32
39
  interface CreateBuildContextArgs extends CLIContext {
33
40
  strapi?: Core.Strapi;
34
41
  options?: BaseOptions;
42
+ /** If true, Tailwind scans source and not `dist`. E.g. for Vite development server, which serves `admin/src` */
43
+ dev?: boolean;
35
44
  }
36
- declare const createBuildContext: ({ cwd, logger, tsconfig, strapi, options, }: CreateBuildContextArgs) => Promise<BuildContext>;
45
+ declare const createBuildContext: ({ cwd, logger, tsconfig, strapi, options, dev, }: CreateBuildContextArgs) => Promise<BuildContext>;
37
46
  export { createBuildContext };
38
47
  export type { BuildContext, CreateBuildContextArgs };
39
48
  //# sourceMappingURL=create-build-context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"create-build-context.d.ts","sourceRoot":"","sources":["../../src/node/create-build-context.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,UAAU,EAA+C,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,OAAO,EAAmB,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,YAAa,SAAQ,WAAW;IACxC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACtD;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,UAAU,EAAE,CAAC;CACvB;AAED,UAAU,sBAAuB,SAAQ,UAAU;IACjD,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB;AASD,QAAA,MAAM,kBAAkB,GAAU,6CAM/B,sBAAsB,KAAG,OAAO,CAAC,YAAY,CAwH/C,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC"}
1
+ {"version":3,"file":"create-build-context.d.ts","sourceRoot":"","sources":["../../src/node/create-build-context.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,OAAO,EAAE,UAAU,EAA+C,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,OAAO,EAAmB,MAAM,6BAA6B,CAAC;AAGvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAE3C,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,YAAa,SAAQ,WAAW;IACxC;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACtD;;OAEG;IACH,OAAO,EAAE,WAAW,CAAC;IACrB;;;OAGG;IACH,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB;;;OAGG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAC1B,mGAAmG;IACnG,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,UAAU,sBAAuB,SAAQ,UAAU;IACjD,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,gHAAgH;IAChH,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAkCD,QAAA,MAAM,kBAAkB,GAAU,kDAO/B,sBAAsB,KAAG,OAAO,CAAC,YAAY,CAgJ/C,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,YAAY,EAAE,sBAAsB,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"develop.d.ts","sourceRoot":"","sources":["../../src/node/develop.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAyB/C,UAAU,cAAe,SAAQ,UAAU;IACzC;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA4CD,QAAA,MAAM,OAAO,GAAU,qFASpB,cAAc,kBAkOhB,CAAC;AAwFF,OAAO,EAAE,OAAO,EAAE,CAAC;AACnB,YAAY,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"develop.d.ts","sourceRoot":"","sources":["../../src/node/develop.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAyB/C,UAAU,cAAe,SAAQ,UAAU;IACzC;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA4CD,QAAA,MAAM,OAAO,GAAU,qFASpB,cAAc,kBAmOhB,CAAC;AAwFF,OAAO,EAAE,OAAO,EAAE,CAAC;AACnB,YAAY,EAAE,cAAc,EAAE,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import type { BuildContext } from './create-build-context';
2
+ declare const getStylesheet: (ctx: BuildContext) => string;
3
+ declare const getEntryModule: (ctx: BuildContext) => string;
2
4
  interface GetDocumentHTMLArgs extends Pick<BuildContext, 'logger'> {
3
5
  props?: {
4
6
  entryPath?: string;
@@ -10,5 +12,5 @@ interface GetDocumentHTMLArgs extends Pick<BuildContext, 'logger'> {
10
12
  */
11
13
  declare const getDocumentHTML: ({ logger, props }: GetDocumentHTMLArgs) => string;
12
14
  declare const writeStaticClientFiles: (ctx: BuildContext) => Promise<void>;
13
- export { writeStaticClientFiles, getDocumentHTML };
15
+ export { writeStaticClientFiles, getDocumentHTML, getStylesheet, getEntryModule };
14
16
  //# sourceMappingURL=staticFiles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"staticFiles.d.ts","sourceRoot":"","sources":["../../src/node/staticFiles.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAqC3D,UAAU,mBAAoB,SAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC;IAChE,KAAK,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,QAAA,MAAM,eAAe,GAAI,mBAAwB,mBAAmB,WAKnE,CAAC;AAgBF,QAAA,MAAM,sBAAsB,GAAU,KAAK,YAAY,kBAuCtD,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"staticFiles.d.ts","sourceRoot":"","sources":["../../src/node/staticFiles.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAwC3D,QAAA,MAAM,aAAa,GAAI,KAAK,YAAY,KAAG,MAQtC,CAAC;AAEN,QAAA,MAAM,cAAc,GAAI,KAAK,YAAY,KAAG,MAkC3C,CAAC;AAEF,UAAU,mBAAoB,SAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC;IAChE,KAAK,CAAC,EAAE;QACN,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAED;;;GAGG;AACH,QAAA,MAAM,eAAe,GAAI,mBAAwB,mBAAmB,WAKnE,CAAC;AAgBF,QAAA,MAAM,sBAAsB,GAAU,KAAK,YAAY,kBA4CtD,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/node/vite/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAYrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAwJ5D,QAAA,MAAM,uBAAuB,GAAU,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAuB9E,CAAC;AAEF,QAAA,MAAM,wBAAwB,GAAU,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAmC/E,CAAC;AAMF,QAAA,MAAM,yBAAyB,GAAU,QAAQ,YAAY,EAAE,KAAK,YAAY,wBAQ/E,CAAC;AAEF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/node/vite/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAYrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AA8J5D,QAAA,MAAM,uBAAuB,GAAU,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAuB9E,CAAC;AAEF,QAAA,MAAM,wBAAwB,GAAU,KAAK,YAAY,KAAG,OAAO,CAAC,YAAY,CAmC/E,CAAC;AAMF,QAAA,MAAM,yBAAyB,GAAU,QAAQ,YAAY,EAAE,KAAK,YAAY,wBAQ/E,CAAC;AAEF,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import type { Plugin } from 'vite';
2
2
  import type { BuildContext } from '../create-build-context';
3
- declare const buildFilesPlugin: (ctx: BuildContext) => Plugin;
3
+ type BuildFilesContext = Pick<BuildContext, 'cwd' | 'runtimeDir' | 'basePath' | 'logger' | 'nextDesignSystem'>;
4
+ declare const buildFilesPlugin: (ctx: BuildFilesContext) => Plugin;
4
5
  export { buildFilesPlugin };
5
6
  //# sourceMappingURL=plugins.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../src/node/vite/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,QAAA,MAAM,gBAAgB,GAAI,KAAK,YAAY,KAAG,MA2C7C,CAAC;AAEF,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../../src/node/vite/plugins.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,KAAK,iBAAiB,GAAG,IAAI,CAC3B,YAAY,EACZ,KAAK,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,kBAAkB,CAClE,CAAC;AA4EF,QAAA,MAAM,gBAAgB,GAAI,KAAK,iBAAiB,KAAG,MACwB,CAAC;AAE5E,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plugins.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugins.test.d.ts","sourceRoot":"","sources":["../../../src/node/vite/plugins.test.ts"],"names":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var version = "5.55.0";
3
+ var version = "5.56.0";
4
4
 
5
5
  exports.version = version;
6
6
  //# sourceMappingURL=package.json.js.map
@@ -1,4 +1,4 @@
1
- var version = "5.55.0";
1
+ var version = "5.56.0";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=package.json.mjs.map
@@ -1,9 +1,17 @@
1
1
  'use strict';
2
2
 
3
+ var fs = require('node:fs');
4
+ var path = require('node:path');
5
+ var resolve_exports = require('resolve.exports');
3
6
  var adminViteAliasModules = require('./admin-vite-alias-modules.js');
4
7
  var resolveModule = require('./resolve-module.js');
5
8
  var adminViteSingletonModules = require('./admin-vite-singleton-modules.js');
6
9
 
10
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
11
+
12
+ var fs__default = /*#__PURE__*/_interopDefault(fs);
13
+ var path__default = /*#__PURE__*/_interopDefault(path);
14
+
7
15
  /**
8
16
  * Vite resolve.alias entries for the admin bundle.
9
17
  *
@@ -13,12 +21,54 @@ var adminViteSingletonModules = require('./admin-vite-singleton-modules.js');
13
21
  *
14
22
  * @internal
15
23
  */ const buildAdminViteResolveAliases = ()=>Object.fromEntries([
24
+ // Longest key first, so no key sits behind a prefix of itself
25
+ ...adminViteAliasModules.ADMIN_VITE_ALIAS_MODULES.flatMap(getSubpathEntries).sort(([a], [b])=>b.length - a.length),
16
26
  ...adminViteAliasModules.ADMIN_VITE_ALIAS_MODULES.map((mod)=>[
17
27
  mod,
18
28
  resolveModule.getModulePath(mod)
19
29
  ]),
20
30
  ...buildSingletonAliasEntries()
21
31
  ]);
32
+ /**
33
+ * Alias key and absolute target for each exports subpath a browser build can import
34
+ *
35
+ * The bare key rewrites to a directory. A directory rewrite bypasses the exports map. Thus each
36
+ * subpath needs its own exact key. Wildcards and `./package.json` get no key
37
+ *
38
+ * @internal
39
+ */ const getSubpathEntries = (mod)=>{
40
+ const root = resolveModule.getModulePath(mod);
41
+ const entries = [];
42
+ let pkg;
43
+ try {
44
+ // JSON.parse returns any, and resolve.exports reads the Package fields
45
+ pkg = JSON.parse(fs__default.default.readFileSync(path__default.default.join(root, 'package.json'), 'utf8'));
46
+ } catch {
47
+ return entries;
48
+ }
49
+ if (!pkg?.exports) {
50
+ return entries;
51
+ }
52
+ for (const subpath of Object.keys(pkg.exports)){
53
+ if (!subpath.startsWith('./') || subpath.includes('*') || subpath === './package.json') {
54
+ continue;
55
+ }
56
+ try {
57
+ const [target] = resolve_exports.exports(pkg, subpath, {
58
+ browser: true
59
+ }) ?? [];
60
+ if (target) {
61
+ entries.push([
62
+ `${mod}${subpath.slice(1)}`,
63
+ path__default.default.join(root, target)
64
+ ]);
65
+ }
66
+ } catch {
67
+ // A subpath resolve.exports refuses gets no key
68
+ }
69
+ }
70
+ return entries;
71
+ };
22
72
  /**
23
73
  * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any
24
74
  * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).
@@ -52,4 +102,5 @@ var adminViteSingletonModules = require('./admin-vite-singleton-modules.js');
52
102
  exports.buildAdminViteResolveAliases = buildAdminViteResolveAliases;
53
103
  exports.buildSingletonAliasEntries = buildSingletonAliasEntries;
54
104
  exports.getResolvableSingletonModules = getResolvableSingletonModules;
105
+ exports.getSubpathEntries = getSubpathEntries;
55
106
  //# sourceMappingURL=admin-vite-aliases.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"admin-vite-aliases.js","sources":["../../../../src/node/core/admin-vite-aliases.ts"],"sourcesContent":["import { ADMIN_VITE_ALIAS_MODULES, ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-alias-modules';\nimport { getModulePath, getModulePathFrom } from './resolve-module';\n\n/**\n * Vite resolve.alias entries for the admin bundle.\n *\n * Admin alias modules resolve from @strapi/admin's closure. CodeMirror singletons resolve\n * from @strapi/design-system's closure (the real consumer), tolerantly: optional/transitive\n * CodeMirror packages that cannot be resolved are skipped rather than crashing the build\n *\n * @internal\n */\nexport const buildAdminViteResolveAliases = (): Record<string, string> =>\n Object.fromEntries([\n ...ADMIN_VITE_ALIAS_MODULES.map((mod) => [mod, getModulePath(mod)] as const),\n ...buildSingletonAliasEntries(),\n ]);\n\n/**\n * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any\n * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).\n *\n * @internal\n */\nexport const buildSingletonAliasEntries = (): Array<readonly [string, string]> => {\n const entries: Array<readonly [string, string]> = [];\n\n for (const mod of ADMIN_VITE_SINGLETON_MODULES) {\n try {\n entries.push([mod, getModulePathFrom('@strapi/design-system', mod)] as const);\n } catch {\n // Optional/transitive CodeMirror package not resolvable here — skip it rather than\n // throwing, so a missing singleton never breaks the admin build.\n }\n }\n\n return entries;\n};\n\n/**\n * Names of the CodeMirror singletons that actually resolve from @strapi/design-system's closure.\n *\n * Mirrors buildSingletonAliasEntries so optimizeDeps.include stays in lockstep with resolve.alias:\n * a singleton that cannot be aliased must not be forced into pre-bundling either, or Vite chokes\n * on an unresolvable optimizeDeps.include entry.\n *\n * @internal\n */\nexport const getResolvableSingletonModules = (): string[] =>\n buildSingletonAliasEntries().map(([mod]) => mod);\n"],"names":["buildAdminViteResolveAliases","Object","fromEntries","ADMIN_VITE_ALIAS_MODULES","map","mod","getModulePath","buildSingletonAliasEntries","entries","ADMIN_VITE_SINGLETON_MODULES","push","getModulePathFrom","getResolvableSingletonModules"],"mappings":";;;;;;AAGA;;;;;;;;AAQC,IACM,MAAMA,4BAAAA,GAA+B,IAC1CC,MAAAA,CAAOC,WAAW,CAAC;WACdC,8CAAAA,CAAyBC,GAAG,CAAC,CAACC,GAAAA,GAAQ;AAACA,gBAAAA,GAAAA;gBAAKC,2BAAAA,CAAcD,GAAAA;AAAK,aAAA,CAAA;AAC/DE,QAAAA,GAAAA,0BAAAA;KACJ;AAEH;;;;;UAMaA,0BAAAA,GAA6B,IAAA;AACxC,IAAA,MAAMC,UAA4C,EAAE;IAEpD,KAAK,MAAMH,OAAOI,sDAAAA,CAA8B;QAC9C,IAAI;AACFD,YAAAA,OAAAA,CAAQE,IAAI,CAAC;AAACL,gBAAAA,GAAAA;AAAKM,gBAAAA,+BAAAA,CAAkB,uBAAA,EAAyBN,GAAAA;AAAK,aAAA,CAAA;AACrE,QAAA,CAAA,CAAE,OAAM;;;AAGR,QAAA;AACF,IAAA;IAEA,OAAOG,OAAAA;AACT;AAEA;;;;;;;;IASO,MAAMI,6BAAAA,GAAgC,IAC3CL,0BAAAA,EAAAA,CAA6BH,GAAG,CAAC,CAAC,CAACC,GAAAA,CAAI,GAAKA,GAAAA;;;;;;"}
1
+ {"version":3,"file":"admin-vite-aliases.js","sources":["../../../../src/node/core/admin-vite-aliases.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\n\nimport { exports as resolveExports, type Package } from 'resolve.exports';\n\nimport { ADMIN_VITE_ALIAS_MODULES, ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-alias-modules';\nimport { getModulePath, getModulePathFrom } from './resolve-module';\n\n/**\n * Vite resolve.alias entries for the admin bundle.\n *\n * Admin alias modules resolve from @strapi/admin's closure. CodeMirror singletons resolve\n * from @strapi/design-system's closure (the real consumer), tolerantly: optional/transitive\n * CodeMirror packages that cannot be resolved are skipped rather than crashing the build\n *\n * @internal\n */\nexport const buildAdminViteResolveAliases = (): Record<string, string> =>\n Object.fromEntries([\n // Longest key first, so no key sits behind a prefix of itself\n ...ADMIN_VITE_ALIAS_MODULES.flatMap(getSubpathEntries).sort(([a], [b]) => b.length - a.length),\n ...ADMIN_VITE_ALIAS_MODULES.map((mod) => [mod, getModulePath(mod)] as const),\n ...buildSingletonAliasEntries(),\n ]);\n\n/**\n * Alias key and absolute target for each exports subpath a browser build can import\n *\n * The bare key rewrites to a directory. A directory rewrite bypasses the exports map. Thus each\n * subpath needs its own exact key. Wildcards and `./package.json` get no key\n *\n * @internal\n */\nexport const getSubpathEntries = (mod: string): Array<readonly [string, string]> => {\n const root = getModulePath(mod);\n const entries: Array<readonly [string, string]> = [];\n let pkg: Package | null;\n\n try {\n // JSON.parse returns any, and resolve.exports reads the Package fields\n pkg = JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8')) as Package | null;\n } catch {\n return entries;\n }\n\n if (!pkg?.exports) {\n return entries;\n }\n\n for (const subpath of Object.keys(pkg.exports)) {\n if (!subpath.startsWith('./') || subpath.includes('*') || subpath === './package.json') {\n continue;\n }\n\n try {\n const [target] = resolveExports(pkg, subpath, { browser: true }) ?? [];\n\n if (target) {\n entries.push([`${mod}${subpath.slice(1)}`, path.join(root, target)] as const);\n }\n } catch {\n // A subpath resolve.exports refuses gets no key\n }\n }\n\n return entries;\n};\n\n/**\n * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any\n * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).\n *\n * @internal\n */\nexport const buildSingletonAliasEntries = (): Array<readonly [string, string]> => {\n const entries: Array<readonly [string, string]> = [];\n\n for (const mod of ADMIN_VITE_SINGLETON_MODULES) {\n try {\n entries.push([mod, getModulePathFrom('@strapi/design-system', mod)] as const);\n } catch {\n // Optional/transitive CodeMirror package not resolvable here — skip it rather than\n // throwing, so a missing singleton never breaks the admin build.\n }\n }\n\n return entries;\n};\n\n/**\n * Names of the CodeMirror singletons that actually resolve from @strapi/design-system's closure.\n *\n * Mirrors buildSingletonAliasEntries so optimizeDeps.include stays in lockstep with resolve.alias:\n * a singleton that cannot be aliased must not be forced into pre-bundling either, or Vite chokes\n * on an unresolvable optimizeDeps.include entry.\n *\n * @internal\n */\nexport const getResolvableSingletonModules = (): string[] =>\n buildSingletonAliasEntries().map(([mod]) => mod);\n"],"names":["buildAdminViteResolveAliases","Object","fromEntries","ADMIN_VITE_ALIAS_MODULES","flatMap","getSubpathEntries","sort","a","b","length","map","mod","getModulePath","buildSingletonAliasEntries","root","entries","pkg","JSON","parse","fs","readFileSync","path","join","exports","subpath","keys","startsWith","includes","target","resolveExports","browser","push","slice","ADMIN_VITE_SINGLETON_MODULES","getModulePathFrom","getResolvableSingletonModules"],"mappings":";;;;;;;;;;;;;;AAQA;;;;;;;;AAQC,IACM,MAAMA,4BAAAA,GAA+B,IAC1CC,MAAAA,CAAOC,WAAW,CAAC;;AAEdC,QAAAA,GAAAA,8CAAAA,CAAyBC,OAAO,CAACC,iBAAAA,CAAAA,CAAmBC,IAAI,CAAC,CAAC,CAACC,CAAAA,CAAE,EAAE,CAACC,EAAE,GAAKA,CAAAA,CAAEC,MAAM,GAAGF,EAAEE,MAAM,CAAA;WAC1FN,8CAAAA,CAAyBO,GAAG,CAAC,CAACC,GAAAA,GAAQ;AAACA,gBAAAA,GAAAA;gBAAKC,2BAAAA,CAAcD,GAAAA;AAAK,aAAA,CAAA;AAC/DE,QAAAA,GAAAA,0BAAAA;KACJ;AAEH;;;;;;;IAQO,MAAMR,iBAAAA,GAAoB,CAACM,GAAAA,GAAAA;AAChC,IAAA,MAAMG,OAAOF,2BAAAA,CAAcD,GAAAA,CAAAA;AAC3B,IAAA,MAAMI,UAA4C,EAAE;IACpD,IAAIC,GAAAA;IAEJ,IAAI;;QAEFA,GAAAA,GAAMC,IAAAA,CAAKC,KAAK,CAACC,mBAAAA,CAAGC,YAAY,CAACC,qBAAAA,CAAKC,IAAI,CAACR,IAAAA,EAAM,cAAA,CAAA,EAAiB,MAAA,CAAA,CAAA;AACpE,IAAA,CAAA,CAAE,OAAM;QACN,OAAOC,OAAAA;AACT,IAAA;IAEA,IAAI,CAACC,KAAKO,OAAAA,EAAS;QACjB,OAAOR,OAAAA;AACT,IAAA;AAEA,IAAA,KAAK,MAAMS,OAAAA,IAAWvB,MAAAA,CAAOwB,IAAI,CAACT,GAAAA,CAAIO,OAAO,CAAA,CAAG;QAC9C,IAAI,CAACC,OAAAA,CAAQE,UAAU,CAAC,IAAA,CAAA,IAASF,QAAQG,QAAQ,CAAC,GAAA,CAAA,IAAQH,OAAAA,KAAY,gBAAA,EAAkB;AACtF,YAAA;AACF,QAAA;QAEA,IAAI;AACF,YAAA,MAAM,CAACI,MAAAA,CAAO,GAAGC,uBAAAA,CAAeb,KAAKQ,OAAAA,EAAS;gBAAEM,OAAAA,EAAS;AAAK,aAAA,CAAA,IAAM,EAAE;AAEtE,YAAA,IAAIF,MAAAA,EAAQ;AACVb,gBAAAA,OAAAA,CAAQgB,IAAI,CAAC;AAAC,oBAAA,CAAA,EAAGpB,GAAAA,CAAAA,EAAMa,OAAAA,CAAQQ,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI;oBAAEX,qBAAAA,CAAKC,IAAI,CAACR,IAAAA,EAAMc,MAAAA;AAAQ,iBAAA,CAAA;AACrE,YAAA;AACF,QAAA,CAAA,CAAE,OAAM;;AAER,QAAA;AACF,IAAA;IAEA,OAAOb,OAAAA;AACT;AAEA;;;;;UAMaF,0BAAAA,GAA6B,IAAA;AACxC,IAAA,MAAME,UAA4C,EAAE;IAEpD,KAAK,MAAMJ,OAAOsB,sDAAAA,CAA8B;QAC9C,IAAI;AACFlB,YAAAA,OAAAA,CAAQgB,IAAI,CAAC;AAACpB,gBAAAA,GAAAA;AAAKuB,gBAAAA,+BAAAA,CAAkB,uBAAA,EAAyBvB,GAAAA;AAAK,aAAA,CAAA;AACrE,QAAA,CAAA,CAAE,OAAM;;;AAGR,QAAA;AACF,IAAA;IAEA,OAAOI,OAAAA;AACT;AAEA;;;;;;;;IASO,MAAMoB,6BAAAA,GAAgC,IAC3CtB,0BAAAA,EAAAA,CAA6BH,GAAG,CAAC,CAAC,CAACC,GAAAA,CAAI,GAAKA,GAAAA;;;;;;;"}
@@ -1,3 +1,6 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { exports as exports$1 } from 'resolve.exports';
1
4
  import { ADMIN_VITE_ALIAS_MODULES } from './admin-vite-alias-modules.mjs';
2
5
  import { getModulePathFrom, getModulePath } from './resolve-module.mjs';
3
6
  import { ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-singleton-modules.mjs';
@@ -11,12 +14,54 @@ import { ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-singleton-modules.mjs
11
14
  *
12
15
  * @internal
13
16
  */ const buildAdminViteResolveAliases = ()=>Object.fromEntries([
17
+ // Longest key first, so no key sits behind a prefix of itself
18
+ ...ADMIN_VITE_ALIAS_MODULES.flatMap(getSubpathEntries).sort(([a], [b])=>b.length - a.length),
14
19
  ...ADMIN_VITE_ALIAS_MODULES.map((mod)=>[
15
20
  mod,
16
21
  getModulePath(mod)
17
22
  ]),
18
23
  ...buildSingletonAliasEntries()
19
24
  ]);
25
+ /**
26
+ * Alias key and absolute target for each exports subpath a browser build can import
27
+ *
28
+ * The bare key rewrites to a directory. A directory rewrite bypasses the exports map. Thus each
29
+ * subpath needs its own exact key. Wildcards and `./package.json` get no key
30
+ *
31
+ * @internal
32
+ */ const getSubpathEntries = (mod)=>{
33
+ const root = getModulePath(mod);
34
+ const entries = [];
35
+ let pkg;
36
+ try {
37
+ // JSON.parse returns any, and resolve.exports reads the Package fields
38
+ pkg = JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8'));
39
+ } catch {
40
+ return entries;
41
+ }
42
+ if (!pkg?.exports) {
43
+ return entries;
44
+ }
45
+ for (const subpath of Object.keys(pkg.exports)){
46
+ if (!subpath.startsWith('./') || subpath.includes('*') || subpath === './package.json') {
47
+ continue;
48
+ }
49
+ try {
50
+ const [target] = exports$1(pkg, subpath, {
51
+ browser: true
52
+ }) ?? [];
53
+ if (target) {
54
+ entries.push([
55
+ `${mod}${subpath.slice(1)}`,
56
+ path.join(root, target)
57
+ ]);
58
+ }
59
+ } catch {
60
+ // A subpath resolve.exports refuses gets no key
61
+ }
62
+ }
63
+ return entries;
64
+ };
20
65
  /**
21
66
  * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any
22
67
  * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).
@@ -47,5 +92,5 @@ import { ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-singleton-modules.mjs
47
92
  * @internal
48
93
  */ const getResolvableSingletonModules = ()=>buildSingletonAliasEntries().map(([mod])=>mod);
49
94
 
50
- export { buildAdminViteResolveAliases, buildSingletonAliasEntries, getResolvableSingletonModules };
95
+ export { buildAdminViteResolveAliases, buildSingletonAliasEntries, getResolvableSingletonModules, getSubpathEntries };
51
96
  //# sourceMappingURL=admin-vite-aliases.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"admin-vite-aliases.mjs","sources":["../../../../src/node/core/admin-vite-aliases.ts"],"sourcesContent":["import { ADMIN_VITE_ALIAS_MODULES, ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-alias-modules';\nimport { getModulePath, getModulePathFrom } from './resolve-module';\n\n/**\n * Vite resolve.alias entries for the admin bundle.\n *\n * Admin alias modules resolve from @strapi/admin's closure. CodeMirror singletons resolve\n * from @strapi/design-system's closure (the real consumer), tolerantly: optional/transitive\n * CodeMirror packages that cannot be resolved are skipped rather than crashing the build\n *\n * @internal\n */\nexport const buildAdminViteResolveAliases = (): Record<string, string> =>\n Object.fromEntries([\n ...ADMIN_VITE_ALIAS_MODULES.map((mod) => [mod, getModulePath(mod)] as const),\n ...buildSingletonAliasEntries(),\n ]);\n\n/**\n * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any\n * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).\n *\n * @internal\n */\nexport const buildSingletonAliasEntries = (): Array<readonly [string, string]> => {\n const entries: Array<readonly [string, string]> = [];\n\n for (const mod of ADMIN_VITE_SINGLETON_MODULES) {\n try {\n entries.push([mod, getModulePathFrom('@strapi/design-system', mod)] as const);\n } catch {\n // Optional/transitive CodeMirror package not resolvable here — skip it rather than\n // throwing, so a missing singleton never breaks the admin build.\n }\n }\n\n return entries;\n};\n\n/**\n * Names of the CodeMirror singletons that actually resolve from @strapi/design-system's closure.\n *\n * Mirrors buildSingletonAliasEntries so optimizeDeps.include stays in lockstep with resolve.alias:\n * a singleton that cannot be aliased must not be forced into pre-bundling either, or Vite chokes\n * on an unresolvable optimizeDeps.include entry.\n *\n * @internal\n */\nexport const getResolvableSingletonModules = (): string[] =>\n buildSingletonAliasEntries().map(([mod]) => mod);\n"],"names":["buildAdminViteResolveAliases","Object","fromEntries","ADMIN_VITE_ALIAS_MODULES","map","mod","getModulePath","buildSingletonAliasEntries","entries","ADMIN_VITE_SINGLETON_MODULES","push","getModulePathFrom","getResolvableSingletonModules"],"mappings":";;;;AAGA;;;;;;;;AAQC,IACM,MAAMA,4BAAAA,GAA+B,IAC1CC,MAAAA,CAAOC,WAAW,CAAC;WACdC,wBAAAA,CAAyBC,GAAG,CAAC,CAACC,GAAAA,GAAQ;AAACA,gBAAAA,GAAAA;gBAAKC,aAAAA,CAAcD,GAAAA;AAAK,aAAA,CAAA;AAC/DE,QAAAA,GAAAA,0BAAAA;KACJ;AAEH;;;;;UAMaA,0BAAAA,GAA6B,IAAA;AACxC,IAAA,MAAMC,UAA4C,EAAE;IAEpD,KAAK,MAAMH,OAAOI,4BAAAA,CAA8B;QAC9C,IAAI;AACFD,YAAAA,OAAAA,CAAQE,IAAI,CAAC;AAACL,gBAAAA,GAAAA;AAAKM,gBAAAA,iBAAAA,CAAkB,uBAAA,EAAyBN,GAAAA;AAAK,aAAA,CAAA;AACrE,QAAA,CAAA,CAAE,OAAM;;;AAGR,QAAA;AACF,IAAA;IAEA,OAAOG,OAAAA;AACT;AAEA;;;;;;;;IASO,MAAMI,6BAAAA,GAAgC,IAC3CL,0BAAAA,EAAAA,CAA6BH,GAAG,CAAC,CAAC,CAACC,GAAAA,CAAI,GAAKA,GAAAA;;;;"}
1
+ {"version":3,"file":"admin-vite-aliases.mjs","sources":["../../../../src/node/core/admin-vite-aliases.ts"],"sourcesContent":["import fs from 'node:fs';\nimport path from 'node:path';\n\nimport { exports as resolveExports, type Package } from 'resolve.exports';\n\nimport { ADMIN_VITE_ALIAS_MODULES, ADMIN_VITE_SINGLETON_MODULES } from './admin-vite-alias-modules';\nimport { getModulePath, getModulePathFrom } from './resolve-module';\n\n/**\n * Vite resolve.alias entries for the admin bundle.\n *\n * Admin alias modules resolve from @strapi/admin's closure. CodeMirror singletons resolve\n * from @strapi/design-system's closure (the real consumer), tolerantly: optional/transitive\n * CodeMirror packages that cannot be resolved are skipped rather than crashing the build\n *\n * @internal\n */\nexport const buildAdminViteResolveAliases = (): Record<string, string> =>\n Object.fromEntries([\n // Longest key first, so no key sits behind a prefix of itself\n ...ADMIN_VITE_ALIAS_MODULES.flatMap(getSubpathEntries).sort(([a], [b]) => b.length - a.length),\n ...ADMIN_VITE_ALIAS_MODULES.map((mod) => [mod, getModulePath(mod)] as const),\n ...buildSingletonAliasEntries(),\n ]);\n\n/**\n * Alias key and absolute target for each exports subpath a browser build can import\n *\n * The bare key rewrites to a directory. A directory rewrite bypasses the exports map. Thus each\n * subpath needs its own exact key. Wildcards and `./package.json` get no key\n *\n * @internal\n */\nexport const getSubpathEntries = (mod: string): Array<readonly [string, string]> => {\n const root = getModulePath(mod);\n const entries: Array<readonly [string, string]> = [];\n let pkg: Package | null;\n\n try {\n // JSON.parse returns any, and resolve.exports reads the Package fields\n pkg = JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8')) as Package | null;\n } catch {\n return entries;\n }\n\n if (!pkg?.exports) {\n return entries;\n }\n\n for (const subpath of Object.keys(pkg.exports)) {\n if (!subpath.startsWith('./') || subpath.includes('*') || subpath === './package.json') {\n continue;\n }\n\n try {\n const [target] = resolveExports(pkg, subpath, { browser: true }) ?? [];\n\n if (target) {\n entries.push([`${mod}${subpath.slice(1)}`, path.join(root, target)] as const);\n }\n } catch {\n // A subpath resolve.exports refuses gets no key\n }\n }\n\n return entries;\n};\n\n/**\n * Resolve the CodeMirror singleton aliases from @strapi/design-system's closure, skipping any\n * package that cannot be resolved (e.g. optional or transitive CodeMirror packages not installed).\n *\n * @internal\n */\nexport const buildSingletonAliasEntries = (): Array<readonly [string, string]> => {\n const entries: Array<readonly [string, string]> = [];\n\n for (const mod of ADMIN_VITE_SINGLETON_MODULES) {\n try {\n entries.push([mod, getModulePathFrom('@strapi/design-system', mod)] as const);\n } catch {\n // Optional/transitive CodeMirror package not resolvable here — skip it rather than\n // throwing, so a missing singleton never breaks the admin build.\n }\n }\n\n return entries;\n};\n\n/**\n * Names of the CodeMirror singletons that actually resolve from @strapi/design-system's closure.\n *\n * Mirrors buildSingletonAliasEntries so optimizeDeps.include stays in lockstep with resolve.alias:\n * a singleton that cannot be aliased must not be forced into pre-bundling either, or Vite chokes\n * on an unresolvable optimizeDeps.include entry.\n *\n * @internal\n */\nexport const getResolvableSingletonModules = (): string[] =>\n buildSingletonAliasEntries().map(([mod]) => mod);\n"],"names":["buildAdminViteResolveAliases","Object","fromEntries","ADMIN_VITE_ALIAS_MODULES","flatMap","getSubpathEntries","sort","a","b","length","map","mod","getModulePath","buildSingletonAliasEntries","root","entries","pkg","JSON","parse","fs","readFileSync","path","join","exports","subpath","keys","startsWith","includes","target","resolveExports","browser","push","slice","ADMIN_VITE_SINGLETON_MODULES","getModulePathFrom","getResolvableSingletonModules"],"mappings":";;;;;;;AAQA;;;;;;;;AAQC,IACM,MAAMA,4BAAAA,GAA+B,IAC1CC,MAAAA,CAAOC,WAAW,CAAC;;AAEdC,QAAAA,GAAAA,wBAAAA,CAAyBC,OAAO,CAACC,iBAAAA,CAAAA,CAAmBC,IAAI,CAAC,CAAC,CAACC,CAAAA,CAAE,EAAE,CAACC,EAAE,GAAKA,CAAAA,CAAEC,MAAM,GAAGF,EAAEE,MAAM,CAAA;WAC1FN,wBAAAA,CAAyBO,GAAG,CAAC,CAACC,GAAAA,GAAQ;AAACA,gBAAAA,GAAAA;gBAAKC,aAAAA,CAAcD,GAAAA;AAAK,aAAA,CAAA;AAC/DE,QAAAA,GAAAA,0BAAAA;KACJ;AAEH;;;;;;;IAQO,MAAMR,iBAAAA,GAAoB,CAACM,GAAAA,GAAAA;AAChC,IAAA,MAAMG,OAAOF,aAAAA,CAAcD,GAAAA,CAAAA;AAC3B,IAAA,MAAMI,UAA4C,EAAE;IACpD,IAAIC,GAAAA;IAEJ,IAAI;;QAEFA,GAAAA,GAAMC,IAAAA,CAAKC,KAAK,CAACC,EAAAA,CAAGC,YAAY,CAACC,IAAAA,CAAKC,IAAI,CAACR,IAAAA,EAAM,cAAA,CAAA,EAAiB,MAAA,CAAA,CAAA;AACpE,IAAA,CAAA,CAAE,OAAM;QACN,OAAOC,OAAAA;AACT,IAAA;IAEA,IAAI,CAACC,KAAKO,OAAAA,EAAS;QACjB,OAAOR,OAAAA;AACT,IAAA;AAEA,IAAA,KAAK,MAAMS,OAAAA,IAAWvB,MAAAA,CAAOwB,IAAI,CAACT,GAAAA,CAAIO,OAAO,CAAA,CAAG;QAC9C,IAAI,CAACC,OAAAA,CAAQE,UAAU,CAAC,IAAA,CAAA,IAASF,QAAQG,QAAQ,CAAC,GAAA,CAAA,IAAQH,OAAAA,KAAY,gBAAA,EAAkB;AACtF,YAAA;AACF,QAAA;QAEA,IAAI;AACF,YAAA,MAAM,CAACI,MAAAA,CAAO,GAAGC,SAAAA,CAAeb,KAAKQ,OAAAA,EAAS;gBAAEM,OAAAA,EAAS;AAAK,aAAA,CAAA,IAAM,EAAE;AAEtE,YAAA,IAAIF,MAAAA,EAAQ;AACVb,gBAAAA,OAAAA,CAAQgB,IAAI,CAAC;AAAC,oBAAA,CAAA,EAAGpB,GAAAA,CAAAA,EAAMa,OAAAA,CAAQQ,KAAK,CAAC,CAAA,CAAA,CAAA,CAAI;oBAAEX,IAAAA,CAAKC,IAAI,CAACR,IAAAA,EAAMc,MAAAA;AAAQ,iBAAA,CAAA;AACrE,YAAA;AACF,QAAA,CAAA,CAAE,OAAM;;AAER,QAAA;AACF,IAAA;IAEA,OAAOb,OAAAA;AACT;AAEA;;;;;UAMaF,0BAAAA,GAA6B,IAAA;AACxC,IAAA,MAAME,UAA4C,EAAE;IAEpD,KAAK,MAAMJ,OAAOsB,4BAAAA,CAA8B;QAC9C,IAAI;AACFlB,YAAAA,OAAAA,CAAQgB,IAAI,CAAC;AAACpB,gBAAAA,GAAAA;AAAKuB,gBAAAA,iBAAAA,CAAkB,uBAAA,EAAyBvB,GAAAA;AAAK,aAAA,CAAA;AACrE,QAAA,CAAA,CAAE,OAAM;;;AAGR,QAAA;AACF,IAAA;IAEA,OAAOI,OAAAA;AACT;AAEA;;;;;;;;IASO,MAAMoB,6BAAAA,GAAgC,IAC3CtB,0BAAAA,EAAAA,CAA6BH,GAAG,CAAC,CAAC,CAACC,GAAAA,CAAI,GAAKA,GAAAA;;;;"}
@@ -29,6 +29,11 @@ var path__default = /*#__PURE__*/_interopDefault(path);
29
29
  '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',
30
30
  '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src'
31
31
  };
32
+ /**
33
+ * The Enterprise sources of `@strapi/admin`. They sit beside the `admin/src` the alias names, and
34
+ * the production build compiles both into one `dist/admin`
35
+ */ const eeAdminSource = './packages/core/admin/ee/admin/src';
36
+ const getMonorepoEeAdminSource = ({ monorepo })=>monorepo?.path ? path__default.default.join(monorepo.path, eeAdminSource) : undefined;
32
37
  const getMonorepoAliases = ({ monorepo })=>{
33
38
  if (!monorepo?.path) {
34
39
  return {};
@@ -42,4 +47,5 @@ const getMonorepoAliases = ({ monorepo })=>{
42
47
  };
43
48
 
44
49
  exports.getMonorepoAliases = getMonorepoAliases;
50
+ exports.getMonorepoEeAdminSource = getMonorepoEeAdminSource;
45
51
  //# sourceMappingURL=aliases.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"aliases.js","sources":["../../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases };\n"],"names":["devAliases","getMonorepoAliases","monorepo","path","Object","fromEntries","entries","map","key","modulePath","join"],"mappings":";;;;;;;;AAGA;;;;;;;AAOC,IACD,MAAMA,UAAAA,GAAqC;IACzC,4BAAA,EAA8B,iCAAA;IAC9B,uCAAA,EAAyC,4CAAA;IACzC,sCAAA,EAAwC,2CAAA;IACxC,2CAAA,EAA6C,gDAAA;IAC7C,4BAAA,EAA8B,iCAAA;IAC9B,6BAAA,EAA+B,kCAAA;IAC/B,mCAAA,EAAqC,oCAAA;IACrC,0CAAA,EAA4C,2CAAA;IAC5C,2CAAA,EAA6C,4CAAA;IAC7C,qCAAA,EAAuC,sCAAA;IACvC,2BAAA,EAA6B,mCAAA;IAC7B,oCAAA,EAAsC,qCAAA;IACtC,+CAAA,EAAiD,gDAAA;IACjD,uCAAA,EAAyC;AAC3C,CAAA;AAEA,MAAMC,kBAAAA,GAAqB,CAAC,EAAEC,QAAQ,EAAiC,GAAA;IACrE,IAAI,CAACA,UAAUC,IAAAA,EAAM;AACnB,QAAA,OAAO,EAAC;AACV,IAAA;AAEA,IAAA,OAAOC,MAAAA,CAAOC,WAAW,CACvBD,MAAAA,CAAOE,OAAO,CAACN,UAAAA,CAAAA,CAAYO,GAAG,CAAC,CAAC,CAACC,GAAAA,EAAKC,UAAAA,CAAW,GAAA;QAC/C,OAAO;AAACD,YAAAA,GAAAA;AAAKL,YAAAA,qBAAAA,CAAKO,IAAI,CAACR,QAAAA,CAASC,IAAI,EAAEM,UAAAA;AAAY,SAAA;AACpD,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"aliases.js","sources":["../../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\n/**\n * The Enterprise sources of `@strapi/admin`. They sit beside the `admin/src` the alias names, and\n * the production build compiles both into one `dist/admin`\n */\nconst eeAdminSource = './packages/core/admin/ee/admin/src';\n\nconst getMonorepoEeAdminSource = ({\n monorepo,\n}: {\n monorepo?: StrapiMonorepo;\n}): string | undefined => (monorepo?.path ? path.join(monorepo.path, eeAdminSource) : undefined);\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases, getMonorepoEeAdminSource };\n"],"names":["devAliases","eeAdminSource","getMonorepoEeAdminSource","monorepo","path","join","undefined","getMonorepoAliases","Object","fromEntries","entries","map","key","modulePath"],"mappings":";;;;;;;;AAGA;;;;;;;AAOC,IACD,MAAMA,UAAAA,GAAqC;IACzC,4BAAA,EAA8B,iCAAA;IAC9B,uCAAA,EAAyC,4CAAA;IACzC,sCAAA,EAAwC,2CAAA;IACxC,2CAAA,EAA6C,gDAAA;IAC7C,4BAAA,EAA8B,iCAAA;IAC9B,6BAAA,EAA+B,kCAAA;IAC/B,mCAAA,EAAqC,oCAAA;IACrC,0CAAA,EAA4C,2CAAA;IAC5C,2CAAA,EAA6C,4CAAA;IAC7C,qCAAA,EAAuC,sCAAA;IACvC,2BAAA,EAA6B,mCAAA;IAC7B,oCAAA,EAAsC,qCAAA;IACtC,+CAAA,EAAiD,gDAAA;IACjD,uCAAA,EAAyC;AAC3C,CAAA;AAEA;;;AAGC,IACD,MAAMC,aAAAA,GAAgB,oCAAA;AAEtB,MAAMC,wBAAAA,GAA2B,CAAC,EAChCC,QAAQ,EAGT,GAA0BA,QAAAA,EAAUC,IAAAA,GAAOA,qBAAAA,CAAKC,IAAI,CAACF,QAAAA,CAASC,IAAI,EAAEH,aAAAA,CAAAA,GAAiBK;AAEtF,MAAMC,kBAAAA,GAAqB,CAAC,EAAEJ,QAAQ,EAAiC,GAAA;IACrE,IAAI,CAACA,UAAUC,IAAAA,EAAM;AACnB,QAAA,OAAO,EAAC;AACV,IAAA;AAEA,IAAA,OAAOI,MAAAA,CAAOC,WAAW,CACvBD,MAAAA,CAAOE,OAAO,CAACV,UAAAA,CAAAA,CAAYW,GAAG,CAAC,CAAC,CAACC,GAAAA,EAAKC,UAAAA,CAAW,GAAA;QAC/C,OAAO;AAACD,YAAAA,GAAAA;AAAKR,YAAAA,qBAAAA,CAAKC,IAAI,CAACF,QAAAA,CAASC,IAAI,EAAES,UAAAA;AAAY,SAAA;AACpD,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;;"}
@@ -23,6 +23,11 @@ import path from 'node:path';
23
23
  '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',
24
24
  '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src'
25
25
  };
26
+ /**
27
+ * The Enterprise sources of `@strapi/admin`. They sit beside the `admin/src` the alias names, and
28
+ * the production build compiles both into one `dist/admin`
29
+ */ const eeAdminSource = './packages/core/admin/ee/admin/src';
30
+ const getMonorepoEeAdminSource = ({ monorepo })=>monorepo?.path ? path.join(monorepo.path, eeAdminSource) : undefined;
26
31
  const getMonorepoAliases = ({ monorepo })=>{
27
32
  if (!monorepo?.path) {
28
33
  return {};
@@ -35,5 +40,5 @@ const getMonorepoAliases = ({ monorepo })=>{
35
40
  }));
36
41
  };
37
42
 
38
- export { getMonorepoAliases };
43
+ export { getMonorepoAliases, getMonorepoEeAdminSource };
39
44
  //# sourceMappingURL=aliases.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"aliases.mjs","sources":["../../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases };\n"],"names":["devAliases","getMonorepoAliases","monorepo","path","Object","fromEntries","entries","map","key","modulePath","join"],"mappings":";;AAGA;;;;;;;AAOC,IACD,MAAMA,UAAAA,GAAqC;IACzC,4BAAA,EAA8B,iCAAA;IAC9B,uCAAA,EAAyC,4CAAA;IACzC,sCAAA,EAAwC,2CAAA;IACxC,2CAAA,EAA6C,gDAAA;IAC7C,4BAAA,EAA8B,iCAAA;IAC9B,6BAAA,EAA+B,kCAAA;IAC/B,mCAAA,EAAqC,oCAAA;IACrC,0CAAA,EAA4C,2CAAA;IAC5C,2CAAA,EAA6C,4CAAA;IAC7C,qCAAA,EAAuC,sCAAA;IACvC,2BAAA,EAA6B,mCAAA;IAC7B,oCAAA,EAAsC,qCAAA;IACtC,+CAAA,EAAiD,gDAAA;IACjD,uCAAA,EAAyC;AAC3C,CAAA;AAEA,MAAMC,kBAAAA,GAAqB,CAAC,EAAEC,QAAQ,EAAiC,GAAA;IACrE,IAAI,CAACA,UAAUC,IAAAA,EAAM;AACnB,QAAA,OAAO,EAAC;AACV,IAAA;AAEA,IAAA,OAAOC,MAAAA,CAAOC,WAAW,CACvBD,MAAAA,CAAOE,OAAO,CAACN,UAAAA,CAAAA,CAAYO,GAAG,CAAC,CAAC,CAACC,GAAAA,EAAKC,UAAAA,CAAW,GAAA;QAC/C,OAAO;AAACD,YAAAA,GAAAA;AAAKL,YAAAA,IAAAA,CAAKO,IAAI,CAACR,QAAAA,CAASC,IAAI,EAAEM,UAAAA;AAAY,SAAA;AACpD,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"aliases.mjs","sources":["../../../../src/node/core/aliases.ts"],"sourcesContent":["import path from 'node:path';\nimport { StrapiMonorepo } from './monorepo';\n\n/**\n * The path mappings/aliases used by various tools in the monorepo to map imported modules to\n * source files in order to speed up rebuilding and avoid having a separate watcher process to build\n * from `src` to `lib`.\n *\n * This file is currently read by:\n * - Webpack when running the dev server (only when running in this monorepo)\n */\nconst devAliases: Record<string, string> = {\n '@strapi/admin/strapi-admin': './packages/core/admin/admin/src',\n '@strapi/content-releases/strapi-admin': './packages/core/content-releases/admin/src',\n '@strapi/content-manager/strapi-admin': './packages/core/content-manager/admin/src',\n '@strapi/content-type-builder/strapi-admin': './packages/core/content-type-builder/admin/src',\n '@strapi/email/strapi-admin': './packages/core/email/admin/src',\n '@strapi/upload/strapi-admin': './packages/core/upload/admin/src',\n '@strapi/plugin-cloud/strapi-admin': './packages/plugins/cloud/admin/src',\n '@strapi/plugin-color-picker/strapi-admin': './packages/plugins/color-picker/admin/src',\n '@strapi/plugin-documentation/strapi-admin': './packages/plugins/documentation/admin/src',\n '@strapi/plugin-graphql/strapi-admin': './packages/plugins/graphql/admin/src',\n '@strapi/i18n/strapi-admin': './packages/plugins/i18n/admin/src',\n '@strapi/plugin-sentry/strapi-admin': './packages/plugins/sentry/admin/src',\n '@strapi/plugin-users-permissions/strapi-admin': './packages/plugins/users-permissions/admin/src',\n '@strapi/review-workflows/strapi-admin': './packages/core/review-workflows/admin/src',\n};\n\n/**\n * The Enterprise sources of `@strapi/admin`. They sit beside the `admin/src` the alias names, and\n * the production build compiles both into one `dist/admin`\n */\nconst eeAdminSource = './packages/core/admin/ee/admin/src';\n\nconst getMonorepoEeAdminSource = ({\n monorepo,\n}: {\n monorepo?: StrapiMonorepo;\n}): string | undefined => (monorepo?.path ? path.join(monorepo.path, eeAdminSource) : undefined);\n\nconst getMonorepoAliases = ({ monorepo }: { monorepo?: StrapiMonorepo }) => {\n if (!monorepo?.path) {\n return {};\n }\n\n return Object.fromEntries(\n Object.entries(devAliases).map(([key, modulePath]) => {\n return [key, path.join(monorepo.path, modulePath)];\n })\n );\n};\n\nexport { getMonorepoAliases, getMonorepoEeAdminSource };\n"],"names":["devAliases","eeAdminSource","getMonorepoEeAdminSource","monorepo","path","join","undefined","getMonorepoAliases","Object","fromEntries","entries","map","key","modulePath"],"mappings":";;AAGA;;;;;;;AAOC,IACD,MAAMA,UAAAA,GAAqC;IACzC,4BAAA,EAA8B,iCAAA;IAC9B,uCAAA,EAAyC,4CAAA;IACzC,sCAAA,EAAwC,2CAAA;IACxC,2CAAA,EAA6C,gDAAA;IAC7C,4BAAA,EAA8B,iCAAA;IAC9B,6BAAA,EAA+B,kCAAA;IAC/B,mCAAA,EAAqC,oCAAA;IACrC,0CAAA,EAA4C,2CAAA;IAC5C,2CAAA,EAA6C,4CAAA;IAC7C,qCAAA,EAAuC,sCAAA;IACvC,2BAAA,EAA6B,mCAAA;IAC7B,oCAAA,EAAsC,qCAAA;IACtC,+CAAA,EAAiD,gDAAA;IACjD,uCAAA,EAAyC;AAC3C,CAAA;AAEA;;;AAGC,IACD,MAAMC,aAAAA,GAAgB,oCAAA;AAEtB,MAAMC,wBAAAA,GAA2B,CAAC,EAChCC,QAAQ,EAGT,GAA0BA,QAAAA,EAAUC,IAAAA,GAAOA,IAAAA,CAAKC,IAAI,CAACF,QAAAA,CAASC,IAAI,EAAEH,aAAAA,CAAAA,GAAiBK;AAEtF,MAAMC,kBAAAA,GAAqB,CAAC,EAAEJ,QAAQ,EAAiC,GAAA;IACrE,IAAI,CAACA,UAAUC,IAAAA,EAAM;AACnB,QAAA,OAAO,EAAC;AACV,IAAA;AAEA,IAAA,OAAOI,MAAAA,CAAOC,WAAW,CACvBD,MAAAA,CAAOE,OAAO,CAACV,UAAAA,CAAAA,CAAYW,GAAG,CAAC,CAAC,CAACC,GAAAA,EAAKC,UAAAA,CAAW,GAAA;QAC/C,OAAO;AAACD,YAAAA,GAAAA;AAAKR,YAAAA,IAAAA,CAAKC,IAAI,CAACF,QAAAA,CAASC,IAAI,EAAES,UAAAA;AAAY,SAAA;AACpD,IAAA,CAAA,CAAA,CAAA;AAEJ;;;;"}
@@ -0,0 +1,87 @@
1
+ 'use strict';
2
+
3
+ var node_module = require('node:module');
4
+ var path = require('node:path');
5
+ var aliases = require('./aliases.js');
6
+ var monorepo = require('./monorepo.js');
7
+
8
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
9
+
10
+ var path__default = /*#__PURE__*/_interopDefault(path);
11
+
12
+ /** The `@strapi/strapi` dependencies that `src/admin.ts` imports, so no plugin walk finds them */ const HOST_ADMIN_PACKAGES = [
13
+ '@strapi/admin',
14
+ '@strapi/content-type-builder',
15
+ '@strapi/content-manager',
16
+ '@strapi/email',
17
+ '@strapi/upload',
18
+ '@strapi/i18n',
19
+ '@strapi/content-releases',
20
+ '@strapi/review-workflows'
21
+ ];
22
+ /**
23
+ * The directories Tailwind scans for class names. Tailwind never looks in `node_modules`, so the
24
+ * stylesheet must name every directory that holds admin code.
25
+ *
26
+ * @param dev - true for the Vite development server, which serves `admin/src`. Tailwind must scan
27
+ * what Vite serves. Every other case scans `dist`
28
+ */ const getScanRoots = async (ctx, dev)=>{
29
+ const requireFromEntry = node_module.createRequire(path__default.default.join(ctx.runtimeDir, 'app.js'));
30
+ const monorepo$1 = dev ? await monorepo.loadStrapiMonorepo(ctx.cwd) : undefined;
31
+ const aliases$1 = aliases.getMonorepoAliases({
32
+ monorepo: monorepo$1
33
+ });
34
+ // Under strict pnpm the `@strapi/strapi` manifest is the only place the host packages resolve
35
+ const manifestPath = require.resolve('@strapi/strapi/package.json');
36
+ const requireFromHost = node_module.createRequire(manifestPath);
37
+ const hostRoots = HOST_ADMIN_PACKAGES.map((name)=>{
38
+ const modulePath = `${name}/strapi-admin`;
39
+ // The alias wins, because it names the directory Vite serves and not an unbuilt `dist`
40
+ return aliases$1[modulePath] ?? path__default.default.dirname(requireFromHost.resolve(modulePath));
41
+ });
42
+ const pluginRoots = ctx.plugins.map((plugin)=>{
43
+ const alias = aliases$1[plugin.modulePath];
44
+ if (alias) {
45
+ return alias;
46
+ }
47
+ try {
48
+ return path__default.default.dirname(requireFromEntry.resolve(plugin.modulePath));
49
+ } catch (error) {
50
+ // Only a missing module means the plugin is unbuilt; other errors are their own problem
51
+ if (!(error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND')) {
52
+ throw error;
53
+ }
54
+ throw new Error(`Cannot find the admin entry of the plugin "${plugin.name}". Build the plugin first`, {
55
+ cause: error
56
+ });
57
+ }
58
+ });
59
+ // The `@strapi/admin` alias names `admin/src` only, so the Enterprise tree is a second root
60
+ const eeAdminSource = aliases.getMonorepoEeAdminSource({
61
+ monorepo: monorepo$1
62
+ });
63
+ const eeRoots = eeAdminSource ? [
64
+ eeAdminSource
65
+ ] : [];
66
+ const appRoots = ctx.customisations ? [
67
+ path__default.default.dirname(ctx.customisations.path)
68
+ ] : [];
69
+ // A package can be both a host dependency and an enabled plugin
70
+ return [
71
+ ...new Set([
72
+ ...hostRoots,
73
+ ...pluginRoots,
74
+ ...eeRoots,
75
+ ...appRoots
76
+ ])
77
+ ];
78
+ };
79
+ /**
80
+ * Converts a system path to the glob form the `@source` lines need. A glob separator is a forward
81
+ * slash on every platform, Windows included
82
+ */ const toGlobPath = (value)=>value.replace(/\\/g, '/');
83
+
84
+ exports.HOST_ADMIN_PACKAGES = HOST_ADMIN_PACKAGES;
85
+ exports.getScanRoots = getScanRoots;
86
+ exports.toGlobPath = toGlobPath;
87
+ //# sourceMappingURL=scan-roots.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-roots.js","sources":["../../../../src/node/core/scan-roots.ts"],"sourcesContent":["import { createRequire } from 'node:module';\nimport path from 'node:path';\n\nimport { getMonorepoAliases, getMonorepoEeAdminSource } from './aliases';\nimport { loadStrapiMonorepo } from './monorepo';\n\nimport type { BuildContext } from '../create-build-context';\n\n/** The `@strapi/strapi` dependencies that `src/admin.ts` imports, so no plugin walk finds them */\nconst HOST_ADMIN_PACKAGES = [\n '@strapi/admin',\n '@strapi/content-type-builder',\n '@strapi/content-manager',\n '@strapi/email',\n '@strapi/upload',\n '@strapi/i18n',\n '@strapi/content-releases',\n '@strapi/review-workflows',\n];\n\ntype ScanContext = Pick<BuildContext, 'cwd' | 'runtimeDir' | 'plugins' | 'customisations'>;\n\n/**\n * The directories Tailwind scans for class names. Tailwind never looks in `node_modules`, so the\n * stylesheet must name every directory that holds admin code.\n *\n * @param dev - true for the Vite development server, which serves `admin/src`. Tailwind must scan\n * what Vite serves. Every other case scans `dist`\n */\nconst getScanRoots = async (ctx: ScanContext, dev: boolean): Promise<string[]> => {\n const requireFromEntry = createRequire(path.join(ctx.runtimeDir, 'app.js'));\n const monorepo = dev ? await loadStrapiMonorepo(ctx.cwd) : undefined;\n const aliases = getMonorepoAliases({ monorepo });\n\n // Under strict pnpm the `@strapi/strapi` manifest is the only place the host packages resolve\n const manifestPath = require.resolve('@strapi/strapi/package.json');\n const requireFromHost = createRequire(manifestPath);\n\n const hostRoots = HOST_ADMIN_PACKAGES.map((name) => {\n const modulePath = `${name}/strapi-admin`;\n\n // The alias wins, because it names the directory Vite serves and not an unbuilt `dist`\n return aliases[modulePath] ?? path.dirname(requireFromHost.resolve(modulePath));\n });\n\n const pluginRoots = ctx.plugins.map((plugin) => {\n const alias = aliases[plugin.modulePath];\n\n if (alias) {\n return alias;\n }\n\n try {\n return path.dirname(requireFromEntry.resolve(plugin.modulePath));\n } catch (error) {\n // Only a missing module means the plugin is unbuilt; other errors are their own problem\n if (!(error instanceof Error && 'code' in error && error.code === 'MODULE_NOT_FOUND')) {\n throw error;\n }\n\n throw new Error(\n `Cannot find the admin entry of the plugin \"${plugin.name}\". Build the plugin first`,\n { cause: error }\n );\n }\n });\n\n // The `@strapi/admin` alias names `admin/src` only, so the Enterprise tree is a second root\n const eeAdminSource = getMonorepoEeAdminSource({ monorepo });\n const eeRoots = eeAdminSource ? [eeAdminSource] : [];\n\n const appRoots = ctx.customisations ? [path.dirname(ctx.customisations.path)] : [];\n\n // A package can be both a host dependency and an enabled plugin\n return [...new Set([...hostRoots, ...pluginRoots, ...eeRoots, ...appRoots])];\n};\n\n/**\n * Converts a system path to the glob form the `@source` lines need. A glob separator is a forward\n * slash on every platform, Windows included\n */\nconst toGlobPath = (value: string): string => value.replace(/\\\\/g, '/');\n\nexport { getScanRoots, toGlobPath, HOST_ADMIN_PACKAGES };\nexport type { ScanContext };\n"],"names":["HOST_ADMIN_PACKAGES","getScanRoots","ctx","dev","requireFromEntry","createRequire","path","join","runtimeDir","monorepo","loadStrapiMonorepo","cwd","undefined","aliases","getMonorepoAliases","manifestPath","require","resolve","requireFromHost","hostRoots","map","name","modulePath","dirname","pluginRoots","plugins","plugin","alias","error","Error","code","cause","eeAdminSource","getMonorepoEeAdminSource","eeRoots","appRoots","customisations","Set","toGlobPath","value","replace"],"mappings":";;;;;;;;;;;AAQA,yGACMA,mBAAAA,GAAsB;AAC1B,IAAA,eAAA;AACA,IAAA,8BAAA;AACA,IAAA,yBAAA;AACA,IAAA,eAAA;AACA,IAAA,gBAAA;AACA,IAAA,cAAA;AACA,IAAA,0BAAA;AACA,IAAA;AACD;AAID;;;;;;IAOA,MAAMC,YAAAA,GAAe,OAAOC,GAAAA,EAAkBC,GAAAA,GAAAA;AAC5C,IAAA,MAAMC,mBAAmBC,yBAAAA,CAAcC,qBAAAA,CAAKC,IAAI,CAACL,GAAAA,CAAIM,UAAU,EAAE,QAAA,CAAA,CAAA;AACjE,IAAA,MAAMC,aAAWN,GAAAA,GAAM,MAAMO,2BAAAA,CAAmBR,GAAAA,CAAIS,GAAG,CAAA,GAAIC,SAAAA;AAC3D,IAAA,MAAMC,YAAUC,0BAAAA,CAAmB;AAAEL,kBAAAA;AAAS,KAAA,CAAA;;IAG9C,MAAMM,YAAAA,GAAeC,OAAAA,CAAQC,OAAO,CAAC,6BAAA,CAAA;AACrC,IAAA,MAAMC,kBAAkBb,yBAAAA,CAAcU,YAAAA,CAAAA;AAEtC,IAAA,MAAMI,SAAAA,GAAYnB,mBAAAA,CAAoBoB,GAAG,CAAC,CAACC,IAAAA,GAAAA;AACzC,QAAA,MAAMC,UAAAA,GAAa,CAAA,EAAGD,IAAAA,CAAK,aAAa,CAAC;;QAGzC,OAAOR,SAAO,CAACS,UAAAA,CAAW,IAAIhB,sBAAKiB,OAAO,CAACL,eAAAA,CAAgBD,OAAO,CAACK,UAAAA,CAAAA,CAAAA;AACrE,IAAA,CAAA,CAAA;AAEA,IAAA,MAAME,cAActB,GAAAA,CAAIuB,OAAO,CAACL,GAAG,CAAC,CAACM,MAAAA,GAAAA;AACnC,QAAA,MAAMC,KAAAA,GAAQd,SAAO,CAACa,MAAAA,CAAOJ,UAAU,CAAC;AAExC,QAAA,IAAIK,KAAAA,EAAO;YACT,OAAOA,KAAAA;AACT,QAAA;QAEA,IAAI;AACF,YAAA,OAAOrB,sBAAKiB,OAAO,CAACnB,iBAAiBa,OAAO,CAACS,OAAOJ,UAAU,CAAA,CAAA;AAChE,QAAA,CAAA,CAAE,OAAOM,KAAAA,EAAO;;YAEd,IAAI,EAAEA,KAAAA,YAAiBC,KAAAA,IAAS,MAAA,IAAUD,SAASA,KAAAA,CAAME,IAAI,KAAK,kBAAiB,CAAA,EAAI;gBACrF,MAAMF,KAAAA;AACR,YAAA;YAEA,MAAM,IAAIC,KAAAA,CACR,CAAC,2CAA2C,EAAEH,OAAOL,IAAI,CAAC,yBAAyB,CAAC,EACpF;gBAAEU,KAAAA,EAAOH;AAAM,aAAA,CAAA;AAEnB,QAAA;AACF,IAAA,CAAA,CAAA;;AAGA,IAAA,MAAMI,gBAAgBC,gCAAAA,CAAyB;AAAExB,kBAAAA;AAAS,KAAA,CAAA;AAC1D,IAAA,MAAMyB,UAAUF,aAAAA,GAAgB;AAACA,QAAAA;AAAc,KAAA,GAAG,EAAE;IAEpD,MAAMG,QAAAA,GAAWjC,GAAAA,CAAIkC,cAAc,GAAG;AAAC9B,QAAAA,qBAAAA,CAAKiB,OAAO,CAACrB,GAAAA,CAAIkC,cAAc,CAAC9B,IAAI;AAAE,KAAA,GAAG,EAAE;;IAGlF,OAAO;AAAI,QAAA,GAAA,IAAI+B,GAAAA,CAAI;AAAIlB,YAAAA,GAAAA,SAAAA;AAAcK,YAAAA,GAAAA,WAAAA;AAAgBU,YAAAA,GAAAA,OAAAA;AAAYC,YAAAA,GAAAA;AAAS,SAAA;AAAE,KAAA;AAC9E;AAEA;;;AAGC,UACKG,UAAAA,GAAa,CAACC,QAA0BA,KAAAA,CAAMC,OAAO,CAAC,KAAA,EAAO,GAAA;;;;;;"}