@things-factory/integration-ui 6.1.66 → 6.1.69

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.
Files changed (113) hide show
  1. package/client/editors/{entity-editor.js → entity-editor.ts} +2 -2
  2. package/client/editors/{entity-selector.js → entity-selector.ts} +45 -57
  3. package/client/editors/{property-editor.js → property-editor.ts} +1 -0
  4. package/client/editors/{things-editor-entity-selector.js → things-editor-entity-selector.ts} +27 -31
  5. package/client/editors/{things-editor-http-body.js → things-editor-http-body.ts} +43 -48
  6. package/client/editors/{things-editor-http-headers.js → things-editor-http-headers.ts} +48 -58
  7. package/client/editors/{things-editor-http-parameters.js → things-editor-http-parameters.ts} +48 -58
  8. package/client/grist/{connection-selector.js → connection-selector.ts} +2 -2
  9. package/client/grist/{connector-selector.js → connector-selector.ts} +2 -2
  10. package/client/grist/{dynamic-selector.js → dynamic-selector.ts} +9 -7
  11. package/client/grist/{task-type-selector.js → task-type-selector.ts} +4 -2
  12. package/client/index.ts +2 -0
  13. package/client/pages/{connection.js → connection.ts} +38 -44
  14. package/client/pages/{integration-monitor.js → integration-monitor.ts} +54 -56
  15. package/client/pages/{scenario-detail.js → scenario-detail.ts} +41 -47
  16. package/client/pages/scenario-importer.ts +107 -0
  17. package/client/pages/{scenario.js → scenario.ts} +14 -20
  18. package/client/viewparts/{connections-monitor.js → connections-monitor.ts} +76 -82
  19. package/client/viewparts/{monitoring-summary.js → monitoring-summary.ts} +55 -61
  20. package/client/viewparts/{pending-q-monitor.js → pending-q-monitor.ts} +110 -114
  21. package/client/viewparts/{scenario-instance-log-view.js → scenario-instance-log-view.ts} +31 -35
  22. package/client/viewparts/{scenario-instance-monitor.js → scenario-instance-monitor.ts} +67 -73
  23. package/client/viewparts/{scenario-instance-view.js → scenario-instance-view.ts} +100 -104
  24. package/client/viewparts/{scenario-monitor.js → scenario-monitor.ts} +143 -149
  25. package/client/viewparts/scenarios-monitor.ts +147 -0
  26. package/dist-client/bootstrap.d.ts +4 -0
  27. package/dist-client/bootstrap.js +29 -0
  28. package/dist-client/bootstrap.js.map +1 -0
  29. package/dist-client/editors/entity-editor.d.ts +10 -0
  30. package/dist-client/editors/entity-editor.js +47 -0
  31. package/dist-client/editors/entity-editor.js.map +1 -0
  32. package/dist-client/editors/entity-selector.d.ts +34 -0
  33. package/dist-client/editors/entity-selector.js +305 -0
  34. package/dist-client/editors/entity-selector.js.map +1 -0
  35. package/dist-client/editors/property-editor.d.ts +20 -0
  36. package/dist-client/editors/property-editor.js +61 -0
  37. package/dist-client/editors/property-editor.js.map +1 -0
  38. package/dist-client/editors/things-editor-entity-selector.d.ts +15 -0
  39. package/dist-client/editors/things-editor-entity-selector.js +87 -0
  40. package/dist-client/editors/things-editor-entity-selector.js.map +1 -0
  41. package/dist-client/editors/things-editor-http-body.d.ts +22 -0
  42. package/dist-client/editors/things-editor-http-body.js +130 -0
  43. package/dist-client/editors/things-editor-http-body.js.map +1 -0
  44. package/dist-client/editors/things-editor-http-headers.d.ts +29 -0
  45. package/dist-client/editors/things-editor-http-headers.js +160 -0
  46. package/dist-client/editors/things-editor-http-headers.js.map +1 -0
  47. package/dist-client/editors/things-editor-http-parameters.d.ts +29 -0
  48. package/dist-client/editors/things-editor-http-parameters.js +160 -0
  49. package/dist-client/editors/things-editor-http-parameters.js.map +1 -0
  50. package/dist-client/grist/connection-selector.d.ts +5 -0
  51. package/dist-client/grist/connection-selector.js +31 -0
  52. package/dist-client/grist/connection-selector.js.map +1 -0
  53. package/dist-client/grist/connector-selector.d.ts +5 -0
  54. package/dist-client/grist/connector-selector.js +31 -0
  55. package/dist-client/grist/connector-selector.js.map +1 -0
  56. package/dist-client/grist/dynamic-selector.d.ts +8 -0
  57. package/dist-client/grist/dynamic-selector.js +33 -0
  58. package/dist-client/grist/dynamic-selector.js.map +1 -0
  59. package/dist-client/grist/task-type-selector.d.ts +7 -0
  60. package/dist-client/grist/task-type-selector.js +58 -0
  61. package/dist-client/grist/task-type-selector.js.map +1 -0
  62. package/dist-client/index.d.ts +2 -0
  63. package/dist-client/index.js +3 -0
  64. package/dist-client/index.js.map +1 -0
  65. package/dist-client/pages/connection.d.ts +53 -0
  66. package/dist-client/pages/connection.js +428 -0
  67. package/dist-client/pages/connection.js.map +1 -0
  68. package/dist-client/pages/integration-monitor.d.ts +28 -0
  69. package/dist-client/pages/integration-monitor.js +340 -0
  70. package/dist-client/pages/integration-monitor.js.map +1 -0
  71. package/dist-client/pages/scenario-detail.d.ts +1 -0
  72. package/dist-client/pages/scenario-detail.js +303 -0
  73. package/dist-client/pages/scenario-detail.js.map +1 -0
  74. package/dist-client/pages/scenario-importer.d.ts +9 -0
  75. package/dist-client/pages/scenario-importer.js +116 -0
  76. package/dist-client/pages/scenario-importer.js.map +1 -0
  77. package/dist-client/pages/scenario.d.ts +68 -0
  78. package/dist-client/pages/scenario.js +581 -0
  79. package/dist-client/pages/scenario.js.map +1 -0
  80. package/dist-client/route.d.ts +1 -0
  81. package/dist-client/route.js +14 -0
  82. package/dist-client/route.js.map +1 -0
  83. package/dist-client/tsconfig.tsbuildinfo +1 -0
  84. package/dist-client/viewparts/connections-monitor.d.ts +10 -0
  85. package/dist-client/viewparts/connections-monitor.js +169 -0
  86. package/dist-client/viewparts/connections-monitor.js.map +1 -0
  87. package/dist-client/viewparts/monitoring-summary.d.ts +12 -0
  88. package/dist-client/viewparts/monitoring-summary.js +135 -0
  89. package/dist-client/viewparts/monitoring-summary.js.map +1 -0
  90. package/dist-client/viewparts/pending-q-monitor.d.ts +17 -0
  91. package/dist-client/viewparts/pending-q-monitor.js +247 -0
  92. package/dist-client/viewparts/pending-q-monitor.js.map +1 -0
  93. package/dist-client/viewparts/scenario-instance-log-view.d.ts +21 -0
  94. package/dist-client/viewparts/scenario-instance-log-view.js +105 -0
  95. package/dist-client/viewparts/scenario-instance-log-view.js.map +1 -0
  96. package/dist-client/viewparts/scenario-instance-monitor.d.ts +15 -0
  97. package/dist-client/viewparts/scenario-instance-monitor.js +171 -0
  98. package/dist-client/viewparts/scenario-instance-monitor.js.map +1 -0
  99. package/dist-client/viewparts/scenario-instance-view.d.ts +29 -0
  100. package/dist-client/viewparts/scenario-instance-view.js +263 -0
  101. package/dist-client/viewparts/scenario-instance-view.js.map +1 -0
  102. package/dist-client/viewparts/scenario-monitor.d.ts +16 -0
  103. package/dist-client/viewparts/scenario-monitor.js +288 -0
  104. package/dist-client/viewparts/scenario-monitor.js.map +1 -0
  105. package/dist-client/viewparts/scenarios-monitor.d.ts +16 -0
  106. package/dist-client/viewparts/scenarios-monitor.js +167 -0
  107. package/dist-client/viewparts/scenarios-monitor.js.map +1 -0
  108. package/package.json +10 -7
  109. package/client/index.js +0 -0
  110. package/client/pages/scenario-importer.js +0 -118
  111. package/client/viewparts/scenarios-monitor.js +0 -153
  112. /package/client/{bootstrap.js → bootstrap.ts} +0 -0
  113. /package/client/{route.js → route.ts} +0 -0
@@ -0,0 +1,160 @@
1
+ /**
2
+ * @license Copyright © HatioLab Inc. All rights reserved.
3
+ */
4
+ import { __decorate, __metadata } from "tslib";
5
+ import { css, html, LitElement } from 'lit';
6
+ import { customElement, property } from 'lit/decorators.js';
7
+ /**
8
+ http parameters editor element
9
+
10
+ Example:
11
+
12
+ <things-editor-http-parameters value=${map}>
13
+ </things-editor-http-parameters>
14
+ */
15
+ let ThingsEditorHttpParameters = class ThingsEditorHttpParameters extends LitElement {
16
+ constructor() {
17
+ super(...arguments);
18
+ this.value = {};
19
+ this._changingNow = false;
20
+ }
21
+ firstUpdated() {
22
+ this.renderRoot.addEventListener('change', this._onChange.bind(this));
23
+ }
24
+ render() {
25
+ return html `
26
+ ${this._toArray(this.value).map(item => html `
27
+ <div data-record>
28
+ <input type="text" data-key placeholder="key" .value=${item.key} />
29
+ <input type="text" data-value placeholder="value" .value=${item.value} />
30
+ <button class="record-action" @click=${e => this._delete(e)} tabindex="-1">x</button>
31
+ </div>
32
+ `)}
33
+
34
+ <div data-record-new>
35
+ <input type="text" data-key placeholder="key" value="" />
36
+ <input type="text" data-value placeholder="value" value="" />
37
+ <button class="record-action" @click=${e => this._add()} tabindex="-1">+</button>
38
+ </div>
39
+ `;
40
+ }
41
+ _onChange(e) {
42
+ if (this._changingNow) {
43
+ return;
44
+ }
45
+ this._changingNow = true;
46
+ var input = e.target;
47
+ var value = input.value;
48
+ var div = input.parentElement;
49
+ if (div.hasAttribute('data-record')) {
50
+ var dataList = div.querySelectorAll('[data-value]:not([hidden])');
51
+ for (var i = 0; i < dataList.length; i++) {
52
+ if (dataList[i] !== input) {
53
+ dataList[i].value = value || '';
54
+ }
55
+ }
56
+ }
57
+ if (div.hasAttribute('data-record')) {
58
+ this._build();
59
+ }
60
+ else if (div.hasAttribute('data-record-new') && input.hasAttribute('data-value')) {
61
+ this._add();
62
+ }
63
+ this._changingNow = false;
64
+ }
65
+ _build(includeNewRecord) {
66
+ if (includeNewRecord)
67
+ var records = this.renderRoot.querySelectorAll('[data-record],[data-record-new]');
68
+ else
69
+ var records = this.renderRoot.querySelectorAll('[data-record]');
70
+ var newmap = {};
71
+ for (var i = 0; i < records.length; i++) {
72
+ var record = records[i];
73
+ var key = record.querySelector('[data-key]').value;
74
+ var inputs = record.querySelectorAll('[data-value]:not([style*="display: none"])');
75
+ if (!inputs || inputs.length == 0)
76
+ continue;
77
+ var input = inputs[inputs.length - 1];
78
+ var value = input.value;
79
+ if (key)
80
+ newmap[key] = value || '';
81
+ }
82
+ this.value = newmap;
83
+ this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true }));
84
+ }
85
+ /* map아이템들을 template(dom-repeat)용 배열로 변환하는 함수 */
86
+ _toArray(map) {
87
+ var array = [];
88
+ for (var key in map) {
89
+ array.push({
90
+ key: key,
91
+ value: map[key]
92
+ });
93
+ }
94
+ return array;
95
+ }
96
+ _add() {
97
+ this._build(true);
98
+ var inputs = this.renderRoot.querySelectorAll('[data-record-new] input:not([style*="display: none"])');
99
+ for (var i = 0; i < inputs.length; i++) {
100
+ let input = inputs[i];
101
+ input.value = '';
102
+ }
103
+ ;
104
+ inputs[0].focus();
105
+ }
106
+ _delete(e) {
107
+ var record = e.target.parentElement;
108
+ record.querySelector('[data-key]').value = '';
109
+ this._build();
110
+ }
111
+ };
112
+ ThingsEditorHttpParameters.styles = [
113
+ css `
114
+ :host {
115
+ display: flex;
116
+ flex-direction: column;
117
+ align-content: center;
118
+
119
+ width: 100%;
120
+ overflow: hidden;
121
+ border: 1px solid #ccc;
122
+ margin: 5px 0;
123
+
124
+ background-color: #ddd;
125
+ }
126
+
127
+ div {
128
+ display: flex;
129
+ flex-flow: row nowrap;
130
+ align-items: center;
131
+ }
132
+
133
+ div > * {
134
+ min-width: 0px;
135
+ min-height: 20px;
136
+ margin: 2px;
137
+ padding: 0;
138
+ }
139
+
140
+ button {
141
+ width: 20px;
142
+ text-align: center;
143
+ border-radius: 50%;
144
+ font-size: 1em;
145
+ }
146
+
147
+ input {
148
+ flex: 1;
149
+ }
150
+ `
151
+ ];
152
+ __decorate([
153
+ property({ type: Object }),
154
+ __metadata("design:type", Object)
155
+ ], ThingsEditorHttpParameters.prototype, "value", void 0);
156
+ ThingsEditorHttpParameters = __decorate([
157
+ customElement('things-editor-http-parameters')
158
+ ], ThingsEditorHttpParameters);
159
+ export default ThingsEditorHttpParameters;
160
+ //# sourceMappingURL=things-editor-http-parameters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"things-editor-http-parameters.js","sourceRoot":"","sources":["../../client/editors/things-editor-http-parameters.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\n\n/**\nhttp parameters editor element\n\nExample:\n\n <things-editor-http-parameters value=${map}>\n </things-editor-http-parameters>\n*/\n@customElement('things-editor-http-parameters')\nexport default class ThingsEditorHttpParameters extends LitElement {\n static styles = [\n css`\n :host {\n display: flex;\n flex-direction: column;\n align-content: center;\n\n width: 100%;\n overflow: hidden;\n border: 1px solid #ccc;\n margin: 5px 0;\n\n background-color: #ddd;\n }\n\n div {\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n }\n\n div > * {\n min-width: 0px;\n min-height: 20px;\n margin: 2px;\n padding: 0;\n }\n\n button {\n width: 20px;\n text-align: center;\n border-radius: 50%;\n font-size: 1em;\n }\n\n input {\n flex: 1;\n }\n `\n ]\n\n @property({ type: Object }) value: { [key: string]: string } = {}\n\n _changingNow: boolean = false\n\n firstUpdated() {\n this.renderRoot.addEventListener('change', this._onChange.bind(this))\n }\n\n render() {\n return html`\n ${this._toArray(this.value).map(\n item => html`\n <div data-record>\n <input type=\"text\" data-key placeholder=\"key\" .value=${item.key} />\n <input type=\"text\" data-value placeholder=\"value\" .value=${item.value} />\n <button class=\"record-action\" @click=${e => this._delete(e)} tabindex=\"-1\">x</button>\n </div>\n `\n )}\n\n <div data-record-new>\n <input type=\"text\" data-key placeholder=\"key\" value=\"\" />\n <input type=\"text\" data-value placeholder=\"value\" value=\"\" />\n <button class=\"record-action\" @click=${e => this._add()} tabindex=\"-1\">+</button>\n </div>\n `\n }\n\n _onChange(e) {\n if (this._changingNow) {\n return\n }\n\n this._changingNow = true\n\n var input = e.target\n var value = input.value\n\n var div = input.parentElement\n\n if (div.hasAttribute('data-record')) {\n var dataList = div.querySelectorAll('[data-value]:not([hidden])')\n for (var i = 0; i < dataList.length; i++) {\n if (dataList[i] !== input) {\n dataList[i].value = value || ''\n }\n }\n }\n\n if (div.hasAttribute('data-record')) {\n this._build()\n } else if (div.hasAttribute('data-record-new') && input.hasAttribute('data-value')) {\n this._add()\n }\n\n this._changingNow = false\n }\n\n _build(includeNewRecord?) {\n if (includeNewRecord) var records = this.renderRoot.querySelectorAll('[data-record],[data-record-new]')\n else var records = this.renderRoot.querySelectorAll('[data-record]')\n\n var newmap = {}\n\n for (var i = 0; i < records.length; i++) {\n var record = records[i]\n\n var key = (record.querySelector('[data-key]') as HTMLInputElement).value\n var inputs = record.querySelectorAll('[data-value]:not([style*=\"display: none\"])')\n if (!inputs || inputs.length == 0) continue\n\n var input = inputs[inputs.length - 1] as HTMLInputElement\n\n var value = input.value\n\n if (key) newmap[key] = value || ''\n }\n\n this.value = newmap\n this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true }))\n }\n\n /* map아이템들을 template(dom-repeat)용 배열로 변환하는 함수 */\n _toArray(map) {\n var array: { key: any; value: any }[] = []\n\n for (var key in map) {\n array.push({\n key: key,\n value: map[key]\n })\n }\n\n return array\n }\n\n _add() {\n this._build(true)\n\n var inputs = this.renderRoot.querySelectorAll('[data-record-new] input:not([style*=\"display: none\"])')\n\n for (var i = 0; i < inputs.length; i++) {\n let input = inputs[i] as HTMLInputElement\n input.value = ''\n }\n\n ;(inputs[0] as HTMLInputElement).focus()\n }\n\n _delete(e) {\n var record = e.target.parentElement\n record.querySelector('[data-key]').value = ''\n this._build()\n }\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import '@material/mwc-icon';
2
+ import { DynamicSelector } from './dynamic-selector';
3
+ export declare class ConnectionSelector extends DynamicSelector {
4
+ getOptions(): Promise<any>;
5
+ }
@@ -0,0 +1,31 @@
1
+ import { __decorate } from "tslib";
2
+ import '@material/mwc-icon';
3
+ import gql from 'graphql-tag';
4
+ import { customElement } from 'lit/decorators.js';
5
+ import { client } from '@operato/graphql';
6
+ import { DynamicSelector } from './dynamic-selector';
7
+ const FETCH_CONNECTIONS_GQL = gql `
8
+ {
9
+ connections {
10
+ items {
11
+ name
12
+ description
13
+ }
14
+
15
+ total
16
+ }
17
+ }
18
+ `;
19
+ let ConnectionSelector = class ConnectionSelector extends DynamicSelector {
20
+ async getOptions() {
21
+ var response = await client.query({
22
+ query: FETCH_CONNECTIONS_GQL
23
+ });
24
+ return (response && response.data && response.data.connections.items) || [];
25
+ }
26
+ };
27
+ ConnectionSelector = __decorate([
28
+ customElement('connection-selector')
29
+ ], ConnectionSelector);
30
+ export { ConnectionSelector };
31
+ //# sourceMappingURL=connection-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection-selector.js","sourceRoot":"","sources":["../../client/grist/connection-selector.ts"],"names":[],"mappings":";AAAA,OAAO,oBAAoB,CAAA;AAE3B,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;;;CAWhC,CAAA;AAGM,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,eAAe;IACrD,KAAK,CAAC,UAAU;QACd,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAChC,KAAK,EAAE,qBAAqB;SAC7B,CAAC,CAAA;QAEF,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IAC7E,CAAC;CACF,CAAA;AARY,kBAAkB;IAD9B,aAAa,CAAC,qBAAqB,CAAC;GACxB,kBAAkB,CAQ9B;SARY,kBAAkB","sourcesContent":["import '@material/mwc-icon'\n\nimport gql from 'graphql-tag'\nimport { customElement } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\n\nimport { DynamicSelector } from './dynamic-selector'\n\nconst FETCH_CONNECTIONS_GQL = gql`\n {\n connections {\n items {\n name\n description\n }\n\n total\n }\n }\n`\n\n@customElement('connection-selector')\nexport class ConnectionSelector extends DynamicSelector {\n async getOptions() {\n var response = await client.query({\n query: FETCH_CONNECTIONS_GQL\n })\n\n return (response && response.data && response.data.connections.items) || []\n }\n}\n"]}
@@ -0,0 +1,5 @@
1
+ import '@material/mwc-icon';
2
+ import { DynamicSelector } from './dynamic-selector';
3
+ export declare class ConnectorSelector extends DynamicSelector {
4
+ getOptions(): Promise<any>;
5
+ }
@@ -0,0 +1,31 @@
1
+ import { __decorate } from "tslib";
2
+ import '@material/mwc-icon';
3
+ import gql from 'graphql-tag';
4
+ import { customElement } from 'lit/decorators.js';
5
+ import { client } from '@operato/graphql';
6
+ import { DynamicSelector } from './dynamic-selector';
7
+ const FETCH_CONNECTORS_GQL = gql `
8
+ {
9
+ connectors {
10
+ items {
11
+ name
12
+ description
13
+ }
14
+
15
+ total
16
+ }
17
+ }
18
+ `;
19
+ let ConnectorSelector = class ConnectorSelector extends DynamicSelector {
20
+ async getOptions() {
21
+ var response = await client.query({
22
+ query: FETCH_CONNECTORS_GQL
23
+ });
24
+ return (response && response.data && response.data.connectors.items) || [];
25
+ }
26
+ };
27
+ ConnectorSelector = __decorate([
28
+ customElement('connector-selector')
29
+ ], ConnectorSelector);
30
+ export { ConnectorSelector };
31
+ //# sourceMappingURL=connector-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector-selector.js","sourceRoot":"","sources":["../../client/grist/connector-selector.ts"],"names":[],"mappings":";AAAA,OAAO,oBAAoB,CAAA;AAE3B,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAEpD,MAAM,oBAAoB,GAAG,GAAG,CAAA;;;;;;;;;;;CAW/B,CAAA;AAGM,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,eAAe;IACpD,KAAK,CAAC,UAAU;QACd,IAAI,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAChC,KAAK,EAAE,oBAAoB;SAC5B,CAAC,CAAA;QAEF,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;IAC5E,CAAC;CACF,CAAA;AARY,iBAAiB;IAD7B,aAAa,CAAC,oBAAoB,CAAC;GACvB,iBAAiB,CAQ7B;SARY,iBAAiB","sourcesContent":["import '@material/mwc-icon'\n\nimport gql from 'graphql-tag'\nimport { customElement } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\n\nimport { DynamicSelector } from './dynamic-selector'\n\nconst FETCH_CONNECTORS_GQL = gql`\n {\n connectors {\n items {\n name\n description\n }\n\n total\n }\n }\n`\n\n@customElement('connector-selector')\nexport class ConnectorSelector extends DynamicSelector {\n async getOptions() {\n var response = await client.query({\n query: FETCH_CONNECTORS_GQL\n })\n\n return (response && response.data && response.data.connectors.items) || []\n }\n}\n"]}
@@ -0,0 +1,8 @@
1
+ import '@material/mwc-icon';
2
+ import { OxGristEditor } from '@operato/data-grist';
3
+ export declare class DynamicSelector extends OxGristEditor {
4
+ options: any;
5
+ getOptions(): Promise<never[]>;
6
+ firstUpdated(): Promise<void>;
7
+ get editorTemplate(): import("lit-html").TemplateResult<1>;
8
+ }
@@ -0,0 +1,33 @@
1
+ import '@material/mwc-icon';
2
+ import { OxGristEditor } from '@operato/data-grist';
3
+ import { html } from 'lit';
4
+ const EMPTY_OPTION = { name: '', value: '' };
5
+ export class DynamicSelector extends OxGristEditor {
6
+ async getOptions() {
7
+ return [];
8
+ }
9
+ async firstUpdated() {
10
+ super.firstUpdated();
11
+ var { options } = this.column.record || [];
12
+ if (!options) {
13
+ var dynamic = await this.getOptions();
14
+ if (dynamic.unshift) {
15
+ dynamic.unshift(EMPTY_OPTION);
16
+ }
17
+ else {
18
+ dynamic = [EMPTY_OPTION];
19
+ }
20
+ this.column.record.options = dynamic;
21
+ this.requestUpdate();
22
+ }
23
+ }
24
+ get editorTemplate() {
25
+ var { options = [EMPTY_OPTION] } = this.column.record || {};
26
+ return html `
27
+ <select>
28
+ ${options.map(option => html ` <option ?selected=${option.name == this.value} value=${option.name}>${option.name}</option> `)}
29
+ </select>
30
+ `;
31
+ }
32
+ }
33
+ //# sourceMappingURL=dynamic-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamic-selector.js","sourceRoot":"","sources":["../../client/grist/dynamic-selector.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAA;AAE3B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAE1B,MAAM,YAAY,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;AAE5C,MAAM,OAAO,eAAgB,SAAQ,aAAa;IAGhD,KAAK,CAAC,UAAU;QACd,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,KAAK,CAAC,YAAY,EAAE,CAAA;QAEpB,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAA;QAE1C,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI,OAAO,GAAQ,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YAC1C,IAAI,OAAO,CAAC,OAAO,EAAE;gBACnB,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;aAC9B;iBAAM;gBACL,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;aACzB;YAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,CAAA;YACpC,IAAI,CAAC,aAAa,EAAE,CAAA;SACrB;IACH,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,EAAE,OAAO,GAAG,CAAC,YAAY,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAA;QAE3D,OAAO,IAAI,CAAA;;UAEL,OAAO,CAAC,GAAG,CACX,MAAM,CAAC,EAAE,CAAC,IAAI,CAAA,sBAAsB,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,UAAU,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,YAAY,CAC9G;;KAEJ,CAAA;IACH,CAAC;CACF","sourcesContent":["import '@material/mwc-icon'\n\nimport { OxGristEditor } from '@operato/data-grist'\nimport { html } from 'lit'\n\nconst EMPTY_OPTION = { name: '', value: '' }\n\nexport class DynamicSelector extends OxGristEditor {\n options: any\n\n async getOptions() {\n return []\n }\n\n async firstUpdated() {\n super.firstUpdated()\n\n var { options } = this.column.record || []\n\n if (!options) {\n var dynamic: any = await this.getOptions()\n if (dynamic.unshift) {\n dynamic.unshift(EMPTY_OPTION)\n } else {\n dynamic = [EMPTY_OPTION]\n }\n\n this.column.record.options = dynamic\n this.requestUpdate()\n }\n }\n\n get editorTemplate() {\n var { options = [EMPTY_OPTION] } = this.column.record || {}\n\n return html`\n <select>\n ${options.map(\n option => html` <option ?selected=${option.name == this.value} value=${option.name}>${option.name}</option> `\n )}\n </select>\n `\n }\n}\n"]}
@@ -0,0 +1,7 @@
1
+ import { OxGristEditor } from '@operato/data-grist';
2
+ export declare class TaskTypeSelector extends OxGristEditor {
3
+ options: any;
4
+ getOptions(): Promise<any>;
5
+ firstUpdated(): Promise<void>;
6
+ get editorTemplate(): import("lit-html").TemplateResult<1>;
7
+ }
@@ -0,0 +1,58 @@
1
+ import { __decorate } from "tslib";
2
+ import { OxGristEditor } from '@operato/data-grist';
3
+ import { client } from '@operato/graphql';
4
+ import gql from 'graphql-tag';
5
+ import { html } from 'lit';
6
+ import { customElement } from 'lit/decorators.js';
7
+ const FETCH_TASK_TYPES_GQL = gql `
8
+ query ($connectionName: String!) {
9
+ taskTypesByConnection(connectionName: $connectionName) {
10
+ items {
11
+ name
12
+ }
13
+ }
14
+ }
15
+ `;
16
+ const EMPTY_OPTION = { name: '', value: '' };
17
+ let TaskTypeSelector = class TaskTypeSelector extends OxGristEditor {
18
+ async getOptions() {
19
+ var _a, _b;
20
+ var { connectionName = '' } = this.column.record;
21
+ if (typeof connectionName === 'function') {
22
+ connectionName =
23
+ (await connectionName.call(this, this.value, this.column, this.record, this.row, this.field)) || '';
24
+ }
25
+ const response = await client.query({
26
+ query: FETCH_TASK_TYPES_GQL,
27
+ variables: {
28
+ connectionName
29
+ }
30
+ });
31
+ return ((_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.taskTypesByConnection) === null || _b === void 0 ? void 0 : _b.items) || [];
32
+ }
33
+ async firstUpdated() {
34
+ super.firstUpdated();
35
+ var options = await this.getOptions();
36
+ if (options.unshift) {
37
+ options.unshift(EMPTY_OPTION);
38
+ }
39
+ else {
40
+ options = [EMPTY_OPTION];
41
+ }
42
+ this.options = options;
43
+ this.requestUpdate();
44
+ }
45
+ get editorTemplate() {
46
+ var options = this.options || [EMPTY_OPTION];
47
+ return html `
48
+ <select>
49
+ ${options.map(option => html ` <option ?selected=${option.name == this.value} value=${option.name}>${option.name}</option> `)}
50
+ </select>
51
+ `;
52
+ }
53
+ };
54
+ TaskTypeSelector = __decorate([
55
+ customElement('task-type-selector')
56
+ ], TaskTypeSelector);
57
+ export { TaskTypeSelector };
58
+ //# sourceMappingURL=task-type-selector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-type-selector.js","sourceRoot":"","sources":["../../client/grist/task-type-selector.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,MAAM,oBAAoB,GAAG,GAAG,CAAA;;;;;;;;CAQ/B,CAAA;AAED,MAAM,YAAY,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAA;AAGrC,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,aAAa;IAGjD,KAAK,CAAC,UAAU;;QACd,IAAI,EAAE,cAAc,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;QAChD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE;YACxC,cAAc;gBACZ,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;SACtG;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,oBAAoB;YAC3B,SAAS,EAAE;gBACT,cAAc;aACf;SACF,CAAC,CAAA;QAEF,OAAO,CAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,qBAAqB,0CAAE,KAAK,KAAI,EAAE,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,KAAK,CAAC,YAAY,EAAE,CAAA;QAEpB,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;QACrC,IAAI,OAAO,CAAC,OAAO,EAAE;YACnB,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;SAC9B;aAAM;YACL,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;SACzB;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,aAAa,EAAE,CAAA;IACtB,CAAC;IAED,IAAI,cAAc;QAChB,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAA;QAE5C,OAAO,IAAI,CAAA;;UAEL,OAAO,CAAC,GAAG,CACX,MAAM,CAAC,EAAE,CAAC,IAAI,CAAA,sBAAsB,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,UAAU,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,YAAY,CAC9G;;KAEJ,CAAA;IACH,CAAC;CACF,CAAA;AA7CY,gBAAgB;IAD5B,aAAa,CAAC,oBAAoB,CAAC;GACvB,gBAAgB,CA6C5B;SA7CY,gBAAgB","sourcesContent":["import { OxGristEditor } from '@operato/data-grist'\nimport { client } from '@operato/graphql'\nimport gql from 'graphql-tag'\nimport { html } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\nconst FETCH_TASK_TYPES_GQL = gql`\n query ($connectionName: String!) {\n taskTypesByConnection(connectionName: $connectionName) {\n items {\n name\n }\n }\n }\n`\n\nconst EMPTY_OPTION = { name: '', value: '' }\n\n@customElement('task-type-selector')\nexport class TaskTypeSelector extends OxGristEditor {\n options: any\n\n async getOptions() {\n var { connectionName = '' } = this.column.record\n if (typeof connectionName === 'function') {\n connectionName =\n (await connectionName.call(this, this.value, this.column, this.record, this.row, this.field)) || ''\n }\n\n const response = await client.query({\n query: FETCH_TASK_TYPES_GQL,\n variables: {\n connectionName\n }\n })\n\n return response?.data?.taskTypesByConnection?.items || []\n }\n\n async firstUpdated() {\n super.firstUpdated()\n\n var options = await this.getOptions()\n if (options.unshift) {\n options.unshift(EMPTY_OPTION)\n } else {\n options = [EMPTY_OPTION]\n }\n\n this.options = options\n this.requestUpdate()\n }\n\n get editorTemplate() {\n var options = this.options || [EMPTY_OPTION]\n\n return html`\n <select>\n ${options.map(\n option => html` <option ?selected=${option.name == this.value} value=${option.name}>${option.name}</option> `\n )}\n </select>\n `\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './pages/scenario.js';
2
+ export * from './pages/connection.js';
@@ -0,0 +1,3 @@
1
+ export * from './pages/scenario.js';
2
+ export * from './pages/connection.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../client/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA","sourcesContent":["export * from './pages/scenario.js'\nexport * from './pages/connection.js'\n"]}
@@ -0,0 +1,53 @@
1
+ import '@operato/data-grist/ox-grist.js';
2
+ import { DataGrist } from '@operato/data-grist/ox-grist.js';
3
+ import { PageView } from '@operato/shell';
4
+ declare const Connection_base: (new (...args: any[]) => {
5
+ _storeUnsubscribe: import("redux").Unsubscribe;
6
+ connectedCallback(): void;
7
+ disconnectedCallback(): void;
8
+ stateChanged(_state: unknown): void;
9
+ readonly isConnected: boolean;
10
+ }) & (new (...args: any[]) => import("lit").LitElement) & typeof PageView;
11
+ export declare class Connection extends Connection_base {
12
+ static styles: import("lit").CSSResult[];
13
+ active: boolean;
14
+ gristConfig: any;
15
+ connectors: any;
16
+ grist: DataGrist;
17
+ get context(): {
18
+ search: {
19
+ handler: (search: any) => void;
20
+ placeholder: string;
21
+ value: string;
22
+ };
23
+ help: string;
24
+ actions: {
25
+ icon: string;
26
+ emphasis: {
27
+ raised: boolean;
28
+ outlined: boolean;
29
+ dense: boolean;
30
+ danger: boolean;
31
+ };
32
+ title: string;
33
+ action: (name: any) => Promise<void>;
34
+ }[];
35
+ };
36
+ render(): import("lit-html").TemplateResult<1>;
37
+ pageInitialized(): Promise<void>;
38
+ fetchHandler({ page, limit, sortings, filters }: {
39
+ page: any;
40
+ limit: any;
41
+ sortings?: never[] | undefined;
42
+ filters?: never[] | undefined;
43
+ }): Promise<{
44
+ total: any;
45
+ records: any;
46
+ }>;
47
+ fetchConnectors(): Promise<void>;
48
+ _deleteConnections(name: any): Promise<void>;
49
+ _updateConnectionManager(): Promise<void>;
50
+ connect(record: any): Promise<void>;
51
+ disconnect(record: any): Promise<void>;
52
+ }
53
+ export {};