@kineticdata/react 5.1.0-rc.2 → 5.1.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.
Files changed (37) hide show
  1. package/lib/apis/core/authentication.js +2 -2
  2. package/lib/apis/core/securityPolicyDefinitions.test.js +4 -4
  3. package/lib/apis/http.js +9 -2
  4. package/lib/apis/system/index.js +86 -1
  5. package/lib/apis/task/index.js +10 -8
  6. package/lib/components/common/BridgeSelect.js +2 -1
  7. package/lib/components/common/FormSelect.js +2 -1
  8. package/lib/components/common/TableInput.js +74 -29
  9. package/lib/components/common/TeamSelect.js +2 -1
  10. package/lib/components/common/UserSelect.js +2 -1
  11. package/lib/components/common/authentication/AuthenticationContainer.js +50 -27
  12. package/lib/components/core/file_resource/FileResourceForm.js +2 -2
  13. package/lib/components/core/space/SpaceForm.js +37 -8
  14. package/lib/components/core/submission/SubmissionForm.js +124 -0
  15. package/lib/components/core/webapi/WebApiForm.js +111 -126
  16. package/lib/components/form/Form.helpers.js +1 -1
  17. package/lib/components/form/Form.js +198 -142
  18. package/lib/components/index.js +5 -1
  19. package/lib/components/system/SystemBackgroundTasksTable.js +83 -0
  20. package/lib/components/system/SystemSecurityForm.js +69 -0
  21. package/lib/components/system/spaces/SystemSpaceForm.js +44 -16
  22. package/lib/components/task/builder/Connector.js +19 -8
  23. package/lib/components/task/builder/ConnectorForm.js +1 -1
  24. package/lib/components/task/builder/Node.js +10 -3
  25. package/lib/components/task/builder/NodeForm.js +51 -22
  26. package/lib/components/task/builder/NodeParametersForm.js +5 -2
  27. package/lib/components/task/builder/SvgCanvas.js +13 -4
  28. package/lib/components/task/builder/TaskDefinitionConfigForm.js +113 -0
  29. package/lib/components/task/builder/TreeBuilder.js +25 -7
  30. package/lib/components/task/builder/builder.redux.js +159 -52
  31. package/lib/components/task/builder/helpers.js +5 -3
  32. package/lib/components/task/builder/models.js +84 -12
  33. package/lib/components/task/errors/RunErrorTable.js +1 -1
  34. package/lib/components/task/runs/CreateManualTriggerForm.js +15 -24
  35. package/lib/components/task/workflows/WorkflowForm.js +67 -85
  36. package/lib/index.js +1 -0
  37. package/package.json +2 -2
@@ -1,30 +1,21 @@
1
1
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
- import { createTaskTrigger, fetchTree } from '../../../apis';
2
+ import { createTaskTrigger } from '../../../apis';
3
3
  import { generateForm } from '../../form/Form';
4
+ import { serializeNodeId } from '../builder/models';
4
5
 
5
6
  var dataSources = function dataSources(_ref) {
6
- var sourceName = _ref.sourceName,
7
- sourceGroup = _ref.sourceGroup,
8
- name = _ref.name,
9
- workflowType = _ref.workflowType;
7
+ var tree = _ref.tree;
10
8
  return {
11
9
  nodes: {
12
- fn: fetchTree,
13
- params: name && [{
14
- type: workflowType || 'Tree',
15
- sourceName: sourceName,
16
- sourceGroup: sourceGroup,
17
- name: name,
18
- include: 'treeJson'
19
- }],
20
- transform: function transform(result) {
21
- return result.tree && result.tree.treeJson ? result.tree.treeJson.nodes.map(function (node) {
10
+ fn: function fn() {
11
+ return tree.nodes.map(function (node) {
22
12
  return {
23
- label: "".concat(node.name, " (").concat(node.id, ")"),
24
- value: node.id
13
+ label: "".concat(node.name, " (").concat(serializeNodeId(node), ")"),
14
+ value: serializeNodeId(node)
25
15
  };
26
- }) : [];
27
- }
16
+ }).valueSeq().toArray();
17
+ },
18
+ params: []
28
19
  }
29
20
  };
30
21
  };
@@ -47,10 +38,10 @@ var handleSubmit = function handleSubmit(formOptions) {
47
38
  };
48
39
  };
49
40
 
50
- var fields = function fields(_ref3) {
51
- var name = _ref3.name;
52
- return function () {
53
- return name && [{
41
+ var fields = function fields() {
42
+ return function (_ref3) {
43
+ var nodes = _ref3.nodes;
44
+ return nodes && [{
54
45
  name: 'nodeId',
55
46
  label: 'Node Id',
56
47
  type: 'select',
@@ -85,7 +76,7 @@ var fields = function fields(_ref3) {
85
76
  };
86
77
 
87
78
  export var CreateManualTriggerForm = generateForm({
88
- formOptions: ['sourceName', 'sourceGroup', 'name', 'workflowType', 'runId'],
79
+ formOptions: ['runId', 'tree'],
89
80
  dataSources: dataSources,
90
81
  fields: fields,
91
82
  handleSubmit: handleSubmit
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { fetchTree, fetchSources, fetchSource, updateTree, createTree, fetchTaskCategories } from '../../../apis';
2
+ import { fetchSources, fetchSource, updateTree, createTree, fetchTaskCategories } from '../../../apis';
3
3
  import { Form } from '../../form/Form';
4
4
  import { get, List, Map } from 'immutable'; // bulids a definition id based on a name (similar to slugify)
5
5
 
@@ -10,29 +10,12 @@ var buildDefinitionId = function buildDefinitionId(text) {
10
10
  .replace(/[^A-Za-z0-9_]+/g, '');
11
11
  };
12
12
 
13
- var dataSources = function dataSources(_ref) {
14
- var workflowType = _ref.workflowType,
15
- sourceName = _ref.sourceName,
16
- sourceGroup = _ref.sourceGroup,
17
- name = _ref.name;
13
+ var dataSources = function dataSources() {
18
14
  return {
19
- workflow: {
20
- fn: fetchTree,
21
- params: name && [{
22
- type: workflowType || 'Tree',
23
- sourceName: sourceName,
24
- sourceGroup: sourceGroup,
25
- name: name,
26
- include: 'details,inputs,outputs,categories'
27
- }],
28
- transform: function transform(result) {
29
- return result.tree;
30
- }
31
- },
32
15
  selectedSource: {
33
16
  fn: fetchSource,
34
- params: function params(_ref2) {
35
- var values = _ref2.values;
17
+ params: function params(_ref) {
18
+ var values = _ref.values;
36
19
  return values && values.get('sourceName') && [{
37
20
  sourceName: values.get('sourceName'),
38
21
  include: 'predefinedSourceGroups,predefinedTreeNames'
@@ -64,44 +47,41 @@ var dataSources = function dataSources(_ref) {
64
47
  };
65
48
  };
66
49
 
67
- var handleSubmit = function handleSubmit(_ref3) {
68
- var sourceName = _ref3.sourceName,
69
- sourceGroup = _ref3.sourceGroup,
70
- name = _ref3.name;
50
+ var handleSubmit = function handleSubmit(_ref2) {
51
+ var workflow = _ref2.workflow;
71
52
  return function (values) {
72
- return (name ? updateTree({
73
- sourceName: sourceName,
74
- sourceGroup: sourceGroup,
75
- name: name,
76
- tree: values.toJS()
77
- }) : createTree({
78
- tree: values.toJS()
79
- })).then(function (_ref4) {
80
- var tree = _ref4.tree,
81
- error = _ref4.error;
53
+ if (!workflow) {
54
+ return createTree({
55
+ tree: values.toJS()
56
+ }).then(function (_ref3) {
57
+ var tree = _ref3.tree,
58
+ error = _ref3.error;
82
59
 
83
- if (error) {
84
- throw error.statusCode === 400 && error.message || 'There was an error saving the workflow';
85
- } else {
86
- return tree;
87
- }
88
- });
60
+ if (error) {
61
+ throw error.statusCode === 400 && error.message || 'There was an error saving the workflow';
62
+ } else {
63
+ return tree;
64
+ }
65
+ });
66
+ } else {
67
+ return values.toObject();
68
+ }
89
69
  };
90
70
  };
91
71
 
92
- var fields = function fields(_ref5) {
93
- var name = _ref5.name,
94
- workflowType = _ref5.workflowType;
95
- return function (_ref6) {
96
- var workflow = _ref6.workflow,
97
- categories = _ref6.categories;
72
+ var fields = function fields(_ref4) {
73
+ var name = _ref4.name,
74
+ workflow = _ref4.workflow,
75
+ workflowType = _ref4.workflowType;
76
+ return function (_ref5) {
77
+ var categories = _ref5.categories;
98
78
  return (!name || workflow) && categories && [{
99
79
  name: 'sourceName',
100
80
  label: 'Source',
101
81
  type: 'select',
102
82
  required: true,
103
- options: function options(_ref7) {
104
- var sources = _ref7.sources;
83
+ options: function options(_ref6) {
84
+ var sources = _ref6.sources;
105
85
  return sources;
106
86
  },
107
87
  initialValue: workflow ? workflow.get('sourceName') : workflowType === 'routines' ? '-' : '',
@@ -111,8 +91,8 @@ var fields = function fields(_ref5) {
111
91
  label: 'Source Group',
112
92
  type: 'text',
113
93
  required: true,
114
- options: function options(_ref8) {
115
- var selectedSource = _ref8.selectedSource;
94
+ options: function options(_ref7) {
95
+ var selectedSource = _ref7.selectedSource;
116
96
  return selectedSource ? selectedSource.get('predefinedSourceGroups').map(function (g) {
117
97
  return Map({
118
98
  label: g,
@@ -127,8 +107,8 @@ var fields = function fields(_ref5) {
127
107
  label: 'Name',
128
108
  type: 'text',
129
109
  required: true,
130
- options: function options(_ref9) {
131
- var selectedSource = _ref9.selectedSource;
110
+ options: function options(_ref8) {
111
+ var selectedSource = _ref8.selectedSource;
132
112
  return selectedSource ? selectedSource.get('predefinedTreeNames').map(function (n) {
133
113
  return Map({
134
114
  label: n,
@@ -136,9 +116,9 @@ var fields = function fields(_ref5) {
136
116
  });
137
117
  }) : List();
138
118
  },
139
- onChange: function onChange(_ref10, _ref11) {
140
- var values = _ref10.values;
141
- var setValue = _ref11.setValue;
119
+ onChange: function onChange(_ref9, _ref10) {
120
+ var values = _ref9.values;
121
+ var setValue = _ref10.setValue;
142
122
 
143
123
  if (values.has('definitionId') && values.get('linked')) {
144
124
  setValue('definitionId', buildDefinitionId(values.get('name')), false);
@@ -151,23 +131,23 @@ var fields = function fields(_ref5) {
151
131
  label: 'Linked',
152
132
  type: 'checkbox',
153
133
  "transient": true,
154
- initialValue: !name,
134
+ initialValue: !name && !workflow,
155
135
  visible: false
156
136
  }, workflowType !== 'trees' && {
157
137
  name: 'definitionId',
158
138
  label: 'Definition ID',
159
139
  type: 'text',
160
- enabled: name ? false : true,
140
+ enabled: !name && !workflow,
161
141
  required: true,
162
- onChange: function onChange(_bindings, _ref12) {
163
- var setValue = _ref12.setValue;
142
+ onChange: function onChange(_bindings, _ref11) {
143
+ var setValue = _ref11.setValue;
164
144
  setValue('linked', false);
165
145
  },
166
146
  initialValue: get(workflow, 'definitionId', '') || '',
167
147
  helpText: 'Definition ID is generated by the system and used for API requests',
168
- serialize: function serialize(_ref13) {
169
- var values = _ref13.values;
170
- return name ? values.get('definitionId') : "routine_".concat(values.get('definitionId'));
148
+ serialize: function serialize(_ref12) {
149
+ var values = _ref12.values;
150
+ return name || workflow ? values.get('definitionId') : "routine_".concat(values.get('definitionId'));
171
151
  }
172
152
  }, {
173
153
  name: 'notes',
@@ -202,9 +182,7 @@ var fields = function fields(_ref5) {
202
182
  name: 'categories',
203
183
  label: 'Categories',
204
184
  type: 'select-multi',
205
- initialValue: get(workflow, 'categories', List()).map(function (c) {
206
- return c.get('name');
207
- }),
185
+ initialValue: get(workflow, 'categories', List()),
208
186
  options: categories.sortBy(function (c) {
209
187
  return c.get('name');
210
188
  }).map(function (c) {
@@ -218,6 +196,10 @@ var fields = function fields(_ref5) {
218
196
  label: 'Inputs',
219
197
  type: 'table',
220
198
  options: [{
199
+ name: 'drag',
200
+ label: null,
201
+ type: 'drag'
202
+ }, {
221
203
  name: 'name',
222
204
  label: 'Name',
223
205
  type: 'text'
@@ -234,12 +216,16 @@ var fields = function fields(_ref5) {
234
216
  label: 'Required',
235
217
  type: 'checkbox'
236
218
  }],
237
- initialValue: get(workflow, 'inputs', [])
219
+ initialValue: get(workflow, 'inputs', List())
238
220
  }, workflowType !== 'trees' && {
239
221
  name: 'outputs',
240
222
  label: 'Outputs',
241
223
  type: 'table',
242
224
  options: [{
225
+ name: 'drag',
226
+ label: null,
227
+ type: 'drag'
228
+ }, {
243
229
  name: 'name',
244
230
  label: 'Name',
245
231
  type: 'text'
@@ -248,24 +234,22 @@ var fields = function fields(_ref5) {
248
234
  label: 'Description',
249
235
  type: 'text'
250
236
  }],
251
- initialValue: get(workflow, 'outputs', [])
237
+ initialValue: get(workflow, 'outputs', List())
252
238
  }];
253
239
  };
254
240
  };
255
241
 
256
- export var WorkflowForm = function WorkflowForm(_ref14) {
257
- var addFields = _ref14.addFields,
258
- alterFields = _ref14.alterFields,
259
- fieldSet = _ref14.fieldSet,
260
- formKey = _ref14.formKey,
261
- components = _ref14.components,
262
- onSave = _ref14.onSave,
263
- onError = _ref14.onError,
264
- children = _ref14.children,
265
- workflowType = _ref14.workflowType,
266
- sourceName = _ref14.sourceName,
267
- sourceGroup = _ref14.sourceGroup,
268
- name = _ref14.name;
242
+ export var WorkflowForm = function WorkflowForm(_ref13) {
243
+ var addFields = _ref13.addFields,
244
+ alterFields = _ref13.alterFields,
245
+ fieldSet = _ref13.fieldSet,
246
+ formKey = _ref13.formKey,
247
+ components = _ref13.components,
248
+ onSave = _ref13.onSave,
249
+ onError = _ref13.onError,
250
+ children = _ref13.children,
251
+ workflow = _ref13.workflow,
252
+ workflowType = _ref13.workflowType;
269
253
  return /*#__PURE__*/React.createElement(Form, {
270
254
  addFields: addFields,
271
255
  alterFields: alterFields,
@@ -278,10 +262,8 @@ export var WorkflowForm = function WorkflowForm(_ref14) {
278
262
  dataSources: dataSources,
279
263
  fields: fields,
280
264
  formOptions: {
281
- workflowType: workflowType,
282
- sourceName: sourceName,
283
- sourceGroup: sourceGroup,
284
- name: name
265
+ workflow: workflow,
266
+ workflowType: workflowType
285
267
  }
286
268
  }, children);
287
269
  };
package/lib/index.js CHANGED
@@ -43,6 +43,7 @@ export var KineticLib = function KineticLib(props) {
43
43
  value: DefaultFieldConfig.merge(DefaultTableConfig).merge(remove(props.components || {}, 'fields')).merge(props.components && props.components.fields)
44
44
  }, typeof props.children === 'function' ? /*#__PURE__*/React.createElement(AuthenticationContainer, {
45
45
  noSocket: props.noSocket,
46
+ skipInit: props.skipInit,
46
47
  system: props.system
47
48
  }, props.children) : props.children))));
48
49
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kineticdata/react",
3
- "version": "5.1.0-rc.2",
3
+ "version": "5.1.0",
4
4
  "description": "A React library for the Kinetic Platform",
5
5
  "main": "lib/index.js",
6
6
  "main:src": "src/index.js",
@@ -92,5 +92,5 @@
92
92
  "eslintConfig": {
93
93
  "extends": "react-app"
94
94
  },
95
- "gitHead": "bc59f190ed46903da59e9b36191946a654e2b37c"
95
+ "gitHead": "5040d157c5e19e593fc9f9ca36407058a8d927c5"
96
96
  }