dinocollab-core 1.0.0 → 1.0.2

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 (385) hide show
  1. package/dist/_virtual/_rollupPluginBabelHelpers.js +67 -10
  2. package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/dist/{src/api-context → api-context}/alert-global.js +49 -34
  4. package/dist/api-context/alert-global.js.map +1 -0
  5. package/dist/{src/api-context → api-context}/drawer-global.js +40 -33
  6. package/dist/api-context/drawer-global.js.map +1 -0
  7. package/dist/{src/api-context → api-context}/global-modal.js +40 -32
  8. package/dist/api-context/global-modal.js.map +1 -0
  9. package/dist/{src/api-context → api-context}/popover-global.js +44 -36
  10. package/dist/api-context/popover-global.js.map +1 -0
  11. package/dist/api-context/popover.js +94 -0
  12. package/dist/api-context/popover.js.map +1 -0
  13. package/dist/{src/api-context → api-context}/ui.units.js +12 -10
  14. package/dist/api-context/ui.units.js.map +1 -0
  15. package/dist/components/breadcrumbs.js +65 -0
  16. package/dist/components/breadcrumbs.js.map +1 -0
  17. package/dist/{src/components → components}/copy-to-clipboard.js +39 -32
  18. package/dist/components/copy-to-clipboard.js.map +1 -0
  19. package/dist/components/help-tooltip.js +104 -0
  20. package/dist/components/help-tooltip.js.map +1 -0
  21. package/dist/components/image-with-fallback.js +51 -0
  22. package/dist/components/image-with-fallback.js.map +1 -0
  23. package/dist/{src/components → components}/text-editor.js +24 -23
  24. package/dist/components/text-editor.js.map +1 -0
  25. package/dist/components/text-editor.preview.js +27 -0
  26. package/dist/components/text-editor.preview.js.map +1 -0
  27. package/dist/form/create.autocomplete.chips.js +228 -0
  28. package/dist/form/create.autocomplete.chips.js.map +1 -0
  29. package/dist/{src/form → form}/create.date-expired.js +71 -61
  30. package/dist/form/create.date-expired.js.map +1 -0
  31. package/dist/{src/form → form}/create.date-picker.js +40 -37
  32. package/dist/form/create.date-picker.js.map +1 -0
  33. package/dist/{src/form → form}/create.form-base.js +47 -41
  34. package/dist/form/create.form-base.js.map +1 -0
  35. package/dist/form/create.form-comfirm.js +131 -0
  36. package/dist/form/create.form-comfirm.js.map +1 -0
  37. package/dist/form/create.form-grid-layout.js +188 -0
  38. package/dist/form/create.form-grid-layout.js.map +1 -0
  39. package/dist/{src/form → form}/create.form-grid-layout.units.js +17 -14
  40. package/dist/form/create.form-grid-layout.units.js.map +1 -0
  41. package/dist/form/create.input.file.js +79 -0
  42. package/dist/form/create.input.file.js.map +1 -0
  43. package/dist/form/create.input.js +276 -0
  44. package/dist/form/create.input.js.map +1 -0
  45. package/dist/form/create.select-simple.js +114 -0
  46. package/dist/form/create.select-simple.js.map +1 -0
  47. package/dist/form/create.select-with-api.js +277 -0
  48. package/dist/form/create.select-with-api.js.map +1 -0
  49. package/dist/form/create.text-editor.js +181 -0
  50. package/dist/form/create.text-editor.js.map +1 -0
  51. package/dist/{src/form → form}/dino-form.js +17 -18
  52. package/dist/form/dino-form.js.map +1 -0
  53. package/dist/{src/form → form}/helper.js +14 -14
  54. package/dist/form/helper.js.map +1 -0
  55. package/dist/{src/form → form}/modal-wrapper.js +32 -25
  56. package/dist/form/modal-wrapper.js.map +1 -0
  57. package/dist/{src/form → form}/validator.js +47 -43
  58. package/dist/form/validator.js.map +1 -0
  59. package/dist/{src/hooks → hooks}/index.js +1 -1
  60. package/dist/hooks/index.js.map +1 -0
  61. package/dist/index.d.ts +928 -0
  62. package/dist/{src/index.js → index.js} +10 -3
  63. package/dist/{src/index.js.map → index.js.map} +1 -1
  64. package/dist/redux/create.hoc-lazy.js +71 -0
  65. package/dist/redux/create.hoc-lazy.js.map +1 -0
  66. package/dist/{src/redux → redux}/dino.js +2 -2
  67. package/dist/redux/dino.js.map +1 -0
  68. package/dist/redux/types.js.map +1 -0
  69. package/dist/redux/ui.error-page.js +89 -0
  70. package/dist/redux/ui.error-page.js.map +1 -0
  71. package/dist/redux/vector-404.webp.js.map +1 -0
  72. package/dist/{src/table → table}/context.js +5 -2
  73. package/dist/table/context.js.map +1 -0
  74. package/dist/table/create.action-row.js +144 -0
  75. package/dist/table/create.action-row.js.map +1 -0
  76. package/dist/table/create.table.js +246 -0
  77. package/dist/table/create.table.js.map +1 -0
  78. package/dist/{src/table → table}/custom.filter-operators.js +2 -2
  79. package/dist/table/custom.filter-operators.js.map +1 -0
  80. package/dist/table/dino.js +136 -0
  81. package/dist/table/dino.js.map +1 -0
  82. package/dist/{src/table → table}/helpers.js +31 -32
  83. package/dist/table/helpers.js.map +1 -0
  84. package/dist/table/model-filter.js.map +1 -0
  85. package/dist/table/toolbar-pannel.js +143 -0
  86. package/dist/table/toolbar-pannel.js.map +1 -0
  87. package/dist/table/ui.buttons.js +67 -0
  88. package/dist/table/ui.buttons.js.map +1 -0
  89. package/dist/table/ui.units.js +248 -0
  90. package/dist/table/ui.units.js.map +1 -0
  91. package/dist/types/api-context/alert-global.d.ts +29 -0
  92. package/dist/types/api-context/drawer-global.d.ts +32 -0
  93. package/dist/types/api-context/global-modal.d.ts +37 -0
  94. package/dist/types/api-context/index.d.ts +9 -0
  95. package/dist/types/api-context/popover-global.d.ts +37 -0
  96. package/dist/types/api-context/popover.d.ts +32 -0
  97. package/dist/types/api-context/ui.units.d.ts +2 -0
  98. package/dist/types/components/breadcrumbs.d.ts +13 -0
  99. package/dist/types/components/copy-to-clipboard.d.ts +26 -0
  100. package/dist/types/components/help-tooltip.d.ts +15 -0
  101. package/dist/types/components/image-with-fallback.d.ts +13 -0
  102. package/dist/types/components/index.d.ts +11 -0
  103. package/dist/types/components/input-debounce-timer.d.ts +9 -0
  104. package/dist/types/components/loading-buttons.d.ts +6 -0
  105. package/dist/types/components/text-editor.d.ts +26 -0
  106. package/dist/types/components/text-editor.preview.d.ts +5 -0
  107. package/dist/types/form/create.autocomplete.chips.d.ts +16 -0
  108. package/dist/types/form/create.date-expired.d.ts +19 -0
  109. package/dist/types/form/create.date-picker.d.ts +19 -0
  110. package/dist/types/form/create.form-base.d.ts +30 -0
  111. package/dist/types/form/create.form-comfirm.d.ts +20 -0
  112. package/dist/types/form/create.form-grid-layout.d.ts +44 -0
  113. package/dist/types/form/create.form-grid-layout.units.d.ts +8 -0
  114. package/dist/types/form/create.input.d.ts +29 -0
  115. package/dist/types/form/create.input.file.d.ts +16 -0
  116. package/dist/types/form/create.select-simple.d.ts +24 -0
  117. package/dist/types/form/create.select-with-api.d.ts +29 -0
  118. package/dist/types/form/create.text-editor.d.ts +42 -0
  119. package/dist/types/form/dino-form.d.ts +26 -0
  120. package/dist/types/form/helper.d.ts +14 -0
  121. package/dist/types/form/index.d.ts +7 -0
  122. package/dist/types/form/modal-wrapper.d.ts +14 -0
  123. package/dist/types/form/types.d.ts +15 -0
  124. package/dist/types/form/validator.d.ts +64 -0
  125. package/dist/types/hooks/index.d.ts +4 -0
  126. package/dist/types/index.d.ts +7 -0
  127. package/dist/types/lab/create.autocomplete.simple.d.ts +19 -0
  128. package/dist/types/lab/create.dino-store.d.ts +1 -0
  129. package/dist/types/lab/create.multi-select-dropdown.d.ts +23 -0
  130. package/dist/types/lab/create.select-mul-with-api/index.d.ts +26 -0
  131. package/dist/types/lab/create.select-mul-with-api/table-custom.d.ts +43 -0
  132. package/dist/types/lab/create.select-mul-with-api/types.d.ts +21 -0
  133. package/dist/types/lab/create.select-mul-with-api/ui.units.d.ts +29 -0
  134. package/dist/types/lab/filter-bar/base.d.ts +34 -0
  135. package/dist/types/lab/filter-bar/create.filter-bar.d.ts +92 -0
  136. package/dist/types/lab/filter-bar/create.filter-menu.d.ts +66 -0
  137. package/dist/types/lab/filter-bar/create.filter-panel.d.ts +117 -0
  138. package/dist/types/lab/filter-bar/create.filtered.d.ts +59 -0
  139. package/dist/types/lab/filter-bar/create.sort-menu.d.ts +7 -0
  140. package/dist/types/lab/filter-bar/demo.d.ts +3 -0
  141. package/dist/types/lab/filter-bar/index.d.ts +4 -0
  142. package/dist/types/lab/filter-bar/types.d.ts +81 -0
  143. package/dist/types/lab/filter-bar/ui.units.d.ts +13 -0
  144. package/dist/types/lab/grafana-dashboard/configs.d.ts +4 -0
  145. package/dist/types/lab/grafana-dashboard/date-time-range/absolute-time-rage.d.ts +14 -0
  146. package/dist/types/lab/grafana-dashboard/date-time-range/helpers.d.ts +36 -0
  147. package/dist/types/lab/grafana-dashboard/date-time-range/index.d.ts +24 -0
  148. package/dist/types/lab/grafana-dashboard/date-time-range/menu-wrap.d.ts +19 -0
  149. package/dist/types/lab/grafana-dashboard/date-time-range/quick-ranges.d.ts +20 -0
  150. package/dist/types/lab/grafana-dashboard/date-time-range/types.d.ts +8 -0
  151. package/dist/types/lab/grafana-dashboard/date-time-range/units.d.ts +2 -0
  152. package/dist/types/lab/grafana-dashboard/helper.d.ts +7 -0
  153. package/dist/types/lab/grafana-dashboard/hooks.d.ts +10 -0
  154. package/dist/types/lab/grafana-dashboard/icons.d.ts +5 -0
  155. package/dist/types/lab/grafana-dashboard/index.d.ts +12 -0
  156. package/dist/types/lab/grafana-dashboard/top-bar.d.ts +19 -0
  157. package/dist/types/lab/grafana-dashboard/top-bar.types.d.ts +4 -0
  158. package/dist/types/lab/grafana-dashboard/types.d.ts +8 -0
  159. package/dist/types/lab/media-player.core1.d.ts +14 -0
  160. package/dist/types/lab/media-player.muted.d.ts +10 -0
  161. package/dist/types/lab/media-player.units.d.ts +36 -0
  162. package/dist/types/lab/table-grid/create.table-grid.d.ts +4 -0
  163. package/dist/types/lab/table-grid/demo.d.ts +3 -0
  164. package/dist/types/lab/table-grid/dino.d.ts +6 -0
  165. package/dist/types/lab/table-grid/helpers.d.ts +11 -0
  166. package/dist/types/lab/table-grid/index.d.ts +2 -0
  167. package/dist/types/lab/table-grid/item-actions.d.ts +93 -0
  168. package/dist/types/lab/table-grid/toolbar-pannel.d.ts +27 -0
  169. package/dist/types/lab/table-grid/types.d.ts +56 -0
  170. package/dist/types/redux/create.hoc-lazy.d.ts +19 -0
  171. package/dist/types/redux/dino.d.ts +6 -0
  172. package/dist/types/redux/index.d.ts +4 -0
  173. package/dist/types/redux/types.d.ts +22 -0
  174. package/dist/types/redux/ui.error-page.d.ts +3 -0
  175. package/dist/types/redux/ui.units.d.ts +9 -0
  176. package/dist/types/table/context.d.ts +8 -0
  177. package/dist/types/table/create.action-row.d.ts +16 -0
  178. package/dist/types/table/create.table.d.ts +33 -0
  179. package/dist/types/table/custom.filter-operators.d.ts +2 -0
  180. package/dist/types/table/dino.d.ts +41 -0
  181. package/dist/types/table/helpers.d.ts +23 -0
  182. package/dist/types/table/index.d.ts +7 -0
  183. package/dist/types/table/model-filter.d.ts +38 -0
  184. package/dist/types/table/toolbar-pannel.d.ts +18 -0
  185. package/dist/types/table/types.d.ts +40 -0
  186. package/dist/types/table/ui.buttons.d.ts +16 -0
  187. package/dist/types/table/ui.units.d.ts +62 -0
  188. package/dist/types/utils/dayjs-config.d.ts +2 -0
  189. package/dist/types/utils/helpers.d.ts +35 -0
  190. package/dist/types/utils/index.d.ts +4 -0
  191. package/dist/types/utils/json-object.d.ts +9 -0
  192. package/dist/types/utils/mfe-events.d.ts +12 -0
  193. package/dist/types/utils/query-param.d.ts +25 -0
  194. package/dist/utils/dayjs-config.js.map +1 -0
  195. package/dist/{src/utils → utils}/helpers.js +11 -9
  196. package/dist/utils/helpers.js.map +1 -0
  197. package/dist/{src/utils → utils}/json-object.js +13 -13
  198. package/dist/utils/json-object.js.map +1 -0
  199. package/dist/{src/utils → utils}/query-param.js +17 -17
  200. package/dist/utils/query-param.js.map +1 -0
  201. package/package.json +18 -4
  202. package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js +0 -46
  203. package/dist/node_modules/.pnpm/@rollup_plugin-typescript@1_d0d2002d9033600b6738d939bd598bc6/node_modules/tslib/tslib.es6.js.map +0 -1
  204. package/dist/src/api-context/alert-global.js.map +0 -1
  205. package/dist/src/api-context/drawer-global.js.map +0 -1
  206. package/dist/src/api-context/global-modal.js.map +0 -1
  207. package/dist/src/api-context/popover-global.js.map +0 -1
  208. package/dist/src/api-context/popover.js +0 -86
  209. package/dist/src/api-context/popover.js.map +0 -1
  210. package/dist/src/api-context/ui.units.js.map +0 -1
  211. package/dist/src/components/copy-to-clipboard.js.map +0 -1
  212. package/dist/src/components/custom.breadcrumbs.js +0 -61
  213. package/dist/src/components/custom.breadcrumbs.js.map +0 -1
  214. package/dist/src/components/help-tooltip.js +0 -91
  215. package/dist/src/components/help-tooltip.js.map +0 -1
  216. package/dist/src/components/image-with-fallback.js +0 -48
  217. package/dist/src/components/image-with-fallback.js.map +0 -1
  218. package/dist/src/components/text-editor.js.map +0 -1
  219. package/dist/src/form/create.autocomplete.chips.js +0 -218
  220. package/dist/src/form/create.autocomplete.chips.js.map +0 -1
  221. package/dist/src/form/create.date-expired.js.map +0 -1
  222. package/dist/src/form/create.date-picker.js.map +0 -1
  223. package/dist/src/form/create.form-base.js.map +0 -1
  224. package/dist/src/form/create.form-comfirm.js +0 -119
  225. package/dist/src/form/create.form-comfirm.js.map +0 -1
  226. package/dist/src/form/create.form-grid-layout.js +0 -177
  227. package/dist/src/form/create.form-grid-layout.js.map +0 -1
  228. package/dist/src/form/create.form-grid-layout.units.js.map +0 -1
  229. package/dist/src/form/create.input-base.js +0 -260
  230. package/dist/src/form/create.input-base.js.map +0 -1
  231. package/dist/src/form/create.input.file.js +0 -74
  232. package/dist/src/form/create.input.file.js.map +0 -1
  233. package/dist/src/form/create.select-simple.js +0 -104
  234. package/dist/src/form/create.select-simple.js.map +0 -1
  235. package/dist/src/form/create.select-with-api.js +0 -271
  236. package/dist/src/form/create.select-with-api.js.map +0 -1
  237. package/dist/src/form/create.text-editor.js +0 -156
  238. package/dist/src/form/create.text-editor.js.map +0 -1
  239. package/dist/src/form/dino-form.js.map +0 -1
  240. package/dist/src/form/helper.js.map +0 -1
  241. package/dist/src/form/modal-wrapper.js.map +0 -1
  242. package/dist/src/form/validator.js.map +0 -1
  243. package/dist/src/hooks/index.js.map +0 -1
  244. package/dist/src/redux/create.hoc-lazy.js +0 -67
  245. package/dist/src/redux/create.hoc-lazy.js.map +0 -1
  246. package/dist/src/redux/dino.js.map +0 -1
  247. package/dist/src/redux/types.js.map +0 -1
  248. package/dist/src/redux/ui.error-page.js +0 -80
  249. package/dist/src/redux/ui.error-page.js.map +0 -1
  250. package/dist/src/redux/vector-404.webp.js.map +0 -1
  251. package/dist/src/table/context.js.map +0 -1
  252. package/dist/src/table/create.action-row.js +0 -135
  253. package/dist/src/table/create.action-row.js.map +0 -1
  254. package/dist/src/table/create.status-cell.js +0 -49
  255. package/dist/src/table/create.status-cell.js.map +0 -1
  256. package/dist/src/table/create.table.js +0 -233
  257. package/dist/src/table/create.table.js.map +0 -1
  258. package/dist/src/table/custom.filter-operators.js.map +0 -1
  259. package/dist/src/table/dino.js +0 -129
  260. package/dist/src/table/dino.js.map +0 -1
  261. package/dist/src/table/helpers.js.map +0 -1
  262. package/dist/src/table/model-filter.js.map +0 -1
  263. package/dist/src/table/toolbar-pannel.js +0 -134
  264. package/dist/src/table/toolbar-pannel.js.map +0 -1
  265. package/dist/src/table/ui.buttons.js +0 -60
  266. package/dist/src/table/ui.buttons.js.map +0 -1
  267. package/dist/src/table/ui.units.js +0 -201
  268. package/dist/src/table/ui.units.js.map +0 -1
  269. package/dist/src/utils/dayjs-config.js.map +0 -1
  270. package/dist/src/utils/helpers.js.map +0 -1
  271. package/dist/src/utils/json-object.js.map +0 -1
  272. package/dist/src/utils/query-param.js.map +0 -1
  273. package/rollup.config.js +0 -39
  274. package/src/@types/global.d.ts +0 -5
  275. package/src/api-context/alert-global.tsx +0 -174
  276. package/src/api-context/drawer-global.tsx +0 -116
  277. package/src/api-context/global-modal.tsx +0 -109
  278. package/src/api-context/index.ts +0 -13
  279. package/src/api-context/popover-global.tsx +0 -107
  280. package/src/api-context/popover.tsx +0 -89
  281. package/src/api-context/ui.units.tsx +0 -10
  282. package/src/components/copy-to-clipboard.tsx +0 -86
  283. package/src/components/custom.breadcrumbs.tsx +0 -67
  284. package/src/components/help-tooltip.tsx +0 -75
  285. package/src/components/image-with-fallback.tsx +0 -51
  286. package/src/components/index.tsx +0 -1
  287. package/src/components/input-debounce-timer.tsx +0 -138
  288. package/src/components/loading-buttons.tsx +0 -35
  289. package/src/components/text-editor.preview.tsx +0 -30
  290. package/src/components/text-editor.tsx +0 -125
  291. package/src/form/README.md +0 -55
  292. package/src/form/create.autocomplete.chips.tsx +0 -199
  293. package/src/form/create.date-expired.tsx +0 -195
  294. package/src/form/create.date-picker.tsx +0 -122
  295. package/src/form/create.form-base.tsx +0 -102
  296. package/src/form/create.form-comfirm.tsx +0 -83
  297. package/src/form/create.form-grid-layout.tsx +0 -170
  298. package/src/form/create.form-grid-layout.units.tsx +0 -37
  299. package/src/form/create.input-base.tsx +0 -222
  300. package/src/form/create.input.file.tsx +0 -76
  301. package/src/form/create.select-simple.tsx +0 -101
  302. package/src/form/create.select-with-api.tsx +0 -213
  303. package/src/form/create.text-editor.tsx +0 -161
  304. package/src/form/dino-form.tsx +0 -40
  305. package/src/form/helper.ts +0 -132
  306. package/src/form/index.ts +0 -12
  307. package/src/form/modal-wrapper.tsx +0 -75
  308. package/src/form/types.ts +0 -16
  309. package/src/form/validator.ts +0 -202
  310. package/src/hooks/index.ts +0 -44
  311. package/src/index.ts +0 -7
  312. package/src/lab/create.autocomplete.simple.tsx +0 -57
  313. package/src/lab/create.dino-store.ts +0 -59
  314. package/src/lab/create.multi-select-dropdown.tsx +0 -189
  315. package/src/lab/create.select-mul-with-api/index.tsx +0 -271
  316. package/src/lab/create.select-mul-with-api/table-custom.tsx +0 -194
  317. package/src/lab/create.select-mul-with-api/types.ts +0 -26
  318. package/src/lab/create.select-mul-with-api/ui.units.tsx +0 -163
  319. package/src/lab/filter-bar/base.tsx +0 -162
  320. package/src/lab/filter-bar/create.filter-bar.tsx +0 -190
  321. package/src/lab/filter-bar/create.filter-menu.tsx +0 -156
  322. package/src/lab/filter-bar/create.filter-panel.tsx +0 -95
  323. package/src/lab/filter-bar/create.filtered.tsx +0 -41
  324. package/src/lab/filter-bar/create.sort-menu.tsx +0 -43
  325. package/src/lab/filter-bar/demo.tsx +0 -50
  326. package/src/lab/filter-bar/index.ts +0 -6
  327. package/src/lab/filter-bar/types.ts +0 -105
  328. package/src/lab/filter-bar/ui.units.tsx +0 -70
  329. package/src/lab/grafana-dashboard/configs.ts +0 -43
  330. package/src/lab/grafana-dashboard/date-time-range/absolute-time-rage.tsx +0 -137
  331. package/src/lab/grafana-dashboard/date-time-range/helpers.ts +0 -126
  332. package/src/lab/grafana-dashboard/date-time-range/index.tsx +0 -62
  333. package/src/lab/grafana-dashboard/date-time-range/menu-wrap.tsx +0 -101
  334. package/src/lab/grafana-dashboard/date-time-range/quick-ranges.tsx +0 -161
  335. package/src/lab/grafana-dashboard/date-time-range/types.ts +0 -9
  336. package/src/lab/grafana-dashboard/date-time-range/units.tsx +0 -18
  337. package/src/lab/grafana-dashboard/helper.ts +0 -25
  338. package/src/lab/grafana-dashboard/hooks.tsx +0 -79
  339. package/src/lab/grafana-dashboard/icons.tsx +0 -67
  340. package/src/lab/grafana-dashboard/index.tsx +0 -120
  341. package/src/lab/grafana-dashboard/top-bar.tsx +0 -62
  342. package/src/lab/grafana-dashboard/top-bar.types.ts +0 -5
  343. package/src/lab/grafana-dashboard/types.ts +0 -8
  344. package/src/lab/media-player.core1.tsx +0 -273
  345. package/src/lab/media-player.muted.tsx +0 -62
  346. package/src/lab/media-player.units.ts +0 -80
  347. package/src/lab/table-grid/create.table-grid.tsx +0 -183
  348. package/src/lab/table-grid/demo.tsx +0 -53
  349. package/src/lab/table-grid/dino.tsx +0 -8
  350. package/src/lab/table-grid/helpers.tsx +0 -11
  351. package/src/lab/table-grid/index.ts +0 -3
  352. package/src/lab/table-grid/item-actions.tsx +0 -138
  353. package/src/lab/table-grid/toolbar-pannel.tsx +0 -98
  354. package/src/lab/table-grid/types.ts +0 -68
  355. package/src/redux/create.hoc-lazy.tsx +0 -80
  356. package/src/redux/dino.ts +0 -9
  357. package/src/redux/index.ts +0 -6
  358. package/src/redux/types.ts +0 -27
  359. package/src/redux/ui.error-page.tsx +0 -62
  360. package/src/redux/ui.units.tsx +0 -41
  361. package/src/redux/vector-404.webp +0 -0
  362. package/src/table/context.tsx +0 -16
  363. package/src/table/create.action-row.tsx +0 -91
  364. package/src/table/create.status-cell.tsx +0 -51
  365. package/src/table/create.table.tsx +0 -239
  366. package/src/table/custom.filter-operators.ts +0 -94
  367. package/src/table/dino.tsx +0 -120
  368. package/src/table/helpers.ts +0 -94
  369. package/src/table/index.ts +0 -13
  370. package/src/table/model-filter.ts +0 -43
  371. package/src/table/toolbar-pannel.tsx +0 -106
  372. package/src/table/types.ts +0 -50
  373. package/src/table/ui.buttons.tsx +0 -54
  374. package/src/table/ui.units.tsx +0 -189
  375. package/src/utils/dayjs-config.ts +0 -13
  376. package/src/utils/helpers.ts +0 -171
  377. package/src/utils/index.ts +0 -7
  378. package/src/utils/json-object.ts +0 -29
  379. package/src/utils/mfe-events.tsx +0 -34
  380. package/src/utils/query-param.ts +0 -129
  381. package/tsconfig.json +0 -20
  382. /package/dist/{src/redux → redux}/types.js +0 -0
  383. /package/dist/{src/redux → redux}/vector-404.webp.js +0 -0
  384. /package/dist/{src/table → table}/model-filter.js +0 -0
  385. /package/dist/{src/utils → utils}/dayjs-config.js +0 -0
@@ -1,67 +0,0 @@
1
- import React, { FC } from 'react'
2
- import { Box, Breadcrumbs, styled, Typography, TypographyProps } from '@mui/material'
3
- import ArrowBackIosIcon from '@mui/icons-material/ArrowBackIos'
4
-
5
- export interface CustomBreadcrumbConfig {
6
- label: string
7
- url?: string
8
- propsGetter?: () => TypographyProps
9
- onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void
10
- }
11
-
12
- interface IProps {
13
- value?: CustomBreadcrumbConfig[]
14
- }
15
-
16
- const CustomBreadcrumbs: FC<IProps> = (props) => {
17
- const list = props.value ?? []
18
-
19
- const handleClick = (e: React.MouseEvent<HTMLDivElement, MouseEvent>, x: CustomBreadcrumbConfig) => {
20
- e.preventDefault()
21
- e.stopPropagation()
22
- x.onClick && x.onClick(e)
23
- }
24
-
25
- const getItemProps = (item: CustomBreadcrumbConfig): TypographyProps => {
26
- if (item.propsGetter) return item.propsGetter()
27
- return item.url ? ({ component: 'a', href: item.url } as TypographyProps) : {}
28
- }
29
-
30
- return (
31
- <Breadcrumbs>
32
- {list.map((x, i) => {
33
- const isClick = !!x.onClick || !!x.url
34
- return (
35
- <WrapTypography
36
- key={'key' + i}
37
- {...getItemProps(x)}
38
- onClick={x.onClick ? (e: any) => handleClick(e, x) : undefined}
39
- className={isClick ? 'clickable' : ''}
40
- >
41
- {i < 1 && <ArrowBackIosIcon sx={{ fontSize: '16px', mb: '3px', color: '#000' }} />}
42
- <Typography variant='subtitle1' sx={{ fontWeight: 600 }} noWrap>
43
- <span>{x.label}</span>
44
- </Typography>
45
- </WrapTypography>
46
- )
47
- })}
48
- </Breadcrumbs>
49
- )
50
- }
51
-
52
- export default CustomBreadcrumbs
53
-
54
- const WrapTypography = styled(Box)({
55
- display: 'flex',
56
- alignItems: 'center',
57
- textDecoration: 'none',
58
- '&.clickable': {
59
- cursor: 'pointer'
60
- },
61
- '& .MuiTypography-root': {
62
- color: 'var(--color-title)'
63
- },
64
- '&.clickable:hover .MuiTypography-root': {
65
- textDecoration: 'underline'
66
- }
67
- })
@@ -1,75 +0,0 @@
1
- import React, { FC, PropsWithChildren, ReactNode } from 'react'
2
- import { Box, Divider, IconButton, Stack, Tooltip, Typography } from '@mui/material'
3
- import { SxProps, Theme, TooltipProps, TypographyProps, styled, tooltipClasses } from '@mui/material'
4
- import HelpOutlineIcon from '@mui/icons-material/HelpOutline'
5
-
6
- interface IProps {
7
- title: string
8
- small?: boolean
9
- sxIcon?: SxProps<Theme>
10
- }
11
-
12
- const HelpTooltip: FC<PropsWithChildren<IProps>> = (props) => (
13
- <HtmlTooltip
14
- arrow
15
- placement='bottom'
16
- title={
17
- <Stack sx={{ gap: '6px', py: '6px', minWidth: '200px', maxWidth: '400px ' }}>
18
- <TooltipHeaderText>{props.title}</TooltipHeaderText>
19
- <Divider />
20
- <Box sx={{ p: '6px 12px' }}>{props.children}</Box>
21
- </Stack>
22
- }
23
- >
24
- <Box sx={{ cursor: 'default', ...props.sxIcon }}>
25
- <IconButton size='small'>
26
- <HelpOutlineIcon fontSize={props.small ? 'small' : 'medium'} sx={{ color: 'rgb(25,103,210)' }} />
27
- </IconButton>
28
- </Box>
29
- </HtmlTooltip>
30
- )
31
-
32
- export default HelpTooltip
33
-
34
- interface IHelpTooltipWrapProps {
35
- content: ReactNode
36
- title: string
37
- children: React.ReactNode
38
- }
39
-
40
- export const HelpTooltipWrap: FC<IHelpTooltipWrapProps> = (props) => (
41
- <HtmlTooltip
42
- arrow
43
- placement='bottom'
44
- title={
45
- <Stack sx={{ gap: '6px', py: '6px', minWidth: '200px', maxWidth: '400px ' }}>
46
- <TooltipHeaderText>{props.title}</TooltipHeaderText>
47
- <Divider />
48
- <Box sx={{ p: '6px 12px' }}>{props.content}</Box>
49
- </Stack>
50
- }
51
- >
52
- <Box sx={{ cursor: 'default' }}>{props.children}</Box>
53
- </HtmlTooltip>
54
- )
55
-
56
- const TooltipHeaderText = styled((props: TypographyProps) => <Typography variant='subtitle1' {...props} />)({
57
- color: '#0095ff',
58
- fontWeight: 700,
59
- padding: '0 10px'
60
- })
61
-
62
- const HtmlTooltip = styled(({ className, ...props }: TooltipProps) => <Tooltip {...props} classes={{ popper: className }} />)(({ theme }) => ({
63
- [`& .${tooltipClasses.tooltip}`]: {
64
- backgroundColor: '#fff',
65
- color: '#3c3c3c',
66
- maxWidth: 500,
67
- minHeight: 120,
68
- fontSize: theme.typography.pxToRem(12),
69
- borderRadius: '8px',
70
- boxShadow: 'rgba(0, 0, 0, 0.08) 0px 6px 30px'
71
- },
72
- [`& .${tooltipClasses.arrow}`]: {
73
- color: '#fff'
74
- }
75
- }))
@@ -1,51 +0,0 @@
1
- import React, { Fragment, ReactNode, useEffect, useState } from 'react'
2
- import { useDebounce } from '../hooks'
3
-
4
- export interface ImageWithFallbackPropsOwner {
5
- src?: string
6
- alt?: string
7
- fallbackSrc: string
8
- loading?: ReactNode
9
- debounceDelay?: number
10
- }
11
-
12
- type ImgProps = Omit<React.ImgHTMLAttributes<HTMLImageElement>, keyof ImageWithFallbackPropsOwner>
13
-
14
- export interface ImageWithFallbackProps extends ImgProps, ImageWithFallbackPropsOwner {}
15
-
16
- const ImageWithFallback: React.FC<ImageWithFallbackProps> = ({ src, fallbackSrc, alt, loading, debounceDelay = 0, ...props }) => {
17
- const debouncedSrc = useDebounce(src, debounceDelay)
18
- const debouncedFallbackSrc = useDebounce(fallbackSrc, debounceDelay)
19
-
20
- const effectiveSrc = debounceDelay > 0 ? debouncedSrc : src
21
- const effectiveFallbackSrc = debounceDelay > 0 ? debouncedFallbackSrc : fallbackSrc
22
-
23
- const [isLoading, setLoading] = useState(true)
24
- const [imgSrc, setImgSrc] = useState(effectiveSrc ?? effectiveFallbackSrc)
25
-
26
- useEffect(() => {
27
- setImgSrc(effectiveSrc ?? effectiveFallbackSrc)
28
- setLoading(true)
29
- }, [effectiveSrc, effectiveFallbackSrc])
30
-
31
- const loadingElement = isLoading && loading ? loading : <></>
32
-
33
- return (
34
- <Fragment>
35
- {loadingElement}
36
- <img
37
- {...props}
38
- src={imgSrc}
39
- alt={alt}
40
- onLoadStart={() => setLoading(true)}
41
- onLoad={() => setLoading(false)}
42
- onError={() => {
43
- setImgSrc(fallbackSrc)
44
- setLoading(false)
45
- }}
46
- />
47
- </Fragment>
48
- )
49
- }
50
-
51
- export default ImageWithFallback
@@ -1 +0,0 @@
1
- export {}
@@ -1,138 +0,0 @@
1
- import React, { FC, useCallback, useEffect, useRef } from 'react'
2
- import { TextField, InputAdornment, IconButton, Fade, Tooltip, styled, Divider, Box } from '@mui/material'
3
- import SearchIcon from '@mui/icons-material/Search'
4
- import CancelIcon from '@mui/icons-material/Cancel'
5
-
6
- interface IProps {
7
- value?: string
8
- onChange?: (value: string) => void
9
- placeholder?: string
10
- disabledTimer?: boolean
11
- }
12
-
13
- const InputDebounceTimer: FC<IProps> = (props) => {
14
- const refInput = useRef<HTMLInputElement>(null)
15
- const handleClear = () => {
16
- props.onChange && props.onChange('')
17
- if (refInput.current) refInput.current.value = ''
18
- }
19
-
20
- const timer = useRef({ timeout: 700, store: 0 })
21
- const handleChangeCallback = useCallback(
22
- (e: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => {
23
- const value = e.target.value
24
- clearTimeout(timer.current.store)
25
- if (props?.disabledTimer === true) return
26
- timer.current.store = setTimeout(() => {
27
- props.onChange && props.onChange(value)
28
- }, timer.current.timeout) as any
29
- },
30
- [props]
31
- )
32
-
33
- const handleKeyDown = useCallback(
34
- (event: React.KeyboardEvent<HTMLInputElement>) => {
35
- if (event.key === 'Enter') {
36
- clearTimeout(timer.current.store)
37
- const value = refInput.current?.value ?? ''
38
- props.onChange && props.onChange(value)
39
- }
40
- },
41
- [props]
42
- )
43
-
44
- const handleClickSearch = useCallback(() => {
45
- clearTimeout(timer.current.store)
46
- const value = refInput.current?.value ?? ''
47
- props.onChange && props.onChange(value)
48
- }, [props])
49
-
50
- useEffect(() => {
51
- if (refInput.current) refInput.current.value = props.value ?? ''
52
- return () => {}
53
- }, [props.value])
54
-
55
- return (
56
- <WrapTextField className='theme-white'>
57
- <TextField
58
- fullWidth
59
- variant='outlined'
60
- placeholder={props.placeholder}
61
- size='small'
62
- defaultValue={props.value}
63
- onChange={handleChangeCallback}
64
- inputRef={refInput}
65
- onKeyDown={handleKeyDown}
66
- InputProps={{
67
- startAdornment: (
68
- <InputAdornment position='start'>
69
- <IconButton type='submit' onClick={handleClickSearch}>
70
- <SearchIcon />
71
- </IconButton>
72
- <Divider flexItem orientation='vertical' sx={{ height: '24px', transform: 'translateY(-50%)', mx: '3px' }} />
73
- </InputAdornment>
74
- ),
75
- endAdornment: (
76
- <InputAdornment position='end'>
77
- <Fade in={!!props.value}>
78
- <Tooltip title='Clear'>
79
- <IconButton onClick={handleClear}>
80
- <CancelIcon fontSize='small' />
81
- </IconButton>
82
- </Tooltip>
83
- </Fade>
84
- </InputAdornment>
85
- )
86
- }}
87
- />
88
- </WrapTextField>
89
- )
90
- }
91
-
92
- export default InputDebounceTimer
93
-
94
- const WrapTextField = styled(Box)<{ className?: string }>(({ className }) => {
95
- const isWhite = className?.includes('theme-white')
96
- return {
97
- flex: 1,
98
- '--input-search-text-color': isWhite ? '#000' : '#ffffff',
99
- '--input-search-label-color': isWhite ? '#404040' : '#b0b0b0',
100
- '--input-search-bg-color': isWhite ? '#f6f6f6' : 'rgba(255, 255, 255, 0.1)',
101
- '--color-primary': '#42a5f5',
102
-
103
- '& .MuiOutlinedInput-root': {
104
- color: 'var(--input-search-text-color)',
105
- backgroundColor: 'var(--input-search-bg-color)',
106
- borderRadius: 8,
107
- '& fieldset': {
108
- borderColor: 'transparent'
109
- },
110
- '&:hover fieldset': {
111
- borderColor: 'rgba(66, 165, 245, 0.7)' // $color-primary 70%
112
- },
113
- '&.Mui-focused fieldset': {
114
- borderColor: 'var(--color-primary)'
115
- }
116
- },
117
-
118
- '& .MuiInputBase-input': {
119
- color: 'var(--input-search-text-color)'
120
- },
121
-
122
- '& .MuiInputLabel-root': {
123
- color: 'var(--input-search-label-color)'
124
- },
125
-
126
- '& .MuiInputLabel-root.Mui-focused': {
127
- color: '#90caf9'
128
- },
129
-
130
- '& .MuiInputAdornment-root': {
131
- color: 'var(--input-search-text-color)'
132
- },
133
-
134
- '& .MuiIconButton-root': {
135
- color: 'var(--input-search-text-color)'
136
- }
137
- }
138
- })
@@ -1,35 +0,0 @@
1
- import React, { FC } from 'react'
2
- import { Button, ButtonProps, CircularProgress, Fade, styled } from '@mui/material'
3
-
4
- export interface LoadingButtonProps extends ButtonProps {
5
- loading?: boolean
6
- }
7
-
8
- export const LoadingButton: FC<LoadingButtonProps> = ({ loading, children, ...props }) => {
9
- return (
10
- <ButtonCustom {...props} disabled={props.disabled || loading}>
11
- <Fade in={!loading}>
12
- <span>{children}</span>
13
- </Fade>
14
- <Fade in={loading}>
15
- <div className='LoadingButton-progress'>
16
- <CircularProgress size={24} />
17
- </div>
18
- </Fade>
19
- </ButtonCustom>
20
- )
21
- }
22
-
23
- const ButtonCustom = styled(Button)({
24
- position: 'relative',
25
- [`.LoadingButton-progress`]: {
26
- position: 'absolute',
27
- top: 0,
28
- left: 0,
29
- width: '100%',
30
- height: '100%',
31
- display: 'flex',
32
- alignItems: 'center',
33
- justifyContent: 'center'
34
- }
35
- })
@@ -1,30 +0,0 @@
1
- import React, { FC } from 'react'
2
-
3
- const TextEditorPreview: FC<{ children: string }> = (props) => {
4
- const contentRef = React.useRef<HTMLDivElement | null>(null)
5
-
6
- React.useEffect(() => {
7
- // Lấy phần tử template
8
- const template = document.createElement('template')
9
- template.innerHTML = `
10
- <link rel="stylesheet" href="css/quill.snow.css">
11
- <div class='ql-editor'>${props.children}</div>
12
- `
13
-
14
- // Tạo shadow DOM và chèn nội dung từ template
15
- if (contentRef.current) {
16
- const shadowRoot = contentRef.current.shadowRoot || contentRef.current.attachShadow({ mode: 'open' })
17
-
18
- shadowRoot.innerHTML = '' // Reset nội dung cũ
19
- shadowRoot.appendChild(template.content.cloneNode(true))
20
- }
21
- }, [props.children])
22
-
23
- return (
24
- <>
25
- <div ref={contentRef}></div>
26
- </>
27
- )
28
- }
29
-
30
- export default TextEditorPreview
@@ -1,125 +0,0 @@
1
- // /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import React, { Component } from 'react'
3
- import { Box, styled, SxProps, Theme } from '@mui/material'
4
- /**
5
- * yarn add react-quill@2.0.0
6
- */
7
- import ReactQuill from 'react-quill'
8
- import 'react-quill/dist/quill.snow.css'
9
-
10
- export const textEditorClasses = {
11
- root: 'DinoTextEditor-root',
12
- fullscreen: 'DinoTextEditor-fullscreen'
13
- }
14
-
15
- const EditorToolbar: any = {}
16
-
17
- EditorToolbar.formats = [
18
- 'header',
19
- 'bold',
20
- 'italic',
21
- 'underline',
22
- 'strike',
23
- 'blockquote',
24
- 'list',
25
- 'bullet',
26
- 'indent',
27
- 'link',
28
- 'image',
29
- 'align',
30
- 'color',
31
- 'background'
32
- ]
33
-
34
- EditorToolbar.modules = {
35
- toolbar: [
36
- [{ header: [1, 2, 3, 4, 5, 6, false] }],
37
- ['bold', 'italic', 'underline', 'strike', 'blockquote'],
38
- [{ align: '' }, { align: 'center' }, { align: 'right' }, { align: 'justify' }],
39
- [{ list: 'ordered' }, { list: 'bullet' }, { indent: '-1' }, { indent: '+1' }],
40
- [{ color: [] }, { background: [] }],
41
- ['link', 'image'],
42
- ['clean']
43
- ]
44
- }
45
-
46
- interface IProps {
47
- id?: string
48
- name: string
49
- sx?: SxProps<Theme>
50
- readOnly?: boolean
51
- defautValue?: string
52
- error?: boolean
53
- onBlur?: () => void
54
- }
55
-
56
- interface IState {
57
- value: string
58
- }
59
-
60
- class TextEditor extends Component<IProps, IState> {
61
- constructor(props: IProps) {
62
- super(props)
63
- this.state = { value: props.defautValue ?? '' }
64
- }
65
- handleChange = (value: string) => {
66
- let str = value
67
- if (value === '<p><br></p>') str = ''
68
- this.setState({ value: str })
69
- }
70
-
71
- id = 0
72
- render() {
73
- const classes = [textEditorClasses.root]
74
- if (this.props.error) classes.push('error')
75
- return (
76
- <Wrapper id={this.props.id} sx={this.props.sx} className={classes.join(' ')}>
77
- {!this.props.readOnly && <input key={++this.id} name={this.props.name} defaultValue={this.state.value} hidden />}
78
- <ReactQuill
79
- readOnly={this.props.readOnly}
80
- placeholder='Enter the message'
81
- value={this.state.value}
82
- modules={EditorToolbar.modules}
83
- formats={EditorToolbar.formats}
84
- onChange={this.handleChange}
85
- onBlur={this.props.onBlur}
86
- />
87
- </Wrapper>
88
- )
89
- }
90
- }
91
-
92
- export default TextEditor
93
-
94
- export { default as TextEditorPreview } from './text-editor.preview'
95
-
96
- const borderColor = '#d32f2f'
97
-
98
- const Wrapper = styled(Box)({
99
- margin: 0,
100
- minHeight: '450px',
101
- display: 'flex',
102
- '& .quill': { flex: 1 },
103
- '& .ql-container': {
104
- height: 'calc(100% - 42px)',
105
- borderBottomLeftRadius: '6px',
106
- borderBottomRightRadius: '6px'
107
- },
108
- '& .ql-toolbar': {
109
- borderTopLeftRadius: '6px',
110
- borderTopRightRadius: '6px'
111
- },
112
- '&.error .ql-toolbar': {
113
- borderTopColor: borderColor,
114
- borderLeftColor: borderColor,
115
- borderRightColor: borderColor
116
- },
117
- '&.error .ql-container': {
118
- borderBottomColor: borderColor,
119
- borderLeftColor: borderColor,
120
- borderRightColor: borderColor
121
- },
122
- '&.error .ql-editor.ql-blank::before': {
123
- color: borderColor
124
- }
125
- })
@@ -1,55 +0,0 @@
1
- ## 🧩 Cấu trúc tổng quát
2
-
3
- `DinoForm` gồm hai phần chính: các thành phần nền tảng (Base) và các thành phần nhập liệu (Inputs).
4
-
5
- ### 1. Base (Nền tảng)
6
-
7
- | Tên | Kiểu | Mô tả |
8
- | ---------------------- | ------------------------- | --------------------------------------------------------------- |
9
- | `ModalWrap` | `React Component` | Lớp bộc khi dùng chung với GlobalModal, Form từ Table. |
10
- | `BottomBarWrap` | `React Component` | Component thay thế cho BottomBar của FormBase. |
11
- | `FormValidator` | `class` | Lớp xác thực, cung cấp phương thức tạo schema kiểm tra dữ liệu. |
12
- | `validator` | `object` | Tạo nhanh FormValidator |
13
- | `createFormBase` | `React Component Creator` | Tạo form cơ bản |
14
- | `createFormComfirm` | `React Component Creator` | Tạo hộp thoại xác nhận khi gửi hoặc huỷ biểu mẫu. |
15
- | `createFormGridLayout` | `React Component Creator` | Tạo layout dạng lưới để tổ chức các input trong form. |
16
-
17
- ---
18
-
19
- ### 2. Inputs (Thành phần nhập liệu)
20
-
21
- | Tên | Kiểu | Mô tả |
22
- | ------------------------ | ------------------------- | ------------------------------------------------------------ |
23
- | `createInput` | `React Component Creator` | Input text cơ bản, có thể dùng cho tên, tiêu đề, v.v. |
24
- | `createInputFile` | `React Component Creator` | Input cho phép người dùng chọn và tải lên file. |
25
- | `createDatePicker` | `React Component Creator` | Chọn ngày bằng lịch, tương thích với dayjs. |
26
- | `createAutocompleteChip` | `React Component Creator` | Tạo autocomplete cho phép chọn nhiều giá trị dưới dạng chip. |
27
- | `createSelectSimple` | `React Component Creator` | Select tĩnh với danh sách tùy chọn truyền trực tiếp. |
28
- | `createSelectWithApi` | `React Component Creator` | Select động, lấy dữ liệu từ API. |
29
- | `createTextEditor` | `React Component Creator` | Trình soạn thảo văn bản phong phú (rich text editor). |
30
-
31
- ---
32
-
33
- ## 🛠️ Cách sử dụng
34
-
35
- ### Tạo form cơ bản `createFormBase`
36
-
37
- ### Tạo form dạng lưới `createFormGridLayout`
38
-
39
- Tạo layout dạng lưới để tổ chức các input trong form.
40
-
41
- ```ts
42
- export interface IDataModel {
43
- Id: string
44
- TextValue: string
45
- DateTimeValue: string
46
- FileValue: string
47
- }
48
-
49
- export const FormInstance = DinoForm.createFormGridLayout<IDataModel>({
50
- configs: [{ key: 'Id', label: 'Id', placeholder: 'Id' }],
51
- validate: DinoForm.validator({
52
- Id: { Rules: [{ rule: SingleRuleValidate.Required }] }
53
- })
54
- })
55
- ```