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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portal.js","sourceRoot":"","sources":["../../src/creators/portal.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const createPowerPagesApp: (projectName: string) => Promise<void>;
2
+ //# sourceMappingURL=powerpages.d.ts.map
@@ -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,2 @@
1
+ export declare const createWebResourceApp: (projectName: string) => Promise<void>;
2
+ //# sourceMappingURL=webresource.d.ts.map
@@ -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"}