UNPKG

3.18 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3// TODO use lodash/fp instead
4var lodash_1 = require("lodash");
5/* LSV means JSON-LD @list or @set values
6 */
7function arrayify(input) {
8 if (typeof input === "undefined") {
9 return [];
10 }
11 return lodash_1.isArray(input) ? input : [input];
12}
13exports.arrayify = arrayify;
14function isJsonldListSetPrimitive(x) {
15 var TYPE = typeof x;
16 return (["string", "number", "boolean"].indexOf(TYPE) > -1 ||
17 x === null ||
18 (TYPE !== "undefined" && x.hasOwnProperty("@value")));
19}
20exports.isJsonldListSetPrimitive = isJsonldListSetPrimitive;
21function getValuesLSV(input) {
22 if (typeof input === "undefined") {
23 return [];
24 }
25 return arrayify(input)
26 .map(function (x) {
27 return x && x.hasOwnProperty("@value") ? x["@value"] : x;
28 })
29 .filter(isJsonldListSetPrimitive);
30}
31exports.getValuesLSV = getValuesLSV;
32function intersectsLSV(x, y) {
33 return !lodash_1.isEmpty(lodash_1.intersection(getValuesLSV(x), getValuesLSV(y)));
34}
35exports.intersectsLSV = intersectsLSV;
36function unionLSV() {
37 var inputs = [];
38 for (var _i = 0; _i < arguments.length; _i++) {
39 inputs[_i] = arguments[_i];
40 }
41 return lodash_1.union(lodash_1.flatten(inputs.map(getValuesLSV)));
42}
43exports.unionLSV = unionLSV;
44//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbmxkLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NwaW5vZmZzL2pzb25sZC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZCQUE2QjtBQUM3QixpQ0FBd0U7QUEyQ3hFO0dBQ0c7QUFDSCxrQkFDRSxLQUFzRTtJQUV0RSxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsTUFBTSxDQUFDLGdCQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMxQyxDQUFDO0FBUEQsNEJBT0M7QUFFRCxrQ0FBeUMsQ0FBQztJQUN4QyxJQUFNLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQztJQUN0QixNQUFNLENBQUMsQ0FDTCxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRCxDQUFDLEtBQUssSUFBSTtRQUNWLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQ3JELENBQUM7QUFDSixDQUFDO0FBUEQsNERBT0M7QUFFRCxzQkFDRSxLQUF5QjtJQUV6QixFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7U0FDbkIsR0FBRyxDQUFDLFVBQVMsQ0FBQztRQUNiLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQyxDQUFDO1NBQ0QsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDdEMsQ0FBQztBQVhELG9DQVdDO0FBRUQsdUJBQ0UsQ0FBcUIsRUFDckIsQ0FBcUI7SUFFckIsTUFBTSxDQUFDLENBQUMsZ0JBQU8sQ0FBQyxxQkFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFMRCxzQ0FLQztBQUVEO0lBQ0UsZ0JBQStCO1NBQS9CLFVBQStCLEVBQS9CLHFCQUErQixFQUEvQixJQUErQjtRQUEvQiwyQkFBK0I7O0lBRS9CLE1BQU0sQ0FBQyxjQUFLLENBQUMsZ0JBQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRCxDQUFDO0FBSkQsNEJBSUMifQ==
\No newline at end of file