UNPKG

5.39 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../source/helpers.js"],"names":[],"mappings":"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","file":"helpers.js","sourcesContent":["// // if the variable is defined\nexport const exists = what => typeof what !== 'undefined'\n\n// used for JSON object type checking\nconst object_constructor = {}.constructor\n\n// detects a JSON object\nexport function is_object(object)\n{\n\treturn exists(object) && (object !== null) && object.constructor === object_constructor\n}\n\n// extends the first object with \n/* istanbul ignore next: some weird transpiled code, not testable */\nexport function extend(...objects)\n{\n\tconst to = objects[0]\n\tconst from = objects[1]\n\n\tif (objects.length > 2)\n\t{\n\t\tconst last = objects.pop()\n\t\tconst intermediary_result = extend.apply(this, objects)\n\t\treturn extend(intermediary_result, last)\n\t}\n\n\tfor (let key of Object.keys(from))\n\t{\n\t\tif (is_object(from[key]))\n\t\t{\n\t\t\tif (!is_object(to[key]))\n\t\t\t{\n\t\t\t\tto[key] = {}\n\t\t\t}\n\n\t\t\textend(to[key], from[key])\n\t\t}\n\t\telse\n\t\t{\n\t\t\tto[key] = from[key]\n\t\t}\n\t}\n\n\treturn to\n}\n\nexport function merge()\n{\n\tconst parameters = Array.prototype.slice.call(arguments, 0)\n\tparameters.unshift({})\n\treturn extend.apply(this, parameters)\n}\n\nexport function clone(object)\n{\n\treturn merge({}, object)\n}\n\n// creates camelCased aliases for all the keys of an object\nexport function convert_from_camel_case(object)\n{\n\tfor (let key of Object.keys(object))\n\t{\n\t\tif (/[A-Z]/.test(key))\n\t\t// if (key.indexOf('_') >= 0)\n\t\t{\n\t\t\t// const camel_cased_key = key.replace(/_(.)/g, function(match, group_1)\n\t\t\t// {\n\t\t\t// \treturn group_1.toUpperCase()\n\t\t\t// })\n\n\t\t\t// if (!exists(object[camel_cased_key]))\n\t\t\t// {\n\t\t\t// \tobject[camel_cased_key] = object[key]\n\t\t\t// \tdelete object[key]\n\t\t\t// }\n\n\t\t\tconst lo_dashed_key = key.replace(/([A-Z])/g, function(match, group_1)\n\t\t\t{\n\t\t\t\treturn '_' + group_1.toLowerCase()\n\t\t\t})\n\n\t\t\tif (!exists(object[lo_dashed_key]))\n\t\t\t{\n\t\t\t\tobject[lo_dashed_key] = object[key]\n\t\t\t\tdelete object[key]\n\t\t\t}\n\t\t}\n\t}\n\n\treturn object\n}\n\nfunction escape_regexp(string)\n{\n\tconst specials = new RegExp(\"[.*+?|()\\\\[\\\\]{}\\\\\\\\]\", 'g')\n\treturn string.replace(specials, \"\\\\$&\")\n}\n\nexport function replace_all(where, what, with_what)\n{\n\tconst regexp = new RegExp(escape_regexp(what), 'g')\n\treturn where.replace(regexp, with_what)\n}\n\nexport function starts_with(string, substring)\n{\n\treturn string.indexOf(substring) === 0\n}\n\nexport function ends_with(string, substring)\n{\n\tconst index = string.lastIndexOf(substring)\n\treturn index >= 0 && index === string.length - substring.length\n}"]}
\No newline at end of file