@journeyapps-labs/reactor-mod-data-browser 2.2.0 → 2.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/CHANGELOG.md +6 -0
- package/dist/@types/core/AbstractConnection.d.ts +2 -0
- package/dist/@types/core/SchemaModelDefinition.d.ts +4 -1
- package/dist/@types/core/SchemaModelObject.d.ts +15 -8
- package/dist/@types/core/query/AbstractQuery.d.ts +5 -10
- package/dist/@types/core/query/AbstractSerializableQuery.d.ts +11 -0
- package/dist/@types/core/query/Page.d.ts +2 -7
- package/dist/@types/core/query/query-changed/ChangedModelQuery.d.ts +15 -0
- package/dist/@types/core/query/query-simple/SimplePage.d.ts +12 -0
- package/dist/@types/core/query/{SimpleQuery.d.ts → query-simple/SimpleQuery.d.ts} +8 -8
- package/dist/@types/core/query/widgets/BelongsToDisplayWidget.d.ts +1 -3
- package/dist/@types/core/query/widgets/CellDisplayWidget.d.ts +1 -2
- package/dist/@types/core/query/widgets/ColumnDisplayWidget.d.ts +1 -0
- package/dist/@types/core/query/widgets/SmartBelongsToDisplayWidget.d.ts +10 -0
- package/dist/@types/core/query/widgets/SmartCellDisplayWidget.d.ts +7 -0
- package/dist/@types/core/query/widgets/SmartColumnWidget.d.ts +2 -1
- package/dist/@types/entities/QueryEntityDefinition.d.ts +3 -3
- package/dist/@types/forms/SchemaModelForm.d.ts +32 -1
- package/dist/@types/forms/TypeEngine.d.ts +20 -0
- package/dist/@types/forms/inputs/DirtyWrapperInput.d.ts +15 -0
- package/dist/@types/index.d.ts +1 -1
- package/dist/@types/panels/model/ModelPanelFactory.d.ts +2 -2
- package/dist/@types/panels/query/QueryPanelFactory.d.ts +2 -1
- package/dist/DataBrowserModule.js +2 -0
- package/dist/DataBrowserModule.js.map +1 -1
- package/dist/actions/schema-definitions/CreateModelAction.js +2 -1
- package/dist/actions/schema-definitions/CreateModelAction.js.map +1 -1
- package/dist/actions/schema-definitions/QuerySchemaModelAction.js +1 -1
- package/dist/actions/schema-definitions/QuerySchemaModelAction.js.map +1 -1
- package/dist/core/AbstractConnection.js +15 -0
- package/dist/core/AbstractConnection.js.map +1 -1
- package/dist/core/SchemaModelDefinition.js +52 -13
- package/dist/core/SchemaModelDefinition.js.map +1 -1
- package/dist/core/SchemaModelObject.js +90 -50
- package/dist/core/SchemaModelObject.js.map +1 -1
- package/dist/core/query/AbstractQuery.js +2 -8
- package/dist/core/query/AbstractQuery.js.map +1 -1
- package/dist/core/query/AbstractSerializableQuery.js +13 -0
- package/dist/core/query/AbstractSerializableQuery.js.map +1 -0
- package/dist/core/query/Page.js +6 -15
- package/dist/core/query/Page.js.map +1 -1
- package/dist/core/query/query-changed/ChangedModelQuery.js +31 -0
- package/dist/core/query/query-changed/ChangedModelQuery.js.map +1 -0
- package/dist/core/query/query-simple/SimplePage.js +18 -0
- package/dist/core/query/query-simple/SimplePage.js.map +1 -0
- package/dist/core/query/{SimpleQuery.js → query-simple/SimpleQuery.js} +26 -25
- package/dist/core/query/query-simple/SimpleQuery.js.map +1 -0
- package/dist/core/query/widgets/BelongsToDisplayWidget.js +5 -16
- package/dist/core/query/widgets/BelongsToDisplayWidget.js.map +1 -1
- package/dist/core/query/widgets/CellDisplayWidget.js +11 -4
- package/dist/core/query/widgets/CellDisplayWidget.js.map +1 -1
- package/dist/core/query/widgets/ColumnDisplayWidget.js +3 -3
- package/dist/core/query/widgets/ColumnDisplayWidget.js.map +1 -1
- package/dist/core/query/widgets/SmartBelongsToDisplayWidget.js +29 -0
- package/dist/core/query/widgets/SmartBelongsToDisplayWidget.js.map +1 -0
- package/dist/core/query/widgets/SmartCellDisplayWidget.js +20 -0
- package/dist/core/query/widgets/SmartCellDisplayWidget.js.map +1 -0
- package/dist/core/query/widgets/SmartColumnWidget.js +11 -1
- package/dist/core/query/widgets/SmartColumnWidget.js.map +1 -1
- package/dist/entities/QueryEntityDefinition.js +3 -3
- package/dist/entities/QueryEntityDefinition.js.map +1 -1
- package/dist/entities/SchemaModelObjectEntityDefinition.js +28 -8
- package/dist/entities/SchemaModelObjectEntityDefinition.js.map +1 -1
- package/dist/forms/SchemaModelForm.js +153 -74
- package/dist/forms/SchemaModelForm.js.map +1 -1
- package/dist/forms/TypeEngine.js +135 -0
- package/dist/forms/TypeEngine.js.map +1 -0
- package/dist/forms/inputs/DirtyWrapperInput.js +72 -0
- package/dist/forms/inputs/DirtyWrapperInput.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/panels/model/ModelPanelFactory.js +11 -7
- package/dist/panels/model/ModelPanelFactory.js.map +1 -1
- package/dist/panels/model/ModelPanelWidget.js +21 -4
- package/dist/panels/model/ModelPanelWidget.js.map +1 -1
- package/dist/panels/query/QueryPanelFactory.js +4 -0
- package/dist/panels/query/QueryPanelFactory.js.map +1 -1
- package/dist/panels/query/TableControlsWidget.js +42 -9
- package/dist/panels/query/TableControlsWidget.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist-module/bundle.js +64 -35
- package/dist-module/bundle.js.map +1 -1
- package/package.json +8 -6
- package/src/DataBrowserModule.ts +2 -0
- package/src/actions/schema-definitions/CreateModelAction.ts +2 -1
- package/src/actions/schema-definitions/QuerySchemaModelAction.ts +1 -1
- package/src/core/AbstractConnection.ts +18 -1
- package/src/core/SchemaModelDefinition.ts +57 -14
- package/src/core/SchemaModelObject.ts +62 -46
- package/src/core/query/AbstractQuery.ts +10 -21
- package/src/core/query/AbstractSerializableQuery.ts +23 -0
- package/src/core/query/Page.ts +6 -21
- package/src/core/query/query-changed/ChangedModelQuery.ts +35 -0
- package/src/core/query/query-simple/SimplePage.ts +29 -0
- package/src/core/query/{SimpleQuery.tsx → query-simple/SimpleQuery.tsx} +41 -39
- package/src/core/query/widgets/BelongsToDisplayWidget.tsx +6 -19
- package/src/core/query/widgets/CellDisplayWidget.tsx +24 -13
- package/src/core/query/widgets/ColumnDisplayWidget.tsx +12 -3
- package/src/core/query/widgets/SmartBelongsToDisplayWidget.tsx +46 -0
- package/src/core/query/widgets/SmartCellDisplayWidget.tsx +29 -0
- package/src/core/query/widgets/SmartColumnWidget.tsx +18 -2
- package/src/entities/QueryEntityDefinition.ts +6 -6
- package/src/entities/SchemaModelObjectEntityDefinition.ts +34 -8
- package/src/forms/SchemaModelForm.tsx +145 -96
- package/src/forms/TypeEngine.ts +160 -0
- package/src/forms/inputs/DirtyWrapperInput.tsx +75 -0
- package/src/index.ts +1 -1
- package/src/panels/model/ModelPanelFactory.tsx +11 -9
- package/src/panels/model/ModelPanelWidget.tsx +45 -9
- package/src/panels/query/QueryPanelFactory.tsx +5 -0
- package/src/panels/query/TableControlsWidget.tsx +85 -17
- package/dist/core/query/SimpleQuery.js.map +0 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { JourneyAPIAdapter } from '@journeyapps/db';
|
|
1
2
|
import { SchemaModelObject } from './SchemaModelObject';
|
|
2
3
|
import { BaseObserver } from '@journeyapps-labs/common-utils';
|
|
3
4
|
import { queue } from 'async';
|
|
@@ -10,30 +11,44 @@ export class SchemaModelDefinition extends BaseObserver {
|
|
|
10
11
|
this.queue = queue(async (id) => {
|
|
11
12
|
let collection = await this.getCollection();
|
|
12
13
|
try {
|
|
13
|
-
let
|
|
14
|
-
if (
|
|
15
|
-
|
|
16
|
-
model,
|
|
17
|
-
definition: this
|
|
18
|
-
});
|
|
19
|
-
this.cache.set(id, object);
|
|
14
|
+
let models = await this.executeQuery(collection.where(`id = ?`, id));
|
|
15
|
+
if (models[0]) {
|
|
16
|
+
this.cache.set(id, models[0]);
|
|
20
17
|
this.enqueued.delete(id);
|
|
21
|
-
this.iterateListeners((cb) => { var _a; return (_a = cb.resolved) === null || _a === void 0 ? void 0 : _a.call(cb, { object }); });
|
|
18
|
+
this.iterateListeners((cb) => { var _a; return (_a = cb.resolved) === null || _a === void 0 ? void 0 : _a.call(cb, { object: models[0] }); });
|
|
22
19
|
}
|
|
23
20
|
else {
|
|
21
|
+
this.enqueued.delete(id);
|
|
24
22
|
this.iterateListeners((cb) => { var _a; return (_a = cb.failed) === null || _a === void 0 ? void 0 : _a.call(cb, { object_id: id }); });
|
|
25
23
|
}
|
|
26
24
|
}
|
|
27
25
|
catch (ex) {
|
|
26
|
+
this.enqueued.delete(id);
|
|
28
27
|
this.iterateListeners((cb) => { var _a; return (_a = cb.failed) === null || _a === void 0 ? void 0 : _a.call(cb, { object_id: id }); });
|
|
29
28
|
throw ex;
|
|
30
29
|
}
|
|
31
30
|
}, 6);
|
|
32
31
|
}
|
|
33
|
-
async
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
32
|
+
async search(text) {
|
|
33
|
+
let collection = await this.getCollection();
|
|
34
|
+
let adapter = collection.adapter;
|
|
35
|
+
// @ts-ignore
|
|
36
|
+
let res = await adapter.apiPost(`${adapter.credentials.api4Url()}objects/${this.definition.name}/search.json`, {
|
|
37
|
+
query: text
|
|
38
|
+
});
|
|
39
|
+
return res.objects
|
|
40
|
+
.map((o) => {
|
|
41
|
+
return JourneyAPIAdapter.apiToInternalFormat(this.definition, o);
|
|
42
|
+
})
|
|
43
|
+
.map((o) => {
|
|
44
|
+
return new SchemaModelObject({
|
|
45
|
+
definition: this,
|
|
46
|
+
model: o,
|
|
47
|
+
adapter: collection.adapter
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
async load(id) {
|
|
37
52
|
if (!this.enqueued.has(id)) {
|
|
38
53
|
this.enqueued.add(id);
|
|
39
54
|
this.queue.push(id);
|
|
@@ -55,6 +70,12 @@ export class SchemaModelDefinition extends BaseObserver {
|
|
|
55
70
|
});
|
|
56
71
|
});
|
|
57
72
|
}
|
|
73
|
+
async resolve(id) {
|
|
74
|
+
if (this.cache.has(id)) {
|
|
75
|
+
return this.cache.get(id);
|
|
76
|
+
}
|
|
77
|
+
return this.load(id);
|
|
78
|
+
}
|
|
58
79
|
get key() {
|
|
59
80
|
return this.definition.name;
|
|
60
81
|
}
|
|
@@ -70,6 +91,24 @@ export class SchemaModelDefinition extends BaseObserver {
|
|
|
70
91
|
get definition() {
|
|
71
92
|
return this.options.definition;
|
|
72
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({
|
|
100
|
+
definition: this,
|
|
101
|
+
model: m,
|
|
102
|
+
adapter: collection.adapter
|
|
103
|
+
});
|
|
104
|
+
this.cache.set(m.id, model);
|
|
105
|
+
return model;
|
|
106
|
+
}
|
|
107
|
+
let model = this.cache.get(m.id);
|
|
108
|
+
model.setData(m);
|
|
109
|
+
return model;
|
|
110
|
+
});
|
|
111
|
+
}
|
|
73
112
|
async getCollection() {
|
|
74
113
|
const conn = await this.connection.getConnection();
|
|
75
114
|
return conn[this.definition.name];
|
|
@@ -78,7 +117,7 @@ export class SchemaModelDefinition extends BaseObserver {
|
|
|
78
117
|
const collection = await this.getCollection();
|
|
79
118
|
return new SchemaModelObject({
|
|
80
119
|
definition: this,
|
|
81
|
-
|
|
120
|
+
adapter: collection.adapter
|
|
82
121
|
});
|
|
83
122
|
}
|
|
84
123
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SchemaModelDefinition.js","sourceRoot":"","sources":["../../src/core/SchemaModelDefinition.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,70 +1,110 @@
|
|
|
1
1
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import {
|
|
2
|
+
import { DatabaseObject } from '@journeyapps/db';
|
|
3
|
+
import { action, observable } from 'mobx';
|
|
3
4
|
let SchemaModelObject = (() => {
|
|
4
|
-
var _a,
|
|
5
|
-
let
|
|
6
|
-
let
|
|
7
|
-
let
|
|
5
|
+
var _a, _SchemaModelObject_data_accessor_storage, _SchemaModelObject_model_accessor_storage, _SchemaModelObject_updated_at_accessor_storage, _SchemaModelObject_patch_accessor_storage;
|
|
6
|
+
let _instanceExtraInitializers = [];
|
|
7
|
+
let _data_decorators;
|
|
8
|
+
let _data_initializers = [];
|
|
9
|
+
let _data_extraInitializers = [];
|
|
10
|
+
let _model_decorators;
|
|
11
|
+
let _model_initializers = [];
|
|
12
|
+
let _model_extraInitializers = [];
|
|
13
|
+
let _updated_at_decorators;
|
|
14
|
+
let _updated_at_initializers = [];
|
|
15
|
+
let _updated_at_extraInitializers = [];
|
|
16
|
+
let _patch_decorators;
|
|
17
|
+
let _patch_initializers = [];
|
|
18
|
+
let _patch_extraInitializers = [];
|
|
19
|
+
let _setData_decorators;
|
|
8
20
|
return _a = class SchemaModelObject {
|
|
9
|
-
get
|
|
10
|
-
set
|
|
21
|
+
get data() { return __classPrivateFieldGet(this, _SchemaModelObject_data_accessor_storage, "f"); }
|
|
22
|
+
set data(value) { __classPrivateFieldSet(this, _SchemaModelObject_data_accessor_storage, value, "f"); }
|
|
23
|
+
get model() { return __classPrivateFieldGet(this, _SchemaModelObject_model_accessor_storage, "f"); }
|
|
24
|
+
set model(value) { __classPrivateFieldSet(this, _SchemaModelObject_model_accessor_storage, value, "f"); }
|
|
25
|
+
get updated_at() { return __classPrivateFieldGet(this, _SchemaModelObject_updated_at_accessor_storage, "f"); }
|
|
26
|
+
set updated_at(value) { __classPrivateFieldSet(this, _SchemaModelObject_updated_at_accessor_storage, value, "f"); }
|
|
27
|
+
get patch() { return __classPrivateFieldGet(this, _SchemaModelObject_patch_accessor_storage, "f"); }
|
|
28
|
+
set patch(value) { __classPrivateFieldSet(this, _SchemaModelObject_patch_accessor_storage, value, "f"); }
|
|
11
29
|
constructor(options) {
|
|
30
|
+
this.options = (__runInitializers(this, _instanceExtraInitializers), options);
|
|
31
|
+
_SchemaModelObject_data_accessor_storage.set(this, __runInitializers(this, _data_initializers, void 0));
|
|
32
|
+
_SchemaModelObject_model_accessor_storage.set(this, (__runInitializers(this, _data_extraInitializers), __runInitializers(this, _model_initializers, void 0)));
|
|
33
|
+
_SchemaModelObject_updated_at_accessor_storage.set(this, (__runInitializers(this, _model_extraInitializers), __runInitializers(this, _updated_at_initializers, void 0)));
|
|
34
|
+
_SchemaModelObject_patch_accessor_storage.set(this, (__runInitializers(this, _updated_at_extraInitializers), __runInitializers(this, _patch_initializers, void 0)));
|
|
35
|
+
__runInitializers(this, _patch_extraInitializers);
|
|
12
36
|
this.options = options;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
get definition() {
|
|
18
|
-
return this.options.definition;
|
|
19
|
-
}
|
|
20
|
-
get model() {
|
|
21
|
-
return this.options.model;
|
|
37
|
+
if (options.model) {
|
|
38
|
+
this.setData(options.model);
|
|
39
|
+
}
|
|
40
|
+
this.patch = new Map();
|
|
22
41
|
}
|
|
23
|
-
async
|
|
42
|
+
async applyPatches() {
|
|
24
43
|
if (!this.model) {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
let val = this.model.toString();
|
|
28
|
-
if (val) {
|
|
29
|
-
return val;
|
|
44
|
+
const collection = await this.definition.getCollection();
|
|
45
|
+
this.model = collection.create();
|
|
30
46
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
await new Promise((resolve) => setTimeout(resolve, 40));
|
|
38
|
-
let val = this.model.toString();
|
|
39
|
-
if (val) {
|
|
40
|
-
return val;
|
|
47
|
+
for (let entry of this.patch.entries()) {
|
|
48
|
+
if (this.definition.definition.belongsTo[entry[0]]) {
|
|
49
|
+
this.model[entry[0]](entry[1].model);
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
this.model[entry[0]] = entry[1];
|
|
41
53
|
}
|
|
42
54
|
}
|
|
43
|
-
|
|
55
|
+
this.patch.clear();
|
|
56
|
+
}
|
|
57
|
+
async save() {
|
|
58
|
+
await this.definition.connection.batchSave([this]);
|
|
44
59
|
}
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
60
|
+
clearEdits() {
|
|
61
|
+
this.patch.clear();
|
|
62
|
+
}
|
|
63
|
+
revert(field) {
|
|
64
|
+
this.patch.delete(field);
|
|
65
|
+
}
|
|
66
|
+
set(field, value) {
|
|
67
|
+
var _b;
|
|
68
|
+
if (((_b = this.model) === null || _b === void 0 ? void 0 : _b[field]) === value) {
|
|
69
|
+
this.patch.delete(field);
|
|
48
70
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
return null;
|
|
71
|
+
else {
|
|
72
|
+
this.patch.set(field, value);
|
|
52
73
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
this.
|
|
60
|
-
|
|
74
|
+
}
|
|
75
|
+
setData(data) {
|
|
76
|
+
this.data = data;
|
|
77
|
+
this.model = new DatabaseObject(this.options.adapter, this.definition.definition, data.id);
|
|
78
|
+
// @ts-ignore
|
|
79
|
+
this.model.resolve(data);
|
|
80
|
+
this.updated_at = new Date(data._updated_at);
|
|
81
|
+
}
|
|
82
|
+
async reload() {
|
|
83
|
+
await this.definition.load(this.id);
|
|
84
|
+
}
|
|
85
|
+
get definition() {
|
|
86
|
+
return this.options.definition;
|
|
87
|
+
}
|
|
88
|
+
get id() {
|
|
89
|
+
return this.data.id;
|
|
61
90
|
}
|
|
62
91
|
},
|
|
63
|
-
|
|
92
|
+
_SchemaModelObject_data_accessor_storage = new WeakMap(),
|
|
93
|
+
_SchemaModelObject_model_accessor_storage = new WeakMap(),
|
|
94
|
+
_SchemaModelObject_updated_at_accessor_storage = new WeakMap(),
|
|
95
|
+
_SchemaModelObject_patch_accessor_storage = new WeakMap(),
|
|
64
96
|
(() => {
|
|
65
97
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
66
|
-
|
|
67
|
-
|
|
98
|
+
_data_decorators = [observable];
|
|
99
|
+
_model_decorators = [observable];
|
|
100
|
+
_updated_at_decorators = [observable];
|
|
101
|
+
_patch_decorators = [observable];
|
|
102
|
+
_setData_decorators = [action];
|
|
103
|
+
__esDecorate(_a, null, _data_decorators, { kind: "accessor", name: "data", static: false, private: false, access: { has: obj => "data" in obj, get: obj => obj.data, set: (obj, value) => { obj.data = value; } }, metadata: _metadata }, _data_initializers, _data_extraInitializers);
|
|
104
|
+
__esDecorate(_a, null, _model_decorators, { kind: "accessor", name: "model", static: false, private: false, access: { has: obj => "model" in obj, get: obj => obj.model, set: (obj, value) => { obj.model = value; } }, metadata: _metadata }, _model_initializers, _model_extraInitializers);
|
|
105
|
+
__esDecorate(_a, null, _updated_at_decorators, { kind: "accessor", name: "updated_at", static: false, private: false, access: { has: obj => "updated_at" in obj, get: obj => obj.updated_at, set: (obj, value) => { obj.updated_at = value; } }, metadata: _metadata }, _updated_at_initializers, _updated_at_extraInitializers);
|
|
106
|
+
__esDecorate(_a, null, _patch_decorators, { kind: "accessor", name: "patch", static: false, private: false, access: { has: obj => "patch" in obj, get: obj => obj.patch, set: (obj, value) => { obj.patch = value; } }, metadata: _metadata }, _patch_initializers, _patch_extraInitializers);
|
|
107
|
+
__esDecorate(_a, null, _setData_decorators, { kind: "method", name: "setData", static: false, private: false, access: { has: obj => "setData" in obj, get: obj => obj.setData }, metadata: _metadata }, null, _instanceExtraInitializers);
|
|
68
108
|
if (_metadata) Object.defineProperty(_a, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
69
109
|
})(),
|
|
70
110
|
_a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaModelObject.js","sourceRoot":"","sources":["../../src/core/SchemaModelObject.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"SchemaModelObject.js","sourceRoot":"","sources":["../../src/core/SchemaModelObject.ts"],"names":[],"mappings":";AAAA,OAAO,EAAkC,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjF,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;IAQ7B,iBAAiB;;;;;;;;;;;;;;;;sBAAjB,iBAAiB;YAE5B,IAAS,IAAI,0FAAgB;YAA7B,IAAS,IAAI,+FAAgB;YAG7B,IAAS,KAAK,2FAAiB;YAA/B,IAAS,KAAK,gGAAiB;YAG/B,IAAS,UAAU,gGAAO;YAA1B,IAAS,UAAU,qGAAO;YAG1B,IAAS,KAAK,2FAAmB;YAAjC,IAAS,KAAK,gGAAmB;YAEjC,YAAmB,OAAiC;gBAAjC,YAAO,IAbf,mDAAiB,EAaT,OAAO,EAA0B;gBAX3C,wGAAoB;gBAGpB,8JAAsB;gBAGtB,yKAAiB;gBAGjB,oKAAwB;;gBAEd,YAAO,GAAP,OAAO,CAA0B;gBAClD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;oBAClB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC9B,CAAC;gBACD,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAe,CAAC;aACrC;YAED,KAAK,CAAC,YAAY;gBAChB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;oBACzD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;gBACnC,CAAC;gBACD,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;oBACvC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;wBACnD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YAED,KAAK,CAAC,IAAI;gBACR,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACrD,CAAC;YAED,UAAU;gBACR,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACrB,CAAC;YAED,MAAM,CAAC,KAAa;gBAClB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,CAAC;YAED,GAAG,CAAC,KAAa,EAAE,KAAU;;gBAC3B,IAAI,CAAA,MAAA,IAAI,CAAC,KAAK,0CAAG,KAAK,CAAC,MAAK,KAAK,EAAE,CAAC;oBAClC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAEO,OAAO,CAAC,IAAmB;gBACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC3F,aAAa;gBACb,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;YAED,KAAK,CAAC,MAAM;gBACV,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,UAAU;gBACZ,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;YACjC,CAAC;YAED,IAAI,EAAE;gBACJ,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,CAAC;;;;;;;;gCAxEA,UAAU;iCAGV,UAAU;sCAGV,UAAU;iCAGV,UAAU;mCA6CV,MAAM;YArDP,+JAAS,IAAI,6BAAJ,IAAI,mFAAgB;YAG7B,kKAAS,KAAK,6BAAL,KAAK,qFAAiB;YAG/B,iLAAS,UAAU,6BAAV,UAAU,+FAAO;YAG1B,kKAAS,KAAK,6BAAL,KAAK,qFAAmB;YA4CzB,sKAAA,OAAO,6DAMd;;;;;SA7DU,iBAAiB"}
|
|
@@ -5,14 +5,8 @@ export class AbstractQuery {
|
|
|
5
5
|
this.connection = connection;
|
|
6
6
|
this.id = v4();
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
type: this.type,
|
|
11
|
-
connection_id: this.connection.id
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
async deserialize(connectionStore, data) {
|
|
15
|
-
this.connection = await connectionStore.waitForReadyForConnection(data.connection_id);
|
|
8
|
+
async batchSave() {
|
|
9
|
+
await this.connection.batchSave(this.getDirtyObjects());
|
|
16
10
|
}
|
|
17
11
|
}
|
|
18
12
|
//# sourceMappingURL=AbstractQuery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AbstractQuery.js","sourceRoot":"","sources":["../../../src/core/query/AbstractQuery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AbstractQuery.js","sourceRoot":"","sources":["../../../src/core/query/AbstractQuery.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAI1B,MAAM,OAAgB,aAAa;IAGjC,YACS,IAAY,EACZ,UAA8B;QAD9B,SAAI,GAAJ,IAAI,CAAQ;QACZ,eAAU,GAAV,UAAU,CAAoB;QAErC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,SAAS;QACb,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;IAC1D,CAAC;CAaF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AbstractQuery } from './AbstractQuery';
|
|
2
|
+
export class AbstractSerializableQuery extends AbstractQuery {
|
|
3
|
+
serialize() {
|
|
4
|
+
return {
|
|
5
|
+
type: this.type,
|
|
6
|
+
connection_id: this.connection.id
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
async deserialize(connectionStore, data) {
|
|
10
|
+
this.connection = await connectionStore.waitForReadyForConnection(data.connection_id);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=AbstractSerializableQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AbstractSerializableQuery.js","sourceRoot":"","sources":["../../../src/core/query/AbstractSerializableQuery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQhD,MAAM,OAAgB,yBAEpB,SAAQ,aAAa;IACrB,SAAS;QACP,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE;SAC7B,CAAC;IACT,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,eAAgC,EAAE,IAAO;QACzD,IAAI,CAAC,UAAU,GAAG,MAAM,eAAe,CAAC,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACxF,CAAC;CACF"}
|
package/dist/core/query/Page.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import { SchemaModelObject } from '../SchemaModelObject';
|
|
3
2
|
import { observable } from 'mobx';
|
|
4
3
|
let Page = (() => {
|
|
5
4
|
var _a, _Page_models_accessor_storage, _Page_loading_accessor_storage;
|
|
@@ -26,21 +25,13 @@ let Page = (() => {
|
|
|
26
25
|
get index() {
|
|
27
26
|
return this.options.index;
|
|
28
27
|
}
|
|
29
|
-
|
|
30
|
-
this.
|
|
31
|
-
|
|
32
|
-
let query = collection.all();
|
|
33
|
-
this.options.filters.forEach((f) => {
|
|
34
|
-
query = f.augment(query);
|
|
28
|
+
reset() {
|
|
29
|
+
this.models.forEach((m) => {
|
|
30
|
+
m.patch.clear();
|
|
35
31
|
});
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
definition: this.options.definition,
|
|
40
|
-
model: m
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
this.loading = false;
|
|
32
|
+
}
|
|
33
|
+
getDirtyObjects() {
|
|
34
|
+
return this.models.filter((m) => m.patch.size > 0);
|
|
44
35
|
}
|
|
45
36
|
asRows() {
|
|
46
37
|
return this.models.map((m) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../src/core/query/Page.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"Page.js","sourceRoot":"","sources":["../../../src/core/query/Page.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;IAarB,IAAI;;;;;;;;sBAAJ,IAAI;YAEf,IAAS,MAAM,+EAAsB;YAArC,IAAS,MAAM,oFAAsB;YAGrC,IAAS,OAAO,gFAAU;YAA1B,IAAS,OAAO,qFAAU;YAE1B,YAAsB,OAAoB;gBAApB,YAAO,GAAP,OAAO,CAAa;gBALjC,+FAA4B;gBAG5B,uJAAiB;;gBAEJ,YAAO,GAAP,OAAO,CAAa;gBACxC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;gBACpB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;aAClB;YAED,IAAI,KAAK;gBACP,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;YAC5B,CAAC;YAED,KAAK;gBACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACxB,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAClB,CAAC,CAAC,CAAC;YACL,CAAC;YAED,eAAe;gBACb,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YACrD,CAAC;YAED,MAAM;gBACJ,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC3B,OAAO;wBACL,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE;wBACf,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;wBACnC,KAAK,EAAE,CAAC;qBACT,CAAC;gBACJ,CAAC,CAAC,CAAC;YACL,CAAC;;;;;;kCAlCA,UAAU;mCAGV,UAAU;YAFX,qKAAS,MAAM,6BAAN,MAAM,uFAAsB;YAGrC,wKAAS,OAAO,6BAAP,OAAO,yFAAU;;;;;SALf,IAAI"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AbstractQuery } from '../AbstractQuery';
|
|
2
|
+
import { Page } from '../Page';
|
|
3
|
+
export class ChangedModelQuery extends AbstractQuery {
|
|
4
|
+
constructor(query) {
|
|
5
|
+
super(query.type, query.connection);
|
|
6
|
+
this.query = query;
|
|
7
|
+
}
|
|
8
|
+
getDirtyObjects() {
|
|
9
|
+
return this.query.getDirtyObjects();
|
|
10
|
+
}
|
|
11
|
+
getSimpleName() {
|
|
12
|
+
return `Changed models`;
|
|
13
|
+
}
|
|
14
|
+
async load() { }
|
|
15
|
+
getColumns() {
|
|
16
|
+
return this.query.getColumns();
|
|
17
|
+
}
|
|
18
|
+
get totalPages() {
|
|
19
|
+
return 1;
|
|
20
|
+
}
|
|
21
|
+
getPage(number) {
|
|
22
|
+
let page = new Page({
|
|
23
|
+
definition: this.query.options.definition,
|
|
24
|
+
index: 0
|
|
25
|
+
});
|
|
26
|
+
page.loading = false;
|
|
27
|
+
page.models = this.query.getDirtyObjects();
|
|
28
|
+
return page;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=ChangedModelQuery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChangedModelQuery.js","sourceRoot":"","sources":["../../../../src/core/query/query-changed/ChangedModelQuery.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAG/B,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAClD,YAAsB,KAAkB;QACtC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;QADhB,UAAK,GAAL,KAAK,CAAa;IAExC,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;IACtC,CAAC;IACD,aAAa;QACX,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IACD,KAAK,CAAC,IAAI,KAAkB,CAAC;IAE7B,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;IACjC,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,CAAC,CAAC;IACX,CAAC;IACD,OAAO,CAAC,MAAc;QACpB,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC;YAClB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU;YACzC,KAAK,EAAE,CAAC;SACT,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Page } from '../Page';
|
|
2
|
+
export class SimplePage extends Page {
|
|
3
|
+
constructor(options2) {
|
|
4
|
+
super(options2);
|
|
5
|
+
this.options2 = options2;
|
|
6
|
+
}
|
|
7
|
+
async load() {
|
|
8
|
+
this.loading = true;
|
|
9
|
+
let collection = await this.options.definition.getCollection();
|
|
10
|
+
let query = collection.all();
|
|
11
|
+
this.options2.filters.forEach((f) => {
|
|
12
|
+
query = f.augment(query);
|
|
13
|
+
});
|
|
14
|
+
this.models = await this.options.definition.executeQuery(query.limit(this.options2.limit).skip(this.options2.offset));
|
|
15
|
+
this.loading = false;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=SimplePage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SimplePage.js","sourceRoot":"","sources":["../../../../src/core/query/query-simple/SimplePage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAe,MAAM,SAAS,CAAC;AAS5C,MAAM,OAAO,UAAW,SAAQ,IAAI;IAClC,YAAsB,QAA2B;QAC/C,KAAK,CAAC,QAAQ,CAAC,CAAC;QADI,aAAQ,GAAR,QAAQ,CAAmB;IAEjD,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QAC/D,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,CACtD,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5D,CAAC;QACF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { __classPrivateFieldGet, __classPrivateFieldSet, __esDecorate, __runInitializers } from "tslib";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { ConnectionStore } from '../../stores/ConnectionStore';
|
|
5
|
-
import { Page } from './Page';
|
|
2
|
+
import { inject } from '@journeyapps-labs/reactor-mod';
|
|
3
|
+
import { ConnectionStore } from '../../../stores/ConnectionStore';
|
|
6
4
|
import * as _ from 'lodash';
|
|
7
5
|
import * as React from 'react';
|
|
8
6
|
import { action, observable } from 'mobx';
|
|
9
|
-
import { CellDisplayWidget } from '
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
7
|
+
import { CellDisplayWidget } from '../widgets/CellDisplayWidget';
|
|
8
|
+
import { SmartColumnWidget } from '../widgets/SmartColumnWidget';
|
|
9
|
+
import { SmartCellDisplayWidget } from '../widgets/SmartCellDisplayWidget';
|
|
10
|
+
import { SimplePage } from './SimplePage';
|
|
11
|
+
import { AbstractSerializableQuery } from '../AbstractSerializableQuery';
|
|
12
|
+
import { SmartBelongsToDisplayWidget } from '../widgets/SmartBelongsToDisplayWidget';
|
|
13
13
|
let SimpleQuery = (() => {
|
|
14
14
|
var _a, _SimpleQuery_connStore_accessor_storage, _SimpleQuery__totalPages_accessor_storage, _SimpleQuery__pages_accessor_storage;
|
|
15
|
-
let _classSuper =
|
|
15
|
+
let _classSuper = AbstractSerializableQuery;
|
|
16
16
|
let _instanceExtraInitializers = [];
|
|
17
17
|
let _connStore_decorators;
|
|
18
18
|
let _connStore_initializers = [];
|
|
@@ -43,13 +43,9 @@ let SimpleQuery = (() => {
|
|
|
43
43
|
this._pages = [];
|
|
44
44
|
this.simple_filters = new Map();
|
|
45
45
|
}
|
|
46
|
-
async getCollection() {
|
|
47
|
-
let connection = await this.connection.getConnection();
|
|
48
|
-
return connection[this.options.definition.definition.name];
|
|
49
|
-
}
|
|
50
46
|
async load() {
|
|
51
47
|
this._pages = [];
|
|
52
|
-
let collection = await this.getCollection();
|
|
48
|
+
let collection = await this.options.definition.getCollection();
|
|
53
49
|
let query = collection.all();
|
|
54
50
|
this.simple_filters.forEach((f) => {
|
|
55
51
|
query = f.augment(query);
|
|
@@ -59,10 +55,9 @@ let SimpleQuery = (() => {
|
|
|
59
55
|
}
|
|
60
56
|
getPage(number) {
|
|
61
57
|
if (!this._pages[number]) {
|
|
62
|
-
let page = new
|
|
58
|
+
let page = new SimplePage({
|
|
63
59
|
offset: number * this.options.limit,
|
|
64
60
|
limit: this.options.limit,
|
|
65
|
-
collection: () => this.getCollection(),
|
|
66
61
|
definition: this.options.definition,
|
|
67
62
|
index: number,
|
|
68
63
|
filters: Array.from(this.simple_filters.values())
|
|
@@ -91,24 +86,27 @@ let SimpleQuery = (() => {
|
|
|
91
86
|
noWrap: true,
|
|
92
87
|
shrink: true
|
|
93
88
|
},
|
|
89
|
+
{
|
|
90
|
+
key: 'updated_at',
|
|
91
|
+
display: 'Updated at',
|
|
92
|
+
noWrap: true,
|
|
93
|
+
shrink: true,
|
|
94
|
+
accessor: (cell, row) => {
|
|
95
|
+
return React.createElement(CellDisplayWidget, { name: "updated_at", cell: row.model.updated_at, row: row });
|
|
96
|
+
}
|
|
97
|
+
},
|
|
94
98
|
..._.map(this.options.definition.definition.belongsToIdVars, (a) => {
|
|
95
99
|
return {
|
|
96
100
|
key: a.name,
|
|
97
|
-
display: a.
|
|
101
|
+
display: (React.createElement(SmartColumnWidget, { variable: this.options.definition.definition.belongsToVars[a.relationship], type: this.options.definition.definition.belongsTo[a.relationship].foreignType, filterChanged: (filter) => { } })),
|
|
98
102
|
noWrap: true,
|
|
99
103
|
shrink: true,
|
|
100
104
|
accessor: (cell, row) => {
|
|
101
|
-
return
|
|
102
|
-
EditSchemaModelAction.get().fireAction({
|
|
103
|
-
source: ActionSource.BUTTON,
|
|
104
|
-
targetEntity: object
|
|
105
|
-
});
|
|
106
|
-
}, relationship: row.model.definition.definition.belongsTo[a.relationship], connection: this.connection, id: row.model.model[a.name] }));
|
|
105
|
+
return React.createElement(SmartBelongsToDisplayWidget, { variable_id: a, row: row, connection: this.connection });
|
|
107
106
|
}
|
|
108
107
|
};
|
|
109
108
|
}),
|
|
110
109
|
..._.map(this.options.definition.definition.attributes, (a) => {
|
|
111
|
-
// @ts-ignore FIXME, remove when `display` supports JSX.Element as a type
|
|
112
110
|
return {
|
|
113
111
|
key: a.name,
|
|
114
112
|
display: (React.createElement(SmartColumnWidget, { variable: a, filter: this.simple_filters.get(a), filterChanged: (filter) => {
|
|
@@ -124,7 +122,7 @@ let SimpleQuery = (() => {
|
|
|
124
122
|
noWrap: true,
|
|
125
123
|
shrink: true,
|
|
126
124
|
accessor: (cell, row) => {
|
|
127
|
-
return React.createElement(
|
|
125
|
+
return React.createElement(SmartCellDisplayWidget, { name: a.name, row: row });
|
|
128
126
|
}
|
|
129
127
|
};
|
|
130
128
|
})
|
|
@@ -133,6 +131,9 @@ let SimpleQuery = (() => {
|
|
|
133
131
|
getSimpleName() {
|
|
134
132
|
return `Query: ${this.options.definition.definition.label}`;
|
|
135
133
|
}
|
|
134
|
+
getDirtyObjects() {
|
|
135
|
+
return _.flatMap(this._pages.filter((p) => !!p), (page) => page.getDirtyObjects());
|
|
136
|
+
}
|
|
136
137
|
},
|
|
137
138
|
_SimpleQuery_connStore_accessor_storage = new WeakMap(),
|
|
138
139
|
_SimpleQuery__totalPages_accessor_storage = new WeakMap(),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SimpleQuery.js","sourceRoot":"","sources":["../../../../src/core/query/query-simple/SimpleQuery.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
3
|
import { IconWidget, styled, TableButtonWidget } from '@journeyapps-labs/reactor-mod';
|
|
4
4
|
import { copyTextToClipboard } from '@journeyapps-labs/lib-reactor-utils';
|
|
5
|
-
|
|
5
|
+
import { observer } from 'mobx-react';
|
|
6
|
+
export const BelongsToDisplayWidget = observer((props) => {
|
|
6
7
|
const [object, setObject] = useState(null);
|
|
7
8
|
const [broken, setBroken] = useState(false);
|
|
8
9
|
useEffect(() => {
|
|
@@ -28,24 +29,12 @@ export const BelongsToDisplayWidget = (props) => {
|
|
|
28
29
|
if (!object) {
|
|
29
30
|
return React.createElement(S.Spinner, { spin: true, icon: "spinner" });
|
|
30
31
|
}
|
|
31
|
-
return (React.createElement(S.Container,
|
|
32
|
-
|
|
32
|
+
return (React.createElement(S.Container, { className: props.className },
|
|
33
|
+
object.data.display,
|
|
33
34
|
React.createElement(TableButtonWidget, { icon: "arrow-right", action: () => {
|
|
34
35
|
props.open(object);
|
|
35
36
|
} })));
|
|
36
|
-
};
|
|
37
|
-
export const BelongsToStringWidget = ({ model }) => {
|
|
38
|
-
const [display, setDisplay] = useState();
|
|
39
|
-
useEffect(() => {
|
|
40
|
-
model.displayValue().then((value) => {
|
|
41
|
-
setDisplay(value);
|
|
42
|
-
});
|
|
43
|
-
}, []);
|
|
44
|
-
if (!display) {
|
|
45
|
-
return React.createElement(S.Spinner, { spin: true, icon: "spinner" });
|
|
46
|
-
}
|
|
47
|
-
return React.createElement("span", null, display);
|
|
48
|
-
};
|
|
37
|
+
});
|
|
49
38
|
var S;
|
|
50
39
|
(function (S) {
|
|
51
40
|
S.Warning = styled(TableButtonWidget) `
|