dinocollab-core 2.1.20 → 2.1.21

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 (444) hide show
  1. package/dist/_virtual/Reflect.js +2 -0
  2. package/dist/_virtual/Reflect.js.map +1 -0
  3. package/dist/_virtual/Reflect2.js +2 -0
  4. package/dist/_virtual/Reflect2.js.map +1 -0
  5. package/dist/_virtual/_commonjsHelpers.js +2 -0
  6. package/dist/_virtual/_commonjsHelpers.js.map +1 -0
  7. package/dist/api-context/index.js +1 -1
  8. package/dist/components/index.js +1 -1
  9. package/dist/data-view/index.js +1 -1
  10. package/dist/form/index.js +1 -1
  11. package/dist/hooks/index.js +1 -1
  12. package/dist/http-service/index.js +1 -1
  13. package/dist/lab/index.js +1 -1
  14. package/dist/mfe-shared/index.js +1 -1
  15. package/dist/node_modules/reflect-metadata/Reflect.js +16 -0
  16. package/dist/node_modules/reflect-metadata/Reflect.js.map +1 -0
  17. package/dist/redux/index.js +1 -1
  18. package/dist/src/api-context/alert-global.js +2 -0
  19. package/dist/src/api-context/alert-global.js.map +1 -0
  20. package/dist/src/api-context/drawer-global.js +2 -0
  21. package/dist/src/api-context/drawer-global.js.map +1 -0
  22. package/dist/src/api-context/global-modal.js +2 -0
  23. package/dist/src/api-context/global-modal.js.map +1 -0
  24. package/dist/src/api-context/popover-global.js +2 -0
  25. package/dist/src/api-context/popover-global.js.map +1 -0
  26. package/dist/src/api-context/popover.js +2 -0
  27. package/dist/src/api-context/popover.js.map +1 -0
  28. package/dist/src/api-context/ui.units.js.map +1 -0
  29. package/dist/src/components/breadcrumbs.js +2 -0
  30. package/dist/src/components/breadcrumbs.js.map +1 -0
  31. package/dist/src/components/buttons.js +2 -0
  32. package/dist/src/components/buttons.js.map +1 -0
  33. package/dist/src/components/copy-to-clipboard.js +2 -0
  34. package/dist/src/components/copy-to-clipboard.js.map +1 -0
  35. package/dist/src/components/create.multi-select-dropdown.js +2 -0
  36. package/dist/src/components/create.multi-select-dropdown.js.map +1 -0
  37. package/dist/src/components/help-tooltip.js +2 -0
  38. package/dist/src/components/help-tooltip.js.map +1 -0
  39. package/dist/src/components/image-with-fallback.js +2 -0
  40. package/dist/src/components/image-with-fallback.js.map +1 -0
  41. package/dist/src/components/rich-tooltip.js +2 -0
  42. package/dist/src/components/rich-tooltip.js.map +1 -0
  43. package/dist/src/components/text-editor.js +2 -0
  44. package/dist/src/components/text-editor.js.map +1 -0
  45. package/dist/src/components/text-editor.preview.js.map +1 -0
  46. package/dist/src/data-view/context.js +2 -0
  47. package/dist/src/data-view/context.js.map +1 -0
  48. package/dist/src/data-view/convert-filter-to-graphql.js +2 -0
  49. package/dist/src/data-view/convert-filter-to-graphql.js.map +1 -0
  50. package/dist/src/data-view/create.active-filters-panel.js +2 -0
  51. package/dist/src/data-view/create.active-filters-panel.js.map +1 -0
  52. package/dist/src/data-view/create.data-view.js +2 -0
  53. package/dist/src/data-view/create.data-view.js.map +1 -0
  54. package/dist/src/data-view/create.filter-bar.js +2 -0
  55. package/dist/src/data-view/create.filter-bar.js.map +1 -0
  56. package/dist/src/data-view/create.filter-menu.js +2 -0
  57. package/dist/src/data-view/create.filter-menu.js.map +1 -0
  58. package/dist/src/data-view/create.pagination-bar.js +2 -0
  59. package/dist/src/data-view/create.pagination-bar.js.map +1 -0
  60. package/dist/src/data-view/create.popper-panel.js +2 -0
  61. package/dist/src/data-view/create.popper-panel.js.map +1 -0
  62. package/dist/src/data-view/create.search-match.js +2 -0
  63. package/dist/src/data-view/create.search-match.js.map +1 -0
  64. package/dist/src/data-view/create.sort-menu.js +2 -0
  65. package/dist/src/data-view/create.sort-menu.js.map +1 -0
  66. package/dist/src/data-view/create.view-mode.js +2 -0
  67. package/dist/src/data-view/create.view-mode.js.map +1 -0
  68. package/dist/src/data-view/dino.js +2 -0
  69. package/dist/src/data-view/dino.js.map +1 -0
  70. package/dist/src/data-view/filter-store.js +2 -0
  71. package/dist/src/data-view/filter-store.js.map +1 -0
  72. package/dist/src/data-view/helpers.js +2 -0
  73. package/dist/src/data-view/helpers.js.map +1 -0
  74. package/dist/src/data-view/query-param-url.js +2 -0
  75. package/dist/src/data-view/query-param-url.js.map +1 -0
  76. package/dist/src/data-view/scroll-tracking.js +2 -0
  77. package/dist/src/data-view/scroll-tracking.js.map +1 -0
  78. package/dist/src/data-view/types.js.map +1 -0
  79. package/dist/src/data-view/ui.units.js +2 -0
  80. package/dist/src/data-view/ui.units.js.map +1 -0
  81. package/dist/src/data-view/view-mode.content.js +2 -0
  82. package/dist/src/data-view/view-mode.content.js.map +1 -0
  83. package/dist/src/data-view/view-mode.types.js.map +1 -0
  84. package/dist/src/data-view/view-mode.units.js +2 -0
  85. package/dist/src/data-view/view-mode.units.js.map +1 -0
  86. package/dist/src/form/create.autocomplete.chips.js +2 -0
  87. package/dist/src/form/create.autocomplete.chips.js.map +1 -0
  88. package/dist/src/form/create.color-picker.js +2 -0
  89. package/dist/src/form/create.color-picker.js.map +1 -0
  90. package/dist/src/form/create.date-expired.js +2 -0
  91. package/dist/src/form/create.date-expired.js.map +1 -0
  92. package/dist/src/form/create.date-picker.js +2 -0
  93. package/dist/src/form/create.date-picker.js.map +1 -0
  94. package/dist/src/form/create.form-base.js +2 -0
  95. package/dist/src/form/create.form-base.js.map +1 -0
  96. package/dist/src/form/create.form-comfirm.js +2 -0
  97. package/dist/src/form/create.form-comfirm.js.map +1 -0
  98. package/dist/src/form/create.form-grid-layout.js +2 -0
  99. package/dist/src/form/create.form-grid-layout.js.map +1 -0
  100. package/dist/src/form/create.form-grid-layout.units.js.map +1 -0
  101. package/dist/src/form/create.input-file.csv-local-parser.js +2 -0
  102. package/dist/src/form/create.input-file.csv-local-parser.js.map +1 -0
  103. package/dist/src/form/create.input.file.js +2 -0
  104. package/dist/src/form/create.input.file.js.map +1 -0
  105. package/dist/src/form/create.input.image-file.js +2 -0
  106. package/dist/src/form/create.input.image-file.js.map +1 -0
  107. package/dist/src/form/create.input.js +2 -0
  108. package/dist/src/form/create.input.js.map +1 -0
  109. package/dist/src/form/create.select-simple.js +2 -0
  110. package/dist/src/form/create.select-simple.js.map +1 -0
  111. package/dist/src/form/create.select-with-api.js +2 -0
  112. package/dist/src/form/create.select-with-api.js.map +1 -0
  113. package/dist/src/form/create.text-editor.js +2 -0
  114. package/dist/src/form/create.text-editor.js.map +1 -0
  115. package/dist/src/form/decorator.form.js +2 -0
  116. package/dist/src/form/decorator.form.js.map +1 -0
  117. package/dist/src/form/decorator.js +2 -0
  118. package/dist/src/form/decorator.js.map +1 -0
  119. package/dist/src/form/dino-form.js +2 -0
  120. package/dist/src/form/dino-form.js.map +1 -0
  121. package/dist/src/form/helpers.js +2 -0
  122. package/dist/src/form/helpers.js.map +1 -0
  123. package/dist/src/form/modal-wrapper.js +2 -0
  124. package/dist/src/form/modal-wrapper.js.map +1 -0
  125. package/dist/src/form/validator.js +2 -0
  126. package/dist/src/form/validator.js.map +1 -0
  127. package/dist/src/hooks/check-scrolled.js +2 -0
  128. package/dist/src/hooks/check-scrolled.js.map +1 -0
  129. package/dist/src/hooks/debounce.js +2 -0
  130. package/dist/src/hooks/debounce.js.map +1 -0
  131. package/dist/src/hooks/use-fetch-data.js +2 -0
  132. package/dist/src/hooks/use-fetch-data.js.map +1 -0
  133. package/dist/src/http-service/base/crud-service-base.js +2 -0
  134. package/dist/src/http-service/base/crud-service-base.js.map +1 -0
  135. package/dist/src/http-service/base/gateway.js.map +1 -0
  136. package/dist/src/http-service/base/helpers.js +2 -0
  137. package/dist/src/http-service/base/helpers.js.map +1 -0
  138. package/dist/src/http-service/base/service-base.js +2 -0
  139. package/dist/src/http-service/base/service-base.js.map +1 -0
  140. package/dist/src/http-service/graphql/app-profile.js +2 -0
  141. package/dist/src/http-service/graphql/app-profile.js.map +1 -0
  142. package/dist/src/http-service/graphql/graphql-request.js +2 -0
  143. package/dist/src/http-service/graphql/graphql-request.js.map +1 -0
  144. package/dist/src/http-service/graphql/key-converter.js.map +1 -0
  145. package/dist/src/http-service/graphql/request-param.js +2 -0
  146. package/dist/src/http-service/graphql/request-param.js.map +1 -0
  147. package/dist/src/http-service/graphql/types.js.map +1 -0
  148. package/dist/src/lab/attach-widget/helpers.js +2 -0
  149. package/dist/src/lab/attach-widget/helpers.js.map +1 -0
  150. package/dist/src/lab/attach-widget/modal.js +2 -0
  151. package/dist/src/lab/attach-widget/modal.js.map +1 -0
  152. package/dist/src/lab/attach-widget/styled.js +2 -0
  153. package/dist/src/lab/attach-widget/styled.js.map +1 -0
  154. package/dist/src/lab/attach-widget/widget.js +2 -0
  155. package/dist/src/lab/attach-widget/widget.js.map +1 -0
  156. package/dist/src/lab/input.social-links/configs.js.map +1 -0
  157. package/dist/src/lab/input.social-links/create.js +2 -0
  158. package/dist/src/lab/input.social-links/create.js.map +1 -0
  159. package/dist/src/lab/input.social-links/types.js.map +1 -0
  160. package/dist/src/lab/input.social-links/unit.icons.js +2 -0
  161. package/dist/src/lab/input.social-links/unit.icons.js.map +1 -0
  162. package/dist/src/lab/input.social-links/units.js +2 -0
  163. package/dist/src/lab/input.social-links/units.js.map +1 -0
  164. package/dist/src/mfe-shared/navigation.js +2 -0
  165. package/dist/src/mfe-shared/navigation.js.map +1 -0
  166. package/dist/src/redux/create.hoc-lazy.js +2 -0
  167. package/dist/src/redux/create.hoc-lazy.js.map +1 -0
  168. package/dist/src/redux/dino.js +2 -0
  169. package/dist/src/redux/dino.js.map +1 -0
  170. package/dist/src/redux/types.js.map +1 -0
  171. package/dist/src/redux/ui.error-page.js +2 -0
  172. package/dist/src/redux/ui.error-page.js.map +1 -0
  173. package/dist/src/table/context.js.map +1 -0
  174. package/dist/src/table/create.action-row.js +2 -0
  175. package/dist/src/table/create.action-row.js.map +1 -0
  176. package/dist/src/table/create.table.js +2 -0
  177. package/dist/src/table/create.table.js.map +1 -0
  178. package/dist/src/table/custom.filter-operators.js.map +1 -0
  179. package/dist/src/table/dino.js +2 -0
  180. package/dist/src/table/dino.js.map +1 -0
  181. package/dist/src/table/helpers.js +2 -0
  182. package/dist/src/table/helpers.js.map +1 -0
  183. package/dist/src/table/model-filter.js.map +1 -0
  184. package/dist/src/table/toolbar-pannel.js +2 -0
  185. package/dist/src/table/toolbar-pannel.js.map +1 -0
  186. package/dist/src/table/ui.buttons.js.map +1 -0
  187. package/dist/src/table/ui.units.js +2 -0
  188. package/dist/src/table/ui.units.js.map +1 -0
  189. package/dist/src/table-grid/create.table-grid.js +2 -0
  190. package/dist/src/table-grid/create.table-grid.js.map +1 -0
  191. package/dist/src/table-grid/dino.js +2 -0
  192. package/dist/src/table-grid/dino.js.map +1 -0
  193. package/dist/src/table-grid/filter-bar/base.js +2 -0
  194. package/dist/src/table-grid/filter-bar/base.js.map +1 -0
  195. package/dist/src/table-grid/filter-bar/create.filter-bar.js +2 -0
  196. package/dist/src/table-grid/filter-bar/create.filter-bar.js.map +1 -0
  197. package/dist/src/table-grid/filter-bar/create.filter-menu.js +2 -0
  198. package/dist/src/table-grid/filter-bar/create.filter-menu.js.map +1 -0
  199. package/dist/src/table-grid/filter-bar/create.filter-panel.js +2 -0
  200. package/dist/src/table-grid/filter-bar/create.filter-panel.js.map +1 -0
  201. package/dist/src/table-grid/filter-bar/create.filtered.js +2 -0
  202. package/dist/src/table-grid/filter-bar/create.filtered.js.map +1 -0
  203. package/dist/src/table-grid/filter-bar/types.js.map +1 -0
  204. package/dist/src/table-grid/filter-bar/ui.units.js.map +1 -0
  205. package/dist/src/table-grid/helpers.js.map +1 -0
  206. package/dist/src/table-grid/item-actions.js +2 -0
  207. package/dist/src/table-grid/item-actions.js.map +1 -0
  208. package/dist/src/table-grid/toolbar-pannel.js +2 -0
  209. package/dist/src/table-grid/toolbar-pannel.js.map +1 -0
  210. package/dist/src/table-grid/url-query-param.js +2 -0
  211. package/dist/src/table-grid/url-query-param.js.map +1 -0
  212. package/dist/src/utils/dayjs-config.js.map +1 -0
  213. package/dist/src/utils/helpers.js +2 -0
  214. package/dist/src/utils/helpers.js.map +1 -0
  215. package/dist/src/utils/json-object.js +2 -0
  216. package/dist/src/utils/json-object.js.map +1 -0
  217. package/dist/src/utils/query-param.js +2 -0
  218. package/dist/src/utils/query-param.js.map +1 -0
  219. package/dist/table/index.js +1 -1
  220. package/dist/table-grid/index.js +1 -1
  221. package/dist/types/form/create.form-base.d.ts +2 -2
  222. package/dist/types/form/create.input.d.ts +2 -2
  223. package/dist/types/form/decorator.d.ts +30 -0
  224. package/dist/types/form/decorator.form.d.ts +20 -0
  225. package/dist/types/form/dino-form.d.ts +3 -1
  226. package/dist/types/form/index.d.ts +2 -0
  227. package/dist/utils/index.js +1 -1
  228. package/package.json +5 -1
  229. package/dist/api-context/alert-global.js +0 -2
  230. package/dist/api-context/alert-global.js.map +0 -1
  231. package/dist/api-context/drawer-global.js +0 -2
  232. package/dist/api-context/drawer-global.js.map +0 -1
  233. package/dist/api-context/global-modal.js +0 -2
  234. package/dist/api-context/global-modal.js.map +0 -1
  235. package/dist/api-context/popover-global.js +0 -2
  236. package/dist/api-context/popover-global.js.map +0 -1
  237. package/dist/api-context/popover.js +0 -2
  238. package/dist/api-context/popover.js.map +0 -1
  239. package/dist/api-context/ui.units.js.map +0 -1
  240. package/dist/components/breadcrumbs.js +0 -2
  241. package/dist/components/breadcrumbs.js.map +0 -1
  242. package/dist/components/buttons.js +0 -2
  243. package/dist/components/buttons.js.map +0 -1
  244. package/dist/components/copy-to-clipboard.js +0 -2
  245. package/dist/components/copy-to-clipboard.js.map +0 -1
  246. package/dist/components/create.multi-select-dropdown.js +0 -2
  247. package/dist/components/create.multi-select-dropdown.js.map +0 -1
  248. package/dist/components/help-tooltip.js +0 -2
  249. package/dist/components/help-tooltip.js.map +0 -1
  250. package/dist/components/image-with-fallback.js +0 -2
  251. package/dist/components/image-with-fallback.js.map +0 -1
  252. package/dist/components/rich-tooltip.js +0 -2
  253. package/dist/components/rich-tooltip.js.map +0 -1
  254. package/dist/components/text-editor.js +0 -2
  255. package/dist/components/text-editor.js.map +0 -1
  256. package/dist/components/text-editor.preview.js.map +0 -1
  257. package/dist/data-view/context.js +0 -2
  258. package/dist/data-view/context.js.map +0 -1
  259. package/dist/data-view/convert-filter-to-graphql.js +0 -2
  260. package/dist/data-view/convert-filter-to-graphql.js.map +0 -1
  261. package/dist/data-view/create.active-filters-panel.js +0 -2
  262. package/dist/data-view/create.active-filters-panel.js.map +0 -1
  263. package/dist/data-view/create.data-view.js +0 -2
  264. package/dist/data-view/create.data-view.js.map +0 -1
  265. package/dist/data-view/create.filter-bar.js +0 -2
  266. package/dist/data-view/create.filter-bar.js.map +0 -1
  267. package/dist/data-view/create.filter-menu.js +0 -2
  268. package/dist/data-view/create.filter-menu.js.map +0 -1
  269. package/dist/data-view/create.pagination-bar.js +0 -2
  270. package/dist/data-view/create.pagination-bar.js.map +0 -1
  271. package/dist/data-view/create.popper-panel.js +0 -2
  272. package/dist/data-view/create.popper-panel.js.map +0 -1
  273. package/dist/data-view/create.search-match.js +0 -2
  274. package/dist/data-view/create.search-match.js.map +0 -1
  275. package/dist/data-view/create.sort-menu.js +0 -2
  276. package/dist/data-view/create.sort-menu.js.map +0 -1
  277. package/dist/data-view/create.view-mode.js +0 -2
  278. package/dist/data-view/create.view-mode.js.map +0 -1
  279. package/dist/data-view/dino.js +0 -2
  280. package/dist/data-view/dino.js.map +0 -1
  281. package/dist/data-view/filter-store.js +0 -2
  282. package/dist/data-view/filter-store.js.map +0 -1
  283. package/dist/data-view/helpers.js +0 -2
  284. package/dist/data-view/helpers.js.map +0 -1
  285. package/dist/data-view/query-param-url.js +0 -2
  286. package/dist/data-view/query-param-url.js.map +0 -1
  287. package/dist/data-view/scroll-tracking.js +0 -2
  288. package/dist/data-view/scroll-tracking.js.map +0 -1
  289. package/dist/data-view/types.js.map +0 -1
  290. package/dist/data-view/ui.units.js +0 -2
  291. package/dist/data-view/ui.units.js.map +0 -1
  292. package/dist/data-view/view-mode.content.js +0 -2
  293. package/dist/data-view/view-mode.content.js.map +0 -1
  294. package/dist/data-view/view-mode.types.js.map +0 -1
  295. package/dist/data-view/view-mode.units.js +0 -2
  296. package/dist/data-view/view-mode.units.js.map +0 -1
  297. package/dist/form/create.autocomplete.chips.js +0 -2
  298. package/dist/form/create.autocomplete.chips.js.map +0 -1
  299. package/dist/form/create.color-picker.js +0 -2
  300. package/dist/form/create.color-picker.js.map +0 -1
  301. package/dist/form/create.date-expired.js +0 -2
  302. package/dist/form/create.date-expired.js.map +0 -1
  303. package/dist/form/create.date-picker.js +0 -2
  304. package/dist/form/create.date-picker.js.map +0 -1
  305. package/dist/form/create.form-base.js +0 -2
  306. package/dist/form/create.form-base.js.map +0 -1
  307. package/dist/form/create.form-comfirm.js +0 -2
  308. package/dist/form/create.form-comfirm.js.map +0 -1
  309. package/dist/form/create.form-grid-layout.js +0 -2
  310. package/dist/form/create.form-grid-layout.js.map +0 -1
  311. package/dist/form/create.form-grid-layout.units.js.map +0 -1
  312. package/dist/form/create.input-file.csv-local-parser.js +0 -2
  313. package/dist/form/create.input-file.csv-local-parser.js.map +0 -1
  314. package/dist/form/create.input.file.js +0 -2
  315. package/dist/form/create.input.file.js.map +0 -1
  316. package/dist/form/create.input.image-file.js +0 -2
  317. package/dist/form/create.input.image-file.js.map +0 -1
  318. package/dist/form/create.input.js +0 -2
  319. package/dist/form/create.input.js.map +0 -1
  320. package/dist/form/create.select-simple.js +0 -2
  321. package/dist/form/create.select-simple.js.map +0 -1
  322. package/dist/form/create.select-with-api.js +0 -2
  323. package/dist/form/create.select-with-api.js.map +0 -1
  324. package/dist/form/create.text-editor.js +0 -2
  325. package/dist/form/create.text-editor.js.map +0 -1
  326. package/dist/form/dino-form.js +0 -2
  327. package/dist/form/dino-form.js.map +0 -1
  328. package/dist/form/helpers.js +0 -2
  329. package/dist/form/helpers.js.map +0 -1
  330. package/dist/form/modal-wrapper.js +0 -2
  331. package/dist/form/modal-wrapper.js.map +0 -1
  332. package/dist/form/validator.js +0 -2
  333. package/dist/form/validator.js.map +0 -1
  334. package/dist/hooks/check-scrolled.js +0 -2
  335. package/dist/hooks/check-scrolled.js.map +0 -1
  336. package/dist/hooks/debounce.js +0 -2
  337. package/dist/hooks/debounce.js.map +0 -1
  338. package/dist/hooks/use-fetch-data.js +0 -2
  339. package/dist/hooks/use-fetch-data.js.map +0 -1
  340. package/dist/http-service/base/crud-service-base.js +0 -2
  341. package/dist/http-service/base/crud-service-base.js.map +0 -1
  342. package/dist/http-service/base/gateway.js.map +0 -1
  343. package/dist/http-service/base/helpers.js +0 -2
  344. package/dist/http-service/base/helpers.js.map +0 -1
  345. package/dist/http-service/base/service-base.js +0 -2
  346. package/dist/http-service/base/service-base.js.map +0 -1
  347. package/dist/http-service/graphql/app-profile.js +0 -2
  348. package/dist/http-service/graphql/app-profile.js.map +0 -1
  349. package/dist/http-service/graphql/graphql-request.js +0 -2
  350. package/dist/http-service/graphql/graphql-request.js.map +0 -1
  351. package/dist/http-service/graphql/key-converter.js.map +0 -1
  352. package/dist/http-service/graphql/request-param.js +0 -2
  353. package/dist/http-service/graphql/request-param.js.map +0 -1
  354. package/dist/http-service/graphql/types.js.map +0 -1
  355. package/dist/lab/attach-widget/helpers.js +0 -2
  356. package/dist/lab/attach-widget/helpers.js.map +0 -1
  357. package/dist/lab/attach-widget/modal.js +0 -2
  358. package/dist/lab/attach-widget/modal.js.map +0 -1
  359. package/dist/lab/attach-widget/styled.js +0 -2
  360. package/dist/lab/attach-widget/styled.js.map +0 -1
  361. package/dist/lab/attach-widget/widget.js +0 -2
  362. package/dist/lab/attach-widget/widget.js.map +0 -1
  363. package/dist/lab/input.social-links/configs.js.map +0 -1
  364. package/dist/lab/input.social-links/create.js +0 -2
  365. package/dist/lab/input.social-links/create.js.map +0 -1
  366. package/dist/lab/input.social-links/types.js.map +0 -1
  367. package/dist/lab/input.social-links/unit.icons.js +0 -2
  368. package/dist/lab/input.social-links/unit.icons.js.map +0 -1
  369. package/dist/lab/input.social-links/units.js +0 -2
  370. package/dist/lab/input.social-links/units.js.map +0 -1
  371. package/dist/mfe-shared/navigation.js +0 -2
  372. package/dist/mfe-shared/navigation.js.map +0 -1
  373. package/dist/redux/create.hoc-lazy.js +0 -2
  374. package/dist/redux/create.hoc-lazy.js.map +0 -1
  375. package/dist/redux/dino.js +0 -2
  376. package/dist/redux/dino.js.map +0 -1
  377. package/dist/redux/types.js.map +0 -1
  378. package/dist/redux/ui.error-page.js +0 -2
  379. package/dist/redux/ui.error-page.js.map +0 -1
  380. package/dist/table/context.js.map +0 -1
  381. package/dist/table/create.action-row.js +0 -2
  382. package/dist/table/create.action-row.js.map +0 -1
  383. package/dist/table/create.table.js +0 -2
  384. package/dist/table/create.table.js.map +0 -1
  385. package/dist/table/custom.filter-operators.js.map +0 -1
  386. package/dist/table/dino.js +0 -2
  387. package/dist/table/dino.js.map +0 -1
  388. package/dist/table/helpers.js +0 -2
  389. package/dist/table/helpers.js.map +0 -1
  390. package/dist/table/model-filter.js.map +0 -1
  391. package/dist/table/toolbar-pannel.js +0 -2
  392. package/dist/table/toolbar-pannel.js.map +0 -1
  393. package/dist/table/ui.buttons.js.map +0 -1
  394. package/dist/table/ui.units.js +0 -2
  395. package/dist/table/ui.units.js.map +0 -1
  396. package/dist/table-grid/create.table-grid.js +0 -2
  397. package/dist/table-grid/create.table-grid.js.map +0 -1
  398. package/dist/table-grid/dino.js +0 -2
  399. package/dist/table-grid/dino.js.map +0 -1
  400. package/dist/table-grid/filter-bar/base.js +0 -2
  401. package/dist/table-grid/filter-bar/base.js.map +0 -1
  402. package/dist/table-grid/filter-bar/create.filter-bar.js +0 -2
  403. package/dist/table-grid/filter-bar/create.filter-bar.js.map +0 -1
  404. package/dist/table-grid/filter-bar/create.filter-menu.js +0 -2
  405. package/dist/table-grid/filter-bar/create.filter-menu.js.map +0 -1
  406. package/dist/table-grid/filter-bar/create.filter-panel.js +0 -2
  407. package/dist/table-grid/filter-bar/create.filter-panel.js.map +0 -1
  408. package/dist/table-grid/filter-bar/create.filtered.js +0 -2
  409. package/dist/table-grid/filter-bar/create.filtered.js.map +0 -1
  410. package/dist/table-grid/filter-bar/types.js.map +0 -1
  411. package/dist/table-grid/filter-bar/ui.units.js.map +0 -1
  412. package/dist/table-grid/helpers.js.map +0 -1
  413. package/dist/table-grid/item-actions.js +0 -2
  414. package/dist/table-grid/item-actions.js.map +0 -1
  415. package/dist/table-grid/toolbar-pannel.js +0 -2
  416. package/dist/table-grid/toolbar-pannel.js.map +0 -1
  417. package/dist/table-grid/url-query-param.js +0 -2
  418. package/dist/table-grid/url-query-param.js.map +0 -1
  419. package/dist/utils/dayjs-config.js.map +0 -1
  420. package/dist/utils/helpers.js +0 -2
  421. package/dist/utils/helpers.js.map +0 -1
  422. package/dist/utils/json-object.js +0 -2
  423. package/dist/utils/json-object.js.map +0 -1
  424. package/dist/utils/query-param.js +0 -2
  425. package/dist/utils/query-param.js.map +0 -1
  426. /package/dist/{api-context → src/api-context}/ui.units.js +0 -0
  427. /package/dist/{components → src/components}/text-editor.preview.js +0 -0
  428. /package/dist/{data-view → src/data-view}/types.js +0 -0
  429. /package/dist/{data-view → src/data-view}/view-mode.types.js +0 -0
  430. /package/dist/{form → src/form}/create.form-grid-layout.units.js +0 -0
  431. /package/dist/{http-service → src/http-service}/base/gateway.js +0 -0
  432. /package/dist/{http-service → src/http-service}/graphql/key-converter.js +0 -0
  433. /package/dist/{http-service → src/http-service}/graphql/types.js +0 -0
  434. /package/dist/{lab → src/lab}/input.social-links/configs.js +0 -0
  435. /package/dist/{lab → src/lab}/input.social-links/types.js +0 -0
  436. /package/dist/{redux → src/redux}/types.js +0 -0
  437. /package/dist/{table → src/table}/context.js +0 -0
  438. /package/dist/{table → src/table}/custom.filter-operators.js +0 -0
  439. /package/dist/{table → src/table}/model-filter.js +0 -0
  440. /package/dist/{table → src/table}/ui.buttons.js +0 -0
  441. /package/dist/{table-grid → src/table-grid}/filter-bar/types.js +0 -0
  442. /package/dist/{table-grid → src/table-grid}/filter-bar/ui.units.js +0 -0
  443. /package/dist/{table-grid → src/table-grid}/helpers.js +0 -0
  444. /package/dist/{utils → src/utils}/dayjs-config.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../src/lab/attach-widget/helpers.ts"],"sourcesContent":["import { colors } from '@mui/material'\r\nimport { AttachUploadFunction, IAttachItem, IAttachItemConfigs, IAttachItemStatus } from './types'\r\n\r\nexport const allowImageTypes = ['image/jpeg', 'image/png', 'image/svg+xml']\r\n\r\nexport const allowPdfTypes = ['application/pdf']\r\n\r\nexport const allowFileTypes = [...allowImageTypes, ...allowPdfTypes]\r\n\r\nexport const isValidFileType = (value?: string) => allowFileTypes.some((e) => e === value)\r\n\r\nexport const isImageFile = (value?: string) => allowImageTypes.some((e) => e === value)\r\n\r\nexport const isPdfFile = (value?: string) => allowPdfTypes.some((e) => e === value)\r\n\r\nexport const mapItemConfigs: IAttachItemConfigs = {\r\n old: { color: colors.grey[500], label: 'Current', count: 0 },\r\n new: { color: colors.green[500], label: 'New', count: 0 },\r\n deleted: { color: colors.red[500], label: 'Delete', count: 0 }\r\n}\r\n\r\nexport const getAttachQuality = (items: IAttachItem[]) => {\r\n return items.reduce<Record<IAttachItemStatus, number>>(\r\n (acc, item) => {\r\n const status = item.status || 'old'\r\n acc[status] = (acc[status] || 0) + 1\r\n return acc\r\n },\r\n { old: 0, new: 0, deleted: 0 }\r\n )\r\n}\r\n\r\nexport const toEnglishSlug = (str: string): string => {\r\n const temp = str\r\n .normalize('NFD') // split Vietnamese accents\r\n .replace(/[\\u0300-\\u036f]/g, '') // remove accents\r\n .replace(/[^a-zA-Z0-9\\s]/g, '') // remove special characters\r\n .replace(/\\s+/g, ' ') // replace multiple spaces with a single space\r\n .trim() // remove leading/trailing spaces\r\n .replace(/\\s/g, '-') // replace spaces with hyphens\r\n .toLowerCase()\r\n return temp + '-' + new Date().getTime().toString(36) // append timestamp to ensure uniqueness\r\n}\r\n\r\nexport const fileToAttachItem = (file: File, options?: Partial<IAttachItem>): IAttachItem => ({\r\n id: toEnglishSlug(file.name),\r\n name: file.name,\r\n type: isImageFile(file.type) ? 'image' : isPdfFile(file.type) ? 'pdf' : 'unknown',\r\n thumbnail: isPdfFile(file.type) ? '/images/pdf-default.webp' : URL.createObjectURL(file),\r\n file,\r\n ...options\r\n})\r\n\r\nexport const checkEqualQuality = (items1: IAttachItem[], items2: IAttachItem[]): boolean => {\r\n const quality = getAttachQuality(items1)\r\n const qualityCache = getAttachQuality(items2)\r\n return JSON.stringify(quality) !== JSON.stringify(qualityCache)\r\n}\r\n\r\n// Upload new items and return updated items with url, skip items if upload fails or returns empty\r\nexport const fetchUploadNewFiles = async (items: IAttachItem[], fetchUpload?: AttachUploadFunction): Promise<IAttachItem[]> => {\r\n if (!fetchUpload) return items\r\n\r\n const updated: IAttachItem[] = []\r\n for (const item of items) {\r\n if (item.status === 'new' && item.file) {\r\n try {\r\n const result = await fetchUpload(item.file)\r\n if (result && result.url) {\r\n updated.push({ ...item, url: result.url, thumbnail: result.thumbnail, status: 'old' })\r\n }\r\n // If result is empty or no url, skip this item\r\n } catch {\r\n // If upload fails, skip this item\r\n }\r\n } else {\r\n updated.push(item)\r\n }\r\n }\r\n return updated\r\n}\r\n"],"names":["allowImageTypes","allowPdfTypes","allowFileTypes","concat","isValidFileType","value","some","e","isImageFile","isPdfFile","mapItemConfigs","old","color","colors","grey","label","count","new","green","deleted","red","getAttachQuality","items","reduce","acc","item","status","toEnglishSlug","str","normalize","replace","trim","toLowerCase","Date","getTime","toString","fileToAttachItem","file","options","_objectSpread","id","name","type","thumbnail","URL","createObjectURL","checkEqualQuality","items1","items2","quality","qualityCache","JSON","stringify","fetchUploadNewFiles","_ref","_asyncToGenerator","_regenerator","m","_callee","fetchUpload","updated","_iterator","_step","result","_t2","w","_context","n","a","_createForOfIteratorHelper","p","s","done","v","url","push","f","_x","_x2","apply","this","arguments"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{inherits as e,createClass as t,objectSpread2 as a,classCallCheck as r,callSuper as n,defineProperty as i,asyncToGenerator as o,regenerator as s,toConsumableArray as l}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as c,jsx as d}from"react/jsx-runtime";import h,{Component as u}from"react";import{Typography as m,Stack as p,Tooltip as g,IconButton as f,Divider as v,Grid as C,CircularProgress as y}from"@mui/material";import D from"@mui/icons-material/Save";import S from"@mui/icons-material/Close";import b from"@mui/icons-material/Replay";import k from"@mui/icons-material/Square";import I from"@mui/icons-material/Remove";import w from"@mui/icons-material/AttachFile";import{attachModalClasses as N,AttachModalStyled as j}from"./styled.js";import{getAttachQuality as F,mapItemConfigs as L,checkEqualQuality as x,allowFileTypes as H,fetchUploadNewFiles as R,isValidFileType as A,fileToAttachItem as z}from"./helpers.js";var O=function(){function O(e){var t;return r(this,O),t=n(this,O,[e]),i(t,"onSaveHandler",o(s().m((function e(){var a;return s().w((function(e){for(;;)switch(e.n){case 0:if(t.props.onChange){e.n=1;break}return e.a(2);case 1:if(t.setState({isLoading:!0}),a=l(t.attachItems),!t.props.uploadFile){e.n=3;break}return e.n=2,R(a,t.props.uploadFile);case 2:a=e.v;case 3:t.setState({isLoading:!1}),t.props.onChange(a,{isSave:!0}),t.props.onClose&&t.props.onClose();case 4:return e.a(2)}}),e)})))),i(t,"onFileChangeHandler",(function(e){var a=e.filter((function(e){return A(e.type)}));if(!(a.length<1)){var r=a.map((function(e){return z(e,{status:"new"})})),n=[].concat(l(r),l(t.attachItems));t.setState({attachs:n})}})),i(t,"handleTriggerDeleteItemClick",(function(e){var r=t.attachItems.reduce((function(t,r){var n=a({},r);if(n.id===e.id){if("new"===n.status)return t;n.status="deleted"===n.status?"old":"deleted"}return t.push(n),t}),[]);t.setState({attachs:r})})),i(t,"fileInputRef",h.createRef()),i(t,"handleIconClick",(function(){var e;null===(e=t.fileInputRef.current)||void 0===e||e.click()})),i(t,"handleFileChange",(function(e){var a=e.target.files;a&&a.length>0&&t.onFileChangeHandler(Array.from(a))})),i(t,"dragCounter",0),i(t,"handleDragEnter",(function(){t.dragCounter++,t.setState({isDragging:!0})})),i(t,"handleDragLeave",(function(){t.dragCounter--,0===t.dragCounter&&t.setState({isDragging:!1})})),i(t,"handleDragOver",(function(e){e.preventDefault()})),i(t,"handleDrop",(function(e){if(e.preventDefault(),e.stopPropagation(),t.state.isDragging){t.setState({isDragging:!1});var a=Array.from(e.dataTransfer.files);a.length>0&&t.onFileChangeHandler(a)}})),t.state={attachs:l(e.value),isDragging:!1,isLoading:!1},t}return e(O,u),t(O,[{key:"attachItems",get:function(){return this.state.attachs}},{key:"attachItemConfigs",get:function(){var e=F(this.attachItems);return Object.keys(L).map((function(t){var r=a({},L[t]);return r.count=e[t],r}))}},{key:"render",value:function(){var e=this,t=this.state.isDragging,a=x(this.attachItems,this.props.value),r=[N.root];return t&&!this.state.isLoading&&r.push(N.dragging),this.state.isLoading&&r.push(N.loading),c(j,{className:r.join(" "),onDragEnter:this.handleDragEnter,onDragLeave:this.handleDragLeave,onDragOver:this.handleDragOver,onDrop:this.handleDrop,children:[c("div",{className:N.header,children:[c("div",{children:[d(m,{variant:"h6",noWrap:!0,children:"Attach File"}),d(m,{variant:"body2",noWrap:!0,color:"text.secondary",children:"Data will only be updated after you click the Save button"})]}),c(p,{direction:"row",spacing:1,children:[d("input",{ref:this.fileInputRef,type:"file",hidden:!0,multiple:!0,onChange:this.handleFileChange,accept:H.join(",")}),d(g,{title:"Add files",arrow:!0,children:d(f,{color:"primary",onClick:this.handleIconClick,children:d(w,{})})}),d(g,{title:a?"Save":"Unsaved changes",arrow:!0,children:d("span",{children:d(f,{color:"primary",onClick:this.onSaveHandler,disabled:!a,children:d(D,{})})})}),d(g,{title:"Close",arrow:!0,children:d(f,{color:"secondary",onClick:this.props.onClose,children:d(S,{})})})]})]}),d(v,{}),c("div",{className:N.content,children:[this.attachItems.length<1&&d(p,{className:N.emptyState,children:d(m,{variant:"body2",color:"text.secondary",children:"Drag and drop files here or click to browse"})}),d(C,{container:!0,spacing:1.5,children:this.attachItems.map((function(t,a){var r=[N.item];return"deleted"===t.status?r.push(N.itemDelete):"new"===t.status&&r.push(N.itemNew),d(C,{item:!0,xs:6,sm:4,md:3,lg:2,children:c("div",{className:r.join(" "),children:[c("div",{className:N.itemHeader,children:[d(m,{variant:"body1",noWrap:!0,children:t.name}),d(g,{title:"deleted"===t.status?"Restore":"Delete",arrow:!0,children:d(f,{size:"small",color:"deleted"===t.status?"primary":"secondary",onClick:function(){return e.handleTriggerDeleteItemClick(t)},children:"deleted"===t.status?d(b,{fontSize:"small"}):d(I,{fontSize:"small"})})})]}),d("div",{className:N.itemContent,children:d("img",{src:t.thumbnail||t.url,alt:t.name})})]})},t.id+a.toString())}))})]}),d(v,{}),d("div",{className:N.footer,children:this.attachItemConfigs.map((function(e){var t=e.count||0;return c(p,{direction:"row",gap:.5,alignItems:"center",children:[d(k,{fontSize:"small",sx:{color:e.color}}),c(m,{variant:"body2",children:[e.label," (",t,")s"]})]},e.label)}))}),d("div",{className:N.dragPanel,children:d("div",{children:d(m,{variant:"body2",color:"primary",sx:{fontWeight:600},children:"Drop files here to upload"})})}),d("div",{className:N.overlay,children:d(y,{size:36})})]})}}])}();export{O as default};
2
- //# sourceMappingURL=modal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"modal.js","sources":["../../../src/lab/attach-widget/modal.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { CircularProgress, Divider, Grid, IconButton, Stack, Tooltip, Typography } from '@mui/material'\r\nimport SaveIcon from '@mui/icons-material/Save'\r\nimport CloseIcon from '@mui/icons-material/Close'\r\nimport ReplayIcon from '@mui/icons-material/Replay'\r\nimport SquareIcon from '@mui/icons-material/Square'\r\nimport RemoveIcon from '@mui/icons-material/Remove'\r\nimport AttachFileIcon from '@mui/icons-material/AttachFile'\r\nimport { attachModalClasses, AttachModalStyled } from './styled'\r\nimport { allowFileTypes, checkEqualQuality, fetchUploadNewFiles } from './helpers'\r\nimport { fileToAttachItem, getAttachQuality, isValidFileType, mapItemConfigs } from './helpers'\r\nimport { AttachChangeFunction, AttachUploadFunction, IAttachItem, IAttachItemConfig, IAttachItemStatus } from './types'\r\n\r\ninterface IAttachModalProps {\r\n value: IAttachItem[]\r\n onChange?: AttachChangeFunction\r\n uploadFile?: AttachUploadFunction\r\n onClose?: () => void\r\n}\r\n\r\ninterface IAttachModalState {\r\n attachs: IAttachItem[]\r\n isDragging: boolean\r\n isLoading: boolean\r\n}\r\n\r\nclass AttachModal extends Component<IAttachModalProps, IAttachModalState> {\r\n constructor(props: IAttachModalProps) {\r\n super(props)\r\n this.state = { attachs: [...props.value], isDragging: false, isLoading: false }\r\n }\r\n\r\n get attachItems() {\r\n return this.state.attachs\r\n }\r\n\r\n get attachItemConfigs(): IAttachItemConfig[] {\r\n const temp = getAttachQuality(this.attachItems)\r\n const list = Object.keys(mapItemConfigs) as IAttachItemStatus[]\r\n return list.map((key) => {\r\n const config = { ...mapItemConfigs[key] }\r\n config.count = temp[key]\r\n return config\r\n })\r\n }\r\n\r\n render() {\r\n const { isDragging } = this.state\r\n const isSave = checkEqualQuality(this.attachItems, this.props.value)\r\n const rootClasses = [attachModalClasses.root]\r\n if (isDragging && !this.state.isLoading) rootClasses.push(attachModalClasses.dragging)\r\n if (this.state.isLoading) rootClasses.push(attachModalClasses.loading)\r\n\r\n return (\r\n <AttachModalStyled\r\n className={rootClasses.join(' ')}\r\n onDragEnter={this.handleDragEnter}\r\n onDragLeave={this.handleDragLeave}\r\n onDragOver={this.handleDragOver}\r\n onDrop={this.handleDrop}\r\n >\r\n <div className={attachModalClasses.header}>\r\n <div>\r\n <Typography variant='h6' noWrap>\r\n Attach File\r\n </Typography>\r\n <Typography variant='body2' noWrap color='text.secondary'>\r\n Data will only be updated after you click the Save button\r\n </Typography>\r\n </div>\r\n <Stack direction='row' spacing={1}>\r\n <input ref={this.fileInputRef} type='file' hidden multiple onChange={this.handleFileChange} accept={allowFileTypes.join(',')} />\r\n <Tooltip title='Add files' arrow>\r\n <IconButton color='primary' onClick={this.handleIconClick}>\r\n <AttachFileIcon />\r\n </IconButton>\r\n </Tooltip>\r\n <Tooltip title={isSave ? 'Save' : 'Unsaved changes'} arrow>\r\n <span>\r\n <IconButton color='primary' onClick={this.onSaveHandler} disabled={!isSave}>\r\n <SaveIcon />\r\n </IconButton>\r\n </span>\r\n </Tooltip>\r\n <Tooltip title='Close' arrow>\r\n <IconButton color='secondary' onClick={this.props.onClose}>\r\n <CloseIcon />\r\n </IconButton>\r\n </Tooltip>\r\n </Stack>\r\n </div>\r\n <Divider />\r\n <div className={attachModalClasses.content}>\r\n {this.attachItems.length < 1 && (\r\n <Stack className={attachModalClasses.emptyState}>\r\n <Typography variant='body2' color='text.secondary'>\r\n Drag and drop files here or click to browse\r\n </Typography>\r\n </Stack>\r\n )}\r\n <Grid container spacing={1.5}>\r\n {this.attachItems.map((x, i) => {\r\n const itemClasses = [attachModalClasses.item]\r\n\r\n if (x.status === 'deleted') itemClasses.push(attachModalClasses.itemDelete)\r\n else if (x.status === 'new') itemClasses.push(attachModalClasses.itemNew)\r\n\r\n return (\r\n <Grid key={x.id + i.toString()} item xs={6} sm={4} md={3} lg={2}>\r\n <div className={itemClasses.join(' ')}>\r\n <div className={attachModalClasses.itemHeader}>\r\n <Typography variant='body1' noWrap>\r\n {x.name}\r\n </Typography>\r\n <Tooltip title={x.status === 'deleted' ? 'Restore' : 'Delete'} arrow>\r\n <IconButton\r\n size='small'\r\n color={x.status === 'deleted' ? 'primary' : 'secondary'}\r\n onClick={() => this.handleTriggerDeleteItemClick(x)}\r\n >\r\n {x.status === 'deleted' ? <ReplayIcon fontSize='small' /> : <RemoveIcon fontSize='small' />}\r\n </IconButton>\r\n </Tooltip>\r\n </div>\r\n <div className={attachModalClasses.itemContent}>\r\n <img src={x.thumbnail || x.url} alt={x.name} />\r\n </div>\r\n </div>\r\n </Grid>\r\n )\r\n })}\r\n </Grid>\r\n </div>\r\n <Divider />\r\n <div className={attachModalClasses.footer}>\r\n {this.attachItemConfigs.map((config) => {\r\n const count = config.count || 0\r\n return (\r\n <Stack key={config.label} direction='row' gap={0.5} alignItems='center'>\r\n <SquareIcon fontSize='small' sx={{ color: config.color }} />\r\n <Typography variant='body2'>\r\n {config.label} ({count})s\r\n </Typography>\r\n </Stack>\r\n )\r\n })}\r\n </div>\r\n <div className={attachModalClasses.dragPanel}>\r\n <div>\r\n <Typography variant='body2' color='primary' sx={{ fontWeight: 600 }}>\r\n Drop files here to upload\r\n </Typography>\r\n </div>\r\n </div>\r\n <div className={attachModalClasses.overlay}>\r\n <CircularProgress size={36} />\r\n </div>\r\n </AttachModalStyled>\r\n )\r\n }\r\n\r\n onSaveHandler = async () => {\r\n if (!this.props.onChange) return\r\n\r\n this.setState({ isLoading: true })\r\n let updatedItems = [...this.attachItems]\r\n\r\n if (this.props.uploadFile) {\r\n updatedItems = await fetchUploadNewFiles(updatedItems, this.props.uploadFile)\r\n }\r\n\r\n this.setState({ isLoading: false })\r\n this.props.onChange(updatedItems, { isSave: true })\r\n if (this.props.onClose) this.props.onClose()\r\n }\r\n\r\n onFileChangeHandler = (files: File[]) => {\r\n const validFiles = files.filter((f) => isValidFileType(f.type))\r\n if (validFiles.length < 1) return\r\n const items = validFiles.map((x) => fileToAttachItem(x, { status: 'new' }))\r\n const newItems = [...items, ...this.attachItems]\r\n this.setState({ attachs: newItems }) // Update state directly to avoid memory leaks\r\n }\r\n\r\n handleTriggerDeleteItemClick = (item: IAttachItem) => {\r\n const updatedItems = this.attachItems.reduce<IAttachItem[]>((a, b) => {\r\n const obj = { ...b }\r\n if (obj.id === item.id) {\r\n if (obj.status === 'new') return a // Do not delete new item, they are not saved yet\r\n obj.status = obj.status === 'deleted' ? 'old' : 'deleted'\r\n }\r\n a.push(obj)\r\n return a\r\n }, [])\r\n this.setState({ attachs: updatedItems }) // Update state directly to avoid memory leaks\r\n }\r\n\r\n fileInputRef = React.createRef<HTMLInputElement>()\r\n handleIconClick = () => {\r\n this.fileInputRef.current?.click()\r\n }\r\n\r\n handleFileChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n const files = e.target.files\r\n if (files && files.length > 0) {\r\n this.onFileChangeHandler(Array.from(files))\r\n }\r\n }\r\n\r\n dragCounter = 0\r\n handleDragEnter = () => {\r\n this.dragCounter++\r\n this.setState({ isDragging: true })\r\n }\r\n\r\n handleDragLeave = () => {\r\n this.dragCounter--\r\n if (this.dragCounter === 0) {\r\n this.setState({ isDragging: false })\r\n }\r\n }\r\n\r\n handleDragOver = (e: React.DragEvent) => {\r\n e.preventDefault()\r\n }\r\n\r\n handleDrop = (e: React.DragEvent) => {\r\n e.preventDefault()\r\n e.stopPropagation()\r\n if (!this.state.isDragging) return // If not dragging, do nothing\r\n this.setState({ isDragging: false })\r\n const files = Array.from(e.dataTransfer.files)\r\n if (files.length > 0) {\r\n this.onFileChangeHandler(files)\r\n }\r\n }\r\n}\r\nexport default AttachModal\r\n"],"names":["AttachModal","props","_this","_classCallCheck","_callSuper","_defineProperty","_asyncToGenerator","_regenerator","m","_callee","updatedItems","w","_context","n","onChange","a","setState","isLoading","_toConsumableArray","attachItems","uploadFile","fetchUploadNewFiles","v","isSave","onClose","files","validFiles","filter","f","isValidFileType","type","length","items","map","x","fileToAttachItem","status","newItems","concat","attachs","item","reduce","b","obj","_objectSpread","id","push","React","createRef","_this$fileInputRef$cu","fileInputRef","current","click","e","target","onFileChangeHandler","Array","from","dragCounter","isDragging","preventDefault","stopPropagation","state","dataTransfer","value","_inherits","Component","_createClass","key","get","this","temp","getAttachQuality","Object","keys","mapItemConfigs","config","count","_this2","checkEqualQuality","rootClasses","attachModalClasses","root","dragging","loading","_jsxs","AttachModalStyled","className","join","onDragEnter","handleDragEnter","onDragLeave","handleDragLeave","onDragOver","handleDragOver","onDrop","handleDrop","children","header","_jsx","Typography","variant","noWrap","color","Stack","direction","spacing","ref","hidden","multiple","handleFileChange","accept","allowFileTypes","Tooltip","title","arrow","IconButton","onClick","handleIconClick","AttachFileIcon","onSaveHandler","disabled","SaveIcon","CloseIcon","Divider","content","emptyState","Grid","container","i","itemClasses","itemDelete","itemNew","xs","sm","md","lg","itemHeader","name","size","handleTriggerDeleteItemClick","ReplayIcon","fontSize","RemoveIcon","itemContent","src","thumbnail","url","alt","toString","footer","attachItemConfigs","gap","alignItems","SquareIcon","sx","label","dragPanel","fontWeight","overlay","CircularProgress"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{defineProperty as t}from"../../_virtual/_rollupPluginBabelHelpers.js";import{styled as e,alpha as i,Box as o}from"@mui/material";import{mapItemConfigs as a}from"./helpers.js";var r={root:"AttachWidget-root",content:"AttachWidget-content",dragging:"AttachWidget-dragging",dragPanel:"AttachWidget-dragPanel",inputButton:"AttachWidget-inputButton",moreButton:"AttachWidget-moreButton",list:"AttachWidget-list",listItem:"AttachWidget-listItem",overlay:"AttachWidget-overlay",loading:"AttachWidget-loading"},n=function(t,e){return"".concat((null==e?void 0:e.prefix)||"",".").concat(r[t]).concat((null==e?void 0:e.suffix)||"")},d=e("div")((function(e){var o,a=e.theme;return t(t(t(t(t(t(t(t(t(t(o={},n("root",{prefix:"&"}),{position:"relative",width:"100%",height:"100%",backgroundColor:a.palette.common.white,borderRadius:a.shape.borderRadius}),n("content"),{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"flex-start",padding:a.spacing(1)}),n("list"),{height:"100%",flex:1,display:"flex",alignItems:"center",gap:a.spacing(.75),overflow:"hidden",minWidth:0,position:"relative","&::after":{content:'""',height:"100%",width:"30px",position:"absolute",right:0,top:0,zIndex:1,background:"linear-gradient(to right, transparent, #ffffffb0, #ffffff)"}}),n("listItem"),{width:"var(--attach-widget-list-item-width, 42px)",padding:0,aspectRatio:"5 / 7",borderRadius:a.shape.borderRadius,border:"1px solid "+a.palette.divider,boxShadow:"rgba(99, 99, 99, 0.2) 0px 2px 8px 0px",img:{width:"100%",height:"100%",objectFit:"cover"}}),n("inputButton"),{width:"var(--attach-widget-list-item-width, 42px)",aspectRatio:"5 / 7",padding:0,cursor:"pointer",color:a.palette.primary.main,borderRadius:a.shape.borderRadius,border:"1px dashed "+a.palette.primary.main,marginRight:a.spacing(1),"&:hover":{color:a.palette.primary.dark}}),n("moreButton"),{opacity:.5,transition:"opacity 0.3s ease-in-out"}),n("dragPanel"),{position:"absolute",top:0,left:0,right:0,bottom:0,padding:a.spacing(.75),backgroundColor:a.palette.common.white,pointerEvents:"none",borderRadius:a.shape.borderRadius,display:"flex",opacity:0,zIndex:1,transition:"opacity 0.3s ease-in-out","& > div":{flex:1,display:"flex",alignItems:"center",justifyContent:"center",border:"2px dashed "+a.palette.primary.main,borderRadius:a.shape.borderRadius}}),n("overlay"),{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:i(a.palette.common.white,.5),zIndex:1,opacity:0,transition:"opacity 0.3s ease-in-out",visibility:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}),n("loading",{prefix:"&"}),t({},n("overlay"),{opacity:1,visibility:"visible"})),n("dragging",{prefix:"&"}),t(t({},n("dragPanel"),{opacity:1}),n("content"),{pointerEvents:"none"})),t(o,n("root",{prefix:"&",suffix:":hover"}),t({},n("moreButton"),{opacity:1}))})),l={root:"AttachModal-root",header:"AttachModal-header",footer:"AttachModal-footer",loading:"AttachModal-loading",overlay:"AttachModal-overlay",dragging:"AttachModal-dragging",dragPanel:"AttachModal-dragPanel",content:"AttachModal-content",emptyState:"AttachModal-emptyState",closeButton:"AttachModal-closeButton",item:"AttachModal-item",itemHeader:"AttachModal-itemHeader",itemContent:"AttachModal-itemContent",itemNew:"AttachModal-itemNew",itemDelete:"AttachModal-itemDelete"},p=function(t,e){return"".concat((null==e?void 0:e.prefix)||"",".").concat(l[t]).concat((null==e?void 0:e.suffix)||"")},s=e(o)((function(e){var o,r,n,d,l=e.theme;return t(t(t(t(t(t(t(t(t(t(d={},p("root",{prefix:"&"}),{backgroundColor:l.palette.background.paper,borderRadius:l.shape.borderRadius,boxShadow:l.shadows[5],width:"calc(100vw - 48px)",maxHeight:"calc(100vh - 48px)",maxWidth:l.breakpoints.values.md,position:"relative",display:"flex",flexDirection:"column"}),p("header"),{display:"flex",justifyContent:"space-between",alignItems:"center",padding:l.spacing(1,2)}),p("footer"),{padding:l.spacing(1,2),display:"flex",alignItems:"center",gap:l.spacing(3)}),p("content"),{minHeight:"200px",padding:l.spacing(1),overflowY:"auto",height:"100%"}),p("emptyState"),{display:"flex",alignItems:"center",justifyContent:"center",height:"168px"}),p("itemContent"),{width:"100%",height:"100%",padding:0,borderRadius:l.shape.borderRadius,cursor:"pointer",backgroundColor:l.palette.background.paper,img:{width:"100%",height:"100%",objectFit:"cover"}}),p("itemHeader"),{marginTop:l.spacing(-.5),padding:l.spacing(.5,0),display:"flex",alignItems:"center",justifyContent:"space-between",".MuiTypography-root":{color:l.palette.common.white},".MuiIconButton-root":{backgroundColor:i(l.palette.common.white,.5),".MuiSvgIcon-root":{fontSize:"1rem"},"&:hover":{backgroundColor:l.palette.common.white}}}),p("item"),t(t({width:"var(--attach-modal-list-item-width, 100%)",aspectRatio:"5 / 7",display:"inline-block",position:"relative",backgroundColor:null===(o=a.old)||void 0===o?void 0:o.color,borderRadius:l.shape.borderRadius,padding:l.spacing(.5),boxShadow:"rgba(99, 99, 99, 0.2) 0px 2px 8px 0px"},p("itemNew",{prefix:"&"}),{backgroundColor:null===(r=a.new)||void 0===r?void 0:r.color}),p("itemDelete",{prefix:"&"}),{backgroundColor:null===(n=a.deleted)||void 0===n?void 0:n.color})),p("dragPanel"),{position:"absolute",borderRadius:l.shape.borderRadius,cursor:"pointer","& img":{width:"100%",height:"auto",borderRadius:4}}),p("dragPanel"),{position:"absolute",top:0,left:0,right:0,bottom:0,padding:l.spacing(.75),backgroundColor:l.palette.common.white,pointerEvents:"none",borderRadius:l.shape.borderRadius,display:"flex",opacity:0,zIndex:1,transition:"opacity 0.3s ease-in-out","& > div":{flex:1,display:"flex",alignItems:"center",justifyContent:"center",border:"2px dashed "+l.palette.primary.main,borderRadius:l.shape.borderRadius}}),t(t(t(d,p("dragging",{prefix:"&"}),t(t({},p("dragPanel"),{opacity:1}),p("content"),{pointerEvents:"none"})),p("overlay"),{position:"absolute",top:0,left:0,right:0,bottom:0,backgroundColor:i(l.palette.common.white,.5),zIndex:1,opacity:0,transition:"opacity 0.3s ease-in-out",visibility:"hidden",display:"flex",alignItems:"center",justifyContent:"center"}),p("loading",{prefix:"&"}),t({},p("overlay"),{opacity:1,visibility:"visible"}))}));export{s as AttachModalStyled,d as AttachWidgetStyled,l as attachModalClasses,r as attachWidgetClasses};
2
- //# sourceMappingURL=styled.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"styled.js","sources":["../../../src/lab/attach-widget/styled.tsx"],"sourcesContent":["import { alpha, Box, styled } from '@mui/material'\r\nimport { mapItemConfigs } from './helpers'\r\n\r\n//#region Attach Widget\r\nexport const attachWidgetClasses = {\r\n root: 'AttachWidget-root',\r\n content: 'AttachWidget-content',\r\n dragging: 'AttachWidget-dragging',\r\n dragPanel: 'AttachWidget-dragPanel',\r\n inputButton: 'AttachWidget-inputButton',\r\n moreButton: 'AttachWidget-moreButton',\r\n list: 'AttachWidget-list',\r\n listItem: 'AttachWidget-listItem',\r\n overlay: 'AttachWidget-overlay',\r\n loading: 'AttachWidget-loading'\r\n}\r\n\r\nconst getAttachWidgetClasses = (key: keyof typeof attachWidgetClasses, options?: { prefix?: string; suffix?: string }) => {\r\n return `${options?.prefix || ''}.${attachWidgetClasses[key]}${options?.suffix || ''}`\r\n}\r\n\r\nexport const AttachWidgetStyled = styled('div')(({ theme }) => ({\r\n [getAttachWidgetClasses('root', { prefix: '&' })]: {\r\n position: 'relative',\r\n width: '100%',\r\n height: '100%',\r\n backgroundColor: theme.palette.common.white,\r\n borderRadius: theme.shape.borderRadius\r\n },\r\n [getAttachWidgetClasses('content')]: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'flex-start',\r\n padding: theme.spacing(1)\r\n },\r\n [getAttachWidgetClasses('list')]: {\r\n height: '100%',\r\n flex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: theme.spacing(0.75),\r\n overflow: 'hidden',\r\n minWidth: 0,\r\n position: 'relative',\r\n '&::after': {\r\n content: '\"\"',\r\n height: '100%',\r\n width: '30px',\r\n position: 'absolute',\r\n right: 0,\r\n top: 0,\r\n zIndex: 1,\r\n background: 'linear-gradient(to right, transparent, #ffffffb0, #ffffff)'\r\n }\r\n },\r\n [getAttachWidgetClasses('listItem')]: {\r\n width: 'var(--attach-widget-list-item-width, 42px)',\r\n padding: 0,\r\n aspectRatio: '5 / 7',\r\n borderRadius: theme.shape.borderRadius,\r\n border: '1px solid ' + theme.palette.divider,\r\n boxShadow: 'rgba(99, 99, 99, 0.2) 0px 2px 8px 0px',\r\n img: {\r\n width: '100%',\r\n height: '100%',\r\n objectFit: 'cover'\r\n }\r\n },\r\n [getAttachWidgetClasses('inputButton')]: {\r\n width: 'var(--attach-widget-list-item-width, 42px)',\r\n aspectRatio: '5 / 7',\r\n padding: 0,\r\n cursor: 'pointer',\r\n color: theme.palette.primary.main,\r\n borderRadius: theme.shape.borderRadius,\r\n border: '1px dashed ' + theme.palette.primary.main,\r\n marginRight: theme.spacing(1),\r\n '&:hover': {\r\n color: theme.palette.primary.dark\r\n }\r\n },\r\n [getAttachWidgetClasses('moreButton')]: {\r\n opacity: 0.5,\r\n transition: 'opacity 0.3s ease-in-out'\r\n },\r\n [getAttachWidgetClasses('dragPanel')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n padding: theme.spacing(0.75),\r\n backgroundColor: theme.palette.common.white,\r\n pointerEvents: 'none',\r\n borderRadius: theme.shape.borderRadius,\r\n display: 'flex',\r\n opacity: 0,\r\n zIndex: 1,\r\n transition: 'opacity 0.3s ease-in-out',\r\n '& > div': {\r\n flex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n border: '2px dashed ' + theme.palette.primary.main,\r\n borderRadius: theme.shape.borderRadius\r\n }\r\n },\r\n [getAttachWidgetClasses('overlay')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n backgroundColor: alpha(theme.palette.common.white, 0.5),\r\n zIndex: 1,\r\n opacity: 0,\r\n transition: 'opacity 0.3s ease-in-out',\r\n visibility: 'hidden',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [getAttachWidgetClasses('loading', { prefix: '&' })]: {\r\n [getAttachWidgetClasses('overlay')]: {\r\n opacity: 1,\r\n visibility: 'visible'\r\n }\r\n },\r\n [getAttachWidgetClasses('dragging', { prefix: '&' })]: {\r\n [getAttachWidgetClasses('dragPanel')]: {\r\n opacity: 1\r\n },\r\n [getAttachWidgetClasses('content')]: {\r\n pointerEvents: 'none'\r\n }\r\n },\r\n [getAttachWidgetClasses('root', { prefix: '&', suffix: ':hover' })]: {\r\n [getAttachWidgetClasses('moreButton')]: {\r\n opacity: 1\r\n }\r\n }\r\n}))\r\n//#endregion\r\n\r\n//#region Attach Modal\r\nexport const attachModalClasses = {\r\n root: 'AttachModal-root',\r\n header: 'AttachModal-header',\r\n footer: 'AttachModal-footer',\r\n loading: 'AttachModal-loading',\r\n overlay: 'AttachModal-overlay',\r\n dragging: 'AttachModal-dragging',\r\n dragPanel: 'AttachModal-dragPanel',\r\n content: 'AttachModal-content',\r\n emptyState: 'AttachModal-emptyState',\r\n closeButton: 'AttachModal-closeButton',\r\n item: 'AttachModal-item',\r\n itemHeader: 'AttachModal-itemHeader',\r\n itemContent: 'AttachModal-itemContent',\r\n itemNew: 'AttachModal-itemNew',\r\n itemDelete: 'AttachModal-itemDelete'\r\n}\r\n\r\nconst getAttachModalClasses = (key: keyof typeof attachModalClasses, options?: { prefix?: string; suffix?: string }) => {\r\n return `${options?.prefix || ''}.${attachModalClasses[key]}${options?.suffix || ''}`\r\n}\r\n\r\nexport const AttachModalStyled = styled(Box)(({ theme }) => ({\r\n [getAttachModalClasses('root', { prefix: '&' })]: {\r\n backgroundColor: theme.palette.background.paper,\r\n borderRadius: theme.shape.borderRadius,\r\n boxShadow: theme.shadows[5],\r\n width: 'calc(100vw - 48px)',\r\n maxHeight: 'calc(100vh - 48px)',\r\n maxWidth: theme.breakpoints.values.md,\r\n position: 'relative',\r\n display: 'flex',\r\n flexDirection: 'column'\r\n },\r\n [getAttachModalClasses('header')]: {\r\n display: 'flex',\r\n justifyContent: 'space-between',\r\n alignItems: 'center',\r\n padding: theme.spacing(1, 2)\r\n },\r\n [getAttachModalClasses('footer')]: {\r\n padding: theme.spacing(1, 2),\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: theme.spacing(3)\r\n },\r\n [getAttachModalClasses('content')]: {\r\n minHeight: '200px',\r\n padding: theme.spacing(1),\r\n overflowY: 'auto',\r\n height: '100%'\r\n },\r\n [getAttachModalClasses('emptyState')]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n height: '168px'\r\n },\r\n [getAttachModalClasses('itemContent')]: {\r\n width: '100%',\r\n height: '100%',\r\n padding: 0,\r\n borderRadius: theme.shape.borderRadius,\r\n cursor: 'pointer',\r\n backgroundColor: theme.palette.background.paper,\r\n img: {\r\n width: '100%',\r\n height: '100%',\r\n objectFit: 'cover'\r\n }\r\n },\r\n [getAttachModalClasses('itemHeader')]: {\r\n marginTop: theme.spacing(-0.5),\r\n padding: theme.spacing(0.5, 0),\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n '.MuiTypography-root': {\r\n color: theme.palette.common.white\r\n },\r\n '.MuiIconButton-root': {\r\n backgroundColor: alpha(theme.palette.common.white, 0.5),\r\n '.MuiSvgIcon-root': {\r\n fontSize: '1rem'\r\n },\r\n '&:hover': {\r\n backgroundColor: theme.palette.common.white\r\n }\r\n }\r\n },\r\n [getAttachModalClasses('item')]: {\r\n width: 'var(--attach-modal-list-item-width, 100%)',\r\n aspectRatio: '5 / 7',\r\n display: 'inline-block',\r\n position: 'relative',\r\n backgroundColor: mapItemConfigs.old?.color,\r\n borderRadius: theme.shape.borderRadius,\r\n padding: theme.spacing(0.5),\r\n boxShadow: 'rgba(99, 99, 99, 0.2) 0px 2px 8px 0px',\r\n [getAttachModalClasses('itemNew', { prefix: '&' })]: {\r\n backgroundColor: mapItemConfigs.new?.color\r\n },\r\n [getAttachModalClasses('itemDelete', { prefix: '&' })]: {\r\n backgroundColor: mapItemConfigs.deleted?.color\r\n }\r\n },\r\n [getAttachModalClasses('dragPanel')]: {\r\n position: 'absolute',\r\n borderRadius: theme.shape.borderRadius,\r\n cursor: 'pointer',\r\n '& img': {\r\n width: '100%',\r\n height: 'auto',\r\n borderRadius: 4\r\n }\r\n },\r\n [getAttachModalClasses('dragPanel')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n padding: theme.spacing(0.75),\r\n backgroundColor: theme.palette.common.white,\r\n pointerEvents: 'none',\r\n borderRadius: theme.shape.borderRadius,\r\n display: 'flex',\r\n opacity: 0,\r\n zIndex: 1,\r\n transition: 'opacity 0.3s ease-in-out',\r\n '& > div': {\r\n flex: 1,\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n border: '2px dashed ' + theme.palette.primary.main,\r\n borderRadius: theme.shape.borderRadius\r\n }\r\n },\r\n [getAttachModalClasses('dragging', { prefix: '&' })]: {\r\n [getAttachModalClasses('dragPanel')]: {\r\n opacity: 1\r\n },\r\n [getAttachModalClasses('content')]: {\r\n pointerEvents: 'none'\r\n }\r\n },\r\n [getAttachModalClasses('overlay')]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n backgroundColor: alpha(theme.palette.common.white, 0.5),\r\n zIndex: 1,\r\n opacity: 0,\r\n transition: 'opacity 0.3s ease-in-out',\r\n visibility: 'hidden',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [getAttachModalClasses('loading', { prefix: '&' })]: {\r\n [getAttachModalClasses('overlay')]: {\r\n opacity: 1,\r\n visibility: 'visible'\r\n }\r\n }\r\n}))\r\n//#endregion\r\n"],"names":["attachWidgetClasses","root","content","dragging","dragPanel","inputButton","moreButton","list","listItem","overlay","loading","getAttachWidgetClasses","key","options","concat","prefix","suffix","AttachWidgetStyled","styled","_ref","_ref2","theme","_defineProperty","position","width","height","backgroundColor","palette","common","white","borderRadius","shape","display","alignItems","justifyContent","padding","spacing","flex","gap","overflow","minWidth","right","top","zIndex","background","aspectRatio","border","divider","boxShadow","img","objectFit","cursor","color","primary","main","marginRight","dark","opacity","transition","left","bottom","pointerEvents","alpha","visibility","attachModalClasses","header","footer","emptyState","closeButton","item","itemHeader","itemContent","itemNew","itemDelete","getAttachModalClasses","AttachModalStyled","Box","_ref3","_mapItemConfigs$old","_mapItemConfigs$new","_mapItemConfigs$delet","_ref4","paper","shadows","maxHeight","maxWidth","breakpoints","values","md","flexDirection","minHeight","overflowY","marginTop","fontSize","mapItemConfigs","old","deleted"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{inherits as e,createClass as r,classCallCheck as n,callSuper as a,defineProperty as t,asyncToGenerator as i,regenerator as o,toConsumableArray as l}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsx as s,jsxs as c}from"react/jsx-runtime";import{Component as u,createRef as d}from"react";import{IconButton as h,Typography as p,CircularProgress as g,Tooltip as f}from"@mui/material";import{GlobalModal as m,mapGlobalModalContext as v}from"../../api-context/global-modal.js";import C from"@mui/icons-material/AttachFile";import D from"@mui/icons-material/OpenInFull";import{attachWidgetClasses as y,AttachWidgetStyled as k}from"./styled.js";import{allowFileTypes as b,fileToAttachItem as I,fetchUploadNewFiles as F,isValidFileType as N}from"./helpers.js";import j from"./modal.js";var x=function(){function x(e){var r;return n(this,x),r=a(this,x,[e]),t(r,"onChangeHandler",function(){var e=i(o().m((function e(n){var a,t,i;return o().w((function(e){for(;;)switch(e.n){case 0:if(a=n.filter((function(e){return N(e.type)})),r.props.onChange&&!(a.length<1)){e.n=1;break}return e.a(2);case 1:if(r.setState({isLoading:!0}),t=a.map((function(e){return I(e,{status:"new"})})),i=[].concat(l(t),l(r.attachItems)),!r.props.uploadFile){e.n=3;break}return e.n=2,F(i,r.props.uploadFile);case 2:i=e.v;case 3:r.setState({isLoading:!1}),r.props.onChange(i,{isSave:!0});case 4:return e.a(2)}}),e)})));return function(r){return e.apply(this,arguments)}}()),t(r,"fileInputRef",d()),t(r,"handleIconClick",(function(){var e;null===(e=r.fileInputRef.current)||void 0===e||e.click()})),t(r,"handleFileChange",(function(e){var n=e.target.files;n&&n.length>0&&r.onChangeHandler(Array.from(n))})),t(r,"dragCounter",0),t(r,"handleDragEnter",(function(){r.dragCounter++,r.setState({isDragging:!0})})),t(r,"handleDragLeave",(function(){r.dragCounter--,0===r.dragCounter&&r.setState({isDragging:!1})})),t(r,"handleDragOver",(function(e){e.preventDefault()})),t(r,"handleDrop",(function(e){if(e.preventDefault(),e.stopPropagation(),r.state.isDragging){r.setState({isDragging:!1});var n=Array.from(e.dataTransfer.files);r.onChangeHandler(n)}})),r.state={isDragging:!1,isLoading:!1},r}return e(x,u),r(x,[{key:"attachItems",get:function(){return this.props.value}},{key:"render",value:function(){var e=this.state,r=e.isDragging,n=e.isLoading,a=[y.root];r&&!n&&a.push(y.dragging),n&&a.push(y.loading);var t=this.attachItems.slice(0,(this.props.maxDisplayFiles||5)+1);return s(m,{children:c(k,{className:a.join(" "),onDragEnter:this.handleDragEnter,onDragLeave:this.handleDragLeave,onDragOver:this.handleDragOver,onDrop:this.handleDrop,children:[c("div",{className:y.content,children:[s("input",{ref:this.fileInputRef,type:"file",hidden:!0,multiple:!0,onChange:this.handleFileChange,accept:b.join(",")}),s(h,{color:"primary",className:y.inputButton,onClick:this.handleIconClick,children:s(C,{})}),c("div",{className:y.list,children:[t.length<1&&s(p,{variant:"body2",color:"text.secondary",sx:{paddingRight:3},children:"No files, drag and drop here"}),t.map((function(e,r){return s(h,{component:"a",href:e.url,target:"_blank",className:y.listItem,children:s("img",{src:e.thumbnail||e.url,alt:e.name})},r)}))]}),this.renderMoreButton()]}),s("div",{className:y.dragPanel,children:s("div",{children:s(p,{variant:"body2",color:"primary",sx:{fontWeight:600},children:"Drop files here to upload"})})}),s("div",{className:y.overlay,children:s(g,{size:24})})]})})}},{key:"renderMoreButton",value:function(){var e=this;return v((function(r){var n=e.props,a=n.value,t=n.onChange;return s(f,{title:"More details",placement:"top",arrow:!0,children:s(h,{className:y.moreButton,onClick:function(){r.show({backdropActivated:!0,renderContent:function(){return s(j,{value:a,onChange:t,uploadFile:e.props.uploadFile,onClose:r.close})}})},children:s(D,{})})})}))}}])}();export{x as AttachWidget,x as default};
2
- //# sourceMappingURL=widget.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"widget.js","sources":["../../../src/lab/attach-widget/widget.tsx"],"sourcesContent":["import { Component, createRef } from 'react'\r\nimport { CircularProgress, IconButton, Tooltip, Typography } from '@mui/material'\r\nimport type { ChangeEvent, DragEvent } from 'react'\r\nimport { GlobalModal, mapGlobalModalContext } from '../../api-context/global-modal'\r\nimport AttachFileIcon from '@mui/icons-material/AttachFile'\r\nimport OpenInFullIcon from '@mui/icons-material/OpenInFull'\r\nimport { attachWidgetClasses, AttachWidgetStyled } from './styled'\r\nimport { allowFileTypes, fetchUploadNewFiles, fileToAttachItem, isValidFileType } from './helpers'\r\nimport type { AttachChangeFunction, AttachUploadFunction, IAttachItem } from './types'\r\nimport AttachModal from './modal'\r\n\r\nexport interface IAttachWidgetProps {\r\n value: IAttachItem[]\r\n onChange?: AttachChangeFunction\r\n uploadFile?: AttachUploadFunction\r\n maxDisplayFiles?: number\r\n}\r\n\r\nexport interface IAttachWidgetState {\r\n isDragging: boolean\r\n isLoading: boolean\r\n}\r\n\r\nexport class AttachWidget extends Component<IAttachWidgetProps, IAttachWidgetState> {\r\n constructor(props: IAttachWidgetProps) {\r\n super(props)\r\n this.state = { isDragging: false, isLoading: false }\r\n }\r\n\r\n get attachItems() {\r\n return this.props.value\r\n }\r\n\r\n render() {\r\n const { isDragging, isLoading } = this.state\r\n const rootClasses = [attachWidgetClasses.root]\r\n if (isDragging && !isLoading) rootClasses.push(attachWidgetClasses.dragging)\r\n if (isLoading) rootClasses.push(attachWidgetClasses.loading)\r\n const list = this.attachItems.slice(0, (this.props.maxDisplayFiles || 5) + 1)\r\n return (\r\n <GlobalModal>\r\n <AttachWidgetStyled\r\n className={rootClasses.join(' ')}\r\n onDragEnter={this.handleDragEnter}\r\n onDragLeave={this.handleDragLeave}\r\n onDragOver={this.handleDragOver}\r\n onDrop={this.handleDrop}\r\n >\r\n <div className={attachWidgetClasses.content}>\r\n <input ref={this.fileInputRef} type='file' hidden multiple onChange={this.handleFileChange} accept={allowFileTypes.join(',')} />\r\n <IconButton color='primary' className={attachWidgetClasses.inputButton} onClick={this.handleIconClick}>\r\n <AttachFileIcon />\r\n </IconButton>\r\n <div className={attachWidgetClasses.list}>\r\n {list.length < 1 && (\r\n <Typography variant='body2' color='text.secondary' sx={{ paddingRight: 3 }}>\r\n No files, drag and drop here\r\n </Typography>\r\n )}\r\n {list.map((item, index) => (\r\n <IconButton key={index} component='a' href={item.url} target='_blank' className={attachWidgetClasses.listItem}>\r\n <img src={item.thumbnail || item.url} alt={item.name} />\r\n </IconButton>\r\n ))}\r\n </div>\r\n {this.renderMoreButton()}\r\n </div>\r\n <div className={attachWidgetClasses.dragPanel}>\r\n <div>\r\n <Typography variant='body2' color='primary' sx={{ fontWeight: 600 }}>\r\n Drop files here to upload\r\n </Typography>\r\n </div>\r\n </div>\r\n <div className={attachWidgetClasses.overlay}>\r\n <CircularProgress size={24} />\r\n </div>\r\n </AttachWidgetStyled>\r\n </GlobalModal>\r\n )\r\n }\r\n\r\n renderMoreButton() {\r\n return mapGlobalModalContext((context) => {\r\n const { value, onChange } = this.props\r\n const handleClick = () => {\r\n context.show({\r\n backdropActivated: true,\r\n renderContent: () => <AttachModal value={value} onChange={onChange} uploadFile={this.props.uploadFile} onClose={context.close} />\r\n })\r\n }\r\n return (\r\n <Tooltip title='More details' placement='top' arrow>\r\n <IconButton className={attachWidgetClasses.moreButton} onClick={handleClick}>\r\n <OpenInFullIcon />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n })\r\n }\r\n\r\n onChangeHandler = async (files: File[]) => {\r\n const validFiles = files.filter((f) => isValidFileType(f.type))\r\n if (!this.props.onChange || validFiles.length < 1) return\r\n this.setState({ isLoading: true })\r\n const items = validFiles.map((x) => fileToAttachItem(x, { status: 'new' }))\r\n let updatedItems = [...items, ...this.attachItems]\r\n\r\n if (this.props.uploadFile) {\r\n updatedItems = await fetchUploadNewFiles(updatedItems, this.props.uploadFile)\r\n }\r\n\r\n this.setState({ isLoading: false })\r\n this.props.onChange(updatedItems, { isSave: true })\r\n }\r\n\r\n fileInputRef = createRef<HTMLInputElement>()\r\n handleIconClick = () => {\r\n this.fileInputRef.current?.click()\r\n }\r\n\r\n handleFileChange = (e: ChangeEvent<HTMLInputElement>) => {\r\n const files = e.target.files\r\n if (files && files.length > 0) {\r\n this.onChangeHandler(Array.from(files))\r\n }\r\n }\r\n\r\n dragCounter = 0\r\n handleDragEnter = () => {\r\n this.dragCounter++\r\n this.setState({ isDragging: true })\r\n }\r\n\r\n handleDragLeave = () => {\r\n this.dragCounter--\r\n if (this.dragCounter === 0) {\r\n this.setState({ isDragging: false })\r\n }\r\n }\r\n\r\n handleDragOver = (e: DragEvent) => {\r\n e.preventDefault()\r\n }\r\n\r\n handleDrop = (e: DragEvent) => {\r\n e.preventDefault()\r\n e.stopPropagation()\r\n if (!this.state.isDragging) return // If not dragging, do nothing\r\n this.setState({ isDragging: false })\r\n const files = Array.from(e.dataTransfer.files)\r\n this.onChangeHandler(files)\r\n }\r\n}\r\n\r\nexport default AttachWidget\r\n"],"names":["AttachWidget","props","_this","_classCallCheck","_callSuper","_defineProperty","_ref","_asyncToGenerator","_regenerator","m","_callee","files","validFiles","items","updatedItems","w","_context","n","filter","f","isValidFileType","type","onChange","length","a","setState","isLoading","map","x","fileToAttachItem","status","concat","_toConsumableArray","attachItems","uploadFile","fetchUploadNewFiles","v","isSave","_x","apply","this","arguments","createRef","_this$fileInputRef$cu","fileInputRef","current","click","e","target","onChangeHandler","Array","from","dragCounter","isDragging","preventDefault","stopPropagation","state","dataTransfer","_inherits","Component","_createClass","key","get","value","_this$state","rootClasses","attachWidgetClasses","root","push","dragging","loading","list","slice","maxDisplayFiles","_jsx","GlobalModal","children","_jsxs","AttachWidgetStyled","className","join","onDragEnter","handleDragEnter","onDragLeave","handleDragLeave","onDragOver","handleDragOver","onDrop","handleDrop","content","ref","hidden","multiple","handleFileChange","accept","allowFileTypes","IconButton","color","inputButton","onClick","handleIconClick","AttachFileIcon","Typography","variant","sx","paddingRight","item","index","component","href","url","listItem","src","thumbnail","alt","name","renderMoreButton","dragPanel","fontWeight","overlay","CircularProgress","size","_this2","mapGlobalModalContext","context","_this2$props","Tooltip","title","placement","arrow","moreButton","show","backdropActivated","renderContent","AttachModal","onClose","close","OpenInFullIcon"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"configs.js","sources":["../../../src/lab/input.social-links/configs.ts"],"sourcesContent":["export const structureVersion: string = '1.0.0'\r\n"],"names":["structureVersion"],"mappings":"AAAO,IAAMA,EAA2B"}
@@ -1,2 +0,0 @@
1
- import{defineProperty as e,inherits as n,createClass as r,classCallCheck as t,callSuper as i,toConsumableArray as l}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as o,jsx as a}from"react/jsx-runtime";import{Component as s}from"react";import{styled as c,Grid as u,textFieldClasses as p,colors as m,Box as d,FormControl as h,InputLabel as f,Select as k,MenuItem as g,Typography as v,TextField as y,InputAdornment as x,Tooltip as w,IconButton as L}from"@mui/material";import b from"@mui/icons-material/Add";import C from"@mui/icons-material/Remove";import I from"@mui/icons-material/OpenInNew";import{WrapIcon as R}from"./units.js";import{getSocialLinkConfig as S}from"./unit.icons.js";import{ESocialLinkType as T}from"./types.js";import{CopyToClipboard as j}from"../../components/copy-to-clipboard.js";import{tryParseObject as A,isValidURL as U}from"../../utils/helpers.js";import{getErrorMessage as D}from"../../form/helpers.js";import{structureVersion as N}from"./configs.js";var z={root:"inputSocialLinks-root",linkRows:"inputSocialLinks-linkRows",linkRow:"inputSocialLinks-linkRow",titleLinkRow:"inputSocialLinks-titleLinkRow",input:"inputSocialLinks-input"};function W(){return function(){function c(n){var r;return t(this,c),r=i(this,c,[n]),e(r,"getInputValue",(function(){var e=r.state.links;return JSON.stringify({StructureVersion:N,Items:e})})),e(r,"getDefaultLinks",(function(){var e=r.props,n=e.data,t=e.name,i=t?null==n?void 0:n[t]:"",l=A(i,{StructureVersion:N,Items:[]});return Array.isArray(null==l?void 0:l.Items)?l.Items:[]})),e(r,"handleInputChange",(function(e){r.setState({currentInput:e.target.value})})),e(r,"handleTypeChange",(function(e){r.setState({currentType:e.target.value})})),e(r,"handleAddLink",(function(){var e=r.state,n=e.currentInput,t=e.links,i=e.currentType,o=n.trim();if(o)if(t.some((function(e){return e.Url===o}))){var a=r.props,s=a.formContext,c=a.name;c&&(null==s||s.setError(c,"This link already exists"))}else if(U(o)){var u={Url:o,Type:i},p=[].concat(l(t),[u]);r.setState({links:p,currentInput:""},(function(){var e=r.props,n=e.formContext,t=e.name;t&&(null==n||n.removeError(t))}))}else{var m=r.props,d=m.formContext,h=m.name;h&&(null==d||d.setError(h,"Invalid URL"))}})),e(r,"handleDeleteLink",(function(e){var n=r.state.links.filter((function(n){return n.Url!==e.Url}));r.setState({links:n})})),r.state={links:r.getDefaultLinks(),currentInput:"",currentType:T.Website},r}return n(c,s),r(c,[{key:"render",value:function(){var e=this,n=this.state,r=n.links,t=n.currentInput,i=this.props,l=i.name,s=i.label,c=i.messageErrors,p=D(c,l);return o(E,{container:!0,spacing:2,className:z.root,children:[a("input",{type:"hidden",name:null==l?void 0:l.toString(),value:this.getInputValue()}),a(u,{item:!0,xs:3,children:o(h,{fullWidth:!0,children:[a(f,{id:"social-link-type-label",children:"Link Type"}),a(k,{labelId:"social-link-type-label",value:this.state.currentType,label:"Link Type",onChange:this.handleTypeChange,children:Object.values(T).map((function(e){var n,r,t=S(e),i=t.Icon;return a(g,{value:e,children:o(O,{children:[a(R,{size:24,sx:{bgcolor:t.primaryColor},children:a(i,{fontSize:"small",sx:{color:null!==(n=t.secondaryColor)&&void 0!==n?n:m.common.white}})}),a(v,{variant:"body2",noWrap:!0,children:null!==(r=t.label)&&void 0!==r?r:e})]})},e)}))})]})}),a(u,{item:!0,xs:9,children:a(y,{fullWidth:!0,className:z.input,label:s,error:!!p.error,helperText:p.message,value:t,onChange:this.handleInputChange,onKeyDown:function(n){"Enter"===n.key&&(n.preventDefault(),e.handleAddLink())},InputProps:{endAdornment:a(x,{position:"end",children:a(w,{title:"Add Link",arrow:!0,children:a(L,{size:"small",onClick:this.handleAddLink,children:a(b,{})})})})}})}),a(u,{item:!0,xs:12,children:a(d,{className:z.linkRows,children:r.map((function(n,r){var t,i=S(n.Type),l=i.Icon;return o("div",{className:z.linkRow,children:[a(R,{sx:{bgcolor:i.primaryColor},children:a(l,{sx:{color:null!==(t=i.secondaryColor)&&void 0!==t?t:m.common.white}})}),a(v,{variant:"body2",noWrap:!0,className:z.titleLinkRow,children:n.Url}),a(w,{title:"Open Link",arrow:!0,children:a(L,{size:"small",href:n.Url,target:"_blank",rel:"noopener noreferrer",children:a(I,{fontSize:"small"})})}),a(j,{value:n.Url}),a(w,{title:"Delete Link",arrow:!0,children:a(L,{size:"small",onClick:function(){return e.handleDeleteLink(n)},children:a(C,{})})})]},r)}))})})]})}}])}()}var E=c(u)((function(n){var r=n.theme;return e(e(e(e({},"& .".concat(z.linkRows),{overflowY:"auto",maxHeight:"calc(var(--isl-row-height, 40px) * 5)"}),"& .".concat(z.linkRow),{display:"flex",alignItems:"center",gap:"4px",padding:"0 12px",marginBottom:"8px",backgroundColor:m.grey[50],borderRadius:r.shape.borderRadius,height:"var(--isl-row-height, 40px)","&:hover":{backgroundColor:m.grey[100]}}),"& .".concat(z.titleLinkRow),{marginLeft:"6px",flex:1,minWidth:0,overflow:"hidden"}),"& .".concat(z.input," .").concat(p.root),{paddingRight:r.spacing(1)})})),O=c(d)({display:"flex",alignItems:"center",gap:"8px",".MuiTypography-root":{lineHeight:1,marginTop:"2px"}});export{W as createInputSocialLinks,W as default,z as inputSocialLinksClasses};
2
- //# sourceMappingURL=create.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.js","sources":["../../../src/lab/input.social-links/create.tsx"],"sourcesContent":["import { Component } from 'react'\r\nimport { IconButton, InputAdornment, TextField, FormControl, InputLabel, Grid } from '@mui/material'\r\nimport { styled, textFieldClasses, Box, Select, MenuItem, Typography, colors, Tooltip } from '@mui/material'\r\nimport AddIcon from '@mui/icons-material/Add'\r\nimport RemoveIcon from '@mui/icons-material/Remove'\r\nimport OpenInNewIcon from '@mui/icons-material/OpenInNew'\r\nimport { WrapIcon } from './units'\r\nimport { getSocialLinkConfig } from './unit.icons'\r\nimport { ESocialLinkType, ISocialLink, ISocialLinkData } from './types'\r\nimport { CopyToClipboard } from '../../components/copy-to-clipboard'\r\nimport { isValidURL, tryParseObject } from '../../utils/helpers'\r\nimport { IFormInputBase } from '../../form/types'\r\nimport { getErrorMessage } from '../../form/helpers'\r\nimport { structureVersion } from './configs'\r\n\r\nexport const inputSocialLinksClasses = {\r\n root: 'inputSocialLinks-root',\r\n linkRows: 'inputSocialLinks-linkRows',\r\n linkRow: 'inputSocialLinks-linkRow',\r\n titleLinkRow: 'inputSocialLinks-titleLinkRow',\r\n input: 'inputSocialLinks-input'\r\n}\r\n\r\nexport interface IInputSocialLinksProps<T> extends IFormInputBase<T> {}\r\n\r\nexport interface IInputSocialLinksState {\r\n links: ISocialLink[]\r\n currentType: ESocialLinkType\r\n currentInput: string\r\n}\r\n\r\nexport function createInputSocialLinks<T>() {\r\n class InputSocialLinks extends Component<IInputSocialLinksProps<T>, IInputSocialLinksState> {\r\n constructor(props: IInputSocialLinksProps<T>) {\r\n super(props)\r\n // Initialize state with existing links from props or empty array\r\n // Make sure we adapt incoming links to our ISocialLink interface\r\n this.state = { links: this.getDefaultLinks(), currentInput: '', currentType: ESocialLinkType.Website }\r\n }\r\n\r\n render() {\r\n const { links, currentInput } = this.state\r\n const { name, label, messageErrors } = this.props\r\n const errorMessage = getErrorMessage(messageErrors, name)\r\n\r\n return (\r\n <Wrap container spacing={2} className={inputSocialLinksClasses.root}>\r\n <input type='hidden' name={name?.toString()} value={this.getInputValue()} />\r\n <Grid item xs={3}>\r\n <FormControl fullWidth>\r\n <InputLabel id='social-link-type-label'>Link Type</InputLabel>\r\n <Select labelId='social-link-type-label' value={this.state.currentType} label='Link Type' onChange={this.handleTypeChange}>\r\n {Object.values(ESocialLinkType).map((type) => {\r\n const config = getSocialLinkConfig(type)\r\n const IconComp = config.Icon\r\n return (\r\n <MenuItem key={type} value={type}>\r\n <MenuItemCustom>\r\n <WrapIcon size={24} sx={{ bgcolor: config.primaryColor }}>\r\n <IconComp fontSize='small' sx={{ color: config.secondaryColor ?? colors.common.white }} />\r\n </WrapIcon>\r\n <Typography variant='body2' noWrap>\r\n {config.label ?? type}\r\n </Typography>\r\n </MenuItemCustom>\r\n </MenuItem>\r\n )\r\n })}\r\n </Select>\r\n </FormControl>\r\n </Grid>\r\n <Grid item xs={9}>\r\n <TextField\r\n fullWidth\r\n className={inputSocialLinksClasses.input}\r\n label={label}\r\n error={!!errorMessage.error}\r\n helperText={errorMessage.message}\r\n value={currentInput}\r\n onChange={this.handleInputChange}\r\n onKeyDown={(e) => {\r\n if (e.key === 'Enter') {\r\n e.preventDefault()\r\n this.handleAddLink()\r\n }\r\n }}\r\n InputProps={{\r\n endAdornment: (\r\n <InputAdornment position='end'>\r\n <Tooltip title='Add Link' arrow>\r\n <IconButton size='small' onClick={this.handleAddLink}>\r\n <AddIcon />\r\n </IconButton>\r\n </Tooltip>\r\n </InputAdornment>\r\n )\r\n }}\r\n />\r\n </Grid>\r\n <Grid item xs={12}>\r\n <Box className={inputSocialLinksClasses.linkRows}>\r\n {links.map((link, index) => {\r\n const config = getSocialLinkConfig(link.Type)\r\n const IconComp = config.Icon\r\n return (\r\n <div className={inputSocialLinksClasses.linkRow} key={index}>\r\n <WrapIcon sx={{ bgcolor: config.primaryColor }}>\r\n <IconComp sx={{ color: config.secondaryColor ?? colors.common.white }} />\r\n </WrapIcon>\r\n <Typography variant='body2' noWrap className={inputSocialLinksClasses.titleLinkRow}>\r\n {link.Url}\r\n </Typography>\r\n <Tooltip title='Open Link' arrow>\r\n <IconButton size='small' href={link.Url} target='_blank' rel='noopener noreferrer'>\r\n <OpenInNewIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n <CopyToClipboard value={link.Url} />\r\n <Tooltip title='Delete Link' arrow>\r\n <IconButton size='small' onClick={() => this.handleDeleteLink(link)}>\r\n <RemoveIcon />\r\n </IconButton>\r\n </Tooltip>\r\n </div>\r\n )\r\n })}\r\n </Box>\r\n </Grid>\r\n </Wrap>\r\n )\r\n }\r\n\r\n getInputValue = () => {\r\n const { links } = this.state\r\n return JSON.stringify({ StructureVersion: structureVersion, Items: links })\r\n }\r\n\r\n getDefaultLinks = () => {\r\n const { data, name } = this.props\r\n const val = name ? data?.[name] : ''\r\n const obj = tryParseObject<ISocialLinkData>(val, { StructureVersion: structureVersion, Items: [] })\r\n return Array.isArray(obj?.Items) ? obj.Items : []\r\n }\r\n\r\n handleInputChange = (e: React.ChangeEvent<HTMLInputElement>) => {\r\n this.setState({ currentInput: e.target.value })\r\n }\r\n\r\n handleTypeChange = (event: any) => {\r\n this.setState({ currentType: event.target.value as ESocialLinkType })\r\n }\r\n\r\n handleAddLink = () => {\r\n const { currentInput, links, currentType } = this.state\r\n const trimmedInput = currentInput.trim()\r\n\r\n if (!trimmedInput) return\r\n\r\n // Check if link already exists\r\n if (links.some((link) => link.Url === trimmedInput)) {\r\n // Could add error state here if needed\r\n const { formContext, name } = this.props\r\n if (name) formContext?.setError(name, 'This link already exists')\r\n return\r\n }\r\n\r\n // Validate URL\r\n if (!isValidURL(trimmedInput)) {\r\n // Set error state or show message\r\n const { formContext, name } = this.props\r\n if (name) formContext?.setError(name, 'Invalid URL')\r\n return\r\n }\r\n\r\n const newLink: ISocialLink = { Url: trimmedInput, Type: currentType }\r\n\r\n const newLinks = [...links, newLink]\r\n this.setState({ links: newLinks, currentInput: '' }, () => {\r\n const { formContext, name } = this.props\r\n if (name) formContext?.removeError(name)\r\n })\r\n }\r\n\r\n handleDeleteLink = (linkToDelete: ISocialLink) => {\r\n const newLinks = this.state.links.filter((link) => link.Url !== linkToDelete.Url)\r\n this.setState({ links: newLinks })\r\n }\r\n }\r\n\r\n return InputSocialLinks\r\n}\r\nexport default createInputSocialLinks\r\n\r\nconst Wrap = styled(Grid)(({ theme }) => ({\r\n // [`& .${inputSocialLinksClasses.root}`]: {}\r\n [`& .${inputSocialLinksClasses.linkRows}`]: {\r\n overflowY: 'auto',\r\n maxHeight: 'calc(var(--isl-row-height, 40px) * 5)'\r\n },\r\n [`& .${inputSocialLinksClasses.linkRow}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: '4px',\r\n padding: '0 12px',\r\n marginBottom: '8px',\r\n backgroundColor: colors.grey[50],\r\n borderRadius: theme.shape.borderRadius,\r\n height: 'var(--isl-row-height, 40px)',\r\n '&:hover': {\r\n backgroundColor: colors.grey[100]\r\n }\r\n },\r\n [`& .${inputSocialLinksClasses.titleLinkRow}`]: {\r\n marginLeft: '6px',\r\n flex: 1,\r\n minWidth: 0,\r\n overflow: 'hidden'\r\n },\r\n [`& .${inputSocialLinksClasses.input} .${textFieldClasses.root}`]: {\r\n paddingRight: theme.spacing(1)\r\n }\r\n}))\r\n\r\nconst MenuItemCustom = styled(Box)({\r\n display: 'flex',\r\n alignItems: 'center',\r\n gap: '8px',\r\n '.MuiTypography-root': {\r\n lineHeight: 1,\r\n marginTop: '2px'\r\n }\r\n})\r\n"],"names":["inputSocialLinksClasses","root","linkRows","linkRow","titleLinkRow","input","createInputSocialLinks","InputSocialLinks","props","_this","_classCallCheck","_callSuper","_defineProperty","links","state","JSON","stringify","StructureVersion","structureVersion","Items","_this$props","data","name","val","obj","tryParseObject","Array","isArray","e","setState","currentInput","target","value","event","currentType","_this$state","trimmedInput","trim","some","link","Url","_this$props2","formContext","setError","isValidURL","newLink","Type","newLinks","concat","_toConsumableArray","_this$props4","removeError","_this$props3","linkToDelete","filter","getDefaultLinks","ESocialLinkType","Website","_inherits","Component","_createClass","key","_this2","this","_this$state2","_this$props5","label","messageErrors","errorMessage","getErrorMessage","_jsxs","Wrap","container","spacing","className","children","_jsx","type","toString","getInputValue","Grid","item","xs","FormControl","fullWidth","InputLabel","id","Select","labelId","onChange","handleTypeChange","Object","values","map","_config$secondaryColo","_config$label","config","getSocialLinkConfig","IconComp","Icon","MenuItem","MenuItemCustom","WrapIcon","size","sx","bgcolor","primaryColor","fontSize","color","secondaryColor","colors","common","white","Typography","variant","noWrap","TextField","error","helperText","message","handleInputChange","onKeyDown","preventDefault","handleAddLink","InputProps","endAdornment","InputAdornment","position","Tooltip","title","arrow","IconButton","onClick","AddIcon","Box","index","_config$secondaryColo2","href","rel","OpenInNewIcon","CopyToClipboard","handleDeleteLink","RemoveIcon","styled","_ref","theme","overflowY","maxHeight","display","alignItems","gap","padding","marginBottom","backgroundColor","grey","borderRadius","shape","height","marginLeft","flex","minWidth","overflow","textFieldClasses","paddingRight","lineHeight","marginTop"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sources":["../../../src/lab/input.social-links/types.ts"],"sourcesContent":["import type { ComponentType } from 'react'\r\nimport type { SvgIconProps } from '@mui/material'\r\n\r\nexport enum ESocialLinkType {\r\n Website = 'Website',\r\n Spotify = 'Spotify',\r\n AppleMusic = 'AppleMusic',\r\n AmazonMusic = 'AmazonMusic',\r\n YouTube = 'YouTube',\r\n Deezer = 'Deezer',\r\n Tidal = 'Tidal',\r\n SoundCloud = 'SoundCloud'\r\n // Facebook = 'Facebook',\r\n // Twitter = 'Twitter',\r\n // Instagram = 'Instagram',\r\n // TikTok = 'TikTok',\r\n // Bandcamp = 'Bandcamp',\r\n}\r\n\r\nexport interface ISocialLinkConfig {\r\n label?: string\r\n primaryColor: string\r\n secondaryColor?: string\r\n Icon: ComponentType<SvgIconProps>\r\n}\r\n\r\n// Define our own ISocialLink to ensure compatibility with IArtist\r\nexport interface ISocialLink {\r\n Url: string\r\n Type?: ESocialLinkType\r\n Color?: string\r\n}\r\n\r\nexport interface ISocialLinkData {\r\n StructureVersion: string\r\n Items: ISocialLink[]\r\n}\r\n"],"names":["ESocialLinkType"],"mappings":"IAGYA,GAAZ,SAAYA,GACVA,EAAA,QAAA,UACAA,EAAA,QAAA,UACAA,EAAA,WAAA,aACAA,EAAA,YAAA,cACAA,EAAA,QAAA,UACAA,EAAA,OAAA,SACAA,EAAA,MAAA,QACAA,EAAA,WAAA,YAMD,CAdD,CAAYA,IAAAA,EAcX,CAAA"}
@@ -1,2 +0,0 @@
1
- import{defineProperty as c,objectSpread2 as C}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsxs as r,jsx as o}from"react/jsx-runtime";import{SvgIcon as a}from"@mui/material";import e from"@mui/icons-material/Language";import i from"@mui/icons-material/YouTube";import{ESocialLinkType as l}from"./types.js";var n=function(c){return o(a,C(C({viewBox:"0 0 496 512"},c),{},{children:o("path",{d:"M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z"})}))},t=function(c){return o(a,C(C({viewBox:"0 0 640 640"},c),{},{children:o("path",{d:"M447.1 332.7C446.9 296 463.5 268.3 497.1 247.9C478.3 221 449.9 206.2 412.4 203.3C376.9 200.5 338.1 224 323.9 224C308.9 224 274.5 204.3 247.5 204.3C191.7 205.2 132.4 248.8 132.4 337.5C132.4 363.7 137.2 390.8 146.8 418.7C159.6 455.4 205.8 545.4 254 543.9C279.2 543.3 297 526 329.8 526C361.6 526 378.1 543.9 406.2 543.9C454.8 543.2 496.6 461.4 508.8 424.6C443.6 393.9 447.1 334.6 447.1 332.7zM390.5 168.5C417.8 136.1 415.3 106.6 414.5 96C390.4 97.4 362.5 112.4 346.6 130.9C329.1 150.7 318.8 175.2 321 202.8C347.1 204.8 370.9 191.4 390.5 168.5z"})}))},m=function(c){return o(a,C(C({viewBox:"0 0 448 512"},c),{},{children:o("path",{d:"M448 209.9a210.1 210.1 0 0 1 -122.8-39.3V349.4A162.6 162.6 0 1 1 185 188.3V278.2a74.6 74.6 0 1 0 52.2 71.2V0l88 0a121.2 121.2 0 0 0 1.9 22.2h0A122.2 122.2 0 0 0 381 102.4a121.4 121.4 0 0 0 67 20.1z"})}))},h=function(c){return o(a,C(C({viewBox:"0 0 278 278"},c),{},{children:o("g",{transform:"translate(24, 24) scale(0.85)",children:o("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M232.97 42.8737C235.539 27.9837 239.309 18.6204 243.485 18.6026H243.493C251.28 18.6294 257.592 51.1012 257.592 91.1924C257.592 131.284 251.271 163.782 243.476 163.782C240.28 163.782 237.331 158.264 234.957 149.017C231.205 182.867 223.419 206.136 214.405 206.136C207.431 206.136 201.172 192.158 196.97 170.114C194.101 212.038 186.88 241.783 178.44 241.783C173.143 241.783 168.314 229.996 164.739 210.804C160.44 250.421 150.508 278.18 138.926 278.18C127.344 278.18 117.394 250.43 113.113 210.804C109.564 229.996 104.735 241.783 99.4118 241.783C90.9722 241.783 83.7686 212.038 80.8818 170.114C76.6797 192.158 70.4383 206.136 63.4465 206.136C54.442 206.136 46.6469 182.875 42.895 149.017C40.5379 158.291 37.5717 163.782 34.376 163.782C26.5809 163.782 20.26 131.284 20.26 91.1924C20.26 51.1012 26.5809 18.6026 34.376 18.6026C38.5604 18.6026 42.3035 27.9926 44.8989 42.8737C49.0569 17.1985 55.8103 0.510986 63.4465 0.510986C72.5129 0.510986 80.3698 24.1114 84.0864 58.3808C87.7235 33.4389 93.241 17.5383 99.4206 17.5383C108.081 17.5383 115.443 48.8118 118.171 92.4355C123.3 70.0692 130.725 56.0377 138.944 56.0377C147.162 56.0377 154.587 70.0781 159.707 92.4355C162.444 48.8118 169.797 17.5383 178.458 17.5383C184.628 17.5383 190.137 33.4389 193.792 58.3808C197.5 24.1114 205.357 0.510986 214.423 0.510986C222.033 0.510986 228.812 17.2075 232.97 42.8737ZM0.0891113 84.0528C0.0891113 66.1311 3.67328 51.5989 8.0961 51.5989C12.5189 51.5989 16.1031 66.1311 16.1031 84.0528C16.1031 101.974 12.5189 116.507 8.0961 116.507C3.67328 116.507 0.0891113 101.974 0.0891113 84.0528ZM261.743 84.0528C261.743 66.1311 265.327 51.5989 269.75 51.5989C274.172 51.5989 277.757 66.1311 277.757 84.0528C277.757 101.974 274.172 116.507 269.75 116.507C265.327 116.507 261.743 101.974 261.743 84.0528Z"})})}))},v=function(c){return o(a,C(C({viewBox:"0 0 24 24"},c),{},{children:o("path",{d:"M12.012 3.992L8.008 7.996 4.004 3.992 0 7.996 4.004 12l4.004-4.004L12.012 12l-4.004 4.004 4.004 4.004 4.004-4.004L12.012 12l4.004-4.004-4.004-4.004zM16.042 7.996l3.979-3.979L24 7.996l-3.979 3.979z"})}))},p=function(c){return o(a,C(C({viewBox:"0 0 117 80"},c),{},{children:r("g",{xmlns:"http://www.w3.org/2000/svg",fill:"none","fill-rule":"evenodd",children:[o("path",{d:"M-32 112h181V-32H-32z"}),o("path",{fill:"#FFF",d:"M72.37 27.38C65.59 32.35 55.77 35 47.3 35A45.5 45.5 0 0 1 16.7 23.38c-.64-.57-.07-1.35.69-.9a61.88 61.88 0 0 0 30.64 8.08c7.5 0 15.77-1.55 23.36-4.76 1.15-.48 2.11.75.99 1.58zm2.82-3.2c-.87-1.1-5.73-.53-7.91-.27-.67.08-.77-.5-.17-.91 3.88-2.71 10.23-1.93 10.97-1.02.75.91-.2 7.25-3.83 10.28-.56.47-1.09.22-.84-.4.82-2.03 2.65-6.58 1.78-7.68zM67.43 3.85V1.22c0-.4.3-.67.67-.67h11.87c.38 0 .68.27.68.66v2.26c0 .38-.32.88-.9 1.66l-6.14 8.73c2.28-.05 4.7.29 6.77 1.45.47.26.6.65.63 1.03v2.8c0 .4-.43.84-.87.6a13.73 13.73 0 0 0-12.54.03c-.42.22-.85-.22-.85-.61v-2.67c0-.43.01-1.16.44-1.81L74.32 4.5h-6.2c-.38 0-.69-.26-.7-.66zM90.87.21c5.36 0 8.26 4.58 8.26 10.4 0 5.62-3.2 10.08-8.26 10.08-5.26 0-8.12-4.58-8.12-10.28 0-5.74 2.9-10.2 8.12-10.2zm.03 3.76c-2.66 0-2.83 3.6-2.83 5.86 0 2.25-.03 7.06 2.8 7.06 2.8 0 2.93-3.88 2.93-6.25 0-1.55-.07-3.41-.54-4.88-.4-1.28-1.21-1.79-2.36-1.79zM61.61 20.26c-.24.2-.68.22-.85.08-1.24-.95-2.07-2.4-2.07-2.4-1.98 2.01-3.39 2.62-5.96 2.62-3.03 0-5.4-1.87-5.4-5.6a6.1 6.1 0 0 1 3.85-5.87c1.96-.86 4.7-1.01 6.79-1.25 0 0 .17-2.25-.44-3.07a2.54 2.54 0 0 0-2.03-.93c-1.33 0-2.63.72-2.89 2.11-.07.4-.36.74-.68.7l-3.45-.37a.63.63 0 0 1-.54-.75c.8-4.22 4.63-5.5 8.07-5.5 1.76 0 4.05.47 5.44 1.79 1.75 1.63 1.59 3.8 1.59 6.18v5.6c0 1.68.7 2.42 1.36 3.32.23.33.28.72-.01.96-.74.61-2.78 2.38-2.78 2.38zm-3.64-8.76v-.78c-2.61 0-5.37.56-5.37 3.62 0 1.55.81 2.6 2.2 2.6 1 0 1.92-.62 2.5-1.63.7-1.25.67-2.41.67-3.81zm-43.7 8.76c-.23.2-.67.22-.84.08-1.24-.95-2.07-2.4-2.07-2.4-1.99 2.01-3.39 2.62-5.96 2.62-3.04 0-5.4-1.87-5.4-5.6a6.1 6.1 0 0 1 3.85-5.87c1.96-.86 4.7-1.01 6.79-1.25 0 0 .17-2.25-.44-3.07a2.54 2.54 0 0 0-2.03-.93c-1.34 0-2.63.72-2.89 2.11-.07.4-.37.74-.68.7l-3.46-.37a.63.63 0 0 1-.53-.75C1.4 1.31 5.24.03 8.68.03c1.76 0 4.05.47 5.44 1.79C15.87 3.45 15.7 5.62 15.7 8v5.6c0 1.68.7 2.42 1.36 3.32.23.33.28.72-.01.96-.74.61-2.78 2.38-2.78 2.38zm-3.63-8.76v-.78c-2.61 0-5.37.56-5.37 3.62 0 1.55.8 2.6 2.2 2.6 1 0 1.92-.62 2.5-1.63.7-1.25.67-2.41.67-3.81zm14.2-1.63v9.76c0 .37-.3.67-.68.67h-3.6a.67.67 0 0 1-.68-.67V1.27c0-.37.3-.67.68-.67h3.37c.37 0 .67.3.67.67v2.35h.07C25.55 1.3 27.2.21 29.42.21c2.26 0 3.67 1.09 4.69 3.41A5.13 5.13 0 0 1 39.09.21c1.52 0 3.17.62 4.18 2.02 1.15 1.55.91 3.8.91 5.78v11.63c0 .37-.31.66-.7.66h-3.6a.67.67 0 0 1-.65-.66V9.87c0-.78.07-2.72-.1-3.45-.27-1.25-1.08-1.6-2.13-1.6a2.4 2.4 0 0 0-2.15 1.52c-.37.93-.34 2.48-.34 3.53v9.77c0 .37-.31.66-.7.66h-3.6a.67.67 0 0 1-.65-.66V9.87c0-2.06.33-5.08-2.23-5.08-2.6 0-2.5 2.94-2.5 5.08zm81.94 9.76c0 .37-.3.67-.67.67h-3.61a.67.67 0 0 1-.67-.67V1.27c0-.37.3-.67.67-.67h3.33c.4 0 .68.31.68.52v2.81h.07c1-2.52 2.42-3.72 4.92-3.72 1.62 0 3.2.58 4.21 2.17.94 1.48.94 3.96.94 5.74v11.6a.68.68 0 0 1-.69.58h-3.62a.68.68 0 0 1-.64-.58V8.58c0-3.72-1.43-3.83-2.26-3.83-.96 0-1.74.75-2.07 1.44a8.3 8.3 0 0 0-.6 3.52l.01 9.92zM.93 79.3c-.62 0-.93-.3-.93-.93V56.68c0-.62.31-.93.93-.93H3c.3 0 .55.07.72.19.17.12.29.36.35.7l.28 1.48c2.99-2.04 5.9-3.06 8.73-3.06 2.9 0 4.86 1.1 5.89 3.3 3.08-2.2 6.16-3.3 9.24-3.3 2.15 0 3.8.6 4.95 1.8 1.15 1.22 1.73 2.94 1.73 5.16v16.35c0 .62-.32.93-.94.93H31.2c-.62 0-.94-.3-.94-.93V63.33c0-1.55-.3-2.7-.88-3.44-.6-.75-1.53-1.12-2.8-1.12-2.28 0-4.56.7-6.87 2.1.03.21.05.44.05.69v16.81c0 .62-.31.93-.93.93h-2.76c-.62 0-.93-.3-.93-.93V63.33c0-1.55-.3-2.7-.89-3.44-.6-.75-1.53-1.12-2.8-1.12-2.37 0-4.64.68-6.82 2.05v17.55c0 .62-.3.93-.93.93H.93zm47.44.7c-2.21 0-3.9-.62-5.09-1.86-1.18-1.24-1.77-2.99-1.77-5.25V56.7c0-.63.3-.94.93-.94h2.75c.63 0 .94.31.94.93v14.73c0 1.67.32 2.9.98 3.69.65.79 1.7 1.18 3.13 1.18 2.24 0 4.5-.74 6.77-2.23V56.68c0-.62.3-.93.93-.93h2.75c.63 0 .94.31.94.93v21.7c0 .61-.31.92-.94.92h-2c-.31 0-.56-.06-.73-.18-.17-.13-.28-.36-.35-.7l-.32-1.62c-2.9 2.13-5.87 3.2-8.92 3.2zm26.52 0c-2.62 0-4.97-.43-7.05-1.3a1.83 1.83 0 0 1-.77-.51c-.14-.19-.21-.48-.21-.88V76c0-.56.18-.84.56-.84.22 0 .6.1 1.16.28 2.06.65 4.2.97 6.4.97 1.53 0 2.69-.3 3.48-.88.8-.59 1.19-1.44 1.19-2.55a2.4 2.4 0 0 0-.72-1.82 7.83 7.83 0 0 0-2.64-1.39l-3.97-1.48c-3.46-1.27-5.18-3.44-5.18-6.5 0-2.02.78-3.65 2.36-4.88 1.57-1.24 3.63-1.86 6.18-1.86a17 17 0 0 1 5.93 1.07c.37.12.64.28.8.48.15.2.23.5.23.9v1.26c0 .56-.2.84-.6.84a4.2 4.2 0 0 1-1.08-.23c-1.65-.5-3.33-.75-5.05-.75-2.98 0-4.48 1.01-4.48 3.02 0 .8.25 1.44.75 1.9.5.47 1.48.98 2.94 1.54l3.64 1.4c1.84.7 3.16 1.55 3.97 2.53.81.97 1.21 2.23 1.21 3.78 0 2.2-.82 3.95-2.47 5.25-1.65 1.3-3.84 1.95-6.58 1.95zm14.94-.7c-.62 0-.94-.3-.94-.93V56.68c0-.62.32-.93.94-.93h2.75c.62 0 .94.31.94.93v21.7c0 .61-.32.92-.94.92h-2.75zm1.4-27.73c-.9 0-1.61-.25-2.13-.76a2.72 2.72 0 0 1-.77-2.02c0-.84.26-1.51.77-2.02a2.88 2.88 0 0 1 2.13-.77c.9 0 1.6.26 2.12.77.52.5.77 1.18.77 2.02 0 .83-.25 1.5-.77 2.02-.51.5-1.22.76-2.12.76zm19.51 28.24c-3.67 0-6.48-1.04-8.42-3.13-1.95-2.1-2.92-5.12-2.92-9.08 0-3.93 1-6.98 3.01-9.13 2-2.15 4.85-3.23 8.52-3.23 1.68 0 3.33.3 4.95.89.34.12.58.27.72.46s.21.5.21.93v1.25c0 .62-.2.93-.6.93-.16 0-.4-.04-.75-.14a13.8 13.8 0 0 0-3.88-.55c-2.61 0-4.5.65-5.65 1.97-1.15 1.32-1.72 3.41-1.72 6.3v.6c0 2.81.58 4.88 1.75 6.2 1.17 1.31 3.01 1.97 5.53 1.97 1.3 0 2.7-.21 4.2-.65.35-.1.58-.14.7-.14.4 0 .61.31.61.93v1.26c0 .4-.06.7-.19.88-.12.18-.37.35-.74.5-1.53.66-3.3.98-5.33.98z"})]})}))},u=function(c){return o(a,C(C({viewBox:"0 0 50 50"},c),{},{children:o("path",{d:"M 25.3125 3 C 19.210938 3 12.492188 5.3125 11.09375 12.8125 C 10.894531 13.613281 11.5 13.992188 12 14.09375 L 18.1875 14.6875 C 18.789063 14.6875 19.207031 14.101563 19.40625 13.5 C 19.90625 10.898438 22.101563 9.59375 24.5 9.59375 C 25.800781 9.59375 27.292969 10.113281 28.09375 11.3125 C 28.992188 12.613281 28.8125 14.40625 28.8125 15.90625 L 28.8125 16.8125 C 25.113281 17.210938 20.3125 17.5 16.8125 19 C 12.8125 20.699219 10 24.207031 10 29.40625 C 10 36.007813 14.199219 39.3125 19.5 39.3125 C 24 39.3125 26.5 38.195313 30 34.59375 C 31.199219 36.292969 31.585938 37.105469 33.6875 38.90625 C 34.1875 39.207031 34.789063 39.085938 35.1875 38.6875 L 35.1875 38.8125 C 36.488281 37.710938 38.792969 35.601563 40.09375 34.5 C 40.59375 34.199219 40.492188 33.5 40.09375 33 C 38.894531 31.398438 37.6875 30.09375 37.6875 27.09375 L 37.6875 17.1875 C 37.6875 12.988281 38.007813 9.085938 34.90625 6.1875 C 32.40625 3.789063 28.414063 3 25.3125 3 Z M 27 22 L 28.6875 22 L 28.6875 23.40625 C 28.6875 25.804688 28.792969 27.894531 27.59375 30.09375 C 26.59375 31.894531 24.988281 33 23.1875 33 C 20.789063 33 19.3125 31.207031 19.3125 28.40625 C 19.3125 23.707031 23 22.300781 27 22 Z M 44.59375 36.59375 C 42.992188 36.59375 41.085938 37 39.6875 38 C 39.289063 38.300781 39.3125 38.6875 39.8125 38.6875 C 41.414063 38.488281 44.988281 38.007813 45.6875 38.90625 C 46.289063 39.707031 45.007813 43.085938 44.40625 44.6875 C 44.207031 45.1875 44.601563 45.300781 45 45 C 47.699219 42.699219 48.40625 38.007813 47.90625 37.40625 C 47.605469 36.90625 46.195313 36.59375 44.59375 36.59375 Z M 2.1875 37.5 C 1.886719 37.5 1.695313 38.011719 2.09375 38.3125 C 8.09375 43.710938 16.007813 47 24.90625 47 C 31.207031 47 38.492188 45.011719 43.59375 41.3125 C 44.394531 40.710938 43.707031 39.695313 42.90625 40.09375 C 37.207031 42.492188 31.101563 43.6875 25.5 43.6875 C 17.199219 43.6875 9.1875 41.386719 2.6875 37.6875 C 2.488281 37.488281 2.289063 37.5 2.1875 37.5 Z"})}))},d=function(c){return r(a,C(C({viewBox:"0 0 100 100"},c),{},{children:[o("path",{d:"M16.569,39.37c-1.705-0.045-3.238,1.488-3.193,3.193c0,0,0,29.566,0,29.566c-0.015,1.821,1.503,2.531,3.193,2.537c1.725-0.005,3.245-0.694,3.237-2.537V42.563C19.844,40.832,18.311,39.322,16.569,39.37z"}),o("path",{d:"M92.322,50.873c-4.128-4.284-10.743-5.494-16.161-3.193c-0.888-13.158-12.729-24.001-25.936-23.749c-1.924,0-3.863,0.233-5.817,0.7c-0.904,0.292-1.356,1.196-1.356,2.712v47.585c0.017,0.393,0.319,0.981,0.787,1.094l38.051,0.044C94.867,76.231,101.723,59.947,92.322,50.873z"}),o("path",{d:"M9.746,54.021c-0.084-4.274-6.341-4.292-6.43,0c0,0,0,12.683,0,12.683c-0.13,4.255,6.914,4.617,6.429,0C9.746,66.705,9.746,54.021,9.746,54.021z"}),o("path",{d:"M37.061,25.768c-2.225-0.505-4.384,1.741-4.242,4.155v43.737c0,1.603,1.079,2.406,3.237,2.406c2.158,0,3.236-0.802,3.236-2.406V29.923C39.291,27.473,38.548,26.088,37.061,25.768z"}),o("path",{d:"M26.672,43.262c-1.764-0.045-3.325,1.517-3.28,3.28v26.985c0,0.845,0.306,1.48,0.919,1.903c1.718,1.174,5.653,0.851,5.555-1.903V46.543C29.913,44.808,28.407,43.221,26.672,43.262z"})]}))},z=c(c(c(c(c(c(c(c({},l.Website,{primaryColor:"#0066cc",Icon:e}),l.Spotify,{primaryColor:"#1DB954",Icon:n}),l.AppleMusic,{label:"Apple Music",primaryColor:"#FA243C",Icon:t}),l.AmazonMusic,{label:"Amazon Music",primaryColor:"#26d2dc",Icon:u}),l.YouTube,{primaryColor:"#FF0000",Icon:i}),l.Deezer,{primaryColor:"#A238FF",Icon:h}),l.Tidal,{primaryColor:"#000000",Icon:v}),l.SoundCloud,{primaryColor:"#FF5500",Icon:d}),M=function(){var c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l.Website;return z[c]||{primaryColor:"#0066cc",Icon:e}};export{p as AmazonMusicIcon,u as AmazonMusicVectorIcon,t as AppleMusicIcon,h as DeezerIcon,d as SoundCloudIcon,n as SpotifyIcon,v as TidalIcon,m as TiktokIcon,M as getSocialLinkConfig};
2
- //# sourceMappingURL=unit.icons.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"unit.icons.js","sources":["../../../src/lab/input.social-links/unit.icons.tsx"],"sourcesContent":["import { SvgIcon } from '@mui/material'\r\nimport type { FC } from 'react'\r\nimport type { SvgIconProps } from '@mui/material'\r\nimport LanguageIcon from '@mui/icons-material/Language'\r\nimport YouTubeIcon from '@mui/icons-material/YouTube'\r\nimport { ESocialLinkType, ISocialLinkConfig } from './types'\r\n// import FacebookIcon from '@mui/icons-material/Facebook'\r\n// import TwitterIcon from '@mui/icons-material/Twitter'\r\n// import InstagramIcon from '@mui/icons-material/Instagram'\r\n// import AlbumIcon from '@mui/icons-material/Album'\r\n\r\nexport const SpotifyIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 496 512' {...props}>\r\n <path d='M248 8C111.1 8 0 119.1 0 256s111.1 248 248 248 248-111.1 248-248S384.9 8 248 8zm100.7 364.9c-4.2 0-6.8-1.3-10.7-3.6-62.4-37.6-135-39.2-206.7-24.5-3.9 1-9 2.6-11.9 2.6-9.7 0-15.8-7.7-15.8-15.8 0-10.3 6.1-15.2 13.6-16.8 81.9-18.1 165.6-16.5 237 26.2 6.1 3.9 9.7 7.4 9.7 16.5s-7.1 15.4-15.2 15.4zm26.9-65.6c-5.2 0-8.7-2.3-12.3-4.2-62.5-37-155.7-51.9-238.6-29.4-4.8 1.3-7.4 2.6-11.9 2.6-10.7 0-19.4-8.7-19.4-19.4s5.2-17.8 15.5-20.7c27.8-7.8 56.2-13.6 97.8-13.6 64.9 0 127.6 16.1 177 45.5 8.1 4.8 11.3 11 11.3 19.7-.1 10.8-8.5 19.5-19.4 19.5zm31-76.2c-5.2 0-8.4-1.3-12.9-3.9-71.2-42.5-198.5-52.7-280.9-29.7-3.6 1-8.1 2.6-12.9 2.6-13.2 0-23.3-10.3-23.3-23.6 0-13.6 8.4-21.3 17.4-23.9 35.2-10.3 74.6-15.2 117.5-15.2 73 0 149.5 15.2 205.4 47.8 7.8 4.5 12.9 10.7 12.9 22.6 0 13.6-11 23.3-23.2 23.3z' />\r\n </SvgIcon>\r\n)\r\n\r\nexport const AppleMusicIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 640 640' {...props}>\r\n <path d='M447.1 332.7C446.9 296 463.5 268.3 497.1 247.9C478.3 221 449.9 206.2 412.4 203.3C376.9 200.5 338.1 224 323.9 224C308.9 224 274.5 204.3 247.5 204.3C191.7 205.2 132.4 248.8 132.4 337.5C132.4 363.7 137.2 390.8 146.8 418.7C159.6 455.4 205.8 545.4 254 543.9C279.2 543.3 297 526 329.8 526C361.6 526 378.1 543.9 406.2 543.9C454.8 543.2 496.6 461.4 508.8 424.6C443.6 393.9 447.1 334.6 447.1 332.7zM390.5 168.5C417.8 136.1 415.3 106.6 414.5 96C390.4 97.4 362.5 112.4 346.6 130.9C329.1 150.7 318.8 175.2 321 202.8C347.1 204.8 370.9 191.4 390.5 168.5z' />\r\n </SvgIcon>\r\n)\r\n\r\nexport const TiktokIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 448 512' {...props}>\r\n <path d='M448 209.9a210.1 210.1 0 0 1 -122.8-39.3V349.4A162.6 162.6 0 1 1 185 188.3V278.2a74.6 74.6 0 1 0 52.2 71.2V0l88 0a121.2 121.2 0 0 0 1.9 22.2h0A122.2 122.2 0 0 0 381 102.4a121.4 121.4 0 0 0 67 20.1z' />\r\n </SvgIcon>\r\n)\r\n\r\nexport const DeezerIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 278 278' {...props}>\r\n <g transform='translate(24, 24) scale(0.85)'>\r\n <path\r\n fillRule='evenodd'\r\n clipRule='evenodd'\r\n d='M232.97 42.8737C235.539 27.9837 239.309 18.6204 243.485 18.6026H243.493C251.28 18.6294 257.592 51.1012 257.592 91.1924C257.592 131.284 251.271 163.782 243.476 163.782C240.28 163.782 237.331 158.264 234.957 149.017C231.205 182.867 223.419 206.136 214.405 206.136C207.431 206.136 201.172 192.158 196.97 170.114C194.101 212.038 186.88 241.783 178.44 241.783C173.143 241.783 168.314 229.996 164.739 210.804C160.44 250.421 150.508 278.18 138.926 278.18C127.344 278.18 117.394 250.43 113.113 210.804C109.564 229.996 104.735 241.783 99.4118 241.783C90.9722 241.783 83.7686 212.038 80.8818 170.114C76.6797 192.158 70.4383 206.136 63.4465 206.136C54.442 206.136 46.6469 182.875 42.895 149.017C40.5379 158.291 37.5717 163.782 34.376 163.782C26.5809 163.782 20.26 131.284 20.26 91.1924C20.26 51.1012 26.5809 18.6026 34.376 18.6026C38.5604 18.6026 42.3035 27.9926 44.8989 42.8737C49.0569 17.1985 55.8103 0.510986 63.4465 0.510986C72.5129 0.510986 80.3698 24.1114 84.0864 58.3808C87.7235 33.4389 93.241 17.5383 99.4206 17.5383C108.081 17.5383 115.443 48.8118 118.171 92.4355C123.3 70.0692 130.725 56.0377 138.944 56.0377C147.162 56.0377 154.587 70.0781 159.707 92.4355C162.444 48.8118 169.797 17.5383 178.458 17.5383C184.628 17.5383 190.137 33.4389 193.792 58.3808C197.5 24.1114 205.357 0.510986 214.423 0.510986C222.033 0.510986 228.812 17.2075 232.97 42.8737ZM0.0891113 84.0528C0.0891113 66.1311 3.67328 51.5989 8.0961 51.5989C12.5189 51.5989 16.1031 66.1311 16.1031 84.0528C16.1031 101.974 12.5189 116.507 8.0961 116.507C3.67328 116.507 0.0891113 101.974 0.0891113 84.0528ZM261.743 84.0528C261.743 66.1311 265.327 51.5989 269.75 51.5989C274.172 51.5989 277.757 66.1311 277.757 84.0528C277.757 101.974 274.172 116.507 269.75 116.507C265.327 116.507 261.743 101.974 261.743 84.0528Z'\r\n />\r\n </g>\r\n </SvgIcon>\r\n)\r\n\r\nexport const TidalIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 24 24' {...props}>\r\n <path d='M12.012 3.992L8.008 7.996 4.004 3.992 0 7.996 4.004 12l4.004-4.004L12.012 12l-4.004 4.004 4.004 4.004 4.004-4.004L12.012 12l4.004-4.004-4.004-4.004zM16.042 7.996l3.979-3.979L24 7.996l-3.979 3.979z'></path>\r\n </SvgIcon>\r\n)\r\n\r\nexport const AmazonMusicIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 117 80' {...props}>\r\n <g xmlns='http://www.w3.org/2000/svg' fill='none' fill-rule='evenodd'>\r\n <path d='M-32 112h181V-32H-32z' />\r\n <path\r\n fill='#FFF'\r\n d='M72.37 27.38C65.59 32.35 55.77 35 47.3 35A45.5 45.5 0 0 1 16.7 23.38c-.64-.57-.07-1.35.69-.9a61.88 61.88 0 0 0 30.64 8.08c7.5 0 15.77-1.55 23.36-4.76 1.15-.48 2.11.75.99 1.58zm2.82-3.2c-.87-1.1-5.73-.53-7.91-.27-.67.08-.77-.5-.17-.91 3.88-2.71 10.23-1.93 10.97-1.02.75.91-.2 7.25-3.83 10.28-.56.47-1.09.22-.84-.4.82-2.03 2.65-6.58 1.78-7.68zM67.43 3.85V1.22c0-.4.3-.67.67-.67h11.87c.38 0 .68.27.68.66v2.26c0 .38-.32.88-.9 1.66l-6.14 8.73c2.28-.05 4.7.29 6.77 1.45.47.26.6.65.63 1.03v2.8c0 .4-.43.84-.87.6a13.73 13.73 0 0 0-12.54.03c-.42.22-.85-.22-.85-.61v-2.67c0-.43.01-1.16.44-1.81L74.32 4.5h-6.2c-.38 0-.69-.26-.7-.66zM90.87.21c5.36 0 8.26 4.58 8.26 10.4 0 5.62-3.2 10.08-8.26 10.08-5.26 0-8.12-4.58-8.12-10.28 0-5.74 2.9-10.2 8.12-10.2zm.03 3.76c-2.66 0-2.83 3.6-2.83 5.86 0 2.25-.03 7.06 2.8 7.06 2.8 0 2.93-3.88 2.93-6.25 0-1.55-.07-3.41-.54-4.88-.4-1.28-1.21-1.79-2.36-1.79zM61.61 20.26c-.24.2-.68.22-.85.08-1.24-.95-2.07-2.4-2.07-2.4-1.98 2.01-3.39 2.62-5.96 2.62-3.03 0-5.4-1.87-5.4-5.6a6.1 6.1 0 0 1 3.85-5.87c1.96-.86 4.7-1.01 6.79-1.25 0 0 .17-2.25-.44-3.07a2.54 2.54 0 0 0-2.03-.93c-1.33 0-2.63.72-2.89 2.11-.07.4-.36.74-.68.7l-3.45-.37a.63.63 0 0 1-.54-.75c.8-4.22 4.63-5.5 8.07-5.5 1.76 0 4.05.47 5.44 1.79 1.75 1.63 1.59 3.8 1.59 6.18v5.6c0 1.68.7 2.42 1.36 3.32.23.33.28.72-.01.96-.74.61-2.78 2.38-2.78 2.38zm-3.64-8.76v-.78c-2.61 0-5.37.56-5.37 3.62 0 1.55.81 2.6 2.2 2.6 1 0 1.92-.62 2.5-1.63.7-1.25.67-2.41.67-3.81zm-43.7 8.76c-.23.2-.67.22-.84.08-1.24-.95-2.07-2.4-2.07-2.4-1.99 2.01-3.39 2.62-5.96 2.62-3.04 0-5.4-1.87-5.4-5.6a6.1 6.1 0 0 1 3.85-5.87c1.96-.86 4.7-1.01 6.79-1.25 0 0 .17-2.25-.44-3.07a2.54 2.54 0 0 0-2.03-.93c-1.34 0-2.63.72-2.89 2.11-.07.4-.37.74-.68.7l-3.46-.37a.63.63 0 0 1-.53-.75C1.4 1.31 5.24.03 8.68.03c1.76 0 4.05.47 5.44 1.79C15.87 3.45 15.7 5.62 15.7 8v5.6c0 1.68.7 2.42 1.36 3.32.23.33.28.72-.01.96-.74.61-2.78 2.38-2.78 2.38zm-3.63-8.76v-.78c-2.61 0-5.37.56-5.37 3.62 0 1.55.8 2.6 2.2 2.6 1 0 1.92-.62 2.5-1.63.7-1.25.67-2.41.67-3.81zm14.2-1.63v9.76c0 .37-.3.67-.68.67h-3.6a.67.67 0 0 1-.68-.67V1.27c0-.37.3-.67.68-.67h3.37c.37 0 .67.3.67.67v2.35h.07C25.55 1.3 27.2.21 29.42.21c2.26 0 3.67 1.09 4.69 3.41A5.13 5.13 0 0 1 39.09.21c1.52 0 3.17.62 4.18 2.02 1.15 1.55.91 3.8.91 5.78v11.63c0 .37-.31.66-.7.66h-3.6a.67.67 0 0 1-.65-.66V9.87c0-.78.07-2.72-.1-3.45-.27-1.25-1.08-1.6-2.13-1.6a2.4 2.4 0 0 0-2.15 1.52c-.37.93-.34 2.48-.34 3.53v9.77c0 .37-.31.66-.7.66h-3.6a.67.67 0 0 1-.65-.66V9.87c0-2.06.33-5.08-2.23-5.08-2.6 0-2.5 2.94-2.5 5.08zm81.94 9.76c0 .37-.3.67-.67.67h-3.61a.67.67 0 0 1-.67-.67V1.27c0-.37.3-.67.67-.67h3.33c.4 0 .68.31.68.52v2.81h.07c1-2.52 2.42-3.72 4.92-3.72 1.62 0 3.2.58 4.21 2.17.94 1.48.94 3.96.94 5.74v11.6a.68.68 0 0 1-.69.58h-3.62a.68.68 0 0 1-.64-.58V8.58c0-3.72-1.43-3.83-2.26-3.83-.96 0-1.74.75-2.07 1.44a8.3 8.3 0 0 0-.6 3.52l.01 9.92zM.93 79.3c-.62 0-.93-.3-.93-.93V56.68c0-.62.31-.93.93-.93H3c.3 0 .55.07.72.19.17.12.29.36.35.7l.28 1.48c2.99-2.04 5.9-3.06 8.73-3.06 2.9 0 4.86 1.1 5.89 3.3 3.08-2.2 6.16-3.3 9.24-3.3 2.15 0 3.8.6 4.95 1.8 1.15 1.22 1.73 2.94 1.73 5.16v16.35c0 .62-.32.93-.94.93H31.2c-.62 0-.94-.3-.94-.93V63.33c0-1.55-.3-2.7-.88-3.44-.6-.75-1.53-1.12-2.8-1.12-2.28 0-4.56.7-6.87 2.1.03.21.05.44.05.69v16.81c0 .62-.31.93-.93.93h-2.76c-.62 0-.93-.3-.93-.93V63.33c0-1.55-.3-2.7-.89-3.44-.6-.75-1.53-1.12-2.8-1.12-2.37 0-4.64.68-6.82 2.05v17.55c0 .62-.3.93-.93.93H.93zm47.44.7c-2.21 0-3.9-.62-5.09-1.86-1.18-1.24-1.77-2.99-1.77-5.25V56.7c0-.63.3-.94.93-.94h2.75c.63 0 .94.31.94.93v14.73c0 1.67.32 2.9.98 3.69.65.79 1.7 1.18 3.13 1.18 2.24 0 4.5-.74 6.77-2.23V56.68c0-.62.3-.93.93-.93h2.75c.63 0 .94.31.94.93v21.7c0 .61-.31.92-.94.92h-2c-.31 0-.56-.06-.73-.18-.17-.13-.28-.36-.35-.7l-.32-1.62c-2.9 2.13-5.87 3.2-8.92 3.2zm26.52 0c-2.62 0-4.97-.43-7.05-1.3a1.83 1.83 0 0 1-.77-.51c-.14-.19-.21-.48-.21-.88V76c0-.56.18-.84.56-.84.22 0 .6.1 1.16.28 2.06.65 4.2.97 6.4.97 1.53 0 2.69-.3 3.48-.88.8-.59 1.19-1.44 1.19-2.55a2.4 2.4 0 0 0-.72-1.82 7.83 7.83 0 0 0-2.64-1.39l-3.97-1.48c-3.46-1.27-5.18-3.44-5.18-6.5 0-2.02.78-3.65 2.36-4.88 1.57-1.24 3.63-1.86 6.18-1.86a17 17 0 0 1 5.93 1.07c.37.12.64.28.8.48.15.2.23.5.23.9v1.26c0 .56-.2.84-.6.84a4.2 4.2 0 0 1-1.08-.23c-1.65-.5-3.33-.75-5.05-.75-2.98 0-4.48 1.01-4.48 3.02 0 .8.25 1.44.75 1.9.5.47 1.48.98 2.94 1.54l3.64 1.4c1.84.7 3.16 1.55 3.97 2.53.81.97 1.21 2.23 1.21 3.78 0 2.2-.82 3.95-2.47 5.25-1.65 1.3-3.84 1.95-6.58 1.95zm14.94-.7c-.62 0-.94-.3-.94-.93V56.68c0-.62.32-.93.94-.93h2.75c.62 0 .94.31.94.93v21.7c0 .61-.32.92-.94.92h-2.75zm1.4-27.73c-.9 0-1.61-.25-2.13-.76a2.72 2.72 0 0 1-.77-2.02c0-.84.26-1.51.77-2.02a2.88 2.88 0 0 1 2.13-.77c.9 0 1.6.26 2.12.77.52.5.77 1.18.77 2.02 0 .83-.25 1.5-.77 2.02-.51.5-1.22.76-2.12.76zm19.51 28.24c-3.67 0-6.48-1.04-8.42-3.13-1.95-2.1-2.92-5.12-2.92-9.08 0-3.93 1-6.98 3.01-9.13 2-2.15 4.85-3.23 8.52-3.23 1.68 0 3.33.3 4.95.89.34.12.58.27.72.46s.21.5.21.93v1.25c0 .62-.2.93-.6.93-.16 0-.4-.04-.75-.14a13.8 13.8 0 0 0-3.88-.55c-2.61 0-4.5.65-5.65 1.97-1.15 1.32-1.72 3.41-1.72 6.3v.6c0 2.81.58 4.88 1.75 6.2 1.17 1.31 3.01 1.97 5.53 1.97 1.3 0 2.7-.21 4.2-.65.35-.1.58-.14.7-.14.4 0 .61.31.61.93v1.26c0 .4-.06.7-.19.88-.12.18-.37.35-.74.5-1.53.66-3.3.98-5.33.98z'\r\n />\r\n </g>\r\n </SvgIcon>\r\n)\r\n\r\nexport const AmazonMusicVectorIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 50 50' {...props}>\r\n <path d='M 25.3125 3 C 19.210938 3 12.492188 5.3125 11.09375 12.8125 C 10.894531 13.613281 11.5 13.992188 12 14.09375 L 18.1875 14.6875 C 18.789063 14.6875 19.207031 14.101563 19.40625 13.5 C 19.90625 10.898438 22.101563 9.59375 24.5 9.59375 C 25.800781 9.59375 27.292969 10.113281 28.09375 11.3125 C 28.992188 12.613281 28.8125 14.40625 28.8125 15.90625 L 28.8125 16.8125 C 25.113281 17.210938 20.3125 17.5 16.8125 19 C 12.8125 20.699219 10 24.207031 10 29.40625 C 10 36.007813 14.199219 39.3125 19.5 39.3125 C 24 39.3125 26.5 38.195313 30 34.59375 C 31.199219 36.292969 31.585938 37.105469 33.6875 38.90625 C 34.1875 39.207031 34.789063 39.085938 35.1875 38.6875 L 35.1875 38.8125 C 36.488281 37.710938 38.792969 35.601563 40.09375 34.5 C 40.59375 34.199219 40.492188 33.5 40.09375 33 C 38.894531 31.398438 37.6875 30.09375 37.6875 27.09375 L 37.6875 17.1875 C 37.6875 12.988281 38.007813 9.085938 34.90625 6.1875 C 32.40625 3.789063 28.414063 3 25.3125 3 Z M 27 22 L 28.6875 22 L 28.6875 23.40625 C 28.6875 25.804688 28.792969 27.894531 27.59375 30.09375 C 26.59375 31.894531 24.988281 33 23.1875 33 C 20.789063 33 19.3125 31.207031 19.3125 28.40625 C 19.3125 23.707031 23 22.300781 27 22 Z M 44.59375 36.59375 C 42.992188 36.59375 41.085938 37 39.6875 38 C 39.289063 38.300781 39.3125 38.6875 39.8125 38.6875 C 41.414063 38.488281 44.988281 38.007813 45.6875 38.90625 C 46.289063 39.707031 45.007813 43.085938 44.40625 44.6875 C 44.207031 45.1875 44.601563 45.300781 45 45 C 47.699219 42.699219 48.40625 38.007813 47.90625 37.40625 C 47.605469 36.90625 46.195313 36.59375 44.59375 36.59375 Z M 2.1875 37.5 C 1.886719 37.5 1.695313 38.011719 2.09375 38.3125 C 8.09375 43.710938 16.007813 47 24.90625 47 C 31.207031 47 38.492188 45.011719 43.59375 41.3125 C 44.394531 40.710938 43.707031 39.695313 42.90625 40.09375 C 37.207031 42.492188 31.101563 43.6875 25.5 43.6875 C 17.199219 43.6875 9.1875 41.386719 2.6875 37.6875 C 2.488281 37.488281 2.289063 37.5 2.1875 37.5 Z' />\r\n </SvgIcon>\r\n)\r\n\r\nexport const SoundCloudIcon: FC<SvgIconProps> = (props) => (\r\n <SvgIcon viewBox='0 0 100 100' {...props}>\r\n <path d='M16.569,39.37c-1.705-0.045-3.238,1.488-3.193,3.193c0,0,0,29.566,0,29.566c-0.015,1.821,1.503,2.531,3.193,2.537c1.725-0.005,3.245-0.694,3.237-2.537V42.563C19.844,40.832,18.311,39.322,16.569,39.37z' />\r\n <path d='M92.322,50.873c-4.128-4.284-10.743-5.494-16.161-3.193c-0.888-13.158-12.729-24.001-25.936-23.749c-1.924,0-3.863,0.233-5.817,0.7c-0.904,0.292-1.356,1.196-1.356,2.712v47.585c0.017,0.393,0.319,0.981,0.787,1.094l38.051,0.044C94.867,76.231,101.723,59.947,92.322,50.873z' />\r\n <path d='M9.746,54.021c-0.084-4.274-6.341-4.292-6.43,0c0,0,0,12.683,0,12.683c-0.13,4.255,6.914,4.617,6.429,0C9.746,66.705,9.746,54.021,9.746,54.021z' />\r\n <path d='M37.061,25.768c-2.225-0.505-4.384,1.741-4.242,4.155v43.737c0,1.603,1.079,2.406,3.237,2.406c2.158,0,3.236-0.802,3.236-2.406V29.923C39.291,27.473,38.548,26.088,37.061,25.768z' />\r\n <path d='M26.672,43.262c-1.764-0.045-3.325,1.517-3.28,3.28v26.985c0,0.845,0.306,1.48,0.919,1.903c1.718,1.174,5.653,0.851,5.555-1.903V46.543C29.913,44.808,28.407,43.221,26.672,43.262z' />\r\n </SvgIcon>\r\n)\r\n\r\nconst mapSocialLinkConfig: Record<ESocialLinkType, ISocialLinkConfig> = {\r\n [ESocialLinkType.Website]: { primaryColor: '#0066cc', Icon: LanguageIcon },\r\n [ESocialLinkType.Spotify]: { primaryColor: '#1DB954', Icon: SpotifyIcon },\r\n [ESocialLinkType.AppleMusic]: { label: 'Apple Music', primaryColor: '#FA243C', Icon: AppleMusicIcon },\r\n [ESocialLinkType.AmazonMusic]: { label: 'Amazon Music', primaryColor: '#26d2dc', Icon: AmazonMusicVectorIcon },\r\n [ESocialLinkType.YouTube]: { primaryColor: '#FF0000', Icon: YouTubeIcon },\r\n [ESocialLinkType.Deezer]: { primaryColor: '#A238FF', Icon: DeezerIcon },\r\n [ESocialLinkType.Tidal]: { primaryColor: '#000000', Icon: TidalIcon },\r\n [ESocialLinkType.SoundCloud]: { primaryColor: '#FF5500', Icon: SoundCloudIcon }\r\n // [ESocialLinkType.Facebook]: { primaryColor: '#1877F2', Icon: FacebookIcon }\r\n // [ESocialLinkType.Twitter]: { primaryColor: '#1DA1F2', Icon: TwitterIcon },\r\n // [ESocialLinkType.Instagram]: { primaryColor: '#E4405F', Icon: InstagramIcon },\r\n // [ESocialLinkType.TikTok]: { primaryColor: '#00F2EA', Icon: TiktokIcon },\r\n // [ESocialLinkType.Bandcamp]: { primaryColor: '#1DA0C3', Icon: AlbumIcon },\r\n}\r\n\r\nexport const getSocialLinkConfig = (type: ESocialLinkType = ESocialLinkType.Website): ISocialLinkConfig => {\r\n return mapSocialLinkConfig[type] || { primaryColor: '#0066cc', Icon: LanguageIcon }\r\n}\r\n"],"names":["SpotifyIcon","props","_jsx","SvgIcon","_objectSpread","viewBox","children","d","AppleMusicIcon","TiktokIcon","DeezerIcon","transform","fillRule","clipRule","TidalIcon","AmazonMusicIcon","_jsxs","xmlns","fill","AmazonMusicVectorIcon","SoundCloudIcon","mapSocialLinkConfig","_defineProperty","ESocialLinkType","Website","primaryColor","Icon","LanguageIcon","Spotify","AppleMusic","label","AmazonMusic","YouTube","YouTubeIcon","Deezer","Tidal","SoundCloud","getSocialLinkConfig","type"],"mappings":"kUAWaA,EAAgC,SAACC,GAAK,OACjDC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,eAAkBJ,GAAK,GAAA,CACtCK,SAAAJ,EAAA,OAAA,CAAMK,EAAE,4xBACA,EAGCC,EAAmC,SAACP,GAAK,OACpDC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,eAAkBJ,GAAK,GAAA,CACtCK,SAAAJ,EAAA,OAAA,CAAMK,EAAE,miBACA,EAGCE,EAA+B,SAACR,GAAK,OAChDC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,eAAkBJ,GAAK,GAAA,CACtCK,SAAAJ,EAAA,OAAA,CAAMK,EAAE,4MACA,EAGCG,EAA+B,SAACT,GAAK,OAChDC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,eAAkBJ,GAAK,GAAA,CACtCK,SAAAJ,EAAA,IAAA,CAAGS,UAAU,gCACXL,SAAAJ,EAAA,OAAA,CACEU,SAAS,UACTC,SAAS,UACTN,EAAE,mvDAGE,EAGCO,EAA8B,SAACb,GAAK,OAC/CC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,aAAgBJ,GAAK,GAAA,CACpCK,SAAAJ,EAAA,OAAA,CAAMK,EAAE,2MACA,EAGCQ,EAAoC,SAACd,GAAK,OACrDC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,cAAiBJ,GAAK,GAAA,CACrCK,SAAAU,EAAA,IAAA,CAAGC,MAAM,6BAA6BC,KAAK,mBAAiB,UAASZ,SAAA,CACnEJ,UAAMK,EAAE,0BACRL,EAAA,OAAA,CACEgB,KAAK,OACLX,EAAE,+iKAGE,EAGCY,EAA0C,SAAClB,GAAK,OAC3DC,EAACC,EAAOC,EAAAA,EAAA,CAACC,QAAQ,aAAgBJ,GAAK,GAAA,CACpCK,SAAAJ,EAAA,OAAA,CAAMK,EAAE,i7DACA,EAGCa,EAAmC,SAACnB,GAAK,OACpDe,EAACb,EAAOC,EAAAA,EAAA,CAACC,QAAQ,eAAkBJ,GAAK,GAAA,WACtCC,EAAM,OAAA,CAAAK,EAAE,uMACRL,UAAMK,EAAE,4QACRL,UAAMK,EAAE,gJACRL,EAAA,OAAA,CAAMK,EAAE,iLACRL,EAAM,OAAA,CAAAK,EAAE,qLACA,EAGNc,EAAmBC,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EACtBC,GAAAA,EAAgBC,QAAU,CAAEC,aAAc,UAAWC,KAAMC,IAC3DJ,EAAgBK,QAAU,CAAEH,aAAc,UAAWC,KAAM1B,IAC3DuB,EAAgBM,WAAa,CAAEC,MAAO,cAAeL,aAAc,UAAWC,KAAMlB,IACpFe,EAAgBQ,YAAc,CAAED,MAAO,eAAgBL,aAAc,UAAWC,KAAMP,IACtFI,EAAgBS,QAAU,CAAEP,aAAc,UAAWC,KAAMO,IAC3DV,EAAgBW,OAAS,CAAET,aAAc,UAAWC,KAAMhB,IAC1Da,EAAgBY,MAAQ,CAAEV,aAAc,UAAWC,KAAMZ,IACzDS,EAAgBa,WAAa,CAAEX,aAAc,UAAWC,KAAMN,IAQpDiB,EAAsB,WAAuE,IAAtEC,sDAAwBf,GAAAA,EAAgBC,QAC1E,OAAOH,EAAoBiB,IAAS,CAAEb,aAAc,UAAWC,KAAMC,EACvE"}
@@ -1,2 +0,0 @@
1
- import{objectSpread2 as r}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsx as t}from"react/jsx-runtime";import{styled as i,Avatar as o}from"@mui/material";import"./unit.icons.js";import"dayjs";var e=i((function(i){return t(o,r({},i))}))((function(r){var t=r.size;return{width:t||28,height:t||28}}));export{e as WrapIcon};
2
- //# sourceMappingURL=units.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"units.js","sources":["../../../src/lab/input.social-links/units.tsx"],"sourcesContent":["import { Avatar, AvatarGroup, AvatarProps, colors, styled } from '@mui/material'\r\nimport { GridRenderCellParams, GridTreeNodeWithRender } from '@mui/x-data-grid'\r\nimport { ISocialLinkData } from './types'\r\nimport { structureVersion } from './configs'\r\nimport { getSocialLinkConfig } from './unit.icons'\r\nimport { tryParseObject } from '../../utils/helpers'\r\n\r\ninterface IWrapIconProps extends AvatarProps {\r\n size?: string | number\r\n [key: string]: any\r\n}\r\n\r\nexport const WrapIcon = styled((props: IWrapIconProps) => <Avatar {...props} />)(({ size }) => ({\r\n width: size || 28,\r\n height: size || 28\r\n}))\r\n\r\nexport const renderCellSocials = () => {\r\n return function func(tableRow: GridRenderCellParams<any, any, any, GridTreeNodeWithRender>) {\r\n const obj = tryParseObject<ISocialLinkData>(tableRow.value, { StructureVersion: structureVersion, Items: [] })\r\n const val = Array.isArray(obj?.Items) ? obj.Items : []\r\n return (\r\n <AvatarGroup spacing='medium' max={5}>\r\n {val.map((item, i) => {\r\n const config = getSocialLinkConfig(item.Type)\r\n const IconComp = config.Icon\r\n return (\r\n <WrapIcon\r\n key={i.toString()}\r\n sx={{ bgcolor: config.primaryColor }}\r\n component='a'\r\n href={item.Url}\r\n target='_blank'\r\n rel='noopener noreferrer'\r\n >\r\n <IconComp sx={{ color: config.secondaryColor ?? colors.common.white }} />\r\n </WrapIcon>\r\n )\r\n })}\r\n </AvatarGroup>\r\n )\r\n }\r\n}\r\n"],"names":["WrapIcon","styled","props","_jsx","Avatar","_objectSpread","_ref","size","width","height"],"mappings":"iNAYaA,EAAWC,GAAO,SAACC,GAAqB,OAAKC,EAACC,EAAMC,EAAKH,CAAAA,EAAAA,GAAS,GAAvDD,EAAyD,SAAAK,GAAA,IAAGC,EAAID,EAAJC,KAAI,MAAQ,CAC9FC,MAAOD,GAAQ,GACfE,OAAQF,GAAQ,GACjB"}
@@ -1,2 +0,0 @@
1
- import{inherits as e,createClass as t,superPropGet as r,typeof as n,objectWithoutProperties as i,objectSpread2 as o,classCallCheck as a,callSuper as s,defineProperty as u}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as c,Fragment as l}from"react/jsx-runtime";import f from"events";import{forwardRef as v,useEffect as p}from"react";var g=["onClick","routeKey"],d=function(){function n(){var e;return a(this,n),e=s(this,n),u(e,"_createWrapListener",(function(e){return function(){try{e.apply(void 0,arguments)}catch(e){console.error("Error in MfeBridge listener:",e)}}})),e}return e(n,f),t(n,[{key:"subscribe",value:function(e,t){var i=this,o=!(arguments.length>2&&void 0!==arguments[2])||arguments[2]?this._createWrapListener(t):t;return r(n,"addListener",this)([e,o]),function(){r(n,"removeListener",i)([e,o])}}}])}();function h(){if(void 0===("undefined"==typeof globalThis?"undefined":n(globalThis)))return null;void 0===globalThis.MfeNavigationEventStore&&(globalThis.MfeNavigationEventStore=new d);var e=globalThis.MfeNavigationEventStore;return e.setMaxListeners(50),e}var m=function(e){return p((function(){var t=h();if(t){var r=t.subscribe("navigation",(function(t){e.navigation&&e.navigation(t.routeKey)}));return function(){r()}}}),[]),c(l,{})},b=v((function(e,t){var r=e.onClick,n=e.routeKey,a=i(e,g);return c("a",o(o({},a),{},{ref:t,onClick:function(e){if(r&&r(e),!e.defaultPrevented){var t=h();t&&n&&(e.preventDefault(),e.stopPropagation(),t.emit("navigation",{routeKey:n,options:{message:"Link clicked"}}))}}}))})),y=function(e){var t=h();t&&t.emit("navigation",{routeKey:e,options:{message:"Navigating to ".concat(e)}})};export{b as MfeLink,d as MfeNavigationEventStore,m as MfeNavigationProvider,h as getMfeNavigationEventStore,y as mfeNavigation};
2
- //# sourceMappingURL=navigation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navigation.js","sources":["../../src/mfe-shared/navigation.tsx"],"sourcesContent":["import EventEmitter from 'events'\r\nimport { FC, forwardRef, useEffect } from 'react'\r\n\r\ninterface IEventOptions {\r\n message?: string\r\n}\r\n\r\nexport interface IMfeNavigationEventConfigs {\r\n navigation: [{ routeKey?: string; options?: IEventOptions }]\r\n}\r\n\r\nexport class MfeNavigationEventStore extends EventEmitter<IMfeNavigationEventConfigs> {\r\n constructor() {\r\n super()\r\n }\r\n /**\r\n * Subscribe to a specific channel\r\n * @param channel The channel to subscribe to\r\n * @param callback Function to call when an event occurs on this channel\r\n * @returns Unsubscribe function to remove the event listener\r\n */\r\n _createWrapListener = (callback: (...payload: any[]) => void) => {\r\n return (...payload: any[]) => {\r\n try {\r\n callback(...payload)\r\n } catch (error) {\r\n console.error('Error in MfeBridge listener:', error)\r\n }\r\n }\r\n }\r\n subscribe<K extends keyof IMfeNavigationEventConfigs>(\r\n eventName: K,\r\n listener: K extends keyof IMfeNavigationEventConfigs\r\n ? IMfeNavigationEventConfigs[K] extends unknown[]\r\n ? (...args: IMfeNavigationEventConfigs[K]) => void\r\n : never\r\n : never,\r\n isTry: boolean = true\r\n ) {\r\n const action = isTry ? this._createWrapListener(listener) : listener\r\n super.addListener(eventName, action as any)\r\n return () => {\r\n super.removeListener(eventName, action as any)\r\n }\r\n }\r\n}\r\n\r\nexport function getMfeNavigationEventStore() {\r\n if (typeof globalThis === undefined) return null\r\n\r\n if (typeof (globalThis as any).MfeNavigationEventStore === 'undefined') {\r\n // If MfeNavigationEventStore is not defined globally, define it\r\n // This allows it to be used in other parts of the application\r\n // without needing to import it explicitly\r\n ;(globalThis as any).MfeNavigationEventStore = new MfeNavigationEventStore()\r\n }\r\n const eventEmitter = (globalThis as any).MfeNavigationEventStore as MfeNavigationEventStore\r\n eventEmitter.setMaxListeners(50)\r\n return eventEmitter\r\n}\r\n\r\ntype INavigationFunction = (routeKey?: string) => void\r\n\r\nexport interface IMfeNavigationProviderProps {\r\n navigation?: INavigationFunction\r\n}\r\n\r\nexport const MfeNavigationProvider: FC<IMfeNavigationProviderProps> = (props) => {\r\n useEffect(() => {\r\n const eventStore = getMfeNavigationEventStore()\r\n if (!eventStore) return\r\n\r\n const unsubscribe = eventStore.subscribe('navigation', (payload) => {\r\n if (props.navigation) {\r\n props.navigation(payload.routeKey)\r\n }\r\n })\r\n\r\n return () => {\r\n unsubscribe()\r\n }\r\n }, [])\r\n\r\n return <></>\r\n}\r\n\r\nexport interface IMfeLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\r\n routeKey?: string\r\n}\r\n\r\nexport const MfeLink = forwardRef<HTMLAnchorElement, IMfeLinkProps>(({ onClick, routeKey, ...props }, ref) => {\r\n const handleClick = (event: React.MouseEvent<HTMLAnchorElement>) => {\r\n if (onClick) {\r\n onClick(event)\r\n }\r\n if (event.defaultPrevented) {\r\n return // nothing to do if event already handled\r\n }\r\n const eventStore = getMfeNavigationEventStore()\r\n if (eventStore && !!routeKey) {\r\n event.preventDefault() // Prevent default link behavior\r\n event.stopPropagation() // Stop the event from bubbling up\r\n eventStore.emit('navigation', { routeKey: routeKey, options: { message: 'Link clicked' } })\r\n }\r\n }\r\n return <a {...props} ref={ref} onClick={handleClick} />\r\n})\r\n\r\nexport const mfeNavigation = (routeKey: string) => {\r\n const eventStore = getMfeNavigationEventStore()\r\n if (eventStore) {\r\n eventStore.emit('navigation', { routeKey: routeKey, options: { message: `Navigating to ${routeKey}` } })\r\n }\r\n}\r\n"],"names":["MfeNavigationEventStore","_this","_classCallCheck","_callSuper","this","_defineProperty","callback","apply","arguments","error","console","_inherits","EventEmitter","_createClass","key","value","eventName","listener","_this2","action","_createWrapListener","_superPropGet","getMfeNavigationEventStore","undefined","globalThis","_typeof","eventEmitter","setMaxListeners","MfeNavigationProvider","props","useEffect","eventStore","unsubscribe","subscribe","payload","navigation","routeKey","_jsx","MfeLink","forwardRef","_ref","ref","onClick","_objectWithoutProperties","_excluded","_objectSpread","event","defaultPrevented","preventDefault","stopPropagation","emit","options","message","mfeNavigation","concat"],"mappings":"qXAWaA,aACX,SAAAA,IAAA,IAAAC,EAiBC,OAjBDC,OAAAF,GACEC,EAAAE,EAAAC,KAAAJ,GAEFK,EAAAJ,EAMsB,uBAAA,SAACK,GACrB,OAAO,WACL,IACEA,EAAQC,WAAAC,EAAAA,UACT,CAAC,MAAOC,GACPC,QAAQD,MAAM,+BAAgCA,EAC/C,CACF,KACFR,CAfD,CAAC,OAAAU,EAAAX,EAH0CY,GAG1CC,EAAAb,EAAA,CAAA,CAAAc,IAAA,YAAAC,MAgBD,SACEC,EACAC,GAKqB,IAAAC,EAAAd,KAEfe,6DAAiBf,KAAKgB,oBAAoBH,GAAYA,EAE5D,OADAI,EAAArB,EAAkBgB,cAAAA,KAAlBK,CAAkBL,CAAAA,EAAWG,IACtB,WACLE,EAAArB,EAAA,iBAAAkB,EAAAG,CAAqBL,CAAAA,EAAWG,GACjC,CACH,IAAC,aAGaG,IACd,QAA0BC,KAAL,oBAAVC,WAAU,YAAAC,EAAVD,aAA0B,OAAO,UAEe,IAA/CA,WAAmBxB,0BAI3BwB,WAAmBxB,wBAA0B,IAAIA,GAErD,IAAM0B,EAAgBF,WAAmBxB,wBAEzC,OADA0B,EAAaC,gBAAgB,IACtBD,CACT,KAQaE,EAAyD,SAACC,GAgBrE,OAfAC,GAAU,WACR,IAAMC,EAAaT,IACnB,GAAKS,EAAL,CAEA,IAAMC,EAAcD,EAAWE,UAAU,cAAc,SAACC,GAClDL,EAAMM,YACRN,EAAMM,WAAWD,EAAQE,SAE7B,IAEA,OAAO,WACLJ,GACD,CAVgB,CAWlB,GAAE,IAEIK,OACT,EAMaC,EAAUC,GAA6C,SAAAC,EAAkCC,GAAO,IAAtCC,EAAOF,EAAPE,QAASN,EAAQI,EAARJ,SAAaP,EAAKc,EAAAH,EAAAI,GAehG,OAAOP,EAAA,IAAAQ,EAAAA,KAAOhB,GAAK,GAAA,CAAEY,IAAKA,EAAKC,QAdX,SAACI,GAInB,GAHIJ,GACFA,EAAQI,IAENA,EAAMC,iBAAV,CAGA,IAAMhB,EAAaT,IACfS,GAAgBK,IAClBU,EAAME,iBACNF,EAAMG,kBACNlB,EAAWmB,KAAK,aAAc,CAAEd,SAAUA,EAAUe,QAAS,CAAEC,QAAS,kBALzE,CAOF,IAEH,IAEaC,EAAgB,SAACjB,GAC5B,IAAML,EAAaT,IACfS,GACFA,EAAWmB,KAAK,aAAc,CAAEd,SAAUA,EAAUe,QAAS,CAAEC,QAAO,iBAAAE,OAAmBlB,KAE7F"}
@@ -1,2 +0,0 @@
1
- import{inherits as r,createClass as t,objectSpread2 as e,classCallCheck as o,callSuper as n,defineProperty as a}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as i,Fragment as s}from"react/jsx-runtime";import{Component as u}from"react";import{ELazyStatus as l}from"./types.js";import c from"./ui.error-page.js";var p=function(r){var t=r.children;return i(s,{children:t})},d={LazySpinner:p},f=function(s,p){return function(){function f(r){var t;return o(this,f),t=n(this,f,[r]),a(t,"initialParam",(function(){var r,e,o,n=null!==(r=null==p?void 0:p.param)&&void 0!==r?r:{},a=null!==(e=null===(o=t.props)||void 0===o?void 0:o.param)&&void 0!==e?e:{};return Object.assign({},n,a)})),a(t,"componentDidMount",(function(){if(t.props.fetchData){var r,e=t.initialParam();null===(r=t.tokenSources)||void 0===r||r.abort(),t.tokenSources=new AbortController,t.fetchSource=t.props.fetchData(e,t.tokenSources.signal)}})),t.optionsMerge=Object.assign({},d,p),t}return r(f,u),t(f,[{key:"render",value:function(){var r=this.optionsMerge;switch(this.props.status){case l.Loading:case l.Loaded:return i(r.LazySpinner,{loading:this.props.status===l.Loading,children:i(s,e({},this.props))});case l.Error:var t=r.ErrorScreen||c;return i(t,{});default:return i("div",{})}}},{key:"componentWillUnmount",value:function(){var r,t;null===(r=this.tokenSources)||void 0===r||r.abort(),(null===(t=this.fetchSource)||void 0===t?void 0:t.abort)&&this.fetchSource.abort()}}])}()};export{p as EmptyComponent,f as default,d as defaultOptionHocLazy};
2
- //# sourceMappingURL=create.hoc-lazy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.hoc-lazy.js","sources":["../../src/redux/create.hoc-lazy.tsx"],"sourcesContent":["import React, { Component, ComponentType, PropsWithChildren } from 'react'\r\nimport { IErrorViewDefaultProps, IHocLazyWrapperProps } from './ui.units'\r\nimport { ELazyStatus, IDinoReduxDispatch, IDinoReduxState, IReturnDispatch } from './types'\r\nimport UIErrorPage from './ui.error-page'\r\n\r\nexport interface IHocLazyBase<T> extends IDinoReduxState, IDinoReduxDispatch<T> {}\r\n\r\nexport interface IHocLazyBaseOptions {\r\n ErrorScreen?: React.ComponentType<IErrorViewDefaultProps>\r\n LazySpinner: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport interface IHocLazyOtherProps<T> {\r\n param?: T\r\n}\r\n\r\nexport interface IHocLazyOptions<T> extends IHocLazyOtherProps<T>, Omit<IHocLazyBaseOptions, 'LazySpinner'> {\r\n LazySpinner?: React.ComponentType<PropsWithChildren<IHocLazyWrapperProps>>\r\n}\r\n\r\nexport const EmptyComponent: React.FC<React.PropsWithChildren<any>> = ({ children }) => <>{children}</>\r\n\r\nexport const defaultOptionHocLazy: IHocLazyBaseOptions = {\r\n LazySpinner: EmptyComponent\r\n}\r\n\r\nconst CreateHocLazy = function <P extends IHocLazyBase<T>, T = any>(\r\n ChildComponent: React.ComponentType<P>,\r\n options?: IHocLazyOptions<T>\r\n): ComponentType<P> {\r\n type TProps = P & IHocLazyOtherProps<T>\r\n class HocComponent extends Component<TProps> {\r\n optionsMerge: IHocLazyBaseOptions\r\n tokenSources?: AbortController\r\n fetchSource?: IReturnDispatch\r\n constructor(props: TProps) {\r\n super(props)\r\n this.optionsMerge = Object.assign({}, defaultOptionHocLazy, options) as IHocLazyBaseOptions\r\n }\r\n\r\n render() {\r\n const { optionsMerge: OptionsMerge } = this\r\n switch (this.props.status) {\r\n case ELazyStatus.Loading:\r\n case ELazyStatus.Loaded:\r\n return (\r\n <OptionsMerge.LazySpinner loading={this.props.status === ELazyStatus.Loading}>\r\n <ChildComponent {...this.props} />\r\n </OptionsMerge.LazySpinner>\r\n )\r\n case ELazyStatus.Error:\r\n const ErrorScreen = OptionsMerge.ErrorScreen || UIErrorPage\r\n return <ErrorScreen />\r\n default:\r\n return <div></div>\r\n }\r\n }\r\n\r\n initialParam = (): T => {\r\n const oData = options?.param ?? {}\r\n const pData = this.props?.param ?? {}\r\n return Object.assign({}, oData, pData) as T\r\n }\r\n\r\n componentDidMount = () => {\r\n if (this.props.fetchData) {\r\n const param = this.initialParam()\r\n this.tokenSources?.abort()\r\n this.tokenSources = new AbortController()\r\n this.fetchSource = this.props.fetchData(param, this.tokenSources.signal)\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n this.tokenSources?.abort()\r\n this.fetchSource?.abort && this.fetchSource.abort()\r\n }\r\n }\r\n return HocComponent\r\n}\r\nexport default CreateHocLazy\r\n"],"names":["EmptyComponent","_ref","children","_jsx","_Fragment","defaultOptionHocLazy","LazySpinner","CreateHocLazy","ChildComponent","options","HocComponent","props","_this","_classCallCheck","_callSuper","_defineProperty","_options$param","_this$props$param","_this$props","oData","param","pData","Object","assign","fetchData","_this$tokenSources","initialParam","tokenSources","abort","AbortController","fetchSource","signal","optionsMerge","_inherits","Component","_createClass","key","value","OptionsMerge","this","status","ELazyStatus","Loading","Loaded","loading","_objectSpread","Error","ErrorScreen","UIErrorPage","_this$tokenSources2","_this$fetchSource"],"mappings":"sUAoBaA,EAAyD,SAA3CC,GAAA,IAA8CC,EAAQD,EAARC,SAAQ,OAAOC,EAAGC,EAAA,CAAAF,SAAAA,GAAY,EAE1FG,EAA4C,CACvDC,YAAaN,GAGTO,EAAgB,SACpBC,EACAC,GAkDA,kBA3CE,SAAAC,EAAYC,GAAa,IAAAC,EAEoE,OAFpEC,OAAAH,GACvBE,EAAAE,EAAAJ,KAAAA,GAAMC,IAAMI,EAAAH,EAAA,gBAsBC,WAAQ,IAAAI,EAAAC,EAAAC,EACfC,EAAsBH,QAAjBA,EAAGP,aAAO,EAAPA,EAASW,iBAAKJ,EAAAA,EAAI,CAAE,EAC5BK,EAAyB,QAApBJ,EAAa,QAAbC,EAAGN,EAAKD,aAALO,IAAUA,OAAVA,EAAAA,EAAYE,aAAKH,IAAAA,EAAAA,EAAI,CAAE,EACrC,OAAOK,OAAOC,OAAO,GAAIJ,EAAOE,MACjCN,EAAAH,EAAA,qBAEmB,WAClB,GAAIA,EAAKD,MAAMa,UAAW,CAAA,IAAAC,EAClBL,EAAQR,EAAKc,eACF,QAAjBD,EAAAb,EAAKe,oBAAY,IAAAF,GAAjBA,EAAmBG,QACnBhB,EAAKe,aAAe,IAAIE,gBACxBjB,EAAKkB,YAAclB,EAAKD,MAAMa,UAAUJ,EAAOR,EAAKe,aAAaI,OAClE,KAjCDnB,EAAKoB,aAAeV,OAAOC,OAAO,CAAE,EAAElB,EAAsBI,GAA+BG,CAC7F,CAAC,OAAAqB,EAAAvB,EAPwBwB,GAOxBC,EAAAzB,EAAA,CAAA,CAAA0B,IAAA,SAAAC,MAED,WACE,IAAsBC,EAAiBC,KAA/BP,aACR,OAAQO,KAAK5B,MAAM6B,QACjB,KAAKC,EAAYC,QACjB,KAAKD,EAAYE,OACf,OACExC,EAACmC,EAAahC,YAAY,CAAAsC,QAASL,KAAK5B,MAAM6B,SAAWC,EAAYC,QACnExC,SAAAC,EAACK,EAAcqC,EAAK,CAAA,EAAAN,KAAK5B,UAG/B,KAAK8B,EAAYK,MACf,IAAMC,EAAcT,EAAaS,aAAeC,EAChD,OAAO7C,EAAC4C,EAAW,IACrB,QACE,OAAO5C,YAEb,GAAC,CAAAiC,IAAA,uBAAAC,MAiBD,WAAoB,IAAAY,EAAAC,EACD,QAAjBD,EAAIV,KAACZ,oBAAY,IAAAsB,GAAjBA,EAAmBrB,SACH,QAAhBsB,EAAIX,KAACT,mBAALoB,IAAgBA,OAAhBA,EAAAA,EAAkBtB,QAASW,KAAKT,YAAYF,OAC9C,IAAC,GAGL"}
@@ -1,2 +0,0 @@
1
- import{createClass as a,classCallCheck as e,defineProperty as r}from"../_virtual/_rollupPluginBabelHelpers.js";import s from"./create.hoc-lazy.js";var l=new(a((function a(){e(this,a),r(this,"createHocLazy",s)})));export{l as default};
2
- //# sourceMappingURL=dino.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dino.js","sources":["../../src/redux/dino.ts"],"sourcesContent":["import CreateHocLazy from './create.hoc-lazy'\r\n\r\nclass DinoReduxBase {\r\n createHocLazy = CreateHocLazy\r\n}\r\n\r\nconst DinoRedux = new DinoReduxBase()\r\n\r\nexport default DinoRedux\r\n"],"names":["DinoRedux","_createClass","DinoReduxBase","_classCallCheck","_defineProperty","CreateHocLazy"],"mappings":"mJAA6C,IAMvCA,EAAY,IAJCC,GAAA,SAAAC,IAAAC,OAAAD,GAAAE,uBACDC,EAAa"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sources":["../../src/redux/types.ts"],"sourcesContent":["export enum ELazyStatus {\r\n Loading = 'Loading',\r\n Loaded = 'Loaded',\r\n Error = 'Error'\r\n}\r\n\r\nexport interface IDinoReduxState {\r\n status: ELazyStatus\r\n requestedId?: string\r\n}\r\n\r\nexport interface IReturnDispatch {\r\n abort?: () => void\r\n}\r\n\r\nexport interface IDinoReduxDispatch<P = any> {\r\n fetchData?: (params?: P, signal?: AbortSignal) => IReturnDispatch\r\n setStatus: (status: ELazyStatus) => void\r\n}\r\n\r\nexport interface IBaseActions<T, Id extends keyof T> {\r\n create: (value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n update: (id: T[Id], value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n updatePatch: (oldValue: T, value: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n delete: (id: T[Id], value?: Partial<T>, signal?: AbortSignal) => Promise<void>\r\n}\r\n\r\nexport type IDinoReduxActions<T, Id extends keyof T, K extends keyof IBaseActions<T, Id> = keyof IBaseActions<T, Id>> = Pick<IBaseActions<T, Id>, K>\r\n"],"names":["ELazyStatus"],"mappings":"IAAYA,GAAZ,SAAYA,GACVA,EAAA,QAAA,UACAA,EAAA,OAAA,SACAA,EAAA,MAAA,OACD,CAJD,CAAYA,IAAAA,EAIX,CAAA"}
@@ -1,2 +0,0 @@
1
- import{objectWithoutProperties as t,objectSpread2 as o}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as r,jsxs as e}from"react/jsx-runtime";import{styled as i,Box as n,Button as a,Stack as l,Typography as c}from"@mui/material";import m from"@mui/icons-material/ArrowRightAlt";var d=["children"],p=function(){return e(l,{sx:{alignItems:"center",paddingBottom:"64px"},children:[r(u,{children:r("img",{src:"images/vector-404.webp",alt:"error-404-vector"})}),r(c,{variant:"subtitle1",component:"p",sx:{textAlign:"center",mt:"20px"},children:"Sorry, page not found or connection to server lost. Please come back later...."}),r(h,{href:"/",children:"Back to home page"})]})},u=i((function(e){var i=e.children,a=t(e,d);return r(n,o(o({},a),{},{children:r("div",{children:i})}))}))({width:"100%",maxWidth:"560px",flex:"0 0 auto","& > div":{width:"100%",paddingBottom:"100%",position:"relative"},"& img":{position:"absolute",top:0,left:0,width:"100%",height:"100%"}}),h=i((function(t){return r(a,o({component:"a",color:"inherit",variant:"contained",size:"large",endIcon:r(m,{fontSize:"small"})},t))}))({backgroundColor:"var(--color-black)",color:"var(--color-text-light)",minWidth:"250px",marginTop:"24px",height:"56px",textTransform:"none",fontWeight:600,transition:"0.3s","&:hover":{backgroundColor:"var(--color-black2)",color:"var(--color-text-light)"},"& .MuiButton-icon.MuiButton-endIcon":{transition:"0.3s"},"&:hover .MuiButton-icon.MuiButton-endIcon":{marginLeft:"16px"}});export{p as default};
2
- //# sourceMappingURL=ui.error-page.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ui.error-page.js","sources":["../../src/redux/ui.error-page.tsx"],"sourcesContent":["import React, { FC } from 'react'\r\nimport { Box, BoxProps, Button, ButtonProps, Stack, styled, Typography } from '@mui/material'\r\nimport ArrowRightAltIcon from '@mui/icons-material/ArrowRightAlt'\r\n\r\nconst UIErrorPage: FC = () => (\r\n <Stack sx={{ alignItems: 'center', paddingBottom: '64px' }}>\r\n <WrapImage>\r\n <img src='images/vector-404.webp' alt='error-404-vector' />\r\n </WrapImage>\r\n <Typography variant='subtitle1' component='p' sx={{ textAlign: 'center', mt: '20px' }}>\r\n Sorry, page not found or connection to server lost. Please come back later....\r\n </Typography>\r\n <CustomButton href='/'>Back to home page</CustomButton>\r\n </Stack>\r\n)\r\nexport default UIErrorPage\r\n\r\nconst WrapImage = styled(({ children, ...props }: BoxProps) => (\r\n <Box {...props}>\r\n <div>{children}</div>\r\n </Box>\r\n))({\r\n width: '100%',\r\n maxWidth: '560px',\r\n flex: '0 0 auto',\r\n '& > div': {\r\n width: '100%',\r\n paddingBottom: '100%',\r\n position: 'relative'\r\n },\r\n '& img': {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%'\r\n }\r\n})\r\n\r\nconst CustomButton = styled((p: ButtonProps & { href: string }) => {\r\n return <Button component='a' color='inherit' variant='contained' size='large' endIcon={<ArrowRightAltIcon fontSize='small' />} {...p} />\r\n})({\r\n backgroundColor: 'var(--color-black)',\r\n color: 'var(--color-text-light)',\r\n minWidth: '250px',\r\n marginTop: '24px',\r\n height: '56px',\r\n textTransform: 'none',\r\n fontWeight: 600,\r\n transition: '0.3s',\r\n '&:hover': {\r\n backgroundColor: 'var(--color-black2)',\r\n color: 'var(--color-text-light)'\r\n },\r\n '& .MuiButton-icon.MuiButton-endIcon': {\r\n transition: '0.3s'\r\n },\r\n '&:hover .MuiButton-icon.MuiButton-endIcon': {\r\n marginLeft: '16px'\r\n }\r\n})\r\n"],"names":["UIErrorPage","_jsxs","Stack","sx","alignItems","paddingBottom","children","_jsx","WrapImage","src","alt","Typography","variant","component","textAlign","mt","CustomButton","href","styled","_ref","props","_objectWithoutProperties","_excluded","Box","_objectSpread","width","maxWidth","flex","position","top","left","height","p","Button","color","size","endIcon","ArrowRightAltIcon","fontSize","backgroundColor","minWidth","marginTop","textTransform","fontWeight","transition","marginLeft"],"mappings":"mTAIMA,EAAkB,WAAP,OACfC,EAACC,EAAK,CAACC,GAAI,CAAEC,WAAY,SAAUC,cAAe,QAChDC,SAAA,CAAAC,EAACC,EACC,CAAAF,SAAAC,EAAA,MAAA,CAAKE,IAAI,yBAAyBC,IAAI,uBAExCH,EAACI,EAAU,CAACC,QAAQ,YAAYC,UAAU,IAAIV,GAAI,CAAEW,UAAW,SAAUC,GAAI,QAAQT,SAAA,mFAGrFC,EAACS,EAAa,CAAAC,KAAK,IAAoCX,SAAA,wBACjD,EAIJE,EAAYU,GAAO,SAAAC,GAAA,IAAGb,EAAQa,EAARb,SAAac,EAAKC,EAAAF,EAAAG,GAAA,OAC5Cf,EAACgB,EAAGC,EAAAA,KAAKJ,GAAK,GAAA,CAAAd,SACZC,EAAM,MAAA,CAAAD,SAAAA,MACF,GAHUY,CAIf,CACDO,MAAO,OACPC,SAAU,QACVC,KAAM,WACN,UAAW,CACTF,MAAO,OACPpB,cAAe,OACfuB,SAAU,YAEZ,QAAS,CACPA,SAAU,WACVC,IAAK,EACLC,KAAM,EACNL,MAAO,OACPM,OAAQ,UAINf,EAAeE,GAAO,SAACc,GAC3B,OAAOzB,EAAC0B,EAAMT,EAAA,CAACX,UAAU,IAAIqB,MAAM,UAAUtB,QAAQ,YAAYuB,KAAK,QAAQC,QAAS7B,EAAC8B,EAAiB,CAACC,SAAS,WAAgBN,GACrI,GAFqBd,CAElB,CACDqB,gBAAiB,qBACjBL,MAAO,0BACPM,SAAU,QACVC,UAAW,OACXV,OAAQ,OACRW,cAAe,OACfC,WAAY,IACZC,WAAY,OACZ,UAAW,CACTL,gBAAiB,sBACjBL,MAAO,2BAET,sCAAuC,CACrCU,WAAY,QAEd,4CAA6C,CAC3CC,WAAY"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"context.js","sources":["../../src/table/context.tsx"],"sourcesContent":["import React, { createContext } from 'react'\r\nimport { TCloseModal, TShowModal } from '../api-context'\r\n\r\nexport interface ITableBaseContext {\r\n showModal: TShowModal\r\n closeModal: TCloseModal\r\n}\r\n\r\nexport const TableBaseContext = createContext<ITableBaseContext>({\r\n showModal: () => {},\r\n closeModal: () => {}\r\n})\r\n\r\nexport const MapTableBaseContext = (context: (context: ITableBaseContext) => React.ReactNode) => (\r\n <TableBaseContext.Consumer>{context}</TableBaseContext.Consumer>\r\n)\r\n"],"names":["TableBaseContext","createContext","showModal","closeModal","MapTableBaseContext","context","_jsx","Consumer"],"mappings":"8EAQaA,IAAAA,EAAmBC,EAAiC,CAC/DC,UAAW,WAAQ,EACnBC,WAAY,WAAK,IAGNC,EAAsB,SAACC,GAAwD,OAC1FC,EAACN,EAAiBO,mBAAUF,GAAoC"}
@@ -1,2 +0,0 @@
1
- import{inherits as r,createClass as e,objectSpread2 as t,classCallCheck as n,callSuper as o,defineProperty as i,regenerator as l}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a}from"react/jsx-runtime";import s,{Component as u}from"react";import{Box as c,Tooltip as p,IconButton as d}from"@mui/material";import f from"@mui/icons-material/Edit";import m from"@mui/icons-material/Delete";import{mergeObjects as v}from"../utils/helpers.js";import"../utils/dayjs-config.js";import"../utils/query-param.js";import{MapTableBaseContext as g}from"./context.js";function h(h){var b=function(){function b(){var r;n(this,b);for(var e=arguments.length,u=new Array(e),c=0;c<e;c++)u[c]=arguments[c];return r=o(this,b,[].concat(u)),i(r,"getButtons",l().m((function r(e,n,o){var i,u,c,v,g,b,y,j,k,C,x,w,D,E;return l().w((function(r){for(;;)switch(r.n){case 0:if(!(k=null!==(i=null===(u=e.props)||void 0===u?void 0:u.before)&&void 0!==i?i:null==n?void 0:n.before)){r.n=1;break}return r.n=1,a(s.Fragment,{children:k(e.props.value,o)},"Before");case 1:if(C=null!==(c=null===(v=e.props)||void 0===v?void 0:v.formEdit)&&void 0!==c?c:null==n?void 0:n.formEdit,x=C?C(e.props.value,o):void 0,!C||!x){r.n=2;break}return r.n=2,a(p,{title:"Edit",arrow:!0,children:a(d,{color:"primary",onClick:function(){null==o||o.showModal(t({renderContent:function(){return x||a(s.Fragment,{})},sx:{display:"flex",justifyContent:"center",alignItems:"center"},backdropActivated:!0},null==h?void 0:h.buttonEditConfig))},children:a(f,{fontSize:"small"})})},"Edit");case 2:if(w=null!==(g=null===(b=e.props)||void 0===b?void 0:b.formDelete)&&void 0!==g?g:null==n?void 0:n.formDelete,D=w?w(e.props.value,o):void 0,!w||!D){r.n=3;break}return r.n=3,a(p,{title:"Delete",arrow:!0,children:a(d,{color:"error",onClick:function(){null==o||o.showModal(t({renderContent:function(){return D||a(s.Fragment,{})},sx:{display:"flex",justifyContent:"center",alignItems:"center"},backdropActivated:!0},null==h?void 0:h.buttonDeleteConfig))},children:a(m,{fontSize:"small"})})},"Delete");case 3:if(!(E=null!==(y=null===(j=e.props)||void 0===j?void 0:j.after)&&void 0!==y?y:null==n?void 0:n.after)){r.n=4;break}return r.n=4,a(s.Fragment,{children:E(e.props.value,o)},"After");case 4:return r.a(2)}}),r)}))),r}return r(b,u),e(b,[{key:"propsMerge",get:function(){return v(h,this.props)}},{key:"render",value:function(){var r=this;return g((function(e){return a(c,t(t({sx:{display:"flex",alignItems:"center",height:"100%"}},r.propsMerge.wrapProps),{},{children:Array.from(r.getButtons(r,r.propsMerge,e))}))}))}}])}();return b}export{h as default};
2
- //# sourceMappingURL=create.action-row.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.action-row.js","sources":["../../src/table/create.action-row.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, IconButton, Tooltip } from '@mui/material'\r\nimport EditIcon from '@mui/icons-material/Edit'\r\nimport DeleteIcon from '@mui/icons-material/Delete'\r\nimport { mergeObjects } from '../utils'\r\nimport { GlobalModalState } from '../api-context'\r\nimport { ITableBaseContext, MapTableBaseContext } from './context'\r\n\r\nexport interface IActionRowProps<T> {\r\n value: T\r\n formEdit?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n formDelete?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n after?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n before?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n wrapProps?: BoxProps\r\n buttonEditConfig?: GlobalModalState\r\n buttonDeleteConfig?: GlobalModalState\r\n}\r\n\r\nfunction CreateActionRow<T>(params?: Omit<IActionRowProps<T>, 'value'>): ComponentType<IActionRowProps<T>> {\r\n class ActionRow extends Component<IActionRowProps<T>> {\r\n get propsMerge() {\r\n return mergeObjects<IActionRowProps<T>>(params, this.props)\r\n }\r\n\r\n getButtons = function* (that: ActionRow, thatProps: Omit<IActionRowProps<T>, 'value'>, tableContext: ITableBaseContext) {\r\n const beforeFunc = that.props?.before ?? thatProps?.before\r\n if (beforeFunc) {\r\n yield <React.Fragment key='Before'>{beforeFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n const editFunc = that.props?.formEdit ?? thatProps?.formEdit\r\n const editContent = editFunc ? editFunc(that.props.value, tableContext) : undefined\r\n if (editFunc && !!editContent) {\r\n yield (\r\n <Tooltip title='Edit' arrow key='Edit'>\r\n <IconButton\r\n color='primary'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => editContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonEditConfig\r\n })\r\n }}\r\n >\r\n <EditIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const deleteFunc = that.props?.formDelete ?? thatProps?.formDelete\r\n const deleteContent = deleteFunc ? deleteFunc(that.props.value, tableContext) : undefined\r\n if (deleteFunc && !!deleteContent) {\r\n yield (\r\n <Tooltip title='Delete' arrow key='Delete'>\r\n <IconButton\r\n color='error'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => deleteContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonDeleteConfig\r\n })\r\n }}\r\n >\r\n <DeleteIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const afterFunc = that.props?.after ?? thatProps?.after\r\n if (afterFunc) {\r\n yield <React.Fragment key='After'>{afterFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n }\r\n\r\n render() {\r\n return MapTableBaseContext((context) => (\r\n <Box sx={{ display: 'flex', alignItems: 'center', height: '100%' }} {...this.propsMerge.wrapProps}>\r\n {Array.from(this.getButtons(this, this.propsMerge, context))}\r\n </Box>\r\n ))\r\n }\r\n }\r\n\r\n return ActionRow\r\n}\r\nexport default CreateActionRow\r\n"],"names":["CreateActionRow","params","ActionRow","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","_regenerator","m","_callee","that","thatProps","tableContext","_that$props$before","_that$props","_that$props$formEdit","_that$props2","_that$props$formDelet","_that$props3","_that$props$after","_that$props4","beforeFunc","editFunc","editContent","deleteFunc","deleteContent","afterFunc","w","_context","n","props","before","_jsx","React","Fragment","children","value","formEdit","undefined","Tooltip","title","arrow","IconButton","color","onClick","showModal","_objectSpread","renderContent","sx","display","justifyContent","alignItems","backdropActivated","buttonEditConfig","EditIcon","fontSize","formDelete","buttonDeleteConfig","DeleteIcon","after","a","_inherits","Component","_createClass","key","get","mergeObjects","_this2","MapTableBaseContext","context","Box","height","propsMerge","wrapProps","from","getButtons"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{objectWithoutProperties as e,objectSpread2 as o,defineProperty as r,inherits as a,createClass as t,classCallCheck as i,callSuper as l,toConsumableArray as n}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as s}from"react/jsx-runtime";import d,{Component as u}from"react";import{styled as p,Box as c}from"@mui/material";import{DataGrid as m}from"@mui/x-data-grid";import{mergeObjects as g}from"../utils/helpers.js";import"../utils/dayjs-config.js";import"../utils/query-param.js";import{TableBaseContext as h}from"./context.js";import{customFilterOperators as f}from"./custom.filter-operators.js";import v,{dinoTableClasses as b}from"./helpers.js";import y from"./toolbar-pannel.js";import{GlobalModal as C,mapGlobalModalContext as P}from"../api-context/global-modal.js";var M=["children"];function S(e){return function(){function p(a){var t;return i(this,p),t=l(this,p,[a]),r(t,"setTableQueryParams",(function(e){t.tableQueryParams=g({},t.tableQueryParams,e)})),r(t,"renderWrapContext",(function(o){var r=e.disableGlobalModalProvider?d.Fragment:C;return s(r,{children:P((function(e){return s(h.Provider,{value:{showModal:e.show,closeModal:e.close},children:o})}))})})),r(t,"getDataGridProps",(function(){var o,r,a,i,l=t.mergeConfig,n={getRowId:e.getRowId,columns:t.columns,rows:null!==(o=null===(r=t.props.data)||void 0===r?void 0:r.items)&&void 0!==o?o:[],checkboxSelection:!0,pagination:!0,density:null!==(a=null===(i=t.props.slots)||void 0===i?void 0:i.density)&&void 0!==a?a:"standard",initialState:v.mapInitialState(t.props.query,{columns:{columnVisibilityModel:e.columnVisibilityModel}}),filterDebounceMs:800,sx:{border:0},slots:{toolbar:l.toolbar},rowSelectionModel:t.rowSelecteds,onRowSelectionModelChange:t.handleRowSelectionChange};if("server"===e.featureMode){var s,d,u={filterMode:"server",sortingMode:"server",paginationMode:"server",onPaginationModelChange:t.onPaginationModelChange,onFilterModelChange:t.onFilterModelChange,onSortModelChange:t.onSortModelChange,rowCount:null!==(s=null===(d=t.props.data)||void 0===d?void 0:d.rowTotal)&&void 0!==s?s:0,paginationModel:t.tableQueryParams.pagination,filterModel:t.tableQueryParams.filter,sortModel:v.mapSortModel(t.tableQueryParams.sort),loading:t.tableQueryParams.loading};Object.assign(n,u)}return g(n,t.mergeConfig.dataGridProps)})),r(t,"initialColumns",(function(){var r,a,i=t.mergeConfig.ActionRow,l=[];return i&&l.push(o({field:"Actions",minWidth:100,headerAlign:"right",align:"right",filterable:!1,sortable:!1,renderCell:function(e){return s(i,{value:e.row})}},e.actionRow)),r=l,a=Object.keys(e.columns).map((function(r){var a=o({field:r},e.columns[r]);return a.filterOperators=e.filterOperators?e.filterOperators(a):f(a),a})),r&&r.length>0&&a.push.apply(a,n(r)),a})),r(t,"onPaginationModelChange",(function(e,o){t.setTableQueryParams({pagination:e,detail:"pagination"}),t.handleChange()})),r(t,"onFilterModelChange",(function(e,o){var r,a=t.tableQueryParams.pagination;t.setTableQueryParams({filter:e,pagination:{page:0,pageSize:null!==(r=null==a?void 0:a.pageSize)&&void 0!==r?r:25},detail:v.detectSearchType(e)}),t.handleChange()})),r(t,"onSortModelChange",(function(e,o){var r,a,i,l,n,s=e,d=t.tableQueryParams.sort;null!=d&&d.length&&!s.length&&(s=(null==d||null===(r=d[0])||void 0===r?void 0:r.field)===(null===(a=t.defaultTableQueryParams.sort)||void 0===a||null===(a=a[0])||void 0===a?void 0:a.field)?[{field:null===(i=d[0])||void 0===i?void 0:i.field,sort:"desc"===(null===(l=d[0])||void 0===l?void 0:l.sort)?"asc":"desc"}]:null!==(n=t.defaultTableQueryParams.sort)&&void 0!==n?n:[]);t.setTableQueryParams({sort:s,detail:"sort"}),t.handleChange()})),r(t,"handleChange",(function(){t.props.onChange&&t.props.onChange(t.tableQueryParams)})),r(t,"handleRowSelectionChange",(function(e,o){t.mergeConfig.maxSelcion&&e.length>t.mergeConfig.maxSelcion?t.rowSelecteds=e.slice(0,t.mergeConfig.maxSelcion):t.rowSelecteds=e,t.props.onRowSelectionChange&&t.props.onRowSelectionChange(t.rowSelecteds,o),t.forceUpdate()})),t.columns=t.initialColumns(),t.tableQueryParams=o({},a.query),t.defaultTableQueryParams=t.tableQueryParams,t.rowSelecteds=[],t}return a(p,u),t(p,[{key:"mergeConfig",get:function(){var r,a,t,i,l,n,d,u=g({},null==e?void 0:e.toolbarProps,null===(r=this.props.slots)||void 0===r?void 0:r.toolbarProps);return{toolbar:null!==(a=null===(t=this.props.slots)||void 0===t?void 0:t.toolbar)&&void 0!==a?a:function(){return s(y,o({},u))},ActionRow:null===(i=this.props.slots)||void 0===i?void 0:i.actionRow,columnVisibilityModel:e.columnVisibilityModel,maxSelcion:null!==(l=null===(n=this.props.slots)||void 0===n?void 0:n.maxSelection)&&void 0!==l?l:e.maxSelection,dataGridProps:g({},e.dataGridProps,null===(d=this.props.slots)||void 0===d?void 0:d.dataGridProps)}}},{key:"shouldComponentUpdate",value:function(o){return"server"!==e.featureMode||v.equalTableQueryParams(o.query,this.props.query)?"server"!==e.featureMode:(this.setTableQueryParams(null!==(r=o.query)&&void 0!==r?r:{}),!0);var r}},{key:"render",value:function(){return this.renderWrapContext(s(w,{children:s(m,o({loading:this.props.loading},this.getDataGridProps()))}))}}])}()}var w=p((function(r){var a=r.children,t=e(r,M);return s(c,o(o({},t),{},{children:s("div",{children:a})}))}))(r({flex:1,position:"relative","& > div":{position:"absolute",top:0,left:0,width:"100%",height:"100%",overflowY:"auto"},"& .MuiDataGrid-root":{"--unstable_DataGrid-radius":0,overflow:"hidden"}},"& .MuiDataGrid-cell.".concat(b.whiteSpacePre," .MuiDataGrid-cellContent"),{whiteSpace:"pre"}));export{S as CreateTable,S as default};
2
- //# sourceMappingURL=create.table.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.table.js","sources":["../../src/table/create.table.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, styled } from '@mui/material'\r\nimport { DataGrid, DataGridProps, GridColDef, GridFeatureMode, GridFilterOperator } from '@mui/x-data-grid'\r\nimport { GridSortModel, GridValidRowModel, GridRowIdGetter, GridRowSelectionModel } from '@mui/x-data-grid'\r\nimport { GridCallbackDetails, GridColumnVisibilityModel, GridDensity, GridFilterModel, GridPaginationModel } from '@mui/x-data-grid'\r\nimport { mergeObjects } from '../utils'\r\nimport { TableBaseContext } from './context'\r\nimport { IActionRowProps } from './create.action-row'\r\nimport { customFilterOperators } from './custom.filter-operators'\r\nimport { GlobalModal, mapGlobalModalContext } from '../api-context'\r\nimport { ICustomGridColDef, ICustomGridFilterModel, ICustomGridSortModel, ITableData, ITableQueryParams } from './types'\r\nimport TableHelper, { dinoTableClasses } from './helpers'\r\nimport ToolbarPannel, { IToolbarPannelProps } from './toolbar-pannel'\r\n\r\nexport interface ITableSlots<T> {\r\n maxSelection?: number\r\n density?: GridDensity\r\n toolbar?: React.ComponentType<IToolbarPannelProps>\r\n actionRow?: React.ComponentType<IActionRowProps<T>>\r\n toolbarProps?: IToolbarPannelProps\r\n dataGridProps?: DataGridProps\r\n}\r\n\r\nexport type ITableParamsSlots<T> = Pick<ITableSlots<T>, 'maxSelection' | 'toolbarProps' | 'dataGridProps'>\r\n\r\nexport interface ITableProps<T> {\r\n data?: ITableData<T>\r\n query?: ITableQueryParams<T>\r\n loading?: boolean\r\n onChange?: (query: ITableQueryParams<T>) => void\r\n onRowSelectionChange?: DataGridProps['onRowSelectionModelChange']\r\n slots?: ITableSlots<T>\r\n}\r\n\r\nexport interface ITableParams<T extends GridValidRowModel> extends ITableParamsSlots<T> {\r\n featureMode?: GridFeatureMode\r\n getRowId: GridRowIdGetter<T>\r\n columns: ICustomGridColDef<T>\r\n filterOperators?: (config: GridColDef) => GridFilterOperator[]\r\n columnVisibilityModel?: Partial<Record<keyof T, boolean>>\r\n actionRow?: Omit<GridColDef, 'field'>\r\n disableGlobalModalProvider?: boolean\r\n}\r\n\r\nexport function CreateTable<T extends GridValidRowModel>(params: ITableParams<T>): ComponentType<ITableProps<T>> {\r\n const generateColumns = (extendColDefs?: GridColDef[]) => {\r\n const columns = Object.keys(params.columns).map<GridColDef>((key) => {\r\n const obj = { field: key, ...params.columns[key] }\r\n obj.filterOperators = params.filterOperators ? params.filterOperators(obj) : customFilterOperators(obj)\r\n return obj\r\n })\r\n\r\n if (!!extendColDefs && extendColDefs.length > 0) columns.push(...extendColDefs)\r\n return columns\r\n }\r\n\r\n class Table extends Component<ITableProps<T>> {\r\n private tableQueryParams: ITableQueryParams<T>\r\n // private tableQueryParamsCache: ITableQueryParams<T> = {}\r\n private defaultTableQueryParams: ITableQueryParams<T>\r\n private columns: GridColDef<T>[]\r\n private rowSelecteds: GridRowSelectionModel\r\n constructor(props: ITableProps<T>) {\r\n super(props)\r\n this.columns = this.initialColumns()\r\n this.tableQueryParams = { ...props.query }\r\n this.defaultTableQueryParams = this.tableQueryParams\r\n this.rowSelecteds = []\r\n }\r\n\r\n get mergeConfig() {\r\n const toolbarPannelProps = mergeObjects({}, params?.toolbarProps, this.props.slots?.toolbarProps)\r\n return {\r\n toolbar: this.props.slots?.toolbar ?? (() => <ToolbarPannel {...toolbarPannelProps} />),\r\n ActionRow: this.props.slots?.actionRow,\r\n columnVisibilityModel: params.columnVisibilityModel,\r\n maxSelcion: this.props.slots?.maxSelection ?? params.maxSelection,\r\n dataGridProps: mergeObjects({}, params.dataGridProps, this.props.slots?.dataGridProps)\r\n }\r\n }\r\n\r\n setTableQueryParams = (value: Partial<ITableQueryParams<T>>) => {\r\n this.tableQueryParams = mergeObjects({}, this.tableQueryParams, value)\r\n }\r\n\r\n shouldComponentUpdate(nextProps: Readonly<ITableProps<T>>): boolean {\r\n if (params.featureMode === 'server' && !TableHelper.equalTableQueryParams(nextProps.query, this.props.query)) {\r\n this.setTableQueryParams(nextProps.query ?? {})\r\n return true\r\n } else if (params.featureMode !== 'server') {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n render() {\r\n return this.renderWrapContext(\r\n <Wrap>\r\n <DataGrid loading={this.props.loading} {...this.getDataGridProps()} />\r\n </Wrap>\r\n )\r\n }\r\n\r\n renderWrapContext = (children: React.ReactNode) => {\r\n const WrapComponent = params.disableGlobalModalProvider ? React.Fragment : GlobalModal\r\n return (\r\n <WrapComponent>\r\n {mapGlobalModalContext((context) => (\r\n <TableBaseContext.Provider value={{ showModal: context.show, closeModal: context.close }}>{children}</TableBaseContext.Provider>\r\n ))}\r\n </WrapComponent>\r\n )\r\n }\r\n\r\n getDataGridProps = (): DataGridProps<T> => {\r\n const mergeConfig = this.mergeConfig\r\n const obj: DataGridProps<T> = {\r\n getRowId: params.getRowId,\r\n columns: this.columns,\r\n rows: this.props.data?.items ?? [],\r\n checkboxSelection: true,\r\n pagination: true,\r\n density: this.props.slots?.density ?? 'standard',\r\n initialState: TableHelper.mapInitialState(this.props.query, {\r\n columns: { columnVisibilityModel: params.columnVisibilityModel as GridColumnVisibilityModel }\r\n }),\r\n filterDebounceMs: 800,\r\n sx: { border: 0 },\r\n slots: { toolbar: mergeConfig.toolbar },\r\n rowSelectionModel: this.rowSelecteds,\r\n onRowSelectionModelChange: this.handleRowSelectionChange\r\n }\r\n if (params.featureMode === 'server') {\r\n const objServer: Partial<DataGridProps<T>> = {\r\n filterMode: 'server',\r\n sortingMode: 'server',\r\n paginationMode: 'server',\r\n onPaginationModelChange: this.onPaginationModelChange,\r\n onFilterModelChange: this.onFilterModelChange,\r\n onSortModelChange: this.onSortModelChange,\r\n rowCount: this.props.data?.rowTotal ?? 0,\r\n paginationModel: this.tableQueryParams.pagination,\r\n filterModel: this.tableQueryParams.filter as GridFilterModel,\r\n sortModel: TableHelper.mapSortModel(this.tableQueryParams.sort),\r\n loading: this.tableQueryParams.loading\r\n }\r\n Object.assign(obj, objServer)\r\n }\r\n return mergeObjects(obj, this.mergeConfig.dataGridProps)\r\n }\r\n\r\n initialColumns = (): GridColDef<T>[] => {\r\n const { ActionRow } = this.mergeConfig\r\n const list: GridColDef<T>[] = []\r\n if (!!ActionRow) {\r\n list.push({\r\n field: 'Actions',\r\n minWidth: 100,\r\n headerAlign: 'right',\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n renderCell: (value) => <ActionRow value={value.row} />,\r\n ...params.actionRow\r\n })\r\n }\r\n return generateColumns(list)\r\n }\r\n\r\n onPaginationModelChange = (model: GridPaginationModel, details: GridCallbackDetails<'pagination'>) => {\r\n this.setTableQueryParams({ pagination: model, detail: 'pagination' })\r\n this.handleChange()\r\n }\r\n\r\n onFilterModelChange = (model: GridFilterModel, details: GridCallbackDetails<'filter'>) => {\r\n const { pagination } = this.tableQueryParams\r\n this.setTableQueryParams({\r\n filter: model as ICustomGridFilterModel<T>,\r\n pagination: { page: 0, pageSize: pagination?.pageSize ?? 25 },\r\n detail: TableHelper.detectSearchType(model)\r\n })\r\n this.handleChange()\r\n }\r\n\r\n onSortModelChange = (model: GridSortModel, details: GridCallbackDetails<any>) => {\r\n let sortValue = model as ICustomGridSortModel<T>\r\n const { sort } = this.tableQueryParams\r\n if (!!sort?.length && !sortValue.length) {\r\n if (sort?.[0]?.field === this.defaultTableQueryParams.sort?.[0]?.field) {\r\n sortValue = [{ field: sort[0]?.field, sort: sort[0]?.sort === 'desc' ? 'asc' : 'desc' }]\r\n } else {\r\n sortValue = this.defaultTableQueryParams.sort ?? []\r\n }\r\n }\r\n this.setTableQueryParams({ sort: sortValue, detail: 'sort' })\r\n this.handleChange()\r\n }\r\n\r\n handleChange = () => {\r\n this.props.onChange && this.props.onChange(this.tableQueryParams)\r\n }\r\n\r\n handleRowSelectionChange = (value: GridRowSelectionModel, details: GridCallbackDetails) => {\r\n if (this.mergeConfig.maxSelcion && value.length > this.mergeConfig.maxSelcion) {\r\n this.rowSelecteds = value.slice(0, this.mergeConfig.maxSelcion)\r\n } else {\r\n this.rowSelecteds = value\r\n }\r\n this.props.onRowSelectionChange && this.props.onRowSelectionChange(this.rowSelecteds, details)\r\n this.forceUpdate()\r\n }\r\n }\r\n\r\n return Table\r\n}\r\n\r\nexport default CreateTable\r\n\r\nconst Wrap = styled(({ children, ...p }: BoxProps) => (\r\n <Box {...p}>\r\n <div>{children}</div>\r\n </Box>\r\n))({\r\n flex: 1,\r\n position: 'relative',\r\n '& > div': {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%',\r\n overflowY: 'auto'\r\n },\r\n '& .MuiDataGrid-root': {\r\n '--unstable_DataGrid-radius': 0,\r\n overflow: 'hidden'\r\n },\r\n [`& .MuiDataGrid-cell.${dinoTableClasses.whiteSpacePre} .MuiDataGrid-cellContent`]: {\r\n whiteSpace: 'pre'\r\n }\r\n})\r\n"],"names":["CreateTable","params","Table","props","_this","_classCallCheck","_callSuper","_defineProperty","value","tableQueryParams","mergeObjects","children","WrapComponent","disableGlobalModalProvider","React","Fragment","GlobalModal","_jsx","mapGlobalModalContext","context","TableBaseContext","Provider","showModal","show","closeModal","close","_this$props$data$item","_this$props$data","_this$props$slots$den","_this$props$slots","mergeConfig","obj","getRowId","columns","rows","data","items","checkboxSelection","pagination","density","slots","initialState","TableHelper","mapInitialState","query","columnVisibilityModel","filterDebounceMs","sx","border","toolbar","rowSelectionModel","rowSelecteds","onRowSelectionModelChange","handleRowSelectionChange","featureMode","_this$props$data$rowT","_this$props$data2","objServer","filterMode","sortingMode","paginationMode","onPaginationModelChange","onFilterModelChange","onSortModelChange","rowCount","rowTotal","paginationModel","filterModel","filter","sortModel","mapSortModel","sort","loading","Object","assign","dataGridProps","extendColDefs","ActionRow","list","push","_objectSpread","field","minWidth","headerAlign","align","filterable","sortable","renderCell","row","actionRow","keys","map","key","filterOperators","customFilterOperators","length","apply","_toConsumableArray","model","details","setTableQueryParams","detail","handleChange","_pagination$pageSize","page","pageSize","detectSearchType","_sort$","_this$defaultTableQue","_sort$2","_sort$3","_this$defaultTableQue2","sortValue","defaultTableQueryParams","onChange","maxSelcion","slice","onRowSelectionChange","forceUpdate","initialColumns","_inherits","Component","_createClass","get","_this$props$slots2","_this$props$slots$too","_this$props$slots3","_this$props$slots4","_this$props$slots$max","_this$props$slots5","_this$props$slots6","toolbarPannelProps","toolbarProps","this","ToolbarPannel","maxSelection","nextProps","equalTableQueryParams","_nextProps$query","renderWrapContext","Wrap","DataGrid","getDataGridProps","styled","_ref","p","_objectWithoutProperties","_excluded","Box","flex","position","top","left","width","height","overflowY","overflow","concat","dinoTableClasses","whiteSpacePre","whiteSpace"],"mappings":"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"}