@things-factory/dataset 9.0.0-beta.8 → 9.0.0-beta.80

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/dist-client/activities/activity-data-collect-edit.d.ts +8 -1
  2. package/dist-client/activities/activity-data-collect-edit.js +76 -25
  3. package/dist-client/activities/activity-data-collect-edit.js.map +1 -1
  4. package/dist-client/activities/activity-data-collect-view.js +24 -24
  5. package/dist-client/activities/activity-data-collect-view.js.map +1 -1
  6. package/dist-client/activities/activity-data-review-edit.d.ts +2 -0
  7. package/dist-client/activities/activity-data-review-edit.js +111 -90
  8. package/dist-client/activities/activity-data-review-edit.js.map +1 -1
  9. package/dist-client/activities/activity-data-review-view.d.ts +2 -0
  10. package/dist-client/activities/activity-data-review-view.js +111 -88
  11. package/dist-client/activities/activity-data-review-view.js.map +1 -1
  12. package/dist-client/activities/activity-ooc-resolve-edit.js +73 -66
  13. package/dist-client/activities/activity-ooc-resolve-edit.js.map +1 -1
  14. package/dist-client/activities/activity-ooc-resolve-view.js +49 -41
  15. package/dist-client/activities/activity-ooc-resolve-view.js.map +1 -1
  16. package/dist-client/activities/activity-ooc-review-edit.d.ts +1 -0
  17. package/dist-client/activities/activity-ooc-review-edit.js +93 -72
  18. package/dist-client/activities/activity-ooc-review-edit.js.map +1 -1
  19. package/dist-client/activities/activity-ooc-review-view.js +45 -39
  20. package/dist-client/activities/activity-ooc-review-view.js.map +1 -1
  21. package/dist-client/components/checklist-entry-form.d.ts +21 -0
  22. package/dist-client/components/checklist-entry-form.js +107 -0
  23. package/dist-client/components/checklist-entry-form.js.map +1 -0
  24. package/dist-client/components/data-entry-form.d.ts +3 -2
  25. package/dist-client/components/data-entry-form.js +29 -30
  26. package/dist-client/components/data-entry-form.js.map +1 -1
  27. package/dist-client/pages/data-archive/data-archive-list-page.js +35 -34
  28. package/dist-client/pages/data-archive/data-archive-list-page.js.map +1 -1
  29. package/dist-client/pages/data-archive/data-archive-request-popup.js +17 -17
  30. package/dist-client/pages/data-archive/data-archive-request-popup.js.map +1 -1
  31. package/dist-client/pages/data-entry/data-entry-list-page.d.ts +1 -0
  32. package/dist-client/pages/data-entry/data-entry-list-page.js +42 -34
  33. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  34. package/dist-client/pages/data-key-set/data-key-item-list.js +15 -15
  35. package/dist-client/pages/data-key-set/data-key-item-list.js.map +1 -1
  36. package/dist-client/pages/data-key-set/data-key-set-importer.js +16 -17
  37. package/dist-client/pages/data-key-set/data-key-set-importer.js.map +1 -1
  38. package/dist-client/pages/data-key-set/data-key-set-list-page.js +24 -25
  39. package/dist-client/pages/data-key-set/data-key-set-list-page.js.map +1 -1
  40. package/dist-client/pages/data-ooc/data-ooc-list-page.js +40 -39
  41. package/dist-client/pages/data-ooc/data-ooc-list-page.js.map +1 -1
  42. package/dist-client/pages/data-ooc/data-ooc-page.js +21 -18
  43. package/dist-client/pages/data-ooc/data-ooc-page.js.map +1 -1
  44. package/dist-client/pages/data-ooc/data-ooc-view.js +39 -37
  45. package/dist-client/pages/data-ooc/data-ooc-view.js.map +1 -1
  46. package/dist-client/pages/data-ooc/data-oocs-page.js +20 -22
  47. package/dist-client/pages/data-ooc/data-oocs-page.js.map +1 -1
  48. package/dist-client/pages/data-report/data-report-embed-page.js +24 -21
  49. package/dist-client/pages/data-report/data-report-embed-page.js.map +1 -1
  50. package/dist-client/pages/data-report/data-report-list-page.js +26 -28
  51. package/dist-client/pages/data-report/data-report-list-page.js.map +1 -1
  52. package/dist-client/pages/data-report/data-report-samples-page.js +20 -22
  53. package/dist-client/pages/data-report/data-report-samples-page.js.map +1 -1
  54. package/dist-client/pages/data-report/jasper-report-oocs-page.js +24 -21
  55. package/dist-client/pages/data-report/jasper-report-oocs-page.js.map +1 -1
  56. package/dist-client/pages/data-report/jasper-report-samples-crosstab-page.js +24 -21
  57. package/dist-client/pages/data-report/jasper-report-samples-crosstab-page.js.map +1 -1
  58. package/dist-client/pages/data-report/jasper-report-samples-page.js +24 -21
  59. package/dist-client/pages/data-report/jasper-report-samples-page.js.map +1 -1
  60. package/dist-client/pages/data-sample/data-sample-list-page.js +37 -35
  61. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -1
  62. package/dist-client/pages/data-sample/data-sample-page.js +18 -18
  63. package/dist-client/pages/data-sample/data-sample-page.js.map +1 -1
  64. package/dist-client/pages/data-sample/data-sample-search-page.js +36 -35
  65. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -1
  66. package/dist-client/pages/data-sample/data-sample-view.d.ts +2 -0
  67. package/dist-client/pages/data-sample/data-sample-view.js +65 -41
  68. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -1
  69. package/dist-client/pages/data-sample/data-samples-page.js +19 -21
  70. package/dist-client/pages/data-sample/data-samples-page.js.map +1 -1
  71. package/dist-client/pages/data-sensor/data-sensor-list-page.js +47 -24
  72. package/dist-client/pages/data-sensor/data-sensor-list-page.js.map +1 -1
  73. package/dist-client/pages/data-set/data-item-list.js +24 -15
  74. package/dist-client/pages/data-set/data-item-list.js.map +1 -1
  75. package/dist-client/pages/data-set/data-set-importer.js +16 -17
  76. package/dist-client/pages/data-set/data-set-importer.js.map +1 -1
  77. package/dist-client/pages/data-set/data-set-list-page.d.ts +2 -0
  78. package/dist-client/pages/data-set/data-set-list-page.js +109 -63
  79. package/dist-client/pages/data-set/data-set-list-page.js.map +1 -1
  80. package/dist-client/pages/data-summary/data-summary-list-page.js +34 -32
  81. package/dist-client/pages/data-summary/data-summary-list-page.js.map +1 -1
  82. package/dist-client/pages/data-summary/data-summary-period-page.js +99 -83
  83. package/dist-client/pages/data-summary/data-summary-period-page.js.map +1 -1
  84. package/dist-client/pages/data-summary/data-summary-search-page.js +42 -41
  85. package/dist-client/pages/data-summary/data-summary-search-page.js.map +1 -1
  86. package/dist-client/pages/data-summary/data-summary-view.js +24 -24
  87. package/dist-client/pages/data-summary/data-summary-view.js.map +1 -1
  88. package/dist-client/tsconfig.tsbuildinfo +1 -1
  89. package/dist-server/activities/activity-data-review.js +13 -2
  90. package/dist-server/activities/activity-data-review.js.map +1 -1
  91. package/dist-server/activities/activity-ooc-resolve.js +10 -4
  92. package/dist-server/activities/activity-ooc-resolve.js.map +1 -1
  93. package/dist-server/activities/activity-ooc-review.js +8 -2
  94. package/dist-server/activities/activity-ooc-review.js.map +1 -1
  95. package/dist-server/controllers/create-data-ooc.js +10 -5
  96. package/dist-server/controllers/create-data-ooc.js.map +1 -1
  97. package/dist-server/controllers/create-data-sample.js +36 -16
  98. package/dist-server/controllers/create-data-sample.js.map +1 -1
  99. package/dist-server/controllers/data-use-case.js +6 -7
  100. package/dist-server/controllers/data-use-case.js.map +1 -1
  101. package/dist-server/controllers/finalize-data-collection.js +30 -8
  102. package/dist-server/controllers/finalize-data-collection.js.map +1 -1
  103. package/dist-server/controllers/issue-data-collection-task.js +6 -3
  104. package/dist-server/controllers/issue-data-collection-task.js.map +1 -1
  105. package/dist-server/controllers/jasper-report.js +10 -7
  106. package/dist-server/controllers/jasper-report.js.map +1 -1
  107. package/dist-server/controllers/query-data-summary-by-period.d.ts +1 -1
  108. package/dist-server/controllers/query-data-summary-by-period.js +17 -13
  109. package/dist-server/controllers/query-data-summary-by-period.js.map +1 -1
  110. package/dist-server/controllers/shiny-report.js +7 -2
  111. package/dist-server/controllers/shiny-report.js.map +1 -1
  112. package/dist-server/routes.js +18 -7
  113. package/dist-server/routes.js.map +1 -1
  114. package/dist-server/service/data-archive/data-archive-mutation.js +48 -9
  115. package/dist-server/service/data-archive/data-archive-mutation.js.map +1 -1
  116. package/dist-server/service/data-key-set/data-key-set-mutation.js +25 -7
  117. package/dist-server/service/data-key-set/data-key-set-mutation.js.map +1 -1
  118. package/dist-server/service/data-key-set/data-key-set-query.js +1 -1
  119. package/dist-server/service/data-key-set/data-key-set-query.js.map +1 -1
  120. package/dist-server/service/data-ooc/data-ooc-mutation.js +15 -4
  121. package/dist-server/service/data-ooc/data-ooc-mutation.js.map +1 -1
  122. package/dist-server/service/data-ooc/data-ooc-query.js +1 -1
  123. package/dist-server/service/data-ooc/data-ooc-query.js.map +1 -1
  124. package/dist-server/service/data-ooc/data-ooc-subscription.js +3 -4
  125. package/dist-server/service/data-ooc/data-ooc-subscription.js.map +1 -1
  126. package/dist-server/service/data-sample/data-sample-query.d.ts +1 -1
  127. package/dist-server/service/data-sample/data-sample-query.js +16 -8
  128. package/dist-server/service/data-sample/data-sample-query.js.map +1 -1
  129. package/dist-server/service/data-sensor/data-sensor-mutation.js +24 -6
  130. package/dist-server/service/data-sensor/data-sensor-mutation.js.map +1 -1
  131. package/dist-server/service/data-sensor/data-sensor-type.d.ts +4 -0
  132. package/dist-server/service/data-sensor/data-sensor-type.js +16 -0
  133. package/dist-server/service/data-sensor/data-sensor-type.js.map +1 -1
  134. package/dist-server/service/data-sensor/data-sensor.d.ts +2 -0
  135. package/dist-server/service/data-sensor/data-sensor.js +10 -0
  136. package/dist-server/service/data-sensor/data-sensor.js.map +1 -1
  137. package/dist-server/service/data-set/data-item-type.d.ts +2 -0
  138. package/dist-server/service/data-set/data-item-type.js +14 -0
  139. package/dist-server/service/data-set/data-item-type.js.map +1 -1
  140. package/dist-server/service/data-set/data-set-mutation.js +77 -18
  141. package/dist-server/service/data-set/data-set-mutation.js.map +1 -1
  142. package/dist-server/service/data-set/data-set-query.js +4 -4
  143. package/dist-server/service/data-set/data-set-query.js.map +1 -1
  144. package/dist-server/service/data-set/data-set.d.ts +1 -0
  145. package/dist-server/service/data-set/data-set.js +5 -0
  146. package/dist-server/service/data-set/data-set.js.map +1 -1
  147. package/dist-server/service/data-set-history/data-set-history-query.js +1 -1
  148. package/dist-server/service/data-set-history/data-set-history-query.js.map +1 -1
  149. package/dist-server/service/data-spec/data-spec-manager.js +1 -1
  150. package/dist-server/service/data-spec/data-spec-manager.js.map +1 -1
  151. package/dist-server/service/data-summary/data-summary-query.d.ts +1 -1
  152. package/dist-server/service/data-summary/data-summary-query.js +4 -6
  153. package/dist-server/service/data-summary/data-summary-query.js.map +1 -1
  154. package/dist-server/tsconfig.tsbuildinfo +1 -1
  155. package/package.json +13 -13
  156. package/things-factory.config.js +4 -0
  157. package/translations/en.json +3 -0
  158. package/translations/ja.json +3 -0
  159. package/translations/ko.json +3 -0
  160. package/translations/ms.json +3 -0
  161. package/translations/zh.json +3 -0
@@ -1,6 +1,7 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import '@material/web/icon/icon.js';
3
3
  import '@operato/dataset/ox-data-sample-view.js';
4
+ import '@operato/dataset/ox-checklist-sample-view.js';
4
5
  import gql from 'graphql-tag';
5
6
  import { css, html, LitElement } from 'lit';
6
7
  import { customElement, property, state } from 'lit/decorators.js';
@@ -8,15 +9,77 @@ import { client } from '@operato/graphql';
8
9
  import { i18next, localize } from '@operato/i18n';
9
10
  import { ScrollbarStyles } from '@operato/styles';
10
11
  let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next)(LitElement) {
12
+ static { this.styles = [
13
+ ScrollbarStyles,
14
+ css `
15
+ :host {
16
+ display: flex;
17
+ flex-direction: column;
18
+
19
+ background-color: var(--md-sys-color-surface);
20
+ }
21
+
22
+ div[content] {
23
+ flex: 1;
24
+ flex-direction: column;
25
+
26
+ display: flex;
27
+ overflow: auto;
28
+ }
29
+
30
+ ox-data-sample-view,
31
+ ox-checklist-sample-view {
32
+ flex: 1;
33
+ padding: var(--spacing-large);
34
+ overflow: auto;
35
+ }
36
+
37
+ label[instruction] {
38
+ display: flex;
39
+ flex-direction: column;
40
+
41
+ padding: var(--spacing-large);
42
+
43
+ h2 {
44
+ display: flex;
45
+
46
+ color: var(--title-text-color);
47
+ text-transform: capitalize;
48
+ margin: var(--title-margin);
49
+ align-items: center;
50
+ }
51
+
52
+ div {
53
+ padding: var(--spacing-large);
54
+ font: var(--input-field-font);
55
+ }
56
+
57
+ md-icon {
58
+ color: var(--status-danger-color);
59
+ }
60
+
61
+ textarea {
62
+ border: var(--input-field-border);
63
+ border-radius: var(--spacing-small);
64
+ margin: var(--spacing-medium);
65
+ padding: var(--spacing-medium);
66
+ font: var(--input-field-font);
67
+ color: var(--md-sys-color-on-surface);
68
+ background: var(--md-sys-color-surface-variant);
69
+
70
+ resize: none;
71
+ outline: none;
72
+ min-height: 200px;
73
+ }
74
+ }
75
+ `
76
+ ]; }
11
77
  render() {
12
- var _a;
13
- const instruction = (_a = this.output) === null || _a === void 0 ? void 0 : _a.instruction;
78
+ const instruction = this.output?.instruction;
14
79
  const { state } = this.activityThread || {};
15
80
  const editable = state == 'unassigned' || state == 'assigned' || state == 'started' || state == 'submitted';
16
81
  return html `
17
- <div content>
18
- <ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>
19
- </div>
82
+ <div content>${this.renderDataSample()}</div>
20
83
 
21
84
  <label instruction>
22
85
  <h2><md-icon>build_circle</md-icon>&nbsp;<span>${i18next.t('label.corrective instruction')}</span></h2>
@@ -33,7 +96,7 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
33
96
  `;
34
97
  }
35
98
  onChangeInstruction(e) {
36
- this.output || (this.output = {});
99
+ this.output ||= {};
37
100
  this.output.instruction = e.target.value;
38
101
  this.dispatchEvent(new CustomEvent('change', {
39
102
  detail: this.output
@@ -45,8 +108,7 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
45
108
  }
46
109
  }
47
110
  async fetchDataOoc() {
48
- var _a;
49
- const id = (_a = this.input) === null || _a === void 0 ? void 0 : _a.dataOocId;
111
+ const id = this.input?.dataOocId;
50
112
  if (id) {
51
113
  const response = await client.query({
52
114
  query: gql `
@@ -62,6 +124,12 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
62
124
  useCase
63
125
  data
64
126
  judgment
127
+ dataSet {
128
+ id
129
+ name
130
+ monitorType
131
+ monitorView
132
+ }
65
133
  dataItems {
66
134
  name
67
135
  description
@@ -69,6 +137,7 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
69
137
  hidden
70
138
  tag
71
139
  group
140
+ subgroup
72
141
  type
73
142
  unit
74
143
  options
@@ -89,71 +158,23 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
89
158
  this.dataOoc = response.data.dataOoc;
90
159
  }
91
160
  }
92
- };
93
- OocReviewActivityEdit.styles = [
94
- ScrollbarStyles,
95
- css `
96
- :host {
97
- display: flex;
98
- flex-direction: column;
99
-
100
- background-color: var(--md-sys-color-surface);
101
- }
102
-
103
- div[content] {
104
- flex: 1;
105
- flex-direction: column;
106
-
107
- display: flex;
108
- overflow: auto;
109
- }
110
-
111
- ox-data-sample-view {
112
- flex: 1;
113
- padding: var(--spacing-large);
114
- overflow: auto;
115
- }
116
-
117
- label[instruction] {
118
- display: flex;
119
- flex-direction: column;
120
-
121
- padding: var(--spacing-large);
122
-
123
- h2 {
124
- display: flex;
125
-
126
- color: var(--title-text-color);
127
- text-transform: capitalize;
128
- margin: var(--title-margin);
129
- align-items: center;
130
- }
131
-
132
- div {
133
- padding: var(--spacing-large);
134
- font: var(--input-field-font);
135
- }
136
-
137
- md-icon {
138
- color: var(--status-danger-color);
139
- }
140
-
141
- textarea {
142
- border: var(--input-field-border);
143
- border-radius: var(--spacing-small);
144
- margin: var(--spacing-medium);
145
- padding: var(--spacing-medium);
146
- font: var(--input-field-font);
147
- color: var(--md-sys-color-on-surface);
148
- background: var(--md-sys-color-surface-variant);
149
-
150
- resize: none;
151
- outline: none;
152
- min-height: 200px;
161
+ renderDataSample() {
162
+ const dataSet = this.dataOoc?.dataSet;
163
+ const monitorType = dataSet?.monitorType;
164
+ switch (monitorType) {
165
+ case 'generated':
166
+ return html `<ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>`;
167
+ case 'checklist':
168
+ return html `<ox-checklist-sample-view .dataSample=${this.dataOoc}></ox-checklist-sample-view>`;
169
+ case 'board':
170
+ break;
171
+ case 'page':
172
+ break;
173
+ default:
174
+ return html `<ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>`;
153
175
  }
154
- }
155
- `
156
- ];
176
+ }
177
+ };
157
178
  __decorate([
158
179
  property({ type: Object }),
159
180
  __metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":"activity-ooc-review-edit.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-review-edit.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/dataset/ox-data-sample-view.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles } from '@operato/styles'\n\n@customElement('activity-ooc-review-edit')\nclass OocReviewActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n div[content] {\n flex: 1;\n flex-direction: column;\n\n display: flex;\n overflow: auto;\n }\n\n ox-data-sample-view {\n flex: 1;\n padding: var(--spacing-large);\n overflow: auto;\n }\n\n label[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--spacing-large);\n\n h2 {\n display: flex;\n\n color: var(--title-text-color);\n text-transform: capitalize;\n margin: var(--title-margin);\n align-items: center;\n }\n\n div {\n padding: var(--spacing-large);\n font: var(--input-field-font);\n }\n\n md-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--spacing-small);\n margin: var(--spacing-medium);\n padding: var(--spacing-medium);\n font: var(--input-field-font);\n color: var(--md-sys-color-on-surface);\n background: var(--md-sys-color-surface-variant);\n\n resize: none;\n outline: none;\n min-height: 200px;\n }\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n @property({ type: Object }) activityThread?: any\n\n @state() dataOoc?: any\n\n render() {\n const instruction = this.output?.instruction\n const { state } = this.activityThread || {}\n const editable = state == 'unassigned' || state == 'assigned' || state == 'started' || state == 'submitted'\n\n return html`\n <div content>\n <ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>\n </div>\n\n <label instruction>\n <h2><md-icon>build_circle</md-icon>&nbsp;<span>${i18next.t('label.corrective instruction')}</span></h2>\n ${editable\n ? html`\n <textarea\n placeholder=${String(i18next.t('text.corrective instruction placeholder'))}\n .value=${instruction || ''}\n @change=${this.onChangeInstruction}\n ></textarea>\n `\n : html`<div>${instruction}</div>`}\n </label>\n `\n }\n\n onChangeInstruction(e: Event) {\n this.output ||= {}\n this.output.instruction = (e.target as HTMLTextAreaElement).value\n\n this.dispatchEvent(\n new CustomEvent('change', {\n detail: this.output\n })\n )\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataOoc()\n }\n }\n\n async fetchDataOoc() {\n const id = this.input?.dataOocId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n ooc\n oos\n state\n type\n useCase\n data\n judgment\n dataItems {\n name\n description\n active\n hidden\n tag\n group\n type\n unit\n options\n quota\n spec\n stat\n }\n workDate\n workShift\n collectedAt\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n }\n}\n"]}
1
+ {"version":3,"file":"activity-ooc-review-edit.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-review-edit.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,yCAAyC,CAAA;AAChD,OAAO,8CAA8C,CAAA;AACrD,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;aACxD,WAAM,GAAG;QACd,eAAe;QACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA6DF;KACF,AAhEY,CAgEZ;IAQD,MAAM;QACJ,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAA;QAC5C,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,cAAc,IAAI,EAAE,CAAA;QAC3C,MAAM,QAAQ,GAAG,KAAK,IAAI,YAAY,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,IAAI,SAAS,IAAI,KAAK,IAAI,WAAW,CAAA;QAE3G,OAAO,IAAI,CAAA;qBACM,IAAI,CAAC,gBAAgB,EAAE;;;yDAGa,OAAO,CAAC,CAAC,CAAC,8BAA8B,CAAC;UACxF,QAAQ;YACR,CAAC,CAAC,IAAI,CAAA;;8BAEc,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC;yBACjE,WAAW,IAAI,EAAE;0BAChB,IAAI,CAAC,mBAAmB;;aAErC;YACH,CAAC,CAAC,IAAI,CAAA,QAAQ,WAAW,QAAQ;;KAEtC,CAAA;IACH,CAAC;IAED,mBAAmB,CAAC,CAAQ;QAC1B,IAAI,CAAC,MAAM,KAAK,EAAE,CAAA;QAClB,IAAI,CAAC,MAAM,CAAC,WAAW,GAAI,CAAC,CAAC,MAA8B,CAAC,KAAK,CAAA;QAEjE,IAAI,CAAC,aAAa,CAChB,IAAI,WAAW,CAAC,QAAQ,EAAE;YACxB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC,CACH,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAuCT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;QACtC,CAAC;IACH,CAAC;IAEO,gBAAgB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,CAAA;QACrC,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,CAAA;QAExC,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,WAAW;gBACd,OAAO,IAAI,CAAA,oCAAoC,IAAI,CAAC,OAAO,yBAAyB,CAAA;YACtF,KAAK,WAAW;gBACd,OAAO,IAAI,CAAA,yCAAyC,IAAI,CAAC,OAAO,8BAA8B,CAAA;YAChG,KAAK,OAAO;gBACV,MAAK;YACP,KAAK,MAAM;gBACT,MAAK;YACP;gBACE,OAAO,IAAI,CAAA,oCAAoC,IAAI,CAAC,OAAO,yBAAyB,CAAA;QACxF,CAAC;IACH,CAAC;;AApH2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACX;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AACZ;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;6DAAqB;AAEvC;IAAR,KAAK,EAAE;;sDAAc;AAvElB,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CAwL1B","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/dataset/ox-data-sample-view.js'\nimport '@operato/dataset/ox-checklist-sample-view.js'\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles } from '@operato/styles'\n\n@customElement('activity-ooc-review-edit')\nclass OocReviewActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n div[content] {\n flex: 1;\n flex-direction: column;\n\n display: flex;\n overflow: auto;\n }\n\n ox-data-sample-view,\n ox-checklist-sample-view {\n flex: 1;\n padding: var(--spacing-large);\n overflow: auto;\n }\n\n label[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--spacing-large);\n\n h2 {\n display: flex;\n\n color: var(--title-text-color);\n text-transform: capitalize;\n margin: var(--title-margin);\n align-items: center;\n }\n\n div {\n padding: var(--spacing-large);\n font: var(--input-field-font);\n }\n\n md-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--spacing-small);\n margin: var(--spacing-medium);\n padding: var(--spacing-medium);\n font: var(--input-field-font);\n color: var(--md-sys-color-on-surface);\n background: var(--md-sys-color-surface-variant);\n\n resize: none;\n outline: none;\n min-height: 200px;\n }\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n @property({ type: Object }) activityThread?: any\n\n @state() dataOoc?: any\n\n render() {\n const instruction = this.output?.instruction\n const { state } = this.activityThread || {}\n const editable = state == 'unassigned' || state == 'assigned' || state == 'started' || state == 'submitted'\n\n return html`\n <div content>${this.renderDataSample()}</div>\n\n <label instruction>\n <h2><md-icon>build_circle</md-icon>&nbsp;<span>${i18next.t('label.corrective instruction')}</span></h2>\n ${editable\n ? html`\n <textarea\n placeholder=${String(i18next.t('text.corrective instruction placeholder'))}\n .value=${instruction || ''}\n @change=${this.onChangeInstruction}\n ></textarea>\n `\n : html`<div>${instruction}</div>`}\n </label>\n `\n }\n\n onChangeInstruction(e: Event) {\n this.output ||= {}\n this.output.instruction = (e.target as HTMLTextAreaElement).value\n\n this.dispatchEvent(\n new CustomEvent('change', {\n detail: this.output\n })\n )\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataOoc()\n }\n }\n\n async fetchDataOoc() {\n const id = this.input?.dataOocId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n ooc\n oos\n state\n type\n useCase\n data\n judgment\n dataSet {\n id\n name\n monitorType\n monitorView\n }\n dataItems {\n name\n description\n active\n hidden\n tag\n group\n subgroup\n type\n unit\n options\n quota\n spec\n stat\n }\n workDate\n workShift\n collectedAt\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n }\n\n private renderDataSample() {\n const dataSet = this.dataOoc?.dataSet\n const monitorType = dataSet?.monitorType\n\n switch (monitorType) {\n case 'generated':\n return html`<ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>`\n case 'checklist':\n return html`<ox-checklist-sample-view .dataSample=${this.dataOoc}></ox-checklist-sample-view>`\n case 'board':\n break\n case 'page':\n break\n default:\n return html`<ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>`\n }\n }\n}\n"]}
@@ -7,6 +7,43 @@ import { client } from '@operato/graphql';
7
7
  import { i18next, localize } from '@operato/i18n';
8
8
  import { ScrollbarStyles } from '@operato/styles';
9
9
  let OocReviewActivityView = class OocReviewActivityView extends localize(i18next)(LitElement) {
10
+ static { this.styles = [
11
+ ScrollbarStyles,
12
+ css `
13
+ :host {
14
+ display: flex;
15
+ flex-direction: column;
16
+
17
+ background-color: var(--md-sys-color-surface);
18
+ }
19
+
20
+ div[content] {
21
+ flex: 1;
22
+ flex-direction: column;
23
+
24
+ display: flex;
25
+ overflow: auto;
26
+ }
27
+
28
+ ox-data-ooc-brief-view {
29
+ flex: 1;
30
+ padding: var(--spacing-large);
31
+ overflow: auto;
32
+ }
33
+
34
+ @media print {
35
+ :host {
36
+ display: block;
37
+ overflow: visible;
38
+ }
39
+
40
+ div[content] {
41
+ display: block;
42
+ overflow: visible;
43
+ }
44
+ }
45
+ `
46
+ ]; }
10
47
  render() {
11
48
  return html `
12
49
  <div content>
@@ -20,8 +57,7 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
20
57
  }
21
58
  }
22
59
  async fetchDataOoc() {
23
- var _a;
24
- const id = (_a = this.input) === null || _a === void 0 ? void 0 : _a.dataOocId;
60
+ const id = this.input?.dataOocId;
25
61
  if (id) {
26
62
  const response = await client.query({
27
63
  query: gql `
@@ -40,6 +76,12 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
40
76
  history
41
77
  correctiveAction
42
78
  correctiveInstruction
79
+ dataSet {
80
+ id
81
+ name
82
+ monitorType
83
+ monitorView
84
+ }
43
85
  dataItems {
44
86
  name
45
87
  description
@@ -47,6 +89,7 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
47
89
  hidden
48
90
  tag
49
91
  group
92
+ subgroup
50
93
  type
51
94
  unit
52
95
  options
@@ -78,43 +121,6 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
78
121
  }
79
122
  }
80
123
  };
81
- OocReviewActivityView.styles = [
82
- ScrollbarStyles,
83
- css `
84
- :host {
85
- display: flex;
86
- flex-direction: column;
87
-
88
- background-color: var(--md-sys-color-surface);
89
- }
90
-
91
- div[content] {
92
- flex: 1;
93
- flex-direction: column;
94
-
95
- display: flex;
96
- overflow: auto;
97
- }
98
-
99
- ox-data-ooc-brief-view {
100
- flex: 1;
101
- padding: var(--spacing-large);
102
- overflow: auto;
103
- }
104
-
105
- @media print {
106
- :host {
107
- display: block;
108
- overflow: visible;
109
- }
110
-
111
- div[content] {
112
- display: block;
113
- overflow: visible;
114
- }
115
- }
116
- `
117
- ];
118
124
  __decorate([
119
125
  property({ type: Object }),
120
126
  __metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":"activity-ooc-review-view.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-review-view.ts"],"names":[],"mappings":";AAAA,OAAO,4CAA4C,CAAA;AAEnD,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA4C/D,MAAM;QACJ,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;KAElD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,EAAE,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA6CT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;QACtC,CAAC;IACH,CAAC;;AAnHM,4BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiCF;CACF,AApCY,CAoCZ;AAE2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACX;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAE/B;IAAR,KAAK,EAAE;;sDAAc;AA1ClB,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CAqH1B","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles } from '@operato/styles'\n\n@customElement('activity-ooc-review-view')\nclass OocReviewActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n div[content] {\n flex: 1;\n flex-direction: column;\n\n display: flex;\n overflow: auto;\n }\n\n ox-data-ooc-brief-view {\n flex: 1;\n padding: var(--spacing-large);\n overflow: auto;\n }\n\n @media print {\n :host {\n display: block;\n overflow: visible;\n }\n\n div[content] {\n display: block;\n overflow: visible;\n }\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n render() {\n return html`\n <div content>\n <ox-data-ooc-brief-view .dataOoc=${this.dataOoc}></ox-data-ooc-brief-view>\n </div>\n `\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataOoc()\n }\n }\n\n async fetchDataOoc() {\n const id = this.input?.dataOocId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n ooc\n oos\n state\n type\n useCase\n data\n judgment\n history\n correctiveAction\n correctiveInstruction\n dataItems {\n name\n description\n active\n hidden\n tag\n group\n type\n unit\n options\n quota\n spec\n stat\n }\n workDate\n workShift\n reviewer {\n id\n name\n }\n corrector {\n id\n name\n }\n collectedAt\n reviewedAt\n correctedAt\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n }\n}\n"]}
1
+ {"version":3,"file":"activity-ooc-review-view.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-review-view.ts"],"names":[],"mappings":";AAAA,OAAO,4CAA4C,CAAA;AAEnD,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAS,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;aACxD,WAAM,GAAG;QACd,eAAe;QACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiCF;KACF,AApCY,CAoCZ;IAOD,MAAM;QACJ,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;KAElD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,EAAE,CAAA;QACrB,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAoDT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;QACtC,CAAC;IACH,CAAC;;AApF2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACX;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAE/B;IAAR,KAAK,EAAE;;sDAAc;AA1ClB,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CA4H1B","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles } from '@operato/styles'\n\n@customElement('activity-ooc-review-view')\nclass OocReviewActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n div[content] {\n flex: 1;\n flex-direction: column;\n\n display: flex;\n overflow: auto;\n }\n\n ox-data-ooc-brief-view {\n flex: 1;\n padding: var(--spacing-large);\n overflow: auto;\n }\n\n @media print {\n :host {\n display: block;\n overflow: visible;\n }\n\n div[content] {\n display: block;\n overflow: visible;\n }\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n render() {\n return html`\n <div content>\n <ox-data-ooc-brief-view .dataOoc=${this.dataOoc}></ox-data-ooc-brief-view>\n </div>\n `\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataOoc()\n }\n }\n\n async fetchDataOoc() {\n const id = this.input?.dataOocId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n ooc\n oos\n state\n type\n useCase\n data\n judgment\n history\n correctiveAction\n correctiveInstruction\n dataSet {\n id\n name\n monitorType\n monitorView\n }\n dataItems {\n name\n description\n active\n hidden\n tag\n group\n subgroup\n type\n unit\n options\n quota\n spec\n stat\n }\n workDate\n workShift\n reviewer {\n id\n name\n }\n corrector {\n id\n name\n }\n collectedAt\n reviewedAt\n correctedAt\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n }\n}\n"]}
@@ -0,0 +1,21 @@
1
+ import '@material/web/icon/icon.js';
2
+ import '@operato/dataset/ox-checklist-entry-form.js';
3
+ import { LitElement } from 'lit';
4
+ import { DataSet } from '@operato/dataset';
5
+ import { OxChecklistEntryForm } from '@operato/dataset/ox-checklist-entry-form.js';
6
+ declare const ChecklistEntryForm_base: (new (...args: any[]) => LitElement) & typeof LitElement;
7
+ export declare class ChecklistEntryForm extends ChecklistEntryForm_base {
8
+ static styles: import("lit").CSSResult[];
9
+ dataSet?: DataSet & {
10
+ id: string;
11
+ entryType?: string;
12
+ };
13
+ dataSample?: {
14
+ id: string;
15
+ collectedAt: Date;
16
+ };
17
+ entryForm?: OxChecklistEntryForm;
18
+ render(): import("lit-html").TemplateResult<1>;
19
+ private updateDataItems;
20
+ }
21
+ export {};
@@ -0,0 +1,107 @@
1
+ import { __decorate, __metadata } from "tslib";
2
+ import '@material/web/icon/icon.js';
3
+ import '@operato/dataset/ox-checklist-entry-form.js';
4
+ import gql from 'graphql-tag';
5
+ import { css, html, LitElement } from 'lit';
6
+ import { customElement, property, query, state } from 'lit/decorators.js';
7
+ import { client } from '@operato/graphql';
8
+ import { i18next, localize } from '@operato/i18n';
9
+ import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles';
10
+ import { OxChecklistEntryForm } from '@operato/dataset/ox-checklist-entry-form.js';
11
+ let ChecklistEntryForm = class ChecklistEntryForm extends localize(i18next)(LitElement) {
12
+ static { this.styles = [
13
+ CommonHeaderStyles,
14
+ ScrollbarStyles,
15
+ css `
16
+ :host {
17
+ display: flex;
18
+ flex-direction: column;
19
+
20
+ background-color: var(--md-sys-color-surface);
21
+ }
22
+
23
+ ox-checklist-entry-form {
24
+ flex: 1;
25
+ padding: 10px;
26
+ overflow: auto;
27
+ }
28
+
29
+ .footer span {
30
+ font-size: 0.8em;
31
+ color: var(--md-sys-color-on-surface);
32
+ line-height: 1.5;
33
+ padding: 10px;
34
+ }
35
+ `
36
+ ]; }
37
+ render() {
38
+ return html `
39
+ <ox-checklist-entry-form .dataSet=${this.dataSet}></ox-checklist-entry-form>
40
+
41
+ <div class="footer">
42
+ <div filler></div>
43
+ ${!this.dataSample
44
+ ? html `
45
+ <button @click=${this.updateDataItems.bind(this)} done>
46
+ <md-icon>save</md-icon>${i18next.t('button.save')}
47
+ </button>
48
+ `
49
+ : html ` <span>${i18next.t('field.collected-at')}: ${this.dataSample.collectedAt.toLocaleString()}</span> `}
50
+ </div>
51
+ `;
52
+ }
53
+ async updateDataItems() {
54
+ //@ts-ignore TODO replace with following line and confirm
55
+ const data = this.entryForm.buildValue();
56
+ const dataSample = {
57
+ dataSet: {
58
+ id: this.dataSet?.id
59
+ },
60
+ data
61
+ };
62
+ if (this.dataSample?.collectedAt) {
63
+ dataSample.collectedAt = this.dataSample.collectedAt;
64
+ }
65
+ const response = await client.mutate({
66
+ mutation: gql `
67
+ mutation ($dataSample: NewDataSample!) {
68
+ createDataSample(dataSample: $dataSample) {
69
+ id
70
+ collectedAt
71
+ }
72
+ }
73
+ `,
74
+ variables: {
75
+ dataSample
76
+ },
77
+ context: {
78
+ hasUpload: true
79
+ }
80
+ });
81
+ if (!response.errors) {
82
+ const { id, collectedAt } = response.data.createDataSample;
83
+ this.dataSample = {
84
+ id,
85
+ collectedAt: new Date(collectedAt)
86
+ };
87
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.data sample created successfully') } }));
88
+ }
89
+ }
90
+ };
91
+ __decorate([
92
+ property({ type: Object }),
93
+ __metadata("design:type", Object)
94
+ ], ChecklistEntryForm.prototype, "dataSet", void 0);
95
+ __decorate([
96
+ state(),
97
+ __metadata("design:type", Object)
98
+ ], ChecklistEntryForm.prototype, "dataSample", void 0);
99
+ __decorate([
100
+ query('ox-checklist-entry-form'),
101
+ __metadata("design:type", OxChecklistEntryForm)
102
+ ], ChecklistEntryForm.prototype, "entryForm", void 0);
103
+ ChecklistEntryForm = __decorate([
104
+ customElement('checklist-entry-form')
105
+ ], ChecklistEntryForm);
106
+ export { ChecklistEntryForm };
107
+ //# sourceMappingURL=checklist-entry-form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checklist-entry-form.js","sourceRoot":"","sources":["../../client/components/checklist-entry-form.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,6CAA6C,CAAA;AAEpD,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAErE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAG3E,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;aAC5D,WAAM,GAAG;QACd,kBAAkB;QAClB,eAAe;QACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;KAoBF;KACF,AAxBY,CAwBZ;IAQD,MAAM;QACJ,OAAO,IAAI,CAAA;0CAC2B,IAAI,CAAC,OAAO;;;;UAI5C,CAAC,IAAI,CAAC,UAAU;YAChB,CAAC,CAAC,IAAI,CAAA;+BACe,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;yCACrB,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;;aAEpD;YACH,CAAC,CAAC,IAAI,CAAA,UAAU,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,UAAU;;KAE/G,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;QAC3B,yDAAyD;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAA;QAExC,MAAM,UAAU,GAAG;YACjB,OAAO,EAAE;gBACP,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE;aACrB;YACD,IAAI;SACE,CAAA;QAER,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC;YACjC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;YACnC,QAAQ,EAAE,GAAG,CAAA;;;;;;;OAOZ;YACD,SAAS,EAAE;gBACT,UAAU;aACX;YACD,OAAO,EAAE;gBACP,SAAS,EAAE,IAAI;aAChB;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAA;YAC1D,IAAI,CAAC,UAAU,GAAG;gBAChB,EAAE;gBACF,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;aACnC,CAAA;YAED,QAAQ,CAAC,aAAa,CACpB,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,uCAAuC,CAAC,EAAE,EAAE,CAAC,CACvG,CAAA;QACH,CAAC;IACH,CAAC;;AAlE2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;mDAAuD;AAEzE;IAAR,KAAK,EAAE;;sDAA+C;AAErB;IAAjC,KAAK,CAAC,yBAAyB,CAAC;8BAAa,oBAAoB;qDAAA;AA/BvD,kBAAkB;IAD9B,aAAa,CAAC,sBAAsB,CAAC;GACzB,kBAAkB,CA8F9B","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/dataset/ox-checklist-entry-form.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'\nimport { DataSet } from '@operato/dataset'\nimport { OxChecklistEntryForm } from '@operato/dataset/ox-checklist-entry-form.js'\n\n@customElement('checklist-entry-form')\nexport class ChecklistEntryForm extends localize(i18next)(LitElement) {\n static styles = [\n CommonHeaderStyles,\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n ox-checklist-entry-form {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n\n .footer span {\n font-size: 0.8em;\n color: var(--md-sys-color-on-surface);\n line-height: 1.5;\n padding: 10px;\n }\n `\n ]\n\n @property({ type: Object }) dataSet?: DataSet & { id: string; entryType?: string }\n\n @state() dataSample?: { id: string; collectedAt: Date }\n\n @query('ox-checklist-entry-form') entryForm?: OxChecklistEntryForm\n\n render() {\n return html`\n <ox-checklist-entry-form .dataSet=${this.dataSet}></ox-checklist-entry-form>\n\n <div class=\"footer\">\n <div filler></div>\n ${!this.dataSample\n ? html`\n <button @click=${this.updateDataItems.bind(this)} done>\n <md-icon>save</md-icon>${i18next.t('button.save')}\n </button>\n `\n : html` <span>${i18next.t('field.collected-at')}: ${this.dataSample.collectedAt.toLocaleString()}</span> `}\n </div>\n `\n }\n\n private async updateDataItems() {\n //@ts-ignore TODO replace with following line and confirm\n const data = this.entryForm.buildValue()\n\n const dataSample = {\n dataSet: {\n id: this.dataSet?.id\n },\n data\n } as any\n\n if (this.dataSample?.collectedAt) {\n dataSample.collectedAt = this.dataSample.collectedAt\n }\n\n const response = await client.mutate({\n mutation: gql`\n mutation ($dataSample: NewDataSample!) {\n createDataSample(dataSample: $dataSample) {\n id\n collectedAt\n }\n }\n `,\n variables: {\n dataSample\n },\n context: {\n hasUpload: true\n }\n })\n\n if (!response.errors) {\n const { id, collectedAt } = response.data.createDataSample\n this.dataSample = {\n id,\n collectedAt: new Date(collectedAt)\n }\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.data sample created successfully') } })\n )\n }\n }\n}\n"]}
@@ -1,19 +1,20 @@
1
1
  import '@material/web/icon/icon.js';
2
2
  import '@operato/dataset/ox-data-entry-form.js';
3
3
  import { LitElement } from 'lit';
4
- import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js';
5
4
  import { DataSet } from '@operato/dataset';
5
+ import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js';
6
6
  declare const DataEntryForm_base: (new (...args: any[]) => LitElement) & typeof LitElement;
7
7
  export declare class DataEntryForm extends DataEntryForm_base {
8
8
  static styles: import("lit").CSSResult[];
9
9
  dataSet?: DataSet & {
10
10
  id: string;
11
+ entryType?: string;
11
12
  };
12
13
  dataSample?: {
13
14
  id: string;
14
15
  collectedAt: Date;
15
16
  };
16
- entryForm: OxDataEntryForm;
17
+ dataEntryForm?: OxDataEntryForm;
17
18
  render(): import("lit-html").TemplateResult<1>;
18
19
  private updateDataItems;
19
20
  }
@@ -9,6 +9,31 @@ import { i18next, localize } from '@operato/i18n';
9
9
  import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles';
10
10
  import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js';
11
11
  let DataEntryForm = class DataEntryForm extends localize(i18next)(LitElement) {
12
+ static { this.styles = [
13
+ CommonHeaderStyles,
14
+ ScrollbarStyles,
15
+ css `
16
+ :host {
17
+ display: flex;
18
+ flex-direction: column;
19
+
20
+ background-color: var(--md-sys-color-surface);
21
+ }
22
+
23
+ ox-data-entry-form {
24
+ flex: 1;
25
+ padding: 10px;
26
+ overflow: auto;
27
+ }
28
+
29
+ .footer span {
30
+ font-size: 0.8em;
31
+ color: var(--md-sys-color-on-surface);
32
+ line-height: 1.5;
33
+ padding: 10px;
34
+ }
35
+ `
36
+ ]; }
12
37
  render() {
13
38
  return html `
14
39
  <ox-data-entry-form .dataSet=${this.dataSet}></ox-data-entry-form>
@@ -26,16 +51,15 @@ let DataEntryForm = class DataEntryForm extends localize(i18next)(LitElement) {
26
51
  `;
27
52
  }
28
53
  async updateDataItems() {
29
- var _a, _b;
30
54
  //@ts-ignore TODO replace with following line and confirm
31
- const data = this.entryForm.buildValue();
55
+ const data = this.dataEntryForm.buildValue();
32
56
  const dataSample = {
33
57
  dataSet: {
34
- id: (_a = this.dataSet) === null || _a === void 0 ? void 0 : _a.id
58
+ id: this.dataSet?.id
35
59
  },
36
60
  data
37
61
  };
38
- if ((_b = this.dataSample) === null || _b === void 0 ? void 0 : _b.collectedAt) {
62
+ if (this.dataSample?.collectedAt) {
39
63
  dataSample.collectedAt = this.dataSample.collectedAt;
40
64
  }
41
65
  const response = await client.mutate({
@@ -64,31 +88,6 @@ let DataEntryForm = class DataEntryForm extends localize(i18next)(LitElement) {
64
88
  }
65
89
  }
66
90
  };
67
- DataEntryForm.styles = [
68
- CommonHeaderStyles,
69
- ScrollbarStyles,
70
- css `
71
- :host {
72
- display: flex;
73
- flex-direction: column;
74
-
75
- background-color: var(--md-sys-color-surface);
76
- }
77
-
78
- ox-data-entry-form {
79
- flex: 1;
80
- padding: 10px;
81
- overflow: auto;
82
- }
83
-
84
- .footer span {
85
- font-size: 0.8em;
86
- color: var(--md-sys-color-on-surface);
87
- line-height: 1.5;
88
- padding: 10px;
89
- }
90
- `
91
- ];
92
91
  __decorate([
93
92
  property({ type: Object }),
94
93
  __metadata("design:type", Object)
@@ -100,7 +99,7 @@ __decorate([
100
99
  __decorate([
101
100
  query('ox-data-entry-form'),
102
101
  __metadata("design:type", OxDataEntryForm)
103
- ], DataEntryForm.prototype, "entryForm", void 0);
102
+ ], DataEntryForm.prototype, "dataEntryForm", void 0);
104
103
  DataEntryForm = __decorate([
105
104
  customElement('data-entry-form')
106
105
  ], DataEntryForm);