@things-factory/dataset 6.2.62 → 6.2.64

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 (65) hide show
  1. package/client/activities/activity-data-collect-edit.ts +2 -0
  2. package/client/activities/activity-data-collect-view.ts +2 -0
  3. package/client/activities/activity-ooc-resolve-edit.ts +2 -0
  4. package/client/activities/activity-ooc-resolve-view.ts +2 -0
  5. package/client/activities/activity-ooc-review-edit.ts +2 -0
  6. package/client/activities/activity-ooc-review-view.ts +2 -0
  7. package/client/pages/data-archive/data-archive-list-page.ts +15 -40
  8. package/client/pages/data-entry/data-entry-list-page.ts +2 -0
  9. package/client/pages/data-key-set/data-key-item-list.ts +1 -1
  10. package/client/pages/data-key-set/data-key-set-list-page.ts +20 -40
  11. package/client/pages/data-ooc/data-ooc-list-page.ts +10 -13
  12. package/client/pages/data-ooc/data-ooc-view-page.ts +5 -1
  13. package/client/pages/data-report/data-report-list-page.ts +22 -24
  14. package/client/pages/data-sample/data-sample-list-page.ts +13 -37
  15. package/client/pages/data-sample/data-sample-search-page.ts +13 -37
  16. package/client/pages/data-sample/data-sample-view.ts +7 -2
  17. package/client/pages/data-sensor/data-sensor-list-page.ts +6 -13
  18. package/client/pages/data-set/data-item-list.ts +0 -12
  19. package/client/pages/data-set/data-set-list-page.ts +30 -41
  20. package/dist-client/activities/activity-data-collect-edit.js +2 -0
  21. package/dist-client/activities/activity-data-collect-edit.js.map +1 -1
  22. package/dist-client/activities/activity-data-collect-view.js +2 -0
  23. package/dist-client/activities/activity-data-collect-view.js.map +1 -1
  24. package/dist-client/activities/activity-ooc-resolve-edit.js +2 -0
  25. package/dist-client/activities/activity-ooc-resolve-edit.js.map +1 -1
  26. package/dist-client/activities/activity-ooc-resolve-view.js +2 -0
  27. package/dist-client/activities/activity-ooc-resolve-view.js.map +1 -1
  28. package/dist-client/activities/activity-ooc-review-edit.js +2 -0
  29. package/dist-client/activities/activity-ooc-review-edit.js.map +1 -1
  30. package/dist-client/activities/activity-ooc-review-view.js +2 -0
  31. package/dist-client/activities/activity-ooc-review-view.js.map +1 -1
  32. package/dist-client/pages/data-archive/data-archive-list-page.d.ts +2 -7
  33. package/dist-client/pages/data-archive/data-archive-list-page.js +18 -33
  34. package/dist-client/pages/data-archive/data-archive-list-page.js.map +1 -1
  35. package/dist-client/pages/data-entry/data-entry-list-page.js +2 -0
  36. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  37. package/dist-client/pages/data-key-set/data-key-item-list.js.map +1 -1
  38. package/dist-client/pages/data-key-set/data-key-set-list-page.d.ts +3 -8
  39. package/dist-client/pages/data-key-set/data-key-set-list-page.js +27 -33
  40. package/dist-client/pages/data-key-set/data-key-set-list-page.js.map +1 -1
  41. package/dist-client/pages/data-ooc/data-ooc-list-page.js +9 -2
  42. package/dist-client/pages/data-ooc/data-ooc-list-page.js.map +1 -1
  43. package/dist-client/pages/data-ooc/data-ooc-view-page.js +5 -1
  44. package/dist-client/pages/data-ooc/data-ooc-view-page.js.map +1 -1
  45. package/dist-client/pages/data-report/data-report-list-page.d.ts +3 -2
  46. package/dist-client/pages/data-report/data-report-list-page.js +20 -26
  47. package/dist-client/pages/data-report/data-report-list-page.js.map +1 -1
  48. package/dist-client/pages/data-sample/data-sample-list-page.d.ts +2 -1
  49. package/dist-client/pages/data-sample/data-sample-list-page.js +12 -31
  50. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -1
  51. package/dist-client/pages/data-sample/data-sample-search-page.d.ts +2 -1
  52. package/dist-client/pages/data-sample/data-sample-search-page.js +12 -31
  53. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -1
  54. package/dist-client/pages/data-sample/data-sample-view.js +7 -2
  55. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -1
  56. package/dist-client/pages/data-sensor/data-sensor-list-page.d.ts +2 -14
  57. package/dist-client/pages/data-sensor/data-sensor-list-page.js +11 -9
  58. package/dist-client/pages/data-sensor/data-sensor-list-page.js.map +1 -1
  59. package/dist-client/pages/data-set/data-item-list.js +0 -12
  60. package/dist-client/pages/data-set/data-item-list.js.map +1 -1
  61. package/dist-client/pages/data-set/data-set-list-page.d.ts +7 -12
  62. package/dist-client/pages/data-set/data-set-list-page.js +34 -36
  63. package/dist-client/pages/data-set/data-set-list-page.js.map +1 -1
  64. package/dist-client/tsconfig.tsbuildinfo +1 -1
  65. package/package.json +5 -5
@@ -1,4 +1,5 @@
1
1
  import '@operato/data-grist'
2
+ import '@operato/context/ox-context-page-toolbar.js'
2
3
  import './data-sample-view.js'
3
4
 
4
5
  import gql from 'graphql-tag'
@@ -7,28 +8,19 @@ import { customElement, property, query, state } from 'lit/decorators.js'
7
8
  import { connect } from 'pwa-helpers/connect-mixin'
8
9
  import moment from 'moment-timezone'
9
10
 
10
- import {
11
- getEditor,
12
- getRenderer,
13
- ColumnConfig,
14
- DataGrist,
15
- FetchOption,
16
- SortersControl,
17
- GristRecord
18
- } from '@operato/data-grist'
11
+ import { DataGrist, FetchOption, GristRecord } from '@operato/data-grist'
19
12
  import { client } from '@operato/graphql'
20
13
  import { i18next, localize } from '@operato/i18n'
21
14
  import { openPopup } from '@operato/layout'
22
15
  import { PageView, store } from '@operato/shell'
23
- import { CommonGristStyles, ScrollbarStyles } from '@operato/styles'
16
+ import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
24
17
  import { isMobileDevice } from '@operato/utils'
25
- import { OxPopup } from '@operato/popup'
26
18
 
27
19
  @customElement('data-sample-search-page')
28
20
  export class DataSampleSearchPage extends connect(store)(localize(i18next)(PageView)) {
29
21
  static styles = [
30
22
  ScrollbarStyles,
31
- CommonGristStyles,
23
+ CommonHeaderStyles,
32
24
  css`
33
25
  :host {
34
26
  display: flex;
@@ -52,7 +44,6 @@ export class DataSampleSearchPage extends connect(store)(localize(i18next)(PageV
52
44
  @state() mode: 'CARD' | 'GRID' | 'LIST' = isMobileDevice() ? 'CARD' : 'GRID'
53
45
 
54
46
  @query('ox-grist') private grist!: DataGrist
55
- @query('#sorter-control') private sortersControl!: OxPopup
56
47
 
57
48
  get context() {
58
49
  return {
@@ -73,7 +64,8 @@ export class DataSampleSearchPage extends connect(store)(localize(i18next)(PageV
73
64
  exportable: {
74
65
  name: i18next.t('title.data-sample search'),
75
66
  data: this._exportableData.bind(this)
76
- }
67
+ },
68
+ toolbar: false
77
69
  }
78
70
  }
79
71
 
@@ -82,33 +74,17 @@ export class DataSampleSearchPage extends connect(store)(localize(i18next)(PageV
82
74
 
83
75
  return html`
84
76
  <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)}>
85
- <div slot="headroom">
86
- <div id="filters">
87
- <ox-filters-form autofocus without-search></ox-filters-form>
77
+ <div slot="headroom" class="header">
78
+ <div class="title">
79
+ <mwc-icon>summarize</mwc-icon>
80
+ ${i18next.t('title.data-sample search')}
88
81
  </div>
89
82
 
90
- <div id="sorters">
91
- Sort
92
- <mwc-icon
93
- @click=${e => {
94
- const target = e.currentTarget
95
- this.sortersControl.open({
96
- right: 0,
97
- top: target.offsetTop + target.offsetHeight
98
- })
99
- }}
100
- >expand_more</mwc-icon
101
- >
102
- <ox-popup id="sorter-control">
103
- <ox-sorters-control> </ox-sorters-control>
104
- </ox-popup>
83
+ <div class="filters">
84
+ <ox-filters-form class="filter" autofocus without-search></ox-filters-form>
105
85
  </div>
106
86
 
107
- <div id="modes">
108
- <mwc-icon @click=${() => (this.mode = 'GRID')} ?active=${mode == 'GRID'}>grid_on</mwc-icon>
109
- <mwc-icon @click=${() => (this.mode = 'LIST')} ?active=${mode == 'LIST'}>format_list_bulleted</mwc-icon>
110
- <mwc-icon @click=${() => (this.mode = 'CARD')} ?active=${mode == 'CARD'}>apps</mwc-icon>
111
- </div>
87
+ <ox-context-page-toolbar class="actions" .context=${this.context}></ox-context-page-toolbar>
112
88
  </div>
113
89
  </ox-grist>
114
90
  `
@@ -84,11 +84,16 @@ class DataSampleView extends localize(i18next)(LitElement) {
84
84
  dataItems {
85
85
  name
86
86
  description
87
+ active
88
+ hidden
87
89
  tag
88
- stat
89
- unit
90
+ group
90
91
  type
92
+ unit
93
+ options
94
+ quota
91
95
  spec
96
+ stat
92
97
  }
93
98
  judgment
94
99
  workDate
@@ -11,10 +11,9 @@ import { client } from '@operato/graphql'
11
11
  import { i18next, localize } from '@operato/i18n'
12
12
  import { notify } from '@operato/layout'
13
13
  import { PageView, store } from '@operato/shell'
14
- import { CommonButtonStyles, CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
14
+ import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
15
15
  import { isMobileDevice } from '@operato/utils'
16
- import { ColumnConfig, DataGrist, FetchOption, SortersControl } from '@operato/data-grist'
17
- import { OxPopup } from '@operato/popup'
16
+ import { DataGrist, FetchOption } from '@operato/data-grist'
18
17
  import { OxPrompt } from '@operato/popup/ox-prompt.js'
19
18
 
20
19
  @customElement('data-sensor-list-page')
@@ -68,25 +67,19 @@ export class DataSensorListPage extends connect(store)(localize(i18next)(PageVie
68
67
  help: 'dataset/data-sensor',
69
68
  actions: [
70
69
  {
71
- type: 'icon',
72
- // icon: 'copy',
70
+ icon: 'content_copy',
73
71
  title: i18next.t('button.copy'),
74
- action: this._copyDataSensor.bind(this),
75
- ...CommonButtonStyles.copy
72
+ action: this._copyDataSensor.bind(this)
76
73
  },
77
74
  {
78
- type: 'icon',
79
75
  icon: 'save',
80
76
  title: i18next.t('button.save'),
81
77
  action: this._updateDataSensor.bind(this)
82
- // ...CommonButtonStyles.save
83
78
  },
84
79
  {
85
- type: 'icon',
86
- // icon: 'delete',
80
+ icon: 'delete',
87
81
  title: i18next.t('button.delete'),
88
- action: this._deleteDataSensor.bind(this),
89
- ...CommonButtonStyles.delete
82
+ action: this._deleteDataSensor.bind(this)
90
83
  }
91
84
  ],
92
85
  toolbar: false
@@ -8,18 +8,6 @@ import { i18next, localize } from '@operato/i18n'
8
8
  import { isMobileDevice } from '@operato/utils'
9
9
  import { ColumnConfig, DataGrist, FetchOption, SortersControl } from '@operato/data-grist'
10
10
 
11
- enum DataItemStatType {
12
- sum = 'sum',
13
- mean = 'mean',
14
- stddev = 'stddev',
15
- variance = 'variance',
16
- min = 'min',
17
- max = 'max',
18
- range = 'range',
19
- median = 'median',
20
- mode = 'mode'
21
- }
22
-
23
11
  const DataItemStats = ['sum', 'mean', 'stddev', 'variance', 'min', 'max', 'range', 'median', 'mode']
24
12
 
25
13
  @customElement('data-item-list')
@@ -1,4 +1,5 @@
1
1
  import '@operato/data-grist'
2
+ import '@operato/context/ox-context-page-toolbar.js'
2
3
  import './data-item-list.js'
3
4
  import './data-set-importer.js'
4
5
  import '../../components/data-entry-form.js'
@@ -15,9 +16,8 @@ import { OxDataUseCase } from '@operato/dataset'
15
16
  import { client } from '@operato/graphql'
16
17
  import { i18next, localize } from '@operato/i18n'
17
18
  import { notify, openPopup } from '@operato/layout'
18
- import { OxPopup } from '@operato/popup'
19
19
  import { PageView, store } from '@operato/shell'
20
- import { CommonButtonStyles, CommonGristStyles, ScrollbarStyles } from '@operato/styles'
20
+ import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
21
21
  import { isMobileDevice, sleep } from '@operato/utils'
22
22
 
23
23
  const MIN = 60
@@ -77,7 +77,7 @@ const USECASE_OPTIONS = () => {
77
77
  export class DataSetListPage extends connect(store)(localize(i18next)(PageView)) {
78
78
  static styles = [
79
79
  ScrollbarStyles,
80
- CommonGristStyles,
80
+ CommonHeaderStyles,
81
81
  css`
82
82
  :host {
83
83
  display: flex;
@@ -87,6 +87,11 @@ export class DataSetListPage extends connect(store)(localize(i18next)(PageView))
87
87
  --grid-record-emphasized-background-color: red;
88
88
  --grid-record-emphasized-color: yellow;
89
89
  }
90
+
91
+ ox-grist {
92
+ overflow-y: auto;
93
+ flex: 1;
94
+ }
90
95
  `
91
96
  ]
92
97
 
@@ -94,7 +99,6 @@ export class DataSetListPage extends connect(store)(localize(i18next)(PageView))
94
99
  @state() mode: 'CARD' | 'GRID' | 'LIST' = isMobileDevice() ? 'CARD' : 'GRID'
95
100
 
96
101
  @query('ox-grist') private grist!: DataGrist
97
- @query('#sorter-control') private sortersControl!: OxPopup
98
102
 
99
103
  get context() {
100
104
  return {
@@ -111,30 +115,31 @@ export class DataSetListPage extends connect(store)(localize(i18next)(PageView))
111
115
  }
112
116
  },
113
117
  help: 'dataset/data-set',
118
+ exportable: {
119
+ name: i18next.t('title.data-set list'),
120
+ data: this.exportHandler.bind(this)
121
+ },
122
+ importable: {
123
+ handler: this.importHandler.bind(this)
124
+ },
114
125
  actions: [
115
- {
116
- title: i18next.t('button.copy'),
117
- action: this._copyDataSet.bind(this),
118
- ...CommonButtonStyles.copy
119
- },
120
126
  {
121
127
  title: i18next.t('button.save'),
122
128
  action: this._updateDataSet.bind(this),
123
- ...CommonButtonStyles.save
129
+ icon: 'save'
130
+ },
131
+ {
132
+ title: i18next.t('button.copy'),
133
+ action: this._copyDataSet.bind(this),
134
+ icon: 'content_copy'
124
135
  },
125
136
  {
126
137
  title: i18next.t('button.delete'),
127
138
  action: this._deleteDataSet.bind(this),
128
- ...CommonButtonStyles.delete
139
+ icon: 'delete'
129
140
  }
130
141
  ],
131
- exportable: {
132
- name: i18next.t('title.data-set list'),
133
- data: this.exportHandler.bind(this)
134
- },
135
- importable: {
136
- handler: this.importHandler.bind(this)
137
- }
142
+ toolbar: false
138
143
  }
139
144
  }
140
145
 
@@ -148,33 +153,17 @@ export class DataSetListPage extends connect(store)(localize(i18next)(PageView))
148
153
  .fetchHandler=${this.fetchHandler.bind(this)}
149
154
  ?url-params-sensitive=${this.active}
150
155
  >
151
- <div slot="headroom">
152
- <div id="filters">
153
- <ox-filters-form autofocus without-search></ox-filters-form>
156
+ <div slot="headroom" class="header">
157
+ <div class="title">
158
+ <mwc-icon>summarize</mwc-icon>
159
+ ${i18next.t('title.data-set list')}
154
160
  </div>
155
161
 
156
- <div id="sorters">
157
- Sort
158
- <mwc-icon
159
- @click=${e => {
160
- const target = e.currentTarget
161
- this.sortersControl.open({
162
- right: 0,
163
- top: target.offsetTop + target.offsetHeight
164
- })
165
- }}
166
- >expand_more</mwc-icon
167
- >
168
- <ox-popup id="sorter-control">
169
- <ox-sorters-control> </ox-sorters-control>
170
- </ox-popup>
162
+ <div class="filters">
163
+ <ox-filters-form autofocus without-search></ox-filters-form>
171
164
  </div>
172
165
 
173
- <div id="modes">
174
- <mwc-icon @click=${() => (this.mode = 'GRID')} ?active=${mode == 'GRID'}>grid_on</mwc-icon>
175
- <mwc-icon @click=${() => (this.mode = 'LIST')} ?active=${mode == 'LIST'}>format_list_bulleted</mwc-icon>
176
- <mwc-icon @click=${() => (this.mode = 'CARD')} ?active=${mode == 'CARD'}>apps</mwc-icon>
177
- </div>
166
+ <ox-context-page-toolbar class="actions" .context=${this.context}> </ox-context-page-toolbar>
178
167
  </div>
179
168
  </ox-grist>
180
169
  `
@@ -43,6 +43,7 @@ let DataCollectActivityEdit = class DataCollectActivityEdit extends localize(i18
43
43
  name
44
44
  description
45
45
  active
46
+ hidden
46
47
  tag
47
48
  group
48
49
  type
@@ -50,6 +51,7 @@ let DataCollectActivityEdit = class DataCollectActivityEdit extends localize(i18
50
51
  options
51
52
  quota
52
53
  spec
54
+ stat
53
55
  }
54
56
  }
55
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"activity-data-collect-edit.js","sourceRoot":"","sources":["../../client/activities/activity-data-collect-edit.ts"],"names":[],"mappings":";AAAA,OAAO,wCAAwC,CAAA;AAE/C,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAIjE,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA0BxE,MAAM;QACJ,OAAO,IAAI,CAAA;;mBAEI,IAAI,CAAC,OAAO;iBACd,IAAI,CAAC,MAAM;kBACV,IAAI,CAAC,gBAAgB;;KAElC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAElC,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;SAqBT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AArFM,8BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;KAaF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDAAa;AAExC;IAAC,KAAK,EAAE;;wDAAmC;AAE3C;IAAC,KAAK,CAAC,oBAAoB,CAAC;8BAAa,eAAe;0DAAA;AAxB7C,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAuFnC;SAvFY,uBAAuB","sourcesContent":["import '@operato/dataset/ox-data-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 { ScrollbarStyles } from '@operato/styles'\nimport { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js'\nimport { DataSet } from '@operato/dataset'\n\n@customElement('activity-data-collect-edit')\nexport class DataCollectActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\n }\n\n ox-data-entry-form {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataSet?: DataSet & { id: string }\n\n @query('ox-data-entry-form') entryForm!: OxDataEntryForm\n\n render() {\n return html`\n <ox-data-entry-form\n .dataSet=${this.dataSet}\n .value=${this.output}\n @change=${this._updateDataItems}\n ></ox-data-entry-form>\n `\n }\n\n async _updateDataItems() {\n this.output = this.entryForm.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.fetchDataSet()\n }\n }\n\n async fetchDataSet() {\n const id = this.input.dataSetId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataSet(id: $id) {\n id\n name\n description\n useCase\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataSet = response.data.dataSet\n }\n }\n}\n"]}
1
+ {"version":3,"file":"activity-data-collect-edit.js","sourceRoot":"","sources":["../../client/activities/activity-data-collect-edit.ts"],"names":[],"mappings":";AAAA,OAAO,wCAAwC,CAAA;AAE/C,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAIjE,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA0BxE,MAAM;QACJ,OAAO,IAAI,CAAA;;mBAEI,IAAI,CAAC,OAAO;iBACd,IAAI,CAAC,MAAM;kBACV,IAAI,CAAC,gBAAgB;;KAElC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAA;QAElC,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;SAuBT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AAvFM,8BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;KAaF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDAAa;AAExC;IAAC,KAAK,EAAE;;wDAAmC;AAE3C;IAAC,KAAK,CAAC,oBAAoB,CAAC;8BAAa,eAAe;0DAAA;AAxB7C,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAyFnC;SAzFY,uBAAuB","sourcesContent":["import '@operato/dataset/ox-data-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 { ScrollbarStyles } from '@operato/styles'\nimport { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js'\nimport { DataSet } from '@operato/dataset'\n\n@customElement('activity-data-collect-edit')\nexport class DataCollectActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\n }\n\n ox-data-entry-form {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataSet?: DataSet & { id: string }\n\n @query('ox-data-entry-form') entryForm!: OxDataEntryForm\n\n render() {\n return html`\n <ox-data-entry-form\n .dataSet=${this.dataSet}\n .value=${this.output}\n @change=${this._updateDataItems}\n ></ox-data-entry-form>\n `\n }\n\n async _updateDataItems() {\n this.output = this.entryForm.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.fetchDataSet()\n }\n }\n\n async fetchDataSet() {\n const id = this.input.dataSetId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataSet(id: $id) {\n id\n name\n description\n useCase\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 }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataSet = response.data.dataSet\n }\n }\n}\n"]}
@@ -30,6 +30,7 @@ let DataCollectActivityView = class DataCollectActivityView extends localize(i18
30
30
  name
31
31
  description
32
32
  active
33
+ hidden
33
34
  tag
34
35
  group
35
36
  type
@@ -37,6 +38,7 @@ let DataCollectActivityView = class DataCollectActivityView extends localize(i18
37
38
  options
38
39
  quota
39
40
  spec
41
+ stat
40
42
  }
41
43
  }
42
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"activity-data-collect-view.js","sourceRoot":"","sources":["../../client/activities/activity-data-collect-view.ts"],"names":[],"mappings":";AAAA,OAAO,wCAAwC,CAAA;AAE/C,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;AAI1C,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAwBxE,MAAM;QACJ,OAAO,IAAI,CAAA,iCAAiC,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,MAAM,wBAAwB,CAAA;IACxG,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;SAqBT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AAnEM,8BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;KAaF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDAAa;AAExC;IAAC,KAAK,EAAE;;wDAAmC;AAtBhC,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAqEnC;SArEY,uBAAuB","sourcesContent":["import '@operato/dataset/ox-data-entry-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'\nimport { DataSet } from '@operato/dataset'\n\n@customElement('activity-data-collect-view')\nexport class DataCollectActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\n }\n\n ox-data-entry-view {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataSet?: DataSet & { id: string }\n\n render() {\n return html` <ox-data-entry-view .dataSet=${this.dataSet} .value=${this.output}></ox-data-entry-view>`\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataSet()\n }\n }\n\n async fetchDataSet() {\n const id = this.input.dataSetId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataSet(id: $id) {\n id\n name\n description\n useCase\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataSet = response.data.dataSet\n }\n }\n}\n"]}
1
+ {"version":3,"file":"activity-data-collect-view.js","sourceRoot":"","sources":["../../client/activities/activity-data-collect-view.ts"],"names":[],"mappings":";AAAA,OAAO,wCAAwC,CAAA;AAE/C,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;AAI1C,IAAM,uBAAuB,GAA7B,MAAM,uBAAwB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAwBxE,MAAM;QACJ,OAAO,IAAI,CAAA,iCAAiC,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,MAAM,wBAAwB,CAAA;IACxG,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;SAuBT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AArEM,8BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;KAaF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;uDAAa;AAExC;IAAC,KAAK,EAAE;;wDAAmC;AAtBhC,uBAAuB;IADnC,aAAa,CAAC,4BAA4B,CAAC;GAC/B,uBAAuB,CAuEnC;SAvEY,uBAAuB","sourcesContent":["import '@operato/dataset/ox-data-entry-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'\nimport { DataSet } from '@operato/dataset'\n\n@customElement('activity-data-collect-view')\nexport class DataCollectActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\n }\n\n ox-data-entry-view {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataSet?: DataSet & { id: string }\n\n render() {\n return html` <ox-data-entry-view .dataSet=${this.dataSet} .value=${this.output}></ox-data-entry-view>`\n }\n\n updated(changes) {\n if (changes.has('input')) {\n this.fetchDataSet()\n }\n }\n\n async fetchDataSet() {\n const id = this.input.dataSetId\n\n if (id) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataSet(id: $id) {\n id\n name\n description\n useCase\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 }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataSet = response.data.dataSet\n }\n }\n}\n"]}
@@ -63,6 +63,7 @@ let OocResolveActivityEdit = class OocResolveActivityEdit extends localize(i18ne
63
63
  name
64
64
  description
65
65
  active
66
+ hidden
66
67
  tag
67
68
  group
68
69
  type
@@ -70,6 +71,7 @@ let OocResolveActivityEdit = class OocResolveActivityEdit extends localize(i18ne
70
71
  options
71
72
  quota
72
73
  spec
74
+ stat
73
75
  }
74
76
  workDate
75
77
  workShift
@@ -1 +1 @@
1
- {"version":3,"file":"activity-ooc-resolve-edit.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-resolve-edit.ts"],"names":[],"mappings":";AAAA,OAAO,yCAAyC,CAAA;AAEhD,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA8EhE,MAAM;;QACJ,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,CAAA;QAElC,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;;;;uBAKhC,MAAA,IAAI,CAAC,KAAK,0CAAE,WAAW;;;;;;;mBAO3B,MAAM,IAAI,EAAE;oBACX,IAAI,CAAC,cAAc;;;KAGlC,CAAA;IACH,CAAC;IAED,cAAc,CAAC,CAAQ;QACrB,IAAI,CAAC,MAAM,KAAX,IAAI,CAAC,MAAM,GAAK,EAAE,EAAA;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAI,CAAC,CAAC,MAA8B,CAAC,KAAK,CAAA;QAE5D,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA8BT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AAjKM,6BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiEF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAa;AAExC;IAAC,KAAK,EAAE;;uDAAc;AAEtB;IAAC,KAAK,CAAC,UAAU,CAAC;8BAAkB,mBAAmB;8DAAA;AA5EnD,sBAAsB;IAD3B,aAAa,CAAC,2BAA2B,CAAC;GACrC,sBAAsB,CAmK3B","sourcesContent":["import '@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-resolve-edit')\nclass OocResolveActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n label[action] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n label[action] div {\n display: flex;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--input-border-radius);\n padding: var(--input-field-padding);\n font: var(--input-field-font);\n }\n\n .button-container {\n display: flex;\n margin-left: auto;\n padding: var(--padding-default);\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n @query('textarea') actionTextArea!: HTMLTextAreaElement\n\n render() {\n const action = this.output?.action\n\n return html`\n <div content>\n <ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>\n </div>\n\n <div instruction>\n <div><mwc-icon>build_circle</mwc-icon> <span>corrective instruction</span></div>\n <div content>${this.input?.instruction}</div>\n </div>\n\n <label action>\n <div><mwc-icon>build_circle</mwc-icon> <span>corrective action</span></div>\n <textarea\n placeholder=\"시정 및 예방을 위한 조치 이행 사항을 입력해주세요.\"\n .value=${action || ''}\n @change=${this.onChangeAction}\n ></textarea>\n </label>\n `\n }\n\n onChangeAction(e: Event) {\n this.output ||= {}\n this.output.action = (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 tag\n group\n type\n unit\n options\n quota\n spec\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-resolve-edit.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-resolve-edit.ts"],"names":[],"mappings":";AAAA,OAAO,yCAAyC,CAAA;AAEhD,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA8EhE,MAAM;;QACJ,MAAM,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,MAAM,CAAA;QAElC,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;;;;uBAKhC,MAAA,IAAI,CAAC,KAAK,0CAAE,WAAW;;;;;;;mBAO3B,MAAM,IAAI,EAAE;oBACX,IAAI,CAAC,cAAc;;;KAGlC,CAAA;IACH,CAAC;IAED,cAAc,CAAC,CAAQ;QACrB,IAAI,CAAC,MAAM,KAAX,IAAI,CAAC,MAAM,GAAK,EAAE,EAAA;QAClB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAI,CAAC,CAAC,MAA8B,CAAC,KAAK,CAAA;QAE5D,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAgCT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AAnKM,6BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiEF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAa;AAExC;IAAC,KAAK,EAAE;;uDAAc;AAEtB;IAAC,KAAK,CAAC,UAAU,CAAC;8BAAkB,mBAAmB;8DAAA;AA5EnD,sBAAsB;IAD3B,aAAa,CAAC,2BAA2B,CAAC;GACrC,sBAAsB,CAqK3B","sourcesContent":["import '@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-resolve-edit')\nclass OocResolveActivityEdit extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n label[action] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n label[action] div {\n display: flex;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--input-border-radius);\n padding: var(--input-field-padding);\n font: var(--input-field-font);\n }\n\n .button-container {\n display: flex;\n margin-left: auto;\n padding: var(--padding-default);\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n @query('textarea') actionTextArea!: HTMLTextAreaElement\n\n render() {\n const action = this.output?.action\n\n return html`\n <div content>\n <ox-data-sample-view .dataSample=${this.dataOoc}></ox-data-sample-view>\n </div>\n\n <div instruction>\n <div><mwc-icon>build_circle</mwc-icon> <span>corrective instruction</span></div>\n <div content>${this.input?.instruction}</div>\n </div>\n\n <label action>\n <div><mwc-icon>build_circle</mwc-icon> <span>corrective action</span></div>\n <textarea\n placeholder=\"시정 및 예방을 위한 조치 이행 사항을 입력해주세요.\"\n .value=${action || ''}\n @change=${this.onChangeAction}\n ></textarea>\n </label>\n `\n }\n\n onChangeAction(e: Event) {\n this.output ||= {}\n this.output.action = (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"]}
@@ -43,6 +43,7 @@ let OocResolveActivityView = class OocResolveActivityView extends localize(i18ne
43
43
  name
44
44
  description
45
45
  active
46
+ hidden
46
47
  tag
47
48
  group
48
49
  type
@@ -50,6 +51,7 @@ let OocResolveActivityView = class OocResolveActivityView extends localize(i18ne
50
51
  options
51
52
  quota
52
53
  spec
54
+ stat
53
55
  }
54
56
  workDate
55
57
  workShift
@@ -1 +1 @@
1
- {"version":3,"file":"activity-ooc-resolve-view.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-resolve-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,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAoEhE,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA2CT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AAzIM,6BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyDF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAa;AAExC;IAAC,KAAK,EAAE;;uDAAc;AAlElB,sBAAsB;IAD3B,aAAa,CAAC,2BAA2B,CAAC;GACrC,sBAAsB,CA2I3B","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-resolve-view')\nclass OocResolveActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n div[action] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[action] div {\n display: flex;\n }\n\n div[action] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\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 tag\n group\n type\n unit\n options\n quota\n spec\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-resolve-view.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-resolve-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,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAoEhE,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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAE/B,IAAI,EAAE,EAAE;YACN,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;SACrC;IACH,CAAC;;AA3IM,6BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyDF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;sDAAa;AAExC;IAAC,KAAK,EAAE;;uDAAc;AAlElB,sBAAsB;IAD3B,aAAa,CAAC,2BAA2B,CAAC;GACrC,sBAAsB,CA6I3B","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-resolve-view')\nclass OocResolveActivityView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n div[action] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[action] div {\n display: flex;\n }\n\n div[action] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\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"]}
@@ -59,6 +59,7 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
59
59
  name
60
60
  description
61
61
  active
62
+ hidden
62
63
  tag
63
64
  group
64
65
  type
@@ -66,6 +67,7 @@ let OocReviewActivityEdit = class OocReviewActivityEdit extends localize(i18next
66
67
  options
67
68
  quota
68
69
  spec
70
+ stat
69
71
  }
70
72
  workDate
71
73
  workShift
@@ -1 +1 @@
1
- {"version":3,"file":"activity-ooc-review-edit.js","sourceRoot":"","sources":["../../client/activities/activity-ooc-review-edit.ts"],"names":[],"mappings":";AAAA,OAAO,yCAAyC,CAAA;AAEhD,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA8D/D,MAAM;;QACJ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAA;QAE5C,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;;;;;;mBAOpC,WAAW,IAAI,EAAE;oBAChB,IAAI,CAAC,mBAAmB;;;KAGvC,CAAA;IACH,CAAC;IAED,mBAAmB,CAAC,CAAQ;QAC1B,IAAI,CAAC,MAAM,KAAX,IAAI,CAAC,MAAM,GAAK,EAAE,EAAA;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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,EAAE,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA8BT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AA5IM,4BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiDF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAExC;IAAC,KAAK,EAAE;;sDAAc;AAEtB;IAAC,KAAK,CAAC,UAAU,CAAC;8BAAuB,mBAAmB;kEAAA;AA5DxD,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CA8I1B","sourcesContent":["import '@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: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n label[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n label[instruction] div {\n display: flex;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--input-border-radius);\n padding: var(--input-field-padding);\n font: var(--input-field-font);\n }\n\n .button-container {\n display: flex;\n margin-left: auto;\n padding: var(--padding-default);\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n @query('textarea') instructionTextArea!: HTMLTextAreaElement\n\n render() {\n const instruction = this.output?.instruction\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 <div><mwc-icon>build_circle</mwc-icon> <span>corrective instruction</span></div>\n <textarea\n placeholder=\"시정 및 예방을 위한 조치 지시 사항을 입력해주세요.\"\n .value=${instruction || ''}\n @change=${this.onChangeInstruction}\n ></textarea>\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 tag\n group\n type\n unit\n options\n quota\n spec\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,yCAAyC,CAAA;AAEhD,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,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGjD,IAAM,qBAAqB,GAA3B,MAAM,qBAAsB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IA8D/D,MAAM;;QACJ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAA;QAE5C,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;;;;;;mBAOpC,WAAW,IAAI,EAAE;oBAChB,IAAI,CAAC,mBAAmB;;;KAGvC,CAAA;IACH,CAAC;IAED,mBAAmB,CAAC,CAAQ;QAC1B,IAAI,CAAC,MAAM,KAAX,IAAI,CAAC,MAAM,GAAK,EAAE,EAAA;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;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,EAAE,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAgCT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AA9IM,4BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAiDF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAExC;IAAC,KAAK,EAAE;;sDAAc;AAEtB;IAAC,KAAK,CAAC,UAAU,CAAC;8BAAuB,mBAAmB;kEAAA;AA5DxD,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CAgJ1B","sourcesContent":["import '@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: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n label[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n label[instruction] div {\n display: flex;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\n }\n\n textarea {\n border: var(--input-field-border);\n border-radius: var(--input-border-radius);\n padding: var(--input-field-padding);\n font: var(--input-field-font);\n }\n\n .button-container {\n display: flex;\n margin-left: auto;\n padding: var(--padding-default);\n }\n `\n ]\n\n @property({ type: Object }) input?: any\n @property({ type: Object }) output?: any\n\n @state() dataOoc?: any\n\n @query('textarea') instructionTextArea!: HTMLTextAreaElement\n\n render() {\n const instruction = this.output?.instruction\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 <div><mwc-icon>build_circle</mwc-icon> <span>corrective instruction</span></div>\n <textarea\n placeholder=\"시정 및 예방을 위한 조치 지시 사항을 입력해주세요.\"\n .value=${instruction || ''}\n @change=${this.onChangeInstruction}\n ></textarea>\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"]}
@@ -46,6 +46,7 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
46
46
  name
47
47
  description
48
48
  active
49
+ hidden
49
50
  tag
50
51
  group
51
52
  type
@@ -53,6 +54,7 @@ let OocReviewActivityView = class OocReviewActivityView extends localize(i18next
53
54
  options
54
55
  quota
55
56
  spec
57
+ stat
56
58
  }
57
59
  workDate
58
60
  workShift
@@ -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;IAoD/D,MAAM;;QACJ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAA;QAE5C,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;KAElD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,EAAE,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE;YACN,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SA2CT;gBACD,SAAS,EAAE;oBACT,EAAE;iBACH;aACF,CAAC,CAAA;YAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;SACrC;IACH,CAAC;;AA3HM,4BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyCF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAExC;IAAC,KAAK,EAAE;;sDAAc;AAlDlB,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CA6H1B","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: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\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 const instruction = this.output?.instruction\n\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 tag\n group\n type\n unit\n options\n quota\n spec\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;IAoD/D,MAAM;;QACJ,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,MAAM,0CAAE,WAAW,CAAA;QAE5C,OAAO,IAAI,CAAA;;2CAE4B,IAAI,CAAC,OAAO;;KAElD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,OAAO;QACb,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxB,IAAI,CAAC,YAAY,EAAE,CAAA;SACpB;IACH,CAAC;IAED,KAAK,CAAC,YAAY;;QAChB,MAAM,EAAE,GAAG,MAAA,IAAI,CAAC,KAAK,0CAAE,SAAS,CAAA;QAEhC,IAAI,EAAE,EAAE;YACN,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;SACrC;IACH,CAAC;;AA7HM,4BAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyCF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;oDAAY;AACvC;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;qDAAa;AAExC;IAAC,KAAK,EAAE;;sDAAc;AAlDlB,qBAAqB;IAD1B,aAAa,CAAC,0BAA0B,CAAC;GACpC,qBAAqB,CA+H1B","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: #fff;\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(--padding-wide);\n overflow: auto;\n }\n\n div[instruction] {\n display: flex;\n flex-direction: column;\n\n padding: var(--padding-wide);\n }\n\n div[instruction] div {\n display: flex;\n }\n\n div[instruction] div[content] {\n display: flex;\n min-height: 50px;\n }\n\n mwc-icon {\n color: var(--status-danger-color);\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 const instruction = this.output?.instruction\n\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,4 +1,5 @@
1
1
  import '@operato/data-grist';
2
+ import '@operato/context/ox-context-page-toolbar.js';
2
3
  import { FetchOption } from '@operato/data-grist';
3
4
  import { PageView } from '@operato/shell';
4
5
  import './data-archive-request-popup';
@@ -14,7 +15,6 @@ export declare class DataArchiveListPage extends DataArchiveListPage_base {
14
15
  gristConfig: any;
15
16
  mode: 'CARD' | 'GRID' | 'LIST';
16
17
  private grist;
17
- private sortersControl;
18
18
  private popup?;
19
19
  get context(): {
20
20
  title: string;
@@ -30,12 +30,6 @@ export declare class DataArchiveListPage extends DataArchiveListPage_base {
30
30
  title: string;
31
31
  action: () => Promise<void>;
32
32
  icon: string;
33
- emphasis: {
34
- raised: boolean;
35
- outlined: boolean;
36
- dense: boolean;
37
- danger: boolean;
38
- };
39
33
  }[];
40
34
  exportable: {
41
35
  name: string;
@@ -49,6 +43,7 @@ export declare class DataArchiveListPage extends DataArchiveListPage_base {
49
43
  data: any[];
50
44
  };
51
45
  };
46
+ toolbar: boolean;
52
47
  };
53
48
  render(): import("lit-html").TemplateResult<1>;
54
49
  pageInitialized(lifecycle: any): Promise<void>;