mirror of
https://github.com/oven-sh/setup-bun.git
synced 2025-07-18 12:38:24 +02:00
feat: add @actions/cache
This commit is contained in:
parent
b15fb7d098
commit
16e8c96a41
1932 changed files with 261172 additions and 10 deletions
127
node_modules/xml2js/lib/builder.js
generated
vendored
Normal file
127
node_modules/xml2js/lib/builder.js
generated
vendored
Normal file
|
@ -0,0 +1,127 @@
|
|||
// Generated by CoffeeScript 1.12.7
|
||||
(function() {
|
||||
"use strict";
|
||||
var builder, defaults, escapeCDATA, requiresCDATA, wrapCDATA,
|
||||
hasProp = {}.hasOwnProperty;
|
||||
|
||||
builder = require('xmlbuilder');
|
||||
|
||||
defaults = require('./defaults').defaults;
|
||||
|
||||
requiresCDATA = function(entry) {
|
||||
return typeof entry === "string" && (entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0);
|
||||
};
|
||||
|
||||
wrapCDATA = function(entry) {
|
||||
return "<![CDATA[" + (escapeCDATA(entry)) + "]]>";
|
||||
};
|
||||
|
||||
escapeCDATA = function(entry) {
|
||||
return entry.replace(']]>', ']]]]><![CDATA[>');
|
||||
};
|
||||
|
||||
exports.Builder = (function() {
|
||||
function Builder(opts) {
|
||||
var key, ref, value;
|
||||
this.options = {};
|
||||
ref = defaults["0.2"];
|
||||
for (key in ref) {
|
||||
if (!hasProp.call(ref, key)) continue;
|
||||
value = ref[key];
|
||||
this.options[key] = value;
|
||||
}
|
||||
for (key in opts) {
|
||||
if (!hasProp.call(opts, key)) continue;
|
||||
value = opts[key];
|
||||
this.options[key] = value;
|
||||
}
|
||||
}
|
||||
|
||||
Builder.prototype.buildObject = function(rootObj) {
|
||||
var attrkey, charkey, render, rootElement, rootName;
|
||||
attrkey = this.options.attrkey;
|
||||
charkey = this.options.charkey;
|
||||
if ((Object.keys(rootObj).length === 1) && (this.options.rootName === defaults['0.2'].rootName)) {
|
||||
rootName = Object.keys(rootObj)[0];
|
||||
rootObj = rootObj[rootName];
|
||||
} else {
|
||||
rootName = this.options.rootName;
|
||||
}
|
||||
render = (function(_this) {
|
||||
return function(element, obj) {
|
||||
var attr, child, entry, index, key, value;
|
||||
if (typeof obj !== 'object') {
|
||||
if (_this.options.cdata && requiresCDATA(obj)) {
|
||||
element.raw(wrapCDATA(obj));
|
||||
} else {
|
||||
element.txt(obj);
|
||||
}
|
||||
} else if (Array.isArray(obj)) {
|
||||
for (index in obj) {
|
||||
if (!hasProp.call(obj, index)) continue;
|
||||
child = obj[index];
|
||||
for (key in child) {
|
||||
entry = child[key];
|
||||
element = render(element.ele(key), entry).up();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
for (key in obj) {
|
||||
if (!hasProp.call(obj, key)) continue;
|
||||
child = obj[key];
|
||||
if (key === attrkey) {
|
||||
if (typeof child === "object") {
|
||||
for (attr in child) {
|
||||
value = child[attr];
|
||||
element = element.att(attr, value);
|
||||
}
|
||||
}
|
||||
} else if (key === charkey) {
|
||||
if (_this.options.cdata && requiresCDATA(child)) {
|
||||
element = element.raw(wrapCDATA(child));
|
||||
} else {
|
||||
element = element.txt(child);
|
||||
}
|
||||
} else if (Array.isArray(child)) {
|
||||
for (index in child) {
|
||||
if (!hasProp.call(child, index)) continue;
|
||||
entry = child[index];
|
||||
if (typeof entry === 'string') {
|
||||
if (_this.options.cdata && requiresCDATA(entry)) {
|
||||
element = element.ele(key).raw(wrapCDATA(entry)).up();
|
||||
} else {
|
||||
element = element.ele(key, entry).up();
|
||||
}
|
||||
} else {
|
||||
element = render(element.ele(key), entry).up();
|
||||
}
|
||||
}
|
||||
} else if (typeof child === "object") {
|
||||
element = render(element.ele(key), child).up();
|
||||
} else {
|
||||
if (typeof child === 'string' && _this.options.cdata && requiresCDATA(child)) {
|
||||
element = element.ele(key).raw(wrapCDATA(child)).up();
|
||||
} else {
|
||||
if (child == null) {
|
||||
child = '';
|
||||
}
|
||||
element = element.ele(key, child.toString()).up();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return element;
|
||||
};
|
||||
})(this);
|
||||
rootElement = builder.create(rootName, this.options.xmldec, this.options.doctype, {
|
||||
headless: this.options.headless,
|
||||
allowSurrogateChars: this.options.allowSurrogateChars
|
||||
});
|
||||
return render(rootElement, rootObj).end(this.options.renderOpts);
|
||||
};
|
||||
|
||||
return Builder;
|
||||
|
||||
})();
|
||||
|
||||
}).call(this);
|
Loading…
Add table
Add a link
Reference in a new issue