@datagrok-libraries/utils 3.3.1 → 4.0.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/package.json +1 -1
- package/css/file-input.css +0 -32
- package/css/history-input.css +0 -27
- package/css/history-panel.css +0 -57
- package/css/pipeline-view.css +0 -13
- package/css/rich-function-view.css +0 -4
- package/src/computation-view.d.ts +0 -78
- package/src/computation-view.d.ts.map +0 -1
- package/src/computation-view.js +0 -159
- package/src/function-view.d.ts +0 -226
- package/src/function-view.d.ts.map +0 -1
- package/src/function-view.js +0 -384
- package/src/history-utils.d.ts +0 -65
- package/src/history-utils.d.ts.map +0 -1
- package/src/history-utils.js +0 -212
- package/src/pipeline-view.d.ts +0 -40
- package/src/pipeline-view.d.ts.map +0 -1
- package/src/pipeline-view.js +0 -178
- package/src/rich-function-view.d.ts +0 -55
- package/src/rich-function-view.d.ts.map +0 -1
- package/src/rich-function-view.js +0 -571
- package/src/shared-components/file-input.d.ts +0 -23
- package/src/shared-components/file-input.d.ts.map +0 -1
- package/src/shared-components/file-input.js +0 -133
- package/src/shared-components/history-input.d.ts +0 -26
- package/src/shared-components/history-input.d.ts.map +0 -1
- package/src/shared-components/history-input.js +0 -192
- package/src/shared-components/history-panel.d.ts +0 -65
- package/src/shared-components/history-panel.d.ts.map +0 -1
- package/src/shared-components/history-panel.js +0 -502
- package/src/shared-components/ui-utils.d.ts +0 -10
- package/src/shared-components/ui-utils.d.ts.map +0 -1
- package/src/shared-components/ui-utils.js +0 -19
- package/src/validation.d.ts +0 -56
- package/src/validation.d.ts.map +0 -1
- package/src/validation.js +0 -152
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { Subject } from 'rxjs';
|
|
2
|
-
import Validation from '../validation';
|
|
3
|
-
import '../../css/file-input.css';
|
|
4
|
-
export declare const EXCEL_BLOB_TYPE = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
|
|
5
|
-
export declare class FileInput {
|
|
6
|
-
initialText: string;
|
|
7
|
-
initialValue: File | null;
|
|
8
|
-
onValueChanged: Function | null;
|
|
9
|
-
fileType: string;
|
|
10
|
-
uploadedFile$: Subject<File | null>;
|
|
11
|
-
onFileUploaded: Subject<File | null>;
|
|
12
|
-
root: HTMLDivElement;
|
|
13
|
-
validation: Validation<File>;
|
|
14
|
-
private visibleInput;
|
|
15
|
-
private hiddenInput;
|
|
16
|
-
private icon;
|
|
17
|
-
private isValid;
|
|
18
|
-
constructor(initialText?: string, initialValue?: File | null, onValueChanged?: Function | null, fileType?: string);
|
|
19
|
-
private draw;
|
|
20
|
-
private reset;
|
|
21
|
-
private clear;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=file-input.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"file-input.d.ts","sourceRoot":"","sources":["file-input.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,OAAO,EAAC,MAAM,MAAM,CAAC;AAC9C,OAAO,UAAU,MAAM,eAAe,CAAC;AACvC,OAAO,0BAA0B,CAAC;AAElC,eAAO,MAAM,eAAe,sEAAsE,CAAC;AAEnG,qBAAa,SAAS;IAiBX,WAAW;IACX,YAAY,EAAE,IAAI,GAAG,IAAI;IACzB,cAAc,EAAE,QAAQ,GAAG,IAAI;IAC/B,QAAQ;IAlBV,aAAa,uBAA8B;IAE3C,cAAc,uBAA8B;IAE5C,IAAI,iBAAY;IAEhB,UAAU,mBAA0B;IAE3C,OAAO,CAAC,YAAY,CAAwD;IAC5E,OAAO,CAAC,WAAW,CAAmC;IACtD,OAAO,CAAC,IAAI,CAA6D;IAEzE,OAAO,CAAC,OAAO,CAAsC;gBAG5C,WAAW,SAAqB,EAChC,YAAY,GAAE,IAAI,GAAG,IAAW,EAChC,cAAc,GAAE,QAAQ,GAAG,IAAW,EACtC,QAAQ,SAAkB;IA0BnC,OAAO,CAAC,IAAI;IAoFZ,OAAO,CAAC,KAAK;IAUb,OAAO,CAAC,KAAK;CAGd"}
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import * as ui from 'datagrok-api/ui';
|
|
11
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
12
|
-
import Validation from '../validation';
|
|
13
|
-
import '../../css/file-input.css';
|
|
14
|
-
export const EXCEL_BLOB_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
|
|
15
|
-
export class FileInput {
|
|
16
|
-
constructor(initialText = 'Drag-n-drop here', initialValue = null, onValueChanged = null, fileType = EXCEL_BLOB_TYPE) {
|
|
17
|
-
this.initialText = initialText;
|
|
18
|
-
this.initialValue = initialValue;
|
|
19
|
-
this.onValueChanged = onValueChanged;
|
|
20
|
-
this.fileType = fileType;
|
|
21
|
-
// events to emit
|
|
22
|
-
this.uploadedFile$ = new Subject();
|
|
23
|
-
// same event as above but in DG-style
|
|
24
|
-
this.onFileUploaded = new Subject();
|
|
25
|
-
// HTML root of component
|
|
26
|
-
this.root = ui.div();
|
|
27
|
-
// Validation object
|
|
28
|
-
this.validation = new Validation();
|
|
29
|
-
this.visibleInput = ui.stringInput('Input file', this.initialText, null);
|
|
30
|
-
this.hiddenInput = document.createElement('input');
|
|
31
|
-
this.icon = ui.iconFA('cloud-upload', () => this.hiddenInput.click());
|
|
32
|
-
this.isValid = new BehaviorSubject(true);
|
|
33
|
-
this.draw();
|
|
34
|
-
this.isValid.subscribe((isValid) => {
|
|
35
|
-
if (isValid) {
|
|
36
|
-
this.visibleInput.input.classList.remove('error');
|
|
37
|
-
this.visibleInput.input.classList.add('success');
|
|
38
|
-
const newIcon = ui.iconFA('times', () => this.reset());
|
|
39
|
-
this.icon.replaceWith(newIcon);
|
|
40
|
-
this.icon = newIcon;
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
this.visibleInput.input.classList.remove('success');
|
|
44
|
-
this.visibleInput.input.classList.add('error');
|
|
45
|
-
const newIcon = ui.iconFA('redo', () => this.hiddenInput.click());
|
|
46
|
-
this.icon.replaceWith(newIcon);
|
|
47
|
-
this.icon = newIcon;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
this.uploadedFile$.subscribe((file) => this.onFileUploaded.next(file));
|
|
51
|
-
if (onValueChanged)
|
|
52
|
-
this.uploadedFile$.subscribe((newValue) => onValueChanged(newValue));
|
|
53
|
-
}
|
|
54
|
-
draw() {
|
|
55
|
-
this.clear();
|
|
56
|
-
const createFileArea = () => {
|
|
57
|
-
this.visibleInput.input.readOnly = true;
|
|
58
|
-
this.visibleInput.input.classList.add('default');
|
|
59
|
-
const handleFiles = (files) => __awaiter(this, void 0, void 0, function* () {
|
|
60
|
-
if (!files || !files.length) {
|
|
61
|
-
this.uploadedFile$.next(null);
|
|
62
|
-
return;
|
|
63
|
-
}
|
|
64
|
-
if (files.length > 1) {
|
|
65
|
-
this.isValid.next(false);
|
|
66
|
-
throw new Error('Please specify single input file');
|
|
67
|
-
}
|
|
68
|
-
this.visibleInput.value = files[0].name;
|
|
69
|
-
if (files[0].type !== this.fileType) {
|
|
70
|
-
this.isValid.next(false);
|
|
71
|
-
throw new Error('File type is not supported');
|
|
72
|
-
}
|
|
73
|
-
this.isValid.next(yield this.validation.validate(files[0]));
|
|
74
|
-
if (this.isValid.value)
|
|
75
|
-
this.uploadedFile$.next(files[0]);
|
|
76
|
-
else
|
|
77
|
-
this.uploadedFile$.next(null);
|
|
78
|
-
});
|
|
79
|
-
this.visibleInput.root.classList.add('cv-drop-area');
|
|
80
|
-
this.visibleInput.root.style.width = '100%';
|
|
81
|
-
// hidden input to handle file dialog
|
|
82
|
-
this.hiddenInput.type = 'file';
|
|
83
|
-
this.hiddenInput.addEventListener('change', () => __awaiter(this, void 0, void 0, function* () { return yield handleFiles(this.hiddenInput.files); }), false);
|
|
84
|
-
// Prevent default drag behaviors
|
|
85
|
-
['dragenter', 'dragover', 'dragleave', 'drop'].forEach((eventName) => {
|
|
86
|
-
this.visibleInput.input.addEventListener(eventName, (e) => {
|
|
87
|
-
e.preventDefault();
|
|
88
|
-
e.stopPropagation();
|
|
89
|
-
}, false);
|
|
90
|
-
});
|
|
91
|
-
['dragenter', 'dragover'].forEach((eventName) => {
|
|
92
|
-
this.visibleInput.input.addEventListener(eventName, () => {
|
|
93
|
-
this.visibleInput.input.classList.add('drag-n-dropping');
|
|
94
|
-
}, false);
|
|
95
|
-
});
|
|
96
|
-
['dragleave', 'drop'].forEach((eventName) => {
|
|
97
|
-
this.visibleInput.input.addEventListener(eventName, () => {
|
|
98
|
-
this.visibleInput.input.classList.remove('drag-n-dropping');
|
|
99
|
-
}, false);
|
|
100
|
-
});
|
|
101
|
-
// Handle dropped files
|
|
102
|
-
this.visibleInput.input.addEventListener('drop', (e) => __awaiter(this, void 0, void 0, function* () {
|
|
103
|
-
const dt = e.dataTransfer;
|
|
104
|
-
const files = dt.files;
|
|
105
|
-
handleFiles(files);
|
|
106
|
-
}), false);
|
|
107
|
-
// Pass clicks to hidden file input
|
|
108
|
-
this.visibleInput.input.addEventListener('click', () => this.hiddenInput.click(), false);
|
|
109
|
-
this.visibleInput.root.append(ui.div(this.icon, 'icon'));
|
|
110
|
-
return this.visibleInput;
|
|
111
|
-
};
|
|
112
|
-
['drag', 'dragenter'].forEach((eventName) => {
|
|
113
|
-
document.getElementsByClassName('layout-workarea')[0].addEventListener(eventName, (e) => {
|
|
114
|
-
e.stopPropagation();
|
|
115
|
-
}, false);
|
|
116
|
-
});
|
|
117
|
-
this.root.style.display = 'flex';
|
|
118
|
-
this.root.append(createFileArea().root);
|
|
119
|
-
}
|
|
120
|
-
reset() {
|
|
121
|
-
this.visibleInput.input.classList.value = 'ui-input-editor default';
|
|
122
|
-
const newIcon = ui.iconFA('cloud-upload', () => this.hiddenInput.click());
|
|
123
|
-
this.icon.replaceWith(newIcon);
|
|
124
|
-
this.icon = newIcon;
|
|
125
|
-
this.visibleInput.value = 'Drag-n-drop here';
|
|
126
|
-
this.hiddenInput.value = '';
|
|
127
|
-
this.uploadedFile$.next(null);
|
|
128
|
-
}
|
|
129
|
-
clear() {
|
|
130
|
-
ui.empty(this.root);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImZpbGUtaW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBRUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV0QyxPQUFPLEVBQUMsZUFBZSxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM5QyxPQUFPLFVBQVUsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTywwQkFBMEIsQ0FBQztBQUVsQyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsbUVBQW1FLENBQUM7QUFFbkcsTUFBTSxPQUFPLFNBQVM7SUFnQnBCLFlBQ1MsY0FBYyxrQkFBa0IsRUFDaEMsZUFBNEIsSUFBSSxFQUNoQyxpQkFBa0MsSUFBSSxFQUN0QyxXQUFXLGVBQWU7UUFIMUIsZ0JBQVcsR0FBWCxXQUFXLENBQXFCO1FBQ2hDLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBd0I7UUFDdEMsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFuQm5DLGlCQUFpQjtRQUNWLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQWUsQ0FBQztRQUNsRCxzQ0FBc0M7UUFDL0IsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBZSxDQUFDO1FBQ25ELHlCQUF5QjtRQUNsQixTQUFJLEdBQUcsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLG9CQUFvQjtRQUNiLGVBQVUsR0FBRyxJQUFJLFVBQVUsRUFBUSxDQUFDO1FBRW5DLGlCQUFZLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUNwRSxnQkFBVyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsU0FBSSxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxFQUFFLEdBQUcsRUFBRSxDQUFD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LElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxHQUFHLGtCQUFrQixDQUFDO1FBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sS0FBSztRQUNYLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbmltcG9ydCAqIGFzIGdyb2sgZnJvbSAnZGF0YWdyb2stYXBpL2dyb2snO1xuaW1wb3J0ICogYXMgdWkgZnJvbSAnZGF0YWdyb2stYXBpL3VpJztcbmltcG9ydCAqIGFzIERHIGZyb20gJ2RhdGFncm9rLWFwaS9kZyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgVmFsaWRhdGlvbiBmcm9tICcuLi92YWxpZGF0aW9uJztcbmltcG9ydCAnLi4vLi4vY3NzL2ZpbGUtaW5wdXQuY3NzJztcblxuZXhwb3J0IGNvbnN0IEVYQ0VMX0JMT0JfVFlQRSA9ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldCc7XG5cbmV4cG9ydCBjbGFzcyBGaWxlSW5wdXQge1xuICAvLyBldmVudHMgdG8gZW1pdFxuICBwdWJsaWMgdXBsb2FkZWRGaWxlJCA9IG5ldyBTdWJqZWN0PEZpbGUgfCBudWxsPigpO1xuICAvLyBzYW1lIGV2ZW50IGFzIGFib3ZlIGJ1dCBpbiBERy1zdHlsZVxuICBwdWJsaWMgb25GaWxlVXBsb2FkZWQgPSBuZXcgU3ViamVjdDxGaWxlIHwgbnVsbD4oKTtcbiAgLy8gSFRNTCByb290IG9mIGNvbXBvbmVudFxuICBwdWJsaWMgcm9vdCA9IHVpLmRpdigpO1xuICAvLyBWYWxpZGF0aW9uIG9iamVjdFxuICBwdWJsaWMgdmFsaWRhdGlvbiA9IG5ldyBWYWxpZGF0aW9uPEZpbGU+KCk7XG5cbiAgcHJpdmF0ZSB2aXNpYmxlSW5wdXQgPSB1aS5zdHJpbmdJbnB1dCgnSW5wdXQgZmlsZScsIHRoaXMuaW5pdGlhbFRleHQsIG51bGwpO1xuICBwcml2YXRlIGhpZGRlbklucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgcHJpdmF0ZSBpY29uID0gdWkuaWNvbkZBKCdjbG91ZC11cGxvYWQnLCAoKSA9PiB0aGlzLmhpZGRlbklucHV0LmNsaWNrKCkpO1xuXG4gIHByaXZhdGUgaXNWYWxpZCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGluaXRpYWxUZXh0ID0gJ0RyYWctbi1kcm9wIGhlcmUnLFxuICAgIHB1YmxpYyBpbml0aWFsVmFsdWU6IEZpbGUgfCBudWxsID0gbnVsbCxcbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZWQ6IEZ1bmN0aW9uIHwgbnVsbCA9IG51bGwsXG4gICAgcHVibGljIGZpbGVUeXBlID0gRVhDRUxfQkxPQl9UWVBFXG4gICkge1xuICAgIHRoaXMuZHJhdygpO1xuXG4gICAgdGhpcy5pc1ZhbGlkLnN1YnNjcmliZSgoaXNWYWxpZCkgPT4ge1xuICAgICAgaWYgKGlzVmFsaWQpIHtcbiAgICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LnJlbW92ZSgnZXJyb3InKTtcbiAgICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LmFkZCgnc3VjY2VzcycpO1xuICAgICAgICBjb25zdCBuZXdJY29uID0gdWkuaWNvbkZBKCd0aW1lcycsICgpID0+IHRoaXMucmVzZXQoKSk7XG4gICAgICAgIHRoaXMuaWNvbi5yZXBsYWNlV2l0aChuZXdJY29uKTtcbiAgICAgICAgdGhpcy5pY29uID0gbmV3SWNvbjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMudmlzaWJsZUlucHV0LmlucHV0LmNsYXNzTGlzdC5yZW1vdmUoJ3N1Y2Nlc3MnKTtcbiAgICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LmFkZCgnZXJyb3InKTtcbiAgICAgICAgY29uc3QgbmV3SWNvbiA9IHVpLmljb25GQSgncmVkbycsICgpID0+IHRoaXMuaGlkZGVuSW5wdXQuY2xpY2soKSk7XG4gICAgICAgIHRoaXMuaWNvbi5yZXBsYWNlV2l0aChuZXdJY29uKTtcbiAgICAgICAgdGhpcy5pY29uID0gbmV3SWNvbjtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMudXBsb2FkZWRGaWxlJC5zdWJzY3JpYmUoKGZpbGUpID0+IHRoaXMub25GaWxlVXBsb2FkZWQubmV4dChmaWxlKSk7XG5cbiAgICBpZiAob25WYWx1ZUNoYW5nZWQpXG4gICAgICB0aGlzLnVwbG9hZGVkRmlsZSQuc3Vic2NyaWJlKChuZXdWYWx1ZTogRmlsZSB8IG51bGwpID0+IG9uVmFsdWVDaGFuZ2VkKG5ld1ZhbHVlKSk7XG4gIH1cblxuICBwcml2YXRlIGRyYXcoKSB7XG4gICAgdGhpcy5jbGVhcigpO1xuXG4gICAgY29uc3QgY3JlYXRlRmlsZUFyZWEgPSAoKSA9PiB7XG4gICAgICAodGhpcy52aXNpYmxlSW5wdXQuaW5wdXQgYXMgSFRNTElucHV0RWxlbWVudCkucmVhZE9ubHkgPSB0cnVlO1xuICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LmFkZCgnZGVmYXVsdCcpO1xuXG4gICAgICBjb25zdCBoYW5kbGVGaWxlcyA9IGFzeW5jIChmaWxlczogRmlsZUxpc3QgfCBudWxsKSA9PiB7XG4gICAgICAgIGlmICghZmlsZXMgfHwgIWZpbGVzLmxlbmd0aCkge1xuICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlJC5uZXh0KG51bGwpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChmaWxlcy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgdGhpcy5pc1ZhbGlkLm5leHQoZmFsc2UpO1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignUGxlYXNlIHNwZWNpZnkgc2luZ2xlIGlucHV0IGZpbGUnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudmlzaWJsZUlucHV0LnZhbHVlID0gZmlsZXNbMF0ubmFtZTtcbiAgICAgICAgaWYgKGZpbGVzWzBdLnR5cGUgIT09IHRoaXMuZmlsZVR5cGUpIHtcbiAgICAgICAgICB0aGlzLmlzVmFsaWQubmV4dChmYWxzZSk7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdGaWxlIHR5cGUgaXMgbm90IHN1cHBvcnRlZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pc1ZhbGlkLm5leHQoYXdhaXQgdGhpcy52YWxpZGF0aW9uLnZhbGlkYXRlKGZpbGVzWzBdKSk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNWYWxpZC52YWx1ZSlcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZSQubmV4dChmaWxlc1swXSk7XG4gICAgICAgIGVsc2VcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZSQubmV4dChudWxsKTtcbiAgICAgIH07XG5cbiAgICAgIHRoaXMudmlzaWJsZUlucHV0LnJvb3QuY2xhc3NMaXN0LmFkZCgnY3YtZHJvcC1hcmVhJyk7XG4gICAgICB0aGlzLnZpc2libGVJbnB1dC5yb290LnN0eWxlLndpZHRoID0gJzEwMCUnO1xuXG4gICAgICAvLyBoaWRkZW4gaW5wdXQgdG8gaGFuZGxlIGZpbGUgZGlhbG9nXG5cbiAgICAgIHRoaXMuaGlkZGVuSW5wdXQudHlwZSA9ICdmaWxlJztcbiAgICAgIHRoaXMuaGlkZGVuSW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgYXN5bmMgKCkgPT4gYXdhaXQgaGFuZGxlRmlsZXModGhpcy5oaWRkZW5JbnB1dC5maWxlcyksIGZhbHNlKTtcblxuICAgICAgLy8gUHJldmVudCBkZWZhdWx0IGRyYWcgYmVoYXZpb3JzXG4gICAgICBbJ2RyYWdlbnRlcicsICdkcmFnb3ZlcicsICdkcmFnbGVhdmUnLCAnZHJvcCddLmZvckVhY2goKGV2ZW50TmFtZSkgPT4ge1xuICAgICAgICB0aGlzLnZpc2libGVJbnB1dC5pbnB1dC5hZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgKGUpID0+IHtcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgfSwgZmFsc2UpO1xuICAgICAgfSk7XG5cbiAgICAgIFsnZHJhZ2VudGVyJywgJ2RyYWdvdmVyJ10uZm9yRWFjaCgoZXZlbnROYW1lKSA9PiB7XG4gICAgICAgIHRoaXMudmlzaWJsZUlucHV0LmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LmFkZCgnZHJhZy1uLWRyb3BwaW5nJyk7XG4gICAgICAgIH0sIGZhbHNlKTtcbiAgICAgIH0pO1xuXG4gICAgICBbJ2RyYWdsZWF2ZScsICdkcm9wJ10uZm9yRWFjaCgoZXZlbnROYW1lKSA9PiB7XG4gICAgICAgIHRoaXMudmlzaWJsZUlucHV0LmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCAoKSA9PiB7XG4gICAgICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LnJlbW92ZSgnZHJhZy1uLWRyb3BwaW5nJyk7XG4gICAgICAgIH0sIGZhbHNlKTtcbiAgICAgIH0pO1xuXG4gICAgICAvLyBIYW5kbGUgZHJvcHBlZCBmaWxlc1xuICAgICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuYWRkRXZlbnRMaXN0ZW5lcignZHJvcCcsIGFzeW5jIChlOiBEcmFnRXZlbnQpID0+IHtcbiAgICAgICAgY29uc3QgZHQgPSBlLmRhdGFUcmFuc2ZlcjtcbiAgICAgICAgY29uc3QgZmlsZXMgPSBkdCEuZmlsZXM7XG4gICAgICAgIGhhbmRsZUZpbGVzKGZpbGVzKTtcbiAgICAgIH0sIGZhbHNlKTtcblxuICAgICAgLy8gUGFzcyBjbGlja3MgdG8gaGlkZGVuIGZpbGUgaW5wdXRcbiAgICAgIHRoaXMudmlzaWJsZUlucHV0LmlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gdGhpcy5oaWRkZW5JbnB1dC5jbGljaygpLCBmYWxzZSk7XG4gICAgICB0aGlzLnZpc2libGVJbnB1dC5yb290LmFwcGVuZCh1aS5kaXYodGhpcy5pY29uLCAnaWNvbicpKTtcblxuICAgICAgcmV0dXJuIHRoaXMudmlzaWJsZUlucHV0O1xuICAgIH07XG5cbiAgICBbJ2RyYWcnLCAnZHJhZ2VudGVyJ10uZm9yRWFjaCgoZXZlbnROYW1lKSA9PiB7XG4gICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKCdsYXlvdXQtd29ya2FyZWEnKVswXS5hZGRFdmVudExpc3RlbmVyKGV2ZW50TmFtZSwgKGUpID0+IHtcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH0sIGZhbHNlKTtcbiAgICB9KTtcblxuICAgIHRoaXMucm9vdC5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnO1xuICAgIHRoaXMucm9vdC5hcHBlbmQoY3JlYXRlRmlsZUFyZWEoKS5yb290KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzZXQoKSB7XG4gICAgdGhpcy52aXNpYmxlSW5wdXQuaW5wdXQuY2xhc3NMaXN0LnZhbHVlID0gJ3VpLWlucHV0LWVkaXRvciBkZWZhdWx0JztcbiAgICBjb25zdCBuZXdJY29uID0gdWkuaWNvbkZBKCdjbG91ZC11cGxvYWQnLCAoKSA9PiB0aGlzLmhpZGRlbklucHV0LmNsaWNrKCkpO1xuICAgIHRoaXMuaWNvbi5yZXBsYWNlV2l0aChuZXdJY29uKTtcbiAgICB0aGlzLmljb24gPSBuZXdJY29uO1xuICAgIHRoaXMudmlzaWJsZUlucHV0LnZhbHVlID0gJ0RyYWctbi1kcm9wIGhlcmUnO1xuICAgIHRoaXMuaGlkZGVuSW5wdXQudmFsdWUgPSAnJztcbiAgICB0aGlzLnVwbG9hZGVkRmlsZSQubmV4dChudWxsKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xlYXIoKSB7XG4gICAgdWkuZW1wdHkodGhpcy5yb290KTtcbiAgfVxufVxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import * as DG from 'datagrok-api/dg';
|
|
2
|
-
import { BehaviorSubject, Subject } from 'rxjs';
|
|
3
|
-
import '../../css/history-input.css';
|
|
4
|
-
export declare class HistoryInput {
|
|
5
|
-
private label;
|
|
6
|
-
private _funcName;
|
|
7
|
-
private _stringValueFunc;
|
|
8
|
-
private _visibleColumnsForGrid;
|
|
9
|
-
private _visibleColumnsForFilter;
|
|
10
|
-
onHistoricalRunChosen: BehaviorSubject<DG.FuncCall | null>;
|
|
11
|
-
experimentRunsUpdate: Subject<boolean>;
|
|
12
|
-
private store;
|
|
13
|
-
private _historyGrid;
|
|
14
|
-
private _historyFilters;
|
|
15
|
-
private _visibleInput;
|
|
16
|
-
constructor(label: string, _funcName: string, _stringValueFunc: (currentRun: DG.FuncCall) => string, _visibleColumnsForGrid: Record<string, (currentRun: DG.FuncCall) => string>, _visibleColumnsForFilter?: string[]);
|
|
17
|
-
get historyGrid(): DG.Grid<DG.IGridLookSettings>;
|
|
18
|
-
get historyFilters(): DG.Viewer<DG.IFiltersLookSettings>;
|
|
19
|
-
get root(): HTMLElement;
|
|
20
|
-
set value(val: DG.FuncCall | null);
|
|
21
|
-
get value(): DG.FuncCall | null;
|
|
22
|
-
set stringValue(val: string);
|
|
23
|
-
get stringValue(): string;
|
|
24
|
-
toggleLoaderExpRuns(newState: boolean): void;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=history-input.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"history-input.d.ts","sourceRoot":"","sources":["history-input.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAC,eAAe,EAAqB,OAAO,EAAO,MAAM,MAAM,CAAC;AAIvE,OAAO,6BAA6B,CAAC;AAgBrC,qBAAa,YAAY;IAuBrB,OAAO,CAAC,KAAK;IAEb,OAAO,CAAC,SAAS;IAEjB,OAAO,CAAC,gBAAgB;IAExB,OAAO,CAAC,sBAAsB;IAE9B,OAAO,CAAC,wBAAwB;IA7B3B,qBAAqB,sCAAiD;IAGtE,oBAAoB,mBAA0B;IAErD,OAAO,CAAC,KAAK,CAQX;IACF,OAAO,CAAC,YAAY,CAA2H;IAC/I,OAAO,CAAC,eAAe,CAA4E;IAEnG,OAAO,CAAC,aAAa,CAAwC;gBAInD,KAAK,EAAE,MAAM,EAEb,SAAS,EAAE,MAAM,EAEjB,gBAAgB,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,KAAK,MAAM,EAErD,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,KAAK,MAAM,CAAC,EAE3E,wBAAwB,GAAE,MAAM,EAAO;IA6HjD,IAAI,WAAW,kCAEd;IAGD,IAAI,cAAc,uCAEjB;IAGD,IAAI,IAAI,gBAEP;IAED,IAAI,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,GAAG,IAAI,EAKhC;IAED,IAAI,KAAK,IAPM,EAAE,CAAC,QAAQ,GAAG,IAAI,CAShC;IAED,IAAI,WAAW,CAAC,GAAG,EAAE,MAAM,EAE1B;IAED,IAAI,WAAW,IAJM,MAAM,CAM1B;IAEM,mBAAmB,CAAC,QAAQ,EAAE,OAAO;CAG7C"}
|
|
@@ -1,192 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
/* eslint-disable max-len */
|
|
11
|
-
import * as grok from 'datagrok-api/grok';
|
|
12
|
-
import * as ui from 'datagrok-api/ui';
|
|
13
|
-
import * as DG from 'datagrok-api/dg';
|
|
14
|
-
import { BehaviorSubject, EMPTY, Observable, Subject, from } from 'rxjs';
|
|
15
|
-
import { catchError, finalize, shareReplay, switchMap, tap, takeUntil } from 'rxjs/operators';
|
|
16
|
-
import $ from 'cash-dom';
|
|
17
|
-
import { historyUtils } from '../history-utils';
|
|
18
|
-
import '../../css/history-input.css';
|
|
19
|
-
class DatabaseService {
|
|
20
|
-
static getHistoryRuns(funcName) {
|
|
21
|
-
return from((() => __awaiter(this, void 0, void 0, function* () {
|
|
22
|
-
const res = yield historyUtils.pullRunsByName(funcName, [
|
|
23
|
-
{ isShared: true }, { author: grok.shell.user },
|
|
24
|
-
// EXPLAIN WHY FUNC.PARAMS
|
|
25
|
-
], { order: 'started' }, ['func.params', 'session.user', 'options']);
|
|
26
|
-
return res;
|
|
27
|
-
}))());
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
export class HistoryInput {
|
|
31
|
-
constructor(
|
|
32
|
-
// Label placed before next to the input
|
|
33
|
-
label,
|
|
34
|
-
// Function to look history for
|
|
35
|
-
_funcName,
|
|
36
|
-
// String value to be displayed in the input field
|
|
37
|
-
_stringValueFunc,
|
|
38
|
-
// Map of grid columns and functions to retrieve their actual values from DG.FuncCall
|
|
39
|
-
_visibleColumnsForGrid,
|
|
40
|
-
// Array of grid columns visible in the filter viever
|
|
41
|
-
_visibleColumnsForFilter = []) {
|
|
42
|
-
var _a;
|
|
43
|
-
this.label = label;
|
|
44
|
-
this._funcName = _funcName;
|
|
45
|
-
this._stringValueFunc = _stringValueFunc;
|
|
46
|
-
this._visibleColumnsForGrid = _visibleColumnsForGrid;
|
|
47
|
-
this._visibleColumnsForFilter = _visibleColumnsForFilter;
|
|
48
|
-
// emitted when parictular historical run is chosen
|
|
49
|
-
this.onHistoricalRunChosen = new BehaviorSubject(null);
|
|
50
|
-
// Toggle to force historical runs udpate
|
|
51
|
-
this.experimentRunsUpdate = new Subject();
|
|
52
|
-
this.store = {
|
|
53
|
-
experimentRuns: new Observable(),
|
|
54
|
-
experimentRunsDf: new BehaviorSubject(DG.DataFrame.fromColumns([
|
|
55
|
-
DG.Column.fromStrings('Pick', []),
|
|
56
|
-
...Object.keys(this._visibleColumnsForGrid).map((col) => DG.Column.fromStrings(col, []))
|
|
57
|
-
])),
|
|
58
|
-
isExperimentRunsLoading: new Subject(),
|
|
59
|
-
experimentRunData: new BehaviorSubject(''),
|
|
60
|
-
};
|
|
61
|
-
this._historyGrid = DG.Viewer.grid(this.store.experimentRunsDf.value, { showRowHeader: false, showColumnGridlines: false, allowEdit: false });
|
|
62
|
-
this._historyFilters = DG.Viewer.filters(this.store.experimentRunsDf.value, { title: 'Filters' });
|
|
63
|
-
this._visibleInput = ui.stringInput(this.label, '', null);
|
|
64
|
-
this._historyGrid.columns.byName('Pick').cellType = 'html';
|
|
65
|
-
this._historyGrid.columns.byName('Pick').width = 30;
|
|
66
|
-
this._historyGrid.root.style.height = '100%';
|
|
67
|
-
for (let i = 0; i < this._historyGrid.columns.length; i++) {
|
|
68
|
-
const col = (_a = this._historyGrid.columns.byIndex(i)) === null || _a === void 0 ? void 0 : _a.column;
|
|
69
|
-
if (col && col.type === DG.TYPE.DATE_TIME) {
|
|
70
|
-
this._historyGrid.columns.byIndex(i).format = 'MMM d, yyyy';
|
|
71
|
-
this._historyGrid.columns.byIndex(i).width = 100;
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
this._visibleInput.input.addEventListener('click', () => {
|
|
75
|
-
var _a;
|
|
76
|
-
const _historyDialog = ui.dialog();
|
|
77
|
-
$(_historyDialog.root).addClass('arrow-box');
|
|
78
|
-
_historyDialog.onOK(() => { });
|
|
79
|
-
_historyDialog.onCancel(() => {
|
|
80
|
-
this.onHistoricalRunChosen.next(null);
|
|
81
|
-
this.historyGrid.dataFrame.currentRowIdx = -1;
|
|
82
|
-
});
|
|
83
|
-
$(_historyDialog.root).find('.d4-dialog-header').hide();
|
|
84
|
-
_historyDialog.root.style.boxShadow = '';
|
|
85
|
-
$(_historyDialog.root).removeClass('ui-form');
|
|
86
|
-
const newHistoryFilters = DG.Viewer.filters(this.store.experimentRunsDf.value, { title: 'Filters' });
|
|
87
|
-
this._historyFilters.root.replaceWith(newHistoryFilters.root);
|
|
88
|
-
this._historyFilters = newHistoryFilters;
|
|
89
|
-
const newHistoryGrid = DG.Viewer.grid(this.store.experimentRunsDf.value, { showRowHeader: false, showColumnGridlines: false, allowEdit: false });
|
|
90
|
-
this._historyGrid.root.replaceWith(newHistoryGrid.root);
|
|
91
|
-
this._historyGrid = newHistoryGrid;
|
|
92
|
-
this._historyGrid.columns.byName('Pick').cellType = 'html';
|
|
93
|
-
this._historyGrid.columns.byName('Pick').width = 30;
|
|
94
|
-
this._historyGrid.root.style.height = '100%';
|
|
95
|
-
for (let i = 0; i < this._historyGrid.columns.length; i++) {
|
|
96
|
-
const col = (_a = this._historyGrid.columns.byIndex(i)) === null || _a === void 0 ? void 0 : _a.column;
|
|
97
|
-
if (col && col.type === DG.TYPE.DATE_TIME) {
|
|
98
|
-
this._historyGrid.columns.byIndex(i).format = 'MMM d, yyyy';
|
|
99
|
-
this._historyGrid.columns.byIndex(i).width = 100;
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
this._historyGrid.onCellPrepare((cell) => {
|
|
103
|
-
var _a;
|
|
104
|
-
if (((_a = cell.tableColumn) === null || _a === void 0 ? void 0 : _a.name) === 'Pick') {
|
|
105
|
-
if (cell.isColHeader)
|
|
106
|
-
cell.customText = '';
|
|
107
|
-
if (cell.cell.value === true)
|
|
108
|
-
cell.element = ui.div([ui.iconFA('check')], { style: { 'text-align': 'center', 'margin': '6px' } });
|
|
109
|
-
else
|
|
110
|
-
cell.element = ui.div();
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
this._historyGrid.columns.setVisible(['Pick', ...Object.keys(this._visibleColumnsForGrid).map((colName) => colName)]);
|
|
114
|
-
this._historyFilters.setOptions({ columnNames: this._visibleColumnsForFilter });
|
|
115
|
-
this._historyFilters.root.style.height = '100%';
|
|
116
|
-
$(this._historyFilters.root).find('.d4-filter-group-header').hide();
|
|
117
|
-
if (!this._visibleColumnsForFilter.length)
|
|
118
|
-
$(this._historyFilters.root.parentElement).hide();
|
|
119
|
-
_historyDialog.add(ui.divH([
|
|
120
|
-
ui.block([this._historyGrid.root]),
|
|
121
|
-
ui.block([this._historyFilters.root], { style: { 'margin-left': '10px', 'width': '225px', 'height': '100%' } }),
|
|
122
|
-
]));
|
|
123
|
-
_historyDialog.show({
|
|
124
|
-
x: this._visibleInput.input.getBoundingClientRect().x + this._visibleInput.input.clientWidth + 10,
|
|
125
|
-
y: this._visibleInput.input.getBoundingClientRect().y - 30,
|
|
126
|
-
width: Math.max(this._historyGrid.root.clientWidth + this._historyFilters.root.clientWidth + 30, 600),
|
|
127
|
-
});
|
|
128
|
-
});
|
|
129
|
-
this._visibleInput.readOnly = true;
|
|
130
|
-
this.store.experimentRuns = this.experimentRunsUpdate.pipe(tap(() => this.toggleLoaderExpRuns(true)), switchMap(() => DatabaseService.getHistoryRuns(this._funcName).pipe(catchError(() => EMPTY), finalize(() => this.toggleLoaderExpRuns(false)))), shareReplay(1));
|
|
131
|
-
this.store.experimentRuns.pipe(takeUntil(from(new Subject()))).subscribe((newRuns) => {
|
|
132
|
-
const newRunsGridDf = DG.DataFrame.fromColumns([
|
|
133
|
-
DG.Column.bool('Pick', newRuns.length).init(false),
|
|
134
|
-
...Object.entries(this._visibleColumnsForGrid).map((entry) => DG.Column.fromStrings(entry[0], newRuns.map(entry[1]))),
|
|
135
|
-
DG.Column.fromStrings('ID', newRuns.map((newRun) => newRun.id))
|
|
136
|
-
]);
|
|
137
|
-
newRunsGridDf.onCurrentRowChanged.subscribe(() => {
|
|
138
|
-
newRunsGridDf.getCol('Pick').init(false);
|
|
139
|
-
newRunsGridDf.set('Pick', newRunsGridDf.currentRow.idx, true);
|
|
140
|
-
const newId = newRunsGridDf.getCol('ID').get(newRunsGridDf.currentRow.idx);
|
|
141
|
-
const chosenRun = newRuns.find((run) => run.id === newId);
|
|
142
|
-
if (chosenRun)
|
|
143
|
-
this.onHistoricalRunChosen.next(chosenRun);
|
|
144
|
-
});
|
|
145
|
-
this.store.experimentRunsDf.next(newRunsGridDf);
|
|
146
|
-
});
|
|
147
|
-
this.store.experimentRunsDf.subscribe((newDf) => {
|
|
148
|
-
this.historyGrid.dataFrame = newDf;
|
|
149
|
-
this.historyFilters.dataFrame = newDf;
|
|
150
|
-
});
|
|
151
|
-
this.onHistoricalRunChosen.subscribe((val) => {
|
|
152
|
-
if (val)
|
|
153
|
-
this._visibleInput.value = this._stringValueFunc(val);
|
|
154
|
-
else
|
|
155
|
-
this._visibleInput.value = '';
|
|
156
|
-
});
|
|
157
|
-
this.store.isExperimentRunsLoading.subscribe((newValue) => {
|
|
158
|
-
ui.setUpdateIndicator(this._visibleInput.root, newValue);
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
// Viever object of grid
|
|
162
|
-
get historyGrid() {
|
|
163
|
-
return this._historyGrid;
|
|
164
|
-
}
|
|
165
|
-
// Viever object of filters
|
|
166
|
-
get historyFilters() {
|
|
167
|
-
return this._historyFilters;
|
|
168
|
-
}
|
|
169
|
-
// HTML root of component
|
|
170
|
-
get root() {
|
|
171
|
-
return this._visibleInput.root;
|
|
172
|
-
}
|
|
173
|
-
set value(val) {
|
|
174
|
-
if (val)
|
|
175
|
-
this._visibleInput.value = this._stringValueFunc(val);
|
|
176
|
-
else
|
|
177
|
-
this._visibleInput.value = '';
|
|
178
|
-
}
|
|
179
|
-
get value() {
|
|
180
|
-
return this.onHistoricalRunChosen.value;
|
|
181
|
-
}
|
|
182
|
-
set stringValue(val) {
|
|
183
|
-
this._visibleInput.value = val;
|
|
184
|
-
}
|
|
185
|
-
get stringValue() {
|
|
186
|
-
return this._visibleInput.value;
|
|
187
|
-
}
|
|
188
|
-
toggleLoaderExpRuns(newState) {
|
|
189
|
-
this.store.isExperimentRunsLoading.next(newState);
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yeS1pbnB1dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhpc3RvcnktaW5wdXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsNEJBQTRCO0FBQzVCLE9BQU8sS0FBSyxJQUFJLE1BQU0sbUJBQW1CLENBQUM7QUFDMUMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxlQUFlLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzVGLE9BQU8sQ0FBQyxNQUFNLFVBQVUsQ0FBQztBQUN6QixPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyw2QkFBNkIsQ0FBQztBQUVyQyxNQUFNLGVBQWU7SUFDbkIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFnQjtRQUNwQyxPQUFPLElBQUksQ0FBQyxDQUFDLEdBQVMsRUFBRTtZQUN0QixNQUFNLEdBQUcsR0FBRyxNQUFNLFlBQVksQ0FBQyxjQUFjLENBQzNDLFFBQVEsRUFBRTtnQkFDUixFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBQztnQkFDM0MsMEJBQTBCO2FBQzNCLEVBQUUsRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLFNBQVMsQ0FBQyxDQUNsRSxDQUFDO1lBQ0YsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNSLENB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Q2IsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRU0sbUJBQW1CLENBQUMsUUFBaUI7UUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBFTVBUWSwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgZnJvbX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NhdGNoRXJyb3IsIGZpbmFsaXplLCBzaGFyZVJlcGxheSwgc3dpdGNoTWFwLCB0YXAsIHRha2VVbnRpbH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0ICQgZnJvbSAnY2FzaC1kb20nO1xuaW1wb3J0IHtoaXN0b3J5VXRpbHN9IGZyb20gJy4uL2hpc3RvcnktdXRpbHMnO1xuaW1wb3J0ICcuLi8uLi9jc3MvaGlzdG9yeS1pbnB1dC5jc3MnO1xuXG5jbGFzcyBEYXRhYmFzZVNlcnZpY2Uge1xuICBzdGF0aWMgZ2V0SGlzdG9yeVJ1bnMoZnVuY05hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8REcuRnVuY0NhbGxbXT4ge1xuICAgIHJldHVybiBmcm9tKChhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBoaXN0b3J5VXRpbHMucHVsbFJ1bnNCeU5hbWUoXG4gICAgICAgIGZ1bmNOYW1lLCBbXG4gICAgICAgICAge2lzU2hhcmVkOiB0cnVlfSwge2F1dGhvcjogZ3Jvay5zaGVsbC51c2VyfSxcbiAgICAgICAgICAvLyBFWFBMQUlOIFdIWSBGVU5DLlBBUkFNU1xuICAgICAgICBdLCB7b3JkZXI6ICdzdGFydGVkJ30sIFsnZnVuYy5wYXJhbXMnLCAnc2Vzc2lvbi51c2VyJywgJ29wdGlvbnMnXVxuICAgICAgKTtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfSkoKSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEhpc3RvcnlJbnB1dCB7XG4gIC8vIGVtaXR0ZWQgd2hlbiBwYXJpY3R1bGFyIGhpc3RvcmljYWwgcnVuIGlzIGNob3NlblxuICBwdWJsaWMgb25IaXN0b3JpY2FsUnVuQ2hvc2VuID0gbmV3IEJlaGF2aW9yU3ViamVjdDxERy5GdW5jQ2FsbCB8IG51bGw+KG51bGwpO1xuXG4gIC8vIFRvZ2dsZSB0byBmb3JjZSBoaXN0b3JpY2FsIHJ1bnMgdWRwYXRlXG4gIHB1YmxpYyBleHBlcmltZW50UnVuc1VwZGF0ZSA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG5cbiAgcHJpdmF0ZSBzdG9yZSA9IHtcbiAgICBleHBlcmltZW50UnVuczogbmV3IE9ic2VydmFibGU8REcuRnVuY0NhbGxbXT4oKSxcbiAgICBleHBlcmltZW50UnVuc0RmOiBuZXcgQmVoYXZpb3JTdWJqZWN0KERHLkRhdGFGcmFtZS5mcm9tQ29sdW1ucyhbXG4gICAgICBERy5Db2x1bW4uZnJvbVN0cmluZ3MoJ1BpY2snLCBbXSksXG4gICAgICAuLi5PYmplY3Qua2V5cyh0aGlzLl92aXNpYmxlQ29sdW1uc0ZvckdyaWQpLm1hcCgoY29sKSA9PiBERy5Db2x1bW4uZnJvbVN0cmluZ3MoY29sLCBbXSkpXG4gICAgXSkpLFxuICAgIGlzRXhwZXJpbWVudFJ1bnNMb2FkaW5nOiBuZXcgU3ViamVjdDxib29sZWFuPigpLFxuICAgIGV4cGVyaW1lbnRSdW5EYXRhOiBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpLFxuICB9O1xuICBwcml2YXRlIF9oaXN0b3J5R3JpZCA9IERHLlZpZXdlci5ncmlkKHRoaXMuc3RvcmUuZXhwZXJpbWVudFJ1bnNEZi52YWx1ZSwge3Nob3dSb3dIZWFkZXI6IGZhbHNlLCBzaG93Q29sdW1uR3JpZGxpbmVzOiBmYWxzZSwgYWxsb3dFZGl0OiBmYWxzZX0pO1xuICBwcml2YXRlIF9oaXN0b3J5RmlsdGVycyA9IERHLlZpZXdlci5maWx0ZXJzKHRoaXMuc3RvcmUuZXhwZXJpbWVudFJ1bnNEZi52YWx1ZSwge3RpdGxlOiAnRmlsdGVycyd9KTtcblxuICBwcml2YXRlIF92aXNpYmxlSW5wdXQgPSB1aS5zdHJpbmdJbnB1dCh0aGlzLmxhYmVsLCAnJywgbnVsbCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgLy8gTGFiZWwgcGxhY2VkIGJlZm9yZSBuZXh0IHRvIHRoZSBpbnB1dFxuICAgIHByaXZhdGUgbGFiZWw6IHN0cmluZyxcbiAgICAvLyBGdW5jdGlvbiB0byBsb29rIGhpc3RvcnkgZm9yXG4gICAgcHJpdmF0ZSBfZnVuY05hbWU6IHN0cmluZyxcbiAgICAvLyBTdHJpbmcgdmFsdWUgdG8gYmUgZGlzcGxheWVkIGluIHRoZSBpbnB1dCBmaWVsZFxuICAgIHByaXZhdGUgX3N0cmluZ1ZhbHVlRnVuYzogKGN1cnJlbnRSdW46IERHLkZ1bmNDYWxsKSA9PiBzdHJpbmcsXG4gICAgLy8gTWFwIG9mIGdyaWQgY29sdW1ucyBhbmQgZnVuY3Rpb25zIHRvIHJldHJpZXZlIHRoZWlyIGFjdHVhbCB2YWx1ZXMgZnJvbSBERy5GdW5jQ2FsbFxuICAgIHByaXZhdGUgX3Zpc2libGVDb2x1bW5zRm9yR3JpZDogUmVjb3JkPHN0cmluZywgKGN1cnJlbnRSdW46IERHLkZ1bmNDYWxsKSA9PiBzdHJpbmc+LFxuICAgIC8vIEFycmF5IG9mIGdyaWQgY29sdW1ucyB2aXNpYmxlIGluIHRoZSBmaWx0ZXIgdmlldmVyXG4gICAgcHJpdmF0ZSBfdmlzaWJsZUNvbHVtbnNGb3JGaWx0ZXI6IHN0cmluZ1tdID0gW11cbiAgKSB7XG4gICAgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5ieU5hbWUoJ1BpY2snKSEuY2VsbFR5cGUgPSAnaHRtbCc7XG4gICAgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5ieU5hbWUoJ1BpY2snKSEud2lkdGggPSAzMDtcbiAgICB0aGlzLl9oaXN0b3J5R3JpZC5yb290LnN0eWxlLmhlaWdodCA9ICcxMDAlJztcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuX2hpc3RvcnlHcmlkLmNvbHVtbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGNvbCA9IHRoaXMuX2hpc3RvcnlHcmlkLmNvbHVtbnMuYnlJbmRleChpKT8uY29sdW1uO1xuICAgICAgaWYgKGNvbCAmJiBjb2wudHlwZSA9PT0gREcuVFlQRS5EQVRFX1RJTUUpIHtcbiAgICAgICAgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5ieUluZGV4KGkpIS5mb3JtYXQgPSAnTU1NIGQsIHl5eXknO1xuICAgICAgICB0aGlzLl9oaXN0b3J5R3JpZC5jb2x1bW5zLmJ5SW5kZXgoaSkhLndpZHRoID0gMTAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3Zpc2libGVJbnB1dC5pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgIGNvbnN0IF9oaXN0b3J5RGlhbG9nID0gdWkuZGlhbG9nKCk7XG5cbiAgICAgICQoX2hpc3RvcnlEaWFsb2cucm9vdCkuYWRkQ2xhc3MoJ2Fycm93LWJveCcpO1xuXG4gICAgICBfaGlzdG9yeURpYWxvZy5vbk9LKCgpID0+IHsgfSk7XG4gICAgICBfaGlzdG9yeURpYWxvZy5vbkNhbmNlbCgoKSA9PiB7XG4gICAgICAgIHRoaXMub25IaXN0b3JpY2FsUnVuQ2hvc2VuLm5leHQobnVsbCk7XG4gICAgICAgIHRoaXMuaGlzdG9yeUdyaWQuZGF0YUZyYW1lLmN1cnJlbnRSb3dJZHggPSAtMTtcbiAgICAgIH0pO1xuXG4gICAgICAkKF9oaXN0b3J5RGlhbG9nLnJvb3QpLmZpbmQoJy5kNC1kaWFsb2ctaGVhZGVyJykuaGlkZSgpO1xuICAgICAgX2hpc3RvcnlEaWFsb2cucm9vdC5zdHlsZS5ib3hTaGFkb3cgPSAnJztcbiAgICAgICQoX2hpc3RvcnlEaWFsb2cucm9vdCkucmVtb3ZlQ2xhc3MoJ3VpLWZvcm0nKTtcblxuICAgICAgY29uc3QgbmV3SGlzdG9yeUZpbHRlcnMgPSBERy5WaWV3ZXIuZmlsdGVycyh0aGlzLnN0b3JlLmV4cGVyaW1lbnRSdW5zRGYudmFsdWUsIHt0aXRsZTogJ0ZpbHRlcnMnfSk7XG4gICAgICB0aGlzLl9oaXN0b3J5RmlsdGVycy5yb290LnJlcGxhY2VXaXRoKG5ld0hpc3RvcnlGaWx0ZXJzLnJvb3QpO1xuICAgICAgdGhpcy5faGlzdG9yeUZpbHRlcnMgPSBuZXdIaXN0b3J5RmlsdGVycztcblxuICAgICAgY29uc3QgbmV3SGlzdG9yeUdyaWQgPSBERy5WaWV3ZXIuZ3JpZCh0aGlzLnN0b3JlLmV4cGVyaW1lbnRSdW5zRGYudmFsdWUsIHtzaG93Um93SGVhZGVyOiBmYWxzZSwgc2hvd0NvbHVtbkdyaWRsaW5lczogZmFsc2UsIGFsbG93RWRpdDogZmFsc2V9KTtcbiAgICAgIHRoaXMuX2hpc3RvcnlHcmlkLnJvb3QucmVwbGFjZVdpdGgobmV3SGlzdG9yeUdyaWQucm9vdCk7XG4gICAgICB0aGlzLl9oaXN0b3J5R3JpZCA9IG5ld0hpc3RvcnlHcmlkO1xuXG4gICAgICB0aGlzLl9oaXN0b3J5R3JpZC5jb2x1bW5zLmJ5TmFtZSgnUGljaycpIS5jZWxsVHlwZSA9ICdodG1sJztcbiAgICAgIHRoaXMuX2hpc3RvcnlHcmlkLmNvbHVtbnMuYnlOYW1lKCdQaWNrJykhLndpZHRoID0gMzA7XG4gICAgICB0aGlzLl9oaXN0b3J5R3JpZC5yb290LnN0eWxlLmhlaWdodCA9ICcxMDAlJztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBjb2wgPSB0aGlzLl9oaXN0b3J5R3JpZC5jb2x1bW5zLmJ5SW5kZXgoaSk/LmNvbHVtbjtcbiAgICAgICAgaWYgKGNvbCAmJiBjb2wudHlwZSA9PT0gREcuVFlQRS5EQVRFX1RJTUUpIHtcbiAgICAgICAgICB0aGlzLl9oaXN0b3J5R3JpZC5jb2x1bW5zLmJ5SW5kZXgoaSkhLmZvcm1hdCA9ICdNTU0gZCwgeXl5eSc7XG4gICAgICAgICAgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5ieUluZGV4KGkpIS53aWR0aCA9IDEwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0aGlzLl9oaXN0b3J5R3JpZC5vbkNlbGxQcmVwYXJlKChjZWxsKSA9PiB7XG4gICAgICAgIGlmIChjZWxsLnRhYmxlQ29sdW1uPy5uYW1lID09PSAnUGljaycpIHtcbiAgICAgICAgICBpZiAoY2VsbC5pc0NvbEhlYWRlcilcbiAgICAgICAgICAgIGNlbGwuY3VzdG9tVGV4dCA9ICcnO1xuXG4gICAgICAgICAgaWYgKGNlbGwuY2VsbC52YWx1ZSA9PT0gdHJ1ZSlcbiAgICAgICAgICAgIGNlbGwuZWxlbWVudCA9IHVpLmRpdihbdWkuaWNvbkZBKCdjaGVjaycpXSwge3N0eWxlOiB7J3RleHQtYWxpZ24nOiAnY2VudGVyJywgJ21hcmdpbic6ICc2cHgnfX0pO1xuICAgICAgICAgIGVsc2VcbiAgICAgICAgICAgIGNlbGwuZWxlbWVudCA9IHVpLmRpdigpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5faGlzdG9yeUdyaWQuY29sdW1ucy5zZXRWaXNpYmxlKFsnUGljaycsIC4uLk9iamVjdC5rZXlzKHRoaXMuX3Zpc2libGVDb2x1bW5zRm9yR3JpZCkubWFwKChjb2xOYW1lKSA9PiBjb2xOYW1lKV0pO1xuICAgICAgdGhpcy5faGlzdG9yeUZpbHRlcnMuc2V0T3B0aW9ucyh7Y29sdW1uTmFtZXM6IHRoaXMuX3Zpc2libGVDb2x1bW5zRm9yRmlsdGVyfSk7XG4gICAgICB0aGlzLl9oaXN0b3J5RmlsdGVycy5yb290LnN0eWxlLmhlaWdodCA9ICcxMDAlJztcbiAgICAgICQodGhpcy5faGlzdG9yeUZpbHRlcnMucm9vdCkuZmluZCgnLmQ0LWZpbHRlci1ncm91cC1oZWFkZXInKS5oaWRlKCk7XG5cbiAgICAgIGlmICghdGhpcy5fdmlzaWJsZUNvbHVtbnNGb3JGaWx0ZXIubGVuZ3RoKSAkKHRoaXMuX2hpc3RvcnlGaWx0ZXJzLnJvb3QucGFyZW50RWxlbWVudCkuaGlkZSgpO1xuXG4gICAgICBfaGlzdG9yeURpYWxvZy5hZGQoXG4gICAgICAgIHVpLmRpdkgoW1xuICAgICAgICAgIHVpLmJsb2NrKFt0aGlzLl9oaXN0b3J5R3JpZC5yb290XSksXG4gICAgICAgICAgdWkuYmxvY2soW3RoaXMuX2hpc3RvcnlGaWx0ZXJzLnJvb3RdLCB7c3R5bGU6IHsnbWFyZ2luLWxlZnQnOiAnMTBweCcsICd3aWR0aCc6ICcyMjVweCcsICdoZWlnaHQnOiAnMTAwJSd9fSksXG4gICAgICAgIF0pXG4gICAgICApO1xuXG4gICAgICBfaGlzdG9yeURpYWxvZy5zaG93KHtcbiAgICAgICAgeDogdGhpcy5fdmlzaWJsZUlucHV0LmlucHV0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnggKyB0aGlzLl92aXNpYmxlSW5wdXQuaW5wdXQuY2xpZW50V2lkdGggKyAxMCxcbiAgICAgICAgeTogdGhpcy5fdmlzaWJsZUlucHV0LmlucHV0LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnkgLSAzMCxcbiAgICAgICAgd2lkdGg6IE1hdGgubWF4KHRoaXMuX2hpc3RvcnlHcmlkLnJvb3QuY2xpZW50V2lkdGggKyB0aGlzLl9oaXN0b3J5RmlsdGVycy5yb290LmNsaWVudFdpZHRoICsgMzAsIDYwMCksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgICB0aGlzLl92aXNpYmxlSW5wdXQucmVhZE9ubHkgPSB0cnVlO1xuXG4gICAgdGhpcy5zdG9yZS5leHBlcmltZW50UnVucyA9IHRoaXMuZXhwZXJpbWVudFJ1bnNVcGRhdGUucGlwZShcbiAgICAgIHRhcCgoKSA9PiB0aGlzLnRvZ2dsZUxvYWRlckV4cFJ1bnModHJ1ZSkpLFxuICAgICAgc3dpdGNoTWFwKCgpID0+IERhdGFiYXNlU2VydmljZS5nZXRIaXN0b3J5UnVucyh0aGlzLl9mdW5jTmFtZSkucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSksXG4gICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMudG9nZ2xlTG9hZGVyRXhwUnVucyhmYWxzZSkpXG4gICAgICApKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcblxuICAgIHRoaXMuc3RvcmUuZXhwZXJpbWVudFJ1bnMucGlwZSh0YWtlVW50aWwoZnJvbShuZXcgU3ViamVjdDxib29sZWFuPigpKSkpLnN1YnNjcmliZSgobmV3UnVucykgPT4ge1xuICAgICAgY29uc3QgbmV3UnVuc0dyaWREZiA9IERHLkRhdGFGcmFtZS5mcm9tQ29sdW1ucyhbXG4gICAgICAgIERHLkNvbHVtbi5ib29sKCdQaWNrJywgbmV3UnVucy5sZW5ndGgpLmluaXQoZmFsc2UpLFxuICAgICAgICAuLi5PYmplY3QuZW50cmllcyh0aGlzLl92aXNpYmxlQ29sdW1uc0ZvckdyaWQpLm1hcCgoZW50cnkpID0+IERHLkNvbHVtbi5mcm9tU3RyaW5ncyhlbnRyeVswXSwgbmV3UnVucy5tYXAoZW50cnlbMV0pKSksXG4gICAgICAgIERHLkNvbHVtbi5mcm9tU3RyaW5ncygnSUQnLCBuZXdSdW5zLm1hcCgobmV3UnVuKSA9PiBuZXdSdW4uaWQpKVxuICAgICAgXSk7XG4gICAgICBuZXdSdW5zR3JpZERmLm9uQ3VycmVudFJvd0NoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgbmV3UnVuc0dyaWREZi5nZXRDb2woJ1BpY2snKS5pbml0KGZhbHNlKTtcbiAgICAgICAgbmV3UnVuc0dyaWREZi5zZXQoJ1BpY2snLCBuZXdSdW5zR3JpZERmLmN1cnJlbnRSb3cuaWR4LCB0cnVlKTtcbiAgICAgICAgY29uc3QgbmV3SWQgPSBuZXdSdW5zR3JpZERmLmdldENvbCgnSUQnKS5nZXQobmV3UnVuc0dyaWREZi5jdXJyZW50Um93LmlkeCk7XG4gICAgICAgIGNvbnN0IGNob3NlblJ1biA9IG5ld1J1bnMuZmluZCgocnVuKSA9PiBydW4uaWQgPT09IG5ld0lkKTtcbiAgICAgICAgaWYgKGNob3NlblJ1bilcbiAgICAgICAgICB0aGlzLm9uSGlzdG9yaWNhbFJ1bkNob3Nlbi5uZXh0KGNob3NlblJ1bik7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuc3RvcmUuZXhwZXJpbWVudFJ1bnNEZi5uZXh0KG5ld1J1bnNHcmlkRGYpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5zdG9yZS5leHBlcmltZW50UnVuc0RmLnN1YnNjcmliZSgobmV3RGYpID0+IHtcbiAgICAgIHRoaXMuaGlzdG9yeUdyaWQuZGF0YUZyYW1lID0gbmV3RGY7XG4gICAgICB0aGlzLmhpc3RvcnlGaWx0ZXJzLmRhdGFGcmFtZSA9IG5ld0RmO1xuICAgIH0pO1xuXG4gICAgdGhpcy5vbkhpc3RvcmljYWxSdW5DaG9zZW4uc3Vic2NyaWJlKCh2YWwpID0+IHtcbiAgICAgIGlmICh2YWwpXG4gICAgICAgIHRoaXMuX3Zpc2libGVJbnB1dC52YWx1ZSA9IHRoaXMuX3N0cmluZ1ZhbHVlRnVuYyh2YWwpO1xuICAgICAgZWxzZVxuICAgICAgICB0aGlzLl92aXNpYmxlSW5wdXQudmFsdWUgPSAnJztcbiAgICB9KTtcblxuICAgIHRoaXMuc3RvcmUuaXNFeHBlcmltZW50UnVuc0xvYWRpbmcuc3Vic2NyaWJlKChuZXdWYWx1ZSkgPT4ge1xuICAgICAgdWkuc2V0VXBkYXRlSW5kaWNhdG9yKHRoaXMuX3Zpc2libGVJbnB1dC5yb290LCBuZXdWYWx1ZSk7XG4gICAgfSk7XG4gIH1cblxuICAvLyBWaWV2ZXIgb2JqZWN0IG9mIGdyaWRcbiAgZ2V0IGhpc3RvcnlHcmlkKCkge1xuICAgIHJldHVybiB0aGlzLl9oaXN0b3J5R3JpZDtcbiAgfVxuXG4gIC8vIFZpZXZlciBvYmplY3Qgb2YgZmlsdGVyc1xuICBnZXQgaGlzdG9yeUZpbHRlcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2hpc3RvcnlGaWx0ZXJzO1xuICB9XG5cbiAgLy8gSFRNTCByb290IG9mIGNvbXBvbmVudFxuICBnZXQgcm9vdCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZUlucHV0LnJvb3Q7XG4gIH1cblxuICBzZXQgdmFsdWUodmFsOiBERy5GdW5jQ2FsbCB8IG51bGwpIHtcbiAgICBpZiAodmFsKVxuICAgICAgdGhpcy5fdmlzaWJsZUlucHV0LnZhbHVlID0gdGhpcy5fc3RyaW5nVmFsdWVGdW5jKHZhbCk7XG4gICAgZWxzZVxuICAgICAgdGhpcy5fdmlzaWJsZUlucHV0LnZhbHVlID0gJyc7XG4gIH1cblxuICBnZXQgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMub25IaXN0b3JpY2FsUnVuQ2hvc2VuLnZhbHVlO1xuICB9XG5cbiAgc2V0IHN0cmluZ1ZhbHVlKHZhbDogc3RyaW5nKSB7XG4gICAgdGhpcy5fdmlzaWJsZUlucHV0LnZhbHVlID0gdmFsO1xuICB9XG5cbiAgZ2V0IHN0cmluZ1ZhbHVlKCkge1xuICAgIHJldHVybiB0aGlzLl92aXNpYmxlSW5wdXQudmFsdWU7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlTG9hZGVyRXhwUnVucyhuZXdTdGF0ZTogYm9vbGVhbikge1xuICAgIHRoaXMuc3RvcmUuaXNFeHBlcmltZW50UnVuc0xvYWRpbmcubmV4dChuZXdTdGF0ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import * as DG from 'datagrok-api/dg';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import '../../css/history-panel.css';
|
|
4
|
-
export declare const defaultUsersIds: {
|
|
5
|
-
Test: string;
|
|
6
|
-
Admin: string;
|
|
7
|
-
System: string;
|
|
8
|
-
};
|
|
9
|
-
export declare const defaultGroupsIds: {
|
|
10
|
-
'All users': string;
|
|
11
|
-
Developers: string;
|
|
12
|
-
'Need to create': string;
|
|
13
|
-
Test: string;
|
|
14
|
-
Admin: string;
|
|
15
|
-
System: string;
|
|
16
|
-
Administrators: string;
|
|
17
|
-
};
|
|
18
|
-
export declare class HistoryPanel {
|
|
19
|
-
private func;
|
|
20
|
-
onRunChosen: Subject<string>;
|
|
21
|
-
beforeRunAddToFavorites: Subject<DG.FuncCall>;
|
|
22
|
-
beforeRunAddToShared: Subject<DG.FuncCall>;
|
|
23
|
-
beforeRunRemoveFromFavorites: Subject<DG.FuncCall>;
|
|
24
|
-
beforeRunRemoveFromShared: Subject<DG.FuncCall>;
|
|
25
|
-
beforeRunDeleted: Subject<string>;
|
|
26
|
-
afterRunAddToFavorites: Subject<DG.FuncCall>;
|
|
27
|
-
afterRunAddToShared: Subject<DG.FuncCall>;
|
|
28
|
-
afterRunRemoveFromFavorites: Subject<DG.FuncCall>;
|
|
29
|
-
afterRunRemoveFromShared: Subject<DG.FuncCall>;
|
|
30
|
-
afterRunDeleted: Subject<string>;
|
|
31
|
-
private store;
|
|
32
|
-
private myRunsFilter;
|
|
33
|
-
private favRunsFilter;
|
|
34
|
-
private sharedRunsFilter;
|
|
35
|
-
allRunsFetch: Subject<true>;
|
|
36
|
-
historyTab: HTMLDivElement;
|
|
37
|
-
favTab: HTMLDivElement;
|
|
38
|
-
sharedTab: HTMLDivElement;
|
|
39
|
-
filterPane: HTMLDivElement;
|
|
40
|
-
tabs: DG.TabControl;
|
|
41
|
-
private _root;
|
|
42
|
-
myCards: HTMLElement[];
|
|
43
|
-
favoriteCards: HTMLElement[];
|
|
44
|
-
sharedCards: HTMLElement[];
|
|
45
|
-
buildFilterPane(currentTabName: string): any;
|
|
46
|
-
myPaneFilter: any;
|
|
47
|
-
favoritesPaneFilter: any;
|
|
48
|
-
sharedPaneFilter: any;
|
|
49
|
-
showDeleteRunDialog(funcCall: DG.FuncCall): void;
|
|
50
|
-
updateSharedPane(sharedRuns: DG.FuncCall[]): void;
|
|
51
|
-
updateFavoritesPane(favoriteRuns: DG.FuncCall[]): void;
|
|
52
|
-
updateMyPane(myRuns: DG.FuncCall[]): void;
|
|
53
|
-
renderCard(funcCall: DG.FuncCall): HTMLDivElement;
|
|
54
|
-
showEditDialog(funcCall: DG.FuncCall): void;
|
|
55
|
-
renderFavoriteCards(funcCalls: DG.FuncCall[]): HTMLDivElement;
|
|
56
|
-
renderSharedCards(funcCalls: DG.FuncCall[]): HTMLDivElement;
|
|
57
|
-
renderHistoryCards(funcCalls: DG.FuncCall[]): HTMLDivElement;
|
|
58
|
-
constructor(func: DG.Func);
|
|
59
|
-
private addRunToFavorites;
|
|
60
|
-
private removeRunFromFavorites;
|
|
61
|
-
private addRunToShared;
|
|
62
|
-
private removeRunFromShared;
|
|
63
|
-
get root(): HTMLDivElement;
|
|
64
|
-
}
|
|
65
|
-
//# sourceMappingURL=history-panel.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"history-panel.d.ts","sourceRoot":"","sources":["history-panel.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAGtC,OAAO,EAAkB,OAAO,EAAC,MAAM,MAAM,CAAC;AAE9C,OAAO,6BAA6B,CAAC;AAErC,eAAO,MAAM,eAAe;;;;CAI3B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;CAQ5B,CAAC;AAqEF,qBAAa,YAAY;IA4XrB,OAAO,CAAC,IAAI;IA1XP,WAAW,kBAAyB;IAGpC,uBAAuB,uBAA8B;IAGrD,oBAAoB,uBAA8B;IAGlD,4BAA4B,uBAA8B;IAG1D,yBAAyB,uBAA8B;IAGvD,gBAAgB,kBAAyB;IAGzC,sBAAsB,uBAA8B;IAGpD,mBAAmB,uBAA8B;IAGjD,2BAA2B,uBAA8B;IAGzD,wBAAwB,uBAA8B;IAGtD,eAAe,kBAAyB;IAE/C,OAAO,CAAC,KAAK,CAA2B;IAExC,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,gBAAgB,CAAuB;IAExC,YAAY,gBAAuB;IAE1C,UAAU,iBAAY;IACtB,MAAM,iBAAY;IAClB,SAAS,iBAAY;IACrB,UAAU,iBAAY;IACtB,IAAI,gBAID;IAEH,OAAO,CAAC,KAAK,CAEgC;IAE7C,OAAO,gBAAuB;IAC9B,aAAa,gBAAuB;IACpC,WAAW,gBAAuB;IAElC,eAAe,CAAC,cAAc,EAAE,MAAM;IA6FtC,YAAY,MAAuC;IACnD,mBAAmB,MAAwC;IAC3D,gBAAgB,MAAsC;IAEtD,mBAAmB,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ;IAWzC,gBAAgB,CAAC,UAAU,EAAE,EAAE,CAAC,QAAQ,EAAE;IAW1C,mBAAmB,CAAC,YAAY,EAAE,EAAE,CAAC,QAAQ,EAAE;IAW/C,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,EAAE;IAWlC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ;IAkEhC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ;IAiGpC,mBAAmB,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE;IAK5C,iBAAiB,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE;IAK1C,kBAAkB,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,EAAE;gBAMjC,IAAI,EAAE,EAAE,CAAC,IAAI;YA6DT,iBAAiB;YASjB,sBAAsB;YAStB,cAAc;YA4Bd,mBAAmB;IASjC,IAAW,IAAI,mBAEd;CACF"}
|