@things-factory/worklist 6.0.45 → 6.0.47

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 (161) hide show
  1. package/client/bootstrap.ts +5 -0
  2. package/client/components/activity-starter-form.ts +53 -303
  3. package/client/pages/activity/activity-list-page.ts +44 -28
  4. package/client/pages/activity/activity-page.ts +7 -5
  5. package/client/pages/activity/activity-partial-view.ts +2 -1
  6. package/client/pages/activity/starter-list-page.ts +16 -11
  7. package/client/pages/activity-approval/activity-approval-page.ts +21 -9
  8. package/client/pages/activity-instance/activity-instance-search-page.ts +2 -19
  9. package/client/pages/activity-instance/activity-instance-start-page.ts +517 -0
  10. package/client/pages/activity-thread/activity-thread-page.ts +5 -3
  11. package/client/pages/activity-thread/activity-thread-view-page.ts +4 -2
  12. package/client/pages/installable-activity/installable-activity-list-page.ts +7 -5
  13. package/client/pages/todo/approval-done-list-page.ts +7 -7
  14. package/client/pages/todo/approval-pending-list-page.ts +48 -10
  15. package/client/pages/todo/done-list-page.ts +1 -1
  16. package/client/pages/todo/draft-list-page.ts +26 -102
  17. package/client/pages/todo/todo-list-page.ts +1 -1
  18. package/client/route.ts +2 -2
  19. package/client/templates/activity-approval-context-template.ts +4 -0
  20. package/client/templates/activity-instance-context-template.ts +171 -0
  21. package/client/templates/activity-thread-context-template.ts +4 -0
  22. package/client/types/activity-instance-type.ts +4 -2
  23. package/client/types/activity-instance.ts +2 -2
  24. package/client/types/activity.ts +7 -0
  25. package/client/types/types.ts +8 -0
  26. package/dist-client/bootstrap.d.ts +1 -0
  27. package/dist-client/bootstrap.js +5 -0
  28. package/dist-client/bootstrap.js.map +1 -1
  29. package/dist-client/components/activity-starter-form.d.ts +2 -5
  30. package/dist-client/components/activity-starter-form.js +55 -247
  31. package/dist-client/components/activity-starter-form.js.map +1 -1
  32. package/dist-client/pages/activity/activity-list-page.d.ts +1 -1
  33. package/dist-client/pages/activity/activity-list-page.js +45 -30
  34. package/dist-client/pages/activity/activity-list-page.js.map +1 -1
  35. package/dist-client/pages/activity/activity-page.d.ts +1 -1
  36. package/dist-client/pages/activity/activity-page.js +5 -5
  37. package/dist-client/pages/activity/activity-page.js.map +1 -1
  38. package/dist-client/pages/activity/activity-partial-view.js +2 -2
  39. package/dist-client/pages/activity/activity-partial-view.js.map +1 -1
  40. package/dist-client/pages/activity/starter-list-page.d.ts +1 -0
  41. package/dist-client/pages/activity/starter-list-page.js +14 -11
  42. package/dist-client/pages/activity/starter-list-page.js.map +1 -1
  43. package/dist-client/pages/activity-approval/activity-approval-page.d.ts +3 -3
  44. package/dist-client/pages/activity-approval/activity-approval-page.js +16 -9
  45. package/dist-client/pages/activity-approval/activity-approval-page.js.map +1 -1
  46. package/dist-client/pages/activity-instance/activity-instance-page.d.ts +2 -2
  47. package/dist-client/pages/activity-instance/activity-instance-page.js +19 -10
  48. package/dist-client/pages/activity-instance/activity-instance-page.js.map +1 -1
  49. package/dist-client/pages/activity-instance/activity-instance-search-page.js +1 -8
  50. package/dist-client/pages/activity-instance/activity-instance-search-page.js.map +1 -1
  51. package/dist-client/pages/activity-instance/activity-instance-start-page.d.ts +49 -0
  52. package/dist-client/pages/activity-instance/activity-instance-start-page.js +451 -0
  53. package/dist-client/pages/activity-instance/activity-instance-start-page.js.map +1 -0
  54. package/dist-client/pages/activity-thread/activity-thread-page.js +3 -3
  55. package/dist-client/pages/activity-thread/activity-thread-page.js.map +1 -1
  56. package/dist-client/pages/activity-thread/activity-thread-view-page.js +2 -2
  57. package/dist-client/pages/activity-thread/activity-thread-view-page.js.map +1 -1
  58. package/dist-client/pages/installable-activity/installable-activity-list-page.js +7 -5
  59. package/dist-client/pages/installable-activity/installable-activity-list-page.js.map +1 -1
  60. package/dist-client/pages/todo/approval-done-list-page.js +7 -7
  61. package/dist-client/pages/todo/approval-done-list-page.js.map +1 -1
  62. package/dist-client/pages/todo/approval-pending-list-page.js +44 -9
  63. package/dist-client/pages/todo/approval-pending-list-page.js.map +1 -1
  64. package/dist-client/pages/todo/done-list-page.js +1 -1
  65. package/dist-client/pages/todo/done-list-page.js.map +1 -1
  66. package/dist-client/pages/todo/draft-list-page.d.ts +1 -0
  67. package/dist-client/pages/todo/draft-list-page.js +25 -99
  68. package/dist-client/pages/todo/draft-list-page.js.map +1 -1
  69. package/dist-client/pages/todo/todo-list-page.js +1 -1
  70. package/dist-client/pages/todo/todo-list-page.js.map +1 -1
  71. package/dist-client/route.d.ts +1 -1
  72. package/dist-client/route.js +2 -2
  73. package/dist-client/route.js.map +1 -1
  74. package/dist-client/templates/activity-approval-context-template.js +4 -0
  75. package/dist-client/templates/activity-approval-context-template.js.map +1 -1
  76. package/dist-client/templates/activity-instance-context-template.d.ts +2 -0
  77. package/dist-client/templates/activity-instance-context-template.js +145 -0
  78. package/dist-client/templates/activity-instance-context-template.js.map +1 -0
  79. package/dist-client/templates/activity-thread-context-template.js +4 -0
  80. package/dist-client/templates/activity-thread-context-template.js.map +1 -1
  81. package/dist-client/tsconfig.tsbuildinfo +1 -1
  82. package/dist-client/types/activity-instance-type.d.ts +3 -2
  83. package/dist-client/types/activity-instance-type.js +2 -2
  84. package/dist-client/types/activity-instance-type.js.map +1 -1
  85. package/dist-client/types/activity-instance.d.ts +1 -1
  86. package/dist-client/types/activity-instance.js +2 -2
  87. package/dist-client/types/activity-instance.js.map +1 -1
  88. package/dist-client/types/activity.d.ts +5 -0
  89. package/dist-client/types/activity.js +5 -0
  90. package/dist-client/types/activity.js.map +1 -1
  91. package/dist-client/types/types.d.ts +4 -0
  92. package/dist-client/types/types.js +6 -0
  93. package/dist-client/types/types.js.map +1 -1
  94. package/dist-server/controllers/activity-instance/assign.js +1 -1
  95. package/dist-server/controllers/activity-instance/assign.js.map +1 -1
  96. package/dist-server/controllers/activity-instance/draft.js +24 -6
  97. package/dist-server/controllers/activity-instance/draft.js.map +1 -1
  98. package/dist-server/controllers/activity-instance/index.js +1 -1
  99. package/dist-server/controllers/activity-instance/index.js.map +1 -1
  100. package/dist-server/controllers/activity-instance/issue.js +105 -0
  101. package/dist-server/controllers/activity-instance/issue.js.map +1 -0
  102. package/dist-server/controllers/activity-instance/pick.js +1 -1
  103. package/dist-server/controllers/activity-instance/pick.js.map +1 -1
  104. package/dist-server/controllers/activity-instance/post.js +7 -7
  105. package/dist-server/controllers/activity-instance/post.js.map +1 -1
  106. package/dist-server/controllers/common.js +33 -9
  107. package/dist-server/controllers/common.js.map +1 -1
  108. package/dist-server/routes.js +2 -2
  109. package/dist-server/routes.js.map +1 -1
  110. package/dist-server/service/activity/activity-history.js +6 -2
  111. package/dist-server/service/activity/activity-history.js.map +1 -1
  112. package/dist-server/service/activity/activity-query.js +84 -1
  113. package/dist-server/service/activity/activity-query.js.map +1 -1
  114. package/dist-server/service/activity/activity-type.js +8 -0
  115. package/dist-server/service/activity/activity-type.js.map +1 -1
  116. package/dist-server/service/activity/activity.js +36 -3
  117. package/dist-server/service/activity/activity.js.map +1 -1
  118. package/dist-server/service/activity-instance/activity-instance-history.js +1 -1
  119. package/dist-server/service/activity-instance/activity-instance-history.js.map +1 -1
  120. package/dist-server/service/activity-instance/activity-instance-mutation.js +6 -6
  121. package/dist-server/service/activity-instance/activity-instance-mutation.js.map +1 -1
  122. package/dist-server/service/activity-instance/activity-instance-query.js +2 -2
  123. package/dist-server/service/activity-instance/activity-instance-query.js.map +1 -1
  124. package/dist-server/service/activity-instance/activity-instance-type.js +62 -50
  125. package/dist-server/service/activity-instance/activity-instance-type.js.map +1 -1
  126. package/dist-server/service/activity-instance/activity-instance.js +4 -23
  127. package/dist-server/service/activity-instance/activity-instance.js.map +1 -1
  128. package/dist-server/service/activity-summary/activity-summary-query.js +1 -1
  129. package/dist-server/service/activity-summary/activity-summary-query.js.map +1 -1
  130. package/dist-server/service/installable-activity/installable-activity.js +4 -0
  131. package/dist-server/service/installable-activity/installable-activity.js.map +1 -1
  132. package/dist-server/tsconfig.tsbuildinfo +1 -1
  133. package/helps/worklist/activity.md +91 -0
  134. package/helps/worklist/draft-list.md +5 -1
  135. package/helps/worklist/starter-list.md +34 -0
  136. package/package.json +2 -2
  137. package/server/controllers/activity-instance/assign.ts +1 -1
  138. package/server/controllers/activity-instance/draft.ts +33 -6
  139. package/server/controllers/activity-instance/index.ts +1 -1
  140. package/server/controllers/activity-instance/issue.ts +175 -0
  141. package/server/controllers/activity-instance/pick.ts +1 -1
  142. package/server/controllers/common.ts +43 -9
  143. package/server/routes.ts +2 -2
  144. package/server/service/activity/activity-history.ts +5 -2
  145. package/server/service/activity/activity-query.ts +85 -2
  146. package/server/service/activity/activity-type.ts +15 -2
  147. package/server/service/activity/activity.ts +28 -2
  148. package/server/service/activity-instance/activity-instance-history.ts +1 -1
  149. package/server/service/activity-instance/activity-instance-mutation.ts +7 -7
  150. package/server/service/activity-instance/activity-instance-query.ts +3 -3
  151. package/server/service/activity-instance/activity-instance-type.ts +13 -4
  152. package/server/service/activity-instance/activity-instance.ts +4 -16
  153. package/server/service/activity-summary/activity-summary-query.ts +1 -1
  154. package/server/service/installable-activity/installable-activity.ts +4 -1
  155. package/things-factory.config.js +1 -1
  156. package/translations/en.json +13 -0
  157. package/translations/ko.json +17 -4
  158. package/translations/ms.json +13 -0
  159. package/translations/zh.json +13 -0
  160. package/client/pages/activity-instance/activity-instance-page.ts +0 -445
  161. package/server/controllers/activity-instance/post.ts +0 -140
@@ -14,6 +14,7 @@ import { openPopup } from '@operato/layout'
14
14
  import { PageView, store } from '@operato/shell'
15
15
  import { CommonGristStyles, ScrollbarStyles } from '@operato/styles'
16
16
  import { isMobileDevice } from '@operato/utils'
17
+ import { ActivityStartingTypes, ActivityTypes } from '../../types/types.js'
17
18
 
18
19
  const FILTERS = [
19
20
  {
@@ -67,7 +68,8 @@ export class StarterListPage extends connect(store)(localize(i18next)(PageView))
67
68
  handler: () => {
68
69
  this.grist.toggleHeadroom()
69
70
  }
70
- }
71
+ },
72
+ help: 'worklist/starter-list'
71
73
  }
72
74
  }
73
75
 
@@ -115,7 +117,7 @@ export class StarterListPage extends connect(store)(localize(i18next)(PageView))
115
117
  type: 'gutter',
116
118
  gutterName: 'button',
117
119
  name: 'start',
118
- icon: 'add_task',
120
+ icon: 'rocket_launch',
119
121
  handlers: {
120
122
  click: (columns, data, column, record, rowIndex) => {
121
123
  if (!record.id) {
@@ -128,7 +130,9 @@ export class StarterListPage extends connect(store)(localize(i18next)(PageView))
128
130
  backdrop: true,
129
131
  help: 'worklist/activity-starter-form',
130
132
  size: 'large',
131
- title: i18next.t('title.activity starter')
133
+ title: i18next.t(
134
+ record.startingType == 'issue' ? 'title.activity starter' : 'title.activity application'
135
+ )
132
136
  }
133
137
  )
134
138
  popup.onclosed = () => {
@@ -153,16 +157,16 @@ export class StarterListPage extends connect(store)(localize(i18next)(PageView))
153
157
  width: 240
154
158
  },
155
159
  {
156
- type: 'string',
157
- name: 'activityType',
160
+ type: 'select',
161
+ name: 'startingType',
158
162
  label: true,
159
- header: i18next.t('field.activity-type'),
163
+ header: i18next.t('field.starting-type'),
164
+ record: {
165
+ editable: false,
166
+ options: ActivityStartingTypes
167
+ },
160
168
  sortable: true,
161
- // filter: {
162
- // type: 'select',
163
- // options: ActivityTypes
164
- // },
165
- width: 100
169
+ width: 80
166
170
  },
167
171
  {
168
172
  type: 'resource-object',
@@ -215,6 +219,7 @@ export class StarterListPage extends connect(store)(localize(i18next)(PageView))
215
219
  activityType
216
220
  priority
217
221
  thumbnail
222
+ startingType
218
223
  updater {
219
224
  id
220
225
  name
@@ -117,9 +117,10 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
117
117
  margin: 0;
118
118
  padding: 0;
119
119
  opacity: 0.8;
120
+ margin-top: auto;
120
121
  }
121
122
 
122
- textarea {
123
+ div[comment] textarea {
123
124
  flex: 1;
124
125
  padding: 10px;
125
126
  resize: none;
@@ -145,19 +146,19 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
145
146
  : [
146
147
  {
147
148
  title: i18next.t('button.reject'),
148
- action: this._rejectActivityApproval.bind(this),
149
+ action: this.rejectActivityApproval.bind(this),
149
150
  ...CommonButtonStyles.play
150
151
  },
151
152
 
152
153
  {
153
154
  title: i18next.t('button.approve'),
154
- action: this._approveActivityApproval.bind(this),
155
+ action: this.approveActivityApproval.bind(this),
155
156
  ...CommonButtonStyles.save
156
157
  },
157
158
 
158
159
  {
159
160
  title: i18next.t('button.save'),
160
- action: this._saveActivityApproval.bind(this),
161
+ action: this.saveActivityApproval.bind(this),
161
162
  ...CommonButtonStyles.save
162
163
  }
163
164
  ],
@@ -210,7 +211,8 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
210
211
  .map(item => {
211
212
  return {
212
213
  ...item,
213
- label: item.name
214
+ label: item.name,
215
+ property: item.options
214
216
  }
215
217
  })
216
218
  }
@@ -223,7 +225,8 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
223
225
  .map(item => {
224
226
  return {
225
227
  ...item,
226
- label: item.name
228
+ label: item.name,
229
+ property: item.options
227
230
  }
228
231
  })
229
232
  }
@@ -348,7 +351,7 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
348
351
  this.updateContext()
349
352
  }
350
353
 
351
- async _rejectActivityApproval() {
354
+ async rejectActivityApproval() {
352
355
  var { id, comment } = this.activityApproval
353
356
 
354
357
  const response = await client.mutate({
@@ -365,6 +368,9 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
365
368
 
366
369
  if (!response.errors) {
367
370
  this.activityApproval = response.data.rejectActivityApproval
371
+ this.activityThread = this.activityApproval.activityThread
372
+
373
+ this.updateContext()
368
374
 
369
375
  document.dispatchEvent(
370
376
  new CustomEvent('notify', {
@@ -376,7 +382,7 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
376
382
  }
377
383
  }
378
384
 
379
- async _approveActivityApproval() {
385
+ async approveActivityApproval() {
380
386
  var { id, comment } = this.activityApproval
381
387
 
382
388
  const response = await client.mutate({
@@ -393,6 +399,9 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
393
399
 
394
400
  if (!response.errors) {
395
401
  this.activityApproval = response.data.approveActivityApproval
402
+ this.activityThread = this.activityApproval.activityThread
403
+
404
+ this.updateContext()
396
405
 
397
406
  document.dispatchEvent(
398
407
  new CustomEvent('notify', {
@@ -404,7 +413,7 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
404
413
  }
405
414
  }
406
415
 
407
- async _saveActivityApproval() {
416
+ async saveActivityApproval() {
408
417
  var { id, comment } = this.activityApproval
409
418
 
410
419
  const response = await client.mutate({
@@ -421,6 +430,9 @@ export class ActivityApprovalPage extends connect(store)(localize(i18next)(PageV
421
430
 
422
431
  if (!response.errors) {
423
432
  this.activityApproval = response.data.saveActivityApproval
433
+ this.activityThread = this.activityApproval.activityThread
434
+
435
+ this.updateContext()
424
436
 
425
437
  document.dispatchEvent(
426
438
  new CustomEvent('notify', {
@@ -6,15 +6,7 @@ import { css, html } from 'lit'
6
6
  import { customElement, property, query, state } from 'lit/decorators.js'
7
7
  import { connect } from 'pwa-helpers/connect-mixin'
8
8
 
9
- import {
10
- getEditor,
11
- getRenderer,
12
- ColumnConfig,
13
- DataGrist,
14
- FetchOption,
15
- SortersControl,
16
- GristRecord
17
- } from '@operato/data-grist'
9
+ import { DataGrist, FetchOption, GristRecord } from '@operato/data-grist'
18
10
  import { client } from '@operato/graphql'
19
11
  import { i18next, localize } from '@operato/i18n'
20
12
  import { openPopup } from '@operato/layout'
@@ -81,12 +73,7 @@ export class ActivityInstanceSearchPage extends connect(store)(localize(i18next)
81
73
  const mode = this.mode || (isMobileDevice() ? 'LIST' : 'GRID')
82
74
 
83
75
  return html`
84
- <ox-grist
85
- .mode=${mode}
86
- .config=${this.gristConfig}
87
- .fetchHandler=${this.fetchHandler.bind(this)}
88
- ?url-params-sensitive=${this.active}
89
- >
76
+ <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)}>
90
77
  <div slot="headroom">
91
78
  <div id="filters">
92
79
  <ox-filters-form autofocus without-search></ox-filters-form>
@@ -152,8 +139,6 @@ export class ActivityInstanceSearchPage extends connect(store)(localize(i18next)
152
139
  this.activity = response.data.activity
153
140
  this.searchKeys = this.activity?.searchKeys
154
141
  this.refreshGristConfig()
155
-
156
- this.grist.fetch()
157
142
  }
158
143
  }
159
144
 
@@ -177,8 +162,6 @@ export class ActivityInstanceSearchPage extends connect(store)(localize(i18next)
177
162
  }
178
163
 
179
164
  refreshGristConfig() {
180
- const today = new Date().toISOString().split('T')[0]
181
-
182
165
  this.gristConfig = {
183
166
  list: {
184
167
  fields: ['name', 'description'],