@journeyapps-labs/reactor-mod-data-browser 2.4.0 → 3.0.1
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/CHANGELOG.md +12 -0
- package/dist/@types/core/AbstractConnection.d.ts +8 -0
- package/dist/@types/core/IndexModel.d.ts +12 -0
- package/dist/@types/core/SchemaModelDefinition.d.ts +4 -0
- package/dist/@types/core/types/ManualConnection.d.ts +2 -0
- package/dist/@types/entities/SchemaModelIndexDefinition.d.ts +7 -0
- package/dist/@types/entities.d.ts +1 -0
- package/dist/DataBrowserModule.js +2 -0
- package/dist/DataBrowserModule.js.map +1 -1
- package/dist/core/AbstractConnection.js +14 -1
- package/dist/core/AbstractConnection.js.map +1 -1
- package/dist/core/IndexModel.js +12 -0
- package/dist/core/IndexModel.js.map +1 -0
- package/dist/core/SchemaModelDefinition.js +144 -110
- package/dist/core/SchemaModelDefinition.js.map +1 -1
- package/dist/core/types/ManualConnection.js +15 -0
- package/dist/core/types/ManualConnection.js.map +1 -1
- package/dist/entities/SchemaModelDefinitionEntityDefinition.js +14 -1
- package/dist/entities/SchemaModelDefinitionEntityDefinition.js.map +1 -1
- package/dist/entities/SchemaModelIndexDefinition.js +33 -0
- package/dist/entities/SchemaModelIndexDefinition.js.map +1 -0
- package/dist/entities.js +1 -0
- package/dist/entities.js.map +1 -1
- package/dist/stores/ConnectionStore.js +9 -9
- package/dist/stores/ConnectionStore.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist-module/bundle.js +22 -22
- package/dist-module/bundle.js.map +1 -1
- package/package.json +7 -5
- package/src/DataBrowserModule.ts +2 -0
- package/src/core/AbstractConnection.ts +21 -2
- package/src/core/IndexModel.ts +18 -0
- package/src/core/SchemaModelDefinition.ts +18 -0
- package/src/core/types/ManualConnection.ts +16 -0
- package/src/entities/SchemaModelDefinitionEntityDefinition.ts +19 -0
- package/src/entities/SchemaModelIndexDefinition.ts +43 -0
- package/src/entities.ts +1 -0
- package/src/stores/ConnectionStore.ts +11 -9
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @journeyapps-labs/reactor-mod-data-browser
|
|
2
2
|
|
|
3
|
+
## 3.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- e539ae2: Make sure to clear connection array when deserializing since we are able to also swap out deserializers
|
|
8
|
+
|
|
9
|
+
## 3.0.0
|
|
10
|
+
|
|
11
|
+
### Major Changes
|
|
12
|
+
|
|
13
|
+
- c0d7e9d: Abstract connections now need to generate a V4BackendClient as we now show indexes
|
|
14
|
+
|
|
3
15
|
## 2.4.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
|
@@ -5,6 +5,7 @@ import { SchemaModelDefinition } from './SchemaModelDefinition';
|
|
|
5
5
|
import { BaseObserver } from '@journeyapps-labs/common-utils';
|
|
6
6
|
import { Collection, LifecycleCollection } from '@journeyapps-labs/lib-reactor-data-layer';
|
|
7
7
|
import { EntityDescription } from '@journeyapps-labs/reactor-mod';
|
|
8
|
+
import { V4BackendClient, V4Index } from '@journeyapps-labs/client-backend-v4';
|
|
8
9
|
import { SchemaModelObject } from './SchemaModelObject';
|
|
9
10
|
export interface AbstractConnectionSerialized {
|
|
10
11
|
factory: string;
|
|
@@ -19,7 +20,14 @@ export declare abstract class AbstractConnection extends BaseObserver<AbstractCo
|
|
|
19
20
|
id: string;
|
|
20
21
|
schema_models_collection: Collection<ObjectType>;
|
|
21
22
|
schema_models: LifecycleCollection<ObjectType, SchemaModelDefinition>;
|
|
23
|
+
private fetch_indexes_promise;
|
|
22
24
|
constructor(factory: AbstractConnectionFactory);
|
|
25
|
+
abstract getBackendClient(): V4BackendClient;
|
|
26
|
+
getIndexes(): Promise<{
|
|
27
|
+
[name: string]: {
|
|
28
|
+
indexes: V4Index[];
|
|
29
|
+
};
|
|
30
|
+
}>;
|
|
23
31
|
batchSave(models: SchemaModelObject[]): Promise<void>;
|
|
24
32
|
getSchemaModelDefinitionByName(name: string): SchemaModelDefinition;
|
|
25
33
|
waitForSchemaModelDefinitionByName(name: string): Promise<SchemaModelDefinition>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { SchemaModelDefinition } from './SchemaModelDefinition';
|
|
2
|
+
import { V4Index } from '@journeyapps-labs/client-backend-v4';
|
|
3
|
+
export interface IndexModelOptions {
|
|
4
|
+
definition: SchemaModelDefinition;
|
|
5
|
+
index: V4Index;
|
|
6
|
+
}
|
|
7
|
+
export declare class IndexModel {
|
|
8
|
+
protected options: IndexModelOptions;
|
|
9
|
+
constructor(options: IndexModelOptions);
|
|
10
|
+
get index(): V4Index;
|
|
11
|
+
get definition(): SchemaModelDefinition;
|
|
12
|
+
}
|
|
@@ -5,6 +5,7 @@ import { SchemaModelObject } from './SchemaModelObject';
|
|
|
5
5
|
import { LifecycleModel } from '@journeyapps-labs/lib-reactor-data-layer';
|
|
6
6
|
import { BaseObserver } from '@journeyapps-labs/common-utils';
|
|
7
7
|
import { QueueObject } from 'async';
|
|
8
|
+
import { IndexModel } from './IndexModel';
|
|
8
9
|
export interface SchemaModelDefinitionListener {
|
|
9
10
|
resolved: (event: {
|
|
10
11
|
object: SchemaModelObject;
|
|
@@ -22,7 +23,10 @@ export declare class SchemaModelDefinition extends BaseObserver<SchemaModelDefin
|
|
|
22
23
|
cache: Map<string, SchemaModelObject>;
|
|
23
24
|
queue: QueueObject<string>;
|
|
24
25
|
enqueued: Set<string>;
|
|
26
|
+
accessor indexes: IndexModel[];
|
|
25
27
|
constructor(options: SchemaModelDefinitionOptions);
|
|
28
|
+
loadIndexes(): Promise<void>;
|
|
29
|
+
init(): Promise<void>;
|
|
26
30
|
search(text: string): Promise<SchemaModelObject[]>;
|
|
27
31
|
load(id: string): Promise<SchemaModelObject>;
|
|
28
32
|
resolve(id: string): Promise<SchemaModelObject | null>;
|
|
@@ -2,6 +2,7 @@ import { ApiCredentialOptions, Database } from '@journeyapps/db';
|
|
|
2
2
|
import { AbstractConnection } from '../AbstractConnection';
|
|
3
3
|
import { ManualConnectionFactory } from './ManualConnectionFactory';
|
|
4
4
|
import { EntityDescription } from '@journeyapps-labs/reactor-mod';
|
|
5
|
+
import { V4BackendClient } from '@journeyapps-labs/client-backend-v4';
|
|
5
6
|
export interface ManualConnectionDetails extends ApiCredentialOptions {
|
|
6
7
|
name: string;
|
|
7
8
|
}
|
|
@@ -12,4 +13,5 @@ export declare class ManualConnection extends AbstractConnection {
|
|
|
12
13
|
_serialize(): ManualConnectionDetails;
|
|
13
14
|
_deSerialize(data: ManualConnectionDetails): Promise<any>;
|
|
14
15
|
get name(): EntityDescription;
|
|
16
|
+
getBackendClient(): V4BackendClient;
|
|
15
17
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EntityDefinition } from '@journeyapps-labs/reactor-mod';
|
|
2
|
+
import { IndexModel } from '../core/IndexModel';
|
|
3
|
+
export declare class SchemaModelIndexDefinition extends EntityDefinition<IndexModel> {
|
|
4
|
+
constructor();
|
|
5
|
+
matchEntity(t: any): boolean;
|
|
6
|
+
getEntityUID(t: IndexModel): string;
|
|
7
|
+
}
|
|
@@ -2,6 +2,7 @@ export declare enum DataBrowserEntities {
|
|
|
2
2
|
CONNECTION = "databrowser/connection",
|
|
3
3
|
CONNECTION_FACTORY = "databrowser/connection_factory",
|
|
4
4
|
SCHEMA_MODEL_DEFINITION = "databrowser/schema_model_definition",
|
|
5
|
+
SCHEMA_MODEL_INDEX = "databrowser/schema_model_index",
|
|
5
6
|
SCHEMA_MODEL_OBJECT = "databrowser/schema_model_object",
|
|
6
7
|
QUERY = "databrowser/query"
|
|
7
8
|
}
|
|
@@ -16,6 +16,7 @@ import { EditSchemaModelAction } from './actions/schema-model/EditSchemaModelAct
|
|
|
16
16
|
import { TypeEngine } from './forms/TypeEngine';
|
|
17
17
|
import { ViewSchemaModelAsJsonAction } from './actions/schema-model/ViewSchemaModelAsJsonAction';
|
|
18
18
|
import { ModelJsonPanelFactory } from './panels/model-json/ModelJsonPanelFactory';
|
|
19
|
+
import { SchemaModelIndexDefinition } from './entities/SchemaModelIndexDefinition';
|
|
19
20
|
export class DataBrowserModule extends AbstractReactorModule {
|
|
20
21
|
constructor() {
|
|
21
22
|
super({
|
|
@@ -39,6 +40,7 @@ export class DataBrowserModule extends AbstractReactorModule {
|
|
|
39
40
|
system.registerDefinition(new ConnectionFactoryEntityDefinition());
|
|
40
41
|
system.registerDefinition(new SchemaModelDefinitionEntityDefinition());
|
|
41
42
|
system.registerDefinition(new SchemaModelObjectEntityDefinition());
|
|
43
|
+
system.registerDefinition(new SchemaModelIndexDefinition());
|
|
42
44
|
system.registerDefinition(new QueryEntityDefinition());
|
|
43
45
|
workspaceStore.registerFactory(new QueryPanelFactory());
|
|
44
46
|
workspaceStore.registerFactory(new ModelPanelFactory());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DataBrowserModule.js","sourceRoot":"","sources":["../src/DataBrowserModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAE9F,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,qCAAqC,EAAE,MAAM,kDAAkD,CAAC;AACzG,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qDAAqD,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gDAAgD,CAAC;AACnF,OAAO,EAAE,iCAAiC,EAAE,MAAM,8CAA8C,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"DataBrowserModule.js","sourceRoot":"","sources":["../src/DataBrowserModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,16 +13,29 @@ export class AbstractConnection extends BaseObserver {
|
|
|
13
13
|
this.schema_models = new LifecycleCollection({
|
|
14
14
|
collection: this.schema_models_collection,
|
|
15
15
|
generateModel: (o) => {
|
|
16
|
-
|
|
16
|
+
let model = new SchemaModelDefinition({
|
|
17
17
|
definition: o,
|
|
18
18
|
connection: this
|
|
19
19
|
});
|
|
20
|
+
model.init();
|
|
21
|
+
return model;
|
|
20
22
|
},
|
|
21
23
|
getKeyForSerialized: (o) => {
|
|
22
24
|
return o.name;
|
|
23
25
|
}
|
|
24
26
|
});
|
|
25
27
|
}
|
|
28
|
+
async getIndexes() {
|
|
29
|
+
if (!this.fetch_indexes_promise) {
|
|
30
|
+
this.fetch_indexes_promise = this.getBackendClient()
|
|
31
|
+
.getIndexes()
|
|
32
|
+
.then((res) => res.models)
|
|
33
|
+
.finally(() => {
|
|
34
|
+
this.fetch_indexes_promise = null;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
return this.fetch_indexes_promise;
|
|
38
|
+
}
|
|
26
39
|
async batchSave(models) {
|
|
27
40
|
if (models.length === 0) {
|
|
28
41
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractConnection.js","sourceRoot":"","sources":["../../src/core/AbstractConnection.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"AbstractConnection.js","sourceRoot":"","sources":["../../src/core/AbstractConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IndexModel.js","sourceRoot":"","sources":["../../src/core/IndexModel.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,UAAU;IACrB,YAAsB,OAA0B;QAA1B,YAAO,GAAP,OAAO,CAAmB;IAAG,CAAC;IAEpD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;IACjC,CAAC;CACF"}
|
|
@@ -1,124 +1,158 @@
|
|
|
1
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
|
|
1
2
|
import { JourneyAPIAdapter } from '@journeyapps/db';
|
|
2
3
|
import { SchemaModelObject } from './SchemaModelObject';
|
|
3
4
|
import { BaseObserver } from '@journeyapps-labs/common-utils';
|
|
4
5
|
import { queue } from 'async';
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
6
|
+
import { observable } from 'mobx';
|
|
7
|
+
import { IndexModel } from './IndexModel';
|
|
8
|
+
let SchemaModelDefinition = (() => {
|
|
9
|
+
var _a, _SchemaModelDefinition_indexes_accessor_storage;
|
|
10
|
+
let _classSuper = BaseObserver;
|
|
11
|
+
let _indexes_decorators;
|
|
12
|
+
let _indexes_initializers = [];
|
|
13
|
+
let _indexes_extraInitializers = [];
|
|
14
|
+
return _a = class SchemaModelDefinition extends _classSuper {
|
|
15
|
+
get indexes() { return __classPrivateFieldGet(this, _SchemaModelDefinition_indexes_accessor_storage, "f"); }
|
|
16
|
+
set indexes(value) { __classPrivateFieldSet(this, _SchemaModelDefinition_indexes_accessor_storage, value, "f"); }
|
|
17
|
+
constructor(options) {
|
|
18
|
+
super();
|
|
19
|
+
this.options = options;
|
|
20
|
+
_SchemaModelDefinition_indexes_accessor_storage.set(this, __runInitializers(this, _indexes_initializers, void 0));
|
|
21
|
+
__runInitializers(this, _indexes_extraInitializers);
|
|
22
|
+
this.options = options;
|
|
23
|
+
this.cache = new Map();
|
|
24
|
+
this.enqueued = new Set();
|
|
25
|
+
this.indexes = [];
|
|
26
|
+
this.queue = queue(async (id) => {
|
|
27
|
+
let collection = await this.getCollection();
|
|
28
|
+
try {
|
|
29
|
+
let models = await this.executeQuery(collection.where(`id = ?`, id).limit(1));
|
|
30
|
+
if (models[0]) {
|
|
31
|
+
this.cache.set(id, models[0]);
|
|
32
|
+
this.enqueued.delete(id);
|
|
33
|
+
this.iterateListeners((cb) => { var _b; return (_b = cb.resolved) === null || _b === void 0 ? void 0 : _b.call(cb, { object: models[0] }); });
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
this.enqueued.delete(id);
|
|
37
|
+
this.iterateListeners((cb) => { var _b; return (_b = cb.failed) === null || _b === void 0 ? void 0 : _b.call(cb, { object_id: id }); });
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
catch (ex) {
|
|
41
|
+
this.enqueued.delete(id);
|
|
42
|
+
this.iterateListeners((cb) => { var _b; return (_b = cb.failed) === null || _b === void 0 ? void 0 : _b.call(cb, { object_id: id }); });
|
|
43
|
+
throw ex;
|
|
44
|
+
}
|
|
45
|
+
}, 6);
|
|
46
|
+
}
|
|
47
|
+
async loadIndexes() {
|
|
48
|
+
var _b;
|
|
49
|
+
let indexes = await this.connection.getIndexes();
|
|
50
|
+
this.indexes = (((_b = indexes[this.definition.name]) === null || _b === void 0 ? void 0 : _b.indexes) || []).map((i) => new IndexModel({ definition: this, index: i }));
|
|
51
|
+
}
|
|
52
|
+
async init() {
|
|
53
|
+
await this.loadIndexes();
|
|
54
|
+
}
|
|
55
|
+
async search(text) {
|
|
56
|
+
let collection = await this.getCollection();
|
|
57
|
+
let adapter = collection.adapter;
|
|
58
|
+
// @ts-ignore
|
|
59
|
+
let res = await adapter.apiPost(`${adapter.credentials.api4Url()}objects/${this.definition.name}/search.json`, {
|
|
60
|
+
query: text
|
|
61
|
+
});
|
|
62
|
+
return res.objects
|
|
63
|
+
.map((o) => {
|
|
64
|
+
return JourneyAPIAdapter.apiToInternalFormat(this.definition, o);
|
|
65
|
+
})
|
|
66
|
+
.map((o) => {
|
|
67
|
+
return new SchemaModelObject({
|
|
68
|
+
definition: this,
|
|
69
|
+
model: o,
|
|
70
|
+
adapter: collection.adapter
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
async load(id) {
|
|
75
|
+
if (!this.enqueued.has(id)) {
|
|
76
|
+
this.enqueued.add(id);
|
|
77
|
+
this.queue.push(id);
|
|
19
78
|
}
|
|
20
|
-
|
|
21
|
-
this.
|
|
22
|
-
|
|
79
|
+
return await new Promise((resolve) => {
|
|
80
|
+
let l1 = this.registerListener({
|
|
81
|
+
resolved: ({ object }) => {
|
|
82
|
+
if (object.model.id === id) {
|
|
83
|
+
l1();
|
|
84
|
+
resolve(object);
|
|
85
|
+
}
|
|
86
|
+
},
|
|
87
|
+
failed: ({ object_id }) => {
|
|
88
|
+
if (object_id === id) {
|
|
89
|
+
l1();
|
|
90
|
+
resolve(null);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
async resolve(id) {
|
|
97
|
+
if (this.cache.has(id)) {
|
|
98
|
+
return this.cache.get(id);
|
|
23
99
|
}
|
|
100
|
+
return this.load(id);
|
|
24
101
|
}
|
|
25
|
-
|
|
26
|
-
this.
|
|
27
|
-
this.iterateListeners((cb) => { var _a; return (_a = cb.failed) === null || _a === void 0 ? void 0 : _a.call(cb, { object_id: id }); });
|
|
28
|
-
throw ex;
|
|
102
|
+
get key() {
|
|
103
|
+
return this.definition.name;
|
|
29
104
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
this.queue.push(id);
|
|
55
|
-
}
|
|
56
|
-
return await new Promise((resolve) => {
|
|
57
|
-
let l1 = this.registerListener({
|
|
58
|
-
resolved: ({ object }) => {
|
|
59
|
-
if (object.model.id === id) {
|
|
60
|
-
l1();
|
|
61
|
-
resolve(object);
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
failed: ({ object_id }) => {
|
|
65
|
-
if (object_id === id) {
|
|
66
|
-
l1();
|
|
67
|
-
resolve(null);
|
|
105
|
+
dispose() {
|
|
106
|
+
this.queue.kill();
|
|
107
|
+
}
|
|
108
|
+
patch(data) {
|
|
109
|
+
this.options.definition = data;
|
|
110
|
+
}
|
|
111
|
+
get connection() {
|
|
112
|
+
return this.options.connection;
|
|
113
|
+
}
|
|
114
|
+
get definition() {
|
|
115
|
+
return this.options.definition;
|
|
116
|
+
}
|
|
117
|
+
async executeQuery(query) {
|
|
118
|
+
let collection = await this.getCollection();
|
|
119
|
+
let results = await collection.adapter.executeQuery(query);
|
|
120
|
+
return results.map((m) => {
|
|
121
|
+
if (!this.cache.has(m.id)) {
|
|
122
|
+
const model = new SchemaModelObject({
|
|
123
|
+
definition: this,
|
|
124
|
+
model: m,
|
|
125
|
+
adapter: collection.adapter
|
|
126
|
+
});
|
|
127
|
+
this.cache.set(m.id, model);
|
|
128
|
+
return model;
|
|
68
129
|
}
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}
|
|
82
|
-
dispose() {
|
|
83
|
-
this.queue.kill();
|
|
84
|
-
}
|
|
85
|
-
patch(data) {
|
|
86
|
-
this.options.definition = data;
|
|
87
|
-
}
|
|
88
|
-
get connection() {
|
|
89
|
-
return this.options.connection;
|
|
90
|
-
}
|
|
91
|
-
get definition() {
|
|
92
|
-
return this.options.definition;
|
|
93
|
-
}
|
|
94
|
-
async executeQuery(query) {
|
|
95
|
-
let collection = await this.getCollection();
|
|
96
|
-
let results = await collection.adapter.executeQuery(query);
|
|
97
|
-
return results.map((m) => {
|
|
98
|
-
if (!this.cache.has(m.id)) {
|
|
99
|
-
const model = new SchemaModelObject({
|
|
130
|
+
let model = this.cache.get(m.id);
|
|
131
|
+
model.setData(m);
|
|
132
|
+
return model;
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
async getCollection() {
|
|
136
|
+
const conn = await this.connection.getConnection();
|
|
137
|
+
return conn[this.definition.name];
|
|
138
|
+
}
|
|
139
|
+
async generateNewModelObject() {
|
|
140
|
+
const collection = await this.getCollection();
|
|
141
|
+
return new SchemaModelObject({
|
|
100
142
|
definition: this,
|
|
101
|
-
model: m,
|
|
102
143
|
adapter: collection.adapter
|
|
103
144
|
});
|
|
104
|
-
this.cache.set(m.id, model);
|
|
105
|
-
return model;
|
|
106
145
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
definition: this,
|
|
120
|
-
adapter: collection.adapter
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
}
|
|
146
|
+
},
|
|
147
|
+
_SchemaModelDefinition_indexes_accessor_storage = new WeakMap(),
|
|
148
|
+
(() => {
|
|
149
|
+
var _b;
|
|
150
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create((_b = _classSuper[Symbol.metadata]) !== null && _b !== void 0 ? _b : null) : void 0;
|
|
151
|
+
_indexes_decorators = [observable];
|
|
152
|
+
__esDecorate(_a, null, _indexes_decorators, { kind: "accessor", name: "indexes", static: false, private: false, access: { has: obj => "indexes" in obj, get: obj => obj.indexes, set: (obj, value) => { obj.indexes = value; } }, metadata: _metadata }, _indexes_initializers, _indexes_extraInitializers);
|
|
153
|
+
if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
154
|
+
})(),
|
|
155
|
+
_a;
|
|
156
|
+
})();
|
|
157
|
+
export { SchemaModelDefinition };
|
|
124
158
|
//# sourceMappingURL=SchemaModelDefinition.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,iBAAiB,EAAS,MAAM,iBAAiB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAe,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { Database } from '@journeyapps/db';
|
|
2
2
|
import { AbstractConnection } from '../AbstractConnection';
|
|
3
|
+
import { createWebNetworkClient } from '@journeyapps-labs/common-sdk';
|
|
4
|
+
import { V4BackendClient } from '@journeyapps-labs/client-backend-v4';
|
|
5
|
+
import * as path from 'path';
|
|
3
6
|
export class ManualConnection extends AbstractConnection {
|
|
4
7
|
constructor(factory, options) {
|
|
5
8
|
super(factory);
|
|
@@ -19,5 +22,17 @@ export class ManualConnection extends AbstractConnection {
|
|
|
19
22
|
simpleName: this.options.name
|
|
20
23
|
};
|
|
21
24
|
}
|
|
25
|
+
getBackendClient() {
|
|
26
|
+
let url = new URL(this.options.baseUrl);
|
|
27
|
+
return new V4BackendClient({
|
|
28
|
+
account_id: path.basename(url.pathname),
|
|
29
|
+
endpoint: `${url.origin}`,
|
|
30
|
+
client: createWebNetworkClient({
|
|
31
|
+
headers: {
|
|
32
|
+
Authorization: `Bearer ${this.options.token}`
|
|
33
|
+
}
|
|
34
|
+
})
|
|
35
|
+
});
|
|
36
|
+
}
|
|
22
37
|
}
|
|
23
38
|
//# sourceMappingURL=ManualConnection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManualConnection.js","sourceRoot":"","sources":["../../../src/core/types/ManualConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"ManualConnection.js","sourceRoot":"","sources":["../../../src/core/types/ManualConnection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAM7B,MAAM,OAAO,gBAAiB,SAAQ,kBAAkB;IACtD,YACE,OAAgC,EACtB,OAAiC;QAE3C,KAAK,CAAC,OAAO,CAAC,CAAC;QAFL,YAAO,GAAP,OAAO,CAA0B;IAG7C,CAAC;IAED,aAAa;QACX,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAA6B;QAC9C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,IAAI,IAAI;QACN,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;SAC9B,CAAC;IACJ,CAAC;IAED,gBAAgB;QACd,IAAI,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxC,OAAO,IAAI,eAAe,CAAC;YACzB,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;YACvC,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;YACzB,MAAM,EAAE,sBAAsB,CAAC;gBAC7B,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;iBAC9C;aACF,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { EntityActionHandlerComponent, EntityDefinition, EntityDescriberComponent, inject, InlineEntityEncoderComponent, InlineTreePresenterComponent, SimpleParentEntitySearchEngine } from '@journeyapps-labs/reactor-mod';
|
|
2
|
+
import { DescendantEntityProviderComponent, EntityActionHandlerComponent, EntityDefinition, EntityDescriberComponent, inject, InlineEntityEncoderComponent, InlineTreePresenterComponent, SimpleParentEntitySearchEngine } from '@journeyapps-labs/reactor-mod';
|
|
3
3
|
import { DataBrowserEntities } from '../entities';
|
|
4
4
|
import { ConnectionStore } from '../stores/ConnectionStore';
|
|
5
5
|
import { SchemaModelDefinition } from '../core/SchemaModelDefinition';
|
|
@@ -32,6 +32,19 @@ let SchemaModelDefinitionEntityDefinition = (() => {
|
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
34
|
}));
|
|
35
|
+
this.registerComponent(new DescendantEntityProviderComponent({
|
|
36
|
+
descendantType: DataBrowserEntities.SCHEMA_MODEL_INDEX,
|
|
37
|
+
generateOptions: (parent) => {
|
|
38
|
+
return {
|
|
39
|
+
category: {
|
|
40
|
+
label: 'Indexes',
|
|
41
|
+
icon: 'search',
|
|
42
|
+
openDefault: false
|
|
43
|
+
},
|
|
44
|
+
descendants: parent.indexes
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}));
|
|
35
48
|
this.registerComponent(new InlineEntityEncoderComponent({
|
|
36
49
|
version: 1,
|
|
37
50
|
encode: (e) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaModelDefinitionEntityDefinition.js","sourceRoot":"","sources":["../../src/entities/SchemaModelDefinitionEntityDefinition.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,4BAA4B,EAC5B,gBAAgB,EAChB,wBAAwB,EACxB,MAAM,EACN,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC/B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"SchemaModelDefinitionEntityDefinition.js","sourceRoot":"","sources":["../../src/entities/SchemaModelDefinitionEntityDefinition.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { EntityDefinition, EntityDescriberComponent, InlineTreePresenterComponent } from '@journeyapps-labs/reactor-mod';
|
|
2
|
+
import { DataBrowserEntities } from '../entities';
|
|
3
|
+
import { IndexModel } from '../core/IndexModel';
|
|
4
|
+
export class SchemaModelIndexDefinition extends EntityDefinition {
|
|
5
|
+
constructor() {
|
|
6
|
+
super({
|
|
7
|
+
type: DataBrowserEntities.SCHEMA_MODEL_INDEX,
|
|
8
|
+
category: 'DataBrowser',
|
|
9
|
+
label: 'Schema model index',
|
|
10
|
+
icon: 'search',
|
|
11
|
+
iconColor: 'cyan'
|
|
12
|
+
});
|
|
13
|
+
this.registerComponent(new EntityDescriberComponent({
|
|
14
|
+
label: 'Simple',
|
|
15
|
+
describe: (entity) => {
|
|
16
|
+
return {
|
|
17
|
+
simpleName: entity.index.name,
|
|
18
|
+
complexName: entity.index.type
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
}));
|
|
22
|
+
this.registerComponent(new InlineTreePresenterComponent());
|
|
23
|
+
}
|
|
24
|
+
matchEntity(t) {
|
|
25
|
+
if (t instanceof IndexModel) {
|
|
26
|
+
return true;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
getEntityUID(t) {
|
|
30
|
+
return `${t.definition.definition.media}-${t.index.name}`;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=SchemaModelIndexDefinition.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchemaModelIndexDefinition.js","sourceRoot":"","sources":["../../src/entities/SchemaModelIndexDefinition.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,4BAA4B,EAC7B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,OAAO,0BAA2B,SAAQ,gBAA4B;IAC1E;QACE,KAAK,CAAC;YACJ,IAAI,EAAE,mBAAmB,CAAC,kBAAkB;YAC5C,QAAQ,EAAE,aAAa;YACvB,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,CACpB,IAAI,wBAAwB,CAAa;YACvC,KAAK,EAAE,QAAQ;YACf,QAAQ,EAAE,CAAC,MAAkB,EAAE,EAAE;gBAC/B,OAAO;oBACL,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;oBAC7B,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;iBAC/B,CAAC;YACJ,CAAC;SACF,CAAC,CACH,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,IAAI,4BAA4B,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,WAAW,CAAC,CAAM;QAChB,IAAI,CAAC,YAAY,UAAU,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,YAAY,CAAC,CAAa;QACxB,OAAO,GAAG,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC5D,CAAC;CACF"}
|
package/dist/entities.js
CHANGED
|
@@ -3,6 +3,7 @@ export var DataBrowserEntities;
|
|
|
3
3
|
DataBrowserEntities["CONNECTION"] = "databrowser/connection";
|
|
4
4
|
DataBrowserEntities["CONNECTION_FACTORY"] = "databrowser/connection_factory";
|
|
5
5
|
DataBrowserEntities["SCHEMA_MODEL_DEFINITION"] = "databrowser/schema_model_definition";
|
|
6
|
+
DataBrowserEntities["SCHEMA_MODEL_INDEX"] = "databrowser/schema_model_index";
|
|
6
7
|
DataBrowserEntities["SCHEMA_MODEL_OBJECT"] = "databrowser/schema_model_object";
|
|
7
8
|
DataBrowserEntities["QUERY"] = "databrowser/query";
|
|
8
9
|
})(DataBrowserEntities || (DataBrowserEntities = {}));
|
package/dist/entities.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../src/entities.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"entities.js","sourceRoot":"","sources":["../src/entities.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,4DAAqC,CAAA;IACrC,4EAAqD,CAAA;IACrD,sFAA+D,CAAA;IAC/D,4EAAqD,CAAA;IACrD,8EAAuD,CAAA;IACvD,kDAA2B,CAAA;AAC7B,CAAC,EAPW,mBAAmB,KAAnB,mBAAmB,QAO9B"}
|