@bodynarf/react.components 1.7.3 → 1.7.4

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 (331) hide show
  1. package/{components → dist/components}/accordion/component/index.d.ts +1 -1
  2. package/{components → dist/components}/accordion/component/index.js +3 -3
  3. package/dist/components/accordion/types.d.ts +18 -0
  4. package/{components → dist/components}/anchor/component/index.d.ts +1 -1
  5. package/{components → dist/components}/anchor/component/index.js +2 -2
  6. package/{components → dist/components}/anchor/components/anchorWithIcon/index.d.ts +1 -1
  7. package/{components → dist/components}/anchor/components/anchorWithIcon/index.js +1 -1
  8. package/{components → dist/components}/anchor/components/simpleAnchor/index.d.ts +1 -1
  9. package/dist/components/anchor/types.d.ts +39 -0
  10. package/{components → dist/components}/button/component/index.d.ts +1 -1
  11. package/{components → dist/components}/button/component/index.js +3 -3
  12. package/{components → dist/components}/button/components/buttonWithIcon/index.d.ts +1 -1
  13. package/{components → dist/components}/button/components/buttonWithIcon/index.js +1 -1
  14. package/{components → dist/components}/button/components/simpleButton/index.d.ts +1 -1
  15. package/{components → dist/components}/button/types.d.ts +1 -1
  16. package/{components → dist/components}/dropdown/component/index.d.ts +1 -1
  17. package/{components → dist/components}/dropdown/component/index.js +2 -2
  18. package/{components → dist/components}/dropdown/components/compact/index.d.ts +1 -1
  19. package/{components → dist/components}/dropdown/components/compact/index.js +3 -3
  20. package/{components → dist/components}/dropdown/components/item/index.d.ts +1 -1
  21. package/{components → dist/components}/dropdown/components/label/index.d.ts +1 -1
  22. package/{components → dist/components}/dropdown/components/label/index.js +2 -2
  23. package/{components → dist/components}/dropdown/components/withLabel/index.d.ts +1 -1
  24. package/{components → dist/components}/dropdown/components/withLabel/index.js +4 -4
  25. package/dist/components/dropdown/types.d.ts +46 -0
  26. package/{components → dist/components}/icon/component/index.d.ts +1 -1
  27. package/{components → dist/components}/icon/component/index.js +1 -1
  28. package/dist/components/icon/types.d.ts +16 -0
  29. package/{components → dist/components}/paginator/component/index.d.ts +1 -1
  30. package/{components → dist/components}/paginator/component/index.js +1 -1
  31. package/{components → dist/components}/paginator/types.d.ts +1 -1
  32. package/{components → dist/components}/primitives/checkbox/component/index.d.ts +1 -1
  33. package/dist/components/primitives/checkbox/types.d.ts +25 -0
  34. package/{components → dist/components}/primitives/date/component/index.d.ts +1 -1
  35. package/{components → dist/components}/primitives/date/component/index.js +2 -2
  36. package/dist/components/primitives/date/types.d.ts +9 -0
  37. package/{components → dist/components}/primitives/multiline/component/index.d.ts +1 -1
  38. package/{components → dist/components}/primitives/multiline/component/index.js +2 -2
  39. package/{components → dist/components}/primitives/multiline/components/multilineWithLabel/index.d.ts +1 -1
  40. package/{components → dist/components}/primitives/multiline/components/multilineWithLabel/index.js +2 -2
  41. package/{components → dist/components}/primitives/multiline/components/multilineWithoutLabel/index.d.ts +1 -1
  42. package/{components → dist/components}/primitives/multiline/components/multilineWithoutLabel/index.js +2 -2
  43. package/dist/components/primitives/multiline/types.d.ts +11 -0
  44. package/{components → dist/components}/primitives/number/component/index.d.ts +1 -1
  45. package/{components → dist/components}/primitives/number/component/index.js +2 -2
  46. package/{components → dist/components}/primitives/number/components/withLabel/index.d.ts +1 -1
  47. package/{components → dist/components}/primitives/number/components/withLabel/index.js +2 -2
  48. package/{components → dist/components}/primitives/number/components/withoutLabel/index.d.ts +1 -1
  49. package/{components → dist/components}/primitives/number/components/withoutLabel/index.js +2 -2
  50. package/dist/components/primitives/number/types.d.ts +13 -0
  51. package/{components → dist/components}/primitives/password/component/index.d.ts +1 -1
  52. package/{components → dist/components}/primitives/password/component/index.js +2 -2
  53. package/{components → dist/components}/primitives/password/components/withLabel/index.d.ts +1 -1
  54. package/{components → dist/components}/primitives/password/components/withLabel/index.js +3 -3
  55. package/{components → dist/components}/primitives/password/components/withoutLabel/index.d.ts +1 -1
  56. package/{components → dist/components}/primitives/password/components/withoutLabel/index.js +3 -3
  57. package/dist/components/primitives/password/types.d.ts +10 -0
  58. package/{components → dist/components}/primitives/text/component/index.d.ts +1 -1
  59. package/{components → dist/components}/primitives/text/component/index.js +2 -2
  60. package/{components → dist/components}/primitives/text/components/textWithLabel/index.d.ts +1 -1
  61. package/{components → dist/components}/primitives/text/components/textWithLabel/index.js +2 -2
  62. package/{components → dist/components}/primitives/text/components/textWithoutLabel/index.d.ts +1 -1
  63. package/{components → dist/components}/primitives/text/components/textWithoutLabel/index.js +2 -2
  64. package/dist/components/primitives/text/types.d.ts +7 -0
  65. package/dist/components/primitives/types/baseProps.d.ts +30 -0
  66. package/{components → dist/components}/search/component/index.d.ts +1 -1
  67. package/{components → dist/components}/search/component/index.js +1 -1
  68. package/dist/components/search/types.d.ts +27 -0
  69. package/{components → dist/components}/tabs/component/index.d.ts +2 -2
  70. package/{components → dist/components}/tabs/component/index.js +4 -4
  71. package/{components → dist/components}/tabs/components/item/index.d.ts +1 -1
  72. package/{components → dist/components}/tabs/components/item/index.js +1 -1
  73. package/{components → dist/components}/tabs/types.d.ts +1 -1
  74. package/{components → dist/components}/tag/component/index.d.ts +1 -1
  75. package/{components → dist/components}/tag/component/index.js +1 -1
  76. package/dist/components/tag/types.d.ts +27 -0
  77. package/dist/package.json +41 -0
  78. package/dist/readme.md +56 -0
  79. package/{utils → dist/utils}/dataAttributes.d.ts +1 -1
  80. package/{utils → dist/utils}/formValidation.d.ts +1 -1
  81. package/{utils → dist/utils}/formValidation.js +1 -1
  82. package/package.json +5 -3
  83. package/src/common.scss +3 -0
  84. package/src/components/accordion/component/index.tsx +84 -0
  85. package/src/components/accordion/index.ts +2 -0
  86. package/{components/accordion/types.d.ts → src/components/accordion/types.ts} +6 -2
  87. package/src/components/anchor/component/index.tsx +40 -0
  88. package/src/components/anchor/component/style.scss +15 -0
  89. package/src/components/anchor/components/anchorWithIcon/index.tsx +45 -0
  90. package/src/components/anchor/components/simpleAnchor/index.tsx +16 -0
  91. package/src/components/anchor/index.ts +2 -0
  92. package/{components/anchor/types.d.ts → src/components/anchor/types.ts} +16 -1
  93. package/src/components/button/component/index.tsx +58 -0
  94. package/src/components/button/component/style.scss +12 -0
  95. package/src/components/button/components/buttonWithIcon/index.tsx +53 -0
  96. package/src/components/button/components/simpleButton/index.tsx +21 -0
  97. package/src/components/button/index.ts +2 -0
  98. package/src/components/button/types.ts +64 -0
  99. package/src/components/dropdown/component/index.tsx +20 -0
  100. package/src/components/dropdown/component/style.scss +120 -0
  101. package/src/components/dropdown/components/compact/index.tsx +121 -0
  102. package/src/components/dropdown/components/item/index.tsx +30 -0
  103. package/src/components/dropdown/components/label/index.tsx +68 -0
  104. package/src/components/dropdown/components/withLabel/index.tsx +201 -0
  105. package/src/components/dropdown/index.ts +2 -0
  106. package/{components/dropdown/types.d.ts → src/components/dropdown/types.ts} +15 -2
  107. package/src/components/icon/component/index.tsx +34 -0
  108. package/src/components/icon/component/style.scss +21 -0
  109. package/src/components/icon/index.ts +2 -0
  110. package/{components/icon/types.d.ts → src/components/icon/types.ts} +3 -1
  111. package/src/components/index.ts +13 -0
  112. package/src/components/paginator/component/index.tsx +131 -0
  113. package/src/components/paginator/index.ts +3 -0
  114. package/src/components/paginator/types.ts +40 -0
  115. package/src/components/paginator/utils.ts +19 -0
  116. package/src/components/primitives/checkbox/component/index.tsx +102 -0
  117. package/src/components/primitives/checkbox/component/style.scss +10 -0
  118. package/src/components/primitives/checkbox/index.ts +2 -0
  119. package/{components/primitives/checkbox/types.d.ts → src/components/primitives/checkbox/types.ts} +6 -2
  120. package/src/components/primitives/date/component/index.tsx +129 -0
  121. package/src/components/primitives/date/index.ts +2 -0
  122. package/{components/primitives/date/types.d.ts → src/components/primitives/date/types.ts} +2 -1
  123. package/src/components/primitives/index.ts +7 -0
  124. package/src/components/primitives/multiline/component/index.tsx +20 -0
  125. package/src/components/primitives/multiline/components/multilineWithLabel/index.tsx +125 -0
  126. package/src/components/primitives/multiline/components/multilineWithoutLabel/index.tsx +62 -0
  127. package/src/components/primitives/multiline/index.ts +2 -0
  128. package/{components/primitives/multiline/types.d.ts → src/components/primitives/multiline/types.ts} +3 -1
  129. package/src/components/primitives/number/component/index.tsx +17 -0
  130. package/src/components/primitives/number/components/withLabel/index.tsx +127 -0
  131. package/src/components/primitives/number/components/withoutLabel/index.tsx +66 -0
  132. package/src/components/primitives/number/index.ts +2 -0
  133. package/{components/primitives/number/types.d.ts → src/components/primitives/number/types.ts} +2 -1
  134. package/src/components/primitives/password/component/index.tsx +19 -0
  135. package/src/components/primitives/password/component/style.scss +16 -0
  136. package/src/components/primitives/password/components/withLabel/index.tsx +147 -0
  137. package/src/components/primitives/password/components/withoutLabel/index.tsx +79 -0
  138. package/src/components/primitives/password/index.ts +2 -0
  139. package/{components/primitives/password/types.d.ts → src/components/primitives/password/types.ts} +1 -1
  140. package/src/components/primitives/text/component/index.tsx +20 -0
  141. package/src/components/primitives/text/components/textWithLabel/index.tsx +123 -0
  142. package/src/components/primitives/text/components/textWithoutLabel/index.tsx +64 -0
  143. package/src/components/primitives/text/index.tsx +2 -0
  144. package/{components/primitives/text/types.d.ts → src/components/primitives/text/types.ts} +1 -1
  145. package/{components/primitives/types/baseProps.d.ts → src/components/primitives/types/baseProps.ts} +13 -1
  146. package/src/components/primitives/types/index.ts +3 -0
  147. package/src/components/primitives/types/label.ts +17 -0
  148. package/src/components/primitives/types/validation/index.ts +2 -0
  149. package/src/components/primitives/types/validation/state.ts +10 -0
  150. package/src/components/primitives/types/validation/status.ts +11 -0
  151. package/src/components/search/component/index.tsx +88 -0
  152. package/src/components/search/component/style.scss +24 -0
  153. package/src/components/search/index.ts +2 -0
  154. package/{components/search/types.d.ts → src/components/search/types.ts} +10 -2
  155. package/src/components/tabs/component/index.tsx +147 -0
  156. package/src/components/tabs/component/style.scss +12 -0
  157. package/src/components/tabs/components/item/index.tsx +86 -0
  158. package/src/components/tabs/index.ts +2 -0
  159. package/src/components/tabs/types.ts +52 -0
  160. package/src/components/tag/component/index.tsx +52 -0
  161. package/src/components/tag/component/style.scss +27 -0
  162. package/src/components/tag/index.ts +2 -0
  163. package/{components/tag/types.d.ts → src/components/tag/types.ts} +8 -1
  164. package/src/components/types.ts +87 -0
  165. package/src/hooks/index.ts +2 -0
  166. package/src/hooks/useComponentOutsideClick.ts +48 -0
  167. package/src/hooks/usePagination.ts +55 -0
  168. package/src/index.ts +3 -0
  169. package/src/utils/dataAttributes.ts +26 -0
  170. package/src/utils/formValidation.ts +42 -0
  171. package/src/utils/index.ts +2 -0
  172. package/tsconfig.json +42 -0
  173. /package/{components → dist/components}/accordion/component/index.d.ts.map +0 -0
  174. /package/{components → dist/components}/accordion/index.d.ts +0 -0
  175. /package/{components → dist/components}/accordion/index.d.ts.map +0 -0
  176. /package/{components → dist/components}/accordion/index.js +0 -0
  177. /package/{components → dist/components}/accordion/types.d.ts.map +0 -0
  178. /package/{components → dist/components}/accordion/types.js +0 -0
  179. /package/{components → dist/components}/anchor/component/index.d.ts.map +0 -0
  180. /package/{components → dist/components}/anchor/components/anchorWithIcon/index.d.ts.map +0 -0
  181. /package/{components → dist/components}/anchor/components/simpleAnchor/index.d.ts.map +0 -0
  182. /package/{components → dist/components}/anchor/components/simpleAnchor/index.js +0 -0
  183. /package/{components → dist/components}/anchor/index.d.ts +0 -0
  184. /package/{components → dist/components}/anchor/index.d.ts.map +0 -0
  185. /package/{components → dist/components}/anchor/index.js +0 -0
  186. /package/{components → dist/components}/anchor/types.d.ts.map +0 -0
  187. /package/{components → dist/components}/anchor/types.js +0 -0
  188. /package/{components → dist/components}/button/component/index.d.ts.map +0 -0
  189. /package/{components → dist/components}/button/components/buttonWithIcon/index.d.ts.map +0 -0
  190. /package/{components → dist/components}/button/components/simpleButton/index.d.ts.map +0 -0
  191. /package/{components → dist/components}/button/components/simpleButton/index.js +0 -0
  192. /package/{components → dist/components}/button/index.d.ts +0 -0
  193. /package/{components → dist/components}/button/index.d.ts.map +0 -0
  194. /package/{components → dist/components}/button/index.js +0 -0
  195. /package/{components → dist/components}/button/types.d.ts.map +0 -0
  196. /package/{components → dist/components}/button/types.js +0 -0
  197. /package/{components → dist/components}/dropdown/component/index.d.ts.map +0 -0
  198. /package/{components → dist/components}/dropdown/components/compact/index.d.ts.map +0 -0
  199. /package/{components → dist/components}/dropdown/components/item/index.d.ts.map +0 -0
  200. /package/{components → dist/components}/dropdown/components/item/index.js +0 -0
  201. /package/{components → dist/components}/dropdown/components/label/index.d.ts.map +0 -0
  202. /package/{components → dist/components}/dropdown/components/withLabel/index.d.ts.map +0 -0
  203. /package/{components → dist/components}/dropdown/index.d.ts +0 -0
  204. /package/{components → dist/components}/dropdown/index.d.ts.map +0 -0
  205. /package/{components → dist/components}/dropdown/index.js +0 -0
  206. /package/{components → dist/components}/dropdown/types.d.ts.map +0 -0
  207. /package/{components → dist/components}/dropdown/types.js +0 -0
  208. /package/{components → dist/components}/icon/component/index.d.ts.map +0 -0
  209. /package/{components → dist/components}/icon/index.d.ts +0 -0
  210. /package/{components → dist/components}/icon/index.d.ts.map +0 -0
  211. /package/{components → dist/components}/icon/index.js +0 -0
  212. /package/{components → dist/components}/icon/types.d.ts.map +0 -0
  213. /package/{components → dist/components}/icon/types.js +0 -0
  214. /package/{components → dist/components}/index.d.ts +0 -0
  215. /package/{components → dist/components}/index.d.ts.map +0 -0
  216. /package/{components → dist/components}/index.js +0 -0
  217. /package/{components → dist/components}/paginator/component/index.d.ts.map +0 -0
  218. /package/{components → dist/components}/paginator/index.d.ts +0 -0
  219. /package/{components → dist/components}/paginator/index.d.ts.map +0 -0
  220. /package/{components → dist/components}/paginator/index.js +0 -0
  221. /package/{components → dist/components}/paginator/types.d.ts.map +0 -0
  222. /package/{components → dist/components}/paginator/types.js +0 -0
  223. /package/{components → dist/components}/paginator/utils.d.ts +0 -0
  224. /package/{components → dist/components}/paginator/utils.d.ts.map +0 -0
  225. /package/{components → dist/components}/paginator/utils.js +0 -0
  226. /package/{components → dist/components}/primitives/checkbox/component/index.d.ts.map +0 -0
  227. /package/{components → dist/components}/primitives/checkbox/component/index.js +0 -0
  228. /package/{components → dist/components}/primitives/checkbox/index.d.ts +0 -0
  229. /package/{components → dist/components}/primitives/checkbox/index.d.ts.map +0 -0
  230. /package/{components → dist/components}/primitives/checkbox/index.js +0 -0
  231. /package/{components → dist/components}/primitives/checkbox/types.d.ts.map +0 -0
  232. /package/{components → dist/components}/primitives/checkbox/types.js +0 -0
  233. /package/{components → dist/components}/primitives/date/component/index.d.ts.map +0 -0
  234. /package/{components → dist/components}/primitives/date/index.d.ts +0 -0
  235. /package/{components → dist/components}/primitives/date/index.d.ts.map +0 -0
  236. /package/{components → dist/components}/primitives/date/index.js +0 -0
  237. /package/{components → dist/components}/primitives/date/types.d.ts.map +0 -0
  238. /package/{components → dist/components}/primitives/date/types.js +0 -0
  239. /package/{components → dist/components}/primitives/index.d.ts +0 -0
  240. /package/{components → dist/components}/primitives/index.d.ts.map +0 -0
  241. /package/{components → dist/components}/primitives/index.js +0 -0
  242. /package/{components → dist/components}/primitives/multiline/component/index.d.ts.map +0 -0
  243. /package/{components → dist/components}/primitives/multiline/components/multilineWithLabel/index.d.ts.map +0 -0
  244. /package/{components → dist/components}/primitives/multiline/components/multilineWithoutLabel/index.d.ts.map +0 -0
  245. /package/{components → dist/components}/primitives/multiline/index.d.ts +0 -0
  246. /package/{components → dist/components}/primitives/multiline/index.d.ts.map +0 -0
  247. /package/{components → dist/components}/primitives/multiline/index.js +0 -0
  248. /package/{components → dist/components}/primitives/multiline/types.d.ts.map +0 -0
  249. /package/{components → dist/components}/primitives/multiline/types.js +0 -0
  250. /package/{components → dist/components}/primitives/number/component/index.d.ts.map +0 -0
  251. /package/{components → dist/components}/primitives/number/components/withLabel/index.d.ts.map +0 -0
  252. /package/{components → dist/components}/primitives/number/components/withoutLabel/index.d.ts.map +0 -0
  253. /package/{components → dist/components}/primitives/number/index.d.ts +0 -0
  254. /package/{components → dist/components}/primitives/number/index.d.ts.map +0 -0
  255. /package/{components → dist/components}/primitives/number/index.js +0 -0
  256. /package/{components → dist/components}/primitives/number/types.d.ts.map +0 -0
  257. /package/{components → dist/components}/primitives/number/types.js +0 -0
  258. /package/{components → dist/components}/primitives/password/component/index.d.ts.map +0 -0
  259. /package/{components → dist/components}/primitives/password/components/withLabel/index.d.ts.map +0 -0
  260. /package/{components → dist/components}/primitives/password/components/withoutLabel/index.d.ts.map +0 -0
  261. /package/{components → dist/components}/primitives/password/index.d.ts +0 -0
  262. /package/{components → dist/components}/primitives/password/index.d.ts.map +0 -0
  263. /package/{components → dist/components}/primitives/password/index.js +0 -0
  264. /package/{components → dist/components}/primitives/password/types.d.ts.map +0 -0
  265. /package/{components → dist/components}/primitives/password/types.js +0 -0
  266. /package/{components → dist/components}/primitives/text/component/index.d.ts.map +0 -0
  267. /package/{components → dist/components}/primitives/text/components/textWithLabel/index.d.ts.map +0 -0
  268. /package/{components → dist/components}/primitives/text/components/textWithoutLabel/index.d.ts.map +0 -0
  269. /package/{components → dist/components}/primitives/text/index.d.ts +0 -0
  270. /package/{components → dist/components}/primitives/text/index.d.ts.map +0 -0
  271. /package/{components → dist/components}/primitives/text/index.js +0 -0
  272. /package/{components → dist/components}/primitives/text/types.d.ts.map +0 -0
  273. /package/{components → dist/components}/primitives/text/types.js +0 -0
  274. /package/{components → dist/components}/primitives/types/baseProps.d.ts.map +0 -0
  275. /package/{components → dist/components}/primitives/types/baseProps.js +0 -0
  276. /package/{components → dist/components}/primitives/types/index.d.ts +0 -0
  277. /package/{components → dist/components}/primitives/types/index.d.ts.map +0 -0
  278. /package/{components → dist/components}/primitives/types/index.js +0 -0
  279. /package/{components → dist/components}/primitives/types/label.d.ts +0 -0
  280. /package/{components → dist/components}/primitives/types/label.d.ts.map +0 -0
  281. /package/{components → dist/components}/primitives/types/label.js +0 -0
  282. /package/{components → dist/components}/primitives/types/validation/index.d.ts +0 -0
  283. /package/{components → dist/components}/primitives/types/validation/index.d.ts.map +0 -0
  284. /package/{components → dist/components}/primitives/types/validation/index.js +0 -0
  285. /package/{components → dist/components}/primitives/types/validation/state.d.ts +0 -0
  286. /package/{components → dist/components}/primitives/types/validation/state.d.ts.map +0 -0
  287. /package/{components → dist/components}/primitives/types/validation/state.js +0 -0
  288. /package/{components → dist/components}/primitives/types/validation/status.d.ts +0 -0
  289. /package/{components → dist/components}/primitives/types/validation/status.d.ts.map +0 -0
  290. /package/{components → dist/components}/primitives/types/validation/status.js +0 -0
  291. /package/{components → dist/components}/search/component/index.d.ts.map +0 -0
  292. /package/{components → dist/components}/search/index.d.ts +0 -0
  293. /package/{components → dist/components}/search/index.d.ts.map +0 -0
  294. /package/{components → dist/components}/search/index.js +0 -0
  295. /package/{components → dist/components}/search/types.d.ts.map +0 -0
  296. /package/{components → dist/components}/search/types.js +0 -0
  297. /package/{components → dist/components}/tabs/component/index.d.ts.map +0 -0
  298. /package/{components → dist/components}/tabs/components/item/index.d.ts.map +0 -0
  299. /package/{components → dist/components}/tabs/index.d.ts +0 -0
  300. /package/{components → dist/components}/tabs/index.d.ts.map +0 -0
  301. /package/{components → dist/components}/tabs/index.js +0 -0
  302. /package/{components → dist/components}/tabs/types.d.ts.map +0 -0
  303. /package/{components → dist/components}/tabs/types.js +0 -0
  304. /package/{components → dist/components}/tag/component/index.d.ts.map +0 -0
  305. /package/{components → dist/components}/tag/index.d.ts +0 -0
  306. /package/{components → dist/components}/tag/index.d.ts.map +0 -0
  307. /package/{components → dist/components}/tag/index.js +0 -0
  308. /package/{components → dist/components}/tag/types.d.ts.map +0 -0
  309. /package/{components → dist/components}/tag/types.js +0 -0
  310. /package/{components → dist/components}/types.d.ts +0 -0
  311. /package/{components → dist/components}/types.d.ts.map +0 -0
  312. /package/{components → dist/components}/types.js +0 -0
  313. /package/{hooks → dist/hooks}/index.d.ts +0 -0
  314. /package/{hooks → dist/hooks}/index.d.ts.map +0 -0
  315. /package/{hooks → dist/hooks}/index.js +0 -0
  316. /package/{hooks → dist/hooks}/useComponentOutsideClick.d.ts +0 -0
  317. /package/{hooks → dist/hooks}/useComponentOutsideClick.d.ts.map +0 -0
  318. /package/{hooks → dist/hooks}/useComponentOutsideClick.js +0 -0
  319. /package/{hooks → dist/hooks}/usePagination.d.ts +0 -0
  320. /package/{hooks → dist/hooks}/usePagination.d.ts.map +0 -0
  321. /package/{hooks → dist/hooks}/usePagination.js +0 -0
  322. /package/{index.d.ts → dist/index.d.ts} +0 -0
  323. /package/{index.d.ts.map → dist/index.d.ts.map} +0 -0
  324. /package/{index.js → dist/index.js} +0 -0
  325. /package/{tsconfig.tsbuildinfo → dist/tsconfig.tsbuildinfo} +0 -0
  326. /package/{utils → dist/utils}/dataAttributes.d.ts.map +0 -0
  327. /package/{utils → dist/utils}/dataAttributes.js +0 -0
  328. /package/{utils → dist/utils}/formValidation.d.ts.map +0 -0
  329. /package/{utils → dist/utils}/index.d.ts +0 -0
  330. /package/{utils → dist/utils}/index.d.ts.map +0 -0
  331. /package/{utils → dist/utils}/index.js +0 -0
@@ -0,0 +1,48 @@
1
+ import { DependencyList, useCallback, useEffect } from "react";
2
+
3
+ import { isNullOrUndefined, isNull } from "@bodynarf/utils";
4
+
5
+ /**
6
+ * Subscribe to component outside click
7
+ * @param selector Component root selector
8
+ * @param clickHandleCondition Condition to handle document click
9
+ * @param clickHandleChange Handler of outside component click
10
+ * @param clickListenCondition Condition to start listening document clicks
11
+ * @param dependencies Additional dependencies to update hook
12
+ */
13
+ export const useComponentOutsideClick = (
14
+ selector: string,
15
+ clickHandleCondition: boolean,
16
+ clickHandleChange: () => void,
17
+ clickListenCondition?: boolean,
18
+ dependencies?: DependencyList
19
+ ): void => {
20
+ const onDocumentClick = useCallback(
21
+ (event: MouseEvent): void => {
22
+ if (clickHandleCondition) {
23
+ const target: HTMLElement = event.target as HTMLElement;
24
+
25
+ if (isNullOrUndefined(target)) {
26
+ return;
27
+ }
28
+
29
+ const relatedComponent: Element | null =
30
+ target.closest(selector);
31
+
32
+ if (isNull(relatedComponent)) {
33
+ clickHandleChange();
34
+ }
35
+ }
36
+ // eslint-disable-next-line react-hooks/exhaustive-deps
37
+ }, [clickHandleCondition, selector, clickHandleChange, dependencies]);
38
+
39
+ useEffect(() => {
40
+ if (isNullOrUndefined(clickListenCondition) || clickListenCondition === true) {
41
+ document.addEventListener("click", onDocumentClick);
42
+
43
+ return (): void => document.removeEventListener("click", onDocumentClick);
44
+ }
45
+
46
+ return () => { };
47
+ }, [clickListenCondition, onDocumentClick]);
48
+ };
@@ -0,0 +1,55 @@
1
+ import { DependencyList, useCallback, useEffect, useMemo, useState } from "react";
2
+
3
+ /** Paginator hook state */
4
+ export interface PaginationState {
5
+ /** Number of current page */
6
+ currentPage: number;
7
+
8
+ /** Amount of pages */
9
+ pagesCount: number;
10
+
11
+ /** Handler of page change */
12
+ onPageChange: (page: number) => void;
13
+ }
14
+
15
+ /** Default page size */
16
+ const defaultPageSize: number = 30;
17
+
18
+ /**
19
+ * Hook to pagination state, return hooked values and handler for pagination
20
+ * @param length Pagionation items count
21
+ * @param size Page size. Default is 30
22
+ * @param initPage Initial page. Default is 1
23
+ * @param dependencies List of dependencies. On any dependency update current page will be set to 1
24
+ * @returns Pair of hook-stored state and handler for slicing current page items
25
+ */
26
+ export const usePagination = (
27
+ length: number,
28
+ size: number = defaultPageSize,
29
+ initPage: number = 1,
30
+ dependencies: DependencyList = []
31
+ ): [PaginationState, (data: Array<any>) => Array<any>] => {
32
+ const [currentPage, setCurrentPage] = useState(initPage);
33
+ const count = useMemo(() => Math.ceil(length / size), [size, length]);
34
+ const onChange = useCallback((page: number) => setCurrentPage(page), [setCurrentPage]);
35
+
36
+ const paginate = useCallback(
37
+ (data: Array<any>): Array<any> => {
38
+ const limit = size;
39
+ const offstet = (currentPage - 1) * size;
40
+
41
+ return data.slice(offstet, offstet + limit);
42
+ },
43
+ [size, currentPage]
44
+ );
45
+
46
+ const state = useMemo(() => ({
47
+ currentPage: currentPage,
48
+ pagesCount: count,
49
+ onPageChange: onChange
50
+ }), [currentPage, count, onChange]);
51
+
52
+ useEffect(() => setCurrentPage(1), dependencies);
53
+
54
+ return [state, paginate];
55
+ };
package/src/index.ts ADDED
@@ -0,0 +1,3 @@
1
+ export * from "./components";
2
+ export * from "./hooks";
3
+ export * from "./utils";
@@ -0,0 +1,26 @@
1
+ import { isNullOrUndefined } from "@bodynarf/utils";
2
+
3
+ import { DataAttributes } from "@bbr";
4
+
5
+ /**
6
+ * Map object with key-value pairs to html data attributes format
7
+ * @param dataAttributes Object with data attribute values
8
+ * @returns Object that could be injected into react html element as data-* attribute values
9
+ */
10
+ export const mapDataAttributes = (dataAttributes: DataAttributes): object => {
11
+ const mappedAttributes =
12
+ Object
13
+ .entries(dataAttributes)
14
+ .reduce((result, [key, value]) => {
15
+ if (isNullOrUndefined(value)) {
16
+ return result;
17
+ }
18
+
19
+ const newKey = key.startsWith("data-") ? key : `data-${key}`;
20
+
21
+ result[newKey] = value;
22
+ return result;
23
+ }, {} as any);
24
+
25
+ return mappedAttributes;
26
+ };
@@ -0,0 +1,42 @@
1
+ import { isNullOrUndefined } from "@bodynarf/utils";
2
+
3
+ import { ElementColor, ValidationState, ValidationStatus } from "@bbr/components";
4
+
5
+ /**
6
+ * Get current validation state values
7
+ * @param style Component style color
8
+ * @param validationState Current form item validation state
9
+ * @returns [Is validation applicable; classname attribute value; validation messages]
10
+ */
11
+ export const getValidationValues = (style?: ElementColor, validationState?: ValidationState): [boolean, string, Array<string>] => {
12
+ const validationStateDefined = !isNullOrUndefined(validationState) && validationState!.status !== ValidationStatus.None;
13
+ const styleClassName = getStyleClassName(style, validationState);
14
+
15
+ const messages = validationState?.messages ?? [];
16
+
17
+ return [validationStateDefined, styleClassName, messages];
18
+ }
19
+
20
+ /**
21
+ * Get classname attribute value based on current validation state and form item component style prop
22
+ * @param style Component style color
23
+ * @param validationState Current form item validation state
24
+ * @returns Classname attribute value
25
+ */
26
+ export const getStyleClassName = (style?: ElementColor, validationState?: ValidationState): string => {
27
+ if (isNullOrUndefined(validationState)) {
28
+ return isNullOrUndefined(style) ? "" : `is-${style}`;
29
+ }
30
+
31
+ const { status } = validationState!;
32
+ switch (status) {
33
+ case ValidationStatus.Valid: {
34
+ return "is-success";
35
+ }
36
+ case ValidationStatus.Invalid: {
37
+ return "is-danger";
38
+ }
39
+ }
40
+
41
+ return isNullOrUndefined(style) ? "" : `is-${style}`;
42
+ };
@@ -0,0 +1,2 @@
1
+ export * from "./formValidation";
2
+ export * from "./dataAttributes";
package/tsconfig.json ADDED
@@ -0,0 +1,42 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "jsx": "react-jsx",
5
+ "module": "ESNext",
6
+ "esModuleInterop": true,
7
+ "forceConsistentCasingInFileNames": true,
8
+ "strict": true,
9
+ "skipLibCheck": true,
10
+ "declaration": true,
11
+ "declarationMap": true,
12
+ "outDir": "./dist",
13
+ "incremental": true,
14
+ "moduleResolution": "Node",
15
+ "noUnusedLocals": true,
16
+ "noUnusedParameters": true,
17
+ "noImplicitReturns": true,
18
+ "baseUrl": "./",
19
+ "paths": {
20
+ "@bbr": [
21
+ "./src"
22
+ ],
23
+ "@bbr/components": [
24
+ "./src/components"
25
+ ],
26
+ "@bbr/components/*": [
27
+ "./src/components/*",
28
+ "./src/components/primitives/*"
29
+ ],
30
+ "@bbr/hooks": [
31
+ "./src/hooks"
32
+ ],
33
+ "@bbr/utils": [
34
+ "./src/utils"
35
+ ]
36
+ }
37
+ },
38
+ "exclude": [
39
+ "node_modules",
40
+ "dist"
41
+ ]
42
+ }
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes