'use strict'; var YAML = require('js-yaml'); var toSource = require('tosource'); var pluginutils = require('@rollup/pluginutils'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var YAML__default = /*#__PURE__*/_interopDefaultLegacy(YAML); var toSource__default = /*#__PURE__*/_interopDefaultLegacy(toSource); const defaults = { documentMode: 'single', safe: true, transform: null }; const ext = /\.ya?ml$/; function yaml(opts = {}) { const options = Object.assign({}, defaults, opts); const { documentMode, safe } = options; const filter = pluginutils.createFilter(options.include, options.exclude); let loadMethod = null; if (documentMode === 'single') { loadMethod = safe ? YAML__default['default'].load : YAML__default['default'].safeLoad; } else if (documentMode === 'multi') { loadMethod = safe ? YAML__default['default'].loadAll : YAML__default['default'].safeLoadAll; } else { this.error( `plugin-yaml → documentMode: '${documentMode}' is not a valid value. Please choose 'single' or 'multi'` ); } return { name: 'yaml', transform(content, id) { if (!ext.test(id)) return null; if (!filter(id)) return null; let data = loadMethod(content); if (typeof options.transform === 'function') { const result = options.transform(data, id); // eslint-disable-next-line no-undefined if (result !== undefined) { data = result; } } const keys = Object.keys(data).filter((key) => key === pluginutils.makeLegalIdentifier(key)); const code = `var data = ${toSource__default['default'](data)};\n\n`; const exports = ['export default data;'] .concat(keys.map((key) => `export var ${key} = data.${key};`)) .join('\n'); return { code: code + exports, map: { mappings: '' } }; } }; } module.exports = yaml; //# sourceMappingURL=index.js.map