@datagrok-libraries/utils 1.0.0 → 1.2.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
CHANGED
|
@@ -20,6 +20,20 @@ export declare class ComputationView extends FunctionView {
|
|
|
20
20
|
* @stability Stable
|
|
21
21
|
*/
|
|
22
22
|
constructor(funcName?: string);
|
|
23
|
+
/** Override to customize getting mocks
|
|
24
|
+
* @stability Experimental
|
|
25
|
+
*/
|
|
26
|
+
getMocks: ({
|
|
27
|
+
mockName: string;
|
|
28
|
+
action: () => Promise<void>;
|
|
29
|
+
}[]) | null;
|
|
30
|
+
/** Override to customize getting templates
|
|
31
|
+
* @stability Experimental
|
|
32
|
+
*/
|
|
33
|
+
getTemplates: ({
|
|
34
|
+
name: string;
|
|
35
|
+
action: () => Promise<void>;
|
|
36
|
+
}[]) | null;
|
|
23
37
|
/** Override to customize getting help feature
|
|
24
38
|
* @stability Stable
|
|
25
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"computation-view.d.ts","sourceRoot":"","sources":["computation-view.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;;;;;KAcK;AACL,qBAAa,eAAgB,SAAQ,YAAY;IAC/C;;;MAGE;gBACU,QAAQ,CAAC,EAAE,MAAM;IAsB7B;;MAEE;IACF,OAAO,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE7C;;MAEE;IACF,SAAS,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE/C;;;MAGE;IACO,eAAe;
|
|
1
|
+
{"version":3,"file":"computation-view.d.ts","sourceRoot":"","sources":["computation-view.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;;;;;;KAcK;AACL,qBAAa,eAAgB,SAAQ,YAAY;IAC/C;;;MAGE;gBACU,QAAQ,CAAC,EAAE,MAAM;IAsB7B;;MAEE;IACF,QAAQ,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,YAAY,EAAE,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;KAAC,EAAE,CAAC,GAAG,IAAI,CAAQ;IAE5E;;MAEE;IACF,OAAO,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE7C;;MAEE;IACF,SAAS,EAAE,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAQ;IAE/C;;;MAGE;IACO,eAAe;CA2CzB"}
|
package/src/computation-view.js
CHANGED
|
@@ -35,6 +35,14 @@ export class ComputationView extends FunctionView {
|
|
|
35
35
|
*/
|
|
36
36
|
constructor(funcName) {
|
|
37
37
|
super();
|
|
38
|
+
/** Override to customize getting mocks
|
|
39
|
+
* @stability Experimental
|
|
40
|
+
*/
|
|
41
|
+
this.getMocks = null;
|
|
42
|
+
/** Override to customize getting templates
|
|
43
|
+
* @stability Experimental
|
|
44
|
+
*/
|
|
45
|
+
this.getTemplates = null;
|
|
38
46
|
/** Override to customize getting help feature
|
|
39
47
|
* @stability Stable
|
|
40
48
|
*/
|
|
@@ -68,9 +76,29 @@ export class ComputationView extends FunctionView {
|
|
|
68
76
|
*/
|
|
69
77
|
buildRibbonMenu() {
|
|
70
78
|
super.buildRibbonMenu();
|
|
71
|
-
if (!this.exportConfig && !this.reportBug && !this.getHelp)
|
|
79
|
+
if (!this.exportConfig && !this.reportBug && !this.getHelp && !this.getMocks)
|
|
72
80
|
return;
|
|
73
81
|
const ribbonMenu = this.ribbonMenu.group('Model');
|
|
82
|
+
if (this.getMocks && this.getMocks.length > 0) {
|
|
83
|
+
const dataGroup = ribbonMenu
|
|
84
|
+
.group('Input data mocks');
|
|
85
|
+
this.getMocks.forEach((val) => {
|
|
86
|
+
dataGroup.item(val.mockName, val.action);
|
|
87
|
+
});
|
|
88
|
+
ribbonMenu.endGroup();
|
|
89
|
+
}
|
|
90
|
+
if (this.getTemplates && this.getTemplates.length > 0) {
|
|
91
|
+
if (this.getTemplates.length === 1) {
|
|
92
|
+
ribbonMenu.item('Input data template', this.getTemplates[0].action);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
const dataGroup = ribbonMenu.group('Input data templates');
|
|
96
|
+
this.getTemplates.forEach((val) => {
|
|
97
|
+
dataGroup.item(val.name, val.action);
|
|
98
|
+
});
|
|
99
|
+
ribbonMenu.endGroup();
|
|
100
|
+
}
|
|
101
|
+
}
|
|
74
102
|
if (this.exportConfig && this.exportConfig.supportedFormats.length > 0) {
|
|
75
103
|
ribbonMenu
|
|
76
104
|
.group('Export')
|
|
@@ -83,4 +111,4 @@ export class ComputationView extends FunctionView {
|
|
|
83
111
|
ribbonMenu.item('Help', () => this.getHelp());
|
|
84
112
|
}
|
|
85
113
|
}
|
|
86
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0YXRpb24tdmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbXB1dGF0aW9uLXZpZXcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsZ0NBQWdDO0FBQ2hDLDRCQUE0QjtBQUM1QixPQUFPLEtBQUssSUFBSSxNQUFNLG1CQUFtQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEMsT0FBTyxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFFN0M7Ozs7Ozs7Ozs7Ozs7O0tBY0s7QUFDTCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxZQUFZO0lBQy9DOzs7TUFHRTtJQUNGLFlBQVksUUFBaUI7UUFDM0IsS0FBSyxFQUFFLENBQUM7UUFxQlY7O1VBRUU7UUFDRixhQUFRLEdBQStELElBQUksQ0FBQztRQUU1RTs7VUFFRTtRQUNGLGlCQUFZLEdBQTJELElBQUksQ0FBQztRQUU1RTs7VUFFRTtRQUNGLFlBQU8sR0FBaUMsSUFBSSxDQUFDO1FBRTdDOztVQUVFO1FBQ0YsY0FBUyxHQUFpQyxJQUFJLENBQUM7UUFyQzdDLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLElBQUksUUFBUSxFQUFFO1lBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQU8sSUFBYSxFQUFFLEVBQUU7Z0JBQ3pELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzVCLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUNsQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFD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RUFBRSxDQUFDLElBQUksQ0FBQyxTQUFVLEVBQUUsQ0FBQyxDQUFDO1FBRTNELElBQUksSUFBSSxDQUFDLE9BQU87WUFDZCxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBUSxFQUFFLENBQUMsQ0FBQztJQUNuRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB2YWxpZC1qc2RvYyAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuaW1wb3J0ICogYXMgZ3JvayBmcm9tICdkYXRhZ3Jvay1hcGkvZ3Jvayc7XG5pbXBvcnQgKiBhcyB1aSBmcm9tICdkYXRhZ3Jvay1hcGkvdWknO1xuaW1wb3J0ICogYXMgREcgZnJvbSAnZGF0YWdyb2stYXBpL2RnJztcbmltcG9ydCB7RnVuY3Rpb25WaWV3fSBmcm9tICcuL2Z1bmN0aW9uLXZpZXcnO1xuXG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGhhbmRsaW5nIENvbXB1dGUgbW9kZWxzIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL2RhdGFncm9rLWFpL3B1YmxpYy9ibG9iL21hc3Rlci9oZWxwL2NvbXB1dGUvY29tcHV0ZS5tZCkuXG4gKiBJbiBtb3N0IGNhc2VzLCB0aGUgY29tcHV0YXRpb24gaXMgYSBzaW1wbGUge0BsaW5rIEZ1bmN9XG4gKiBFeHRlbmQgaXQgaW4gY2FzZXMgd2hlcmUgYSBiZWhhdmlvciBvciBVSSBub3Qgc3VwcG9ydGVkIGJ5IHRoZSB7QGxpbmsgRnVuY3Rpb25WaWV3fSBpcyBuZWVkZWQuXG4gKlxuICogSXQgcHJvdmlkZXMgdGhlIGZvbGxvd2luZyBmdW5jdGlvbmFsaXR5IG91dC1vZi10aGUtYm94LCB3aGVyZSBlYWNoIHNlY3Rpb24gY291bGQgYmUgY3VzdG9taXplZDpcbiAqIC0gYSBzdHJ1Y3R1cmVkIHdheSB0byByZXByZXNlbnQgaW5wdXQgYW5kIG91dHB1dCBwYXJhbWV0ZXJzOiB7QGxpbmsgcGFyYW1ldGVyc31cbiAqIC0gZ2VuZXJpYyB3YXkgdG8gZ2VuZXJhdGUgVUkgZm9yIGlucHV0cywgb3V0cHV0cywgYW5kIGludGVyYWN0aXZpdHkgKHJ1bm5pbmcgdGhlIG1vZGVsLCBldGMpXG4gKiAgIC0gcGVyc2lzdGluZyBoaXN0b3JpY2FsIHJlc3VsdHMgdG8gdGhlIGRiICh2aWEge0BsaW5rIHBhcmFtZXRlcnN9KVxuICogLSBleHBvcnQgKHRvIEV4Y2VsIGFuZCBQREYpOiB7QGxpbmsgZXhwb3J0fVxuICogLSBlYXN5IGxvYWRpbmcgb2YgaGlzdG9yaWNhbCBydW5zXG4gKiAtIHJvdXRpbmdcbiAqIC0gZW50ZXJpbmcgdGhlIHJlYWwsIG1lYXN1cmVkIChhcyBvcHBvc2VkIHRvIHByZWRpY3RlZCkgdmFsdWVzIG1hbnVhbGx5XG4gKiAtIG5vdGlmaWNhdGlvbnMgZm9yIGNoYW5naW5nIGlucHV0cywgY29tcGxldGlvbiBvZiBjb21wdXRhdGlvbnMsIGV0Yzoge0BsaW5rIG9uSW5wdXRDaGFuZ2VkfVxuICogKi9cbmV4cG9ydCBjbGFzcyBDb21wdXRhdGlvblZpZXcgZXh0ZW5kcyBGdW5jdGlvblZpZXcge1xuICAvKiogRmluZCB0aGUgZnVuY3Rpb24gYnkgZnVsbHkgc3BlY2lmaWVkIG5hbWUsIGxpbmsgaXQgdG8gdGhlIHZpZXcgYW5kIGNvbnN0cnVjdHMgdGhlIHZpZXcuXG4gICAgKiBJZiBmdW5jdGlvbiBuYW1lIGlzIG5vdCBzcGVjaWZpZWQsIGNhbGxzIHtAbGluayBpbml0fSBhbmQge0BsaW5rIGJ1aWxkfSB3aXRob3V0IEZ1bmNDYWxsIGxpbmthZ2UuXG4gICAgKiBAc3RhYmlsaXR5IFN0YWJsZVxuICAqL1xuICBjb25zdHJ1Y3RvcihmdW5jTmFtZT86IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG5cbiAgICB1aS5zZXRVcGRhdGVJbmRpY2F0b3IodGhpcy5yb290LCB0cnVlKTtcbiAgICBpZiAoZnVuY05hbWUpIHtcbiAgICAgIGdyb2suZnVuY3Rpb25zLmV2YWwoZnVuY05hbWUpLnRoZW4oYXN5bmMgKGZ1bmM6IERHLkZ1bmMpID0+IHtcbiAgICAgICAgY29uc3QgZnVuY2NhbGwgPSBmdW5jLnByZXBhcmUoe30pO1xuICAgICAgICB0aGlzLmxpbmtGdW5jY2FsbChmdW5jY2FsbCk7XG4gICAgICAgIGF3YWl0IHRoaXMuaW5pdCgpO1xuICAgICAgICB0aGlzLmJ1aWxkKCk7XG4gICAgICB9KS5maW5hbGx5KCgpID0+IHtcbiAgICAgICAgdWkuc2V0VXBkYXRlSW5kaWNhdG9yKHRoaXMucm9vdCwgZmFsc2UpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVvdXQoYXN5bmMgKCkgPT4ge1xuICAgICAgICBhd2FpdCB0aGlzLmluaXQoKTtcbiAgICAgICAgdGhpcy5idWlsZCgpO1xuICAgICAgICB1aS5zZXRVcGRhdGVJbmRpY2F0b3IodGhpcy5yb290LCBmYWxzZSk7XG4gICAgICB9LCAwKTtcbiAgICB9XG4gIH1cblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgbW9ja3NcbiAgICAqIEBzdGFiaWxpdHkgRXhwZXJpbWVudGFsXG4gICovXG4gIGdldE1vY2tzOiAoe21vY2tOYW1lOiBzdHJpbmcsIGFjdGlvbjogKCkgPT4gUHJvbWlzZTx2b2lkPn1bXSkgfCBudWxsID0gbnVsbDtcblxuICAvKiogT3ZlcnJpZGUgdG8gY3VzdG9taXplIGdldHRpbmcgdGVtcGxhdGVzXG4gICAgKiBAc3RhYmlsaXR5IEV4cGVyaW1lbnRhbFxuICAqL1xuICBnZXRUZW1wbGF0ZXM6ICh7bmFtZTogc3RyaW5nLCBhY3Rpb246ICgpID0+IFByb21pc2U8dm9pZD59W10pIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE92ZXJyaWRlIHRvIGN1c3RvbWl6ZSBnZXR0aW5nIGhlbHAgZmVhdHVyZVxuICAgICogQHN0YWJpbGl0eSBTdGFibGVcbiAgKi9cbiAgZ2V0SGVscDogKCgpID0+IFByb21pc2U8dm9pZD4pIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqIE92ZXJyaWRlIHRvIGN1c3RvbWl6ZSBidWcgcmVwb3J0aW5nIGZlYXR1cmVcbiAgICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIHJlcG9ydEJ1ZzogKCgpID0+IFByb21pc2U8dm9pZD4pIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIExvb2tzIGZvciB7QGxpbmsgcmVwb3J0QnVnfSwge0BsaW5rIGdldEhlbHB9IGFuZCB7QGxpbmsgZXhwb3J0Q29uZmlnfSBtZW1iZXJzIGFuZCBjcmVhdGVzIG1vZGVsIG1lbnVzXG4gICAqIEBzdGFiaWxpdHkgU3RhYmxlXG4gICovXG4gIG92ZXJyaWRlIGJ1aWxkUmliYm9uTWVudSgpIHtcbiAgICBzdXBlci5idWlsZFJpYmJvbk1lbnUoKTtcblxuICAgIGlmICghdGhpcy5leHBvcnRDb25maWcgJiYgIXRoaXMucmVwb3J0QnVnICYmICF0aGlzLmdldEhlbHAgJiYgIXRoaXMuZ2V0TW9ja3MpIHJldHVybjtcblxuICAgIGNvbnN0IHJpYmJvbk1lbnUgPSB0aGlzLnJpYmJvbk1lbnUuZ3JvdXAoJ01vZGVsJyk7XG5cbiAgICBpZiAodGhpcy5nZXRNb2NrcyAmJiB0aGlzLmdldE1vY2tzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IGRhdGFHcm91cCA9IHJpYmJvbk1lbnVcbiAgICAgICAgLmdyb3VwKCdJbnB1dCBkYXRhIG1vY2tzJyk7XG5cbiAgICAgIHRoaXMuZ2V0TW9ja3MuZm9yRWFjaCgodmFsKSA9PiB7XG4gICAgICAgIGRhdGFHcm91cC5pdGVtKHZhbC5tb2NrTmFtZSwgdmFsLmFjdGlvbik7XG4gICAgICB9KTtcblxuICAgICAgcmliYm9uTWVudS5lbmRHcm91cCgpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmdldFRlbXBsYXRlcyAmJiB0aGlzLmdldFRlbXBsYXRlcy5sZW5ndGggPiAwKSB7XG4gICAgICBpZiAodGhpcy5nZXRUZW1wbGF0ZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIHJpYmJvbk1lbnUuaXRlbSgnSW5wdXQgZGF0YSB0ZW1wbGF0ZScsIHRoaXMuZ2V0VGVtcGxhdGVzWzBdLmFjdGlvbik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBkYXRhR3JvdXAgPSByaWJib25NZW51Lmdyb3VwKCdJbnB1dCBkYXRhIHRlbXBsYXRlcycpO1xuICAgICAgICB0aGlzLmdldFRlbXBsYXRlcy5mb3JFYWNoKCh2YWwpID0+IHtcbiAgICAgICAgICBkYXRhR3JvdXAuaXRlbSh2YWwubmFtZSwgdmFsLmFjdGlvbik7XG4gICAgICAgIH0pO1xuICAgICAgICByaWJib25NZW51LmVuZEdyb3VwKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZXhwb3J0Q29uZmlnICYmIHRoaXMuZXhwb3J0Q29uZmlnLnN1cHBvcnRlZEZvcm1hdHMubGVuZ3RoID4gMCkge1xuICAgICAgcmliYm9uTWVudVxuICAgICAgICAuZ3JvdXAoJ0V4cG9ydCcpXG4gICAgICAgIC5pdGVtcyh0aGlzLmV4cG9ydENvbmZpZy5zdXBwb3J0ZWRGb3JtYXRzLCBhc3luYyAoZm9ybWF0OiBzdHJpbmcpID0+IERHLlV0aWxzLmRvd25sb2FkKHRoaXMuZXhwb3J0Q29uZmlnIS5maWxlbmFtZShmb3JtYXQpLCBhd2FpdCB0aGlzLmV4cG9ydENvbmZpZyEuZXhwb3J0KGZvcm1hdCkpKVxuICAgICAgICAuZW5kR3JvdXAoKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZXBvcnRCdWcpXG4gICAgICByaWJib25NZW51Lml0ZW0oJ1JlcG9ydCBhIGJ1ZycsICgpID0+IHRoaXMucmVwb3J0QnVnISgpKTtcblxuICAgIGlmICh0aGlzLmdldEhlbHApXG4gICAgICByaWJib25NZW51Lml0ZW0oJ0hlbHAnLCAoKSA9PiB0aGlzLmdldEhlbHAhKCkpO1xuICB9XG59XG4iXX0=
|