create-ec-app 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +204 -0
- package/bin/index.js +2 -0
- package/dist/creators/mobile.d.ts +2 -0
- package/dist/creators/mobile.d.ts.map +1 -0
- package/dist/creators/mobile.js +220 -0
- package/dist/creators/mobile.js.map +1 -0
- package/dist/creators/portal.d.ts +2 -0
- package/dist/creators/portal.d.ts.map +1 -0
- package/dist/creators/portal.js +885 -0
- package/dist/creators/portal.js.map +1 -0
- package/dist/creators/powerpages.d.ts +2 -0
- package/dist/creators/powerpages.d.ts.map +1 -0
- package/dist/creators/powerpages.js +475 -0
- package/dist/creators/powerpages.js.map +1 -0
- package/dist/creators/webresource.d.ts +2 -0
- package/dist/creators/webresource.d.ts.map +1 -0
- package/dist/creators/webresource.js +505 -0
- package/dist/creators/webresource.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +94 -0
- package/dist/index.js.map +1 -0
- package/package.json +60 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"portal.js","sourceRoot":"","sources":["../../src/creators/portal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"powerpages.d.ts","sourceRoot":"","sources":["../../src/creators/powerpages.ts"],"names":[],"mappings":"AA0BA,eAAO,MAAM,mBAAmB,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,IAAI,CAue3E,CAAC"}
|
|
@@ -0,0 +1,475 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import ora from "ora";
|
|
3
|
+
import fs from "fs-extra";
|
|
4
|
+
import path from "path";
|
|
5
|
+
import { execSync } from "child_process";
|
|
6
|
+
import inquirer from "inquirer";
|
|
7
|
+
// Helper function to run commands and show a spinner
|
|
8
|
+
const runCommand = (command, spinnerMessage) => {
|
|
9
|
+
const spinner = ora(spinnerMessage).start();
|
|
10
|
+
try {
|
|
11
|
+
execSync(command, { stdio: "pipe" });
|
|
12
|
+
spinner.succeed();
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
spinner.fail();
|
|
16
|
+
console.error(chalk.red(`Failed to execute command: ${command}`));
|
|
17
|
+
console.error(error);
|
|
18
|
+
process.exit(1);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
export const createPowerPagesApp = async (projectName) => {
|
|
22
|
+
// Prompt for Kendo theme
|
|
23
|
+
const kendoThemes = [
|
|
24
|
+
{ name: "Default", value: "@progress/kendo-theme-default" },
|
|
25
|
+
{ name: "Bootstrap (v5)", value: "@progress/kendo-theme-bootstrap" },
|
|
26
|
+
{ name: "Material (v3)", value: "@progress/kendo-theme-material" },
|
|
27
|
+
{ name: "Fluent", value: "@progress/kendo-theme-fluent" },
|
|
28
|
+
{ name: "Classic", value: "@progress/kendo-theme-classic" },
|
|
29
|
+
];
|
|
30
|
+
const { kendoThemePackage } = await inquirer.prompt([
|
|
31
|
+
{
|
|
32
|
+
type: "list",
|
|
33
|
+
name: "kendoThemePackage",
|
|
34
|
+
message: "Which Kendo UI theme would you like to install?",
|
|
35
|
+
choices: kendoThemes,
|
|
36
|
+
},
|
|
37
|
+
]);
|
|
38
|
+
const projectDir = path.resolve(process.cwd(), projectName);
|
|
39
|
+
console.log(`\nScaffolding a new project in ${chalk.green(projectDir)}...\n`);
|
|
40
|
+
// Create React + Vite (TypeScript) project
|
|
41
|
+
runCommand(`npm create vite@latest ${projectName} -- --template react-ts`, "Creating Vite + React + TS project...");
|
|
42
|
+
process.chdir(projectDir);
|
|
43
|
+
// Update package.json with overrides for Vite 7 compatibility
|
|
44
|
+
const packageJsonPath = path.join(projectDir, "package.json");
|
|
45
|
+
const packageJson = fs.readJsonSync(packageJsonPath);
|
|
46
|
+
// Add custom build script
|
|
47
|
+
packageJson.scripts["build:dev"] = "tsc -b && vite build --mode development";
|
|
48
|
+
fs.writeJsonSync(packageJsonPath, packageJson, { spaces: 2 });
|
|
49
|
+
ora("Updated package.json with Vite 7 overrides and custom build script").succeed();
|
|
50
|
+
// Install dependencies with version constraints and overrides
|
|
51
|
+
const dependencies = [
|
|
52
|
+
"@progress/kendo-react-buttons",
|
|
53
|
+
"@progress/kendo-licensing",
|
|
54
|
+
"tailwindcss@^4",
|
|
55
|
+
"@tailwindcss/vite@^4",
|
|
56
|
+
"@tanstack/react-query",
|
|
57
|
+
"zustand",
|
|
58
|
+
"@types/xrm",
|
|
59
|
+
"@types/node",
|
|
60
|
+
kendoThemePackage,
|
|
61
|
+
];
|
|
62
|
+
runCommand(`npm install ${dependencies.join(" ")}`, `Installing dependencies (Theme: ${kendoThemePackage.split("/")[1]})...`);
|
|
63
|
+
// Create kendo-tw-preset.js
|
|
64
|
+
const kendoPresetPath = path.join(projectDir, "kendo-tw-preset.js");
|
|
65
|
+
const kendoPresetContent = `module.exports = {
|
|
66
|
+
theme: {
|
|
67
|
+
extend: {
|
|
68
|
+
spacing: {
|
|
69
|
+
1: "var( --kendo-spacing-1 )",
|
|
70
|
+
1.5: "var( --kendo-spacing-1.5 )",
|
|
71
|
+
2: "var( --kendo-spacing-2 )",
|
|
72
|
+
2.5: "var( --kendo-spacing-2.5 )",
|
|
73
|
+
3: "var( --kendo-spacing-3 )",
|
|
74
|
+
3.5: "var( --kendo-spacing-3.5 )",
|
|
75
|
+
4: "var( --kendo-spacing-4 )",
|
|
76
|
+
4.5: "var( --kendo-spacing-4.5 )",
|
|
77
|
+
5: "var( --kendo-spacing-5 )",
|
|
78
|
+
5.5: "var( --kendo-spacing-5.5 )",
|
|
79
|
+
6: "var( --kendo-spacing-6 )",
|
|
80
|
+
6.5: "var( --kendo-spacing-6.5 )",
|
|
81
|
+
7: "var( --kendo-spacing-7 )",
|
|
82
|
+
7.5: "var( --kendo-spacing-7.5 )",
|
|
83
|
+
8: "var( --kendo-spacing-8 )",
|
|
84
|
+
9: "var( --kendo-spacing-9 )",
|
|
85
|
+
10: "var( --kendo-spacing-10 )",
|
|
86
|
+
11: "var( --kendo-spacing-11 )",
|
|
87
|
+
12: "var( --kendo-spacing-12 )",
|
|
88
|
+
13: "var( --kendo-spacing-13 )",
|
|
89
|
+
14: "var( --kendo-spacing-14 )",
|
|
90
|
+
15: "var( --kendo-spacing-15 )",
|
|
91
|
+
16: "var( --kendo-spacing-16 )",
|
|
92
|
+
17: "var( --kendo-spacing-17 )",
|
|
93
|
+
18: "var( --kendo-spacing-18 )",
|
|
94
|
+
19: "var( --kendo-spacing-19 )",
|
|
95
|
+
20: "var( --kendo-spacing-20 )",
|
|
96
|
+
21: "var( --kendo-spacing-21 )",
|
|
97
|
+
22: "var( --kendo-spacing-22 )",
|
|
98
|
+
23: "var( --kendo-spacing-23 )",
|
|
99
|
+
24: "var( --kendo-spacing-24 )",
|
|
100
|
+
25: "var( --kendo-spacing-25 )",
|
|
101
|
+
26: "var( --kendo-spacing-26 )",
|
|
102
|
+
27: "var( --kendo-spacing-27 )",
|
|
103
|
+
28: "var( --kendo-spacing-28 )",
|
|
104
|
+
29: "var( --kendo-spacing-29 )",
|
|
105
|
+
30: "var( --kendo-spacing-30 )",
|
|
106
|
+
},
|
|
107
|
+
borderRadius: {
|
|
108
|
+
none: "var( --kendo-border-radius-none )",
|
|
109
|
+
sm: "var( --kendo-border-radius-sm )",
|
|
110
|
+
DEFAULT: "var( --kendo-border-radius-md )",
|
|
111
|
+
lg: "var( --kendo-border-radius-lg )",
|
|
112
|
+
xl: "var( --kendo-border-radius-xl )",
|
|
113
|
+
"2xl": "var( --kendo-border-radius-xxl )",
|
|
114
|
+
"3xl": "var( --kendo-border-radius-xxxl )",
|
|
115
|
+
full: "var( --kendo-border-radius-none )",
|
|
116
|
+
},
|
|
117
|
+
boxShadow: {
|
|
118
|
+
sm: "var( --kendo-elevation-2 )",
|
|
119
|
+
DEFAULT: "var( --kendo-elevation-4 )",
|
|
120
|
+
lg: "var( --kendo-elevation-6 )",
|
|
121
|
+
xl: "var( --kendo-elevation-8 )",
|
|
122
|
+
"2xl": "var( --keno-elevation-9 )",
|
|
123
|
+
},
|
|
124
|
+
colors: {
|
|
125
|
+
"app-surface": "var( --kendo-color-app-surface )",
|
|
126
|
+
"on-app-surface": "var( --kendo-color-on-app-surface )",
|
|
127
|
+
subtle: "var( --kendo-color-subtle )",
|
|
128
|
+
surface: "var( --kendo-color-surface )",
|
|
129
|
+
"surface-alt": "var( --kendo-color-surface-alt )",
|
|
130
|
+
border: "var( --kendo-color-border )",
|
|
131
|
+
"border-alt": "var( --kendo-color-border-alt )",
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
},
|
|
135
|
+
};`;
|
|
136
|
+
fs.writeFileSync(kendoPresetPath, kendoPresetContent, "utf8");
|
|
137
|
+
ora("Created kendo-tw-preset.js").succeed();
|
|
138
|
+
// Create tailwind.config.js with Kendo preset
|
|
139
|
+
const tailwindConfigPath = path.join(projectDir, "tailwind.config.js");
|
|
140
|
+
const tailwindConfigContent = `/** @type {import('tailwindcss').Config} */
|
|
141
|
+
|
|
142
|
+
import kendoTwPreset from "./kendo-tw-preset.js";
|
|
143
|
+
|
|
144
|
+
export default {
|
|
145
|
+
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
|
|
146
|
+
presets: [kendoTwPreset],
|
|
147
|
+
theme: {
|
|
148
|
+
extend: {
|
|
149
|
+
colors: {},
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
plugins: [],
|
|
153
|
+
};`;
|
|
154
|
+
fs.writeFileSync(tailwindConfigPath, tailwindConfigContent, "utf8");
|
|
155
|
+
ora("Created tailwind.config.js with Kendo preset").succeed();
|
|
156
|
+
// Overwrite Vite config with advanced build options
|
|
157
|
+
const viteConfigPath = path.join(projectDir, "vite.config.ts");
|
|
158
|
+
const newViteConfigContent = `import path from "path";
|
|
159
|
+
import tailwindcss from "@tailwindcss/vite";
|
|
160
|
+
import { defineConfig } from "vite";
|
|
161
|
+
import react from "@vitejs/plugin-react";
|
|
162
|
+
|
|
163
|
+
// https://vite.dev/config/
|
|
164
|
+
export default defineConfig({
|
|
165
|
+
plugins: [react(), tailwindcss()],
|
|
166
|
+
resolve: {
|
|
167
|
+
alias: {
|
|
168
|
+
"@": path.resolve(__dirname, "./src"),
|
|
169
|
+
},
|
|
170
|
+
},
|
|
171
|
+
});
|
|
172
|
+
`;
|
|
173
|
+
fs.writeFileSync(viteConfigPath, newViteConfigContent, "utf8");
|
|
174
|
+
ora("Replaced vite.config.ts with custom build config").succeed();
|
|
175
|
+
// Update CSS entry point
|
|
176
|
+
const indexCssPath = path.join(projectDir, "src", "index.css");
|
|
177
|
+
fs.writeFileSync(indexCssPath, `@import "tailwindcss";`, "utf8");
|
|
178
|
+
ora("Updated CSS entry point").succeed();
|
|
179
|
+
// Clear App.css
|
|
180
|
+
const appCssPath = path.join(projectDir, "src", "App.css");
|
|
181
|
+
fs.writeFileSync(appCssPath, "", "utf8");
|
|
182
|
+
ora("Cleared App.css").succeed();
|
|
183
|
+
// Create shared AuthButton component
|
|
184
|
+
const componentsDir = path.join(projectDir, "src", "components");
|
|
185
|
+
const sharedDir = path.join(componentsDir, "shared");
|
|
186
|
+
fs.ensureDirSync(sharedDir);
|
|
187
|
+
const authButtonPath = path.join(sharedDir, "AuthButton.tsx");
|
|
188
|
+
const authButtonContent = `import { useAuth } from '../../context/AuthContext';
|
|
189
|
+
|
|
190
|
+
export const AuthButton = () => {
|
|
191
|
+
const { user, isAuthenticated, isLoading, tenantId, token } = useAuth();
|
|
192
|
+
|
|
193
|
+
if (isLoading) {
|
|
194
|
+
return (
|
|
195
|
+
<div className="flex items-center gap-2 text-sm text-gray-600">
|
|
196
|
+
<span className="h-4 w-4 animate-spin rounded-full border-2 border-gray-300 border-t-transparent" />
|
|
197
|
+
<span>Loading...</span>
|
|
198
|
+
</div>
|
|
199
|
+
);
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
if (isAuthenticated && user) {
|
|
203
|
+
return (
|
|
204
|
+
<div className="flex items-center gap-3">
|
|
205
|
+
<span className="text-sm text-gray-700">
|
|
206
|
+
Welcome {user.firstName} {user.lastName}
|
|
207
|
+
</span>
|
|
208
|
+
<button
|
|
209
|
+
type="button"
|
|
210
|
+
className="rounded border border-gray-300 px-3 py-1 text-sm font-medium text-gray-700 transition hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-offset-2"
|
|
211
|
+
onClick={() => (window.location.href = '/Account/Login/LogOff?returnUrl=%2F')}
|
|
212
|
+
>
|
|
213
|
+
Logout
|
|
214
|
+
</button>
|
|
215
|
+
</div>
|
|
216
|
+
);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
return (
|
|
220
|
+
<form action="/Account/Login/ExternalLogin" method="post" className="flex items-center gap-3">
|
|
221
|
+
<input name="__RequestVerificationToken" type="hidden" value={token ?? ''} />
|
|
222
|
+
<button
|
|
223
|
+
name="provider"
|
|
224
|
+
type="submit"
|
|
225
|
+
className="rounded border border-gray-300 px-3 py-1 text-sm font-medium text-gray-700 transition hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-gray-400 focus:ring-offset-2"
|
|
226
|
+
value={\`https://login.windows.net/\${tenantId}/\`}
|
|
227
|
+
>
|
|
228
|
+
Log In
|
|
229
|
+
</button>
|
|
230
|
+
</form>
|
|
231
|
+
);
|
|
232
|
+
};
|
|
233
|
+
`;
|
|
234
|
+
fs.writeFileSync(authButtonPath, authButtonContent, "utf8");
|
|
235
|
+
ora("Created AuthButton.tsx in src/components/shared").succeed();
|
|
236
|
+
// Replace App.tsx with custom content
|
|
237
|
+
const appTsxPath = path.join(projectDir, "src", "App.tsx");
|
|
238
|
+
const newAppTsxContent = `import "./App.css";
|
|
239
|
+
import { AuthProvider } from './context/AuthContext'
|
|
240
|
+
import { AuthButton } from './components/shared/AuthButton'
|
|
241
|
+
|
|
242
|
+
function App() {
|
|
243
|
+
return (
|
|
244
|
+
<>
|
|
245
|
+
<AuthProvider>
|
|
246
|
+
<div className="flex flex-col h-screen items-center justify-center">
|
|
247
|
+
Hello World!
|
|
248
|
+
</div>
|
|
249
|
+
</AuthProvider>
|
|
250
|
+
</>
|
|
251
|
+
);
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
export default App;
|
|
255
|
+
`;
|
|
256
|
+
fs.writeFileSync(appTsxPath, newAppTsxContent, "utf8");
|
|
257
|
+
ora("Replaced App.tsx with custom template").succeed();
|
|
258
|
+
// Generate main.tsx from template
|
|
259
|
+
const mainTsxPath = path.join(projectDir, "src", "main.tsx");
|
|
260
|
+
const newMainTsxContent = `import { StrictMode } from "react";
|
|
261
|
+
import { createRoot } from "react-dom/client";
|
|
262
|
+
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
263
|
+
import "${kendoThemePackage}/dist/all.css";
|
|
264
|
+
import "./index.css";
|
|
265
|
+
import App from "./App.tsx";
|
|
266
|
+
|
|
267
|
+
const queryClient = new QueryClient({
|
|
268
|
+
defaultOptions: {
|
|
269
|
+
queries: {
|
|
270
|
+
refetchOnWindowFocus: false,
|
|
271
|
+
retry: 3,
|
|
272
|
+
staleTime: 5 * 60 * 1000, // 5 minutes
|
|
273
|
+
},
|
|
274
|
+
mutations: {
|
|
275
|
+
retry: 1,
|
|
276
|
+
},
|
|
277
|
+
},
|
|
278
|
+
});
|
|
279
|
+
|
|
280
|
+
const root = createRoot(document.getElementById("root")!);
|
|
281
|
+
|
|
282
|
+
root.render(
|
|
283
|
+
<StrictMode>
|
|
284
|
+
<QueryClientProvider client={queryClient}>
|
|
285
|
+
<App />
|
|
286
|
+
</QueryClientProvider>
|
|
287
|
+
</StrictMode>
|
|
288
|
+
);
|
|
289
|
+
`;
|
|
290
|
+
fs.writeFileSync(mainTsxPath, newMainTsxContent, "utf8");
|
|
291
|
+
ora("Generated custom main.tsx with providers").succeed();
|
|
292
|
+
// Modify index.html
|
|
293
|
+
const indexPath = path.join(projectDir, "index.html");
|
|
294
|
+
let indexContent = fs.readFileSync(indexPath, "utf8");
|
|
295
|
+
indexContent = indexContent.replace("<title>Vite + React + TS</title>", "<title>EC | Vite + React + TS + Kendo UI + Tailwind</title>");
|
|
296
|
+
fs.writeFileSync(indexPath, indexContent, "utf8");
|
|
297
|
+
ora("Updated index.html").succeed();
|
|
298
|
+
// Add .prettierrc in root directory
|
|
299
|
+
const prettierRcPath = path.join(projectDir, ".prettierrc");
|
|
300
|
+
const prettierRcContent = `{
|
|
301
|
+
"tabWidth": 4,
|
|
302
|
+
"useTabs": true,
|
|
303
|
+
"semi": true,
|
|
304
|
+
"singleQuote": false,
|
|
305
|
+
"trailingComma": "es5",
|
|
306
|
+
"bracketSpacing": true,
|
|
307
|
+
"jsxBracketSameLine": false,
|
|
308
|
+
"arrowParens": "always",
|
|
309
|
+
"printWidth": 120
|
|
310
|
+
}`;
|
|
311
|
+
fs.writeFileSync(prettierRcPath, prettierRcContent, "utf8");
|
|
312
|
+
ora("Added .prettierrc").succeed();
|
|
313
|
+
// Add in the AuthContext
|
|
314
|
+
const contextDir = path.join(projectDir, "src", "context");
|
|
315
|
+
fs.ensureDirSync(contextDir);
|
|
316
|
+
const authContextPath = path.join(contextDir, "AuthContext.tsx");
|
|
317
|
+
const authContextContent = `import React, { createContext, useContext, useState, useEffect } from 'react';
|
|
318
|
+
import type { ReactNode } from 'react';
|
|
319
|
+
|
|
320
|
+
interface User {
|
|
321
|
+
username: string;
|
|
322
|
+
firstName: string;
|
|
323
|
+
lastName: string;
|
|
324
|
+
email?: string;
|
|
325
|
+
userRoles: string[];
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
interface AuthContextType {
|
|
329
|
+
user: User | null;
|
|
330
|
+
isAuthenticated: boolean;
|
|
331
|
+
isLoading: boolean;
|
|
332
|
+
tenantId: string;
|
|
333
|
+
token: string;
|
|
334
|
+
refreshToken: () => Promise<void>;
|
|
335
|
+
}
|
|
336
|
+
|
|
337
|
+
const AuthContext = createContext<AuthContextType | undefined>(undefined);
|
|
338
|
+
|
|
339
|
+
interface AuthProviderProps {
|
|
340
|
+
children: ReactNode;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
export const AuthProvider: React.FC<AuthProviderProps> = ({ children }) => {
|
|
344
|
+
const [user, setUser] = useState<User | null>(null);
|
|
345
|
+
const [isLoading, setIsLoading] = useState(true);
|
|
346
|
+
const [token, setToken] = useState<string>('');
|
|
347
|
+
|
|
348
|
+
const refreshToken = async (): Promise<void> => {
|
|
349
|
+
try {
|
|
350
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
351
|
+
const newToken = await (window as any).shell?.getTokenDeferred();
|
|
352
|
+
setToken(newToken || '');
|
|
353
|
+
} catch (error) {
|
|
354
|
+
console.error('Error fetching token:', error);
|
|
355
|
+
setToken('');
|
|
356
|
+
}
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
useEffect(() => {
|
|
360
|
+
const initializeAuth = async () => {
|
|
361
|
+
try {
|
|
362
|
+
// Check if Microsoft Dynamics Portal object exists
|
|
363
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
364
|
+
const portalUser = (window as any)?.Microsoft?.Dynamic365?.Portal?.User;
|
|
365
|
+
|
|
366
|
+
if (portalUser) {
|
|
367
|
+
const username = portalUser.userName || '';
|
|
368
|
+
const firstName = portalUser.firstName || '';
|
|
369
|
+
const lastName = portalUser.lastName || '';
|
|
370
|
+
const email = portalUser.email || '';
|
|
371
|
+
const userRoles = portalUser.userRoles || [];
|
|
372
|
+
|
|
373
|
+
if (username) {
|
|
374
|
+
setUser({
|
|
375
|
+
username,
|
|
376
|
+
firstName,
|
|
377
|
+
lastName,
|
|
378
|
+
email,
|
|
379
|
+
userRoles
|
|
380
|
+
});
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
// Get authentication token
|
|
385
|
+
await refreshToken();
|
|
386
|
+
} catch (error) {
|
|
387
|
+
console.error('Error initializing authentication:', error);
|
|
388
|
+
} finally {
|
|
389
|
+
setIsLoading(false);
|
|
390
|
+
}
|
|
391
|
+
};
|
|
392
|
+
|
|
393
|
+
initializeAuth();
|
|
394
|
+
}, []);
|
|
395
|
+
|
|
396
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
397
|
+
const tenantId = (window as any)?.Microsoft?.Dynamic365?.Portal?.tenant || '';
|
|
398
|
+
const isAuthenticated = user !== null && user.username !== '';
|
|
399
|
+
|
|
400
|
+
const contextValue: AuthContextType = {
|
|
401
|
+
user,
|
|
402
|
+
isAuthenticated,
|
|
403
|
+
isLoading,
|
|
404
|
+
tenantId,
|
|
405
|
+
token,
|
|
406
|
+
refreshToken
|
|
407
|
+
};
|
|
408
|
+
|
|
409
|
+
return (
|
|
410
|
+
<AuthContext.Provider value={contextValue}>
|
|
411
|
+
{children}
|
|
412
|
+
</AuthContext.Provider>
|
|
413
|
+
);
|
|
414
|
+
};
|
|
415
|
+
|
|
416
|
+
// eslint-disable-next-line react-refresh/only-export-components
|
|
417
|
+
export const useAuth = (): AuthContextType => {
|
|
418
|
+
const context = useContext(AuthContext);
|
|
419
|
+
if (context === undefined) {
|
|
420
|
+
throw new Error('useAuth must be used within an AuthProvider');
|
|
421
|
+
}
|
|
422
|
+
return context;
|
|
423
|
+
};`;
|
|
424
|
+
fs.writeFileSync(authContextPath, authContextContent, "utf8");
|
|
425
|
+
ora("Created AuthContext.tsx in src/context").succeed();
|
|
426
|
+
// Create services directory and DataService.ts
|
|
427
|
+
const servicesDir = path.join(projectDir, "src", "services");
|
|
428
|
+
fs.ensureDirSync(servicesDir);
|
|
429
|
+
const dataServicePath = path.join(servicesDir, "DataService.ts");
|
|
430
|
+
const dataServiceContent = `export interface T {
|
|
431
|
+
entityId: string;
|
|
432
|
+
[key: string]: unknown;
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
export interface ApiResponse<T> {
|
|
436
|
+
value: T[];
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
const BASE_URL = '/_api';
|
|
440
|
+
|
|
441
|
+
export async function getEntity(): Promise<T[]> {
|
|
442
|
+
const response = await fetch(\`\${BASE_URL}/entity\`, {
|
|
443
|
+
method: 'GET',
|
|
444
|
+
headers: {
|
|
445
|
+
'Accept': 'application/json',
|
|
446
|
+
'Content-Type': 'application/json',
|
|
447
|
+
},
|
|
448
|
+
});
|
|
449
|
+
|
|
450
|
+
if (!response.ok) {
|
|
451
|
+
throw new Error(\`Failed to fetch entity: \${response.status}\`);
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
const data: ApiResponse<T> = await response.json();
|
|
455
|
+
return data.value;
|
|
456
|
+
}
|
|
457
|
+
`;
|
|
458
|
+
fs.writeFileSync(dataServicePath, dataServiceContent, "utf8");
|
|
459
|
+
ora("Created DataService.ts in src/services").succeed();
|
|
460
|
+
// Add Power Pages configuration file
|
|
461
|
+
const powerPagesConfigPath = path.join(projectDir, "powerpages.config.json");
|
|
462
|
+
const powerPagesConfigContent = `{
|
|
463
|
+
"compiledPath": "dist",
|
|
464
|
+
"siteName": "MySite",
|
|
465
|
+
"defaultLandingPage": "index.html"
|
|
466
|
+
}
|
|
467
|
+
`;
|
|
468
|
+
fs.writeFileSync(powerPagesConfigPath, powerPagesConfigContent, "utf8");
|
|
469
|
+
ora("Created powerpages.config.json").succeed();
|
|
470
|
+
// Initialize Git
|
|
471
|
+
runCommand("git init", "Initializing Git repository...");
|
|
472
|
+
runCommand("git add .", "Staging files for initial commit...");
|
|
473
|
+
runCommand(`git commit -m "Initial commit from create-ec-app"`, "Creating initial commit...");
|
|
474
|
+
};
|
|
475
|
+
//# sourceMappingURL=powerpages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"powerpages.js","sourceRoot":"","sources":["../../src/creators/powerpages.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webresource.d.ts","sourceRoot":"","sources":["../../src/creators/webresource.ts"],"names":[],"mappings":"AA0BA,eAAO,MAAM,oBAAoB,GAAU,aAAa,MAAM,KAAG,OAAO,CAAC,IAAI,CAggB5E,CAAC"}
|