@things-factory/dataset 5.0.16 → 6.0.0-alpha.10

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 (76) hide show
  1. package/client/pages/data-archive/data-archive-request-popup.js +10 -15
  2. package/client/pages/data-key-set/data-key-set-importer.js +4 -6
  3. package/client/pages/data-set/data-set-importer.js +1 -1
  4. package/dist-server/service/data-archive/data-archive-mutation.js +6 -6
  5. package/dist-server/service/data-archive/data-archive-mutation.js.map +1 -1
  6. package/dist-server/service/data-archive/data-archive-query.js +7 -9
  7. package/dist-server/service/data-archive/data-archive-query.js.map +1 -1
  8. package/dist-server/service/data-archive/data-archive-type.js.map +1 -1
  9. package/dist-server/service/data-archive/data-archive.js +3 -4
  10. package/dist-server/service/data-archive/data-archive.js.map +1 -1
  11. package/dist-server/service/data-key-set/data-key-item-type.js.map +1 -1
  12. package/dist-server/service/data-key-set/data-key-set-mutation.js +4 -4
  13. package/dist-server/service/data-key-set/data-key-set-mutation.js.map +1 -1
  14. package/dist-server/service/data-key-set/data-key-set-query.js +9 -11
  15. package/dist-server/service/data-key-set/data-key-set-query.js.map +1 -1
  16. package/dist-server/service/data-key-set/data-key-set-type.js.map +1 -1
  17. package/dist-server/service/data-key-set/data-key-set.js +3 -4
  18. package/dist-server/service/data-key-set/data-key-set.js.map +1 -1
  19. package/dist-server/service/data-ooc/data-ooc-mutation.js +1 -1
  20. package/dist-server/service/data-ooc/data-ooc-mutation.js.map +1 -1
  21. package/dist-server/service/data-ooc/data-ooc-query.js +9 -11
  22. package/dist-server/service/data-ooc/data-ooc-query.js.map +1 -1
  23. package/dist-server/service/data-ooc/data-ooc-subscription.js +1 -2
  24. package/dist-server/service/data-ooc/data-ooc-subscription.js.map +1 -1
  25. package/dist-server/service/data-ooc/data-ooc-type.js +2 -3
  26. package/dist-server/service/data-ooc/data-ooc-type.js.map +1 -1
  27. package/dist-server/service/data-ooc/data-ooc.js +4 -5
  28. package/dist-server/service/data-ooc/data-ooc.js.map +1 -1
  29. package/dist-server/service/data-sample/data-sample-mutation.js.map +1 -1
  30. package/dist-server/service/data-sample/data-sample-query.js +12 -14
  31. package/dist-server/service/data-sample/data-sample-query.js.map +1 -1
  32. package/dist-server/service/data-sample/data-sample-type.js +1 -2
  33. package/dist-server/service/data-sample/data-sample-type.js.map +1 -1
  34. package/dist-server/service/data-sample/data-sample.js +3 -4
  35. package/dist-server/service/data-sample/data-sample.js.map +1 -1
  36. package/dist-server/service/data-sensor/data-sensor-mutation.js +4 -4
  37. package/dist-server/service/data-sensor/data-sensor-mutation.js.map +1 -1
  38. package/dist-server/service/data-sensor/data-sensor-query.js +9 -11
  39. package/dist-server/service/data-sensor/data-sensor-query.js.map +1 -1
  40. package/dist-server/service/data-sensor/data-sensor-type.js +4 -5
  41. package/dist-server/service/data-sensor/data-sensor-type.js.map +1 -1
  42. package/dist-server/service/data-sensor/data-sensor.js +4 -5
  43. package/dist-server/service/data-sensor/data-sensor.js.map +1 -1
  44. package/dist-server/service/data-set/data-item-type.js.map +1 -1
  45. package/dist-server/service/data-set/data-set-mutation.js +6 -5
  46. package/dist-server/service/data-set/data-set-mutation.js.map +1 -1
  47. package/dist-server/service/data-set/data-set-query.js +24 -26
  48. package/dist-server/service/data-set/data-set-query.js.map +1 -1
  49. package/dist-server/service/data-set/data-set-type.js +6 -7
  50. package/dist-server/service/data-set/data-set-type.js.map +1 -1
  51. package/dist-server/service/data-set/data-set.js +5 -6
  52. package/dist-server/service/data-set/data-set.js.map +1 -1
  53. package/dist-server/service/data-set-history/data-set-history-query.js +14 -16
  54. package/dist-server/service/data-set-history/data-set-history-query.js.map +1 -1
  55. package/dist-server/service/data-set-history/data-set-history-type.js.map +1 -1
  56. package/dist-server/service/data-set-history/data-set-history.js +5 -6
  57. package/dist-server/service/data-set-history/data-set-history.js.map +1 -1
  58. package/dist-server/service/data-set-history/event-subscriber.js.map +1 -1
  59. package/dist-server/service/data-spec/data-spec-query.js.map +1 -1
  60. package/dist-server/service/data-spec/data-spec.js.map +1 -1
  61. package/dist-server/tsconfig.tsbuildinfo +1 -1
  62. package/package.json +9 -9
  63. package/server/service/data-archive/data-archive-mutation.ts +53 -24
  64. package/server/service/data-archive/data-archive-query.ts +7 -8
  65. package/server/service/data-key-set/data-key-set-mutation.ts +16 -13
  66. package/server/service/data-key-set/data-key-set-query.ts +8 -9
  67. package/server/service/data-ooc/data-ooc-mutation.ts +12 -8
  68. package/server/service/data-ooc/data-ooc-query.ts +8 -9
  69. package/server/service/data-ooc/data-ooc-subscription.ts +1 -2
  70. package/server/service/data-sample/data-sample-mutation.ts +4 -1
  71. package/server/service/data-sample/data-sample-query.ts +10 -11
  72. package/server/service/data-sensor/data-sensor-mutation.ts +15 -9
  73. package/server/service/data-sensor/data-sensor-query.ts +9 -10
  74. package/server/service/data-set/data-set-mutation.ts +17 -12
  75. package/server/service/data-set/data-set-query.ts +18 -19
  76. package/server/service/data-set-history/data-set-history-query.ts +13 -14
@@ -1,5 +1,4 @@
1
1
  import { SingleColumnFormStyles } from '@things-factory/form-ui'
2
- import '@things-factory/grist-ui'
3
2
  import { i18next, localize } from '@things-factory/i18n-base'
4
3
  import { client, CustomAlert } from '@things-factory/shell'
5
4
  import gql from 'graphql-tag'
@@ -40,15 +39,13 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
40
39
  <form id="input-form" name="generation" class="single-column-form" @submit=${e => this.onSubmit(e)}>
41
40
  <fieldset>
42
41
  <label>${i18next.t('label.start-date')}</label>
43
- <input type="month" name="startDate" required/>
42
+ <input type="month" name="startDate" required />
44
43
  <label>${i18next.t('label.end-date')}</label>
45
- <input type="month" name="endDate" .value=${moment().format('YYYY-MM')}/>
44
+ <input type="month" name="endDate" .value=${moment().format('YYYY-MM')} />
46
45
  <label>${i18next.t('label.data-set-type')}</label>
47
46
  <select name="type" required>
48
- ${(this.dataSetTypes || []).map(
49
- t => html`<option value="${t && t.value}">${t && t.display}</option>`
50
- )}
51
- </select>
47
+ ${(this.dataSetTypes || []).map(t => html`<option value="${t && t.value}">${t && t.display}</option>`)}
48
+ </select>
52
49
  </fieldset>
53
50
  </form>
54
51
 
@@ -58,19 +55,16 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
58
55
  `
59
56
  }
60
57
 
61
- async firstUpdated() {
62
-
63
- }
58
+ async firstUpdated() {}
64
59
 
65
60
  async onSubmit(e) {
66
61
  e.preventDefault()
67
62
  this.requestArchive()
68
63
  }
69
64
 
70
-
71
65
  serializeFormData() {
72
66
  const obj = {}
73
-
67
+
74
68
  Array.from(this.shadowRoot.querySelectorAll('form#input-form input, select')).forEach(field => {
75
69
  if (!field.hasAttribute('hidden') && field.value) {
76
70
  obj[field.name] = field.type === 'checkbox' ? field.checked : field.value
@@ -115,7 +109,9 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
115
109
  if (!response.errors) {
116
110
  this.dispatchEvent(new CustomEvent('requested', {}))
117
111
 
118
- const { createDataArchive: { id } } = response.data
112
+ const {
113
+ createDataArchive: { id }
114
+ } = response.data
119
115
  dataArchive['id'] = id
120
116
 
121
117
  this._generateArchiveAndDownloadUrl(dataArchive)
@@ -126,7 +122,6 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
126
122
  text: i18next.t('text.data-archive waits'),
127
123
  confirmButton: { text: i18next.t('button.confirm') }
128
124
  })
129
-
130
125
  } else {
131
126
  console.error(response.errors)
132
127
  this.showToast(i18next.t('text.failed'))
@@ -147,7 +142,7 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
147
142
  variables: { patch: dataArchive }
148
143
  })
149
144
 
150
- if (!response.errors) {
145
+ if (!response.errors) {
151
146
  this.showToast(i18next.t('title.data-archive downloads ready'))
152
147
  this.dispatchEvent(new CustomEvent('created', {}))
153
148
  } else {
@@ -75,11 +75,9 @@ export class DataKeySetImporter extends LitElement {
75
75
  <ox-grist
76
76
  .mode=${isMobileDevice() ? 'LIST' : 'GRID'}
77
77
  .config=${this.columns}
78
- .data=${
79
- {
80
- records: this.dataKeySets
81
- }
82
- }
78
+ .data=${{
79
+ records: this.dataKeySets
80
+ }}
83
81
  ></ox-grist>
84
82
 
85
83
  <div class="button-container">
@@ -98,7 +96,7 @@ export class DataKeySetImporter extends LitElement {
98
96
  variables: { dataKeySets: this.dataKeySets }
99
97
  })
100
98
 
101
- if (response.error?.length) return
99
+ if (response.errors?.length) return
102
100
 
103
101
  this.dispatchEvent(new CustomEvent('imported'))
104
102
  }
@@ -94,7 +94,7 @@ export class DataSetImporter extends LitElement {
94
94
  variables: { dataSets: this.dataSets }
95
95
  })
96
96
 
97
- if (response.error?.length) return
97
+ if (response.errors?.length) return
98
98
 
99
99
  this.dispatchEvent(new CustomEvent('imported'))
100
100
  }
@@ -2,20 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataArchiveMutation = void 0;
4
4
  const tslib_1 = require("tslib");
5
+ const i18next_1 = tslib_1.__importDefault(require("i18next"));
6
+ const node_fetch_1 = tslib_1.__importDefault(require("node-fetch"));
5
7
  const type_graphql_1 = require("type-graphql");
6
8
  const typeorm_1 = require("typeorm");
7
- const node_fetch_1 = tslib_1.__importDefault(require("node-fetch"));
8
- const i18next_1 = tslib_1.__importDefault(require("i18next"));
9
+ const config_resolver_1 = require("../../utils/config-resolver");
9
10
  const data_archive_1 = require("./data-archive");
10
11
  const data_archive_type_1 = require("./data-archive-type");
11
- const config_resolver_1 = require("../../utils/config-resolver");
12
12
  const { config } = require('@things-factory/env');
13
13
  const crypto = require('crypto');
14
14
  let DataArchiveMutation = class DataArchiveMutation {
15
15
  /**
16
16
  * It may use 'func-[dev]-data-set-download' in https://github.com/operatochef/serverless
17
17
  * This function requests athena query and save the result as csv.gz in s3
18
- */
18
+ */
19
19
  async generatePresignedUrl(patch, context) {
20
20
  const { domain, user, tx, notify, lng } = context.state;
21
21
  // const dataArchiveRepo = tx.getRepository(DataArchive)
@@ -64,7 +64,7 @@ let DataArchiveMutation = class DataArchiveMutation {
64
64
  const { domain, user, tx } = context.state;
65
65
  const dataArchiveRepo = tx.getRepository(data_archive_1.DataArchive);
66
66
  const dataArchive = await dataArchiveRepo.findOne({
67
- where: { domain, id },
67
+ where: { domain: { id: domain.id }, id },
68
68
  relations: ['domain', 'creator', 'updater']
69
69
  });
70
70
  const result = await dataArchiveRepo.save(Object.assign(Object.assign(Object.assign({}, dataArchive), patch), { updater: user }));
@@ -124,7 +124,7 @@ let DataArchiveMutation = class DataArchiveMutation {
124
124
  const originals = await dataArchiveRepo.find({
125
125
  where: {
126
126
  id: (0, typeorm_1.In)(ids),
127
- domain
127
+ domain: { id: domain.id }
128
128
  },
129
129
  relations: ['domain']
130
130
  });
@@ -1 +1 @@
1
- {"version":3,"file":"data-archive-mutation.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AACtE,qCAA4B;AAC5B,oEAA8B;AAC9B,8DAA6B;AAE7B,iDAA4C;AAC5C,2DAAsE;AACtE,iEAA4D;AAE5D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAAA;AACjD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;AAGzB,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAE9B;;;MAGE;IAII,AAAN,KAAK,CAAC,oBAAoB,CAAe,KAAuB,EAAS,OAAY;QACnF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QACvD,wDAAwD;QACxD,MAAM,CAAC,GAAG,iBAAO,CAAC,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;QAChD,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAC,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAEpF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,iBACzB,MAAM,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,EACzB,QAAQ,IACL,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EACvB,CAAA;QAEF,MAAM,GAAG,GAAG,IAAA,gCAAc,EAAC,QAAQ,CAAC,CAAA;QAEpC,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAK,EAAC,GAAG,GAAG,EAAE,EAAE;YACpC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAC,cAAc,EAAE,kBAAkB,EAAC;YAC7C,IAAI;SACL,CAAC,CAAA;QAEF,MAAM,OAAO,GAAG;YACd,SAAS,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;YACvB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,EAAE;YACT,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,EAAE;SACR,CAAA;QAED,IAAI,OAAO,CAAC,EAAE,EAAE;YACd,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;YACrC,KAAK,CAAC,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAA;YAC5C,KAAK,CAAC,MAAM,GAAG,MAAM,CAAA;YAErB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,oCAAoC,CAAC,CAAA;YAC1D,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,WAAW,CAAA;SACnC;aAAM;YACL,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAClB,KAAK,CAAC,MAAM,GAAG,OAAO,CAAA;YAEtB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,mCAAmC,CAAC,CAAA;YACzD,gCAAgC;YAChC,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAAA;SACxB;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QAErE,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,CAAA;QAEzB,OAAO,MAAM,CAAA;IACf,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB,CAAqB,WAA2B,EAAS,OAAY;QAC1F,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAA;QAErD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,iCACpC,WAAW,KACd,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB,CAAY,EAAU,EAAgB,KAAuB,EAAS,OAAY;QACvG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAA;QAErD,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC;YAChD,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YACrB,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;SAC5C,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,+CACpC,WAAW,GACX,KAAK,KACR,OAAO,EAAE,IAAI,IACb,CAAA;QAEF,OAAO,MAAM,CAAA;IACf,CAAC;IAKK,AAAN,KAAK,CAAC,yBAAyB,CACe,OAA2B,EAChE,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAA;QAErD,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAA;QACzF,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,CAAA;QAEzF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,GAAG,CAAA;YAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;gBAEnC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,iCACpC,SAAS,KACZ,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,IACb,CAAA;gBAEF,OAAO,CAAC,IAAI,iCACP,MAAM,KACT,MAAM,IACN,CAAA;aACH;SACF;QAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,GAAG,CAAA;YAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAA;gBACnC,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE;oBAC9D,SAAS,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;iBAC5C,CAAC,CAAA;gBAEF,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,+CACpC,WAAW,GACX,SAAS,KACZ,OAAO,EAAE,IAAI,IACb,CAAA;gBAEF,OAAO,CAAC,IAAI,iCACP,MAAM,KACT,MAAM,IACN,CAAA;aACH;SACF;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;IAKK,AAAN,KAAK,CAAC,iBAAiB,CAAY,EAAU,EAAS,OAAY;QAChE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,MAAM,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAA;QAC1D,OAAO,IAAI,CAAA;IACb,CAAC;IAKK,AAAN,KAAK,CAAC,kBAAkB,CAA+B,GAAa,EAAS,OAAY;QACvF,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEpC,MAAM,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAC,MAAM,CAAC;YACzC,MAAM;YACN,EAAE,EAAE,IAAA,YAAE,EAAC,GAAG,CAAC;SACZ,CAAC,CAAA;QAEF,OAAO,IAAI,CAAA;IACb,CAAC;IAKK,AAAN,KAAK,CAAC,kBAAkB,CAC2B,YAA2B,EACrE,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QACpC,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAA;QAErD,MAAM,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,WAAwB,EAAE,EAAE;YAClD,MAAM,kBAAkB,GAAgB,MAAM,eAAe,CAAC,IAAI,iBAChE,MAAM,IACH,WAAW,EACd,CAAA;QACJ,CAAC,CAAC,CACH,CAAA;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAKK,AAAN,KAAK,CAAC,gBAAgB,CAA+B,GAAa,EAAS,OAAY;QACrF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAC1C,MAAM,eAAe,GAAG,EAAE,CAAC,aAAa,CAAC,0BAAW,CAAC,CAAA;QAErD,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC;YAC3C,KAAK,EAAE;gBACL,EAAE,EAAE,IAAA,YAAE,EAAC,GAAG,CAAC;gBACX,MAAM;aACP;YACD,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAA;QAEF,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE;YACzB,OAAO,EAAE,CAAA;SACV;QAED,IAAI,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YACzC,IAAI,aAAa,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;YAEvC,uCACK,WAAW,KACd,EAAE,EAAE,aAAa,EACjB,MAAM,EACN,OAAO,EAAE,IAAI,EACb,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,IACrB;QACH,CAAC,CAAC,CAAA;QAEF,IAAI,kBAAkB,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAE7D,OAAO,kBAAkB,CAAA;IAC3B,CAAC;CACF,CAAA;AAtOO;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IACnD,mBAAA,IAAA,kBAAG,EAAC,OAAO,CAAC,CAAA;IAA2B,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAxB,oCAAgB;;+DAkD/D;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;IACtD,mBAAA,IAAA,kBAAG,EAAC,aAAa,CAAC,CAAA;IAA+B,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAtB,kCAAc;;4DAYtE;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE,CAAC;IAC9D,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAc,mBAAA,IAAA,kBAAG,EAAC,OAAO,CAAC,CAAA;IAA2B,mBAAA,IAAA,kBAAG,GAAE,CAAA;;qDAAxB,oCAAgB;;4DAgBnF;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,0BAAW,CAAC,EAAE,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC;IAEjG,mBAAA,IAAA,kBAAG,EAAC,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,oCAAgB,CAAC,CAAC,CAAA;IAC1C,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;oEAkDP;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;IAC9C,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAc,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;4DAKpD;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;IACvD,mBAAA,IAAA,kBAAG,EAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IAAiB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;6DAS3E;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;IAE/E,mBAAA,IAAA,kBAAG,EAAC,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,oCAAgB,CAAC,CAAC,CAAA;IAC/C,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;6DAeP;AAKK;IAHL,IAAA,wBAAS,EAAC,uFAAuF,CAAC;IAClG,IAAA,wBAAS,EAAC,cAAc,CAAC;IACzB,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC,0BAAW,CAAC,EAAE,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IAC9D,mBAAA,IAAA,kBAAG,EAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IAAiB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;2DAiCzE;AA9OU,mBAAmB;IAD/B,IAAA,uBAAQ,EAAC,0BAAW,CAAC;GACT,mBAAmB,CA+O/B;AA/OY,kDAAmB","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\nimport fetch from 'node-fetch'\nimport i18next from 'i18next'\n\nimport { DataArchive } from './data-archive'\nimport { DataArchivePatch, NewDataArchive } from './data-archive-type'\nimport { getEndpointUrl } from '../../utils/config-resolver'\n\nconst { config } = require('@things-factory/env')\nconst crypto = require('crypto')\n\n@Resolver(DataArchive)\nexport class DataArchiveMutation {\n\n /** \n * It may use 'func-[dev]-data-set-download' in https://github.com/operatochef/serverless \n * This function requests athena query and save the result as csv.gz in s3\n */\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To create new DataArchive' })\n async generatePresignedUrl(@Arg('patch') patch: DataArchivePatch, @Ctx() context: any): Promise<DataArchive> {\n const { domain, user, tx, notify, lng } = context.state\n // const dataArchiveRepo = tx.getRepository(DataArchive)\n const t = i18next.getFixedT(lng, 'translations')\n const { dataset: { endpoint, datasource: { database } }} = config.get('dataArchive')\n \n const body = JSON.stringify({ \n domain: domain?.subdomain,\n database,\n ...patch?.requestParams\n })\n\n const url = getEndpointUrl(endpoint)\n\n const fetched = await fetch(`${url}`, {\n method: 'POST',\n headers: {'Content-Type': 'application/json'},\n body\n })\n \n const message = {\n receivers: [user.email],\n mode: 'in-app',\n title: '',\n body: '',\n url: ''\n }\n\n if (fetched.ok) {\n const response = await fetched.json()\n patch.downloadUrl = response['presignedUrl']\n patch.status = 'done'\n\n message['title'] = t('title.data-archive downloads ready')\n message['url'] = patch.downloadUrl\n } else {\n const error = await fetched.text()\n console.log(error)\n patch.status = 'error'\n \n message['title'] = t('title.data-archive request failed')\n // may not user-friendly message\n message['body'] = error\n }\n\n const result = await this.updateDataArchive(patch.id, patch, context)\n\n notify && notify(message)\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To create new DataArchive' })\n async createDataArchive(@Arg('dataArchive') dataArchive: NewDataArchive, @Ctx() context: any): Promise<DataArchive> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n domain,\n creator: user,\n updater: user\n })\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To modify DataArchive information' })\n async updateDataArchive(@Arg('id') id: string, @Arg('patch') patch: DataArchivePatch, @Ctx() context: any): Promise<DataArchive> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const dataArchive = await dataArchiveRepo.findOne({\n where: { domain, id },\n relations: ['domain', 'creator', 'updater']\n })\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => [DataArchive], { description: \"To modify multiple DataArchives' information\" })\n async updateMultipleDataArchive(\n @Arg('patches', type => [DataArchivePatch]) patches: DataArchivePatch[],\n @Ctx() context: any\n ): Promise<DataArchive[]> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n\n if (_createRecords.length > 0) {\n const cuFlag = '+'\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await dataArchiveRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({\n ...result,\n cuFlag\n })\n }\n }\n\n if (_updateRecords.length > 0) {\n const cuFlag = 'M'\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const dataArchive = await dataArchiveRepo.findOne(newRecord.id, {\n relations: ['domain', 'creator', 'updater']\n })\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n ...newRecord,\n updater: user\n })\n\n results.push({\n ...result,\n cuFlag\n })\n }\n }\n\n return results\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete DataArchive' })\n async deleteDataArchive(@Arg('id') id: string, @Ctx() context: any): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataArchive).delete({ domain, id })\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple dataArchives' })\n async deleteDataArchives(@Arg('ids', type => [String]) ids: string[], @Ctx() context: any): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataArchive).delete({\n domain,\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To import multiple data-archives' })\n async importDataArchives(\n @Arg('dataArchives', type => [DataArchivePatch]) dataArchives: DataArchive[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { domain, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n await Promise.all(\n dataArchives.map(async (dataArchive: DataArchive) => {\n const createdDataArchive: DataArchive = await dataArchiveRepo.save({\n domain,\n ...dataArchive\n })\n })\n )\n\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => [DataArchive], { description: 'To copy multiple data-archives' })\n async copyDataArchives(@Arg('ids', type => [String]) ids: string[], @Ctx() context: any): Promise<DataArchive[]> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const originals = await dataArchiveRepo.find({\n where: {\n id: In(ids),\n domain\n },\n relations: ['domain']\n })\n\n if (originals.length == 0) {\n return []\n }\n\n var newCopys = originals.map(dataArchive => {\n let dataArchiveId = crypto.randomUUID()\n\n return {\n ...dataArchive,\n id: dataArchiveId,\n domain,\n creator: user,\n updater: user,\n updatedAt: undefined,\n createdAt: undefined\n }\n })\n\n var copiedDataArchives = await dataArchiveRepo.save(newCopys)\n\n return copiedDataArchives\n }\n}\n"]}
1
+ {"version":3,"file":"data-archive-mutation.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import i18next from 'i18next'\nimport fetch from 'node-fetch'\nimport {\n Arg,\n Ctx,\n Directive,\n Mutation,\n Resolver\n} from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { getEndpointUrl } from '../../utils/config-resolver'\nimport { DataArchive } from './data-archive'\nimport {\n DataArchivePatch,\n NewDataArchive\n} from './data-archive-type'\n\nconst { config } = require('@things-factory/env')\nconst crypto = require('crypto')\n\n@Resolver(DataArchive)\nexport class DataArchiveMutation {\n /**\n * It may use 'func-[dev]-data-set-download' in https://github.com/operatochef/serverless\n * This function requests athena query and save the result as csv.gz in s3\n */\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To create new DataArchive' })\n async generatePresignedUrl(\n @Arg('patch') patch: DataArchivePatch,\n @Ctx() context: ResolverContext\n ): Promise<DataArchive> {\n const { domain, user, tx, notify, lng } = context.state\n // const dataArchiveRepo = tx.getRepository(DataArchive)\n const t = i18next.getFixedT(lng, 'translations')\n const {\n dataset: {\n endpoint,\n datasource: { database }\n }\n } = config.get('dataArchive')\n\n const body = JSON.stringify({\n domain: domain?.subdomain,\n database,\n ...patch?.requestParams\n })\n\n const url = getEndpointUrl(endpoint)\n\n const fetched = await fetch(`${url}`, {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body\n })\n\n const message = {\n receivers: [user.email],\n mode: 'in-app',\n title: '',\n body: '',\n url: ''\n }\n\n if (fetched.ok) {\n const response = await fetched.json()\n patch.downloadUrl = response['presignedUrl']\n patch.status = 'done'\n\n message['title'] = t('title.data-archive downloads ready')\n message['url'] = patch.downloadUrl\n } else {\n const error = await fetched.text()\n console.log(error)\n patch.status = 'error'\n\n message['title'] = t('title.data-archive request failed')\n // may not user-friendly message\n message['body'] = error\n }\n\n const result = await this.updateDataArchive(patch.id, patch, context)\n\n notify && notify(message)\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To create new DataArchive' })\n async createDataArchive(\n @Arg('dataArchive') dataArchive: NewDataArchive,\n @Ctx() context: ResolverContext\n ): Promise<DataArchive> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n domain,\n creator: user,\n updater: user\n })\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => DataArchive, { description: 'To modify DataArchive information' })\n async updateDataArchive(\n @Arg('id') id: string,\n @Arg('patch') patch: DataArchivePatch,\n @Ctx() context: ResolverContext\n ): Promise<DataArchive> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const dataArchive = await dataArchiveRepo.findOne({\n where: { domain: { id: domain.id }, id },\n relations: ['domain', 'creator', 'updater']\n })\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n ...patch,\n updater: user\n })\n\n return result\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => [DataArchive], { description: \"To modify multiple DataArchives' information\" })\n async updateMultipleDataArchive(\n @Arg('patches', type => [DataArchivePatch]) patches: DataArchivePatch[],\n @Ctx() context: any\n ): Promise<DataArchive[]> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n\n if (_createRecords.length > 0) {\n const cuFlag = '+'\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await dataArchiveRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({\n ...result,\n cuFlag\n })\n }\n }\n\n if (_updateRecords.length > 0) {\n const cuFlag = 'M'\n for (let i = 0; i < _updateRecords.length; i++) {\n const newRecord = _updateRecords[i]\n const dataArchive = await dataArchiveRepo.findOne(newRecord.id, {\n relations: ['domain', 'creator', 'updater']\n })\n\n const result = await dataArchiveRepo.save({\n ...dataArchive,\n ...newRecord,\n updater: user\n })\n\n results.push({\n ...result,\n cuFlag\n })\n }\n }\n\n return results\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete DataArchive' })\n async deleteDataArchive(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataArchive).delete({ domain, id })\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple dataArchives' })\n async deleteDataArchives(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataArchive).delete({\n domain,\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To import multiple data-archives' })\n async importDataArchives(\n @Arg('dataArchives', type => [DataArchivePatch]) dataArchives: DataArchive[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n await Promise.all(\n dataArchives.map(async (dataArchive: DataArchive) => {\n const createdDataArchive: DataArchive = await dataArchiveRepo.save({\n domain,\n ...dataArchive\n })\n })\n )\n\n return true\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Directive('@transaction')\n @Mutation(returns => [DataArchive], { description: 'To copy multiple data-archives' })\n async copyDataArchives(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<DataArchive[]> {\n const { domain, user, tx } = context.state\n const dataArchiveRepo = tx.getRepository(DataArchive)\n\n const originals = await dataArchiveRepo.find({\n where: {\n id: In(ids),\n domain: { id: domain.id }\n },\n relations: ['domain']\n })\n\n if (originals.length == 0) {\n return []\n }\n\n var newCopys = originals.map(dataArchive => {\n let dataArchiveId = crypto.randomUUID()\n\n return {\n ...dataArchive,\n id: dataArchiveId,\n domain,\n creator: user,\n updater: user,\n updatedAt: undefined,\n createdAt: undefined\n }\n })\n\n var copiedDataArchives = await dataArchiveRepo.save(newCopys)\n\n return copiedDataArchives\n }\n}\n"]}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.DataArchiveQuery = void 0;
5
4
  const tslib_1 = require("tslib");
6
5
  const type_graphql_1 = require("type-graphql");
7
- const typeorm_1 = require("typeorm");
8
6
  const auth_base_1 = require("@things-factory/auth-base");
9
7
  const shell_1 = require("@things-factory/shell");
10
8
  const data_archive_1 = require("./data-archive");
@@ -13,14 +11,14 @@ var parser = require('cron-parser');
13
11
  let DataArchiveQuery = class DataArchiveQuery {
14
12
  async dataArchive(id, context) {
15
13
  const { domain } = context.state;
16
- return await (0, typeorm_1.getRepository)(data_archive_1.DataArchive).findOne({
17
- where: { domain, id }
14
+ return await (0, shell_1.getRepository)(data_archive_1.DataArchive).findOne({
15
+ where: { domain: { id: domain.id }, id }
18
16
  });
19
17
  }
20
18
  async dataArchives(params, context) {
21
19
  const { domain } = context.state;
22
20
  const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
23
- repository: (0, typeorm_1.getRepository)(data_archive_1.DataArchive),
21
+ repository: (0, shell_1.getRepository)(data_archive_1.DataArchive),
24
22
  params,
25
23
  domain,
26
24
  alias: 'dataArchive',
@@ -30,13 +28,13 @@ let DataArchiveQuery = class DataArchiveQuery {
30
28
  return { items, total };
31
29
  }
32
30
  async domain(dataArchive) {
33
- return await (0, typeorm_1.getRepository)(shell_1.Domain).findOne(dataArchive.domainId);
31
+ return await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: dataArchive.domainId });
34
32
  }
35
33
  async updater(dataArchive) {
36
- return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(dataArchive.updaterId);
34
+ return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: dataArchive.updaterId });
37
35
  }
38
36
  async creator(dataArchive) {
39
- return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(dataArchive.creatorId);
37
+ return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: dataArchive.creatorId });
40
38
  }
41
39
  };
42
40
  tslib_1.__decorate([
@@ -54,7 +52,7 @@ tslib_1.__decorate([
54
52
  tslib_1.__param(0, (0, type_graphql_1.Args)()),
55
53
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
56
54
  tslib_1.__metadata("design:type", Function),
57
- tslib_1.__metadata("design:paramtypes", [typeof (_a = typeof shell_1.ListParam !== "undefined" && shell_1.ListParam) === "function" ? _a : Object, Object]),
55
+ tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
58
56
  tslib_1.__metadata("design:returntype", Promise)
59
57
  ], DataArchiveQuery.prototype, "dataArchives", null);
60
58
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"data-archive-query.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { getRepository } from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, ListParam } from '@things-factory/shell'\n\nimport { DataArchive } from './data-archive'\nimport { DataArchiveList } from './data-archive-type'\n\nvar parser = require('cron-parser')\n\n@Resolver(DataArchive)\nexport class DataArchiveQuery {\n @Directive('@privilege(category: \"data-archive\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => DataArchive, { description: 'To fetch a DataArchive' })\n async dataArchive(@Arg('id') id: string, @Ctx() context: any): Promise<DataArchive> {\n const { domain } = context.state\n\n return await getRepository(DataArchive).findOne({\n where: { domain, id }\n })\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => DataArchiveList, { description: 'To fetch multiple DataArchives' })\n async dataArchives(@Args() params: ListParam, @Ctx() context: any): Promise<DataArchiveList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(DataArchive),\n params,\n domain,\n alias: 'dataArchive',\n searchables: []\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() dataArchive: DataArchive): Promise<Domain> {\n return await getRepository(Domain).findOne(dataArchive.domainId)\n }\n\n @FieldResolver(type => User)\n async updater(@Root() dataArchive: DataArchive): Promise<User> {\n return await getRepository(User).findOne(dataArchive.updaterId)\n }\n\n @FieldResolver(type => User)\n async creator(@Root() dataArchive: DataArchive): Promise<User> {\n return await getRepository(User).findOne(dataArchive.creatorId)\n }\n}\n"]}
1
+ {"version":3,"file":"data-archive-query.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA8F;AAE9F,yDAAsD;AACtD,iDAAuG;AAEvG,iDAA4C;AAC5C,2DAAqD;AAErD,IAAI,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;AAGnC,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAG3B,KAAK,CAAC,WAAW,CAAY,EAAU,EAAS,OAAwB;QACtE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,0BAAW,CAAC,CAAC,OAAO,CAAC;YAC9C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;SACzC,CAAC,CAAA;IACJ,CAAC;IAID,KAAK,CAAC,YAAY,CAAS,MAAiB,EAAS,OAAwB;QAC3E,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,UAAU,EAAE,IAAA,qBAAa,EAAC,0BAAW,CAAC;YACtC,MAAM;YACN,MAAM;YACN,KAAK,EAAE,aAAa;YACpB,WAAW,EAAE,EAAE;SAChB,CAAC,CAAA;QAEF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGD,KAAK,CAAC,MAAM,CAAS,WAAwB;QAC3C,OAAO,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC5E,CAAC;IAGD,KAAK,CAAC,OAAO,CAAS,WAAwB;QAC5C,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;IAC3E,CAAC;IAGD,KAAK,CAAC,OAAO,CAAS,WAAwB;QAC5C,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,CAAA;IAC3E,CAAC;CACF,CAAA;AAxCC;IAFC,IAAA,wBAAS,EAAC,oFAAoF,CAAC;IAC/F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,0BAAW,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;IACtD,mBAAA,IAAA,kBAAG,EAAC,IAAI,CAAC,CAAA;IAAc,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;mDAM9C;AAID;IAFC,IAAA,wBAAS,EAAC,oFAAoF,CAAC;IAC/F,IAAA,oBAAK,EAAC,OAAO,CAAC,EAAE,CAAC,mCAAe,EAAE,EAAE,WAAW,EAAE,gCAAgC,EAAE,CAAC;IACjE,mBAAA,IAAA,mBAAI,GAAE,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,iBAAS;;oDAc3C;AAGD;IADC,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IAChB,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAc,0BAAW;;8CAE5C;AAGD;IADC,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAc,0BAAW;;+CAE7C;AAGD;IADC,IAAA,4BAAa,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,CAAC;IACb,mBAAA,IAAA,mBAAI,GAAE,CAAA;;6CAAc,0BAAW;;+CAE7C;AA1CU,gBAAgB;IAD5B,IAAA,uBAAQ,EAAC,0BAAW,CAAC;GACT,gBAAgB,CA2C5B;AA3CY,4CAAgB","sourcesContent":["import { Arg, Args, Ctx, Directive, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, ListParam, getRepository } from '@things-factory/shell'\n\nimport { DataArchive } from './data-archive'\nimport { DataArchiveList } from './data-archive-type'\n\nvar parser = require('cron-parser')\n\n@Resolver(DataArchive)\nexport class DataArchiveQuery {\n @Directive('@privilege(category: \"data-archive\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => DataArchive, { description: 'To fetch a DataArchive' })\n async dataArchive(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<DataArchive> {\n const { domain } = context.state\n\n return await getRepository(DataArchive).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Directive('@privilege(category: \"data-archive\", privilege: \"query\", domainOwnerGranted: true)')\n @Query(returns => DataArchiveList, { description: 'To fetch multiple DataArchives' })\n async dataArchives(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<DataArchiveList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n repository: getRepository(DataArchive),\n params,\n domain,\n alias: 'dataArchive',\n searchables: []\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() dataArchive: DataArchive): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: dataArchive.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() dataArchive: DataArchive): Promise<User> {\n return await getRepository(User).findOneBy({ id: dataArchive.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() dataArchive: DataArchive): Promise<User> {\n return await getRepository(User).findOneBy({ id: dataArchive.creatorId })\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"data-archive-type.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AACpE,iDAA4C;AAC5C,iDAA+D;AAGxD,IAAM,cAAc,GAApB,MAAM,cAAc;CAa1B,CAAA;AAZC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACY;AAEtC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACV;AAEtC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACX;AAXJ,cAAc;IAD1B,IAAA,wBAAS,GAAE;GACC,cAAc,CAa1B;AAbY,wCAAc;AAgBpB,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAkB5B,CAAA;AAjBC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CAC3B;AAEX;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACY;AAEtC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACV;AAEtC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACX;AAEf;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACZ;AAjBH,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CAkB5B;AAlBY,4CAAgB;AAqBtB,IAAM,eAAe,GAArB,MAAM,eAAe;CAM3B,CAAA;AALC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,0BAAW,CAAC,CAAC;;8CACT;AAEpB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;8CACN;AALF,eAAe;IAD3B,IAAA,yBAAU,GAAE;GACA,eAAe,CAM3B;AANY,0CAAe","sourcesContent":["import { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\nimport { DataArchive } from './data-archive'\nimport { ObjectRef, ScalarObject } from '@things-factory/shell'\n\n@InputType()\nexport class NewDataArchive {\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n \n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Field({ nullable: true })\n status?: string\n\n}\n\n@InputType()\nexport class DataArchivePatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n\n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Field({ nullable: true })\n status?: string\n\n @Field({ nullable: true })\n cuFlag: string\n}\n\n@ObjectType()\nexport class DataArchiveList {\n @Field(type => [DataArchive])\n items: DataArchive[]\n\n @Field(type => Int)\n total: number\n}\n"]}
1
+ {"version":3,"file":"data-archive-type.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AACpE,iDAA4C;AAC5C,iDAA+D;AAG/D,IAAa,cAAc,GAA3B,MAAa,cAAc;CAa1B,CAAA;AAXC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACY;AAGtC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACV;AAGtC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACX;AAXJ,cAAc;IAD1B,IAAA,wBAAS,GAAE;GACC,cAAc,CAa1B;AAbY,wCAAc;AAgB3B,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;CAkB5B,CAAA;AAhBC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CAC3B;AAGX;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACY;AAGtC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;uDACV;AAGtC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACX;AAGf;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACZ;AAjBH,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CAkB5B;AAlBY,4CAAgB;AAqB7B,IAAa,eAAe,GAA5B,MAAa,eAAe;CAM3B,CAAA;AAJC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,0BAAW,CAAC,CAAC;;8CACT;AAGpB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;8CACN;AALF,eAAe;IAD3B,IAAA,yBAAU,GAAE;GACA,eAAe,CAM3B;AANY,0CAAe","sourcesContent":["import { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\nimport { DataArchive } from './data-archive'\nimport { ObjectRef, ScalarObject } from '@things-factory/shell'\n\n@InputType()\nexport class NewDataArchive {\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n \n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Field({ nullable: true })\n status?: string\n\n}\n\n@InputType()\nexport class DataArchivePatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n\n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Field({ nullable: true })\n status?: string\n\n @Field({ nullable: true })\n cuFlag: string\n}\n\n@ObjectType()\nexport class DataArchiveList {\n @Field(type => [DataArchive])\n items: DataArchive[]\n\n @Field(type => Int)\n total: number\n}\n"]}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a, _b, _c;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.DataArchive = void 0;
5
4
  const tslib_1 = require("tslib");
@@ -17,7 +16,7 @@ tslib_1.__decorate([
17
16
  tslib_1.__decorate([
18
17
  (0, typeorm_1.ManyToOne)(type => shell_1.Domain),
19
18
  (0, type_graphql_1.Field)({ nullable: true }),
20
- tslib_1.__metadata("design:type", typeof (_a = typeof shell_1.Domain !== "undefined" && shell_1.Domain) === "function" ? _a : Object)
19
+ tslib_1.__metadata("design:type", shell_1.Domain)
21
20
  ], DataArchive.prototype, "domain", void 0);
22
21
  tslib_1.__decorate([
23
22
  (0, typeorm_1.RelationId)((dataArchive) => dataArchive.domain),
@@ -56,7 +55,7 @@ tslib_1.__decorate([
56
55
  tslib_1.__decorate([
57
56
  (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
58
57
  (0, type_graphql_1.Field)({ nullable: true }),
59
- tslib_1.__metadata("design:type", typeof (_b = typeof auth_base_1.User !== "undefined" && auth_base_1.User) === "function" ? _b : Object)
58
+ tslib_1.__metadata("design:type", auth_base_1.User)
60
59
  ], DataArchive.prototype, "creator", void 0);
61
60
  tslib_1.__decorate([
62
61
  (0, typeorm_1.RelationId)((dataArchive) => dataArchive.creator),
@@ -65,7 +64,7 @@ tslib_1.__decorate([
65
64
  tslib_1.__decorate([
66
65
  (0, typeorm_1.ManyToOne)(type => auth_base_1.User, { nullable: true }),
67
66
  (0, type_graphql_1.Field)({ nullable: true }),
68
- tslib_1.__metadata("design:type", typeof (_c = typeof auth_base_1.User !== "undefined" && auth_base_1.User) === "function" ? _c : Object)
67
+ tslib_1.__metadata("design:type", auth_base_1.User)
69
68
  ], DataArchive.prototype, "updater", void 0);
70
69
  tslib_1.__decorate([
71
70
  (0, typeorm_1.RelationId)((dataArchive) => dataArchive.creator),
@@ -1 +1 @@
1
- {"version":3,"file":"data-archive.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive.ts"],"names":[],"mappings":";;;;;AAAA,+CAAsE;AACtE,qCAUgB;AAEhB,yDAAsD;AACtD,iDAA4D;AAKrD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAiDvB,CAAA;AAhDC;IAAC,IAAA,gCAAsB,EAAC,MAAM,CAAC;IAC9B,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,CAAC;;uCACC;AAEnB;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IACzB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;0DACjB,cAAM,oBAAN,cAAM;2CAAA;AAEf;IAAC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;;6CAC5C;AAEjB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yCACY;AAEtC;IAAC,IAAA,gBAAM,EAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACV;AAEtC;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACN;AAEpB;IAAC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CACX;AAEf;IAAC,IAAA,0BAAgB,GAAE;IAClB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACd,IAAI;8CAAA;AAEhB;IAAC,IAAA,0BAAgB,GAAE;IAClB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACd,IAAI;8CAAA;AAEhB;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;0DAChB,gBAAI,oBAAJ,gBAAI;4CAAA;AAEd;IAAC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;;8CAC5C;AAElB;IAAC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;0DAChB,gBAAI,oBAAJ,gBAAI;4CAAA;AAEd;IAAC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;;8CAC5C;AAhDP,WAAW;IAHvB,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EAAC,mBAAmB,EAAE,CAAC,WAAwB,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC5F,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;GACzC,WAAW,CAiDvB;AAjDY,kCAAW","sourcesContent":["import { Field, ID, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn,\n VersionColumn\n} from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\n\n@Entity()\n@Index('ix_data_archive_0', (dataArchive: DataArchive) => [dataArchive.id], { unique: true })\n@ObjectType({ description: 'Entity for DataArchive' })\nexport class DataArchive {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((dataArchive: DataArchive) => dataArchive.domain)\n domainId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n status?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n creator?: User\n\n @RelationId((dataArchive: DataArchive) => dataArchive.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((dataArchive: DataArchive) => dataArchive.creator)\n updaterId?: string\n}\n"]}
1
+ {"version":3,"file":"data-archive.js","sourceRoot":"","sources":["../../../server/service/data-archive/data-archive.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AACtE,qCAUgB;AAEhB,yDAAsD;AACtD,iDAA4D;AAK5D,IAAa,WAAW,GAAxB,MAAa,WAAW;CAiDvB,CAAA;AA9CC;IAFC,IAAA,gCAAsB,EAAC,MAAM,CAAC;IAC9B,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,CAAC;;uCACC;AAInB;IAFC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,cAAM,CAAC;IACzB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACjB,cAAM;2CAAA;AAGf;IADC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;;6CAC5C;AAIjB;IAFC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yCACY;AAItC;IAFC,IAAA,gBAAM,EAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACzC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,oBAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACV;AAItC;IAFC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACN;AAIpB;IAFC,IAAA,gBAAM,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC1B,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CACX;AAIf;IAFC,IAAA,0BAAgB,GAAE;IAClB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACd,IAAI;8CAAA;AAIhB;IAFC,IAAA,0BAAgB,GAAE;IAClB,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCACd,IAAI;8CAAA;AAIhB;IAFC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAChB,gBAAI;4CAAA;AAGd;IADC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;;8CAC5C;AAIlB;IAFC,IAAA,mBAAS,EAAC,IAAI,CAAC,EAAE,CAAC,gBAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3C,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;sCAChB,gBAAI;4CAAA;AAGd;IADC,IAAA,oBAAU,EAAC,CAAC,WAAwB,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;;8CAC5C;AAhDP,WAAW;IAHvB,IAAA,gBAAM,GAAE;IACR,IAAA,eAAK,EAAC,mBAAmB,EAAE,CAAC,WAAwB,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC5F,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;GACzC,WAAW,CAiDvB;AAjDY,kCAAW","sourcesContent":["import { Field, ID, ObjectType, registerEnumType } from 'type-graphql'\nimport {\n Column,\n CreateDateColumn,\n Entity,\n Index,\n ManyToOne,\n PrimaryGeneratedColumn,\n RelationId,\n UpdateDateColumn,\n VersionColumn\n} from 'typeorm'\n\nimport { Role, User } from '@things-factory/auth-base'\nimport { Domain, ScalarObject } from '@things-factory/shell'\n\n@Entity()\n@Index('ix_data_archive_0', (dataArchive: DataArchive) => [dataArchive.id], { unique: true })\n@ObjectType({ description: 'Entity for DataArchive' })\nexport class DataArchive {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id: string\n\n @ManyToOne(type => Domain)\n @Field({ nullable: true })\n domain?: Domain\n\n @RelationId((dataArchive: DataArchive) => dataArchive.domain)\n domainId?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n type?: 'manual' | 'automatic' | string\n\n @Column('simple-json', { nullable: true })\n @Field(type => ScalarObject, { nullable: true })\n requestParams?: { [key: string]: any }\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n downloadUrl?: string\n\n @Column({ nullable: true })\n @Field({ nullable: true })\n status?: string\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n creator?: User\n\n @RelationId((dataArchive: DataArchive) => dataArchive.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field({ nullable: true })\n updater?: User\n\n @RelationId((dataArchive: DataArchive) => dataArchive.creator)\n updaterId?: string\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"data-key-item-type.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-item-type.ts"],"names":[],"mappings":";;;;AAAA,+CAA2D;AAGpD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAYvB,CAAA;AAXC;IAAC,IAAA,oBAAK,GAAE;;yCACI;AAEZ;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACX;AAEf;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yCACb;AAXF,WAAW;IADvB,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;GACzC,WAAW,CAYvB;AAZY,kCAAW;AAejB,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAY5B,CAAA;AAXC;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACb;AAEb;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACV;AAEhB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACb;AAXF,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CAY5B;AAZY,4CAAgB","sourcesContent":["import { Field, InputType, ObjectType } from 'type-graphql'\n\n@ObjectType({ description: 'Entity for DataKeyItem' })\nexport class DataKeyItem {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n dataKey: string\n\n @Field({ nullable: true })\n tKey?: string\n}\n\n@InputType()\nexport class DataKeyItemPatch {\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n dataKey?: string\n\n @Field({ nullable: true })\n tKey?: string\n}\n"]}
1
+ {"version":3,"file":"data-key-item-type.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-item-type.ts"],"names":[],"mappings":";;;;AAAA,+CAA2D;AAG3D,IAAa,WAAW,GAAxB,MAAa,WAAW;CAYvB,CAAA;AAVC;IADC,IAAA,oBAAK,GAAE;;yCACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;4CACX;AAGf;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;yCACb;AAXF,WAAW;IADvB,IAAA,yBAAU,EAAC,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;GACzC,WAAW,CAYvB;AAZY,kCAAW;AAexB,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;CAY5B,CAAA;AAVC;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACV;AAGhB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;8CACb;AAXF,gBAAgB;IAD5B,IAAA,wBAAS,GAAE;GACC,gBAAgB,CAY5B;AAZY,4CAAgB","sourcesContent":["import { Field, InputType, ObjectType } from 'type-graphql'\n\n@ObjectType({ description: 'Entity for DataKeyItem' })\nexport class DataKeyItem {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n dataKey: string\n\n @Field({ nullable: true })\n tKey?: string\n}\n\n@InputType()\nexport class DataKeyItemPatch {\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n dataKey?: string\n\n @Field({ nullable: true })\n tKey?: string\n}\n"]}
@@ -26,7 +26,7 @@ let DataKeySetMutation = class DataKeySetMutation {
26
26
  const { domain, user, tx } = context.state;
27
27
  const repository = tx.getRepository(data_key_set_1.DataKeySet);
28
28
  const dataKeySet = await repository.findOne({
29
- where: { domain, id }
29
+ where: { domain: { id: domain.id }, id }
30
30
  });
31
31
  const result = await repository.save(Object.assign(Object.assign(Object.assign({}, dataKeySet), patch), { updater: user }));
32
32
  if (patch.thumbnail) {
@@ -66,7 +66,7 @@ let DataKeySetMutation = class DataKeySetMutation {
66
66
  if (_updateRecords.length > 0) {
67
67
  for (let i = 0; i < _updateRecords.length; i++) {
68
68
  const updateRecord = _updateRecords[i];
69
- const dataKeySet = await dataKeySetRepo.findOne(updateRecord.id);
69
+ const dataKeySet = await dataKeySetRepo.findOneBy({ id: updateRecord.id });
70
70
  const result = await dataKeySetRepo.save(Object.assign(Object.assign(Object.assign({}, dataKeySet), updateRecord), { updater: user }));
71
71
  if (updateRecord.thumbnail) {
72
72
  await (0, attachment_base_1.deleteAttachmentsByRef)(null, { refBys: [result.id] }, context);
@@ -85,14 +85,14 @@ let DataKeySetMutation = class DataKeySetMutation {
85
85
  }
86
86
  async deleteDataKeySet(id, context) {
87
87
  const { domain, tx } = context.state;
88
- await tx.getRepository(data_key_set_1.DataKeySet).delete({ domain, id });
88
+ await tx.getRepository(data_key_set_1.DataKeySet).delete({ domain: { id: domain.id }, id });
89
89
  await (0, attachment_base_1.deleteAttachmentsByRef)(null, { refBys: [id] }, context);
90
90
  return true;
91
91
  }
92
92
  async deleteDataKeySets(ids, context) {
93
93
  const { domain, tx } = context.state;
94
94
  await tx.getRepository(data_key_set_1.DataKeySet).delete({
95
- domain,
95
+ domain: { id: domain.id },
96
96
  id: (0, typeorm_1.In)(ids)
97
97
  });
98
98
  await (0, attachment_base_1.deleteAttachmentsByRef)(null, { refBys: ids }, context);
@@ -1 +1 @@
1
- {"version":3,"file":"data-key-set-mutation.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { getRepository, In } from 'typeorm'\n\nimport { createAttachment, deleteAttachmentsByRef } from '@things-factory/attachment-base'\n\nimport { DataKeySet } from './data-key-set'\nimport { NewDataKeySet, DataKeySetPatch } from './data-key-set-type'\n\n@Resolver(DataKeySet)\nexport class DataKeySetMutation {\n @Directive('@transaction')\n @Mutation(returns => DataKeySet, { description: 'To create new DataKeySet' })\n async createDataKeySet(@Arg('dataKeySet') dataKeySet: NewDataKeySet, @Ctx() context: any): Promise<DataKeySet> {\n const { domain, user, tx } = context.state\n\n const result = await tx.getRepository(DataKeySet).save({\n ...dataKeySet,\n domain,\n creator: user,\n updater: user\n })\n\n if (dataKeySet.thumbnail) {\n await createAttachment(\n null,\n {\n attachment: {\n file: dataKeySet.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => DataKeySet, { description: 'To modify DataKeySet information' })\n async updateDataKeySet(\n @Arg('id') id: string,\n @Arg('patch') patch: DataKeySetPatch,\n @Ctx() context: any\n ): Promise<DataKeySet> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(DataKeySet)\n const dataKeySet = await repository.findOne({\n where: { domain, id }\n })\n\n const result = await repository.save({\n ...dataKeySet,\n ...patch,\n updater: user\n })\n\n if (patch.thumbnail) {\n await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)\n await createAttachment(\n null,\n {\n attachment: {\n file: patch.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => [DataKeySet], { description: \"To modify multiple DataKeySets' information\" })\n async updateMultipleDataKeySet(\n @Arg('patches', type => [DataKeySetPatch]) patches: DataKeySetPatch[],\n @Ctx() context: any\n ): Promise<DataKeySet[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const dataKeySetRepo = tx.getRepository(DataKeySet)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await dataKeySetRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n if (newRecord.thumbnail) {\n await createAttachment(\n null,\n {\n attachment: {\n file: newRecord.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updateRecord = _updateRecords[i]\n const dataKeySet = await dataKeySetRepo.findOne(updateRecord.id)\n\n const result = await dataKeySetRepo.save({\n ...dataKeySet,\n ...updateRecord,\n updater: user\n })\n\n if (updateRecord.thumbnail) {\n await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)\n await createAttachment(\n null,\n {\n attachment: {\n file: updateRecord.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete DataKeySet' })\n async deleteDataKeySet(@Arg('id') id: string, @Ctx() context: any): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataKeySet).delete({ domain, id })\n await deleteAttachmentsByRef(null, { refBys: [id] }, context)\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple DataKeySets' })\n async deleteDataKeySets(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataKeySet).delete({\n domain,\n id: In(ids)\n })\n\n await deleteAttachmentsByRef(null, { refBys: ids }, context)\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To import multiple DataKeySets' })\n async importDataKeySets(\n @Arg('dataKeySets', type => [DataKeySetPatch]) dataKeySets: DataKeySetPatch[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await Promise.all(\n dataKeySets.map(async (dataKeySet: DataKeySetPatch) => {\n const createdDataKeySet: DataKeySet = await tx.getRepository(DataKeySet).save({ domain, ...dataKeySet })\n })\n )\n\n return true\n }\n}\n"]}
1
+ {"version":3,"file":"data-key-set-mutation.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { createAttachment, deleteAttachmentsByRef } from '@things-factory/attachment-base'\n\nimport { DataKeySet } from './data-key-set'\nimport { DataKeySetPatch, NewDataKeySet } from './data-key-set-type'\n\n@Resolver(DataKeySet)\nexport class DataKeySetMutation {\n @Directive('@transaction')\n @Mutation(returns => DataKeySet, { description: 'To create new DataKeySet' })\n async createDataKeySet(\n @Arg('dataKeySet') dataKeySet: NewDataKeySet,\n @Ctx() context: ResolverContext\n ): Promise<DataKeySet> {\n const { domain, user, tx } = context.state\n\n const result = await tx.getRepository(DataKeySet).save({\n ...dataKeySet,\n domain,\n creator: user,\n updater: user\n })\n\n if (dataKeySet.thumbnail) {\n await createAttachment(\n null,\n {\n attachment: {\n file: dataKeySet.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => DataKeySet, { description: 'To modify DataKeySet information' })\n async updateDataKeySet(\n @Arg('id') id: string,\n @Arg('patch') patch: DataKeySetPatch,\n @Ctx() context: ResolverContext\n ): Promise<DataKeySet> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(DataKeySet)\n const dataKeySet = await repository.findOne({\n where: { domain: { id: domain.id }, id }\n })\n\n const result = await repository.save({\n ...dataKeySet,\n ...patch,\n updater: user\n })\n\n if (patch.thumbnail) {\n await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)\n await createAttachment(\n null,\n {\n attachment: {\n file: patch.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n return result\n }\n\n @Directive('@transaction')\n @Mutation(returns => [DataKeySet], { description: \"To modify multiple DataKeySets' information\" })\n async updateMultipleDataKeySet(\n @Arg('patches', type => [DataKeySetPatch]) patches: DataKeySetPatch[],\n @Ctx() context: ResolverContext\n ): Promise<DataKeySet[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const dataKeySetRepo = tx.getRepository(DataKeySet)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await dataKeySetRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n if (newRecord.thumbnail) {\n await createAttachment(\n null,\n {\n attachment: {\n file: newRecord.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updateRecord = _updateRecords[i]\n const dataKeySet = await dataKeySetRepo.findOneBy({ id: updateRecord.id })\n\n const result = await dataKeySetRepo.save({\n ...dataKeySet,\n ...updateRecord,\n updater: user\n })\n\n if (updateRecord.thumbnail) {\n await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)\n await createAttachment(\n null,\n {\n attachment: {\n file: updateRecord.thumbnail,\n refType: DataKeySet.name,\n refBy: result.id\n }\n },\n context\n )\n }\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete DataKeySet' })\n async deleteDataKeySet(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataKeySet).delete({ domain: { id: domain.id }, id })\n await deleteAttachmentsByRef(null, { refBys: [id] }, context)\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple DataKeySets' })\n async deleteDataKeySets(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(DataKeySet).delete({\n domain: { id: domain.id },\n id: In(ids)\n })\n\n await deleteAttachmentsByRef(null, { refBys: ids }, context)\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To import multiple DataKeySets' })\n async importDataKeySets(\n @Arg('dataKeySets', type => [DataKeySetPatch]) dataKeySets: DataKeySetPatch[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await Promise.all(\n dataKeySets.map(async (dataKeySet: DataKeySetPatch) => {\n const createdDataKeySet: DataKeySet = await tx.getRepository(DataKeySet).save({ domain, ...dataKeySet })\n })\n )\n\n return true\n }\n}\n"]}
@@ -1,10 +1,8 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.DataKeySetQuery = void 0;
5
4
  const tslib_1 = require("tslib");
6
5
  const type_graphql_1 = require("type-graphql");
7
- const typeorm_1 = require("typeorm");
8
6
  const attachment_base_1 = require("@things-factory/attachment-base");
9
7
  const auth_base_1 = require("@things-factory/auth-base");
10
8
  const shell_1 = require("@things-factory/shell");
@@ -13,8 +11,8 @@ const data_key_set_type_1 = require("./data-key-set-type");
13
11
  let DataKeySetQuery = class DataKeySetQuery {
14
12
  async dataKeySet(id, context) {
15
13
  const { domain } = context.state;
16
- return await (0, typeorm_1.getRepository)(data_key_set_1.DataKeySet).findOne({
17
- where: { domain, id }
14
+ return await (0, shell_1.getRepository)(data_key_set_1.DataKeySet).findOne({
15
+ where: { domain: { id: domain.id }, id }
18
16
  });
19
17
  }
20
18
  async dataKeySets(params, context) {
@@ -22,16 +20,16 @@ let DataKeySetQuery = class DataKeySetQuery {
22
20
  const queryBuilder = (0, shell_1.getQueryBuilderFromListParams)({
23
21
  domain,
24
22
  params,
25
- repository: await (0, typeorm_1.getRepository)(data_key_set_1.DataKeySet),
23
+ repository: await (0, shell_1.getRepository)(data_key_set_1.DataKeySet),
26
24
  searchables: ['name', 'description']
27
25
  });
28
26
  const [items, total] = await queryBuilder.getManyAndCount();
29
27
  return { items, total };
30
28
  }
31
29
  async thumbnail(dataKeySet) {
32
- const attachment = await (0, typeorm_1.getRepository)(attachment_base_1.Attachment).findOne({
30
+ const attachment = await (0, shell_1.getRepository)(attachment_base_1.Attachment).findOne({
33
31
  where: {
34
- domain: dataKeySet.domainId,
32
+ domain: { id: dataKeySet.domainId },
35
33
  refType: data_key_set_1.DataKeySet.name,
36
34
  refBy: dataKeySet.id
37
35
  }
@@ -39,13 +37,13 @@ let DataKeySetQuery = class DataKeySetQuery {
39
37
  return attachment === null || attachment === void 0 ? void 0 : attachment.fullpath;
40
38
  }
41
39
  async domain(dataKeySet) {
42
- return await (0, typeorm_1.getRepository)(shell_1.Domain).findOne(dataKeySet.domainId);
40
+ return await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: dataKeySet.domainId });
43
41
  }
44
42
  async updater(dataKeySet) {
45
- return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(dataKeySet.updaterId);
43
+ return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: dataKeySet.updaterId });
46
44
  }
47
45
  async creator(dataKeySet) {
48
- return await (0, typeorm_1.getRepository)(auth_base_1.User).findOne(dataKeySet.creatorId);
46
+ return await (0, shell_1.getRepository)(auth_base_1.User).findOneBy({ id: dataKeySet.creatorId });
49
47
  }
50
48
  };
51
49
  tslib_1.__decorate([
@@ -61,7 +59,7 @@ tslib_1.__decorate([
61
59
  tslib_1.__param(0, (0, type_graphql_1.Args)()),
62
60
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
63
61
  tslib_1.__metadata("design:type", Function),
64
- tslib_1.__metadata("design:paramtypes", [typeof (_a = typeof shell_1.ListParam !== "undefined" && shell_1.ListParam) === "function" ? _a : Object, Object]),
62
+ tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
65
63
  tslib_1.__metadata("design:returntype", Promise)
66
64
  ], DataKeySetQuery.prototype, "dataKeySets", null);
67
65
  tslib_1.__decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"data-key-set-query.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\nimport { getRepository } from 'typeorm'\n\nimport { Attachment } from '@things-factory/attachment-base'\nimport { User } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, ListParam } from '@things-factory/shell'\n\nimport { DataKeySet } from './data-key-set'\nimport { DataKeySetList } from './data-key-set-type'\n\n@Resolver(DataKeySet)\nexport class DataKeySetQuery {\n @Query(returns => DataKeySet!, { nullable: true, description: 'To fetch a DataKeySet' })\n async dataKeySet(@Arg('id') id: string, @Ctx() context: any): Promise<DataKeySet> {\n const { domain } = context.state\n\n return await getRepository(DataKeySet).findOne({\n where: { domain, id }\n })\n }\n\n @Query(returns => DataKeySetList, { description: 'To fetch multiple DataKeySets' })\n async dataKeySets(@Args() params: ListParam, @Ctx() context: any): Promise<DataKeySetList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params,\n repository: await getRepository(DataKeySet),\n searchables: ['name', 'description']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() dataKeySet: DataKeySet): Promise<string | undefined> {\n const attachment: Attachment = await getRepository(Attachment).findOne({\n where: {\n domain: dataKeySet.domainId,\n refType: DataKeySet.name,\n refBy: dataKeySet.id\n }\n })\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() dataKeySet: DataKeySet): Promise<Domain> {\n return await getRepository(Domain).findOne(dataKeySet.domainId)\n }\n\n @FieldResolver(type => User)\n async updater(@Root() dataKeySet: DataKeySet): Promise<User> {\n return await getRepository(User).findOne(dataKeySet.updaterId)\n }\n\n @FieldResolver(type => User)\n async creator(@Root() dataKeySet: DataKeySet): Promise<User> {\n return await getRepository(User).findOne(dataKeySet.creatorId)\n }\n}\n"]}
1
+ {"version":3,"file":"data-key-set-query.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Arg, Args, Ctx, FieldResolver, Query, Resolver, Root } from 'type-graphql'\n\nimport { Attachment } from '@things-factory/attachment-base'\nimport { User } from '@things-factory/auth-base'\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\n\nimport { DataKeySet } from './data-key-set'\nimport { DataKeySetList } from './data-key-set-type'\n\n@Resolver(DataKeySet)\nexport class DataKeySetQuery {\n @Query(returns => DataKeySet!, { nullable: true, description: 'To fetch a DataKeySet' })\n async dataKeySet(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<DataKeySet> {\n const { domain } = context.state\n\n return await getRepository(DataKeySet).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Query(returns => DataKeySetList, { description: 'To fetch multiple DataKeySets' })\n async dataKeySets(@Args() params: ListParam, @Ctx() context: ResolverContext): Promise<DataKeySetList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params,\n repository: await getRepository(DataKeySet),\n searchables: ['name', 'description']\n })\n\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @FieldResolver(type => String)\n async thumbnail(@Root() dataKeySet: DataKeySet): Promise<string | undefined> {\n const attachment: Attachment = await getRepository(Attachment).findOne({\n where: {\n domain: { id: dataKeySet.domainId },\n refType: DataKeySet.name,\n refBy: dataKeySet.id\n }\n })\n\n return attachment?.fullpath\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() dataKeySet: DataKeySet): Promise<Domain> {\n return await getRepository(Domain).findOneBy({ id: dataKeySet.domainId })\n }\n\n @FieldResolver(type => User)\n async updater(@Root() dataKeySet: DataKeySet): Promise<User> {\n return await getRepository(User).findOneBy({ id: dataKeySet.updaterId })\n }\n\n @FieldResolver(type => User)\n async creator(@Root() dataKeySet: DataKeySet): Promise<User> {\n return await getRepository(User).findOneBy({ id: dataKeySet.creatorId })\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"data-key-set-type.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-type.ts"],"names":[],"mappings":";;;;AACA,+FAA2D;AAC3D,+CAAoE;AAEpE,6DAAuD;AACvD,iDAA2C;AAC3C,mDAAwD;AAGjD,IAAM,aAAa,GAAnB,MAAM,aAAa;CAqBzB,CAAA;AApBC;IAAC,IAAA,oBAAK,GAAE;;2CACI;AAEZ;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACV;AAEhB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACI;AAE9B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACP;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,qCAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACrB;AAEjC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC3B;AApBX,aAAa;IADzB,IAAA,wBAAS,GAAE;GACC,aAAa,CAqBzB;AArBY,sCAAa;AAwBnB,IAAM,eAAe,GAArB,MAAM,eAAe;CA2B3B,CAAA;AA1BC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CAC3B;AAEX;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACb;AAEb;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACN;AAEpB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACV;AAEhB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACI;AAE9B;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACP;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,qCAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACrB;AAEjC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC3B;AAEtB;IAAC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACX;AA1BJ,eAAe;IAD3B,IAAA,wBAAS,GAAE;GACC,eAAe,CA2B3B;AA3BY,0CAAe;AA8BrB,IAAM,cAAc,GAApB,MAAM,cAAc;CAM1B,CAAA;AALC;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,yBAAU,CAAC,CAAC;;6CACT;AAEnB;IAAC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;6CACN;AALF,cAAc;IAD1B,IAAA,yBAAU,GAAE;GACA,cAAc,CAM1B;AANY,wCAAc","sourcesContent":["import type { FileUpload } from 'graphql-upload/GraphQLUpload.js'\nimport GraphQLUpload from 'graphql-upload/GraphQLUpload.js'\nimport { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\n\nimport { DataKeyItemPatch } from './data-key-item-type'\nimport { DataKeySet } from './data-key-set'\nimport { DataSetReportType } from '../data-set/data-set'\n\n@InputType()\nexport class NewDataKeySet {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n active?: boolean\n\n @Field({ nullable: true })\n reportType?: DataSetReportType\n\n @Field({ nullable: true })\n reportView?: string\n\n @Field(type => [DataKeyItemPatch], { nullable: true })\n dataKeyItems?: DataKeyItemPatch[]\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n}\n\n@InputType()\nexport class DataKeySetPatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n active?: boolean\n\n @Field({ nullable: true })\n reportType?: DataSetReportType\n\n @Field({ nullable: true })\n reportView?: string\n\n @Field(type => [DataKeyItemPatch], { nullable: true })\n dataKeyItems?: DataKeyItemPatch[]\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class DataKeySetList {\n @Field(type => [DataKeySet])\n items: DataKeySet[]\n\n @Field(type => Int)\n total: number\n}\n"]}
1
+ {"version":3,"file":"data-key-set-type.js","sourceRoot":"","sources":["../../../server/service/data-key-set/data-key-set-type.ts"],"names":[],"mappings":";;;;AACA,+FAA2D;AAC3D,+CAAoE;AAEpE,6DAAuD;AACvD,iDAA2C;AAC3C,mDAAwD;AAGxD,IAAa,aAAa,GAA1B,MAAa,aAAa;CAqBzB,CAAA;AAnBC;IADC,IAAA,oBAAK,GAAE;;2CACI;AAGZ;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACV;AAGhB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACI;AAG9B;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;iDACP;AAGnB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,qCAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACrB;AAGjC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;gDAC3B;AApBX,aAAa;IADzB,IAAA,wBAAS,GAAE;GACC,aAAa,CAqBzB;AArBY,sCAAa;AAwB1B,IAAa,eAAe,GAA5B,MAAa,eAAe;CA2B3B,CAAA;AAzBC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,iBAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;2CAC3B;AAGX;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;6CACb;AAGb;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;oDACN;AAGpB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACV;AAGhB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACI;AAG9B;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACP;AAGnB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,qCAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;qDACrB;AAGjC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,0BAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;kDAC3B;AAGtB;IADC,IAAA,oBAAK,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;+CACX;AA1BJ,eAAe;IAD3B,IAAA,wBAAS,GAAE;GACC,eAAe,CA2B3B;AA3BY,0CAAe;AA8B5B,IAAa,cAAc,GAA3B,MAAa,cAAc;CAM1B,CAAA;AAJC;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC,yBAAU,CAAC,CAAC;;6CACT;AAGnB;IADC,IAAA,oBAAK,EAAC,IAAI,CAAC,EAAE,CAAC,kBAAG,CAAC;;6CACN;AALF,cAAc;IAD1B,IAAA,yBAAU,GAAE;GACA,cAAc,CAM1B;AANY,wCAAc","sourcesContent":["import type { FileUpload } from 'graphql-upload/GraphQLUpload.js'\nimport GraphQLUpload from 'graphql-upload/GraphQLUpload.js'\nimport { Field, ID, InputType, Int, ObjectType } from 'type-graphql'\n\nimport { DataKeyItemPatch } from './data-key-item-type'\nimport { DataKeySet } from './data-key-set'\nimport { DataSetReportType } from '../data-set/data-set'\n\n@InputType()\nexport class NewDataKeySet {\n @Field()\n name: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n active?: boolean\n\n @Field({ nullable: true })\n reportType?: DataSetReportType\n\n @Field({ nullable: true })\n reportView?: string\n\n @Field(type => [DataKeyItemPatch], { nullable: true })\n dataKeyItems?: DataKeyItemPatch[]\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n}\n\n@InputType()\nexport class DataKeySetPatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n name?: string\n\n @Field({ nullable: true })\n description?: string\n\n @Field({ nullable: true })\n active?: boolean\n\n @Field({ nullable: true })\n reportType?: DataSetReportType\n\n @Field({ nullable: true })\n reportView?: string\n\n @Field(type => [DataKeyItemPatch], { nullable: true })\n dataKeyItems?: DataKeyItemPatch[]\n\n @Field(type => GraphQLUpload, { nullable: true })\n thumbnail?: FileUpload\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class DataKeySetList {\n @Field(type => [DataKeySet])\n items: DataKeySet[]\n\n @Field(type => Int)\n total: number\n}\n"]}