@msn-control/liftoff 0.4.0 → 0.5.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 (123) hide show
  1. package/README.md +65 -224
  2. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/UPSTREAM_LICENSE.txt +21 -0
  3. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/catalog.json +520 -0
  4. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/packaged/gitignore +27 -0
  5. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/README.md +25 -0
  6. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/components.json +22 -0
  7. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/eslint.config.js +23 -0
  8. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/index.html +13 -0
  9. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/package-lock.json +6597 -0
  10. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/package.json +60 -0
  11. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/public/power-apps.svg +55 -0
  12. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/App.tsx +17 -0
  13. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/assets/react.svg +1 -0
  14. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/mode-toggle.tsx +37 -0
  15. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/badge.tsx +46 -0
  16. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/button.tsx +60 -0
  17. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/calendar.tsx +211 -0
  18. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/card.tsx +92 -0
  19. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/chart.tsx +355 -0
  20. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/checkbox.tsx +32 -0
  21. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/command.tsx +184 -0
  22. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/dialog.tsx +141 -0
  23. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/dropdown-menu.tsx +257 -0
  24. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/input.tsx +21 -0
  25. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/label.tsx +22 -0
  26. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/popover.tsx +46 -0
  27. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/progress.tsx +29 -0
  28. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/select.tsx +185 -0
  29. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/separator.tsx +26 -0
  30. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/skeleton.tsx +13 -0
  31. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/table.tsx +114 -0
  32. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/tabs.tsx +66 -0
  33. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/textarea.tsx +18 -0
  34. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/components/ui/tooltip.tsx +61 -0
  35. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/hooks/use-theme.ts +11 -0
  36. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/index.css +131 -0
  37. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/lib/utils.ts +6 -0
  38. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/main.tsx +10 -0
  39. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/pages/_layout.tsx +31 -0
  40. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/pages/home.tsx +59 -0
  41. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/pages/not-found.tsx +14 -0
  42. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/providers/query-provider.tsx +26 -0
  43. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/providers/sonner-provider.tsx +23 -0
  44. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/providers/theme-provider.tsx +64 -0
  45. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/src/router.tsx +24 -0
  46. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/tsconfig.app.json +34 -0
  47. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/tsconfig.json +13 -0
  48. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/tsconfig.node.json +26 -0
  49. package/assets/power-apps-code-app/3438c352483e40982f6c5c0fc36fd71f8e7adbbb/starter/vite.config.ts +19 -0
  50. package/assets/power-apps-code-app/README.md +27 -0
  51. package/dist/args.d.ts +33 -0
  52. package/dist/args.js +100 -38
  53. package/dist/args.js.map +1 -1
  54. package/dist/catalogs.d.ts +3 -1
  55. package/dist/catalogs.js +23 -0
  56. package/dist/catalogs.js.map +1 -1
  57. package/dist/cli.js +6 -1
  58. package/dist/cli.js.map +1 -1
  59. package/dist/code-apps-plugin.d.ts +13 -0
  60. package/dist/code-apps-plugin.js +69 -0
  61. package/dist/code-apps-plugin.js.map +1 -0
  62. package/dist/commands.d.ts +4 -0
  63. package/dist/commands.js +669 -321
  64. package/dist/commands.js.map +1 -1
  65. package/dist/file-system.d.ts +16 -1
  66. package/dist/file-system.js +320 -10
  67. package/dist/file-system.js.map +1 -1
  68. package/dist/framework-adapters.d.ts +5 -2
  69. package/dist/framework-adapters.js +5 -2
  70. package/dist/framework-adapters.js.map +1 -1
  71. package/dist/genai-templates.d.ts +6 -6
  72. package/dist/genai-templates.js +0 -3
  73. package/dist/genai-templates.js.map +1 -1
  74. package/dist/interactive.d.ts +80 -6
  75. package/dist/interactive.js +338 -142
  76. package/dist/interactive.js.map +1 -1
  77. package/dist/migrate-plan.d.ts +4 -4
  78. package/dist/migrate-plan.js +1 -1
  79. package/dist/migrate-plan.js.map +1 -1
  80. package/dist/planner.d.ts +5 -0
  81. package/dist/planner.js +197 -53
  82. package/dist/planner.js.map +1 -1
  83. package/dist/power-apps-assets.d.ts +30 -0
  84. package/dist/power-apps-assets.js +131 -0
  85. package/dist/power-apps-assets.js.map +1 -0
  86. package/dist/power-apps-templates.d.ts +3 -0
  87. package/dist/power-apps-templates.js +140 -0
  88. package/dist/power-apps-templates.js.map +1 -0
  89. package/dist/power-apps-validation.d.ts +1 -0
  90. package/dist/power-apps-validation.js +79 -0
  91. package/dist/power-apps-validation.js.map +1 -0
  92. package/dist/process-runner.js +9 -6
  93. package/dist/process-runner.js.map +1 -1
  94. package/dist/project-dependencies.d.ts +7 -4
  95. package/dist/project-dependencies.js +16 -4
  96. package/dist/project-dependencies.js.map +1 -1
  97. package/dist/published-verifier.js +1 -1
  98. package/dist/published-verifier.js.map +1 -1
  99. package/dist/standard-templates.d.ts +4 -4
  100. package/dist/standard-templates.js.map +1 -1
  101. package/dist/templates.d.ts +2 -2
  102. package/dist/templates.js +196 -50
  103. package/dist/templates.js.map +1 -1
  104. package/dist/terminal.d.ts +99 -3
  105. package/dist/terminal.js +482 -66
  106. package/dist/terminal.js.map +1 -1
  107. package/dist/types.d.ts +73 -15
  108. package/dist/workstation.d.ts +10 -5
  109. package/dist/workstation.js +25 -10
  110. package/dist/workstation.js.map +1 -1
  111. package/docs/assets/liftoff-terminal.svg +33 -0
  112. package/docs/azure-deployment.md +66 -0
  113. package/docs/cli-reference.md +128 -0
  114. package/docs/configuration-and-manifests.md +102 -0
  115. package/docs/existing-repositories.md +87 -0
  116. package/docs/getting-started.md +114 -0
  117. package/docs/prerequisites.md +99 -0
  118. package/docs/project-structure.md +119 -0
  119. package/docs/safety-and-consent.md +98 -0
  120. package/docs/spec-workflows-and-agents.md +92 -0
  121. package/docs/troubleshooting.md +133 -0
  122. package/docs/workloads.md +128 -0
  123. package/package.json +8 -2
@@ -0,0 +1,131 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { readFileSync } from 'node:fs';
3
+ import { fileURLToPath } from 'node:url';
4
+ import { powerAppsCodeAppStarter } from './catalogs.js';
5
+ const HASH_PATTERN = /^sha256:[0-9a-f]{64}$/;
6
+ const ASSET_ROOT = `../assets/power-apps-code-app/${powerAppsCodeAppStarter.commit}/`;
7
+ const catalogUrl = new URL(`${ASSET_ROOT}catalog.json`, import.meta.url);
8
+ function hash(content) {
9
+ return `sha256:${createHash('sha256').update(content).digest('hex')}`;
10
+ }
11
+ function isRecord(value) {
12
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
13
+ }
14
+ function validatePathParts(value, label) {
15
+ if (!Array.isArray(value) || value.length === 0) {
16
+ throw new Error(`${label} must be a non-empty path-part array.`);
17
+ }
18
+ return value.map((part, index) => {
19
+ if (typeof part !== 'string' ||
20
+ part.length === 0 ||
21
+ part === '.' ||
22
+ part === '..' ||
23
+ part.includes('/') ||
24
+ part.includes('\\') ||
25
+ part.includes('\0')) {
26
+ throw new Error(`${label}[${index}] is not a portable path part.`);
27
+ }
28
+ return part;
29
+ });
30
+ }
31
+ function requiredString(record, field, label) {
32
+ const value = record[field];
33
+ if (typeof value !== 'string' || value.length === 0) {
34
+ throw new Error(`${label}.${field} must be a non-empty string.`);
35
+ }
36
+ return value;
37
+ }
38
+ function parseCatalog() {
39
+ const parsed = JSON.parse(readFileSync(fileURLToPath(catalogUrl), 'utf8'));
40
+ if (!isRecord(parsed) || parsed.schemaVersion !== 1) {
41
+ throw new Error('Power Apps starter catalog must use schema version 1.');
42
+ }
43
+ if (!isRecord(parsed.source) || !isRecord(parsed.license) || !isRecord(parsed.lockfile)) {
44
+ throw new Error('Power Apps starter catalog metadata is incomplete.');
45
+ }
46
+ const source = {
47
+ repository: requiredString(parsed.source, 'repository', 'catalog.source'),
48
+ path: requiredString(parsed.source, 'path', 'catalog.source'),
49
+ commit: requiredString(parsed.source, 'commit', 'catalog.source'),
50
+ archiveSha256: requiredString(parsed.source, 'archiveSha256', 'catalog.source')
51
+ };
52
+ if (source.repository !== powerAppsCodeAppStarter.repository ||
53
+ source.path !== powerAppsCodeAppStarter.path ||
54
+ source.commit !== powerAppsCodeAppStarter.commit) {
55
+ throw new Error('Power Apps starter catalog identity does not match the pinned workload catalog.');
56
+ }
57
+ if (!HASH_PATTERN.test(source.archiveSha256)) {
58
+ throw new Error('Power Apps starter archive hash is invalid.');
59
+ }
60
+ const license = {
61
+ spdx: requiredString(parsed.license, 'spdx', 'catalog.license'),
62
+ assetPath: requiredString(parsed.license, 'assetPath', 'catalog.license'),
63
+ sha256: requiredString(parsed.license, 'sha256', 'catalog.license')
64
+ };
65
+ if (license.spdx !== 'MIT' || !HASH_PATTERN.test(license.sha256)) {
66
+ throw new Error('Power Apps starter license metadata is invalid.');
67
+ }
68
+ const lockfile = {
69
+ nodeBaseline: requiredString(parsed.lockfile, 'nodeBaseline', 'catalog.lockfile'),
70
+ npmVersion: requiredString(parsed.lockfile, 'npmVersion', 'catalog.lockfile'),
71
+ sha256: requiredString(parsed.lockfile, 'sha256', 'catalog.lockfile')
72
+ };
73
+ if (!HASH_PATTERN.test(lockfile.sha256)) {
74
+ throw new Error('Power Apps starter lockfile hash is invalid.');
75
+ }
76
+ if (!Array.isArray(parsed.files) || parsed.files.length === 0) {
77
+ throw new Error('Power Apps starter catalog files must be a non-empty array.');
78
+ }
79
+ const logicalNames = new Set();
80
+ const paths = new Set();
81
+ const files = parsed.files.map((value, index) => {
82
+ if (!isRecord(value)) {
83
+ throw new Error(`catalog.files[${index}] must be an object.`);
84
+ }
85
+ const logicalName = requiredString(value, 'logicalName', `catalog.files[${index}]`);
86
+ const pathParts = validatePathParts(value.pathParts, `catalog.files[${index}].pathParts`);
87
+ const assetPath = requiredString(value, 'assetPath', `catalog.files[${index}]`);
88
+ const sha256 = requiredString(value, 'sha256', `catalog.files[${index}]`);
89
+ const provenance = requiredString(value, 'provenance', `catalog.files[${index}]`);
90
+ if (provenance !== 'upstream' && provenance !== 'generated-lockfile') {
91
+ throw new Error(`catalog.files[${index}].provenance is invalid.`);
92
+ }
93
+ const isGitignore = pathParts.length === 1 && pathParts[0] === '.gitignore';
94
+ const expectedAssetPath = isGitignore
95
+ ? assetPath === 'packaged/gitignore'
96
+ : assetPath.startsWith('starter/');
97
+ if (!expectedAssetPath || assetPath.includes('..') || !HASH_PATTERN.test(sha256)) {
98
+ throw new Error(`catalog.files[${index}] contains unsafe asset metadata.`);
99
+ }
100
+ const pathKey = pathParts.join('\0');
101
+ if (logicalNames.has(logicalName) || paths.has(pathKey)) {
102
+ throw new Error(`Power Apps starter catalog contains duplicate entry ${logicalName}.`);
103
+ }
104
+ logicalNames.add(logicalName);
105
+ paths.add(pathKey);
106
+ return { logicalName, pathParts, assetPath, sha256, provenance };
107
+ });
108
+ return {
109
+ schemaVersion: 1,
110
+ source,
111
+ license: { spdx: 'MIT', assetPath: license.assetPath, sha256: license.sha256 },
112
+ lockfile,
113
+ files
114
+ };
115
+ }
116
+ export const powerAppsStarterCatalog = parseCatalog();
117
+ function readVerifiedAsset(assetPath, expectedHash) {
118
+ const bytes = readFileSync(fileURLToPath(new URL(`${ASSET_ROOT}${assetPath}`, import.meta.url)));
119
+ const actualHash = hash(bytes);
120
+ if (actualHash !== expectedHash) {
121
+ throw new Error(`Packaged Power Apps asset ${assetPath} failed integrity validation.`);
122
+ }
123
+ return bytes.toString('utf8');
124
+ }
125
+ export function readPowerAppsStarterAsset(asset) {
126
+ return readVerifiedAsset(asset.assetPath, asset.sha256);
127
+ }
128
+ export function readPowerAppsStarterLicense() {
129
+ return readVerifiedAsset(powerAppsStarterCatalog.license.assetPath, powerAppsStarterCatalog.license.sha256);
130
+ }
131
+ //# sourceMappingURL=power-apps-assets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power-apps-assets.js","sourceRoot":"","sources":["../src/power-apps-assets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AddArtifact } from './template-types.js';
2
+ import type { PowerAppsCodeAppProjectPlan } from './types.js';
3
+ export declare function addPowerAppsCodeAppArtifacts(add: AddArtifact, plan: PowerAppsCodeAppProjectPlan): void;
@@ -0,0 +1,140 @@
1
+ import { codeAppsPlugin } from './catalogs.js';
2
+ import { powerAppsStarterCatalog, readPowerAppsStarterAsset, readPowerAppsStarterLicense } from './power-apps-assets.js';
3
+ function isRecord(value) {
4
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
5
+ }
6
+ function renderPackageJson(content, packageName) {
7
+ const parsed = JSON.parse(content);
8
+ if (!isRecord(parsed)) {
9
+ throw new Error('Packaged Power Apps package.json must be an object.');
10
+ }
11
+ if (!isRecord(parsed.scripts)) {
12
+ throw new Error('Packaged Power Apps package.json scripts must be an object.');
13
+ }
14
+ return JSON.stringify({
15
+ ...parsed,
16
+ name: packageName,
17
+ scripts: {
18
+ ...parsed.scripts,
19
+ lint: 'eslint . --rule "react-refresh/only-export-components: off"'
20
+ }
21
+ }, null, 2);
22
+ }
23
+ function renderPackageLock(content, packageName) {
24
+ const parsed = JSON.parse(content);
25
+ if (!isRecord(parsed) || !isRecord(parsed.packages) || !isRecord(parsed.packages[''])) {
26
+ throw new Error('Packaged Power Apps package-lock.json has an unsupported shape.');
27
+ }
28
+ return JSON.stringify({
29
+ ...parsed,
30
+ name: packageName,
31
+ packages: {
32
+ ...parsed.packages,
33
+ '': {
34
+ ...parsed.packages[''],
35
+ name: packageName
36
+ }
37
+ }
38
+ }, null, 2);
39
+ }
40
+ function renderReadme(plan) {
41
+ const agents = plan.agents
42
+ .map((agent) => `${agent.label}${agent.id === plan.defaultAgent?.id ? ' (default)' : ''}`)
43
+ .join(', ');
44
+ const pluginGuidance = plan.codeAppsPlugin
45
+ ? `
46
+ ## Optional Code Apps agent plugin
47
+
48
+ This project requests the ${codeAppsPlugin.label}. In a selected agent session, add and install
49
+ only the targeted plugin:
50
+
51
+ \`\`\`text
52
+ /plugin marketplace add microsoft/power-platform-skills
53
+ /plugin install ${codeAppsPlugin.id}@${codeAppsPlugin.marketplace}
54
+ \`\`\`
55
+
56
+ Do not run \`/create-code-app\` here; Liftoff already created the application. Use the plugin's
57
+ connector and deployment skills for post-creation work.
58
+ `
59
+ : '';
60
+ return `# ${plan.projectName}
61
+
62
+ Power Apps code app generated by Mission Control Liftoff from Microsoft's official starter.
63
+
64
+ ## Start locally
65
+
66
+ \`\`\`bash
67
+ npm ci
68
+ npm run dev
69
+ \`\`\`
70
+
71
+ ## Bind to Power Apps
72
+
73
+ After dependencies are installed, initialize the local project with the packaged CLI:
74
+
75
+ \`\`\`bash
76
+ npx --no-install power-apps init
77
+ \`\`\`
78
+
79
+ Authentication, environment selection, connections, solutions, and deployment remain explicit
80
+ Microsoft Power Platform actions. Liftoff does not generate \`power.config.json\`, tenant data,
81
+ credentials, tokens, or connection identities.
82
+
83
+ ## AI workflow
84
+
85
+ - Spec workflow: ${plan.specWorkflow.label} ${plan.framework.version}
86
+ - AI coding agents: ${agents}
87
+ - Microsoft Code Apps preview plugin: ${plan.codeAppsPlugin ? 'requested' : 'not requested'}
88
+
89
+ ## Quality checks
90
+
91
+ \`\`\`bash
92
+ npm run lint
93
+ npm run build
94
+ liftoff validate
95
+ liftoff doctor
96
+ \`\`\`
97
+ ${pluginGuidance}
98
+ ## Source
99
+
100
+ - Repository: ${plan.starter.repository}
101
+ - Template: \`${plan.starter.path}\`
102
+ - Commit: \`${plan.starter.commit}\`
103
+ - License: MIT; see \`THIRD_PARTY_NOTICES.md\`
104
+ `;
105
+ }
106
+ function renderAttribution(plan) {
107
+ return `# Third-party notices
108
+
109
+ ## Microsoft PowerAppsCodeApps starter
110
+
111
+ This project includes files derived from:
112
+
113
+ - Repository: ${plan.starter.repository}
114
+ - Path: \`${plan.starter.path}\`
115
+ - Commit: \`${plan.starter.commit}\`
116
+ - License: MIT
117
+
118
+ Liftoff replaces the starter package name, supplies a deterministic generated lockfile, adjusts
119
+ the lint command for starter modules that intentionally export shared variants or context, and
120
+ replaces the starter README with workload and environment-binding guidance. Other starter files
121
+ are packaged byte-for-byte from the recorded commit.
122
+
123
+ ${readPowerAppsStarterLicense().trimEnd()}
124
+ `;
125
+ }
126
+ export function addPowerAppsCodeAppArtifacts(add, plan) {
127
+ for (const asset of powerAppsStarterCatalog.files) {
128
+ const source = readPowerAppsStarterAsset(asset);
129
+ const content = asset.logicalName === 'power-apps-package'
130
+ ? renderPackageJson(source, plan.packageName)
131
+ : asset.logicalName === 'power-apps-lock'
132
+ ? renderPackageLock(source, plan.packageName)
133
+ : asset.logicalName === 'power-apps-readme'
134
+ ? renderReadme(plan)
135
+ : source;
136
+ add(asset.logicalName, 'power-apps-starter', asset.pathParts, content);
137
+ }
138
+ add('power-apps-attribution', 'documentation', ['THIRD_PARTY_NOTICES.md'], renderAttribution(plan));
139
+ }
140
+ //# sourceMappingURL=power-apps-templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power-apps-templates.js","sourceRoot":"","sources":["../src/power-apps-templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC5B,MAAM,wBAAwB,CAAC;AAIhC,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,WAAmB;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;IAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,GAAG,MAAM;QACT,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE;YACP,GAAG,MAAM,CAAC,OAAO;YACjB,IAAI,EAAE,6DAA6D;SACpE;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,WAAmB;IAC7D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAY,CAAC;IAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACtF,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,GAAG,MAAM;QACT,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE;YACR,GAAG,MAAM,CAAC,QAAQ;YAClB,EAAE,EAAE;gBACF,GAAG,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACtB,IAAI,EAAE,WAAW;aAClB;SACF;KACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,IAAiC;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM;SACvB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;SACzF,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc;QACxC,CAAC,CAAC;;;4BAGsB,cAAc,CAAC,KAAK;;;;;kBAK9B,cAAc,CAAC,EAAE,IAAI,cAAc,CAAC,WAAW;;;;;CAKhE;QACG,CAAC,CAAC,EAAE,CAAC;IACP,OAAO,KAAK,IAAI,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;mBAyBX,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO;sBAC9C,MAAM;wCACY,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe;;;;;;;;;;EAUzF,cAAc;;;gBAGA,IAAI,CAAC,OAAO,CAAC,UAAU;gBACvB,IAAI,CAAC,OAAO,CAAC,IAAI;cACnB,IAAI,CAAC,OAAO,CAAC,MAAM;;CAEhC,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAiC;IAC1D,OAAO;;;;;;gBAMO,IAAI,CAAC,OAAO,CAAC,UAAU;YAC3B,IAAI,CAAC,OAAO,CAAC,IAAI;cACf,IAAI,CAAC,OAAO,CAAC,MAAM;;;;;;;;EAQ/B,2BAA2B,EAAE,CAAC,OAAO,EAAE;CACxC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,GAAgB,EAChB,IAAiC;IAEjC,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,KAAK,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,KAAK,oBAAoB;YACxD,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC;YAC7C,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,iBAAiB;gBACvC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC;gBAC7C,CAAC,CAAC,KAAK,CAAC,WAAW,KAAK,mBAAmB;oBACzC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;oBACpB,CAAC,CAAC,MAAM,CAAC;QACf,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,oBAAoB,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IACD,GAAG,CACD,wBAAwB,EACxB,eAAe,EACf,CAAC,wBAAwB,CAAC,EAC1B,iBAAiB,CAAC,IAAI,CAAC,CACxB,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function verifyPowerAppsPackageMetadata(projectRoot: string): Promise<string[]>;
@@ -0,0 +1,79 @@
1
+ import { readFile } from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ function isRecord(value) {
4
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
5
+ }
6
+ export async function verifyPowerAppsPackageMetadata(projectRoot) {
7
+ const packagePath = path.join(projectRoot, 'package.json');
8
+ const lockPath = path.join(projectRoot, 'package-lock.json');
9
+ let packageJson;
10
+ let lockJson;
11
+ try {
12
+ [packageJson, lockJson] = await Promise.all([
13
+ readFile(packagePath, 'utf8').then((content) => JSON.parse(content)),
14
+ readFile(lockPath, 'utf8').then((content) => JSON.parse(content))
15
+ ]);
16
+ }
17
+ catch (error) {
18
+ return [`Unable to read Power Apps package metadata: ${error instanceof Error ? error.message : String(error)}`];
19
+ }
20
+ if (!isRecord(packageJson)) {
21
+ return ['package.json must be a JSON object.'];
22
+ }
23
+ if (!isRecord(lockJson)) {
24
+ return ['package-lock.json must be a JSON object.'];
25
+ }
26
+ const dependencies = packageJson.dependencies;
27
+ const devDependencies = packageJson.devDependencies;
28
+ const issues = [];
29
+ const sdkRange = isRecord(dependencies) ? dependencies['@microsoft/power-apps'] : undefined;
30
+ const viteRange = isRecord(devDependencies) ? devDependencies['@microsoft/power-apps-vite'] : undefined;
31
+ if (typeof sdkRange !== 'string') {
32
+ issues.push('package.json must declare @microsoft/power-apps.');
33
+ }
34
+ if (typeof viteRange !== 'string') {
35
+ issues.push('package.json must declare @microsoft/power-apps-vite.');
36
+ }
37
+ const packages = isRecord(lockJson.packages) ? lockJson.packages : undefined;
38
+ const lockRoot = packages && isRecord(packages['']) ? packages[''] : undefined;
39
+ const lockedDependencies = lockRoot && isRecord(lockRoot.dependencies) ? lockRoot.dependencies : undefined;
40
+ const lockedDevDependencies = lockRoot && isRecord(lockRoot.devDependencies) ? lockRoot.devDependencies : undefined;
41
+ if (typeof packageJson.name !== 'string' ||
42
+ packageJson.name.length === 0 ||
43
+ lockJson.name !== packageJson.name ||
44
+ lockRoot?.name !== packageJson.name) {
45
+ issues.push('package.json and package-lock.json must record the same project name.');
46
+ }
47
+ if (typeof sdkRange === 'string' && lockedDependencies?.['@microsoft/power-apps'] !== sdkRange) {
48
+ issues.push('package-lock.json must lock the declared @microsoft/power-apps range.');
49
+ }
50
+ if (typeof viteRange === 'string' && lockedDevDependencies?.['@microsoft/power-apps-vite'] !== viteRange) {
51
+ issues.push('package-lock.json must lock the declared @microsoft/power-apps-vite range.');
52
+ }
53
+ const sdkPackage = packages && isRecord(packages['node_modules/@microsoft/power-apps'])
54
+ ? packages['node_modules/@microsoft/power-apps']
55
+ : undefined;
56
+ const vitePackage = packages && isRecord(packages['node_modules/@microsoft/power-apps-vite'])
57
+ ? packages['node_modules/@microsoft/power-apps-vite']
58
+ : undefined;
59
+ const cliPackage = packages && isRecord(packages['node_modules/@microsoft/power-apps-cli'])
60
+ ? packages['node_modules/@microsoft/power-apps-cli']
61
+ : undefined;
62
+ const sdkDependencies = sdkPackage && isRecord(sdkPackage.dependencies)
63
+ ? sdkPackage.dependencies
64
+ : undefined;
65
+ const cliBin = cliPackage && isRecord(cliPackage.bin) ? cliPackage.bin : undefined;
66
+ if (!sdkPackage || typeof sdkPackage.version !== 'string') {
67
+ issues.push('package-lock.json must include the @microsoft/power-apps package.');
68
+ }
69
+ if (!vitePackage || typeof vitePackage.version !== 'string') {
70
+ issues.push('package-lock.json must include the @microsoft/power-apps-vite package.');
71
+ }
72
+ if (typeof sdkDependencies?.['@microsoft/power-apps-cli'] !== 'string' ||
73
+ typeof cliPackage?.version !== 'string' ||
74
+ typeof cliBin?.['power-apps'] !== 'string') {
75
+ issues.push('package-lock.json must include the project-local power-apps CLI declaration.');
76
+ }
77
+ return issues;
78
+ }
79
+ //# sourceMappingURL=power-apps-validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power-apps-validation.js","sourceRoot":"","sources":["../src/power-apps-validation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import spawn from 'cross-spawn';
2
+ import { StringDecoder } from 'node:string_decoder';
2
3
  function displayArgument(value) {
3
4
  if (/^[A-Za-z0-9_./:@=+,-]+$/.test(value)) {
4
5
  return value;
@@ -22,6 +23,8 @@ export class NodeCommandRunner {
22
23
  let stderr = '';
23
24
  let errorCode;
24
25
  let errorMessage;
26
+ const stdoutDecoder = new StringDecoder('utf8');
27
+ const stderrDecoder = new StringDecoder('utf8');
25
28
  const child = spawn(command.executable, command.args, {
26
29
  cwd: options.cwd,
27
30
  env: options.env ? { ...process.env, ...options.env } : process.env,
@@ -37,6 +40,8 @@ export class NodeCommandRunner {
37
40
  if (timer) {
38
41
  clearTimeout(timer);
39
42
  }
43
+ stdout += stdoutDecoder.end();
44
+ stderr += stderrDecoder.end();
40
45
  resolve({
41
46
  command,
42
47
  displayCommand,
@@ -50,17 +55,15 @@ export class NodeCommandRunner {
50
55
  });
51
56
  };
52
57
  child.stdout?.on('data', (chunk) => {
53
- const text = chunk.toString();
54
- stdout += text;
58
+ stdout += typeof chunk === 'string' ? chunk : stdoutDecoder.write(chunk);
55
59
  if (options.stream) {
56
- (options.stdout ?? process.stdout).write(text);
60
+ (options.stdout ?? process.stdout).write(chunk);
57
61
  }
58
62
  });
59
63
  child.stderr?.on('data', (chunk) => {
60
- const text = chunk.toString();
61
- stderr += text;
64
+ stderr += typeof chunk === 'string' ? chunk : stderrDecoder.write(chunk);
62
65
  if (options.stream) {
63
- (options.stderr ?? process.stderr).write(text);
66
+ (options.stderr ?? process.stderr).write(chunk);
64
67
  }
65
68
  });
66
69
  child.on('error', (error) => {
@@ -1 +1 @@
1
- {"version":3,"file":"process-runner.js","sourceRoot":"","sources":["../src/process-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-runner.js","sourceRoot":"","sources":["../src/process-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA6BpD,SAAS,eAAe,CAAC,KAAa;IACpC,IAAI,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAwB,EAAE,gBAAgB,GAAa,EAAE;IACrF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3C,OAAO;QACL,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC;QACnC,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;KACzG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,MAAM,OAAO,iBAAiB;IAC5B,KAAK,CAAC,GAAG,CAAC,OAAwB,EAAE,OAAO,GAAsB,EAAE;QACjE,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACxE,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,IAAI,QAAQ,GAAG,KAAK,CAAC;YACrB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,SAA6B,CAAC;YAClC,IAAI,YAAgC,CAAC;YACrC,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;YAChD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;gBACpD,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG;gBACnE,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;gBACjC,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,CAAC,MAAqB,EAAE,MAA6B,EAAE,EAAE;gBACtE,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC;gBACf,IAAI,KAAK,EAAE,CAAC;oBACV,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBACD,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,CAAC;gBAC9B,MAAM,IAAI,aAAa,CAAC,GAAG,EAAE,CAAC;gBAC9B,OAAO,CAAC;oBACN,OAAO;oBACP,cAAc;oBACd,MAAM;oBACN,MAAM;oBACN,MAAM;oBACN,MAAM;oBACN,QAAQ;oBACR,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC1C,CAAC,CAAC;YACL,CAAC,CAAC;YAEF,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAsB,EAAE,EAAE;gBAClD,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACzE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAsB,EAAE,EAAE;gBAClD,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACzE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAA4B,EAAE,EAAE;gBACjD,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;gBACvB,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAE1B,MAAM,KAAK,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC;gBACtD,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE;oBACd,QAAQ,GAAG,IAAI,CAAC;oBAChB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACxB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC;gBACvB,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  import { type CommandRunner } from './process-runner.js';
2
2
  import type { ExternalCommand, ProjectPlan } from './types.js';
3
3
  import type { RequirementProbeResult } from './workstation.js';
4
+ export { verifyPowerAppsPackageMetadata } from './power-apps-validation.js';
4
5
  export interface DependencyCommandPlan {
5
6
  id: string;
6
7
  label: string;
@@ -19,10 +20,12 @@ export interface DependencySetupResult {
19
20
  restoredMutations: string[];
20
21
  resumeCommand?: string;
21
22
  }
22
- export declare function buildDependencySetupPlan(plan: ProjectPlan, projectRoot: string, probes: RequirementProbeResult[], platform?: NodeJS.Platform): DependencySetupPlan;
23
- export declare function dependencyResumeCommand(command: DependencyCommandPlan, platform?: NodeJS.Platform): string;
24
- export declare function runDependencySetup(setup: DependencySetupPlan, projectRoot: string, runner: CommandRunner, streams: {
23
+ export interface DependencySetupExecutionOptions {
25
24
  stdout: NodeJS.WritableStream;
26
25
  stderr: NodeJS.WritableStream;
27
- }): Promise<DependencySetupResult>;
26
+ onCommand?: (command: DependencyCommandPlan) => void;
27
+ }
28
+ export declare function buildDependencySetupPlan(plan: ProjectPlan, projectRoot: string, probes: RequirementProbeResult[], platform?: NodeJS.Platform): DependencySetupPlan;
29
+ export declare function dependencyResumeCommand(command: DependencyCommandPlan, platform?: NodeJS.Platform): string;
30
+ export declare function runDependencySetup(setup: DependencySetupPlan, projectRoot: string, runner: CommandRunner, options: DependencySetupExecutionOptions): Promise<DependencySetupResult>;
28
31
  export declare function verifyDependencyLockPair(packagePath: string, lockPath: string): Promise<boolean>;
@@ -3,6 +3,7 @@ import { readFile } from 'node:fs/promises';
3
3
  import path from 'node:path';
4
4
  import { formatCommand } from './process-runner.js';
5
5
  import { readProjectFile, writeProjectFile } from './file-system.js';
6
+ export { verifyPowerAppsPackageMetadata } from './power-apps-validation.js';
6
7
  function npmExecutable(platform) {
7
8
  return platform === 'win32' ? 'npm.cmd' : 'npm';
8
9
  }
@@ -17,6 +18,16 @@ function pythonCommand(probes) {
17
18
  export function buildDependencySetupPlan(plan, projectRoot, probes, platform = process.platform) {
18
19
  const commands = [];
19
20
  const protectedPaths = [];
21
+ if (plan.workload === 'power-apps-code-app') {
22
+ commands.push({
23
+ id: 'power-apps-root',
24
+ label: 'Install Power Apps code app dependencies',
25
+ command: { executable: npmExecutable(platform), args: ['ci'] },
26
+ cwd: projectRoot
27
+ });
28
+ protectedPaths.push(['package.json'], ['package-lock.json']);
29
+ return { commands, protectedPaths };
30
+ }
20
31
  if (plan.apiStack.id === 'python-fastapi') {
21
32
  const python = pythonCommand(probes);
22
33
  const virtualPython = platform === 'win32'
@@ -40,7 +51,7 @@ export function buildDependencySetupPlan(plan, projectRoot, probes, platform = p
40
51
  cwd: projectRoot
41
52
  });
42
53
  protectedPaths.push(['backend', 'pyproject.toml']);
43
- if (plan.projectType.id === 'genai' && plan.pattern?.worker) {
54
+ if (plan.workload === 'genai' && plan.pattern.worker) {
44
55
  const requirements = ['functions', `${plan.pattern.id}-worker`, 'requirements.txt'];
45
56
  commands.push({
46
57
  id: 'python-function-worker',
@@ -114,16 +125,17 @@ export function dependencyResumeCommand(command, platform = process.platform) {
114
125
  : `cd ${JSON.stringify(command.cwd)}`;
115
126
  return `${changeDirectory} && ${formatCommand(command.command)}`;
116
127
  }
117
- export async function runDependencySetup(setup, projectRoot, runner, streams) {
128
+ export async function runDependencySetup(setup, projectRoot, runner, options) {
118
129
  const snapshots = await captureProtectedFiles(projectRoot, setup.protectedPaths);
119
130
  const completed = [];
120
131
  for (const command of setup.commands) {
132
+ options.onCommand?.(command);
121
133
  const result = await runner.run(command.command, {
122
134
  cwd: command.cwd,
123
135
  timeoutMs: 15 * 60_000,
124
136
  stream: true,
125
- stdout: streams.stdout,
126
- stderr: streams.stderr
137
+ stdout: options.stdout,
138
+ stderr: options.stderr
127
139
  });
128
140
  if (result.status !== 0 || result.timedOut) {
129
141
  const restoredMutations = await restoreMutations(projectRoot, snapshots);
@@ -1 +1 @@
1
- {"version":3,"file":"project-dependencies.js","sourceRoot":"","sources":["../src/project-dependencies.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-dependencies.js","sourceRoot":"","sources":["../src/project-dependencies.ts"],"names":[],"mappings":"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"}
@@ -85,7 +85,7 @@ export async function verifyPublishedPackage(options, dependencies = defaultDepe
85
85
  '--no-fund',
86
86
  '--ignore-scripts',
87
87
  `--registry=${CANONICAL_NPM_REGISTRY}`,
88
- `${identity.name}@${options.tag}`
88
+ `${identity.name}@${identity.version}`
89
89
  ], commandOptions);
90
90
  assertCommand(install, `Canonical npm install of ${identity.name}@${options.tag}`);
91
91
  const installedRoot = installedPackagePath(installPrefix, identity.name, dependencies.platform);
@@ -1 +1 @@
1
- {"version":3,"file":"published-verifier.js","sourceRoot":"","sources":["../src/published-verifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"published-verifier.js","sourceRoot":"","sources":["../src/published-verifier.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { AddArtifact } from './template-types.js';
2
- import type { ProjectPlan } from './types.js';
3
- export declare function addStandardStackArtifacts(add: AddArtifact, plan: ProjectPlan): void;
4
- export declare function renderStandardDockerfile(plan: ProjectPlan): string;
5
- export declare function renderStandardEnv(plan: ProjectPlan, environment?: string): string;
2
+ import type { StandardApiProjectPlan } from './types.js';
3
+ export declare function addStandardStackArtifacts(add: AddArtifact, plan: StandardApiProjectPlan): void;
4
+ export declare function renderStandardDockerfile(plan: StandardApiProjectPlan): string;
5
+ export declare function renderStandardEnv(plan: StandardApiProjectPlan, environment?: string): string;