@things-factory/dataset 7.0.0-alpha.6 → 7.0.0-alpha.7

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 (117) hide show
  1. package/client/activities/activity-data-collect-view.ts +7 -0
  2. package/client/activities/activity-data-review-edit.ts +66 -4
  3. package/client/activities/activity-data-review-view.ts +78 -4
  4. package/client/activities/activity-ooc-resolve-view.ts +12 -0
  5. package/client/activities/activity-ooc-review-view.ts +12 -0
  6. package/client/pages/data-ooc/data-ooc-list-page.ts +38 -9
  7. package/client/pages/data-ooc/data-ooc-page.ts +42 -0
  8. package/client/pages/data-ooc/data-ooc-view.ts +158 -19
  9. package/client/pages/data-ooc/data-oocs-page.ts +69 -3
  10. package/client/pages/data-sample/data-sample-list-page.ts +23 -6
  11. package/client/pages/data-sample/data-sample-page.ts +7 -0
  12. package/client/pages/data-sample/data-sample-search-page.ts +2 -2
  13. package/client/pages/data-sample/data-sample-view.ts +144 -22
  14. package/client/pages/data-sample/data-samples-page.ts +131 -5
  15. package/client/pages/data-sensor/data-sensor-list-page.ts +28 -6
  16. package/client/pages/data-set/data-item-list.ts +2 -2
  17. package/dist-client/activities/activity-data-collect-view.js +7 -0
  18. package/dist-client/activities/activity-data-collect-view.js.map +1 -1
  19. package/dist-client/activities/activity-data-review-edit.d.ts +1 -1
  20. package/dist-client/activities/activity-data-review-edit.js +63 -5
  21. package/dist-client/activities/activity-data-review-edit.js.map +1 -1
  22. package/dist-client/activities/activity-data-review-view.d.ts +1 -1
  23. package/dist-client/activities/activity-data-review-view.js +75 -5
  24. package/dist-client/activities/activity-data-review-view.js.map +1 -1
  25. package/dist-client/activities/activity-ooc-resolve-view.js +12 -0
  26. package/dist-client/activities/activity-ooc-resolve-view.js.map +1 -1
  27. package/dist-client/activities/activity-ooc-review-view.js +12 -0
  28. package/dist-client/activities/activity-ooc-review-view.js.map +1 -1
  29. package/dist-client/pages/data-ooc/data-ooc-list-page.js +38 -9
  30. package/dist-client/pages/data-ooc/data-ooc-list-page.js.map +1 -1
  31. package/dist-client/pages/data-ooc/data-ooc-page.js +42 -0
  32. package/dist-client/pages/data-ooc/data-ooc-page.js.map +1 -1
  33. package/dist-client/pages/data-ooc/data-ooc-view.d.ts +6 -3
  34. package/dist-client/pages/data-ooc/data-ooc-view.js +155 -22
  35. package/dist-client/pages/data-ooc/data-ooc-view.js.map +1 -1
  36. package/dist-client/pages/data-ooc/data-oocs-page.d.ts +1 -0
  37. package/dist-client/pages/data-ooc/data-oocs-page.js +69 -3
  38. package/dist-client/pages/data-ooc/data-oocs-page.js.map +1 -1
  39. package/dist-client/pages/data-sample/data-sample-list-page.js +23 -6
  40. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -1
  41. package/dist-client/pages/data-sample/data-sample-page.js +7 -0
  42. package/dist-client/pages/data-sample/data-sample-page.js.map +1 -1
  43. package/dist-client/pages/data-sample/data-sample-search-page.js +2 -2
  44. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -1
  45. package/dist-client/pages/data-sample/data-sample-view.d.ts +18 -0
  46. package/dist-client/pages/data-sample/data-sample-view.js +143 -21
  47. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -1
  48. package/dist-client/pages/data-sample/data-samples-page.d.ts +2 -0
  49. package/dist-client/pages/data-sample/data-samples-page.js +132 -5
  50. package/dist-client/pages/data-sample/data-samples-page.js.map +1 -1
  51. package/dist-client/pages/data-sensor/data-sensor-list-page.js +28 -6
  52. package/dist-client/pages/data-sensor/data-sensor-list-page.js.map +1 -1
  53. package/dist-client/pages/data-set/data-item-list.js +2 -2
  54. package/dist-client/pages/data-set/data-item-list.js.map +1 -1
  55. package/dist-client/tsconfig.tsbuildinfo +1 -1
  56. package/dist-server/activities/activity-data-review.js.map +1 -1
  57. package/dist-server/activities/activity-ooc-review.js +2 -1
  58. package/dist-server/activities/activity-ooc-review.js.map +1 -1
  59. package/dist-server/controllers/create-data-sample.js +27 -29
  60. package/dist-server/controllers/create-data-sample.js.map +1 -1
  61. package/dist-server/engine/index.js +4 -0
  62. package/dist-server/engine/index.js.map +1 -0
  63. package/dist-server/engine/task/create-data-sample.js +80 -0
  64. package/dist-server/engine/task/create-data-sample.js.map +1 -0
  65. package/dist-server/engine/task/index.js +4 -0
  66. package/dist-server/engine/task/index.js.map +1 -0
  67. package/dist-server/index.js +1 -0
  68. package/dist-server/index.js.map +1 -1
  69. package/dist-server/routes.js +35 -27
  70. package/dist-server/routes.js.map +1 -1
  71. package/dist-server/service/data-ooc/data-ooc-query.js +32 -0
  72. package/dist-server/service/data-ooc/data-ooc-query.js.map +1 -1
  73. package/dist-server/service/data-ooc/data-ooc.js +15 -26
  74. package/dist-server/service/data-ooc/data-ooc.js.map +1 -1
  75. package/dist-server/service/data-sample/data-sample-query.js +24 -0
  76. package/dist-server/service/data-sample/data-sample-query.js.map +1 -1
  77. package/dist-server/service/data-sample/data-sample.js +17 -21
  78. package/dist-server/service/data-sample/data-sample.js.map +1 -1
  79. package/dist-server/service/data-sensor/data-sensor-query.js +16 -1
  80. package/dist-server/service/data-sensor/data-sensor-query.js.map +1 -1
  81. package/dist-server/service/data-sensor/data-sensor-type.js +8 -0
  82. package/dist-server/service/data-sensor/data-sensor-type.js.map +1 -1
  83. package/dist-server/service/data-sensor/data-sensor.js +15 -1
  84. package/dist-server/service/data-sensor/data-sensor.js.map +1 -1
  85. package/dist-server/service/data-set/data-item-type.js +1 -0
  86. package/dist-server/service/data-set/data-item-type.js.map +1 -1
  87. package/dist-server/service/data-set/data-set-query.js +2 -2
  88. package/dist-server/service/data-set/data-set-query.js.map +1 -1
  89. package/dist-server/tsconfig.tsbuildinfo +1 -1
  90. package/helps/dataset/task/create-data-sample.ja.md +28 -0
  91. package/helps/dataset/task/create-data-sample.ko.md +28 -0
  92. package/helps/dataset/task/create-data-sample.md +28 -0
  93. package/helps/dataset/task/create-data-sample.ms.md +30 -0
  94. package/helps/dataset/task/create-data-sample.zh.md +28 -0
  95. package/package.json +11 -11
  96. package/server/activities/activity-data-review.ts +1 -5
  97. package/server/activities/activity-ooc-review.ts +5 -15
  98. package/server/controllers/create-data-sample.ts +31 -38
  99. package/server/engine/index.ts +1 -0
  100. package/server/engine/task/create-data-sample.ts +92 -0
  101. package/server/engine/task/index.ts +1 -0
  102. package/server/index.ts +1 -0
  103. package/server/routes.ts +47 -31
  104. package/server/service/data-ooc/data-ooc-query.ts +17 -0
  105. package/server/service/data-ooc/data-ooc.ts +17 -28
  106. package/server/service/data-sample/data-sample-query.ts +17 -17
  107. package/server/service/data-sample/data-sample.ts +18 -23
  108. package/server/service/data-sensor/data-sensor-query.ts +13 -1
  109. package/server/service/data-sensor/data-sensor-type.ts +6 -0
  110. package/server/service/data-sensor/data-sensor.ts +13 -11
  111. package/server/service/data-set/data-item-type.ts +1 -0
  112. package/server/service/data-set/data-set-query.ts +7 -7
  113. package/translations/en.json +14 -2
  114. package/translations/ja.json +11 -1
  115. package/translations/ko.json +13 -1
  116. package/translations/ms.json +10 -0
  117. package/translations/zh.json +11 -1
@@ -87,6 +87,41 @@ let DataOocViewPage = class DataOocViewPage extends localize(i18next)(PageView)
87
87
  }
88
88
  updatedAt
89
89
  collectedAt
90
+ reviewActivityInstance {
91
+ ...ActivityInstanceFragment
92
+ }
93
+ resolveActivityInstance {
94
+ ...ActivityInstanceFragment
95
+ }
96
+ }
97
+ }
98
+
99
+ fragment ActivityInstanceFragment on ActivityInstance {
100
+ activityThreads {
101
+ assignee {
102
+ name
103
+ }
104
+ output
105
+ activityApprovals {
106
+ judgment
107
+ approver {
108
+ name
109
+ }
110
+ comment
111
+ createdAt
112
+ updatedAt
113
+ terminatedAt
114
+ }
115
+ activityThreadHistories {
116
+ transaction
117
+ reason
118
+ updater {
119
+ name
120
+ }
121
+ updatedAt
122
+ state
123
+ output
124
+ }
90
125
  }
91
126
  }
92
127
  `,
@@ -106,6 +141,13 @@ DataOocViewPage.styles = [
106
141
  data-ooc-view {
107
142
  flex: 1;
108
143
  }
144
+
145
+ @media print {
146
+ :host {
147
+ display: block;
148
+ overflow: visible;
149
+ }
150
+ }
109
151
  `
110
152
  ];
111
153
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"data-ooc-page.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-ooc-page.ts"],"names":[],"mappings":";AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAAkB,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,oBAAoB,CAAA;AAGpB,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;IAe9D,IAAI,OAAO;QACT,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC;YACvC,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,EAAE;SACZ,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA,4BAA4B,IAAI,CAAC,OAAO,oBAAoB,CAAA;IACzE,CAAC;IAED,OAAO,CAAC,OAA6B,IAAG,CAAC;IAEzC,WAAW,CAAC,OAAY,EAAE,SAAc,EAAE,MAAW;QACnD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf;;eAEG;YACH,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;SACpC;aAAM;YACL,8BAA8B;SAC/B;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0DT;YACD,SAAS,EAAE;gBACT,EAAE;aACH;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;IACtC,CAAC;;AA1GM,sBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;;KAQF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDAAc;AAb9B,eAAe;IAD3B,aAAa,CAAC,eAAe,CAAC;GAClB,eAAe,CA4G3B;SA5GY,eAAe","sourcesContent":["import gql from 'graphql-tag'\n\nimport { PropertyValues, html, css } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { PageView } from '@operato/shell'\nimport { i18next, localize } from '@operato/i18n'\nimport { client } from '@operato/graphql'\n\nimport './data-ooc-view.js'\n\n@customElement('data-ooc-page')\nexport class DataOocViewPage extends localize(i18next)(PageView) {\n static styles = [\n css`\n :host {\n display: flex;\n }\n\n data-ooc-view {\n flex: 1;\n }\n `\n ]\n\n @property({ type: Object }) dataOoc?: any\n\n get context() {\n return {\n title: i18next.t('title.data-ooc view'),\n help: 'dataset/data-ooc',\n actions: []\n }\n }\n\n render() {\n return html` <data-ooc-view .dataOoc=${this.dataOoc}></data-ooc-view> `\n }\n\n updated(changes: PropertyValues<this>) {}\n\n pageUpdated(changes: any, lifecycle: any, before: any) {\n if (this.active) {\n /*\n * this page is activated\n */\n this.fetchOoc(lifecycle.resourceId)\n } else {\n /* this page is deactivated */\n }\n }\n\n async fetchOoc(id: string) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n useCase\n dataSet {\n id\n name\n }\n key01\n key02\n key03\n key04\n key05\n partitionKeys\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n data\n rawData\n judgment\n ooc\n oos\n state\n history\n workDate\n workShift\n correctiveInstruction\n correctiveAction\n reviewedAt\n reviewer {\n id\n name\n }\n correctedAt\n corrector {\n id\n name\n }\n updater {\n id\n name\n }\n updatedAt\n collectedAt\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n}\n"]}
1
+ {"version":3,"file":"data-ooc-page.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-ooc-page.ts"],"names":[],"mappings":";AAAA,OAAO,GAAG,MAAM,aAAa,CAAA;AAE7B,OAAO,EAAkB,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC,OAAO,oBAAoB,CAAA;AAGpB,IAAM,eAAe,GAArB,MAAM,eAAgB,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;IAsB9D,IAAI,OAAO;QACT,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC;YACvC,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,EAAE;SACZ,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAA,4BAA4B,IAAI,CAAC,OAAO,oBAAoB,CAAA;IACzE,CAAC;IAED,OAAO,CAAC,OAA6B,IAAG,CAAC;IAEzC,WAAW,CAAC,OAAY,EAAE,SAAc,EAAE,MAAW;QACnD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf;;eAEG;YACH,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;SACpC;aAAM;YACL,8BAA8B;SAC/B;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,EAAU;QACvB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6FT;YACD,SAAS,EAAE;gBACT,EAAE;aACH;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAA;IACtC,CAAC;;AApJM,sBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;;;;;;;;;KAeF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;gDAAc;AApB9B,eAAe;IAD3B,aAAa,CAAC,eAAe,CAAC;GAClB,eAAe,CAsJ3B;SAtJY,eAAe","sourcesContent":["import gql from 'graphql-tag'\n\nimport { PropertyValues, html, css } from 'lit'\nimport { customElement, property } from 'lit/decorators.js'\nimport { PageView } from '@operato/shell'\nimport { i18next, localize } from '@operato/i18n'\nimport { client } from '@operato/graphql'\n\nimport './data-ooc-view.js'\n\n@customElement('data-ooc-page')\nexport class DataOocViewPage extends localize(i18next)(PageView) {\n static styles = [\n css`\n :host {\n display: flex;\n }\n\n data-ooc-view {\n flex: 1;\n }\n\n @media print {\n :host {\n display: block;\n overflow: visible;\n }\n }\n `\n ]\n\n @property({ type: Object }) dataOoc?: any\n\n get context() {\n return {\n title: i18next.t('title.data-ooc view'),\n help: 'dataset/data-ooc',\n actions: []\n }\n }\n\n render() {\n return html` <data-ooc-view .dataOoc=${this.dataOoc}></data-ooc-view> `\n }\n\n updated(changes: PropertyValues<this>) {}\n\n pageUpdated(changes: any, lifecycle: any, before: any) {\n if (this.active) {\n /*\n * this page is activated\n */\n this.fetchOoc(lifecycle.resourceId)\n } else {\n /* this page is deactivated */\n }\n }\n\n async fetchOoc(id: string) {\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n useCase\n dataSet {\n id\n name\n }\n key01\n key02\n key03\n key04\n key05\n partitionKeys\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n data\n rawData\n judgment\n ooc\n oos\n state\n history\n workDate\n workShift\n correctiveInstruction\n correctiveAction\n reviewedAt\n reviewer {\n id\n name\n }\n correctedAt\n corrector {\n id\n name\n }\n updater {\n id\n name\n }\n updatedAt\n collectedAt\n reviewActivityInstance {\n ...ActivityInstanceFragment\n }\n resolveActivityInstance {\n ...ActivityInstanceFragment\n }\n }\n }\n\n fragment ActivityInstanceFragment on ActivityInstance {\n activityThreads {\n assignee {\n name\n }\n output\n activityApprovals {\n judgment\n approver {\n name\n }\n comment\n createdAt\n updatedAt\n terminatedAt\n }\n activityThreadHistories {\n transaction\n reason\n updater {\n name\n }\n updatedAt\n state\n output\n }\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n}\n"]}
@@ -1,13 +1,16 @@
1
1
  import '@operato/dataset/ox-data-ooc-brief-view.js';
2
2
  import '@material/mwc-fab';
3
- import { LitElement } from 'lit';
3
+ import '@things-factory/worklist/dist-client/components/activity-thread-timeline.js';
4
+ import { LitElement, nothing } from 'lit';
4
5
  declare const DataOocView_base: (new (...args: any[]) => LitElement) & typeof LitElement;
5
6
  export declare class DataOocView extends DataOocView_base {
6
7
  static styles: import("lit").CSSResult[];
8
+ dataOocId?: string;
7
9
  dataOoc?: any;
8
- sampleView: HTMLTextAreaElement;
9
10
  private printHandler;
10
- render(): import("lit-html").TemplateResult<1>;
11
+ render(): import("lit-html").TemplateResult<1> | typeof nothing;
12
+ updated(changes: any): void;
13
+ fetchDataOoc(): Promise<void>;
11
14
  handlePrint(event: any): void;
12
15
  connectedCallback(): void;
13
16
  disconnectedCallback(): void;
@@ -1,8 +1,11 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import '@operato/dataset/ox-data-ooc-brief-view.js';
3
3
  import '@material/mwc-fab';
4
- import { css, html, LitElement } from 'lit';
5
- import { customElement, property, query } from 'lit/decorators.js';
4
+ import '@things-factory/worklist/dist-client/components/activity-thread-timeline.js';
5
+ import gql from 'graphql-tag';
6
+ import { css, html, LitElement, nothing } from 'lit';
7
+ import { customElement, property, state } from 'lit/decorators.js';
8
+ import { client } from '@operato/graphql';
6
9
  import { i18next, localize } from '@operato/i18n';
7
10
  import { ScrollbarStyles } from '@operato/styles';
8
11
  import { GhostPrint } from '@operato/ghost-print';
@@ -12,8 +15,32 @@ let DataOocView = class DataOocView extends localize(i18next)(LitElement) {
12
15
  this.printHandler = this.handlePrint.bind(this);
13
16
  }
14
17
  render() {
18
+ var _a, _b, _c, _d, _e, _f;
19
+ if (!this.dataOoc) {
20
+ return nothing;
21
+ }
22
+ const reviewActivityThread = (_c = (_b = (_a = this.dataOoc) === null || _a === void 0 ? void 0 : _a.reviewActivityInstance) === null || _b === void 0 ? void 0 : _b.activityThreads) === null || _c === void 0 ? void 0 : _c[0];
23
+ const resolveActivityThread = (_f = (_e = (_d = this.dataOoc) === null || _d === void 0 ? void 0 : _d.resolveActivityInstance) === null || _e === void 0 ? void 0 : _e.activityThreads) === null || _f === void 0 ? void 0 : _f[0];
15
24
  return html `
16
25
  <ox-data-ooc-brief-view .dataOoc=${this.dataOoc}></ox-data-ooc-brief-view>
26
+ ${reviewActivityThread
27
+ ? html `
28
+ <activity-thread-timeline
29
+ subtitle=${String(i18next.t('label.ooc review timeline'))}
30
+ .activityThread=${reviewActivityThread}
31
+ short-form
32
+ ></activity-thread-timeline>
33
+ `
34
+ : nothing}
35
+ ${resolveActivityThread
36
+ ? html `
37
+ <activity-thread-timeline
38
+ subtitle=${String(i18next.t('label.ooc resolve timeline'))}
39
+ .activityThread=${resolveActivityThread}
40
+ short-form
41
+ ></activity-thread-timeline>
42
+ `
43
+ : nothing}
17
44
 
18
45
  <mwc-fab
19
46
  icon="print"
@@ -25,6 +52,116 @@ let DataOocView = class DataOocView extends localize(i18next)(LitElement) {
25
52
  >
26
53
  `;
27
54
  }
55
+ updated(changes) {
56
+ if (changes.has('dataOocId')) {
57
+ this.fetchDataOoc();
58
+ }
59
+ }
60
+ async fetchDataOoc() {
61
+ const id = this.dataOocId;
62
+ const response = await client.query({
63
+ query: gql `
64
+ query ($id: String!) {
65
+ dataOoc(id: $id) {
66
+ id
67
+ name
68
+ description
69
+ useCase
70
+ dataSet {
71
+ id
72
+ name
73
+ }
74
+ key01
75
+ key02
76
+ key03
77
+ key04
78
+ key05
79
+ partitionKeys
80
+ dataItems {
81
+ name
82
+ description
83
+ active
84
+ hidden
85
+ tag
86
+ group
87
+ type
88
+ unit
89
+ options
90
+ quota
91
+ spec
92
+ stat
93
+ }
94
+ data
95
+ rawData
96
+ judgment
97
+ ooc
98
+ oos
99
+ state
100
+ history
101
+ workDate
102
+ workShift
103
+ correctiveInstruction
104
+ correctiveAction
105
+ reviewedAt
106
+ reviewer {
107
+ id
108
+ name
109
+ }
110
+ correctedAt
111
+ corrector {
112
+ id
113
+ name
114
+ }
115
+ updater {
116
+ id
117
+ name
118
+ }
119
+ updatedAt
120
+ collectedAt
121
+ reviewActivityInstance {
122
+ ...ActivityInstanceFragment
123
+ }
124
+ resolveActivityInstance {
125
+ ...ActivityInstanceFragment
126
+ }
127
+ }
128
+ }
129
+
130
+ fragment ActivityInstanceFragment on ActivityInstance {
131
+ activityThreads {
132
+ assignee {
133
+ name
134
+ }
135
+ output
136
+ activityApprovals {
137
+ judgment
138
+ approver {
139
+ name
140
+ }
141
+ comment
142
+ createdAt
143
+ updatedAt
144
+ terminatedAt
145
+ }
146
+ activityThreadHistories {
147
+ transaction
148
+ reason
149
+ updater {
150
+ name
151
+ }
152
+ updatedAt
153
+ state
154
+ output
155
+ }
156
+ }
157
+ }
158
+ `,
159
+ variables: {
160
+ id
161
+ }
162
+ });
163
+ this.dataOoc = response.data.dataOoc;
164
+ }
28
165
  handlePrint(event) {
29
166
  if ((event.ctrlKey || event.metaKey) && event.key === 'p') {
30
167
  event.preventDefault();
@@ -46,21 +183,23 @@ DataOocView.styles = [
46
183
  ScrollbarStyles,
47
184
  css `
48
185
  :host {
49
- display: flex;
50
- flex-direction: column;
186
+ display: block;
51
187
  position: relative;
52
-
53
188
  background-color: #fff;
189
+
190
+ overflow: auto;
54
191
  }
55
192
 
56
193
  ox-data-ooc-brief-view {
57
- flex: 1;
58
194
  padding: var(--padding-wide);
59
- overflow: auto;
195
+ }
196
+
197
+ activity-thread-timeline {
198
+ margin: var(--margin-default);
60
199
  }
61
200
 
62
201
  mwc-fab {
63
- position: absolute;
202
+ position: fixed;
64
203
  bottom: 15px;
65
204
  right: 16px;
66
205
  text-decoration: auto;
@@ -68,15 +207,6 @@ DataOocView.styles = [
68
207
  }
69
208
 
70
209
  @media print {
71
- :host {
72
- display: block;
73
- }
74
-
75
- ox-data-ooc-brief-view {
76
- flex: unset;
77
- overflow: visible;
78
- }
79
-
80
210
  mwc-fab {
81
211
  display: none;
82
212
  }
@@ -84,13 +214,16 @@ DataOocView.styles = [
84
214
  `
85
215
  ];
86
216
  __decorate([
87
- property({ type: Object }),
217
+ property({
218
+ type: String,
219
+ attribute: 'data-ooc-id'
220
+ }),
221
+ __metadata("design:type", String)
222
+ ], DataOocView.prototype, "dataOocId", void 0);
223
+ __decorate([
224
+ state(),
88
225
  __metadata("design:type", Object)
89
226
  ], DataOocView.prototype, "dataOoc", void 0);
90
- __decorate([
91
- query('ox-data-ooc-brief-view'),
92
- __metadata("design:type", HTMLTextAreaElement)
93
- ], DataOocView.prototype, "sampleView", void 0);
94
227
  DataOocView = __decorate([
95
228
  customElement('data-ooc-view')
96
229
  ], DataOocView);
@@ -1 +1 @@
1
- {"version":3,"file":"data-ooc-view.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-ooc-view.ts"],"names":[],"mappings":";AAAA,OAAO,4CAA4C,CAAA;AACnD,OAAO,mBAAmB,CAAA;AAE1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAElE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAG1C,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAAvD;;QA+CG,iBAAY,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAqCpD,CAAC;IAnCC,MAAM;QACJ,OAAO,IAAI,CAAA;yCAC0B,IAAI,CAAC,OAAO;;;;;iBAKpC,GAAG,EAAE,CACZ,UAAU,CAAC,KAAK,CAAC;YACf,GAAG,EAAE,cAAc,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;SACrC,CAAC;;;KAGP,CAAA;IACH,CAAC;IAED,WAAW,CAAC,KAAK;QACf,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;YACzD,KAAK,CAAC,cAAc,EAAE,CAAA;YAEtB,UAAU,CAAC,KAAK,CAAC;gBACf,GAAG,EAAE,cAAc,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;aACrC,CAAC,CAAA;SACH;IACH,CAAC;IAED,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAA;QACzB,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;IACvD,CAAC;IAED,oBAAoB;QAClB,KAAK,CAAC,oBAAoB,EAAE,CAAA;QAC5B,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;IAC1D,CAAC;;AAlFM,kBAAM,GAAG;IACd,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAqCF;CACF,CAAA;AAED;IAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;4CAAc;AAEzC;IAAC,KAAK,CAAC,wBAAwB,CAAC;8BAAc,mBAAmB;+CAAA;AA7CtD,WAAW;IADvB,aAAa,CAAC,eAAe,CAAC;GAClB,WAAW,CAoFvB;SApFY,WAAW","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\nimport '@material/mwc-fab'\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { ScrollbarStyles } from '@operato/styles'\nimport { GhostPrint } from '@operato/ghost-print'\n\n@customElement('data-ooc-view')\nexport class DataOocView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n position: relative;\n\n background-color: #fff;\n }\n\n ox-data-ooc-brief-view {\n flex: 1;\n padding: var(--padding-wide);\n overflow: auto;\n }\n\n mwc-fab {\n position: absolute;\n bottom: 15px;\n right: 16px;\n text-decoration: auto;\n opacity: 0.5;\n }\n\n @media print {\n :host {\n display: block;\n }\n\n ox-data-ooc-brief-view {\n flex: unset;\n overflow: visible;\n }\n\n mwc-fab {\n display: none;\n }\n }\n `\n ]\n\n @property({ type: Object }) dataOoc?: any\n\n @query('ox-data-ooc-brief-view') sampleView!: HTMLTextAreaElement\n\n private printHandler = this.handlePrint.bind(this)\n\n render() {\n return html`\n <ox-data-ooc-brief-view .dataOoc=${this.dataOoc}></ox-data-ooc-brief-view>\n\n <mwc-fab\n icon=\"print\"\n title=\"print\"\n @click=${() =>\n GhostPrint.print({\n src: `./data-ooc/${this.dataOoc.id}`\n })}\n >print</mwc-fab\n >\n `\n }\n\n handlePrint(event) {\n if ((event.ctrlKey || event.metaKey) && event.key === 'p') {\n event.preventDefault()\n\n GhostPrint.print({\n src: `./data-ooc/${this.dataOoc.id}`\n })\n }\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n window.addEventListener('keydown', this.printHandler)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n window.removeEventListener('keydown', this.printHandler)\n }\n}\n"]}
1
+ {"version":3,"file":"data-ooc-view.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-ooc-view.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\nimport '@material/mwc-fab'\nimport '@things-factory/worklist/dist-client/components/activity-thread-timeline.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement, nothing } 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 { GhostPrint } from '@operato/ghost-print'\n\n@customElement('data-ooc-view')\nexport class DataOocView extends localize(i18next)(LitElement) {\n static styles = [\n ScrollbarStyles,\n css`\n :host {\n display: block;\n position: relative;\n background-color: #fff;\n\n overflow: auto;\n }\n\n ox-data-ooc-brief-view {\n padding: var(--padding-wide);\n }\n\n activity-thread-timeline {\n margin: var(--margin-default);\n }\n\n mwc-fab {\n position: fixed;\n bottom: 15px;\n right: 16px;\n text-decoration: auto;\n opacity: 0.5;\n }\n\n @media print {\n mwc-fab {\n display: none;\n }\n }\n `\n ]\n\n @property({\n type: String,\n attribute: 'data-ooc-id'\n })\n dataOocId?: string\n\n @state() dataOoc?: any\n\n private printHandler = this.handlePrint.bind(this)\n\n render() {\n if (!this.dataOoc) {\n return nothing\n }\n\n const reviewActivityThread = this.dataOoc?.reviewActivityInstance?.activityThreads?.[0]\n const resolveActivityThread = this.dataOoc?.resolveActivityInstance?.activityThreads?.[0]\n\n return html`\n <ox-data-ooc-brief-view .dataOoc=${this.dataOoc}></ox-data-ooc-brief-view>\n ${reviewActivityThread\n ? html`\n <activity-thread-timeline\n subtitle=${String(i18next.t('label.ooc review timeline'))}\n .activityThread=${reviewActivityThread}\n short-form\n ></activity-thread-timeline>\n `\n : nothing}\n ${resolveActivityThread\n ? html`\n <activity-thread-timeline\n subtitle=${String(i18next.t('label.ooc resolve timeline'))}\n .activityThread=${resolveActivityThread}\n short-form\n ></activity-thread-timeline>\n `\n : nothing}\n\n <mwc-fab\n icon=\"print\"\n title=\"print\"\n @click=${() =>\n GhostPrint.print({\n src: `./data-ooc/${this.dataOoc.id}`\n })}\n >print</mwc-fab\n >\n `\n }\n\n updated(changes) {\n if (changes.has('dataOocId')) {\n this.fetchDataOoc()\n }\n }\n\n async fetchDataOoc() {\n const id = this.dataOocId\n\n const response = await client.query({\n query: gql`\n query ($id: String!) {\n dataOoc(id: $id) {\n id\n name\n description\n useCase\n dataSet {\n id\n name\n }\n key01\n key02\n key03\n key04\n key05\n partitionKeys\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 data\n rawData\n judgment\n ooc\n oos\n state\n history\n workDate\n workShift\n correctiveInstruction\n correctiveAction\n reviewedAt\n reviewer {\n id\n name\n }\n correctedAt\n corrector {\n id\n name\n }\n updater {\n id\n name\n }\n updatedAt\n collectedAt\n reviewActivityInstance {\n ...ActivityInstanceFragment\n }\n resolveActivityInstance {\n ...ActivityInstanceFragment\n }\n }\n }\n\n fragment ActivityInstanceFragment on ActivityInstance {\n activityThreads {\n assignee {\n name\n }\n output\n activityApprovals {\n judgment\n approver {\n name\n }\n comment\n createdAt\n updatedAt\n terminatedAt\n }\n activityThreadHistories {\n transaction\n reason\n updater {\n name\n }\n updatedAt\n state\n output\n }\n }\n }\n `,\n variables: {\n id\n }\n })\n\n this.dataOoc = response.data.dataOoc\n }\n\n handlePrint(event) {\n if ((event.ctrlKey || event.metaKey) && event.key === 'p') {\n event.preventDefault()\n\n GhostPrint.print({\n src: `./data-ooc/${this.dataOoc.id}`\n })\n }\n }\n\n connectedCallback(): void {\n super.connectedCallback()\n window.addEventListener('keydown', this.printHandler)\n }\n\n disconnectedCallback(): void {\n super.disconnectedCallback()\n window.removeEventListener('keydown', this.printHandler)\n }\n}\n"]}
@@ -1,4 +1,5 @@
1
1
  import '@operato/dataset/ox-data-ooc-brief-view.js';
2
+ import '@things-factory/worklist/dist-client/components/activity-thread-timeline.js';
2
3
  import { PageView } from '@operato/shell';
3
4
  declare const DataOocsPage_base: (new (...args: any[]) => import("lit").LitElement) & typeof PageView;
4
5
  /**
@@ -1,7 +1,8 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import '@operato/dataset/ox-data-ooc-brief-view.js';
3
+ import '@things-factory/worklist/dist-client/components/activity-thread-timeline.js';
3
4
  import gql from 'graphql-tag';
4
- import { html, css } from 'lit';
5
+ import { html, css, nothing } from 'lit';
5
6
  import { customElement, state } from 'lit/decorators.js';
6
7
  import { PageView } from '@operato/shell';
7
8
  import { i18next, localize } from '@operato/i18n';
@@ -17,7 +18,33 @@ let DataOocsPage = class DataOocsPage extends localize(i18next)(PageView) {
17
18
  }
18
19
  render() {
19
20
  var _a;
20
- return (_a = this.dataOocs) === null || _a === void 0 ? void 0 : _a.map(dataOoc => html ` <ox-data-ooc-brief-view .dataOoc=${dataOoc}></ox-data-ooc-brief-view> `);
21
+ return (_a = this.dataOocs) === null || _a === void 0 ? void 0 : _a.map(dataOoc => {
22
+ var _a, _b, _c, _d;
23
+ const reviewActivityThread = (_b = (_a = dataOoc === null || dataOoc === void 0 ? void 0 : dataOoc.reviewActivityInstance) === null || _a === void 0 ? void 0 : _a.activityThreads) === null || _b === void 0 ? void 0 : _b[0];
24
+ const resolveActivityThread = (_d = (_c = dataOoc === null || dataOoc === void 0 ? void 0 : dataOoc.resolveActivityInstance) === null || _c === void 0 ? void 0 : _c.activityThreads) === null || _d === void 0 ? void 0 : _d[0];
25
+ return html `
26
+ <ox-data-ooc-brief-view .dataOoc=${dataOoc}></ox-data-ooc-brief-view>
27
+ ${reviewActivityThread
28
+ ? html `
29
+ <activity-thread-timeline
30
+ subtitle=${String(i18next.t('label.ooc review timeline'))}
31
+ .activityThread=${reviewActivityThread}
32
+ short-form
33
+ ></activity-thread-timeline>
34
+ `
35
+ : nothing}
36
+ ${resolveActivityThread
37
+ ? html `
38
+ <activity-thread-timeline
39
+ subtitle=${String(i18next.t('label.ooc resolve timeline'))}
40
+ .activityThread=${resolveActivityThread}
41
+ short-form
42
+ ></activity-thread-timeline>
43
+ `
44
+ : nothing}
45
+ <div class="end"></div>
46
+ `;
47
+ });
21
48
  }
22
49
  pageUpdated(changes, lifecycle, before) {
23
50
  if (this.active) {
@@ -97,6 +124,41 @@ let DataOocsPage = class DataOocsPage extends localize(i18next)(PageView) {
97
124
  }
98
125
  updatedAt
99
126
  collectedAt
127
+ reviewActivityInstance {
128
+ ...ActivityInstanceFragment
129
+ }
130
+ resolveActivityInstance {
131
+ ...ActivityInstanceFragment
132
+ }
133
+ }
134
+ }
135
+ }
136
+
137
+ fragment ActivityInstanceFragment on ActivityInstance {
138
+ activityThreads {
139
+ assignee {
140
+ name
141
+ }
142
+ output
143
+ activityApprovals {
144
+ judgment
145
+ approver {
146
+ name
147
+ }
148
+ comment
149
+ createdAt
150
+ updatedAt
151
+ terminatedAt
152
+ }
153
+ activityThreadHistories {
154
+ transaction
155
+ reason
156
+ updater {
157
+ name
158
+ }
159
+ updatedAt
160
+ state
161
+ output
100
162
  }
101
163
  }
102
164
  }
@@ -115,7 +177,11 @@ DataOocsPage.styles = [
115
177
  overflow: auto;
116
178
  }
117
179
 
118
- ox-data-ooc-brief-view {
180
+ activity-thread-timeline {
181
+ margin: var(--margin-default);
182
+ }
183
+
184
+ .end {
119
185
  page-break-after: always;
120
186
  break-after: always;
121
187
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-oocs-page.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-oocs-page.ts"],"names":[],"mappings":";AAAA,OAAO,4CAA4C,CAAA;AAEnD,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAkB,IAAI,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEzC;;GAEG;AAEI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC;IAiB3D,IAAI,OAAO;QACT,OAAO;YACL,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC;SACxC,CAAA;IACH,CAAC;IAED,MAAM;;QACJ,OAAO,MAAA,IAAI,CAAC,QAAQ,0CAAE,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAA,qCAAqC,OAAO,6BAA6B,CAAC,CAAA;IACrH,CAAC;IAED,WAAW,CAAC,OAAY,EAAE,SAAc,EAAE,MAAW;QACnD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf;;eAEG;YACH,MAAM,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,CAAA;YAErC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;SACpD;aAAM;YACL,8BAA8B;SAC/B;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAa;QAC3B,MAAM,OAAO,GAAG;YACd;gBACE,IAAI,EAAE,IAAI;gBACV,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,GAAG;aACX;SACF,CAAA;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC;YAClC,KAAK,EAAE,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4DT;YACD,SAAS,EAAE;gBACT,OAAO;aACR;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAA;IAC9C,CAAC;;AApHM,mBAAM,GAAG;IACd,GAAG,CAAA;;;;;;;;;;KAUF;CACF,CAAA;AAED;IAAC,KAAK,EAAE;;8CAAiB;AAfd,YAAY;IADxB,aAAa,CAAC,gBAAgB,CAAC;GACnB,YAAY,CAsHxB;SAtHY,YAAY","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\n\nimport gql from 'graphql-tag'\nimport { PropertyValues, html, css } from 'lit'\nimport { customElement, state } from 'lit/decorators.js'\nimport { PageView } from '@operato/shell'\nimport { i18next, localize } from '@operato/i18n'\nimport { client } from '@operato/graphql'\n\n/**\n * 이 페이지는 여러개의 Data OOC를 한번에 프린트하기 위한 용도로 사용되는 페이지이다.\n */\n@customElement('data-oocs-page')\nexport class DataOocsPage extends localize(i18next)(PageView) {\n static styles = [\n css`\n :host {\n display: block;\n overflow: auto;\n }\n\n ox-data-ooc-brief-view {\n page-break-after: always;\n break-after: always;\n }\n `\n ]\n\n @state() dataOocs?: any[]\n\n get context() {\n return {\n title: i18next.t('title.data-ooc view')\n }\n }\n\n render() {\n return this.dataOocs?.map(dataOoc => html` <ox-data-ooc-brief-view .dataOoc=${dataOoc}></ox-data-ooc-brief-view> `)\n }\n\n pageUpdated(changes: any, lifecycle: any, before: any) {\n if (this.active) {\n /*\n * this page is activated\n */\n const { ids = '' } = lifecycle.params\n\n this.fetchOocs(ids.split('|').map(id => id.trim()))\n } else {\n /* this page is deactivated */\n }\n }\n\n async fetchOocs(ids: string[]) {\n const filters = [\n {\n name: 'id',\n operator: 'in',\n value: ids\n }\n ]\n\n const response = await client.query({\n query: gql`\n query ($filters: [Filter!]) {\n dataOocs(filters: $filters) {\n items {\n id\n name\n description\n useCase\n dataSet {\n id\n name\n }\n key01\n key02\n key03\n key04\n key05\n partitionKeys\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n data\n rawData\n judgment\n ooc\n oos\n state\n history\n workDate\n workShift\n correctiveInstruction\n correctiveAction\n reviewedAt\n reviewer {\n id\n name\n }\n correctedAt\n corrector {\n id\n name\n }\n updater {\n id\n name\n }\n updatedAt\n collectedAt\n }\n }\n }\n `,\n variables: {\n filters\n }\n })\n\n this.dataOocs = response.data.dataOocs.items\n }\n}\n"]}
1
+ {"version":3,"file":"data-oocs-page.js","sourceRoot":"","sources":["../../../client/pages/data-ooc/data-oocs-page.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/dataset/ox-data-ooc-brief-view.js'\nimport '@things-factory/worklist/dist-client/components/activity-thread-timeline.js'\n\nimport gql from 'graphql-tag'\nimport { PropertyValues, html, css, nothing } from 'lit'\nimport { customElement, state } from 'lit/decorators.js'\nimport { PageView } from '@operato/shell'\nimport { i18next, localize } from '@operato/i18n'\nimport { client } from '@operato/graphql'\n\n/**\n * 이 페이지는 여러개의 Data OOC를 한번에 프린트하기 위한 용도로 사용되는 페이지이다.\n */\n@customElement('data-oocs-page')\nexport class DataOocsPage extends localize(i18next)(PageView) {\n static styles = [\n css`\n :host {\n display: block;\n overflow: auto;\n }\n\n activity-thread-timeline {\n margin: var(--margin-default);\n }\n\n .end {\n page-break-after: always;\n break-after: always;\n }\n `\n ]\n\n @state() dataOocs?: any[]\n\n get context() {\n return {\n title: i18next.t('title.data-ooc view')\n }\n }\n\n render() {\n return this.dataOocs?.map(dataOoc => {\n const reviewActivityThread = dataOoc?.reviewActivityInstance?.activityThreads?.[0]\n const resolveActivityThread = dataOoc?.resolveActivityInstance?.activityThreads?.[0]\n\n return html`\n <ox-data-ooc-brief-view .dataOoc=${dataOoc}></ox-data-ooc-brief-view>\n ${reviewActivityThread\n ? html`\n <activity-thread-timeline\n subtitle=${String(i18next.t('label.ooc review timeline'))}\n .activityThread=${reviewActivityThread}\n short-form\n ></activity-thread-timeline>\n `\n : nothing}\n ${resolveActivityThread\n ? html`\n <activity-thread-timeline\n subtitle=${String(i18next.t('label.ooc resolve timeline'))}\n .activityThread=${resolveActivityThread}\n short-form\n ></activity-thread-timeline>\n `\n : nothing}\n <div class=\"end\"></div>\n `\n })\n }\n\n pageUpdated(changes: any, lifecycle: any, before: any) {\n if (this.active) {\n /*\n * this page is activated\n */\n const { ids = '' } = lifecycle.params\n\n this.fetchOocs(ids.split('|').map(id => id.trim()))\n } else {\n /* this page is deactivated */\n }\n }\n\n async fetchOocs(ids: string[]) {\n const filters = [\n {\n name: 'id',\n operator: 'in',\n value: ids\n }\n ]\n\n const response = await client.query({\n query: gql`\n query ($filters: [Filter!]) {\n dataOocs(filters: $filters) {\n items {\n id\n name\n description\n useCase\n dataSet {\n id\n name\n }\n key01\n key02\n key03\n key04\n key05\n partitionKeys\n dataItems {\n name\n description\n active\n tag\n group\n type\n unit\n options\n quota\n spec\n }\n data\n rawData\n judgment\n ooc\n oos\n state\n history\n workDate\n workShift\n correctiveInstruction\n correctiveAction\n reviewedAt\n reviewer {\n id\n name\n }\n correctedAt\n corrector {\n id\n name\n }\n updater {\n id\n name\n }\n updatedAt\n collectedAt\n reviewActivityInstance {\n ...ActivityInstanceFragment\n }\n resolveActivityInstance {\n ...ActivityInstanceFragment\n }\n }\n }\n }\n\n fragment ActivityInstanceFragment on ActivityInstance {\n activityThreads {\n assignee {\n name\n }\n output\n activityApprovals {\n judgment\n approver {\n name\n }\n comment\n createdAt\n updatedAt\n terminatedAt\n }\n activityThreadHistories {\n transaction\n reason\n updater {\n name\n }\n updatedAt\n state\n output\n }\n }\n }\n `,\n variables: {\n filters\n }\n })\n\n this.dataOocs = response.data.dataOocs.items\n }\n}\n"]}
@@ -122,7 +122,10 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
122
122
  {
123
123
  type: 'string',
124
124
  name: 'key01',
125
- header: i18next.t('field.key-01'),
125
+ header: {
126
+ renderer: i18next.t('field.key-01'),
127
+ group: i18next.t('field.key')
128
+ },
126
129
  record: {
127
130
  editable: false
128
131
  },
@@ -133,7 +136,10 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
133
136
  {
134
137
  type: 'string',
135
138
  name: 'key02',
136
- header: i18next.t('field.key-02'),
139
+ header: {
140
+ renderer: i18next.t('field.key-02'),
141
+ group: i18next.t('field.key')
142
+ },
137
143
  record: {
138
144
  editable: false
139
145
  },
@@ -144,7 +150,10 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
144
150
  {
145
151
  type: 'string',
146
152
  name: 'key03',
147
- header: i18next.t('field.key-03'),
153
+ header: {
154
+ renderer: i18next.t('field.key-03'),
155
+ group: i18next.t('field.key')
156
+ },
148
157
  record: {
149
158
  editable: false
150
159
  },
@@ -155,7 +164,10 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
155
164
  {
156
165
  type: 'string',
157
166
  name: 'key04',
158
- header: i18next.t('field.key-04'),
167
+ header: {
168
+ renderer: i18next.t('field.key-04'),
169
+ group: i18next.t('field.key')
170
+ },
159
171
  record: {
160
172
  editable: false
161
173
  },
@@ -166,7 +178,10 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
166
178
  {
167
179
  type: 'string',
168
180
  name: 'key05',
169
- header: i18next.t('field.key-05'),
181
+ header: {
182
+ renderer: i18next.t('field.key-05'),
183
+ group: i18next.t('field.key')
184
+ },
170
185
  record: {
171
186
  editable: false
172
187
  },
@@ -203,7 +218,7 @@ let DataSampleListPage = class DataSampleListPage extends connect(store)(localiz
203
218
  imex: true
204
219
  },
205
220
  {
206
- type: 'text',
221
+ type: 'json5',
207
222
  name: 'rawData',
208
223
  header: i18next.t('field.raw-data'),
209
224
  record: {
@@ -377,6 +392,8 @@ DataSampleListPage.styles = [
377
392
  flex-direction: column;
378
393
 
379
394
  overflow: hidden;
395
+
396
+ --grid-header-padding: 2px 0 2px 9px;
380
397
  }
381
398
 
382
399
  ox-grist {