{"version":3,"sources":["../core/types/variable/VariableFactories.ts"],"names":[],"mappings":"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","file":"chunk-CHF7KR7X.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  StructuredValueVariable,\n  PrimitiveVariable,\n  PipelineInput,\n  Variable\n} from './VariableTypes';\nimport type { StructuredValue, StructuredValueType } from '@interpreter/utils/structured-value';\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  metadata?: VariableMetadata\n): PathVariable {\n  return VariableFactory.createPath(name, resolvedPath, originalPath, isURL, isAbsolute, source, 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 StructuredValueVariable\n */\nexport function createStructuredValueVariable(\n  name: string,\n  value: StructuredValue,\n  source: VariableSource,\n  metadata?: VariableMetadata\n): StructuredValueVariable {\n  return VariableFactory.createStructuredValue(name, value, source, metadata);\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// =========================================================================\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    metadata?: VariableMetadata\n  ): PathVariable {\n    return {\n      type: 'path',\n      name,\n      value: {\n        resolvedPath,\n        originalPath,\n        isURL,\n        isAbsolute\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 StructuredValueVariable\n   */\n  static createStructuredValue(\n    name: string,\n    value: StructuredValue,\n    source: VariableSource,\n    metadata?: VariableMetadata\n  ): StructuredValueVariable {\n    const structuredMetadata: VariableMetadata = {\n      ...metadata,\n      isStructuredValue: true,\n      structuredValueType: value.type\n    };\n\n    return {\n      type: 'structured',\n      name,\n      value,\n      source,\n      createdAt: Date.now(),\n      modifiedAt: Date.now(),\n      metadata: structuredMetadata\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  // =========================================================================\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}\n"]}