@gisce/ooui 0.9.1 → 0.10.0

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/Label.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  import Field from "./Field";
2
+ declare type LabelType = "secondary" | "success" | "warning" | "danger" | "default";
3
+ declare type LabelSize = "h1" | "h2" | "h3" | "h4" | "h5" | "text";
2
4
  declare class Label extends Field {
3
5
  /**
4
6
  * Label text
@@ -12,6 +14,18 @@ declare class Label extends Field {
12
14
  _align: string;
13
15
  get align(): string;
14
16
  set align(value: string);
17
+ /**
18
+ * Label type
19
+ */
20
+ _labelType: LabelType;
21
+ get labelType(): LabelType;
22
+ set labelType(value: LabelType);
23
+ /**
24
+ * Label size
25
+ */
26
+ _labelSize: LabelSize;
27
+ get labelSize(): LabelSize;
28
+ set labelSize(value: LabelSize);
15
29
  /**
16
30
  * Id of the field that this label goes with. Null if it's an independent label
17
31
  */
package/dist/Label.js CHANGED
@@ -35,6 +35,14 @@ var Label = /** @class */ (function (_super) {
35
35
  * Align text
36
36
  */
37
37
  _this._align = "left";
38
+ /**
39
+ * Label type
40
+ */
41
+ _this._labelType = "default";
42
+ /**
43
+ * Label size
44
+ */
45
+ _this._labelSize = "text";
38
46
  /**
39
47
  * Id of the field that this label goes with. Null if it's an independent label
40
48
  */
@@ -42,6 +50,14 @@ var Label = /** @class */ (function (_super) {
42
50
  if (props === null || props === void 0 ? void 0 : props.fieldForLabel) {
43
51
  _this._fieldForLabel = props.fieldForLabel;
44
52
  }
53
+ if (props.widget_props) {
54
+ if (_this.parsedWidgetProps.label_type) {
55
+ _this.labelType = _this.parsedWidgetProps.label_type;
56
+ }
57
+ if (_this.parsedWidgetProps.label_size) {
58
+ _this.labelSize = _this.parsedWidgetProps.label_size;
59
+ }
60
+ }
45
61
  return _this;
46
62
  }
47
63
  Object.defineProperty(Label.prototype, "text", {
@@ -64,6 +80,26 @@ var Label = /** @class */ (function (_super) {
64
80
  enumerable: false,
65
81
  configurable: true
66
82
  });
83
+ Object.defineProperty(Label.prototype, "labelType", {
84
+ get: function () {
85
+ return this._labelType;
86
+ },
87
+ set: function (value) {
88
+ this._labelType = value;
89
+ },
90
+ enumerable: false,
91
+ configurable: true
92
+ });
93
+ Object.defineProperty(Label.prototype, "labelSize", {
94
+ get: function () {
95
+ return this._labelSize;
96
+ },
97
+ set: function (value) {
98
+ this._labelSize = value;
99
+ },
100
+ enumerable: false,
101
+ configurable: true
102
+ });
67
103
  Object.defineProperty(Label.prototype, "fieldForLabel", {
68
104
  get: function () {
69
105
  return this._fieldForLabel;
package/dist/Label.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B;IAAoB,yBAAK;IAkCvB,eAAY,KAAW;QAAvB,YACE,wCAAW,KAAK,KAAE,OAAO,EAAE,IAAI,IAAG,SAKnC;QAvCD;;WAEG;QACH,WAAK,GAAW,EAAE,CAAC;QAQnB;;WAEG;QACH,YAAM,GAAW,MAAM,CAAC;QAQxB;;WAEG;QACH,oBAAc,GAAkB,IAAI,CAAC;QAWnC,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EAAE;YACxB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC,aAAa,CAAC;SAC3C;;IACH,CAAC;IAnCD,sBAAI,uBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAHA;IASD,sBAAI,wBAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aACD,UAAU,KAAa;YACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAHA;IASD,sBAAI,gCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;aACD,UAAkB,KAAoB;YACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC;;;OAHA;IAYH,YAAC;AAAD,CAAC,AAzCD,CAAoB,KAAK,GAyCxB;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Label.js","sourceRoot":"","sources":["../src/Label.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAM5B;IAAoB,yBAAK;IAyDvB,eAAY,KAAW;QAAvB,YACE,wCAAW,KAAK,KAAE,OAAO,EAAE,IAAI,IAAG,SAanC;QAtED;;WAEG;QACH,WAAK,GAAW,EAAE,CAAC;QAQnB;;WAEG;QACH,YAAM,GAAW,MAAM,CAAC;QAQxB;;WAEG;QACH,gBAAU,GAAc,SAAS,CAAC;QAQlC;;WAEG;QACF,gBAAU,GAAc,MAAM,CAAC;QAShC;;WAEG;QACH,oBAAc,GAAkB,IAAI,CAAC;QAWnC,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,aAAa,EAAE;YACxB,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC,aAAa,CAAC;SAC3C;QACD,IAAI,KAAK,CAAC,YAAY,EAAE;YACtB,IAAI,KAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE;gBACrC,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;aACpD;YACD,IAAI,KAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE;gBACrC,KAAI,CAAC,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC;aACpD;SACF;;IACH,CAAC;IAlED,sBAAI,uBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAHA;IASD,sBAAI,wBAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;aACD,UAAU,KAAa;YACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACtB,CAAC;;;OAHA;IASD,sBAAI,4BAAS;aAAb;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAgB;YAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IASA,sBAAI,4BAAS;aAAb;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAgB;YAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IAUF,sBAAI,gCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;aACD,UAAkB,KAAoB;YACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC9B,CAAC;;;OAHA;IAoBH,YAAC;AAAD,CAAC,AAxED,CAAoB,KAAK,GAwExB;AAED,eAAe,KAAK,CAAC"}
@@ -0,0 +1,15 @@
1
+ import Selection from "./Selection";
2
+ declare type directionType = "horizontal" | "vertical";
3
+ /**
4
+ * Selection field for key-value lists
5
+ */
6
+ declare class Radio extends Selection {
7
+ /**
8
+ * Define the direction
9
+ */
10
+ _direction: directionType;
11
+ get direction(): directionType;
12
+ set direction(value: directionType);
13
+ constructor(props: any);
14
+ }
15
+ export default Radio;
package/dist/Radio.js ADDED
@@ -0,0 +1,46 @@
1
+ var __extends = (this && this.__extends) || (function () {
2
+ var extendStatics = function (d, b) {
3
+ extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6
+ return extendStatics(d, b);
7
+ };
8
+ return function (d, b) {
9
+ extendStatics(d, b);
10
+ function __() { this.constructor = d; }
11
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12
+ };
13
+ })();
14
+ import Selection from "./Selection";
15
+ /**
16
+ * Selection field for key-value lists
17
+ */
18
+ var Radio = /** @class */ (function (_super) {
19
+ __extends(Radio, _super);
20
+ function Radio(props) {
21
+ var _this = _super.call(this, props) || this;
22
+ /**
23
+ * Define the direction
24
+ */
25
+ _this._direction = "horizontal";
26
+ if (props) {
27
+ if (_this.parsedWidgetProps.hasOwnProperty('direction')) {
28
+ _this._direction = _this.parsedWidgetProps.direction;
29
+ }
30
+ }
31
+ return _this;
32
+ }
33
+ Object.defineProperty(Radio.prototype, "direction", {
34
+ get: function () {
35
+ return this._direction;
36
+ },
37
+ set: function (value) {
38
+ this._direction = value;
39
+ },
40
+ enumerable: false,
41
+ configurable: true
42
+ });
43
+ return Radio;
44
+ }(Selection));
45
+ export default Radio;
46
+ //# sourceMappingURL=Radio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Radio.js","sourceRoot":"","sources":["../src/Radio.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,SAAS,MAAM,aAAa,CAAC;AAIpC;;GAEG;AACH;IAAoB,yBAAS;IAa3B,eAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAOb;QAnBD;;UAEE;QACF,gBAAU,GAAkB,YAAY,CAAC;QAWvC,IAAI,KAAK,EAAE;YACT,IAAI,KAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;gBACtD,KAAI,CAAC,UAAU,GAAG,KAAI,CAAC,iBAAiB,CAAC,SAAS,CAAA;aACnD;SACF;;IACH,CAAC;IAfD,sBAAI,4BAAS;aAAb;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAoB;YAChC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IAeH,YAAC;AAAD,CAAC,AAvBD,CAAoB,SAAS,GAuB5B;AAED,eAAe,KAAK,CAAC"}
@@ -37,6 +37,7 @@ import FiberGrid from "./FiberGrid";
37
37
  import Timeline from "./Timeline";
38
38
  import Indicator from "./Indicator";
39
39
  import Tags from "./Tags";
40
+ import Radio from "./Radio";
40
41
  var WidgetFactory = /** @class */ (function () {
41
42
  function WidgetFactory() {
42
43
  }
@@ -130,6 +131,9 @@ var WidgetFactory = /** @class */ (function () {
130
131
  case "tags":
131
132
  this._widgetClass = Tags;
132
133
  break;
134
+ case "radio":
135
+ this._widgetClass = Radio;
136
+ break;
133
137
  default:
134
138
  break;
135
139
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetFactory.js","sourceRoot":"","sources":["../src/WidgetFactory.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B;IAAA;IAuIA,CAAC;IAjIC,sCAAc,GAAd,UAAe,IAAY;QACzB,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU;gBACb,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;gBAC3B,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;gBAC5B,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;gBAC5B,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,MAAM;YACR,KAAK,aAAa;gBAChB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;gBAChC,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,UAAU,CAAC;YAChB,KAAK,eAAe;gBAClB,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,MAAM;YACR,KAAK,SAAS;gBACZ,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;gBAC5B,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,KAAK;gBACR,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;gBAC3B,MAAM;YACR,KAAK,OAAO;gBACV,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;gBAC1B,MAAM;YACR,KAAK,YAAY;gBACf,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,UAAU;gBACb,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;gBAC7B,MAAM;YACR,KAAK,WAAW;gBACd,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;gBAC9B,MAAM;YACR,KAAK,MAAM;gBACT,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;gBACzB,MAAM;YAER;gBACE,MAAM;SACT;IACH,CAAC;IAED,oCAAY,GAAZ,UAAa,IAAY,EAAE,KAAU;QACnC,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAE1B,gFAAgF;QAChF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;SAC7C;QAED,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC;SAC5B;QAED,mFAAmF;QACnF,QAAQ,IAAI,EAAE;YACZ,sDAAsD;YACtD,KAAK,UAAU,CAAC;YAChB,KAAK,MAAM,CAAC;YACZ,KAAK,OAAO;gBACV,OAAO,IAAI,IAAI,CAAC,YAAY,uBAAM,KAAK,KAAE,IAAI,EAAE,SAAS,IAAG,CAAC;YAC9D,KAAK,QAAQ;gBACX,OAAO,IAAI,IAAI,CAAC,YAAY,uBACvB,KAAK,KACR,IAAI,MAAA,EACJ,UAAU,EAAE,KAAK,CAAC,IAAI,IACtB,CAAC;YACL,eAAe;YACf;gBACE,OAAO,IAAI,IAAI,CAAC,YAAY,uBAAM,KAAK,KAAE,IAAI,EAAE,SAAS,IAAG,CAAC;SAC/D;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AAvID,IAuIC;AAED,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"WidgetFactory.js","sourceRoot":"","sources":["../src/WidgetFactory.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -34,7 +34,8 @@ import Indicator from "./Indicator";
34
34
  import Dashboard from "./Dashboard";
35
35
  import DashboardItem from "./DashboardItem";
36
36
  import Tags from "./Tags";
37
+ import Radio from "./Radio";
37
38
  import { Graph, GraphAxis, GraphIndicator, GraphIndicatorField, GraphChart, GraphType, parseGraph, Operator, GraphYAxis, GraphXAxis } from "./Graph";
38
39
  import * as graphProcessor from "./Graph/processor/graphProcessor";
39
40
  import * as graphFieldUtils from "./Graph/processor/fieldUtils";
40
- export { Char, Selection, Many2one, Field, Widget, Form, Tree, Boolean, One2many, Integer, Float, FloatTime, Date, DateTime, Many2many, SearchFilter, Container, ContainerWidget, Text, ProgressBar, Notebook, Group, Page, Label, Separator, Button, Reference, Binary, Image, parseContext, transformDomainForChildWidget, Timeline, Indicator, Dashboard, DashboardItem, Graph, GraphAxis, GraphYAxis, GraphXAxis, GraphIndicator, GraphChart, GraphType, parseGraph, Operator, GraphIndicatorField, graphProcessor, graphFieldUtils, Tags, };
41
+ export { Char, Selection, Many2one, Field, Widget, Form, Tree, Boolean, One2many, Integer, Float, FloatTime, Date, DateTime, Many2many, SearchFilter, Container, ContainerWidget, Text, ProgressBar, Notebook, Group, Page, Label, Separator, Button, Reference, Binary, Image, parseContext, transformDomainForChildWidget, Timeline, Indicator, Dashboard, DashboardItem, Graph, GraphAxis, GraphYAxis, GraphXAxis, GraphIndicator, GraphChart, GraphType, parseGraph, Operator, GraphIndicatorField, graphProcessor, graphFieldUtils, Tags, Radio, };
package/dist/index.js CHANGED
@@ -34,8 +34,9 @@ import Indicator from "./Indicator";
34
34
  import Dashboard from "./Dashboard";
35
35
  import DashboardItem from "./DashboardItem";
36
36
  import Tags from "./Tags";
37
+ import Radio from "./Radio";
37
38
  import { Graph, GraphAxis, GraphIndicator, GraphIndicatorField, GraphChart, parseGraph, GraphYAxis, GraphXAxis, } from "./Graph";
38
39
  import * as graphProcessor from "./Graph/processor/graphProcessor";
39
40
  import * as graphFieldUtils from "./Graph/processor/fieldUtils";
40
- export { Char, Selection, Many2one, Field, Widget, Form, Tree, Boolean, One2many, Integer, Float, FloatTime, Date, DateTime, Many2many, SearchFilter, Container, ContainerWidget, Text, ProgressBar, Notebook, Group, Page, Label, Separator, Button, Reference, Binary, Image, parseContext, transformDomainForChildWidget, Timeline, Indicator, Dashboard, DashboardItem, Graph, GraphAxis, GraphYAxis, GraphXAxis, GraphIndicator, GraphChart, parseGraph, GraphIndicatorField, graphProcessor, graphFieldUtils, Tags, };
41
+ export { Char, Selection, Many2one, Field, Widget, Form, Tree, Boolean, One2many, Integer, Float, FloatTime, Date, DateTime, Many2many, SearchFilter, Container, ContainerWidget, Text, ProgressBar, Notebook, Group, Page, Label, Separator, Button, Reference, Binary, Image, parseContext, transformDomainForChildWidget, Timeline, Indicator, Dashboard, DashboardItem, Graph, GraphAxis, GraphYAxis, GraphXAxis, GraphIndicator, GraphChart, parseGraph, GraphIndicatorField, graphProcessor, graphFieldUtils, Tags, Radio, };
41
42
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EACL,KAAK,EACL,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,UAAU,EAEV,UAAU,EAEV,UAAU,EACV,UAAU,GACX,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,cAAc,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,eAAe,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,SAAS,EACT,eAAe,EACf,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,YAAY,EACZ,6BAA6B,EAC7B,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,EACT,UAAU,EACV,UAAU,EACV,cAAc,EACd,UAAU,EAEV,UAAU,EAEV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,IAAI,GACL,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,EACL,KAAK,EACL,SAAS,EACT,cAAc,EACd,mBAAmB,EACnB,UAAU,EAEV,UAAU,EAEV,UAAU,EACV,UAAU,GACX,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,cAAc,MAAM,kCAAkC,CAAC;AACnE,OAAO,KAAK,eAAe,MAAM,8BAA8B,CAAC;AAEhE,OAAO,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,KAAK,EACL,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,SAAS,EACT,eAAe,EACf,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,KAAK,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,MAAM,EACN,KAAK,EACL,YAAY,EACZ,6BAA6B,EAC7B,QAAQ,EACR,SAAS,EACT,SAAS,EACT,aAAa,EACb,KAAK,EACL,SAAS,EACT,UAAU,EACV,UAAU,EACV,cAAc,EACd,UAAU,EAEV,UAAU,EAEV,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,IAAI,EACJ,KAAK,GACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/ooui",
3
- "version": "0.9.1",
3
+ "version": "0.10.0",
4
4
  "dependencies": {
5
5
  "moment": "^2.29.3"
6
6
  },
package/src/Label.ts CHANGED
@@ -1,5 +1,9 @@
1
1
  import Field from "./Field";
2
2
 
3
+
4
+ type LabelType = "secondary" | "success" | "warning" | "danger" | "default";
5
+ type LabelSize = "h1" | "h2" | "h3" | "h4" | "h5" | "text";
6
+
3
7
  class Label extends Field {
4
8
  /**
5
9
  * Label text
@@ -23,6 +27,29 @@ class Label extends Field {
23
27
  this._align = value;
24
28
  }
25
29
 
30
+ /**
31
+ * Label type
32
+ */
33
+ _labelType: LabelType = "default";
34
+ get labelType(): LabelType {
35
+ return this._labelType;
36
+ }
37
+ set labelType(value: LabelType) {
38
+ this._labelType = value;
39
+ }
40
+
41
+ /**
42
+ * Label size
43
+ */
44
+ _labelSize: LabelSize = "text";
45
+ get labelSize(): LabelSize {
46
+ return this._labelSize;
47
+ }
48
+ set labelSize(value: LabelSize) {
49
+ this._labelSize = value;
50
+ }
51
+
52
+
26
53
  /**
27
54
  * Id of the field that this label goes with. Null if it's an independent label
28
55
  */
@@ -40,6 +67,14 @@ class Label extends Field {
40
67
  if (props?.fieldForLabel) {
41
68
  this._fieldForLabel = props.fieldForLabel;
42
69
  }
70
+ if (props.widget_props) {
71
+ if (this.parsedWidgetProps.label_type) {
72
+ this.labelType = this.parsedWidgetProps.label_type;
73
+ }
74
+ if (this.parsedWidgetProps.label_size) {
75
+ this.labelSize = this.parsedWidgetProps.label_size;
76
+ }
77
+ }
43
78
  }
44
79
  }
45
80
 
package/src/Radio.ts ADDED
@@ -0,0 +1,33 @@
1
+ import Selection from "./Selection";
2
+
3
+ type directionType = "horizontal" | "vertical";
4
+
5
+ /**
6
+ * Selection field for key-value lists
7
+ */
8
+ class Radio extends Selection {
9
+
10
+ /**
11
+ * Define the direction
12
+ */
13
+ _direction: directionType = "horizontal";
14
+ get direction(): directionType {
15
+ return this._direction;
16
+ }
17
+ set direction(value: directionType) {
18
+ this._direction = value;
19
+ }
20
+
21
+ constructor(props: any) {
22
+ super(props);
23
+
24
+ if (props) {
25
+ if (this.parsedWidgetProps.hasOwnProperty('direction')) {
26
+ this._direction = this.parsedWidgetProps.direction
27
+ }
28
+ }
29
+ }
30
+
31
+ }
32
+
33
+ export default Radio;
@@ -26,6 +26,7 @@ import FiberGrid from "./FiberGrid";
26
26
  import Timeline from "./Timeline";
27
27
  import Indicator from "./Indicator";
28
28
  import Tags from "./Tags";
29
+ import Radio from "./Radio";
29
30
 
30
31
  class WidgetFactory {
31
32
  /**
@@ -123,6 +124,9 @@ class WidgetFactory {
123
124
  case "tags":
124
125
  this._widgetClass = Tags;
125
126
  break;
127
+ case "radio":
128
+ this._widgetClass = Radio;
129
+ break;
126
130
 
127
131
  default:
128
132
  break;
package/src/index.ts CHANGED
@@ -34,6 +34,8 @@ import Indicator from "./Indicator";
34
34
  import Dashboard from "./Dashboard";
35
35
  import DashboardItem from "./DashboardItem";
36
36
  import Tags from "./Tags";
37
+ import Radio from "./Radio";
38
+
37
39
  import {
38
40
  Graph,
39
41
  GraphAxis,
@@ -99,4 +101,5 @@ export {
99
101
  graphProcessor,
100
102
  graphFieldUtils,
101
103
  Tags,
104
+ Radio,
102
105
  };
@@ -43,4 +43,51 @@ describe("A Label", () => {
43
43
  const widget = widgetFactory.createWidget("label", props);
44
44
  expect(widget.fieldForLabel).toBe("field");
45
45
  });
46
+
47
+ describe("Label types", () => {
48
+ it("should have default type by default", () => {
49
+ const widgetFactory = new WidgetFactory();
50
+ const props = {
51
+ name: "field_label",
52
+ string: "Default",
53
+ };
54
+ const widget = widgetFactory.createWidget("label", props);
55
+ expect(widget.labelType).toBe("default");
56
+ });
57
+ it("should parse label_type from widget props", () => {
58
+ const widgetFactory = new WidgetFactory();
59
+ const props = {
60
+ name: "field_label",
61
+ string: "Default",
62
+ widget_props: "{'label_type': 'warning'}"
63
+ };
64
+ const widget = widgetFactory.createWidget("label", props);
65
+ expect(widget.labelType).toBe("warning");
66
+ });
67
+ });
68
+
69
+ describe("Label size", () => {
70
+ it("should have default size to text", () => {
71
+ const widgetFactory = new WidgetFactory();
72
+ const props = {
73
+ name: "field_label",
74
+ string: "Default",
75
+ widget_props: "{}"
76
+ };
77
+ const widget = widgetFactory.createWidget("label", props);
78
+ expect(widget.labelSize).toBe("text");
79
+ });
80
+ it("should have allow size to h1...h5", () => {
81
+ const widgetFactory = new WidgetFactory();
82
+ ['h1', 'h2', 'h3', 'h4', 'h5'].map((level) => {
83
+ const props = {
84
+ name: "field_label",
85
+ string: "Default",
86
+ widget_props: `{'label_size': '${level}'}`
87
+ };
88
+ const widget = widgetFactory.createWidget("label", props);
89
+ expect(widget.labelSize).toBe(level);
90
+ })
91
+ });
92
+ });
46
93
  });
@@ -0,0 +1,27 @@
1
+ import WidgetFactory from "../WidgetFactory";
2
+
3
+ describe("A Radio widget", () => {
4
+
5
+ it("should have default direction to 'horizontal'", () => {
6
+ const widgetFactory = new WidgetFactory();
7
+ const props = {
8
+ name: "level",
9
+ };
10
+ const widget = widgetFactory.createWidget("radio", props);
11
+
12
+ expect(widget.direction).toBe("horizontal");
13
+ });
14
+
15
+ it("should properly set field", () => {
16
+ const widgetFactory = new WidgetFactory();
17
+ const props = {
18
+ name: "level",
19
+ widget_props: "{'direction': 'vertical'}",
20
+ };
21
+ const widget = widgetFactory.createWidget("radio", props);
22
+
23
+ expect(widget.direction).toBe("vertical");
24
+ });
25
+
26
+
27
+ });
@@ -2,6 +2,7 @@ import Char from "../Char";
2
2
  import Button from "../Button";
3
3
  import NewLine from "../NewLine";
4
4
  import Tags from "../Tags";
5
+ import Radio from "../Radio";
5
6
  import WidgetFactory from "../WidgetFactory";
6
7
 
7
8
 
@@ -46,4 +47,12 @@ describe('A WidgetFactory', () => {
46
47
  expect(widget).toBeInstanceOf(Tags);
47
48
  expect(widget.type).toBe("tags");
48
49
  });
50
+
51
+ it('should be able to retrieve Radio type', () => {
52
+ const widgetFactory = new WidgetFactory();
53
+ const props = {};
54
+ const widget = widgetFactory.createWidget("radio", props);
55
+ expect(widget).toBeInstanceOf(Radio);
56
+ expect(widget.type).toBe("radio");
57
+ });
49
58
  });