UNPKG

@1amageek/open-graph-protocol

Version:

An interface for Open Graph Protocol.

51 lines 1.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.OpenGraph = void 0; var OpenGraph; (function (OpenGraph) { // Object Types const buildIfArray = (object, iterator, parent) => { let data = []; for (const item of object) { const result = OpenGraph.build(item, iterator, parent); data = data.concat(result); } return data; }; const buildIfObject = (object, iterator, parent) => { let data = []; for (const key of Object.keys(object)) { const value = object[key]; const property = parent ? `${parent}:${key}` : key; const content = OpenGraph.build(value, iterator, property); data = data.concat(content); } return data; }; OpenGraph.build = (object, iterator, parent) => { let data = []; let property = parent; if (Array.isArray(object)) { const content = buildIfArray(object, iterator, property); data = data.concat(content); } else if (typeof object === "object") { const content = buildIfObject(object, iterator, property); data = data.concat(content); } else if (typeof object === "string") { const key = property; const value = `${object}`; const content = iterator(key, value); data.push(content); } else if (typeof object === "number") { const key = property; const value = `${object}`; const content = iterator(key, value); data.push(content); } return data; }; })(OpenGraph = exports.OpenGraph || (exports.OpenGraph = {})); //# sourceMappingURL=index.js.map