create-ec-app 1.5.0 → 1.7.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 (34) hide show
  1. package/README.md +86 -21
  2. package/dist/cssScope.d.ts +4 -0
  3. package/dist/cssScope.d.ts.map +1 -0
  4. package/dist/cssScope.js +124 -0
  5. package/dist/cssScope.js.map +1 -0
  6. package/dist/index.js +28 -94
  7. package/dist/index.js.map +1 -1
  8. package/dist/pcf.d.ts.map +1 -1
  9. package/dist/pcf.js +13 -84
  10. package/dist/pcf.js.map +1 -1
  11. package/dist/portalContainers.d.ts +7 -0
  12. package/dist/portalContainers.d.ts.map +1 -0
  13. package/dist/portalContainers.js +118 -0
  14. package/dist/portalContainers.js.map +1 -0
  15. package/package.json +6 -3
  16. package/scripts/check-generated-css-scope.mjs +98 -37
  17. package/templates/base/src/App.tsx +1 -1
  18. package/templates/base/src/index.css +1 -4
  19. package/templates/base/src/main.tsx +1 -4
  20. package/templates/pcf/base/README.md +28 -9
  21. package/templates/pcf/base/index.ts +30 -6
  22. package/templates/pcf/base/runtime/PcfAppShell.tsx +17 -0
  23. package/templates/pcf/base/runtime/emptyStyles.js +1 -0
  24. package/templates/pcf/base/webpack.config.js +13 -0
  25. package/templates/targets/code-apps/README.md +246 -0
  26. package/templates/targets/code-apps/package.patch.json +8 -0
  27. package/templates/targets/code-apps/power.config.example.json +14 -0
  28. package/templates/targets/code-apps/vite.config.patch.ts +15 -0
  29. package/templates/targets/power-pages/src/App.patch.tsx +1 -1
  30. package/templates/targets/webresource/README.md +21 -7
  31. package/templates/ui/kendo/src/main.patch.tsx +1 -4
  32. package/templates/ui/shadcn-ui/components.json +1 -1
  33. package/templates/ui/shadcn-ui/src/index.patch.css +9 -26
  34. package/templates/base/src/runtime/EcAppShell.tsx +0 -29
package/README.md CHANGED
@@ -8,7 +8,65 @@ CLI for scaffolding Enterprisecloud React apps from layered templates.
8
8
  npm run dev -- --project-name my-app --target webresource --ui shadcn-ui --no-install
9
9
  ```
10
10
 
11
- Targets include `webresource`, `power-pages`, and `swa`. UI layers include `shadcn-ui` and `kendo`.
11
+ Targets include `webresource`, `power-pages`, `swa`, and `code-apps`. UI layers include `shadcn-ui` and `kendo`.
12
+
13
+ ## Power Apps Code Apps
14
+
15
+ Use the `code-apps` target to scaffold a React + Vite app that keeps the EC base template and adds Microsoft Power Apps code app support:
16
+
17
+ ```bash
18
+ npm run dev -- --project-name my-code-app --target code-apps --ui shadcn-ui --no-install
19
+ ```
20
+
21
+ Compared with the base template, the Code Apps target adds:
22
+
23
+ - `@microsoft/power-apps` for the Power Apps code app SDK and npm CLI
24
+ - `@microsoft/power-apps-vite` for local Play URLs, Power Apps CORS settings, and `base: "./"` build output
25
+ - `powerApps()` in `vite.config.ts` alongside the existing React, Tailwind, and `@` alias config
26
+
27
+ Code Apps use the Power Apps host, `power.config.json`, and generated SDK services for Dataverse and connector access. They should not use the `webresource` target's `src/services/AuthService.ts` or `token.json` local bearer-token pattern, and the Code Apps scaffold removes those auth artifacts if they are present during generation.
28
+
29
+ After scaffolding, initialize the app metadata and authenticate to your environment:
30
+
31
+ ```bash
32
+ npm install
33
+ npx power-apps init --display-name "My Code App" --environment-id <environment-id> --app-url http://localhost:5173
34
+ ```
35
+
36
+ `power.config.json` is intentionally not scaffolded as a real file. Microsoft’s CLI creates it during `npx power-apps init` and refuses to initialize if one already exists. The target includes `power.config.example.json` so you can see the expected shape without blocking initialization.
37
+
38
+ For local development, run:
39
+
40
+ ```bash
41
+ npm run dev
42
+ ```
43
+
44
+ Open the **Local Play** URL printed by the Power Apps Vite plugin in the same browser profile you use for your Power Platform tenant.
45
+
46
+ To deploy:
47
+
48
+ ```bash
49
+ npm run build
50
+ npx power-apps push
51
+ ```
52
+
53
+ `npx power-apps push` publishes a new version to the environment in `power.config.json` and returns a Power Apps URL when it succeeds. Microsoft still documents the older PAC CLI path (`pac code init`, `npm run build | pac code push`) for compatibility, but the npm CLI is the preferred path for new code app work.
54
+
55
+ For ALM, use a non-default solution or set a preferred solution in the environment. With the PAC CLI path you can target a specific solution using:
56
+
57
+ ```bash
58
+ pac code push --solutionName <solution-name>
59
+ ```
60
+
61
+ The generated Code Apps README links to Microsoft's [overview](https://learn.microsoft.com/en-us/power-apps/developer/code-apps/overview), [npm CLI quickstart](https://learn.microsoft.com/en-us/power-apps/developer/code-apps/how-to/npm-quickstart), [architecture](https://learn.microsoft.com/en-us/power-apps/developer/code-apps/architecture), and [ALM](https://learn.microsoft.com/en-us/power-apps/developer/code-apps/how-to/alm) documentation.
62
+
63
+ It also documents Microsoft’s Code Apps data model:
64
+
65
+ - Dataverse table data sources through generated services under `src/generated`
66
+ - Power Platform connector data sources with connection IDs or connection references
67
+ - Environment-variable references for ALM-friendly dataset/table values
68
+ - Dataverse actions/functions through `npx power-apps find-dataverse-api` and `npx power-apps add-dataverse-api`
69
+ - Runtime context through `getContext` from `@microsoft/power-apps/app`
12
70
 
13
71
  ## shadcn/ui Generation
14
72
 
@@ -18,7 +76,7 @@ The shadcn template does not vendor generated component files. During scaffoldin
18
76
  npx shadcn@latest add --all --yes --overwrite
19
77
  ```
20
78
 
21
- This keeps generated components aligned with the latest shadcn registry. The template `components.json` sets the Tailwind prefix to `ec`, which makes shadcn emit classes such as `ec:flex`.
79
+ This keeps generated components aligned with the latest shadcn registry. The template leaves Tailwind utility names unprefixed so generated JSX and CSS stay close to the upstream shadcn output.
22
80
 
23
81
  Current shadcn projects also depend on the `shadcn` package at build time because `src/index.css` imports:
24
82
 
@@ -26,23 +84,16 @@ Current shadcn projects also depend on the `shadcn` package at build time becaus
26
84
  @import "shadcn/tailwind.css";
27
85
  ```
28
86
 
29
- That shared CSS defines shadcn's Tailwind v4 custom variants and utilities, including Radix/Base UI state and orientation variants used by controls such as sliders, accordions, scroll areas, menus, and sidebars. The app build resolves this import into `dist/main.css`; PCF wrappers then bundle that built CSS from the webresource project.
87
+ That shared CSS defines shadcn's Tailwind v4 custom variants and utilities, including Radix/Base UI state and orientation variants used by controls such as sliders, accordions, scroll areas, menus, and sidebars. The app build resolves this import into `dist/main.css`.
30
88
 
31
89
  After generation, the CLI applies small compatibility fixes for app embedding:
32
90
 
33
- - Radix/Base UI portals render into the app-local portal root from `EcAppShell`.
34
- - shadcn theme selectors are scoped to `.ec-app[data-ec-app-id="<app-name>"]`.
91
+ - Radix/Base UI portals are prepared to use a PCF-local portal root when a PCF wrapper is generated.
35
92
  - Known generated selector issues are normalized so builds stay clean with current Vite/Tailwind.
36
93
 
37
94
  ## Style Scoping
38
95
 
39
- Every generated app is wrapped by `EcAppShell`:
40
-
41
- ```tsx
42
- <div className="ec-app" data-ec-app-id="my-app" data-ec-app-root="">
43
- ```
44
-
45
- Tailwind utilities are prefixed, and shadcn theme tokens are scoped by `data-ec-app-id`. This allows multiple generated apps, including nested parent/child apps with different themes, to coexist without overriding each other's theme variables.
96
+ Generated webresources use normal Tailwind/shadcn CSS by default. When a webresource is converted into a PCF wrapper, the generator creates a local PCF shell and a local `pcf-scoped.css` file in the generated PCF project. That CSS file is copied from the built `dist/main.css` with every non-keyframe selector rewritten under the `.pcf-shell-control[data-pcf-control="..."]` host selector, so Tailwind utilities, base selectors, and shadcn/Tailwind theme variables stay inside that control.
46
97
 
47
98
  ## Template Updates
48
99
 
@@ -66,10 +117,15 @@ Basic flow:
66
117
  npm run build
67
118
  ```
68
119
 
69
- 2. Run the generator and point `--pcf-dir` at the generated PCF project directory:
120
+ 2. Run the generator from the webresource root. Point `--pcf-dir` at the webresource root and `--output` at the PCF project folder you want to generate:
70
121
 
71
122
  ```bash
72
- npx create-ec-app@latest --pcf-dir ./pcf/{{ControlName}} namespace {{EC}} --constructor {{ControlName}} --display-name "Control Name"
123
+ npx create-ec-app@latest \
124
+ --pcf-dir . \
125
+ --output ./pcf/{{ControlName}} \
126
+ --namespace EC \
127
+ --constructor {{ControlName}} \
128
+ --display-name "Control Name"
73
129
  ```
74
130
 
75
131
  3. Install dependencies inside that generated PCF directory:
@@ -77,32 +133,41 @@ npx create-ec-app@latest --pcf-dir ./pcf/{{ControlName}} namespace {{EC}} --cons
77
133
  ```bash
78
134
  cd ./pcf/{{ControlName}}
79
135
  npm install
136
+ npm run build
80
137
  ```
81
138
 
82
139
  This writes a standalone PCF project to the `--pcf-dir` folder. The generated control:
83
140
 
84
141
  - imports `src/App.tsx` directly instead of wrapping built HTML in an iframe
85
- - reuses the built stylesheet from `dist/main.css`
142
+ - creates and imports `pcf-scoped.css` from the built `dist/main.css`
143
+ - scopes every non-keyframe CSS selector under the generated PCF host selector
86
144
  - creates `src/runtime/types.ts` only if that file does not already exist
87
145
  - provides a runtime object with record context and `context.webAPI` access inside the generated PCF shell, following the `PcfBase` pattern
88
146
  - mounts your React app directly into the PCF container
89
147
 
90
- Typical conversion flow from inside a generated webresource project:
148
+ Regenerate after app code or CSS changes by running the same sequence again from the webresource root:
91
149
 
92
150
  ```bash
93
- npm install
94
151
  npm run build
95
- npx create-ec-app@latest --pcf-dir ./pcf/FusionNotebookHost namespace EC --constructor FusionNotebookHost --display-name "Fusion Notebook Host"
152
+ npx create-ec-app@latest \
153
+ --pcf-dir . \
154
+ --output ./pcf/FusionNotebookHost \
155
+ --namespace EC \
156
+ --constructor FusionNotebookHost \
157
+ --display-name "Fusion Notebook Host"
96
158
  cd pcf/FusionNotebookHost
97
159
  npm install
98
160
  npm run build
99
161
  ```
100
162
 
163
+ Regeneration removes and recreates the PCF output folder, so keep durable app code in `src` and use generator templates or layers for repeatable PCF-specific changes.
164
+
101
165
  What gets generated:
102
166
 
103
167
  - a minimal PCF wrapper project under `pcf/<ConstructorName>`
104
168
  - a checked-in PCF shell stamped out from `create-ec-app/templates/pcf/base`
105
- - direct imports back to your webresource source and built CSS
169
+ - direct imports back to your webresource source
170
+ - a generated `pcf-scoped.css` file with CSS selectors scoped to the PCF control
106
171
 
107
172
  What does not happen:
108
173
 
@@ -118,7 +183,7 @@ Useful checks before shipping template changes:
118
183
  npm run build
119
184
  npm audit --audit-level=moderate --prefix templates/base
120
185
  npm audit --audit-level=moderate --prefix templates/pcf/base
121
- node scripts/check-generated-css-scope.mjs <generated-app-path>
186
+ node scripts/check-generated-css-scope.mjs <generated-pcf-control-path>
122
187
  ```
123
188
 
124
- For shadcn changes, also generate a fresh app, run `npm run build`, and verify a nested parent/child fixture if the scoping model changed.
189
+ For shadcn changes, also generate a fresh app, run `npm run build`, generate a PCF wrapper, and run the CSS scope check against the generated PCF folder.
@@ -0,0 +1,4 @@
1
+ export declare const PCF_SCOPED_CSS_FILE = "pcf-scoped.css";
2
+ export declare function scopeCssForPcf(css: string, controlName: string): string;
3
+ export declare const scopeCssVariablesForPcf: typeof scopeCssForPcf;
4
+ //# sourceMappingURL=cssScope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssScope.d.ts","sourceRoot":"","sources":["../src/cssScope.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAEpD,wBAAgB,cAAc,CAC7B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,GACjB,MAAM,CAgBR;AAED,eAAO,MAAM,uBAAuB,uBAAiB,CAAC"}
@@ -0,0 +1,124 @@
1
+ import postcss from "postcss";
2
+ export const PCF_SCOPED_CSS_FILE = "pcf-scoped.css";
3
+ export function scopeCssForPcf(css, controlName) {
4
+ const scopeSelector = `.pcf-shell-control[data-pcf-control="${escapeCssAttributeValue(controlName)}"]`;
5
+ const root = postcss.parse(css);
6
+ root.walkRules((rule) => {
7
+ if (isKeyframesRule(rule)) {
8
+ return;
9
+ }
10
+ rule.selector = scopeSelectorList(rule.selector, scopeSelector);
11
+ });
12
+ return [
13
+ "/* Generated by create-ec-app. CSS selectors are scoped to this PCF control. */",
14
+ root.toString(),
15
+ ].join("\n");
16
+ }
17
+ export const scopeCssVariablesForPcf = scopeCssForPcf;
18
+ function isKeyframesRule(rule) {
19
+ let parent = rule.parent;
20
+ while (parent) {
21
+ if (parent.type === "atrule") {
22
+ const atRule = parent;
23
+ if (atRule.name.toLowerCase().endsWith("keyframes")) {
24
+ return true;
25
+ }
26
+ }
27
+ parent = parent.parent;
28
+ }
29
+ return false;
30
+ }
31
+ function scopeSelectorList(selectorList, scopeSelector) {
32
+ const scopedSelectors = new Set();
33
+ for (const selector of splitSelectorList(selectorList)) {
34
+ for (const scopedSelector of scopeSingleSelector(selector, scopeSelector)) {
35
+ scopedSelectors.add(scopedSelector);
36
+ }
37
+ }
38
+ return [...scopedSelectors].join(", ");
39
+ }
40
+ function scopeSingleSelector(selector, scopeSelector) {
41
+ const normalized = selector.trim();
42
+ if (normalized.length === 0) {
43
+ return [];
44
+ }
45
+ if (normalized.includes(scopeSelector)) {
46
+ return [normalized];
47
+ }
48
+ if (normalized === ":root" ||
49
+ normalized === ":host" ||
50
+ normalized === "html" ||
51
+ normalized === "body" ||
52
+ normalized === "[data-ec-app-root]" ||
53
+ /^\.ec-app(?:\[.*?\])?$/.test(normalized)) {
54
+ return [scopeSelector];
55
+ }
56
+ if (normalized === "*") {
57
+ return [scopeSelector, `${scopeSelector} *`];
58
+ }
59
+ if (normalized === ".dark" ||
60
+ /^\.ec-app(?:\[.*?\])?\.dark$/.test(normalized)) {
61
+ return [`${scopeSelector}.dark`, `${scopeSelector} .dark`];
62
+ }
63
+ if (normalized.startsWith(".dark ")) {
64
+ const darkDescendant = normalized.slice(".dark".length);
65
+ return [
66
+ `${scopeSelector}.dark${darkDescendant}`,
67
+ `${scopeSelector} .dark${darkDescendant}`,
68
+ ];
69
+ }
70
+ const appDarkDescendant = normalized.match(/^\.ec-app(?:\[.*?\])?\s+\.dark(.*)$/);
71
+ if (appDarkDescendant) {
72
+ return [
73
+ `${scopeSelector}.dark${appDarkDescendant[1] ?? ""}`,
74
+ `${scopeSelector} .dark${appDarkDescendant[1] ?? ""}`,
75
+ ];
76
+ }
77
+ return [`${scopeSelector} ${normalized}`];
78
+ }
79
+ function splitSelectorList(selectorList) {
80
+ const selectors = [];
81
+ let start = 0;
82
+ let nesting = 0;
83
+ let quote = null;
84
+ let escaped = false;
85
+ for (let index = 0; index < selectorList.length; index += 1) {
86
+ const char = selectorList[index];
87
+ if (escaped) {
88
+ escaped = false;
89
+ continue;
90
+ }
91
+ if (char === "\\") {
92
+ escaped = true;
93
+ continue;
94
+ }
95
+ if (quote) {
96
+ if (char === quote) {
97
+ quote = null;
98
+ }
99
+ continue;
100
+ }
101
+ if (char === '"' || char === "'") {
102
+ quote = char;
103
+ continue;
104
+ }
105
+ if (char === "(" || char === "[") {
106
+ nesting += 1;
107
+ continue;
108
+ }
109
+ if (char === ")" || char === "]") {
110
+ nesting = Math.max(0, nesting - 1);
111
+ continue;
112
+ }
113
+ if (char === "," && nesting === 0) {
114
+ selectors.push(selectorList.slice(start, index).trim());
115
+ start = index + 1;
116
+ }
117
+ }
118
+ selectors.push(selectorList.slice(start).trim());
119
+ return selectors.filter(Boolean);
120
+ }
121
+ function escapeCssAttributeValue(value) {
122
+ return value.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
123
+ }
124
+ //# sourceMappingURL=cssScope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssScope.js","sourceRoot":"","sources":["../src/cssScope.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ import { cancel, intro, isCancel, log, outro, select, spinner, text, } from "@cl
5
5
  import fs from "fs-extra";
6
6
  import { applyLayer, replaceTokensRecursively } from "./libFunctions.js";
7
7
  import { generatePcfFromExistingWebresource } from "./pcf.js";
8
+ import { localizeShadcnPortals } from "./portalContainers.js";
8
9
  const { execSync } = await import("node:child_process");
9
10
  const __filename = fileURLToPath(import.meta.url);
10
11
  const __dirname = dirname(__filename);
@@ -59,6 +60,9 @@ async function scaffoldProject({ install, projectName, target, uiType, }) {
59
60
  if (fs.existsSync(uiDir)) {
60
61
  await applyLayer(uiDir, projectDir);
61
62
  }
63
+ if (target === "code-apps") {
64
+ await cleanupCodeAppsScaffold(projectDir);
65
+ }
62
66
  await replaceTokensRecursively(projectDir, {
63
67
  APP_NAME: projectName,
64
68
  TARGET: target,
@@ -109,97 +113,27 @@ async function generateShadcnUi(projectDir) {
109
113
  await localizeShadcnPortals(projectDir);
110
114
  return true;
111
115
  }
112
- async function localizeShadcnPortals(projectDir) {
113
- const componentsDir = path.join(projectDir, "src", "components", "ui");
114
- if (!(await fs.pathExists(componentsDir))) {
115
- return;
116
- }
117
- const entries = await fs.readdir(componentsDir, { withFileTypes: true });
118
- for (const entry of entries) {
119
- if (!entry.isFile() || !entry.name.endsWith(".tsx")) {
120
- continue;
121
- }
122
- const filePath = path.join(componentsDir, entry.name);
123
- const source = await fs.readFile(filePath, "utf8");
124
- const updated = withGeneratedShadcnCompatibility(withEcPortalContainers(source, filePath));
125
- if (updated !== source) {
126
- await fs.writeFile(filePath, updated, "utf8");
127
- }
128
- }
129
- }
130
- function withEcPortalContainers(source, filePath) {
131
- const withPortalContainers = source.replace(/<([A-Za-z][A-Za-z0-9]*Primitive)\.Portal\b(?![^>]*\bcontainer=)/g, "<$1.Portal container={portalContainer ?? undefined}");
132
- if (withPortalContainers === source) {
133
- return source;
134
- }
135
- return addEcPortalImport(addEcPortalHookDeclarations(withPortalContainers, filePath));
136
- }
137
- function withGeneratedShadcnCompatibility(source) {
138
- const withChartAttributeSelectors = removeStandaloneEcPrefixes(source)
139
- .replace(/\[stroke=#ccc\]/g, "[stroke='#ccc']")
140
- .replace(/\[stroke=#fff\]/g, "[stroke='#fff']")
141
- .replace(/"cn-input-otp flex items-center has-disabled:opacity-50"/g, '"cn-input-otp ec:flex ec:items-center ec:has-disabled:opacity-50"')
142
- .replace(/String\.raw`rtl:/g, "String.raw`ec:rtl:");
143
- if (!withChartAttributeSelectors.includes('from "react-day-picker"')) {
144
- return withChartAttributeSelectors;
145
- }
146
- return withChartAttributeSelectors.replace(/(\n\s*)table:/g, "$1month_grid:");
147
- }
148
- function removeStandaloneEcPrefixes(source) {
149
- let updated = source;
150
- let previous;
151
- do {
152
- previous = updated;
153
- updated = updated.replace(/(^|[\s"'])ec:(?=\s|["'])/g, "$1");
154
- } while (updated !== previous);
155
- return updated;
156
- }
157
- function addEcPortalImport(source) {
158
- if (source.includes('from "@/runtime/EcAppShell"')) {
159
- return source;
160
- }
161
- const importPattern = /import[\s\S]*?from\s+["'][^"']+["'];?\n|import\s+["'][^"']+["'];?\n/g;
162
- let insertAt = 0;
163
- for (const match of source.matchAll(importPattern)) {
164
- insertAt = (match.index ?? 0) + match[0].length;
116
+ async function cleanupCodeAppsScaffold(projectDir) {
117
+ const pathsToRemove = [
118
+ "token.json",
119
+ "src/services/AuthService.ts",
120
+ "src/services/authService.ts",
121
+ "src/context/AuthContext.tsx",
122
+ ];
123
+ for (const relPath of pathsToRemove) {
124
+ await fs.remove(path.join(projectDir, relPath));
165
125
  }
166
- const importLine = 'import { useEcPortalContainer } from "@/runtime/EcAppShell"\n';
167
- return `${source.slice(0, insertAt)}${importLine}${source.slice(insertAt)}`;
126
+ await removeDirIfEmpty(path.join(projectDir, "src", "services"));
127
+ await removeDirIfEmpty(path.join(projectDir, "src", "context"));
168
128
  }
169
- function addEcPortalHookDeclarations(source, filePath) {
170
- const lines = source.split("\n");
171
- const hookBodyLines = new Set();
172
- for (let index = 0; index < lines.length; index += 1) {
173
- if (!lines[index]?.includes("container={portalContainer ?? undefined}")) {
174
- continue;
175
- }
176
- const bodyLine = findContainingFunctionBodyLine(lines, index);
177
- if (bodyLine === undefined) {
178
- throw new Error(`Could not locate a function body for a shadcn Portal in ${filePath}.`);
179
- }
180
- hookBodyLines.add(bodyLine);
181
- }
182
- for (const bodyLine of [...hookBodyLines].sort((a, b) => b - a)) {
183
- if (lines[bodyLine + 1]?.includes("const portalContainer")) {
184
- continue;
185
- }
186
- const indent = lines[bodyLine]?.match(/^(\s*)/)?.[1] ?? "";
187
- lines.splice(bodyLine + 1, 0, `${indent} const portalContainer = useEcPortalContainer()`);
129
+ async function removeDirIfEmpty(dirPath) {
130
+ if (!(await fs.pathExists(dirPath))) {
131
+ return;
188
132
  }
189
- return lines.join("\n");
190
- }
191
- function findContainingFunctionBodyLine(lines, portalLine) {
192
- for (let index = portalLine; index >= 0; index -= 1) {
193
- if (!/^\s*function\s+\w+/.test(lines[index] ?? "")) {
194
- continue;
195
- }
196
- for (let bodyLine = index; bodyLine <= portalLine; bodyLine += 1) {
197
- if (/\)\s*\{\s*$/.test(lines[bodyLine] ?? "")) {
198
- return bodyLine;
199
- }
200
- }
133
+ const entries = await fs.readdir(dirPath);
134
+ if (entries.length === 0) {
135
+ await fs.remove(dirPath);
201
136
  }
202
- return undefined;
203
137
  }
204
138
  main().catch((err) => {
205
139
  console.error(err);
@@ -225,6 +159,7 @@ async function promptTarget() {
225
159
  { label: "Portal (WIP)", value: "portal" },
226
160
  { label: "Static Web App", value: "swa" },
227
161
  { label: "Power Pages", value: "power-pages" },
162
+ { label: "Power Apps Code App", value: "code-apps" },
228
163
  ],
229
164
  });
230
165
  if (isCancel(target)) {
@@ -334,11 +269,13 @@ function readTarget(argv) {
334
269
  ["--portal", "portal"],
335
270
  ["--power-pages", "power-pages"],
336
271
  ["--swa", "swa"],
272
+ ["--code-apps", "code-apps"],
273
+ ["--code-app", "code-apps"],
337
274
  ];
338
275
  const selected = targetFlags.filter(([flag]) => argv.includes(flag));
339
276
  const targetValue = readStringOption(argv, "--target");
340
277
  if (selected.length > 1 || (selected.length === 1 && targetValue)) {
341
- throw new Error("Use only one target option: --webresource, --portal, --power-pages, --swa, or --target.");
278
+ throw new Error("Use only one target option: --webresource, --portal, --power-pages, --swa, --code-apps, --code-app, or --target.");
342
279
  }
343
280
  if (selected.length === 1) {
344
281
  return selected[0]?.[1];
@@ -349,7 +286,7 @@ function readTarget(argv) {
349
286
  if (isAppTarget(targetValue)) {
350
287
  return targetValue;
351
288
  }
352
- throw new Error(`Unsupported target "${targetValue}". Use webresource, portal, power-pages, or swa.`);
289
+ throw new Error(`Unsupported target "${targetValue}". Use webresource, portal, power-pages, swa, or code-apps.`);
353
290
  }
354
291
  function readUiType(argv) {
355
292
  const uiFlags = [
@@ -387,7 +324,7 @@ function readStringOption(argv, name) {
387
324
  return value && !value.startsWith("--") ? value : undefined;
388
325
  }
389
326
  function isAppTarget(value) {
390
- return ["webresource", "portal", "power-pages", "swa"].includes(value);
327
+ return ["webresource", "portal", "power-pages", "swa", "code-apps"].includes(value);
391
328
  }
392
329
  function isUiTarget(value) {
393
330
  return ["kendo", "shadcn-ui"].includes(value);
@@ -403,7 +340,6 @@ import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
403
340
  import "@progress/kendo-theme-fluent/dist/all.css";
404
341
  import "./index.css";
405
342
  import App from "./App.tsx";
406
- import { EcAppShell } from "./runtime/EcAppShell.tsx";
407
343
 
408
344
  import { AuthProvider } from "./context/AuthContext.tsx";
409
345
 
@@ -426,9 +362,7 @@ root.render(
426
362
  <StrictMode>
427
363
  <AuthProvider>
428
364
  <QueryClientProvider client={queryClient}>
429
- <EcAppShell>
430
- <App />
431
- </EcAppShell>
365
+ <App />
432
366
  </QueryClientProvider>
433
367
  </AuthProvider>
434
368
  </StrictMode>
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/pcf.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pcf.d.ts","sourceRoot":"","sources":["../src/pcf.ts"],"names":[],"mappings":"AA0DA,MAAM,WAAW,aAAa;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,wBAAsB,kCAAkC,CACvD,OAAO,EAAE,aAAa,GACpB,OAAO,CAAC;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC,CAkGD"}
1
+ {"version":3,"file":"pcf.d.ts","sourceRoot":"","sources":["../src/pcf.ts"],"names":[],"mappings":"AAiCA,MAAM,WAAW,aAAa;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,wBAAsB,kCAAkC,CACvD,OAAO,EAAE,aAAa,GACpB,OAAO,CAAC;IACV,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACpB,CAAC,CAyGD"}