@momentum-ui/web-components 2.6.7 → 2.7.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 (344) hide show
  1. package/dist/chunks/md-100.js +1 -1
  2. package/dist/chunks/md-101.js +1 -1
  3. package/dist/chunks/md-102.js +1 -1
  4. package/dist/chunks/md-103.js +1 -1
  5. package/dist/chunks/md-104.js +1 -1
  6. package/dist/chunks/md-105.js +1 -1
  7. package/dist/chunks/md-106.js +1 -1
  8. package/dist/chunks/md-107.js +1 -1
  9. package/dist/chunks/md-108.js +1 -1
  10. package/dist/chunks/md-109.js +1 -1
  11. package/dist/chunks/md-110.js +1 -1
  12. package/dist/chunks/md-111.js +1 -1
  13. package/dist/chunks/md-112.js +1 -1
  14. package/dist/chunks/md-113.js +1 -1
  15. package/dist/chunks/md-114.js +1 -1
  16. package/dist/chunks/md-115.js +1 -1
  17. package/dist/chunks/md-116.js +1 -1
  18. package/dist/chunks/md-117.js +1 -1
  19. package/dist/chunks/md-118.js +1 -1
  20. package/dist/chunks/md-119.js +1 -1
  21. package/dist/chunks/md-120.js +1 -1
  22. package/dist/chunks/md-121.js +1 -1
  23. package/dist/chunks/md-122.js +1 -1
  24. package/dist/chunks/md-123.js +1 -1
  25. package/dist/chunks/md-124.js +1 -1
  26. package/dist/chunks/md-125.js +1 -1
  27. package/dist/chunks/md-126.js +1 -1
  28. package/dist/chunks/md-127.js +1 -1
  29. package/dist/chunks/md-128.js +1 -1
  30. package/dist/chunks/md-129.js +1 -1
  31. package/dist/chunks/md-130.js +1 -1
  32. package/dist/chunks/md-131.js +1 -1
  33. package/dist/chunks/md-132.js +1 -1
  34. package/dist/chunks/md-133.js +1 -1
  35. package/dist/chunks/md-134.js +1 -1
  36. package/dist/chunks/md-135.js +1 -1
  37. package/dist/chunks/md-136.js +1 -1
  38. package/dist/chunks/md-137.js +1 -1
  39. package/dist/chunks/md-138.js +1 -1
  40. package/dist/chunks/md-139.js +1 -1
  41. package/dist/chunks/md-140.js +1 -1
  42. package/dist/chunks/md-141.js +1 -1
  43. package/dist/chunks/md-142.js +1 -1
  44. package/dist/chunks/md-143.js +1 -1
  45. package/dist/chunks/md-144.js +1 -1
  46. package/dist/chunks/md-145.js +1 -1
  47. package/dist/chunks/md-146.js +1 -1
  48. package/dist/chunks/md-147.js +1 -1
  49. package/dist/chunks/md-148.js +1 -1
  50. package/dist/chunks/md-149.js +1 -1
  51. package/dist/chunks/md-150.js +1 -1
  52. package/dist/chunks/md-151.js +1 -1
  53. package/dist/chunks/md-152.js +1 -1
  54. package/dist/chunks/md-153.js +1 -1
  55. package/dist/chunks/md-154.js +1 -1
  56. package/dist/chunks/md-155.js +1 -1
  57. package/dist/chunks/md-156.js +1 -1
  58. package/dist/chunks/md-157.js +1 -1
  59. package/dist/chunks/md-158.js +1 -1
  60. package/dist/chunks/md-159.js +1 -1
  61. package/dist/chunks/md-160.js +1 -1
  62. package/dist/chunks/md-161.js +1 -1
  63. package/dist/chunks/md-162.js +1 -1
  64. package/dist/chunks/md-163.js +1 -1
  65. package/dist/chunks/md-164.js +1 -1
  66. package/dist/chunks/md-165.js +1 -1
  67. package/dist/chunks/md-166.js +1 -1
  68. package/dist/chunks/md-167.js +1 -1
  69. package/dist/chunks/md-168.js +1 -1
  70. package/dist/chunks/md-169.js +1 -1
  71. package/dist/chunks/md-170.js +1 -1
  72. package/dist/chunks/md-171.js +1 -1
  73. package/dist/chunks/md-172.js +1 -1
  74. package/dist/chunks/md-173.js +1 -1
  75. package/dist/chunks/md-174.js +1 -1
  76. package/dist/chunks/md-175.js +1 -1
  77. package/dist/chunks/md-176.js +1 -1
  78. package/dist/chunks/md-177.js +1 -1
  79. package/dist/chunks/md-178.js +1 -1
  80. package/dist/chunks/md-179.js +1 -1
  81. package/dist/chunks/md-180.js +1 -1
  82. package/dist/chunks/md-181.js +1 -1
  83. package/dist/chunks/md-182.js +1 -1
  84. package/dist/chunks/md-183.js +1 -1
  85. package/dist/chunks/md-184.js +1 -1
  86. package/dist/chunks/md-185.js +1 -1
  87. package/dist/chunks/md-186.js +1 -1
  88. package/dist/chunks/md-187.js +1 -1
  89. package/dist/chunks/md-188.js +1 -1
  90. package/dist/chunks/md-189.js +1 -1
  91. package/dist/chunks/md-190.js +1 -1
  92. package/dist/chunks/md-191.js +1 -1
  93. package/dist/chunks/md-192.js +1 -1
  94. package/dist/chunks/md-193.js +1 -1
  95. package/dist/chunks/md-194.js +1 -1
  96. package/dist/chunks/md-195.js +1 -1
  97. package/dist/chunks/md-196.js +1 -1
  98. package/dist/chunks/md-197.js +1 -1
  99. package/dist/chunks/md-198.js +1 -1
  100. package/dist/chunks/md-199.js +1 -1
  101. package/dist/chunks/md-200.js +1 -1
  102. package/dist/chunks/md-201.js +1 -1
  103. package/dist/chunks/md-202.js +1 -1
  104. package/dist/chunks/md-203.js +1 -1
  105. package/dist/chunks/md-204.js +1 -1
  106. package/dist/chunks/md-205.js +1 -1
  107. package/dist/chunks/md-206.js +1 -1
  108. package/dist/chunks/md-207.js +1 -1
  109. package/dist/chunks/md-208.js +1 -1
  110. package/dist/chunks/md-209.js +1 -1
  111. package/dist/chunks/md-210.js +1 -1
  112. package/dist/chunks/md-211.js +1 -1
  113. package/dist/chunks/md-212.js +1 -1
  114. package/dist/chunks/md-213.js +1 -1
  115. package/dist/chunks/md-214.js +1 -1
  116. package/dist/chunks/md-215.js +1 -1
  117. package/dist/chunks/md-216.js +1 -1
  118. package/dist/chunks/md-217.js +1 -1
  119. package/dist/chunks/md-218.js +1 -1
  120. package/dist/chunks/md-219.js +1 -1
  121. package/dist/chunks/md-220.js +1 -1
  122. package/dist/chunks/md-221.js +1 -1
  123. package/dist/chunks/md-222.js +1 -1
  124. package/dist/chunks/md-223.js +1 -1
  125. package/dist/chunks/md-224.js +1 -1
  126. package/dist/chunks/md-225.js +1 -1
  127. package/dist/chunks/md-226.js +1 -1
  128. package/dist/chunks/md-227.js +1 -1
  129. package/dist/chunks/md-228.js +1 -1
  130. package/dist/chunks/md-229.js +1 -1
  131. package/dist/chunks/md-230.js +1 -1
  132. package/dist/chunks/md-231.js +1 -1
  133. package/dist/chunks/md-232.js +1 -1
  134. package/dist/chunks/md-233.js +1 -1
  135. package/dist/chunks/md-234.js +1 -1
  136. package/dist/chunks/md-235.js +1 -1
  137. package/dist/chunks/md-236.js +1 -1
  138. package/dist/chunks/md-237.js +1 -1
  139. package/dist/chunks/md-238.js +1 -1
  140. package/dist/chunks/md-239.js +1 -1
  141. package/dist/chunks/md-240.js +1 -1
  142. package/dist/chunks/md-241.js +1 -1
  143. package/dist/chunks/md-242.js +1 -1
  144. package/dist/chunks/md-243.js +1 -1
  145. package/dist/chunks/md-244.js +1 -1
  146. package/dist/chunks/md-245.js +1 -1
  147. package/dist/chunks/md-246.js +1 -1
  148. package/dist/chunks/md-247.js +1 -1
  149. package/dist/chunks/md-248.js +1 -1
  150. package/dist/chunks/md-249.js +1 -1
  151. package/dist/chunks/md-250.js +1 -1
  152. package/dist/chunks/md-251.js +1 -1
  153. package/dist/chunks/md-252.js +1 -1
  154. package/dist/chunks/md-253.js +1 -1
  155. package/dist/chunks/md-254.js +1 -1
  156. package/dist/chunks/md-255.js +1 -1
  157. package/dist/chunks/md-256.js +1 -1
  158. package/dist/chunks/md-257.js +1 -1
  159. package/dist/chunks/md-258.js +1 -1
  160. package/dist/chunks/md-259.js +1 -1
  161. package/dist/chunks/md-260.js +1 -1
  162. package/dist/chunks/md-261.js +1 -1
  163. package/dist/chunks/md-262.js +1 -1
  164. package/dist/chunks/md-263.js +1 -1
  165. package/dist/chunks/md-264.js +1 -1
  166. package/dist/chunks/md-265.js +1 -1
  167. package/dist/chunks/md-266.js +1 -1
  168. package/dist/chunks/md-267.js +1 -1
  169. package/dist/chunks/md-268.js +1 -1
  170. package/dist/chunks/md-269.js +1 -1
  171. package/dist/chunks/md-270.js +1 -1
  172. package/dist/chunks/md-271.js +1 -1
  173. package/dist/chunks/md-272.js +1 -1
  174. package/dist/chunks/md-273.js +1 -1
  175. package/dist/chunks/md-274.js +1 -0
  176. package/dist/chunks/md-36.js +4 -4
  177. package/dist/chunks/md-43.js +1 -5
  178. package/dist/chunks/md-44.js +4 -33
  179. package/dist/chunks/md-45.js +34 -13
  180. package/dist/chunks/md-46.js +13 -20
  181. package/dist/chunks/md-47.js +18 -44
  182. package/dist/chunks/md-48.js +46 -13
  183. package/dist/chunks/md-49.js +13 -5
  184. package/dist/chunks/md-5.js +1 -1
  185. package/dist/chunks/md-50.js +4 -67
  186. package/dist/chunks/md-51.js +64 -20
  187. package/dist/chunks/md-52.js +24 -14
  188. package/dist/chunks/md-53.js +14 -5
  189. package/dist/chunks/md-54.js +5 -39
  190. package/dist/chunks/md-55.js +38 -21
  191. package/dist/chunks/md-56.js +21 -4
  192. package/dist/chunks/md-57.js +5 -1
  193. package/dist/chunks/md-58.js +1 -22
  194. package/dist/chunks/md-59.js +22 -5
  195. package/dist/chunks/md-60.js +4 -14
  196. package/dist/chunks/md-61.js +14 -41
  197. package/dist/chunks/md-62.js +41 -29
  198. package/dist/chunks/md-63.js +29 -71
  199. package/dist/chunks/md-64.js +72 -19
  200. package/dist/chunks/md-65.js +19 -17
  201. package/dist/chunks/md-66.js +17 -22
  202. package/dist/chunks/md-67.js +21 -83
  203. package/dist/chunks/md-68.js +84 -7
  204. package/dist/chunks/md-69.js +7 -77
  205. package/dist/chunks/md-70.js +76 -71
  206. package/dist/chunks/md-71.js +72 -61
  207. package/dist/chunks/md-72.js +59 -14
  208. package/dist/chunks/md-73.js +15 -4
  209. package/dist/chunks/md-74.js +4 -29
  210. package/dist/chunks/md-75.js +30 -3
  211. package/dist/chunks/md-76.js +3 -179
  212. package/dist/chunks/md-77.js +177 -37
  213. package/dist/chunks/md-78.js +37 -83
  214. package/dist/chunks/md-79.js +78 -97
  215. package/dist/chunks/md-80.js +103 -11
  216. package/dist/chunks/md-81.js +11 -42
  217. package/dist/chunks/md-82.js +42 -20
  218. package/dist/chunks/md-83.js +21 -1
  219. package/dist/chunks/md-84.js +1 -1
  220. package/dist/chunks/md-85.js +1 -1
  221. package/dist/chunks/md-86.js +1 -1
  222. package/dist/chunks/md-87.js +1 -1
  223. package/dist/chunks/md-88.js +1 -1
  224. package/dist/chunks/md-89.js +1 -1
  225. package/dist/chunks/md-90.js +1 -1
  226. package/dist/chunks/md-91.js +1 -1
  227. package/dist/chunks/md-92.js +1 -1
  228. package/dist/chunks/md-93.js +1 -1
  229. package/dist/chunks/md-94.js +1 -1
  230. package/dist/chunks/md-95.js +1 -1
  231. package/dist/chunks/md-96.js +1 -1
  232. package/dist/chunks/md-97.js +1 -1
  233. package/dist/chunks/md-98.js +1 -1
  234. package/dist/chunks/md-99.js +1 -1
  235. package/dist/comp/md-accordion-entry.js +1 -1
  236. package/dist/comp/md-accordion-item-entry.js +1 -1
  237. package/dist/comp/md-accordion-item.js +1 -1
  238. package/dist/comp/md-accordion.js +1 -1
  239. package/dist/comp/md-activity-button-entry.js +1 -1
  240. package/dist/comp/md-activity-button.js +1 -1
  241. package/dist/comp/md-alert-banner-entry.js +1 -1
  242. package/dist/comp/md-alert-banner.js +1 -1
  243. package/dist/comp/md-alert-entry.js +1 -1
  244. package/dist/comp/md-alert.js +1 -1
  245. package/dist/comp/md-avatar-entry.js +1 -1
  246. package/dist/comp/md-badge-entry.js +1 -1
  247. package/dist/comp/md-breadcrumb-entry.js +1 -1
  248. package/dist/comp/md-breadcrumb.js +1 -1
  249. package/dist/comp/md-button-entry.js +1 -1
  250. package/dist/comp/md-button-group-entry.js +1 -1
  251. package/dist/comp/md-button-group.js +1 -1
  252. package/dist/comp/md-card-entry.js +1 -1
  253. package/dist/comp/md-card.js +1 -1
  254. package/dist/comp/md-chat-message-entry.js +1 -1
  255. package/dist/comp/md-chat-message.js +1 -1
  256. package/dist/comp/md-checkbox-entry.js +1 -1
  257. package/dist/comp/md-checkbox.js +1 -1
  258. package/dist/comp/md-checkboxgroup-entry.js +1 -1
  259. package/dist/comp/md-checkboxgroup.js +1 -1
  260. package/dist/comp/md-chip-entry.js +1 -1
  261. package/dist/comp/md-chip.js +1 -1
  262. package/dist/comp/md-coachmark-entry.js +1 -1
  263. package/dist/comp/md-coachmark.js +1 -1
  264. package/dist/comp/md-combobox-entry.js +1 -1
  265. package/dist/comp/md-combobox.js +1 -0
  266. package/dist/comp/md-composite-avatar-entry.js +1 -1
  267. package/dist/comp/md-composite-avatar.js +1 -1
  268. package/dist/comp/md-date-range-picker-entry.js +1 -1
  269. package/dist/comp/md-date-range-picker.js +1 -1
  270. package/dist/comp/md-date-time-picker-entry.js +1 -1
  271. package/dist/comp/md-date-time-picker.js +1 -1
  272. package/dist/comp/md-datepicker-calendar-entry.js +1 -1
  273. package/dist/comp/md-datepicker-day-entry.js +1 -1
  274. package/dist/comp/md-datepicker-entry.js +1 -1
  275. package/dist/comp/md-datepicker-month-entry.js +1 -1
  276. package/dist/comp/md-datepicker-week-entry.js +1 -1
  277. package/dist/comp/md-draggable-entry.js +1 -1
  278. package/dist/comp/md-draggable-item-entry.js +1 -1
  279. package/dist/comp/md-draggable-item.js +1 -1
  280. package/dist/comp/md-draggable.js +1 -1
  281. package/dist/comp/md-dropdown-entry.js +1 -1
  282. package/dist/comp/md-dropdown.js +1 -1
  283. package/dist/comp/md-editable-field-entry.js +1 -1
  284. package/dist/comp/md-editable-field.js +1 -1
  285. package/dist/comp/md-favorite-entry.js +1 -1
  286. package/dist/comp/md-floating-minimize-entry.js +1 -1
  287. package/dist/comp/md-floating-modal-entry.js +1 -1
  288. package/dist/comp/md-floating-modal.js +1 -1
  289. package/dist/comp/md-form-entry.js +1 -1
  290. package/dist/comp/md-form.js +1 -1
  291. package/dist/comp/md-help-text-entry.js +1 -1
  292. package/dist/comp/md-icon-entry.js +1 -1
  293. package/dist/comp/md-inpu.js +1 -1
  294. package/dist/comp/md-input-entry.js +1 -1
  295. package/dist/comp/md-input-file.js +1 -1
  296. package/dist/comp/md-label-entry.js +1 -1
  297. package/dist/comp/md-link-entry.js +1 -1
  298. package/dist/comp/md-link.js +1 -1
  299. package/dist/comp/md-list-entry.js +1 -1
  300. package/dist/comp/md-list-item-entry.js +1 -1
  301. package/dist/comp/md-loading-entry.js +1 -1
  302. package/dist/comp/md-meeting-alert-entry.js +1 -1
  303. package/dist/comp/md-meeting-alert.js +1 -1
  304. package/dist/comp/md-menu-entry.js +1 -1
  305. package/dist/comp/md-menu-item-entry.js +1 -1
  306. package/dist/comp/md-menu-overlay-entry.js +1 -1
  307. package/dist/comp/md-menu.js +1 -1
  308. package/dist/comp/md-modal-entry.js +1 -1
  309. package/dist/comp/md-modal.js +1 -1
  310. package/dist/comp/md-pagination-entry.js +1 -1
  311. package/dist/comp/md-pagination.js +1 -1
  312. package/dist/comp/md-phone-input-entry.js +1 -1
  313. package/dist/comp/md-phone-input.js +2 -1
  314. package/dist/comp/md-progress-bar-entry.js +1 -1
  315. package/dist/comp/md-radio-entry.js +1 -1
  316. package/dist/comp/md-radio.js +1 -1
  317. package/dist/comp/md-radiogroup-entry.js +1 -1
  318. package/dist/comp/md-radiogroup.js +1 -1
  319. package/dist/comp/md-slider-entry.js +1 -1
  320. package/dist/comp/md-slider.js +1 -1
  321. package/dist/comp/md-spinner-entry.js +1 -1
  322. package/dist/comp/md-tab-entry.js +1 -1
  323. package/dist/comp/md-tab-panel-entry.js +1 -1
  324. package/dist/comp/md-tab-panel.js +1 -1
  325. package/dist/comp/md-table-advanced-entry.js +1 -1
  326. package/dist/comp/md-table-advanced.js +1 -1
  327. package/dist/comp/md-table-entry.js +1 -1
  328. package/dist/comp/md-table.js +1 -1
  329. package/dist/comp/md-tabs-entry.js +1 -1
  330. package/dist/comp/md-tabs.js +1 -1
  331. package/dist/comp/md-task-item-entry.js +1 -1
  332. package/dist/comp/md-task-item.js +1 -1
  333. package/dist/comp/md-theme-entry.js +1 -1
  334. package/dist/comp/md-theme.js +1 -1
  335. package/dist/comp/md-timepicker-entry.js +1 -1
  336. package/dist/comp/md-timepicker.js +1 -1
  337. package/dist/comp/md-toggle-switch-entry.js +1 -1
  338. package/dist/comp/md-toggle-switch.js +1 -1
  339. package/dist/comp/md-tooltip-entry.js +1 -1
  340. package/dist/index-entry.js +2 -2
  341. package/dist/index.js +29 -28
  342. package/dist/types/components/combobox/ComboBox.d.ts +2 -2
  343. package/dist/types/components/timepicker/TimePicker.d.ts +1 -1
  344. package/package.json +1 -1
@@ -1,179 +1,3 @@
1
- (window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[76],{99:function(e,t,r){"use strict";r.r(t),r.d(t,"TableAdvanced",(function(){return w}));r(17),r(15),r(32);var o=r(5),i=r(34),a=r(4),l=r(0),d=r(2),s=r(3),n=r(6),c=r(80),h=r(31),p=r.n(h),b=l.css`:host{display:block}.md-table-advanced{width:100%}table{border-collapse:separate;border-spacing:0;max-width:100%;position:relative;width:100%}table.sticky-header{height:100%}table.sticky-header thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-left:0;border-top:0;position:sticky;top:0;z-index:1}table.sticky-header thead th::before{border-top:1px solid var(--table-advanced-border-color,#dedede);bottom:0;content:" ";left:0;position:absolute;top:0;width:100%}table.sticky-header thead tr:last-child th{top:2.5rem}table.sticky-header thead tr:last-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:first-child th{height:calc(2.5rem + .0625rem * 2);top:0}table.sticky-header thead tr:first-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:focus{outline:0}table.sticky-header thead tr:focus th:first-child{border-left:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th:last-child{border-right:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th::before{border-bottom:2px solid var(--md-focus-border-color);border-top:2px solid var(--md-focus-border-color)}thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border:1px solid var(--table-advanced-border-color,#dedede);border-left:0;color:var(--md-secondary-text-color);font-family:"CiscoSansTT Regular","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;height:2.5rem;max-width:0;padding:0 calc(.375rem);position:relative;text-align:left}thead th .filter{display:inline-block;height:auto;margin-top:calc(.25rem / 2)}thead th .resize{background-color:transparent;cursor:col-resize;height:100%;left:calc(-.25rem / 2);position:absolute;top:0;width:.25rem;z-index:1}thead .head-inner-cell{align-items:center;display:flex;min-width:.875rem}thead .head-inner-cell .filter-wrap{align-items:center;display:inline-flex;flex:1;justify-content:flex-end}thead .head-inner-cell .filter-icon{color:var(--md-secondary-text-color);cursor:pointer;display:inline-block;height:1.5rem;min-width:1.25rem;position:relative;z-index:1}thead .head-inner-cell .filter-icon::part(button){padding:.25rem;text-align:center;width:1.5rem}thead .head-inner-cell .filter-icon:hover{background-color:var(--table-advanced-filter-hover-bg-color,#ededed)}thead .head-inner-cell .filter-icon:active{background-color:var(--table-advanced-filter-pressed-bg-color,#dedede)}thead .head-inner-cell span{display:inline-block;overflow:hidden;padding-right:calc(.25rem * 1.25);text-overflow:ellipsis;white-space:nowrap;width:100%}thead .head-inner-cell .sortable{background:0 0;border:0;color:var(--md-secondary-text-color);display:inline-block;min-width:calc(1rem * 2.5);overflow:hidden;padding-right:calc(.25rem * 4);text-overflow:ellipsis;white-space:nowrap;width:auto}thead md-menu-overlay::part(overlay){top:-.375rem;white-space:normal}@supports (-moz-appearance:none){thead md-menu-overlay::part(overlay){top:-.25rem;white-space:normal}}thead .drag-area-col{cursor:grab;display:block;height:calc(.25rem * 10);left:.25rem;position:absolute;right:.25rem;top:0;z-index:1}thead .drag-area-col.drag{border:2px dashed var(--table-advanced-filter-border-color,#ccc);opacity:1}thead .drag-area-col.over{background-color:#a87ff1;height:100%;opacity:.1}thead .sortable{cursor:pointer;position:relative;z-index:1}thead .sortable::after,thead .sortable::before{border:.25rem solid transparent;content:"";display:block;height:0;opacity:.3;position:absolute;right:.25rem;top:50%;width:0}thead .sortable::before{border-bottom-color:var(--md-secondary-text-color);margin-top:-9px}thead .sortable::after{border-top-color:var(--md-secondary-text-color);margin-top:1px}thead .sortable.ascending::after{opacity:1}thead .sortable.descending::before{opacity:1}.filter-active{display:inline-block;height:1.25rem;text-align:center;vertical-align:bottom;width:1.25rem}.filter-active::part(icon){line-height:.875rem}.filter-menu{background-color:var(--table-advanced-filter-bg-color,#fff);padding:calc(.25rem * 3);position:relative;z-index:1}.filter-menu select{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);min-height:calc(.875rem * 1.8);width:100%}.filter-menu input{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);margin-top:calc(.25rem * 2);width:100%}tbody tr{position:relative}tbody tr td:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}tbody tr td{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;height:2.5rem;max-width:0;padding:calc(.25rem * 1.5);position:relative}tbody tr th:first-child{border-top:1px solid var(--table-advanced-border-color,#dedede)}tbody tr th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;max-width:0;padding:0 calc(.25rem * 4);position:relative;text-align:left}tbody tr .inner-cell{display:flex;white-space:nowrap}tbody tr .inner-cell .warn-icon{display:inline-block;margin-left:.25rem;max-height:1.25rem;position:relative;vertical-align:middle;z-index:0}tbody tr .inner-cell md-icon::part(icon){line-height:1.25rem}tbody tr .inner-cell span{align-self:center;display:inline-block;flex:1;overflow:hidden;padding:0 .25rem;text-overflow:ellipsis;vertical-align:middle}tbody tr .drag-handle{cursor:grab;display:block;float:left;margin-right:calc(.25rem * 1.5)}tbody tr .drag-area{height:50%;left:0;opacity:.3;position:absolute;right:0}tbody tr .drag-area.top{top:0}tbody tr .drag-area.bottom{background-color:transparent;bottom:0}tbody tr.ghost{opacity:.3}tbody tr:hover{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr:hover td,tbody tr:hover th{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr.selected,tbody tr:active{background-color:var(--table-advanced-selected-bg-color,#ededed)}tbody tr.selected td,tbody tr.selected th,tbody tr:active td,tbody tr:active th{background-color:var(--table-advanced-selected-bg-color,#ededed)}md-button.row-collapsible{height:1.25rem;margin-right:calc(.25rem * 1.5);max-width:1.25rem;min-width:1.25rem}md-button.row-collapsible::part(button){border-radius:calc(.25rem / 2);padding:0 .25rem}md-button.row-collapsible md-icon::part(icon){line-height:calc(.25rem * 4)}`;function g(e=250){return function(t,r,o){let i;return function(e,t){if(e.descriptor=e.descriptor||Object.getOwnPropertyDescriptor(e.target,e.key),"function"!=typeof e.descriptor.value)return console.warn(e.key,"Decorator must be used on function"),e.descriptor;const r=e.descriptor.value,o=e.target.constructor.name;return e.descriptor.value=function(){const e=[];for(let t=0;t<arguments.length;t++)e[t]=arguments[t];return t.call(this,r,e,o)},e.descriptor}({target:t,key:r,descriptor:o},(function(t,r){clearTimeout(i),i=window.setTimeout(()=>{clearTimeout(i),t.apply(this,r)},e)}))}}class m{constructor(e,t){this.target=e,this.eventName=t}emit(e,t={bubbles:!0,composed:!0,cancelable:!1}){this.target.dispatchEvent(new CustomEvent(this.eventName,Object.assign({detail:e},t)))}}const u=new WeakMap,f=Object(d.directive)(e=>t=>{if(!(t instanceof d.NodePart))throw new Error("templateCallback can only be used in text bindings");const r=u.get(t);if(void 0!==r&&e.template===r.template&&t.value===r.fragment)return;const o=document.importNode(e.template.content,!0);e.cb({content:e.content,row:e.row,col:e.col,insertIndex:e.insertIndex,fragment:o}),t.setValue(o),u.set(t,{template:e.template,fragment:o})});var v;!function(e){const t={placeholder:"Filter..."};e.OPTIONS={equals:{label:"Equals",input:t,predicate:(e,t)=>e==t},notEqual:{label:"Not equal",input:t,predicate:(e,t)=>e!=t},contains:{label:"Contains",input:t,predicate:(e,t)=>e.includes(t)},notContains:{label:"Not contains",input:t,predicate:(e,t)=>!e.includes(t)},startsWith:{label:"Starts with",input:t,predicate:(e,t)=>e.startsWith(t)},endsWith:{label:"Ends with",input:t,predicate:(e,t)=>e.endsWith(t)},lessThan:{label:"Less than",input:t,predicate:(e,t)=>e<t},lessThanOrEquals:{label:"Less than or equals",input:t,predicate:(e,t)=>e<=t},greaterThan:{label:"Greater than",input:t,predicate:(e,t)=>e>t},greaterThanOrEquals:{label:"Greater than or equals",input:t,predicate:(e,t)=>e>=t}},e.optionsString=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.contains,e.OPTIONS.notContains,e.OPTIONS.startsWith,e.OPTIONS.endsWith],e.optionsNumber=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.lessThan,e.OPTIONS.lessThanOrEquals,e.OPTIONS.greaterThan,e.OPTIONS.greaterThanOrEquals]}(v||(v={}));var x=function(e,t,r,o){var i,a=arguments.length,l=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,r,o);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(l=(a<3?i(l):a>3?i(t,r,l):i(t,r))||l);return a>3&&l&&Object.defineProperty(t,r,l),l};const y=document.createElement("img");var w;y.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",function(e){let t=class extends(Object(i.a)(l.LitElement)){constructor(){super(...arguments),this.error="",this.COLS=[],this.ROWS=[],this.updCols=()=>this.requestUpdate("COLS"),this.updRows=()=>this.requestUpdate("ROWS"),this.dragRow=-1,this.dropRow=-1,this.drops=[],this.dragRowElem=null,this.dragCol=-1,this.dropCol=-1,this.isResizing=!1,this.isSelectable=!1,this.selected={},this.expandedRowIdx={},this.dragover=e=>e.preventDefault(),this.eX=0,this.onResize=(e,t)=>{var r;if(-1!=this.dragCol||-1!=this.dragRow)return;this.isResizing=!0;const o=e.target;null===(r=e.dataTransfer)||void 0===r||r.setDragImage(y,0,0);const i=this.COLS.map(e=>this.shadowRoot.querySelector("th.col-index-"+e.index));this.COLS.forEach((e,t)=>e.width=i[t].offsetWidth+"px"),this.updCols();const a=e.x;this.eX=e.x;let l=-1,d=-1,s=-1;const n=this.COLS[t.index-1],c=i[t.index],h=i[t.index-1],p=c.offsetWidth,b=h.offsetWidth,g=()=>{const e=this.eX;if(l!=e&&0!=e){l=e;const r=l-a;d=p-r,s=b+r,t.width=d+"px",n.width=s+"px",this.updCols()}},m=e=>this.eX=e.x,u=()=>{this.isResizing=!1,o.removeEventListener("drag",g),o.removeEventListener("dragend",u),document.removeEventListener("dragover",m)};o.addEventListener("drag",g),o.addEventListener("dragend",u),document.addEventListener("dragover",m)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("dragover",this.dragover)}connectedCallback(){super.connectedCallback(),document.addEventListener("dragover",this.dragover),this.updateTableConfig(),this.updateTableData(),this.populateTable()}update(e){super.update(e),e.has("data")&&(this.updateTableData(),this.updateDataInTable())}updateTableData(){if("string"==typeof this.data)try{this.tableData=JSON.parse(this.data)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the config json")}else this.tableData=Object.assign({},this.data)}updateTableConfig(){if("string"==typeof this.config)try{this.tableConfig=JSON.parse(this.config)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the data json")}else this.tableConfig=Object.assign({},this.config)}populateColumns(){var e;let t=0;const r=(e,r)=>{var o,i,a,l;const d=e.filters||(null===(i=null===(o=this.tableConfig.default)||void 0===o?void 0:o.col)||void 0===i?void 0:i.filters),s=d?"forString"==d?v.optionsString:"forNumber"==d?v.optionsNumber:d.length?d:null:null;this.COLS.push({options:Object.assign({},e),index:t++,group:r,sort:"default",sorter:e.sorter||(null===(l=null===(a=this.tableConfig.default)||void 0===a?void 0:a.col)||void 0===l?void 0:l.sorter),isCollapsable:this.tableConfig.cols.collapse==e.id,filter:s?{list:s,selectedIndex:0,input:"",active:!1,menuVisible:!1}:void 0})};this.tableConfig.cols.define.forEach(e=>{"children"in e?e.children.forEach(t=>r(t,{name:e.groupName,length:e.children.length})):r(e)}),this.isSelectable=!!this.tableConfig.rows&&"none"!=(null===(e=this.tableConfig.rows)||void 0===e?void 0:e.selectable)}populateData(){const e=this.COLS.length;if("csv"in this.tableData){const e=p.a.parse(this.tableData.csv,{skipEmptyLines:!0,transform:e=>e.trim()});if(e.errors)return void(this.error="PARSE ERROR:\n"+JSON.stringify(e.errors,null,2));{const t=e.data;this.ROWS=t.map(e=>e.map(e=>({text:e})))}}else if("list2d"in this.tableData)this.ROWS=this.tableData.list2d.map(e=>e.map(e=>({text:e})));else{for(;this.tableData.list.length>e;)this.ROWS.push(this.tableData.list.splice(0,e).map(e=>({text:e})));0!=this.tableData.list.length&&this.ROWS.push(this.tableData.list.map(e=>({text:e})))}0!=this.ROWS.length||(this.error="DATA ERROR: Data is empty")}validateData(){const e=this.COLS.length;this.ROWS.reduce((e,t)=>e+t.length,0)%e==0?this.ROWS.forEach((t,r)=>{const o=t.length;o!=e&&(this.error=`DATA ERROR: Total number of cols (=${e}) and data[${r}] length (=${o}) mismatch`)}):this.error=this.error="DATA ERROR: Data length mismatch. You must provide (numberOfRows * numberOfColumns) amount of data values."}populateTemplate(){const e=this.tableConfig.cellTemplates,t=Object.keys(e||{});e&&t.length&&this.ROWS.forEach((t,r)=>{t.forEach((t,o)=>{for(const i in e){const a=t.text.indexOf(i);if(-1!=a){const l=e[i],d=this.querySelector("#"+l.templateName);if(null==d){console.warn(`cellTemplates["${i}"]: Missing '${l.templateName}' template.`);continue}let s=t.text.replace(i,"");l.contentCb&&(s=l.contentCb({col:o,row:r,content:s,insertIndex:a})),this.ROWS[r][o]={text:s,template:{template:d,templateCb:l.templateCb,insertIndex:"replace"==l.contentUse?-1:a}};break}}})})}setDefaultFilterAndSort(){var e,t;const r=null===(e=this.tableConfig.default)||void 0===e?void 0:e.sort;if(r){const e=this.COLS.find(e=>e.options.id==r.colId);e?this.sort(e,r.order):console.warn(`Cant find ${r.colId} col - for sorting`)}const o=null===(t=this.tableConfig.default)||void 0===t?void 0:t.filter;if(o){const e=this.COLS.find(e=>e.options.id==o.colId);e?e.filter?(e.filter.selectedIndex=o.selectedIndex,e.filter.input=o.input,this.updCols(),this.filter(e)):console.warn(`Cant find filters on ${o.colId} col`):console.warn(`Cant find ${o.colId} col - for filtering`)}}populateTable(){this.populateColumns(),this.populateData(),this.validateData(),this.setDefaultFilterAndSort(),this.populateTemplate()}updateDataInTable(){this.populateData(),this.validateData(),this.populateTemplate()}onDropRow(){this.dragRow!=this.dropRow&&this.drops.push([this.dragRow,this.dropRow]),this.dragRow=-1,this.dropRow=-1,this.dragRowElem&&(this.dragRowElem.setAttribute("draggable","false"),this.dragRowElem=null)}onDropCol(){if(this.dragCol!=this.dropCol){const e=this.COLS[this.dragCol],t=this.COLS[this.dropCol],r=e.group,o=t.group,i=e.index,a=t.index;e.group=o,t.group=r,e.index=a,t.index=i,this.COLS[this.dragCol]=t,this.COLS[this.dropCol]=e,this.ROWS.forEach(e=>{const t=e[this.dragCol],r=e[this.dropCol];e[this.dragCol]=r,e[this.dropCol]=t}),this.updCols(),this.updRows()}this.dragCol=-1,this.dropCol=-1}sort(e,t){e.sorter&&(this.clearSelection(),this.drops=[],this.COLS.forEach(r=>{r.options.id==e.options.id?r.sort=t||("default"==r.sort?"ascending":"ascending"==r.sort?"descending":"default"):r.sort="default"}),this.updCols(),this.requestUpdate(),this["md-table-advanced-change"].emit({type:"sort",order:e.sort}))}filter(e){if(!e.filter)return;this.clearSelection(),this.drops=[];const t=e.filter.input.trim(),r=e.filter.list[e.filter.selectedIndex];e.filter.active=!!t,this.requestUpdate(),t?this["md-table-advanced-change"].emit({type:"filter-on",filter:r,input:t}):this["md-table-advanced-change"].emit({type:"filter-off",filter:e.filter.list[e.filter.selectedIndex]})}selectRow(e){var t;const r=e.row.idx,o=this.selected.hasOwnProperty(r);"multiple"==(null===(t=this.tableConfig.rows)||void 0===t?void 0:t.selectable)?(e.metaKey?o?delete this.selected[r]:this.selected[r]=!0:e.shiftKey||(this.selected={[r]:!0}),this["md-table-advanced-change"].emit({type:"multi-select",rows:Object.keys(this.selected).map(e=>+e)})):o?this.clearSelection():(this.selected={[r]:!0},this["md-table-advanced-change"].emit({type:"select",index:r})),this.requestUpdate("selected")}clearSelection(){this.selected={},this.requestUpdate("selected")}collapseToggle(e,t){e.stopPropagation(),this.expandedRowIdx[t]?(delete this.expandedRowIdx[t],this["md-table-advanced-change"].emit({type:"collapse",row:t})):(this.expandedRowIdx[t]=!0,this["md-table-advanced-change"].emit({type:"expand",row:t})),this.clearSelection(),this.requestUpdate()}render(){if(this.error)return l.html`
2
- <div>${this.error}</div>
3
- `;const{head:e}=this.tableConfig,t=Object(s.classMap)({"sticky-header":!!this.tableConfig.isStickyHeader});return l.html`
4
- <div class="md-table-advanced">
5
- <slot></slot>
6
- <table class=${t} summary=${Object(n.ifDefined)(null==e?void 0:e.summary)}>
7
- ${(null==e?void 0:e.caption)?l.html`
8
- <caption>
9
- ${null==e?void 0:e.caption}
10
- </caption>
11
- `:d.nothing}
12
- ${this.renderHead()} ${this.renderBody()}
13
- </table>
14
- </div>
15
- `}renderHead(){let e=d.nothing;const t=this.COLS.reduce((e,t)=>!!t.group||e,!1);if(t){let t="";e=l.html`
16
- ${this.COLS.map(e=>e.group?t!=e.group.name?(t=e.group.name,l.html`
17
- <colgroup span=${e.group.length}></colgroup>
18
- `):void 0:l.html`
19
- <col />
20
- `)}
21
- <tr tabindex="0">
22
- ${this.COLS.map(e=>e.group?t!=e.group.name?(t=e.group.name,l.html`
23
- <th colspan=${e.group.length} scope="colgroup" title="${e.group.name}">
24
- <div class="head-inner-cell">
25
- <span>${e.group.name}</span>
26
- ${this.renderColResize(e)}
27
- </div>
28
- </th>
29
- `):void 0:this.renderCol(e,2))}
30
- </tr>
31
- `}const r=l.html`
32
- <tr tabindex="0">
33
- ${this.COLS.map(e=>t?e.group?this.renderCol(e):void 0:this.renderCol(e))}
34
- </tr>
35
- `;return l.html`
36
- <thead>
37
- ${e} ${r}
38
- </thead>
39
- `}renderCol(e,t){var r,o;const i=null===(o=null===(r=e.filter)||void 0===r?void 0:r.list[e.filter.selectedIndex])||void 0===o?void 0:o.input,a=Object(s.classMap)({ascending:"ascending"==e.sort,descending:"descending"==e.sort});return l.html`
40
- <th
41
- rowspan=${Object(n.ifDefined)(t)}
42
- width=${Object(n.ifDefined)(e.width?e.width:e.options.width)}
43
- scope="col"
44
- part="head-col"
45
- title="${e.options.title}"
46
- class=${"col-index-"+e.index}
47
- >
48
- <!-- DRAG -->
49
- ${this.renderColDrag(e)}
50
-
51
- <div class="head-inner-cell">
52
- <!-- SORT -->
53
- ${e.sorter?l.html`
54
- <button class="sortable ${a}" @click=${()=>this.sort(e)}>${e.options.title}</button>
55
- `:l.html`
56
- <span>${e.options.title}</span>
57
- `}
58
-
59
- <!-- FILTER -->
60
- ${e.filter?l.html`
61
- <div class="filter-wrap">
62
- ${e.filter.active?l.html`
63
- <md-icon class="filter-active" name="filter-adr_14"></md-icon>
64
- `:d.nothing}
65
- <md-menu-overlay placement="bottom" class="filter" custom-width="188px">
66
- <md-button class="filter-icon" slot="menu-trigger" color="color-none" size="size-none">
67
- <md-icon slot="icon" name="filter_16"></md-icon>
68
- </md-button>
69
- <div class="filter-menu" style="width: 100%;">
70
- <select
71
- name="filter-type"
72
- @change=${t=>{e.filter.selectedIndex=t.target.value,this.updCols(),this.filter(e)}}
73
- >
74
- ${e.filter.list.map((t,r)=>l.html`
75
- <option value=${r} ?selected=${e.filter.selectedIndex==r}>${t.label}</option>
76
- `)}
77
- </select>
78
- <input
79
- type="text"
80
- placeholder=${i.placeholder}
81
- maxlength=${Object(n.ifDefined)(i.maxlength)}
82
- pattern=${Object(n.ifDefined)(i.pattern)}
83
- .value=${e.filter.input}
84
- @input=${t=>{e.filter.input=t.target.value,this.updCols(),this.filter(e)}}
85
- />
86
- </div>
87
- </md-menu-overlay>
88
- </div>
89
- `:d.nothing}
90
-
91
- <!-- RESIZE -->
92
- ${this.renderColResize(e)}
93
- </div>
94
- </th>
95
- `}renderColDrag(e){return this.tableConfig.cols.isDraggable?l.html`
96
- <div
97
- draggable="true"
98
- class="drag-area-col ${Object(s.classMap)({drag:-1!=this.dragCol,over:this.dropCol==e.index&&this.dropCol!=this.dragCol})}"
99
- @dragstart=${t=>{this.isResizing||-1!=this.dragRow||(this.dragCol=e.index,t.dataTransfer.setDragImage(t.target.parentNode,0,0))}}
100
- @dragenter=${()=>{this.isResizing||-1!=this.dragRow||(this.dropCol=e.index)}}
101
- @dragend=${()=>this.onDropCol()}
102
- ></div>
103
- `:d.nothing}renderColResize(e){return this.tableConfig.cols.isResizable?l.html`
104
- ${e.index>0?l.html`
105
- <div class="resize" draggable="true" @dragstart=${t=>this.onResize(t,e)}></div>
106
- `:d.nothing}
107
- `:d.nothing}renderBody(){let e=this.ROWS.map((e,t)=>({cells:e,idx:t,idxDrag:t,collapse:"none",first:0===t,isGhost:!1,children:[]}));const t=this.COLS.length;e=e.filter(e=>{var r;for(let o=0;o<t;o++){const t=this.COLS[o];if(null===(r=t.filter)||void 0===r?void 0:r.active){if(!t.filter.list[t.filter.selectedIndex].predicate(e.cells[o].text,t.filter.input))return!1}}return!0});const r=this.COLS.find(e=>"default"!=e.sort);if(r){const t=this.ROWS.map((e,t)=>({v:e[r.index].text,i:t})),o="ascending"==r.sort?1:-1;let i=[];if("byNumber"==r.sorter)i=t.sort((e,t)=>1==o?+e.v-+t.v:+t.v-+e.v);else if("byString"==r.sorter)i=t.sort((e,t)=>e.v==t.v?0:e.v>t.v?o:-o);else if("function"==typeof r.sorter){const e=r.sorter;i=t.sort((t,r)=>e(t.v,r.v,o))}e=i.map(t=>e[t.i])}const o=this.COLS.find(e=>e.isCollapsable);if(o){const t=o.index,r=e.reduce((e,r)=>{const o=r.cells[t].text,i=e.find(e=>e.key==o);return i?(r.collapse="child",i.children.push(r)):e.push({key:o,root:r,children:[]}),e},[]);e=[],r.forEach(t=>{e.push(t.root),t.root.collapse=0==t.children.length?"none":this.expandedRowIdx[t.root.idx]?"expanded":"collapsed",t.root.children=t.children})}return this.drops.forEach(({0:t,1:r})=>{e.splice(r,0,e.splice(t,1)[0])}),e.forEach((e,t)=>e.idxDrag=t),-1!=this.dragRow&&(e[this.dragRow].isGhost=!0,-1!=this.dropRow&&e.splice(this.dropRow,0,e.splice(this.dragRow,1)[0])),l.html`
108
- <tbody>
109
- ${e.map(t=>{const r=e.length,o=t.children.length>0&&"expanded"==t.collapse&&!t.isGhost;return l.html`
110
- ${this.renderRow(t,r)} ${o?t.children.map(e=>this.renderRow(e,r)):d.nothing}
111
- `})}
112
- </tbody>
113
- `}renderRow(e,t){const r=this.selected.hasOwnProperty(e.idx),o=Object(s.classMap)({selected:r,selectable:this.isSelectable&&!r,ghost:e.isGhost});return l.html`
114
- <tr
115
- class=${o}
116
- tabindex="0"
117
- part=${e.first?"first-row":"row"}
118
- @click=${({shiftKey:t,metaKey:r})=>{this.isSelectable&&this.selectRow({row:e,shiftKey:t,metaKey:r})}}
119
- >
120
- ${e.cells.map((r,o)=>{var i;const a=this.COLS[o];let s=r.text;const n=r.template;n&&(s=n.templateCb?l.html`
121
- ${f({cb:n.templateCb,insertIndex:n.insertIndex,template:n.template,content:r.text,row:e.idx,col:o})}
122
- `:l.html`
123
- ${Object(c.templateContent)(n.template)}
124
- `,-1!=n.insertIndex&&(s=l.html`
125
- ${n.insertIndex>0?r.text.substring(0,n.insertIndex):d.nothing} ${s}
126
- ${n.insertIndex<r.text.length-1?r.text.substring(n.insertIndex):d.nothing}
127
- `));const h=(null===(i=this.tableConfig.rows)||void 0===i?void 0:i.isDraggable)&&"child"!=e.collapse,p=h&&-1!=this.dragRow&&this.dragRow!=e.idxDrag,b=h&&0==o,g=l.html`
128
- <div
129
- class="inner-cell"
130
- draggable="false"
131
- @dragstart=${()=>{this.isResizing||-1!=this.dragCol||(this.dragRow=e.idxDrag)}}
132
- @dragend=${()=>this.onDropRow()}
133
- >
134
- ${p?l.html`
135
- <div
136
- class="drag-area top"
137
- @dragenter=${()=>{if(0==this.dragRow){const t=e.idxDrag-1;this.dropRow=t>=0?t:0}else this.dropRow=e.idxDrag}}
138
- ></div>
139
- <div
140
- class="drag-area bottom"
141
- @dragenter=${()=>{if(0==this.dragRow)this.dropRow=e.idxDrag;else{const r=e.idxDrag+1;this.dropRow=r<t?r:t-1}}}
142
- ></div>
143
- `:d.nothing}
144
- ${b?l.html`
145
- <md-icon
146
- class="drag-handle"
147
- @mousedown=${e=>{this.isResizing||-1!=this.dragCol||(this.dragRowElem=e.target.parentNode,this.dragRowElem.setAttribute("draggable","true"))}}
148
- name="panel-control-dragger_16"
149
- >
150
- </md-icon>
151
- `:d.nothing}
152
- ${a.isCollapsable?l.html`
153
- ${"expanded"==e.collapse||"collapsed"==e.collapse?l.html`
154
- <md-button
155
- class="row-collapsible"
156
- size="size-none"
157
- @click=${t=>this.collapseToggle(t,e.idx)}
158
- outline
159
- color="color-none"
160
- >
161
- ${"collapsed"==e.collapse?l.html`
162
- <md-icon slot="icon" name="plus_12"></md-icon>
163
- `:l.html`
164
- <md-icon slot="icon" name="minus_12"></md-icon>
165
- `}
166
- </md-button>
167
- `:d.nothing}
168
- <span>${"child"==e.collapse?d.nothing:s}</span>
169
- `:l.html`
170
- <span>${s}</span>
171
- `}
172
- </div>
173
- `;return a.options.isHeader?l.html`
174
- <th part="cell-ishead" scope="row" title="${r.text}">${g}</th>
175
- `:l.html`
176
- <td part=${0===o?"first-cell":"cell"} title="${r.text}">${g}</td>
177
- `})}
178
- </tr>
179
- `}static get styles(){return[a.a,b]}};x([Object(l.property)({attribute:"config"})],t.prototype,"config",void 0),x([Object(l.property)({attribute:"data"})],t.prototype,"data",void 0),x([(e,t)=>{const r={get(){return new m(this,void 0!==t?t:e.key)},enumerable:!0,configurable:!0};return void 0!==t?Object.defineProperty(e,t,r):{kind:"method",placement:"prototype",key:e.key,descriptor:r}}],t.prototype,"md-table-advanced-change",void 0),x([Object(l.internalProperty)()],t.prototype,"tableConfig",void 0),x([Object(l.internalProperty)()],t.prototype,"tableData",void 0),x([Object(l.internalProperty)()],t.prototype,"error",void 0),x([Object(l.internalProperty)()],t.prototype,"COLS",void 0),x([Object(l.internalProperty)()],t.prototype,"ROWS",void 0),x([Object(l.internalProperty)()],t.prototype,"dragRow",void 0),x([Object(l.internalProperty)()],t.prototype,"dropRow",void 0),x([Object(l.internalProperty)()],t.prototype,"drops",void 0),x([Object(l.internalProperty)()],t.prototype,"dragCol",void 0),x([Object(l.internalProperty)()],t.prototype,"dropCol",void 0),x([Object(l.queryAll)("tr[tabindex]")],t.prototype,"tableRaws",void 0),x([g(500)],t.prototype,"filter",null),t=x([Object(o.a)("md-table-advanced")],t),e.ELEMENT=t}(w||(w={}))}}]);
1
+ (window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[76],{97:function(e,t,o){"use strict";o.r(t),o.d(t,"TabPanel",(function(){return r}));var r,n=o(7),a=o(5),c=o(4),s=o(0),l=o(37),i=function(e,t,o,r){var n,a=arguments.length,c=a<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,o):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)c=Reflect.decorate(e,t,o,r);else for(var s=e.length-1;s>=0;s--)(n=e[s])&&(c=(a<3?n(c):a>3?n(t,o,c):n(t,o))||c);return a>3&&c&&Object.defineProperty(t,o,c),c};!function(e){let t=class extends(Object(n.a)(s.LitElement)){constructor(){super(...arguments),this.selected=!1,this.name="",this.focusablePanel=!0}static get styles(){return[c.a,l.a]}firstUpdated(e){super.firstUpdated(e),this.setAttribute("role","tabpanel"),this.focusablePanel&&this.setAttribute("tabindex","0")}render(){return s.html`
2
+ <slot></slot>
3
+ `}};i([Object(s.property)({type:Boolean,reflect:!0})],t.prototype,"selected",void 0),i([Object(s.property)({type:String,attribute:"name"})],t.prototype,"name",void 0),i([Object(s.property)({type:Boolean,reflect:!0,attribute:"focusable-panel"})],t.prototype,"focusablePanel",void 0),t=i([Object(a.a)("md-tab-panel")],t),e.ELEMENT=t}(r||(r={}))}}]);
@@ -1,39 +1,179 @@
1
- (window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[77],{118:function(t,e,r){"use strict";r.r(e),r.d(e,"formatType",(function(){return h})),r.d(e,"Table",(function(){return m}));var o=r(4),a=r(5),l=r(0),d=r(31),s=r.n(d),i=r(13),n=l.css`.md-table-container{width:100%}.md-table-container_stickly{height:100%;overflow-y:auto;position:relative}.md-table-container_stickly .md-table__header tr{background-color:transparent}.md-table-container_stickly .md-table__header th{background-color:var(--table-header-bg-color,#f7f7f7);position:sticky;top:0}.md-table-container_stickly .md-table__header th:hover{background-color:var(--table-hover-bg-color,#ededed)}.md-table{border:1px solid var(--table-border-color,#dedede);border-collapse:collapse;width:100%}.md-table .md-table__header tr{background-color:var(--table-header-bg-color,#f7f7f7)}.md-table .md-table__header th{border-bottom:1px solid var(--table-border-color,#dedede);border-right:1px solid var(--table-border-color,#dedede);color:var(--table-text-color,#545454);font-size:12px;font-weight:700;padding-left:calc(.25rem * 3);text-align:left}.md-table .md-table__header th:hover{background-color:var(--table-hover-bg-color,#ededed)}.md-table .md-table__header th:active{background-color:var(--table-pressed-bg-color,#dedede)}.md-table .md-table__header th a{color:var(--table-text-color,#545454)}.md-table .md-table__header th a.sortedAbc:after{content:"\\f1cc";display:inline-block;font-family:momentum-ui-icons;padding-left:.25rem;vertical-align:bottom}.md-table .md-table__header th a.sortedZyx:after{content:"\\f1cf";display:inline-block;font-family:momentum-ui-icons;padding-left:.25rem;vertical-align:bottom}.md-table .md-table__body tr{height:2.5rem}.md-table .md-table__body tr:hover{background-color:var(--table-hover-bg-color,#ededed)}.md-table .md-table__body tr:active{background-color:var(--table-pressed-bg-color,#dedede)}.md-table .md-table__body td{font-size:14px;min-width:calc(2.5rem * 3.2);padding-left:calc(.25rem * 3);vertical-align:middle}.md-table .md-table__body td span{display:inline-block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:calc(.25rem * 6);width:calc(100% - .25rem)}.md-table .md-table__body td md-icon{padding-left:.25rem;vertical-align:bottom}.md-table .md-table__body td:last-child span{width:auto}.md-table tr{height:2.5rem}.md-table tr td{border-bottom:1px solid var(--table-border-color,#dedede);border-right:1px solid var(--table-border-color,#dedede);vertical-align:top}.md-table--stripped .md-table__body tr:nth-child(even){background-color:var(--table-stripped-bg-color,#ededed)}.md-table--stripped .md-table__body tr:nth-child(even):hover{background-color:var(--table-hover-bg-color,#ededed)}.md-table--clean tr td{border-right:unset}.md-table--no-borders{border:unset}.md-table--no-borders .md-table__header th,.md-table--no-borders tr td{border-bottom:unset;border-right:unset}`,c=r(2),b=function(t,e,r,o){var a,l=arguments.length,d=l<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)d=Reflect.decorate(t,e,r,o);else for(var s=t.length-1;s>=0;s--)(a=t[s])&&(d=(l<3?a(d):l>3?a(e,r,d):a(e,r))||d);return l>3&&d&&Object.defineProperty(e,r,d),d};const h=["number","default"];var m;!function(t){let e=class extends l.LitElement{constructor(){super(...arguments),this.tabledata="",this.zebra=!1,this.clean=!1,this.sorting=!1,this.nodata="No data Loaded",this.stickheader=!1,this.label="Table",this.noBorders=!1,this.format="default",this.warning=[],this.errors=[],this.sort={columnName:"",sortting:!1},this.csvData=void 0,this.config={quoteChar:'"',escapeChar:'""',header:!1,preview:0,comments:!1,step:void 0,complete:void 0,download:!1}}connectedCallback(){super.connectedCallback(),this.results=s.a.parse(this.tabledata,this.config),this.headerRow=this.results.data[0],this.csvData=this.results.data.slice(1,this.results.data.length),this.requestUpdate("tabledata"),this.linkCellItems()}get rowItem(){return this.rowTable}linkCellItems(){const t=this.rowTable;null==t||t.forEach((t,e)=>{this.warning.forEach(r=>{if(e+1===r.row){t.querySelectorAll('td[role="cell"').forEach((t,e)=>{e+1===r.col&&(t.classList.add("warning"),t.insertAdjacentHTML("beforeend",'<md-icon name="warning_24" color="yellow"></md-icon>'))})}}),this.errors.forEach(r=>{if(e+1===r.row){t.querySelectorAll('td[role="cell"').forEach((t,e)=>{e+1===r.col&&(t.classList.add("error"),t.insertAdjacentHTML("beforeend",'<md-icon name="error_24" color="red"></md-icon>'))})}})})}sortTab(t,e){const r=t.target,o=Array.from(this.csvData),a=this.headerRow.indexOf(e);e!==this.sort.columnName||!0!==this.sort.sortting?(o.sort((function(t,e){const r=t[a].toLowerCase(),o=e[a].toLowerCase();return r>o?1:r<o?-1:0})),this.sort.sortting=!0,r.classList.remove("sortedZyx"),r.classList.add("sortedAbc")):(o.reverse(),this.sort.sortting=!1,r.classList.remove("sortedAbc"),r.classList.add("sortedZyx")),this.sort.columnName=e,this.csvData=o,this.requestUpdate("csvData")}update(t){super.update(t),t.has("tabledata")&&(this.results=s.a.parse(this.tabledata,this.config),this.headerRow=this.results.data[0],this.csvData=this.results.data.slice(1,this.results.data.length),this.linkCellItems())}static get styles(){return[o.a,n]}get tableClassMap(){return{"md-table--clean":this.clean,"md-table--no-borders":this.noBorders,"md-table--stripped":this.zebra,"md-table--sorting":this.sorting}}render(){return l.html`
2
- <div class=${"md-table-container "+(this.stickheader?"md-table-container_stickly":c.nothing)}>
3
- ${0!=this.csvData.length?l.html`
4
- <table
5
- class="md-table ${Object(i.classMap)(this.tableClassMap)}"
6
- tabindex="0"
7
- role="table"
8
- aria-label="${this.label}"
9
- >
10
- <thead class="md-table__header" role="rowgroup" tabindex="0">
11
- <tr role="row">
12
- ${this.headerRow.map(t=>l.html`
13
- <th role="columnheader">
14
- ${this.sorting?l.html`
15
- <a @click=${e=>this.sortTab(e,t)}>${t}</a>
1
+ (window["momentum-web-components-[id]"]=window["momentum-web-components-[id]"]||[]).push([[77],{100:function(e,t,r){"use strict";r.r(t),r.d(t,"TableAdvanced",(function(){return w}));r(17),r(15),r(32);var o=r(5),i=r(34),a=r(4),l=r(0),d=r(2),s=r(3),n=r(6),c=r(80),h=r(31),p=r.n(h),b=l.css`:host{display:block}.md-table-advanced{width:100%}table{border-collapse:separate;border-spacing:0;max-width:100%;position:relative;width:100%}table.sticky-header{height:100%}table.sticky-header thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-left:0;border-top:0;position:sticky;top:0;z-index:1}table.sticky-header thead th::before{border-top:1px solid var(--table-advanced-border-color,#dedede);bottom:0;content:" ";left:0;position:absolute;top:0;width:100%}table.sticky-header thead tr:last-child th{top:2.5rem}table.sticky-header thead tr:last-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:first-child th{height:calc(2.5rem + .0625rem * 2);top:0}table.sticky-header thead tr:first-child th::before{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-top:1px solid var(--table-advanced-border-color,#dedede)}table.sticky-header thead tr:focus{outline:0}table.sticky-header thead tr:focus th:first-child{border-left:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th:last-child{border-right:2px solid var(--md-focus-border-color)}table.sticky-header thead tr:focus th::before{border-bottom:2px solid var(--md-focus-border-color);border-top:2px solid var(--md-focus-border-color)}thead th:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}thead th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border:1px solid var(--table-advanced-border-color,#dedede);border-left:0;color:var(--md-secondary-text-color);font-family:"CiscoSansTT Regular","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;height:2.5rem;max-width:0;padding:0 calc(.375rem);position:relative;text-align:left}thead th .filter{display:inline-block;height:auto;margin-top:calc(.25rem / 2)}thead th .resize{background-color:transparent;cursor:col-resize;height:100%;left:calc(-.25rem / 2);position:absolute;top:0;width:.25rem;z-index:1}thead .head-inner-cell{align-items:center;display:flex;min-width:.875rem}thead .head-inner-cell .filter-wrap{align-items:center;display:inline-flex;flex:1;justify-content:flex-end}thead .head-inner-cell .filter-icon{color:var(--md-secondary-text-color);cursor:pointer;display:inline-block;height:1.5rem;min-width:1.25rem;position:relative;z-index:1}thead .head-inner-cell .filter-icon::part(button){padding:.25rem;text-align:center;width:1.5rem}thead .head-inner-cell .filter-icon:hover{background-color:var(--table-advanced-filter-hover-bg-color,#ededed)}thead .head-inner-cell .filter-icon:active{background-color:var(--table-advanced-filter-pressed-bg-color,#dedede)}thead .head-inner-cell span{display:inline-block;overflow:hidden;padding-right:calc(.25rem * 1.25);text-overflow:ellipsis;white-space:nowrap;width:100%}thead .head-inner-cell .sortable{background:0 0;border:0;color:var(--md-secondary-text-color);display:inline-block;min-width:calc(1rem * 2.5);overflow:hidden;padding-right:calc(.25rem * 4);text-overflow:ellipsis;white-space:nowrap;width:auto}thead md-menu-overlay::part(overlay){top:-.375rem;white-space:normal}@supports (-moz-appearance:none){thead md-menu-overlay::part(overlay){top:-.25rem;white-space:normal}}thead .drag-area-col{cursor:grab;display:block;height:calc(.25rem * 10);left:.25rem;position:absolute;right:.25rem;top:0;z-index:1}thead .drag-area-col.drag{border:2px dashed var(--table-advanced-filter-border-color,#ccc);opacity:1}thead .drag-area-col.over{background-color:#a87ff1;height:100%;opacity:.1}thead .sortable{cursor:pointer;position:relative;z-index:1}thead .sortable::after,thead .sortable::before{border:.25rem solid transparent;content:"";display:block;height:0;opacity:.3;position:absolute;right:.25rem;top:50%;width:0}thead .sortable::before{border-bottom-color:var(--md-secondary-text-color);margin-top:-9px}thead .sortable::after{border-top-color:var(--md-secondary-text-color);margin-top:1px}thead .sortable.ascending::after{opacity:1}thead .sortable.descending::before{opacity:1}.filter-active{display:inline-block;height:1.25rem;text-align:center;vertical-align:bottom;width:1.25rem}.filter-active::part(icon){line-height:.875rem}.filter-menu{background-color:var(--table-advanced-filter-bg-color,#fff);padding:calc(.25rem * 3);position:relative;z-index:1}.filter-menu select{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);min-height:calc(.875rem * 1.8);width:100%}.filter-menu input{background-color:var(--table-advanced-filter-bg-color,#fff);border:1px solid var(--table-advanced-filter-border-color,#ccc);color:var(--md-secondary-text-color);margin-top:calc(.25rem * 2);width:100%}tbody tr{position:relative}tbody tr td:first-child{border-left:1px solid var(--table-advanced-border-color,#dedede)}tbody tr td{border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;height:2.5rem;max-width:0;padding:calc(.25rem * 1.5);position:relative}tbody tr th:first-child{border-top:1px solid var(--table-advanced-border-color,#dedede)}tbody tr th{background-color:var(--table-advanced-header-bg-color,#f7f7f7);border-bottom:1px solid var(--table-advanced-border-color,#dedede);border-right:1px solid var(--table-advanced-border-color,#dedede);font-size:14px;max-width:0;padding:0 calc(.25rem * 4);position:relative;text-align:left}tbody tr .inner-cell{display:flex;white-space:nowrap}tbody tr .inner-cell .warn-icon{display:inline-block;margin-left:.25rem;max-height:1.25rem;position:relative;vertical-align:middle;z-index:0}tbody tr .inner-cell md-icon::part(icon){line-height:1.25rem}tbody tr .inner-cell span{align-self:center;display:inline-block;flex:1;overflow:hidden;padding:0 .25rem;text-overflow:ellipsis;vertical-align:middle}tbody tr .drag-handle{cursor:grab;display:block;float:left;margin-right:calc(.25rem * 1.5)}tbody tr .drag-area{height:50%;left:0;opacity:.3;position:absolute;right:0}tbody tr .drag-area.top{top:0}tbody tr .drag-area.bottom{background-color:transparent;bottom:0}tbody tr.ghost{opacity:.3}tbody tr:hover{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr:hover td,tbody tr:hover th{background-color:var(--table-advanced-hover-bg-color,#f7f7f7)}tbody tr.selected,tbody tr:active{background-color:var(--table-advanced-selected-bg-color,#ededed)}tbody tr.selected td,tbody tr.selected th,tbody tr:active td,tbody tr:active th{background-color:var(--table-advanced-selected-bg-color,#ededed)}md-button.row-collapsible{height:1.25rem;margin-right:calc(.25rem * 1.5);max-width:1.25rem;min-width:1.25rem}md-button.row-collapsible::part(button){border-radius:calc(.25rem / 2);padding:0 .25rem}md-button.row-collapsible md-icon::part(icon){line-height:calc(.25rem * 4)}`;function g(e=250){return function(t,r,o){let i;return function(e,t){if(e.descriptor=e.descriptor||Object.getOwnPropertyDescriptor(e.target,e.key),"function"!=typeof e.descriptor.value)return console.warn(e.key,"Decorator must be used on function"),e.descriptor;const r=e.descriptor.value,o=e.target.constructor.name;return e.descriptor.value=function(){const e=[];for(let t=0;t<arguments.length;t++)e[t]=arguments[t];return t.call(this,r,e,o)},e.descriptor}({target:t,key:r,descriptor:o},(function(t,r){clearTimeout(i),i=window.setTimeout(()=>{clearTimeout(i),t.apply(this,r)},e)}))}}class m{constructor(e,t){this.target=e,this.eventName=t}emit(e,t={bubbles:!0,composed:!0,cancelable:!1}){this.target.dispatchEvent(new CustomEvent(this.eventName,Object.assign({detail:e},t)))}}const u=new WeakMap,f=Object(d.directive)(e=>t=>{if(!(t instanceof d.NodePart))throw new Error("templateCallback can only be used in text bindings");const r=u.get(t);if(void 0!==r&&e.template===r.template&&t.value===r.fragment)return;const o=document.importNode(e.template.content,!0);e.cb({content:e.content,row:e.row,col:e.col,insertIndex:e.insertIndex,fragment:o}),t.setValue(o),u.set(t,{template:e.template,fragment:o})});var v;!function(e){const t={placeholder:"Filter..."};e.OPTIONS={equals:{label:"Equals",input:t,predicate:(e,t)=>e==t},notEqual:{label:"Not equal",input:t,predicate:(e,t)=>e!=t},contains:{label:"Contains",input:t,predicate:(e,t)=>e.includes(t)},notContains:{label:"Not contains",input:t,predicate:(e,t)=>!e.includes(t)},startsWith:{label:"Starts with",input:t,predicate:(e,t)=>e.startsWith(t)},endsWith:{label:"Ends with",input:t,predicate:(e,t)=>e.endsWith(t)},lessThan:{label:"Less than",input:t,predicate:(e,t)=>e<t},lessThanOrEquals:{label:"Less than or equals",input:t,predicate:(e,t)=>e<=t},greaterThan:{label:"Greater than",input:t,predicate:(e,t)=>e>t},greaterThanOrEquals:{label:"Greater than or equals",input:t,predicate:(e,t)=>e>=t}},e.optionsString=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.contains,e.OPTIONS.notContains,e.OPTIONS.startsWith,e.OPTIONS.endsWith],e.optionsNumber=[e.OPTIONS.equals,e.OPTIONS.notEqual,e.OPTIONS.lessThan,e.OPTIONS.lessThanOrEquals,e.OPTIONS.greaterThan,e.OPTIONS.greaterThanOrEquals]}(v||(v={}));var x=function(e,t,r,o){var i,a=arguments.length,l=a<3?t:null===o?o=Object.getOwnPropertyDescriptor(t,r):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,r,o);else for(var d=e.length-1;d>=0;d--)(i=e[d])&&(l=(a<3?i(l):a>3?i(t,r,l):i(t,r))||l);return a>3&&l&&Object.defineProperty(t,r,l),l};const y=document.createElement("img");var w;y.src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",function(e){let t=class extends(Object(i.a)(l.LitElement)){constructor(){super(...arguments),this.error="",this.COLS=[],this.ROWS=[],this.updCols=()=>this.requestUpdate("COLS"),this.updRows=()=>this.requestUpdate("ROWS"),this.dragRow=-1,this.dropRow=-1,this.drops=[],this.dragRowElem=null,this.dragCol=-1,this.dropCol=-1,this.isResizing=!1,this.isSelectable=!1,this.selected={},this.expandedRowIdx={},this.dragover=e=>e.preventDefault(),this.eX=0,this.onResize=(e,t)=>{var r;if(-1!=this.dragCol||-1!=this.dragRow)return;this.isResizing=!0;const o=e.target;null===(r=e.dataTransfer)||void 0===r||r.setDragImage(y,0,0);const i=this.COLS.map(e=>this.shadowRoot.querySelector("th.col-index-"+e.index));this.COLS.forEach((e,t)=>e.width=i[t].offsetWidth+"px"),this.updCols();const a=e.x;this.eX=e.x;let l=-1,d=-1,s=-1;const n=this.COLS[t.index-1],c=i[t.index],h=i[t.index-1],p=c.offsetWidth,b=h.offsetWidth,g=()=>{const e=this.eX;if(l!=e&&0!=e){l=e;const r=l-a;d=p-r,s=b+r,t.width=d+"px",n.width=s+"px",this.updCols()}},m=e=>this.eX=e.x,u=()=>{this.isResizing=!1,o.removeEventListener("drag",g),o.removeEventListener("dragend",u),document.removeEventListener("dragover",m)};o.addEventListener("drag",g),o.addEventListener("dragend",u),document.addEventListener("dragover",m)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("dragover",this.dragover)}connectedCallback(){super.connectedCallback(),document.addEventListener("dragover",this.dragover),this.updateTableConfig(),this.updateTableData(),this.populateTable()}update(e){super.update(e),e.has("data")&&(this.updateTableData(),this.updateDataInTable())}updateTableData(){if("string"==typeof this.data)try{this.tableData=JSON.parse(this.data)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the config json")}else this.tableData=Object.assign({},this.data)}updateTableConfig(){if("string"==typeof this.config)try{this.tableConfig=JSON.parse(this.config)}catch(e){console.error("[INVALID_JSON_FORMAT] Please recheck the data json")}else this.tableConfig=Object.assign({},this.config)}populateColumns(){var e;let t=0;const r=(e,r)=>{var o,i,a,l;const d=e.filters||(null===(i=null===(o=this.tableConfig.default)||void 0===o?void 0:o.col)||void 0===i?void 0:i.filters),s=d?"forString"==d?v.optionsString:"forNumber"==d?v.optionsNumber:d.length?d:null:null;this.COLS.push({options:Object.assign({},e),index:t++,group:r,sort:"default",sorter:e.sorter||(null===(l=null===(a=this.tableConfig.default)||void 0===a?void 0:a.col)||void 0===l?void 0:l.sorter),isCollapsable:this.tableConfig.cols.collapse==e.id,filter:s?{list:s,selectedIndex:0,input:"",active:!1,menuVisible:!1}:void 0})};this.tableConfig.cols.define.forEach(e=>{"children"in e?e.children.forEach(t=>r(t,{name:e.groupName,length:e.children.length})):r(e)}),this.isSelectable=!!this.tableConfig.rows&&"none"!=(null===(e=this.tableConfig.rows)||void 0===e?void 0:e.selectable)}populateData(){const e=this.COLS.length;if("csv"in this.tableData){const e=p.a.parse(this.tableData.csv,{skipEmptyLines:!0,transform:e=>e.trim()});if(e.errors)return void(this.error="PARSE ERROR:\n"+JSON.stringify(e.errors,null,2));{const t=e.data;this.ROWS=t.map(e=>e.map(e=>({text:e})))}}else if("list2d"in this.tableData)this.ROWS=this.tableData.list2d.map(e=>e.map(e=>({text:e})));else{for(;this.tableData.list.length>e;)this.ROWS.push(this.tableData.list.splice(0,e).map(e=>({text:e})));0!=this.tableData.list.length&&this.ROWS.push(this.tableData.list.map(e=>({text:e})))}0!=this.ROWS.length||(this.error="DATA ERROR: Data is empty")}validateData(){const e=this.COLS.length;this.ROWS.reduce((e,t)=>e+t.length,0)%e==0?this.ROWS.forEach((t,r)=>{const o=t.length;o!=e&&(this.error=`DATA ERROR: Total number of cols (=${e}) and data[${r}] length (=${o}) mismatch`)}):this.error=this.error="DATA ERROR: Data length mismatch. You must provide (numberOfRows * numberOfColumns) amount of data values."}populateTemplate(){const e=this.tableConfig.cellTemplates,t=Object.keys(e||{});e&&t.length&&this.ROWS.forEach((t,r)=>{t.forEach((t,o)=>{for(const i in e){const a=t.text.indexOf(i);if(-1!=a){const l=e[i],d=this.querySelector("#"+l.templateName);if(null==d){console.warn(`cellTemplates["${i}"]: Missing '${l.templateName}' template.`);continue}let s=t.text.replace(i,"");l.contentCb&&(s=l.contentCb({col:o,row:r,content:s,insertIndex:a})),this.ROWS[r][o]={text:s,template:{template:d,templateCb:l.templateCb,insertIndex:"replace"==l.contentUse?-1:a}};break}}})})}setDefaultFilterAndSort(){var e,t;const r=null===(e=this.tableConfig.default)||void 0===e?void 0:e.sort;if(r){const e=this.COLS.find(e=>e.options.id==r.colId);e?this.sort(e,r.order):console.warn(`Cant find ${r.colId} col - for sorting`)}const o=null===(t=this.tableConfig.default)||void 0===t?void 0:t.filter;if(o){const e=this.COLS.find(e=>e.options.id==o.colId);e?e.filter?(e.filter.selectedIndex=o.selectedIndex,e.filter.input=o.input,this.updCols(),this.filter(e)):console.warn(`Cant find filters on ${o.colId} col`):console.warn(`Cant find ${o.colId} col - for filtering`)}}populateTable(){this.populateColumns(),this.populateData(),this.validateData(),this.setDefaultFilterAndSort(),this.populateTemplate()}updateDataInTable(){this.populateData(),this.validateData(),this.populateTemplate()}onDropRow(){this.dragRow!=this.dropRow&&this.drops.push([this.dragRow,this.dropRow]),this.dragRow=-1,this.dropRow=-1,this.dragRowElem&&(this.dragRowElem.setAttribute("draggable","false"),this.dragRowElem=null)}onDropCol(){if(this.dragCol!=this.dropCol){const e=this.COLS[this.dragCol],t=this.COLS[this.dropCol],r=e.group,o=t.group,i=e.index,a=t.index;e.group=o,t.group=r,e.index=a,t.index=i,this.COLS[this.dragCol]=t,this.COLS[this.dropCol]=e,this.ROWS.forEach(e=>{const t=e[this.dragCol],r=e[this.dropCol];e[this.dragCol]=r,e[this.dropCol]=t}),this.updCols(),this.updRows()}this.dragCol=-1,this.dropCol=-1}sort(e,t){e.sorter&&(this.clearSelection(),this.drops=[],this.COLS.forEach(r=>{r.options.id==e.options.id?r.sort=t||("default"==r.sort?"ascending":"ascending"==r.sort?"descending":"default"):r.sort="default"}),this.updCols(),this.requestUpdate(),this["md-table-advanced-change"].emit({type:"sort",order:e.sort}))}filter(e){if(!e.filter)return;this.clearSelection(),this.drops=[];const t=e.filter.input.trim(),r=e.filter.list[e.filter.selectedIndex];e.filter.active=!!t,this.requestUpdate(),t?this["md-table-advanced-change"].emit({type:"filter-on",filter:r,input:t}):this["md-table-advanced-change"].emit({type:"filter-off",filter:e.filter.list[e.filter.selectedIndex]})}selectRow(e){var t;const r=e.row.idx,o=this.selected.hasOwnProperty(r);"multiple"==(null===(t=this.tableConfig.rows)||void 0===t?void 0:t.selectable)?(e.metaKey?o?delete this.selected[r]:this.selected[r]=!0:e.shiftKey||(this.selected={[r]:!0}),this["md-table-advanced-change"].emit({type:"multi-select",rows:Object.keys(this.selected).map(e=>+e)})):o?this.clearSelection():(this.selected={[r]:!0},this["md-table-advanced-change"].emit({type:"select",index:r})),this.requestUpdate("selected")}clearSelection(){this.selected={},this.requestUpdate("selected")}collapseToggle(e,t){e.stopPropagation(),this.expandedRowIdx[t]?(delete this.expandedRowIdx[t],this["md-table-advanced-change"].emit({type:"collapse",row:t})):(this.expandedRowIdx[t]=!0,this["md-table-advanced-change"].emit({type:"expand",row:t})),this.clearSelection(),this.requestUpdate()}render(){if(this.error)return l.html`
2
+ <div>${this.error}</div>
3
+ `;const{head:e}=this.tableConfig,t=Object(s.classMap)({"sticky-header":!!this.tableConfig.isStickyHeader});return l.html`
4
+ <div class="md-table-advanced">
5
+ <slot></slot>
6
+ <table class=${t} summary=${Object(n.ifDefined)(null==e?void 0:e.summary)}>
7
+ ${(null==e?void 0:e.caption)?l.html`
8
+ <caption>
9
+ ${null==e?void 0:e.caption}
10
+ </caption>
11
+ `:d.nothing}
12
+ ${this.renderHead()} ${this.renderBody()}
13
+ </table>
14
+ </div>
15
+ `}renderHead(){let e=d.nothing;const t=this.COLS.reduce((e,t)=>!!t.group||e,!1);if(t){let t="";e=l.html`
16
+ ${this.COLS.map(e=>e.group?t!=e.group.name?(t=e.group.name,l.html`
17
+ <colgroup span=${e.group.length}></colgroup>
18
+ `):void 0:l.html`
19
+ <col />
20
+ `)}
21
+ <tr tabindex="0">
22
+ ${this.COLS.map(e=>e.group?t!=e.group.name?(t=e.group.name,l.html`
23
+ <th colspan=${e.group.length} scope="colgroup" title="${e.group.name}">
24
+ <div class="head-inner-cell">
25
+ <span>${e.group.name}</span>
26
+ ${this.renderColResize(e)}
27
+ </div>
28
+ </th>
29
+ `):void 0:this.renderCol(e,2))}
30
+ </tr>
31
+ `}const r=l.html`
32
+ <tr tabindex="0">
33
+ ${this.COLS.map(e=>t?e.group?this.renderCol(e):void 0:this.renderCol(e))}
34
+ </tr>
35
+ `;return l.html`
36
+ <thead>
37
+ ${e} ${r}
38
+ </thead>
39
+ `}renderCol(e,t){var r,o;const i=null===(o=null===(r=e.filter)||void 0===r?void 0:r.list[e.filter.selectedIndex])||void 0===o?void 0:o.input,a=Object(s.classMap)({ascending:"ascending"==e.sort,descending:"descending"==e.sort});return l.html`
40
+ <th
41
+ rowspan=${Object(n.ifDefined)(t)}
42
+ width=${Object(n.ifDefined)(e.width?e.width:e.options.width)}
43
+ scope="col"
44
+ part="head-col"
45
+ title="${e.options.title}"
46
+ class=${"col-index-"+e.index}
47
+ >
48
+ <!-- DRAG -->
49
+ ${this.renderColDrag(e)}
50
+
51
+ <div class="head-inner-cell">
52
+ <!-- SORT -->
53
+ ${e.sorter?l.html`
54
+ <button class="sortable ${a}" @click=${()=>this.sort(e)}>${e.options.title}</button>
55
+ `:l.html`
56
+ <span>${e.options.title}</span>
57
+ `}
58
+
59
+ <!-- FILTER -->
60
+ ${e.filter?l.html`
61
+ <div class="filter-wrap">
62
+ ${e.filter.active?l.html`
63
+ <md-icon class="filter-active" name="filter-adr_14"></md-icon>
64
+ `:d.nothing}
65
+ <md-menu-overlay placement="bottom" class="filter" custom-width="188px">
66
+ <md-button class="filter-icon" slot="menu-trigger" color="color-none" size="size-none">
67
+ <md-icon slot="icon" name="filter_16"></md-icon>
68
+ </md-button>
69
+ <div class="filter-menu" style="width: 100%;">
70
+ <select
71
+ name="filter-type"
72
+ @change=${t=>{e.filter.selectedIndex=t.target.value,this.updCols(),this.filter(e)}}
73
+ >
74
+ ${e.filter.list.map((t,r)=>l.html`
75
+ <option value=${r} ?selected=${e.filter.selectedIndex==r}>${t.label}</option>
76
+ `)}
77
+ </select>
78
+ <input
79
+ type="text"
80
+ placeholder=${i.placeholder}
81
+ maxlength=${Object(n.ifDefined)(i.maxlength)}
82
+ pattern=${Object(n.ifDefined)(i.pattern)}
83
+ .value=${e.filter.input}
84
+ @input=${t=>{e.filter.input=t.target.value,this.updCols(),this.filter(e)}}
85
+ />
86
+ </div>
87
+ </md-menu-overlay>
88
+ </div>
89
+ `:d.nothing}
90
+
91
+ <!-- RESIZE -->
92
+ ${this.renderColResize(e)}
93
+ </div>
94
+ </th>
95
+ `}renderColDrag(e){return this.tableConfig.cols.isDraggable?l.html`
96
+ <div
97
+ draggable="true"
98
+ class="drag-area-col ${Object(s.classMap)({drag:-1!=this.dragCol,over:this.dropCol==e.index&&this.dropCol!=this.dragCol})}"
99
+ @dragstart=${t=>{this.isResizing||-1!=this.dragRow||(this.dragCol=e.index,t.dataTransfer.setDragImage(t.target.parentNode,0,0))}}
100
+ @dragenter=${()=>{this.isResizing||-1!=this.dragRow||(this.dropCol=e.index)}}
101
+ @dragend=${()=>this.onDropCol()}
102
+ ></div>
103
+ `:d.nothing}renderColResize(e){return this.tableConfig.cols.isResizable?l.html`
104
+ ${e.index>0?l.html`
105
+ <div class="resize" draggable="true" @dragstart=${t=>this.onResize(t,e)}></div>
106
+ `:d.nothing}
107
+ `:d.nothing}renderBody(){let e=this.ROWS.map((e,t)=>({cells:e,idx:t,idxDrag:t,collapse:"none",first:0===t,isGhost:!1,children:[]}));const t=this.COLS.length;e=e.filter(e=>{var r;for(let o=0;o<t;o++){const t=this.COLS[o];if(null===(r=t.filter)||void 0===r?void 0:r.active){if(!t.filter.list[t.filter.selectedIndex].predicate(e.cells[o].text,t.filter.input))return!1}}return!0});const r=this.COLS.find(e=>"default"!=e.sort);if(r){const t=this.ROWS.map((e,t)=>({v:e[r.index].text,i:t})),o="ascending"==r.sort?1:-1;let i=[];if("byNumber"==r.sorter)i=t.sort((e,t)=>1==o?+e.v-+t.v:+t.v-+e.v);else if("byString"==r.sorter)i=t.sort((e,t)=>e.v==t.v?0:e.v>t.v?o:-o);else if("function"==typeof r.sorter){const e=r.sorter;i=t.sort((t,r)=>e(t.v,r.v,o))}e=i.map(t=>e[t.i])}const o=this.COLS.find(e=>e.isCollapsable);if(o){const t=o.index,r=e.reduce((e,r)=>{const o=r.cells[t].text,i=e.find(e=>e.key==o);return i?(r.collapse="child",i.children.push(r)):e.push({key:o,root:r,children:[]}),e},[]);e=[],r.forEach(t=>{e.push(t.root),t.root.collapse=0==t.children.length?"none":this.expandedRowIdx[t.root.idx]?"expanded":"collapsed",t.root.children=t.children})}return this.drops.forEach(({0:t,1:r})=>{e.splice(r,0,e.splice(t,1)[0])}),e.forEach((e,t)=>e.idxDrag=t),-1!=this.dragRow&&(e[this.dragRow].isGhost=!0,-1!=this.dropRow&&e.splice(this.dropRow,0,e.splice(this.dragRow,1)[0])),l.html`
108
+ <tbody>
109
+ ${e.map(t=>{const r=e.length,o=t.children.length>0&&"expanded"==t.collapse&&!t.isGhost;return l.html`
110
+ ${this.renderRow(t,r)} ${o?t.children.map(e=>this.renderRow(e,r)):d.nothing}
111
+ `})}
112
+ </tbody>
113
+ `}renderRow(e,t){const r=this.selected.hasOwnProperty(e.idx),o=Object(s.classMap)({selected:r,selectable:this.isSelectable&&!r,ghost:e.isGhost});return l.html`
114
+ <tr
115
+ class=${o}
116
+ tabindex="0"
117
+ part=${e.first?"first-row":"row"}
118
+ @click=${({shiftKey:t,metaKey:r})=>{this.isSelectable&&this.selectRow({row:e,shiftKey:t,metaKey:r})}}
119
+ >
120
+ ${e.cells.map((r,o)=>{var i;const a=this.COLS[o];let s=r.text;const n=r.template;n&&(s=n.templateCb?l.html`
121
+ ${f({cb:n.templateCb,insertIndex:n.insertIndex,template:n.template,content:r.text,row:e.idx,col:o})}
122
+ `:l.html`
123
+ ${Object(c.templateContent)(n.template)}
124
+ `,-1!=n.insertIndex&&(s=l.html`
125
+ ${n.insertIndex>0?r.text.substring(0,n.insertIndex):d.nothing} ${s}
126
+ ${n.insertIndex<r.text.length-1?r.text.substring(n.insertIndex):d.nothing}
127
+ `));const h=(null===(i=this.tableConfig.rows)||void 0===i?void 0:i.isDraggable)&&"child"!=e.collapse,p=h&&-1!=this.dragRow&&this.dragRow!=e.idxDrag,b=h&&0==o,g=l.html`
128
+ <div
129
+ class="inner-cell"
130
+ draggable="false"
131
+ @dragstart=${()=>{this.isResizing||-1!=this.dragCol||(this.dragRow=e.idxDrag)}}
132
+ @dragend=${()=>this.onDropRow()}
133
+ >
134
+ ${p?l.html`
135
+ <div
136
+ class="drag-area top"
137
+ @dragenter=${()=>{if(0==this.dragRow){const t=e.idxDrag-1;this.dropRow=t>=0?t:0}else this.dropRow=e.idxDrag}}
138
+ ></div>
139
+ <div
140
+ class="drag-area bottom"
141
+ @dragenter=${()=>{if(0==this.dragRow)this.dropRow=e.idxDrag;else{const r=e.idxDrag+1;this.dropRow=r<t?r:t-1}}}
142
+ ></div>
143
+ `:d.nothing}
144
+ ${b?l.html`
145
+ <md-icon
146
+ class="drag-handle"
147
+ @mousedown=${e=>{this.isResizing||-1!=this.dragCol||(this.dragRowElem=e.target.parentNode,this.dragRowElem.setAttribute("draggable","true"))}}
148
+ name="panel-control-dragger_16"
149
+ >
150
+ </md-icon>
151
+ `:d.nothing}
152
+ ${a.isCollapsable?l.html`
153
+ ${"expanded"==e.collapse||"collapsed"==e.collapse?l.html`
154
+ <md-button
155
+ class="row-collapsible"
156
+ size="size-none"
157
+ @click=${t=>this.collapseToggle(t,e.idx)}
158
+ outline
159
+ color="color-none"
160
+ >
161
+ ${"collapsed"==e.collapse?l.html`
162
+ <md-icon slot="icon" name="plus_12"></md-icon>
16
163
  `:l.html`
17
- ${t}
164
+ <md-icon slot="icon" name="minus_12"></md-icon>
18
165
  `}
19
- </th>
20
- `)}
21
- </tr>
22
- </thead>
23
- <tbody class="md-table__body" role="rowgroup">
24
- ${this.csvData.map((t,e)=>l.html`
25
- <tr tabindex="0" role="row" part=${0===e?"first-row":"row"}>
26
- ${t.map((t,e)=>{const r="number"===this.format&&0!==e?Number(t).toLocaleString():t;return l.html`
27
- <td part=${0===e?"left-cell":"cell"} role="cell">
28
- <span>${r}</span>
29
- </td>
30
- `})}
31
- </tr>
32
- `)}
33
- </tbody>
34
- </table>
35
- `:l.html`
36
- <p>${this.nodata}</p>
37
- `}
38
- </div>
39
- `}};b([Object(l.property)({type:String})],e.prototype,"tabledata",void 0),b([Object(l.property)({type:Boolean})],e.prototype,"zebra",void 0),b([Object(l.property)({type:Boolean})],e.prototype,"clean",void 0),b([Object(l.property)({type:Boolean})],e.prototype,"sorting",void 0),b([Object(l.property)({type:String})],e.prototype,"nodata",void 0),b([Object(l.property)({type:Boolean})],e.prototype,"stickheader",void 0),b([Object(l.property)({type:String})],e.prototype,"label",void 0),b([Object(l.property)({type:Boolean,attribute:"no-borders"})],e.prototype,"noBorders",void 0),b([Object(l.property)({type:String})],e.prototype,"format",void 0),b([Object(l.property)({type:Array})],e.prototype,"warning",void 0),b([Object(l.property)({type:Array})],e.prototype,"errors",void 0),b([Object(l.internalProperty)()],e.prototype,"sort",void 0),b([Object(l.internalProperty)()],e.prototype,"csvData",void 0),b([Object(l.queryAll)('.md-table__body tr[role="row"]')],e.prototype,"rowTable",void 0),e=b([Object(a.a)("md-table")],e),t.ELEMENT=e}(m||(m={}))}}]);
166
+ </md-button>
167
+ `:d.nothing}
168
+ <span>${"child"==e.collapse?d.nothing:s}</span>
169
+ `:l.html`
170
+ <span>${s}</span>
171
+ `}
172
+ </div>
173
+ `;return a.options.isHeader?l.html`
174
+ <th part="cell-ishead" scope="row" title="${r.text}">${g}</th>
175
+ `:l.html`
176
+ <td part=${0===o?"first-cell":"cell"} title="${r.text}">${g}</td>
177
+ `})}
178
+ </tr>
179
+ `}static get styles(){return[a.a,b]}};x([Object(l.property)({attribute:"config"})],t.prototype,"config",void 0),x([Object(l.property)({attribute:"data"})],t.prototype,"data",void 0),x([(e,t)=>{const r={get(){return new m(this,void 0!==t?t:e.key)},enumerable:!0,configurable:!0};return void 0!==t?Object.defineProperty(e,t,r):{kind:"method",placement:"prototype",key:e.key,descriptor:r}}],t.prototype,"md-table-advanced-change",void 0),x([Object(l.internalProperty)()],t.prototype,"tableConfig",void 0),x([Object(l.internalProperty)()],t.prototype,"tableData",void 0),x([Object(l.internalProperty)()],t.prototype,"error",void 0),x([Object(l.internalProperty)()],t.prototype,"COLS",void 0),x([Object(l.internalProperty)()],t.prototype,"ROWS",void 0),x([Object(l.internalProperty)()],t.prototype,"dragRow",void 0),x([Object(l.internalProperty)()],t.prototype,"dropRow",void 0),x([Object(l.internalProperty)()],t.prototype,"drops",void 0),x([Object(l.internalProperty)()],t.prototype,"dragCol",void 0),x([Object(l.internalProperty)()],t.prototype,"dropCol",void 0),x([Object(l.queryAll)("tr[tabindex]")],t.prototype,"tableRaws",void 0),x([g(500)],t.prototype,"filter",null),t=x([Object(o.a)("md-table-advanced")],t),e.ELEMENT=t}(w||(w={}))}}]);