UNPKG

mlld

Version:

mlld: a modular prompt scripting language

1 lines 35.2 kB
{"version":3,"sources":["../core/types/variable/VariableFactories.ts"],"names":["createSimpleTextVariable","name","value","source","metadata","VariableFactory","createSimpleText","createInterpolatedTextVariable","interpolationPoints","createInterpolatedText","createTemplateVariable","parameters","templateSyntax","createTemplate","createFileContentVariable","filePath","createFileContent","undefined","createSectionContentVariable","sectionName","sectionSyntax","createSectionContent","createObjectVariable","isComplex","createObject","createArrayVariable","createArray","createComputedVariable","language","sourceCode","createComputed","createCommandResultVariable","command","exitCode","stderr","createCommandResult","createPathVariable","resolvedPath","originalPath","isURL","isAbsolute","security","createPath","createImportedVariable","originalType","importPath","isModule","variableName","createImported","createExecutableVariable","type","template","paramNames","createExecutable","createPipelineInputVariable","format","rawText","pipelineStage","createPipelineInput","createPrimitiveVariable","createPrimitive","createWhenExpressionVariable","definition","createWhenExpression","createdAt","Date","now","modifiedAt","encoding","importSource","path","isPipelineInput","primitiveType","fullMetadata","isEvaluated","conditionCount","conditions","length","hasParameters","parameterNames","createAutoTyped","Array","isArray","String","createTemplateAutoSyntax","includes","finalSource","directive","syntax","wrapperType","hasInterpolation","isMultiLine","createObjectWithComplexityDetection","detectComplexity","createArrayWithComplexityDetection","some","item","key","validateCreationParams","errors","push","match","valid","cloneWithMetadata","variable","newMetadata","updateValue","newValue"],"mappings":"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","file":"chunk-TU56GBG3.mjs","sourcesContent":["/**\n * Variable Factory Functions\n * \n * Consistent creation functions for all variable types with proper metadata handling.\n */\n\nimport {\n VariableSource,\n VariableMetadata,\n VariableTypeDiscriminator,\n SimpleTextVariable,\n InterpolatedTextVariable,\n TemplateVariable,\n FileContentVariable,\n SectionContentVariable,\n ObjectVariable,\n ArrayVariable,\n ComputedVariable,\n CommandResultVariable,\n PathVariable,\n ImportedVariable,\n ExecutableVariable,\n PipelineInputVariable,\n PrimitiveVariable,\n PipelineInput,\n WhenExpressionVariable,\n Variable\n} from './VariableTypes';\n\n// =========================================================================\n// INDIVIDUAL FACTORY FUNCTION EXPORTS (for backward compatibility)\n// =========================================================================\n\n/**\n * Create a SimpleTextVariable\n */\nexport function createSimpleTextVariable(\n name: string,\n value: string,\n source: VariableSource,\n metadata?: VariableMetadata\n): SimpleTextVariable {\n return VariableFactory.createSimpleText(name, value, source, metadata);\n}\n\n/**\n * Create an InterpolatedTextVariable\n */\nexport function createInterpolatedTextVariable(\n name: string,\n value: string,\n interpolationPoints: Array<{ start: number; end: number; expression: string }>,\n source: VariableSource,\n metadata?: VariableMetadata\n): InterpolatedTextVariable {\n return VariableFactory.createInterpolatedText(name, value, interpolationPoints, source, metadata);\n}\n\n/**\n * Create a TemplateVariable\n */\nexport function createTemplateVariable(\n name: string,\n value: string | any[],\n parameters: string[] | undefined,\n templateSyntax: 'double-bracket' | 'backtick' | 'doubleColon' | 'tripleColon',\n source: VariableSource,\n metadata?: VariableMetadata\n): TemplateVariable {\n return VariableFactory.createTemplate(name, value, parameters, templateSyntax, source, metadata);\n}\n\n/**\n * Create a FileContentVariable\n */\nexport function createFileContentVariable(\n name: string,\n value: string,\n filePath: string,\n source: VariableSource,\n metadata?: VariableMetadata\n): FileContentVariable {\n return VariableFactory.createFileContent(name, value, filePath, source, undefined, metadata);\n}\n\n/**\n * Create a SectionContentVariable\n */\nexport function createSectionContentVariable(\n name: string,\n value: string,\n filePath: string,\n sectionName: string,\n sectionSyntax: 'hash' | 'bracket',\n source: VariableSource,\n metadata?: VariableMetadata\n): SectionContentVariable {\n return VariableFactory.createSectionContent(name, value, filePath, sectionName, sectionSyntax, source, metadata);\n}\n\n/**\n * Create an ObjectVariable\n */\nexport function createObjectVariable(\n name: string,\n value: Record<string, any>,\n isComplex: boolean,\n source: VariableSource,\n metadata?: VariableMetadata\n): ObjectVariable {\n return VariableFactory.createObject(name, value, isComplex, source, metadata);\n}\n\n/**\n * Create an ArrayVariable\n */\nexport function createArrayVariable(\n name: string,\n value: any[],\n isComplex: boolean,\n source: VariableSource,\n metadata?: VariableMetadata\n): ArrayVariable {\n return VariableFactory.createArray(name, value, isComplex, source, metadata);\n}\n\n/**\n * Create a ComputedVariable\n */\nexport function createComputedVariable(\n name: string,\n value: any,\n language: 'js' | 'node' | 'python' | 'sh',\n sourceCode: string,\n source: VariableSource,\n metadata?: VariableMetadata\n): ComputedVariable {\n return VariableFactory.createComputed(name, value, language, sourceCode, source, metadata);\n}\n\n/**\n * Create a CommandResultVariable\n */\nexport function createCommandResultVariable(\n name: string,\n value: string,\n command: string,\n source: VariableSource,\n exitCode?: number,\n stderr?: string,\n metadata?: VariableMetadata\n): CommandResultVariable {\n return VariableFactory.createCommandResult(name, value, command, source, exitCode, stderr, metadata);\n}\n\n/**\n * Create a PathVariable\n */\nexport function createPathVariable(\n name: string,\n resolvedPath: string,\n originalPath: string,\n isURL: boolean,\n isAbsolute: boolean,\n source: VariableSource,\n security?: { trust?: 'high' | 'medium' | 'low'; ttl?: number },\n metadata?: VariableMetadata\n): PathVariable {\n return VariableFactory.createPath(name, resolvedPath, originalPath, isURL, isAbsolute, source, security, metadata);\n}\n\n/**\n * Create an ImportedVariable\n */\nexport function createImportedVariable(\n name: string,\n value: any,\n originalType: VariableTypeDiscriminator,\n importPath: string,\n isModule: boolean,\n variableName: string,\n source: VariableSource,\n metadata?: VariableMetadata\n): ImportedVariable {\n return VariableFactory.createImported(name, value, originalType, importPath, isModule, variableName, source, metadata);\n}\n\n/**\n * Create an ExecutableVariable\n */\nexport function createExecutableVariable(\n name: string,\n type: 'command' | 'code',\n template: string,\n paramNames: string[],\n language: 'js' | 'node' | 'python' | 'sh' | 'bash' | undefined,\n source: VariableSource,\n metadata?: VariableMetadata\n): ExecutableVariable {\n return VariableFactory.createExecutable(name, type, template, paramNames, language, source, metadata);\n}\n\n/**\n * Create a PipelineInputVariable\n */\nexport function createPipelineInputVariable(\n name: string,\n value: PipelineInput,\n format: 'json' | 'csv' | 'xml' | 'text',\n rawText: string,\n source: VariableSource,\n pipelineStage?: number\n): PipelineInputVariable {\n return VariableFactory.createPipelineInput(name, value, format, rawText, source, pipelineStage);\n}\n\n/**\n * Create a PrimitiveVariable\n */\nexport function createPrimitiveVariable(\n name: string,\n value: number | boolean | null,\n source: VariableSource,\n metadata?: VariableMetadata\n): PrimitiveVariable {\n return VariableFactory.createPrimitive(name, value, source, metadata);\n}\n\n/**\n * Create a WhenExpressionVariable\n */\nexport function createWhenExpressionVariable(\n name: string,\n definition: any, // WhenExpressionNode - using any to avoid circular dependency\n source: VariableSource,\n metadata?: VariableMetadata\n): WhenExpressionVariable {\n return VariableFactory.createWhenExpression(name, definition, source, metadata);\n}\n\n// =========================================================================\n// FACTORY CLASS\n// =========================================================================\n\n/**\n * Factory class for creating variables with consistent patterns\n */\nexport class VariableFactory {\n \n // =========================================================================\n // TEXT VARIABLE FACTORIES\n // =========================================================================\n\n /**\n * Create a SimpleTextVariable\n */\n static createSimpleText(\n name: string,\n value: string,\n source: VariableSource,\n metadata?: VariableMetadata\n ): SimpleTextVariable {\n return {\n type: 'simple-text',\n name,\n value,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create an InterpolatedTextVariable\n */\n static createInterpolatedText(\n name: string,\n value: string,\n interpolationPoints: Array<{ start: number; end: number; expression: string }>,\n source: VariableSource,\n metadata?: VariableMetadata\n ): InterpolatedTextVariable {\n return {\n type: 'interpolated-text',\n name,\n value,\n interpolationPoints,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create a TemplateVariable\n */\n static createTemplate(\n name: string,\n value: string | any[],\n parameters: string[] | undefined,\n templateSyntax: 'double-bracket' | 'backtick' | 'doubleColon' | 'tripleColon',\n source: VariableSource,\n metadata?: VariableMetadata\n ): TemplateVariable {\n return {\n type: 'template',\n name,\n value,\n parameters,\n templateSyntax,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n // =========================================================================\n // CONTENT VARIABLE FACTORIES\n // =========================================================================\n\n /**\n * Create a FileContentVariable\n */\n static createFileContent(\n name: string,\n value: string,\n filePath: string,\n source: VariableSource,\n encoding?: string,\n metadata?: VariableMetadata\n ): FileContentVariable {\n return {\n type: 'file-content',\n name,\n value,\n filePath,\n encoding,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create a SectionContentVariable\n */\n static createSectionContent(\n name: string,\n value: string,\n filePath: string,\n sectionName: string,\n sectionSyntax: 'hash' | 'bracket',\n source: VariableSource,\n metadata?: VariableMetadata\n ): SectionContentVariable {\n return {\n type: 'section-content',\n name,\n value,\n filePath,\n sectionName,\n sectionSyntax,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n // =========================================================================\n // STRUCTURED DATA FACTORIES\n // =========================================================================\n\n /**\n * Create an ObjectVariable\n */\n static createObject(\n name: string,\n value: Record<string, any>,\n isComplex: boolean,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ObjectVariable {\n return {\n type: 'object',\n name,\n value,\n isComplex,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create an ArrayVariable\n */\n static createArray(\n name: string,\n value: any[],\n isComplex: boolean,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ArrayVariable {\n return {\n type: 'array',\n name,\n value,\n isComplex,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n // =========================================================================\n // COMPUTED VARIABLE FACTORIES\n // =========================================================================\n\n /**\n * Create a ComputedVariable\n */\n static createComputed(\n name: string,\n value: any,\n language: 'js' | 'node' | 'python' | 'sh',\n sourceCode: string,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ComputedVariable {\n return {\n type: 'computed',\n name,\n value,\n language,\n sourceCode,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create a CommandResultVariable\n */\n static createCommandResult(\n name: string,\n value: string,\n command: string,\n source: VariableSource,\n exitCode?: number,\n stderr?: string,\n metadata?: VariableMetadata\n ): CommandResultVariable {\n return {\n type: 'command-result',\n name,\n value,\n command,\n exitCode,\n stderr,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n // =========================================================================\n // SPECIAL VARIABLE FACTORIES\n // =========================================================================\n\n /**\n * Create a PathVariable\n */\n static createPath(\n name: string,\n resolvedPath: string,\n originalPath: string,\n isURL: boolean,\n isAbsolute: boolean,\n source: VariableSource,\n security?: { trust?: 'high' | 'medium' | 'low'; ttl?: number },\n metadata?: VariableMetadata\n ): PathVariable {\n return {\n type: 'path',\n name,\n value: {\n resolvedPath,\n originalPath,\n isURL,\n isAbsolute,\n security\n },\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create an ImportedVariable\n */\n static createImported(\n name: string,\n value: any,\n originalType: VariableTypeDiscriminator,\n importPath: string,\n isModule: boolean,\n variableName: string,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ImportedVariable {\n return {\n type: 'imported',\n name,\n value,\n originalType,\n importSource: {\n path: importPath,\n isModule,\n variableName\n },\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create an ExecutableVariable\n */\n static createExecutable(\n name: string,\n type: 'command' | 'code',\n template: string,\n paramNames: string[],\n language: 'js' | 'node' | 'python' | 'sh' | 'bash' | undefined,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ExecutableVariable {\n return {\n type: 'executable',\n name,\n value: {\n type,\n template,\n language\n },\n paramNames,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create a PipelineInputVariable\n */\n static createPipelineInput(\n name: string,\n value: PipelineInput,\n format: 'json' | 'csv' | 'xml' | 'text',\n rawText: string,\n source: VariableSource,\n pipelineStage?: number\n ): PipelineInputVariable {\n return {\n type: 'pipeline-input',\n name,\n value,\n format,\n rawText,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata: {\n isPipelineInput: true,\n pipelineStage\n }\n };\n }\n\n /**\n * Create a PrimitiveVariable\n */\n static createPrimitive(\n name: string,\n value: number | boolean | null,\n source: VariableSource,\n metadata?: VariableMetadata\n ): PrimitiveVariable {\n return {\n type: 'primitive',\n name,\n value,\n primitiveType: value === null ? 'null' : typeof value as 'number' | 'boolean',\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata\n };\n }\n\n /**\n * Create a WhenExpressionVariable\n */\n static createWhenExpression(\n name: string,\n definition: any, // WhenExpressionNode - using any to avoid circular dependency\n source: VariableSource,\n metadata?: VariableMetadata\n ): WhenExpressionVariable {\n const fullMetadata: VariableMetadata & WhenExpressionVariable['metadata'] = {\n ...metadata,\n isEvaluated: false,\n conditionCount: definition.conditions?.length || 0,\n hasParameters: false,\n parameterNames: []\n };\n\n return {\n type: 'when-expression',\n name,\n value: null, // Will be populated on first evaluation\n definition,\n source,\n createdAt: Date.now(),\n modifiedAt: Date.now(),\n metadata: fullMetadata\n };\n }\n\n // =========================================================================\n // CONVENIENCE FACTORY METHODS\n // =========================================================================\n\n /**\n * Create a variable with auto-detected type based on value\n */\n static createAutoTyped(\n name: string,\n value: any,\n source: VariableSource,\n metadata?: VariableMetadata\n ): SimpleTextVariable | ObjectVariable | ArrayVariable | PrimitiveVariable {\n // Auto-detect type based on value\n if (typeof value === 'string') {\n return this.createSimpleText(name, value, source, metadata);\n } else if (typeof value === 'number' || typeof value === 'boolean' || value === null) {\n return this.createPrimitive(name, value, source, metadata);\n } else if (Array.isArray(value)) {\n return this.createArray(name, value, false, source, metadata);\n } else if (typeof value === 'object' && value !== null) {\n return this.createObject(name, value, false, source, metadata);\n } else {\n // Fallback to simple text with string conversion\n return this.createSimpleText(name, String(value), source, metadata);\n }\n }\n\n /**\n * Create a template variable with auto-detected syntax\n */\n static createTemplateAutoSyntax(\n name: string,\n value: string,\n parameters?: string[],\n source?: VariableSource,\n metadata?: VariableMetadata\n ): TemplateVariable {\n // Detect template syntax from content\n const templateSyntax = value.includes('{{') && value.includes('}}') \n ? 'double-bracket' \n : 'backtick';\n \n const finalSource = source || {\n directive: 'var' as const,\n syntax: 'template' as const,\n wrapperType: templateSyntax === 'double-bracket' ? undefined : 'backtick',\n hasInterpolation: true,\n isMultiLine: value.includes('\\n')\n };\n\n return this.createTemplate(name, value, parameters, templateSyntax, finalSource, metadata);\n }\n\n /**\n * Create an object variable with complexity detection\n */\n static createObjectWithComplexityDetection(\n name: string,\n value: Record<string, any>,\n source: VariableSource,\n metadata?: VariableMetadata\n ): ObjectVariable {\n // Simple heuristic for complexity detection\n const isComplex = this.detectComplexity(value);\n return this.createObject(name, value, isComplex, source, metadata);\n }\n\n /**\n * Create an array variable with complexity detection\n */\n static createArrayWithComplexityDetection(\n name: string,\n value: any[],\n source: VariableSource,\n metadata?: VariableMetadata\n ): ArrayVariable {\n // Simple heuristic for complexity detection\n const isComplex = value.some(item => \n typeof item === 'object' && item !== null && this.detectComplexity(item)\n );\n return this.createArray(name, value, isComplex, source, metadata);\n }\n\n // =========================================================================\n // HELPER METHODS\n // =========================================================================\n\n /**\n * Simple complexity detection heuristic\n */\n private static detectComplexity(value: any): boolean {\n if (typeof value !== 'object' || value === null) {\n return false;\n }\n\n // Check for nested objects or arrays\n for (const key in value) {\n const item = value[key];\n if (typeof item === 'object' && item !== null) {\n return true;\n }\n // Check for strings that might contain directives\n if (typeof item === 'string' && (item.includes('/') || item.includes('@'))) {\n return true;\n }\n }\n\n return false;\n }\n\n /**\n * Validate variable creation parameters\n */\n static validateCreationParams(\n name: string,\n value: any,\n source: VariableSource\n ): { valid: boolean; errors: string[] } {\n const errors: string[] = [];\n\n if (!name || typeof name !== 'string') {\n errors.push('Variable name must be a non-empty string');\n }\n\n if (name && !name.match(/^[a-zA-Z_][a-zA-Z0-9_]*$/)) {\n errors.push('Variable name must be a valid identifier');\n }\n\n if (!source || typeof source !== 'object') {\n errors.push('Variable source must be provided');\n }\n\n if (source && !source.directive) {\n errors.push('Variable source must have a directive');\n }\n\n return {\n valid: errors.length === 0,\n errors\n };\n }\n\n /**\n * Clone a variable with updated metadata\n */\n static cloneWithMetadata<T extends import('./VariableTypes').Variable = import('./VariableTypes').Variable>(\n variable: T,\n newMetadata: VariableMetadata\n ): T {\n return {\n ...variable,\n metadata: { ...variable.metadata, ...newMetadata },\n modifiedAt: Date.now()\n } as T;\n }\n\n /**\n * Update variable value while preserving type safety\n */\n static updateValue<T extends import('./VariableTypes').Variable = import('./VariableTypes').Variable>(\n variable: T,\n newValue: any\n ): T {\n return {\n ...variable,\n value: newValue,\n modifiedAt: Date.now()\n } as T;\n }\n}"]}