@neovici/cosmoz-omnitable 14.14.2 → 14.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (315) hide show
  1. package/dist/cosmoz-omnitable-column-amount.d.ts +2 -0
  2. package/dist/cosmoz-omnitable-column-amount.d.ts.map +1 -0
  3. package/dist/cosmoz-omnitable-column-amount.js +113 -0
  4. package/dist/cosmoz-omnitable-column-autocomplete.d.ts +6 -0
  5. package/dist/cosmoz-omnitable-column-autocomplete.d.ts.map +1 -0
  6. package/dist/cosmoz-omnitable-column-autocomplete.js +87 -0
  7. package/dist/cosmoz-omnitable-column-boolean.d.ts +17 -0
  8. package/dist/cosmoz-omnitable-column-boolean.d.ts.map +1 -0
  9. package/dist/cosmoz-omnitable-column-boolean.js +105 -0
  10. package/dist/cosmoz-omnitable-column-date.d.ts +2 -0
  11. package/dist/cosmoz-omnitable-column-date.d.ts.map +1 -0
  12. package/dist/cosmoz-omnitable-column-date.js +97 -0
  13. package/dist/cosmoz-omnitable-column-datetime.d.ts +2 -0
  14. package/dist/cosmoz-omnitable-column-datetime.d.ts.map +1 -0
  15. package/dist/cosmoz-omnitable-column-datetime.js +106 -0
  16. package/dist/cosmoz-omnitable-column-list-data.d.ts +2 -0
  17. package/dist/cosmoz-omnitable-column-list-data.d.ts.map +1 -0
  18. package/dist/cosmoz-omnitable-column-list-data.js +123 -0
  19. package/dist/cosmoz-omnitable-column-list-horizontal.d.ts +2 -0
  20. package/dist/cosmoz-omnitable-column-list-horizontal.d.ts.map +1 -0
  21. package/{cosmoz-omnitable-column-list-horizontal.js → dist/cosmoz-omnitable-column-list-horizontal.js} +15 -37
  22. package/dist/cosmoz-omnitable-column-list-mixin.d.ts +59 -0
  23. package/dist/cosmoz-omnitable-column-list-mixin.d.ts.map +1 -0
  24. package/dist/cosmoz-omnitable-column-list-mixin.js +139 -0
  25. package/dist/cosmoz-omnitable-column-list.d.ts +2 -0
  26. package/dist/cosmoz-omnitable-column-list.d.ts.map +1 -0
  27. package/{cosmoz-omnitable-column-list.js → dist/cosmoz-omnitable-column-list.js} +28 -47
  28. package/dist/cosmoz-omnitable-column-mixin.d.ts +161 -0
  29. package/dist/cosmoz-omnitable-column-mixin.d.ts.map +1 -0
  30. package/dist/cosmoz-omnitable-column-mixin.js +121 -0
  31. package/dist/cosmoz-omnitable-column-number.d.ts +2 -0
  32. package/dist/cosmoz-omnitable-column-number.d.ts.map +1 -0
  33. package/dist/cosmoz-omnitable-column-number.js +112 -0
  34. package/dist/cosmoz-omnitable-column-time.d.ts +2 -0
  35. package/dist/cosmoz-omnitable-column-time.d.ts.map +1 -0
  36. package/dist/cosmoz-omnitable-column-time.js +102 -0
  37. package/dist/cosmoz-omnitable-column.d.ts +2 -0
  38. package/dist/cosmoz-omnitable-column.d.ts.map +1 -0
  39. package/dist/cosmoz-omnitable-column.js +75 -0
  40. package/dist/cosmoz-omnitable-columns.d.ts +2 -0
  41. package/dist/cosmoz-omnitable-columns.d.ts.map +1 -0
  42. package/{cosmoz-omnitable-columns.js → dist/cosmoz-omnitable-columns.js} +1 -0
  43. package/dist/cosmoz-omnitable-group-row.d.ts +2 -0
  44. package/dist/cosmoz-omnitable-group-row.d.ts.map +1 -0
  45. package/dist/cosmoz-omnitable-group-row.js +15 -0
  46. package/dist/cosmoz-omnitable-header-row.d.ts +2 -0
  47. package/dist/cosmoz-omnitable-header-row.d.ts.map +1 -0
  48. package/{cosmoz-omnitable-header-row.js → dist/cosmoz-omnitable-header-row.js} +12 -45
  49. package/dist/cosmoz-omnitable-item-expand-line.d.ts +2 -0
  50. package/dist/cosmoz-omnitable-item-expand-line.d.ts.map +1 -0
  51. package/{cosmoz-omnitable-item-expand-line.js → dist/cosmoz-omnitable-item-expand-line.js} +4 -9
  52. package/dist/cosmoz-omnitable-item-expand.d.ts +2 -0
  53. package/dist/cosmoz-omnitable-item-expand.d.ts.map +1 -0
  54. package/{cosmoz-omnitable-item-expand.js → dist/cosmoz-omnitable-item-expand.js} +10 -18
  55. package/dist/cosmoz-omnitable-item-row.d.ts +2 -0
  56. package/dist/cosmoz-omnitable-item-row.d.ts.map +1 -0
  57. package/dist/cosmoz-omnitable-item-row.js +19 -0
  58. package/dist/cosmoz-omnitable-skeleton.d.ts +2 -0
  59. package/dist/cosmoz-omnitable-skeleton.d.ts.map +1 -0
  60. package/{cosmoz-omnitable-skeleton.js → dist/cosmoz-omnitable-skeleton.js} +9 -25
  61. package/dist/cosmoz-omnitable-styles.d.ts +4 -0
  62. package/dist/cosmoz-omnitable-styles.d.ts.map +1 -0
  63. package/{cosmoz-omnitable-styles.js → dist/cosmoz-omnitable-styles.js} +3 -4
  64. package/dist/cosmoz-omnitable.d.ts +3 -0
  65. package/dist/cosmoz-omnitable.d.ts.map +1 -0
  66. package/{cosmoz-omnitable.js → dist/cosmoz-omnitable.js} +27 -40
  67. package/dist/grouped-list/cosmoz-grouped-list-row.d.ts +2 -0
  68. package/dist/grouped-list/cosmoz-grouped-list-row.d.ts.map +1 -0
  69. package/dist/grouped-list/cosmoz-grouped-list-row.js +31 -0
  70. package/dist/grouped-list/cosmoz-grouped-list.d.ts +2 -0
  71. package/dist/grouped-list/cosmoz-grouped-list.d.ts.map +1 -0
  72. package/dist/grouped-list/cosmoz-grouped-list.js +5 -0
  73. package/dist/grouped-list/index.d.ts +2 -0
  74. package/dist/grouped-list/index.d.ts.map +1 -0
  75. package/{grouped-list → dist/grouped-list}/index.js +1 -0
  76. package/dist/grouped-list/use-collapsible-items.d.ts +7 -0
  77. package/dist/grouped-list/use-collapsible-items.d.ts.map +1 -0
  78. package/dist/grouped-list/use-collapsible-items.js +27 -0
  79. package/dist/grouped-list/use-cosmoz-grouped-list.d.ts +15 -0
  80. package/dist/grouped-list/use-cosmoz-grouped-list.d.ts.map +1 -0
  81. package/dist/grouped-list/use-cosmoz-grouped-list.js +66 -0
  82. package/dist/grouped-list/use-selected-items.d.ts +19 -0
  83. package/dist/grouped-list/use-selected-items.d.ts.map +1 -0
  84. package/dist/grouped-list/use-selected-items.js +105 -0
  85. package/dist/grouped-list/use-weak-state.d.ts +6 -0
  86. package/dist/grouped-list/use-weak-state.d.ts.map +1 -0
  87. package/dist/grouped-list/use-weak-state.js +15 -0
  88. package/dist/grouped-list/utils.d.ts +11 -0
  89. package/dist/grouped-list/utils.d.ts.map +1 -0
  90. package/dist/grouped-list/utils.js +57 -0
  91. package/dist/lib/compute-layout.d.ts +3 -0
  92. package/dist/lib/compute-layout.d.ts.map +1 -0
  93. package/dist/lib/compute-layout.js +46 -0
  94. package/dist/lib/cosmoz-omnitable-amount-range-input.d.ts +2 -0
  95. package/dist/lib/cosmoz-omnitable-amount-range-input.d.ts.map +1 -0
  96. package/dist/lib/cosmoz-omnitable-amount-range-input.js +304 -0
  97. package/dist/lib/cosmoz-omnitable-date-input-mixin.d.ts +2 -0
  98. package/dist/lib/cosmoz-omnitable-date-input-mixin.d.ts.map +1 -0
  99. package/dist/lib/cosmoz-omnitable-date-input-mixin.js +149 -0
  100. package/dist/lib/cosmoz-omnitable-date-range-input.d.ts +2 -0
  101. package/dist/lib/cosmoz-omnitable-date-range-input.d.ts.map +1 -0
  102. package/{lib → dist/lib}/cosmoz-omnitable-date-range-input.js +32 -41
  103. package/dist/lib/cosmoz-omnitable-datetime-range-input.d.ts +2 -0
  104. package/dist/lib/cosmoz-omnitable-datetime-range-input.d.ts.map +1 -0
  105. package/{lib → dist/lib}/cosmoz-omnitable-datetime-range-input.js +27 -38
  106. package/dist/lib/cosmoz-omnitable-number-range-input.d.ts +2 -0
  107. package/dist/lib/cosmoz-omnitable-number-range-input.d.ts.map +1 -0
  108. package/{lib → dist/lib}/cosmoz-omnitable-number-range-input.js +73 -83
  109. package/dist/lib/cosmoz-omnitable-range-input-mixin.d.ts +2 -0
  110. package/dist/lib/cosmoz-omnitable-range-input-mixin.d.ts.map +1 -0
  111. package/dist/lib/cosmoz-omnitable-range-input-mixin.js +337 -0
  112. package/dist/lib/cosmoz-omnitable-resize-nub.d.ts +2 -0
  113. package/dist/lib/cosmoz-omnitable-resize-nub.d.ts.map +1 -0
  114. package/dist/lib/cosmoz-omnitable-resize-nub.js +33 -0
  115. package/dist/lib/cosmoz-omnitable-time-range-input.d.ts +2 -0
  116. package/dist/lib/cosmoz-omnitable-time-range-input.d.ts.map +1 -0
  117. package/dist/lib/cosmoz-omnitable-time-range-input.js +125 -0
  118. package/dist/lib/generic-sorter.d.ts +2 -0
  119. package/dist/lib/generic-sorter.d.ts.map +1 -0
  120. package/dist/lib/generic-sorter.js +29 -0
  121. package/dist/lib/icons.d.ts +5 -0
  122. package/dist/lib/icons.d.ts.map +1 -0
  123. package/{lib → dist/lib}/icons.js +5 -8
  124. package/dist/lib/layout.d.ts +2 -0
  125. package/dist/lib/layout.d.ts.map +1 -0
  126. package/dist/lib/layout.js +41 -0
  127. package/dist/lib/polymer-haunted-render-mixin.d.ts +10 -0
  128. package/dist/lib/polymer-haunted-render-mixin.d.ts.map +1 -0
  129. package/dist/lib/polymer-haunted-render-mixin.js +16 -0
  130. package/dist/lib/render-footer.d.ts +9 -0
  131. package/dist/lib/render-footer.d.ts.map +1 -0
  132. package/{lib → dist/lib}/render-footer.js +4 -17
  133. package/dist/lib/render-header.d.ts +14 -0
  134. package/dist/lib/render-header.d.ts.map +1 -0
  135. package/{lib → dist/lib}/render-header.js +6 -27
  136. package/dist/lib/render-list.d.ts +2 -0
  137. package/dist/lib/render-list.d.ts.map +1 -0
  138. package/{lib → dist/lib}/render-list.js +12 -45
  139. package/dist/lib/save-as-csv-action.d.ts +2 -0
  140. package/dist/lib/save-as-csv-action.d.ts.map +1 -0
  141. package/dist/lib/save-as-csv-action.js +26 -0
  142. package/dist/lib/save-as-xlsx-action.d.ts +3 -0
  143. package/dist/lib/save-as-xlsx-action.d.ts.map +1 -0
  144. package/dist/lib/save-as-xlsx-action.js +18 -0
  145. package/dist/lib/settings/cosmoz-omnitable-settings.d.ts +2 -0
  146. package/dist/lib/settings/cosmoz-omnitable-settings.d.ts.map +1 -0
  147. package/{lib → dist/lib}/settings/cosmoz-omnitable-settings.js +27 -69
  148. package/dist/lib/settings/cosmoz-omnitable-sort-group.d.ts +14 -0
  149. package/dist/lib/settings/cosmoz-omnitable-sort-group.d.ts.map +1 -0
  150. package/dist/lib/settings/cosmoz-omnitable-sort-group.js +55 -0
  151. package/dist/lib/settings/drivers/context.d.ts +12 -0
  152. package/dist/lib/settings/drivers/context.d.ts.map +1 -0
  153. package/dist/lib/settings/drivers/context.js +11 -0
  154. package/dist/lib/settings/drivers/index.d.ts +4 -0
  155. package/dist/lib/settings/drivers/index.d.ts.map +1 -0
  156. package/{lib → dist/lib}/settings/drivers/index.js +1 -0
  157. package/dist/lib/settings/drivers/local.d.ts +8 -0
  158. package/dist/lib/settings/drivers/local.d.ts.map +1 -0
  159. package/dist/lib/settings/drivers/local.js +33 -0
  160. package/dist/lib/settings/drivers/remote.d.ts +8 -0
  161. package/dist/lib/settings/drivers/remote.d.ts.map +1 -0
  162. package/dist/lib/settings/drivers/remote.js +25 -0
  163. package/dist/lib/settings/index.d.ts +2 -0
  164. package/dist/lib/settings/index.d.ts.map +1 -0
  165. package/{lib → dist/lib}/settings/index.js +1 -1
  166. package/dist/lib/settings/normalize.d.ts +11 -0
  167. package/dist/lib/settings/normalize.d.ts.map +1 -0
  168. package/dist/lib/settings/normalize.js +47 -0
  169. package/dist/lib/settings/style.css.d.ts +4 -0
  170. package/dist/lib/settings/style.css.d.ts.map +1 -0
  171. package/{lib → dist/lib}/settings/style.css.js +3 -4
  172. package/dist/lib/settings/use-saved-settings.d.ts +9 -0
  173. package/dist/lib/settings/use-saved-settings.d.ts.map +1 -0
  174. package/dist/lib/settings/use-saved-settings.js +35 -0
  175. package/dist/lib/settings/use-settings-ui.d.ts +3 -0
  176. package/dist/lib/settings/use-settings-ui.d.ts.map +1 -0
  177. package/dist/lib/settings/use-settings-ui.js +78 -0
  178. package/dist/lib/settings/use-settings.d.ts +23 -0
  179. package/dist/lib/settings/use-settings.d.ts.map +1 -0
  180. package/dist/lib/settings/use-settings.js +26 -0
  181. package/dist/lib/use-canvas-width.d.ts +2 -0
  182. package/dist/lib/use-canvas-width.d.ts.map +1 -0
  183. package/dist/lib/use-canvas-width.js +8 -0
  184. package/dist/lib/use-dom-columns.d.ts +5 -0
  185. package/dist/lib/use-dom-columns.d.ts.map +1 -0
  186. package/dist/lib/use-dom-columns.js +127 -0
  187. package/dist/lib/use-fast-layout.d.ts +13 -0
  188. package/dist/lib/use-fast-layout.d.ts.map +1 -0
  189. package/dist/lib/use-fast-layout.js +47 -0
  190. package/dist/lib/use-footer.d.ts +10 -0
  191. package/dist/lib/use-footer.d.ts.map +1 -0
  192. package/dist/lib/use-footer.js +11 -0
  193. package/dist/lib/use-hash-state.d.ts +4 -0
  194. package/dist/lib/use-hash-state.d.ts.map +1 -0
  195. package/dist/lib/use-hash-state.js +32 -0
  196. package/dist/lib/use-header.d.ts +21 -0
  197. package/dist/lib/use-header.d.ts.map +1 -0
  198. package/dist/lib/use-header.js +38 -0
  199. package/dist/lib/use-layout.d.ts +7 -0
  200. package/dist/lib/use-layout.d.ts.map +1 -0
  201. package/dist/lib/use-layout.js +21 -0
  202. package/dist/lib/use-list.d.ts +31 -0
  203. package/dist/lib/use-list.d.ts.map +1 -0
  204. package/dist/lib/use-list.js +198 -0
  205. package/dist/lib/use-mini.d.ts +10 -0
  206. package/dist/lib/use-mini.d.ts.map +1 -0
  207. package/dist/lib/use-mini.js +19 -0
  208. package/dist/lib/use-omnitable.d.ts +37 -0
  209. package/dist/lib/use-omnitable.d.ts.map +1 -0
  210. package/dist/lib/use-omnitable.js +74 -0
  211. package/dist/lib/use-processed-items.d.ts +17 -0
  212. package/dist/lib/use-processed-items.d.ts.map +1 -0
  213. package/dist/lib/use-processed-items.js +151 -0
  214. package/dist/lib/use-public-interface.d.ts +7 -0
  215. package/dist/lib/use-public-interface.d.ts.map +1 -0
  216. package/dist/lib/use-public-interface.js +82 -0
  217. package/dist/lib/use-resizable-columns.d.ts +7 -0
  218. package/dist/lib/use-resizable-columns.d.ts.map +1 -0
  219. package/dist/lib/use-resizable-columns.js +38 -0
  220. package/dist/lib/use-sort-and-group-options.d.ts +26 -0
  221. package/dist/lib/use-sort-and-group-options.d.ts.map +1 -0
  222. package/dist/lib/use-sort-and-group-options.js +36 -0
  223. package/dist/lib/use-track-size.d.ts +2 -0
  224. package/dist/lib/use-track-size.d.ts.map +1 -0
  225. package/dist/lib/use-track-size.js +15 -0
  226. package/dist/lib/use-tween-array.d.ts +3 -0
  227. package/dist/lib/use-tween-array.d.ts.map +1 -0
  228. package/dist/lib/use-tween-array.js +50 -0
  229. package/dist/lib/utils-amount.d.ts +26 -0
  230. package/dist/lib/utils-amount.d.ts.map +1 -0
  231. package/dist/lib/utils-amount.js +99 -0
  232. package/dist/lib/utils-data.d.ts +8 -0
  233. package/dist/lib/utils-data.d.ts.map +1 -0
  234. package/dist/lib/utils-data.js +28 -0
  235. package/dist/lib/utils-date.d.ts +25 -0
  236. package/dist/lib/utils-date.d.ts.map +1 -0
  237. package/dist/lib/utils-date.js +161 -0
  238. package/dist/lib/utils-datetime.d.ts +16 -0
  239. package/dist/lib/utils-datetime.d.ts.map +1 -0
  240. package/dist/lib/utils-datetime.js +52 -0
  241. package/dist/lib/utils-number.d.ts +19 -0
  242. package/dist/lib/utils-number.d.ts.map +1 -0
  243. package/dist/lib/utils-number.js +87 -0
  244. package/dist/lib/utils-time.d.ts +17 -0
  245. package/dist/lib/utils-time.d.ts.map +1 -0
  246. package/dist/lib/utils-time.js +88 -0
  247. package/dist/lib/utils.d.ts +3 -0
  248. package/dist/lib/utils.d.ts.map +1 -0
  249. package/dist/lib/utils.js +14 -0
  250. package/dist/ui-helpers/cosmoz-clear-button.d.ts +2 -0
  251. package/dist/ui-helpers/cosmoz-clear-button.d.ts.map +1 -0
  252. package/{ui-helpers → dist/ui-helpers}/cosmoz-clear-button.js +3 -5
  253. package/package.json +39 -9
  254. package/cosmoz-omnitable-column-amount.js +0 -162
  255. package/cosmoz-omnitable-column-autocomplete.js +0 -113
  256. package/cosmoz-omnitable-column-boolean.js +0 -168
  257. package/cosmoz-omnitable-column-date.js +0 -133
  258. package/cosmoz-omnitable-column-datetime.js +0 -145
  259. package/cosmoz-omnitable-column-list-data.js +0 -141
  260. package/cosmoz-omnitable-column-list-mixin.js +0 -198
  261. package/cosmoz-omnitable-column-mixin.js +0 -149
  262. package/cosmoz-omnitable-column-number.js +0 -157
  263. package/cosmoz-omnitable-column-time.js +0 -137
  264. package/cosmoz-omnitable-column.js +0 -99
  265. package/cosmoz-omnitable-group-row.js +0 -20
  266. package/cosmoz-omnitable-item-row.js +0 -38
  267. package/grouped-list/cosmoz-grouped-list-row.js +0 -41
  268. package/grouped-list/cosmoz-grouped-list.js +0 -13
  269. package/grouped-list/use-collapsible-items.js +0 -32
  270. package/grouped-list/use-cosmoz-grouped-list.js +0 -102
  271. package/grouped-list/use-selected-items.js +0 -140
  272. package/grouped-list/use-weak-state.js +0 -21
  273. package/grouped-list/utils.js +0 -89
  274. package/lib/compute-layout.js +0 -74
  275. package/lib/cosmoz-omnitable-amount-range-input.js +0 -353
  276. package/lib/cosmoz-omnitable-date-input-mixin.js +0 -182
  277. package/lib/cosmoz-omnitable-range-input-mixin.js +0 -451
  278. package/lib/cosmoz-omnitable-resize-nub.js +0 -41
  279. package/lib/cosmoz-omnitable-time-range-input.js +0 -154
  280. package/lib/generic-sorter.js +0 -35
  281. package/lib/layout.js +0 -61
  282. package/lib/polymer-haunted-render-mixin.js +0 -19
  283. package/lib/save-as-csv-action.js +0 -36
  284. package/lib/save-as-xlsx-action.js +0 -27
  285. package/lib/settings/cosmoz-omnitable-sort-group.js +0 -74
  286. package/lib/settings/drivers/context.js +0 -16
  287. package/lib/settings/drivers/local.js +0 -29
  288. package/lib/settings/drivers/remote.js +0 -22
  289. package/lib/settings/normalize.js +0 -76
  290. package/lib/settings/use-saved-settings.js +0 -43
  291. package/lib/settings/use-settings-ui.js +0 -125
  292. package/lib/settings/use-settings.js +0 -53
  293. package/lib/use-canvas-width.js +0 -12
  294. package/lib/use-dom-columns.js +0 -166
  295. package/lib/use-fast-layout.js +0 -73
  296. package/lib/use-footer.js +0 -16
  297. package/lib/use-hash-state.js +0 -71
  298. package/lib/use-header.js +0 -71
  299. package/lib/use-layout.js +0 -32
  300. package/lib/use-list.js +0 -263
  301. package/lib/use-mini.js +0 -30
  302. package/lib/use-omnitable.js +0 -99
  303. package/lib/use-processed-items.js +0 -254
  304. package/lib/use-public-interface.js +0 -107
  305. package/lib/use-resizable-columns.js +0 -63
  306. package/lib/use-sort-and-group-options.js +0 -95
  307. package/lib/use-track-size.js +0 -23
  308. package/lib/use-tween-array.js +0 -60
  309. package/lib/utils-amount.js +0 -131
  310. package/lib/utils-data.js +0 -42
  311. package/lib/utils-date.js +0 -194
  312. package/lib/utils-datetime.js +0 -66
  313. package/lib/utils-number.js +0 -111
  314. package/lib/utils-time.js +0 -112
  315. package/lib/utils.js +0 -17
@@ -1,7 +1,6 @@
1
1
  import { tagged as css } from '@neovici/cosmoz-utils';
2
2
  import { html, component } from '@pionjs/pion';
3
-
4
- const styles = css`
3
+ const styles = css `
5
4
  :host {
6
5
  display: flex;
7
6
  }
@@ -47,8 +46,7 @@ const styles = css`
47
46
  color: #dfdfdf;
48
47
  }
49
48
  `;
50
-
51
- const Clear = () => html`
49
+ const Clear = () => html `
52
50
  <style>
53
51
  ${styles}
54
52
  </style>
@@ -65,5 +63,5 @@ const Clear = () => html`
65
63
  </g>
66
64
  </svg>
67
65
  `;
68
-
69
66
  customElements.define('cosmoz-clear-button', component(Clear));
67
+ //# sourceMappingURL=cosmoz-clear-button.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neovici/cosmoz-omnitable",
3
- "version": "14.14.2",
3
+ "version": "14.15.0",
4
4
  "description": "[![Build Status](https://travis-ci.org/Neovici/cosmoz-omnitable.svg?branch=master)](https://travis-ci.org/Neovici/cosmoz-omnitable)",
5
5
  "keywords": [
6
6
  "web-components"
@@ -15,18 +15,41 @@
15
15
  },
16
16
  "license": "Apache-2.0",
17
17
  "author": "Neovici Development",
18
- "main": "cosmoz-omnitable.js",
18
+ "main": "dist/cosmoz-omnitable.js",
19
+ "types": "dist/cosmoz-omnitable.d.ts",
20
+ "exports": {
21
+ "./cosmoz-omnitable.js": {
22
+ "types": "./dist/cosmoz-omnitable.d.ts",
23
+ "default": "./dist/cosmoz-omnitable.js"
24
+ },
25
+ "./cosmoz-omnitable-*.js": {
26
+ "types": "./dist/cosmoz-omnitable-*.d.ts",
27
+ "default": "./dist/cosmoz-omnitable-*.js"
28
+ },
29
+ "./lib/*.js": {
30
+ "types": "./dist/lib/*.d.ts",
31
+ "default": "./dist/lib/*.js"
32
+ },
33
+ "./grouped-list/*.js": {
34
+ "types": "./dist/grouped-list/*.d.ts",
35
+ "default": "./dist/grouped-list/*.js"
36
+ },
37
+ "./ui-helpers/*": {
38
+ "default": "./dist/ui-helpers/*"
39
+ }
40
+ },
19
41
  "directories": {
20
42
  "test": "test"
21
43
  },
22
44
  "files": [
23
- "cosmoz-*.js",
24
- "ui-helpers",
25
- "lib/**/*.js",
26
- "grouped-list/*.js"
45
+ "dist/**/*.js",
46
+ "dist/**/*.d.ts",
47
+ "dist/**/*.d.ts.map"
27
48
  ],
28
49
  "scripts": {
29
- "lint": "eslint --cache --ext .js .",
50
+ "build": "tsc",
51
+ "build:watch": "tsc --watch",
52
+ "lint": "eslint --cache --ext .js,.ts src/",
30
53
  "start": "wds",
31
54
  "test": "wtr --coverage",
32
55
  "test:watch": "wtr --watch",
@@ -59,6 +82,11 @@
59
82
  1,
60
83
  "always",
61
84
  600
85
+ ],
86
+ "footer-max-line-length": [
87
+ 1,
88
+ "always",
89
+ 600
62
90
  ]
63
91
  }
64
92
  },
@@ -72,7 +100,7 @@
72
100
  "@neovici/cosmoz-i18next": "^3.1.1",
73
101
  "@neovici/cosmoz-input": "^5.0.0",
74
102
  "@neovici/cosmoz-router": "^11.0.0",
75
- "@neovici/cosmoz-spinner": "^1.0.0",
103
+ "@neovici/cosmoz-spinner": "^1.0.1",
76
104
  "@neovici/cosmoz-utils": "^6.14.2",
77
105
  "@neovici/nullxlsx": "^3.0.0",
78
106
  "@pionjs/pion": "^2.0.0",
@@ -97,9 +125,11 @@
97
125
  "@semantic-release/changelog": "^6.0.0",
98
126
  "@semantic-release/git": "^10.0.0",
99
127
  "@storybook/web-components-vite": "^9.1.3",
128
+ "@types/file-saver": "^2.0.0",
100
129
  "husky": "^9.0.0",
101
130
  "semantic-release": "^24.0.0",
102
131
  "sinon": "^20.0.0",
103
- "storybook": "^9.1.3"
132
+ "storybook": "^9.1.3",
133
+ "typescript": "^5.0.0"
104
134
  }
105
135
  }
@@ -1,162 +0,0 @@
1
- import '@neovici/cosmoz-input';
2
- import '@polymer/paper-dropdown-menu/paper-dropdown-menu';
3
- import './ui-helpers/cosmoz-clear-button';
4
-
5
- import { PolymerElement } from '@polymer/polymer/polymer-element';
6
- import { html } from 'lit-html';
7
-
8
- import { columnMixin } from './cosmoz-omnitable-column-mixin';
9
- import { defaultComputeSource } from './lib/utils-data';
10
- import './lib/cosmoz-omnitable-amount-range-input';
11
- import {
12
- getComparableValue,
13
- getCurrency,
14
- applySingleFilter,
15
- getString,
16
- getInputString,
17
- toAmount,
18
- toHashString,
19
- fromHashString,
20
- } from './lib/utils-amount';
21
- import { get } from '@polymer/polymer/lib/utils/path';
22
-
23
- /**
24
- * @polymer
25
- * @customElement
26
- * @appliesMixin columnMixin
27
- */
28
- class OmnitableColumnAmount extends columnMixin(PolymerElement) {
29
- static get properties() {
30
- return {
31
- min: { type: Number, value: null, notify: true },
32
- max: { type: Number, value: null, notify: true },
33
- limits: { type: Function },
34
- locale: { type: String, value: null, notify: true },
35
- autoupdate: { type: Boolean, value: false, notify: true },
36
- currency: { type: String, notify: true },
37
- autodetect: { type: Boolean, value: false, notify: true },
38
- rates: { type: Object, notify: true },
39
- width: { type: String, value: '70px' },
40
- cellClass: { type: String, value: 'amount-cell align-right' },
41
- headerCellClass: { type: String, value: 'amount-header-cell' },
42
- };
43
- }
44
-
45
- getConfig(column) {
46
- return { limits: column.limits };
47
- }
48
-
49
- getFilterFn(column, filter) {
50
- const min = getComparableValue({ ...column, valuePath: 'min' }, filter),
51
- max = getComparableValue({ ...column, valuePath: 'max' }, filter);
52
-
53
- if (min == null && max == null) {
54
- return;
55
- }
56
- return applySingleFilter(column, filter);
57
- }
58
-
59
- getString(column, item) {
60
- return getString(column, item);
61
- }
62
-
63
- toXlsxValue(column, item) {
64
- return getString(column, item);
65
- }
66
-
67
- cellTitleFn(column, item) {
68
- return getString(column, item);
69
- }
70
-
71
- getComparableValue(column, item) {
72
- return getComparableValue(column, item);
73
- }
74
-
75
- serializeFilter({ rates }, filter) {
76
- if (filter == null) {
77
- return;
78
- }
79
- const min = toAmount(rates, filter.min),
80
- max = toAmount(rates, filter.max);
81
-
82
- if (min == null && max == null) {
83
- return;
84
- }
85
- return toHashString(min) + '~' + toHashString(max);
86
- }
87
-
88
- deserializeFilter(column, filter) {
89
- if (filter == null || filter === '') {
90
- return null;
91
- }
92
- const matches = filter.match(/^([^~]+)?~([^~]+)?/iu);
93
-
94
- if (!Array.isArray(matches)) {
95
- return null;
96
- }
97
-
98
- return { min: fromHashString(matches[1]), max: fromHashString(matches[2]) };
99
- }
100
-
101
- renderCell(column, { item }) {
102
- return html`<span>${column.getString(column, item)}</span>`;
103
- }
104
-
105
- renderEditCell(column, { item }, onItemChange) {
106
- const onChange = (event) =>
107
- onItemChange({
108
- amount: event.target.value,
109
- currency: get(item, column.valuePath)?.currency,
110
- });
111
-
112
- return html`<cosmoz-input
113
- no-label-float
114
- type="number"
115
- @change=${onChange}
116
- .value=${getInputString(column, item)}
117
- >
118
- <div slot="suffix">${getCurrency(column, item)}</div>
119
- </cosmoz-input>`;
120
- }
121
-
122
- renderHeader(
123
- {
124
- title,
125
- min,
126
- max,
127
- limits,
128
- locale,
129
- rates,
130
- currency,
131
- autoupdate,
132
- autodetect,
133
- },
134
- { filter },
135
- setState,
136
- source,
137
- ) {
138
- return html`<cosmoz-omnitable-amount-range-input
139
- .title=${title}
140
- .filter=${filter}
141
- .values=${source}
142
- .rates=${rates}
143
- .min=${min}
144
- .max=${max}
145
- .limits=${limits}
146
- .locale=${locale}
147
- .currency=${currency}
148
- .autoupdate=${autoupdate}
149
- .autodetect=${autodetect}
150
- @filter-changed=${({ detail: { value } }) =>
151
- setState((state) => ({ ...state, filter: value }))}
152
- @header-focused-changed=${({ detail: { value } }) =>
153
- setState((state) => ({ ...state, headerFocused: value }))}
154
- ></cosmoz-omnitable-amount-range-input>`;
155
- }
156
-
157
- computeSource(column, data) {
158
- return defaultComputeSource(column, data);
159
- }
160
- }
161
-
162
- customElements.define('cosmoz-omnitable-column-amount', OmnitableColumnAmount);
@@ -1,113 +0,0 @@
1
- import '@neovici/cosmoz-autocomplete';
2
-
3
- import { PolymerElement } from '@polymer/polymer/polymer-element.js';
4
- import { html } from 'lit-html';
5
- import { when } from 'lit-html/directives/when.js';
6
- import '@neovici/cosmoz-spinner';
7
-
8
- import { columnMixin, getString } from './cosmoz-omnitable-column-mixin.js';
9
- import {
10
- listColumnMixin,
11
- onChange,
12
- onFocus,
13
- onText,
14
- } from './cosmoz-omnitable-column-list-mixin';
15
- import { prop, strProp } from '@neovici/cosmoz-utils/object';
16
- import { array } from '@neovici/cosmoz-utils/array';
17
-
18
- import { columnSymbol } from './lib/use-dom-columns';
19
- import { get } from '@polymer/polymer/lib/utils/path';
20
-
21
- export const getComparableValue = (
22
- { valuePath, textProperty, valueProperty },
23
- item,
24
- ) => {
25
- const property = textProperty ? strProp(textProperty) : prop(valueProperty),
26
- values = array(valuePath && get(item, valuePath)).map(property);
27
- return values.length > 1 ? values.filter(Boolean).join(',') : values[0];
28
- };
29
-
30
- /**
31
- * @polymer
32
- * @customElement
33
- * @appliesMixin columnMixin
34
- */
35
- class OmnitableColumnAutocomplete extends listColumnMixin(
36
- columnMixin(PolymerElement),
37
- ) {
38
- static get properties() {
39
- return {
40
- headerCellClass: { type: String, value: 'autocomplete-header-cell' },
41
- minWidth: { type: String, value: '55px' },
42
- editMinWidth: { type: String, value: '55px' },
43
- keepOpened: { type: Boolean, value: true },
44
- keepQuery: { type: Boolean },
45
- showSingle: { type: Boolean },
46
- preserveOrder: { type: Boolean },
47
- limit: { type: Number },
48
- textual: { type: Function },
49
- };
50
- }
51
-
52
- getConfig(column) {
53
- return {
54
- ...super.getConfig?.(column),
55
- keepOpened: column.keepOpened,
56
- keepQuery: column.keepQuery,
57
- showSingle: column.showSingle,
58
- preserveOrder: column.preserveOrder,
59
- limit: column.limit,
60
- textual: column.textual,
61
- };
62
- }
63
-
64
- renderCell(column, { item }) {
65
- return html`<span class="default-column"
66
- >${column.getString(column, item)}</span
67
- >`;
68
- }
69
-
70
- renderEditCell(column, { item }, onItemChange) {
71
- const onChange = (event) => onItemChange(event.target.value);
72
- return html`<cosmoz-input
73
- no-label-float
74
- type="text"
75
- @change=${onChange}
76
- .value=${getString(column, item)}
77
- ></cosmoz-input>`;
78
- }
79
-
80
- renderHeader(column, { filter, query }, setState, source) {
81
- return html`<cosmoz-autocomplete-ui
82
- class="external-values-${column.externalValues}"
83
- ?keep-opened=${column.keepOpened}
84
- ?keep-query=${column.keepQuery}
85
- ?show-single=${column.showSingle}
86
- ?preserve-order=${column.preserveOrder}
87
- .textual=${column.textual}
88
- .label=${column.title}
89
- .source=${source}
90
- .textProperty=${column.textProperty}
91
- .valueProperty=${column.valueProperty}
92
- .itemRenderer=${column[columnSymbol]?.itemRenderer}
93
- .value=${filter}
94
- .text=${query}
95
- .limit=${column.limit}
96
- .onChange=${onChange(setState)}
97
- .onFocus=${onFocus(setState)}
98
- .onText=${onText(setState)}
99
- >${when(
100
- column.loading,
101
- () => html`<cosmoz-spinner slot="suffix"></cosmoz-spinner>`,
102
- )}</cosmoz-autocomplete-ui
103
- >`;
104
- }
105
-
106
- getComparableValue(column, item) {
107
- return getComparableValue(column, item);
108
- }
109
- }
110
- customElements.define(
111
- 'cosmoz-omnitable-column-autocomplete',
112
- OmnitableColumnAutocomplete,
113
- );
@@ -1,168 +0,0 @@
1
- import { PolymerElement } from '@polymer/polymer/polymer-element';
2
-
3
- import { columnMixin } from './cosmoz-omnitable-column-mixin';
4
-
5
- import '@neovici/cosmoz-autocomplete';
6
- import { html } from 'lit-html';
7
- import { when } from 'lit-html/directives/when.js';
8
- import { get } from '@polymer/polymer/lib/utils/path';
9
- import { memooize } from '@neovici/cosmoz-utils/memoize';
10
-
11
- const computeValue = (value, source) =>
12
- source.find(({ value: valueProp }) => value === valueProp),
13
- computeTooltip = (title, value, source) => {
14
- const val = computeValue(value, source);
15
- return val ? val.text : title;
16
- },
17
- computeItemTooltip = (title, item, valuePath, source) =>
18
- computeTooltip(title, get(item, valuePath), source),
19
- computeItemValue = ({ valuePath }, item, source) =>
20
- computeValue(get(item, valuePath), source),
21
- onChange = (setState) => (selection) => {
22
- setState((state) => ({ ...state, filter: selection?.[0]?.value ?? null }));
23
- },
24
- onFocus = (setState) => (focused) => {
25
- setState((state) => ({ ...state, headerFocused: focused }));
26
- },
27
- onText = (setState) => (text) => {
28
- setState((state) => ({ ...state, query: text }));
29
- },
30
- onEditableChange = (onItemChange) => (selection) =>
31
- onItemChange(selection?.[0]?.value),
32
- getString = ({ valuePath, trueLabel, falseLabel }, item) => {
33
- const value = get(item, valuePath);
34
- return value ? trueLabel : falseLabel;
35
- },
36
- applySingleFilter =
37
- ({ valuePath }, filter) =>
38
- (item) =>
39
- get(item, valuePath) === filter,
40
- computeSource = memooize((trueLabel, falseLabel) => [
41
- { text: trueLabel, value: true },
42
- { text: falseLabel, value: false },
43
- ]),
44
- toXlsxValue = ({ valuePath, trueLabel, falseLabel }, item) => {
45
- if (!valuePath) {
46
- return '';
47
- }
48
- return get(item, valuePath) ? trueLabel : falseLabel;
49
- },
50
- deserializeFilter = (column, filter) => {
51
- try {
52
- return JSON.parse(filter);
53
- } catch {
54
- return null;
55
- }
56
- };
57
-
58
- /**
59
- * @polymer
60
- * @customElement
61
- * @appliesMixin columnMixin
62
- */
63
- class OmnitableColumnBoolean extends columnMixin(PolymerElement) {
64
- static get properties() {
65
- return {
66
- trueLabel: { type: String, value: 'True' },
67
- falseLabel: { type: String, value: 'False' },
68
- flex: { type: String, value: '0' },
69
- cellClass: { type: String, value: 'boolean-cell' },
70
- };
71
- }
72
-
73
- getString(column, item) {
74
- return getString(column, item);
75
- }
76
-
77
- renderCell(column, { item }) {
78
- return getString(column, item);
79
- }
80
-
81
- cellTitleFn(column, item) {
82
- return getString(column, item);
83
- }
84
-
85
- renderEditCell(column, { item }, onItemChange) {
86
- const { trueLabel, falseLabel } = column;
87
-
88
- return html`<cosmoz-autocomplete
89
- no-label-float
90
- .title=${computeItemTooltip(
91
- column.title,
92
- item,
93
- column.valuePath,
94
- computeSource(trueLabel, falseLabel),
95
- )}
96
- .source=${computeSource(trueLabel, falseLabel)}
97
- .textProperty=${'text'}
98
- .value=${computeItemValue(
99
- column,
100
- item,
101
- computeSource(trueLabel, falseLabel),
102
- )}
103
- .onChange=${onEditableChange(onItemChange)}
104
- .limit=${1}
105
- >${when(
106
- column.loading,
107
- () =>
108
- html`<cosmoz-spinner slot="suffix"></cosmoz-spinner>`,
109
- )}</cosmoz-autocomplete
110
- >`;
111
- }
112
-
113
- renderHeader(column, { filter, query }, setState, source) {
114
- return html`<cosmoz-autocomplete-ui
115
- .label=${column.title}
116
- .title=${computeItemTooltip(
117
- column.title,
118
- filter,
119
- column.valuePath,
120
- source,
121
- )}
122
- .source=${source}
123
- .textProperty=${'text'}
124
- .value=${computeValue(filter, source)}
125
- .text=${query}
126
- .onChange=${onChange(setState)}
127
- .onFocus=${onFocus(setState)}
128
- .onText=${onText(setState)}
129
- .limit=${1}
130
- >${when(
131
- column.loading,
132
- () => html`<cosmoz-spinner slot="suffix"></cosmoz-spinner>`,
133
- )}</cosmoz-autocomplete-ui
134
- >`;
135
- }
136
-
137
- computeSource({ trueLabel, falseLabel }) {
138
- return computeSource(trueLabel, falseLabel);
139
- }
140
-
141
- getFilterFn(column, filter) {
142
- if (filter == null) {
143
- return;
144
- }
145
- return applySingleFilter(column, filter);
146
- }
147
-
148
- toXlsxValue(column, item) {
149
- return toXlsxValue(column, item);
150
- }
151
-
152
- deserializeFilter(column, filter) {
153
- return deserializeFilter(column, filter);
154
- }
155
- }
156
- customElements.define(
157
- 'cosmoz-omnitable-column-boolean',
158
- OmnitableColumnBoolean,
159
- );
160
-
161
- export {
162
- getString,
163
- computeItemValue,
164
- computeSource,
165
- toXlsxValue,
166
- onChange,
167
- deserializeFilter,
168
- };
@@ -1,133 +0,0 @@
1
- import { html } from 'lit-html';
2
- import { PolymerElement } from '@polymer/polymer/polymer-element';
3
- import '@polymer/paper-dropdown-menu/paper-dropdown-menu';
4
- import '@neovici/cosmoz-input';
5
-
6
- import './ui-helpers/cosmoz-clear-button';
7
- import { columnMixin } from './cosmoz-omnitable-column-mixin';
8
- import './lib/cosmoz-omnitable-date-range-input';
9
- import { defaultComputeSource } from './lib/utils-data';
10
- import {
11
- getString,
12
- getComparableValue,
13
- toDate,
14
- toHashString,
15
- toXlsxValue,
16
- applySingleFilter,
17
- getInputString,
18
- fromInputString,
19
- } from './lib/utils-date';
20
-
21
- class OmnitableColumnDate extends columnMixin(PolymerElement) {
22
- static get properties() {
23
- return {
24
- min: { type: Number, value: null, notify: true },
25
- max: { type: Number, value: null, notify: true },
26
- limits: { type: Function },
27
- locale: { type: String, value: null, notify: true },
28
- headerCellClass: { type: String, value: 'date-header-cell' },
29
- width: { type: String, value: '100px' },
30
- minWidth: { type: String, value: '82px' },
31
- flex: { type: String, value: '0' },
32
- };
33
- }
34
-
35
- getConfig(column) {
36
- return { limits: column.limits };
37
- }
38
-
39
- getFilterFn(column, filter) {
40
- const min = getComparableValue({ ...column, valuePath: 'min' }, filter),
41
- max = getComparableValue({ ...column, valuePath: 'max' }, filter);
42
-
43
- if (min == null && max == null) {
44
- return;
45
- }
46
- return applySingleFilter(column, filter);
47
- }
48
-
49
- getString(column, item) {
50
- return getString(column, item);
51
- }
52
-
53
- toXlsxValue(column, item) {
54
- return toXlsxValue(column, item);
55
- }
56
-
57
- cellTitleFn(column, item) {
58
- return getString(column, item);
59
- }
60
-
61
- getComparableValue(column, item) {
62
- return getComparableValue(column, item);
63
- }
64
-
65
- serializeFilter(column, filter) {
66
- if (filter == null) {
67
- return;
68
- }
69
- const min = toDate(filter.min),
70
- max = toDate(filter.max);
71
-
72
- if (min == null && max == null) {
73
- return;
74
- }
75
- return toHashString(min) + '~' + toHashString(max);
76
- }
77
-
78
- deserializeFilter(column, filter) {
79
- if (filter == null || filter === '') {
80
- return null;
81
- }
82
- const matches = filter.match(/^([^~]+)?~([^~]+)?/iu);
83
-
84
- if (!Array.isArray(matches)) {
85
- return null;
86
- }
87
-
88
- return { min: toDate(matches[1]), max: toDate(matches[2]) };
89
- }
90
-
91
- renderCell(column, { item }) {
92
- return html`<div class="omnitable-cell-date">
93
- ${getString(column, item)}
94
- </div>`;
95
- }
96
-
97
- renderEditCell(column, { item }, onItemChange) {
98
- const onChange = (event) =>
99
- onItemChange(fromInputString(event.target.value));
100
- return html`<cosmoz-input
101
- no-label-float
102
- type="date"
103
- @change=${onChange}
104
- .value=${getInputString(column, item)}
105
- ></cosmoz-input>`;
106
- }
107
-
108
- renderHeader(
109
- { title, min, max, limits, locale },
110
- { filter },
111
- setState,
112
- source,
113
- ) {
114
- return html`<cosmoz-omnitable-date-range-input
115
- .title=${title}
116
- .filter=${filter}
117
- .values=${source}
118
- .min=${min}
119
- .max=${max}
120
- .limits=${limits}
121
- .locale=${locale}
122
- @filter-changed=${({ detail: { value } }) =>
123
- setState((state) => ({ ...state, filter: value }))}
124
- @header-focused-changed=${({ detail: { value } }) =>
125
- setState((state) => ({ ...state, headerFocused: value }))}
126
- ></cosmoz-omnitable-date-range-input>`;
127
- }
128
-
129
- computeSource(column, data) {
130
- return defaultComputeSource(column, data);
131
- }
132
- }
133
- customElements.define('cosmoz-omnitable-column-date', OmnitableColumnDate);