{"version":3,"sources":["../src/processors/createExtendSxProp.ts"],"names":[],"mappings":";;;;;;;;;;;AAQa,IAAA,2BAAA,GAAN,cAA0C,aAAc,CAAA;AAAA,EAC7D,WAAA,CAAY,WAAmB,IAA2B,EAAA;AACxD,IAAA,KAAA,CAAM,CAAC,MAAO,CAAA,CAAC,CAAC,CAAA,EAAG,GAAG,IAAI,CAAA;AAC1B,IAAe,cAAA,CAAA,MAAA,EAAQ,CAAC,QAAA,EAAU,CAAC,MAAM,CAAC,CAAA,EAAG,CAAkB,eAAA,EAAA,IAAA,CAAK,SAAU,CAAA,QAAQ,CAAO,KAAA,CAAA,CAAA;AAAA;AAC/F;AAAA,EAGA,KAAc,GAAA;AAAA;AAAC,EAEf,qBAA8B,GAAA;AAC5B,IAAK,IAAA,CAAA,QAAA,CAAS,IAAK,CAAA,KAAA,EAAO,KAAK,CAAA;AAAA;AACjC,EAEA,IAAI,KAAoB,GAAA;AACtB,IAAO,OAAA,IAAA,CAAK,WAAW,WAAY,EAAA;AAAA;AACrC,EAEA,oBAA6B,GAAA;AAC3B,IAAA,MAAM,IAAI,IAAK,CAAA,UAAA;AAEf,IAAA,MAAM,+BAA+B,CAAE,CAAA,cAAA;AAAA,MACrC,KAAK,SAAU,CAAA,QAAA;AAAA,MACf,KAAK,aAAc;AAAA,KACrB;AAEA,IAAA,IAAA,CAAK,SAAS,CAAE,CAAA,cAAA,CAAe,8BAA8B,EAAE,GAAG,IAAI,CAAA;AAAA;AACxE,EAEA,IAAoB,UAAqB,GAAA;AAEvC,IAAO,OAAA,CAAA,CAAA,EAAI,KAAK,SAAS,CAAA,CAAA;AAAA;AAE7B","file":"createExtendSxProp.mjs","sourcesContent":["import {\n  validateParams,\n  type Expression,\n  type Params,\n  type TailProcessorParams,\n} from '@wyw-in-js/processor-utils';\nimport BaseProcessor from './base-processor';\n\nexport class CreateExtendSxPropProcessor extends BaseProcessor {\n  constructor(params: Params, ...args: TailProcessorParams) {\n    super([params[0]], ...args);\n    validateParams(params, ['callee', ['call']], `Invalid use of ${this.tagSource.imported} tag.`);\n  }\n\n  // eslint-disable-next-line class-methods-use-this\n  build(): void {}\n\n  doEvaltimeReplacement(): void {\n    this.replacer(this.value, false);\n  }\n\n  get value(): Expression {\n    return this.astService.nullLiteral();\n  }\n\n  doRuntimeReplacement(): void {\n    const t = this.astService;\n\n    const extendSxPropImportIdentifier = t.addNamedImport(\n      this.tagSource.imported,\n      this.getImportPath(),\n    );\n\n    this.replacer(t.callExpression(extendSxPropImportIdentifier, []), true);\n  }\n\n  public override get asSelector(): string {\n    // For completeness, this is not intended to be used.\n    return `.${this.className}`;\n  }\n}\n"]}