@gisce/ooui 2.22.0 → 2.23.0-alpha.2
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.
- package/dist/Field.d.ts +7 -0
- package/dist/Field.d.ts.map +1 -1
- package/dist/Form.d.ts +5 -0
- package/dist/Form.d.ts.map +1 -1
- package/dist/Tree.d.ts +5 -0
- package/dist/Tree.d.ts.map +1 -1
- package/dist/Widget.d.ts.map +1 -1
- package/dist/helpers/attributeParser.d.ts +1 -0
- package/dist/helpers/attributeParser.d.ts.map +1 -1
- package/dist/helpers/nodeParser.d.ts.map +1 -1
- package/dist/ooui.es.js +428 -392
- package/dist/ooui.es.js.map +1 -1
- package/package.json +1 -1
- package/src/Field.ts +33 -0
- package/src/Form.ts +23 -1
- package/src/Tree.ts +13 -1
- package/src/Widget.ts +4 -25
- package/src/helpers/attributeParser.ts +16 -0
- package/src/helpers/nodeParser.ts +7 -1
- package/src/spec/Field.spec.ts +35 -0
- package/src/spec/Form.spec.ts +80 -0
- package/src/spec/Tree.spec.ts +19 -0
- package/src/spec/nodeParser.spec.ts +53 -0
package/dist/ooui.es.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var n = (i, t, e) => (
|
|
4
|
-
import { decode as
|
|
5
|
-
import { evaluateCondition as
|
|
1
|
+
var me = Object.defineProperty;
|
|
2
|
+
var be = (i, t, e) => t in i ? me(i, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : i[t] = e;
|
|
3
|
+
var n = (i, t, e) => (be(i, typeof t != "symbol" ? t + "" : t, e), e);
|
|
4
|
+
import { decode as ye } from "html-entities";
|
|
5
|
+
import { evaluateCondition as pe } from "@gisce/conscheck";
|
|
6
6
|
import * as Y from "txml";
|
|
7
|
-
import
|
|
8
|
-
const
|
|
7
|
+
import T from "moment";
|
|
8
|
+
const xe = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), we = ({
|
|
9
9
|
entry: i,
|
|
10
10
|
values: t,
|
|
11
11
|
fields: e
|
|
12
12
|
}) => {
|
|
13
13
|
let [s, r, a] = i, l = t[s];
|
|
14
|
-
const o =
|
|
14
|
+
const o = Q({
|
|
15
15
|
fieldName: s,
|
|
16
16
|
valueInObject: l,
|
|
17
17
|
expectedValue: a,
|
|
@@ -41,7 +41,7 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
41
41
|
default:
|
|
42
42
|
return !1;
|
|
43
43
|
}
|
|
44
|
-
}, b = (i) =>
|
|
44
|
+
}, b = (i) => ye(i, { level: "xml" }), Q = ({
|
|
45
45
|
fieldName: i,
|
|
46
46
|
valueInObject: t,
|
|
47
47
|
expectedValue: e,
|
|
@@ -61,19 +61,30 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
61
61
|
modifiedExpectedValue: null,
|
|
62
62
|
directOutcome: !1
|
|
63
63
|
} : (r.modifiedValueInObject = s[i].type === "boolean" ? !!t : t, s[i].type === "many2one" && e === !1 && t === void 0 ? r.modifiedExpectedValue = void 0 : (r.modifiedValueInObject = r.modifiedValueInObject === void 0 ? !1 : r.modifiedValueInObject, r.modifiedValueInObject = r.modifiedValueInObject === null ? !1 : r.modifiedValueInObject), s[i].type === "many2one" && Array.isArray(r.modifiedValueInObject) && r.modifiedValueInObject[0] === void 0 && (r.modifiedValueInObject = !1), s[i].type === "boolean" && (e === 0 || e === 1) && (r.modifiedExpectedValue = e !== 0), r);
|
|
64
|
-
},
|
|
64
|
+
}, ve = ({
|
|
65
65
|
attrs: i,
|
|
66
66
|
values: t,
|
|
67
67
|
fields: e,
|
|
68
68
|
widgetType: s
|
|
69
69
|
}) => {
|
|
70
|
-
const
|
|
71
|
-
for (const
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
}
|
|
75
|
-
return
|
|
76
|
-
},
|
|
70
|
+
const d = i.replace(/\(/g, "[").replace(/\)/g, "]").replace(/'/g, '"').replace(/True/g, "true").replace(/False/g, "false"), _ = b(d), h = JSON.parse(_), u = {};
|
|
71
|
+
for (const g of Object.keys(h)) {
|
|
72
|
+
const p = h[g].map((y) => we({ entry: y, values: t, fields: e })).every((y) => y);
|
|
73
|
+
p ? u[g] = !0 : g === "readonly" && !p && s === "button" && (u[g] = !1);
|
|
74
|
+
}
|
|
75
|
+
return u;
|
|
76
|
+
}, X = (i) => {
|
|
77
|
+
if (i === void 0)
|
|
78
|
+
return {};
|
|
79
|
+
if (typeof i == "string")
|
|
80
|
+
try {
|
|
81
|
+
return JSON.parse(i.replace(/'/g, '"'));
|
|
82
|
+
} catch {
|
|
83
|
+
return console.error("Error parsing widget_props"), {};
|
|
84
|
+
}
|
|
85
|
+
else
|
|
86
|
+
return i;
|
|
87
|
+
}, Fe = ({
|
|
77
88
|
attrs: i,
|
|
78
89
|
values: t,
|
|
79
90
|
fields: e,
|
|
@@ -84,21 +95,21 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
84
95
|
r.replace(/'/g, '"')
|
|
85
96
|
), l = {};
|
|
86
97
|
for (const o of Object.keys(a)) {
|
|
87
|
-
const
|
|
98
|
+
const d = pe({
|
|
88
99
|
object: t,
|
|
89
100
|
condition: a[o],
|
|
90
101
|
evaluateFieldComparison: ({
|
|
91
102
|
fieldName: _,
|
|
92
|
-
valueInObject:
|
|
93
|
-
expectedValue:
|
|
94
|
-
}) =>
|
|
103
|
+
valueInObject: h,
|
|
104
|
+
expectedValue: u
|
|
105
|
+
}) => Q({
|
|
95
106
|
fieldName: _,
|
|
96
|
-
valueInObject:
|
|
97
|
-
expectedValue:
|
|
107
|
+
valueInObject: h,
|
|
108
|
+
expectedValue: u,
|
|
98
109
|
fields: e
|
|
99
110
|
})
|
|
100
111
|
});
|
|
101
|
-
|
|
112
|
+
d ? l[o] = !0 : o === "readonly" && !d && s === "button" && (l[o] = !1);
|
|
102
113
|
}
|
|
103
114
|
return l;
|
|
104
115
|
} catch (r) {
|
|
@@ -106,7 +117,7 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
106
117
|
"Error parsing new json_attrs. Original string: " + i
|
|
107
118
|
) : r;
|
|
108
119
|
}
|
|
109
|
-
},
|
|
120
|
+
}, Ce = ({
|
|
110
121
|
tagAttributes: i,
|
|
111
122
|
values: t,
|
|
112
123
|
fields: e,
|
|
@@ -114,14 +125,14 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
114
125
|
fallbackMode: r = !0
|
|
115
126
|
}) => {
|
|
116
127
|
let a = {}, l = {};
|
|
117
|
-
if (i.attrs && (l =
|
|
128
|
+
if (i.attrs && (l = ve({
|
|
118
129
|
attrs: i.attrs,
|
|
119
130
|
values: t,
|
|
120
131
|
fields: e,
|
|
121
132
|
widgetType: s
|
|
122
133
|
})), i.json_attrs)
|
|
123
134
|
try {
|
|
124
|
-
a =
|
|
135
|
+
a = Fe({
|
|
125
136
|
attrs: i.json_attrs,
|
|
126
137
|
values: t,
|
|
127
138
|
fields: e,
|
|
@@ -141,7 +152,7 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
141
152
|
attrs: void 0,
|
|
142
153
|
json_attrs: void 0
|
|
143
154
|
};
|
|
144
|
-
}, k = class k {
|
|
155
|
+
}, D = (i) => i === 1 || i === "1" || i === !0 || i === "True" || i === "true", k = class k {
|
|
145
156
|
constructor(t) {
|
|
146
157
|
/**
|
|
147
158
|
* Determines if widget is read only (default is undefined)
|
|
@@ -177,20 +188,7 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
177
188
|
* Base type of the field
|
|
178
189
|
*/
|
|
179
190
|
n(this, "_fieldType", "");
|
|
180
|
-
|
|
181
|
-
if (t.colspan && (this._colspan = +t.colspan), t.readonly !== void 0 && (t.readonly === "1" || t.readonly === 1 || t.readonly === !0 ? this._readOnly = !0 : (t.readonly === "0" || t.readonly === 0 || t.readonly === !1) && (this._readOnly = !1)), t.invisible && (t.invisible === 1 || t.invisible === "1" || t.invisible === !0) && (this._invisible = !0), t.type && (this._type = t.type), t.context && (this._context = t.context), t.domain && (typeof t.domain != "string" ? this._domain = b(JSON.stringify(t.domain)) : this._domain = b(t.domain)), t.type && (this._fieldType = t.fieldsWidgetType), t.widget_props)
|
|
182
|
-
if (typeof t.widget_props == "string")
|
|
183
|
-
try {
|
|
184
|
-
this._parsedWidgetProps = JSON.parse(
|
|
185
|
-
t.widget_props.replace(/'/g, '"')
|
|
186
|
-
);
|
|
187
|
-
} catch {
|
|
188
|
-
console.error("Error parsing widget_props");
|
|
189
|
-
}
|
|
190
|
-
else
|
|
191
|
-
this._parsedWidgetProps = t.widget_props;
|
|
192
|
-
t.key && (this._key = t.key), t.is_function && (this._isFunction = t.is_function);
|
|
193
|
-
}
|
|
191
|
+
this._colspan = k._defaultColspan, this._invisible = !1, t && (t.colspan && (this._colspan = +t.colspan), t.readonly !== void 0 && (this._readOnly = D(t.readonly)), t.invisible && (t.invisible === 1 || t.invisible === "1" || t.invisible === !0) && (this._invisible = !0), t.type && (this._type = t.type), t.context && (this._context = t.context), t.domain && (typeof t.domain != "string" ? this._domain = b(JSON.stringify(t.domain)) : this._domain = b(t.domain)), t.type && (this._fieldType = t.fieldsWidgetType), t.widget_props && (this._parsedWidgetProps = X(t.widget_props)), t.key && (this._key = t.key), t.is_function && (this._isFunction = t.is_function));
|
|
194
192
|
}
|
|
195
193
|
static get defaultColspan() {
|
|
196
194
|
return k._defaultColspan;
|
|
@@ -261,7 +259,7 @@ const ye = (i = !1) => (i = JSON.parse(i.toString().toLowerCase()), +i > 0), xe
|
|
|
261
259
|
*/
|
|
262
260
|
n(k, "_defaultColspan", 1);
|
|
263
261
|
let C = k;
|
|
264
|
-
class
|
|
262
|
+
class f extends C {
|
|
265
263
|
constructor(e) {
|
|
266
264
|
super(e);
|
|
267
265
|
/**
|
|
@@ -307,7 +305,8 @@ class g extends C {
|
|
|
307
305
|
* Values and keys
|
|
308
306
|
*/
|
|
309
307
|
n(this, "_selectionValues", /* @__PURE__ */ new Map([]));
|
|
310
|
-
|
|
308
|
+
n(this, "_autoRefresh", !1);
|
|
309
|
+
this._activated = !0, e && (e.name && (this._id = e.name), e.activated && (this._activated = e.activated), e.string && (this._label = b(e.string)), e.help && (this._tooltip = b(e.help)), e.nolabel && (e.nolabel === "1" || typeof e.nolabel == "boolean" && e.nolabel === !0) && (this._nolabel = !0), e.required && (e.required === "1" || e.required === !0 || e.required === "True") && (this._required = !0), e.sum && (this._sum = b(e.sum)), e.selection && (this._selectionValues = new Map(e.selection)), e.help_inline && (this.tooltipInline = xe(e.help_inline)), e.autorefresh && (this.autoRefresh = D(e.autorefresh)));
|
|
311
310
|
}
|
|
312
311
|
get id() {
|
|
313
312
|
return this._id;
|
|
@@ -357,12 +356,30 @@ class g extends C {
|
|
|
357
356
|
set sum(e) {
|
|
358
357
|
this._sum = e;
|
|
359
358
|
}
|
|
359
|
+
get suffix() {
|
|
360
|
+
return this._parsedWidgetProps.suffix || "";
|
|
361
|
+
}
|
|
362
|
+
get prefix() {
|
|
363
|
+
return this._parsedWidgetProps.prefix || "";
|
|
364
|
+
}
|
|
360
365
|
get selectionValues() {
|
|
361
366
|
return this._selectionValues;
|
|
362
367
|
}
|
|
363
368
|
set selectionValues(e) {
|
|
364
369
|
this._selectionValues = e;
|
|
365
370
|
}
|
|
371
|
+
get autoRefresh() {
|
|
372
|
+
return this._autoRefresh ?? !1;
|
|
373
|
+
}
|
|
374
|
+
set autoRefresh(e) {
|
|
375
|
+
this._autoRefresh = e;
|
|
376
|
+
}
|
|
377
|
+
get readOnly() {
|
|
378
|
+
return this.autoRefresh ? !0 : super.readOnly;
|
|
379
|
+
}
|
|
380
|
+
set readOnly(e) {
|
|
381
|
+
super.readOnly = e;
|
|
382
|
+
}
|
|
366
383
|
/**
|
|
367
384
|
* Returns this instance in case this id matches param id.
|
|
368
385
|
* @param {string} id id (name) to find
|
|
@@ -371,14 +388,14 @@ class g extends C {
|
|
|
371
388
|
return this._id === e ? this : null;
|
|
372
389
|
}
|
|
373
390
|
}
|
|
374
|
-
class
|
|
391
|
+
class ke extends f {
|
|
375
392
|
}
|
|
376
|
-
class
|
|
393
|
+
class U extends C {
|
|
377
394
|
findById(t) {
|
|
378
395
|
return null;
|
|
379
396
|
}
|
|
380
397
|
}
|
|
381
|
-
class
|
|
398
|
+
class K extends f {
|
|
382
399
|
constructor(e) {
|
|
383
400
|
super({ ...e, nolabel: !0 });
|
|
384
401
|
/**
|
|
@@ -501,13 +518,13 @@ class z {
|
|
|
501
518
|
}
|
|
502
519
|
addWidget(t, e) {
|
|
503
520
|
const s = [], r = e ? e.addLabel : !0;
|
|
504
|
-
if (t instanceof
|
|
521
|
+
if (t instanceof U) {
|
|
505
522
|
this._rows.push([]), this._index++;
|
|
506
523
|
return;
|
|
507
524
|
}
|
|
508
|
-
if (t.colspan > this._columns && (t.colspan = this._columns), t.readOnly = t.readOnly || this.readOnly, r && t instanceof
|
|
525
|
+
if (t.colspan > this._columns && (t.colspan = this._columns), t.readOnly = t.readOnly || this.readOnly, r && t instanceof f && !t.nolabel) {
|
|
509
526
|
t.colspan > 1 && (t.colspan -= 1);
|
|
510
|
-
const l = new
|
|
527
|
+
const l = new K({
|
|
511
528
|
name: t.id + "_label",
|
|
512
529
|
string: t.label,
|
|
513
530
|
invisible: t.invisible,
|
|
@@ -611,18 +628,18 @@ const O = class O extends C {
|
|
|
611
628
|
};
|
|
612
629
|
n(O, "_defaultColspan", 6);
|
|
613
630
|
let v = O;
|
|
614
|
-
const
|
|
631
|
+
const P = class P extends v {
|
|
615
632
|
constructor(e) {
|
|
616
633
|
super(e);
|
|
617
634
|
n(this, "_tabPosition", "top");
|
|
618
635
|
n(this, "_pages", []);
|
|
619
|
-
this.colspan =
|
|
636
|
+
this.colspan = P._defaultColspan, e && (e.colspan && (this.colspan = e.colspan), e.tabpos && (this._tabPosition = e.tabpos));
|
|
620
637
|
}
|
|
621
638
|
static get defaultColspan() {
|
|
622
|
-
return
|
|
639
|
+
return P._defaultColspan;
|
|
623
640
|
}
|
|
624
641
|
static set defaultColspan(e) {
|
|
625
|
-
|
|
642
|
+
P._defaultColspan = e;
|
|
626
643
|
}
|
|
627
644
|
get tabPosition() {
|
|
628
645
|
return this._tabPosition;
|
|
@@ -634,9 +651,9 @@ const T = class T extends v {
|
|
|
634
651
|
return [].concat.apply([], this._container.rows);
|
|
635
652
|
}
|
|
636
653
|
};
|
|
637
|
-
n(
|
|
638
|
-
let
|
|
639
|
-
class
|
|
654
|
+
n(P, "_defaultColspan", 3);
|
|
655
|
+
let M = P;
|
|
656
|
+
class B extends v {
|
|
640
657
|
constructor(e) {
|
|
641
658
|
super(e);
|
|
642
659
|
n(this, "_loading", !1);
|
|
@@ -649,7 +666,7 @@ class A extends v {
|
|
|
649
666
|
this._loading = e;
|
|
650
667
|
}
|
|
651
668
|
}
|
|
652
|
-
class
|
|
669
|
+
class Oe extends B {
|
|
653
670
|
constructor(e) {
|
|
654
671
|
super(e);
|
|
655
672
|
n(this, "_icon", null);
|
|
@@ -662,7 +679,7 @@ class Ce extends A {
|
|
|
662
679
|
this._icon = e;
|
|
663
680
|
}
|
|
664
681
|
}
|
|
665
|
-
class
|
|
682
|
+
class Pe extends B {
|
|
666
683
|
constructor(e) {
|
|
667
684
|
super(e);
|
|
668
685
|
n(this, "_icon", null);
|
|
@@ -675,7 +692,7 @@ class ke extends A {
|
|
|
675
692
|
this._icon = e;
|
|
676
693
|
}
|
|
677
694
|
}
|
|
678
|
-
class
|
|
695
|
+
class Z extends f {
|
|
679
696
|
constructor(e) {
|
|
680
697
|
super({
|
|
681
698
|
...e,
|
|
@@ -747,7 +764,7 @@ class U extends g {
|
|
|
747
764
|
this._danger = e;
|
|
748
765
|
}
|
|
749
766
|
}
|
|
750
|
-
class
|
|
767
|
+
class Te extends v {
|
|
751
768
|
constructor(e) {
|
|
752
769
|
super(e);
|
|
753
770
|
n(this, "_defaultName", "");
|
|
@@ -778,7 +795,7 @@ class Oe extends v {
|
|
|
778
795
|
return this._container.rows.flat().filter((e) => !e.invisible);
|
|
779
796
|
}
|
|
780
797
|
}
|
|
781
|
-
class
|
|
798
|
+
class q extends f {
|
|
782
799
|
constructor(e) {
|
|
783
800
|
super(e);
|
|
784
801
|
/**
|
|
@@ -821,7 +838,7 @@ class R extends g {
|
|
|
821
838
|
this._translatable = e;
|
|
822
839
|
}
|
|
823
840
|
}
|
|
824
|
-
class
|
|
841
|
+
class L extends f {
|
|
825
842
|
constructor(e) {
|
|
826
843
|
super(e);
|
|
827
844
|
/**
|
|
@@ -885,7 +902,7 @@ class B extends g {
|
|
|
885
902
|
this._translatable = e;
|
|
886
903
|
}
|
|
887
904
|
}
|
|
888
|
-
class W extends
|
|
905
|
+
class W extends f {
|
|
889
906
|
constructor(e) {
|
|
890
907
|
super(e);
|
|
891
908
|
/**
|
|
@@ -901,7 +918,7 @@ class W extends g {
|
|
|
901
918
|
this._size = e;
|
|
902
919
|
}
|
|
903
920
|
}
|
|
904
|
-
class
|
|
921
|
+
class We extends f {
|
|
905
922
|
constructor(e) {
|
|
906
923
|
super(e);
|
|
907
924
|
/**
|
|
@@ -927,19 +944,19 @@ class Te extends g {
|
|
|
927
944
|
this._relation = e;
|
|
928
945
|
}
|
|
929
946
|
}
|
|
930
|
-
class
|
|
947
|
+
class Ee extends L {
|
|
931
948
|
}
|
|
932
|
-
class
|
|
949
|
+
class ee extends f {
|
|
933
950
|
constructor(t) {
|
|
934
951
|
super(t);
|
|
935
952
|
}
|
|
936
953
|
}
|
|
937
|
-
class
|
|
954
|
+
class Ie extends f {
|
|
938
955
|
constructor(t) {
|
|
939
956
|
super(t);
|
|
940
957
|
}
|
|
941
958
|
}
|
|
942
|
-
class
|
|
959
|
+
class G extends f {
|
|
943
960
|
constructor(e) {
|
|
944
961
|
super(e);
|
|
945
962
|
/**
|
|
@@ -972,23 +989,23 @@ class L extends g {
|
|
|
972
989
|
this._decimalDigits = e;
|
|
973
990
|
}
|
|
974
991
|
}
|
|
975
|
-
class
|
|
992
|
+
class Se extends G {
|
|
976
993
|
}
|
|
977
|
-
class
|
|
994
|
+
class ze extends f {
|
|
978
995
|
}
|
|
979
|
-
class
|
|
996
|
+
class Ve extends G {
|
|
980
997
|
}
|
|
981
|
-
class
|
|
998
|
+
class Ye extends f {
|
|
982
999
|
constructor(t) {
|
|
983
1000
|
super(t);
|
|
984
1001
|
}
|
|
985
1002
|
}
|
|
986
|
-
class
|
|
1003
|
+
class De extends f {
|
|
987
1004
|
constructor(t) {
|
|
988
1005
|
super(t);
|
|
989
1006
|
}
|
|
990
1007
|
}
|
|
991
|
-
class
|
|
1008
|
+
class te extends f {
|
|
992
1009
|
constructor(e) {
|
|
993
1010
|
super(e);
|
|
994
1011
|
/**
|
|
@@ -1082,7 +1099,7 @@ class Z extends g {
|
|
|
1082
1099
|
this._infinite = e;
|
|
1083
1100
|
}
|
|
1084
1101
|
}
|
|
1085
|
-
class
|
|
1102
|
+
class je extends C {
|
|
1086
1103
|
constructor(e) {
|
|
1087
1104
|
super(e);
|
|
1088
1105
|
/**
|
|
@@ -1108,9 +1125,9 @@ class Ye extends C {
|
|
|
1108
1125
|
return null;
|
|
1109
1126
|
}
|
|
1110
1127
|
}
|
|
1111
|
-
class
|
|
1128
|
+
class Me extends W {
|
|
1112
1129
|
}
|
|
1113
|
-
class
|
|
1130
|
+
class Ne extends f {
|
|
1114
1131
|
constructor(e) {
|
|
1115
1132
|
super(e);
|
|
1116
1133
|
/**
|
|
@@ -1126,18 +1143,18 @@ class je extends g {
|
|
|
1126
1143
|
this._filenameField = e;
|
|
1127
1144
|
}
|
|
1128
1145
|
}
|
|
1129
|
-
class
|
|
1146
|
+
class Ae extends f {
|
|
1130
1147
|
get showControls() {
|
|
1131
1148
|
var t;
|
|
1132
1149
|
return ((t = this.parsedWidgetProps) == null ? void 0 : t.showControls) ?? !0;
|
|
1133
1150
|
}
|
|
1134
1151
|
}
|
|
1135
|
-
class
|
|
1152
|
+
class Be extends f {
|
|
1136
1153
|
constructor(t) {
|
|
1137
1154
|
super(t);
|
|
1138
1155
|
}
|
|
1139
1156
|
}
|
|
1140
|
-
class
|
|
1157
|
+
class Le extends te {
|
|
1141
1158
|
constructor(e) {
|
|
1142
1159
|
super(e);
|
|
1143
1160
|
/**
|
|
@@ -1169,7 +1186,7 @@ class Ae extends Z {
|
|
|
1169
1186
|
return this.parsedWidgetProps.colorField;
|
|
1170
1187
|
}
|
|
1171
1188
|
}
|
|
1172
|
-
class
|
|
1189
|
+
class Ge extends W {
|
|
1173
1190
|
constructor(e) {
|
|
1174
1191
|
super(e);
|
|
1175
1192
|
n(this, "_nolabel", !0);
|
|
@@ -1219,7 +1236,7 @@ class Be extends W {
|
|
|
1219
1236
|
this._height = e;
|
|
1220
1237
|
}
|
|
1221
1238
|
}
|
|
1222
|
-
class
|
|
1239
|
+
class ie extends f {
|
|
1223
1240
|
constructor(e) {
|
|
1224
1241
|
super(e);
|
|
1225
1242
|
/**
|
|
@@ -1272,14 +1289,14 @@ class ee extends g {
|
|
|
1272
1289
|
this._columns = e;
|
|
1273
1290
|
}
|
|
1274
1291
|
}
|
|
1275
|
-
class
|
|
1292
|
+
class Re extends ie {
|
|
1276
1293
|
}
|
|
1277
|
-
class
|
|
1294
|
+
class $e extends W {
|
|
1278
1295
|
get colors() {
|
|
1279
1296
|
return this._parsedWidgetProps.colors || {};
|
|
1280
1297
|
}
|
|
1281
1298
|
}
|
|
1282
|
-
class
|
|
1299
|
+
class qe extends W {
|
|
1283
1300
|
constructor(e) {
|
|
1284
1301
|
super(e);
|
|
1285
1302
|
/**
|
|
@@ -1295,9 +1312,9 @@ class $e extends W {
|
|
|
1295
1312
|
this._direction = e;
|
|
1296
1313
|
}
|
|
1297
1314
|
}
|
|
1298
|
-
class
|
|
1315
|
+
class Je extends ee {
|
|
1299
1316
|
}
|
|
1300
|
-
class
|
|
1317
|
+
class He extends f {
|
|
1301
1318
|
constructor(e) {
|
|
1302
1319
|
super(e);
|
|
1303
1320
|
/**
|
|
@@ -1327,7 +1344,7 @@ class qe extends g {
|
|
|
1327
1344
|
this._lastStep = e;
|
|
1328
1345
|
}
|
|
1329
1346
|
}
|
|
1330
|
-
class
|
|
1347
|
+
class se extends L {
|
|
1331
1348
|
constructor(e) {
|
|
1332
1349
|
super(e);
|
|
1333
1350
|
n(this, "_lang", null);
|
|
@@ -1340,12 +1357,12 @@ class te extends B {
|
|
|
1340
1357
|
this._lang = e;
|
|
1341
1358
|
}
|
|
1342
1359
|
}
|
|
1343
|
-
class
|
|
1360
|
+
class Qe extends f {
|
|
1344
1361
|
constructor(t) {
|
|
1345
1362
|
super(t);
|
|
1346
1363
|
}
|
|
1347
1364
|
}
|
|
1348
|
-
class
|
|
1365
|
+
class Xe extends v {
|
|
1349
1366
|
constructor(e) {
|
|
1350
1367
|
super(e);
|
|
1351
1368
|
/**
|
|
@@ -1385,7 +1402,7 @@ class He extends v {
|
|
|
1385
1402
|
return this._container.rows.flat().filter((e) => !e.invisible);
|
|
1386
1403
|
}
|
|
1387
1404
|
}
|
|
1388
|
-
class
|
|
1405
|
+
class Ue extends f {
|
|
1389
1406
|
constructor(e) {
|
|
1390
1407
|
super(e);
|
|
1391
1408
|
/**
|
|
@@ -1404,13 +1421,13 @@ class Qe extends g {
|
|
|
1404
1421
|
this._height = e;
|
|
1405
1422
|
}
|
|
1406
1423
|
}
|
|
1407
|
-
class
|
|
1424
|
+
class J extends se {
|
|
1408
1425
|
constructor() {
|
|
1409
1426
|
super(...arguments);
|
|
1410
1427
|
n(this, "_lang", "json");
|
|
1411
1428
|
}
|
|
1412
1429
|
}
|
|
1413
|
-
class
|
|
1430
|
+
class Ke extends f {
|
|
1414
1431
|
constructor(e) {
|
|
1415
1432
|
super(e);
|
|
1416
1433
|
n(this, "_multi", !1);
|
|
@@ -1430,7 +1447,7 @@ class Xe extends g {
|
|
|
1430
1447
|
this._size = e;
|
|
1431
1448
|
}
|
|
1432
1449
|
}
|
|
1433
|
-
class
|
|
1450
|
+
class R {
|
|
1434
1451
|
constructor() {
|
|
1435
1452
|
/**
|
|
1436
1453
|
* Widget class
|
|
@@ -1440,138 +1457,138 @@ class G {
|
|
|
1440
1457
|
setWidgetClass(t) {
|
|
1441
1458
|
switch (t) {
|
|
1442
1459
|
case "notebook":
|
|
1443
|
-
this._widgetClass =
|
|
1460
|
+
this._widgetClass = M;
|
|
1444
1461
|
break;
|
|
1445
1462
|
case "page":
|
|
1446
|
-
this._widgetClass =
|
|
1463
|
+
this._widgetClass = Oe;
|
|
1447
1464
|
break;
|
|
1448
1465
|
case "group":
|
|
1449
|
-
this._widgetClass =
|
|
1466
|
+
this._widgetClass = Pe;
|
|
1450
1467
|
break;
|
|
1451
1468
|
case "label":
|
|
1452
|
-
this._widgetClass =
|
|
1469
|
+
this._widgetClass = K;
|
|
1453
1470
|
break;
|
|
1454
1471
|
case "char":
|
|
1455
|
-
this._widgetClass =
|
|
1472
|
+
this._widgetClass = q;
|
|
1456
1473
|
break;
|
|
1457
1474
|
case "text":
|
|
1458
|
-
this._widgetClass =
|
|
1475
|
+
this._widgetClass = L;
|
|
1459
1476
|
break;
|
|
1460
1477
|
case "button":
|
|
1461
|
-
this._widgetClass =
|
|
1478
|
+
this._widgetClass = Z;
|
|
1462
1479
|
break;
|
|
1463
1480
|
case "buttonGroup":
|
|
1464
|
-
this._widgetClass =
|
|
1481
|
+
this._widgetClass = Te;
|
|
1465
1482
|
break;
|
|
1466
1483
|
case "selection":
|
|
1467
1484
|
this._widgetClass = W;
|
|
1468
1485
|
break;
|
|
1469
1486
|
case "many2one":
|
|
1470
|
-
this._widgetClass =
|
|
1487
|
+
this._widgetClass = We;
|
|
1471
1488
|
break;
|
|
1472
1489
|
case "boolean":
|
|
1473
|
-
this._widgetClass =
|
|
1490
|
+
this._widgetClass = ee;
|
|
1474
1491
|
break;
|
|
1475
1492
|
case "integer":
|
|
1476
|
-
this._widgetClass =
|
|
1493
|
+
this._widgetClass = Ie;
|
|
1477
1494
|
break;
|
|
1478
1495
|
case "float":
|
|
1479
|
-
this._widgetClass =
|
|
1496
|
+
this._widgetClass = G;
|
|
1480
1497
|
break;
|
|
1481
1498
|
case "float_time":
|
|
1482
|
-
this._widgetClass =
|
|
1499
|
+
this._widgetClass = Se;
|
|
1483
1500
|
break;
|
|
1484
1501
|
case "date":
|
|
1485
|
-
this._widgetClass =
|
|
1502
|
+
this._widgetClass = Ye;
|
|
1486
1503
|
break;
|
|
1487
1504
|
case "datetime":
|
|
1488
|
-
this._widgetClass =
|
|
1505
|
+
this._widgetClass = De;
|
|
1489
1506
|
break;
|
|
1490
1507
|
case "progressbar":
|
|
1491
|
-
this._widgetClass =
|
|
1508
|
+
this._widgetClass = Ve;
|
|
1492
1509
|
break;
|
|
1493
1510
|
case "markdown":
|
|
1494
|
-
this._widgetClass =
|
|
1511
|
+
this._widgetClass = Ee;
|
|
1495
1512
|
break;
|
|
1496
1513
|
case "many2many":
|
|
1497
1514
|
case "one2many":
|
|
1498
1515
|
case "one2many_list":
|
|
1499
|
-
this._widgetClass =
|
|
1516
|
+
this._widgetClass = te;
|
|
1500
1517
|
break;
|
|
1501
1518
|
case "newline":
|
|
1502
|
-
this._widgetClass =
|
|
1519
|
+
this._widgetClass = U;
|
|
1503
1520
|
break;
|
|
1504
1521
|
case "separator":
|
|
1505
|
-
this._widgetClass =
|
|
1522
|
+
this._widgetClass = je;
|
|
1506
1523
|
break;
|
|
1507
1524
|
case "url":
|
|
1508
|
-
this._widgetClass =
|
|
1525
|
+
this._widgetClass = q;
|
|
1509
1526
|
break;
|
|
1510
1527
|
case "email":
|
|
1511
|
-
this._widgetClass =
|
|
1528
|
+
this._widgetClass = Ke;
|
|
1512
1529
|
break;
|
|
1513
1530
|
case "reference":
|
|
1514
|
-
this._widgetClass =
|
|
1531
|
+
this._widgetClass = Me;
|
|
1515
1532
|
break;
|
|
1516
1533
|
case "binary":
|
|
1517
|
-
this._widgetClass =
|
|
1534
|
+
this._widgetClass = Ne;
|
|
1518
1535
|
break;
|
|
1519
1536
|
case "image":
|
|
1520
|
-
this._widgetClass =
|
|
1537
|
+
this._widgetClass = Ae;
|
|
1521
1538
|
break;
|
|
1522
1539
|
case "fiber_grid":
|
|
1523
|
-
this._widgetClass =
|
|
1540
|
+
this._widgetClass = Be;
|
|
1524
1541
|
break;
|
|
1525
1542
|
case "timeline":
|
|
1526
|
-
this._widgetClass =
|
|
1543
|
+
this._widgetClass = Le;
|
|
1527
1544
|
break;
|
|
1528
1545
|
case "indicator":
|
|
1529
|
-
this._widgetClass =
|
|
1546
|
+
this._widgetClass = Ge;
|
|
1530
1547
|
break;
|
|
1531
1548
|
case "tags":
|
|
1532
|
-
this._widgetClass =
|
|
1549
|
+
this._widgetClass = Re;
|
|
1533
1550
|
break;
|
|
1534
1551
|
case "tag":
|
|
1535
|
-
this._widgetClass =
|
|
1552
|
+
this._widgetClass = $e;
|
|
1536
1553
|
break;
|
|
1537
1554
|
case "avatar":
|
|
1538
|
-
this._widgetClass =
|
|
1555
|
+
this._widgetClass = ke;
|
|
1539
1556
|
break;
|
|
1540
1557
|
case "radio":
|
|
1541
|
-
this._widgetClass =
|
|
1558
|
+
this._widgetClass = qe;
|
|
1542
1559
|
break;
|
|
1543
1560
|
case "multicheckbox":
|
|
1544
|
-
this._widgetClass =
|
|
1561
|
+
this._widgetClass = ie;
|
|
1545
1562
|
break;
|
|
1546
1563
|
case "switch":
|
|
1547
|
-
this._widgetClass =
|
|
1564
|
+
this._widgetClass = Je;
|
|
1548
1565
|
break;
|
|
1549
1566
|
case "steps":
|
|
1550
|
-
this._widgetClass =
|
|
1567
|
+
this._widgetClass = He;
|
|
1551
1568
|
break;
|
|
1552
1569
|
case "codeeditor":
|
|
1553
|
-
this._widgetClass =
|
|
1570
|
+
this._widgetClass = se;
|
|
1554
1571
|
break;
|
|
1555
1572
|
case "time":
|
|
1556
|
-
this._widgetClass =
|
|
1573
|
+
this._widgetClass = Qe;
|
|
1557
1574
|
break;
|
|
1558
1575
|
case "html_preview":
|
|
1559
|
-
this._widgetClass =
|
|
1576
|
+
this._widgetClass = ze;
|
|
1560
1577
|
break;
|
|
1561
1578
|
case "alert":
|
|
1562
|
-
this._widgetClass =
|
|
1579
|
+
this._widgetClass = Xe;
|
|
1563
1580
|
break;
|
|
1564
1581
|
case "comments_timeline":
|
|
1565
|
-
this._widgetClass =
|
|
1582
|
+
this._widgetClass = Ue;
|
|
1566
1583
|
break;
|
|
1567
1584
|
case "json":
|
|
1568
|
-
this._widgetClass =
|
|
1585
|
+
this._widgetClass = J;
|
|
1569
1586
|
break;
|
|
1570
1587
|
case "arrow_steps":
|
|
1571
|
-
this._widgetClass =
|
|
1588
|
+
this._widgetClass = J;
|
|
1572
1589
|
break;
|
|
1573
1590
|
case "spinner":
|
|
1574
|
-
this._widgetClass =
|
|
1591
|
+
this._widgetClass = B;
|
|
1575
1592
|
break;
|
|
1576
1593
|
}
|
|
1577
1594
|
}
|
|
@@ -1594,7 +1611,7 @@ class G {
|
|
|
1594
1611
|
}
|
|
1595
1612
|
}
|
|
1596
1613
|
}
|
|
1597
|
-
const
|
|
1614
|
+
const Ze = ({
|
|
1598
1615
|
fieldName: i,
|
|
1599
1616
|
values: t,
|
|
1600
1617
|
fields: e
|
|
@@ -1608,18 +1625,18 @@ const Ue = ({
|
|
|
1608
1625
|
const r = {}, a = {};
|
|
1609
1626
|
for (const o of Object.keys(s))
|
|
1610
1627
|
if (t.state === o) {
|
|
1611
|
-
const
|
|
1612
|
-
for (const _ of
|
|
1613
|
-
const [
|
|
1614
|
-
a[
|
|
1628
|
+
const d = s[o];
|
|
1629
|
+
for (const _ of d) {
|
|
1630
|
+
const [h, u] = _;
|
|
1631
|
+
a[h] || (a[h] = []), a[h].push(u);
|
|
1615
1632
|
}
|
|
1616
1633
|
}
|
|
1617
1634
|
for (const o of Object.keys(a)) {
|
|
1618
|
-
const
|
|
1619
|
-
r[o] =
|
|
1635
|
+
const d = a[o];
|
|
1636
|
+
r[o] = d.some((_) => _);
|
|
1620
1637
|
}
|
|
1621
1638
|
return r;
|
|
1622
|
-
},
|
|
1639
|
+
}, et = ({
|
|
1623
1640
|
states: i,
|
|
1624
1641
|
values: t
|
|
1625
1642
|
}) => {
|
|
@@ -1628,7 +1645,7 @@ const Ue = ({
|
|
|
1628
1645
|
const e = i.split(",");
|
|
1629
1646
|
return e.length === 0 ? {} : e.includes(t.state) ? {} : { invisible: !0 };
|
|
1630
1647
|
};
|
|
1631
|
-
function
|
|
1648
|
+
function tt({
|
|
1632
1649
|
values: i = {},
|
|
1633
1650
|
fieldName: t,
|
|
1634
1651
|
fields: e = {}
|
|
@@ -1637,7 +1654,7 @@ function Ze({
|
|
|
1637
1654
|
const s = ((r = e[t]) == null ? void 0 : r.type) || "passthrough";
|
|
1638
1655
|
return s === "many2one" ? i[t] ? i[t][0] || null : !1 : s === "one2many" || s === "many2many" ? i[t].map((a) => a.id) : i != null && i[t] ? i == null ? void 0 : i[t] : t.includes("'") ? t : parseInt(t);
|
|
1639
1656
|
}
|
|
1640
|
-
const
|
|
1657
|
+
const ne = ({
|
|
1641
1658
|
context: i,
|
|
1642
1659
|
values: t,
|
|
1643
1660
|
fields: e
|
|
@@ -1645,60 +1662,60 @@ const ie = ({
|
|
|
1645
1662
|
try {
|
|
1646
1663
|
if (!i)
|
|
1647
1664
|
return;
|
|
1648
|
-
if (
|
|
1665
|
+
if (ae(i) || typeof i != "string")
|
|
1649
1666
|
return i;
|
|
1650
|
-
const s =
|
|
1667
|
+
const s = re(i);
|
|
1651
1668
|
if (s !== null)
|
|
1652
1669
|
return s;
|
|
1653
1670
|
if (i.trim().length === 0)
|
|
1654
1671
|
return;
|
|
1655
|
-
const
|
|
1656
|
-
return
|
|
1672
|
+
const u = i.replace(/"/g, "'").replace(/\s/g, "").replace(/True/g, "true").replace(/False/g, "false").replace(/\{/g, "").replace(/\}/g, "").split(",").map((c) => c.split(":")), g = {};
|
|
1673
|
+
return u.forEach((c) => {
|
|
1657
1674
|
const m = c[1];
|
|
1658
1675
|
if (!c[1].includes("'") && c[1] !== "true" && c[1] !== "false") {
|
|
1659
|
-
const
|
|
1676
|
+
const p = tt({
|
|
1660
1677
|
values: t,
|
|
1661
1678
|
fields: e,
|
|
1662
1679
|
fieldName: m === "active_id" ? "id" : m
|
|
1663
1680
|
});
|
|
1664
|
-
|
|
1681
|
+
g[c[0].replace(/'/g, "")] = p || void 0;
|
|
1665
1682
|
} else
|
|
1666
|
-
c[1] === "true" ?
|
|
1683
|
+
c[1] === "true" ? g[c[0].replace(/'/g, "")] = !0 : c[1] === "false" ? g[c[0].replace(/'/g, "")] = !1 : g[c[0].replace(/'/g, "")] = c[1].replace(
|
|
1667
1684
|
/'/g,
|
|
1668
1685
|
""
|
|
1669
1686
|
);
|
|
1670
|
-
}),
|
|
1687
|
+
}), g;
|
|
1671
1688
|
} catch {
|
|
1672
1689
|
return;
|
|
1673
1690
|
}
|
|
1674
|
-
},
|
|
1691
|
+
}, Ot = (i) => {
|
|
1675
1692
|
const t = [];
|
|
1676
1693
|
try {
|
|
1677
|
-
return !i ||
|
|
1678
|
-
!
|
|
1694
|
+
return !i || ae(i) || typeof i != "string" ? t : re(i) !== null ? [] : (i.trim().length === 0 || i.replace(/"/g, "'").replace(/\s/g, "").replace(/True/g, "true").replace(/False/g, "false").replace(/\{/g, "").replace(/\}/g, "").split(",").map((u) => u.split(":")).forEach((u) => {
|
|
1695
|
+
!u[1].includes("'") && u[1] !== "true" && u[1] !== "false" && t.push(u[1].replace(/'/g, ""));
|
|
1679
1696
|
}), t);
|
|
1680
1697
|
} catch {
|
|
1681
1698
|
}
|
|
1682
1699
|
return t;
|
|
1683
1700
|
};
|
|
1684
|
-
function
|
|
1701
|
+
function re(i) {
|
|
1685
1702
|
try {
|
|
1686
1703
|
return JSON.parse(i.replace(/'/g, '"'));
|
|
1687
1704
|
} catch {
|
|
1688
1705
|
return null;
|
|
1689
1706
|
}
|
|
1690
1707
|
}
|
|
1691
|
-
function
|
|
1708
|
+
function ae(i) {
|
|
1692
1709
|
return typeof i == "object" && i !== null && typeof i != "string";
|
|
1693
1710
|
}
|
|
1694
|
-
const
|
|
1711
|
+
const it = (i) => {
|
|
1695
1712
|
const t = i.trim().replace(")", "").split("("), e = t[0], r = t[1].split(",").map((a) => a.trim());
|
|
1696
1713
|
return {
|
|
1697
1714
|
method: e,
|
|
1698
1715
|
args: r
|
|
1699
1716
|
};
|
|
1700
1717
|
};
|
|
1701
|
-
function
|
|
1718
|
+
function st(i) {
|
|
1702
1719
|
const t = [];
|
|
1703
1720
|
function e(s) {
|
|
1704
1721
|
const r = [];
|
|
@@ -1710,7 +1727,7 @@ function tt(i) {
|
|
|
1710
1727
|
e(s);
|
|
1711
1728
|
return t.flat();
|
|
1712
1729
|
}
|
|
1713
|
-
class
|
|
1730
|
+
class Pt {
|
|
1714
1731
|
constructor(t, e = 4) {
|
|
1715
1732
|
/**
|
|
1716
1733
|
* Object containing fields specification of the form.
|
|
@@ -1757,6 +1774,10 @@ class Ot {
|
|
|
1757
1774
|
* List of invisible fields
|
|
1758
1775
|
*/
|
|
1759
1776
|
n(this, "_invisibleFields", []);
|
|
1777
|
+
/**
|
|
1778
|
+
* List of autorefreshable fields
|
|
1779
|
+
*/
|
|
1780
|
+
n(this, "_autorefreshableFields", []);
|
|
1760
1781
|
/**
|
|
1761
1782
|
* Context for each field in the form
|
|
1762
1783
|
*/
|
|
@@ -1805,6 +1826,9 @@ class Ot {
|
|
|
1805
1826
|
set invisibleFields(t) {
|
|
1806
1827
|
this._invisibleFields = t;
|
|
1807
1828
|
}
|
|
1829
|
+
get autorefreshableFields() {
|
|
1830
|
+
return this._autorefreshableFields;
|
|
1831
|
+
}
|
|
1808
1832
|
get contextForFields() {
|
|
1809
1833
|
return this._contextForFields;
|
|
1810
1834
|
}
|
|
@@ -1813,82 +1837,87 @@ class Ot {
|
|
|
1813
1837
|
}
|
|
1814
1838
|
parse(t, e) {
|
|
1815
1839
|
var o;
|
|
1816
|
-
const { values: s = {}, readOnly: r = !1 } = e || {}, a = Y.parse(t).filter((
|
|
1840
|
+
const { values: s = {}, readOnly: r = !1 } = e || {}, a = Y.parse(t).filter((d) => d.tagName === "form")[0];
|
|
1817
1841
|
this._string = ((o = a.attributes) == null ? void 0 : o.string) || null, this._string && (this._string = b(this._string)), this._readOnly = r, this._context = s.id ? { active_id: s.id, active_ids: [s.id] } : {}, this._invisibleFields = [], this.parseNode({
|
|
1818
1842
|
fields: a.children,
|
|
1819
1843
|
container: this._container,
|
|
1820
1844
|
values: s
|
|
1821
|
-
}), tt(this._container._rows).forEach((h) => {
|
|
1822
|
-
const _ = h;
|
|
1823
|
-
_._id && _._context && (this._contextForFields[_._id] = h._context);
|
|
1824
1845
|
});
|
|
1846
|
+
const l = st(this._container._rows);
|
|
1847
|
+
l.forEach((d) => {
|
|
1848
|
+
const _ = d;
|
|
1849
|
+
_._id && _._context && (this._contextForFields[_._id] = d._context);
|
|
1850
|
+
}), this._autorefreshableFields = l.filter((d) => d instanceof f && d.autoRefresh).map((d) => d._id);
|
|
1825
1851
|
}
|
|
1826
1852
|
parseNode({
|
|
1827
1853
|
fields: t,
|
|
1828
1854
|
container: e,
|
|
1829
1855
|
values: s
|
|
1830
1856
|
}) {
|
|
1831
|
-
const r = new
|
|
1857
|
+
const r = new R();
|
|
1832
1858
|
t.filter((a) => typeof a == "object").forEach((a) => {
|
|
1833
|
-
var
|
|
1834
|
-
const { tagName: l, attributes: o, children:
|
|
1835
|
-
let _ = l,
|
|
1859
|
+
var w, F;
|
|
1860
|
+
const { tagName: l, attributes: o, children: d } = a;
|
|
1861
|
+
let _ = l, h = o;
|
|
1836
1862
|
if (l === "field") {
|
|
1837
|
-
const { name:
|
|
1863
|
+
const { name: x, widget: E } = o;
|
|
1838
1864
|
if (E)
|
|
1839
1865
|
_ = E;
|
|
1840
|
-
else if (
|
|
1841
|
-
if (!this._fields[
|
|
1866
|
+
else if (x) {
|
|
1867
|
+
if (!this._fields[x])
|
|
1842
1868
|
throw new Error(
|
|
1843
|
-
`Field ${
|
|
1869
|
+
`Field ${x} doesn't exist in fields defintion`
|
|
1844
1870
|
);
|
|
1845
|
-
_ = this._fields[
|
|
1871
|
+
_ = this._fields[x].type, o.widget_props = {
|
|
1872
|
+
...X(o.widget_props),
|
|
1873
|
+
...this._fields[x].widget_props || {}
|
|
1874
|
+
};
|
|
1846
1875
|
}
|
|
1847
|
-
|
|
1848
|
-
...this._fields[
|
|
1876
|
+
h = {
|
|
1877
|
+
...this._fields[x],
|
|
1849
1878
|
...o,
|
|
1850
|
-
fieldsWidgetType: this._fields[
|
|
1879
|
+
fieldsWidgetType: this._fields[x].type
|
|
1851
1880
|
};
|
|
1852
1881
|
}
|
|
1853
|
-
const
|
|
1854
|
-
tagAttributes:
|
|
1882
|
+
const u = Ce({
|
|
1883
|
+
tagAttributes: h,
|
|
1855
1884
|
values: s,
|
|
1856
1885
|
fields: this._fields,
|
|
1857
1886
|
widgetType: l
|
|
1858
1887
|
});
|
|
1859
|
-
let
|
|
1860
|
-
l === "button" &&
|
|
1861
|
-
states:
|
|
1888
|
+
let g;
|
|
1889
|
+
l === "button" && h.states ? g = et({
|
|
1890
|
+
states: h.states,
|
|
1862
1891
|
values: s
|
|
1863
|
-
}) :
|
|
1864
|
-
fieldName:
|
|
1892
|
+
}) : g = Ze({
|
|
1893
|
+
fieldName: h.name,
|
|
1865
1894
|
values: s,
|
|
1866
1895
|
fields: this._fields
|
|
1867
1896
|
});
|
|
1868
|
-
const c =
|
|
1869
|
-
context:
|
|
1897
|
+
const c = ne({
|
|
1898
|
+
context: h.context || ((w = this._fields[h.name]) == null ? void 0 : w.context),
|
|
1870
1899
|
values: s,
|
|
1871
1900
|
fields: this._fields
|
|
1872
1901
|
});
|
|
1873
|
-
|
|
1874
|
-
|
|
1902
|
+
h.on_change && (this._onChangeFields[h.name] = it(
|
|
1903
|
+
h.on_change
|
|
1875
1904
|
));
|
|
1876
1905
|
let m;
|
|
1877
|
-
|
|
1878
|
-
const
|
|
1879
|
-
...
|
|
1880
|
-
...
|
|
1906
|
+
H(h.domain) ? m = h.domain : H((F = this._fields[h.name]) == null ? void 0 : F.domain) && (m = this._fields[h.name].domain), this._keyIdx = this._keyIdx + 1;
|
|
1907
|
+
const p = {
|
|
1908
|
+
...u,
|
|
1909
|
+
...g,
|
|
1881
1910
|
context: c,
|
|
1882
1911
|
domain: m,
|
|
1883
1912
|
key: `${this._keyIdx}`
|
|
1884
1913
|
};
|
|
1885
|
-
e.readOnly && (
|
|
1886
|
-
const y = r.createWidget(_,
|
|
1887
|
-
y.invisible && y instanceof
|
|
1888
|
-
fields:
|
|
1914
|
+
e.readOnly && (p.readonly = !0);
|
|
1915
|
+
const y = r.createWidget(_, p);
|
|
1916
|
+
y.invisible && y instanceof f && this._invisibleFields.push(p.name), y instanceof v && this.parseNode({
|
|
1917
|
+
fields: d,
|
|
1889
1918
|
container: y.container,
|
|
1890
1919
|
values: s
|
|
1891
|
-
}), y instanceof
|
|
1920
|
+
}), y instanceof Z && y.readOnly !== void 0 || (y.readOnly = y.readOnly || this.readOnly), e.addWidget(y);
|
|
1892
1921
|
});
|
|
1893
1922
|
}
|
|
1894
1923
|
/**
|
|
@@ -1899,7 +1928,7 @@ class Ot {
|
|
|
1899
1928
|
return this.container.findById(t);
|
|
1900
1929
|
}
|
|
1901
1930
|
}
|
|
1902
|
-
function
|
|
1931
|
+
function H(i) {
|
|
1903
1932
|
return i ? Array.isArray(i) && i.length > 0 ? !0 : typeof i == "string" && i !== "" && i !== "[]" : !1;
|
|
1904
1933
|
}
|
|
1905
1934
|
class Tt {
|
|
@@ -1927,6 +1956,10 @@ class Tt {
|
|
|
1927
1956
|
* Context for each field in the form
|
|
1928
1957
|
*/
|
|
1929
1958
|
n(this, "_contextForFields", {});
|
|
1959
|
+
/**
|
|
1960
|
+
* List of autorefreshable fields
|
|
1961
|
+
*/
|
|
1962
|
+
n(this, "_autorefreshableFields", []);
|
|
1930
1963
|
/**
|
|
1931
1964
|
* Is infinite
|
|
1932
1965
|
*/
|
|
@@ -1960,6 +1993,9 @@ class Tt {
|
|
|
1960
1993
|
set contextForFields(t) {
|
|
1961
1994
|
this._contextForFields = t;
|
|
1962
1995
|
}
|
|
1996
|
+
get autorefreshableFields() {
|
|
1997
|
+
return this._autorefreshableFields;
|
|
1998
|
+
}
|
|
1963
1999
|
get infinite() {
|
|
1964
2000
|
return this._infinite;
|
|
1965
2001
|
}
|
|
@@ -1969,34 +2005,35 @@ class Tt {
|
|
|
1969
2005
|
parse(t) {
|
|
1970
2006
|
const e = Y.parse(t).filter((r) => r.tagName === "tree")[0];
|
|
1971
2007
|
this._string = e.attributes.string || null, this._string && (this._string = b(this._string)), this._colors = e.attributes.colors || null, this._colors && (this._colors = b(this._colors)), this._status = e.attributes.status || null, this._status && (this._status = b(this._status)), this._editable = e.attributes.editable || null, this._infinite = e.attributes.infinite || !1;
|
|
1972
|
-
const s = new
|
|
2008
|
+
const s = new R();
|
|
1973
2009
|
e.children.forEach((r) => {
|
|
1974
2010
|
const { tagName: a, attributes: l } = r;
|
|
1975
2011
|
let o = null;
|
|
1976
2012
|
if (a === "field") {
|
|
1977
|
-
const { name:
|
|
1978
|
-
let
|
|
1979
|
-
if (
|
|
1980
|
-
if (!this._fields[
|
|
1981
|
-
throw new Error(`Field ${
|
|
1982
|
-
const
|
|
1983
|
-
o =
|
|
1984
|
-
const
|
|
1985
|
-
context: l.context ||
|
|
2013
|
+
const { name: d, widget: _ } = l;
|
|
2014
|
+
let h = l;
|
|
2015
|
+
if (d) {
|
|
2016
|
+
if (!this._fields[d])
|
|
2017
|
+
throw new Error(`Field ${d} doesn't exist in fields defintion`);
|
|
2018
|
+
const u = this._fields[d];
|
|
2019
|
+
o = u.type, (Array.isArray(u == null ? void 0 : u.domain) && (u == null ? void 0 : u.domain.length) === 0 || (u == null ? void 0 : u.domain) === !1) && l.domain && l.domain.length > 0 && delete u.domain;
|
|
2020
|
+
const g = ne({
|
|
2021
|
+
context: l.context || u.context,
|
|
1986
2022
|
values: {},
|
|
1987
2023
|
fields: this._fields
|
|
1988
2024
|
});
|
|
1989
|
-
|
|
1990
|
-
...
|
|
2025
|
+
h = {
|
|
2026
|
+
...u,
|
|
1991
2027
|
...l,
|
|
1992
|
-
fieldsWidgetType:
|
|
1993
|
-
context:
|
|
1994
|
-
}, this._contextForFields[
|
|
2028
|
+
fieldsWidgetType: u == null ? void 0 : u.type,
|
|
2029
|
+
context: g
|
|
2030
|
+
}, this._contextForFields[d] = g;
|
|
1995
2031
|
}
|
|
1996
|
-
if (_ && (o = _), !
|
|
1997
|
-
const
|
|
1998
|
-
this._columns.push(
|
|
2032
|
+
if (_ && (o = _), !h.invisible) {
|
|
2033
|
+
const u = s.createWidget(o, h);
|
|
2034
|
+
this._columns.push(u);
|
|
1999
2035
|
}
|
|
2036
|
+
D(h.autorefresh) && this._autorefreshableFields.push(d);
|
|
2000
2037
|
}
|
|
2001
2038
|
});
|
|
2002
2039
|
}
|
|
@@ -2008,7 +2045,7 @@ class Tt {
|
|
|
2008
2045
|
return this._columns.find((e) => e.findById ? e.findById(t) : !1);
|
|
2009
2046
|
}
|
|
2010
2047
|
}
|
|
2011
|
-
const
|
|
2048
|
+
const nt = {
|
|
2012
2049
|
text: "text",
|
|
2013
2050
|
many2one: "many2one",
|
|
2014
2051
|
char: "char",
|
|
@@ -2021,7 +2058,7 @@ const it = {
|
|
|
2021
2058
|
date: "date",
|
|
2022
2059
|
datetime: "datetime"
|
|
2023
2060
|
};
|
|
2024
|
-
class
|
|
2061
|
+
class Wt {
|
|
2025
2062
|
constructor(t, e, s = 8) {
|
|
2026
2063
|
/**
|
|
2027
2064
|
* Object containing the specific fields for primary and secondary search fields
|
|
@@ -2048,7 +2085,7 @@ class Pt {
|
|
|
2048
2085
|
return this._advancedSearchContainer;
|
|
2049
2086
|
}
|
|
2050
2087
|
parse() {
|
|
2051
|
-
const t = new
|
|
2088
|
+
const t = new R();
|
|
2052
2089
|
this.parseFields(
|
|
2053
2090
|
this.searchFields.primary,
|
|
2054
2091
|
t
|
|
@@ -2069,7 +2106,7 @@ class Pt {
|
|
|
2069
2106
|
colspan: 2
|
|
2070
2107
|
}, { type: a, widget: l } = r;
|
|
2071
2108
|
let o = l ?? a;
|
|
2072
|
-
return
|
|
2109
|
+
return nt[o] === void 0 && (o = a), e.createWidget(o, r);
|
|
2073
2110
|
});
|
|
2074
2111
|
}
|
|
2075
2112
|
/**
|
|
@@ -2080,7 +2117,7 @@ class Pt {
|
|
|
2080
2117
|
return this.advancedSearchContainer.findById(t);
|
|
2081
2118
|
}
|
|
2082
2119
|
}
|
|
2083
|
-
const
|
|
2120
|
+
const Et = ({
|
|
2084
2121
|
domain: i,
|
|
2085
2122
|
widgetFieldName: t
|
|
2086
2123
|
}) => {
|
|
@@ -2089,14 +2126,14 @@ const Wt = ({
|
|
|
2089
2126
|
if (!Array.isArray(s))
|
|
2090
2127
|
return;
|
|
2091
2128
|
const [r, a, l] = s;
|
|
2092
|
-
let o,
|
|
2093
|
-
r.indexOf(".") !== -1 ? (o = r.substr(0, r.indexOf(".")),
|
|
2129
|
+
let o, d;
|
|
2130
|
+
r.indexOf(".") !== -1 ? (o = r.substr(0, r.indexOf(".")), d = r.substr(
|
|
2094
2131
|
r.indexOf(".") + 1,
|
|
2095
2132
|
r.length - 1
|
|
2096
|
-
)) : (o = r,
|
|
2133
|
+
)) : (o = r, d = "id"), o === t && e.push([d, a, l]);
|
|
2097
2134
|
}), e;
|
|
2098
|
-
},
|
|
2099
|
-
class
|
|
2135
|
+
}, It = (i) => typeof i != "string" ? [] : i.replace(/[()[\]]/g, "").split(",").map((t) => t.trim()).filter((t) => !t.includes("'"));
|
|
2136
|
+
class rt {
|
|
2100
2137
|
constructor(t) {
|
|
2101
2138
|
n(this, "_action_id", null);
|
|
2102
2139
|
n(this, "_position", null);
|
|
@@ -2109,7 +2146,7 @@ class st {
|
|
|
2109
2146
|
return this._position;
|
|
2110
2147
|
}
|
|
2111
2148
|
}
|
|
2112
|
-
class
|
|
2149
|
+
class St {
|
|
2113
2150
|
constructor(t) {
|
|
2114
2151
|
n(this, "_string", null);
|
|
2115
2152
|
n(this, "_items", []);
|
|
@@ -2117,7 +2154,7 @@ class It {
|
|
|
2117
2154
|
this._string = e.attributes.string || null;
|
|
2118
2155
|
const { children: s } = e;
|
|
2119
2156
|
s.forEach((r) => {
|
|
2120
|
-
r.tagName === "dashboard_item" && this._items.push(new
|
|
2157
|
+
r.tagName === "dashboard_item" && this._items.push(new rt(r.attributes));
|
|
2121
2158
|
});
|
|
2122
2159
|
}
|
|
2123
2160
|
get string() {
|
|
@@ -2127,7 +2164,7 @@ class It {
|
|
|
2127
2164
|
return this._items;
|
|
2128
2165
|
}
|
|
2129
2166
|
}
|
|
2130
|
-
class
|
|
2167
|
+
class le {
|
|
2131
2168
|
constructor(t) {
|
|
2132
2169
|
n(this, "_string", null);
|
|
2133
2170
|
n(this, "_type");
|
|
@@ -2155,8 +2192,7 @@ class re {
|
|
|
2155
2192
|
return this._y_range;
|
|
2156
2193
|
}
|
|
2157
2194
|
}
|
|
2158
|
-
|
|
2159
|
-
class ae extends re {
|
|
2195
|
+
class oe extends le {
|
|
2160
2196
|
constructor(e, s) {
|
|
2161
2197
|
super(s);
|
|
2162
2198
|
n(this, "_color", null);
|
|
@@ -2164,7 +2200,7 @@ class ae extends re {
|
|
|
2164
2200
|
n(this, "_totalDomain", null);
|
|
2165
2201
|
n(this, "_showPercent", !1);
|
|
2166
2202
|
n(this, "_suffix", null);
|
|
2167
|
-
this._type = e, this._color = s.attributes.color || null, this._color && (this._color = b(this._color)), this._icon = s.attributes.icon || null, this._icon && (this._icon = b(this._icon)), this._suffix = s.attributes.suffix || null, this._totalDomain = b(s.attributes.totalDomain) || null, this._showPercent =
|
|
2203
|
+
this._type = e, this._color = s.attributes.color || null, this._color && (this._color = b(this._color)), this._icon = s.attributes.icon || null, this._icon && (this._icon = b(this._icon)), this._suffix = s.attributes.suffix || null, this._totalDomain = b(s.attributes.totalDomain) || null, this._showPercent = D(s.attributes.showPercent);
|
|
2168
2204
|
}
|
|
2169
2205
|
get color() {
|
|
2170
2206
|
return this._color;
|
|
@@ -2182,7 +2218,7 @@ class ae extends re {
|
|
|
2182
2218
|
return this._suffix;
|
|
2183
2219
|
}
|
|
2184
2220
|
}
|
|
2185
|
-
class
|
|
2221
|
+
class at extends oe {
|
|
2186
2222
|
constructor(e, s) {
|
|
2187
2223
|
super(e, s);
|
|
2188
2224
|
n(this, "_field");
|
|
@@ -2202,24 +2238,24 @@ class rt extends ae {
|
|
|
2202
2238
|
return this._operator;
|
|
2203
2239
|
}
|
|
2204
2240
|
}
|
|
2205
|
-
const
|
|
2241
|
+
const lt = (i) => {
|
|
2206
2242
|
const t = [];
|
|
2207
2243
|
let e;
|
|
2208
2244
|
if (i.forEach((s) => {
|
|
2209
2245
|
if (s.tagName === "field") {
|
|
2210
|
-
const r = s.attributes.axis, a = s.attributes.operator, l = s.attributes.name, o = s.attributes.label || void 0,
|
|
2246
|
+
const r = s.attributes.axis, a = s.attributes.operator, l = s.attributes.name, o = s.attributes.label || void 0, d = s.attributes.stacked || void 0;
|
|
2211
2247
|
if (!r)
|
|
2212
2248
|
throw new Error(`Field ${l} doesn't have an axis`);
|
|
2213
2249
|
if (!l)
|
|
2214
2250
|
throw new Error("Missing name attribute for field");
|
|
2215
|
-
r === "x" ? e = new
|
|
2251
|
+
r === "x" ? e = new dt({
|
|
2216
2252
|
name: l
|
|
2217
2253
|
}) : r === "y" && t.push(
|
|
2218
|
-
new
|
|
2254
|
+
new ct({
|
|
2219
2255
|
name: l,
|
|
2220
2256
|
operator: a,
|
|
2221
2257
|
label: o,
|
|
2222
|
-
stacked:
|
|
2258
|
+
stacked: d
|
|
2223
2259
|
})
|
|
2224
2260
|
);
|
|
2225
2261
|
}
|
|
@@ -2232,13 +2268,13 @@ const at = (i) => {
|
|
|
2232
2268
|
y: t
|
|
2233
2269
|
};
|
|
2234
2270
|
};
|
|
2235
|
-
class
|
|
2271
|
+
class j extends le {
|
|
2236
2272
|
constructor(e, s) {
|
|
2237
2273
|
super(s);
|
|
2238
2274
|
n(this, "_x");
|
|
2239
2275
|
n(this, "_y");
|
|
2240
2276
|
this._type = e;
|
|
2241
|
-
const r =
|
|
2277
|
+
const r = lt(s.children);
|
|
2242
2278
|
this._x = r.x, this._y = r.y;
|
|
2243
2279
|
}
|
|
2244
2280
|
get x() {
|
|
@@ -2248,22 +2284,22 @@ class D extends re {
|
|
|
2248
2284
|
return this._y;
|
|
2249
2285
|
}
|
|
2250
2286
|
}
|
|
2251
|
-
const
|
|
2252
|
-
indicator:
|
|
2253
|
-
indicatorField:
|
|
2254
|
-
line:
|
|
2255
|
-
bar:
|
|
2256
|
-
pie:
|
|
2257
|
-
},
|
|
2287
|
+
const ot = {
|
|
2288
|
+
indicator: oe,
|
|
2289
|
+
indicatorField: at,
|
|
2290
|
+
line: j,
|
|
2291
|
+
bar: j,
|
|
2292
|
+
pie: j
|
|
2293
|
+
}, zt = (i) => {
|
|
2258
2294
|
const t = Y.parse(i).filter((r) => r.tagName === "graph")[0], e = t.attributes.type;
|
|
2259
2295
|
if (!e)
|
|
2260
2296
|
throw new Error(`${e} is not a valid graph`);
|
|
2261
|
-
const s =
|
|
2297
|
+
const s = ot[e];
|
|
2262
2298
|
if (!s)
|
|
2263
2299
|
throw new Error(`${e} not found as a GraphModel`);
|
|
2264
2300
|
return new s(e, t);
|
|
2265
2301
|
};
|
|
2266
|
-
class
|
|
2302
|
+
class ce {
|
|
2267
2303
|
constructor({ name: t, axis: e }) {
|
|
2268
2304
|
n(this, "_name");
|
|
2269
2305
|
n(this, "_axis");
|
|
@@ -2276,7 +2312,7 @@ class le {
|
|
|
2276
2312
|
return this._axis;
|
|
2277
2313
|
}
|
|
2278
2314
|
}
|
|
2279
|
-
class
|
|
2315
|
+
class ct extends ce {
|
|
2280
2316
|
constructor({
|
|
2281
2317
|
name: e,
|
|
2282
2318
|
operator: s,
|
|
@@ -2299,12 +2335,12 @@ class ot extends le {
|
|
|
2299
2335
|
return this._stacked;
|
|
2300
2336
|
}
|
|
2301
2337
|
}
|
|
2302
|
-
class
|
|
2338
|
+
class dt extends ce {
|
|
2303
2339
|
constructor({ name: t }) {
|
|
2304
2340
|
super({ name: t, axis: "x" });
|
|
2305
2341
|
}
|
|
2306
2342
|
}
|
|
2307
|
-
const
|
|
2343
|
+
const ut = ({ ooui: i }) => {
|
|
2308
2344
|
const e = [i.x.name];
|
|
2309
2345
|
return i.y ? (i.y.forEach((s) => {
|
|
2310
2346
|
s.operator !== "count" && !e.includes(s.name) && e.push(s.name), s.label && !e.includes(s.label) && e.push(s.label);
|
|
@@ -2326,46 +2362,46 @@ function $({
|
|
|
2326
2362
|
}
|
|
2327
2363
|
return { value: r, label: r };
|
|
2328
2364
|
}
|
|
2329
|
-
const
|
|
2365
|
+
const Vt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2330
2366
|
__proto__: null,
|
|
2331
|
-
getFieldsToRetrieve:
|
|
2367
|
+
getFieldsToRetrieve: ut,
|
|
2332
2368
|
getValueAndLabelForField: $
|
|
2333
2369
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
2334
|
-
function
|
|
2370
|
+
function ht({
|
|
2335
2371
|
values: i,
|
|
2336
2372
|
timerange: t,
|
|
2337
2373
|
interval: e = 1
|
|
2338
2374
|
}) {
|
|
2339
|
-
const s =
|
|
2375
|
+
const s = gt({
|
|
2340
2376
|
values: i,
|
|
2341
2377
|
timerange: t
|
|
2342
2378
|
});
|
|
2343
|
-
return
|
|
2379
|
+
return _t({
|
|
2344
2380
|
values: s,
|
|
2345
2381
|
timerange: t,
|
|
2346
2382
|
interval: e
|
|
2347
2383
|
});
|
|
2348
2384
|
}
|
|
2349
|
-
function
|
|
2385
|
+
function _t({
|
|
2350
2386
|
values: i,
|
|
2351
2387
|
timerange: t,
|
|
2352
2388
|
interval: e = 1
|
|
2353
2389
|
}) {
|
|
2354
2390
|
let s = [];
|
|
2355
|
-
const r =
|
|
2391
|
+
const r = ue({
|
|
2356
2392
|
values: i,
|
|
2357
2393
|
groupBy: "type-stacked"
|
|
2358
2394
|
}), a = `${t}s`;
|
|
2359
2395
|
return Object.keys(r).forEach((o) => {
|
|
2360
|
-
const
|
|
2361
|
-
for (let _ = 0; _ <
|
|
2362
|
-
const
|
|
2363
|
-
if (s.push(
|
|
2396
|
+
const d = r[o];
|
|
2397
|
+
for (let _ = 0; _ < d.length; _++) {
|
|
2398
|
+
const h = d[_];
|
|
2399
|
+
if (s.push(h), _ === d.length - 1)
|
|
2364
2400
|
return;
|
|
2365
|
-
const
|
|
2366
|
-
if (!
|
|
2367
|
-
const c =
|
|
2368
|
-
dates: [
|
|
2401
|
+
const u = h.x, g = d[_ + 1].x;
|
|
2402
|
+
if (!de([u, g], a)) {
|
|
2403
|
+
const c = ft({
|
|
2404
|
+
dates: [u, g],
|
|
2369
2405
|
timerange: t,
|
|
2370
2406
|
interval: e
|
|
2371
2407
|
});
|
|
@@ -2373,15 +2409,15 @@ function ht({
|
|
|
2373
2409
|
c.map((m) => ({
|
|
2374
2410
|
x: m,
|
|
2375
2411
|
value: 0,
|
|
2376
|
-
type:
|
|
2377
|
-
stacked:
|
|
2412
|
+
type: h.type,
|
|
2413
|
+
stacked: h.stacked
|
|
2378
2414
|
}))
|
|
2379
2415
|
);
|
|
2380
2416
|
}
|
|
2381
2417
|
}
|
|
2382
|
-
}), s.sort((o,
|
|
2418
|
+
}), s.sort((o, d) => o.x < d.x ? -1 : o.x > d.x ? 1 : 0);
|
|
2383
2419
|
}
|
|
2384
|
-
function
|
|
2420
|
+
function ft({
|
|
2385
2421
|
dates: i,
|
|
2386
2422
|
timerange: t,
|
|
2387
2423
|
interval: e = 1
|
|
@@ -2391,58 +2427,58 @@ function _t({
|
|
|
2391
2427
|
return i;
|
|
2392
2428
|
const a = i.sort((l, o) => l < o ? -1 : l > o ? 1 : 0);
|
|
2393
2429
|
for (let l = 0; l < a.length - 1; l++) {
|
|
2394
|
-
const o = a[l],
|
|
2395
|
-
if (!
|
|
2396
|
-
const _ =
|
|
2430
|
+
const o = a[l], d = a[l + 1];
|
|
2431
|
+
if (!de([o, d], r)) {
|
|
2432
|
+
const _ = T(o, S(r)).add(
|
|
2397
2433
|
e,
|
|
2398
2434
|
r
|
|
2399
|
-
),
|
|
2400
|
-
for (; _.isBefore(
|
|
2435
|
+
), h = T(d, S(r));
|
|
2436
|
+
for (; _.isBefore(h); )
|
|
2401
2437
|
s.push(_.format(S(r))), _.add(e, r);
|
|
2402
2438
|
}
|
|
2403
2439
|
}
|
|
2404
2440
|
return s;
|
|
2405
2441
|
}
|
|
2406
|
-
function
|
|
2442
|
+
function gt({
|
|
2407
2443
|
values: i,
|
|
2408
2444
|
timerange: t
|
|
2409
2445
|
}) {
|
|
2410
|
-
const e =
|
|
2446
|
+
const e = mt({
|
|
2411
2447
|
values: i,
|
|
2412
2448
|
timerange: t
|
|
2413
|
-
}), s = [], r =
|
|
2449
|
+
}), s = [], r = ue({
|
|
2414
2450
|
values: e,
|
|
2415
2451
|
groupBy: "all"
|
|
2416
2452
|
});
|
|
2417
2453
|
return Object.keys(r).forEach((a) => {
|
|
2418
|
-
const l = r[a], o = l[0].operator === "count" ? "+" : l[0].operator,
|
|
2454
|
+
const l = r[a], o = l[0].operator === "count" ? "+" : l[0].operator, d = V({
|
|
2419
2455
|
values: l.map((_) => _.value),
|
|
2420
2456
|
operator: o
|
|
2421
2457
|
});
|
|
2422
2458
|
s.push({
|
|
2423
2459
|
...l[0],
|
|
2424
|
-
value:
|
|
2460
|
+
value: d
|
|
2425
2461
|
});
|
|
2426
2462
|
}), s;
|
|
2427
2463
|
}
|
|
2428
|
-
function
|
|
2464
|
+
function mt({
|
|
2429
2465
|
values: i,
|
|
2430
2466
|
timerange: t
|
|
2431
2467
|
}) {
|
|
2432
2468
|
return i.map((e) => ({
|
|
2433
2469
|
...e,
|
|
2434
|
-
x:
|
|
2470
|
+
x: bt({
|
|
2435
2471
|
date: e.x,
|
|
2436
2472
|
timerange: t
|
|
2437
2473
|
})
|
|
2438
2474
|
}));
|
|
2439
2475
|
}
|
|
2440
|
-
function
|
|
2476
|
+
function bt({
|
|
2441
2477
|
date: i,
|
|
2442
2478
|
timerange: t
|
|
2443
2479
|
}) {
|
|
2444
|
-
let e =
|
|
2445
|
-
const s =
|
|
2480
|
+
let e = yt(i);
|
|
2481
|
+
const s = T(i, e);
|
|
2446
2482
|
switch (t) {
|
|
2447
2483
|
case "hour": {
|
|
2448
2484
|
e = "YYYY-MM-DD HH:00";
|
|
@@ -2467,10 +2503,10 @@ function mt({
|
|
|
2467
2503
|
}
|
|
2468
2504
|
return s.format(e);
|
|
2469
2505
|
}
|
|
2470
|
-
function
|
|
2506
|
+
function yt(i) {
|
|
2471
2507
|
return i.indexOf(":") ? "YYYY-MM-DD HH:mm:ss" : "YYYY-MM-DD";
|
|
2472
2508
|
}
|
|
2473
|
-
function
|
|
2509
|
+
function de(i, t) {
|
|
2474
2510
|
let e = !1;
|
|
2475
2511
|
const s = S(t);
|
|
2476
2512
|
if (i.length === 0)
|
|
@@ -2478,12 +2514,12 @@ function oe(i, t) {
|
|
|
2478
2514
|
if (i.length === 1)
|
|
2479
2515
|
return !0;
|
|
2480
2516
|
for (let r = 0; r < i.length - 1; r++) {
|
|
2481
|
-
const a =
|
|
2517
|
+
const a = T(i[r], s), o = T(i[r + 1], s).diff(a, t);
|
|
2482
2518
|
Math.abs(o) === 1 ? e = !0 : e = !1;
|
|
2483
2519
|
}
|
|
2484
2520
|
return e;
|
|
2485
2521
|
}
|
|
2486
|
-
function
|
|
2522
|
+
function ue({
|
|
2487
2523
|
values: i,
|
|
2488
2524
|
groupBy: t
|
|
2489
2525
|
}) {
|
|
@@ -2508,7 +2544,7 @@ function S(i) {
|
|
|
2508
2544
|
return "YYYY-MM-DD HH:mm";
|
|
2509
2545
|
}
|
|
2510
2546
|
}
|
|
2511
|
-
const
|
|
2547
|
+
const pt = {
|
|
2512
2548
|
count: "count",
|
|
2513
2549
|
"+": "sum",
|
|
2514
2550
|
"-": "subtract",
|
|
@@ -2522,50 +2558,50 @@ const yt = {
|
|
|
2522
2558
|
fields: e,
|
|
2523
2559
|
options: s
|
|
2524
2560
|
}) => {
|
|
2525
|
-
const r =
|
|
2561
|
+
const r = A({
|
|
2526
2562
|
fieldName: i.x.name,
|
|
2527
2563
|
values: t,
|
|
2528
2564
|
fields: e
|
|
2529
2565
|
}), a = [];
|
|
2530
2566
|
i.y.forEach((c) => {
|
|
2531
2567
|
Object.keys(r).forEach((m) => {
|
|
2532
|
-
const
|
|
2568
|
+
const p = r[m].label, y = r[m].entries;
|
|
2533
2569
|
if (c.label) {
|
|
2534
|
-
const
|
|
2570
|
+
const w = A({
|
|
2535
2571
|
fieldName: c.label,
|
|
2536
2572
|
values: y,
|
|
2537
2573
|
fields: e
|
|
2538
2574
|
});
|
|
2539
|
-
Object.keys(
|
|
2540
|
-
const
|
|
2541
|
-
entries:
|
|
2575
|
+
Object.keys(w).forEach((F) => {
|
|
2576
|
+
const x = w[F].entries, E = w[F].label, fe = N({
|
|
2577
|
+
entries: x,
|
|
2542
2578
|
fields: e,
|
|
2543
2579
|
fieldName: c.name
|
|
2544
|
-
}),
|
|
2545
|
-
values:
|
|
2580
|
+
}), ge = V({
|
|
2581
|
+
values: fe,
|
|
2546
2582
|
operator: c.operator
|
|
2547
2583
|
});
|
|
2548
2584
|
a.push({
|
|
2549
|
-
x:
|
|
2550
|
-
value:
|
|
2585
|
+
x: p || !1,
|
|
2586
|
+
value: ge,
|
|
2551
2587
|
type: E,
|
|
2552
2588
|
operator: c.operator,
|
|
2553
2589
|
stacked: c.stacked
|
|
2554
2590
|
});
|
|
2555
2591
|
});
|
|
2556
2592
|
} else {
|
|
2557
|
-
const
|
|
2593
|
+
const w = N({
|
|
2558
2594
|
entries: y,
|
|
2559
2595
|
fields: e,
|
|
2560
2596
|
fieldName: c.name
|
|
2561
2597
|
}), F = V({
|
|
2562
|
-
values:
|
|
2598
|
+
values: w,
|
|
2563
2599
|
operator: c.operator
|
|
2564
2600
|
});
|
|
2565
2601
|
a.push({
|
|
2566
|
-
x:
|
|
2602
|
+
x: p || !1,
|
|
2567
2603
|
value: F,
|
|
2568
|
-
type:
|
|
2604
|
+
type: he({
|
|
2569
2605
|
yAxis: c,
|
|
2570
2606
|
fields: e
|
|
2571
2607
|
}),
|
|
@@ -2578,30 +2614,30 @@ const yt = {
|
|
|
2578
2614
|
const l = i.y.some((c) => c.label !== void 0), o = i.y.some((c) => c.stacked !== void 0);
|
|
2579
2615
|
let _ = [...a.sort((c, m) => c.x < m.x ? -1 : c.x > m.x ? 1 : 0)];
|
|
2580
2616
|
o && i.y.filter((c) => c.stacked !== void 0).length > 1 && (_ = _.map((c) => ({ ...c, type: `${c.type} - ${c.stacked}` })));
|
|
2581
|
-
let
|
|
2582
|
-
i.type === "pie" &&
|
|
2617
|
+
let h = [..._];
|
|
2618
|
+
i.type === "pie" && h.some((c) => c.x === !1) ? h = h.map((c) => c.x === !1 ? { ...c, x: (s == null ? void 0 : s.uninformedString) || "Not informed" } : c) : _.some((c) => c.x === !1) && (h = h.filter(
|
|
2583
2619
|
(c) => c.x !== !1
|
|
2584
2620
|
));
|
|
2585
|
-
let
|
|
2586
|
-
i.timerange ?
|
|
2587
|
-
values:
|
|
2621
|
+
let u = h;
|
|
2622
|
+
i.timerange ? u = ht({
|
|
2623
|
+
values: u,
|
|
2588
2624
|
timerange: i.timerange,
|
|
2589
2625
|
interval: i.interval
|
|
2590
|
-
}) : i.type == "pie" && (
|
|
2591
|
-
const
|
|
2592
|
-
data:
|
|
2626
|
+
}) : i.type == "pie" && (u = h.sort((c, m) => m.value - c.value));
|
|
2627
|
+
const g = {
|
|
2628
|
+
data: u,
|
|
2593
2629
|
isGroup: o || l,
|
|
2594
2630
|
isStack: o
|
|
2595
2631
|
};
|
|
2596
|
-
if (i.type === "line" && i.y_range && (
|
|
2632
|
+
if (i.type === "line" && i.y_range && (g.yAxisOpts = {
|
|
2597
2633
|
mode: i.y_range
|
|
2598
2634
|
}, i.y_range === "auto")) {
|
|
2599
|
-
const { min: c, max: m } =
|
|
2600
|
-
|
|
2635
|
+
const { min: c, max: m } = _e(u);
|
|
2636
|
+
g.yAxisOpts.valueOpts = { min: c, max: m };
|
|
2601
2637
|
}
|
|
2602
|
-
return
|
|
2638
|
+
return g;
|
|
2603
2639
|
};
|
|
2604
|
-
function
|
|
2640
|
+
function N({
|
|
2605
2641
|
entries: i,
|
|
2606
2642
|
fieldName: t,
|
|
2607
2643
|
fields: e
|
|
@@ -2650,7 +2686,7 @@ function V({
|
|
|
2650
2686
|
function I(i) {
|
|
2651
2687
|
return Math.round((i + Number.EPSILON) * 100) / 100;
|
|
2652
2688
|
}
|
|
2653
|
-
function
|
|
2689
|
+
function A({
|
|
2654
2690
|
fieldName: i,
|
|
2655
2691
|
fields: t,
|
|
2656
2692
|
values: e
|
|
@@ -2665,21 +2701,21 @@ function N({
|
|
|
2665
2701
|
s[a] || (s[a] = { label: l, entries: [] }), s[a].entries.push(r);
|
|
2666
2702
|
}), s;
|
|
2667
2703
|
}
|
|
2668
|
-
function
|
|
2704
|
+
function wt(i) {
|
|
2669
2705
|
let t = [];
|
|
2670
2706
|
return Object.keys(i).forEach((e) => {
|
|
2671
2707
|
const s = i[e];
|
|
2672
2708
|
t = t.concat(s.entries);
|
|
2673
2709
|
}), t;
|
|
2674
2710
|
}
|
|
2675
|
-
function
|
|
2711
|
+
function he({
|
|
2676
2712
|
yAxis: i,
|
|
2677
2713
|
fields: t
|
|
2678
2714
|
}) {
|
|
2679
2715
|
const e = t[i.name];
|
|
2680
2716
|
return e != null && e.string ? e.string : i.name;
|
|
2681
2717
|
}
|
|
2682
|
-
function
|
|
2718
|
+
function _e(i, t = 0.1) {
|
|
2683
2719
|
if (i.length === 0)
|
|
2684
2720
|
throw new Error("The values array cannot be empty.");
|
|
2685
2721
|
const e = i.map((l) => l.value), s = Math.min(...e), r = Math.max(...e), a = (r - s) * t;
|
|
@@ -2688,82 +2724,82 @@ function ue(i, t = 0.1) {
|
|
|
2688
2724
|
max: r + a
|
|
2689
2725
|
};
|
|
2690
2726
|
}
|
|
2691
|
-
const
|
|
2727
|
+
const Yt = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
2692
2728
|
__proto__: null,
|
|
2693
|
-
getAllObjectsInGroupedValues:
|
|
2694
|
-
getMinMax:
|
|
2729
|
+
getAllObjectsInGroupedValues: wt,
|
|
2730
|
+
getMinMax: _e,
|
|
2695
2731
|
getValueForOperator: V,
|
|
2696
|
-
getValuesForYField:
|
|
2697
|
-
getValuesGroupedByField:
|
|
2698
|
-
getYAxisFieldname:
|
|
2699
|
-
labelsForOperator:
|
|
2732
|
+
getValuesForYField: N,
|
|
2733
|
+
getValuesGroupedByField: A,
|
|
2734
|
+
getYAxisFieldname: he,
|
|
2735
|
+
labelsForOperator: pt,
|
|
2700
2736
|
processGraphData: xt
|
|
2701
2737
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
2702
2738
|
export {
|
|
2703
|
-
|
|
2704
|
-
|
|
2705
|
-
|
|
2706
|
-
|
|
2707
|
-
|
|
2708
|
-
|
|
2709
|
-
|
|
2710
|
-
|
|
2711
|
-
|
|
2739
|
+
Xe as Alert,
|
|
2740
|
+
ke as Avatar,
|
|
2741
|
+
Ne as Binary,
|
|
2742
|
+
ee as Boolean,
|
|
2743
|
+
Z as Button,
|
|
2744
|
+
Te as ButtonGroup,
|
|
2745
|
+
q as Char,
|
|
2746
|
+
se as CodeEditor,
|
|
2747
|
+
Ue as Comments,
|
|
2712
2748
|
z as Container,
|
|
2713
2749
|
v as ContainerWidget,
|
|
2714
|
-
|
|
2715
|
-
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
|
|
2737
|
-
|
|
2738
|
-
|
|
2739
|
-
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
|
|
2747
|
-
|
|
2748
|
-
|
|
2750
|
+
St as Dashboard,
|
|
2751
|
+
rt as DashboardItem,
|
|
2752
|
+
Ye as Date,
|
|
2753
|
+
De as DateTime,
|
|
2754
|
+
Ke as Email,
|
|
2755
|
+
f as Field,
|
|
2756
|
+
G as Float,
|
|
2757
|
+
Se as FloatTime,
|
|
2758
|
+
Pt as Form,
|
|
2759
|
+
le as Graph,
|
|
2760
|
+
ce as GraphAxis,
|
|
2761
|
+
j as GraphChart,
|
|
2762
|
+
oe as GraphIndicator,
|
|
2763
|
+
at as GraphIndicatorField,
|
|
2764
|
+
dt as GraphXAxis,
|
|
2765
|
+
ct as GraphYAxis,
|
|
2766
|
+
Pe as Group,
|
|
2767
|
+
ze as HTMLPreview,
|
|
2768
|
+
Ae as Image,
|
|
2769
|
+
Ge as Indicator,
|
|
2770
|
+
Ie as Integer,
|
|
2771
|
+
J as JSONField,
|
|
2772
|
+
K as Label,
|
|
2773
|
+
We as Many2one,
|
|
2774
|
+
Ee as Markdown,
|
|
2775
|
+
ie as MultiCheckbox,
|
|
2776
|
+
U as NewLine,
|
|
2777
|
+
M as Notebook,
|
|
2778
|
+
te as One2many,
|
|
2779
|
+
Oe as Page,
|
|
2780
|
+
Ve as ProgressBar,
|
|
2781
|
+
qe as Radio,
|
|
2782
|
+
Me as Reference,
|
|
2783
|
+
nt as SearchFieldTypes,
|
|
2784
|
+
Wt as SearchFilter,
|
|
2749
2785
|
W as Selection,
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
2754
|
-
|
|
2755
|
-
|
|
2756
|
-
|
|
2757
|
-
|
|
2758
|
-
|
|
2786
|
+
je as Separator,
|
|
2787
|
+
B as Spinner,
|
|
2788
|
+
He as Steps,
|
|
2789
|
+
Je as Switch,
|
|
2790
|
+
$e as Tag,
|
|
2791
|
+
Re as Tags,
|
|
2792
|
+
L as Text,
|
|
2793
|
+
Qe as Time,
|
|
2794
|
+
Le as Timeline,
|
|
2759
2795
|
Tt as Tree,
|
|
2760
2796
|
C as Widget,
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
|
|
2764
|
-
|
|
2765
|
-
|
|
2766
|
-
|
|
2767
|
-
|
|
2797
|
+
Vt as graphFieldUtils,
|
|
2798
|
+
Yt as graphProcessor,
|
|
2799
|
+
ne as parseContext,
|
|
2800
|
+
Ot as parseContextFields,
|
|
2801
|
+
It as parseDomainFields,
|
|
2802
|
+
zt as parseGraph,
|
|
2803
|
+
Et as transformDomainForChildWidget
|
|
2768
2804
|
};
|
|
2769
2805
|
//# sourceMappingURL=ooui.es.js.map
|