@wavemaker-ai/app-ng-runtime 1.0.0-next.27766

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 (1846) hide show
  1. package/build-task/.npmignore +2 -0
  2. package/build-task/bundles/index.umd.js +3078 -0
  3. package/build-task/fesm2022/index.mjs +2966 -0
  4. package/build-task/fesm2022/index.mjs.map +1 -0
  5. package/build-task/index.d.ts +882 -0
  6. package/build-task/package.json +23 -0
  7. package/components/advanced/carousel/.npmignore +2 -0
  8. package/components/advanced/carousel/bundles/index.umd.js +352 -0
  9. package/components/advanced/carousel/fesm2022/index.mjs +335 -0
  10. package/components/advanced/carousel/fesm2022/index.mjs.map +1 -0
  11. package/components/advanced/carousel/index.d.ts +89 -0
  12. package/components/advanced/carousel/package.json +18 -0
  13. package/components/advanced/custom/.npmignore +2 -0
  14. package/components/advanced/custom/bundles/index.umd.js +258 -0
  15. package/components/advanced/custom/fesm2022/index.mjs +244 -0
  16. package/components/advanced/custom/fesm2022/index.mjs.map +1 -0
  17. package/components/advanced/custom/index.d.ts +50 -0
  18. package/components/advanced/custom/package.json +18 -0
  19. package/components/advanced/login/.npmignore +2 -0
  20. package/components/advanced/login/bundles/index.umd.js +135 -0
  21. package/components/advanced/login/fesm2022/index.mjs +120 -0
  22. package/components/advanced/login/fesm2022/index.mjs.map +1 -0
  23. package/components/advanced/login/index.d.ts +34 -0
  24. package/components/advanced/login/package.json +18 -0
  25. package/components/advanced/marquee/.npmignore +2 -0
  26. package/components/advanced/marquee/bundles/index.umd.js +71 -0
  27. package/components/advanced/marquee/fesm2022/index.mjs +53 -0
  28. package/components/advanced/marquee/fesm2022/index.mjs.map +1 -0
  29. package/components/advanced/marquee/index.d.ts +12 -0
  30. package/components/advanced/marquee/package.json +18 -0
  31. package/components/base/.npmignore +2 -0
  32. package/components/base/bundles/index.umd.js +6360 -0
  33. package/components/base/fesm2022/index.mjs +6235 -0
  34. package/components/base/fesm2022/index.mjs.map +1 -0
  35. package/components/base/index.d.ts +1544 -0
  36. package/components/base/package.json +26 -0
  37. package/components/basic/anchor/.npmignore +2 -0
  38. package/components/basic/anchor/bundles/index.umd.js +203 -0
  39. package/components/basic/anchor/fesm2022/index.mjs +186 -0
  40. package/components/basic/anchor/fesm2022/index.mjs.map +1 -0
  41. package/components/basic/anchor/index.d.ts +41 -0
  42. package/components/basic/anchor/package.json +18 -0
  43. package/components/basic/audio/.npmignore +2 -0
  44. package/components/basic/audio/bundles/index.umd.js +83 -0
  45. package/components/basic/audio/fesm2022/index.mjs +65 -0
  46. package/components/basic/audio/fesm2022/index.mjs.map +1 -0
  47. package/components/basic/audio/index.d.ts +23 -0
  48. package/components/basic/audio/package.json +18 -0
  49. package/components/basic/html/.npmignore +2 -0
  50. package/components/basic/html/bundles/index.umd.js +122 -0
  51. package/components/basic/html/fesm2022/index.mjs +105 -0
  52. package/components/basic/html/fesm2022/index.mjs.map +1 -0
  53. package/components/basic/html/index.d.ts +17 -0
  54. package/components/basic/html/package.json +18 -0
  55. package/components/basic/icon/.npmignore +2 -0
  56. package/components/basic/icon/bundles/index.umd.js +80 -0
  57. package/components/basic/icon/fesm2022/index.mjs +62 -0
  58. package/components/basic/icon/fesm2022/index.mjs.map +1 -0
  59. package/components/basic/icon/index.d.ts +19 -0
  60. package/components/basic/icon/package.json +18 -0
  61. package/components/basic/iframe/.npmignore +2 -0
  62. package/components/basic/iframe/bundles/index.umd.js +101 -0
  63. package/components/basic/iframe/fesm2022/index.mjs +84 -0
  64. package/components/basic/iframe/fesm2022/index.mjs.map +1 -0
  65. package/components/basic/iframe/index.d.ts +29 -0
  66. package/components/basic/iframe/package.json +18 -0
  67. package/components/basic/label/.npmignore +2 -0
  68. package/components/basic/label/bundles/index.umd.js +129 -0
  69. package/components/basic/label/fesm2022/index.mjs +113 -0
  70. package/components/basic/label/fesm2022/index.mjs.map +1 -0
  71. package/components/basic/label/index.d.ts +15 -0
  72. package/components/basic/label/package.json +18 -0
  73. package/components/basic/picture/.npmignore +2 -0
  74. package/components/basic/picture/bundles/index.umd.js +138 -0
  75. package/components/basic/picture/fesm2022/index.mjs +121 -0
  76. package/components/basic/picture/fesm2022/index.mjs.map +1 -0
  77. package/components/basic/picture/index.d.ts +22 -0
  78. package/components/basic/picture/package.json +18 -0
  79. package/components/basic/progress/progress-bar/.npmignore +2 -0
  80. package/components/basic/progress/progress-bar/bundles/index.umd.js +170 -0
  81. package/components/basic/progress/progress-bar/fesm2022/index.mjs +154 -0
  82. package/components/basic/progress/progress-bar/fesm2022/index.mjs.map +1 -0
  83. package/components/basic/progress/progress-bar/index.d.ts +45 -0
  84. package/components/basic/progress/progress-bar/package.json +18 -0
  85. package/components/basic/progress/progress-circle/.npmignore +2 -0
  86. package/components/basic/progress/progress-circle/bundles/index.umd.js +171 -0
  87. package/components/basic/progress/progress-circle/fesm2022/index.mjs +155 -0
  88. package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -0
  89. package/components/basic/progress/progress-circle/index.d.ts +43 -0
  90. package/components/basic/progress/progress-circle/package.json +18 -0
  91. package/components/basic/progress/progress-utils/.npmignore +2 -0
  92. package/components/basic/progress/progress-utils/bundles/index.umd.js +35 -0
  93. package/components/basic/progress/progress-utils/fesm2022/index.mjs +32 -0
  94. package/components/basic/progress/progress-utils/fesm2022/index.mjs.map +1 -0
  95. package/components/basic/progress/progress-utils/index.d.ts +5 -0
  96. package/components/basic/progress/progress-utils/package.json +18 -0
  97. package/components/basic/rich-text-editor/.npmignore +2 -0
  98. package/components/basic/rich-text-editor/bundles/index.umd.js +236 -0
  99. package/components/basic/rich-text-editor/fesm2022/index.mjs +222 -0
  100. package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -0
  101. package/components/basic/rich-text-editor/index.d.ts +58 -0
  102. package/components/basic/rich-text-editor/package.json +18 -0
  103. package/components/basic/search/.npmignore +2 -0
  104. package/components/basic/search/bundles/index.umd.js +1094 -0
  105. package/components/basic/search/fesm2022/index.mjs +1083 -0
  106. package/components/basic/search/fesm2022/index.mjs.map +1 -0
  107. package/components/basic/search/index.d.ts +128 -0
  108. package/components/basic/search/package.json +18 -0
  109. package/components/basic/spinner/.npmignore +2 -0
  110. package/components/basic/spinner/bundles/index.umd.js +128 -0
  111. package/components/basic/spinner/fesm2022/index.mjs +113 -0
  112. package/components/basic/spinner/fesm2022/index.mjs.map +1 -0
  113. package/components/basic/spinner/index.d.ts +31 -0
  114. package/components/basic/spinner/package.json +18 -0
  115. package/components/basic/tree/.npmignore +2 -0
  116. package/components/basic/tree/bundles/index.umd.js +767 -0
  117. package/components/basic/tree/fesm2022/index.mjs +751 -0
  118. package/components/basic/tree/fesm2022/index.mjs.map +1 -0
  119. package/components/basic/tree/index.d.ts +97 -0
  120. package/components/basic/tree/package.json +18 -0
  121. package/components/basic/video/.npmignore +2 -0
  122. package/components/basic/video/bundles/index.umd.js +116 -0
  123. package/components/basic/video/fesm2022/index.mjs +99 -0
  124. package/components/basic/video/fesm2022/index.mjs.map +1 -0
  125. package/components/basic/video/index.d.ts +30 -0
  126. package/components/basic/video/package.json +18 -0
  127. package/components/chart/.npmignore +2 -0
  128. package/components/chart/bundles/index.umd.js +1748 -0
  129. package/components/chart/fesm2022/index.mjs +1775 -0
  130. package/components/chart/fesm2022/index.mjs.map +1 -0
  131. package/components/chart/index.d.ts +104 -0
  132. package/components/chart/package.json +18 -0
  133. package/components/containers/accordion/.npmignore +2 -0
  134. package/components/containers/accordion/bundles/index.umd.js +501 -0
  135. package/components/containers/accordion/fesm2022/index.mjs +487 -0
  136. package/components/containers/accordion/fesm2022/index.mjs.map +1 -0
  137. package/components/containers/accordion/index.d.ts +115 -0
  138. package/components/containers/accordion/package.json +18 -0
  139. package/components/containers/layout-grid/.npmignore +2 -0
  140. package/components/containers/layout-grid/bundles/index.umd.js +172 -0
  141. package/components/containers/layout-grid/fesm2022/index.mjs +153 -0
  142. package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -0
  143. package/components/containers/layout-grid/index.d.ts +29 -0
  144. package/components/containers/layout-grid/package.json +18 -0
  145. package/components/containers/linear-layout/.npmignore +2 -0
  146. package/components/containers/linear-layout/bundles/index.umd.js +186 -0
  147. package/components/containers/linear-layout/fesm2022/index.mjs +167 -0
  148. package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -0
  149. package/components/containers/linear-layout/index.d.ts +27 -0
  150. package/components/containers/linear-layout/package.json +18 -0
  151. package/components/containers/panel/.npmignore +2 -0
  152. package/components/containers/panel/bundles/index.umd.js +223 -0
  153. package/components/containers/panel/fesm2022/index.mjs +210 -0
  154. package/components/containers/panel/fesm2022/index.mjs.map +1 -0
  155. package/components/containers/panel/index.d.ts +49 -0
  156. package/components/containers/panel/package.json +18 -0
  157. package/components/containers/tabs/.npmignore +2 -0
  158. package/components/containers/tabs/bundles/index.umd.js +789 -0
  159. package/components/containers/tabs/fesm2022/index.mjs +776 -0
  160. package/components/containers/tabs/fesm2022/index.mjs.map +1 -0
  161. package/components/containers/tabs/index.d.ts +127 -0
  162. package/components/containers/tabs/package.json +18 -0
  163. package/components/containers/tile/.npmignore +2 -0
  164. package/components/containers/tile/bundles/index.umd.js +68 -0
  165. package/components/containers/tile/fesm2022/index.mjs +50 -0
  166. package/components/containers/tile/fesm2022/index.mjs.map +1 -0
  167. package/components/containers/tile/index.d.ts +12 -0
  168. package/components/containers/tile/package.json +18 -0
  169. package/components/containers/wizard/.npmignore +2 -0
  170. package/components/containers/wizard/bundles/index.umd.js +1076 -0
  171. package/components/containers/wizard/fesm2022/index.mjs +1060 -0
  172. package/components/containers/wizard/fesm2022/index.mjs.map +1 -0
  173. package/components/containers/wizard/index.d.ts +259 -0
  174. package/components/containers/wizard/package.json +18 -0
  175. package/components/data/card/.npmignore +2 -0
  176. package/components/data/card/bundles/index.umd.js +237 -0
  177. package/components/data/card/fesm2022/index.mjs +220 -0
  178. package/components/data/card/fesm2022/index.mjs.map +1 -0
  179. package/components/data/card/index.d.ts +51 -0
  180. package/components/data/card/package.json +18 -0
  181. package/components/data/form/.npmignore +2 -0
  182. package/components/data/form/bundles/index.umd.js +3345 -0
  183. package/components/data/form/fesm2022/index.mjs +3333 -0
  184. package/components/data/form/fesm2022/index.mjs.map +1 -0
  185. package/components/data/form/index.d.ts +489 -0
  186. package/components/data/form/package.json +18 -0
  187. package/components/data/list/.npmignore +2 -0
  188. package/components/data/list/bundles/index.umd.js +1612 -0
  189. package/components/data/list/fesm2022/index.mjs +1604 -0
  190. package/components/data/list/fesm2022/index.mjs.map +1 -0
  191. package/components/data/list/index.d.ts +285 -0
  192. package/components/data/list/package.json +18 -0
  193. package/components/data/live-table/.npmignore +2 -0
  194. package/components/data/live-table/bundles/index.umd.js +283 -0
  195. package/components/data/live-table/fesm2022/index.mjs +268 -0
  196. package/components/data/live-table/fesm2022/index.mjs.map +1 -0
  197. package/components/data/live-table/index.d.ts +39 -0
  198. package/components/data/live-table/package.json +18 -0
  199. package/components/data/pagination/.npmignore +2 -0
  200. package/components/data/pagination/bundles/index.umd.js +888 -0
  201. package/components/data/pagination/fesm2022/index.mjs +883 -0
  202. package/components/data/pagination/fesm2022/index.mjs.map +1 -0
  203. package/components/data/pagination/index.d.ts +106 -0
  204. package/components/data/pagination/package.json +18 -0
  205. package/components/data/table/.npmignore +2 -0
  206. package/components/data/table/bundles/index.umd.js +5027 -0
  207. package/components/data/table/fesm2022/index.mjs +5014 -0
  208. package/components/data/table/fesm2022/index.mjs.map +1 -0
  209. package/components/data/table/index.d.ts +745 -0
  210. package/components/data/table/package.json +18 -0
  211. package/components/dialogs/alert-dialog/.npmignore +2 -0
  212. package/components/dialogs/alert-dialog/bundles/index.umd.js +126 -0
  213. package/components/dialogs/alert-dialog/fesm2022/index.mjs +114 -0
  214. package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -0
  215. package/components/dialogs/alert-dialog/index.d.ts +26 -0
  216. package/components/dialogs/alert-dialog/package.json +18 -0
  217. package/components/dialogs/confirm-dialog/.npmignore +2 -0
  218. package/components/dialogs/confirm-dialog/bundles/index.umd.js +129 -0
  219. package/components/dialogs/confirm-dialog/fesm2022/index.mjs +117 -0
  220. package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -0
  221. package/components/dialogs/confirm-dialog/index.d.ts +29 -0
  222. package/components/dialogs/confirm-dialog/package.json +18 -0
  223. package/components/dialogs/default/.npmignore +2 -0
  224. package/components/dialogs/default/bundles/index.umd.js +380 -0
  225. package/components/dialogs/default/fesm2022/index.mjs +363 -0
  226. package/components/dialogs/default/fesm2022/index.mjs.map +1 -0
  227. package/components/dialogs/default/index.d.ts +89 -0
  228. package/components/dialogs/default/package.json +18 -0
  229. package/components/dialogs/design-dialog/.npmignore +2 -0
  230. package/components/dialogs/design-dialog/bundles/index.umd.js +150 -0
  231. package/components/dialogs/design-dialog/fesm2022/index.mjs +135 -0
  232. package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -0
  233. package/components/dialogs/design-dialog/index.d.ts +20 -0
  234. package/components/dialogs/design-dialog/package.json +18 -0
  235. package/components/dialogs/iframe-dialog/.npmignore +2 -0
  236. package/components/dialogs/iframe-dialog/bundles/index.umd.js +119 -0
  237. package/components/dialogs/iframe-dialog/fesm2022/index.mjs +108 -0
  238. package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -0
  239. package/components/dialogs/iframe-dialog/index.d.ts +22 -0
  240. package/components/dialogs/iframe-dialog/package.json +18 -0
  241. package/components/dialogs/login-dialog/.npmignore +2 -0
  242. package/components/dialogs/login-dialog/bundles/index.umd.js +114 -0
  243. package/components/dialogs/login-dialog/fesm2022/index.mjs +98 -0
  244. package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -0
  245. package/components/dialogs/login-dialog/index.d.ts +26 -0
  246. package/components/dialogs/login-dialog/package.json +18 -0
  247. package/components/dialogs/partial-dialog/.npmignore +2 -0
  248. package/components/dialogs/partial-dialog/bundles/index.umd.js +157 -0
  249. package/components/dialogs/partial-dialog/fesm2022/index.mjs +146 -0
  250. package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -0
  251. package/components/dialogs/partial-dialog/index.d.ts +32 -0
  252. package/components/dialogs/partial-dialog/package.json +18 -0
  253. package/components/input/base-form/.npmignore +2 -0
  254. package/components/input/base-form/bundles/index.umd.js +147 -0
  255. package/components/input/base-form/fesm2022/index.mjs +131 -0
  256. package/components/input/base-form/fesm2022/index.mjs.map +1 -0
  257. package/components/input/base-form/index.d.ts +29 -0
  258. package/components/input/base-form/package.json +18 -0
  259. package/components/input/base-form-custom/.npmignore +2 -0
  260. package/components/input/base-form-custom/bundles/index.umd.js +129 -0
  261. package/components/input/base-form-custom/fesm2022/index.mjs +112 -0
  262. package/components/input/base-form-custom/fesm2022/index.mjs.map +1 -0
  263. package/components/input/base-form-custom/index.d.ts +26 -0
  264. package/components/input/base-form-custom/package.json +18 -0
  265. package/components/input/button/.npmignore +2 -0
  266. package/components/input/button/bundles/index.umd.js +97 -0
  267. package/components/input/button/fesm2022/index.mjs +80 -0
  268. package/components/input/button/fesm2022/index.mjs.map +1 -0
  269. package/components/input/button/index.d.ts +25 -0
  270. package/components/input/button/package.json +18 -0
  271. package/components/input/button-group/.npmignore +2 -0
  272. package/components/input/button-group/bundles/index.umd.js +80 -0
  273. package/components/input/button-group/fesm2022/index.mjs +62 -0
  274. package/components/input/button-group/fesm2022/index.mjs.map +1 -0
  275. package/components/input/button-group/index.d.ts +14 -0
  276. package/components/input/button-group/package.json +18 -0
  277. package/components/input/calendar/.npmignore +2 -0
  278. package/components/input/calendar/bundles/index.umd.js +655 -0
  279. package/components/input/calendar/fesm2022/index.mjs +665 -0
  280. package/components/input/calendar/fesm2022/index.mjs.map +1 -0
  281. package/components/input/calendar/index.d.ts +131 -0
  282. package/components/input/calendar/package.json +18 -0
  283. package/components/input/caption-position/.npmignore +2 -0
  284. package/components/input/caption-position/bundles/index.umd.js +196 -0
  285. package/components/input/caption-position/fesm2022/index.mjs +178 -0
  286. package/components/input/caption-position/fesm2022/index.mjs.map +1 -0
  287. package/components/input/caption-position/index.d.ts +34 -0
  288. package/components/input/caption-position/package.json +18 -0
  289. package/components/input/checkbox/.npmignore +2 -0
  290. package/components/input/checkbox/bundles/index.umd.js +208 -0
  291. package/components/input/checkbox/fesm2022/index.mjs +193 -0
  292. package/components/input/checkbox/fesm2022/index.mjs.map +1 -0
  293. package/components/input/checkbox/index.d.ts +41 -0
  294. package/components/input/checkbox/package.json +18 -0
  295. package/components/input/checkboxset/.npmignore +2 -0
  296. package/components/input/checkboxset/bundles/index.umd.js +178 -0
  297. package/components/input/checkboxset/fesm2022/index.mjs +165 -0
  298. package/components/input/checkboxset/fesm2022/index.mjs.map +1 -0
  299. package/components/input/checkboxset/index.d.ts +27 -0
  300. package/components/input/checkboxset/package.json +18 -0
  301. package/components/input/chips/.npmignore +2 -0
  302. package/components/input/chips/bundles/index.umd.js +741 -0
  303. package/components/input/chips/fesm2022/index.mjs +729 -0
  304. package/components/input/chips/fesm2022/index.mjs.map +1 -0
  305. package/components/input/chips/index.d.ts +90 -0
  306. package/components/input/chips/package.json +18 -0
  307. package/components/input/color-picker/.npmignore +2 -0
  308. package/components/input/color-picker/bundles/index.umd.js +145 -0
  309. package/components/input/color-picker/fesm2022/index.mjs +132 -0
  310. package/components/input/color-picker/fesm2022/index.mjs.map +1 -0
  311. package/components/input/color-picker/index.d.ts +36 -0
  312. package/components/input/color-picker/package.json +18 -0
  313. package/components/input/composite/.npmignore +2 -0
  314. package/components/input/composite/bundles/index.umd.js +120 -0
  315. package/components/input/composite/fesm2022/index.mjs +103 -0
  316. package/components/input/composite/fesm2022/index.mjs.map +1 -0
  317. package/components/input/composite/index.d.ts +27 -0
  318. package/components/input/composite/package.json +18 -0
  319. package/components/input/currency/.npmignore +2 -0
  320. package/components/input/currency/bundles/index.umd.js +112 -0
  321. package/components/input/currency/fesm2022/index.mjs +97 -0
  322. package/components/input/currency/fesm2022/index.mjs.map +1 -0
  323. package/components/input/currency/index.d.ts +31 -0
  324. package/components/input/currency/package.json +18 -0
  325. package/components/input/dataset-aware-form/.npmignore +2 -0
  326. package/components/input/dataset-aware-form/bundles/index.umd.js +354 -0
  327. package/components/input/dataset-aware-form/fesm2022/index.mjs +340 -0
  328. package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -0
  329. package/components/input/dataset-aware-form/index.d.ts +80 -0
  330. package/components/input/dataset-aware-form/package.json +18 -0
  331. package/components/input/epoch/base-date-time/.npmignore +2 -0
  332. package/components/input/epoch/base-date-time/bundles/index.umd.js +1093 -0
  333. package/components/input/epoch/base-date-time/fesm2022/index.mjs +1084 -0
  334. package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -0
  335. package/components/input/epoch/base-date-time/index.d.ts +249 -0
  336. package/components/input/epoch/base-date-time/package.json +18 -0
  337. package/components/input/epoch/date/.npmignore +2 -0
  338. package/components/input/epoch/date/bundles/index.umd.js +515 -0
  339. package/components/input/epoch/date/fesm2022/index.mjs +505 -0
  340. package/components/input/epoch/date/fesm2022/index.mjs.map +1 -0
  341. package/components/input/epoch/date/index.d.ts +64 -0
  342. package/components/input/epoch/date/package.json +18 -0
  343. package/components/input/epoch/date-time/.npmignore +2 -0
  344. package/components/input/epoch/date-time/bundles/index.umd.js +519 -0
  345. package/components/input/epoch/date-time/fesm2022/index.mjs +510 -0
  346. package/components/input/epoch/date-time/fesm2022/index.mjs.map +1 -0
  347. package/components/input/epoch/date-time/index.d.ts +112 -0
  348. package/components/input/epoch/date-time/package.json +18 -0
  349. package/components/input/epoch/date-time-picker/.npmignore +2 -0
  350. package/components/input/epoch/date-time-picker/bundles/index.umd.js +453 -0
  351. package/components/input/epoch/date-time-picker/fesm2022/index.mjs +439 -0
  352. package/components/input/epoch/date-time-picker/fesm2022/index.mjs.map +1 -0
  353. package/components/input/epoch/date-time-picker/index.d.ts +83 -0
  354. package/components/input/epoch/date-time-picker/package.json +18 -0
  355. package/components/input/epoch/picker/.npmignore +2 -0
  356. package/components/input/epoch/picker/bundles/index.umd.js +192 -0
  357. package/components/input/epoch/picker/fesm2022/index.mjs +172 -0
  358. package/components/input/epoch/picker/fesm2022/index.mjs.map +1 -0
  359. package/components/input/epoch/picker/index.d.ts +39 -0
  360. package/components/input/epoch/picker/package.json +18 -0
  361. package/components/input/epoch/time/.npmignore +2 -0
  362. package/components/input/epoch/time/bundles/index.umd.js +401 -0
  363. package/components/input/epoch/time/fesm2022/index.mjs +391 -0
  364. package/components/input/epoch/time/fesm2022/index.mjs.map +1 -0
  365. package/components/input/epoch/time/index.d.ts +108 -0
  366. package/components/input/epoch/time/package.json +18 -0
  367. package/components/input/file-upload/.npmignore +2 -0
  368. package/components/input/file-upload/bundles/index.umd.js +485 -0
  369. package/components/input/file-upload/fesm2022/index.mjs +471 -0
  370. package/components/input/file-upload/fesm2022/index.mjs.map +1 -0
  371. package/components/input/file-upload/index.d.ts +109 -0
  372. package/components/input/file-upload/package.json +18 -0
  373. package/components/input/number/.npmignore +2 -0
  374. package/components/input/number/bundles/index.umd.js +109 -0
  375. package/components/input/number/fesm2022/index.mjs +95 -0
  376. package/components/input/number/fesm2022/index.mjs.map +1 -0
  377. package/components/input/number/index.d.ts +29 -0
  378. package/components/input/number/package.json +18 -0
  379. package/components/input/radioset/.npmignore +2 -0
  380. package/components/input/radioset/bundles/index.umd.js +164 -0
  381. package/components/input/radioset/fesm2022/index.mjs +151 -0
  382. package/components/input/radioset/fesm2022/index.mjs.map +1 -0
  383. package/components/input/radioset/index.d.ts +26 -0
  384. package/components/input/radioset/package.json +18 -0
  385. package/components/input/rating/.npmignore +2 -0
  386. package/components/input/rating/bundles/index.umd.js +276 -0
  387. package/components/input/rating/fesm2022/index.mjs +263 -0
  388. package/components/input/rating/fesm2022/index.mjs.map +1 -0
  389. package/components/input/rating/index.d.ts +53 -0
  390. package/components/input/rating/package.json +18 -0
  391. package/components/input/select/.npmignore +2 -0
  392. package/components/input/select/bundles/index.umd.js +225 -0
  393. package/components/input/select/fesm2022/index.mjs +211 -0
  394. package/components/input/select/fesm2022/index.mjs.map +1 -0
  395. package/components/input/select/index.d.ts +39 -0
  396. package/components/input/select/package.json +18 -0
  397. package/components/input/slider/.npmignore +2 -0
  398. package/components/input/slider/bundles/index.umd.js +205 -0
  399. package/components/input/slider/fesm2022/index.mjs +191 -0
  400. package/components/input/slider/fesm2022/index.mjs.map +1 -0
  401. package/components/input/slider/index.d.ts +44 -0
  402. package/components/input/slider/package.json +18 -0
  403. package/components/input/switch/.npmignore +2 -0
  404. package/components/input/switch/bundles/index.umd.js +227 -0
  405. package/components/input/switch/fesm2022/index.mjs +214 -0
  406. package/components/input/switch/fesm2022/index.mjs.map +1 -0
  407. package/components/input/switch/index.d.ts +35 -0
  408. package/components/input/switch/package.json +18 -0
  409. package/components/input/text/.npmignore +2 -0
  410. package/components/input/text/bundles/index.umd.js +1132 -0
  411. package/components/input/text/fesm2022/index.mjs +1116 -0
  412. package/components/input/text/fesm2022/index.mjs.map +1 -0
  413. package/components/input/text/index.d.ts +318 -0
  414. package/components/input/text/package.json +18 -0
  415. package/components/input/textarea/.npmignore +2 -0
  416. package/components/input/textarea/bundles/index.umd.js +108 -0
  417. package/components/input/textarea/fesm2022/index.mjs +94 -0
  418. package/components/input/textarea/fesm2022/index.mjs.map +1 -0
  419. package/components/input/textarea/index.d.ts +33 -0
  420. package/components/input/textarea/package.json +18 -0
  421. package/components/navigation/breadcrumb/.npmignore +2 -0
  422. package/components/navigation/breadcrumb/bundles/index.umd.js +138 -0
  423. package/components/navigation/breadcrumb/fesm2022/index.mjs +121 -0
  424. package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -0
  425. package/components/navigation/breadcrumb/index.d.ts +28 -0
  426. package/components/navigation/breadcrumb/package.json +18 -0
  427. package/components/navigation/menu/.npmignore +2 -0
  428. package/components/navigation/menu/bundles/index.umd.js +948 -0
  429. package/components/navigation/menu/fesm2022/index.mjs +930 -0
  430. package/components/navigation/menu/fesm2022/index.mjs.map +1 -0
  431. package/components/navigation/menu/index.d.ts +190 -0
  432. package/components/navigation/menu/package.json +18 -0
  433. package/components/navigation/navbar/.npmignore +2 -0
  434. package/components/navigation/navbar/bundles/index.umd.js +87 -0
  435. package/components/navigation/navbar/fesm2022/index.mjs +70 -0
  436. package/components/navigation/navbar/fesm2022/index.mjs.map +1 -0
  437. package/components/navigation/navbar/index.d.ts +20 -0
  438. package/components/navigation/navbar/package.json +18 -0
  439. package/components/navigation/popover/.npmignore +2 -0
  440. package/components/navigation/popover/bundles/index.umd.js +527 -0
  441. package/components/navigation/popover/fesm2022/index.mjs +513 -0
  442. package/components/navigation/popover/fesm2022/index.mjs.map +1 -0
  443. package/components/navigation/popover/index.d.ts +86 -0
  444. package/components/navigation/popover/package.json +18 -0
  445. package/components/page/default/.npmignore +2 -0
  446. package/components/page/default/bundles/index.umd.js +459 -0
  447. package/components/page/default/fesm2022/index.mjs +439 -0
  448. package/components/page/default/fesm2022/index.mjs.map +1 -0
  449. package/components/page/default/index.d.ts +124 -0
  450. package/components/page/default/package.json +18 -0
  451. package/components/page/footer/.npmignore +2 -0
  452. package/components/page/footer/bundles/index.umd.js +71 -0
  453. package/components/page/footer/fesm2022/index.mjs +53 -0
  454. package/components/page/footer/fesm2022/index.mjs.map +1 -0
  455. package/components/page/footer/index.d.ts +12 -0
  456. package/components/page/footer/package.json +18 -0
  457. package/components/page/header/.npmignore +2 -0
  458. package/components/page/header/bundles/index.umd.js +67 -0
  459. package/components/page/header/fesm2022/index.mjs +49 -0
  460. package/components/page/header/fesm2022/index.mjs.map +1 -0
  461. package/components/page/header/index.d.ts +13 -0
  462. package/components/page/header/package.json +18 -0
  463. package/components/page/left-panel/.npmignore +2 -0
  464. package/components/page/left-panel/bundles/index.umd.js +415 -0
  465. package/components/page/left-panel/fesm2022/index.mjs +400 -0
  466. package/components/page/left-panel/fesm2022/index.mjs.map +1 -0
  467. package/components/page/left-panel/index.d.ts +41 -0
  468. package/components/page/left-panel/package.json +18 -0
  469. package/components/page/right-panel/.npmignore +2 -0
  470. package/components/page/right-panel/bundles/index.umd.js +86 -0
  471. package/components/page/right-panel/fesm2022/index.mjs +69 -0
  472. package/components/page/right-panel/fesm2022/index.mjs.map +1 -0
  473. package/components/page/right-panel/index.d.ts +13 -0
  474. package/components/page/right-panel/package.json +18 -0
  475. package/components/page/top-nav/.npmignore +2 -0
  476. package/components/page/top-nav/bundles/index.umd.js +68 -0
  477. package/components/page/top-nav/fesm2022/index.mjs +50 -0
  478. package/components/page/top-nav/fesm2022/index.mjs.map +1 -0
  479. package/components/page/top-nav/index.d.ts +12 -0
  480. package/components/page/top-nav/package.json +18 -0
  481. package/components/prefab/.npmignore +2 -0
  482. package/components/prefab/bundles/index.umd.js +176 -0
  483. package/components/prefab/fesm2022/index.mjs +159 -0
  484. package/components/prefab/fesm2022/index.mjs.map +1 -0
  485. package/components/prefab/index.d.ts +33 -0
  486. package/components/prefab/package.json +18 -0
  487. package/core/.npmignore +2 -0
  488. package/core/bundles/index.umd.js +5627 -0
  489. package/core/fesm2022/index.mjs +5475 -0
  490. package/core/fesm2022/index.mjs.map +1 -0
  491. package/core/index.d.ts +2143 -0
  492. package/core/package.json +24 -0
  493. package/http/.npmignore +2 -0
  494. package/http/bundles/index.umd.js +421 -0
  495. package/http/fesm2022/index.mjs +405 -0
  496. package/http/fesm2022/index.mjs.map +1 -0
  497. package/http/index.d.ts +120 -0
  498. package/http/package.json +23 -0
  499. package/locales/angular/af-na.js +17 -0
  500. package/locales/angular/af.js +17 -0
  501. package/locales/angular/agq.js +15 -0
  502. package/locales/angular/ak.js +17 -0
  503. package/locales/angular/am.js +17 -0
  504. package/locales/angular/ar-ae.js +25 -0
  505. package/locales/angular/ar-bh.js +25 -0
  506. package/locales/angular/ar-dj.js +25 -0
  507. package/locales/angular/ar-dz.js +25 -0
  508. package/locales/angular/ar-eg.js +25 -0
  509. package/locales/angular/ar-eh.js +25 -0
  510. package/locales/angular/ar-er.js +25 -0
  511. package/locales/angular/ar-il.js +25 -0
  512. package/locales/angular/ar-iq.js +25 -0
  513. package/locales/angular/ar-jo.js +25 -0
  514. package/locales/angular/ar-km.js +25 -0
  515. package/locales/angular/ar-kw.js +25 -0
  516. package/locales/angular/ar-lb.js +25 -0
  517. package/locales/angular/ar-ly.js +25 -0
  518. package/locales/angular/ar-ma.js +25 -0
  519. package/locales/angular/ar-mr.js +25 -0
  520. package/locales/angular/ar-om.js +25 -0
  521. package/locales/angular/ar-ps.js +25 -0
  522. package/locales/angular/ar-qa.js +25 -0
  523. package/locales/angular/ar-sa.js +25 -0
  524. package/locales/angular/ar-sd.js +25 -0
  525. package/locales/angular/ar-so.js +25 -0
  526. package/locales/angular/ar-ss.js +25 -0
  527. package/locales/angular/ar-sy.js +25 -0
  528. package/locales/angular/ar-td.js +25 -0
  529. package/locales/angular/ar-tn.js +25 -0
  530. package/locales/angular/ar-ye.js +25 -0
  531. package/locales/angular/ar.js +25 -0
  532. package/locales/angular/as.js +17 -0
  533. package/locales/angular/asa.js +17 -0
  534. package/locales/angular/ast.js +17 -0
  535. package/locales/angular/az-cyrl.js +15 -0
  536. package/locales/angular/az-latn.js +17 -0
  537. package/locales/angular/az.js +17 -0
  538. package/locales/angular/bas.js +15 -0
  539. package/locales/angular/be-tarask.js +21 -0
  540. package/locales/angular/be.js +21 -0
  541. package/locales/angular/bem.js +17 -0
  542. package/locales/angular/bez.js +17 -0
  543. package/locales/angular/bg.js +17 -0
  544. package/locales/angular/bm.js +15 -0
  545. package/locales/angular/bn-in.js +17 -0
  546. package/locales/angular/bn.js +17 -0
  547. package/locales/angular/bo-in.js +15 -0
  548. package/locales/angular/bo.js +15 -0
  549. package/locales/angular/br.js +23 -0
  550. package/locales/angular/brx.js +17 -0
  551. package/locales/angular/bs-cyrl.js +15 -0
  552. package/locales/angular/bs-latn.js +19 -0
  553. package/locales/angular/bs.js +19 -0
  554. package/locales/angular/ca-ad.js +17 -0
  555. package/locales/angular/ca-es-valencia.js +17 -0
  556. package/locales/angular/ca-fr.js +17 -0
  557. package/locales/angular/ca-it.js +17 -0
  558. package/locales/angular/ca.js +17 -0
  559. package/locales/angular/ccp-in.js +15 -0
  560. package/locales/angular/ccp.js +15 -0
  561. package/locales/angular/ce.js +17 -0
  562. package/locales/angular/ceb.js +17 -0
  563. package/locales/angular/cgg.js +17 -0
  564. package/locales/angular/chr.js +17 -0
  565. package/locales/angular/ckb-ir.js +17 -0
  566. package/locales/angular/ckb.js +17 -0
  567. package/locales/angular/cs.js +21 -0
  568. package/locales/angular/cy.js +25 -0
  569. package/locales/angular/da-gl.js +17 -0
  570. package/locales/angular/da.js +17 -0
  571. package/locales/angular/dav.js +15 -0
  572. package/locales/angular/de-at.js +17 -0
  573. package/locales/angular/de-be.js +17 -0
  574. package/locales/angular/de-ch.js +17 -0
  575. package/locales/angular/de-it.js +17 -0
  576. package/locales/angular/de-li.js +17 -0
  577. package/locales/angular/de-lu.js +17 -0
  578. package/locales/angular/de.js +17 -0
  579. package/locales/angular/dje.js +15 -0
  580. package/locales/angular/doi.js +17 -0
  581. package/locales/angular/dsb.js +21 -0
  582. package/locales/angular/dua.js +15 -0
  583. package/locales/angular/dyo.js +15 -0
  584. package/locales/angular/dz.js +15 -0
  585. package/locales/angular/ebu.js +15 -0
  586. package/locales/angular/ee-tg.js +17 -0
  587. package/locales/angular/ee.js +17 -0
  588. package/locales/angular/el-cy.js +17 -0
  589. package/locales/angular/el.js +17 -0
  590. package/locales/angular/en-001.js +17 -0
  591. package/locales/angular/en-150.js +17 -0
  592. package/locales/angular/en-ae.js +17 -0
  593. package/locales/angular/en-ag.js +17 -0
  594. package/locales/angular/en-ai.js +17 -0
  595. package/locales/angular/en-as.js +17 -0
  596. package/locales/angular/en-at.js +17 -0
  597. package/locales/angular/en-au.js +17 -0
  598. package/locales/angular/en-bb.js +17 -0
  599. package/locales/angular/en-be.js +17 -0
  600. package/locales/angular/en-bi.js +17 -0
  601. package/locales/angular/en-bm.js +17 -0
  602. package/locales/angular/en-bs.js +17 -0
  603. package/locales/angular/en-bw.js +17 -0
  604. package/locales/angular/en-bz.js +17 -0
  605. package/locales/angular/en-ca.js +17 -0
  606. package/locales/angular/en-cc.js +17 -0
  607. package/locales/angular/en-ch.js +17 -0
  608. package/locales/angular/en-ck.js +17 -0
  609. package/locales/angular/en-cm.js +17 -0
  610. package/locales/angular/en-cx.js +17 -0
  611. package/locales/angular/en-cy.js +17 -0
  612. package/locales/angular/en-de.js +17 -0
  613. package/locales/angular/en-dg.js +17 -0
  614. package/locales/angular/en-dk.js +17 -0
  615. package/locales/angular/en-dm.js +17 -0
  616. package/locales/angular/en-er.js +17 -0
  617. package/locales/angular/en-fi.js +17 -0
  618. package/locales/angular/en-fj.js +17 -0
  619. package/locales/angular/en-fk.js +17 -0
  620. package/locales/angular/en-fm.js +17 -0
  621. package/locales/angular/en-gb.js +17 -0
  622. package/locales/angular/en-gd.js +17 -0
  623. package/locales/angular/en-gg.js +17 -0
  624. package/locales/angular/en-gh.js +17 -0
  625. package/locales/angular/en-gi.js +17 -0
  626. package/locales/angular/en-gm.js +17 -0
  627. package/locales/angular/en-gu.js +17 -0
  628. package/locales/angular/en-gy.js +17 -0
  629. package/locales/angular/en-hk.js +17 -0
  630. package/locales/angular/en-ie.js +17 -0
  631. package/locales/angular/en-il.js +17 -0
  632. package/locales/angular/en-im.js +17 -0
  633. package/locales/angular/en-in.js +17 -0
  634. package/locales/angular/en-io.js +17 -0
  635. package/locales/angular/en-je.js +17 -0
  636. package/locales/angular/en-jm.js +17 -0
  637. package/locales/angular/en-ke.js +17 -0
  638. package/locales/angular/en-ki.js +17 -0
  639. package/locales/angular/en-kn.js +17 -0
  640. package/locales/angular/en-ky.js +17 -0
  641. package/locales/angular/en-lc.js +17 -0
  642. package/locales/angular/en-lr.js +17 -0
  643. package/locales/angular/en-ls.js +17 -0
  644. package/locales/angular/en-mg.js +17 -0
  645. package/locales/angular/en-mh.js +17 -0
  646. package/locales/angular/en-mo.js +17 -0
  647. package/locales/angular/en-mp.js +17 -0
  648. package/locales/angular/en-ms.js +17 -0
  649. package/locales/angular/en-mt.js +17 -0
  650. package/locales/angular/en-mu.js +17 -0
  651. package/locales/angular/en-mv.js +17 -0
  652. package/locales/angular/en-mw.js +17 -0
  653. package/locales/angular/en-my.js +17 -0
  654. package/locales/angular/en-na.js +17 -0
  655. package/locales/angular/en-nf.js +17 -0
  656. package/locales/angular/en-ng.js +17 -0
  657. package/locales/angular/en-nl.js +17 -0
  658. package/locales/angular/en-nr.js +17 -0
  659. package/locales/angular/en-nu.js +17 -0
  660. package/locales/angular/en-nz.js +17 -0
  661. package/locales/angular/en-pg.js +17 -0
  662. package/locales/angular/en-ph.js +17 -0
  663. package/locales/angular/en-pk.js +17 -0
  664. package/locales/angular/en-pn.js +17 -0
  665. package/locales/angular/en-pr.js +17 -0
  666. package/locales/angular/en-pw.js +17 -0
  667. package/locales/angular/en-rw.js +17 -0
  668. package/locales/angular/en-sb.js +17 -0
  669. package/locales/angular/en-sc.js +17 -0
  670. package/locales/angular/en-sd.js +17 -0
  671. package/locales/angular/en-se.js +17 -0
  672. package/locales/angular/en-sg.js +17 -0
  673. package/locales/angular/en-sh.js +17 -0
  674. package/locales/angular/en-si.js +17 -0
  675. package/locales/angular/en-sl.js +17 -0
  676. package/locales/angular/en-ss.js +17 -0
  677. package/locales/angular/en-sx.js +17 -0
  678. package/locales/angular/en-sz.js +17 -0
  679. package/locales/angular/en-tc.js +17 -0
  680. package/locales/angular/en-tk.js +17 -0
  681. package/locales/angular/en-to.js +17 -0
  682. package/locales/angular/en-tt.js +17 -0
  683. package/locales/angular/en-tv.js +17 -0
  684. package/locales/angular/en-tz.js +17 -0
  685. package/locales/angular/en-ug.js +17 -0
  686. package/locales/angular/en-um.js +17 -0
  687. package/locales/angular/en-vc.js +17 -0
  688. package/locales/angular/en-vg.js +17 -0
  689. package/locales/angular/en-vi.js +17 -0
  690. package/locales/angular/en-vu.js +17 -0
  691. package/locales/angular/en-ws.js +17 -0
  692. package/locales/angular/en-za.js +17 -0
  693. package/locales/angular/en-zm.js +17 -0
  694. package/locales/angular/en-zw.js +17 -0
  695. package/locales/angular/en.js +17 -0
  696. package/locales/angular/eo.js +17 -0
  697. package/locales/angular/es-419.js +19 -0
  698. package/locales/angular/es-ar.js +19 -0
  699. package/locales/angular/es-bo.js +19 -0
  700. package/locales/angular/es-br.js +19 -0
  701. package/locales/angular/es-bz.js +19 -0
  702. package/locales/angular/es-cl.js +19 -0
  703. package/locales/angular/es-co.js +19 -0
  704. package/locales/angular/es-cr.js +19 -0
  705. package/locales/angular/es-cu.js +19 -0
  706. package/locales/angular/es-do.js +19 -0
  707. package/locales/angular/es-ea.js +19 -0
  708. package/locales/angular/es-ec.js +19 -0
  709. package/locales/angular/es-gq.js +19 -0
  710. package/locales/angular/es-gt.js +19 -0
  711. package/locales/angular/es-hn.js +19 -0
  712. package/locales/angular/es-ic.js +19 -0
  713. package/locales/angular/es-mx.js +19 -0
  714. package/locales/angular/es-ni.js +19 -0
  715. package/locales/angular/es-pa.js +19 -0
  716. package/locales/angular/es-pe.js +19 -0
  717. package/locales/angular/es-ph.js +19 -0
  718. package/locales/angular/es-pr.js +19 -0
  719. package/locales/angular/es-py.js +19 -0
  720. package/locales/angular/es-sv.js +19 -0
  721. package/locales/angular/es-us.js +19 -0
  722. package/locales/angular/es-uy.js +19 -0
  723. package/locales/angular/es-ve.js +19 -0
  724. package/locales/angular/es.js +19 -0
  725. package/locales/angular/et.js +17 -0
  726. package/locales/angular/eu.js +17 -0
  727. package/locales/angular/ewo.js +15 -0
  728. package/locales/angular/fa-af.js +17 -0
  729. package/locales/angular/fa.js +17 -0
  730. package/locales/angular/ff-adlm-bf.js +15 -0
  731. package/locales/angular/ff-adlm-cm.js +15 -0
  732. package/locales/angular/ff-adlm-gh.js +15 -0
  733. package/locales/angular/ff-adlm-gm.js +15 -0
  734. package/locales/angular/ff-adlm-gw.js +15 -0
  735. package/locales/angular/ff-adlm-lr.js +15 -0
  736. package/locales/angular/ff-adlm-mr.js +15 -0
  737. package/locales/angular/ff-adlm-ne.js +15 -0
  738. package/locales/angular/ff-adlm-ng.js +15 -0
  739. package/locales/angular/ff-adlm-sl.js +15 -0
  740. package/locales/angular/ff-adlm-sn.js +15 -0
  741. package/locales/angular/ff-adlm.js +15 -0
  742. package/locales/angular/ff-cm.js +64 -0
  743. package/locales/angular/ff-gn.js +64 -0
  744. package/locales/angular/ff-latn-bf.js +17 -0
  745. package/locales/angular/ff-latn-cm.js +17 -0
  746. package/locales/angular/ff-latn-gh.js +17 -0
  747. package/locales/angular/ff-latn-gm.js +17 -0
  748. package/locales/angular/ff-latn-gn.js +17 -0
  749. package/locales/angular/ff-latn-gw.js +17 -0
  750. package/locales/angular/ff-latn-lr.js +17 -0
  751. package/locales/angular/ff-latn-mr.js +17 -0
  752. package/locales/angular/ff-latn-ne.js +17 -0
  753. package/locales/angular/ff-latn-ng.js +17 -0
  754. package/locales/angular/ff-latn-sl.js +17 -0
  755. package/locales/angular/ff-latn.js +17 -0
  756. package/locales/angular/ff-mr.js +64 -0
  757. package/locales/angular/ff.js +17 -0
  758. package/locales/angular/fi.js +17 -0
  759. package/locales/angular/fil.js +17 -0
  760. package/locales/angular/fo-dk.js +17 -0
  761. package/locales/angular/fo.js +17 -0
  762. package/locales/angular/fr-be.js +19 -0
  763. package/locales/angular/fr-bf.js +19 -0
  764. package/locales/angular/fr-bi.js +19 -0
  765. package/locales/angular/fr-bj.js +19 -0
  766. package/locales/angular/fr-bl.js +19 -0
  767. package/locales/angular/fr-ca.js +19 -0
  768. package/locales/angular/fr-cd.js +19 -0
  769. package/locales/angular/fr-cf.js +19 -0
  770. package/locales/angular/fr-cg.js +19 -0
  771. package/locales/angular/fr-ch.js +19 -0
  772. package/locales/angular/fr-ci.js +19 -0
  773. package/locales/angular/fr-cm.js +19 -0
  774. package/locales/angular/fr-dj.js +19 -0
  775. package/locales/angular/fr-dz.js +19 -0
  776. package/locales/angular/fr-ga.js +19 -0
  777. package/locales/angular/fr-gf.js +19 -0
  778. package/locales/angular/fr-gn.js +19 -0
  779. package/locales/angular/fr-gp.js +19 -0
  780. package/locales/angular/fr-gq.js +19 -0
  781. package/locales/angular/fr-ht.js +19 -0
  782. package/locales/angular/fr-km.js +19 -0
  783. package/locales/angular/fr-lu.js +19 -0
  784. package/locales/angular/fr-ma.js +19 -0
  785. package/locales/angular/fr-mc.js +19 -0
  786. package/locales/angular/fr-mf.js +19 -0
  787. package/locales/angular/fr-mg.js +19 -0
  788. package/locales/angular/fr-ml.js +19 -0
  789. package/locales/angular/fr-mq.js +19 -0
  790. package/locales/angular/fr-mr.js +19 -0
  791. package/locales/angular/fr-mu.js +19 -0
  792. package/locales/angular/fr-nc.js +19 -0
  793. package/locales/angular/fr-ne.js +19 -0
  794. package/locales/angular/fr-pf.js +19 -0
  795. package/locales/angular/fr-pm.js +19 -0
  796. package/locales/angular/fr-re.js +19 -0
  797. package/locales/angular/fr-rw.js +19 -0
  798. package/locales/angular/fr-sc.js +19 -0
  799. package/locales/angular/fr-sn.js +19 -0
  800. package/locales/angular/fr-sy.js +19 -0
  801. package/locales/angular/fr-td.js +19 -0
  802. package/locales/angular/fr-tg.js +19 -0
  803. package/locales/angular/fr-tn.js +19 -0
  804. package/locales/angular/fr-vu.js +19 -0
  805. package/locales/angular/fr-wf.js +19 -0
  806. package/locales/angular/fr-yt.js +19 -0
  807. package/locales/angular/fr.js +19 -0
  808. package/locales/angular/fur.js +17 -0
  809. package/locales/angular/fy.js +17 -0
  810. package/locales/angular/ga-gb.js +23 -0
  811. package/locales/angular/ga.js +23 -0
  812. package/locales/angular/gd.js +21 -0
  813. package/locales/angular/gl.js +17 -0
  814. package/locales/angular/global/af-na.js +24 -0
  815. package/locales/angular/global/af.js +24 -0
  816. package/locales/angular/global/agq.js +22 -0
  817. package/locales/angular/global/ak.js +24 -0
  818. package/locales/angular/global/am.js +24 -0
  819. package/locales/angular/global/ar-ae.js +32 -0
  820. package/locales/angular/global/ar-bh.js +32 -0
  821. package/locales/angular/global/ar-dj.js +32 -0
  822. package/locales/angular/global/ar-dz.js +32 -0
  823. package/locales/angular/global/ar-eg.js +32 -0
  824. package/locales/angular/global/ar-eh.js +32 -0
  825. package/locales/angular/global/ar-er.js +32 -0
  826. package/locales/angular/global/ar-il.js +32 -0
  827. package/locales/angular/global/ar-iq.js +32 -0
  828. package/locales/angular/global/ar-jo.js +32 -0
  829. package/locales/angular/global/ar-km.js +32 -0
  830. package/locales/angular/global/ar-kw.js +32 -0
  831. package/locales/angular/global/ar-lb.js +32 -0
  832. package/locales/angular/global/ar-ly.js +32 -0
  833. package/locales/angular/global/ar-ma.js +32 -0
  834. package/locales/angular/global/ar-mr.js +32 -0
  835. package/locales/angular/global/ar-om.js +32 -0
  836. package/locales/angular/global/ar-ps.js +32 -0
  837. package/locales/angular/global/ar-qa.js +32 -0
  838. package/locales/angular/global/ar-sa.js +32 -0
  839. package/locales/angular/global/ar-sd.js +32 -0
  840. package/locales/angular/global/ar-so.js +32 -0
  841. package/locales/angular/global/ar-ss.js +32 -0
  842. package/locales/angular/global/ar-sy.js +32 -0
  843. package/locales/angular/global/ar-td.js +32 -0
  844. package/locales/angular/global/ar-tn.js +32 -0
  845. package/locales/angular/global/ar-ye.js +32 -0
  846. package/locales/angular/global/ar.js +32 -0
  847. package/locales/angular/global/as.js +24 -0
  848. package/locales/angular/global/asa.js +24 -0
  849. package/locales/angular/global/ast.js +24 -0
  850. package/locales/angular/global/az-cyrl.js +22 -0
  851. package/locales/angular/global/az-latn.js +24 -0
  852. package/locales/angular/global/az.js +24 -0
  853. package/locales/angular/global/bas.js +22 -0
  854. package/locales/angular/global/be-tarask.js +28 -0
  855. package/locales/angular/global/be.js +28 -0
  856. package/locales/angular/global/bem.js +24 -0
  857. package/locales/angular/global/bez.js +24 -0
  858. package/locales/angular/global/bg.js +24 -0
  859. package/locales/angular/global/bm.js +22 -0
  860. package/locales/angular/global/bn-in.js +24 -0
  861. package/locales/angular/global/bn.js +24 -0
  862. package/locales/angular/global/bo-in.js +22 -0
  863. package/locales/angular/global/bo.js +22 -0
  864. package/locales/angular/global/br.js +30 -0
  865. package/locales/angular/global/brx.js +24 -0
  866. package/locales/angular/global/bs-cyrl.js +22 -0
  867. package/locales/angular/global/bs-latn.js +26 -0
  868. package/locales/angular/global/bs.js +26 -0
  869. package/locales/angular/global/ca-ad.js +24 -0
  870. package/locales/angular/global/ca-es-valencia.js +24 -0
  871. package/locales/angular/global/ca-fr.js +24 -0
  872. package/locales/angular/global/ca-it.js +24 -0
  873. package/locales/angular/global/ca.js +24 -0
  874. package/locales/angular/global/ccp-in.js +22 -0
  875. package/locales/angular/global/ccp.js +22 -0
  876. package/locales/angular/global/ce.js +24 -0
  877. package/locales/angular/global/ceb.js +24 -0
  878. package/locales/angular/global/cgg.js +24 -0
  879. package/locales/angular/global/chr.js +24 -0
  880. package/locales/angular/global/ckb-ir.js +24 -0
  881. package/locales/angular/global/ckb.js +24 -0
  882. package/locales/angular/global/cs.js +28 -0
  883. package/locales/angular/global/cy.js +32 -0
  884. package/locales/angular/global/da-gl.js +24 -0
  885. package/locales/angular/global/da.js +24 -0
  886. package/locales/angular/global/dav.js +22 -0
  887. package/locales/angular/global/de-at.js +24 -0
  888. package/locales/angular/global/de-be.js +24 -0
  889. package/locales/angular/global/de-ch.js +24 -0
  890. package/locales/angular/global/de-it.js +24 -0
  891. package/locales/angular/global/de-li.js +24 -0
  892. package/locales/angular/global/de-lu.js +24 -0
  893. package/locales/angular/global/de.js +24 -0
  894. package/locales/angular/global/dje.js +22 -0
  895. package/locales/angular/global/doi.js +24 -0
  896. package/locales/angular/global/dsb.js +28 -0
  897. package/locales/angular/global/dua.js +22 -0
  898. package/locales/angular/global/dyo.js +22 -0
  899. package/locales/angular/global/dz.js +22 -0
  900. package/locales/angular/global/ebu.js +22 -0
  901. package/locales/angular/global/ee-tg.js +24 -0
  902. package/locales/angular/global/ee.js +24 -0
  903. package/locales/angular/global/el-cy.js +24 -0
  904. package/locales/angular/global/el.js +24 -0
  905. package/locales/angular/global/en-001.js +24 -0
  906. package/locales/angular/global/en-150.js +24 -0
  907. package/locales/angular/global/en-ae.js +24 -0
  908. package/locales/angular/global/en-ag.js +24 -0
  909. package/locales/angular/global/en-ai.js +24 -0
  910. package/locales/angular/global/en-as.js +24 -0
  911. package/locales/angular/global/en-at.js +24 -0
  912. package/locales/angular/global/en-au.js +24 -0
  913. package/locales/angular/global/en-bb.js +24 -0
  914. package/locales/angular/global/en-be.js +24 -0
  915. package/locales/angular/global/en-bi.js +24 -0
  916. package/locales/angular/global/en-bm.js +24 -0
  917. package/locales/angular/global/en-bs.js +24 -0
  918. package/locales/angular/global/en-bw.js +24 -0
  919. package/locales/angular/global/en-bz.js +24 -0
  920. package/locales/angular/global/en-ca.js +24 -0
  921. package/locales/angular/global/en-cc.js +24 -0
  922. package/locales/angular/global/en-ch.js +24 -0
  923. package/locales/angular/global/en-ck.js +24 -0
  924. package/locales/angular/global/en-cm.js +24 -0
  925. package/locales/angular/global/en-cx.js +24 -0
  926. package/locales/angular/global/en-cy.js +24 -0
  927. package/locales/angular/global/en-de.js +24 -0
  928. package/locales/angular/global/en-dg.js +24 -0
  929. package/locales/angular/global/en-dk.js +24 -0
  930. package/locales/angular/global/en-dm.js +24 -0
  931. package/locales/angular/global/en-er.js +24 -0
  932. package/locales/angular/global/en-fi.js +24 -0
  933. package/locales/angular/global/en-fj.js +24 -0
  934. package/locales/angular/global/en-fk.js +24 -0
  935. package/locales/angular/global/en-fm.js +24 -0
  936. package/locales/angular/global/en-gb.js +24 -0
  937. package/locales/angular/global/en-gd.js +24 -0
  938. package/locales/angular/global/en-gg.js +24 -0
  939. package/locales/angular/global/en-gh.js +24 -0
  940. package/locales/angular/global/en-gi.js +24 -0
  941. package/locales/angular/global/en-gm.js +24 -0
  942. package/locales/angular/global/en-gu.js +24 -0
  943. package/locales/angular/global/en-gy.js +24 -0
  944. package/locales/angular/global/en-hk.js +24 -0
  945. package/locales/angular/global/en-ie.js +24 -0
  946. package/locales/angular/global/en-il.js +24 -0
  947. package/locales/angular/global/en-im.js +24 -0
  948. package/locales/angular/global/en-in.js +24 -0
  949. package/locales/angular/global/en-io.js +24 -0
  950. package/locales/angular/global/en-je.js +24 -0
  951. package/locales/angular/global/en-jm.js +24 -0
  952. package/locales/angular/global/en-ke.js +24 -0
  953. package/locales/angular/global/en-ki.js +24 -0
  954. package/locales/angular/global/en-kn.js +24 -0
  955. package/locales/angular/global/en-ky.js +24 -0
  956. package/locales/angular/global/en-lc.js +24 -0
  957. package/locales/angular/global/en-lr.js +24 -0
  958. package/locales/angular/global/en-ls.js +24 -0
  959. package/locales/angular/global/en-mg.js +24 -0
  960. package/locales/angular/global/en-mh.js +24 -0
  961. package/locales/angular/global/en-mo.js +24 -0
  962. package/locales/angular/global/en-mp.js +24 -0
  963. package/locales/angular/global/en-ms.js +24 -0
  964. package/locales/angular/global/en-mt.js +24 -0
  965. package/locales/angular/global/en-mu.js +24 -0
  966. package/locales/angular/global/en-mv.js +24 -0
  967. package/locales/angular/global/en-mw.js +24 -0
  968. package/locales/angular/global/en-my.js +24 -0
  969. package/locales/angular/global/en-na.js +24 -0
  970. package/locales/angular/global/en-nf.js +24 -0
  971. package/locales/angular/global/en-ng.js +24 -0
  972. package/locales/angular/global/en-nl.js +24 -0
  973. package/locales/angular/global/en-nr.js +24 -0
  974. package/locales/angular/global/en-nu.js +24 -0
  975. package/locales/angular/global/en-nz.js +24 -0
  976. package/locales/angular/global/en-pg.js +24 -0
  977. package/locales/angular/global/en-ph.js +24 -0
  978. package/locales/angular/global/en-pk.js +24 -0
  979. package/locales/angular/global/en-pn.js +24 -0
  980. package/locales/angular/global/en-pr.js +24 -0
  981. package/locales/angular/global/en-pw.js +24 -0
  982. package/locales/angular/global/en-rw.js +24 -0
  983. package/locales/angular/global/en-sb.js +24 -0
  984. package/locales/angular/global/en-sc.js +24 -0
  985. package/locales/angular/global/en-sd.js +24 -0
  986. package/locales/angular/global/en-se.js +24 -0
  987. package/locales/angular/global/en-sg.js +24 -0
  988. package/locales/angular/global/en-sh.js +24 -0
  989. package/locales/angular/global/en-si.js +24 -0
  990. package/locales/angular/global/en-sl.js +24 -0
  991. package/locales/angular/global/en-ss.js +24 -0
  992. package/locales/angular/global/en-sx.js +24 -0
  993. package/locales/angular/global/en-sz.js +24 -0
  994. package/locales/angular/global/en-tc.js +24 -0
  995. package/locales/angular/global/en-tk.js +24 -0
  996. package/locales/angular/global/en-to.js +24 -0
  997. package/locales/angular/global/en-tt.js +24 -0
  998. package/locales/angular/global/en-tv.js +24 -0
  999. package/locales/angular/global/en-tz.js +24 -0
  1000. package/locales/angular/global/en-ug.js +24 -0
  1001. package/locales/angular/global/en-um.js +24 -0
  1002. package/locales/angular/global/en-vc.js +24 -0
  1003. package/locales/angular/global/en-vg.js +24 -0
  1004. package/locales/angular/global/en-vi.js +24 -0
  1005. package/locales/angular/global/en-vu.js +24 -0
  1006. package/locales/angular/global/en-ws.js +24 -0
  1007. package/locales/angular/global/en-za.js +24 -0
  1008. package/locales/angular/global/en-zm.js +24 -0
  1009. package/locales/angular/global/en-zw.js +24 -0
  1010. package/locales/angular/global/en.js +24 -0
  1011. package/locales/angular/global/eo.js +24 -0
  1012. package/locales/angular/global/es-419.js +26 -0
  1013. package/locales/angular/global/es-ar.js +26 -0
  1014. package/locales/angular/global/es-bo.js +26 -0
  1015. package/locales/angular/global/es-br.js +26 -0
  1016. package/locales/angular/global/es-bz.js +26 -0
  1017. package/locales/angular/global/es-cl.js +26 -0
  1018. package/locales/angular/global/es-co.js +26 -0
  1019. package/locales/angular/global/es-cr.js +26 -0
  1020. package/locales/angular/global/es-cu.js +26 -0
  1021. package/locales/angular/global/es-do.js +26 -0
  1022. package/locales/angular/global/es-ea.js +26 -0
  1023. package/locales/angular/global/es-ec.js +26 -0
  1024. package/locales/angular/global/es-gq.js +26 -0
  1025. package/locales/angular/global/es-gt.js +26 -0
  1026. package/locales/angular/global/es-hn.js +26 -0
  1027. package/locales/angular/global/es-ic.js +26 -0
  1028. package/locales/angular/global/es-mx.js +26 -0
  1029. package/locales/angular/global/es-ni.js +26 -0
  1030. package/locales/angular/global/es-pa.js +26 -0
  1031. package/locales/angular/global/es-pe.js +26 -0
  1032. package/locales/angular/global/es-ph.js +26 -0
  1033. package/locales/angular/global/es-pr.js +26 -0
  1034. package/locales/angular/global/es-py.js +26 -0
  1035. package/locales/angular/global/es-sv.js +26 -0
  1036. package/locales/angular/global/es-us.js +26 -0
  1037. package/locales/angular/global/es-uy.js +26 -0
  1038. package/locales/angular/global/es-ve.js +26 -0
  1039. package/locales/angular/global/es.js +26 -0
  1040. package/locales/angular/global/et.js +24 -0
  1041. package/locales/angular/global/eu.js +24 -0
  1042. package/locales/angular/global/ewo.js +22 -0
  1043. package/locales/angular/global/fa-af.js +24 -0
  1044. package/locales/angular/global/fa.js +24 -0
  1045. package/locales/angular/global/ff-adlm-bf.js +22 -0
  1046. package/locales/angular/global/ff-adlm-cm.js +22 -0
  1047. package/locales/angular/global/ff-adlm-gh.js +22 -0
  1048. package/locales/angular/global/ff-adlm-gm.js +22 -0
  1049. package/locales/angular/global/ff-adlm-gw.js +22 -0
  1050. package/locales/angular/global/ff-adlm-lr.js +22 -0
  1051. package/locales/angular/global/ff-adlm-mr.js +22 -0
  1052. package/locales/angular/global/ff-adlm-ne.js +22 -0
  1053. package/locales/angular/global/ff-adlm-ng.js +22 -0
  1054. package/locales/angular/global/ff-adlm-sl.js +22 -0
  1055. package/locales/angular/global/ff-adlm-sn.js +22 -0
  1056. package/locales/angular/global/ff-adlm.js +22 -0
  1057. package/locales/angular/global/ff-cm.js +74 -0
  1058. package/locales/angular/global/ff-gn.js +74 -0
  1059. package/locales/angular/global/ff-latn-bf.js +24 -0
  1060. package/locales/angular/global/ff-latn-cm.js +24 -0
  1061. package/locales/angular/global/ff-latn-gh.js +24 -0
  1062. package/locales/angular/global/ff-latn-gm.js +24 -0
  1063. package/locales/angular/global/ff-latn-gn.js +24 -0
  1064. package/locales/angular/global/ff-latn-gw.js +24 -0
  1065. package/locales/angular/global/ff-latn-lr.js +24 -0
  1066. package/locales/angular/global/ff-latn-mr.js +24 -0
  1067. package/locales/angular/global/ff-latn-ne.js +24 -0
  1068. package/locales/angular/global/ff-latn-ng.js +24 -0
  1069. package/locales/angular/global/ff-latn-sl.js +24 -0
  1070. package/locales/angular/global/ff-latn.js +24 -0
  1071. package/locales/angular/global/ff-mr.js +74 -0
  1072. package/locales/angular/global/ff.js +24 -0
  1073. package/locales/angular/global/fi.js +24 -0
  1074. package/locales/angular/global/fil.js +24 -0
  1075. package/locales/angular/global/fo-dk.js +24 -0
  1076. package/locales/angular/global/fo.js +24 -0
  1077. package/locales/angular/global/fr-be.js +26 -0
  1078. package/locales/angular/global/fr-bf.js +26 -0
  1079. package/locales/angular/global/fr-bi.js +26 -0
  1080. package/locales/angular/global/fr-bj.js +26 -0
  1081. package/locales/angular/global/fr-bl.js +26 -0
  1082. package/locales/angular/global/fr-ca.js +26 -0
  1083. package/locales/angular/global/fr-cd.js +26 -0
  1084. package/locales/angular/global/fr-cf.js +26 -0
  1085. package/locales/angular/global/fr-cg.js +26 -0
  1086. package/locales/angular/global/fr-ch.js +26 -0
  1087. package/locales/angular/global/fr-ci.js +26 -0
  1088. package/locales/angular/global/fr-cm.js +26 -0
  1089. package/locales/angular/global/fr-dj.js +26 -0
  1090. package/locales/angular/global/fr-dz.js +26 -0
  1091. package/locales/angular/global/fr-ga.js +26 -0
  1092. package/locales/angular/global/fr-gf.js +26 -0
  1093. package/locales/angular/global/fr-gn.js +26 -0
  1094. package/locales/angular/global/fr-gp.js +26 -0
  1095. package/locales/angular/global/fr-gq.js +26 -0
  1096. package/locales/angular/global/fr-ht.js +26 -0
  1097. package/locales/angular/global/fr-km.js +26 -0
  1098. package/locales/angular/global/fr-lu.js +26 -0
  1099. package/locales/angular/global/fr-ma.js +26 -0
  1100. package/locales/angular/global/fr-mc.js +26 -0
  1101. package/locales/angular/global/fr-mf.js +26 -0
  1102. package/locales/angular/global/fr-mg.js +26 -0
  1103. package/locales/angular/global/fr-ml.js +26 -0
  1104. package/locales/angular/global/fr-mq.js +26 -0
  1105. package/locales/angular/global/fr-mr.js +26 -0
  1106. package/locales/angular/global/fr-mu.js +26 -0
  1107. package/locales/angular/global/fr-nc.js +26 -0
  1108. package/locales/angular/global/fr-ne.js +26 -0
  1109. package/locales/angular/global/fr-pf.js +26 -0
  1110. package/locales/angular/global/fr-pm.js +26 -0
  1111. package/locales/angular/global/fr-re.js +26 -0
  1112. package/locales/angular/global/fr-rw.js +26 -0
  1113. package/locales/angular/global/fr-sc.js +26 -0
  1114. package/locales/angular/global/fr-sn.js +26 -0
  1115. package/locales/angular/global/fr-sy.js +26 -0
  1116. package/locales/angular/global/fr-td.js +26 -0
  1117. package/locales/angular/global/fr-tg.js +26 -0
  1118. package/locales/angular/global/fr-tn.js +26 -0
  1119. package/locales/angular/global/fr-vu.js +26 -0
  1120. package/locales/angular/global/fr-wf.js +26 -0
  1121. package/locales/angular/global/fr-yt.js +26 -0
  1122. package/locales/angular/global/fr.js +26 -0
  1123. package/locales/angular/global/fur.js +24 -0
  1124. package/locales/angular/global/fy.js +24 -0
  1125. package/locales/angular/global/ga-gb.js +30 -0
  1126. package/locales/angular/global/ga.js +30 -0
  1127. package/locales/angular/global/gd.js +28 -0
  1128. package/locales/angular/global/gl.js +24 -0
  1129. package/locales/angular/global/gsw-fr.js +24 -0
  1130. package/locales/angular/global/gsw-li.js +24 -0
  1131. package/locales/angular/global/gsw.js +24 -0
  1132. package/locales/angular/global/gu.js +24 -0
  1133. package/locales/angular/global/guz.js +22 -0
  1134. package/locales/angular/global/gv.js +30 -0
  1135. package/locales/angular/global/ha-gh.js +24 -0
  1136. package/locales/angular/global/ha-ne.js +24 -0
  1137. package/locales/angular/global/ha.js +24 -0
  1138. package/locales/angular/global/haw.js +24 -0
  1139. package/locales/angular/global/he.js +28 -0
  1140. package/locales/angular/global/hi-latn.js +24 -0
  1141. package/locales/angular/global/hi.js +24 -0
  1142. package/locales/angular/global/hr-ba.js +26 -0
  1143. package/locales/angular/global/hr.js +26 -0
  1144. package/locales/angular/global/hsb.js +28 -0
  1145. package/locales/angular/global/hu.js +24 -0
  1146. package/locales/angular/global/hy.js +24 -0
  1147. package/locales/angular/global/ia.js +24 -0
  1148. package/locales/angular/global/id.js +22 -0
  1149. package/locales/angular/global/ig.js +22 -0
  1150. package/locales/angular/global/ii.js +22 -0
  1151. package/locales/angular/global/is.js +24 -0
  1152. package/locales/angular/global/it-ch.js +26 -0
  1153. package/locales/angular/global/it-sm.js +26 -0
  1154. package/locales/angular/global/it-va.js +26 -0
  1155. package/locales/angular/global/it.js +26 -0
  1156. package/locales/angular/global/ja.js +22 -0
  1157. package/locales/angular/global/jgo.js +24 -0
  1158. package/locales/angular/global/jmc.js +24 -0
  1159. package/locales/angular/global/jv.js +22 -0
  1160. package/locales/angular/global/ka.js +24 -0
  1161. package/locales/angular/global/kab.js +24 -0
  1162. package/locales/angular/global/kam.js +22 -0
  1163. package/locales/angular/global/kde.js +22 -0
  1164. package/locales/angular/global/kea.js +22 -0
  1165. package/locales/angular/global/kgp.js +22 -0
  1166. package/locales/angular/global/khq.js +22 -0
  1167. package/locales/angular/global/ki.js +22 -0
  1168. package/locales/angular/global/kk.js +24 -0
  1169. package/locales/angular/global/kkj.js +24 -0
  1170. package/locales/angular/global/kl.js +24 -0
  1171. package/locales/angular/global/kln.js +22 -0
  1172. package/locales/angular/global/km.js +22 -0
  1173. package/locales/angular/global/kn.js +24 -0
  1174. package/locales/angular/global/ko-kp.js +22 -0
  1175. package/locales/angular/global/ko.js +22 -0
  1176. package/locales/angular/global/kok.js +22 -0
  1177. package/locales/angular/global/ks-arab.js +24 -0
  1178. package/locales/angular/global/ks-deva.js +22 -0
  1179. package/locales/angular/global/ks.js +24 -0
  1180. package/locales/angular/global/ksb.js +24 -0
  1181. package/locales/angular/global/ksf.js +22 -0
  1182. package/locales/angular/global/ksh.js +26 -0
  1183. package/locales/angular/global/ku.js +24 -0
  1184. package/locales/angular/global/kw.js +32 -0
  1185. package/locales/angular/global/ky.js +24 -0
  1186. package/locales/angular/global/lag.js +26 -0
  1187. package/locales/angular/global/lb.js +24 -0
  1188. package/locales/angular/global/lg.js +24 -0
  1189. package/locales/angular/global/lkt.js +22 -0
  1190. package/locales/angular/global/ln-ao.js +24 -0
  1191. package/locales/angular/global/ln-cf.js +24 -0
  1192. package/locales/angular/global/ln-cg.js +24 -0
  1193. package/locales/angular/global/ln.js +24 -0
  1194. package/locales/angular/global/lo.js +22 -0
  1195. package/locales/angular/global/lrc-iq.js +22 -0
  1196. package/locales/angular/global/lrc.js +22 -0
  1197. package/locales/angular/global/lt.js +28 -0
  1198. package/locales/angular/global/lu.js +22 -0
  1199. package/locales/angular/global/luo.js +22 -0
  1200. package/locales/angular/global/luy.js +22 -0
  1201. package/locales/angular/global/lv.js +26 -0
  1202. package/locales/angular/global/mai.js +22 -0
  1203. package/locales/angular/global/mas-tz.js +24 -0
  1204. package/locales/angular/global/mas.js +24 -0
  1205. package/locales/angular/global/mer.js +22 -0
  1206. package/locales/angular/global/mfe.js +22 -0
  1207. package/locales/angular/global/mg.js +24 -0
  1208. package/locales/angular/global/mgh.js +22 -0
  1209. package/locales/angular/global/mgo.js +24 -0
  1210. package/locales/angular/global/mi.js +22 -0
  1211. package/locales/angular/global/mk.js +24 -0
  1212. package/locales/angular/global/ml.js +24 -0
  1213. package/locales/angular/global/mn.js +24 -0
  1214. package/locales/angular/global/mni-beng.js +22 -0
  1215. package/locales/angular/global/mni.js +22 -0
  1216. package/locales/angular/global/mr.js +24 -0
  1217. package/locales/angular/global/ms-bn.js +22 -0
  1218. package/locales/angular/global/ms-id.js +22 -0
  1219. package/locales/angular/global/ms-sg.js +22 -0
  1220. package/locales/angular/global/ms.js +22 -0
  1221. package/locales/angular/global/mt.js +28 -0
  1222. package/locales/angular/global/mua.js +22 -0
  1223. package/locales/angular/global/my.js +22 -0
  1224. package/locales/angular/global/mzn.js +22 -0
  1225. package/locales/angular/global/naq.js +26 -0
  1226. package/locales/angular/global/nb-sj.js +24 -0
  1227. package/locales/angular/global/nb.js +24 -0
  1228. package/locales/angular/global/nd.js +24 -0
  1229. package/locales/angular/global/nds-nl.js +22 -0
  1230. package/locales/angular/global/nds.js +22 -0
  1231. package/locales/angular/global/ne-in.js +24 -0
  1232. package/locales/angular/global/ne.js +24 -0
  1233. package/locales/angular/global/nl-aw.js +24 -0
  1234. package/locales/angular/global/nl-be.js +24 -0
  1235. package/locales/angular/global/nl-bq.js +24 -0
  1236. package/locales/angular/global/nl-cw.js +24 -0
  1237. package/locales/angular/global/nl-sr.js +24 -0
  1238. package/locales/angular/global/nl-sx.js +24 -0
  1239. package/locales/angular/global/nl.js +24 -0
  1240. package/locales/angular/global/nmg.js +22 -0
  1241. package/locales/angular/global/nn.js +24 -0
  1242. package/locales/angular/global/nnh.js +24 -0
  1243. package/locales/angular/global/no.js +24 -0
  1244. package/locales/angular/global/nus.js +22 -0
  1245. package/locales/angular/global/nyn.js +24 -0
  1246. package/locales/angular/global/om-ke.js +24 -0
  1247. package/locales/angular/global/om.js +24 -0
  1248. package/locales/angular/global/or.js +24 -0
  1249. package/locales/angular/global/os-ru.js +24 -0
  1250. package/locales/angular/global/os.js +24 -0
  1251. package/locales/angular/global/pa-arab.js +22 -0
  1252. package/locales/angular/global/pa-guru.js +24 -0
  1253. package/locales/angular/global/pa.js +24 -0
  1254. package/locales/angular/global/pcm.js +24 -0
  1255. package/locales/angular/global/pl.js +28 -0
  1256. package/locales/angular/global/ps-pk.js +24 -0
  1257. package/locales/angular/global/ps.js +24 -0
  1258. package/locales/angular/global/pt-ao.js +26 -0
  1259. package/locales/angular/global/pt-ch.js +26 -0
  1260. package/locales/angular/global/pt-cv.js +26 -0
  1261. package/locales/angular/global/pt-gq.js +26 -0
  1262. package/locales/angular/global/pt-gw.js +26 -0
  1263. package/locales/angular/global/pt-lu.js +26 -0
  1264. package/locales/angular/global/pt-mo.js +26 -0
  1265. package/locales/angular/global/pt-mz.js +26 -0
  1266. package/locales/angular/global/pt-pt.js +26 -0
  1267. package/locales/angular/global/pt-st.js +26 -0
  1268. package/locales/angular/global/pt-tl.js +26 -0
  1269. package/locales/angular/global/pt.js +26 -0
  1270. package/locales/angular/global/qu-bo.js +22 -0
  1271. package/locales/angular/global/qu-ec.js +22 -0
  1272. package/locales/angular/global/qu.js +22 -0
  1273. package/locales/angular/global/rm.js +24 -0
  1274. package/locales/angular/global/rn.js +22 -0
  1275. package/locales/angular/global/ro-md.js +26 -0
  1276. package/locales/angular/global/ro.js +26 -0
  1277. package/locales/angular/global/rof.js +24 -0
  1278. package/locales/angular/global/ru-by.js +28 -0
  1279. package/locales/angular/global/ru-kg.js +28 -0
  1280. package/locales/angular/global/ru-kz.js +28 -0
  1281. package/locales/angular/global/ru-md.js +28 -0
  1282. package/locales/angular/global/ru-ua.js +28 -0
  1283. package/locales/angular/global/ru.js +28 -0
  1284. package/locales/angular/global/rw.js +22 -0
  1285. package/locales/angular/global/rwk.js +24 -0
  1286. package/locales/angular/global/sa.js +22 -0
  1287. package/locales/angular/global/sah.js +22 -0
  1288. package/locales/angular/global/saq.js +24 -0
  1289. package/locales/angular/global/sat-olck.js +26 -0
  1290. package/locales/angular/global/sat.js +26 -0
  1291. package/locales/angular/global/sbp.js +22 -0
  1292. package/locales/angular/global/sc.js +24 -0
  1293. package/locales/angular/global/sd-arab.js +24 -0
  1294. package/locales/angular/global/sd-deva.js +22 -0
  1295. package/locales/angular/global/sd.js +24 -0
  1296. package/locales/angular/global/se-fi.js +26 -0
  1297. package/locales/angular/global/se-se.js +26 -0
  1298. package/locales/angular/global/se.js +26 -0
  1299. package/locales/angular/global/seh.js +24 -0
  1300. package/locales/angular/global/ses.js +22 -0
  1301. package/locales/angular/global/sg.js +22 -0
  1302. package/locales/angular/global/shi-latn.js +22 -0
  1303. package/locales/angular/global/shi-tfng.js +26 -0
  1304. package/locales/angular/global/shi.js +26 -0
  1305. package/locales/angular/global/si.js +24 -0
  1306. package/locales/angular/global/sk.js +28 -0
  1307. package/locales/angular/global/sl.js +28 -0
  1308. package/locales/angular/global/smn.js +26 -0
  1309. package/locales/angular/global/sn.js +24 -0
  1310. package/locales/angular/global/so-dj.js +24 -0
  1311. package/locales/angular/global/so-et.js +24 -0
  1312. package/locales/angular/global/so-ke.js +24 -0
  1313. package/locales/angular/global/so.js +24 -0
  1314. package/locales/angular/global/sq-mk.js +24 -0
  1315. package/locales/angular/global/sq-xk.js +24 -0
  1316. package/locales/angular/global/sq.js +24 -0
  1317. package/locales/angular/global/sr-cyrl-ba.js +26 -0
  1318. package/locales/angular/global/sr-cyrl-me.js +26 -0
  1319. package/locales/angular/global/sr-cyrl-xk.js +26 -0
  1320. package/locales/angular/global/sr-cyrl.js +26 -0
  1321. package/locales/angular/global/sr-latn-ba.js +22 -0
  1322. package/locales/angular/global/sr-latn-me.js +22 -0
  1323. package/locales/angular/global/sr-latn-xk.js +22 -0
  1324. package/locales/angular/global/sr-latn.js +22 -0
  1325. package/locales/angular/global/sr.js +26 -0
  1326. package/locales/angular/global/su-latn.js +22 -0
  1327. package/locales/angular/global/su.js +22 -0
  1328. package/locales/angular/global/sv-ax.js +24 -0
  1329. package/locales/angular/global/sv-fi.js +24 -0
  1330. package/locales/angular/global/sv.js +24 -0
  1331. package/locales/angular/global/sw-cd.js +24 -0
  1332. package/locales/angular/global/sw-ke.js +24 -0
  1333. package/locales/angular/global/sw-ug.js +24 -0
  1334. package/locales/angular/global/sw.js +24 -0
  1335. package/locales/angular/global/ta-lk.js +24 -0
  1336. package/locales/angular/global/ta-my.js +24 -0
  1337. package/locales/angular/global/ta-sg.js +24 -0
  1338. package/locales/angular/global/ta.js +24 -0
  1339. package/locales/angular/global/te.js +24 -0
  1340. package/locales/angular/global/teo-ke.js +24 -0
  1341. package/locales/angular/global/teo.js +24 -0
  1342. package/locales/angular/global/tg.js +22 -0
  1343. package/locales/angular/global/th.js +22 -0
  1344. package/locales/angular/global/ti-er.js +24 -0
  1345. package/locales/angular/global/ti.js +24 -0
  1346. package/locales/angular/global/tk.js +24 -0
  1347. package/locales/angular/global/to.js +22 -0
  1348. package/locales/angular/global/tr-cy.js +24 -0
  1349. package/locales/angular/global/tr.js +24 -0
  1350. package/locales/angular/global/tt.js +22 -0
  1351. package/locales/angular/global/twq.js +22 -0
  1352. package/locales/angular/global/tzm.js +24 -0
  1353. package/locales/angular/global/ug.js +24 -0
  1354. package/locales/angular/global/uk.js +28 -0
  1355. package/locales/angular/global/und.js +24 -0
  1356. package/locales/angular/global/ur-in.js +24 -0
  1357. package/locales/angular/global/ur.js +24 -0
  1358. package/locales/angular/global/uz-arab.js +22 -0
  1359. package/locales/angular/global/uz-cyrl.js +22 -0
  1360. package/locales/angular/global/uz-latn.js +24 -0
  1361. package/locales/angular/global/uz.js +24 -0
  1362. package/locales/angular/global/vai-latn.js +22 -0
  1363. package/locales/angular/global/vai-vaii.js +22 -0
  1364. package/locales/angular/global/vai.js +22 -0
  1365. package/locales/angular/global/vi.js +22 -0
  1366. package/locales/angular/global/vun.js +24 -0
  1367. package/locales/angular/global/wae.js +24 -0
  1368. package/locales/angular/global/wo.js +22 -0
  1369. package/locales/angular/global/xh.js +24 -0
  1370. package/locales/angular/global/xog.js +24 -0
  1371. package/locales/angular/global/yav.js +22 -0
  1372. package/locales/angular/global/yi.js +24 -0
  1373. package/locales/angular/global/yo-bj.js +22 -0
  1374. package/locales/angular/global/yo.js +22 -0
  1375. package/locales/angular/global/yrl-co.js +22 -0
  1376. package/locales/angular/global/yrl-ve.js +22 -0
  1377. package/locales/angular/global/yrl.js +22 -0
  1378. package/locales/angular/global/yue-hans.js +22 -0
  1379. package/locales/angular/global/yue-hant.js +22 -0
  1380. package/locales/angular/global/yue.js +22 -0
  1381. package/locales/angular/global/zgh.js +22 -0
  1382. package/locales/angular/global/zh-hans-hk.js +22 -0
  1383. package/locales/angular/global/zh-hans-mo.js +22 -0
  1384. package/locales/angular/global/zh-hans-sg.js +22 -0
  1385. package/locales/angular/global/zh-hans.js +22 -0
  1386. package/locales/angular/global/zh-hant-hk.js +22 -0
  1387. package/locales/angular/global/zh-hant-mo.js +22 -0
  1388. package/locales/angular/global/zh-hant.js +22 -0
  1389. package/locales/angular/global/zh.js +22 -0
  1390. package/locales/angular/global/zu.js +24 -0
  1391. package/locales/angular/gsw-fr.js +17 -0
  1392. package/locales/angular/gsw-li.js +17 -0
  1393. package/locales/angular/gsw.js +17 -0
  1394. package/locales/angular/gu.js +17 -0
  1395. package/locales/angular/guz.js +15 -0
  1396. package/locales/angular/gv.js +23 -0
  1397. package/locales/angular/ha-gh.js +17 -0
  1398. package/locales/angular/ha-ne.js +17 -0
  1399. package/locales/angular/ha.js +17 -0
  1400. package/locales/angular/haw.js +17 -0
  1401. package/locales/angular/he.js +21 -0
  1402. package/locales/angular/hi-latn.js +17 -0
  1403. package/locales/angular/hi.js +17 -0
  1404. package/locales/angular/hr-ba.js +19 -0
  1405. package/locales/angular/hr.js +19 -0
  1406. package/locales/angular/hsb.js +21 -0
  1407. package/locales/angular/hu.js +17 -0
  1408. package/locales/angular/hy.js +17 -0
  1409. package/locales/angular/ia.js +17 -0
  1410. package/locales/angular/id.js +15 -0
  1411. package/locales/angular/ig.js +15 -0
  1412. package/locales/angular/ii.js +15 -0
  1413. package/locales/angular/is.js +17 -0
  1414. package/locales/angular/it-ch.js +19 -0
  1415. package/locales/angular/it-sm.js +19 -0
  1416. package/locales/angular/it-va.js +19 -0
  1417. package/locales/angular/it.js +19 -0
  1418. package/locales/angular/ja.js +15 -0
  1419. package/locales/angular/jgo.js +17 -0
  1420. package/locales/angular/jmc.js +17 -0
  1421. package/locales/angular/jv.js +15 -0
  1422. package/locales/angular/ka.js +17 -0
  1423. package/locales/angular/kab.js +17 -0
  1424. package/locales/angular/kam.js +15 -0
  1425. package/locales/angular/kde.js +15 -0
  1426. package/locales/angular/kea.js +15 -0
  1427. package/locales/angular/kgp.js +15 -0
  1428. package/locales/angular/khq.js +15 -0
  1429. package/locales/angular/ki.js +15 -0
  1430. package/locales/angular/kk.js +17 -0
  1431. package/locales/angular/kkj.js +17 -0
  1432. package/locales/angular/kl.js +17 -0
  1433. package/locales/angular/kln.js +15 -0
  1434. package/locales/angular/km.js +15 -0
  1435. package/locales/angular/kn.js +17 -0
  1436. package/locales/angular/ko-kp.js +15 -0
  1437. package/locales/angular/ko.js +15 -0
  1438. package/locales/angular/kok.js +15 -0
  1439. package/locales/angular/ks-arab.js +17 -0
  1440. package/locales/angular/ks-deva.js +15 -0
  1441. package/locales/angular/ks.js +17 -0
  1442. package/locales/angular/ksb.js +17 -0
  1443. package/locales/angular/ksf.js +15 -0
  1444. package/locales/angular/ksh.js +19 -0
  1445. package/locales/angular/ku.js +17 -0
  1446. package/locales/angular/kw.js +25 -0
  1447. package/locales/angular/ky.js +17 -0
  1448. package/locales/angular/lag.js +19 -0
  1449. package/locales/angular/lb.js +17 -0
  1450. package/locales/angular/lg.js +17 -0
  1451. package/locales/angular/lkt.js +15 -0
  1452. package/locales/angular/ln-ao.js +17 -0
  1453. package/locales/angular/ln-cf.js +17 -0
  1454. package/locales/angular/ln-cg.js +17 -0
  1455. package/locales/angular/ln.js +17 -0
  1456. package/locales/angular/lo.js +15 -0
  1457. package/locales/angular/lrc-iq.js +15 -0
  1458. package/locales/angular/lrc.js +15 -0
  1459. package/locales/angular/lt.js +21 -0
  1460. package/locales/angular/lu.js +15 -0
  1461. package/locales/angular/luo.js +15 -0
  1462. package/locales/angular/luy.js +15 -0
  1463. package/locales/angular/lv.js +19 -0
  1464. package/locales/angular/mai.js +15 -0
  1465. package/locales/angular/mas-tz.js +17 -0
  1466. package/locales/angular/mas.js +17 -0
  1467. package/locales/angular/mer.js +15 -0
  1468. package/locales/angular/mfe.js +15 -0
  1469. package/locales/angular/mg.js +17 -0
  1470. package/locales/angular/mgh.js +15 -0
  1471. package/locales/angular/mgo.js +17 -0
  1472. package/locales/angular/mi.js +15 -0
  1473. package/locales/angular/mk.js +17 -0
  1474. package/locales/angular/ml.js +17 -0
  1475. package/locales/angular/mn.js +17 -0
  1476. package/locales/angular/mni-beng.js +15 -0
  1477. package/locales/angular/mni.js +15 -0
  1478. package/locales/angular/mr.js +17 -0
  1479. package/locales/angular/ms-bn.js +15 -0
  1480. package/locales/angular/ms-id.js +15 -0
  1481. package/locales/angular/ms-sg.js +15 -0
  1482. package/locales/angular/ms.js +15 -0
  1483. package/locales/angular/mt.js +21 -0
  1484. package/locales/angular/mua.js +15 -0
  1485. package/locales/angular/my.js +15 -0
  1486. package/locales/angular/mzn.js +15 -0
  1487. package/locales/angular/naq.js +19 -0
  1488. package/locales/angular/nb-sj.js +17 -0
  1489. package/locales/angular/nb.js +17 -0
  1490. package/locales/angular/nd.js +17 -0
  1491. package/locales/angular/nds-nl.js +15 -0
  1492. package/locales/angular/nds.js +15 -0
  1493. package/locales/angular/ne-in.js +17 -0
  1494. package/locales/angular/ne.js +17 -0
  1495. package/locales/angular/nl-aw.js +17 -0
  1496. package/locales/angular/nl-be.js +17 -0
  1497. package/locales/angular/nl-bq.js +17 -0
  1498. package/locales/angular/nl-cw.js +17 -0
  1499. package/locales/angular/nl-sr.js +17 -0
  1500. package/locales/angular/nl-sx.js +17 -0
  1501. package/locales/angular/nl.js +17 -0
  1502. package/locales/angular/nmg.js +15 -0
  1503. package/locales/angular/nn.js +17 -0
  1504. package/locales/angular/nnh.js +17 -0
  1505. package/locales/angular/no.js +17 -0
  1506. package/locales/angular/nus.js +15 -0
  1507. package/locales/angular/nyn.js +17 -0
  1508. package/locales/angular/om-ke.js +17 -0
  1509. package/locales/angular/om.js +17 -0
  1510. package/locales/angular/or.js +17 -0
  1511. package/locales/angular/os-ru.js +17 -0
  1512. package/locales/angular/os.js +17 -0
  1513. package/locales/angular/pa-arab.js +15 -0
  1514. package/locales/angular/pa-guru.js +17 -0
  1515. package/locales/angular/pa.js +17 -0
  1516. package/locales/angular/pcm.js +17 -0
  1517. package/locales/angular/pl.js +21 -0
  1518. package/locales/angular/ps-pk.js +17 -0
  1519. package/locales/angular/ps.js +17 -0
  1520. package/locales/angular/pt-ao.js +19 -0
  1521. package/locales/angular/pt-ch.js +19 -0
  1522. package/locales/angular/pt-cv.js +19 -0
  1523. package/locales/angular/pt-gq.js +19 -0
  1524. package/locales/angular/pt-gw.js +19 -0
  1525. package/locales/angular/pt-lu.js +19 -0
  1526. package/locales/angular/pt-mo.js +19 -0
  1527. package/locales/angular/pt-mz.js +19 -0
  1528. package/locales/angular/pt-pt.js +19 -0
  1529. package/locales/angular/pt-st.js +19 -0
  1530. package/locales/angular/pt-tl.js +19 -0
  1531. package/locales/angular/pt.js +19 -0
  1532. package/locales/angular/qu-bo.js +15 -0
  1533. package/locales/angular/qu-ec.js +15 -0
  1534. package/locales/angular/qu.js +15 -0
  1535. package/locales/angular/rm.js +17 -0
  1536. package/locales/angular/rn.js +15 -0
  1537. package/locales/angular/ro-md.js +19 -0
  1538. package/locales/angular/ro.js +19 -0
  1539. package/locales/angular/rof.js +17 -0
  1540. package/locales/angular/ru-by.js +21 -0
  1541. package/locales/angular/ru-kg.js +21 -0
  1542. package/locales/angular/ru-kz.js +21 -0
  1543. package/locales/angular/ru-md.js +21 -0
  1544. package/locales/angular/ru-ua.js +21 -0
  1545. package/locales/angular/ru.js +21 -0
  1546. package/locales/angular/rw.js +15 -0
  1547. package/locales/angular/rwk.js +17 -0
  1548. package/locales/angular/sa.js +15 -0
  1549. package/locales/angular/sah.js +15 -0
  1550. package/locales/angular/saq.js +17 -0
  1551. package/locales/angular/sat-olck.js +19 -0
  1552. package/locales/angular/sat.js +19 -0
  1553. package/locales/angular/sbp.js +15 -0
  1554. package/locales/angular/sc.js +17 -0
  1555. package/locales/angular/sd-arab.js +17 -0
  1556. package/locales/angular/sd-deva.js +15 -0
  1557. package/locales/angular/sd.js +17 -0
  1558. package/locales/angular/se-fi.js +19 -0
  1559. package/locales/angular/se-se.js +19 -0
  1560. package/locales/angular/se.js +19 -0
  1561. package/locales/angular/seh.js +17 -0
  1562. package/locales/angular/ses.js +15 -0
  1563. package/locales/angular/sg.js +15 -0
  1564. package/locales/angular/shi-latn.js +15 -0
  1565. package/locales/angular/shi-tfng.js +19 -0
  1566. package/locales/angular/shi.js +19 -0
  1567. package/locales/angular/si.js +17 -0
  1568. package/locales/angular/sk.js +21 -0
  1569. package/locales/angular/sl.js +21 -0
  1570. package/locales/angular/smn.js +19 -0
  1571. package/locales/angular/sn.js +17 -0
  1572. package/locales/angular/so-dj.js +17 -0
  1573. package/locales/angular/so-et.js +17 -0
  1574. package/locales/angular/so-ke.js +17 -0
  1575. package/locales/angular/so.js +17 -0
  1576. package/locales/angular/sq-mk.js +17 -0
  1577. package/locales/angular/sq-xk.js +17 -0
  1578. package/locales/angular/sq.js +17 -0
  1579. package/locales/angular/sr-cyrl-ba.js +19 -0
  1580. package/locales/angular/sr-cyrl-me.js +19 -0
  1581. package/locales/angular/sr-cyrl-xk.js +19 -0
  1582. package/locales/angular/sr-cyrl.js +19 -0
  1583. package/locales/angular/sr-latn-ba.js +15 -0
  1584. package/locales/angular/sr-latn-me.js +15 -0
  1585. package/locales/angular/sr-latn-xk.js +15 -0
  1586. package/locales/angular/sr-latn.js +15 -0
  1587. package/locales/angular/sr.js +19 -0
  1588. package/locales/angular/su-latn.js +15 -0
  1589. package/locales/angular/su.js +15 -0
  1590. package/locales/angular/sv-ax.js +17 -0
  1591. package/locales/angular/sv-fi.js +17 -0
  1592. package/locales/angular/sv.js +17 -0
  1593. package/locales/angular/sw-cd.js +17 -0
  1594. package/locales/angular/sw-ke.js +17 -0
  1595. package/locales/angular/sw-ug.js +17 -0
  1596. package/locales/angular/sw.js +17 -0
  1597. package/locales/angular/ta-lk.js +17 -0
  1598. package/locales/angular/ta-my.js +17 -0
  1599. package/locales/angular/ta-sg.js +17 -0
  1600. package/locales/angular/ta.js +17 -0
  1601. package/locales/angular/te.js +17 -0
  1602. package/locales/angular/teo-ke.js +17 -0
  1603. package/locales/angular/teo.js +17 -0
  1604. package/locales/angular/tg.js +15 -0
  1605. package/locales/angular/th.js +15 -0
  1606. package/locales/angular/ti-er.js +17 -0
  1607. package/locales/angular/ti.js +17 -0
  1608. package/locales/angular/tk.js +17 -0
  1609. package/locales/angular/to.js +15 -0
  1610. package/locales/angular/tr-cy.js +17 -0
  1611. package/locales/angular/tr.js +17 -0
  1612. package/locales/angular/tt.js +15 -0
  1613. package/locales/angular/twq.js +15 -0
  1614. package/locales/angular/tzm.js +17 -0
  1615. package/locales/angular/ug.js +17 -0
  1616. package/locales/angular/uk.js +21 -0
  1617. package/locales/angular/und.js +17 -0
  1618. package/locales/angular/ur-in.js +17 -0
  1619. package/locales/angular/ur.js +17 -0
  1620. package/locales/angular/uz-arab.js +15 -0
  1621. package/locales/angular/uz-cyrl.js +15 -0
  1622. package/locales/angular/uz-latn.js +17 -0
  1623. package/locales/angular/uz.js +17 -0
  1624. package/locales/angular/vai-latn.js +15 -0
  1625. package/locales/angular/vai-vaii.js +15 -0
  1626. package/locales/angular/vai.js +15 -0
  1627. package/locales/angular/vi.js +15 -0
  1628. package/locales/angular/vun.js +17 -0
  1629. package/locales/angular/wae.js +17 -0
  1630. package/locales/angular/wo.js +15 -0
  1631. package/locales/angular/xh.js +17 -0
  1632. package/locales/angular/xog.js +17 -0
  1633. package/locales/angular/yav.js +15 -0
  1634. package/locales/angular/yi.js +17 -0
  1635. package/locales/angular/yo-bj.js +15 -0
  1636. package/locales/angular/yo.js +15 -0
  1637. package/locales/angular/yrl-co.js +15 -0
  1638. package/locales/angular/yrl-ve.js +15 -0
  1639. package/locales/angular/yrl.js +15 -0
  1640. package/locales/angular/yue-hans.js +15 -0
  1641. package/locales/angular/yue-hant.js +15 -0
  1642. package/locales/angular/yue.js +15 -0
  1643. package/locales/angular/zgh.js +15 -0
  1644. package/locales/angular/zh-hans-hk.js +15 -0
  1645. package/locales/angular/zh-hans-mo.js +15 -0
  1646. package/locales/angular/zh-hans-sg.js +15 -0
  1647. package/locales/angular/zh-hans.js +15 -0
  1648. package/locales/angular/zh-hant-hk.js +15 -0
  1649. package/locales/angular/zh-hant-mo.js +15 -0
  1650. package/locales/angular/zh-hant.js +15 -0
  1651. package/locales/angular/zh.js +15 -0
  1652. package/locales/angular/zu.js +17 -0
  1653. package/locales/moment/af.js +82 -0
  1654. package/locales/moment/ar-dz.js +167 -0
  1655. package/locales/moment/ar-kw.js +66 -0
  1656. package/locales/moment/ar-ly.js +182 -0
  1657. package/locales/moment/ar-ma.js +67 -0
  1658. package/locales/moment/ar-ps.js +123 -0
  1659. package/locales/moment/ar-sa.js +116 -0
  1660. package/locales/moment/ar-tn.js +66 -0
  1661. package/locales/moment/ar.js +200 -0
  1662. package/locales/moment/az.js +113 -0
  1663. package/locales/moment/be.js +153 -0
  1664. package/locales/moment/bg.js +98 -0
  1665. package/locales/moment/bm.js +62 -0
  1666. package/locales/moment/bn-bd.js +140 -0
  1667. package/locales/moment/bn.js +130 -0
  1668. package/locales/moment/bo.js +135 -0
  1669. package/locales/moment/br.js +179 -0
  1670. package/locales/moment/bs.js +171 -0
  1671. package/locales/moment/ca.js +111 -0
  1672. package/locales/moment/cs.js +192 -0
  1673. package/locales/moment/cv.js +74 -0
  1674. package/locales/moment/cy.js +109 -0
  1675. package/locales/moment/da.js +64 -0
  1676. package/locales/moment/de-at.js +90 -0
  1677. package/locales/moment/de-ch.js +87 -0
  1678. package/locales/moment/de.js +89 -0
  1679. package/locales/moment/dv.js +101 -0
  1680. package/locales/moment/el.js +117 -0
  1681. package/locales/moment/en-au.js +79 -0
  1682. package/locales/moment/en-ca.js +75 -0
  1683. package/locales/moment/en-gb.js +79 -0
  1684. package/locales/moment/en-ie.js +79 -0
  1685. package/locales/moment/en-il.js +75 -0
  1686. package/locales/moment/en-in.js +79 -0
  1687. package/locales/moment/en-nz.js +79 -0
  1688. package/locales/moment/en-sg.js +79 -0
  1689. package/locales/moment/eo.js +79 -0
  1690. package/locales/moment/es-do.js +119 -0
  1691. package/locales/moment/es-mx.js +121 -0
  1692. package/locales/moment/es-us.js +121 -0
  1693. package/locales/moment/es.js +121 -0
  1694. package/locales/moment/et.js +89 -0
  1695. package/locales/moment/eu.js +76 -0
  1696. package/locales/moment/fa.js +124 -0
  1697. package/locales/moment/fi.js +135 -0
  1698. package/locales/moment/fil.js +69 -0
  1699. package/locales/moment/fo.js +68 -0
  1700. package/locales/moment/fr-ca.js +81 -0
  1701. package/locales/moment/fr-ch.js +85 -0
  1702. package/locales/moment/fr.js +119 -0
  1703. package/locales/moment/fy.js +86 -0
  1704. package/locales/moment/ga.js +106 -0
  1705. package/locales/moment/gd.js +106 -0
  1706. package/locales/moment/gl.js +86 -0
  1707. package/locales/moment/gom-deva.js +137 -0
  1708. package/locales/moment/gom-latn.js +135 -0
  1709. package/locales/moment/gu.js +133 -0
  1710. package/locales/moment/he.js +105 -0
  1711. package/locales/moment/hi.js +179 -0
  1712. package/locales/moment/hr.js +167 -0
  1713. package/locales/moment/hu.js +129 -0
  1714. package/locales/moment/hy-am.js +105 -0
  1715. package/locales/moment/id.js +87 -0
  1716. package/locales/moment/is.js +151 -0
  1717. package/locales/moment/it-ch.js +75 -0
  1718. package/locales/moment/it.js +117 -0
  1719. package/locales/moment/ja.js +159 -0
  1720. package/locales/moment/jv.js +87 -0
  1721. package/locales/moment/ka.js +103 -0
  1722. package/locales/moment/kk.js +93 -0
  1723. package/locales/moment/km.js +114 -0
  1724. package/locales/moment/kn.js +135 -0
  1725. package/locales/moment/ko.js +86 -0
  1726. package/locales/moment/ku-kmr.js +125 -0
  1727. package/locales/moment/ku.js +129 -0
  1728. package/locales/moment/ky.js +95 -0
  1729. package/locales/moment/lb.js +148 -0
  1730. package/locales/moment/lo.js +77 -0
  1731. package/locales/moment/lt.js +136 -0
  1732. package/locales/moment/lv.js +105 -0
  1733. package/locales/moment/me.js +128 -0
  1734. package/locales/moment/mi.js +71 -0
  1735. package/locales/moment/mk.js +97 -0
  1736. package/locales/moment/ml.js +93 -0
  1737. package/locales/moment/mn.js +111 -0
  1738. package/locales/moment/mr.js +214 -0
  1739. package/locales/moment/ms-my.js +87 -0
  1740. package/locales/moment/ms.js +86 -0
  1741. package/locales/moment/mt.js +67 -0
  1742. package/locales/moment/my.js +102 -0
  1743. package/locales/moment/nb.js +71 -0
  1744. package/locales/moment/ne.js +132 -0
  1745. package/locales/moment/nl-be.js +113 -0
  1746. package/locales/moment/nl.js +115 -0
  1747. package/locales/moment/nn.js +70 -0
  1748. package/locales/moment/oc-lnc.js +96 -0
  1749. package/locales/moment/pa-in.js +133 -0
  1750. package/locales/moment/pl.js +151 -0
  1751. package/locales/moment/pt-br.js +69 -0
  1752. package/locales/moment/pt.js +74 -0
  1753. package/locales/moment/ro.js +87 -0
  1754. package/locales/moment/ru.js +224 -0
  1755. package/locales/moment/sd.js +92 -0
  1756. package/locales/moment/se.js +68 -0
  1757. package/locales/moment/si.js +80 -0
  1758. package/locales/moment/sk.js +156 -0
  1759. package/locales/moment/sl.js +182 -0
  1760. package/locales/moment/sq.js +76 -0
  1761. package/locales/moment/sr-cyrl.js +138 -0
  1762. package/locales/moment/sr.js +140 -0
  1763. package/locales/moment/ss.js +95 -0
  1764. package/locales/moment/sv.js +79 -0
  1765. package/locales/moment/sw.js +66 -0
  1766. package/locales/moment/ta.js +142 -0
  1767. package/locales/moment/te.js +99 -0
  1768. package/locales/moment/tet.js +79 -0
  1769. package/locales/moment/tg.js +128 -0
  1770. package/locales/moment/th.js +76 -0
  1771. package/locales/moment/tk.js +102 -0
  1772. package/locales/moment/tl-ph.js +68 -0
  1773. package/locales/moment/tlh.js +135 -0
  1774. package/locales/moment/tr.js +117 -0
  1775. package/locales/moment/tzl.js +100 -0
  1776. package/locales/moment/tzm-latn.js +65 -0
  1777. package/locales/moment/tzm.js +65 -0
  1778. package/locales/moment/ug-cn.js +122 -0
  1779. package/locales/moment/uk.js +178 -0
  1780. package/locales/moment/ur.js +93 -0
  1781. package/locales/moment/uz-latn.js +65 -0
  1782. package/locales/moment/uz.js +62 -0
  1783. package/locales/moment/vi.js +91 -0
  1784. package/locales/moment/x-pseudo.js +84 -0
  1785. package/locales/moment/yo.js +64 -0
  1786. package/locales/moment/zh-cn.js +131 -0
  1787. package/locales/moment/zh-hk.js +112 -0
  1788. package/locales/moment/zh-mo.js +111 -0
  1789. package/locales/moment/zh-tw.js +110 -0
  1790. package/locales/moment-timezone/moment-timezone-with-data.js +1582 -0
  1791. package/npm-shrinkwrap.json +17 -0
  1792. package/oAuth/.npmignore +2 -0
  1793. package/oAuth/bundles/index.umd.js +495 -0
  1794. package/oAuth/fesm2022/index.mjs +478 -0
  1795. package/oAuth/fesm2022/index.mjs.map +1 -0
  1796. package/oAuth/index.d.ts +43 -0
  1797. package/oAuth/package.json +23 -0
  1798. package/package-lock.json +17 -0
  1799. package/package.json +16 -0
  1800. package/runtime/base/.npmignore +2 -0
  1801. package/runtime/base/bundles/index.umd.js +6180 -0
  1802. package/runtime/base/fesm2022/index.mjs +6216 -0
  1803. package/runtime/base/fesm2022/index.mjs.map +1 -0
  1804. package/runtime/base/index.d.ts +1431 -0
  1805. package/runtime/base/package.json +23 -0
  1806. package/runtime/dynamic/.npmignore +2 -0
  1807. package/runtime/dynamic/bundles/index.umd.js +887 -0
  1808. package/runtime/dynamic/fesm2022/index.mjs +950 -0
  1809. package/runtime/dynamic/fesm2022/index.mjs.map +1 -0
  1810. package/runtime/dynamic/index.d.ts +164 -0
  1811. package/runtime/dynamic/package.json +23 -0
  1812. package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -0
  1813. package/scripts/d3/d3.min.js +2 -0
  1814. package/scripts/datatable/datatable.js +3796 -0
  1815. package/scripts/iscroll/build/iscroll.js +2091 -0
  1816. package/scripts/jquery-ui/ui/widgets/droppable.js +503 -0
  1817. package/scripts/jquery-ui/ui/widgets/resizable.js +1275 -0
  1818. package/scripts/jquery-ui/ui/widgets/sortable.js +1608 -0
  1819. package/scripts/jquery.ui.touch-punch/jquery.ui.touch-punch.min.js +11 -0
  1820. package/scripts/summernote/dist/summernote-lite.min.js +2 -0
  1821. package/scripts/swipey/swipey.jquery.plugin.js +799 -0
  1822. package/scripts/tree-keyboard-navigation/keyboard-navigation.js +251 -0
  1823. package/security/.npmignore +2 -0
  1824. package/security/bundles/index.umd.js +446 -0
  1825. package/security/fesm2022/index.mjs +444 -0
  1826. package/security/fesm2022/index.mjs.map +1 -0
  1827. package/security/index.d.ts +130 -0
  1828. package/security/package.json +23 -0
  1829. package/swipey/.npmignore +2 -0
  1830. package/swipey/bundles/index.umd.js +54 -0
  1831. package/swipey/fesm2022/index.mjs +51 -0
  1832. package/swipey/fesm2022/index.mjs.map +1 -0
  1833. package/swipey/index.d.ts +21 -0
  1834. package/swipey/package.json +23 -0
  1835. package/transpiler/.npmignore +2 -0
  1836. package/transpiler/bundles/index.umd.js +819 -0
  1837. package/transpiler/fesm2022/index.mjs +813 -0
  1838. package/transpiler/fesm2022/index.mjs.map +1 -0
  1839. package/transpiler/index.d.ts +47 -0
  1840. package/transpiler/package.json +24 -0
  1841. package/variables/.npmignore +2 -0
  1842. package/variables/bundles/index.umd.js +3174 -0
  1843. package/variables/fesm2022/index.mjs +3236 -0
  1844. package/variables/fesm2022/index.mjs.map +1 -0
  1845. package/variables/index.d.ts +468 -0
  1846. package/variables/package.json +23 -0
@@ -0,0 +1,1775 @@
1
+ import * as i2 from '@angular/common';
2
+ import { CommonModule } from '@angular/common';
3
+ import { SpinnerComponent } from '@wm/components/basic/spinner';
4
+ import * as i0 from '@angular/core';
5
+ import { HostBinding, Inject, Optional, ViewEncapsulation, Component } from '@angular/core';
6
+ import * as i1 from '@wm/core';
7
+ import { isEmptyObject, prettifyLabels, isNumberType, triggerFn, DataSource, getClonedObject, isDataSourceEqual, removeAttr } from '@wm/core';
8
+ import { register, PROP_STRING, PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, StylableComponent, styler, APPLY_STYLES_TYPE, WmAppIconComponent, provideAsWidgetRef } from '@wm/components/base';
9
+ import { invert, includes, split, isFinite, forEach, isUndefined, isString, isArray, get, minBy, maxBy, map, first, orderBy, groupBy, max, fill, forEachRight, concat, replace, uniq, intersection, isEmpty, keys, isObject, debounce } from 'lodash-es';
10
+ import * as momentLib from 'moment';
11
+
12
+ const registerProps = () => {
13
+ register('wm-chart', new Map([
14
+ ['aggregation', { value: 'none', ...PROP_STRING }],
15
+ ['aggregationcolumn', PROP_STRING],
16
+ ['areaviewtype', { value: 'stack', ...PROP_STRING }],
17
+ ['barspacing', { value: 'medium', ...PROP_STRING }],
18
+ ['bubblesize', PROP_STRING],
19
+ ['centerlabel', PROP_STRING],
20
+ ['class', PROP_STRING],
21
+ ['customcolors', PROP_ANY],
22
+ ['dataset', PROP_ANY],
23
+ ['datasource', PROP_STRING],
24
+ ['donutratio', { value: 'medium', ...PROP_STRING }],
25
+ ['formattype', { value: '', PROP_STRING }],
26
+ ['groupby', PROP_STRING],
27
+ ['height', { value: '210px', PROP_STRING }],
28
+ ['highlightpoints', PROP_BOOLEAN],
29
+ ['iconclass', PROP_STRING],
30
+ ['iconurl', PROP_STRING],
31
+ ['interpolation', { value: 'linear', ...PROP_STRING }],
32
+ ['labelthreshold', { value: 0.01, ...PROP_NUMBER }],
33
+ ['labeltype', { value: 'percent', ...PROP_STRING }],
34
+ ['legendtype', { value: 'furious', ...PROP_STRING }],
35
+ ['linethickness', PROP_STRING],
36
+ ['loadingdatamsg', { value: 'Loading...', ...PROP_STRING }],
37
+ ['name', PROP_STRING],
38
+ ['nodatamessage', { value: 'No Data Available.', ...PROP_STRING }],
39
+ ['offset', PROP_STRING],
40
+ ['offsetbottom', { value: 55, ...PROP_NUMBER }],
41
+ ['offsetleft', { value: 75, ...PROP_NUMBER }],
42
+ ['offsetright', { value: 25, ...PROP_NUMBER }],
43
+ ['offsettop', { value: 25, ...PROP_NUMBER }],
44
+ ['orderby', PROP_STRING],
45
+ ['reducexticks', { value: true, ...PROP_BOOLEAN }],
46
+ ['shape', { value: 'circle', ...PROP_STRING }],
47
+ ['show', { value: true, ...PROP_BOOLEAN }],
48
+ ['showlabels', { value: 'outside', ...PROP_STRING }],
49
+ ['showlabelsoutside', { value: true, ...PROP_BOOLEAN }],
50
+ ['showlegend', { value: 'top', ...PROP_STRING }],
51
+ ['showvalues', { value: false, ...PROP_BOOLEAN }],
52
+ ['showxaxis', { value: true, ...PROP_BOOLEAN }],
53
+ ['showxdistance', { value: false, ...PROP_BOOLEAN }],
54
+ ['showyaxis', { value: true, ...PROP_BOOLEAN }],
55
+ ['showydistance', { value: false, ...PROP_BOOLEAN }],
56
+ ['staggerlabels', { value: false, ...PROP_BOOLEAN }],
57
+ ['subheading', PROP_STRING],
58
+ ['theme', PROP_STRING],
59
+ ['title', PROP_STRING],
60
+ ['tooltips', { value: true, ...PROP_BOOLEAN }],
61
+ ['type', PROP_STRING],
62
+ ['viewtype', { value: 'Grouped', ...PROP_STRING }],
63
+ ['xaxisdatakey', PROP_STRING],
64
+ ['xaxislabel', PROP_STRING],
65
+ ['xaxislabeldistance', { value: 12, ...PROP_NUMBER }],
66
+ ['xdateformat', PROP_STRING],
67
+ ['xdomain', { value: 'Default', ...PROP_STRING }],
68
+ ['xnumberformat', PROP_STRING],
69
+ ['xunits', PROP_STRING],
70
+ ['yaxisdatakey', PROP_STRING],
71
+ ['yaxislabel', PROP_STRING],
72
+ ['yaxislabeldistance', { value: 12, ...PROP_NUMBER }],
73
+ ['ydomain', { value: 'Default', ...PROP_STRING }],
74
+ ['ynumberformat', PROP_STRING],
75
+ ['yunits', PROP_STRING]
76
+ ]));
77
+ };
78
+
79
+ const moment = momentLib.default || window['moment'];
80
+ const chartTypes = ['Column', 'Line', 'Area', 'Cumulative Line', 'Bar', 'Pie', 'Donut', 'Bubble'], allShapes = ['circle', 'square', 'diamond', 'cross', 'triangle-up', 'triangle-down'];
81
+ const dateList = ['01/01/2001', '01/01/2002', '01/01/2003'], themes = {
82
+ 'Terrestrial': {
83
+ colors: ['#1f77b4', '#aec7e8', '#ff7f0e', '#ffbb78', '#2ca02c', '#98df8a', '#d62728', '#ff9896', '#9467bd', '#c5b0d5', '#8c564b', '#c49c94', '#e377c2', '#f7b6d2', '#7f7f7f', '#c7c7c7', '#bcbd22', '#dbdb8d', '#17becf', '#9edae5'],
84
+ tooltip: {
85
+ 'backgroundColor': '#de7d28',
86
+ 'textColor': '#FFFFFF'
87
+ }
88
+ },
89
+ 'Annabelle': {
90
+ colors: ['#393b79', '#5254a3', '#6b6ecf', '#9c9ede', '#637939', '#8ca252', '#b5cf6b', '#cedb9c', '#8c6d31', '#bd9e39', '#e7ba52', '#e7cb94', '#843c39', '#ad494a', '#d6616b', '#e7969c', '#7b4173', '#a55194', '#ce6dbd', '#de9ed6'],
91
+ tooltip: {
92
+ 'backgroundColor': '#2e306f',
93
+ 'textColor': '#FFFFFF'
94
+ }
95
+ },
96
+ 'Azure': {
97
+ colors: ['#3182bd', '#6baed6', '#9ecae1', '#c6dbef', '#e6550d', '#fd8d3c', '#fdae6b', '#fdd0a2', '#31a354', '#74c476', '#a1d99b', '#c7e9c0', '#756bb1', '#9e9ac8', '#bcbddc', '#dadaeb', '#636363', '#969696', '#bdbdbd', '#d9d9d9'],
98
+ tooltip: {
99
+ 'backgroundColor': '#3182bd',
100
+ 'textColor': '#FFFFFF'
101
+ }
102
+ },
103
+ 'Retro': {
104
+ colors: ['#0ca7a1', '#ffa615', '#334957', '#acc5c2', '#988f90', '#8accc9', '#515151', '#f27861', '#36c9fd', '#794668', '#0f709d', '#0d2738', '#44be78', '#4a1839', '#6a393f', '#557d8b', '#6c331c', '#1c1c1c', '#861500', '#09562a'],
105
+ tooltip: {
106
+ 'backgroundColor': '#80513a',
107
+ 'textColor': '#FFFFFF'
108
+ }
109
+ },
110
+ 'Mellow': {
111
+ colors: ['#f0dcbf', '#88c877', '#aeb918', '#2e2c23', '#ddddd2', '#dfe956', '#4c963b', '#5d3801', '#e1eec3', '#cd8472', '#fcfab3', '#9a4635', '#9295ad', '#2e3f12', '#565677', '#557d8b', '#4f4d02', '#0c0c1b', '#833324', '#24120e'],
112
+ tooltip: {
113
+ 'backgroundColor': '#7c9e73',
114
+ 'textColor': '#FFFFFF'
115
+ }
116
+ },
117
+ 'Orient': {
118
+ colors: ['#a80000', '#cc6c3c', '#f0e400', '#000084', '#fccc6c', '#009c6c', '#cc309c', '#78cc00', '#fc84e4', '#48e4fc', '#4878d8', '#186c0c', '#606060', '#a8a8a8', '#000000', '#d7d7d7', '#75a06e', '#190d0b', '#888888', '#694b84'],
119
+ tooltip: {
120
+ 'backgroundColor': '#c14242',
121
+ 'textColor': '#FFFFFF'
122
+ }
123
+ },
124
+ 'GrayScale': {
125
+ colors: ['#141414', '#353535', '#5b5b5b', '#848484', '#a8a8a8', '#c3c3c3', '#e0e0e0', '#c8c8c8', '#a5a5a5', '#878787', '#656565', '#4e4e4e', '#303030', '#1c1c1c', '#4f4f4f', '#3b3b3b', '#757575', '#606060', '#868686', '#c1c1c1'],
126
+ tooltip: {
127
+ 'backgroundColor': '#575757',
128
+ 'textColor': '#FFFFFF'
129
+ }
130
+ },
131
+ 'Flyer': {
132
+ colors: ['#3f454c', '#5a646e', '#848778', '#cededf', '#74c4dd', '#0946ed', '#380bb1', '#000ff0', '#f54a23', '#1db262', '#bca3aa', '#ffa500', '#a86b32', '#63a18c', '#56795e', '#934343', '#b75f5f', '#752d2d', '#4e1111', '#920606'],
133
+ tooltip: {
134
+ 'backgroundColor': '#47637c',
135
+ 'textColor': '#FFFFFF'
136
+ }
137
+ },
138
+ 'Luminosity': {
139
+ colors: ['#FFFFFF', '#e4e4e4', '#00bcd4', '#f0dd2f', '#00aabf', '#018376', '#e91e63', '#39e5d4', '#ff6d6d', '#00ff76', '#ff9800', '#969696', '#ff4200', '#e00000', '#95cbe5', '#5331ff', '#fff4a7', '#e7a800', '#0061e4', '#d5e7ff'],
140
+ tooltip: {
141
+ 'backgroundColor': '#47637c',
142
+ 'textColor': '#FFFFFF'
143
+ }
144
+ }
145
+ }, basicProperties = ['xaxislabel', 'yaxislabel', 'xunits', 'yunits', 'xnumberformat', 'xdateformat', 'ynumberformat',
146
+ 'showvalues', 'showlabels', 'viewtype', 'areaviewtype', 'staggerlabels', 'reducexticks', 'offsettop', 'offsetbottom', 'offsetright', 'offsetleft',
147
+ 'barspacing', 'xaxislabeldistance', 'yaxislabeldistance', 'theme', 'labeltype', 'donutratio', 'showlabelsoutside', 'showxdistance', 'showydistance', 'shape', 'nodatamessage', 'captions', 'showxaxis', 'showyaxis',
148
+ 'centerlabel', 'customcolors', 'showlegend', 'legendtype', 'xdomain', 'ydomain', 'tooltips', 'linethickness', 'highlightpoints', 'interpolation', 'labelthreshold'], barSpacingMap = {
149
+ 'small': 0.3,
150
+ 'medium': 0.5,
151
+ 'large': 0.8
152
+ }, donutRatioMap = {
153
+ 'small': 0.3,
154
+ 'medium': 0.6,
155
+ 'large': 0.7
156
+ }, barSpacingMapInvert = invert(barSpacingMap), donutRatioMapInvert = invert(donutRatioMap), tickformats = {
157
+ 'Thousand': {
158
+ 'prefix': 'K',
159
+ 'divider': 1000
160
+ },
161
+ 'Million': {
162
+ 'prefix': 'M',
163
+ 'divider': 1000000
164
+ },
165
+ 'Billion': {
166
+ 'prefix': 'B',
167
+ 'divider': 1000000000
168
+ }
169
+ }, chartId = '#preview-chart', dataTypeJSON = ['Column', 'Line', 'Pie', 'Bar', 'Donut', 'Bubble'], // Charts that supports the data to be JSON;
170
+ lineTypeCharts = ['Line', 'Area', 'Cumulative Line'], // Charts that does not supports the string type of data in the xaxis in the nvd3;
171
+ dataTypeArray = ['Cumulative Line', 'Area'], // Charts that supports the data to be Array
172
+ SAMPLE_DATA = {
173
+ 'group1': 'Europe',
174
+ 'group2': 'Asia',
175
+ 'group3': 'America',
176
+ 'group4': 'Australia'
177
+ };
178
+ // returns true if chart type is pie
179
+ const isPieChart = type => type === 'Pie';
180
+ // returns true if chart type is line
181
+ const isLineChart = type => type === 'Line';
182
+ // returns true if chart type is bar
183
+ const isBarChart = type => type === 'Bar';
184
+ // returns true if chart type is donut
185
+ const isDonutChart = type => type === 'Donut';
186
+ // returns true if chart type is bubble
187
+ const isBubbleChart = type => type === 'Bubble';
188
+ // returns true if chart type is column
189
+ const isColumnChart = type => type === 'Column';
190
+ // returns true if chart type is area
191
+ const isAreaChart = type => type === 'Area';
192
+ // returns true if chart type is area
193
+ const isPieType = type => isPieChart(type) || isDonutChart(type);
194
+ // The format of chart data is array of json objects in case of the following types of chart
195
+ const isChartDataJSON = type => includes(dataTypeJSON, type) || !includes(chartTypes, type);
196
+ // The format of chart data is array of objects in case of the following types of chart
197
+ const isChartDataArray = type => includes(dataTypeArray, type);
198
+ // returns true is the chart type is 'line', 'area' or 'cumulative line' else false
199
+ const isLineTypeChart = type => includes(lineTypeCharts, type);
200
+ // X/Y Domain properties are supported only for Column and Area charts
201
+ const isAxisDomainSupported = type => isColumnChart(type) || isAreaChart(type);
202
+ // Returns bar spacing value
203
+ const getBarSpacingValue = (value, prop) => {
204
+ if (prop === 'value') {
205
+ return barSpacingMap[value];
206
+ }
207
+ if (prop === 'key') {
208
+ return barSpacingMapInvert[value];
209
+ }
210
+ };
211
+ // Returns radius value
212
+ const getRadiusValue = (value, prop) => {
213
+ if (prop === 'value') {
214
+ return donutRatioMap[value];
215
+ }
216
+ if (prop === 'key') {
217
+ return donutRatioMapInvert[value];
218
+ }
219
+ };
220
+ // Returns labels config
221
+ const getLabelValues = (showlabels, showlabelsoutside, prop) => {
222
+ const labelsConfig = {};
223
+ switch (showlabels) {
224
+ case 'hide':
225
+ labelsConfig.showlabels = false;
226
+ break;
227
+ case 'inside':
228
+ labelsConfig.showlabels = true;
229
+ labelsConfig.showlabelsoutside = false;
230
+ break;
231
+ case 'outside':
232
+ labelsConfig.showlabels = true;
233
+ labelsConfig.showlabelsoutside = true;
234
+ break;
235
+ }
236
+ return labelsConfig;
237
+ };
238
+ // Construct the sample data
239
+ const constructSampleData = (dataType, yaxisLength, shape) => {
240
+ let first_series = [], second_series = [], third_series = [], first_series_array = [], second_series_array = [], third_series_array = [], first_series_bubble = [], second_series_bubble = [], third_series_bubble = [], data = [];
241
+ switch (dataType) {
242
+ case 'jsonFormat':
243
+ first_series = [
244
+ { 'x': '01/01/2001', 'y': 4000000 },
245
+ { 'x': '01/01/2002', 'y': 1000000 },
246
+ { 'x': '01/01/2003', 'y': 5000000 }
247
+ ];
248
+ second_series = [
249
+ { 'x': '01/01/2001', 'y': 3000000 },
250
+ { 'x': '01/01/2002', 'y': 4000000 },
251
+ { 'x': '01/01/2003', 'y': 7000000 }
252
+ ];
253
+ third_series = [
254
+ { 'x': '01/01/2001', 'y': 2000000 },
255
+ { 'x': '01/01/2002', 'y': 8000000 },
256
+ { 'x': '01/01/2003', 'y': 6000000 }
257
+ ];
258
+ data[0] = {
259
+ values: first_series,
260
+ key: SAMPLE_DATA.group1
261
+ };
262
+ if (yaxisLength >= 2) {
263
+ data[1] = {
264
+ values: second_series,
265
+ key: SAMPLE_DATA.group2
266
+ };
267
+ }
268
+ if (yaxisLength >= 3) {
269
+ data[2] = {
270
+ values: third_series,
271
+ key: SAMPLE_DATA.group3
272
+ };
273
+ }
274
+ break;
275
+ case 'lineChartFormat':
276
+ first_series = [
277
+ { 'x': 1, 'y': 4000000 },
278
+ { 'x': 2, 'y': 1000000 },
279
+ { 'x': 3, 'y': 5000000 }
280
+ ];
281
+ second_series = [
282
+ { 'x': 1, 'y': 3000000 },
283
+ { 'x': 2, 'y': 4000000 },
284
+ { 'x': 3, 'y': 7000000 }
285
+ ];
286
+ third_series = [
287
+ { 'x': 1, 'y': 2000000 },
288
+ { 'x': 2, 'y': 8000000 },
289
+ { 'x': 3, 'y': 6000000 }
290
+ ];
291
+ data[0] = {
292
+ values: first_series,
293
+ key: SAMPLE_DATA.group1
294
+ };
295
+ if (yaxisLength >= 2) {
296
+ data[1] = {
297
+ values: second_series,
298
+ key: SAMPLE_DATA.group2
299
+ };
300
+ }
301
+ if (yaxisLength >= 3) {
302
+ data[2] = {
303
+ values: third_series,
304
+ key: SAMPLE_DATA.group3
305
+ };
306
+ }
307
+ break;
308
+ case 'arrayFormat':
309
+ first_series_array = [
310
+ [1, 4000000],
311
+ [2, 1000000],
312
+ [3, 5000000]
313
+ ];
314
+ second_series_array = [
315
+ [1, 3000000],
316
+ [2, 4000000],
317
+ [3, 7000000]
318
+ ];
319
+ third_series_array = [
320
+ [1, 2000000],
321
+ [2, 8000000],
322
+ [3, 6000000]
323
+ ];
324
+ data[0] = {
325
+ values: first_series_array,
326
+ key: SAMPLE_DATA.group1
327
+ };
328
+ if (yaxisLength >= 2) {
329
+ data[1] = {
330
+ values: second_series_array,
331
+ key: SAMPLE_DATA.group2
332
+ };
333
+ }
334
+ if (yaxisLength >= 3) {
335
+ data[2] = {
336
+ values: third_series_array,
337
+ key: SAMPLE_DATA.group3
338
+ };
339
+ }
340
+ break;
341
+ case 'bubbleFormat':
342
+ shape = shape === 'random' ? allShapes[Math.floor(Math.random() * allShapes.length)] : shape;
343
+ first_series_bubble = [
344
+ { 'x': 80.66, 'y': 33739900, 'size': 78, 'shape': shape },
345
+ { 'x': 79.84, 'y': 81902300, 'size': 90, 'shape': shape },
346
+ { 'x': 78.6, 'y': 5523100, 'size': 45, 'shape': shape }
347
+ ];
348
+ second_series_bubble = [
349
+ { 'x': 72.73, 'y': 79716200, 'size': 98, 'shape': shape },
350
+ { 'x': 80.05, 'y': 61801600, 'size': 20, 'shape': shape },
351
+ { 'x': 72.49, 'y': 73137200, 'size': 34, 'shape': shape }
352
+ ];
353
+ third_series_bubble = [
354
+ { 'x': 68.09, 'y': 33739900, 'size': 45, 'shape': shape },
355
+ { 'x': 81.55, 'y': 7485600, 'size': 78, 'shape': shape },
356
+ { 'x': 68.60, 'y': 141850000, 'size': 56, 'shape': shape }
357
+ ];
358
+ data[0] = {
359
+ values: first_series_bubble,
360
+ key: SAMPLE_DATA.group1
361
+ };
362
+ if (yaxisLength >= 2) {
363
+ data[1] = {
364
+ values: second_series_bubble,
365
+ key: SAMPLE_DATA.group2
366
+ };
367
+ }
368
+ if (yaxisLength >= 3) {
369
+ data[2] = {
370
+ values: third_series_bubble,
371
+ key: SAMPLE_DATA.group3
372
+ };
373
+ }
374
+ break;
375
+ case 'pieChartFormat':
376
+ data = [
377
+ { 'x': SAMPLE_DATA.group1, 'y': 1000000 },
378
+ { 'x': SAMPLE_DATA.group2, 'y': 2000000 },
379
+ { 'x': SAMPLE_DATA.group3, 'y': 3000000 },
380
+ { 'x': SAMPLE_DATA.group4, 'y': 4000000 }
381
+ ];
382
+ break;
383
+ }
384
+ return data;
385
+ };
386
+ const getDataType = widgetContext => {
387
+ const type = widgetContext.type;
388
+ if (isLineChart(type)) {
389
+ return 'lineChartFormat';
390
+ }
391
+ if (isPieType(type)) {
392
+ return 'pieChartFormat';
393
+ }
394
+ if (isBubbleChart(type)) {
395
+ return 'bubbleFormat';
396
+ }
397
+ return isChartDataJSON(type) ? 'jsonFormat' : 'arrayFormat';
398
+ };
399
+ // Sample data to populate when no data is bound
400
+ const getSampleData = widgetContext => constructSampleData(getDataType(widgetContext), split(widgetContext.yaxisdatakey, ',').length, widgetContext.shape);
401
+ // Check whether X/Y Domain was set to Min and is supported for the present chart
402
+ const isAxisDomainValid = (widgetContext, axis) => {
403
+ if (widgetContext[axis + 'domain'] === 'Min' && (isAxisDomainSupported(widgetContext.type))) {
404
+ return true;
405
+ }
406
+ return false;
407
+ };
408
+ // Check whether min and max values are finite or not
409
+ const areMinMaxValuesValid = values => {
410
+ if (isFinite(values.min) && isFinite(values.max)) {
411
+ return true;
412
+ }
413
+ return false;
414
+ };
415
+ const getYScaleMinValue = value => {
416
+ const _min = Math.floor(value);
417
+ /* If the number has a) decimal part returning floor value - 0.1
418
+ b) no decimal part returning floor value - 1 */
419
+ return Math.abs(value) - _min > 0 ? value - 0.1 : _min - 1;
420
+ };
421
+ // Chooses the data points of line/cumulative line/area chart and highlights them
422
+ const highlightPoints = (id, highlightpoints) => {
423
+ const chartSvg = id ? d3.select('#wmChart' + id + ' svg') : d3.select(chartId + ' svg');
424
+ if (highlightpoints) {
425
+ chartSvg.selectAll('.nv-point')
426
+ .style('stroke-width', '6px')
427
+ .style('fill-opacity', '0.95')
428
+ .style('stroke-opacity', '0.95');
429
+ }
430
+ else {
431
+ chartSvg.selectAll('.nv-point')
432
+ .style('stroke-width', '0px')
433
+ .style('fill-opacity', '0');
434
+ }
435
+ };
436
+ // Chooses the line of line/cumulative line and increases the thickness of it
437
+ const setLineThickness = (id, thickness) => {
438
+ const chartSvg = id ? d3.select('#wmChart' + id + ' svg') : d3.select(chartId + ' svg');
439
+ thickness = thickness || 1.5;
440
+ const lines = chartSvg.selectAll('.nv-line');
441
+ if (lines.size() !== 0) {
442
+ lines.style('stroke-width', thickness);
443
+ }
444
+ };
445
+ // Constructing a common key value map for preview and canvas mode
446
+ const initProperties = (widgetContext, propertyValueMap) => {
447
+ if (!propertyValueMap || isEmptyObject(propertyValueMap)) {
448
+ propertyValueMap = {};
449
+ }
450
+ forEach(basicProperties, prop => {
451
+ if (isUndefined(propertyValueMap[prop])) {
452
+ propertyValueMap[prop] = widgetContext[prop];
453
+ }
454
+ });
455
+ return propertyValueMap;
456
+ };
457
+ const getNumberValue = (value, callback) => {
458
+ return isNaN(parseInt(value, 10)) ? callback(value, 'value') : value;
459
+ };
460
+ // Formats the given value according to date format
461
+ const getDateFormatedData = (dateFormat, d) => {
462
+ dateFormat = dateFormat || '%x';
463
+ /**
464
+ * if date value is string "20-05-2019" then new Date(value) return 20May2019 with current time in India,
465
+ * whereas this will return 19May2019 with time lagging for few hours.
466
+ * This is because it returns UTC time i.e. Coordinated Universal Time (UTC).
467
+ * To create date in local time use moment
468
+ */
469
+ if (dateFormat == '%c') {
470
+ dateFormat = '%a %b %e %X %Y';
471
+ }
472
+ return d3.timeFormat(dateFormat)(new Date(moment(moment(d).format()).valueOf()));
473
+ };
474
+ const removeTrailingZeros = value => {
475
+ if (!value) {
476
+ return value;
477
+ }
478
+ // Convert value to a string if it's a number
479
+ const stringValue = typeof value === 'number' ? value.toString() : value;
480
+ // Remove trailing zeros
481
+ return stringValue.replace(/\.0+([A-Za-z]*)$/, '$1').replace(/\.([1-9]+)0+([A-Za-z]*)$/, '.$1$2');
482
+ };
483
+ // Formats the given value according to number format
484
+ const getNumberFormatedData = (numberFormat, d) => {
485
+ let formattedData, divider, prefix;
486
+ // formatting the data based on number format selected
487
+ if (numberFormat) {
488
+ let numberFormatter;
489
+ if (numberFormat == 'Thousand' || numberFormat == 'Million' || numberFormat == 'Billion') {
490
+ numberFormatter = d3.format(',.2s');
491
+ }
492
+ else if (numberFormat == '%') {
493
+ numberFormatter = d3.format('.2%');
494
+ }
495
+ else if (numberFormat == '.f') {
496
+ numberFormatter = d3.format('.2f');
497
+ }
498
+ else {
499
+ numberFormatter = d3.format(numberFormat);
500
+ }
501
+ formattedData = numberFormatter(d);
502
+ // Getting the respective divider[1000,1000000,1000000000] based on the number format choosen
503
+ divider = (tickformats[numberFormat] && tickformats[numberFormat].divider) || 0;
504
+ prefix = tickformats[numberFormat] && tickformats[numberFormat].prefix;
505
+ if (prefix && divider !== 0) {
506
+ formattedData = d3.format('.2f')(d / divider) + prefix;
507
+ }
508
+ }
509
+ else {
510
+ // Auto formatting the data when no formating option is chosen
511
+ formattedData = d >= 1000 ? d3.format('.1s')(d) : d;
512
+ }
513
+ formattedData = removeTrailingZeros(formattedData);
514
+ return formattedData;
515
+ };
516
+ // Set the visibility property of the chart x,y axis due to a bug in the nvd3
517
+ const toggleAxisShow = (property, value) => {
518
+ const $xAxis = d3.select(chartId + ' g.nv-axis.nv-x'), $yAxis = d3.select(chartId + ' g.nv-axis.nv-y');
519
+ if (property === 'showxaxis') {
520
+ $xAxis.style('visibility', value ? 'visible' : 'hidden');
521
+ }
522
+ else {
523
+ $yAxis.style('visibility', value ? 'visible' : 'hidden');
524
+ }
525
+ };
526
+ const modifyLegendPosition = (widgetContext, position, id) => {
527
+ const showLegend = isShowLegend(widgetContext.showlegend), chart_Id = id ? '#wmChart' + id : chartId, legendWrap = d3.select(chart_Id + ' .nv-legendWrap'), legendPadding = 5;
528
+ // Return when showlegend is false
529
+ if (!showLegend || !legendWrap['_groups'][0][0]) {
530
+ return;
531
+ }
532
+ if (position === 'bottom') {
533
+ const legendWrapHeight = legendWrap['_groups'][0][0].getBoundingClientRect().height, wrap = d3.select(chart_Id + ' .nv-wrap'), wrapTransform = (wrap && wrap.attr('transform')) ? wrap.attr('transform').replace(/, /g, ',') : '', coordinates = /translate\(\s*([^\s,)]+)[ ,]([^\s,)]+)/.exec(wrapTransform), getChartHeight = () => {
534
+ let chartHeight = $(chart_Id + ' svg>.nvd3.nv-wrap')[0].getBoundingClientRect().height;
535
+ if (chartHeight === 0) { // fix for IE
536
+ chartHeight = ($(chart_Id + ' svg')[0].getBoundingClientRect().height - (legendWrapHeight + 15));
537
+ }
538
+ return chartHeight;
539
+ };
540
+ legendWrap.attr('transform', 'translate(0 , ' + (getChartHeight() - legendWrapHeight - legendPadding) + ')');
541
+ if (coordinates) {
542
+ wrap.attr('transform', 'translate(' + coordinates[1] + ',' + legendPadding + ')');
543
+ }
544
+ }
545
+ };
546
+ // Returns value if legend need to shown or not
547
+ const isShowLegend = value => {
548
+ // Old projects will have either true or false
549
+ if (value === 'false' || value === false) {
550
+ return false;
551
+ }
552
+ if (value === 'true' || value === true) {
553
+ return true;
554
+ }
555
+ // New projects will have either 'Hide Legend', 'Show Top', 'Show Bottom'
556
+ return value === 'hide' ? false : true;
557
+ };
558
+ /**
559
+ * Customise the tooltip for donut & pie charts and also for charts having only one value attached to yaxis
560
+ * @param key
561
+ * @param label
562
+ */
563
+ const customiseTooltip = (chart, propertyValueMap, widgetContext, label) => {
564
+ d3.selectAll('.nvtooltip').style('opacity', 0);
565
+ chart.tooltip.contentGenerator((key, propValueMap) => {
566
+ let xValue = key.data.x, yValue;
567
+ yValue = getNumberFormatedData(propValueMap?.ynumberformat || widgetContext?.ynumberformat || propertyValueMap?.ynumberformat, key.data.y);
568
+ if (isPieType(widgetContext.type)) {
569
+ label = key.data.x;
570
+ xValue = '';
571
+ }
572
+ return '<table>' +
573
+ '<tbody>' +
574
+ '<tr class="value"><b>' + xValue +
575
+ '</b></tr>' +
576
+ '<tr>' +
577
+ '<td class="legend-color-guide"><div style="background-color:' + key.color + ';"></div></td>' +
578
+ '<td class="key">' + label + '</td>' +
579
+ '<td class="value">' + yValue + '</td>' +
580
+ '</tr>' +
581
+ '</tbody>' +
582
+ '</table>';
583
+ });
584
+ };
585
+ // intializes the chart obejct
586
+ const initChart = (widgetContext, xDomainValues, yDomainValues, propertyValueMap, isPreview) => {
587
+ propertyValueMap = initProperties(widgetContext, propertyValueMap);
588
+ let chart, colors = [], xaxislabel, yaxislabel, labelConfig, radius, barSpacing, showLegend, xAxisValue, hasMultipleYValues;
589
+ const xValue = {}, yValue = {};
590
+ switch (widgetContext.type) {
591
+ case 'Column':
592
+ barSpacing = getNumberValue(propertyValueMap.barspacing, getBarSpacingValue) || barSpacingMap.medium;
593
+ chart = nv.models.multiBarChart()
594
+ .x(d => d.x)
595
+ .y(d => d.y)
596
+ .reduceXTicks(propertyValueMap.reducexticks)
597
+ .rotateLabels(0)
598
+ .showControls(false)
599
+ .stacked(propertyValueMap.viewtype === 'Stacked' ? true : false)
600
+ .groupSpacing(barSpacing);
601
+ break;
602
+ case 'Cumulative Line':
603
+ chart = nv.models.cumulativeLineChart()
604
+ .x(d => d[0])
605
+ .y(d => d[1])
606
+ .showControls(false)
607
+ .useInteractiveGuideline(propertyValueMap.tooltips)
608
+ .interpolate(propertyValueMap.interpolation);
609
+ break;
610
+ case 'Line':
611
+ chart = nv.models.lineChart()
612
+ .useInteractiveGuideline(propertyValueMap.tooltips)
613
+ .interpolate(propertyValueMap.interpolation);
614
+ break;
615
+ case 'Area':
616
+ chart = nv.models.stackedAreaChart()
617
+ .x(d => d.x)
618
+ .y(d => d.y)
619
+ .clipEdge(true)
620
+ .showControls(false)
621
+ .style(propertyValueMap.areaviewtype)
622
+ .useInteractiveGuideline(propertyValueMap.tooltips)
623
+ .interpolate(propertyValueMap.interpolation);
624
+ break;
625
+ case 'Bar':
626
+ barSpacing = getNumberValue(propertyValueMap.barspacing, getBarSpacingValue) || barSpacingMap.medium;
627
+ chart = nv.models.multiBarHorizontalChart()
628
+ .x(d => d.x)
629
+ .y(d => d.y)
630
+ .showControls(false)
631
+ .stacked(propertyValueMap.viewtype === 'Stacked' ? true : false)
632
+ .showValues(propertyValueMap.showvalues)
633
+ .groupSpacing(barSpacing);
634
+ break;
635
+ case 'Pie':
636
+ case 'Donut':
637
+ labelConfig = getLabelValues(propertyValueMap.showlabels, propertyValueMap.showlabelsoutside, 'value');
638
+ radius = getNumberValue(propertyValueMap.donutratio, getRadiusValue) || donutRatioMap.medium;
639
+ chart = nv.models.pieChart()
640
+ .x(d => d.x)
641
+ .y(d => d.y)
642
+ .showLabels(labelConfig.showlabels)
643
+ .labelType(propertyValueMap.labeltype)
644
+ .valueFormat(d3.format('%'))
645
+ .title(propertyValueMap.centerlabel)
646
+ .labelThreshold(propertyValueMap.labelthreshold || 0.01)
647
+ .labelsOutside(labelConfig.showlabelsoutside);
648
+ if (isDonutChart(widgetContext.type)) {
649
+ chart.donut(true)
650
+ .donutRatio(radius);
651
+ }
652
+ if (propertyValueMap.labeltype === 'key-value') {
653
+ chart.labelType(d => d.data.x + ' ' + d.data.y);
654
+ }
655
+ break;
656
+ case 'Bubble':
657
+ chart = nv.models.scatterChart()
658
+ .x(d => d.x)
659
+ .y(d => d.y)
660
+ .showDistX(propertyValueMap.showxdistance)
661
+ .showDistY(propertyValueMap.showydistance);
662
+ break;
663
+ }
664
+ if (xDomainValues) {
665
+ xValue.min = xDomainValues.min.x || xDomainValues.min[0];
666
+ xValue.max = xDomainValues.max.x || xDomainValues.max[0];
667
+ // If the values on the x axis are string then min max values gives Infinity
668
+ if (areMinMaxValuesValid(xValue)) {
669
+ // Reducing the min value to 0.1 so the min value is not missed out
670
+ xValue.min = getYScaleMinValue(xValue.min);
671
+ chart.xDomain([xValue.min, xValue.max]);
672
+ }
673
+ }
674
+ if (yDomainValues) {
675
+ // Reducing the min value to 1 so the min value is not missed out
676
+ yValue.min = yDomainValues.min.y || yDomainValues.min[1];
677
+ yValue.max = yDomainValues.max.y || yDomainValues.max[1];
678
+ // If the values on the y axis are string or invalid then min max values gives Infinity
679
+ if (areMinMaxValuesValid(yValue)) {
680
+ // Reducing the min value to 1 so the min value is not missed out
681
+ yValue.min = getYScaleMinValue(yValue.min);
682
+ chart.yDomain([yValue.min, yValue.max]);
683
+ }
684
+ }
685
+ // Setting the legend type choosen by user or default it will be furious
686
+ chart.legend.vers((propertyValueMap.legendtype && propertyValueMap.legendtype.toLowerCase()) || 'furious');
687
+ if (!includes(chartTypes, widgetContext.type)) {
688
+ chart = nv.models.multiBarChart()
689
+ .x(d => d.x)
690
+ .y(d => d.y);
691
+ }
692
+ if (isPieType(widgetContext.type)) {
693
+ // In case of pie/donut chart formatting the values of it
694
+ if (propertyValueMap.labeltype === 'percent') {
695
+ chart.valueFormat(d3.format('%'));
696
+ }
697
+ else {
698
+ chart.valueFormat(d => getNumberFormatedData(propertyValueMap.ynumberformat, d));
699
+ }
700
+ // Customizing the tooltips in case of the pie and donut when labelType is value
701
+ customiseTooltip(chart, propertyValueMap, widgetContext);
702
+ }
703
+ else {
704
+ chart.showXAxis(propertyValueMap.showxaxis)
705
+ .showYAxis(propertyValueMap.showyaxis);
706
+ chart.legendPosition(propertyValueMap.showlegend);
707
+ // Setting the labels if they are specified explicitly or taking the axiskeys chosen
708
+ xaxislabel = propertyValueMap.xaxislabel || prettifyLabels(widgetContext.xaxisdatakey) || 'x caption';
709
+ yaxislabel = propertyValueMap.yaxislabel || prettifyLabels(widgetContext.yaxisdatakey) || 'y caption';
710
+ // Checking if y axis has multiple values
711
+ if (widgetContext.yaxisdatakey && widgetContext.yaxisdatakey.split(',').length > 1) {
712
+ hasMultipleYValues = true;
713
+ }
714
+ // Customizing the tooltip to show yaxislabel, only if the y axis contains one value
715
+ if (!hasMultipleYValues && !isBubbleChart(widgetContext.type)) {
716
+ customiseTooltip(chart, propertyValueMap, widgetContext, yaxislabel);
717
+ }
718
+ // Adding the units to the captions if they are specified
719
+ xaxislabel += propertyValueMap.xunits ? '(' + propertyValueMap.xunits + ')' : '';
720
+ yaxislabel += propertyValueMap.yunits ? '(' + propertyValueMap.yunits + ')' : '';
721
+ chart.xAxis
722
+ .axisLabel(xaxislabel)
723
+ .axisLabelDistance(propertyValueMap.xaxislabeldistance)
724
+ .staggerLabels(propertyValueMap.staggerlabels);
725
+ // If date format set format based date format
726
+ if (propertyValueMap.xdateformat || (isPreview && !isBubbleChart(widgetContext.type))) {
727
+ if (isLineTypeChart(widgetContext.type)) {
728
+ chart.xAxis.tickFormat(d => {
729
+ // get the actual value
730
+ xAxisValue = isPreview ? dateList[d - 1] : widgetContext.xDataKeyArr[d];
731
+ return getDateFormatedData(propertyValueMap.xdateformat, xAxisValue);
732
+ });
733
+ }
734
+ else {
735
+ chart.xAxis.tickFormat(d => getDateFormatedData(propertyValueMap.xdateformat, d));
736
+ }
737
+ }
738
+ else if (propertyValueMap.xnumberformat) {
739
+ chart.xAxis.tickFormat(d => getNumberFormatedData(propertyValueMap.xnumberformat, d));
740
+ }
741
+ else {
742
+ if (isLineTypeChart(widgetContext.type)) {
743
+ // get the actual value
744
+ chart.xAxis.tickFormat(d => widgetContext.xDataKeyArr[d]);
745
+ }
746
+ }
747
+ chart.yAxis
748
+ .axisLabel(yaxislabel)
749
+ .axisLabelDistance(propertyValueMap.yaxislabeldistance)
750
+ .staggerLabels(propertyValueMap.staggerlabels)
751
+ .tickFormat(d => getNumberFormatedData(propertyValueMap?.ynumberformat, d));
752
+ if (isBarChart(widgetContext.type)) {
753
+ chart.valueFormat(d => getNumberFormatedData(propertyValueMap?.ynumberformat, d));
754
+ }
755
+ }
756
+ // Support for custom colors if user gives direct string of colors in text box
757
+ if (isString(propertyValueMap.customcolors) && propertyValueMap.customcolors) {
758
+ colors = split(propertyValueMap.customcolors, ',');
759
+ }
760
+ if (isArray(propertyValueMap.customcolors)) {
761
+ colors = propertyValueMap.customcolors;
762
+ }
763
+ showLegend = isShowLegend(propertyValueMap.showlegend);
764
+ chart.showLegend(showLegend)
765
+ .margin({ top: propertyValueMap.offsettop, right: propertyValueMap.offsetright, bottom: propertyValueMap.offsetbottom, left: propertyValueMap.offsetleft })
766
+ .color(colors.length ? colors : themes[propertyValueMap.theme].colors);
767
+ chart.tooltip.enabled(propertyValueMap.tooltips);
768
+ widgetContext.message = propertyValueMap.nodatamessage || 'No data found';
769
+ // setting the no data message
770
+ chart.noData(widgetContext.message);
771
+ if (isLineTypeChart(widgetContext.type) && widgetContext.highlightpoints) {
772
+ chart.dispatch.on('stateChange', () => {
773
+ setTimeout(() => postPlotChartProcess(widgetContext), 100);
774
+ });
775
+ }
776
+ if (widgetContext.showlegend && (widgetContext.type === 'Donut' || widgetContext.type === 'Pie')) {
777
+ if (widgetContext.showlegend === 'right') {
778
+ chart.legendPosition('right');
779
+ }
780
+ }
781
+ return chart;
782
+ };
783
+ // @ts-ignore
784
+ const postPlotChartProcess = (widgetContext, isPreview) => {
785
+ const id = isPreview ? null : widgetContext.$id;
786
+ // If user sets to highlight the data points and increase the thickness of the line
787
+ if (isLineTypeChart(widgetContext.type)) {
788
+ setLineThickness(id, widgetContext.linethickness);
789
+ highlightPoints(id, widgetContext.highlightpoints);
790
+ }
791
+ // Modifying the legend position only when legend is shown
792
+ // if (widgetContext.showlegend) {
793
+ // modifyLegendPosition(widgetContext, widgetContext.showlegend, id);
794
+ // }
795
+ };
796
+ // @ts-ignore
797
+ const getDateList = () => dateList;
798
+
799
+ const WIDGET_CONFIG = { widgetType: 'wm-chart', hostClass: 'app-chart' };
800
+ const options = {
801
+ 'Bubble': ['bubblesize', 'shape']
802
+ }, NONE = 'none', advanceDataProps = ['aggregation', 'aggregationcolumn', 'groupby', 'orderby'],
803
+ // XPaths to get actual data of data points in charts
804
+ chartDataPointXpath = {
805
+ 'Column': 'rect.nv-bar',
806
+ 'Bar': 'g.nv-bar',
807
+ 'Area': '.nv-stackedarea .nv-point',
808
+ 'Cumulative Line': '.nv-cumulativeLine .nv-scatterWrap path.nv-point',
809
+ 'Line': '.nv-lineChart .nv-scatterWrap path.nv-point',
810
+ 'Pie': '.nv-pieChart .nv-slice path',
811
+ 'Donut': '.nv-pieChart .nv-slice path',
812
+ 'Bubble': '.nv-scatterChart .nv-point-paths path'
813
+ },
814
+ // all properties of the chart
815
+ allOptions = ['bubblesize', 'shape'], styleProps = {
816
+ 'fontunit': 'font-size',
817
+ 'fontsize': 'font-size',
818
+ 'color': 'fill',
819
+ 'fontfamily': 'font-family',
820
+ 'fontweight': 'font-weight',
821
+ 'fontstyle': 'font-style',
822
+ 'textdecoration': 'text-decoration'
823
+ },
824
+ // Getting the relevant aggregation function based on the selected option
825
+ aggregationFnMap = {
826
+ 'average': 'AVG',
827
+ 'count': 'COUNT',
828
+ 'maximum': 'MAX',
829
+ 'minimum': 'MIN',
830
+ 'sum': 'SUM'
831
+ };
832
+ const getBooleanValue = val => {
833
+ if (val === true || val === 'true') {
834
+ return true;
835
+ }
836
+ if (val === false || val === 'false') {
837
+ return false;
838
+ }
839
+ return val;
840
+ };
841
+ // returns orderby columns and their orders in two separate arrays
842
+ const getLodashOrderByFormat = orderby => {
843
+ let columns;
844
+ const orderByColumns = [], orders = [];
845
+ forEach(split(orderby, ','), function (col) {
846
+ columns = split(col, ':');
847
+ orderByColumns.push(columns[0]);
848
+ orders.push(columns[1]);
849
+ });
850
+ return {
851
+ 'columns': orderByColumns,
852
+ 'orders': orders
853
+ };
854
+ };
855
+ // Replacing the '.' by the '$' because '.' is not supported in the alias names
856
+ const getValidAliasName = aliasName => aliasName ? aliasName.replace(/\./g, '$') : null;
857
+ // Applying the font related styles for the chart
858
+ const setTextStyle = (properties, id) => {
859
+ const charttext = d3.select('#wmChart' + id + ' svg').selectAll('text');
860
+ if (!charttext.empty()) {
861
+ charttext.style(properties);
862
+ }
863
+ };
864
+ const angle = d => {
865
+ const a = (d.startAngle + d.endAngle) * 90 / Math.PI - 90;
866
+ return a > 90 ? a - 180 : a;
867
+ };
868
+ class ChartComponent extends StylableComponent {
869
+ static { this.initializeProps = registerProps(); }
870
+ isGroupByEnabled() {
871
+ return !!(this.groupby && this.groupby !== NONE);
872
+ }
873
+ // Check if x and y axis that are chosen are valid to plot chart
874
+ isValidAxis() {
875
+ // Check if x axis and y axis are chosen and are not equal
876
+ return this.binddataset ? (this.xaxisdatakey && this.yaxisdatakey) : true;
877
+ }
878
+ // Check if aggregation is chosen
879
+ isAggregationEnabled() {
880
+ return !!((this.isGroupByEnabled() && this.aggregation !== NONE && this.aggregationcolumn));
881
+ }
882
+ // Check if either groupby, aggregation or orderby is chosen
883
+ isDataFilteringEnabled() {
884
+ /*Query need to be triggered if any of the following cases satisfy
885
+ * 1. Group By and aggregation both chosen
886
+ * 2. Only Order By is chosen
887
+ * */
888
+ return this.isAggregationEnabled() || (!this.isVisuallyGrouped && this.orderby);
889
+ }
890
+ /*Charts like Line,Area,Cumulative Line does not support any other datatype
891
+ other than integer unlike the column and bar.It is a nvd3 issue. Inorder to
892
+ support that this is a fix*/
893
+ getxAxisVal(dataObj, xKey, index) {
894
+ const value = get(dataObj, xKey);
895
+ // If x axis is other than number type then add indexes
896
+ if (isLineTypeChart(this.type) && !isNumberType(this.xAxisDataType)) {
897
+ // Verification to get the unique data keys
898
+ this.xDataKeyArr.push(value);
899
+ // Check if it is of type Date
900
+ if (value instanceof Date) {
901
+ return value;
902
+ }
903
+ else {
904
+ return index;
905
+ }
906
+ }
907
+ return value;
908
+ }
909
+ // Getting the min and max values among all the x values
910
+ getXMinMaxValues(datum) {
911
+ if (!datum) {
912
+ return;
913
+ }
914
+ const xValues = {};
915
+ /*
916
+ compute the min x value
917
+ eg: When data has objects
918
+ input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]
919
+ min x: 1
920
+ eg: When data has arrays
921
+ input: [[10, 20], [20, 30], [30, 40]];
922
+ min x: 10
923
+ */
924
+ xValues.min = minBy(datum.values, dataObject => dataObject.x || dataObject[0]);
925
+ /*
926
+ compute the max x value
927
+ eg: When data has objects
928
+ input: [{x:1, y:2}, {x:2, y:3}, {x:3, y:4}]
929
+ max x: 3
930
+ eg: When data has arrays
931
+ input: [[10, 20], [20, 30], [30, 40]];
932
+ max x: 30
933
+ */
934
+ xValues.max = maxBy(datum.values, dataObject => dataObject.x || dataObject[0]);
935
+ return xValues;
936
+ }
937
+ // Getting the min and max values among all the y values
938
+ getYMinMaxValues(datum) {
939
+ const yValues = {}, minValues = [], maxValues = [];
940
+ if (!datum) {
941
+ return;
942
+ }
943
+ /*
944
+ Getting the min and max y values among all the series of data
945
+ compute the min y value
946
+ eg: When data has objects
947
+ input: [[{x:1, y:2}, {x:2, y:3}, {x:3, y:4}], [{x:2, y:3}, {x:3, y:4}, {x:4, y:5}]]
948
+ min y values : '2'(among first set) & '3'(among second set)
949
+ max y values : '4'(among first set) & '5'(among second set)
950
+
951
+ eg: When data has arrays
952
+ input: [[[10, 20], [20, 30], [30, 40]], [[20, 30], [30, 40], [40, 50]]]
953
+ min y values : '20'(among first set) & '30'(among second set)
954
+ max y values : '40'(among first set) & '50'(among second set)
955
+ */
956
+ forEach(datum, data => {
957
+ minValues.push(minBy(data.values, function (dataObject) {
958
+ return dataObject.y || dataObject[1];
959
+ }));
960
+ maxValues.push(maxBy(data.values, function (dataObject) {
961
+ return dataObject.y || dataObject[1];
962
+ }));
963
+ });
964
+ // Gets the least and highest values among all the min and max values of respective series of data
965
+ yValues.min = minBy(minValues, dataObject => dataObject.y || dataObject[1]);
966
+ yValues.max = maxBy(maxValues, dataObject => dataObject.y || dataObject[1]);
967
+ return yValues;
968
+ }
969
+ // If the x-axis values are undefined, we return empty array else we return the values
970
+ getValidData(values) {
971
+ return (values.length === 1 && values[0] === undefined) ? [] : values;
972
+ }
973
+ // Returns the single data point based on the type of the data chart accepts
974
+ valueFinder(dataObj, xKey, yKey, index, shape) {
975
+ const xVal = this.getxAxisVal(dataObj, xKey, index), value = get(dataObj, yKey), yVal = parseFloat(value) || value, size = parseFloat(dataObj[this.bubblesize]) || 2;
976
+ let dataPoint = {};
977
+ if (isChartDataJSON(this.type)) {
978
+ dataPoint.x = xVal;
979
+ dataPoint.y = yVal;
980
+ // only Bubble chart has the third dimension
981
+ if (isBubbleChart(this.type)) {
982
+ dataPoint.size = size;
983
+ dataPoint.shape = shape || 'circle';
984
+ }
985
+ }
986
+ else if (isChartDataArray(this.type)) {
987
+ dataPoint = [xVal, yVal];
988
+ }
989
+ // Adding actual unwrapped data to chart data to use at the time of selected data point of chart event
990
+ dataPoint._dataObj = dataObj;
991
+ return dataPoint;
992
+ }
993
+ // Setting appropriate error messages
994
+ setErrMsg(message) {
995
+ if (this.showNoDataMsg) {
996
+ this.showContentLoadError = true;
997
+ this.invalidConfig = true;
998
+ // TODO: Set the locale from the message
999
+ this.errMsg = ''; // $rootScope.locale[message];
1000
+ }
1001
+ }
1002
+ processChartData() {
1003
+ this.sampleData = getSampleData(this);
1004
+ // scope variables used to keep the actual key values for x-axis
1005
+ this.xDataKeyArr = [];
1006
+ // Plotting the chart with sample data when the chart dataset is not bound
1007
+ if (!this.binddataset) {
1008
+ this.xDataKeyArr = getDateList();
1009
+ return this.sampleData;
1010
+ }
1011
+ if (!this.chartData || !this.chartData.length) {
1012
+ return [];
1013
+ }
1014
+ let datum = [], yAxisKey, shapes = [], values = [];
1015
+ const xAxisKey = this.xaxisdatakey, yAxisKeys = this.yaxisdatakey ? this.yaxisdatakey.split(',') : [], dataSet = this.chartData;
1016
+ if (isArray(dataSet)) {
1017
+ if (isPieType(this.type)) {
1018
+ yAxisKey = yAxisKeys[0];
1019
+ datum = map(dataSet, (dataObj, index) => {
1020
+ if (!isEmptyObject(dataSet[index])) {
1021
+ return this.valueFinder(dataSet[index], xAxisKey, yAxisKey);
1022
+ }
1023
+ });
1024
+ datum = this.getValidData(datum);
1025
+ }
1026
+ else {
1027
+ if (isBubbleChart(this.type)) {
1028
+ shapes = this.shape === 'random' ? allShapes : this.shape;
1029
+ }
1030
+ yAxisKeys.forEach((yAxisKey, series) => {
1031
+ values = map(dataSet, (dataObj, index) => {
1032
+ if (!isEmptyObject(dataSet[index])) {
1033
+ return this.valueFinder(dataSet[index], xAxisKey, yAxisKey, index, (isArray(shapes) && shapes[series]) || this.shape);
1034
+ }
1035
+ });
1036
+ values = this.getValidData(values);
1037
+ datum.push({
1038
+ values: values,
1039
+ key: prettifyLabels(yAxisKey)
1040
+ });
1041
+ });
1042
+ }
1043
+ }
1044
+ return datum;
1045
+ }
1046
+ setChartData(data) {
1047
+ if (data) {
1048
+ this._processedData = data;
1049
+ }
1050
+ }
1051
+ getChartData() {
1052
+ return this._processedData;
1053
+ }
1054
+ // constructing the grouped data based on the selection of orderby, x & y axis
1055
+ getVisuallyGroupedData(queryResponse, groupingColumn) {
1056
+ let groupData = {}, groupValues = [], orderByDetails, maxLength;
1057
+ const chartData = [], _isAreaChart = isAreaChart(this.type), yAxisKey = first(split(this.yaxisdatakey, ','));
1058
+ this.xDataKeyArr = [];
1059
+ queryResponse = orderBy(queryResponse, split(this.groupby, ','));
1060
+ if (this.orderby) {
1061
+ orderByDetails = getLodashOrderByFormat(this.orderby);
1062
+ queryResponse = orderBy(queryResponse, orderByDetails.columns, orderByDetails.orders);
1063
+ }
1064
+ queryResponse = groupBy(queryResponse, groupingColumn);
1065
+ // In case of area chart all the series data should be of same length
1066
+ if (_isAreaChart) {
1067
+ maxLength = max(map(queryResponse, obj => obj.length));
1068
+ }
1069
+ forEach(queryResponse, (values, groupKey) => {
1070
+ groupValues = isAreaChart ? fill(new Array(maxLength), [0, 0]) : [];
1071
+ forEachRight(values, (value, index) => {
1072
+ groupValues[index] = this.valueFinder(value, this.xaxisdatakey, yAxisKey, index);
1073
+ });
1074
+ groupData = {
1075
+ key: groupKey,
1076
+ values: groupValues
1077
+ };
1078
+ chartData.push(groupData);
1079
+ });
1080
+ return chartData;
1081
+ }
1082
+ /*Decides whether the data should be visually grouped or not
1083
+ Visually grouped when a different column is choosen in the group by other than x and y axis and aggregation is not chosen*/
1084
+ getGroupingDetails() {
1085
+ if (this.isGroupByEnabled() && !this.isAggregationEnabled()) {
1086
+ let isVisuallyGrouped = false, visualGroupingColumn, groupingExpression, columns = [], groupingColumnIndex;
1087
+ const groupbyColumns = this.groupby && this.groupby !== NONE ? this.groupby.split(',') : [], yAxisKeys = this.yaxisdatakey ? this.yaxisdatakey.split(',') : [];
1088
+ if (groupbyColumns.length > 1) {
1089
+ /*Getting the group by column which is not selected either in x or y axis*/
1090
+ groupbyColumns.every((column, index) => {
1091
+ if (this.xaxisdatakey !== column && $.inArray(column, yAxisKeys) === -1) {
1092
+ isVisuallyGrouped = true;
1093
+ visualGroupingColumn = column;
1094
+ groupingColumnIndex = index;
1095
+ groupbyColumns.splice(groupingColumnIndex, 1);
1096
+ return false;
1097
+ }
1098
+ return true;
1099
+ });
1100
+ // Constructing the groupby expression
1101
+ if (visualGroupingColumn) {
1102
+ columns.push(visualGroupingColumn);
1103
+ }
1104
+ if (groupbyColumns.length) {
1105
+ columns = concat(columns, groupbyColumns);
1106
+ }
1107
+ }
1108
+ // If x and y axis are not included in aggregation need to be included in groupby
1109
+ if (this.xaxisdatakey !== this.aggregationcolumn) {
1110
+ columns.push(this.xaxisdatakey);
1111
+ }
1112
+ forEach(yAxisKeys, key => {
1113
+ if (key !== this.aggregationcolumn) {
1114
+ columns.push(key);
1115
+ }
1116
+ });
1117
+ groupingExpression = columns.join(',');
1118
+ // set isVisuallyGrouped flag in scope for later use
1119
+ this.isVisuallyGrouped = isVisuallyGrouped;
1120
+ return {
1121
+ expression: groupingExpression,
1122
+ isVisuallyGrouped: isVisuallyGrouped,
1123
+ visualGroupingColumn: visualGroupingColumn
1124
+ };
1125
+ }
1126
+ return {
1127
+ expression: '',
1128
+ isVisuallyGrouped: false,
1129
+ visualGroupingColumn: ''
1130
+ };
1131
+ }
1132
+ // Function to get the aggregated data after applying the aggregation & group by or order by operations.
1133
+ getAggregatedData(callback) {
1134
+ const variable = this.datasource, yAxisKeys = this.yaxisdatakey ? this.yaxisdatakey.split(',') : [], data = {};
1135
+ let sortExpr, columns = [], colAlias, orderByColumns, groupByFields = [];
1136
+ if (!variable) {
1137
+ return;
1138
+ }
1139
+ if (this.isGroupByEnabled()) {
1140
+ groupByFields = split(this.groupby, ',');
1141
+ }
1142
+ if (this.orderby) {
1143
+ sortExpr = replace(this.orderby, /:/g, ' ');
1144
+ columns = uniq(concat(columns, groupByFields, [this.aggregationcolumn]));
1145
+ orderByColumns = getLodashOrderByFormat(this.orderby).columns;
1146
+ // If the orderby column is chosen either in groupby or orderby then replace . with $ for that column
1147
+ forEach(intersection(columns, orderByColumns), col => {
1148
+ colAlias = getValidAliasName(col);
1149
+ // @ts-ignore
1150
+ sortExpr = replace(sortExpr, col, colAlias);
1151
+ });
1152
+ }
1153
+ if (this.isAggregationEnabled()) {
1154
+ // Send the group by in the aggregations api only if aggregation is also chosen
1155
+ data.groupByFields = groupByFields;
1156
+ data.aggregations = [
1157
+ {
1158
+ 'field': this.aggregationcolumn,
1159
+ 'type': aggregationFnMap[this.aggregation],
1160
+ 'alias': getValidAliasName(this.aggregationcolumn)
1161
+ }
1162
+ ];
1163
+ }
1164
+ // Execute the query.
1165
+ variable.execute('getAggregatedData', {
1166
+ 'aggregations': data,
1167
+ 'sort': sortExpr
1168
+ }).then(response => {
1169
+ // Transform the result into a format supported by the chart.
1170
+ const chartData = [], aggregationAlias = getValidAliasName(this.aggregationcolumn), xAxisAliasKey = getValidAliasName(this.xaxisdatakey), yAxisAliasKeys = [];
1171
+ yAxisKeys.forEach(yAxisKey => yAxisAliasKeys.push(getValidAliasName(yAxisKey)));
1172
+ forEach(response.body.content, (responseContent) => {
1173
+ const obj = {};
1174
+ // Set the response in the chartData based on 'aggregationColumn', 'xAxisDataKey' & 'yAxisDataKey'.
1175
+ if (this.isAggregationEnabled()) {
1176
+ obj[this.aggregationcolumn] = responseContent[aggregationAlias];
1177
+ obj[this.aggregationcolumn] = get(responseContent, aggregationAlias) || get(responseContent, this.aggregationcolumn);
1178
+ }
1179
+ obj[this.xaxisdatakey] = get(responseContent, xAxisAliasKey) || get(responseContent, this.xaxisdatakey);
1180
+ yAxisKeys.forEach((yAxisKey, index) => {
1181
+ obj[yAxisKey] = responseContent[yAxisAliasKeys[index]];
1182
+ obj[yAxisKey] = get(responseContent, yAxisAliasKeys[index]) || get(responseContent, yAxisKey);
1183
+ });
1184
+ chartData.push(obj);
1185
+ });
1186
+ this.chartData = chartData;
1187
+ triggerFn(callback);
1188
+ }, () => {
1189
+ this.chartData = [];
1190
+ this.setErrMsg('MESSAGE_ERROR_FETCH_DATA');
1191
+ triggerFn(callback);
1192
+ });
1193
+ }
1194
+ // This function sets maximum width for the labels that can be displayed.This will helpful when they are overlapping
1195
+ setLabelsMaxWidth() {
1196
+ let xTicks, tickWidth, maxLength, xDist, yDist, totalHeight, maxNoLabels, nthElement, labelsAvailableWidth, barWrapper, yAxisWrapper, svgWrapper;
1197
+ const fontsize = parseInt(this.fontsize, 10) || 12, isBarchart = isBarChart(this.type);
1198
+ // getting the x ticks in the chart
1199
+ xTicks = $('#wmChart' + this.$id + ' svg').find('g.nv-x').find('g.tick').find('text');
1200
+ // getting the distance between the two visible ticks associated with visible text
1201
+ xTicks.each(function () {
1202
+ const xTick = $(this);
1203
+ let xTransform, tickDist;
1204
+ if (xTick.text() && xTick.css('opacity') === '1') {
1205
+ xTransform = xTick.parent().attr('transform').split(',');
1206
+ xDist = parseFloat(xTransform[0].substr(10));
1207
+ yDist = parseFloat(xTransform[1] || '0');
1208
+ if (!isBarchart && xDist > 0) {
1209
+ tickDist = xDist;
1210
+ }
1211
+ else if (yDist > 0) {
1212
+ tickDist = yDist;
1213
+ }
1214
+ if (tickWidth) {
1215
+ tickWidth = tickDist - tickWidth;
1216
+ return false;
1217
+ }
1218
+ tickWidth = tickDist;
1219
+ return true;
1220
+ }
1221
+ });
1222
+ // In case of bar chart getting the available space for the labels to be displayed
1223
+ if (isBarchart) {
1224
+ barWrapper = $('#wmChart' + this.$id + ' svg>g.nv-wrap>g>g.nv-barsWrap')[0];
1225
+ yAxisWrapper = $('#wmChart' + this.$id + ' svg>g.nv-wrap>g>g.nv-y')[0];
1226
+ svgWrapper = $('#wmChart' + this.$id + ' svg')[0];
1227
+ // getting the total height of the chart
1228
+ totalHeight = barWrapper ? barWrapper.getBoundingClientRect().height : 0;
1229
+ // getting the labels available space
1230
+ labelsAvailableWidth = yAxisWrapper ? svgWrapper.getBoundingClientRect().width - yAxisWrapper.getBoundingClientRect().width : svgWrapper.getBoundingClientRect().width;
1231
+ // Setting the max length for the label
1232
+ maxLength = Math.round(labelsAvailableWidth / fontsize);
1233
+ // if available space for each label is less than the font-size
1234
+ // then limiting the labels to be displayed
1235
+ if (tickWidth < fontsize) {
1236
+ // calculate the maximum no of labels to be fitted
1237
+ maxNoLabels = totalHeight / fontsize;
1238
+ // showing only the nth element
1239
+ nthElement = Math.ceil(this.chartData.length / maxNoLabels);
1240
+ // showing up only some labels
1241
+ d3.select('#wmChart' + this.$id + ' svg').select('g.nv-x').selectAll('g.tick').select('text').each(function (text, i) {
1242
+ // hiding every non nth element
1243
+ if (i % nthElement !== 0) {
1244
+ d3.select(this).attr('opacity', 0);
1245
+ }
1246
+ });
1247
+ }
1248
+ }
1249
+ else {
1250
+ // Setting the max length for the label
1251
+ maxLength = Math.round(tickWidth / fontsize);
1252
+ }
1253
+ // maxLength should always be a positive number
1254
+ maxLength = Math.abs(maxLength);
1255
+ // Validating if every label exceeds the max length and if so limiting the length and adding ellipsis
1256
+ xTicks.each(function () {
1257
+ if (this.textContent.length > maxLength) {
1258
+ this.textContent = this.textContent.substr(0, maxLength) + '...';
1259
+ }
1260
+ });
1261
+ }
1262
+ // Returns the columns of that can be choosen in the x and y axis
1263
+ getDefaultColumns() {
1264
+ let type, stringColumn, i, temp;
1265
+ const defaultColumns = [], columns = this.datasource.execute(DataSource.Operation.GET_PROPERTIES_MAP) || [];
1266
+ for (i = 0; i < columns.length && defaultColumns.length <= 2; i += 1) {
1267
+ type = columns[i].type;
1268
+ if (!columns[i].isRelated && (isNumberType(type))) {
1269
+ defaultColumns.push(columns[i].fieldName);
1270
+ }
1271
+ else if (type === 'string' && !stringColumn) {
1272
+ stringColumn = columns[i].fieldName;
1273
+ }
1274
+ }
1275
+ // Other than bubble chart x: string type y: number type
1276
+ // Bubble chart x: number type y: number type
1277
+ if (stringColumn && defaultColumns.length > 0 && !isBubbleChart(this.type)) {
1278
+ temp = defaultColumns[0];
1279
+ defaultColumns[0] = stringColumn;
1280
+ defaultColumns[1] = temp;
1281
+ }
1282
+ return defaultColumns;
1283
+ }
1284
+ // Call user defined javascript function when user links it to click event of the widget.
1285
+ attachClickEvent() {
1286
+ let dataObj;
1287
+ d3.select('#wmChart' + this.$id + ' svg').selectAll(chartDataPointXpath[this.type]).style('pointer-events', 'all')
1288
+ .on('click', (event, data, index) => {
1289
+ switch (this.type) {
1290
+ case 'Column':
1291
+ case 'Bar':
1292
+ dataObj = data._dataObj;
1293
+ break;
1294
+ case 'Pie':
1295
+ case 'Donut':
1296
+ dataObj = data.data._dataObj;
1297
+ break;
1298
+ case 'Area':
1299
+ case 'Cumulative Line':
1300
+ case 'Line':
1301
+ dataObj = data[0]._dataObj;
1302
+ break;
1303
+ case 'Bubble':
1304
+ dataObj = data;
1305
+ break;
1306
+ }
1307
+ this.selecteditem = dataObj;
1308
+ this.invokeEventCallback('select', {
1309
+ $event: event,
1310
+ selectedChartItem: data,
1311
+ selectedItem: this.selecteditem
1312
+ });
1313
+ });
1314
+ }
1315
+ /* Returns Y Scale min value
1316
+ Ex: Input : 8.97
1317
+ Output : 8.87
1318
+
1319
+ Input : 8
1320
+ Output : 7
1321
+ */
1322
+ postPlotProcess(chart) {
1323
+ let chartSvg, pieLabels, pieGroups, angleArray;
1324
+ const styleObj = {};
1325
+ const element = this.$element;
1326
+ postPlotChartProcess(this);
1327
+ if (!isPieType(this.type)) {
1328
+ this.setLabelsMaxWidth();
1329
+ }
1330
+ else if (!this.showlabelsoutside) {
1331
+ /** Nvd3 has a issue in rotating text. So we will use this as a temp fix.
1332
+ * If the issue is resolved there, we can remove this.*/
1333
+ /* If it is a donut chart, then rotate the text and position them*/
1334
+ chartSvg = d3.select('#wmChart' + this.$id + ' svg');
1335
+ pieLabels = chartSvg.select('.nv-pieLabels').selectAll('.nv-label');
1336
+ pieGroups = chartSvg.select('.nv-pie').selectAll('.nv-slice');
1337
+ angleArray = [];
1338
+ if (pieGroups && pieGroups.length) {
1339
+ pieGroups.each(function () {
1340
+ d3.select(this).attr('transform', function (d) {
1341
+ angleArray.push(angle(d));
1342
+ });
1343
+ });
1344
+ pieLabels.each(function (d, i) {
1345
+ const group = d3.select(this);
1346
+ $(group[0][0]).find('text').attr('transform', 'rotate(' + angleArray[i] + ')');
1347
+ });
1348
+ }
1349
+ }
1350
+ // prepare text style props object and set
1351
+ forEach(styleProps, (value, key) => {
1352
+ if (key === 'fontsize' || key === 'fontunit') {
1353
+ styleObj[value] = this.fontsize + this.fontunit;
1354
+ }
1355
+ else {
1356
+ styleObj[value] = this[key];
1357
+ }
1358
+ });
1359
+ setTextStyle(styleObj, this.$id);
1360
+ /*
1361
+ * allow window-resize functionality, for only-run mode as
1362
+ * updating chart is being handled by watchers of height & width in studio-mode
1363
+ * */
1364
+ triggerFn(this._resizeFn && this._resizeFn.clear);
1365
+ this._resizeFn = nv.utils.windowResize(() => {
1366
+ if (element[0].getBoundingClientRect().height) {
1367
+ chart.update();
1368
+ postPlotChartProcess(this);
1369
+ if (!isPieType(this.type)) {
1370
+ this.setLabelsMaxWidth();
1371
+ }
1372
+ }
1373
+ else {
1374
+ // TODO: get parents of accordion type
1375
+ /*let parent = element.closest('.app-accordion-panel, .tab-pane').isolateScope();
1376
+ if (parent) {
1377
+ parent.initialized = false;
1378
+ }*/
1379
+ }
1380
+ });
1381
+ }
1382
+ // prepares and configures the chart properties
1383
+ configureChart() {
1384
+ // Copy the data only in case of pie chart with default data
1385
+ // Reason : when multiple pie charts are bound to same data, first chart theme will be applied to all charts
1386
+ let xDomainValues;
1387
+ let yDomainValues;
1388
+ let chart;
1389
+ let beforeRenderVal;
1390
+ const yformatOptions = {};
1391
+ if (this._processedData.length > 0) {
1392
+ if (isAxisDomainValid(this, 'x')) {
1393
+ xDomainValues = this.binddataset ? this.getXMinMaxValues(this._processedData[0]) : { 'min': { 'x': 1 }, 'max': { 'x': 5 } };
1394
+ }
1395
+ if (isAxisDomainValid(this, 'y')) {
1396
+ yDomainValues = this.binddataset ? this.getYMinMaxValues(this._processedData) : { 'min': { 'y': 1 }, 'max': { 'y': 5 } };
1397
+ }
1398
+ }
1399
+ if (isPieType(this.type) && (!this.binddataset || !this.scopedataset)) {
1400
+ this._processedData = getClonedObject(this.scopedataset || this._processedData);
1401
+ }
1402
+ // get the chart object
1403
+ chart = initChart(this, xDomainValues, yDomainValues, null, !this.binddataset);
1404
+ if (isArray(this._processedData)) {
1405
+ // WMS-19499: To remove chart X-axis old ticks when chart data loaded dynamically.
1406
+ const oldgTicks = $('#wmChart' + this.$id + ' svg').find('g.nv-x').find('g.tick');
1407
+ if (oldgTicks && oldgTicks.length) {
1408
+ oldgTicks.remove();
1409
+ }
1410
+ beforeRenderVal = this.invokeEventCallback('beforerender', { 'chartInstance': chart });
1411
+ if (beforeRenderVal) {
1412
+ chart = beforeRenderVal;
1413
+ }
1414
+ this.chart = chart;
1415
+ // changing the default no data message
1416
+ d3.select('#wmChart' + this.$id + ' svg')
1417
+ .datum(this._processedData)
1418
+ .call(this.chart);
1419
+ this.postPlotProcess(chart);
1420
+ return chart;
1421
+ }
1422
+ }
1423
+ // Plotting the chart with set of the properties set to it
1424
+ plotChart() {
1425
+ const element = this.$element;
1426
+ // call user-transformed function
1427
+ this.chartData = (this.invokeEventCallback('transform')) || this.chartData;
1428
+ // Getting the order by data only in run mode. The order by applies for all the charts other than pie and donut charts
1429
+ if (this.isVisuallyGrouped && !isPieType(this.type)) {
1430
+ this._processedData = this.chartData;
1431
+ }
1432
+ else {
1433
+ this._processedData = this.processChartData();
1434
+ }
1435
+ // checking the parent container before plotting the chart
1436
+ if (!element[0].getBoundingClientRect().height) {
1437
+ return;
1438
+ }
1439
+ if (this.clearCanvas) {
1440
+ // empty svg to add-new chart
1441
+ element.find('svg').replaceWith('<svg></svg>');
1442
+ this.clearCanvas = false;
1443
+ }
1444
+ // In case of invalid axis show no data available message
1445
+ if (!this.isValidAxis()) {
1446
+ this._processedData = [];
1447
+ }
1448
+ nv.addGraph(() => this.configureChart(), () => {
1449
+ /*Bubble chart has an time out delay of 300ms in their implementation due to which we
1450
+ * won't be getting required data points on attaching events
1451
+ * hence delaying it 600ms*/
1452
+ setTimeout(() => {
1453
+ this.attachClickEvent();
1454
+ }, 600);
1455
+ });
1456
+ this.isLoadInProgress = false;
1457
+ }
1458
+ // TODO: Need way to figure out if the datasource is a live source
1459
+ get isLiveVariable() {
1460
+ // setting the flag for the live variable in the scope for the checks
1461
+ const variableObj = this.datasource;
1462
+ return variableObj && variableObj.category === 'wm.LiveVariable';
1463
+ }
1464
+ plotChartProxy() {
1465
+ this.showContentLoadError = false;
1466
+ this.invalidConfig = false;
1467
+ // Checking if x and y axis are chosen
1468
+ this.isLoadInProgress = true;
1469
+ const groupingDetails = this.getGroupingDetails();
1470
+ // If aggregation/group by/order by properties have been set, then get the aggregated data and plot the result in the chart.
1471
+ // TODO: datasource for live variable detection
1472
+ if (this.binddataset && this.isLiveVariable && (this.filterFields || this.isDataFilteringEnabled())) {
1473
+ this.getAggregatedData(() => this.plotChart());
1474
+ }
1475
+ else { // Else, simply plot the chart.
1476
+ // In case of live variable resetting the aggregated data to the normal dataset when the aggregation has been removed
1477
+ if (this.dataset && this.isLiveVariable) {
1478
+ this.chartData = this.dataset;
1479
+ if (this.isGroupByEnabled() && groupingDetails.isVisuallyGrouped) {
1480
+ this.chartData = this.getVisuallyGroupedData(this.chartData, groupingDetails.visualGroupingColumn);
1481
+ }
1482
+ }
1483
+ this.plotChart();
1484
+ }
1485
+ }
1486
+ // sets the default x and y axis options
1487
+ setDefaultAxisOptions() {
1488
+ const defaultColumns = this.getDefaultColumns();
1489
+ // If we get the valid default columns then assign them as the x and y axis
1490
+ // In case of service variable we may not get the valid columns because we cannot know the datatypes
1491
+ this.xaxisdatakey = defaultColumns[0] || null;
1492
+ this.yaxisdatakey = defaultColumns[1] || null;
1493
+ }
1494
+ getCutomizedOptions(prop, fields) {
1495
+ const groupByColumns = split(this.groupby, ','), aggColumns = split(this.aggregationcolumn, ',');
1496
+ if (!this.binddataset) {
1497
+ return fields;
1498
+ }
1499
+ if (!this.axisoptions) {
1500
+ this.axisoptions = fields;
1501
+ }
1502
+ let newOptions;
1503
+ switch (prop) {
1504
+ case 'xaxisdatakey':
1505
+ // If group by enabled, columns chosen in groupby will be populated in x axis options
1506
+ if (this.isGroupByEnabled()) {
1507
+ newOptions = groupByColumns;
1508
+ }
1509
+ break;
1510
+ case 'yaxisdatakey':
1511
+ // If aggregation by enabled, columns chosen in aggregation will be populated in y axis options
1512
+ if (this.isAggregationEnabled()) {
1513
+ newOptions = aggColumns;
1514
+ }
1515
+ else if (this.isLiveVariable) {
1516
+ // In case of live variable populating only numeric columns
1517
+ newOptions = this.numericColumns;
1518
+ }
1519
+ break;
1520
+ case 'groupby':
1521
+ // Filtering only non primary key columns
1522
+ if (this.isLiveVariable && this.nonPrimaryColumns && this.nonPrimaryColumns.length) {
1523
+ newOptions = this.nonPrimaryColumns;
1524
+ }
1525
+ break;
1526
+ case 'aggregationcolumn':
1527
+ // Set the 'aggregationColumn' to show all keys in case of aggregation function is count or to numeric keys in all other cases.
1528
+ if (this.isLiveVariable && this.isAggregationEnabled() && this.aggregation !== 'count') {
1529
+ newOptions = this.numericColumns;
1530
+ }
1531
+ break;
1532
+ case 'orderby':
1533
+ // Set the 'aggregationColumn' to show all keys in case of aggregation function is count or to numeric keys in all other cases.
1534
+ if (this.isLiveVariable && this.isAggregationEnabled()) {
1535
+ newOptions = uniq(concat(groupByColumns, aggColumns));
1536
+ }
1537
+ break;
1538
+ case 'bubblesize':
1539
+ if (this.numericColumns && this.numericColumns.length) {
1540
+ newOptions = this.numericColumns;
1541
+ }
1542
+ break;
1543
+ }
1544
+ return newOptions || fields || this.axisoptions;
1545
+ }
1546
+ // Function that iterates through all the columns and then fetching the numeric and non primary columns among them
1547
+ setNumericandNonPrimaryColumns() {
1548
+ let columns, type;
1549
+ const propertiesMap = this.datasource.execute(DataSource.Operation.GET_PROPERTIES_MAP);
1550
+ this.numericColumns = [];
1551
+ this.nonPrimaryColumns = [];
1552
+ // Fetching all the columns
1553
+ if (this.dataset && !isEmpty(propertiesMap)) {
1554
+ columns = []; // TODO: fetchPropertiesMapColumns(propertiesMap);
1555
+ }
1556
+ if (columns) {
1557
+ // Iterating through all the columns and fetching the numeric and non primary key columns
1558
+ forEach(Object.keys(columns), (key) => {
1559
+ type = columns[key].type;
1560
+ if (isNumberType(type)) {
1561
+ this.numericColumns.push(key);
1562
+ }
1563
+ // Hiding only table's primary key
1564
+ if (columns[key].isRelatedPk === 'true' || !columns[key].isPrimaryKey) {
1565
+ this.nonPrimaryColumns.push(key);
1566
+ }
1567
+ });
1568
+ this.numericColumns = this.numericColumns.sort();
1569
+ this.nonPrimaryColumns = this.nonPrimaryColumns.sort();
1570
+ }
1571
+ }
1572
+ // plot the chart
1573
+ handleDataSet(newVal) {
1574
+ this.errMsg = '';
1575
+ // Resetting the flag to false when the binding was removed
1576
+ if (!newVal && !this.binddataset) {
1577
+ this.isVisuallyGrouped = false;
1578
+ this.axisoptions = null;
1579
+ }
1580
+ // liveVariables contain data in 'data' property' of the variable
1581
+ this.chartData = this.isLiveVariable ? newVal || '' : (newVal && newVal.dataValue === '' && keys(newVal).length === 1) ? '' : newVal;
1582
+ // if the data returned is an object make it an array of object
1583
+ if (!isArray(this.chartData) && isObject(this.chartData)) {
1584
+ this.chartData = [this.chartData];
1585
+ }
1586
+ if (newVal && newVal.filterFields) {
1587
+ this.filterFields = newVal.filterFields;
1588
+ }
1589
+ // plotchart for only valid data and only after bound variable returns data
1590
+ if (this.chartData) {
1591
+ this._plotChartProxy();
1592
+ }
1593
+ }
1594
+ // sets the center label for donut chart type
1595
+ setDonutCenterLabel(labelValue) {
1596
+ let chartSvg, pieGroups;
1597
+ chartSvg = d3.select('#wmChart' + this.$id + ' svg');
1598
+ pieGroups = chartSvg.select('.nv-wrap.nv-pie').select('.nv-pie');
1599
+ pieGroups.text('');
1600
+ pieGroups.append('text')
1601
+ .attr('dy', '.35em')
1602
+ .attr('text-anchor', 'middle')
1603
+ .attr('class', 'nv-pie-title')
1604
+ .text(labelValue)
1605
+ .each(function (d) {
1606
+ var d3text = d3.select(this), circ = d3.select(this.parentElement), totalWidth = Number(circ.node().getBoundingClientRect().width),
1607
+ // minus the ring width from total width
1608
+ availWidth = totalWidth - 30, textWidth = this.getComputedTextLength();
1609
+ d3text.attr("data-scale", availWidth / textWidth);
1610
+ }).style("font-size", function () {
1611
+ // 16 is the default font size to multiply with the scaled value and 24 is the maximum font size that can be applied
1612
+ var fontSize = 16 * d3.select(this).attr("data-scale");
1613
+ return fontSize > 24 ? 24 : fontSize + "px";
1614
+ });
1615
+ }
1616
+ onPropertyChange(key, newVal, oldVal) {
1617
+ super.onPropertyChange(key, newVal, oldVal);
1618
+ switch (key) {
1619
+ case 'dataset':
1620
+ this.handleDataSet(newVal);
1621
+ break;
1622
+ case 'centerlabel':
1623
+ if (this.chart) {
1624
+ this.chart.title(newVal);
1625
+ this.setDonutCenterLabel(newVal);
1626
+ }
1627
+ break;
1628
+ case 'type':
1629
+ // Based on the change in type deciding the default margins
1630
+ if (isPieType(this.type)) {
1631
+ this.offsettop = 20;
1632
+ this.offsetright = 0;
1633
+ this.offsetbottom = 0;
1634
+ this.offsetleft = 0;
1635
+ }
1636
+ else if (oldVal === 'Pie' || oldVal === 'Donut') {
1637
+ this.offsettop = 25;
1638
+ this.offsetright = 25;
1639
+ this.offsetbottom = 55;
1640
+ this.offsetleft = 75;
1641
+ }
1642
+ if (oldVal !== newVal) {
1643
+ this.clearCanvas = true;
1644
+ }
1645
+ // In studio mode, configure properties dependent on chart type
1646
+ this._plotChartProxy();
1647
+ break;
1648
+ default:
1649
+ // In RunMode, the plotchart method will not be called for all property change
1650
+ this._plotChartProxy();
1651
+ break;
1652
+ }
1653
+ if (includes(advanceDataProps, key)) {
1654
+ this._plotChartProxy();
1655
+ }
1656
+ }
1657
+ handleLoading(data) {
1658
+ const dataSource = this.datasource;
1659
+ if (dataSource && dataSource.execute(DataSource.Operation.IS_API_AWARE) && isDataSourceEqual(data.variable, dataSource)) {
1660
+ this.variableInflight = data.active;
1661
+ this.isLoadInProgress = data.active;
1662
+ }
1663
+ }
1664
+ hideTooltip() {
1665
+ d3.selectAll('.nvtooltip').style('opacity', 0);
1666
+ }
1667
+ onStyleChange(key, newVal, oldVal) {
1668
+ const styleObj = {};
1669
+ super.onStyleChange(key, newVal, oldVal);
1670
+ switch (key) {
1671
+ case 'fontsize':
1672
+ case 'fontunit':
1673
+ case 'color':
1674
+ case 'fontfamily':
1675
+ case 'fontweight':
1676
+ case 'fontstyle':
1677
+ case 'textdecoration':
1678
+ styleObj[styleProps[key]] = (key === 'fontsize' || key === 'fontunit') ? this.fontsize + this.fontunit : newVal;
1679
+ setTextStyle(styleObj, this.$id);
1680
+ break;
1681
+ }
1682
+ }
1683
+ constructor(inj, app, explicitContext) {
1684
+ super(inj, WIDGET_CONFIG, explicitContext);
1685
+ this.app = app;
1686
+ this.iconclass = '';
1687
+ this.nonPrimaryColumns = [];
1688
+ this.xDataKeyArr = [];
1689
+ this.chartData = [];
1690
+ this._processedData = [];
1691
+ this._subsciptions = [];
1692
+ this._plotChartProxy = debounce(this.plotChartProxy.bind(this), 100);
1693
+ this.redraw = this._plotChartProxy.bind(this);
1694
+ styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['fontsize', 'fontunit', 'color', 'fontfamily', 'fontweight', 'fontstyle', 'textdecoration']);
1695
+ // generate unique id for the component
1696
+ this.$id = this.widgetId || Math.random();
1697
+ // remove title attribute as the element on hover shows you the hint through-out the element
1698
+ removeAttr(this.nativeElement, 'title');
1699
+ this.chartReady = false;
1700
+ this.binddataset = this.nativeElement.getAttribute('dataset.bind');
1701
+ // Show loading status based on the variable life cycle
1702
+ this._subsciptions.push(this.app.subscribe('toggle-variable-state', this.handleLoading.bind(this)));
1703
+ // Will hide tolltip of a chart in mobile when the user scrolls.
1704
+ this._subsciptions.push(this.app.subscribe('iscroll-start', () => { this.hideTooltip(); }));
1705
+ }
1706
+ ngAfterViewInit() {
1707
+ super.ngAfterViewInit();
1708
+ // For old projects
1709
+ if (!includes(['outside', 'inside', 'hide'], this.showlabels)) {
1710
+ this.showlabels = getBooleanValue(this.showlabels);
1711
+ this.showlabelsoutside = getBooleanValue(this.showlabelsoutside);
1712
+ this.showlabels = this.showlabels ? (this.showlabelsoutside ? 'outside' : 'inside') : 'hide';
1713
+ }
1714
+ if (!this.theme) {
1715
+ // Default theme for pie/donut is Azure and for other it is Terrestrial
1716
+ this.theme = isPieType(this.type) ? 'Azure' : 'Terrestrial';
1717
+ }
1718
+ this.nativeElement.setAttribute('id', 'wmChart' + this.$id);
1719
+ // When there is not value binding, then plot the chart with sample data
1720
+ if (!this.binddataset && !this.nativeElement.getAttribute('scopedataset')) {
1721
+ this._plotChartProxy();
1722
+ }
1723
+ }
1724
+ ngOnDestroy() {
1725
+ // destroy all subscriptions to prevent memory leak.
1726
+ this.hideTooltip();
1727
+ // MEMORY LEAK FIX: Unsubscribe from all subscriptions
1728
+ if (this._subsciptions) {
1729
+ this._subsciptions.forEach((subscription) => {
1730
+ subscription();
1731
+ });
1732
+ this._subsciptions = [];
1733
+ }
1734
+ // MEMORY LEAK FIX: Clear chart instance
1735
+ if (this.chart) {
1736
+ this.chart = null;
1737
+ }
1738
+ // MEMORY LEAK FIX: Remove resize handler if exists
1739
+ if (this._resizeFn) {
1740
+ this._resizeFn = null;
1741
+ }
1742
+ // MEMORY LEAK FIX: Clear array references
1743
+ this.chartData = [];
1744
+ this._processedData = [];
1745
+ this.sampleData = [];
1746
+ this.xDataKeyArr = [];
1747
+ this.nonPrimaryColumns = [];
1748
+ super.ngOnDestroy();
1749
+ }
1750
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ChartComponent, deps: [{ token: i0.Injector }, { token: i1.App }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
1751
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.19", type: ChartComponent, isStandalone: true, selector: "div[wmChart]", host: { properties: { "class.panel": "this.title" } }, providers: [
1752
+ provideAsWidgetRef(ChartComponent)
1753
+ ], usesInheritance: true, ngImport: i0, template: "@if (title) {\n <div class=\"panel-heading\">\n <h3 class=\"panel-title\">\n <div class=\"pull-left\">\n <wm-app-icon [iconclass]=\"iconclass\" [iconurl]=\"iconurl\" iconClasses=\"panel-icon\" alt=\"Chart icon\"></wm-app-icon>\n </div>\n <div class=\"heading\" [innerHTML]=\"title\"></div>\n @if (subheading) {\n <div class=\"description\" [innerHTML]=\"subheading\"></div>\n }\n </h3>\n </div>\n}\n<div class=\"app-chart-inner\" [ngClass]=\"{'loading':isLoadInProgress, 'panel-body': title}\">\n <svg></svg>\n @if (showContentLoadError && showNoDataMsg) {\n <div class=\"wm-content-info readonly-wrapper\">\n <p class=\"wm-message\" [title]=\"hintMsg\" [ngClass]=\"{'error': invalidConfig}\" [innerText]=\"errMsg\"></p>\n </div>\n }\n <div wmSpinner show.bind=\"isLoadInProgress\" caption.bind=\"loadingdatamsg\"></div>\n</div>\n", styles: [".nvtooltip h3,.nvtooltip p{margin:0;text-align:center}.nv-distx,.nv-disty,.nv-noninteractive,.nvd3 .nv-axis,.nvd3 .nv-interactiveGuideLine,.nvd3.nv-pie .nv-label,.nvd3.nv-sparklineplus g.nv-hoverValue,.nvtooltip{pointer-events:none}.nvd3 .nv-axis{opacity:1}.nvd3 .nv-axis path{fill:none;stroke:#000;stroke-opacity:.75;shape-rendering:crispEdges}.nvd3 .nv-axis .zero line,.nvd3 .nv-axis line.zero,.nvd3 .nv-axis path.domain{stroke-opacity:.75}.nvd3 .nv-axis.nv-x path.domain{stroke-opacity:0}.nvd3 .nv-axis line{fill:none;stroke:#e5e5e5;shape-rendering:crispEdges}.nvd3 .nv-axis .nv-axisMaxMin text,.nvtooltip table td.key.total{font-weight:700}.nvd3 .x .nv-axis .nv-axisMaxMin text,.nvd3 .x2 .nv-axis .nv-axisMaxMin text,.nvd3 .x3 .nv-axis .nv-axisMaxMin text{text-anchor:middle}.nvd3 .nv-axis.nv-disabled,.nvd3 .nv-controlsWrap .nv-legend .nv-check-box .nv-check{opacity:0}.nvd3 .nv-bars rect{fill-opacity:.75;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-bars rect.hover,.nvd3 .nv-boxplot circle:hover,.nvd3 .nv-boxplot rect:hover,.nvd3 .nv-candlestickBar .nv-ticks rect:hover,.nvd3 .nv-discretebar .nv-groups rect:hover,.nvd3 .nv-multibar .nv-groups rect:hover,.nvd3 .nv-multibarHorizontal .nv-groups rect:hover,.nvd3 .nv-scatter .nv-point.hover,.nvd3.nv-bullet .nv-measure:hover,.nvd3.nv-linePlusBar .nv-bar rect:hover,.nvd3.nv-pie .hover path{fill-opacity:1}.nvd3 .nv-bars .hover rect{fill:#add8e6}.nvd3 .nv-bars text{fill:#0000}.nvd3 .nv-bars .hover text{fill:#000}.nvd3 .nv-discretebar .nv-groups rect,.nvd3 .nv-multibar .nv-groups rect,.nvd3 .nv-multibarHorizontal .nv-groups rect{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-discretebar .nv-groups text,.nvd3 .nv-multibarHorizontal .nv-groups text{font-weight:700;fill:#000;stroke:#0000}.nvd3 .nv-boxplot circle{fill-opacity:.5}.nvd3 line.nv-boxplot-median{stroke:#000}.nv-boxplot-tick:hover{stroke-width:2.5px}.nvd3.nv-bullet{font:10px sans-serif}.nvd3.nv-bullet .nv-measure{fill-opacity:.8}.nvd3.nv-bullet .nv-marker{stroke:#000;stroke-width:2px}.nvd3.nv-bullet .nv-markerTriangle{stroke:#000;fill:#fff;stroke-width:1.5px}.nvd3.nv-bullet .nv-markerLine{stroke:#000;stroke-width:1.5px}.nvd3.nv-bullet .nv-tick line{stroke:#666;stroke-width:.5px}.nvd3.nv-bullet .nv-range.nv-s0{fill:#eee}.nvd3.nv-bullet .nv-range.nv-s1{fill:#ddd}.nvd3.nv-bullet .nv-range.nv-s2{fill:#ccc}.nvd3.nv-bullet .nv-title{font-size:14px;font-weight:700}.nvd3.nv-bullet .nv-subtitle{fill:#999}.nvd3.nv-bullet .nv-range{fill:#bababa;fill-opacity:.4}.nvd3.nv-bullet .nv-range:hover{fill-opacity:.7}.nvd3.nv-candlestickBar .nv-ticks .nv-tick,.nvd3.nv-ohlcBar .nv-ticks .nv-tick{stroke-width:1px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.hover,.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover{stroke-width:2px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.positive rect,.nvd3.nv-sparklineplus .nv-maxValue{stroke:#2ca02c;fill:#2ca02c}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.negative rect,.nvd3.nv-sparklineplus .nv-minValue{stroke:#d62728;fill:#d62728}.with-transitions .nv-candlestickBar .nv-ticks .nv-tick,.with-transitions .nvd3 .nv-groups .nv-point{-webkit-transition:stroke-width .25s linear,stroke-opacity .25s linear;transition:stroke-width .25s linear,stroke-opacity .25s linear}.nvd3.nv-candlestickBar .nv-ticks line{stroke:#333}.nv-force-node{stroke:#fff;stroke-width:1.5px}.nv-force-link{stroke:#999;stroke-opacity:.6}.nv-force-node text{stroke-width:0}.nvd3 .nv-check-box .nv-box{fill-opacity:0;stroke-width:2}.nvd3 .nv-check-box .nv-check{fill-opacity:0;stroke-width:4}.nvd3 .nv-hoverArea,.nvd3 .nv-series.nv-disabled .nv-check-box .nv-check,.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point,.nvd3.nv-pie .nv-label rect{fill-opacity:0;stroke-opacity:0}.nvd3.nv-linePlusBar .nv-bar rect{fill-opacity:.75}.nvd3 .nv-groups path.nv-line,.nvd3.nv-sparkline path{fill:none}.nvd3 .nv-groups path.nv-area{stroke:none}.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point{fill-opacity:.5!important;stroke-opacity:.5!important}.nvd3 .nv-groups .nv-point.hover,.nvd3.nv-scatter .nv-groups .nv-point.hover{stroke-width:7px;fill-opacity:.95!important;stroke-opacity:.95!important}.nvd3 .nv-point-paths path{stroke:#aaa;stroke-opacity:0;fill:#eee;fill-opacity:0}.nvd3 .nv-indexLine{cursor:ew-resize}svg.nvd3-svg{-webkit-user-select:none;-ms-user-select:none;user-select:none;display:block;width:100%;height:100%}.nvtooltip.with-3d-shadow,.with-3d-shadow .nvtooltip{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px #0003;border-radius:5px}.nvd3 text{font:12px Arial,sans-serif}.nvtooltip h3,.nvtooltip table td.key{font-weight:400}.nvd3 .title{font:700 14px Arial,sans-serif}.nvd3 .nv-background{fill:#fff;fill-opacity:0}.nvd3.nv-noData{font-size:18px;font-weight:700}.nv-brush .selection{fill-opacity:.125;shape-rendering:crispEdges}.nv-brush .handle path{fill:#eee;stroke:#666}.nvd3 .nv-legend .nv-series{cursor:pointer}.nvd3 .nv-legend .nv-disabled circle{fill-opacity:0}.nvd3 .nv-brush .selection{fill-opacity:0!important}.nvd3 .nv-brushBackground rect{stroke:#000;stroke-width:.4;fill:#fff;fill-opacity:.7}@media print{.nvd3 text{stroke-width:0;fill-opacity:1}}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive{stroke:#2ca02c}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative{stroke:#d62728}.nvd3 .background path{fill:none;stroke:#eee;stroke-opacity:.4;shape-rendering:crispEdges}.nvd3 .foreground path{fill:none;stroke-opacity:.7}.nvd3 .nv-parallelCoordinates-brush .selection{fill:#fff;fill-opacity:.6;stroke:gray;shape-rendering:crispEdges}.nvd3 .nv-parallelCoordinates .hover{fill-opacity:1;stroke-width:3px}.nvd3 .missingValuesline line{fill:none;stroke:#000;stroke-width:1;stroke-opacity:1;stroke-dasharray:5,5}.nvd3.nv-pie path{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;stroke:#fff;stroke-width:1px;stroke-opacity:1;fill-opacity:.7}.nvd3.nv-pie .nv-pie-title{font-size:24px;fill:#13c4f996}.nvd3.nv-pie .nv-slice text{stroke:#000;stroke-width:0}.nvd3 .nv-groups .nv-point.hover{stroke-width:20px;stroke-opacity:.5}.nvd3.nv-sparklineplus .nv-hoverValue line{stroke:#333;stroke-width:1.5px}.nvd3.nv-sparklineplus,.nvd3.nv-sparklineplus g{pointer-events:all}.nvd3.nv-sparklineplus .nv-xValue,.nvd3.nv-sparklineplus .nv-yValue{stroke-width:0;font-size:.9em;font-weight:400}.nvd3.nv-sparklineplus .nv-yValue{stroke:#f66}.nvd3.nv-sparklineplus .nv-currentValue{font-weight:700;font-size:1.1em}.nvd3.nv-stackedarea path.nv-area{fill-opacity:.7;stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-opacity .25s linear}.nvd3.nv-stackedarea path.nv-area.hover{fill-opacity:.9}.nvd3.nv-stackedarea .nv-groups .nv-point{stroke-opacity:0;fill-opacity:0}.nvtooltip{position:absolute;background-color:#fff;color:#000;padding:1px;border:1px solid rgba(0,0,0,.5);z-index:10000;display:block;font-family:Arial,sans-serif;font-size:13px;text-align:left;white-space:nowrap;-webkit-user-select:none;-ms-user-select:none;user-select:none;background:#fffc;border-radius:4px}.nvtooltip.with-transitions,.with-transitions .nvtooltip{-webkit-transition:opacity 50ms linear .2s;transition:opacity 50ms linear .2s}.nvtooltip.x-nvtooltip,.nvtooltip.y-nvtooltip{padding:8px}.nvtooltip h3{padding:4px 14px;line-height:18px;background-color:#f7f7f7bf;color:#000;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.nvtooltip p{padding:5px 14px}.nvtooltip span{display:inline-block;margin:2px 0}.nvtooltip table{margin:6px;border-spacing:0}.nvtooltip table td{padding:2px 9px 2px 0;vertical-align:middle}.nvtooltip table td.value{text-align:right;font-weight:700}.nvtooltip table td.percent{color:#a9a9a9}.nvtooltip table tr.highlight td{padding:1px 9px 1px 0;border-bottom-style:solid;border-bottom-width:1px;border-top-style:solid;border-top-width:1px}.nvtooltip table td.legend-color-guide div{vertical-align:middle;width:12px;height:12px;border:1px solid #999}.nvtooltip .footer{padding:3px;text-align:center}.nvtooltip-pending-removal{pointer-events:none;display:none}.nvd3 line.nv-guideline{stroke:#ccc}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SpinnerComponent, selector: "[wmSpinner]", exportAs: ["wmSpinner"] }, { kind: "component", type: WmAppIconComponent, selector: "wm-app-icon", inputs: ["icon", "iconclass", "iconurl", "defaultIconClass", "defaultClasses", "iconStyle", "alt"] }], encapsulation: i0.ViewEncapsulation.None }); }
1754
+ }
1755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: ChartComponent, decorators: [{
1756
+ type: Component,
1757
+ args: [{ standalone: true, imports: [CommonModule, SpinnerComponent, WmAppIconComponent], selector: 'div[wmChart]', providers: [
1758
+ provideAsWidgetRef(ChartComponent)
1759
+ ], encapsulation: ViewEncapsulation.None, template: "@if (title) {\n <div class=\"panel-heading\">\n <h3 class=\"panel-title\">\n <div class=\"pull-left\">\n <wm-app-icon [iconclass]=\"iconclass\" [iconurl]=\"iconurl\" iconClasses=\"panel-icon\" alt=\"Chart icon\"></wm-app-icon>\n </div>\n <div class=\"heading\" [innerHTML]=\"title\"></div>\n @if (subheading) {\n <div class=\"description\" [innerHTML]=\"subheading\"></div>\n }\n </h3>\n </div>\n}\n<div class=\"app-chart-inner\" [ngClass]=\"{'loading':isLoadInProgress, 'panel-body': title}\">\n <svg></svg>\n @if (showContentLoadError && showNoDataMsg) {\n <div class=\"wm-content-info readonly-wrapper\">\n <p class=\"wm-message\" [title]=\"hintMsg\" [ngClass]=\"{'error': invalidConfig}\" [innerText]=\"errMsg\"></p>\n </div>\n }\n <div wmSpinner show.bind=\"isLoadInProgress\" caption.bind=\"loadingdatamsg\"></div>\n</div>\n", styles: [".nvtooltip h3,.nvtooltip p{margin:0;text-align:center}.nv-distx,.nv-disty,.nv-noninteractive,.nvd3 .nv-axis,.nvd3 .nv-interactiveGuideLine,.nvd3.nv-pie .nv-label,.nvd3.nv-sparklineplus g.nv-hoverValue,.nvtooltip{pointer-events:none}.nvd3 .nv-axis{opacity:1}.nvd3 .nv-axis path{fill:none;stroke:#000;stroke-opacity:.75;shape-rendering:crispEdges}.nvd3 .nv-axis .zero line,.nvd3 .nv-axis line.zero,.nvd3 .nv-axis path.domain{stroke-opacity:.75}.nvd3 .nv-axis.nv-x path.domain{stroke-opacity:0}.nvd3 .nv-axis line{fill:none;stroke:#e5e5e5;shape-rendering:crispEdges}.nvd3 .nv-axis .nv-axisMaxMin text,.nvtooltip table td.key.total{font-weight:700}.nvd3 .x .nv-axis .nv-axisMaxMin text,.nvd3 .x2 .nv-axis .nv-axisMaxMin text,.nvd3 .x3 .nv-axis .nv-axisMaxMin text{text-anchor:middle}.nvd3 .nv-axis.nv-disabled,.nvd3 .nv-controlsWrap .nv-legend .nv-check-box .nv-check{opacity:0}.nvd3 .nv-bars rect{fill-opacity:.75;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-bars rect.hover,.nvd3 .nv-boxplot circle:hover,.nvd3 .nv-boxplot rect:hover,.nvd3 .nv-candlestickBar .nv-ticks rect:hover,.nvd3 .nv-discretebar .nv-groups rect:hover,.nvd3 .nv-multibar .nv-groups rect:hover,.nvd3 .nv-multibarHorizontal .nv-groups rect:hover,.nvd3 .nv-scatter .nv-point.hover,.nvd3.nv-bullet .nv-measure:hover,.nvd3.nv-linePlusBar .nv-bar rect:hover,.nvd3.nv-pie .hover path{fill-opacity:1}.nvd3 .nv-bars .hover rect{fill:#add8e6}.nvd3 .nv-bars text{fill:#0000}.nvd3 .nv-bars .hover text{fill:#000}.nvd3 .nv-discretebar .nv-groups rect,.nvd3 .nv-multibar .nv-groups rect,.nvd3 .nv-multibarHorizontal .nv-groups rect{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear;transition:fill-opacity .25s linear}.nvd3 .nv-discretebar .nv-groups text,.nvd3 .nv-multibarHorizontal .nv-groups text{font-weight:700;fill:#000;stroke:#0000}.nvd3 .nv-boxplot circle{fill-opacity:.5}.nvd3 line.nv-boxplot-median{stroke:#000}.nv-boxplot-tick:hover{stroke-width:2.5px}.nvd3.nv-bullet{font:10px sans-serif}.nvd3.nv-bullet .nv-measure{fill-opacity:.8}.nvd3.nv-bullet .nv-marker{stroke:#000;stroke-width:2px}.nvd3.nv-bullet .nv-markerTriangle{stroke:#000;fill:#fff;stroke-width:1.5px}.nvd3.nv-bullet .nv-markerLine{stroke:#000;stroke-width:1.5px}.nvd3.nv-bullet .nv-tick line{stroke:#666;stroke-width:.5px}.nvd3.nv-bullet .nv-range.nv-s0{fill:#eee}.nvd3.nv-bullet .nv-range.nv-s1{fill:#ddd}.nvd3.nv-bullet .nv-range.nv-s2{fill:#ccc}.nvd3.nv-bullet .nv-title{font-size:14px;font-weight:700}.nvd3.nv-bullet .nv-subtitle{fill:#999}.nvd3.nv-bullet .nv-range{fill:#bababa;fill-opacity:.4}.nvd3.nv-bullet .nv-range:hover{fill-opacity:.7}.nvd3.nv-candlestickBar .nv-ticks .nv-tick,.nvd3.nv-ohlcBar .nv-ticks .nv-tick{stroke-width:1px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.hover,.nvd3.nv-ohlcBar .nv-ticks .nv-tick.hover{stroke-width:2px}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.positive rect,.nvd3.nv-sparklineplus .nv-maxValue{stroke:#2ca02c;fill:#2ca02c}.nvd3.nv-candlestickBar .nv-ticks .nv-tick.negative rect,.nvd3.nv-sparklineplus .nv-minValue{stroke:#d62728;fill:#d62728}.with-transitions .nv-candlestickBar .nv-ticks .nv-tick,.with-transitions .nvd3 .nv-groups .nv-point{-webkit-transition:stroke-width .25s linear,stroke-opacity .25s linear;transition:stroke-width .25s linear,stroke-opacity .25s linear}.nvd3.nv-candlestickBar .nv-ticks line{stroke:#333}.nv-force-node{stroke:#fff;stroke-width:1.5px}.nv-force-link{stroke:#999;stroke-opacity:.6}.nv-force-node text{stroke-width:0}.nvd3 .nv-check-box .nv-box{fill-opacity:0;stroke-width:2}.nvd3 .nv-check-box .nv-check{fill-opacity:0;stroke-width:4}.nvd3 .nv-hoverArea,.nvd3 .nv-series.nv-disabled .nv-check-box .nv-check,.nvd3.nv-line .nvd3.nv-scatter .nv-groups .nv-point,.nvd3.nv-pie .nv-label rect{fill-opacity:0;stroke-opacity:0}.nvd3.nv-linePlusBar .nv-bar rect{fill-opacity:.75}.nvd3 .nv-groups path.nv-line,.nvd3.nv-sparkline path{fill:none}.nvd3 .nv-groups path.nv-area{stroke:none}.nvd3.nv-scatter.nv-single-point .nv-groups .nv-point{fill-opacity:.5!important;stroke-opacity:.5!important}.nvd3 .nv-groups .nv-point.hover,.nvd3.nv-scatter .nv-groups .nv-point.hover{stroke-width:7px;fill-opacity:.95!important;stroke-opacity:.95!important}.nvd3 .nv-point-paths path{stroke:#aaa;stroke-opacity:0;fill:#eee;fill-opacity:0}.nvd3 .nv-indexLine{cursor:ew-resize}svg.nvd3-svg{-webkit-user-select:none;-ms-user-select:none;user-select:none;display:block;width:100%;height:100%}.nvtooltip.with-3d-shadow,.with-3d-shadow .nvtooltip{-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px #0003;border-radius:5px}.nvd3 text{font:12px Arial,sans-serif}.nvtooltip h3,.nvtooltip table td.key{font-weight:400}.nvd3 .title{font:700 14px Arial,sans-serif}.nvd3 .nv-background{fill:#fff;fill-opacity:0}.nvd3.nv-noData{font-size:18px;font-weight:700}.nv-brush .selection{fill-opacity:.125;shape-rendering:crispEdges}.nv-brush .handle path{fill:#eee;stroke:#666}.nvd3 .nv-legend .nv-series{cursor:pointer}.nvd3 .nv-legend .nv-disabled circle{fill-opacity:0}.nvd3 .nv-brush .selection{fill-opacity:0!important}.nvd3 .nv-brushBackground rect{stroke:#000;stroke-width:.4;fill:#fff;fill-opacity:.7}@media print{.nvd3 text{stroke-width:0;fill-opacity:1}}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.positive{stroke:#2ca02c}.nvd3.nv-ohlcBar .nv-ticks .nv-tick.negative{stroke:#d62728}.nvd3 .background path{fill:none;stroke:#eee;stroke-opacity:.4;shape-rendering:crispEdges}.nvd3 .foreground path{fill:none;stroke-opacity:.7}.nvd3 .nv-parallelCoordinates-brush .selection{fill:#fff;fill-opacity:.6;stroke:gray;shape-rendering:crispEdges}.nvd3 .nv-parallelCoordinates .hover{fill-opacity:1;stroke-width:3px}.nvd3 .missingValuesline line{fill:none;stroke:#000;stroke-width:1;stroke-opacity:1;stroke-dasharray:5,5}.nvd3.nv-pie path{stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-width .25s linear,stroke-opacity .25s linear;stroke:#fff;stroke-width:1px;stroke-opacity:1;fill-opacity:.7}.nvd3.nv-pie .nv-pie-title{font-size:24px;fill:#13c4f996}.nvd3.nv-pie .nv-slice text{stroke:#000;stroke-width:0}.nvd3 .nv-groups .nv-point.hover{stroke-width:20px;stroke-opacity:.5}.nvd3.nv-sparklineplus .nv-hoverValue line{stroke:#333;stroke-width:1.5px}.nvd3.nv-sparklineplus,.nvd3.nv-sparklineplus g{pointer-events:all}.nvd3.nv-sparklineplus .nv-xValue,.nvd3.nv-sparklineplus .nv-yValue{stroke-width:0;font-size:.9em;font-weight:400}.nvd3.nv-sparklineplus .nv-yValue{stroke:#f66}.nvd3.nv-sparklineplus .nv-currentValue{font-weight:700;font-size:1.1em}.nvd3.nv-stackedarea path.nv-area{fill-opacity:.7;stroke-opacity:0;-webkit-transition:fill-opacity .25s linear,stroke-opacity .25s linear;transition:fill-opacity .25s linear,stroke-opacity .25s linear}.nvd3.nv-stackedarea path.nv-area.hover{fill-opacity:.9}.nvd3.nv-stackedarea .nv-groups .nv-point{stroke-opacity:0;fill-opacity:0}.nvtooltip{position:absolute;background-color:#fff;color:#000;padding:1px;border:1px solid rgba(0,0,0,.5);z-index:10000;display:block;font-family:Arial,sans-serif;font-size:13px;text-align:left;white-space:nowrap;-webkit-user-select:none;-ms-user-select:none;user-select:none;background:#fffc;border-radius:4px}.nvtooltip.with-transitions,.with-transitions .nvtooltip{-webkit-transition:opacity 50ms linear .2s;transition:opacity 50ms linear .2s}.nvtooltip.x-nvtooltip,.nvtooltip.y-nvtooltip{padding:8px}.nvtooltip h3{padding:4px 14px;line-height:18px;background-color:#f7f7f7bf;color:#000;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.nvtooltip p{padding:5px 14px}.nvtooltip span{display:inline-block;margin:2px 0}.nvtooltip table{margin:6px;border-spacing:0}.nvtooltip table td{padding:2px 9px 2px 0;vertical-align:middle}.nvtooltip table td.value{text-align:right;font-weight:700}.nvtooltip table td.percent{color:#a9a9a9}.nvtooltip table tr.highlight td{padding:1px 9px 1px 0;border-bottom-style:solid;border-bottom-width:1px;border-top-style:solid;border-top-width:1px}.nvtooltip table td.legend-color-guide div{vertical-align:middle;width:12px;height:12px;border:1px solid #999}.nvtooltip .footer{padding:3px;text-align:center}.nvtooltip-pending-removal{pointer-events:none;display:none}.nvd3 line.nv-guideline{stroke:#ccc}\n"] }]
1760
+ }], ctorParameters: () => [{ type: i0.Injector }, { type: i1.App }, { type: undefined, decorators: [{
1761
+ type: Inject,
1762
+ args: ['EXPLICIT_CONTEXT']
1763
+ }, {
1764
+ type: Optional
1765
+ }] }], propDecorators: { title: [{
1766
+ type: HostBinding,
1767
+ args: ['class.panel']
1768
+ }] } });
1769
+
1770
+ /**
1771
+ * Generated bundle index. Do not edit.
1772
+ */
1773
+
1774
+ export { ChartComponent };
1775
+ //# sourceMappingURL=index.mjs.map