@steedos-labs/plugin-workflow 3.0.58 → 3.0.59

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.
@@ -9,6 +9,9 @@ module.exports = {
9
9
  if (data && data._isRelated) {
10
10
  return false;
11
11
  }
12
+ if (typeof Builder !== 'undefined' && Builder.settings && Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true'){
13
+ return false;
14
+ }
12
15
  return true;
13
16
  }
14
17
  }
@@ -15,6 +15,7 @@ amis_schema: |-
15
15
  "actionType": "dialog",
16
16
  "dialog": {
17
17
  "type": "dialog",
18
+ "className": "instance-action-dialog",
18
19
  "title": "${'CustomAction.instances.instance_cc' | t}",
19
20
  "body": [
20
21
  {
@@ -48,7 +48,7 @@ amis_schema: |-
48
48
  }
49
49
  },
50
50
  "confirmText": "${'CustomLabels.confirm_delete' | t}",
51
- "hiddenOn": "!(record.box == 'draft' || (record.box == 'monitor' && context.user.is_space_admin) \n || (_.includes(record.flow.perms.users_can_admin, context.user.userId) \n || _.intersection(record.flow.perms.orgs_can_admin, context.user.organizations_parents) > 0)\n || (record.box == 'inbox' && record.state == 'draft' && record.forward_from_instance))"
51
+ "hiddenOn": "(window.Builder && window.Builder.settings && window.Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true') || !(record.box == 'draft' || (record.box == 'monitor' && context.user.is_space_admin) \n || (_.includes(record.flow.perms.users_can_admin, context.user.userId) \n || _.intersection(record.flow.perms.orgs_can_admin, context.user.organizations_parents) > 0)\n || (record.box == 'inbox' && record.state == 'draft' && record.forward_from_instance))"
52
52
  }
53
53
  ],
54
54
  "regions": [
@@ -21,6 +21,7 @@ amis_schema: |-
21
21
  "actionType": "dialog",
22
22
  "dialog": {
23
23
  "type": "dialog",
24
+ "className": "instance-action-dialog",
24
25
  "size": "lg",
25
26
  "showLoading": true,
26
27
  "title": {
@@ -299,7 +300,7 @@ amis_schema: |-
299
300
  "weight": 0
300
301
  }
301
302
  },
302
- "hiddenOn": "!(record.box === 'inbox' && record.step.allowDistribute == true)"
303
+ "hiddenOn": "!(record.box === 'inbox' && record.step.allowDistribute == true) || (window.Builder && window.Builder.settings && window.Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true')"
303
304
  }
304
305
  ],
305
306
  "regions": [
@@ -14,6 +14,7 @@ amis_schema: |-
14
14
  "actionType": "dialog",
15
15
  "dialog": {
16
16
  "type": "dialog",
17
+ "className": "instance-action-dialog",
17
18
  "title": {
18
19
  "type": "tpl",
19
20
  "id": "u:4733f85da58b",
@@ -144,7 +145,7 @@ amis_schema: |-
144
145
  "weight": 0
145
146
  }
146
147
  },
147
- "hiddenOn": "!( record.state != \"draft\" )"
148
+ "hiddenOn": "!( record.state != \"draft\" ) || (window.Builder && window.Builder.settings && window.Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true')"
148
149
  }
149
150
  ],
150
151
  "regions": [
@@ -11,6 +11,9 @@ module.exports = {
11
11
  if(data && data._isRelated){
12
12
  return false;
13
13
  }
14
+ if (typeof Builder !== 'undefined' && Builder.settings && Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true'){
15
+ return false;
16
+ }
14
17
  return true;
15
18
  }
16
19
  }
@@ -17,7 +17,7 @@ amis_schema: |-
17
17
  "type": "button",
18
18
  "label": "转签核",
19
19
  "id": "u:instance_reassign",
20
- "hiddenOn": "!(this.record.box === 'monitor' && this.record.state == 'pending' && this.record.flowPermissions.includes('admin'))",
20
+ "hiddenOn": "!(this.record.box === 'monitor' && this.record.state == 'pending' && this.record.flowPermissions.includes('admin')) || (window.Builder && window.Builder.settings && window.Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true')",
21
21
  "onEvent": {
22
22
  "click": {
23
23
  "weight": 0,
@@ -27,6 +27,7 @@ amis_schema: |-
27
27
  "actionType": "dialog",
28
28
  "dialog": {
29
29
  "type": "dialog",
30
+ "className": "instance-action-dialog",
30
31
  "title": "转签核",
31
32
  "body": [
32
33
  {
@@ -16,7 +16,7 @@ amis_schema: |-
16
16
  {
17
17
  "type": "button",
18
18
  "label": "${'CustomAction.instances.instance_relocate' | t}",
19
- "hiddenOn": "!(this.record.box === 'monitor' && this.record.state != 'draft' && this.record.flowPermissions.includes('admin'))",
19
+ "hiddenOn": "!(this.record.box === 'monitor' && this.record.state != 'draft' && this.record.flowPermissions.includes('admin')) || (window.Builder && window.Builder.settings && window.Builder.settings.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true')",
20
20
  "onEvent": {
21
21
  "click": {
22
22
  "weight": 0,
@@ -24,6 +24,7 @@ amis_schema: |-
24
24
  {
25
25
  "dialog": {
26
26
  "type": "dialog",
27
+ "className": "instance-action-dialog",
27
28
  "title": "${'instance_action_instance_relocate_dialog_title' | t}",
28
29
  "body": [
29
30
  {
@@ -15,6 +15,7 @@ amis_schema: |-
15
15
  "actionType": "dialog",
16
16
  "dialog": {
17
17
  "type": "dialog",
18
+ "className": "instance-action-dialog",
18
19
  "title": "退回",
19
20
  "body": [
20
21
  {
@@ -15,6 +15,7 @@ amis_schema: |-
15
15
  "actionType": "dialog",
16
16
  "dialog": {
17
17
  "type": "dialog",
18
+ "className": "instance-action-dialog",
18
19
  "title": "${'CustomLabels.instance_action_terminate_dialog_title' | t}",
19
20
  "body": [
20
21
  {
@@ -290,18 +290,22 @@ router.get('/api/:appId/workflow/nav', requireAuthentication, async function (re
290
290
  currentUrl = currentUrl.substring(currentUrl.indexOf("/app"));
291
291
  let userSession = req.user;
292
292
  const { appId } = req.params;
293
+ const isWorkflowReadonly = process.env.STEEDOS_PUBLIC_WORKFLOW_READONLY === 'true';
294
+
293
295
  // const s1 = new Date().getTime();
294
- let inboxResult = await getCategoriesInbox(userSession, req, currentUrl);
296
+ let inboxResult = isWorkflowReadonly ? { schema: [], count: 0 } : await getCategoriesInbox(userSession, req, currentUrl);
295
297
  // console.log(`inboxResult time`, new Date().getTime() - s1);
296
298
  // const s2 = new Date().getTime();
297
299
  let monitorResult = await getCategoriesMonitor(userSession, req, currentUrl)
298
300
  // console.log(`monitorResult time`, new Date().getTime() - s2);
299
301
  // const s3 = new Date().getTime();
300
- let draftCount = await getDraftCount(userSession,req);
302
+ let draftCount = isWorkflowReadonly ? 0 : await getDraftCount(userSession,req);
301
303
  // console.log(`getDraftCount time`, new Date().getTime() - s3);
302
-
303
- var options = [
304
- {
304
+
305
+ var options = [];
306
+
307
+ if (!isWorkflowReadonly) {
308
+ options.push({
305
309
  "label": t('inbox', {}, userSession.language),
306
310
  "icon": "fa fa-download",
307
311
  "tag":inboxResult.count,
@@ -312,68 +316,73 @@ router.get('/api/:appId/workflow/nav', requireAuthentication, async function (re
312
316
  },
313
317
  "value": `/app/${appId}/instance_tasks/view/none?side_object=instance_tasks&side_listview_id=inbox&additionalFilters=`,
314
318
  "children": inboxResult.schema
319
+ });
320
+ }
321
+
322
+ options.push({
323
+ "label": t('outbox', {}, userSession.language),
324
+ "options":{
325
+ "level":1,
326
+ "to": `/app/${appId}/instance_tasks/view/none?side_object=instance_tasks&side_listview_id=outbox&additionalFilters=`
315
327
  },
316
- {
317
- "label": t('outbox', {}, userSession.language),
318
- "options":{
319
- "level":1,
320
- "to": `/app/${appId}/instance_tasks/view/none?side_object=instance_tasks&side_listview_id=outbox&additionalFilters=`
321
- },
322
- "value": `/app/${appId}/instance_tasks/view/none?side_object=instance_tasks&side_listview_id=outbox&additionalFilters=`,
323
- "icon": "fa fa-check"
328
+ "value": `/app/${appId}/instance_tasks/view/none?side_object=instance_tasks&side_listview_id=outbox&additionalFilters=`,
329
+ "icon": "fa fa-check"
330
+ });
331
+
332
+ options.push({
333
+ "label": t('monitor', {}, userSession.language),
334
+ "icon": "fa fa-eye",
335
+ "options":{
336
+ "level":1,
337
+ "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=monitor&additionalFilters=`,
324
338
  },
325
- {
326
- "label": t('monitor', {}, userSession.language),
327
- "icon": "fa fa-eye",
339
+ "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=monitor&additionalFilters=`,
340
+ "children": monitorResult.schema,
341
+ "unfolded": monitorResult.monitorIsUnfolded,
342
+ "visible": monitorResult.hasFlowsPer
343
+ });
344
+
345
+ const myfileChildren = [];
346
+ if (!isWorkflowReadonly) {
347
+ myfileChildren.push({
348
+ "label": t('draft', {}, userSession.language),
328
349
  "options":{
329
350
  "level":1,
330
- "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=monitor&additionalFilters=`,
351
+ "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=draft&additionalFilters=`
331
352
  },
332
- "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=monitor&additionalFilters=`,
333
- "children": monitorResult.schema,
334
- "unfolded": monitorResult.monitorIsUnfolded,
335
- "visible": monitorResult.hasFlowsPer
336
- },
337
- {
338
- "label": t('myfile', {}, userSession.language),
339
- "icon": "fa fa-folder",
353
+ "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=draft&additionalFilters=`,
354
+ "icon": "fa fa-pencil",
355
+ "tag": draftCount
356
+ });
357
+ myfileChildren.push({
358
+ "label": t('pending', {}, userSession.language),
340
359
  "options":{
341
360
  "level":1,
342
- // "to": `/app/${appId}/instance_tasks/grid/inbox`
361
+ "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=pending&additionalFilters=`,
343
362
  },
344
- "unfolded": true,
345
- "children": [
346
- {
347
- "label": t('draft', {}, userSession.language),
348
- "options":{
349
- "level":1,
350
- "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=draft&additionalFilters=`
351
- },
352
- "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=draft&additionalFilters=`,
353
- "icon": "fa fa-pencil",
354
- "tag": draftCount
355
- },
356
- {
357
- "label": t('pending', {}, userSession.language),
358
- "options":{
359
- "level":1,
360
- "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=pending&additionalFilters=`,
361
- },
362
- "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=pending&additionalFilters=`,
363
- "icon": "fa fa-hourglass-half"
364
- },
365
- {
366
- "label": t('completed', {}, userSession.language),
367
- "options":{
368
- "level":1,
369
- "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=completed&additionalFilters=`,
370
- },
371
- "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=completed&additionalFilters=`,
372
- "icon": "fa fa-check-square"
373
- }
374
- ]
375
- }
376
- ];
363
+ "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=pending&additionalFilters=`,
364
+ "icon": "fa fa-hourglass-half"
365
+ });
366
+ }
367
+ myfileChildren.push({
368
+ "label": t('completed', {}, userSession.language),
369
+ "options":{
370
+ "level":1,
371
+ "to": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=completed&additionalFilters=`,
372
+ },
373
+ "value": `/app/${appId}/instances/view/none?side_object=instances&side_listview_id=completed&additionalFilters=`,
374
+ "icon": "fa fa-check-square"
375
+ });
376
+
377
+ options.push({
378
+ "label": t('myfile', {}, userSession.language),
379
+ "icon": "fa fa-folder",
380
+ "options":{
381
+ "level":1,
382
+ },
383
+ "unfolded": true,
384
+ "children": myfileChildren
385
+ });
377
386
  res.status(200).send({
378
387
  data: {
379
388
  options:options
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steedos-labs/plugin-workflow",
3
- "version": "3.0.58",
3
+ "version": "3.0.59",
4
4
  "main": "package.service.js",
5
5
  "license": "MIT",
6
6
  "files": [