@gisce/ooui 0.2.5 → 0.2.8

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/Graph.d.ts CHANGED
@@ -4,6 +4,12 @@ declare class Graph {
4
4
  get string(): string | null;
5
5
  _type?: GraphType;
6
6
  get type(): GraphType | undefined;
7
+ _color: string | null;
8
+ get color(): string | null;
9
+ _icon: string | null;
10
+ get icon(): string | null;
11
+ _totalDomain: string | null;
12
+ get totalDomain(): string | null;
7
13
  constructor(xml: string);
8
14
  }
9
15
  export default Graph;
package/dist/Graph.js CHANGED
@@ -1,10 +1,16 @@
1
1
  var Graph = /** @class */ (function () {
2
2
  function Graph(xml) {
3
3
  this._string = null;
4
+ this._color = null;
5
+ this._icon = null;
6
+ this._totalDomain = null;
4
7
  var parser = new DOMParser();
5
8
  var view = parser.parseFromString(xml, "text/xml");
6
9
  this._string = view.documentElement.getAttribute("string");
7
10
  var type = view.documentElement.getAttribute("type");
11
+ this._color = view.documentElement.getAttribute("color");
12
+ this._icon = view.documentElement.getAttribute("icon");
13
+ this._totalDomain = view.documentElement.getAttribute("totalDomain");
8
14
  if (type === "indicator") {
9
15
  this._type = "indicator";
10
16
  }
@@ -23,6 +29,27 @@ var Graph = /** @class */ (function () {
23
29
  enumerable: false,
24
30
  configurable: true
25
31
  });
32
+ Object.defineProperty(Graph.prototype, "color", {
33
+ get: function () {
34
+ return this._color;
35
+ },
36
+ enumerable: false,
37
+ configurable: true
38
+ });
39
+ Object.defineProperty(Graph.prototype, "icon", {
40
+ get: function () {
41
+ return this._icon;
42
+ },
43
+ enumerable: false,
44
+ configurable: true
45
+ });
46
+ Object.defineProperty(Graph.prototype, "totalDomain", {
47
+ get: function () {
48
+ return this._totalDomain;
49
+ },
50
+ enumerable: false,
51
+ configurable: true
52
+ });
26
53
  return Graph;
27
54
  }());
28
55
  export default Graph;
package/dist/Graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.js","sourceRoot":"","sources":["../src/Graph.ts"],"names":[],"mappings":"AAEA;IAWE,eAAY,GAAW;QAVvB,YAAO,GAAkB,IAAI,CAAC;QAW5B,IAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,IAAM,IAAI,GAAa,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAEvD,IAAI,IAAI,KAAK,WAAW,EAAE;YACxB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;SAC1B;IACH,CAAC;IAlBD,sBAAI,yBAAM;aAAV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IAGD,sBAAI,uBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;;;OAAA;IAYH,YAAC;AAAD,CAAC,AArBD,IAqBC;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Graph.js","sourceRoot":"","sources":["../src/Graph.ts"],"names":[],"mappings":"AAEA;IA0BE,eAAY,GAAW;QAzBvB,YAAO,GAAkB,IAAI,CAAC;QAU9B,WAAM,GAAkB,IAAI,CAAC;QAK7B,UAAK,GAAkB,IAAI,CAAC;QAK5B,iBAAY,GAAkB,IAAI,CAAC;QAMjC,IAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,IAAM,IAAI,GAAa,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAEvD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;QAErE,IAAI,IAAI,KAAK,WAAW,EAAE;YACxB,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;SAC1B;IACH,CAAC;IArCD,sBAAI,yBAAM;aAAV;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IAGD,sBAAI,uBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;;;OAAA;IAGD,sBAAI,wBAAK;aAAT;YACE,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;;;OAAA;IAGD,sBAAI,uBAAI;aAAR;YACE,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;;;OAAA;IAGD,sBAAI,8BAAW;aAAf;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAgBH,YAAC;AAAD,CAAC,AAxCD,IAwCC;AAED,eAAe,KAAK,CAAC"}
@@ -1,12 +1,7 @@
1
1
  export function getValueForField(_a) {
2
- var values = _a.values, fieldName = _a.fieldName, fields = _a.fields;
3
- if (!fields) {
4
- return false;
5
- }
6
- if (!fields[fieldName]) {
7
- return values[fieldName] || false;
8
- }
9
- var fieldType = fields[fieldName].type;
2
+ var _b;
3
+ var _c = _a.values, values = _c === void 0 ? {} : _c, fieldName = _a.fieldName, _d = _a.fields, fields = _d === void 0 ? {} : _d;
4
+ var fieldType = ((_b = fields[fieldName]) === null || _b === void 0 ? void 0 : _b.type) || "passthrough";
10
5
  if (fieldType === "many2one") {
11
6
  return values[fieldName] ? values[fieldName][0] || null : false;
12
7
  }
@@ -14,7 +9,15 @@ export function getValueForField(_a) {
14
9
  return values[fieldName].map(function (item) { return item.id; });
15
10
  }
16
11
  else {
17
- return values[fieldName];
12
+ if (values === null || values === void 0 ? void 0 : values[fieldName]) {
13
+ return values === null || values === void 0 ? void 0 : values[fieldName];
14
+ }
15
+ if (fieldName.indexOf("'") !== -1) {
16
+ return fieldName;
17
+ }
18
+ else {
19
+ return parseInt(fieldName);
20
+ }
18
21
  }
19
22
  }
20
23
  //# sourceMappingURL=fieldParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fieldParser.js","sourceRoot":"","sources":["../../src/helpers/fieldParser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAAC,EAQhC;QAPC,MAAM,YAAA,EACN,SAAS,eAAA,EACT,MAAM,YAAA;IAMN,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,KAAK,CAAC;KACd;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;QACtB,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC;KACnC;IAED,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;IAEzC,IAAI,SAAS,KAAK,UAAU,EAAE;QAC5B,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;KACjE;SAAM,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,WAAW,EAAE;QAChE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,IAAS,IAAK,OAAA,IAAI,CAAC,EAAE,EAAP,CAAO,CAAC,CAAC;KACtD;SAAM;QACL,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;KAC1B;AACH,CAAC"}
1
+ {"version":3,"file":"fieldParser.js","sourceRoot":"","sources":["../../src/helpers/fieldParser.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAAC,EAQhC;;QAPC,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA,EACX,SAAS,eAAA,EACT,cAAW,EAAX,MAAM,mBAAG,EAAE,KAAA;IAMX,IAAM,SAAS,GAAG,OAAA,MAAM,CAAC,SAAS,CAAC,0CAAE,IAAI,KAAI,aAAa,CAAC;IAE3D,IAAI,SAAS,KAAK,UAAU,EAAE;QAC5B,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;KACjE;SAAM,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,WAAW,EAAE;QAChE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,IAAS,IAAK,OAAA,IAAI,CAAC,EAAE,EAAP,CAAO,CAAC,CAAC;KACtD;SAAM;QACL,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,SAAS,GAAG;YACvB,OAAO,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAG,SAAS,EAAE;SAC5B;QAED,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACjC,OAAO,SAAS,CAAC;SAClB;aAAM;YACL,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC;SAC5B;KACF;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gisce/ooui",
3
- "version": "0.2.5",
3
+ "version": "0.2.8",
4
4
  "dependencies": {},
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/Graph.ts CHANGED
@@ -11,12 +11,31 @@ class Graph {
11
11
  return this._type;
12
12
  }
13
13
 
14
+ _color: string | null = null;
15
+ get color(): string | null {
16
+ return this._color;
17
+ }
18
+
19
+ _icon: string | null = null;
20
+ get icon(): string | null {
21
+ return this._icon;
22
+ }
23
+
24
+ _totalDomain: string | null = null;
25
+ get totalDomain(): string | null {
26
+ return this._totalDomain;
27
+ }
28
+
14
29
  constructor(xml: string) {
15
30
  const parser = new DOMParser();
16
31
  const view: Document = parser.parseFromString(xml, "text/xml");
17
32
  this._string = view.documentElement.getAttribute("string");
18
33
  const type = view.documentElement.getAttribute("type");
19
34
 
35
+ this._color = view.documentElement.getAttribute("color");
36
+ this._icon = view.documentElement.getAttribute("icon");
37
+ this._totalDomain = view.documentElement.getAttribute("totalDomain");
38
+
20
39
  if (type === "indicator") {
21
40
  this._type = "indicator";
22
41
  }
@@ -1,27 +1,27 @@
1
1
  export function getValueForField({
2
- values,
2
+ values = {},
3
3
  fieldName,
4
- fields,
4
+ fields = {},
5
5
  }: {
6
6
  values: any;
7
7
  fieldName: string;
8
8
  fields: any;
9
9
  }) {
10
- if (!fields) {
11
- return false;
12
- }
13
-
14
- if (!fields[fieldName]) {
15
- return values[fieldName] || false;
16
- }
17
-
18
- const fieldType = fields[fieldName].type;
10
+ const fieldType = fields[fieldName]?.type || "passthrough";
19
11
 
20
12
  if (fieldType === "many2one") {
21
13
  return values[fieldName] ? values[fieldName][0] || null : false;
22
14
  } else if (fieldType === "one2many" || fieldType === "many2many") {
23
15
  return values[fieldName].map((item: any) => item.id);
24
16
  } else {
25
- return values[fieldName];
17
+ if (values?.[fieldName]) {
18
+ return values?.[fieldName];
19
+ }
20
+
21
+ if (fieldName.indexOf("'") !== -1) {
22
+ return fieldName;
23
+ } else {
24
+ return parseInt(fieldName);
25
+ }
26
26
  }
27
27
  }
@@ -3,12 +3,14 @@ import Graph from "../Graph";
3
3
  describe("A Graph", () => {
4
4
  it("should parse a basic XML title and type indicator", () => {
5
5
  const xml = `<?xml version="1.0"?>
6
- <graph string="My indicator" type="indicator" />
6
+ <graph string="My indicator" type="indicator" color="red:debt>0;green:debt==0" icon="slack" />
7
7
  `;
8
8
 
9
9
  const graph = new Graph(xml);
10
10
 
11
11
  expect(graph.string).toBe("My indicator");
12
12
  expect(graph.type).toBe("indicator");
13
+ expect(graph.color).toBe("red:debt>0;green:debt==0");
14
+ expect(graph.icon).toBe("slack");
13
15
  });
14
16
  });
@@ -53,5 +53,23 @@ describe("A Context Parser", () => {
53
53
  expect(parsedContext!["active_test"]).toBeDefined();
54
54
  expect(parsedContext!["active_test"]).toBeFalsy();
55
55
  });
56
+
57
+ it("should properly parse a boolean context", () => {
58
+ const str = "{'active_test': True}";
59
+
60
+ const parsedContext = parseContext({ context: str });
61
+
62
+ expect(parsedContext!["active_test"]).toBeDefined();
63
+ expect(parsedContext!["active_test"]).toBeTruthy();
64
+ });
65
+
66
+ it("should properly parse a number context", () => {
67
+ const str = "{'active_id': 3}";
68
+
69
+ const parsedContext = parseContext({ context: str });
70
+
71
+ expect(parsedContext!["active_id"]).toBeDefined();
72
+ expect(parsedContext!["active_id"]).toBe(3);
73
+ });
56
74
  });
57
75
  });