@things-factory/dataset 8.0.0 → 9.0.0-beta.3

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 (147) hide show
  1. package/dist-client/activities/activity-data-review-edit.d.ts +5 -1
  2. package/dist-client/activities/activity-data-review-edit.js +143 -5
  3. package/dist-client/activities/activity-data-review-edit.js.map +1 -1
  4. package/dist-client/pages/data-entry/data-entry-list-page.js +2 -2
  5. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  6. package/dist-client/tsconfig.tsbuildinfo +1 -1
  7. package/dist-server/activities/activity-data-review.js +18 -5
  8. package/dist-server/activities/activity-data-review.js.map +1 -1
  9. package/dist-server/activities/activity-ooc-review.js +13 -52
  10. package/dist-server/activities/activity-ooc-review.js.map +1 -1
  11. package/dist-server/controllers/create-data-ooc.d.ts +4 -0
  12. package/dist-server/controllers/create-data-ooc.js +65 -0
  13. package/dist-server/controllers/create-data-ooc.js.map +1 -0
  14. package/dist-server/controllers/create-data-sample.js +4 -94
  15. package/dist-server/controllers/create-data-sample.js.map +1 -1
  16. package/dist-server/controllers/index.d.ts +3 -0
  17. package/dist-server/controllers/index.js +3 -0
  18. package/dist-server/controllers/index.js.map +1 -1
  19. package/dist-server/controllers/issue-ooc-resolve.d.ts +3 -0
  20. package/dist-server/controllers/issue-ooc-resolve.js +49 -0
  21. package/dist-server/controllers/issue-ooc-resolve.js.map +1 -0
  22. package/dist-server/controllers/issue-ooc-review.d.ts +3 -0
  23. package/dist-server/controllers/issue-ooc-review.js +47 -0
  24. package/dist-server/controllers/issue-ooc-review.js.map +1 -0
  25. package/dist-server/service/data-sample/data-sample-query.d.ts +1 -1
  26. package/dist-server/service/data-sample/data-sample-query.js +3 -3
  27. package/dist-server/service/data-sample/data-sample-query.js.map +1 -1
  28. package/dist-server/service/index.d.ts +1 -1
  29. package/dist-server/tsconfig.tsbuildinfo +1 -1
  30. package/package.json +26 -26
  31. package/translations/en.json +3 -0
  32. package/translations/ja.json +3 -0
  33. package/translations/ko.json +3 -0
  34. package/translations/ms.json +3 -0
  35. package/translations/zh.json +3 -0
  36. package/client/activities/activity-data-collect-edit.ts +0 -105
  37. package/client/activities/activity-data-collect-view.ts +0 -91
  38. package/client/activities/activity-data-review-edit.ts +0 -133
  39. package/client/activities/activity-data-review-view.ts +0 -145
  40. package/client/activities/activity-ooc-resolve-edit.ts +0 -195
  41. package/client/activities/activity-ooc-resolve-view.ts +0 -143
  42. package/client/activities/activity-ooc-review-edit.ts +0 -173
  43. package/client/activities/activity-ooc-review-view.ts +0 -129
  44. package/client/bootstrap.ts +0 -35
  45. package/client/components/data-entry-form.ts +0 -109
  46. package/client/index.ts +0 -1
  47. package/client/pages/data-archive/data-archive-list-page.ts +0 -277
  48. package/client/pages/data-archive/data-archive-request-popup.ts +0 -177
  49. package/client/pages/data-entry/data-entry-list-page.ts +0 -464
  50. package/client/pages/data-key-set/data-key-item-list.ts +0 -183
  51. package/client/pages/data-key-set/data-key-set-importer.ts +0 -89
  52. package/client/pages/data-key-set/data-key-set-list-page.ts +0 -413
  53. package/client/pages/data-ooc/data-ooc-list-page.ts +0 -549
  54. package/client/pages/data-ooc/data-ooc-page.ts +0 -164
  55. package/client/pages/data-ooc/data-ooc-view.ts +0 -236
  56. package/client/pages/data-ooc/data-oocs-page.ts +0 -200
  57. package/client/pages/data-report/data-report-embed-page.ts +0 -108
  58. package/client/pages/data-report/data-report-list-page.ts +0 -454
  59. package/client/pages/data-report/data-report-samples-page.ts +0 -174
  60. package/client/pages/data-report/jasper-report-oocs-page.ts +0 -110
  61. package/client/pages/data-report/jasper-report-samples-crosstab-page.ts +0 -110
  62. package/client/pages/data-report/jasper-report-samples-page.ts +0 -110
  63. package/client/pages/data-sample/data-sample-list-page.ts +0 -442
  64. package/client/pages/data-sample/data-sample-page.ts +0 -55
  65. package/client/pages/data-sample/data-sample-search-page.ts +0 -424
  66. package/client/pages/data-sample/data-sample-view.ts +0 -292
  67. package/client/pages/data-sample/data-samples-page.ts +0 -249
  68. package/client/pages/data-sensor/data-sensor-list-page.ts +0 -456
  69. package/client/pages/data-set/data-item-list.ts +0 -304
  70. package/client/pages/data-set/data-set-importer.ts +0 -89
  71. package/client/pages/data-set/data-set-list-page.ts +0 -1078
  72. package/client/pages/data-summary/data-summary-list-page.ts +0 -363
  73. package/client/pages/data-summary/data-summary-period-page.ts +0 -439
  74. package/client/pages/data-summary/data-summary-search-page.ts +0 -426
  75. package/client/pages/data-summary/data-summary-view.ts +0 -133
  76. package/client/route.ts +0 -91
  77. package/client/tsconfig.json +0 -13
  78. package/server/activities/activity-data-collect.ts +0 -100
  79. package/server/activities/activity-data-review.ts +0 -82
  80. package/server/activities/activity-ooc-resolve.ts +0 -123
  81. package/server/activities/activity-ooc-review.ts +0 -144
  82. package/server/activities/index.ts +0 -11
  83. package/server/controllers/create-data-sample.ts +0 -426
  84. package/server/controllers/data-use-case.ts +0 -98
  85. package/server/controllers/finalize-data-collection.ts +0 -388
  86. package/server/controllers/index.ts +0 -3
  87. package/server/controllers/issue-data-collection-task.ts +0 -70
  88. package/server/controllers/jasper-report.ts +0 -186
  89. package/server/controllers/query-data-summary-by-period.ts +0 -178
  90. package/server/controllers/shiny-report.ts +0 -54
  91. package/server/engine/index.ts +0 -1
  92. package/server/engine/task/create-data-sample.ts +0 -100
  93. package/server/engine/task/index.ts +0 -2
  94. package/server/engine/task/issue-collect-data.ts +0 -45
  95. package/server/index.ts +0 -8
  96. package/server/routes.ts +0 -188
  97. package/server/service/data-archive/data-archive-mutation.ts +0 -273
  98. package/server/service/data-archive/data-archive-query.ts +0 -58
  99. package/server/service/data-archive/data-archive-type.ts +0 -48
  100. package/server/service/data-archive/data-archive.ts +0 -69
  101. package/server/service/data-archive/index.ts +0 -6
  102. package/server/service/data-key-set/data-key-item-type.ts +0 -31
  103. package/server/service/data-key-set/data-key-set-mutation.ts +0 -201
  104. package/server/service/data-key-set/data-key-set-query.ts +0 -68
  105. package/server/service/data-key-set/data-key-set-type.ts +0 -70
  106. package/server/service/data-key-set/data-key-set.ts +0 -86
  107. package/server/service/data-key-set/index.ts +0 -6
  108. package/server/service/data-ooc/data-ooc-mutation.ts +0 -154
  109. package/server/service/data-ooc/data-ooc-query.ts +0 -106
  110. package/server/service/data-ooc/data-ooc-subscription.ts +0 -48
  111. package/server/service/data-ooc/data-ooc-type.ts +0 -71
  112. package/server/service/data-ooc/data-ooc.ts +0 -259
  113. package/server/service/data-ooc/index.ts +0 -7
  114. package/server/service/data-sample/data-sample-mutation.ts +0 -18
  115. package/server/service/data-sample/data-sample-query.ts +0 -215
  116. package/server/service/data-sample/data-sample-type.ts +0 -47
  117. package/server/service/data-sample/data-sample.ts +0 -193
  118. package/server/service/data-sample/index.ts +0 -6
  119. package/server/service/data-sensor/data-sensor-mutation.ts +0 -116
  120. package/server/service/data-sensor/data-sensor-query.ts +0 -76
  121. package/server/service/data-sensor/data-sensor-type.ts +0 -104
  122. package/server/service/data-sensor/data-sensor.ts +0 -126
  123. package/server/service/data-sensor/index.ts +0 -6
  124. package/server/service/data-set/data-item-type.ts +0 -155
  125. package/server/service/data-set/data-set-mutation.ts +0 -552
  126. package/server/service/data-set/data-set-query.ts +0 -461
  127. package/server/service/data-set/data-set-type.ts +0 -204
  128. package/server/service/data-set/data-set.ts +0 -326
  129. package/server/service/data-set/index.ts +0 -6
  130. package/server/service/data-set-history/data-set-history-query.ts +0 -126
  131. package/server/service/data-set-history/data-set-history-type.ts +0 -12
  132. package/server/service/data-set-history/data-set-history.ts +0 -217
  133. package/server/service/data-set-history/event-subscriber.ts +0 -17
  134. package/server/service/data-set-history/index.ts +0 -7
  135. package/server/service/data-spec/data-spec-manager.ts +0 -21
  136. package/server/service/data-spec/data-spec-query.ts +0 -21
  137. package/server/service/data-spec/data-spec.ts +0 -45
  138. package/server/service/data-spec/index.ts +0 -5
  139. package/server/service/data-summary/data-summary-mutation.ts +0 -45
  140. package/server/service/data-summary/data-summary-query.ts +0 -179
  141. package/server/service/data-summary/data-summary-type.ts +0 -86
  142. package/server/service/data-summary/data-summary.ts +0 -170
  143. package/server/service/data-summary/index.ts +0 -7
  144. package/server/service/index.ts +0 -57
  145. package/server/tsconfig.json +0 -10
  146. package/server/utils/config-resolver.ts +0 -29
  147. package/server/utils/index.ts +0 -1
@@ -1,304 +0,0 @@
1
- import '@material/web/icon/icon.js'
2
-
3
- import gql from 'graphql-tag'
4
-
5
- import { css, html, LitElement } from 'lit'
6
- import { customElement, property, query, state } from 'lit/decorators.js'
7
-
8
- import { client } from '@operato/graphql'
9
- import { i18next, localize } from '@operato/i18n'
10
- import { isMobileDevice } from '@operato/utils'
11
- import { DataGrist, FetchOption } from '@operato/data-grist'
12
- import { CommonHeaderStyles } from '@operato/styles'
13
-
14
- const DataItemStats = ['sum', 'mean', 'stddev', 'variance', 'min', 'max', 'range', 'median', 'mode']
15
-
16
- @customElement('data-item-list')
17
- class DataItemList extends localize(i18next)(LitElement) {
18
- @property({ type: Object }) dataSet: any
19
-
20
- @state() gristConfig: any
21
-
22
- static styles = [
23
- CommonHeaderStyles,
24
- css`
25
- :host {
26
- display: flex;
27
- flex-direction: column;
28
-
29
- background-color: var(--md-sys-color-surface);
30
- }
31
-
32
- ox-grist {
33
- flex: 1;
34
- }
35
- `
36
- ]
37
-
38
- @query('ox-grist') private grist!: DataGrist
39
-
40
- render() {
41
- return html`
42
- <ox-grist
43
- .mode=${isMobileDevice() ? 'LIST' : 'GRID'}
44
- .config=${this.gristConfig}
45
- .fetchHandler=${this.fetchHandler.bind(this)}
46
- ></ox-grist>
47
-
48
- <div class="footer">
49
- <div filler></div>
50
- <button danger @click=${this._deleteDataItems.bind(this)}>
51
- <md-icon>delete_forever</md-icon>${i18next.t('button.delete')}
52
- </button>
53
- <button @click=${this._updateDataItems.bind(this)} done>
54
- <md-icon>save</md-icon>${i18next.t('button.save')}
55
- </button>
56
- </div>
57
- `
58
- }
59
-
60
- async firstUpdated() {
61
- this.gristConfig = {
62
- list: { fields: ['name', 'description', 'active'] },
63
- columns: [
64
- { type: 'gutter', gutterName: 'row-selector', fixed: true, multiple: true },
65
- {
66
- type: 'gutter',
67
- gutterName: 'button',
68
- fixed: true,
69
- icon: 'add',
70
- handlers: {
71
- click: 'record-copy'
72
- }
73
- },
74
- { type: 'gutter', gutterName: 'sequence', fixed: true },
75
- {
76
- type: 'gutter',
77
- gutterName: 'button',
78
- fixed: true,
79
- icon: 'arrow_upward',
80
- handlers: {
81
- click: 'move-up'
82
- }
83
- },
84
- {
85
- type: 'gutter',
86
- gutterName: 'button',
87
- fixed: true,
88
- icon: 'arrow_downward',
89
- handlers: {
90
- click: 'move-down'
91
- }
92
- },
93
- {
94
- type: 'string',
95
- name: 'name',
96
- fixed: true,
97
- header: i18next.t('field.name'),
98
- record: {
99
- editable: true
100
- },
101
- width: 140
102
- },
103
- {
104
- type: 'string',
105
- name: 'description',
106
- header: i18next.t('field.description'),
107
- record: {
108
- editable: true
109
- },
110
- width: 180
111
- },
112
- {
113
- type: 'checkbox',
114
- name: 'active',
115
- label: true,
116
- header: i18next.t('field.active'),
117
- record: {
118
- editable: true
119
- },
120
- sortable: true,
121
- width: 60
122
- },
123
- {
124
- type: 'checkbox',
125
- name: 'hidden',
126
- label: true,
127
- header: i18next.t('field.hidden'),
128
- record: {
129
- editable: true
130
- },
131
- sortable: true,
132
- width: 60
133
- },
134
- {
135
- type: 'varname',
136
- name: 'tag',
137
- header: i18next.t('field.tag'),
138
- record: {
139
- editable: true
140
- },
141
- width: 180
142
- },
143
- {
144
- type: 'string',
145
- name: 'group',
146
- header: i18next.t('field.subgroup'),
147
- record: {
148
- editable: true
149
- },
150
- width: 180
151
- },
152
- {
153
- type: 'select',
154
- name: 'type',
155
- header: i18next.t('field.type'),
156
- record: {
157
- options: ['', 'number', 'text', 'select', 'radio', 'boolean', 'date', 'datetime', 'file', 'signature'],
158
- editable: true
159
- },
160
- width: 120
161
- },
162
- {
163
- type: 'parameters',
164
- name: 'options',
165
- header: i18next.t('field.options'),
166
- record: {
167
- editable: true,
168
- renderer: 'json5',
169
- options: async (value, column, record, row, field) => {
170
- return {
171
- name: record.type,
172
- help: '',
173
- spec:
174
- record.type === 'select' || record.type === 'radio'
175
- ? [
176
- {
177
- type: 'options' /* property-editor type */,
178
- name: 'options',
179
- label: 'options'
180
- }
181
- ]
182
- : [],
183
- context: this.grist,
184
- objectified: true
185
- }
186
- }
187
- },
188
- width: 120
189
- },
190
- {
191
- type: 'select',
192
- name: 'stat',
193
- header: i18next.t('field.finalizing-function'),
194
- record: {
195
- options: ['', ...DataItemStats],
196
- editable: true
197
- },
198
- width: 120
199
- },
200
- {
201
- type: 'select',
202
- name: 'agg',
203
- header: i18next.t('field.agg-function'),
204
- record: {
205
- options: ['', ...DataItemStats],
206
- editable: true
207
- },
208
- width: 120
209
- },
210
- {
211
- type: 'string',
212
- name: 'unit',
213
- header: i18next.t('field.unit'),
214
- record: {
215
- editable: true
216
- },
217
- width: 120
218
- },
219
- {
220
- type: 'number',
221
- name: 'quota',
222
- header: i18next.t('field.quota'),
223
- record: {
224
- editable: true
225
- },
226
- width: 60
227
- },
228
- {
229
- type: 'data-item-spec',
230
- name: 'spec',
231
- header: i18next.t('field.spec'),
232
- record: {
233
- editable: true,
234
- options: {
235
- name: '',
236
- help: '',
237
- objectified: true /* prevent from stringifying */
238
- }
239
- },
240
- width: 200
241
- }
242
- ],
243
- rows: {
244
- selectable: {
245
- multiple: true
246
- }
247
- },
248
- pagination: {
249
- infinite: true
250
- },
251
- sorters: []
252
- }
253
- }
254
-
255
- async fetchHandler({ filters, page, limit, sortings = [] }: FetchOption) {
256
- const dataItems = this.dataSet.dataItems || []
257
-
258
- return {
259
- total: dataItems.length,
260
- records: dataItems
261
- }
262
- }
263
-
264
- async _updateDataItems() {
265
- this.grist.commit()
266
-
267
- const response = await client.mutate({
268
- mutation: gql`
269
- mutation ($id: String!, $patch: DataSetPatch!) {
270
- updateDataSet(id: $id, patch: $patch) {
271
- name
272
- }
273
- }
274
- `,
275
- variables: {
276
- id: this.dataSet.id,
277
- patch: {
278
- dataItems: this.grist.data.records,
279
- cuFlag: 'M'
280
- }
281
- }
282
- })
283
-
284
- if (!response.errors) {
285
- await document.dispatchEvent(
286
- new CustomEvent('notify', {
287
- detail: {
288
- message: i18next.t('text.info_x_successfully', {
289
- x: i18next.t('button.save')
290
- })
291
- }
292
- })
293
- )
294
- }
295
- }
296
-
297
- async _deleteDataItems() {
298
- if (!confirm(i18next.t('text.sure_to_x', { x: i18next.t('text.delete') }))) {
299
- return
300
- }
301
-
302
- this.grist.deleteSelectedRecords(false)
303
- }
304
- }
@@ -1,89 +0,0 @@
1
- import '@material/web/icon/icon.js'
2
- import '@operato/data-grist'
3
-
4
- import gql from 'graphql-tag'
5
- import { css, html, LitElement } from 'lit'
6
- import { customElement, property, state } from 'lit/decorators.js'
7
-
8
- import { client } from '@operato/graphql'
9
- import { i18next } from '@operato/i18n'
10
- import { isMobileDevice } from '@operato/utils'
11
- import { DataSet } from '@operato/dataset'
12
- import { CommonHeaderStyles } from '@operato/styles'
13
- @customElement('data-set-importer')
14
- export class DataSetImporter extends LitElement {
15
- static styles = [
16
- CommonHeaderStyles,
17
- css`
18
- :host {
19
- display: flex;
20
- flex-direction: column;
21
-
22
- background-color: var(--md-sys-color-surface);
23
- }
24
-
25
- ox-grist {
26
- flex: 1;
27
- }
28
- `
29
- ]
30
-
31
- @property({ type: Array }) dataSets: DataSet[] = []
32
-
33
- @state() columns: any = {
34
- list: { fields: ['name', 'description'] },
35
- pagination: { infinite: true },
36
- columns: [
37
- {
38
- type: 'string',
39
- name: 'name',
40
- header: i18next.t('field.name'),
41
- width: 150
42
- },
43
- {
44
- type: 'string',
45
- name: 'description',
46
- header: i18next.t('field.description'),
47
- width: 200
48
- },
49
- {
50
- type: 'checkbox',
51
- name: 'active',
52
- header: i18next.t('field.active'),
53
- width: 60
54
- }
55
- ]
56
- }
57
-
58
- render() {
59
- return html`
60
- <ox-grist
61
- .mode=${isMobileDevice() ? 'LIST' : 'GRID'}
62
- .config=${this.columns}
63
- .data=${{ records: this.dataSets }}
64
- ></ox-grist>
65
-
66
- <div class="footer">
67
- <div filler></div>
68
- <button @click=${this.save.bind(this)} done><md-icon>save</md-icon>${i18next.t('button.save')}</button>
69
- </div>
70
- `
71
- }
72
-
73
- async save() {
74
- const response = await client.mutate({
75
- mutation: gql`
76
- mutation importDataSets($dataSets: [DataSetPatch!]!) {
77
- importDataSets(dataSets: $dataSets)
78
- }
79
- `,
80
- variables: { dataSets: this.dataSets }
81
- })
82
-
83
- if (response.errors?.length) {
84
- return
85
- }
86
-
87
- this.dispatchEvent(new CustomEvent('imported'))
88
- }
89
- }