@gisce/ooui 0.1.0 → 0.1.4

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.
@@ -0,0 +1,9 @@
1
+ import Field from "./Field";
2
+ declare class Indicator extends Field {
3
+ _nolabel: boolean;
4
+ _card: boolean;
5
+ get card(): boolean;
6
+ set card(value: boolean);
7
+ constructor(props: any);
8
+ }
9
+ export default Indicator;
@@ -0,0 +1,39 @@
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 Field from "./Field";
15
+ var Indicator = /** @class */ (function (_super) {
16
+ __extends(Indicator, _super);
17
+ function Indicator(props) {
18
+ var _this = _super.call(this, props) || this;
19
+ _this._nolabel = true;
20
+ _this._card = false;
21
+ if (_this._parsedWidgetProps) {
22
+ _this._card = _this._parsedWidgetProps.card;
23
+ }
24
+ return _this;
25
+ }
26
+ Object.defineProperty(Indicator.prototype, "card", {
27
+ get: function () {
28
+ return this._card;
29
+ },
30
+ set: function (value) {
31
+ this._card = value;
32
+ },
33
+ enumerable: false,
34
+ configurable: true
35
+ });
36
+ return Indicator;
37
+ }(Field));
38
+ export default Indicator;
39
+ //# sourceMappingURL=Indicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Indicator.js","sourceRoot":"","sources":["../src/Indicator.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B;IAAwB,6BAAK;IAW3B,mBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAKb;QAhBD,cAAQ,GAAY,IAAI,CAAC;QAYvB,KAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,KAAI,CAAC,kBAAkB,EAAE;YAC3B,KAAI,CAAC,KAAK,GAAG,KAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;SAC3C;;IACH,CAAC;IAbD,sBAAI,2BAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAc;YACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAHA;IAYH,gBAAC;AAAD,CAAC,AAlBD,CAAwB,KAAK,GAkB5B;AAGD,eAAe,SAAS,CAAC"}
package/dist/Timeline.js CHANGED
@@ -18,15 +18,9 @@ var Timeline = /** @class */ (function (_super) {
18
18
  var _this = _super.call(this, props) || this;
19
19
  _this._titleField = "";
20
20
  _this._summaryField = "";
21
- if (props === null || props === void 0 ? void 0 : props.widget_props) {
22
- try {
23
- var parsedWidgetProps = JSON.parse(props.widget_props.replace(/'/g, '"'));
24
- _this._titleField = parsedWidgetProps.titleField;
25
- _this._summaryField = parsedWidgetProps.summaryField;
26
- }
27
- catch (err) {
28
- throw new Error("Timeline - error parsing widget_props: " + JSON.stringify(err));
29
- }
21
+ if (_this._parsedWidgetProps) {
22
+ _this._titleField = _this._parsedWidgetProps.titleField;
23
+ _this._summaryField = _this.parsedWidgetProps.summaryField;
30
24
  }
31
25
  return _this;
32
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../src/Timeline.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC;IAAuB,4BAAQ;IAuB7B,kBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAcb;QAbC,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QAExB,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,EAAE;YAEvB,IAAI;gBACF,IAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC5E,KAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC,UAAU,CAAC;gBAChD,KAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,YAAY,CAAC;aACrD;YAAC,OAAM,GAAG,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,4CAA0C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAG,CAAC,CAAC;aAClF;SACF;;IACH,CAAC;IAjCD,sBAAI,gCAAU;aAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aACD,UAAe,KAAa;YAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;;;OAHA;IASD,sBAAI,kCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aACD,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC;;;OAHA;IAqBH,eAAC;AAAD,CAAC,AAvCD,CAAuB,QAAQ,GAuC9B;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Timeline.js","sourceRoot":"","sources":["../src/Timeline.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC;IAAuB,4BAAQ;IAuB7B,kBAAY,KAAU;QAAtB,YACE,kBAAM,KAAK,CAAC,SAOb;QANC,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,KAAI,CAAC,kBAAkB,EAAE;YAC3B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;YACtD,KAAI,CAAC,aAAa,GAAG,KAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC;SAC1D;;IACH,CAAC;IA1BD,sBAAI,gCAAU;aAAd;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;aACD,UAAe,KAAa;YAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QAC3B,CAAC;;;OAHA;IASD,sBAAI,kCAAY;aAAhB;YACE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;aACD,UAAiB,KAAa;YAC5B,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC7B,CAAC;;;OAHA;IAcH,eAAC;AAAD,CAAC,AAhCD,CAAuB,QAAQ,GAgC9B;AAED,eAAe,QAAQ,CAAC"}
package/dist/Widget.d.ts CHANGED
@@ -41,6 +41,9 @@ declare abstract class Widget {
41
41
  _domain?: string;
42
42
  get domain(): string | undefined;
43
43
  set domain(value: string | undefined);
44
+ _parsedWidgetProps: any;
45
+ get parsedWidgetProps(): any;
46
+ set parsedWidgetProps(value: any);
44
47
  constructor(props?: any);
45
48
  abstract findById(id: string): Widget | null;
46
49
  }
package/dist/Widget.js CHANGED
@@ -34,6 +34,14 @@ var Widget = /** @class */ (function () {
34
34
  if (props.domain && typeof props.domain === "string") {
35
35
  this._domain = props.domain;
36
36
  }
37
+ if (props.widget_props) {
38
+ try {
39
+ this._parsedWidgetProps = JSON.parse(props.widget_props.replace(/'/g, '"'));
40
+ }
41
+ catch (err) {
42
+ throw new Error('Error parsing widget_props');
43
+ }
44
+ }
37
45
  }
38
46
  }
39
47
  Object.defineProperty(Widget, "defaultColspan", {
@@ -106,6 +114,16 @@ var Widget = /** @class */ (function () {
106
114
  enumerable: false,
107
115
  configurable: true
108
116
  });
117
+ Object.defineProperty(Widget.prototype, "parsedWidgetProps", {
118
+ get: function () {
119
+ return this._parsedWidgetProps;
120
+ },
121
+ set: function (value) {
122
+ this._parsedWidgetProps = value;
123
+ },
124
+ enumerable: false,
125
+ configurable: true
126
+ });
109
127
  /**
110
128
  * Default colspan
111
129
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Widget.js","sourceRoot":"","sources":["../src/Widget.ts"],"names":[],"mappings":"AAAA;IA8EE,gBAAY,KAAW;QAjCvB;;WAEG;QACH,UAAK,GAAW,EAAE,CAAC;QA+BjB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAExB,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;aAChC;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAClB,IACE,KAAK,CAAC,QAAQ,KAAK,GAAG;oBACtB,KAAK,CAAC,QAAQ,KAAK,CAAC;oBACpB,KAAK,CAAC,QAAQ,KAAK,IAAI,EACvB;oBACA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;iBACvB;aACF;YACD,IAAI,KAAK,CAAC,SAAS,EAAE;gBACnB,IACE,KAAK,CAAC,SAAS,KAAK,CAAC;oBACrB,KAAK,CAAC,SAAS,KAAK,GAAG;oBACvB,KAAK,CAAC,SAAS,KAAK,IAAI,EACxB;oBACA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;iBACxB;aACF;YACD,IAAI,KAAK,CAAC,IAAI,EAAE;gBACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;aACzB;YACD,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;aAC/B;YACD,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACpD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;aAC7B;SACF;IACH,CAAC;IA9GD,sBAAW,wBAAc;aAAzB;YACE,OAAO,MAAM,CAAC,eAAe,CAAC;QAChC,CAAC;aACD,UAA0B,KAAK;YAC7B,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC;QACjC,CAAC;;;OAHA;IASD,sBAAI,4BAAQ;aAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aACD,UAAa,KAAc;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAHA;IASD,sBAAI,2BAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aACD,UAAY,KAAa;YACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC;QACzB,CAAC;;;OAHA;IASD,sBAAI,6BAAS;aAAb;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAc;YAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IASD,sBAAI,wBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAHA;IASD,sBAAI,2BAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aACD,UAAY,KAAU;YACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,CAAC;;;OAHA;IASD,sBAAI,0BAAM;aAAV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aACD,UAAW,KAAyB;YAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;;;OAHA;IAxED;;OAEG;IACI,sBAAe,GAAW,CAAC,CAAC;IAkHrC,aAAC;CAAA,AAtHD,IAsHC;AAED,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Widget.js","sourceRoot":"","sources":["../src/Widget.ts"],"names":[],"mappings":"AAAA;IAsFE,gBAAY,KAAW;QAzCvB;;WAEG;QACH,UAAK,GAAW,EAAE,CAAC;QAuCjB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,eAAe,CAAC;QACvC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAExB,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;aAChC;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAClB,IACE,KAAK,CAAC,QAAQ,KAAK,GAAG;oBACtB,KAAK,CAAC,QAAQ,KAAK,CAAC;oBACpB,KAAK,CAAC,QAAQ,KAAK,IAAI,EACvB;oBACA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;iBACvB;aACF;YACD,IAAI,KAAK,CAAC,SAAS,EAAE;gBACnB,IACE,KAAK,CAAC,SAAS,KAAK,CAAC;oBACrB,KAAK,CAAC,SAAS,KAAK,GAAG;oBACvB,KAAK,CAAC,SAAS,KAAK,IAAI,EACxB;oBACA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;iBACxB;aACF;YACD,IAAI,KAAK,CAAC,IAAI,EAAE;gBACd,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;aACzB;YACD,IAAI,KAAK,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;aAC/B;YACD,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACpD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;aAC7B;YACD,IAAI,KAAK,CAAC,YAAY,EAAE;gBAExB,IAAI;oBACF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;iBAC7E;gBAAC,OAAM,GAAG,EAAE;oBACX,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;iBAC/C;aACF;SACA;IACH,CAAC;IA9HD,sBAAW,wBAAc;aAAzB;YACE,OAAO,MAAM,CAAC,eAAe,CAAC;QAChC,CAAC;aACD,UAA0B,KAAK;YAC7B,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC;QACjC,CAAC;;;OAHA;IASD,sBAAI,4BAAQ;aAAZ;YACE,OAAO,IAAI,CAAC,SAAS,CAAC;QACxB,CAAC;aACD,UAAa,KAAc;YACzB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;;;OAHA;IASD,sBAAI,2BAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aACD,UAAY,KAAa;YACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,KAAK,CAAC;QACzB,CAAC;;;OAHA;IASD,sBAAI,6BAAS;aAAb;YACE,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;aACD,UAAc,KAAc;YAC1B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IASD,sBAAI,wBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;aACD,UAAS,KAAa;YACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;;;OAHA;IASD,sBAAI,2BAAO;aAAX;YACE,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;aACD,UAAY,KAAU;YACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACxB,CAAC;;;OAHA;IASD,sBAAI,0BAAM;aAAV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;aACD,UAAW,KAAyB;YAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,CAAC;;;OAHA;IAMD,sBAAI,qCAAiB;aAArB;YACE,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;aACD,UAAsB,KAAU;YAC9B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;QAClC,CAAC;;;OAHA;IAhFD;;OAEG;IACI,sBAAe,GAAW,CAAC,CAAC;IAkIrC,aAAC;CAAA,AAtID,IAsIC;AAED,eAAe,MAAM,CAAC"}
@@ -35,6 +35,7 @@ import Binary from "./Binary";
35
35
  import Image from "./Image";
36
36
  import FiberGrid from "./FiberGrid";
37
37
  import Timeline from "./Timeline";
38
+ import Indicator from "./Indicator";
38
39
  var WidgetFactory = /** @class */ (function () {
39
40
  function WidgetFactory() {
40
41
  }
@@ -122,6 +123,8 @@ var WidgetFactory = /** @class */ (function () {
122
123
  case "timeline":
123
124
  this._widgetClass = Timeline;
124
125
  break;
126
+ case "indicator":
127
+ this._widgetClass = Indicator;
125
128
  default:
126
129
  break;
127
130
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetFactory.js","sourceRoot":"","sources":["../src/WidgetFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetFactory.js","sourceRoot":"","sources":["../src/WidgetFactory.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -30,4 +30,5 @@ import Image from "./Image";
30
30
  import { parseContext } from "./helpers/contextParser";
31
31
  import { transformDomainForChildWidget } from "./helpers/domainParser";
32
32
  import Timeline from "./Timeline";
33
- 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, };
33
+ import Indicator from "./Indicator";
34
+ 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, };
package/dist/index.js CHANGED
@@ -30,5 +30,6 @@ import Image from "./Image";
30
30
  import { parseContext } from "./helpers/contextParser";
31
31
  import { transformDomainForChildWidget } from "./helpers/domainParser";
32
32
  import Timeline from "./Timeline";
33
- 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, };
33
+ import Indicator from "./Indicator";
34
+ 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, };
34
35
  //# 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;AAElC,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,GACT,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;AAEpC,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,GACV,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/ooui",
3
- "version": "0.1.0",
3
+ "version": "0.1.4",
4
4
  "dependencies": {},
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -0,0 +1,24 @@
1
+ import Field from "./Field";
2
+
3
+ class Indicator extends Field {
4
+ _nolabel: boolean = true;
5
+
6
+ _card: boolean;
7
+ get card(): boolean {
8
+ return this._card;
9
+ }
10
+ set card(value: boolean) {
11
+ this._card = value;
12
+ }
13
+
14
+ constructor(props: any) {
15
+ super(props);
16
+ this._card = false;
17
+ if (this._parsedWidgetProps) {
18
+ this._card = this._parsedWidgetProps.card;
19
+ }
20
+ }
21
+ }
22
+
23
+
24
+ export default Indicator;
package/src/Timeline.ts CHANGED
@@ -27,16 +27,9 @@ class Timeline extends One2many {
27
27
  super(props);
28
28
  this._titleField = "";
29
29
  this._summaryField = "";
30
-
31
- if (props?.widget_props) {
32
-
33
- try {
34
- const parsedWidgetProps = JSON.parse(props.widget_props.replace(/'/g, '"'));
35
- this._titleField = parsedWidgetProps.titleField;
36
- this._summaryField = parsedWidgetProps.summaryField;
37
- } catch(err) {
38
- throw new Error(`Timeline - error parsing widget_props: ${JSON.stringify(err)}`);
39
- }
30
+ if (this._parsedWidgetProps) {
31
+ this._titleField = this._parsedWidgetProps.titleField;
32
+ this._summaryField = this.parsedWidgetProps.summaryField;
40
33
  }
41
34
  }
42
35
  }
package/src/Widget.ts CHANGED
@@ -76,6 +76,14 @@ abstract class Widget {
76
76
  this._domain = value;
77
77
  }
78
78
 
79
+ _parsedWidgetProps: any;
80
+ get parsedWidgetProps(): any {
81
+ return this._parsedWidgetProps;
82
+ }
83
+ set parsedWidgetProps(value: any) {
84
+ this._parsedWidgetProps = value;
85
+ }
86
+
79
87
  constructor(props?: any) {
80
88
  this._colspan = Widget._defaultColspan;
81
89
  this._readOnly = false;
@@ -112,6 +120,14 @@ abstract class Widget {
112
120
  if (props.domain && typeof props.domain === "string") {
113
121
  this._domain = props.domain;
114
122
  }
123
+ if (props.widget_props) {
124
+
125
+ try {
126
+ this._parsedWidgetProps = JSON.parse(props.widget_props.replace(/'/g, '"'));
127
+ } catch(err) {
128
+ throw new Error('Error parsing widget_props');
129
+ }
130
+ }
115
131
  }
116
132
  }
117
133
 
@@ -24,6 +24,7 @@ import Binary from "./Binary";
24
24
  import Image from "./Image";
25
25
  import FiberGrid from "./FiberGrid";
26
26
  import Timeline from "./Timeline";
27
+ import Indicator from "./Indicator";
27
28
 
28
29
  class WidgetFactory {
29
30
  /**
@@ -115,6 +116,9 @@ class WidgetFactory {
115
116
  case "timeline":
116
117
  this._widgetClass = Timeline;
117
118
  break;
119
+ case "indicator":
120
+ this._widgetClass = Indicator;
121
+
118
122
  default:
119
123
  break;
120
124
  }
package/src/index.ts CHANGED
@@ -30,6 +30,7 @@ import Image from "./Image";
30
30
  import { parseContext } from "./helpers/contextParser";
31
31
  import { transformDomainForChildWidget } from "./helpers/domainParser";
32
32
  import Timeline from "./Timeline";
33
+ import Indicator from "./Indicator";
33
34
 
34
35
  export {
35
36
  Char,
@@ -64,4 +65,5 @@ export {
64
65
  parseContext,
65
66
  transformDomainForChildWidget,
66
67
  Timeline,
68
+ Indicator,
67
69
  };
@@ -0,0 +1,27 @@
1
+ import WidgetFactory from "../WidgetFactory";
2
+ import Indicator from "../Indicator";
3
+
4
+ describe("An Indicator", () => {
5
+ it("should create a Indicator widget from factory", () => {
6
+ const widgetFactory = new WidgetFactory();
7
+
8
+ const widget = widgetFactory.createWidget("indicator", {});
9
+ expect(widget).toBeInstanceOf(Indicator);
10
+
11
+ });
12
+
13
+ it('should have card as false as default', () => {
14
+ const widgetFactory = new WidgetFactory();
15
+ const widget = widgetFactory.createWidget("indicator", {});
16
+ expect(widget.card).toBe(false);
17
+ });
18
+
19
+ it('should parse widget props', () => {
20
+ const widgetFactory = new WidgetFactory();
21
+ const props = {
22
+ widget_props: "{'card': true}"
23
+ };
24
+ const widget = widgetFactory.createWidget("indicator", props);
25
+ expect(widget.card).toBe(true);
26
+ });
27
+ });
@@ -0,0 +1,38 @@
1
+ import WidgetFactory from "../WidgetFactory";
2
+ import Timeline from "../Timeline";
3
+
4
+ describe("A Timeline", () => {
5
+ it("should have an id corresponding to field name", () => {
6
+ const widgetFactory = new WidgetFactory();
7
+ const props = {
8
+ name: "timeline_field",
9
+ };
10
+
11
+ const widget = widgetFactory.createWidget("timeline", props);
12
+ expect(widget).toBeInstanceOf(Timeline);
13
+ expect(widget.id).toBe("timeline_field");
14
+
15
+ });
16
+
17
+ it("should properly set readonly", () => {
18
+ const widgetFactory = new WidgetFactory();
19
+ const props = {
20
+ name: "timeline_field",
21
+ readonly: 1,
22
+ };
23
+ const widget = widgetFactory.createWidget("timeline", props);
24
+
25
+ expect(widget.readOnly).toBe(true);
26
+ });
27
+
28
+ it('should parse widget props', () => {
29
+ const widgetFactory = new WidgetFactory();
30
+ const props = {
31
+ name: "timeline_field",
32
+ widget_props: "{'titleField': 'tfield', 'summaryField': 'sfield'}"
33
+ };
34
+ const widget = widgetFactory.createWidget("timeline", props);
35
+ expect(widget.summaryField).toBe('sfield');
36
+ expect(widget.titleField).toBe('tfield');
37
+ });
38
+ });
@@ -31,6 +31,29 @@ describe('A Widget', () => {
31
31
 
32
32
  expect(typeof widget.colspan).toBe("number");
33
33
  });
34
+ describe('Parsing widget props', () => {
35
+ it('should parse widget_props', () => {
36
+ const props = {
37
+ widget_props: "{'prop_1': 1, 'prop_2': 'prop2'}"
38
+ }
39
+ const widget = new WidgetImpl(props);
40
+ expect(JSON.stringify(widget.parsedWidgetProps)).toBe(
41
+ JSON.stringify({prop_1: 1, prop_2: 'prop2'})
42
+ )
43
+ });
44
+ it('should fail if widget props are not valid', () => {
45
+ const props = {
46
+ widget_props: "{'prop_1: 1, 'prop_2': 'prop2'}"
47
+ }
48
+ expect.assertions(1);
49
+ try {
50
+ new WidgetImpl(props);
51
+ } catch (e) {
52
+ expect(e.message).toBe('Error parsing widget_props');
53
+ }
54
+
55
+ });
56
+ });
34
57
 
35
58
  /*
36
59
  it('set colspan as string should store as a number', () => {