@acorex/core 3.0.4 → 5.0.1

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.
Files changed (175) hide show
  1. package/README.md +23 -2
  2. package/acorex-core.d.ts +1 -0
  3. package/bundles/acorex-core.umd.js +609 -2248
  4. package/bundles/acorex-core.umd.js.map +1 -1
  5. package/esm2015/acorex-core.js +1 -1
  6. package/esm2015/lib/config/configs.js +29 -0
  7. package/esm2015/lib/core.module.js +18 -24
  8. package/esm2015/lib/dateTime/datetime.class.js +236 -0
  9. package/esm2015/lib/dateTime/datetime.module.js +18 -0
  10. package/esm2015/lib/dateTime/datetime.pipe.js +25 -0
  11. package/esm2015/lib/dateTime/georgian.calendar.js +145 -0
  12. package/esm2015/lib/dateTime/index.js +5 -0
  13. package/esm2015/lib/platform/index.js +2 -0
  14. package/esm2015/lib/platform/platform.service.js +119 -0
  15. package/esm2015/lib/translation/index.js +4 -0
  16. package/esm2015/lib/translation/translation.module.js +18 -0
  17. package/esm2015/lib/translation/translator.js +26 -0
  18. package/esm2015/lib/translation/translator.pipe.js +15 -0
  19. package/esm2015/lib/utils/index.js +3 -0
  20. package/esm2015/lib/utils/object-util.js +83 -0
  21. package/esm2015/lib/utils/safe.pipe.js +30 -0
  22. package/esm2015/public-api.js +10 -35
  23. package/fesm2015/acorex-core.js +533 -1839
  24. package/fesm2015/acorex-core.js.map +1 -1
  25. package/lib/{services/config.d.ts → config/configs.d.ts} +1 -1
  26. package/lib/core.module.d.ts +5 -0
  27. package/lib/dateTime/datetime.class.d.ts +96 -0
  28. package/lib/dateTime/datetime.module.d.ts +7 -0
  29. package/lib/dateTime/datetime.pipe.d.ts +8 -0
  30. package/lib/dateTime/georgian.calendar.d.ts +17 -0
  31. package/lib/dateTime/index.d.ts +4 -0
  32. package/lib/platform/index.d.ts +1 -0
  33. package/lib/platform/platform.service.d.ts +22 -0
  34. package/lib/translation/index.d.ts +3 -0
  35. package/lib/translation/translation.module.d.ts +7 -0
  36. package/lib/{translator → translation}/translator.d.ts +0 -0
  37. package/lib/translation/translator.pipe.d.ts +7 -0
  38. package/lib/utils/index.d.ts +2 -0
  39. package/lib/utils/object-util.d.ts +7 -0
  40. package/lib/utils/safe.pipe.d.ts +10 -0
  41. package/package.json +7 -11
  42. package/public-api.d.ts +9 -41
  43. package/acorex-core.metadata.json +0 -1
  44. package/bundles/acorex-core.umd.min.js +0 -17
  45. package/bundles/acorex-core.umd.min.js.map +0 -1
  46. package/esm2015/lib/classes/base-page.class.js +0 -21
  47. package/esm2015/lib/classes/color.class.js +0 -49
  48. package/esm2015/lib/classes/datetime.class.js +0 -314
  49. package/esm2015/lib/classes/menu.class.js +0 -27
  50. package/esm2015/lib/classes/navigator.class.js +0 -1
  51. package/esm2015/lib/classes/popup.class.js +0 -1
  52. package/esm2015/lib/classes/promise.class.js +0 -19
  53. package/esm2015/lib/classes/sectionlist.class.js +0 -1
  54. package/esm2015/lib/classes/select.class.js +0 -3
  55. package/esm2015/lib/error/error.class.js +0 -1
  56. package/esm2015/lib/error/error.module.js +0 -16
  57. package/esm2015/lib/error/error.service.js +0 -25
  58. package/esm2015/lib/events/keyboard.js +0 -1
  59. package/esm2015/lib/http/http-error.class.js +0 -1
  60. package/esm2015/lib/http/http-events.interceptor.js +0 -3
  61. package/esm2015/lib/http/http-request.class.js +0 -1
  62. package/esm2015/lib/http/http-result.class.js +0 -21
  63. package/esm2015/lib/http/http.module.js +0 -29
  64. package/esm2015/lib/http/http.service.js +0 -149
  65. package/esm2015/lib/locale/en.json +0 -249
  66. package/esm2015/lib/locale/fa.json +0 -238
  67. package/esm2015/lib/pipe/datetime.pipe.js +0 -24
  68. package/esm2015/lib/pipe/htmlToText.pipe.js +0 -23
  69. package/esm2015/lib/services/config.js +0 -29
  70. package/esm2015/lib/services/event.service.js +0 -36
  71. package/esm2015/lib/services/navigator.service.js +0 -9
  72. package/esm2015/lib/services/storage.service.js +0 -15
  73. package/esm2015/lib/translator/translator.js +0 -26
  74. package/esm2015/lib/translator/translator.module.js +0 -23
  75. package/esm2015/lib/translator/translator.pipe.js +0 -23
  76. package/esm2015/lib/translator/translator.service.js +0 -21
  77. package/esm2015/lib/utils/array/array-util.js +0 -133
  78. package/esm2015/lib/utils/html/html-util.js +0 -192
  79. package/esm2015/lib/utils/html/html.module.js +0 -16
  80. package/esm2015/lib/utils/math/math-util.js +0 -6
  81. package/esm2015/lib/utils/object/object-util.js +0 -83
  82. package/esm2015/lib/utils/render/on-demand-preload-strategy.service.js +0 -21
  83. package/esm2015/lib/utils/render/render.service.js +0 -112
  84. package/esm2015/lib/utils/render/rendering.module.js +0 -26
  85. package/esm2015/lib/utils/scroll/scroll.directive.js +0 -66
  86. package/esm2015/lib/utils/scroll/scroll.module.js +0 -16
  87. package/esm2015/lib/utils/separator/separator.module.js +0 -16
  88. package/esm2015/lib/utils/separator/separator.pipe.js +0 -22
  89. package/esm5/acorex-core.js +0 -5
  90. package/esm5/lib/classes/base-page.class.js +0 -23
  91. package/esm5/lib/classes/color.class.js +0 -54
  92. package/esm5/lib/classes/datetime.class.js +0 -390
  93. package/esm5/lib/classes/menu.class.js +0 -42
  94. package/esm5/lib/classes/navigator.class.js +0 -1
  95. package/esm5/lib/classes/popup.class.js +0 -1
  96. package/esm5/lib/classes/promise.class.js +0 -22
  97. package/esm5/lib/classes/sectionlist.class.js +0 -1
  98. package/esm5/lib/classes/select.class.js +0 -7
  99. package/esm5/lib/core.module.js +0 -27
  100. package/esm5/lib/error/error.class.js +0 -1
  101. package/esm5/lib/error/error.module.js +0 -19
  102. package/esm5/lib/error/error.service.js +0 -26
  103. package/esm5/lib/events/keyboard.js +0 -1
  104. package/esm5/lib/http/http-error.class.js +0 -1
  105. package/esm5/lib/http/http-events.interceptor.js +0 -3
  106. package/esm5/lib/http/http-request.class.js +0 -1
  107. package/esm5/lib/http/http-result.class.js +0 -24
  108. package/esm5/lib/http/http.module.js +0 -33
  109. package/esm5/lib/http/http.service.js +0 -157
  110. package/esm5/lib/locale/en.json +0 -249
  111. package/esm5/lib/locale/fa.json +0 -238
  112. package/esm5/lib/pipe/datetime.pipe.js +0 -26
  113. package/esm5/lib/pipe/htmlToText.pipe.js +0 -26
  114. package/esm5/lib/services/config.js +0 -37
  115. package/esm5/lib/services/event.service.js +0 -37
  116. package/esm5/lib/services/navigator.service.js +0 -12
  117. package/esm5/lib/services/storage.service.js +0 -18
  118. package/esm5/lib/translator/translator.js +0 -34
  119. package/esm5/lib/translator/translator.module.js +0 -24
  120. package/esm5/lib/translator/translator.pipe.js +0 -25
  121. package/esm5/lib/translator/translator.service.js +0 -24
  122. package/esm5/lib/utils/array/array-util.js +0 -147
  123. package/esm5/lib/utils/html/html-util.js +0 -224
  124. package/esm5/lib/utils/html/html.module.js +0 -19
  125. package/esm5/lib/utils/math/math-util.js +0 -10
  126. package/esm5/lib/utils/object/object-util.js +0 -88
  127. package/esm5/lib/utils/render/on-demand-preload-strategy.service.js +0 -22
  128. package/esm5/lib/utils/render/render.service.js +0 -117
  129. package/esm5/lib/utils/render/rendering.module.js +0 -29
  130. package/esm5/lib/utils/scroll/scroll.directive.js +0 -68
  131. package/esm5/lib/utils/scroll/scroll.module.js +0 -19
  132. package/esm5/lib/utils/separator/separator.module.js +0 -19
  133. package/esm5/lib/utils/separator/separator.pipe.js +0 -25
  134. package/esm5/public-api.js +0 -36
  135. package/fesm5/acorex-core.js +0 -2274
  136. package/fesm5/acorex-core.js.map +0 -1
  137. package/lib/classes/base-page.class.d.ts +0 -10
  138. package/lib/classes/color.class.d.ts +0 -17
  139. package/lib/classes/datetime.class.d.ts +0 -63
  140. package/lib/classes/menu.class.d.ts +0 -33
  141. package/lib/classes/navigator.class.d.ts +0 -5
  142. package/lib/classes/popup.class.d.ts +0 -12
  143. package/lib/classes/promise.class.d.ts +0 -7
  144. package/lib/classes/sectionlist.class.d.ts +0 -8
  145. package/lib/classes/select.class.d.ts +0 -7
  146. package/lib/error/error.class.d.ts +0 -4
  147. package/lib/error/error.module.d.ts +0 -2
  148. package/lib/error/error.service.d.ts +0 -10
  149. package/lib/events/keyboard.d.ts +0 -2
  150. package/lib/http/http-error.class.d.ts +0 -7
  151. package/lib/http/http-events.interceptor.d.ts +0 -10
  152. package/lib/http/http-request.class.d.ts +0 -14
  153. package/lib/http/http-result.class.d.ts +0 -11
  154. package/lib/http/http.module.d.ts +0 -4
  155. package/lib/http/http.service.d.ts +0 -20
  156. package/lib/pipe/datetime.pipe.d.ts +0 -5
  157. package/lib/pipe/htmlToText.pipe.d.ts +0 -4
  158. package/lib/services/event.service.d.ts +0 -6
  159. package/lib/services/navigator.service.d.ts +0 -5
  160. package/lib/services/storage.service.d.ts +0 -4
  161. package/lib/translator/translator.module.d.ts +0 -3
  162. package/lib/translator/translator.pipe.d.ts +0 -5
  163. package/lib/translator/translator.service.d.ts +0 -5
  164. package/lib/utils/array/array-util.d.ts +0 -6
  165. package/lib/utils/html/html-util.d.ts +0 -62
  166. package/lib/utils/html/html.module.d.ts +0 -2
  167. package/lib/utils/math/math-util.d.ts +0 -3
  168. package/lib/utils/object/object-util.d.ts +0 -7
  169. package/lib/utils/render/on-demand-preload-strategy.service.d.ts +0 -7
  170. package/lib/utils/render/render.service.d.ts +0 -14
  171. package/lib/utils/render/rendering.module.d.ts +0 -4
  172. package/lib/utils/scroll/scroll.directive.d.ts +0 -13
  173. package/lib/utils/scroll/scroll.module.d.ts +0 -2
  174. package/lib/utils/separator/separator.module.d.ts +0 -2
  175. package/lib/utils/separator/separator.pipe.d.ts +0 -4
@@ -1,29 +0,0 @@
1
- var AXHttpModule_1;
2
- import { __decorate } from "tslib";
3
- import { NgModule } from '@angular/core';
4
- import { CommonModule } from '@angular/common';
5
- import { HttpClientModule } from '@angular/common/http';
6
- import { AXHttpService } from './http.service';
7
- let AXHttpModule = AXHttpModule_1 = class AXHttpModule {
8
- static forRoot() {
9
- return {
10
- ngModule: AXHttpModule_1,
11
- providers: [AXHttpService]
12
- };
13
- }
14
- };
15
- AXHttpModule = AXHttpModule_1 = __decorate([
16
- NgModule({
17
- declarations: [],
18
- imports: [
19
- CommonModule,
20
- HttpClientModule
21
- ],
22
- exports: [HttpClientModule],
23
- providers: [
24
- AXHttpService
25
- ]
26
- })
27
- ], AXHttpModule);
28
- export { AXHttpModule };
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AYWNvcmV4L2NvcmUvIiwic291cmNlcyI6WyJsaWIvaHR0cC9odHRwLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFjL0MsSUFBYSxZQUFZLG9CQUF6QixNQUFhLFlBQVk7SUFDdkIsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQVk7WUFDdEIsU0FBUyxFQUFFLENBQUMsYUFBYSxDQUFDO1NBQzNCLENBQUM7SUFDSixDQUFDO0NBQ0YsQ0FBQTtBQVBZLFlBQVk7SUFYeEIsUUFBUSxDQUFDO1FBQ1IsWUFBWSxFQUFFLEVBQUU7UUFDaEIsT0FBTyxFQUFFO1lBQ1AsWUFBWTtZQUNaLGdCQUFnQjtTQUNqQjtRQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDO1FBQzNCLFNBQVMsRUFBRTtZQUNULGFBQWE7U0FDZDtLQUNGLENBQUM7R0FDVyxZQUFZLENBT3hCO1NBUFksWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEFYSHR0cFNlcnZpY2UgfSBmcm9tICcuL2h0dHAuc2VydmljZSc7XHJcblxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtIdHRwQ2xpZW50TW9kdWxlXSxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIEFYSHR0cFNlcnZpY2VcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWEh0dHBNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgbmdNb2R1bGU6IEFYSHR0cE1vZHVsZSxcclxuICAgICAgcHJvdmlkZXJzOiBbQVhIdHRwU2VydmljZV1cclxuICAgIH07XHJcbiAgfVxyXG59Il19
@@ -1,149 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { Injectable, Injector, InjectFlags } from '@angular/core';
3
- import { HttpClient, HttpHeaders, HttpParams, HttpErrorResponse } from '@angular/common/http';
4
- import { HttpResult } from './http-result.class';
5
- import { AX_HTTP_EVENT_INTERCEPTOR } from './http-events.interceptor';
6
- // import { catchError, retry, retryWhen, mergeMap, delay, switchMap, scan, takeWhile, flatMap } from 'rxjs/operators';
7
- // import { of, concat, throwError } from 'rxjs';
8
- let AXHttpService = class AXHttpService {
9
- constructor(http, injector) {
10
- this.http = http;
11
- this.injector = injector;
12
- this.interceptor = this.injector.get(AX_HTTP_EVENT_INTERCEPTOR);
13
- }
14
- get(url, config = {}) {
15
- config.url = url;
16
- config.method = "get";
17
- return this.request(config);
18
- }
19
- post(url, config = {}) {
20
- config.url = url;
21
- config.method = "post";
22
- return this.request(config);
23
- }
24
- delete(url, config = {}) {
25
- config.url = url;
26
- config.method = "delete";
27
- return this.request(config);
28
- }
29
- put(url, config = {}) {
30
- config.url = url;
31
- config.method = "put";
32
- return this.request(config);
33
- }
34
- request(config) {
35
- return new HttpResult((result, error, complete) => {
36
- this.handleBegin(config).then(c => {
37
- this.http
38
- .request(config.method, config.url, this.mapOptions(config))
39
- //.pipe(this.retry)
40
- .subscribe(data => {
41
- this.handleResult(data, result, complete, config);
42
- }, c => {
43
- this.handleError(c, error, complete, config);
44
- });
45
- });
46
- });
47
- }
48
- handleResult(data, result, complete, config) {
49
- if (this.interceptor) {
50
- this.interceptor.success(config, data).then(c => {
51
- if (result)
52
- result(c);
53
- this.handleComplete(complete, config);
54
- });
55
- }
56
- else {
57
- //
58
- if (result)
59
- result(data);
60
- this.handleComplete(complete, config);
61
- }
62
- }
63
- handleBegin(config) {
64
- return new Promise((resolve) => {
65
- if (!config.headers)
66
- config.headers = {};
67
- if (!config.params)
68
- config.params = {};
69
- //
70
- if (this.interceptor) {
71
- this.interceptor.begin(config).then(c => {
72
- resolve(c);
73
- });
74
- }
75
- else {
76
- resolve(config);
77
- }
78
- });
79
- }
80
- handleComplete(complete, config) {
81
- if (complete)
82
- complete();
83
- if (this.interceptor)
84
- this.interceptor.complete(config);
85
- }
86
- handleError(c, error, complete, config) {
87
- var _a;
88
- let r = {
89
- message: c.message,
90
- status: c.status,
91
- code: (_a = c.status) === null || _a === void 0 ? void 0 : _a.toString(),
92
- handled: false,
93
- error: c.error
94
- };
95
- if (error) {
96
- error(r);
97
- }
98
- if (!r.handled) {
99
- if (this.interceptor)
100
- this.interceptor.error(config, r);
101
- }
102
- this.handleComplete(complete, config);
103
- }
104
- mapOptions(options) {
105
- let headers = new HttpHeaders();
106
- for (const key in options.headers) {
107
- if (options.headers.hasOwnProperty(key)) {
108
- const value = options.headers[key];
109
- headers = headers.set(key, value);
110
- }
111
- }
112
- let params = new HttpParams();
113
- for (const key in options.params) {
114
- if (options.params.hasOwnProperty(key)) {
115
- const value = options.params[key];
116
- params = params.set(key, value);
117
- }
118
- }
119
- return {
120
- headers: headers,
121
- params: params,
122
- body: options.body,
123
- responseType: options.responseType || 'json'
124
- };
125
- // if (options.method == "get") {
126
- // return {
127
- // headers: headers,
128
- // params: params
129
- // };
130
- // }
131
- // else {
132
- // return {
133
- // headers: headers,
134
- // params: params,
135
- // body: options.body
136
- // };
137
- // }
138
- }
139
- };
140
- AXHttpService.ctorParameters = () => [
141
- { type: HttpClient },
142
- { type: Injector }
143
- ];
144
- AXHttpService = __decorate([
145
- Injectable(),
146
- __metadata("design:paramtypes", [HttpClient, Injector])
147
- ], AXHttpService);
148
- export { AXHttpService };
149
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFjb3JleC9jb3JlLyIsInNvdXJjZXMiOlsibGliL2h0dHAvaHR0cC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBR2pELE9BQU8sRUFDSCx5QkFBeUIsRUFDNUIsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyx1SEFBdUg7QUFDdkgsaURBQWlEO0FBSWpELElBQWEsYUFBYSxHQUExQixNQUFhLGFBQWE7SUFHdEIsWUFBb0IsSUFBZ0IsRUFBVSxRQUFrQjtRQUE1QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUM1RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUdELEdBQUcsQ0FBSSxHQUFXLEVBQUUsU0FBK0IsRUFBRTtRQUNqRCxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNqQixNQUFNLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUN0QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksQ0FBSSxHQUFXLEVBQUUsU0FBK0IsRUFBRTtRQUNsRCxNQUFNLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztRQUNqQixNQUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7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Q3BDO1NBQ0o7UUFDRCxJQUFJLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzlCLEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRTtZQUM5QixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUNwQyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQyxNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDbkM7U0FDSjtRQUNELE9BQU87WUFDSCxPQUFPLEVBQUUsT0FBTztZQUNoQixNQUFNLEVBQUUsTUFBTTtZQUNkLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksSUFBSSxNQUFNO1NBQy9DLENBQUM7UUFDRixpQ0FBaUM7UUFDakMsZUFBZTtRQUNmLDRCQUE0QjtRQUM1Qix5QkFBeUI7UUFDekIsU0FBUztRQUNULElBQUk7UUFDSixTQUFTO1FBQ1QsZUFBZTtRQUNmLDRCQUE0QjtRQUM1QiwwQkFBMEI7UUFDMUIsNkJBQTZCO1FBQzdCLFNBQVM7UUFDVCxJQUFJO0lBQ1IsQ0FBQztDQUVKLENBQUE7O1lBOUk2QixVQUFVO1lBQW9CLFFBQVE7O0FBSHZELGFBQWE7SUFEekIsVUFBVSxFQUFFO3FDQUlpQixVQUFVLEVBQW9CLFFBQVE7R0FIdkQsYUFBYSxDQWlKekI7U0FqSlksYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yLCBJbmplY3RGbGFncyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcywgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEh0dHBSZXN1bHQgfSBmcm9tICcuL2h0dHAtcmVzdWx0LmNsYXNzJztcclxuaW1wb3J0IHsgSUh0dHBFcnJvciB9IGZyb20gJy4vaHR0cC1lcnJvci5jbGFzcyc7XHJcbmltcG9ydCB7IEFYSHR0cFJlcXVlc3RPcHRpb25zIH0gZnJvbSAnLi9odHRwLXJlcXVlc3QuY2xhc3MnO1xyXG5pbXBvcnQge1xyXG4gICAgQVhfSFRUUF9FVkVOVF9JTlRFUkNFUFRPUiwgQVhIdHRwRXZlbnRJbnRlcmNlcHRvclxyXG59IGZyb20gJy4vaHR0cC1ldmVudHMuaW50ZXJjZXB0b3InO1xyXG4vLyBpbXBvcnQgeyBjYXRjaEVycm9yLCByZXRyeSwgcmV0cnlXaGVuLCBtZXJnZU1hcCwgZGVsYXksIHN3aXRjaE1hcCwgc2NhbiwgdGFrZVdoaWxlLCBmbGF0TWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG4vLyBpbXBvcnQgeyBvZiwgY29uY2F0LCB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQVhIdHRwU2VydmljZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBpbnRlcmNlcHRvcjogQVhIdHRwRXZlbnRJbnRlcmNlcHRvcjtcclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHtcclxuICAgICAgICB0aGlzLmludGVyY2VwdG9yID0gdGhpcy5pbmplY3Rvci5nZXQoQVhfSFRUUF9FVkVOVF9JTlRFUkNFUFRPUik7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGdldDxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJnZXRcIjtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcG9zdDxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJwb3N0XCI7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdChjb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIGRlbGV0ZTxUPih1cmw6IHN0cmluZywgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucyA9IHt9KTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgY29uZmlnLnVybCA9IHVybDtcclxuICAgICAgICBjb25maWcubWV0aG9kID0gXCJkZWxldGVcIjtcclxuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0KGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHV0PFQ+KHVybDogc3RyaW5nLCBjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zID0ge30pOiBIdHRwUmVzdWx0PFQ+IHtcclxuICAgICAgICBjb25maWcudXJsID0gdXJsO1xyXG4gICAgICAgIGNvbmZpZy5tZXRob2QgPSBcInB1dFwiO1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVlc3QoY29uZmlnKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgcmVxdWVzdDxUPihjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKTogSHR0cFJlc3VsdDxUPiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBIdHRwUmVzdWx0PFQ+KChyZXN1bHQ/LCBlcnJvcj8sIGNvbXBsZXRlPykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmhhbmRsZUJlZ2luKGNvbmZpZykudGhlbihjID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaHR0cFxyXG4gICAgICAgICAgICAgICAgICAgIC5yZXF1ZXN0PFQ+KGNvbmZpZy5tZXRob2QsIGNvbmZpZy51cmwsIHRoaXMubWFwT3B0aW9ucyhjb25maWcpKVxyXG4gICAgICAgICAgICAgICAgICAgIC8vLnBpcGUodGhpcy5yZXRyeSlcclxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKGRhdGEgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZVJlc3VsdChkYXRhLCByZXN1bHQsIGNvbXBsZXRlLCBjb25maWcpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0sIGMgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGMsIGVycm9yLCBjb21wbGV0ZSwgY29uZmlnKTtcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSlcclxuICAgIH1cclxuXHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVSZXN1bHQoZGF0YSwgcmVzdWx0LCBjb21wbGV0ZSwgY29uZmlnOiBBWEh0dHBSZXF1ZXN0T3B0aW9ucykge1xyXG4gICAgICAgIGlmICh0aGlzLmludGVyY2VwdG9yKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW50ZXJjZXB0b3Iuc3VjY2Vzcyhjb25maWcsIGRhdGEpLnRoZW4oYyA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAocmVzdWx0KVxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdChjKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuaGFuZGxlQ29tcGxldGUoY29tcGxldGUsIGNvbmZpZyk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgaWYgKHJlc3VsdClcclxuICAgICAgICAgICAgICAgIHJlc3VsdChkYXRhKTtcclxuICAgICAgICAgICAgdGhpcy5oYW5kbGVDb21wbGV0ZShjb21wbGV0ZSwgY29uZmlnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVCZWdpbihjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKTogUHJvbWlzZTxBWEh0dHBSZXF1ZXN0T3B0aW9ucz4ge1xyXG4gICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIWNvbmZpZy5oZWFkZXJzKVxyXG4gICAgICAgICAgICAgICAgY29uZmlnLmhlYWRlcnMgPSB7fTtcclxuICAgICAgICAgICAgaWYgKCFjb25maWcucGFyYW1zKVxyXG4gICAgICAgICAgICAgICAgY29uZmlnLnBhcmFtcyA9IHt9O1xyXG4gICAgICAgICAgICAvL1xyXG4gICAgICAgICAgICBpZiAodGhpcy5pbnRlcmNlcHRvcikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pbnRlcmNlcHRvci5iZWdpbihjb25maWcpLnRoZW4oYyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShjKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZShjb25maWcpXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaGFuZGxlQ29tcGxldGUoY29tcGxldGU6IEZ1bmN0aW9uLCBjb25maWc6IEFYSHR0cFJlcXVlc3RPcHRpb25zKSB7XHJcbiAgICAgICAgaWYgKGNvbXBsZXRlKVxyXG4gICAgICAgICAgICBjb21wbGV0ZSgpO1xyXG4gICAgICAgIGlmICh0aGlzLmludGVyY2VwdG9yKVxyXG4gICAgICAgICAgICB0aGlzLmludGVyY2VwdG9yLmNvbXBsZXRlKGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcihjOiBIdHRwRXJyb3JSZXNwb25zZSwgZXJyb3I6IEZ1bmN0aW9uLCBjb21wbGV0ZTogRnVuY3Rpb24sIGNvbmZpZzogQVhIdHRwUmVxdWVzdE9wdGlvbnMpIHtcclxuICAgICAgICBsZXQgcjogSUh0dHBFcnJvciA9IHtcclxuICAgICAgICAgICAgbWVzc2FnZTogYy5tZXNzYWdlLFxyXG4gICAgICAgICAgICBzdGF0dXM6IGMuc3RhdHVzLFxyXG4gICAgICAgICAgICBjb2RlOiBjLnN0YXR1cz8udG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgaGFuZGxlZDogZmFsc2UsXHJcbiAgICAgICAgICAgIGVycm9yOiBjLmVycm9yXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChlcnJvcikge1xyXG4gICAgICAgICAgICBlcnJvcihyKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCFyLmhhbmRsZWQpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuaW50ZXJjZXB0b3IpXHJcbiAgICAgICAgICAgICAgICB0aGlzLmludGVyY2VwdG9yLmVycm9yKGNvbmZpZywgcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuaGFuZGxlQ29tcGxldGUoY29tcGxldGUsIGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBtYXBPcHRpb25zKG9wdGlvbnM6IEFYSHR0cFJlcXVlc3RPcHRpb25zKSB7XHJcbiAgICAgICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcclxuXHJcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gb3B0aW9ucy5oZWFkZXJzKSB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zLmhlYWRlcnMuaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBvcHRpb25zLmhlYWRlcnNba2V5XTtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLnNldChrZXksIHZhbHVlKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xyXG4gICAgICAgIGZvciAoY29uc3Qga2V5IGluIG9wdGlvbnMucGFyYW1zKSB7XHJcbiAgICAgICAgICAgIGlmIChvcHRpb25zLnBhcmFtcy5oYXNPd25Qcm9wZXJ0eShrZXkpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IG9wdGlvbnMucGFyYW1zW2tleV07XHJcbiAgICAgICAgICAgICAgICBwYXJhbXMgPSBwYXJhbXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXHJcbiAgICAgICAgICAgIHBhcmFtczogcGFyYW1zLFxyXG4gICAgICAgICAgICBib2R5OiBvcHRpb25zLmJvZHksXHJcbiAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogb3B0aW9ucy5yZXNwb25zZVR5cGUgfHwgJ2pzb24nXHJcbiAgICAgICAgfTtcclxuICAgICAgICAvLyBpZiAob3B0aW9ucy5tZXRob2QgPT0gXCJnZXRcIikge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4ge1xyXG4gICAgICAgIC8vICAgICAgICAgaGVhZGVyczogaGVhZGVycyxcclxuICAgICAgICAvLyAgICAgICAgIHBhcmFtczogcGFyYW1zXHJcbiAgICAgICAgLy8gICAgIH07XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIC8vIGVsc2Uge1xyXG4gICAgICAgIC8vICAgICByZXR1cm4ge1xyXG4gICAgICAgIC8vICAgICAgICAgaGVhZGVyczogaGVhZGVycyxcclxuICAgICAgICAvLyAgICAgICAgIHBhcmFtczogcGFyYW1zLFxyXG4gICAgICAgIC8vICAgICAgICAgYm9keTogb3B0aW9ucy5ib2R5XHJcbiAgICAgICAgLy8gICAgIH07XHJcbiAgICAgICAgLy8gfVxyXG4gICAgfVxyXG5cclxufSJdfQ==
@@ -1,249 +0,0 @@
1
- {
2
- "common": {
3
- "search": "Search",
4
- "yes": "yes",
5
- "no": "No",
6
- "confirm": "Confirm",
7
- "okay": "Okay",
8
- "cancel": "Cancel",
9
- "remove": "Remove",
10
- "edit": "Edit",
11
- "configs": "Configs",
12
- "noDataFound": "No data found!",
13
- "searching": "searching ...",
14
- "save": "Save",
15
- "save-as": "Save As...",
16
- "title": "Title",
17
- "description": "Description",
18
- "name": "Name",
19
- "uniquename": "Unique Name",
20
- "size": "Size",
21
- "add-item": "Add Item",
22
- "color": "Color",
23
- "display": "Display",
24
- "min-value": "Min Value",
25
- "value": "Value",
26
- "max-value": "Max Value",
27
- "refresh-rate": "Refresh Rate",
28
- "condition": "Condition"
29
- },
30
- "dateTime": {
31
- "weekdaysShort": {
32
- "sun": "Sun",
33
- "mon": "Mon",
34
- "tue": "Tue",
35
- "wed": "Wed",
36
- "thu": "Thu",
37
- "fri": "Fri",
38
- "sat": "Sat"
39
- },
40
- "dayTime": {
41
- "am": "am",
42
- "pm": "pm",
43
- "m": "m",
44
- "a": "a",
45
- "p": "p"
46
- },
47
- "today": "today",
48
- "duration": {
49
- "format_second": "{0} second(s)",
50
- "format_minute": "{0} minute(s)"
51
- }
52
- },
53
- "queryBuilder": {
54
- "contains": "contains",
55
- "start-with": "start-with",
56
- "end-with": "end-with",
57
- "equal": "equal",
58
- "not-equal": "not-equal",
59
- "null": "null",
60
- "not-null": "not-null",
61
- "greater-than": "greater-than",
62
- "gt": "greater-than",
63
- "greater-than-equal": "greater-than-equal",
64
- "gte": "greater-than-equal",
65
- "less-than": "less-than",
66
- "lt": "less-than",
67
- "less-than-equal": "less-than-equal",
68
- "lte": "less-than-equal",
69
- "true": "true",
70
- "false": "false",
71
- "empty": "empty"
72
- },
73
- "validation": {
74
- "messages": {
75
- "required": "This field is required!",
76
- "email": "Please enter a valid email address!",
77
- "phone": "Please enter a valid phone number!"
78
- }
79
- },
80
- "dataGrid": {
81
- "page": "page",
82
- "more": "more",
83
- "to": "To",
84
- "of": "Of",
85
- "next": "next",
86
- "last": "last",
87
- "first": "first",
88
- "previous": "previous",
89
- "loadingOoo": "Loading...",
90
- "selectAll": "selectAll",
91
- "searchOoo": "Search...",
92
- "blanks": "blanks",
93
- "filterOoo": "Filter...",
94
- "equals": "Equals",
95
- "notEqual": "NotEqual",
96
- "lessThan": "LessThan",
97
- "greaterThan": "GreaterThan",
98
- "lessThanOrEqual": "LessThanOrEqual",
99
- "greaterThanOrEqual": "GreaterThanOrEqual",
100
- "inRange": "InRange",
101
- "inRangeStart": "To",
102
- "inRangeEnd": "From",
103
- "contains": "Contains",
104
- "notContains": "NotContains",
105
- "startsWith": "Starts with",
106
- "endsWith": "Ends with",
107
- "andCondition": "AND",
108
- "orCondition": "OR",
109
- "applyFilter": "Apply",
110
- "resetFilter": "Reset",
111
- "clearFilter": "Clear",
112
- "group": "Group",
113
- "columns": "Columns",
114
- "filters": "Filters",
115
- "groups": "Groups",
116
- "values": "Values",
117
- "enabled": "Enabled",
118
- "pinColumn": "Pin Column",
119
- "groupBy": "Group by",
120
- "ungroupBy": "UnGroup by",
121
- "resetColumns": "ResetColumns",
122
- "expandAll": "ExpandAll",
123
- "collapseAll": "CollapseAll",
124
- "toolPanel": "ToolPanel",
125
- "export": "Exporto",
126
- "csvExport": "csv Export",
127
- "excelExport": "Excel Export (.xlsx)",
128
- "excelXmlExport": "Excel Exporto (.xml)",
129
- "chartRange": "Chart Range",
130
- "columnChart": "Column",
131
- "groupedColumn": "Grouped",
132
- "stackedColumn": "Stacked",
133
- "normalizedColumn": "normalized Column",
134
- "barChart": "bar Chart",
135
- "groupedBar": "Grouped",
136
- "stackedBar": "Stacked",
137
- "normalizedBar": "normalized Bar",
138
- "pie": "Pie",
139
- "doughnut": "Doughnut",
140
- "line": "Line",
141
- "xyChart": "X Y (Scatter)",
142
- "scatter": "Scatter",
143
- "bubble": "Bubble",
144
- "areaChart": "Area",
145
- "area": "Area",
146
- "stackedArea": "Stacked",
147
- "normalizedArea": "100% Stacked",
148
- "histogramChart": "Histogram",
149
- "pinLeft": "Pin Left",
150
- "pinRight": "Pin Right",
151
- "noPin": "Dont Pin",
152
- "sum": "Sum",
153
- "min": "Min",
154
- "max": "Max",
155
- "none": "None",
156
- "count": "Count",
157
- "avg": "Average",
158
- "filteredRows": "Filtered",
159
- "selectedRows": "Selected",
160
- "totalRows": "Total Rows",
161
- "totalAndFilteredRows": "Rows",
162
- "copy": "Copy",
163
- "copyWithHeaders": "Copy With Headers",
164
- "ctrlC": "Ctrl C",
165
- "paste": "Paste",
166
- "ctrlV": "Ctrl V",
167
- "pivotChartTitle": "Pivot Chart",
168
- "rangeChartTitle": "Range Chart",
169
- "settings": "Settings",
170
- "data": "Data",
171
- "format": "Format",
172
- "categories": "Categories",
173
- "series": "Series",
174
- "xyValues": "X Y Values",
175
- "paired": "Paired Mode",
176
- "axis": "Axis",
177
- "color": "Color",
178
- "thickness": "Thickness",
179
- "xType": "X Type",
180
- "automatic": "Automatic",
181
- "category": "Category",
182
- "number": "Number",
183
- "time": "Time",
184
- "xRotation": "X Rotation",
185
- "yRotation": "Y Rotation",
186
- "ticks": "Ticks",
187
- "width": "Width",
188
- "length": "Length",
189
- "padding": "Padding",
190
- "chart": "Chart",
191
- "title": "Title",
192
- "background": "Background",
193
- "font": "Font",
194
- "top": "Top",
195
- "right": "Right",
196
- "bottom": "Bottom",
197
- "left": "Left",
198
- "labels": "Labels",
199
- "size": "Size",
200
- "minSize": "Minimum Size",
201
- "maxSize": "Maximum Size",
202
- "legend": "Legend",
203
- "position": "Position",
204
- "markerSize": "Marker Size",
205
- "markerStroke": "Marker Stroke",
206
- "markerPadding": "Marker Padding",
207
- "itemPaddingX": "Item Padding X",
208
- "itemPaddingY": "Item Padding Y",
209
- "strokeWidth": "Stroke Width",
210
- "offset": "Offset",
211
- "offsets": "Offsets",
212
- "tooltips": "Tooltips",
213
- "callout": "Callout",
214
- "markers": "Markers",
215
- "shadow": "Shadow",
216
- "blur": "Blur",
217
- "xOffset": "X Offset",
218
- "yOffset": "Y Offset",
219
- "lineWidth": "Line Width",
220
- "normal": "Normal",
221
- "bold": "Bold",
222
- "italic": "Italic",
223
- "boldItalic": "Bold Italic",
224
- "predefined": "Predefined",
225
- "fillOpacity": "Fill Opacity",
226
- "strokeOpacity": "Line Opacity",
227
- "histogramBinCount": "Bin Count",
228
- "columnGroup": "Column",
229
- "barGroup": "Bar",
230
- "pieGroup": "Pie",
231
- "lineGroup": "Line",
232
- "scatterGroup": "Scatter",
233
- "areaGroup": "Area",
234
- "histogramGroup": "Histogram",
235
- "groupedColumnTooltip": "Grouped",
236
- "stackedColumnTooltip": "Stacked",
237
- "normalizedColumnTooltip": "100% Stacked",
238
- "groupedBarTooltip": "Grouped",
239
- "stackedBarTooltip": "Stacked",
240
- "pieTooltip": "Pie",
241
- "doughnutTooltip": "Doughnut",
242
- "lineTooltip": "Line",
243
- "groupedAreaTooltip": "Grouped",
244
- "stackedAreaTooltip": "Stacked",
245
- "scatterTooltip": "Scatter",
246
- "bubbleTooltip": "Bubble",
247
- "histogramTooltip": "Histogram"
248
- }
249
- }