1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | // TODO use lodash/fp instead
|
4 | var lodash_1 = require("lodash");
|
5 | /* LSV means JSON-LD @list or @set values
|
6 | */
|
7 | function arrayify(input) {
|
8 | if (typeof input === "undefined") {
|
9 | return [];
|
10 | }
|
11 | return lodash_1.isArray(input) ? input : [input];
|
12 | }
|
13 | exports.arrayify = arrayify;
|
14 | function 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 | }
|
20 | exports.isJsonldListSetPrimitive = isJsonldListSetPrimitive;
|
21 | function 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 | }
|
31 | exports.getValuesLSV = getValuesLSV;
|
32 | function intersectsLSV(x, y) {
|
33 | return !lodash_1.isEmpty(lodash_1.intersection(getValuesLSV(x), getValuesLSV(y)));
|
34 | }
|
35 | exports.intersectsLSV = intersectsLSV;
|
36 | function 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 | }
|
43 | exports.unionLSV = unionLSV;
|
44 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbmxkLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NwaW5vZmZzL2pzb25sZC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDZCQUE2QjtBQUM3QixpQ0FBd0U7QUEyQ3hFO0dBQ0c7QUFDSCxrQkFDRSxLQUFzRTtJQUV0RSxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsTUFBTSxDQUFDLGdCQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMxQyxDQUFDO0FBUEQsNEJBT0M7QUFFRCxrQ0FBeUMsQ0FBQztJQUN4QyxJQUFNLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQztJQUN0QixNQUFNLENBQUMsQ0FDTCxDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRCxDQUFDLEtBQUssSUFBSTtRQUNWLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQ3JELENBQUM7QUFDSixDQUFDO0FBUEQsNERBT0M7QUFFRCxzQkFDRSxLQUF5QjtJQUV6QixFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7U0FDbkIsR0FBRyxDQUFDLFVBQVMsQ0FBQztRQUNiLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0QsQ0FBQyxDQUFDO1NBQ0QsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7QUFDdEMsQ0FBQztBQVhELG9DQVdDO0FBRUQsdUJBQ0UsQ0FBcUIsRUFDckIsQ0FBcUI7SUFFckIsTUFBTSxDQUFDLENBQUMsZ0JBQU8sQ0FBQyxxQkFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFMRCxzQ0FLQztBQUVEO0lBQ0UsZ0JBQStCO1NBQS9CLFVBQStCLEVBQS9CLHFCQUErQixFQUEvQixJQUErQjtRQUEvQiwyQkFBK0I7O0lBRS9CLE1BQU0sQ0FBQyxjQUFLLENBQUMsZ0JBQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRCxDQUFDO0FBSkQsNEJBSUMifQ== |
\ | No newline at end of file |