1
0
Fork 0
mirror of https://github.com/dawidd6/action-ansible-playbook.git synced 2024-12-24 13:14:26 +00:00
action-ansible-playbook/node_modules/yaml/dist/schema/common/seq.js
2022-10-21 16:44:44 +02:00

35 lines
972 B
JavaScript

'use strict';
var createNode = require('../../doc/createNode.js');
var Node = require('../../nodes/Node.js');
var YAMLSeq = require('../../nodes/YAMLSeq.js');
function createSeq(schema, obj, ctx) {
const { replacer } = ctx;
const seq = new YAMLSeq.YAMLSeq(schema);
if (obj && Symbol.iterator in Object(obj)) {
let i = 0;
for (let it of obj) {
if (typeof replacer === 'function') {
const key = obj instanceof Set ? it : String(i++);
it = replacer.call(obj, key, it);
}
seq.items.push(createNode.createNode(it, undefined, ctx));
}
}
return seq;
}
const seq = {
collection: 'seq',
createNode: createSeq,
default: true,
nodeClass: YAMLSeq.YAMLSeq,
tag: 'tag:yaml.org,2002:seq',
resolve(seq, onError) {
if (!Node.isSeq(seq))
onError('Expected a sequence for this tag');
return seq;
}
};
exports.seq = seq;