rdfjs-wrapper 0.1.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/class/context.d.ts +9 -0
- package/dist/class/context.js +21 -0
- package/dist/class/context.js.map +1 -0
- package/dist/class/property.d.ts +20 -0
- package/dist/class/property.js +77 -0
- package/dist/class/property.js.map +1 -0
- package/dist/class/property_reader.d.ts +13 -0
- package/dist/class/property_reader.js +53 -0
- package/dist/class/property_reader.js.map +1 -0
- package/dist/class/property_writer.d.ts +8 -0
- package/dist/class/property_writer.js +33 -0
- package/dist/class/property_writer.js.map +1 -0
- package/dist/class/resource.d.ts +21 -0
- package/dist/class/resource.js +131 -0
- package/dist/class/resource.js.map +1 -0
- package/dist/class/wrapper.d.ts +23 -5
- package/dist/class/wrapper.js +53 -9
- package/dist/class/wrapper.js.map +1 -1
- package/dist/mod.d.ts +6 -11
- package/dist/mod.js +6 -38
- package/dist/mod.js.map +1 -1
- package/dist/vocabulary/xsd.d.ts +41 -0
- package/dist/vocabulary/xsd.js +43 -0
- package/dist/vocabulary/xsd.js.map +1 -0
- package/package.json +29 -29
- package/dist/algorithm/getter.d.ts +0 -3
- package/dist/algorithm/getter.js +0 -49
- package/dist/algorithm/getter.js.map +0 -1
- package/dist/algorithm/set_literal.d.ts +0 -2
- package/dist/algorithm/set_literal.js +0 -12
- package/dist/algorithm/set_literal.js.map +0 -1
- package/dist/algorithm/set_node.d.ts +0 -4
- package/dist/algorithm/set_node.js +0 -12
- package/dist/algorithm/set_node.js.map +0 -1
- package/dist/algorithm/wrap.d.ts +0 -3
- package/dist/algorithm/wrap.js +0 -31
- package/dist/algorithm/wrap.js.map +0 -1
- package/dist/class/literal_wrapper.d.ts +0 -7
- package/dist/class/literal_wrapper.js +0 -15
- package/dist/class/literal_wrapper.js.map +0 -1
- package/dist/class/node_wrapper.d.ts +0 -6
- package/dist/class/node_wrapper.js +0 -12
- package/dist/class/node_wrapper.js.map +0 -1
- package/dist/class/property_wrapper.d.ts +0 -22
- package/dist/class/property_wrapper.js +0 -82
- package/dist/class/property_wrapper.js.map +0 -1
- package/dist/class/wrapping_set.d.ts +0 -21
- package/dist/class/wrapping_set.js +0 -74
- package/dist/class/wrapping_set.js.map +0 -1
- package/dist/constant/term_type.d.ts +0 -1
- package/dist/constant/term_type.js +0 -12
- package/dist/constant/term_type.js.map +0 -1
- package/dist/error/cardinality_error.d.ts +0 -3
- package/dist/error/cardinality_error.js +0 -10
- package/dist/error/cardinality_error.js.map +0 -1
- package/dist/error/missing_value_error.d.ts +0 -3
- package/dist/error/missing_value_error.js +0 -10
- package/dist/error/missing_value_error.js.map +0 -1
- package/dist/error/term_type_error.d.ts +0 -3
- package/dist/error/term_type_error.js +0 -10
- package/dist/error/term_type_error.js.map +0 -1
- package/dist/error/wrapper_type_error.d.ts +0 -3
- package/dist/error/wrapper_type_error.js +0 -10
- package/dist/error/wrapper_type_error.js.map +0 -1
- package/dist/factory/string_factory.d.ts +0 -2
- package/dist/factory/string_factory.js +0 -12
- package/dist/factory/string_factory.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/dist/type/i_literal_wrapper_constructor.d.ts +0 -4
- package/dist/type/i_literal_wrapper_constructor.js +0 -3
- package/dist/type/i_literal_wrapper_constructor.js.map +0 -1
- package/dist/type/i_node_wrapper_constructor.d.ts +0 -4
- package/dist/type/i_node_wrapper_constructor.js +0 -3
- package/dist/type/i_node_wrapper_constructor.js.map +0 -1
- package/dist/type/i_term_type.d.ts +0 -2
- package/dist/type/i_term_type.js +0 -3
- package/dist/type/i_term_type.js.map +0 -1
- package/dist/type/i_wrapper_constructor.d.ts +0 -3
- package/dist/type/i_wrapper_constructor.js +0 -3
- package/dist/type/i_wrapper_constructor.js.map +0 -1
- package/dist/types.d.ts +0 -4
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DataFactory, DatasetCore, Quad, Term } from "@rdfjs/types";
|
|
2
|
+
export declare class Context {
|
|
3
|
+
#private;
|
|
4
|
+
constructor(dataset: DatasetCore, factory: DataFactory);
|
|
5
|
+
get factory(): DataFactory<Quad, Quad>;
|
|
6
|
+
read(s?: Term | null, p?: Term | null, o?: Term | null, g?: Term | null): DatasetCore;
|
|
7
|
+
write(q: Quad): void;
|
|
8
|
+
delete(q: Quad): void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export class Context {
|
|
2
|
+
#dataset;
|
|
3
|
+
#factory;
|
|
4
|
+
constructor(dataset, factory) {
|
|
5
|
+
this.#dataset = dataset;
|
|
6
|
+
this.#factory = factory;
|
|
7
|
+
}
|
|
8
|
+
get factory() {
|
|
9
|
+
return this.#factory;
|
|
10
|
+
}
|
|
11
|
+
read(s, p, o, g) {
|
|
12
|
+
return this.#dataset.match(s, p, o, g);
|
|
13
|
+
}
|
|
14
|
+
write(q) {
|
|
15
|
+
this.#dataset.add(q);
|
|
16
|
+
}
|
|
17
|
+
delete(q) {
|
|
18
|
+
this.#dataset.delete(q);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/class/context.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,OAAO;IAClB,QAAQ,CAAa;IACrB,QAAQ,CAAa;IAErB,YAAmB,OAAoB,EAAE,OAAoB;QAC3D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;QACvB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAA;IACzB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,IAAI,CAAC,CAAe,EAAE,CAAe,EAAE,CAAe,EAAE,CAAe;QAC5E,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC;IAEM,KAAK,CAAC,CAAO;QAClB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACtB,CAAC;IAEM,MAAM,CAAC,CAAO;QACnB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACzB,CAAC;CACF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { NamedNode, Quad, Term } from "@rdfjs/types";
|
|
2
|
+
import type { Wrapper } from "./wrapper.js";
|
|
3
|
+
export declare class Property<T> implements Set<T> {
|
|
4
|
+
private iri;
|
|
5
|
+
private reader;
|
|
6
|
+
private writer;
|
|
7
|
+
private wrapper;
|
|
8
|
+
constructor(iri: NamedNode, reader: (term: Term) => T, writer: (value: T) => Set<Quad>, wrapper: Wrapper);
|
|
9
|
+
add(value: T): this;
|
|
10
|
+
clear(): void;
|
|
11
|
+
delete(value: T): boolean;
|
|
12
|
+
forEach(callbackfn: (item: T, index: T, set: Set<T>) => void, thisArg?: unknown): void;
|
|
13
|
+
has(value: T): boolean;
|
|
14
|
+
get size(): number;
|
|
15
|
+
[Symbol.iterator](): IterableIterator<T>;
|
|
16
|
+
entries(): IterableIterator<[T, T]>;
|
|
17
|
+
keys(): IterableIterator<T>;
|
|
18
|
+
values(): IterableIterator<T>;
|
|
19
|
+
get [Symbol.toStringTag](): string;
|
|
20
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
export class Property {
|
|
2
|
+
iri;
|
|
3
|
+
reader;
|
|
4
|
+
writer;
|
|
5
|
+
wrapper;
|
|
6
|
+
constructor(iri, reader, writer, wrapper) {
|
|
7
|
+
this.iri = iri;
|
|
8
|
+
this.reader = reader;
|
|
9
|
+
this.writer = writer;
|
|
10
|
+
this.wrapper = wrapper;
|
|
11
|
+
}
|
|
12
|
+
add(value) {
|
|
13
|
+
this.writer(value).forEach(q => this.wrapper.write(q));
|
|
14
|
+
return this;
|
|
15
|
+
}
|
|
16
|
+
clear() {
|
|
17
|
+
for (const q of this.wrapper.read(this.wrapper.resource, this.iri)) {
|
|
18
|
+
this.wrapper.delete(q);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
delete(value) {
|
|
22
|
+
var quads = this.writer(value);
|
|
23
|
+
if (quads.size == 0) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
for (const q of quads) {
|
|
27
|
+
this.wrapper.delete(q);
|
|
28
|
+
}
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
forEach(callbackfn, thisArg) {
|
|
32
|
+
for (const item of this) {
|
|
33
|
+
callbackfn.call(thisArg, item, item, this);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
has(value) {
|
|
37
|
+
var quads = this.writer(value);
|
|
38
|
+
if (quads.size === 0) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
for (var q of quads) {
|
|
42
|
+
if (this.wrapper.read(q.subject, q.predicate, q.object).size == 0) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
get size() {
|
|
49
|
+
return Array.from(this).length;
|
|
50
|
+
}
|
|
51
|
+
[Symbol.iterator]() {
|
|
52
|
+
return this.values();
|
|
53
|
+
}
|
|
54
|
+
*entries() {
|
|
55
|
+
for (const t of this) {
|
|
56
|
+
yield [t, t];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
keys() {
|
|
60
|
+
return this.values();
|
|
61
|
+
}
|
|
62
|
+
*values() {
|
|
63
|
+
for (const q of this.wrapper.read(this.wrapper.resource, this.iri)) {
|
|
64
|
+
if (q.object.termType == "Quad") {
|
|
65
|
+
throw new Error("Value Factories do not support Quad conversion");
|
|
66
|
+
}
|
|
67
|
+
if (q.object.termType == "Variable") {
|
|
68
|
+
throw new Error("Value Factories do not support Variable conversion");
|
|
69
|
+
}
|
|
70
|
+
yield this.reader(q.object);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
get [Symbol.toStringTag]() {
|
|
74
|
+
return `Property wrapper for subject ${this.wrapper.resource.value} predicate ${this.iri.value}`;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=property.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"property.js","sourceRoot":"","sources":["../../src/class/property.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { BlankNode, Literal, NamedNode, Term } from "@rdfjs/types";
|
|
2
|
+
import type { Context } from "./context.js";
|
|
3
|
+
import type { Wrapper, WrapperConstructor } from "./wrapper.js";
|
|
4
|
+
export declare abstract class PropertyReader {
|
|
5
|
+
static toResource(): (x: Term) => BlankNode | NamedNode | Literal;
|
|
6
|
+
static toNode(): (x: Term) => BlankNode | NamedNode;
|
|
7
|
+
static toBlankNode(): (x: Term) => BlankNode;
|
|
8
|
+
static toNamedNode(): (x: Term) => NamedNode;
|
|
9
|
+
static toLiteral(): (x: Term) => Literal;
|
|
10
|
+
static toString(): (x: Term) => string;
|
|
11
|
+
static toNumber(): (x: Term) => string;
|
|
12
|
+
static toWrapper<T extends Wrapper>(w: WrapperConstructor<T>): (context: Context) => (x: Term) => T;
|
|
13
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Resource } from "./resource.js";
|
|
2
|
+
export class PropertyReader {
|
|
3
|
+
static toResource() {
|
|
4
|
+
return (x) => {
|
|
5
|
+
Resource.assertResource(x);
|
|
6
|
+
return x;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
static toNode() {
|
|
10
|
+
return (x) => {
|
|
11
|
+
Resource.assertNode(x);
|
|
12
|
+
return x;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
static toBlankNode() {
|
|
16
|
+
return (x) => {
|
|
17
|
+
Resource.assertBlankNode(x);
|
|
18
|
+
return x;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
static toNamedNode() {
|
|
22
|
+
return (x) => {
|
|
23
|
+
Resource.assertNamedNode(x);
|
|
24
|
+
return x;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
static toLiteral() {
|
|
28
|
+
return (x) => {
|
|
29
|
+
Resource.assertLiteral(x);
|
|
30
|
+
return x;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
static toString() {
|
|
34
|
+
return (x) => {
|
|
35
|
+
Resource.assertString(x);
|
|
36
|
+
return x.value;
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
static toNumber() {
|
|
40
|
+
return (x) => {
|
|
41
|
+
Resource.assertNumber(x);
|
|
42
|
+
return x.value;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
static toWrapper(w) {
|
|
46
|
+
return (context) => {
|
|
47
|
+
return (x) => {
|
|
48
|
+
return new w(x, context);
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=property_reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"property_reader.js","sourceRoot":"","sources":["../../src/class/property_reader.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,OAAgB,cAAc;IAClC,MAAM,CAAC,UAAU;QACf,OAAO,CAAC,CAAO,EAAmC,EAAE;YAClD,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAA;YAE1B,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,MAAM;QACX,OAAO,CAAC,CAAO,EAAyB,EAAE;YACxC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;YAEtB,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,CAAC,CAAO,EAAa,EAAE;YAC5B,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YAE3B,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW;QAChB,OAAO,CAAC,CAAO,EAAa,EAAE;YAC5B,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;YAE3B,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,SAAS;QACd,OAAO,CAAC,CAAO,EAAW,EAAE;YAC1B,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;YAEzB,OAAO,CAAC,CAAA;QACV,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ;QACb,OAAO,CAAC,CAAO,EAAU,EAAE;YACzB,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAExB,OAAO,CAAC,CAAC,KAAK,CAAA;QAChB,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,QAAQ;QACb,OAAO,CAAC,CAAO,EAAU,EAAE;YACzB,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;YAExB,OAAO,CAAC,CAAC,KAAK,CAAA;QAChB,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,SAAS,CAAoB,CAAwB;QAG1D,OAAO,CAAC,OAAgB,EAAE,EAAE;YAC1B,OAAO,CAAC,CAAO,EAAK,EAAE;gBACpB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YAC1B,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BlankNode, NamedNode, Quad } from "@rdfjs/types";
|
|
2
|
+
import type { Wrapper, WrapperConstructor } from "./wrapper.js";
|
|
3
|
+
import type { Context } from "./context.js";
|
|
4
|
+
export declare class PropertyWriter {
|
|
5
|
+
static fromString(resource: BlankNode | NamedNode, property: NamedNode, context: Context): (x: string) => Set<Quad>;
|
|
6
|
+
static fromNumber(resource: BlankNode | NamedNode, property: NamedNode, context: Context): (x: number) => Set<Quad>;
|
|
7
|
+
static fromWrapper<T extends Wrapper>(w: WrapperConstructor<T>): (resource: BlankNode | NamedNode, property: NamedNode, context: Context) => (x: T) => Set<Quad>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Resource } from "./resource.js";
|
|
2
|
+
export class PropertyWriter {
|
|
3
|
+
// static asLiteral(x: string, factory: DataFactory): Literal {
|
|
4
|
+
// return factory.literal(x)
|
|
5
|
+
// }
|
|
6
|
+
static fromString(resource, property, context) {
|
|
7
|
+
return (x) => {
|
|
8
|
+
var quads = new Set();
|
|
9
|
+
quads.add(context.factory.quad(resource, property, context.factory.literal(x)));
|
|
10
|
+
return quads;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
static fromNumber(resource, property, context) {
|
|
14
|
+
return (x) => {
|
|
15
|
+
var quads = new Set();
|
|
16
|
+
quads.add(context.factory.quad(resource, property, Resource.asNumberDatatypeLiteral(x, context.factory)));
|
|
17
|
+
return quads;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
static fromWrapper(w) {
|
|
21
|
+
return (resource, property, context) => {
|
|
22
|
+
return (x) => {
|
|
23
|
+
var quads = new Set();
|
|
24
|
+
quads.add(context.factory.quad(resource, property, x.resource));
|
|
25
|
+
for (var q of x.read()) {
|
|
26
|
+
quads.add(q);
|
|
27
|
+
}
|
|
28
|
+
return quads;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=property_writer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"property_writer.js","sourceRoot":"","sources":["../../src/class/property_writer.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,OAAO,cAAc;IACzB,+DAA+D;IAC/D,8BAA8B;IAC9B,IAAI;IAEJ,MAAM,CAAC,UAAU,CACf,QAA+B,EAC/B,QAAmB,EACnB,OAAgB;QAEhB,OAAO,CAAC,CAAS,EAAa,EAAE;YAC9B,IAAI,KAAK,GAAG,IAAI,GAAG,EAAQ,CAAA;YAC3B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAC/E,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,UAAU,CACf,QAA+B,EAC/B,QAAmB,EACnB,OAAgB;QAEhB,OAAO,CAAC,CAAS,EAAa,EAAE;YAC9B,IAAI,KAAK,GAAG,IAAI,GAAG,EAAQ,CAAA;YAC3B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,uBAAuB,CAAC,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACzG,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAoB,CAAwB;QAK5D,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;YACrC,OAAO,CAAC,CAAI,EAAa,EAAE;gBACzB,IAAI,KAAK,GAAG,IAAI,GAAG,EAAQ,CAAA;gBAE3B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;gBAE/D,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBACtB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;iBACb;gBACD,OAAO,KAAK,CAAA;YACd,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { BlankNode, DataFactory, Literal, NamedNode, Term } from "@rdfjs/types";
|
|
2
|
+
export declare abstract class Resource {
|
|
3
|
+
static isResource(x: Term): x is BlankNode | NamedNode | Literal;
|
|
4
|
+
static assertResource(x: Term): asserts x is BlankNode | NamedNode | Literal;
|
|
5
|
+
static asNode(factory: DataFactory, x?: NamedNode | URL | string): BlankNode | NamedNode | Literal;
|
|
6
|
+
static isNode(x: Term): x is BlankNode | NamedNode;
|
|
7
|
+
static assertNode(x: Term): asserts x is BlankNode | NamedNode;
|
|
8
|
+
static asBlankNode(factory: DataFactory, x?: string): BlankNode;
|
|
9
|
+
static isBlankNode(x: Term): x is BlankNode;
|
|
10
|
+
static assertBlankNode(x: Term): asserts x is BlankNode;
|
|
11
|
+
static asNamedNode(x: NamedNode | URL | string, factory: DataFactory): NamedNode;
|
|
12
|
+
static isNamedNode(x: Term): x is NamedNode;
|
|
13
|
+
static assertNamedNode(x: Term): asserts x is NamedNode;
|
|
14
|
+
static isLiteral(x: Term): x is Literal;
|
|
15
|
+
static assertLiteral(x: Term): asserts x is Literal;
|
|
16
|
+
static isString(x: Term): x is Literal;
|
|
17
|
+
static assertString(x: Term): asserts x is Literal;
|
|
18
|
+
static asNumberDatatypeLiteral(x: number, factory: DataFactory): Literal;
|
|
19
|
+
static isNumber(x: Term): x is Literal;
|
|
20
|
+
static assertNumber(x: Term): asserts x is Literal;
|
|
21
|
+
}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { XSD } from "../vocabulary/xsd.js";
|
|
2
|
+
export class Resource {
|
|
3
|
+
static isResource(x) {
|
|
4
|
+
if (!Resource.isBlankNode(x) && !Resource.isNamedNode(x) && !Resource.isLiteral(x)) {
|
|
5
|
+
return false;
|
|
6
|
+
}
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
static assertResource(x) {
|
|
10
|
+
if (!Resource.isResource(x)) {
|
|
11
|
+
throw new Error("Term is not a BlankNode, NamedNode or Literal");
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
static asNode(factory, x) {
|
|
15
|
+
var node;
|
|
16
|
+
if (!x) {
|
|
17
|
+
node = factory.blankNode();
|
|
18
|
+
}
|
|
19
|
+
else if (typeof x == "string") {
|
|
20
|
+
node = factory.namedNode(new URL(x).href);
|
|
21
|
+
}
|
|
22
|
+
else if (x instanceof URL) {
|
|
23
|
+
node = factory.namedNode(x.href);
|
|
24
|
+
}
|
|
25
|
+
else if (x.termType == "NamedNode") {
|
|
26
|
+
node = x;
|
|
27
|
+
}
|
|
28
|
+
if (!node) {
|
|
29
|
+
throw Error("Term is not a NamedNode a URL or a string");
|
|
30
|
+
}
|
|
31
|
+
return node;
|
|
32
|
+
}
|
|
33
|
+
static isNode(x) {
|
|
34
|
+
if (!Resource.isBlankNode(x) && !Resource.isNamedNode(x)) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
static assertNode(x) {
|
|
40
|
+
if (!Resource.isNode(x)) {
|
|
41
|
+
throw new Error("Term is not a BlankNode or NamedNode");
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
static asBlankNode(factory, x) {
|
|
45
|
+
return factory.blankNode(x);
|
|
46
|
+
}
|
|
47
|
+
static isBlankNode(x) {
|
|
48
|
+
if (x.termType !== "BlankNode") {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
static assertBlankNode(x) {
|
|
54
|
+
if (!Resource.isBlankNode(x)) {
|
|
55
|
+
throw new Error("Term is not a BlankNode");
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
static asNamedNode(x, factory) {
|
|
59
|
+
var namedNode;
|
|
60
|
+
if (typeof x == "string") {
|
|
61
|
+
namedNode = factory.namedNode(new URL(x).href);
|
|
62
|
+
}
|
|
63
|
+
else if (x instanceof URL) {
|
|
64
|
+
namedNode = factory.namedNode(x.href);
|
|
65
|
+
}
|
|
66
|
+
else if (x.termType == "NamedNode") {
|
|
67
|
+
namedNode = x;
|
|
68
|
+
}
|
|
69
|
+
if (!namedNode) {
|
|
70
|
+
throw Error("Term is not a NamedNode a URL or a String");
|
|
71
|
+
}
|
|
72
|
+
return namedNode;
|
|
73
|
+
}
|
|
74
|
+
static isNamedNode(x) {
|
|
75
|
+
if (x.termType !== "NamedNode") {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
static assertNamedNode(x) {
|
|
81
|
+
if (!Resource.isNamedNode(x)) {
|
|
82
|
+
throw new Error("Term is not a NamedNode");
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
static isLiteral(x) {
|
|
86
|
+
if (x.termType !== "Literal") {
|
|
87
|
+
return false;
|
|
88
|
+
}
|
|
89
|
+
return true;
|
|
90
|
+
}
|
|
91
|
+
static assertLiteral(x) {
|
|
92
|
+
if (!Resource.isLiteral(x)) {
|
|
93
|
+
throw new Error("Term is not a Literal");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
static isString(x) {
|
|
97
|
+
Resource.assertLiteral(x);
|
|
98
|
+
if (x.datatype.value !== "" && x.datatype.value !== XSD.string) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
static assertString(x) {
|
|
104
|
+
if (!Resource.isString(x)) {
|
|
105
|
+
throw new Error("Term is not a string Literal");
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
// TODO: extract to factory
|
|
109
|
+
static asNumberDatatypeLiteral(x, factory) {
|
|
110
|
+
if (Number.isNaN(x)) {
|
|
111
|
+
throw new Error("Value is not a Number");
|
|
112
|
+
}
|
|
113
|
+
if (Number.isInteger(x)) {
|
|
114
|
+
return factory.literal(x.toString(), XSD.integer);
|
|
115
|
+
}
|
|
116
|
+
return factory.literal(x.toString(), XSD.decimal);
|
|
117
|
+
}
|
|
118
|
+
static isNumber(x) {
|
|
119
|
+
Resource.assertLiteral(x);
|
|
120
|
+
if (Number.isNaN(x.value)) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
static assertNumber(x) {
|
|
126
|
+
if (!Resource.isNumber(x)) {
|
|
127
|
+
throw new Error("Term is not a Number");
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/class/resource.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAE3C,MAAM,OAAgB,QAAQ;IAC5B,MAAM,CAAC,UAAU,CAAC,CAAO;QACvB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAClF,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,CAAO;QAC3B,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;YAC3B,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;SACjE;IACH,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,OAAoB,EAAE,CAA4B;QAC9D,IAAI,IAAI,CAAC;QAET,IAAI,CAAC,CAAC,EAAE;YACN,IAAI,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;SAC3B;aAEI,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE;YAC7B,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC1C;aAEI,IAAI,CAAC,YAAY,GAAG,EAAE;YACzB,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SACjC;aAEI,IAAI,CAAC,CAAC,QAAQ,IAAI,WAAW,EAAE;YAClC,IAAI,GAAG,CAAC,CAAA;SACT;QAED,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAA;SACzD;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,CAAO;QACnB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YACxD,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,CAAO;QACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,OAAoB,EAAE,CAAU;QACjD,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;IAC7B,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,CAAO;QACxB,IAAI,CAAC,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC9B,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,CAAO;QAC5B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC3C;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,CAA2B,EAAE,OAAoB;QAClE,IAAI,SAAS,CAAC;QAEd,IAAI,OAAO,CAAC,IAAI,QAAQ,EAAE;YACxB,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SAC/C;aAEI,IAAI,CAAC,YAAY,GAAG,EAAE;YACzB,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;SACtC;aAEI,IAAI,CAAC,CAAC,QAAQ,IAAI,WAAW,EAAE;YAClC,SAAS,GAAG,CAAC,CAAA;SACd;QAED,IAAI,CAAC,SAAS,EAAE;YACd,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAA;SACzD;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,CAAO;QACxB,IAAI,CAAC,CAAC,QAAQ,KAAK,WAAW,EAAE;YAC9B,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,CAAO;QAC5B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC3C;IACH,CAAC;IAED,MAAM,CAAC,SAAS,CAAC,CAAO;QACtB,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,EAAE;YAC5B,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,CAAO;QAC1B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;SACzC;IACH,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAO;QACrB,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAEzB,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,KAAK,GAAG,CAAC,MAAM,EAAE;YAC9D,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,CAAO;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;SAChD;IACH,CAAC;IAED,2BAA2B;IAC3B,MAAM,CAAC,uBAAuB,CAAC,CAAS,EAAE,OAAoB;QAC5D,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;SACzC;QAED,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;YACvB,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;SAClD;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IACnD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAO;QACrB,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QAEzB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,KAAK,CAAA;SACb;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,CAAO;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;SACxC;IACH,CAAC;CAGF"}
|
package/dist/class/wrapper.d.ts
CHANGED
|
@@ -1,7 +1,25 @@
|
|
|
1
|
-
import type { BlankNode,
|
|
1
|
+
import type { BlankNode, DatasetCore, NamedNode, Quad, Term } from "@rdfjs/types";
|
|
2
|
+
import type { Context } from "./context.js";
|
|
3
|
+
import { Property } from "./property.js";
|
|
4
|
+
export type WrapperConstructor<T extends Wrapper> = {
|
|
5
|
+
new (resource: Term, context: Context): T;
|
|
6
|
+
};
|
|
7
|
+
export interface Item<T> {
|
|
8
|
+
get: () => T;
|
|
9
|
+
set: (x: T) => void;
|
|
10
|
+
}
|
|
2
11
|
export declare abstract class Wrapper {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
12
|
+
#private;
|
|
13
|
+
constructor(resource: Term, context: Context);
|
|
14
|
+
get resource(): BlankNode | NamedNode<string>;
|
|
15
|
+
get factory(): import("@rdfjs/types").DataFactory<Quad, Quad>;
|
|
16
|
+
read(s?: Term | null, p?: Term | null, o?: Term | null, g?: Term | null): DatasetCore;
|
|
17
|
+
write(q: Quad): void;
|
|
18
|
+
delete(q: Quad): void;
|
|
19
|
+
protected property<T>(iri: NamedNode | URL | string, reader: (context: Context) => (x: Term) => T, writer: (resource: BlankNode | NamedNode, property: NamedNode, context: Context) => (x: T) => Set<Quad>): Property<T>;
|
|
20
|
+
protected item<T>(iri: NamedNode | URL | string, reader: (context: Context) => (x: Term) => T, writer: (resource: BlankNode | NamedNode, property: NamedNode, context: Context) => (x: T) => Set<Quad>): Item<T>;
|
|
21
|
+
protected stringProperty(iri: NamedNode | URL | string): Property<string>;
|
|
22
|
+
protected stringItem(iri: NamedNode | URL | string): Item<string>;
|
|
23
|
+
protected wrapperProperty<T extends Wrapper>(iri: NamedNode | URL | string, w: WrapperConstructor<T>): Property<T>;
|
|
24
|
+
protected wrapperItem<T extends Wrapper>(iri: NamedNode | URL | string, w: WrapperConstructor<T>): Item<T>;
|
|
7
25
|
}
|
package/dist/class/wrapper.js
CHANGED
|
@@ -1,12 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import { Property } from "./property.js";
|
|
2
|
+
import { Resource } from "./resource.js";
|
|
3
|
+
import { PropertyReader } from "./property_reader.js";
|
|
4
|
+
import { PropertyWriter } from "./property_writer.js";
|
|
5
|
+
export class Wrapper {
|
|
6
|
+
#resource;
|
|
7
|
+
#context;
|
|
8
|
+
constructor(resource, context) {
|
|
9
|
+
Resource.assertNode(resource);
|
|
10
|
+
this.#resource = resource;
|
|
11
|
+
this.#context = context;
|
|
12
|
+
}
|
|
13
|
+
get resource() {
|
|
14
|
+
return this.#resource;
|
|
15
|
+
}
|
|
16
|
+
get factory() {
|
|
17
|
+
return this.#context.factory;
|
|
18
|
+
}
|
|
19
|
+
read(s, p, o, g) {
|
|
20
|
+
return this.#context.read(s, p, o, g);
|
|
21
|
+
}
|
|
22
|
+
write(q) {
|
|
23
|
+
this.#context.write(q);
|
|
24
|
+
}
|
|
25
|
+
delete(q) {
|
|
26
|
+
this.#context.delete(q);
|
|
27
|
+
}
|
|
28
|
+
property(iri, reader, writer) {
|
|
29
|
+
var p = Resource.asNamedNode(iri, this.factory);
|
|
30
|
+
return new Property(p, reader(this.#context), writer(this.resource, p, this.#context), this);
|
|
31
|
+
}
|
|
32
|
+
item(iri, reader, writer) {
|
|
33
|
+
var property = this.property(iri, reader, writer);
|
|
34
|
+
// TODO: Add options that throw, require 1:1 ...
|
|
35
|
+
return {
|
|
36
|
+
get: () => property.values().next().value,
|
|
37
|
+
set: (x) => {
|
|
38
|
+
property.clear();
|
|
39
|
+
property.add(x);
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
stringProperty(iri) {
|
|
44
|
+
return this.property(iri, PropertyReader.toString, PropertyWriter.fromString);
|
|
45
|
+
}
|
|
46
|
+
stringItem(iri) {
|
|
47
|
+
return this.item(iri, PropertyReader.toString, PropertyWriter.fromString);
|
|
48
|
+
}
|
|
49
|
+
wrapperProperty(iri, w) {
|
|
50
|
+
return this.property(iri, PropertyReader.toWrapper(w), PropertyWriter.fromWrapper(w));
|
|
51
|
+
}
|
|
52
|
+
wrapperItem(iri, w) {
|
|
53
|
+
return this.item(iri, PropertyReader.toWrapper(w), PropertyWriter.fromWrapper(w));
|
|
9
54
|
}
|
|
10
55
|
}
|
|
11
|
-
exports.Wrapper = Wrapper;
|
|
12
56
|
//# sourceMappingURL=wrapper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/class/wrapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../src/class/wrapper.ts"],"names":[],"mappings":"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"}
|
package/dist/mod.d.ts
CHANGED
|
@@ -1,11 +1,6 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export {
|
|
6
|
-
export {
|
|
7
|
-
export { setLiteral } from "./algorithm/set_literal";
|
|
8
|
-
export { setNode } from "./algorithm/set_node";
|
|
9
|
-
export { wrap } from "./algorithm/wrap";
|
|
10
|
-
export { stringFactory } from "./factory/string_factory";
|
|
11
|
-
export * from "./types";
|
|
1
|
+
export { Context } from "./class/context.js";
|
|
2
|
+
export { Property } from "./class/property.js";
|
|
3
|
+
export { PropertyReader } from "./class/property_reader.js";
|
|
4
|
+
export { PropertyWriter } from "./class/property_writer.js";
|
|
5
|
+
export { Resource } from "./class/resource.js";
|
|
6
|
+
export { Wrapper } from "./class/wrapper.js";
|
package/dist/mod.js
CHANGED
|
@@ -1,39 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.stringFactory = exports.wrap = exports.setNode = exports.setLiteral = exports.getter = exports.WrappingSet = exports.Wrapper = exports.PropertyWrapper = exports.NodeWrapper = exports.LiteralWrapper = void 0;
|
|
14
|
-
// Classes
|
|
15
|
-
var literal_wrapper_1 = require("./class/literal_wrapper");
|
|
16
|
-
Object.defineProperty(exports, "LiteralWrapper", { enumerable: true, get: function () { return literal_wrapper_1.LiteralWrapper; } });
|
|
17
|
-
var node_wrapper_1 = require("./class/node_wrapper");
|
|
18
|
-
Object.defineProperty(exports, "NodeWrapper", { enumerable: true, get: function () { return node_wrapper_1.NodeWrapper; } });
|
|
19
|
-
var property_wrapper_1 = require("./class/property_wrapper");
|
|
20
|
-
Object.defineProperty(exports, "PropertyWrapper", { enumerable: true, get: function () { return property_wrapper_1.PropertyWrapper; } });
|
|
21
|
-
var wrapper_1 = require("./class/wrapper");
|
|
22
|
-
Object.defineProperty(exports, "Wrapper", { enumerable: true, get: function () { return wrapper_1.Wrapper; } });
|
|
23
|
-
var wrapping_set_1 = require("./class/wrapping_set");
|
|
24
|
-
Object.defineProperty(exports, "WrappingSet", { enumerable: true, get: function () { return wrapping_set_1.WrappingSet; } });
|
|
25
|
-
// Algorithms
|
|
26
|
-
var getter_1 = require("./algorithm/getter");
|
|
27
|
-
Object.defineProperty(exports, "getter", { enumerable: true, get: function () { return getter_1.getter; } });
|
|
28
|
-
var set_literal_1 = require("./algorithm/set_literal");
|
|
29
|
-
Object.defineProperty(exports, "setLiteral", { enumerable: true, get: function () { return set_literal_1.setLiteral; } });
|
|
30
|
-
var set_node_1 = require("./algorithm/set_node");
|
|
31
|
-
Object.defineProperty(exports, "setNode", { enumerable: true, get: function () { return set_node_1.setNode; } });
|
|
32
|
-
var wrap_1 = require("./algorithm/wrap");
|
|
33
|
-
Object.defineProperty(exports, "wrap", { enumerable: true, get: function () { return wrap_1.wrap; } });
|
|
34
|
-
// Factory
|
|
35
|
-
var string_factory_1 = require("./factory/string_factory");
|
|
36
|
-
Object.defineProperty(exports, "stringFactory", { enumerable: true, get: function () { return string_factory_1.stringFactory; } });
|
|
37
|
-
// Types
|
|
38
|
-
__exportStar(require("./types"), exports);
|
|
1
|
+
export { Context } from "./class/context.js";
|
|
2
|
+
export { Property } from "./class/property.js";
|
|
3
|
+
export { PropertyReader } from "./class/property_reader.js";
|
|
4
|
+
export { PropertyWriter } from "./class/property_writer.js";
|
|
5
|
+
export { Resource } from "./class/resource.js";
|
|
6
|
+
export { Wrapper } from "./class/wrapper.js";
|
|
39
7
|
//# sourceMappingURL=mod.js.map
|
package/dist/mod.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mod.js","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export declare const XSD: {
|
|
2
|
+
string: string;
|
|
3
|
+
boolean: string;
|
|
4
|
+
decimal: string;
|
|
5
|
+
integer: string;
|
|
6
|
+
double: string;
|
|
7
|
+
float: string;
|
|
8
|
+
date: string;
|
|
9
|
+
time: string;
|
|
10
|
+
dateTime: string;
|
|
11
|
+
dateTimeStamp: string;
|
|
12
|
+
gYear: string;
|
|
13
|
+
gMonth: string;
|
|
14
|
+
gDay: string;
|
|
15
|
+
gYearMonth: string;
|
|
16
|
+
gMonthDay: string;
|
|
17
|
+
duration: string;
|
|
18
|
+
yearMonthDuration: string;
|
|
19
|
+
dayTimeDuration: string;
|
|
20
|
+
byte: string;
|
|
21
|
+
short: string;
|
|
22
|
+
int: string;
|
|
23
|
+
long: string;
|
|
24
|
+
unsignedByte: string;
|
|
25
|
+
unsignedShort: string;
|
|
26
|
+
unsignedInt: string;
|
|
27
|
+
unsignedLong: string;
|
|
28
|
+
positiveInteger: string;
|
|
29
|
+
nonNegativeInteger: string;
|
|
30
|
+
negativeInteger: string;
|
|
31
|
+
nonPositiveInteger: string;
|
|
32
|
+
hexBinary: string;
|
|
33
|
+
base64Binary: string;
|
|
34
|
+
anyURI: string;
|
|
35
|
+
language: string;
|
|
36
|
+
normalizedString: string;
|
|
37
|
+
token: string;
|
|
38
|
+
NMTOKEN: string;
|
|
39
|
+
Name: string;
|
|
40
|
+
NCName: string;
|
|
41
|
+
};
|