UNPKG

3.18 kBSource Map (JSON)View Raw
1{"version":3,"names":["_helperPluginUtils","require","PIPELINE_PROPOSALS","TOPIC_TOKENS","documentationURL","_default","exports","default","declare","api","proposal","topicToken","assertVersion","includes","proposalList","map","p","join","Error","topicTokenList","t","name","manipulateOptions","opts","parserOpts","plugins","push","generatorOpts"],"sources":["../src/index.ts"],"sourcesContent":["import { declare } from \"@babel/helper-plugin-utils\";\n\nconst PIPELINE_PROPOSALS = [\"minimal\", \"fsharp\", \"hack\", \"smart\"] as const;\nconst TOPIC_TOKENS = [\"^^\", \"@@\", \"^\", \"%\", \"#\"] as const;\nconst documentationURL =\n \"https://babeljs.io/docs/en/babel-plugin-proposal-pipeline-operator\";\n\nexport interface Options {\n proposal: (typeof PIPELINE_PROPOSALS)[number];\n topicToken?: (typeof TOPIC_TOKENS)[number];\n}\n\nexport default declare((api, { proposal, topicToken }: Options) => {\n api.assertVersion(\n process.env.BABEL_8_BREAKING && process.env.IS_PUBLISH\n ? PACKAGE_JSON.version\n : 7,\n );\n\n if (typeof proposal !== \"string\" || !PIPELINE_PROPOSALS.includes(proposal)) {\n const proposalList = PIPELINE_PROPOSALS.map(p => `\"${p}\"`).join(\", \");\n throw new Error(\n `The pipeline plugin requires a \"proposal\" option. \"proposal\" must be one of: ${proposalList}. See <${documentationURL}>.`,\n );\n }\n\n if (proposal === \"hack\" && !TOPIC_TOKENS.includes(topicToken)) {\n const topicTokenList = TOPIC_TOKENS.map(t => `\"${t}\"`).join(\", \");\n throw new Error(\n `The pipeline plugin in \"proposal\": \"hack\" mode also requires a \"topicToken\" option. \"topicToken\" must be one of: ${topicTokenList}. See <${documentationURL}>.`,\n );\n }\n\n return {\n name: \"syntax-pipeline-operator\",\n\n manipulateOptions(opts, parserOpts) {\n // Add parser options.\n parserOpts.plugins.push([\"pipelineOperator\", { proposal, topicToken }]);\n\n // Add generator options.\n opts.generatorOpts.topicToken = topicToken;\n },\n };\n});\n"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAEA,MAAMC,kBAAkB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAU;AAC1E,MAAMC,YAAY,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AACzD,MAAMC,gBAAgB,GACpB,oEAAoE;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAOxD,IAAAC,0BAAO,EAAC,CAACC,GAAG,EAAE;EAAEC,QAAQ;EAAEC;AAAoB,CAAC,KAAK;EACjEF,GAAG,CAACG,aAAa,CAGX,CACN,CAAC;EAED,IAAI,OAAOF,QAAQ,KAAK,QAAQ,IAAI,CAACR,kBAAkB,CAACW,QAAQ,CAACH,QAAQ,CAAC,EAAE;IAC1E,MAAMI,YAAY,GAAGZ,kBAAkB,CAACa,GAAG,CAACC,CAAC,IAAK,IAAGA,CAAE,GAAE,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;IACrE,MAAM,IAAIC,KAAK,CACZ,gFAA+EJ,YAAa,UAASV,gBAAiB,IACzH,CAAC;EACH;EAEA,IAAIM,QAAQ,KAAK,MAAM,IAAI,CAACP,YAAY,CAACU,QAAQ,CAACF,UAAU,CAAC,EAAE;IAC7D,MAAMQ,cAAc,GAAGhB,YAAY,CAACY,GAAG,CAACK,CAAC,IAAK,IAAGA,CAAE,GAAE,CAAC,CAACH,IAAI,CAAC,IAAI,CAAC;IACjE,MAAM,IAAIC,KAAK,CACZ,oHAAmHC,cAAe,UAASf,gBAAiB,IAC/J,CAAC;EACH;EAEA,OAAO;IACLiB,IAAI,EAAE,0BAA0B;IAEhCC,iBAAiBA,CAACC,IAAI,EAAEC,UAAU,EAAE;MAElCA,UAAU,CAACC,OAAO,CAACC,IAAI,CAAC,CAAC,kBAAkB,EAAE;QAAEhB,QAAQ;QAAEC;MAAW,CAAC,CAAC,CAAC;MAGvEY,IAAI,CAACI,aAAa,CAAChB,UAAU,GAAGA,UAAU;IAC5C;EACF,CAAC;AACH,CAAC,CAAC"}
\No newline at end of file