UNPKG

framework-entersol-web

Version:

Framework based on bootstrap 5

3 lines 5.51 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports["default"]=void 0;var _deepMerge=_interopRequireDefault(require("./deep-merge.js"));var _flat=_interopRequireDefault(require("flat"));function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}function _toArray(r){return _arrayWithHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _arrayWithHoles(r){if(Array.isArray(r))return r}function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_unsupportedIterableToArray(r)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(r,a){if(r){if("string"==typeof r)return _arrayLikeToArray(r,a);var t={}.toString.call(r).slice(8,-1);return"Object"===t&&r.constructor&&(t=r.constructor.name),"Map"===t||"Set"===t?Array.from(r):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_arrayLikeToArray(r,a):void 0}}function _iterableToArray(r){if("undefined"!=typeof Symbol&&null!=r[Symbol.iterator]||null!=r["@@iterator"])return Array.from(r)}function _arrayWithoutHoles(r){if(Array.isArray(r))return _arrayLikeToArray(r)}function _arrayLikeToArray(r,a){(null==a||a>r.length)&&(a=r.length);for(var e=0,n=Array(a);e<a;e++)n[e]=r[e];return n}function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function _defineProperty(e,r,t){return(r=_toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+""}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}var unflatten=_flat["default"].unflatten;var _default=exports["default"]=function _default(object){var schema=arguments.length>1&&arguments[1]!==undefined?arguments[1]:JSON.parse(JSON.stringify(object));var rules=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var extraTasks=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var processRules=function processRules(key){if(!rules[key])return undefined;var tasks=_objectSpread({iterate:function iterate(keyData,itemName){var data=_loop(keyData);if(!Array.isArray(data))return[];var itemFound=key.substring(1).split("/").reduce(function(obj,key){return obj[key]},schema);var builded=data.map(function(item){schema[itemName]=item;return _loop(itemFound)});delete schema[itemName];return builded},join:function join(first,_join){var f=_loop(first);if(Array.isArray(f))return f.join(_join);for(var _len=arguments.length,next=new Array(_len>2?_len-2:0),_key=2;_key<_len;_key++){next[_key-2]=arguments[_key]}return[f].concat(_toConsumableArray(_loop([_join,next]))).join("")},ignore:function ignore(d,def){return d.substring(1).split("/").reduce(function(obj,key){return obj[key]},schema)||def},"if":function _if(d,found,def){return d.substring(1).split("/").reduce(function(obj,key){return obj[key]},schema)&&_loop(found)||def}},extraTasks);var _rules$key=_toArray(rules[key]),task=_rules$key[0],attrs=_rules$key.slice(1);return tasks[task].apply(tasks,_toConsumableArray(attrs))};var _loop=function loop(item){if(item===null)return item;if(Array.isArray(item)){return item.map(function(a){return _loop(a)}).flat()}else if(_typeof(item)==="object"){var toReturn={};if(item.ref){var ref=item.ref;delete item.ref;var unflattened=unflatten(item,{safe:true,delimiter:"/"});var refObj=_loop(ref);var modify=_loop(unflattened);if(typeof refObj==="string")toReturn=(0,_deepMerge["default"])({ref:refObj},modify);else toReturn=(0,_deepMerge["default"])({},refObj,modify)}else{Object.keys(item).forEach(function(i){toReturn[i]=_loop(item[i])})}return toReturn}else if(typeof item==="string"&&item[0]==="$"){var fixed=processRules(item);if(fixed!==undefined)return fixed;var keys=item.substring(1).split("/");// Obtiene el contenido de $path/to/element var data;try{data=keys.reduce(function(obj,key){return obj[key]},schema);data=JSON.parse(JSON.stringify(data))}catch(error){return item}return _loop(data)}else return item};return _loop(JSON.parse(JSON.stringify(object)))}; //# sourceMappingURL=resolve-refs.js.map