@things-factory/dataset 7.0.55 → 7.0.56
Sign up to get free protection for your applications and to get access to all the features.
- package/client/components/data-entry-form.ts +5 -4
- package/client/pages/data-archive/data-archive-request-popup.ts +7 -4
- package/client/pages/data-key-set/data-key-item-list.ts +5 -4
- package/client/pages/data-key-set/data-key-set-importer.ts +5 -4
- package/client/pages/data-set/data-item-list.ts +7 -4
- package/client/pages/data-set/data-set-importer.ts +5 -4
- package/dist-client/activities/activity-data-collect-edit.d.ts +1 -1
- package/dist-client/activities/activity-data-collect-view.d.ts +1 -1
- package/dist-client/activities/activity-data-review-edit.d.ts +1 -1
- package/dist-client/activities/activity-data-review-view.d.ts +1 -1
- package/dist-client/activities/activity-ooc-resolve-view.d.ts +1 -1
- package/dist-client/components/data-entry-form.d.ts +1 -1
- package/dist-client/components/data-entry-form.js +5 -4
- package/dist-client/components/data-entry-form.js.map +1 -1
- package/dist-client/pages/data-archive/data-archive-list-page.d.ts +1 -1
- package/dist-client/pages/data-archive/data-archive-request-popup.js +7 -4
- package/dist-client/pages/data-archive/data-archive-request-popup.js.map +1 -1
- package/dist-client/pages/data-entry/data-entry-list-page.d.ts +1 -1
- package/dist-client/pages/data-key-set/data-key-item-list.d.ts +1 -1
- package/dist-client/pages/data-key-set/data-key-item-list.js +5 -4
- package/dist-client/pages/data-key-set/data-key-item-list.js.map +1 -1
- package/dist-client/pages/data-key-set/data-key-set-importer.d.ts +1 -1
- package/dist-client/pages/data-key-set/data-key-set-importer.js +5 -4
- package/dist-client/pages/data-key-set/data-key-set-importer.js.map +1 -1
- package/dist-client/pages/data-key-set/data-key-set-list-page.d.ts +1 -1
- package/dist-client/pages/data-ooc/data-ooc-list-page.d.ts +1 -1
- package/dist-client/pages/data-ooc/data-ooc-page.d.ts +1 -1
- package/dist-client/pages/data-ooc/data-ooc-view.d.ts +1 -1
- package/dist-client/pages/data-ooc/data-oocs-page.d.ts +1 -1
- package/dist-client/pages/data-report/data-report-embed-page.d.ts +1 -1
- package/dist-client/pages/data-report/data-report-list-page.d.ts +1 -1
- package/dist-client/pages/data-report/data-report-samples-page.d.ts +1 -1
- package/dist-client/pages/data-sample/data-sample-list-page.d.ts +1 -1
- package/dist-client/pages/data-sample/data-sample-page.d.ts +1 -1
- package/dist-client/pages/data-sample/data-sample-search-page.d.ts +1 -1
- package/dist-client/pages/data-sample/data-sample-view.d.ts +1 -1
- package/dist-client/pages/data-sample/data-samples-page.d.ts +1 -1
- package/dist-client/pages/data-sensor/data-sensor-list-page.d.ts +1 -1
- package/dist-client/pages/data-set/data-item-list.js +7 -4
- package/dist-client/pages/data-set/data-item-list.js.map +1 -1
- package/dist-client/pages/data-set/data-set-importer.d.ts +1 -1
- package/dist-client/pages/data-set/data-set-importer.js +5 -4
- package/dist-client/pages/data-set/data-set-importer.js.map +1 -1
- package/dist-client/pages/data-set/data-set-list-page.d.ts +1 -1
- package/dist-client/pages/data-summary/data-summary-list-page.d.ts +1 -1
- package/dist-client/pages/data-summary/data-summary-period-page.d.ts +1 -1
- package/dist-client/pages/data-summary/data-summary-search-page.d.ts +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
@@ -7,14 +7,14 @@ import { customElement, property, query, state } from 'lit/decorators.js'
|
|
7
7
|
|
8
8
|
import { client } from '@operato/graphql'
|
9
9
|
import { i18next, localize } from '@operato/i18n'
|
10
|
-
import {
|
10
|
+
import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'
|
11
11
|
import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js'
|
12
12
|
import { DataSet } from '@operato/dataset'
|
13
13
|
|
14
14
|
@customElement('data-entry-form')
|
15
15
|
export class DataEntryForm extends localize(i18next)(LitElement) {
|
16
16
|
static styles = [
|
17
|
-
|
17
|
+
CommonHeaderStyles,
|
18
18
|
ScrollbarStyles,
|
19
19
|
css`
|
20
20
|
:host {
|
@@ -49,10 +49,11 @@ export class DataEntryForm extends localize(i18next)(LitElement) {
|
|
49
49
|
return html`
|
50
50
|
<ox-data-entry-form .dataSet=${this.dataSet}></ox-data-entry-form>
|
51
51
|
|
52
|
-
<div class="
|
52
|
+
<div class="footer">
|
53
|
+
<div filler></div>
|
53
54
|
${!this.dataSample
|
54
55
|
? html`
|
55
|
-
<button @click=${this.updateDataItems.bind(this)}>
|
56
|
+
<button @click=${this.updateDataItems.bind(this)} done>
|
56
57
|
<md-icon>save</md-icon>${i18next.t('button.save')}
|
57
58
|
</button>
|
58
59
|
`
|
@@ -7,7 +7,7 @@ import { customElement, property, query, state } from 'lit/decorators.js'
|
|
7
7
|
import { i18next, localize } from '@operato/i18n'
|
8
8
|
import { client } from '@operato/graphql'
|
9
9
|
import { SingleColumnFormStyles } from '@operato/form'
|
10
|
-
import {
|
10
|
+
import { CommonHeaderStyles } from '@operato/styles'
|
11
11
|
|
12
12
|
import moment from '@operato/moment-timezone-es'
|
13
13
|
import { CustomAlert } from '@operato/shell'
|
@@ -15,7 +15,7 @@ import { CustomAlert } from '@operato/shell'
|
|
15
15
|
@customElement('data-archive-request-popup')
|
16
16
|
class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
|
17
17
|
static styles = [
|
18
|
-
|
18
|
+
CommonHeaderStyles,
|
19
19
|
SingleColumnFormStyles,
|
20
20
|
css`
|
21
21
|
:host {
|
@@ -49,8 +49,11 @@ class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
|
|
49
49
|
</fieldset>
|
50
50
|
</form>
|
51
51
|
|
52
|
-
<div class="
|
53
|
-
<
|
52
|
+
<div class="footer">
|
53
|
+
<div filler></div>
|
54
|
+
<button @click=${this.requestArchive} done>
|
55
|
+
<md-icon>archive</md-icon>${String(i18next.t('button.submit'))}
|
56
|
+
</button>
|
54
57
|
</div>
|
55
58
|
`
|
56
59
|
}
|
@@ -8,12 +8,12 @@ import { client } from '@operato/graphql'
|
|
8
8
|
import { i18next, localize } from '@operato/i18n'
|
9
9
|
import { isMobileDevice } from '@operato/utils'
|
10
10
|
import { DataGrist, FetchOption } from '@operato/data-grist'
|
11
|
-
import {
|
11
|
+
import { CommonHeaderStyles } from '@operato/styles'
|
12
12
|
|
13
13
|
@customElement('data-key-item-list')
|
14
14
|
export class DataKeyItemList extends localize(i18next)(LitElement) {
|
15
15
|
static styles = [
|
16
|
-
|
16
|
+
CommonHeaderStyles,
|
17
17
|
css`
|
18
18
|
:host {
|
19
19
|
display: flex;
|
@@ -40,11 +40,12 @@ export class DataKeyItemList extends localize(i18next)(LitElement) {
|
|
40
40
|
.fetchHandler=${this.fetchHandler.bind(this)}
|
41
41
|
></ox-grist>
|
42
42
|
|
43
|
-
<div class="
|
43
|
+
<div class="footer">
|
44
|
+
<div filler></div>
|
44
45
|
<button danger @click=${this._deleteDataKeyItems.bind(this)}>
|
45
46
|
<md-icon>delete_forever</md-icon>${i18next.t('button.delete')}
|
46
47
|
</button>
|
47
|
-
<button @click=${this._updateDataKeyItems.bind(this)}>
|
48
|
+
<button @click=${this._updateDataKeyItems.bind(this)} done>
|
48
49
|
<md-icon>save</md-icon>${i18next.t('button.save')}
|
49
50
|
</button>
|
50
51
|
</div>
|
@@ -8,12 +8,12 @@ import { customElement, property, query, state } from 'lit/decorators.js'
|
|
8
8
|
import { client } from '@operato/graphql'
|
9
9
|
import { i18next } from '@operato/i18n'
|
10
10
|
import { isMobileDevice } from '@operato/utils'
|
11
|
-
import {
|
11
|
+
import { CommonHeaderStyles } from '@operato/styles'
|
12
12
|
|
13
13
|
@customElement('data-key-set-importer')
|
14
14
|
export class DataKeySetImporter extends LitElement {
|
15
15
|
static styles = [
|
16
|
-
|
16
|
+
CommonHeaderStyles,
|
17
17
|
css`
|
18
18
|
:host {
|
19
19
|
display: flex;
|
@@ -65,8 +65,9 @@ export class DataKeySetImporter extends LitElement {
|
|
65
65
|
}}
|
66
66
|
></ox-grist>
|
67
67
|
|
68
|
-
<div class="
|
69
|
-
<
|
68
|
+
<div class="footer">
|
69
|
+
<div filler></div>
|
70
|
+
<button @click=${this.save.bind(this)} done><md-icon>save</md-icon>${i18next.t('button.save')}</button>
|
70
71
|
</div>
|
71
72
|
`
|
72
73
|
}
|
@@ -9,7 +9,7 @@ import { client } from '@operato/graphql'
|
|
9
9
|
import { i18next, localize } from '@operato/i18n'
|
10
10
|
import { isMobileDevice } from '@operato/utils'
|
11
11
|
import { DataGrist, FetchOption } from '@operato/data-grist'
|
12
|
-
import {
|
12
|
+
import { CommonHeaderStyles } from '@operato/styles'
|
13
13
|
|
14
14
|
const DataItemStats = ['sum', 'mean', 'stddev', 'variance', 'min', 'max', 'range', 'median', 'mode']
|
15
15
|
|
@@ -20,7 +20,7 @@ class DataItemList extends localize(i18next)(LitElement) {
|
|
20
20
|
@state() gristConfig: any
|
21
21
|
|
22
22
|
static styles = [
|
23
|
-
|
23
|
+
CommonHeaderStyles,
|
24
24
|
css`
|
25
25
|
:host {
|
26
26
|
display: flex;
|
@@ -45,11 +45,14 @@ class DataItemList extends localize(i18next)(LitElement) {
|
|
45
45
|
.fetchHandler=${this.fetchHandler.bind(this)}
|
46
46
|
></ox-grist>
|
47
47
|
|
48
|
-
<div class="
|
48
|
+
<div class="footer">
|
49
|
+
<div filler></div>
|
49
50
|
<button danger @click=${this._deleteDataItems.bind(this)}>
|
50
51
|
<md-icon>delete_forever</md-icon>${i18next.t('button.delete')}
|
51
52
|
</button>
|
52
|
-
<button @click=${this._updateDataItems.bind(this)}
|
53
|
+
<button @click=${this._updateDataItems.bind(this)} done>
|
54
|
+
<md-icon>save</md-icon>${i18next.t('button.save')}
|
55
|
+
</button>
|
53
56
|
</div>
|
54
57
|
`
|
55
58
|
}
|
@@ -9,11 +9,11 @@ import { client } from '@operato/graphql'
|
|
9
9
|
import { i18next } from '@operato/i18n'
|
10
10
|
import { isMobileDevice } from '@operato/utils'
|
11
11
|
import { DataSet } from '@operato/dataset'
|
12
|
-
import {
|
12
|
+
import { CommonHeaderStyles } from '@operato/styles'
|
13
13
|
@customElement('data-set-importer')
|
14
14
|
export class DataSetImporter extends LitElement {
|
15
15
|
static styles = [
|
16
|
-
|
16
|
+
CommonHeaderStyles,
|
17
17
|
css`
|
18
18
|
:host {
|
19
19
|
display: flex;
|
@@ -63,8 +63,9 @@ export class DataSetImporter extends LitElement {
|
|
63
63
|
.data=${{ records: this.dataSets }}
|
64
64
|
></ox-grist>
|
65
65
|
|
66
|
-
<div class="
|
67
|
-
<
|
66
|
+
<div class="footer">
|
67
|
+
<div filler></div>
|
68
|
+
<button @click=${this.save.bind(this)} done><md-icon>save</md-icon>${i18next.t('button.save')}</button>
|
68
69
|
</div>
|
69
70
|
`
|
70
71
|
}
|
@@ -11,7 +11,7 @@ export declare class DataCollectActivityEdit extends DataCollectActivityEdit_bas
|
|
11
11
|
id: string;
|
12
12
|
};
|
13
13
|
entryForm: OxDataEntryForm;
|
14
|
-
render(): import("lit").TemplateResult<1>;
|
14
|
+
render(): import("lit-html").TemplateResult<1>;
|
15
15
|
_updateDataItems(): Promise<void>;
|
16
16
|
updated(changes: any): void;
|
17
17
|
fetchDataSet(): Promise<void>;
|
@@ -9,7 +9,7 @@ export declare class DataCollectActivityView extends DataCollectActivityView_bas
|
|
9
9
|
dataSet?: DataSet & {
|
10
10
|
id: string;
|
11
11
|
};
|
12
|
-
render(): import("lit").TemplateResult<1>;
|
12
|
+
render(): import("lit-html").TemplateResult<1>;
|
13
13
|
updated(changes: any): void;
|
14
14
|
fetchDataSet(): Promise<void>;
|
15
15
|
}
|
@@ -6,7 +6,7 @@ export declare class DataReviewActivityEdit extends DataReviewActivityEdit_base
|
|
6
6
|
input?: any;
|
7
7
|
output?: any;
|
8
8
|
dataSample?: any;
|
9
|
-
render(): import("lit").TemplateResult<1>;
|
9
|
+
render(): import("lit-html").TemplateResult<1>;
|
10
10
|
onChangeInstruction(e: Event): void;
|
11
11
|
updated(changes: any): void;
|
12
12
|
fetchDataAssign(): Promise<void>;
|
@@ -6,7 +6,7 @@ export declare class DataReviewActivityView extends DataReviewActivityView_base
|
|
6
6
|
input?: any;
|
7
7
|
output?: any;
|
8
8
|
dataSample?: any;
|
9
|
-
render(): import("lit").TemplateResult<1>;
|
9
|
+
render(): import("lit-html").TemplateResult<1>;
|
10
10
|
onChangeInstruction(e: Event): void;
|
11
11
|
updated(changes: any): void;
|
12
12
|
fetchDataAssign(): Promise<void>;
|
@@ -7,7 +7,7 @@ export declare class OocResolveActivityView extends OocResolveActivityView_base
|
|
7
7
|
output?: any;
|
8
8
|
activityApproval?: any;
|
9
9
|
dataOoc?: any;
|
10
|
-
render(): import("lit").TemplateResult<1>;
|
10
|
+
render(): import("lit-html").TemplateResult<1>;
|
11
11
|
updated(changes: any): void;
|
12
12
|
fetchDataOoc(): Promise<void>;
|
13
13
|
}
|
@@ -14,7 +14,7 @@ export declare class DataEntryForm extends DataEntryForm_base {
|
|
14
14
|
collectedAt: Date;
|
15
15
|
};
|
16
16
|
entryForm: OxDataEntryForm;
|
17
|
-
render(): import("lit").TemplateResult<1>;
|
17
|
+
render(): import("lit-html").TemplateResult<1>;
|
18
18
|
private updateDataItems;
|
19
19
|
}
|
20
20
|
export {};
|
@@ -6,17 +6,18 @@ import { css, html, LitElement } from 'lit';
|
|
6
6
|
import { customElement, property, query, state } from 'lit/decorators.js';
|
7
7
|
import { client } from '@operato/graphql';
|
8
8
|
import { i18next, localize } from '@operato/i18n';
|
9
|
-
import {
|
9
|
+
import { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles';
|
10
10
|
import { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js';
|
11
11
|
let DataEntryForm = class DataEntryForm extends localize(i18next)(LitElement) {
|
12
12
|
render() {
|
13
13
|
return html `
|
14
14
|
<ox-data-entry-form .dataSet=${this.dataSet}></ox-data-entry-form>
|
15
15
|
|
16
|
-
<div class="
|
16
|
+
<div class="footer">
|
17
|
+
<div filler></div>
|
17
18
|
${!this.dataSample
|
18
19
|
? html `
|
19
|
-
<button @click=${this.updateDataItems.bind(this)}>
|
20
|
+
<button @click=${this.updateDataItems.bind(this)} done>
|
20
21
|
<md-icon>save</md-icon>${i18next.t('button.save')}
|
21
22
|
</button>
|
22
23
|
`
|
@@ -64,7 +65,7 @@ let DataEntryForm = class DataEntryForm extends localize(i18next)(LitElement) {
|
|
64
65
|
}
|
65
66
|
};
|
66
67
|
DataEntryForm.styles = [
|
67
|
-
|
68
|
+
CommonHeaderStyles,
|
68
69
|
ScrollbarStyles,
|
69
70
|
css `
|
70
71
|
:host {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-entry-form.js","sourceRoot":"","sources":["../../client/components/data-entry-form.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,wCAAwC,CAAA;AAE/C,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"data-entry-form.js","sourceRoot":"","sources":["../../client/components/data-entry-form.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,wCAAwC,CAAA;AAE/C,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAA;AAIjE,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;IAiC9D,MAAM;QACJ,OAAO,IAAI,CAAA;qCACsB,IAAI,CAAC,OAAO;;;;UAIvC,CAAC,IAAI,CAAC,UAAU;YAChB,CAAC,CAAC,IAAI,CAAA;+BACe,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;yCACrB,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;;aAEpD;YACH,CAAC,CAAC,IAAI,CAAA,UAAU,OAAO,CAAC,CAAC,CAAC,oBAAoB,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,UAAU;;KAE/G,CAAA;IACH,CAAC;IAEO,KAAK,CAAC,eAAe;;QAC3B,yDAAyD;QACzD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAA;QAExC,MAAM,UAAU,GAAG;YACjB,OAAO,EAAE;gBACP,EAAE,EAAE,MAAA,IAAI,CAAC,OAAO,0CAAE,EAAE;aACrB;YACD,IAAI;SACE,CAAA;QAER,IAAI,MAAA,IAAI,CAAC,UAAU,0CAAE,WAAW,EAAE,CAAC;YACjC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAA;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;YACnC,QAAQ,EAAE,GAAG,CAAA;;;;;;;OAOZ;YACD,SAAS,EAAE;gBACT,UAAU;aACX;YACD,OAAO,EAAE;gBACP,SAAS,EAAE,IAAI;aAChB;SACF,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAA;YAC1D,IAAI,CAAC,UAAU,GAAG;gBAChB,EAAE;gBACF,WAAW,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;aACnC,CAAA;YAED,QAAQ,CAAC,aAAa,CACpB,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,uCAAuC,CAAC,EAAE,EAAE,CAAC,CACvG,CAAA;QACH,CAAC;IACH,CAAC;;AA5FM,oBAAM,GAAG;IACd,kBAAkB;IAClB,eAAe;IACf,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;KAoBF;CACF,AAxBY,CAwBZ;AAE2B;IAA3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;8CAAmC;AAErD;IAAR,KAAK,EAAE;;iDAA+C;AAE1B;IAA5B,KAAK,CAAC,oBAAoB,CAAC;8BAAa,eAAe;gDAAA;AA/B7C,aAAa;IADzB,aAAa,CAAC,iBAAiB,CAAC;GACpB,aAAa,CA8FzB","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/dataset/ox-data-entry-form.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { CommonHeaderStyles, ScrollbarStyles } from '@operato/styles'\nimport { OxDataEntryForm } from '@operato/dataset/ox-data-entry-form.js'\nimport { DataSet } from '@operato/dataset'\n\n@customElement('data-entry-form')\nexport class DataEntryForm extends localize(i18next)(LitElement) {\n static styles = [\n CommonHeaderStyles,\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n ox-data-entry-form {\n flex: 1;\n padding: 10px;\n overflow: auto;\n }\n\n .button-container span {\n font-size: 14px;\n color: #333;\n line-height: 1.5;\n padding: 10px;\n }\n `\n ]\n\n @property({ type: Object }) dataSet?: DataSet & { id: string }\n\n @state() dataSample?: { id: string; collectedAt: Date }\n\n @query('ox-data-entry-form') entryForm!: OxDataEntryForm\n\n render() {\n return html`\n <ox-data-entry-form .dataSet=${this.dataSet}></ox-data-entry-form>\n\n <div class=\"footer\">\n <div filler></div>\n ${!this.dataSample\n ? html`\n <button @click=${this.updateDataItems.bind(this)} done>\n <md-icon>save</md-icon>${i18next.t('button.save')}\n </button>\n `\n : html` <span>${i18next.t('field.collected-at')}: ${this.dataSample.collectedAt.toLocaleString()}</span> `}\n </div>\n `\n }\n\n private async updateDataItems() {\n //@ts-ignore TODO replace with following line and confirm\n const data = this.entryForm.buildValue()\n\n const dataSample = {\n dataSet: {\n id: this.dataSet?.id\n },\n data\n } as any\n\n if (this.dataSample?.collectedAt) {\n dataSample.collectedAt = this.dataSample.collectedAt\n }\n\n const response = await client.mutate({\n mutation: gql`\n mutation ($dataSample: NewDataSample!) {\n createDataSample(dataSample: $dataSample) {\n id\n collectedAt\n }\n }\n `,\n variables: {\n dataSample\n },\n context: {\n hasUpload: true\n }\n })\n\n if (!response.errors) {\n const { id, collectedAt } = response.data.createDataSample\n this.dataSample = {\n id,\n collectedAt: new Date(collectedAt)\n }\n\n document.dispatchEvent(\n new CustomEvent('notify', { detail: { message: i18next.t('text.data sample created successfully') } })\n )\n }\n }\n}\n"]}
|
@@ -46,7 +46,7 @@ export declare class DataArchiveListPage extends DataArchiveListPage_base {
|
|
46
46
|
};
|
47
47
|
toolbar: boolean;
|
48
48
|
};
|
49
|
-
render(): import("lit").TemplateResult<1>;
|
49
|
+
render(): import("lit-html").TemplateResult<1>;
|
50
50
|
pageInitialized(lifecycle: any): Promise<void>;
|
51
51
|
closePopupAndRefesh(): void;
|
52
52
|
openArchivePopup(): Promise<void>;
|
@@ -6,7 +6,7 @@ import { customElement, state } from 'lit/decorators.js';
|
|
6
6
|
import { i18next, localize } from '@operato/i18n';
|
7
7
|
import { client } from '@operato/graphql';
|
8
8
|
import { SingleColumnFormStyles } from '@operato/form';
|
9
|
-
import {
|
9
|
+
import { CommonHeaderStyles } from '@operato/styles';
|
10
10
|
import moment from '@operato/moment-timezone-es';
|
11
11
|
import { CustomAlert } from '@operato/shell';
|
12
12
|
let DataArchiveRequestPopup = class DataArchiveRequestPopup extends localize(i18next)(LitElement) {
|
@@ -25,8 +25,11 @@ let DataArchiveRequestPopup = class DataArchiveRequestPopup extends localize(i18
|
|
25
25
|
</fieldset>
|
26
26
|
</form>
|
27
27
|
|
28
|
-
<div class="
|
29
|
-
<
|
28
|
+
<div class="footer">
|
29
|
+
<div filler></div>
|
30
|
+
<button @click=${this.requestArchive} done>
|
31
|
+
<md-icon>archive</md-icon>${String(i18next.t('button.submit'))}
|
32
|
+
</button>
|
30
33
|
</div>
|
31
34
|
`;
|
32
35
|
}
|
@@ -130,7 +133,7 @@ let DataArchiveRequestPopup = class DataArchiveRequestPopup extends localize(i18
|
|
130
133
|
}
|
131
134
|
};
|
132
135
|
DataArchiveRequestPopup.styles = [
|
133
|
-
|
136
|
+
CommonHeaderStyles,
|
134
137
|
SingleColumnFormStyles,
|
135
138
|
css `
|
136
139
|
:host {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-archive-request-popup.js","sourceRoot":"","sources":["../../../client/pages/data-archive/data-archive-request-popup.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAmB,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"data-archive-request-popup.js","sourceRoot":"","sources":["../../../client/pages/data-archive/data-archive-request-popup.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { i18next, localize } from '@operato/i18n'\nimport { client } from '@operato/graphql'\nimport { SingleColumnFormStyles } from '@operato/form'\nimport { CommonHeaderStyles } from '@operato/styles'\n\nimport moment from '@operato/moment-timezone-es'\nimport { CustomAlert } from '@operato/shell'\n\n@customElement('data-archive-request-popup')\nclass DataArchiveRequestPopup extends localize(i18next)(LitElement) {\n static styles = [\n CommonHeaderStyles,\n SingleColumnFormStyles,\n css`\n :host {\n padding: 10px;\n display: flex;\n flex-direction: column;\n overflow-x: overlay;\n background-color: var(--md-sys-color-background);\n }\n\n form {\n overflow: auto;\n }\n `\n ]\n\n @state() dataSetTypes: any\n\n render() {\n return html`\n <form id=\"input-form\" name=\"generation\" class=\"single-column-form\" @submit=${e => this.onSubmit(e)}>\n <fieldset>\n <label>${i18next.t('label.start-date')}</label>\n <input type=\"month\" name=\"startDate\" required />\n <label>${i18next.t('label.end-date')}</label>\n <input type=\"month\" name=\"endDate\" .value=${moment().format('YYYY-MM')} />\n <label>${i18next.t('label.data-set-type')}</label>\n <select name=\"type\" required>\n ${(this.dataSetTypes || []).map(t => html`<option value=${t && t.value}>${t && t.display}</option>`)}\n </select>\n </fieldset>\n </form>\n\n <div class=\"footer\">\n <div filler></div>\n <button @click=${this.requestArchive} done>\n <md-icon>archive</md-icon>${String(i18next.t('button.submit'))}\n </button>\n </div>\n `\n }\n\n async firstUpdated() {}\n\n async onSubmit(e) {\n e.preventDefault()\n this.requestArchive()\n }\n\n serializeFormData() {\n const obj = {}\n\n Array.from(this.shadowRoot!.querySelectorAll('form#input-form input, select')).forEach((field: Element) => {\n const input = field as HTMLInputElement\n if (!input.hasAttribute('hidden') && input.value) {\n obj[input.name] = input.type === 'checkbox' ? input.checked : input.value\n }\n })\n\n if (obj['startDate']) {\n obj['startDate'] += '-01'\n }\n\n if (obj['endDate']) {\n const endDate = moment(obj['endDate']).endOf('month')\n const today = moment()\n const format = 'YYYY-MM-DD'\n\n obj['endDate'] = endDate > today ? today.format(format) : endDate.format(format)\n }\n\n return obj\n }\n\n /** request download url. */\n async requestArchive() {\n // #1 request download url\n const dataArchive = {\n requestParams: this.serializeFormData(),\n status: 'requested'\n }\n\n const response = await client.mutate({\n mutation: gql`\n mutation createDataArchive($dataArchive: NewDataArchive!) {\n createDataArchive(dataArchive: $dataArchive) {\n id\n status\n }\n }\n `,\n variables: { dataArchive }\n })\n\n if (!response.errors) {\n this.dispatchEvent(new CustomEvent('requested', {}))\n\n const {\n createDataArchive: { id }\n } = response.data\n dataArchive['id'] = id\n\n this._generateArchiveAndDownloadUrl(dataArchive)\n\n await CustomAlert({\n type: 'info',\n title: i18next.t('title.ready'),\n text: i18next.t('text.data-archive waits'),\n confirmButton: { text: i18next.t('button.confirm') }\n })\n } else {\n console.error(response.errors)\n this.showToast(i18next.t('text.failed'))\n }\n }\n\n async _generateArchiveAndDownloadUrl(dataArchive) {\n const response = await client.mutate({\n mutation: gql`\n mutation generatePresignedUrl($patch: DataArchivePatch!) {\n generatePresignedUrl(patch: $patch) {\n id\n downloadUrl\n status\n }\n }\n `,\n variables: { patch: dataArchive }\n })\n\n if (!response.errors) {\n this.showToast(i18next.t('title.data-archive downloads ready'))\n this.dispatchEvent(new CustomEvent('created', {}))\n } else {\n console.error(response.errors)\n this.showToast(i18next.t('text.failed'))\n }\n }\n\n showToast(message) {\n document.dispatchEvent(new CustomEvent('notify', { detail: { message } }))\n }\n\n constructor() {\n super()\n\n this.dataSetTypes = [\n {},\n {\n display: i18next.t('text.manually collected'),\n value: 'manual'\n },\n {\n display: i18next.t('text.automatically collected'),\n value: 'automatic'\n }\n ]\n }\n}\n"]}
|
@@ -28,7 +28,7 @@ export declare class DataEntryListPage extends DataEntryListPage_base {
|
|
28
28
|
help: string;
|
29
29
|
toolbar: boolean;
|
30
30
|
};
|
31
|
-
render(): import("lit").TemplateResult<1>;
|
31
|
+
render(): import("lit-html").TemplateResult<1>;
|
32
32
|
pageInitialized(lifecycle: any): Promise<void>;
|
33
33
|
fetchHandler({ page, limit, sortings, filters }: FetchOption): Promise<{
|
34
34
|
total: any;
|
@@ -7,7 +7,7 @@ export declare class DataKeyItemList extends DataKeyItemList_base {
|
|
7
7
|
dataKeySet: any;
|
8
8
|
gristConfig: any;
|
9
9
|
private grist;
|
10
|
-
render(): import("lit").TemplateResult<1>;
|
10
|
+
render(): import("lit-html").TemplateResult<1>;
|
11
11
|
firstUpdated(): Promise<void>;
|
12
12
|
fetchHandler({ filters, page, limit, sortings }: FetchOption): Promise<{
|
13
13
|
total: any;
|
@@ -7,7 +7,7 @@ import { client } from '@operato/graphql';
|
|
7
7
|
import { i18next, localize } from '@operato/i18n';
|
8
8
|
import { isMobileDevice } from '@operato/utils';
|
9
9
|
import { DataGrist } from '@operato/data-grist';
|
10
|
-
import {
|
10
|
+
import { CommonHeaderStyles } from '@operato/styles';
|
11
11
|
let DataKeyItemList = class DataKeyItemList extends localize(i18next)(LitElement) {
|
12
12
|
render() {
|
13
13
|
return html `
|
@@ -17,11 +17,12 @@ let DataKeyItemList = class DataKeyItemList extends localize(i18next)(LitElement
|
|
17
17
|
.fetchHandler=${this.fetchHandler.bind(this)}
|
18
18
|
></ox-grist>
|
19
19
|
|
20
|
-
<div class="
|
20
|
+
<div class="footer">
|
21
|
+
<div filler></div>
|
21
22
|
<button danger @click=${this._deleteDataKeyItems.bind(this)}>
|
22
23
|
<md-icon>delete_forever</md-icon>${i18next.t('button.delete')}
|
23
24
|
</button>
|
24
|
-
<button @click=${this._updateDataKeyItems.bind(this)}>
|
25
|
+
<button @click=${this._updateDataKeyItems.bind(this)} done>
|
25
26
|
<md-icon>save</md-icon>${i18next.t('button.save')}
|
26
27
|
</button>
|
27
28
|
</div>
|
@@ -148,7 +149,7 @@ let DataKeyItemList = class DataKeyItemList extends localize(i18next)(LitElement
|
|
148
149
|
}
|
149
150
|
};
|
150
151
|
DataKeyItemList.styles = [
|
151
|
-
|
152
|
+
CommonHeaderStyles,
|
152
153
|
css `
|
153
154
|
:host {
|
154
155
|
display: flex;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-key-item-list.js","sourceRoot":"","sources":["../../../client/pages/data-key-set/data-key-item-list.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAe,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"data-key-item-list.js","sourceRoot":"","sources":["../../../client/pages/data-key-set/data-key-item-list.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next, localize } from '@operato/i18n'\nimport { isMobileDevice } from '@operato/utils'\nimport { DataGrist, FetchOption } from '@operato/data-grist'\nimport { CommonHeaderStyles } from '@operato/styles'\n\n@customElement('data-key-item-list')\nexport class DataKeyItemList extends localize(i18next)(LitElement) {\n static styles = [\n CommonHeaderStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n ox-grist {\n flex: 1;\n }\n `\n ]\n\n @property({ type: Object }) dataKeySet: any\n @state() gristConfig: any\n @query('ox-grist') private grist!: DataGrist\n\n render() {\n return html`\n <ox-grist\n .mode=${isMobileDevice() ? 'LIST' : 'GRID'}\n .config=${this.gristConfig}\n .fetchHandler=${this.fetchHandler.bind(this)}\n ></ox-grist>\n\n <div class=\"footer\">\n <div filler></div>\n <button danger @click=${this._deleteDataKeyItems.bind(this)}>\n <md-icon>delete_forever</md-icon>${i18next.t('button.delete')}\n </button>\n <button @click=${this._updateDataKeyItems.bind(this)} done>\n <md-icon>save</md-icon>${i18next.t('button.save')}\n </button>\n </div>\n `\n }\n\n async firstUpdated() {\n this.gristConfig = {\n list: { fields: ['name', 'description', 'active'] },\n columns: [\n { type: 'gutter', gutterName: 'row-selector', multiple: true },\n {\n type: 'gutter',\n gutterName: 'button',\n icon: 'add',\n handlers: {\n click: 'record-copy'\n }\n },\n { type: 'gutter', gutterName: 'sequence' },\n {\n type: 'gutter',\n gutterName: 'button',\n icon: 'arrow_upward',\n handlers: {\n click: 'move-up'\n }\n },\n {\n type: 'gutter',\n gutterName: 'button',\n icon: 'arrow_downward',\n handlers: {\n click: 'move-down'\n }\n },\n {\n type: 'string',\n name: 'name',\n header: i18next.t('field.name'),\n record: {\n editable: true\n },\n width: 140\n },\n {\n type: 'string',\n name: 'description',\n header: i18next.t('field.description'),\n record: {\n editable: true\n },\n width: 180\n },\n {\n type: 'string',\n name: 'dataKey',\n header: i18next.t('field.data-key'),\n record: {\n editable: true\n },\n width: 180\n },\n {\n type: 'string',\n name: 'tKey',\n header: i18next.t('field.t-key'),\n record: {\n editable: true\n },\n width: 180\n }\n ],\n rows: {\n selectable: {\n multiple: true\n }\n },\n pagination: {\n infinite: true\n },\n sorters: []\n }\n }\n\n async fetchHandler({ filters, page, limit, sortings = [] }: FetchOption) {\n const dataKeyItems = this.dataKeySet.dataKeyItems || []\n\n return {\n total: dataKeyItems.length,\n records: dataKeyItems\n }\n }\n\n async _updateDataKeyItems() {\n this.grist.commit()\n\n const response = await client.mutate({\n mutation: gql`\n mutation ($id: String!, $patch: DataKeySetPatch!) {\n updateDataKeySet(id: $id, patch: $patch) {\n name\n }\n }\n `,\n variables: {\n id: this.dataKeySet.id,\n patch: {\n dataKeyItems: this.grist.data.records,\n cuFlag: 'M'\n }\n }\n })\n\n if (!response.errors) {\n await document.dispatchEvent(\n new CustomEvent('notify', {\n detail: {\n message: i18next.t('text.info_x_successfully', {\n x: i18next.t('button.save')\n })\n }\n })\n )\n }\n }\n\n async _deleteDataKeyItems() {\n if (!confirm(i18next.t('text.sure_to_x', { x: i18next.t('text.delete') }))) {\n return\n }\n\n this.grist.deleteSelectedRecords(false)\n }\n}\n"]}
|
@@ -5,6 +5,6 @@ export declare class DataKeySetImporter extends LitElement {
|
|
5
5
|
static styles: import("lit").CSSResult[];
|
6
6
|
dataKeySets: any[];
|
7
7
|
private columns;
|
8
|
-
render(): import("lit").TemplateResult<1>;
|
8
|
+
render(): import("lit-html").TemplateResult<1>;
|
9
9
|
save(): Promise<void>;
|
10
10
|
}
|
@@ -7,7 +7,7 @@ import { customElement, property } from 'lit/decorators.js';
|
|
7
7
|
import { client } from '@operato/graphql';
|
8
8
|
import { i18next } from '@operato/i18n';
|
9
9
|
import { isMobileDevice } from '@operato/utils';
|
10
|
-
import {
|
10
|
+
import { CommonHeaderStyles } from '@operato/styles';
|
11
11
|
let DataKeySetImporter = class DataKeySetImporter extends LitElement {
|
12
12
|
constructor() {
|
13
13
|
super(...arguments);
|
@@ -47,8 +47,9 @@ let DataKeySetImporter = class DataKeySetImporter extends LitElement {
|
|
47
47
|
}}
|
48
48
|
></ox-grist>
|
49
49
|
|
50
|
-
<div class="
|
51
|
-
<
|
50
|
+
<div class="footer">
|
51
|
+
<div filler></div>
|
52
|
+
<button @click=${this.save.bind(this)} done><md-icon>save</md-icon>${i18next.t('button.save')}</button>
|
52
53
|
</div>
|
53
54
|
`;
|
54
55
|
}
|
@@ -68,7 +69,7 @@ let DataKeySetImporter = class DataKeySetImporter extends LitElement {
|
|
68
69
|
}
|
69
70
|
};
|
70
71
|
DataKeySetImporter.styles = [
|
71
|
-
|
72
|
+
CommonHeaderStyles,
|
72
73
|
css `
|
73
74
|
:host {
|
74
75
|
display: flex;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-key-set-importer.js","sourceRoot":"","sources":["../../../client/pages/data-key-set/data-key-set-importer.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,qBAAqB,CAAA;AAE5B,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"data-key-set-importer.js","sourceRoot":"","sources":["../../../client/pages/data-key-set/data-key-set-importer.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,qBAAqB,CAAA;AAE5B,OAAO,GAAG,MAAM,aAAa,CAAA;AAC7B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAgB,MAAM,mBAAmB,CAAA;AAEzE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAG7C,IAAM,kBAAkB,GAAxB,MAAM,kBAAmB,SAAQ,UAAU;IAA3C;;QAiBsB,gBAAW,GAAU,EAAE,CAAA;QAE1C,YAAO,GAAG;YAChB,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE;YACzC,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC9B,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;oBAC/B,KAAK,EAAE,GAAG;iBACX;gBACD;oBACE,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,aAAa;oBACnB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;oBACtC,KAAK,EAAE,GAAG;iBACX;gBACD;oBACE,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,QAAQ;oBACd,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;oBACjC,KAAK,EAAE,EAAE;iBACV;aACF;SACF,CAAA;IAiCH,CAAC;IA/BC,MAAM;QACJ,OAAO,IAAI,CAAA;;gBAEC,cAAc,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;kBAChC,IAAI,CAAC,OAAO;gBACd;YACN,OAAO,EAAE,IAAI,CAAC,WAAW;SAC1B;;;;;yBAKgB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;;KAEhG,CAAA;IACH,CAAC;IAED,KAAK,CAAC,IAAI;;QACR,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;YACnC,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;SAC7C,CAAC,CAAA;QAEF,IAAI,MAAA,QAAQ,CAAC,MAAM,0CAAE,MAAM;YAAE,OAAM;QAEnC,IAAI,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,CAAA;IACjD,CAAC;;AAzEM,yBAAM,GAAG;IACd,kBAAkB;IAClB,GAAG,CAAA;;;;;;;;;;;KAWF;CACF,AAdY,CAcZ;AAE0B;IAA1B,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;uDAAwB;AAjBvC,kBAAkB;IAD9B,aAAa,CAAC,uBAAuB,CAAC;GAC1B,kBAAkB,CA2E9B","sourcesContent":["import '@material/web/icon/icon.js'\nimport '@operato/data-grist'\n\nimport gql from 'graphql-tag'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, state } from 'lit/decorators.js'\n\nimport { client } from '@operato/graphql'\nimport { i18next } from '@operato/i18n'\nimport { isMobileDevice } from '@operato/utils'\nimport { CommonHeaderStyles } from '@operato/styles'\n\n@customElement('data-key-set-importer')\nexport class DataKeySetImporter extends LitElement {\n static styles = [\n CommonHeaderStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n\n background-color: var(--md-sys-color-surface);\n }\n\n ox-grist {\n flex: 1;\n }\n `\n ]\n\n @property({ type: Array }) dataKeySets: any[] = []\n\n private columns = {\n list: { fields: ['name', 'description'] },\n pagination: { infinite: true },\n columns: [\n {\n type: 'string',\n name: 'name',\n header: i18next.t('field.name'),\n width: 150\n },\n {\n type: 'string',\n name: 'description',\n header: i18next.t('field.description'),\n width: 200\n },\n {\n type: 'checkbox',\n name: 'active',\n header: i18next.t('field.active'),\n width: 60\n }\n ]\n }\n\n render() {\n return html`\n <ox-grist\n .mode=${isMobileDevice() ? 'LIST' : 'GRID'}\n .config=${this.columns}\n .data=${{\n records: this.dataKeySets\n }}\n ></ox-grist>\n\n <div class=\"footer\">\n <div filler></div>\n <button @click=${this.save.bind(this)} done><md-icon>save</md-icon>${i18next.t('button.save')}</button>\n </div>\n `\n }\n\n async save() {\n const response = await client.mutate({\n mutation: gql`\n mutation importDataKeySets($dataKeySets: [DataKeySetPatch!]!) {\n importDataKeySets(dataKeySets: $dataKeySets)\n }\n `,\n variables: { dataKeySets: this.dataKeySets }\n })\n\n if (response.errors?.length) return\n\n this.dispatchEvent(new CustomEvent('imported'))\n }\n}\n"]}
|
@@ -49,7 +49,7 @@ export declare class DataKeySetListPage extends DataKeySetListPage_base {
|
|
49
49
|
};
|
50
50
|
toolbar: boolean;
|
51
51
|
};
|
52
|
-
render(): import("lit").TemplateResult<1>;
|
52
|
+
render(): import("lit-html").TemplateResult<1>;
|
53
53
|
pageInitialized(lifecycle: any): Promise<void>;
|
54
54
|
pageUpdated(changes: any, lifecycle: any): Promise<void>;
|
55
55
|
fetchHandler({ page, limit, sortings, filters }: FetchOption): Promise<{
|
@@ -52,7 +52,7 @@ export declare class DataOocListPage extends DataOocListPage_base {
|
|
52
52
|
};
|
53
53
|
toolbar: boolean;
|
54
54
|
};
|
55
|
-
render(): import("lit").TemplateResult<1>;
|
55
|
+
render(): import("lit-html").TemplateResult<1>;
|
56
56
|
pageInitialized(lifecycle: any): Promise<void>;
|
57
57
|
fetchHandler({ page, limit, sortings, filters }: FetchOption): Promise<{
|
58
58
|
total: any;
|
@@ -10,7 +10,7 @@ export declare class DataOocViewPage extends DataOocViewPage_base {
|
|
10
10
|
help: string;
|
11
11
|
actions: never[];
|
12
12
|
};
|
13
|
-
render(): import("lit").TemplateResult<1>;
|
13
|
+
render(): import("lit-html").TemplateResult<1>;
|
14
14
|
updated(changes: PropertyValues<this>): void;
|
15
15
|
pageUpdated(changes: any, lifecycle: any, before: any): void;
|
16
16
|
fetchOoc(id: string): Promise<void>;
|
@@ -9,7 +9,7 @@ export declare class DataOocView extends DataOocView_base {
|
|
9
9
|
dataOocId?: string;
|
10
10
|
dataOoc?: any;
|
11
11
|
private printHandler;
|
12
|
-
render(): import("lit").TemplateResult<1> | typeof nothing;
|
12
|
+
render(): import("lit-html").TemplateResult<1> | typeof nothing;
|
13
13
|
updated(changes: any): void;
|
14
14
|
fetchDataOoc(): Promise<void>;
|
15
15
|
handlePrint(event: any): void;
|
@@ -11,7 +11,7 @@ export declare class DataOocsPage extends DataOocsPage_base {
|
|
11
11
|
get context(): {
|
12
12
|
title: string;
|
13
13
|
};
|
14
|
-
render(): import("lit").TemplateResult<1>[] | undefined;
|
14
|
+
render(): import("lit-html").TemplateResult<1>[] | undefined;
|
15
15
|
pageUpdated(changes: any, lifecycle: any, before: any): void;
|
16
16
|
fetchOocs(ids: string[]): Promise<void>;
|
17
17
|
}
|
@@ -29,7 +29,7 @@ export declare class DataReportEmbedPage extends DataReportEmbedPage_base {
|
|
29
29
|
operator: string;
|
30
30
|
}[];
|
31
31
|
};
|
32
|
-
render(): import("lit").TemplateResult<1>;
|
32
|
+
render(): import("lit-html").TemplateResult<1>;
|
33
33
|
pageUpdated(changes: any, lifecycle: any): Promise<void>;
|
34
34
|
reportTemplate(filters: any): Promise<void>;
|
35
35
|
}
|