push neon reactor

This commit is contained in:
2026-07-12 15:11:38 +02:00
parent 172e72dbcd
commit aeab5f7820
9597 changed files with 2407488 additions and 0 deletions
@@ -0,0 +1,41 @@
/*!
* Copyright (C) Microsoft Corporation. All rights reserved.
*/
import type { Vfs, VfsConfig, VfsFileStats, WriteFileOptions } from '@microsoft/power-apps-actions';
export declare class CliFS implements Vfs {
private readonly cwd;
constructor(config: VfsConfig);
rmdir(dirPath: string): Promise<void>;
/**
* Normalize and resolve a path within the VFS context
*/
private normalizePath;
/**
* Validate path for read access
*/
private validateReadPath;
/**
* Validate path for write access
*/
private validateWritePath;
getCwd(): string;
getAbsolutePath(relativePath: string): string;
readFile(inputPath: string, encoding?: BufferEncoding): Promise<string>;
writeFile(inputPath: string, content: string, options?: WriteFileOptions): Promise<void>;
appendFile(inputPath: string, content: string): Promise<void>;
readdir(inputPath: string): Promise<string[]>;
mkdir(inputPath: string, options?: {
recursive?: boolean;
}): Promise<void>;
exists(inputPath: string): Promise<boolean>;
stat(inputPath: string): Promise<VfsFileStats>;
isFile(inputPath: string): Promise<boolean>;
isDirectory(inputPath: string): Promise<boolean>;
resolve(...paths: string[]): string;
join(...paths: string[]): string;
relative(from: string, to: string): string;
basename(inputPath: string): string;
dirname(inputPath: string): string;
unlink(inputPath: string): Promise<void>;
}
//# sourceMappingURL=CliFs.d.ts.map
@@ -0,0 +1 @@
{"version":3,"file":"CliFs.d.ts","sourceRoot":"","sources":["../../src/FS/CliFs.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAIpG,qBAAa,KAAM,YAAW,GAAG;IAC/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,MAAM,EAAE,SAAS;IAQhB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlD;;OAEG;IACH,OAAO,CAAC,aAAa;IAOrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAMxB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAQlB,MAAM,IAAI,MAAM;IAIhB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAIvC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,GAAE,cAAwB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBhF,SAAS,CACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC;IAeH,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7D,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAM7C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM9E,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAY3C,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAa9C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3C,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMtD,OAAO,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM;IAInC,IAAI,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM;IAIhC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAI1C,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAInC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAIlC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIhD"}
@@ -0,0 +1,136 @@
import fs from 'fs';
import path from 'path';
export class CliFS {
cwd;
constructor(config) {
// Normalize and validate cwd
this.cwd = path.resolve(config.cwd);
if (!fs.existsSync(this.cwd)) {
throw new Error(`Current working directory does not exist: ${this.cwd}`);
}
}
async rmdir(dirPath) {
const normalizedPath = this.validateWritePath(dirPath);
await fs.promises.rm(normalizedPath, { recursive: true });
}
/**
* Normalize and resolve a path within the VFS context
*/
normalizePath(inputPath) {
if (path.isAbsolute(inputPath)) {
return path.resolve(inputPath);
}
return path.resolve(this.cwd, inputPath);
}
/**
* Validate path for read access
*/
validateReadPath(inputPath) {
const normalizedPath = this.normalizePath(inputPath);
return normalizedPath;
}
/**
* Validate path for write access
*/
validateWritePath(inputPath) {
const normalizedPath = this.normalizePath(inputPath);
return normalizedPath;
}
// VFS Interface Implementation
getCwd() {
return this.cwd;
}
getAbsolutePath(relativePath) {
return this.normalizePath(relativePath);
}
async readFile(inputPath, encoding = 'utf-8') {
const normalizedPath = this.validateReadPath(inputPath);
try {
return await fs.promises.readFile(normalizedPath, encoding);
}
catch (error) {
if (error instanceof Error) {
if (error.code === 'ENOENT') {
throw new Error(`File not found: ${normalizedPath}`);
}
throw new Error(`Failed to read file: ${error.message}`);
}
throw new Error('Unknown error occurred while reading file');
}
}
async writeFile(inputPath, content, options = {}) {
const normalizedPath = this.validateWritePath(inputPath);
const { createDirectories = true, encoding = 'utf-8' } = options;
// Create parent directories if needed
if (createDirectories) {
const parentDir = path.dirname(normalizedPath);
if (!fs.existsSync(parentDir)) {
await fs.promises.mkdir(parentDir, { recursive: true });
}
}
await fs.promises.writeFile(normalizedPath, content, { encoding });
}
async appendFile(inputPath, content) {
const normalizedPath = this.validateWritePath(inputPath);
await fs.promises.appendFile(normalizedPath, content, 'utf-8');
}
async readdir(inputPath) {
const normalizedPath = this.validateReadPath(inputPath);
return await fs.promises.readdir(normalizedPath);
}
async mkdir(inputPath, options = {}) {
const normalizedPath = this.validateWritePath(inputPath);
await fs.promises.mkdir(normalizedPath, options);
}
async exists(inputPath) {
const normalizedPath = this.normalizePath(inputPath);
// Don't check permissions for existence checks - just normalize the path
try {
await fs.promises.stat(normalizedPath);
return true;
}
catch {
return false;
}
}
async stat(inputPath) {
const normalizedPath = this.validateReadPath(inputPath);
const stats = await fs.promises.stat(normalizedPath);
return {
isFile: () => stats.isFile(),
isDirectory: () => stats.isDirectory(),
size: stats.size,
mtime: stats.mtime,
ctime: stats.ctime,
};
}
async isFile(inputPath) {
const stats = await this.stat(inputPath);
return stats.isFile();
}
async isDirectory(inputPath) {
const stats = await this.stat(inputPath);
return stats.isDirectory();
}
// Path operation methods (delegate to Node.js path module)
resolve(...paths) {
return path.resolve(...paths);
}
join(...paths) {
return path.join(...paths);
}
relative(from, to) {
return path.relative(from, to);
}
basename(inputPath) {
return path.basename(inputPath);
}
dirname(inputPath) {
return path.dirname(inputPath);
}
unlink(inputPath) {
const normalizedPath = this.validateWritePath(inputPath);
return fs.promises.unlink(normalizedPath);
}
}
//# sourceMappingURL=CliFs.js.map
@@ -0,0 +1 @@
{"version":3,"file":"CliFs.js","sourceRoot":"","sources":["../../src/FS/CliFs.ts"],"names":[],"mappings":"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"}