{"version":3,"sources":["jsdelivr-header.js","/npm/@shopstic/openapi-typescript@5.5.1/dist/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,OCNO,SAAU,cACV,OAAQ,YACR,aAAc,kBACd,qBAAsB,uCACpB,QAAW,aACb,MAAQ,cAAe,qBAAwB,mBAC7C,mBAAsB,oBACtB,iBAAoB,8BACpB,qBAAwB,6BACxB,KAAK,oBACP,MAAM,eAAiB,qHAO9B,eAAe,UAAU,EAAQ,EAAU,CAAC,GACxC,MAAM,EAAM,CACR,qBAAsB,EAAQ,uBAAwB,EACtD,KAAM,EAAQ,KACd,cAAgD,iBAA1B,EAAQ,cAA6B,EAAQ,cAAgB,eACnF,mBAAoB,EAAQ,qBAAsB,EAClD,UAAW,GAAwC,mBAAtB,EAAQ,UAA2B,EAAQ,eAAY,EACpF,eAAgB,EAAQ,iBAAkB,EAC1C,aAAc,EAAQ,eAAgB,EACtC,cAAe,EAAQ,gBAAiB,EACxC,kBAAmB,EAAQ,kBAC3B,UAAW,EAAQ,YAAa,EAChC,mBAAoB,EAAQ,mBAC5B,QAAS,EAAQ,SAAW,GAE1B,EAAkC,iBAAV,GAAsB,aAAkB,KAAO,EAC7E,IAAI,EAAa,CAAC,EAClB,MAAM,EAAW,CAAC,EACZ,EAAa,CAAC,EACd,EAA8B,iBAAX,EAAsB,cAAc,GAAU,QACjE,KAAK,EAAW,IACf,EACH,QAAS,EACT,QAAS,EAAiB,IAAI,IAAI,kBAAoB,EACtD,YAAa,EAAQ,YACrB,WAAY,EAAQ,aAExB,IAAK,MAAM,KAAK,OAAO,KAAK,GAAa,CAEjC,KADiB,EAAiB,iBAAmB,EAAU,MAE/D,EAAa,EAAW,GAGxB,EAAS,GAAK,EAAW,EAEjC,CACA,IAAI,EAAS,EAAI,eACX,aAAyC,EAAS,EAAQ,UAAa,EAAI,YAC7E,EAAI,QAAU,eAAe,IACjC,MAAM,EAAY,aAAa,EAAY,IAAK,IAC1C,GAAsC,IAAvB,EAAQ,WAAsB,OAAS,YACtD,GAA8C,IAAvB,EAAQ,WAAsB,KAAO,GAC5D,GAA+C,IAAvB,EAAQ,WAAsB,IAAM,GAClE,IAAK,MAAM,KAAK,OAAO,KAAK,GACI,iBAAjB,EAAU,KACjB,GAAU,UAAU,KAAgB,IAAI,UAA6B,EAAU,aAGvF,GAAU,UAAU,aAAwB,QAC5C,MAAM,EAAe,OAAO,KAAK,GACjC,EAAa,MAAK,CAAC,EAAG,IAAM,EAAE,cAAc,EAAG,KAAM,CAAE,SAAS,MAChE,IAAK,MAAM,KAAgB,EAAc,CACrC,GAAU,MAAM,UAChB,MAAM,EAAiB,aAAa,EAAS,GAAe,IAAK,EAAK,UAAW,IACjF,IAAK,MAAM,KAAK,OAAO,KAAK,GACxB,GAAU,QAAQ,gBAAgB,EAAe,cAErD,GAAU,OACd,CACA,GAAU,IAAI,QACV,EAAI,eAAiB,EAAW,QAChC,GAAU,iBAAiB,EAAW,QAC1C,IAAI,EAAkB,CAClB,OAAQ,aACR,QAAS,CAAC,mBAEd,GAAI,GAAW,EAAQ,eACnB,IACI,MAAM,EAAqB,KAAK,QAAQ,QAAQ,MAAO,EAAQ,sBACzD,GAAG,SAAS,OAAO,EAAoB,GAAG,UAAU,MAC1D,MAAM,QAAoB,SAAS,cAAc,GACjD,EAAkB,IACV,GAAe,CAAC,KACjB,EACH,QAAS,IAAI,EAAgB,WAAc,GAAe,EAAY,SAAY,IAE1F,CACA,MAAO,GACH,QAAQ,MAAM,KAAK,KACnB,QAAQ,KAAK,EACjB,CAEJ,OAAO,SAAS,OAAO,EAAQ,EACnC,gBACe","file":"/npm/@shopstic/openapi-typescript@5.5.1/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.37.0.\n * Original file: /npm/@shopstic/openapi-typescript@5.5.1/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import path from \"path\";\nimport fs from \"fs\";\nimport prettier from \"prettier\";\nimport parserTypescript from \"prettier/parser-typescript.js\";\nimport { URL } from \"url\";\nimport load, { resolveSchema, VIRTUAL_JSON_URL } from \"./load.js\";\nimport { swaggerVersion } from \"./utils.js\";\nimport { transformAll } from \"./transform/index.js\";\nimport { makeApiPathsEnum } from \"./transform/paths.js\";\nexport * from \"./types.js\";\nexport const COMMENT_HEADER = `/**\n * This file was auto-generated by openapi-typescript.\n * Do not make direct changes to the file.\n */\n\n\n`;\nasync function openapiTS(schema, options = {}) {\n    const ctx = {\n        additionalProperties: options.additionalProperties || false,\n        auth: options.auth,\n        commentHeader: typeof options.commentHeader === \"string\" ? options.commentHeader : COMMENT_HEADER,\n        defaultNonNullable: options.defaultNonNullable || false,\n        formatter: options && typeof options.formatter === \"function\" ? options.formatter : undefined,\n        immutableTypes: options.immutableTypes || false,\n        contentNever: options.contentNever || false,\n        makePathsEnum: options.makePathsEnum || false,\n        pathParamsAsTypes: options.pathParamsAsTypes,\n        rawSchema: options.rawSchema || false,\n        supportArrayLength: options.supportArrayLength,\n        version: options.version || 3,\n    };\n    const isInlineSchema = typeof schema != \"string\" && schema instanceof URL == false;\n    let rootSchema = {};\n    const external = {};\n    const allSchemas = {};\n    const schemaURL = typeof schema === \"string\" ? resolveSchema(schema) : schema;\n    await load(schemaURL, {\n        ...ctx,\n        schemas: allSchemas,\n        rootURL: isInlineSchema ? new URL(VIRTUAL_JSON_URL) : schemaURL,\n        httpHeaders: options.httpHeaders,\n        httpMethod: options.httpMethod,\n    });\n    for (const k of Object.keys(allSchemas)) {\n        const rootSchemaID = isInlineSchema ? VIRTUAL_JSON_URL : schemaURL.href;\n        if (k === rootSchemaID) {\n            rootSchema = allSchemas[k];\n        }\n        else {\n            external[k] = allSchemas[k];\n        }\n    }\n    let output = ctx.commentHeader;\n    if (!(options === null || options === void 0 ? void 0 : options.version) && !ctx.rawSchema)\n        ctx.version = swaggerVersion(rootSchema);\n    const rootTypes = transformAll(rootSchema, { ...ctx });\n    const exportedKind = options.exportType === true ? \"type\" : \"interface\";\n    const exportedKindOperator = options.exportType === true ? \" =\" : \"\";\n    const exportedKindSemicolon = options.exportType === true ? \";\" : \"\";\n    for (const k of Object.keys(rootTypes)) {\n        if (typeof rootTypes[k] === \"string\") {\n            output += `export ${exportedKind} ${k}${exportedKindOperator} {\\n  ${rootTypes[k]}\\n}\\n\\n`;\n        }\n    }\n    output += `export ${exportedKind} external${exportedKindOperator} {\\n`;\n    const externalKeys = Object.keys(external);\n    externalKeys.sort((a, b) => a.localeCompare(b, \"en\", { numeric: true }));\n    for (const subschemaURL of externalKeys) {\n        output += `  \"${subschemaURL}\": {\\n`;\n        const subschemaTypes = transformAll(external[subschemaURL], { ...ctx, namespace: subschemaURL });\n        for (const k of Object.keys(subschemaTypes)) {\n            output += `    \"${k}\": {\\n      ${subschemaTypes[k]}\\n    }\\n`;\n        }\n        output += `  }\\n`;\n    }\n    output += `}${exportedKindSemicolon}\\n\\n`;\n    if (ctx.makePathsEnum && rootSchema.paths)\n        output += makeApiPathsEnum(rootSchema.paths);\n    let prettierOptions = {\n        parser: \"typescript\",\n        plugins: [parserTypescript],\n    };\n    if (options && options.prettierConfig) {\n        try {\n            const prettierConfigFile = path.resolve(process.cwd(), options.prettierConfig);\n            await fs.promises.access(prettierConfigFile, fs.constants.F_OK);\n            const userOptions = await prettier.resolveConfig(prettierConfigFile);\n            prettierOptions = {\n                ...(userOptions || {}),\n                ...prettierOptions,\n                plugins: [...prettierOptions.plugins, ...((userOptions && userOptions.plugins) || [])],\n            };\n        }\n        catch (err) {\n            console.error(`❌ ${err}`);\n            process.exit(1);\n        }\n    }\n    return prettier.format(output, prettierOptions);\n}\nexport default openapiTS;\n"]}