@wiris/mathtype-viewer 1.4.1 → 1.5.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.
@@ -1 +1 @@
1
- /*! @license DOMPurify 2.4.7 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.4.7/LICENSE */
1
+ /*! @license DOMPurify 3.1.0 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.0/LICENSE */
package/dist/app.d.ts CHANGED
@@ -4,6 +4,7 @@ declare global {
4
4
  viewer: {
5
5
  properties: Properties;
6
6
  isLoaded: boolean;
7
+ version: string;
7
8
  };
8
9
  }
9
10
  }
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAK1C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE;YACN,UAAU,EAAE,UAAU,CAAC;YACvB,QAAQ,EAAE,OAAO,CAAA;SAClB,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAM1C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,MAAM,EAAE;YACN,UAAU,EAAE,UAAU,CAAC;YACvB,QAAQ,EAAE,OAAO,CAAC;YAClB,OAAO,EAAE,MAAM,CAAA;SAChB,CAAC;KACH;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"mathml.d.ts","sourceRoot":"","sources":["../src/mathml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAyD1C,wBAAsB,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC3F"}
1
+ {"version":3,"file":"mathml.d.ts","sourceRoot":"","sources":["../src/mathml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA0D1C,wBAAsB,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC3F"}
@@ -6,6 +6,7 @@ export declare type Config = {
6
6
  backendConfig?: {
7
7
  wirispluginperformance?: Wirispluginperformance;
8
8
  wiriseditormathmlattribute?: string;
9
+ wiriscustomheaders?: object;
9
10
  };
10
11
  dpi?: number;
11
12
  element?: string;
@@ -14,10 +15,12 @@ export declare type Config = {
14
15
  zoom?: number;
15
16
  };
16
17
  export declare class Properties {
18
+ private static instance;
17
19
  render: () => Promise<void>;
18
20
  config: Config;
19
21
  private new;
20
- static generate(): Promise<Properties>;
22
+ static getInstance(): Properties;
23
+ private initialize;
21
24
  private checkServices;
22
25
  get editorServicesRoot(): string;
23
26
  set editorServicesRoot(editorServicesRoot: string);
@@ -1 +1 @@
1
- {"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAGA,aAAK,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACpD,aAAK,sBAAsB,GAAG,MAAM,GAAG,OAAO,CAAC;AAK/C,oBAAY,MAAM,GAAG;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE;QACd,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;QAChD,0BAA0B,CAAC,EAAE,MAAM,CAAC;KACrC,CAAC;IACF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAsBF,qBAAa,UAAU;IAErB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAkB;IAG7C,MAAM,EAAE,MAAM,CAAiB;IAM/B,OAAO,CAAC,GAAG;WAKE,QAAQ,IAAI,OAAO,CAAC,UAAU,CAAC;IAuD5C,OAAO,CAAC,aAAa;IAcrB,IAAI,kBAAkB,IAAI,MAAM,CAG/B;IAED,IAAI,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,EAGhD;IAED,IAAI,uBAAuB,IAAI,MAAM,CAGpC;IAED,IAAI,uBAAuB,CAAC,uBAAuB,EAAE,MAAM,EAG1D;IAWD,IAAI,IAAI,IAAI,MAAM,CAMjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAGpB;IAQD,IAAI,MAAM,IAAI,MAAM,CAGnB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAGxB;IAQD,IAAI,GAAG,IAAI,MAAM,CAGhB;IAED,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAGlB;IAQD,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAGpB;IAQD,IAAI,OAAO,IAAI,MAAM,CAGpB;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,EAG1B;IAQD,IAAI,sBAAsB,IAAI,sBAAsB,CAGnD;IAED,IAAI,sBAAsB,CAAC,sBAAsB,EAAE,sBAAsB,EAGxE;IAQD,IAAI,0BAA0B,IAAI,MAAM,CAGvC;IAED,IAAI,0BAA0B,CAAC,0BAA0B,EAAE,MAAM,EAGhE;CACF"}
1
+ {"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../src/properties.ts"],"names":[],"mappings":"AAIA,aAAK,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AACpD,aAAK,sBAAsB,GAAG,MAAM,GAAG,OAAO,CAAC;AAK/C,oBAAY,MAAM,GAAG;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,aAAa,CAAC,EAAE;QACd,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;QAChD,0BAA0B,CAAC,EAAE,MAAM,CAAC;QACpC,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAuBF,qBAAa,UAAU;IAErB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAElD,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAkB;IAG7C,MAAM,EAAE,MAAM,CAAiB;IAM/B,OAAO,CAAC,GAAG;IAEX,MAAM,CAAC,WAAW,IAAI,UAAU;YAWlB,UAAU;IAqDxB,OAAO,CAAC,aAAa;IAcrB,IAAI,kBAAkB,IAAI,MAAM,CAG/B;IAED,IAAI,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,EAGhD;IAED,IAAI,uBAAuB,IAAI,MAAM,CAGpC;IAED,IAAI,uBAAuB,CAAC,uBAAuB,EAAE,MAAM,EAG1D;IAWD,IAAI,IAAI,IAAI,MAAM,CAMjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAGpB;IAQD,IAAI,MAAM,IAAI,MAAM,CAGnB;IAED,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAGxB;IAQD,IAAI,GAAG,IAAI,MAAM,CAGhB;IAED,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAGlB;IAQD,IAAI,IAAI,IAAI,MAAM,CAGjB;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,MAAM,EAGpB;IAQD,IAAI,OAAO,IAAI,MAAM,CAGpB;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,MAAM,EAG1B;IAQD,IAAI,sBAAsB,IAAI,sBAAsB,CAGnD;IAED,IAAI,sBAAsB,CAAC,sBAAsB,EAAE,sBAAsB,EAGxE;IAQD,IAAI,0BAA0B,IAAI,MAAM,CAGvC;IAED,IAAI,0BAA0B,CAAC,0BAA0B,EAAE,MAAM,EAGhE;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../src/services.ts"],"names":[],"mappings":"AAEA,aAAK,UAAU;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ;AAKD,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,KAAA;CAIpB;AAUD,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAanF;AAUD,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAyB7I;AAUD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAahH;AAUD,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAyBvG;AAUD,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAUzG;AASD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ/F;AAQD,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAO7G"}
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../src/services.ts"],"names":[],"mappings":"AAGA,aAAK,UAAU;IACb,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ;AAKD,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,KAAA;CAIpB;AAUD,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAanF;AAUD,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CA8B7I;AAUD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAahH;AAUD,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAyBvG;AAUD,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAUzG;AASD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAQ/F;AAQD,wBAAsB,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAI,OAAO,CAAC,GAAG,CAAC,CAO7G"}
package/index.html CHANGED
@@ -14,13 +14,7 @@
14
14
  </head>
15
15
  <body>
16
16
  <p>
17
- <math>
18
- <mn>2</mn>
19
- <mo>+</mo>
20
- <mn>2</mn>
21
- <mo>=</mo>
22
- <mn>4</mn>
23
- </math>
17
+ <math xmlns="http://www.w3.org/1998/Math/MathML"><mn>2</mn><mo>+</mo><mn>2</mn><mo>=</mo><mn>4</mn></math>
24
18
  </p>
25
19
  <p>
26
20
  $$4 - 2 = 2$$
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wiris/mathtype-viewer",
3
- "version": "1.4.1",
3
+ "version": "1.5.0",
4
4
  "description": "",
5
5
  "main": "app.js",
6
6
  "scripts": {
@@ -16,7 +16,7 @@
16
16
  "author": "Integrations",
17
17
  "license": "ISC",
18
18
  "dependencies": {
19
- "@wiris/mathtype-html-integration-devkit": "1.16.1"
19
+ "@wiris/mathtype-html-integration-devkit": "1.17.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "babel-loader": "^9.1.2",
package/src/app.ts CHANGED
@@ -2,12 +2,14 @@ import { Properties } from './properties';
2
2
  import { renderLatex } from './latex';
3
3
  import { renderMathML } from './mathml';
4
4
  import { bypassEncapsulation } from './retro';
5
+ import packageInformation from '../../../node_modules/@wiris/mathtype-viewer/package.json'
5
6
 
6
7
  declare global {
7
8
  interface Window {
8
9
  viewer: {
9
10
  properties: Properties,
10
- isLoaded: boolean
11
+ isLoaded: boolean,
12
+ version: string
11
13
  };
12
14
  }
13
15
  }
@@ -23,14 +25,19 @@ main(window);
23
25
  */
24
26
  async function main(w: Window): Promise<void> {
25
27
 
26
- const properties: Properties = await Properties.generate();
28
+ const properties: Properties = await Properties.getInstance();
27
29
 
28
30
  // Expose the globals to the browser
29
31
  if (!w.viewer) {
30
32
  w.viewer = {
31
33
  properties,
32
34
  isLoaded: false,
35
+ version: packageInformation.version
33
36
  };
37
+ } else {
38
+ w.viewer.properties = properties;
39
+ w.viewer.isLoaded = false;
40
+ w.viewer.version = packageInformation.version;
34
41
  }
35
42
 
36
43
  const document = w.document;
package/src/mathml.ts CHANGED
@@ -11,6 +11,7 @@ interface FormulaData {
11
11
  baseline: string,
12
12
  height: string,
13
13
  width: string,
14
+ alt?: string,
14
15
  }
15
16
 
16
17
  /**
@@ -118,8 +119,15 @@ async function setImageProperties(properties: Properties, data: FormulaData, mml
118
119
 
119
120
  // Set the alt text whenever there's a translation for the characters and MathML on the mml.
120
121
  if (!corruptMathML.some(corruptMathML => mml.includes(corruptMathML))) {
121
- const { text } = await mathml2accessible(mml, properties.lang, properties.editorServicesRoot, properties.editorServicesExtension);
122
- img.alt = text;
122
+ try {
123
+ if (!data.alt) {
124
+ const { text } = await mathml2accessible(mml, properties.lang, properties.editorServicesRoot, properties.editorServicesExtension);
125
+ data.alt = text;
126
+ }
127
+ img.alt = data.alt;
128
+ } catch {
129
+ img.alt = 'Alternative text not available';
130
+ }
123
131
  }
124
132
 
125
133
  return img;
package/src/properties.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { configurationJson, StatusError } from './services';
2
+ import Util from '@wiris/mathtype-html-integration-devkit/src/util';
2
3
 
3
4
  // Helper types for Config below
4
5
  type Viewer = 'none' | 'image' | 'mathml' | 'latex';
@@ -13,6 +14,7 @@ export type Config = {
13
14
  backendConfig?: {
14
15
  wirispluginperformance?: Wirispluginperformance,
15
16
  wiriseditormathmlattribute?: string,
17
+ wiriscustomheaders?: object,
16
18
  },
17
19
  dpi?: number,
18
20
  element?: string,
@@ -29,7 +31,8 @@ const defaultValues: Config = {
29
31
  editorServicesExtension: '',
30
32
  backendConfig: {
31
33
  wirispluginperformance: 'true',
32
- wiriseditormathmlattribute: 'data-mathml'
34
+ wiriseditormathmlattribute: 'data-mathml',
35
+ wiriscustomheaders: {},
33
36
  },
34
37
  dpi: 96,
35
38
  element: 'body',
@@ -43,6 +46,8 @@ const defaultValues: Config = {
43
46
  */
44
47
  export class Properties {
45
48
 
49
+ private static instance: Properties | null = null;
50
+
46
51
  render: () => Promise<void> = async () => {};
47
52
 
48
53
  // Get URL properties (retrocompatibility).
@@ -54,13 +59,18 @@ export class Properties {
54
59
  */
55
60
  private new() {}
56
61
 
62
+ static getInstance(): Properties {
63
+ if (!Properties.instance) {
64
+ Properties.instance = new Properties();
65
+ Properties.instance.initialize();
66
+ }
67
+ return Properties.instance;
68
+ }
69
+
57
70
  /**
58
71
  * Creates and sets up a new instance of class Properties
59
72
  */
60
- static async generate(): Promise<Properties> {
61
-
62
- const instance = new Properties();
63
-
73
+ private async initialize(): Promise<void> {
64
74
  // Get URL parameters from <script>
65
75
  const pluginName = 'WIRISplugins.js';
66
76
  const script: HTMLScriptElement = document.querySelector(`script[src*="${pluginName}"]`);
@@ -71,31 +81,34 @@ export class Properties {
71
81
  const urlParams = new URLSearchParams(params);
72
82
 
73
83
  if (urlParams.get('dpi') !== null && urlParams.get('dpi') !== undefined) {
74
- instance.config.dpi = +urlParams.get('dpi');
84
+ Properties.instance.config.dpi = +urlParams.get('dpi');
75
85
  }
76
86
  if (urlParams.get('element') !== null && urlParams.get('element') !== undefined) {
77
- instance.config.element = urlParams.get('element');
87
+ Properties.instance.config.element = urlParams.get('element');
78
88
  }
79
89
  if (urlParams.get('lang') !== null && urlParams.get('lang') !== undefined) {
80
- instance.config.lang = urlParams.get('lang');
90
+ Properties.instance.config.lang = urlParams.get('lang');
81
91
  }
82
92
  if (urlParams.get('viewer') !== null && urlParams.get('viewer') !== undefined) {
83
- instance.config.viewer = (urlParams.get('viewer') as Viewer);
93
+ Properties.instance.config.viewer = (urlParams.get('viewer') as Viewer);
84
94
  }
85
95
  if (urlParams.get('zoom') !== null && urlParams.get('zoom') !== undefined) {
86
- instance.config.zoom = +urlParams.get('zoom');
96
+ Properties.instance.config.zoom = +urlParams.get('zoom');
87
97
  }
88
98
  }
89
99
 
90
- instance.checkServices();
100
+ Properties.instance.checkServices();
91
101
 
92
102
  // Get backend parameters calling the configurationjson service
93
103
  try {
94
- instance.config.backendConfig = await configurationJson(
95
- ['wirispluginperformance', 'wiriseditormathmlattribute'],
96
- instance.editorServicesRoot,
97
- instance.editorServicesExtension,
104
+ Properties.instance.config.backendConfig = await configurationJson(
105
+ ['wirispluginperformance', 'wiriseditormathmlattribute', 'wiriscustomheaders'],
106
+ Properties.instance.editorServicesRoot,
107
+ Properties.instance.editorServicesExtension
98
108
  );
109
+
110
+ // We'll always get a string from the wiriscustomheaders backend parameter. It needs to be converted to an object.
111
+ Properties.instance.config.backendConfig.wiriscustomheaders = Util.convertStringToObject(Properties.instance.config.backendConfig.wiriscustomheaders);
99
112
  } catch(e) {
100
113
  if (e instanceof StatusError) {
101
114
  // Do nothing; leave default values.
@@ -104,8 +117,6 @@ export class Properties {
104
117
  throw e;
105
118
  }
106
119
  }
107
-
108
- return instance;
109
120
  }
110
121
 
111
122
  /**
package/src/retro.ts CHANGED
@@ -87,7 +87,8 @@ class JsPluginViewer {
87
87
  * @deprecated Please consider using {@link renderMathML}.
88
88
  */
89
89
  async parseElement(element: HTMLElement, asynchronously?: boolean, callbackFunc?: () => void): Promise<void> {
90
- return renderMathML(JsPluginViewer.properties, element);
90
+ await renderLatex(JsPluginViewer.properties, element);
91
+ return await renderMathML(JsPluginViewer.properties, element);
91
92
  }
92
93
 
93
94
  /**
package/src/services.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import Parser from '@wiris/mathtype-html-integration-devkit/src/parser';
2
+ import { Properties } from './properties';
2
3
 
3
4
  enum MethodType {
4
5
  Post = "POST",
@@ -49,11 +50,16 @@ export async function processJsonResponse(response: Promise<Response>): Promise<
49
50
  export async function callService(query: object, serviceName: string, method: MethodType, serverURL: string, extension: string) : Promise<any> {
50
51
  try {
51
52
  const url = new URL(serviceName + extension, serverURL);
53
+
54
+ const properties = Properties.getInstance();
55
+ const headers = {
56
+ 'Content-type': 'application/x-www-form-urlencoded; charset=utf-8',
57
+ ...properties.config.backendConfig.wiriscustomheaders
58
+ }
59
+
52
60
  const init: RequestInit = {
53
61
  method,
54
- headers: {
55
- 'Content-type': 'application/x-www-form-urlencoded; charset=utf-8',
56
- },
62
+ headers
57
63
  };
58
64
 
59
65
  if (method === MethodType.Get) {
@@ -113,7 +119,7 @@ export async function showImage(mml: string, lang: string, url: string, extensio
113
119
  }
114
120
 
115
121
  // Try to obtain the image via GET
116
- const getParams = Parser.createShowImageSrcData(params);
122
+ const getParams = Parser.createShowImageSrcData(params, params.lang);
117
123
  const getResponse = callService(getParams, 'showimage', MethodType.Get, url, extension);
118
124
  try {
119
125
  return await processJsonResponse(getResponse);
package/tsconfig.json CHANGED
@@ -69,6 +69,7 @@
69
69
  /* Experimental Options */
70
70
  "experimentalDecorators": true, /* Enables experimental support for ES7 decorators. */
71
71
  // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
72
+ "resolveJsonModule": true
72
73
  },
73
74
  "exclude": [
74
75
  "node_modules", // would be the default