UNPKG

1.19 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _toConsumableArray2 = require('babel-runtime/helpers/toConsumableArray');
8
9var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
10
11var _fs = require('fs');
12
13var _fs2 = _interopRequireDefault(_fs);
14
15var _jsYaml = require('js-yaml');
16
17var _jsYaml2 = _interopRequireDefault(_jsYaml);
18
19function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
21var noOpScalarYamlType = {
22 kind: 'scalar',
23 construct: function construct() {
24 return null;
25 }
26};
27
28var noOpSequenceYamlType = {
29 kind: 'sequence',
30 construct: function construct() {
31 return null;
32 }
33};
34
35var noOpSchema = _jsYaml2.default.Schema.create([].concat((0, _toConsumableArray3.default)(['!Sub', '!Ref', '!GetAtt'].map(function (t) {
36 return new _jsYaml2.default.Type(t, noOpScalarYamlType);
37})), (0, _toConsumableArray3.default)(['!If', '!Sub', '!Equals'].map(function (t) {
38 return new _jsYaml2.default.Type(t, noOpSequenceYamlType);
39}))));
40
41exports.default = function (path) {
42 return _jsYaml2.default.safeLoad(_fs2.default.readFileSync(path, 'utf8'), { schema: noOpSchema });
43};
\No newline at end of file