piral-cli 1.10.3 → 1.11.0-beta.1bddd86

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.
@@ -24,104 +24,84 @@ const testOptions = {
24
24
  };
25
25
 
26
26
  describe('New Piral Command', () => {
27
- it(
28
- 'scaffolding in an empty directory works',
29
- async () => {
30
- const dir = createTempDir();
31
- await newPiral(dir, { install: false });
32
- expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
33
- expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
34
- expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
35
- expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
36
- expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
37
- expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
38
- expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
39
- },
40
- testOptions,
41
- );
27
+ it('scaffolding in an empty directory works', testOptions, async () => {
28
+ const dir = createTempDir();
29
+ await newPiral(dir, { install: false });
30
+ expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
31
+ expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
32
+ expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
33
+ expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
34
+ expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
35
+ expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
36
+ expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
37
+ });
42
38
 
43
- it(
44
- 'scaffolding with language JS works',
45
- async () => {
46
- const dir = createTempDir();
47
- await newPiral(dir, {
48
- language: 'js',
49
- install: false,
50
- });
51
- expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
52
- expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
53
- expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeFalsy();
54
- expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeTruthy();
55
- expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
56
- expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
57
- expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
58
- },
59
- testOptions,
60
- );
39
+ it('scaffolding with language JS works', testOptions, async () => {
40
+ const dir = createTempDir();
41
+ await newPiral(dir, {
42
+ language: 'js',
43
+ install: false,
44
+ });
45
+ expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
46
+ expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
47
+ expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeFalsy();
48
+ expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeTruthy();
49
+ expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
50
+ expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
51
+ expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
52
+ });
61
53
 
62
- it(
63
- 'scaffolding with custom app name works',
64
- async () => {
65
- const dir = createTempDir();
66
- await newPiral(dir, {
67
- name: 'test-name',
68
- install: false,
69
- });
54
+ it('scaffolding with custom app name works', testOptions, async () => {
55
+ const dir = createTempDir();
56
+ await newPiral(dir, {
57
+ name: 'test-name',
58
+ install: false,
59
+ });
70
60
 
71
- expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
72
- expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
73
- expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
74
- expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
75
- expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
76
- expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
77
- expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
61
+ expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeTruthy();
62
+ expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
63
+ expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
64
+ expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
65
+ expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
66
+ expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
67
+ expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
78
68
 
79
- const packageContent = await JSON.parse(readFileSync(`${dir}/package.json`, 'utf8'));
80
- expect(packageContent.name).toBe('test-name');
81
- },
82
- testOptions,
83
- );
69
+ const packageContent = await JSON.parse(readFileSync(`${dir}/package.json`, 'utf8'));
70
+ expect(packageContent.name).toBe('test-name');
71
+ });
84
72
 
85
- it(
86
- 'scaffolding for piral-core works',
87
- async () => {
88
- const dir = createTempDir();
89
- await newPiral(dir, {
90
- framework: 'piral-core',
91
- install: false,
92
- });
93
- expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeFalsy();
94
- expect(existsSync(resolve(dir, 'node_modules/piral-core/package.json'))).toBeTruthy();
95
- expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
96
- expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
97
- expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeFalsy();
98
- expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
99
- expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
100
- expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
101
- expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
102
- },
103
- testOptions,
104
- );
73
+ it('scaffolding for piral-core works', testOptions, async () => {
74
+ const dir = createTempDir();
75
+ await newPiral(dir, {
76
+ framework: 'piral-core',
77
+ install: false,
78
+ });
79
+ expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeFalsy();
80
+ expect(existsSync(resolve(dir, 'node_modules/piral-core/package.json'))).toBeTruthy();
81
+ expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
82
+ expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
83
+ expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeFalsy();
84
+ expect(existsSync(resolve(dir, 'src/index.tsx'))).toBeTruthy();
85
+ expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
86
+ expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
87
+ expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
88
+ });
105
89
 
106
- it(
107
- 'scaffolding for piral-base works',
108
- async () => {
109
- const dir = createTempDir();
110
- await newPiral(dir, {
111
- framework: 'piral-base',
112
- install: false,
113
- });
114
- expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeFalsy();
115
- expect(existsSync(resolve(dir, 'node_modules/piral-core/package.json'))).toBeFalsy();
116
- expect(existsSync(resolve(dir, 'node_modules/piral-base/package.json'))).toBeTruthy();
117
- expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
118
- expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
119
- expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeFalsy();
120
- expect(existsSync(resolve(dir, 'src/index.ts'))).toBeTruthy();
121
- expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
122
- expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
123
- expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
124
- },
125
- testOptions,
126
- );
90
+ it('scaffolding for piral-base works', testOptions, async () => {
91
+ const dir = createTempDir();
92
+ await newPiral(dir, {
93
+ framework: 'piral-base',
94
+ install: false,
95
+ });
96
+ expect(existsSync(resolve(dir, 'node_modules/piral/package.json'))).toBeFalsy();
97
+ expect(existsSync(resolve(dir, 'node_modules/piral-core/package.json'))).toBeFalsy();
98
+ expect(existsSync(resolve(dir, 'node_modules/piral-base/package.json'))).toBeTruthy();
99
+ expect(existsSync(resolve(dir, 'package.json'))).toBeTruthy();
100
+ expect(existsSync(resolve(dir, 'tsconfig.json'))).toBeTruthy();
101
+ expect(existsSync(resolve(dir, 'src/index.jsx'))).toBeFalsy();
102
+ expect(existsSync(resolve(dir, 'src/index.ts'))).toBeTruthy();
103
+ expect(existsSync(resolve(dir, 'src/index.html'))).toBeTruthy();
104
+ expect(existsSync(resolve(dir, 'src/mocks/backend.js'))).toBeTruthy();
105
+ expect(existsSync(resolve(dir, '.npmrc'))).toBeFalsy();
106
+ });
127
107
  });
@@ -1,12 +1,14 @@
1
1
  import { DeclOptions, generateDeclaration, createDiffPlugin, Logger } from 'dets';
2
2
  import { basename, dirname, extname, join, resolve } from 'path';
3
+
3
4
  import { progress, log, logWarn, logVerbose, logInfo } from './log';
4
5
  import { ForceOverwrite } from './enums';
5
- import { retrievePiralRoot, retrievePiletsInfo, flattenExternals, validateSharedDependencies } from './package';
6
+ import { retrievePiralRoot, retrievePiletsInfo, flattenExternals } from './package';
7
+ import { getRemoteTypesTarget, validateSharedDependencies } from './package';
6
8
  import { entryModuleExtensions, piralBaseRoot, packageJson } from './constants';
7
9
  import { readText, getEntryFiles, matchFiles, createFileIfNotExists, readJson } from './io';
8
10
  import { getModulePath } from '../external';
9
- import { LogLevels } from '../types';
11
+ import { LogLevels, PiletDefinition } from '../types';
10
12
 
11
13
  const piletApiName = 'PiletApi';
12
14
 
@@ -146,6 +148,7 @@ async function createDeclarationFile(options: DeclOptions, target: string, force
146
148
  export async function createPiletDeclaration(
147
149
  piralInstances: Array<string>,
148
150
  root: string,
151
+ definition: PiletDefinition,
149
152
  entry: string,
150
153
  allowedImports: Array<string>,
151
154
  target: string,
@@ -159,15 +162,17 @@ export async function createPiletDeclaration(
159
162
  if (file) {
160
163
  const files = await getAllFiles([entry]);
161
164
  const types = findDeclaredTypings(root);
165
+ const excluded = getRemoteTypesTarget(root, definition);
162
166
  const options: DeclOptions = {
163
167
  name: piralInstance,
164
168
  root,
165
169
  files,
166
170
  types,
171
+ excluded: excluded ? [excluded] : [],
167
172
  plugins: [createDiffPlugin(file)],
168
173
  apis,
169
174
  noModuleDeclaration: true,
170
- imports: allowedImports.filter(m => !piralInstances.includes(m)),
175
+ imports: allowedImports.filter((m) => !piralInstances.includes(m)),
171
176
  logLevel,
172
177
  logger: createLogger(),
173
178
  };
@@ -7,141 +7,105 @@ const testOptions = {
7
7
  };
8
8
 
9
9
  describe('CLI package module', () => {
10
- it(
11
- 'findPackageVersion finds the current package version',
12
- async () => {
13
- const version = await findPackageVersion(process.cwd(), 'sample-piral');
14
- expect(version).toBe(cliVersion);
15
- },
16
- testOptions,
17
- );
10
+ it('findPackageVersion finds the current package version', testOptions, async () => {
11
+ const version = await findPackageVersion(process.cwd(), 'sample-piral');
12
+ expect(version).toBe(cliVersion);
13
+ });
18
14
 
19
- it(
20
- 'findPackageVersion falls back to latest',
21
- async () => {
22
- const version = await findPackageVersion(process.cwd(), 'foo-bar-not-exists');
23
- expect(version).toBe('latest');
24
- },
25
- testOptions,
26
- );
15
+ it('findPackageVersion falls back to latest', testOptions, async () => {
16
+ const version = await findPackageVersion(process.cwd(), 'foo-bar-not-exists');
17
+ expect(version).toBe('latest');
18
+ });
27
19
 
28
- it(
29
- 'getPiletsInfo returns pilets information about provided piralInfo',
30
- () => {
31
- const emptyPiletsInfo = {
32
- files: [],
20
+ it('getPiletsInfo returns pilets information about provided piralInfo', testOptions, () => {
21
+ const emptyPiletsInfo = {
22
+ files: [],
23
+ template: 'default',
24
+ scripts: {},
25
+ validators: {},
26
+ devDependencies: {},
27
+ preScaffold: '',
28
+ postScaffold: '',
29
+ packageOverrides: {},
30
+ preUpgrade: '',
31
+ postUpgrade: '',
32
+ };
33
+ let result = getPiletsInfo({});
34
+ expect(result).toStrictEqual(emptyPiletsInfo);
35
+
36
+ const piralInfo = {
37
+ pilets: {
38
+ files: ['foo.tgz', 'foo2.tgz'],
33
39
  template: 'default',
34
40
  scripts: {},
35
41
  validators: {},
36
42
  devDependencies: {},
37
43
  preScaffold: '',
38
- postScaffold: '',
39
44
  packageOverrides: {},
45
+ postScaffold: '',
40
46
  preUpgrade: '',
41
47
  postUpgrade: '',
42
- };
43
- let result = getPiletsInfo({});
44
- expect(result).toStrictEqual(emptyPiletsInfo);
45
-
46
- const piralInfo = {
47
- pilets: {
48
- files: ['foo.tgz', 'foo2.tgz'],
49
- template: 'default',
50
- scripts: {},
51
- validators: {},
52
- devDependencies: {},
53
- preScaffold: '',
54
- packageOverrides: {},
55
- postScaffold: '',
56
- preUpgrade: '',
57
- postUpgrade: '',
58
- },
59
- };
60
- result = getPiletsInfo(piralInfo);
61
- expect(result).toStrictEqual(piralInfo.pilets);
62
- },
63
- testOptions,
64
- );
48
+ },
49
+ };
50
+ result = getPiletsInfo(piralInfo);
51
+ expect(result).toStrictEqual(piralInfo.pilets);
52
+ });
65
53
 
66
- it(
67
- 'getPiralPackage returns piral package with webpack in latest version',
68
- async () => {
69
- const result = await getPiralPackage(
70
- 'app',
71
- { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
72
- '10.0.0',
73
- 'webpack',
74
- );
75
- expect(result.devDependencies['piral-cli-webpack']).toEqual('latest');
76
- },
77
- testOptions,
78
- );
54
+ it('getPiralPackage returns piral package with webpack in latest version', testOptions, async () => {
55
+ const result = await getPiralPackage(
56
+ 'app',
57
+ { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
58
+ '10.0.0',
59
+ 'webpack',
60
+ );
61
+ expect(result.devDependencies['piral-cli-webpack']).toEqual('latest');
62
+ });
79
63
 
80
- it(
81
- 'getPiralPackage returns piral package with webpack in beta version',
82
- async () => {
83
- const result = await getPiralPackage(
84
- 'app',
85
- { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
86
- '0.15.0-beta.1',
87
- 'webpack',
88
- );
89
- expect(result.devDependencies['piral-cli-webpack']).toEqual('next');
90
- },
91
- testOptions,
92
- );
64
+ it('getPiralPackage returns piral package with webpack in beta version', testOptions, async () => {
65
+ const result = await getPiralPackage(
66
+ 'app',
67
+ { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
68
+ '0.15.0-beta.1',
69
+ 'webpack',
70
+ );
71
+ expect(result.devDependencies['piral-cli-webpack']).toEqual('next');
72
+ });
93
73
 
94
- it(
95
- 'getPiralPackage returns piral package with webpack in alpha version',
96
- async () => {
97
- const result = await getPiralPackage(
98
- 'app',
99
- { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
100
- '0.15.0-alpha.1',
101
- 'webpack',
102
- );
103
- expect(result.devDependencies['piral-cli-webpack']).toEqual('canary');
104
- },
105
- testOptions,
106
- );
74
+ it('getPiralPackage returns piral package with webpack in alpha version', testOptions, async () => {
75
+ const result = await getPiralPackage(
76
+ 'app',
77
+ { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
78
+ '0.15.0-alpha.1',
79
+ 'webpack',
80
+ );
81
+ expect(result.devDependencies['piral-cli-webpack']).toEqual('canary');
82
+ });
107
83
 
108
- it(
109
- 'getPiralPackage returns piral package with webpack in existing version',
110
- async () => {
111
- const result = await getPiralPackage(
112
- 'app',
113
- { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
114
- '0.14.0',
115
- 'webpack',
116
- );
117
- expect(result.devDependencies['piral-cli-webpack']).toEqual('0.14.0');
118
- },
119
- testOptions,
120
- );
84
+ it('getPiralPackage returns piral package with webpack in existing version', testOptions, async () => {
85
+ const result = await getPiralPackage(
86
+ 'app',
87
+ { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
88
+ '0.14.0',
89
+ 'webpack',
90
+ );
91
+ expect(result.devDependencies['piral-cli-webpack']).toEqual('0.14.0');
92
+ });
121
93
 
122
- it(
123
- 'getPiralPackage returns piral package without bundler',
124
- async () => {
125
- const result = await getPiralPackage(
126
- 'app',
127
- { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
128
- '1.0.0',
129
- );
130
- expect(result.devDependencies['piral-cli-webpack']).toBeUndefined();
131
- },
132
- testOptions,
133
- );
94
+ it('getPiralPackage returns piral package without bundler', testOptions, async () => {
95
+ const result = await getPiralPackage(
96
+ 'app',
97
+ { language: 'ts', packageName: 'piral-base', reactRouterVersion: 5, reactVersion: 17 },
98
+ '1.0.0',
99
+ );
100
+ expect(result.devDependencies['piral-cli-webpack']).toBeUndefined();
101
+ });
134
102
 
135
- it(
136
- 'retrievePiletData error cases',
137
- async () => {
138
- await expect(retrievePiletData('foo', 'bar')).rejects.toThrow(
139
- '[0010] The defined Piral instance ("bar") could not be found.',
140
- );
141
- await expect(retrievePiletData('/foo', 'sample-piral')).rejects.toThrow(
142
- '[0075] Cannot find the "package.json". You need a valid package.json for your pilet.',
143
- );
144
- },
145
- testOptions,
146
- );
103
+ it('retrievePiletData error cases', testOptions, async () => {
104
+ await expect(retrievePiletData('foo', 'bar')).rejects.toThrow(
105
+ '[0010] The defined Piral instance ("bar") could not be found.',
106
+ );
107
+ await expect(retrievePiletData('/foo', 'sample-piral')).rejects.toThrow(
108
+ '[0075] Cannot find the "package.json". You need a valid package.json for your pilet.',
109
+ );
110
+ });
147
111
  });
@@ -16,11 +16,12 @@ import { makePiletExternals, makeExternals, findPackageRoot, findSpecificVersion
16
16
  import { scaffoldFromEmulatorWebsite, updateFromEmulatorWebsite, retrieveExtraTypings } from './website';
17
17
  import { getDependencies, getDependencyPackages, getDevDependencies } from './language';
18
18
  import { getDevDependencyPackages, getFrameworkDependencies } from './language';
19
- import { piralJsonSchemaUrl, filesTar, filesOnceTar, bundlerNames, packageJson } from './constants';
20
- import { frameworkLibs, declarationEntryExtensions, piralJson, piletJson } from './constants';
19
+ import { piralJsonSchemaUrl, filesTar, filesOnceTar, bundlerNames } from './constants';
20
+ import { frameworkLibs, defaultRemoteTypesTarget, packageJson } from './constants';
21
+ import { declarationEntryExtensions, piralJson, piletJson } from './constants';
21
22
  import { satisfies } from './version';
22
23
  import { getModulePath } from '../external';
23
- import { PiletsInfo, SharedDependency, PiletDefinition, AppDefinition, NpmClient } from '../types';
24
+ import type { PiletsInfo, SharedDependency, PiletDefinition, AppDefinition, NpmClient } from '../types';
24
25
  import type { SourceLanguage, PiralInstancePackageData, PiralInstanceDetails } from '../types';
25
26
  import type { Framework, FileInfo, TemplateFileLocation, PiletPackageData, PiralPackageData } from '../types';
26
27
 
@@ -236,6 +237,17 @@ async function saveRemoteTypes(generatedText: string, target: string) {
236
237
  }
237
238
  }
238
239
 
240
+ export function getRemoteTypesTarget(rootDir: string, piletDefinition: PiletDefinition) {
241
+ const { remoteTypesTarget } = piletDefinition || {};
242
+ const proposedTarget =
243
+ typeof remoteTypesTarget === 'string'
244
+ ? remoteTypesTarget
245
+ : remoteTypesTarget
246
+ ? defaultRemoteTypesTarget
247
+ : undefined;
248
+ return proposedTarget ? resolve(rootDir, proposedTarget) : undefined;
249
+ }
250
+
239
251
  async function writeRemoteTypes(
240
252
  rootDir: string,
241
253
  appPackages: Array<PiralInstancePackageData>,
@@ -243,14 +255,11 @@ async function writeRemoteTypes(
243
255
  piletDefinition: PiletDefinition,
244
256
  agent: Agent,
245
257
  ) {
246
- const { remoteTypesTarget } = piletDefinition || {};
247
- const proposedTarget =
248
- typeof remoteTypesTarget === 'string' ? remoteTypesTarget : remoteTypesTarget ? './src/remote.d.ts' : undefined;
258
+ const target = getRemoteTypesTarget(rootDir, piletDefinition);
249
259
 
250
- if (proposedTarget) {
260
+ if (target) {
251
261
  const snippets = await retrieveRemoteTypes(appPackages, piletPackage, agent);
252
262
  const generatedText = combineRemoteTypes(snippets);
253
- const target = resolve(rootDir, proposedTarget);
254
263
 
255
264
  if (generatedText) {
256
265
  await saveRemoteTypes(generatedText, target);
@@ -959,6 +968,7 @@ export async function retrievePiletData(target: string, app?: string, agent?: Ag
959
968
  peerModules: piletPackage.peerModules || [],
960
969
  ignored: checkArrayOrUndefined(piletPackage, 'preservedDependencies'),
961
970
  schema: piletDefinition?.schemaVersion,
971
+ definition: piletDefinition,
962
972
  importmap,
963
973
  apps,
964
974
  piletPackage,
@@ -68,7 +68,7 @@ export async function triggerBuildPilet({
68
68
  _,
69
69
  }: BuildPiletOptions) {
70
70
  const targetDir = dirname(entryModule);
71
- const { peerDependencies, peerModules, root, apps, piletPackage, ignored, importmap, schema } =
71
+ const { peerDependencies, peerModules, root, apps, piletPackage, ignored, importmap, schema, definition } =
72
72
  await retrievePiletData(targetDir, app);
73
73
  const schemaVersion = originalSchemaVersion || schema || config.schemaVersion || defaultSchemaVersion;
74
74
  const piralInstances = apps.map((m) => m.appPackage.name);
@@ -119,6 +119,7 @@ export async function triggerBuildPilet({
119
119
  await createPiletDeclaration(
120
120
  piralInstances,
121
121
  root,
122
+ definition,
122
123
  entryModule,
123
124
  externals,
124
125
  outDir,