@things-factory/dataset 7.0.1-alpha.10 → 7.0.1-alpha.102

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 (115) hide show
  1. package/client/activities/activity-ooc-resolve-edit.ts +3 -3
  2. package/client/activities/activity-ooc-review-edit.ts +3 -2
  3. package/client/components/data-entry-form.ts +6 -13
  4. package/client/pages/data-archive/data-archive-list-page.ts +5 -17
  5. package/client/pages/data-archive/data-archive-request-popup.ts +8 -11
  6. package/client/pages/data-entry/data-entry-list-page.ts +2 -4
  7. package/client/pages/data-key-set/data-key-item-list.ts +8 -22
  8. package/client/pages/data-key-set/data-key-set-importer.ts +4 -11
  9. package/client/pages/data-key-set/data-key-set-list-page.ts +6 -5
  10. package/client/pages/data-ooc/data-ooc-list-page.ts +26 -17
  11. package/client/pages/data-ooc/data-ooc-view.ts +7 -6
  12. package/client/pages/data-report/data-report-list-page.ts +9 -27
  13. package/client/pages/data-report/data-report-samples-page.ts +1 -1
  14. package/client/pages/data-sample/data-sample-list-page.ts +30 -14
  15. package/client/pages/data-sample/data-sample-search-page.ts +22 -14
  16. package/client/pages/data-sample/data-sample-view.ts +7 -5
  17. package/client/pages/data-sensor/data-sensor-list-page.ts +20 -17
  18. package/client/pages/data-set/data-item-list.ts +7 -15
  19. package/client/pages/data-set/data-set-importer.ts +5 -17
  20. package/client/pages/data-set/data-set-list-page.ts +33 -15
  21. package/client/pages/data-summary/data-summary-list-page.ts +9 -10
  22. package/client/pages/data-summary/data-summary-period-page.ts +5 -23
  23. package/client/pages/data-summary/data-summary-search-page.ts +12 -35
  24. package/dist-client/activities/activity-ooc-resolve-edit.d.ts +1 -0
  25. package/dist-client/activities/activity-ooc-resolve-edit.js +3 -3
  26. package/dist-client/activities/activity-ooc-resolve-edit.js.map +1 -1
  27. package/dist-client/activities/activity-ooc-review-edit.d.ts +1 -0
  28. package/dist-client/activities/activity-ooc-review-edit.js +3 -2
  29. package/dist-client/activities/activity-ooc-review-edit.js.map +1 -1
  30. package/dist-client/components/data-entry-form.d.ts +1 -0
  31. package/dist-client/components/data-entry-form.js +5 -10
  32. package/dist-client/components/data-entry-form.js.map +1 -1
  33. package/dist-client/pages/data-archive/data-archive-list-page.d.ts +1 -0
  34. package/dist-client/pages/data-archive/data-archive-list-page.js +5 -17
  35. package/dist-client/pages/data-archive/data-archive-list-page.js.map +1 -1
  36. package/dist-client/pages/data-archive/data-archive-request-popup.d.ts +1 -1
  37. package/dist-client/pages/data-archive/data-archive-request-popup.js +7 -11
  38. package/dist-client/pages/data-archive/data-archive-request-popup.js.map +1 -1
  39. package/dist-client/pages/data-entry/data-entry-list-page.d.ts +1 -0
  40. package/dist-client/pages/data-entry/data-entry-list-page.js +2 -4
  41. package/dist-client/pages/data-entry/data-entry-list-page.js.map +1 -1
  42. package/dist-client/pages/data-key-set/data-key-item-list.d.ts +1 -0
  43. package/dist-client/pages/data-key-set/data-key-item-list.js +7 -22
  44. package/dist-client/pages/data-key-set/data-key-item-list.js.map +1 -1
  45. package/dist-client/pages/data-key-set/data-key-set-importer.d.ts +1 -0
  46. package/dist-client/pages/data-key-set/data-key-set-importer.js +4 -11
  47. package/dist-client/pages/data-key-set/data-key-set-importer.js.map +1 -1
  48. package/dist-client/pages/data-key-set/data-key-set-list-page.d.ts +11 -2
  49. package/dist-client/pages/data-key-set/data-key-set-list-page.js +6 -5
  50. package/dist-client/pages/data-key-set/data-key-set-list-page.js.map +1 -1
  51. package/dist-client/pages/data-ooc/data-ooc-list-page.d.ts +6 -0
  52. package/dist-client/pages/data-ooc/data-ooc-list-page.js +17 -10
  53. package/dist-client/pages/data-ooc/data-ooc-list-page.js.map +1 -1
  54. package/dist-client/pages/data-ooc/data-ooc-view.d.ts +2 -1
  55. package/dist-client/pages/data-ooc/data-ooc-view.js +7 -6
  56. package/dist-client/pages/data-ooc/data-ooc-view.js.map +1 -1
  57. package/dist-client/pages/data-report/data-report-list-page.d.ts +1 -0
  58. package/dist-client/pages/data-report/data-report-list-page.js +4 -19
  59. package/dist-client/pages/data-report/data-report-list-page.js.map +1 -1
  60. package/dist-client/pages/data-report/data-report-samples-page.js +1 -1
  61. package/dist-client/pages/data-report/data-report-samples-page.js.map +1 -1
  62. package/dist-client/pages/data-sample/data-sample-list-page.d.ts +6 -0
  63. package/dist-client/pages/data-sample/data-sample-list-page.js +22 -10
  64. package/dist-client/pages/data-sample/data-sample-list-page.js.map +1 -1
  65. package/dist-client/pages/data-sample/data-sample-search-page.d.ts +1 -0
  66. package/dist-client/pages/data-sample/data-sample-search-page.js +15 -9
  67. package/dist-client/pages/data-sample/data-sample-search-page.js.map +1 -1
  68. package/dist-client/pages/data-sample/data-sample-view.d.ts +2 -0
  69. package/dist-client/pages/data-sample/data-sample-view.js +7 -5
  70. package/dist-client/pages/data-sample/data-sample-view.js.map +1 -1
  71. package/dist-client/pages/data-sensor/data-sensor-list-page.d.ts +16 -2
  72. package/dist-client/pages/data-sensor/data-sensor-list-page.js +19 -17
  73. package/dist-client/pages/data-sensor/data-sensor-list-page.js.map +1 -1
  74. package/dist-client/pages/data-set/data-item-list.d.ts +1 -1
  75. package/dist-client/pages/data-set/data-item-list.js +6 -15
  76. package/dist-client/pages/data-set/data-item-list.js.map +1 -1
  77. package/dist-client/pages/data-set/data-set-importer.d.ts +1 -0
  78. package/dist-client/pages/data-set/data-set-importer.js +5 -16
  79. package/dist-client/pages/data-set/data-set-importer.js.map +1 -1
  80. package/dist-client/pages/data-set/data-set-list-page.d.ts +16 -2
  81. package/dist-client/pages/data-set/data-set-list-page.js +23 -10
  82. package/dist-client/pages/data-set/data-set-list-page.js.map +1 -1
  83. package/dist-client/pages/data-summary/data-summary-list-page.d.ts +1 -0
  84. package/dist-client/pages/data-summary/data-summary-list-page.js +9 -10
  85. package/dist-client/pages/data-summary/data-summary-list-page.js.map +1 -1
  86. package/dist-client/pages/data-summary/data-summary-period-page.d.ts +1 -0
  87. package/dist-client/pages/data-summary/data-summary-period-page.js +5 -23
  88. package/dist-client/pages/data-summary/data-summary-period-page.js.map +1 -1
  89. package/dist-client/pages/data-summary/data-summary-search-page.d.ts +1 -0
  90. package/dist-client/pages/data-summary/data-summary-search-page.js +7 -19
  91. package/dist-client/pages/data-summary/data-summary-search-page.js.map +1 -1
  92. package/dist-client/tsconfig.tsbuildinfo +1 -1
  93. package/dist-server/service/data-archive/data-archive.js +1 -1
  94. package/dist-server/service/data-archive/data-archive.js.map +1 -1
  95. package/dist-server/service/data-key-set/data-key-set.js +1 -1
  96. package/dist-server/service/data-key-set/data-key-set.js.map +1 -1
  97. package/dist-server/service/data-ooc/data-ooc.js +16 -4
  98. package/dist-server/service/data-ooc/data-ooc.js.map +1 -1
  99. package/dist-server/service/data-sample/data-sample.js +13 -3
  100. package/dist-server/service/data-sample/data-sample.js.map +1 -1
  101. package/dist-server/service/data-sensor/data-sensor.js +1 -1
  102. package/dist-server/service/data-sensor/data-sensor.js.map +1 -1
  103. package/dist-server/service/data-set-history/data-set-history.js +1 -1
  104. package/dist-server/service/data-set-history/data-set-history.js.map +1 -1
  105. package/dist-server/service/data-summary/data-summary.js +1 -1
  106. package/dist-server/service/data-summary/data-summary.js.map +1 -1
  107. package/dist-server/tsconfig.tsbuildinfo +1 -1
  108. package/package.json +16 -15
  109. package/server/service/data-archive/data-archive.ts +1 -1
  110. package/server/service/data-key-set/data-key-set.ts +1 -1
  111. package/server/service/data-ooc/data-ooc.ts +31 -5
  112. package/server/service/data-sample/data-sample.ts +37 -7
  113. package/server/service/data-sensor/data-sensor.ts +11 -2
  114. package/server/service/data-set-history/data-set-history.ts +3 -3
  115. package/server/service/data-summary/data-summary.ts +16 -3
@@ -1,5 +1,5 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/dataset/ox-data-ooc-brief-view.js'
2
- // import '@operato/dataset/ox-data-ooc-correction-part.js'
3
3
 
4
4
  import gql from 'graphql-tag'
5
5
  import { css, html, LitElement, nothing } from 'lit'
@@ -51,7 +51,7 @@ class OocResolveActivityEdit extends localize(i18next)(LitElement) {
51
51
  align-items: center;
52
52
  }
53
53
 
54
- mwc-icon {
54
+ md-icon {
55
55
  color: var(--status-danger-color);
56
56
  }
57
57
 
@@ -92,7 +92,7 @@ class OocResolveActivityEdit extends localize(i18next)(LitElement) {
92
92
  ${editable
93
93
  ? html`
94
94
  <label action>
95
- <h2><mwc-icon>build_circle</mwc-icon>&nbsp;<span>${i18next.t('label.corrective action')}</span></h2>
95
+ <h2><md-icon>build_circle</md-icon>&nbsp;<span>${i18next.t('label.corrective action')}</span></h2>
96
96
  <textarea placeholder=${String(i18next.t('text.corrective action placeholder'))} .value=${action || ''} @change=${this.onChangeAction}></textarea>
97
97
  </label>
98
98
  `
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/dataset/ox-data-sample-view.js'
2
3
 
3
4
  import gql from 'graphql-tag'
@@ -54,7 +55,7 @@ class OocReviewActivityEdit extends localize(i18next)(LitElement) {
54
55
  font: var(--input-field-font);
55
56
  }
56
57
 
57
- mwc-icon {
58
+ md-icon {
58
59
  color: var(--status-danger-color);
59
60
  }
60
61
 
@@ -90,7 +91,7 @@ class OocReviewActivityEdit extends localize(i18next)(LitElement) {
90
91
  </div>
91
92
 
92
93
  <label instruction>
93
- <h2><mwc-icon>build_circle</mwc-icon>&nbsp;<span>${i18next.t('label.corrective instruction')}</span></h2>
94
+ <h2><md-icon>build_circle</md-icon>&nbsp;<span>${i18next.t('label.corrective instruction')}</span></h2>
94
95
  ${editable
95
96
  ? html`
96
97
  <textarea
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/dataset/ox-data-entry-form.js'
2
3
 
3
4
  import gql from 'graphql-tag'
@@ -6,13 +7,14 @@ import { customElement, property, query, state } from 'lit/decorators.js'
6
7
 
7
8
  import { client } from '@operato/graphql'
8
9
  import { i18next, localize } from '@operato/i18n'
9
- import { ScrollbarStyles } from '@operato/styles'
10
+ import { ButtonContainerStyles, ScrollbarStyles } from '@operato/styles'
10
11
  import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js'
11
12
  import { DataSet } from '@operato/dataset'
12
13
 
13
14
  @customElement('data-entry-form')
14
15
  export class DataEntryForm extends localize(i18next)(LitElement) {
15
16
  static styles = [
17
+ ButtonContainerStyles,
16
18
  ScrollbarStyles,
17
19
  css`
18
20
  :host {
@@ -28,12 +30,6 @@ export class DataEntryForm extends localize(i18next)(LitElement) {
28
30
  overflow: auto;
29
31
  }
30
32
 
31
- .button-container {
32
- display: flex;
33
- margin-left: auto;
34
- padding: var(--padding-default);
35
- }
36
-
37
33
  .button-container span {
38
34
  font-size: 14px;
39
35
  color: #333;
@@ -52,11 +48,10 @@ export class DataEntryForm extends localize(i18next)(LitElement) {
52
48
  render() {
53
49
  return html`
54
50
  <ox-data-entry-form .dataSet=${this.dataSet}></ox-data-entry-form>
51
+
55
52
  <div class="button-container">
56
53
  ${!this.dataSample
57
- ? html`
58
- <mwc-button raised @click=${this.updateDataItems.bind(this)}>${i18next.t('button.save')}</mwc-button>
59
- `
54
+ ? html` <button @click=${this.updateDataItems.bind(this)}><md-icon>save</md-icon>${i18next.t('button.save')}</button> `
60
55
  : html` <span>${i18next.t('field.collected-at')}: ${this.dataSample.collectedAt.toLocaleString()}</span> `}
61
56
  </div>
62
57
  `
@@ -101,9 +96,7 @@ export class DataEntryForm extends localize(i18next)(LitElement) {
101
96
  collectedAt: new Date(collectedAt)
102
97
  }
103
98
 
104
- document.dispatchEvent(
105
- new CustomEvent('notify', { detail: { message: i18next.t('text.data sample created successfully') } })
106
- )
99
+ document.dispatchEvent(new CustomEvent('notify', { detail: { message: i18next.t('text.data sample created successfully') } }))
107
100
  }
108
101
  }
109
102
  }
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
 
@@ -77,17 +78,9 @@ export class DataArchiveListPage extends connect(store)(localize(i18next)(PageVi
77
78
  const mode = this.mode || (isMobileDevice() ? 'LIST' : 'GRID')
78
79
 
79
80
  return html`
80
- <ox-grist
81
- .mode=${mode}
82
- .config=${this.gristConfig}
83
- .fetchHandler=${this.fetchHandler.bind(this)}
84
- ?url-params-sensitive=${false /* this.active */}
85
- >
81
+ <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)} ?url-params-sensitive=${false /* this.active */}>
86
82
  <div slot="headroom" class="header">
87
- <div class="title">
88
- <mwc-icon>summarize</mwc-icon>
89
- ${i18next.t('title.data-archive list')}
90
- </div>
83
+ <div class="title">${i18next.t('title.data-archive list')}</div>
91
84
 
92
85
  <!-- <div class="filters">
93
86
  <ox-filters-form class="filter" autofocus without-search></ox-filters-form>
@@ -185,10 +178,7 @@ export class DataArchiveListPage extends connect(store)(localize(i18next)(PageVi
185
178
 
186
179
  async openArchivePopup() {
187
180
  this.popup = openPopup(
188
- html` <data-archive-request-popup
189
- @requested=${this.closePopupAndRefesh.bind(this)}
190
- @created=${this.closePopupAndRefesh.bind(this)}
191
- ></data-archive-request-popup>`,
181
+ html` <data-archive-request-popup @requested=${this.closePopupAndRefesh.bind(this)} @created=${this.closePopupAndRefesh.bind(this)}></data-archive-request-popup>`,
192
182
  {
193
183
  backdrop: true,
194
184
  size: 'small',
@@ -264,9 +254,7 @@ export class DataArchiveListPage extends connect(store)(localize(i18next)(PageVi
264
254
  .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
265
255
  .reduce((record, column) => {
266
256
  const key = column.imex === true ? column.name : column.imex.key
267
- record[key] = key
268
- .split('.')
269
- .reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
257
+ record[key] = key.split('.').reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
270
258
  return record
271
259
  }, {})
272
260
  }
@@ -1,17 +1,21 @@
1
+ import '@material/web/icon/icon.js'
2
+
1
3
  import gql from 'graphql-tag'
2
4
  import { css, html, LitElement } from 'lit'
3
5
  import { customElement, property, query, state } from 'lit/decorators.js'
4
6
 
5
7
  import { i18next, localize } from '@operato/i18n'
6
8
  import { client } from '@operato/graphql'
7
- import { SingleColumnFormStyles } from '@things-factory/form-ui'
9
+ import { SingleColumnFormStyles } from '@operato/form'
10
+ import { ButtonContainerStyles } from '@operato/styles'
8
11
 
9
- import moment from 'moment-timezone'
12
+ import moment from '@operato/moment-timezone-es'
10
13
  import { CustomAlert } from '@operato/shell'
11
14
 
12
15
  @customElement('data-archive-request-popup')
13
16
  class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
14
17
  static styles = [
18
+ ButtonContainerStyles,
15
19
  SingleColumnFormStyles,
16
20
  css`
17
21
  :host {
@@ -19,19 +23,12 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
19
23
  display: flex;
20
24
  flex-direction: column;
21
25
  overflow-x: overlay;
22
- background-color: var(--main-section-background-color);
26
+ background-color: var(--md-sys-color-background);
23
27
  }
24
28
 
25
29
  form {
26
30
  overflow: auto;
27
31
  }
28
-
29
- .button-container {
30
- display: flex;
31
- margin-top: auto;
32
- margin-left: auto;
33
- padding: var(--padding-default);
34
- }
35
32
  `
36
33
  ]
37
34
 
@@ -53,7 +50,7 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
53
50
  </form>
54
51
 
55
52
  <div class="button-container">
56
- <mwc-button raised @click=${this.requestArchive} label=${String(i18next.t('button.submit'))}></mwc-button>
53
+ <button @click=${this.requestArchive}><md-icon>archive</md-icon>${String(i18next.t('button.submit'))}</button>
57
54
  </div>
58
55
  `
59
56
  }
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
  import '@operato/board/ox-board-viewer.js'
@@ -120,10 +121,7 @@ export class DataEntryListPage extends connect(store)(localize(i18next)(PageView
120
121
  return html`
121
122
  <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)} ?url-params-sensitive=${this.active}>
122
123
  <div slot="headroom" class="header">
123
- <div class="title">
124
- <mwc-icon>summarize</mwc-icon>
125
- ${i18next.t('title.data-entry list')}
126
- </div>
124
+ <div class="title">${i18next.t('title.data-entry list')}</div>
127
125
 
128
126
  <div class="filters">
129
127
  <ox-filters-form autofocus without-search></ox-filters-form>
@@ -1,3 +1,5 @@
1
+ import '@material/web/icon/icon.js'
2
+
1
3
  import gql from 'graphql-tag'
2
4
  import { css, html, LitElement } from 'lit'
3
5
  import { customElement, property, query, state } from 'lit/decorators.js'
@@ -6,10 +8,12 @@ import { client } from '@operato/graphql'
6
8
  import { i18next, localize } from '@operato/i18n'
7
9
  import { isMobileDevice } from '@operato/utils'
8
10
  import { DataGrist, FetchOption } from '@operato/data-grist'
11
+ import { ButtonContainerStyles } from '@operato/styles'
9
12
 
10
13
  @customElement('data-key-item-list')
11
14
  export class DataKeyItemList extends localize(i18next)(LitElement) {
12
15
  static styles = [
16
+ ButtonContainerStyles,
13
17
  css`
14
18
  :host {
15
19
  display: flex;
@@ -21,19 +25,6 @@ export class DataKeyItemList extends localize(i18next)(LitElement) {
21
25
  ox-grist {
22
26
  flex: 1;
23
27
  }
24
-
25
- .button-container {
26
- display: flex;
27
- margin-left: auto;
28
- padding: var(--padding-default);
29
- }
30
-
31
- [danger] {
32
- --mdc-theme-primary: var(--mdc-danger-button-primary-color);
33
- }
34
- mwc-button {
35
- margin-left: var(--margin-default);
36
- }
37
28
  `
38
29
  ]
39
30
 
@@ -43,16 +34,11 @@ export class DataKeyItemList extends localize(i18next)(LitElement) {
43
34
 
44
35
  render() {
45
36
  return html`
46
- <ox-grist
47
- .mode=${isMobileDevice() ? 'LIST' : 'GRID'}
48
- .config=${this.gristConfig}
49
- .fetchHandler=${this.fetchHandler.bind(this)}
50
- ></ox-grist>
37
+ <ox-grist .mode=${isMobileDevice() ? 'LIST' : 'GRID'} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)}></ox-grist>
38
+
51
39
  <div class="button-container">
52
- <mwc-button raised danger @click=${this._deleteDataKeyItems.bind(this)}
53
- >${i18next.t('button.delete')}</mwc-button
54
- >
55
- <mwc-button raised @click=${this._updateDataKeyItems.bind(this)}>${i18next.t('button.save')}</mwc-button>
40
+ <button danger @click=${this._deleteDataKeyItems.bind(this)}><md-icon>delete_forever</md-icon>${i18next.t('button.delete')}</button>
41
+ <button @click=${this._updateDataKeyItems.bind(this)}><md-icon>save</md-icon>${i18next.t('button.save')}</button>
56
42
  </div>
57
43
  `
58
44
  }
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
 
3
4
  import gql from 'graphql-tag'
@@ -7,10 +8,12 @@ import { customElement, property, query, state } from 'lit/decorators.js'
7
8
  import { client } from '@operato/graphql'
8
9
  import { i18next } from '@operato/i18n'
9
10
  import { isMobileDevice } from '@operato/utils'
11
+ import { ButtonContainerStyles } from '@operato/styles'
10
12
 
11
13
  @customElement('data-key-set-importer')
12
14
  export class DataKeySetImporter extends LitElement {
13
15
  static styles = [
16
+ ButtonContainerStyles,
14
17
  css`
15
18
  :host {
16
19
  display: flex;
@@ -22,16 +25,6 @@ export class DataKeySetImporter extends LitElement {
22
25
  ox-grist {
23
26
  flex: 1;
24
27
  }
25
-
26
- .button-container {
27
- display: flex;
28
- margin-left: auto;
29
- padding: var(--padding-default);
30
- }
31
-
32
- mwc-button {
33
- margin-left: var(--margin-default);
34
- }
35
28
  `
36
29
  ]
37
30
 
@@ -73,7 +66,7 @@ export class DataKeySetImporter extends LitElement {
73
66
  ></ox-grist>
74
67
 
75
68
  <div class="button-container">
76
- <mwc-button raised @click="${this.save.bind(this)}">${i18next.t('button.save')}</mwc-button>
69
+ <button @click="${this.save.bind(this)}"><md-icon>save</md-icon>${i18next.t('button.save')}</button>
77
70
  </div>
78
71
  `
79
72
  }
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
  import './data-key-set-importer.js'
@@ -102,7 +103,10 @@ export class DataKeySetListPage extends connect(store)(localize(i18next)(PageVie
102
103
  {
103
104
  title: i18next.t('button.delete'),
104
105
  action: this._deleteDataKeySet.bind(this),
105
- icon: 'delete'
106
+ icon: 'delete',
107
+ emphasis: {
108
+ danger: true
109
+ }
106
110
  }
107
111
  ],
108
112
  exportable: {
@@ -122,10 +126,7 @@ export class DataKeySetListPage extends connect(store)(localize(i18next)(PageVie
122
126
  return html`
123
127
  <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)}>
124
128
  <div slot="headroom" class="header">
125
- <div class="title">
126
- <mwc-icon>summarize</mwc-icon>
127
- ${i18next.t('title.data-key-set list')}
128
- </div>
129
+ <div class="title">${i18next.t('title.data-key-set list')}</div>
129
130
 
130
131
  <div class="filters">
131
132
  <ox-filters-form autofocus without-search></ox-filters-form>
@@ -1,7 +1,10 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
  import '@operato/input/ox-input-select-buttons.js'
4
5
 
6
+ import { p13n } from '@operato/p13n'
7
+
5
8
  import './data-ooc-view.js'
6
9
 
7
10
  import gql from 'graphql-tag'
@@ -33,13 +36,14 @@ import { client } from '@operato/graphql'
33
36
  import { i18next, localize } from '@operato/i18n'
34
37
  import { openPopup } from '@operato/layout'
35
38
  import { PageView, store } from '@operato/shell'
36
- import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
39
+ import { CommonGristStyles, CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
37
40
  import { isMobileDevice, adjustFilters } from '@operato/utils'
38
41
 
39
42
  @customElement('data-ooc-list-page')
40
- export class DataOocListPage extends connect(store)(localize(i18next)(PageView)) {
43
+ export class DataOocListPage extends connect(store)(p13n(localize(i18next)(PageView))) {
41
44
  static styles = [
42
45
  ScrollbarStyles,
46
+ CommonGristStyles,
43
47
  CommonHeaderStyles,
44
48
  css`
45
49
  :host {
@@ -98,12 +102,14 @@ export class DataOocListPage extends connect(store)(localize(i18next)(PageView))
98
102
  const mode = this.mode || (isMobileDevice() ? 'LIST' : 'GRID')
99
103
 
100
104
  return html`
101
- <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)}>
105
+ <ox-grist
106
+ .mode=${mode}
107
+ .config=${this.gristConfig}
108
+ .fetchHandler=${this.fetchHandler.bind(this)}
109
+ .personalConfigProvider=${this.getPagePreferenceProvider('ox-grist')}
110
+ >
102
111
  <div slot="headroom" class="header">
103
- <div class="title">
104
- <mwc-icon>summarize</mwc-icon>
105
- ${i18next.t('title.data-ooc list')}
106
- </div>
112
+ <div class="title">${i18next.t('title.data-ooc list')}</div>
107
113
 
108
114
  <div class="filters">
109
115
  <ox-input-select-buttons
@@ -118,6 +124,8 @@ export class DataOocListPage extends connect(store)(localize(i18next)(PageView))
118
124
 
119
125
  <ox-context-page-toolbar class="actions" .context=${this.context}></ox-context-page-toolbar>
120
126
  </div>
127
+
128
+ <ox-grist-personalizer slot="setting"></ox-grist-personalizer>
121
129
  </ox-grist>
122
130
  `
123
131
  }
@@ -380,11 +388,14 @@ export class DataOocListPage extends connect(store)(localize(i18next)(PageView))
380
388
  },
381
389
  handlers: {
382
390
  click: (columns, data, column, record, rowIndex) => {
383
- const popup = openPopup(html` <data-ooc-view data-ooc-id=${record.id} style="background-color: white;"></data-ooc-view> `, {
384
- backdrop: true,
385
- size: 'large',
386
- title: i18next.t('title.data-ooc view')
387
- })
391
+ const popup = openPopup(
392
+ html` <data-ooc-view data-ooc-id=${record.id} style="background-color: white;"></data-ooc-view> `,
393
+ {
394
+ backdrop: true,
395
+ size: 'large',
396
+ title: i18next.t('title.data-ooc view')
397
+ }
398
+ )
388
399
  popup.onclosed = () => {
389
400
  this.grist.fetch()
390
401
  }
@@ -398,10 +409,6 @@ export class DataOocListPage extends connect(store)(localize(i18next)(PageView))
398
409
  }
399
410
  ]
400
411
  }
401
-
402
- await this.updateComplete
403
-
404
- this.grist.fetch()
405
412
  }
406
413
 
407
414
  async fetchHandler({ page, limit, sortings = [], filters = [] }: FetchOption) {
@@ -515,7 +522,9 @@ export class DataOocListPage extends connect(store)(localize(i18next)(PageView))
515
522
  .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
516
523
  .reduce((record, column) => {
517
524
  const key = column.imex === true ? column.name : column.imex.key
518
- record[key] = key.split('.').reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
525
+ record[key] = key
526
+ .split('.')
527
+ .reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
519
528
  return record
520
529
  }, {})
521
530
  }
@@ -1,5 +1,6 @@
1
+ import '@material/web/icon/icon.js'
2
+ import '@material/web/fab/fab.js'
1
3
  import '@operato/dataset/ox-data-ooc-brief-view.js'
2
- import '@material/mwc-fab'
3
4
  import '@things-factory/worklist/dist-client/components/activity-thread-timeline.js'
4
5
 
5
6
  import gql from 'graphql-tag'
@@ -32,7 +33,7 @@ export class DataOocView extends localize(i18next)(LitElement) {
32
33
  margin: var(--margin-default);
33
34
  }
34
35
 
35
- mwc-fab {
36
+ md-fab {
36
37
  position: fixed;
37
38
  bottom: 15px;
38
39
  right: 16px;
@@ -41,7 +42,7 @@ export class DataOocView extends localize(i18next)(LitElement) {
41
42
  }
42
43
 
43
44
  @media print {
44
- mwc-fab {
45
+ md-fab {
45
46
  display: none;
46
47
  }
47
48
  }
@@ -87,15 +88,15 @@ export class DataOocView extends localize(i18next)(LitElement) {
87
88
  `
88
89
  : nothing}
89
90
 
90
- <mwc-fab
91
- icon="print"
91
+ <md-fab
92
92
  title="print"
93
93
  @click=${() =>
94
94
  GhostPrint.print({
95
95
  src: `./data-ooc/${this.dataOoc.id}`
96
96
  })}
97
- >print</mwc-fab
98
97
  >
98
+ <md-icon slot="icon">print</md-icon>
99
+ </md-fab>
99
100
  `
100
101
  }
101
102
 
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
  import '@operato/board/ox-board-viewer.js'
@@ -44,23 +45,12 @@ const showMonitorView = (columns, data, column, record, rowIndex) => {
44
45
  const board = {
45
46
  id: monitorView
46
47
  }
47
- openPopup(
48
- html`
49
- <ox-board-viewer
50
- style="background-color: white;"
51
- .board=${board}
52
- .provider=${provider}
53
- hide-fullscreen
54
- hide-navigation
55
- ></ox-board-viewer>
56
- `,
57
- {
58
- closable: true,
59
- backdrop: true,
60
- size: 'large',
61
- title
62
- }
63
- )
48
+ openPopup(html` <ox-board-viewer style="background-color: white;" .board=${board} .provider=${provider} hide-fullscreen hide-navigation></ox-board-viewer> `, {
49
+ closable: true,
50
+ backdrop: true,
51
+ size: 'large',
52
+ title
53
+ })
64
54
 
65
55
  // navigate(`board-viewer/${monitorView}?interactive=true&title=${title}`)
66
56
  break
@@ -166,17 +156,9 @@ export class DataReportListPage extends connect(store)(localize(i18next)(PageVie
166
156
  const mode = 'CARD'
167
157
 
168
158
  return html`
169
- <ox-grist
170
- .mode=${mode}
171
- .config=${this.gristConfig}
172
- .fetchHandler=${this.fetchHandler.bind(this)}
173
- ?url-params-sensitive=${this.active}
174
- >
159
+ <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)} ?url-params-sensitive=${this.active}>
175
160
  <div slot="headroom" class="header">
176
- <div class="title">
177
- <mwc-icon>summarize</mwc-icon>
178
- ${i18next.t('title.data-report list')}
179
- </div>
161
+ <div class="title">${i18next.t('title.data-report list')}</div>
180
162
 
181
163
  <div class="filters">
182
164
  <ox-filters-form class="filter" autofocus without-search></ox-filters-form>
@@ -8,7 +8,7 @@ import gql from 'graphql-tag'
8
8
  import { css, html } from 'lit'
9
9
  import { customElement, property, query, state } from 'lit/decorators.js'
10
10
  import { connect } from 'pwa-helpers/connect-mixin'
11
- import moment from 'moment-timezone'
11
+ import moment from '@operato/moment-timezone-es'
12
12
 
13
13
  import { client } from '@operato/graphql'
14
14
  import { i18next, localize } from '@operato/i18n'
@@ -1,3 +1,4 @@
1
+ import '@material/web/icon/icon.js'
1
2
  import '@operato/data-grist'
2
3
  import '@operato/context/ox-context-page-toolbar.js'
3
4
  import './data-sample-view.js'
@@ -6,21 +7,24 @@ import gql from 'graphql-tag'
6
7
  import { css, html } from 'lit'
7
8
  import { customElement, property, query, state } from 'lit/decorators.js'
8
9
  import { connect } from 'pwa-helpers/connect-mixin'
9
- import moment from 'moment-timezone'
10
+ import moment from '@operato/moment-timezone-es'
10
11
 
11
12
  import { DataGrist, FetchOption, GristRecord } from '@operato/data-grist'
12
13
  import { client } from '@operato/graphql'
13
14
  import { i18next, localize } from '@operato/i18n'
14
15
  import { openPopup } from '@operato/layout'
15
16
  import { PageView, store } from '@operato/shell'
16
- import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
17
+ import { CommonGristStyles, CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
17
18
  import { isMobileDevice } from '@operato/utils'
18
19
  import { GhostPrint } from '@operato/ghost-print'
19
20
 
21
+ import { p13n } from '@operato/p13n'
22
+
20
23
  @customElement('data-sample-list-page')
21
- export class DataSampleListPage extends connect(store)(localize(i18next)(PageView)) {
24
+ export class DataSampleListPage extends connect(store)(p13n(localize(i18next)(PageView))) {
22
25
  static styles = [
23
26
  ScrollbarStyles,
27
+ CommonGristStyles,
24
28
  CommonHeaderStyles,
25
29
  css`
26
30
  :host {
@@ -78,12 +82,15 @@ export class DataSampleListPage extends connect(store)(localize(i18next)(PageVie
78
82
  const mode = this.mode || (isMobileDevice() ? 'LIST' : 'GRID')
79
83
 
80
84
  return html`
81
- <ox-grist .mode=${mode} .config=${this.gristConfig} .fetchHandler=${this.fetchHandler.bind(this)} ?url-params-sensitive=${false /* this.active */}>
85
+ <ox-grist
86
+ .mode=${mode}
87
+ .config=${this.gristConfig}
88
+ .fetchHandler=${this.fetchHandler.bind(this)}
89
+ .personalConfigProvider=${this.getPagePreferenceProvider('ox-grist')}
90
+ ?url-params-sensitive=${false /* this.active */}
91
+ >
82
92
  <div slot="headroom" class="header">
83
- <div class="title">
84
- <mwc-icon>summarize</mwc-icon>
85
- ${i18next.t('title.data-sample list')}
86
- </div>
93
+ <div class="title">${i18next.t('title.data-sample list')}</div>
87
94
 
88
95
  <div class="filters">
89
96
  <ox-filters-form class="filter" autofocus without-search></ox-filters-form>
@@ -91,6 +98,8 @@ export class DataSampleListPage extends connect(store)(localize(i18next)(PageVie
91
98
 
92
99
  <ox-context-page-toolbar class="actions" .context=${this.context}></ox-context-page-toolbar>
93
100
  </div>
101
+
102
+ <ox-grist-personalizer slot="setting"></ox-grist-personalizer>
94
103
  </ox-grist>
95
104
  `
96
105
  }
@@ -310,11 +319,16 @@ export class DataSampleListPage extends connect(store)(localize(i18next)(PageVie
310
319
  },
311
320
  handlers: {
312
321
  click: (columns, data, column, record, rowIndex) => {
313
- openPopup(html` <data-sample-view data-sample-id=${record.id} style="background-color: white;"></data-sample-view> `, {
314
- backdrop: true,
315
- size: 'large',
316
- title: i18next.t('title.data-sample view')
317
- })
322
+ openPopup(
323
+ html`
324
+ <data-sample-view data-sample-id=${record.id} style="background-color: white;"></data-sample-view>
325
+ `,
326
+ {
327
+ backdrop: true,
328
+ size: 'large',
329
+ title: i18next.t('title.data-sample view')
330
+ }
331
+ )
318
332
  }
319
333
  }
320
334
  },
@@ -401,7 +415,9 @@ export class DataSampleListPage extends connect(store)(localize(i18next)(PageVie
401
415
  .filter(column => column.type !== 'gutter' && column.record !== undefined && column.imex !== undefined)
402
416
  .reduce((record, column) => {
403
417
  const key = column.imex === true ? column.name : column.imex.key
404
- record[key] = key.split('.').reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
418
+ record[key] = key
419
+ .split('.')
420
+ .reduce((obj, key) => (obj && obj[key] !== 'undefined' ? obj[key] : undefined), item)
405
421
  return record
406
422
  }, {})
407
423
  }