pcf-vite-harness
Version:
Modern Vite-based development harness for PowerApps Component Framework (PCF) with hot module replacement and PowerApps-like environment simulation
1 lines • 90.2 kB
Source Map (JSON)
{"version":3,"sources":["../../package.json","../../bin/utils/logger.ts","../../bin/utils/validation.ts","../../bin/utils/environment-checker.ts","../../bin/pcf-vite-init.ts"],"names":["promisify","exec","execAsync","join","access","createSpinner","glob","resolve","readFile","dirname","relative","select","input","confirm","mkdir","writeFile","sep","basename","Command"],"mappings":"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","file":"pcf-vite-init.cjs","sourcesContent":["{\n \"name\": \"pcf-vite-harness\",\n \"version\": \"1.9.1\",\n \"description\": \"Modern Vite-based development harness for PowerApps Component Framework (PCF) with hot module replacement and PowerApps-like environment simulation\",\n \"type\": \"module\",\n \"engines\": {\n \"node\": \">=18\"\n },\n \"exports\": {\n \".\": {\n \"import\": {\n \"types\": \"./dist/index.d.ts\",\n \"default\": \"./dist/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/index.d.cts\",\n \"default\": \"./dist/index.cjs\"\n },\n \"default\": \"./dist/index.js\"\n },\n \"./devtools-redux\": {\n \"import\": {\n \"types\": \"./dist/devtools-redux/index.d.ts\",\n \"default\": \"./dist/devtools-redux/index.js\"\n },\n \"require\": {\n \"types\": \"./dist/devtools-redux/index.d.cts\",\n \"default\": \"./dist/devtools-redux/index.cjs\"\n },\n \"default\": \"./dist/devtools-redux/index.js\"\n },\n \"./styles/*\": \"./dist/styles/*\",\n \"./templates/*\": \"./dist/templates/*\"\n },\n \"main\": \"./dist/index.cjs\",\n \"module\": \"./dist/index.js\",\n \"types\": \"./dist/index.d.ts\",\n \"bin\": {\n \"pcf-vite-harness\": \"./dist/bin/pcf-vite-harness.cjs\"\n },\n \"files\": [\n \"dist\",\n \"templates\",\n \"README.md\",\n \"LICENSE\"\n ],\n \"scripts\": {\n \"build\": \"tsup\",\n \"dev\": \"tsup --watch\",\n \"lint\": \"biome check .\",\n \"lint:fix\": \"biome check --write .\",\n \"format\": \"biome format --write .\",\n \"clean\": \"rm -rf dist\",\n \"prebuild\": \"npm run clean\",\n \"prepublishOnly\": \"npm run build\",\n \"test:integration\": \"cd tests/integration && vitest run\",\n \"test:e2e\": \"cd tests/e2e && npx playwright test\",\n \"test:cli:setup\": \"node tests/cli/setup-test-projects.js\",\n \"test:cli:install\": \"node tests/cli/install-in-test-projects.js\",\n \"dev:dataset\": \"cd tests/fixtures/pcf-dataset-test && npm run dev:pcf\",\n \"dev:field\": \"cd tests/fixtures/pcf-field-test && npm run dev:pcf\",\n \"dev:pcf\": \"vite --config dev/vite.config.ts\"\n },\n \"keywords\": [\n \"pcf\",\n \"powerapps\",\n \"component-framework\",\n \"vite\",\n \"hmr\",\n \"hot-reload\",\n \"development\",\n \"harness\",\n \"powerplatform\",\n \"dataverse\",\n \"react\",\n \"typescript\"\n ],\n \"author\": \"kristoffer88\",\n \"license\": \"MIT\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/kristoffer88/pcf-vite-harness\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/kristoffer88/pcf-vite-harness/issues\"\n },\n \"homepage\": \"https://github.com/kristoffer88/pcf-vite-harness#readme\",\n \"dependencies\": {\n \"@fluentui/react\": \"^8.123.4\",\n \"@redux-devtools/extension\": \"^3.3.0\",\n \"@vitejs/plugin-react\": \"^4.7.0\",\n \"commander\": \"^12.1.0\",\n \"dataverse-utilities\": \"^1\",\n \"fast-xml-parser\": \"^5.2.5\",\n \"glob\": \"^11.0.0\",\n \"immer\": \"^10.1.1\",\n \"@inquirer/prompts\": \"^7.0.0\",\n \"nanospinner\": \"^1.1.0\",\n \"react\": \"^18.0.0\",\n \"react-dom\": \"^18.0.0\",\n \"zustand\": \"^5.0.8\",\n \"vite\": \"^7.1.3\"\n },\n \"peerDependencies\": {\n \"vite\": \"^7.1.3\"\n },\n \"optionalDependencies\": {},\n \"devDependencies\": {\n \"@biomejs/biome\": \"^2.2.2\",\n \"@types/node\": \"^20.19.11\",\n \"@types/powerapps-component-framework\": \"^1.3.18\",\n \"@types/react\": \"^18.3.24\",\n \"@types/react-dom\": \"^18.3.7\",\n \"dotenv\": \"^16.4.5\",\n \"execa\": \"^9.6.0\",\n \"tsup\": \"^8.3.5\",\n \"typescript\": \"^5.9.2\",\n \"vitest\": \"^3.2.4\"\n }\n}","/**\n * Simple logger utility with progress bars and actionable error hints\n * Extracted from advanced CLI patterns for PCF Vite Harness\n */\n\nexport interface LoggerOptions {\n quiet?: boolean\n verbose?: boolean\n}\n\nexport class SimpleLogger {\n private quiet: boolean\n private verboseMode: boolean\n\n constructor(options: LoggerOptions = {}) {\n this.quiet = options.quiet || false\n this.verboseMode = options.verbose || false\n }\n\n info(message: string): void {\n if (this.quiet) return\n console.log(`ℹ️ ${message}`)\n }\n\n success(message: string): void {\n if (this.quiet) return\n console.log(`✅ ${message}`)\n }\n\n warning(message: string): void {\n console.log(`⚠️ ${message}`)\n }\n\n error(message: string, actionableHint?: string): void {\n const fullMessage = actionableHint ? `${message}\\n💡 Suggestion: ${actionableHint}` : message\n console.error(`❌ ${fullMessage}`)\n }\n\n verbose(message: string): void {\n if (this.verboseMode) {\n console.log(`🔍 [VERBOSE] ${message}`)\n }\n }\n\n progress(current: number, total: number, item?: string): void {\n if (this.quiet) return\n \n const percentage = Math.round((current / total) * 100)\n const itemText = item ? ` - ${item}` : ''\n const progressBar = this.createProgressBar(percentage)\n \n console.log(`📝 ${progressBar} ${current}/${total} (${percentage}%)${itemText}`)\n }\n \n private createProgressBar(percentage: number): string {\n const width = 20\n const filled = Math.round((percentage / 100) * width)\n const empty = width - filled\n return `[${'█'.repeat(filled)}${'░'.repeat(empty)}]`\n }\n\n /**\n * Display formatted statistics at the end of operations\n */\n stats(title: string, stats: Record<string, string | number>): void {\n if (this.quiet) return\n \n console.log(`📊 ${title}:`)\n const entries = Object.entries(stats)\n \n entries.forEach(([key, value], index) => {\n const isLast = index === entries.length - 1\n const prefix = isLast ? ' └─' : ' ├─'\n console.log(`${prefix} ${key}: ${value}`)\n })\n }\n\n /**\n * Get actionable hint for common error patterns\n */\n static getActionableHint(errorMessage: string): string | undefined {\n if (errorMessage.includes('ENOENT')) {\n return 'Check that the specified paths exist'\n } else if (errorMessage.includes('EACCES') || errorMessage.includes('not writable')) {\n return 'Check directory permissions or run with appropriate privileges'\n } else if (errorMessage.includes('Invalid entity name')) {\n return 'Use valid entity logical names (lowercase, underscore separated)'\n } else if (errorMessage.includes('Connection failed')) {\n return 'Verify your URL and authentication settings'\n } else if (errorMessage.includes('EADDRINUSE')) {\n return 'Port is already in use, try a different port number'\n } else if (errorMessage.includes('command not found')) {\n return 'Make sure the required CLI tools are installed and in your PATH'\n }\n \n return undefined\n }\n}","/**\n * Validation utilities for PCF Vite Harness\n * Includes URL validation and other common validation patterns\n */\n\nexport interface ValidationResult {\n isValid: boolean\n message?: string\n}\n\n/**\n * Validate Dataverse URL format\n */\nexport function validateDataverseUrl(url: string): ValidationResult {\n if (!url) {\n return { isValid: false, message: 'URL cannot be empty' }\n }\n\n try {\n const parsedUrl = new URL(url)\n \n // Must be HTTPS\n if (parsedUrl.protocol !== 'https:') {\n return { isValid: false, message: 'URL must use HTTPS protocol' }\n }\n\n // Must be a Dataverse domain pattern\n const hostname = parsedUrl.hostname.toLowerCase()\n const validPatterns = [\n /\\.crm\\d*\\.dynamics\\.com$/,\n /\\.crm\\d*\\.microsoftdynamics\\.com$/,\n /\\.crm\\d*\\.dynamics\\.cn$/,\n /\\.crm\\d*\\.microsoftdynamics\\.de$/,\n /\\.crm\\d*\\.microsoftdynamics\\.us$/\n ]\n\n const isValidDomain = validPatterns.some(pattern => pattern.test(hostname))\n if (!isValidDomain) {\n return { \n isValid: false, \n message: 'URL must be a valid Dataverse instance (e.g., https://yourorg.crm.dynamics.com)' \n }\n }\n\n return { isValid: true }\n } catch {\n return { isValid: false, message: 'Invalid URL format' }\n }\n}\n\n/**\n * Validate port number range\n */\nexport function validatePort(port: string | number): ValidationResult {\n const portNum = typeof port === 'string' ? Number.parseInt(port) : port\n \n if (isNaN(portNum) || portNum <= 0 || portNum >= 65536) {\n return { isValid: false, message: 'Port must be between 1 and 65535' }\n }\n \n return { isValid: true }\n}\n\n/**\n * Validate PCF component name\n */\nexport function validateComponentName(name: string): ValidationResult {\n if (!name || !name.trim()) {\n return { isValid: false, message: 'Component name cannot be empty' }\n }\n \n // PCF component names should be valid identifiers\n if (!/^[a-zA-Z][a-zA-Z0-9]*$/.test(name.trim())) {\n return { \n isValid: false, \n message: 'Component name must start with a letter and contain only letters and numbers' \n }\n }\n \n return { isValid: true }\n}\n\n/**\n * Validate PCF namespace\n */\nexport function validateNamespace(namespace: string): ValidationResult {\n if (!namespace || !namespace.trim()) {\n return { isValid: false, message: 'Namespace cannot be empty' }\n }\n \n // Namespace should be valid identifier\n if (!/^[a-zA-Z][a-zA-Z0-9]*$/.test(namespace.trim())) {\n return { \n isValid: false, \n message: 'Namespace must start with a letter and contain only letters and numbers' \n }\n }\n \n return { isValid: true }\n}","/**\n * Environment checker utility for PCF Vite Harness\n * Validates Azure CLI, authentication, PAC CLI, and other required tools\n */\n\nimport { exec } from 'node:child_process'\nimport { promisify } from 'node:util'\nimport { SimpleLogger } from './logger.js'\n\nconst execAsync = promisify(exec)\n\nexport interface EnvironmentCheckResult {\n isValid: boolean\n message?: string\n version?: string\n details?: string\n}\n\nexport interface EnvironmentStatus {\n nodejs: EnvironmentCheckResult\n azureCLI: EnvironmentCheckResult\n azureAuth: EnvironmentCheckResult\n pacCLI: EnvironmentCheckResult\n git?: EnvironmentCheckResult\n}\n\nexport class EnvironmentChecker {\n private logger: SimpleLogger\n\n constructor(logger: SimpleLogger) {\n this.logger = logger\n }\n\n /**\n * Perform comprehensive environment checks\n */\n async checkEnvironment(options: {\n requireAuth?: boolean\n requireGit?: boolean\n } = {}): Promise<EnvironmentStatus> {\n this.logger.info('🔍 Checking development environment...')\n \n const status: EnvironmentStatus = {\n nodejs: await this.checkNodeJS(),\n azureCLI: await this.checkAzureCLI(),\n azureAuth: options.requireAuth !== false ? await this.checkAzureAuth() : { isValid: true },\n pacCLI: await this.checkPacCLI(),\n git: options.requireGit ? await this.checkGit() : undefined\n }\n\n // Report results\n this.reportEnvironmentStatus(status)\n\n return status\n }\n\n /**\n * Quick basic checks (Node.js, Azure CLI, PAC CLI)\n */\n async checkBasicEnvironment(): Promise<EnvironmentStatus> {\n this.logger.info('🔍 Checking basic development environment...')\n \n const status: EnvironmentStatus = {\n nodejs: await this.checkNodeJS(),\n azureCLI: await this.checkAzureCLI(),\n azureAuth: { isValid: true }, // Skip auth check for basic\n pacCLI: await this.checkPacCLI()\n }\n\n // Report results (skip auth in basic mode)\n this.reportEnvironmentStatus(status, { skipAuth: true })\n\n return status\n }\n\n /**\n * Check Node.js version\n */\n private async checkNodeJS(): Promise<EnvironmentCheckResult> {\n const nodeVersion = process.version\n const majorVersion = Number.parseInt(nodeVersion.slice(1).split('.')[0] ?? '0')\n \n if (majorVersion < 18) {\n return {\n isValid: false,\n message: `Node.js 18 or higher is required. Current version: ${nodeVersion}`,\n version: nodeVersion\n }\n }\n\n this.logger.verbose(`Node.js version: ${nodeVersion}`)\n return { isValid: true, version: nodeVersion }\n }\n\n /**\n * Check Azure CLI availability\n */\n private async checkAzureCLI(): Promise<EnvironmentCheckResult> {\n try {\n const { stdout } = await execAsync('az --version')\n const versionMatch = stdout.match(/azure-cli\\\\s+([^\\\\s]+)/)\n const version = versionMatch?.[1]?.trim()\n \n this.logger.verbose(`Azure CLI version: ${version || 'unknown'}`)\n