react-miui 0.0.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +10 -1
  3. package/assets/back.svg +1 -0
  4. package/dist/components/form/Checkbox.module.scss +13 -6
  5. package/dist/components/form/Toggle.d.ts +8 -0
  6. package/dist/components/form/Toggle.d.ts.map +1 -0
  7. package/dist/components/form/Toggle.js +40 -0
  8. package/dist/components/form/Toggle.js.map +1 -0
  9. package/dist/components/form/Toggle.module.scss +46 -0
  10. package/dist/components/icons/Back.d.ts +7 -0
  11. package/dist/components/icons/Back.d.ts.map +1 -0
  12. package/dist/components/icons/Back.js +13 -0
  13. package/dist/components/icons/Back.js.map +1 -0
  14. package/dist/components/icons/Checkmark.d.ts.map +1 -1
  15. package/dist/components/icons/Checkmark.js.map +1 -1
  16. package/dist/components/icons/Icon.d.ts +12 -0
  17. package/dist/components/icons/Icon.d.ts.map +1 -0
  18. package/dist/components/icons/Icon.js +40 -0
  19. package/dist/components/icons/Icon.js.map +1 -0
  20. package/dist/components/layout/header/Header.d.ts +13 -0
  21. package/dist/components/layout/header/Header.d.ts.map +1 -0
  22. package/dist/components/layout/header/Header.js +43 -0
  23. package/dist/components/layout/header/Header.js.map +1 -0
  24. package/dist/components/layout/header/Header.module.scss +89 -0
  25. package/dist/components/layout/header/HeaderIconAction.d.ts +17 -0
  26. package/dist/components/layout/header/HeaderIconAction.d.ts.map +1 -0
  27. package/dist/components/layout/header/HeaderIconAction.js +40 -0
  28. package/dist/components/layout/header/HeaderIconAction.js.map +1 -0
  29. package/dist/components/layout/header/HeaderIconAction.module.scss +22 -0
  30. package/dist/components/layout/header/StickyHeader.d.ts +10 -0
  31. package/dist/components/layout/header/StickyHeader.d.ts.map +1 -0
  32. package/dist/components/layout/header/StickyHeader.js +34 -0
  33. package/dist/components/layout/header/StickyHeader.js.map +1 -0
  34. package/dist/components/layout/header/StickyHeader.module.scss +18 -0
  35. package/dist/components/layout/list/Item.d.ts +14 -0
  36. package/dist/components/layout/list/Item.d.ts.map +1 -0
  37. package/dist/components/layout/list/Item.js +50 -0
  38. package/dist/components/layout/list/Item.js.map +1 -0
  39. package/dist/components/layout/list/Item.module.scss +23 -0
  40. package/dist/components/layout/list/List.d.ts +4 -0
  41. package/dist/components/layout/list/List.d.ts.map +1 -0
  42. package/dist/components/layout/list/List.js +13 -0
  43. package/dist/components/layout/list/List.js.map +1 -0
  44. package/dist/components/layout/list/List.module.scss +4 -0
  45. package/dist/components/ui/action/Action.d.ts +17 -0
  46. package/dist/components/ui/action/Action.d.ts.map +1 -0
  47. package/dist/components/ui/action/Action.js +44 -0
  48. package/dist/components/ui/action/Action.js.map +1 -0
  49. package/dist/components/ui/action/Action.module.scss +26 -0
  50. package/dist/components/ui/action/EqualActions.d.ts +7 -0
  51. package/dist/components/ui/action/EqualActions.d.ts.map +1 -0
  52. package/dist/components/ui/action/EqualActions.js +23 -0
  53. package/dist/components/ui/action/EqualActions.js.map +1 -0
  54. package/dist/components/ui/action/EqualActions.module.scss +6 -0
  55. package/dist/components/ui/button/Button.d.ts +8 -0
  56. package/dist/components/ui/button/Button.d.ts.map +1 -0
  57. package/dist/components/ui/button/Button.js +20 -0
  58. package/dist/components/ui/button/Button.js.map +1 -0
  59. package/dist/components/ui/button/Button.module.scss +25 -0
  60. package/dist/components/ui/directionPad/Button.d.ts +7 -0
  61. package/dist/components/ui/directionPad/Button.d.ts.map +1 -0
  62. package/dist/components/ui/directionPad/Button.js +14 -0
  63. package/dist/components/ui/directionPad/Button.js.map +1 -0
  64. package/dist/components/ui/directionPad/Middle.d.ts +8 -0
  65. package/dist/components/ui/directionPad/Middle.d.ts.map +1 -0
  66. package/dist/components/ui/directionPad/Middle.js +13 -0
  67. package/dist/components/ui/directionPad/Middle.js.map +1 -0
  68. package/dist/components/ui/directionPad/Pad.d.ts +12 -0
  69. package/dist/components/ui/directionPad/Pad.d.ts.map +1 -0
  70. package/dist/components/ui/directionPad/Pad.js +23 -0
  71. package/dist/components/ui/directionPad/Pad.js.map +1 -0
  72. package/dist/components/ui/directionPad/Pad.module.scss +45 -0
  73. package/dist/demo/Demo.d.ts.map +1 -1
  74. package/dist/demo/Demo.js +2 -1
  75. package/dist/demo/Demo.js.map +1 -1
  76. package/dist/demo/Main.d.ts.map +1 -1
  77. package/dist/demo/Main.js +36 -8
  78. package/dist/demo/Main.js.map +1 -1
  79. package/dist/demo/Main.module.scss +13 -0
  80. package/dist/demo/Menu.d.ts +6 -1
  81. package/dist/demo/Menu.d.ts.map +1 -1
  82. package/dist/demo/Menu.js +20 -4
  83. package/dist/demo/Menu.js.map +1 -1
  84. package/dist/demo/Menu.module.scss +30 -8
  85. package/dist/demo/components/form/Checkbox.d.ts.map +1 -1
  86. package/dist/demo/components/form/Checkbox.js +3 -2
  87. package/dist/demo/components/form/Checkbox.js.map +1 -1
  88. package/dist/demo/components/form/Toggle.d.ts +4 -0
  89. package/dist/demo/components/form/Toggle.d.ts.map +1 -0
  90. package/dist/demo/components/form/Toggle.js +65 -0
  91. package/dist/demo/components/form/Toggle.js.map +1 -0
  92. package/dist/demo/components/form/Toggle.module.scss +5 -0
  93. package/dist/demo/components/layout/header/Header.d.ts +8 -0
  94. package/dist/demo/components/layout/header/Header.d.ts.map +1 -0
  95. package/dist/demo/components/layout/header/Header.js +60 -0
  96. package/dist/demo/components/layout/header/Header.js.map +1 -0
  97. package/dist/demo/components/layout/header/StickyHeader.d.ts +9 -0
  98. package/dist/demo/components/layout/header/StickyHeader.d.ts.map +1 -0
  99. package/dist/demo/components/layout/header/StickyHeader.js +73 -0
  100. package/dist/demo/components/layout/header/StickyHeader.js.map +1 -0
  101. package/dist/demo/components/layout/list/List.Item.d.ts +4 -0
  102. package/dist/demo/components/layout/list/List.Item.d.ts.map +1 -0
  103. package/dist/demo/components/layout/list/List.Item.js +42 -0
  104. package/dist/demo/components/layout/list/List.Item.js.map +1 -0
  105. package/dist/demo/components/layout/list/List.Item.module.scss +3 -0
  106. package/dist/demo/components/ui/action/Action.d.ts +8 -0
  107. package/dist/demo/components/ui/action/Action.d.ts.map +1 -0
  108. package/dist/demo/components/ui/action/Action.js +83 -0
  109. package/dist/demo/components/ui/action/Action.js.map +1 -0
  110. package/dist/demo/components/ui/action/ActionDemo.module.scss +3 -0
  111. package/dist/demo/components/ui/button/ButtonDemo.d.ts +4 -0
  112. package/dist/demo/components/ui/button/ButtonDemo.d.ts.map +1 -0
  113. package/dist/demo/components/ui/button/ButtonDemo.js +20 -0
  114. package/dist/demo/components/ui/button/ButtonDemo.js.map +1 -0
  115. package/dist/demo/components/ui/directionPad/Pad.d.ts +4 -0
  116. package/dist/demo/components/ui/directionPad/Pad.d.ts.map +1 -0
  117. package/dist/demo/components/ui/directionPad/Pad.js +49 -0
  118. package/dist/demo/components/ui/directionPad/Pad.js.map +1 -0
  119. package/dist/demo/components/ui/icons/Icons.d.ts +4 -0
  120. package/dist/demo/components/ui/icons/Icons.d.ts.map +1 -0
  121. package/dist/demo/components/ui/icons/Icons.js +20 -0
  122. package/dist/demo/components/ui/icons/Icons.js.map +1 -0
  123. package/dist/demo/components/ui/icons/Icons.module.scss +4 -0
  124. package/dist/demo/componentsMap.d.ts +13 -0
  125. package/dist/demo/componentsMap.d.ts.map +1 -0
  126. package/dist/demo/componentsMap.js +112 -0
  127. package/dist/demo/componentsMap.js.map +1 -0
  128. package/dist/demo/utils/makeVariants.d.ts +3 -0
  129. package/dist/demo/utils/makeVariants.d.ts.map +1 -0
  130. package/dist/demo/utils/makeVariants.js +14 -0
  131. package/dist/demo/utils/makeVariants.js.map +1 -0
  132. package/dist/global.scss +34 -13
  133. package/dist/index.d.ts +8 -1
  134. package/dist/index.d.ts.map +1 -1
  135. package/dist/index.js +8 -1
  136. package/dist/index.js.map +1 -1
  137. package/dist/pages/_app.d.ts.map +1 -1
  138. package/dist/pages/_app.js +5 -1
  139. package/dist/pages/_app.js.map +1 -1
  140. package/dist/pages/react-miui.d.ts +4 -0
  141. package/dist/pages/react-miui.d.ts.map +1 -0
  142. package/dist/pages/react-miui.js +11 -0
  143. package/dist/pages/react-miui.js.map +1 -0
  144. package/dist/types.d.ts +4 -0
  145. package/dist/types.d.ts.map +1 -0
  146. package/dist/types.js +3 -0
  147. package/dist/types.js.map +1 -0
  148. package/docs/assets/js/search.js +1 -1
  149. package/docs/assets/js/search.json +1 -1
  150. package/docs/enums/ICON.html +182 -0
  151. package/docs/index.html +38 -5
  152. package/docs/modules/StickyHeader.html +159 -0
  153. package/docs/modules.html +121 -5
  154. package/docs/pages/Tutorials/Test.html +6 -3
  155. package/esm/components/form/Checkbox.module.scss +13 -6
  156. package/esm/components/form/Toggle.d.ts +8 -0
  157. package/esm/components/form/Toggle.d.ts.map +1 -0
  158. package/esm/components/form/Toggle.js +15 -0
  159. package/esm/components/form/Toggle.js.map +1 -0
  160. package/esm/components/form/Toggle.module.scss +46 -0
  161. package/esm/components/icons/Back.d.ts +7 -0
  162. package/esm/components/icons/Back.d.ts.map +1 -0
  163. package/esm/components/icons/Back.js +7 -0
  164. package/esm/components/icons/Back.js.map +1 -0
  165. package/esm/components/icons/Checkmark.d.ts.map +1 -1
  166. package/esm/components/icons/Checkmark.js.map +1 -1
  167. package/esm/components/icons/Icon.d.ts +12 -0
  168. package/esm/components/icons/Icon.d.ts.map +1 -0
  169. package/esm/components/icons/Icon.js +21 -0
  170. package/esm/components/icons/Icon.js.map +1 -0
  171. package/esm/components/layout/header/Header.d.ts +13 -0
  172. package/esm/components/layout/header/Header.d.ts.map +1 -0
  173. package/esm/components/layout/header/Header.js +37 -0
  174. package/esm/components/layout/header/Header.js.map +1 -0
  175. package/esm/components/layout/header/Header.module.scss +89 -0
  176. package/esm/components/layout/header/HeaderIconAction.d.ts +17 -0
  177. package/esm/components/layout/header/HeaderIconAction.d.ts.map +1 -0
  178. package/esm/components/layout/header/HeaderIconAction.js +23 -0
  179. package/esm/components/layout/header/HeaderIconAction.js.map +1 -0
  180. package/esm/components/layout/header/HeaderIconAction.module.scss +22 -0
  181. package/esm/components/layout/header/StickyHeader.d.ts +10 -0
  182. package/esm/components/layout/header/StickyHeader.d.ts.map +1 -0
  183. package/esm/components/layout/header/StickyHeader.js +28 -0
  184. package/esm/components/layout/header/StickyHeader.js.map +1 -0
  185. package/esm/components/layout/header/StickyHeader.module.scss +18 -0
  186. package/esm/components/layout/list/Item.d.ts +14 -0
  187. package/esm/components/layout/list/Item.d.ts.map +1 -0
  188. package/esm/components/layout/list/Item.js +33 -0
  189. package/esm/components/layout/list/Item.js.map +1 -0
  190. package/esm/components/layout/list/Item.module.scss +23 -0
  191. package/esm/components/layout/list/List.d.ts +4 -0
  192. package/esm/components/layout/list/List.d.ts.map +1 -0
  193. package/esm/components/layout/list/List.js +7 -0
  194. package/esm/components/layout/list/List.js.map +1 -0
  195. package/esm/components/layout/list/List.module.scss +4 -0
  196. package/esm/components/ui/action/Action.d.ts +17 -0
  197. package/esm/components/ui/action/Action.d.ts.map +1 -0
  198. package/esm/components/ui/action/Action.js +27 -0
  199. package/esm/components/ui/action/Action.js.map +1 -0
  200. package/esm/components/ui/action/Action.module.scss +26 -0
  201. package/esm/components/ui/action/EqualActions.d.ts +7 -0
  202. package/esm/components/ui/action/EqualActions.d.ts.map +1 -0
  203. package/esm/components/ui/action/EqualActions.js +17 -0
  204. package/esm/components/ui/action/EqualActions.js.map +1 -0
  205. package/esm/components/ui/action/EqualActions.module.scss +6 -0
  206. package/esm/components/ui/button/Button.d.ts +8 -0
  207. package/esm/components/ui/button/Button.d.ts.map +1 -0
  208. package/esm/components/ui/button/Button.js +14 -0
  209. package/esm/components/ui/button/Button.js.map +1 -0
  210. package/esm/components/ui/button/Button.module.scss +25 -0
  211. package/esm/components/ui/directionPad/Button.d.ts +7 -0
  212. package/esm/components/ui/directionPad/Button.d.ts.map +1 -0
  213. package/esm/components/ui/directionPad/Button.js +8 -0
  214. package/esm/components/ui/directionPad/Button.js.map +1 -0
  215. package/esm/components/ui/directionPad/Middle.d.ts +8 -0
  216. package/esm/components/ui/directionPad/Middle.d.ts.map +1 -0
  217. package/esm/components/ui/directionPad/Middle.js +7 -0
  218. package/esm/components/ui/directionPad/Middle.js.map +1 -0
  219. package/esm/components/ui/directionPad/Pad.d.ts +12 -0
  220. package/esm/components/ui/directionPad/Pad.d.ts.map +1 -0
  221. package/esm/components/ui/directionPad/Pad.js +17 -0
  222. package/esm/components/ui/directionPad/Pad.js.map +1 -0
  223. package/esm/components/ui/directionPad/Pad.module.scss +45 -0
  224. package/esm/demo/Demo.d.ts.map +1 -1
  225. package/esm/demo/Demo.js +2 -1
  226. package/esm/demo/Demo.js.map +1 -1
  227. package/esm/demo/Main.d.ts.map +1 -1
  228. package/esm/demo/Main.js +37 -9
  229. package/esm/demo/Main.js.map +1 -1
  230. package/esm/demo/Main.module.scss +13 -0
  231. package/esm/demo/Menu.d.ts +6 -1
  232. package/esm/demo/Menu.d.ts.map +1 -1
  233. package/esm/demo/Menu.js +20 -4
  234. package/esm/demo/Menu.js.map +1 -1
  235. package/esm/demo/Menu.module.scss +30 -8
  236. package/esm/demo/components/form/Checkbox.d.ts.map +1 -1
  237. package/esm/demo/components/form/Checkbox.js +4 -3
  238. package/esm/demo/components/form/Checkbox.js.map +1 -1
  239. package/esm/demo/components/form/Toggle.d.ts +4 -0
  240. package/esm/demo/components/form/Toggle.d.ts.map +1 -0
  241. package/esm/demo/components/form/Toggle.js +40 -0
  242. package/esm/demo/components/form/Toggle.js.map +1 -0
  243. package/esm/demo/components/form/Toggle.module.scss +5 -0
  244. package/esm/demo/components/layout/header/Header.d.ts +8 -0
  245. package/esm/demo/components/layout/header/Header.d.ts.map +1 -0
  246. package/esm/demo/components/layout/header/Header.js +50 -0
  247. package/esm/demo/components/layout/header/Header.js.map +1 -0
  248. package/esm/demo/components/layout/header/StickyHeader.d.ts +9 -0
  249. package/esm/demo/components/layout/header/StickyHeader.d.ts.map +1 -0
  250. package/esm/demo/components/layout/header/StickyHeader.js +62 -0
  251. package/esm/demo/components/layout/header/StickyHeader.js.map +1 -0
  252. package/esm/demo/components/layout/list/List.Item.d.ts +4 -0
  253. package/esm/demo/components/layout/list/List.Item.d.ts.map +1 -0
  254. package/esm/demo/components/layout/list/List.Item.js +17 -0
  255. package/esm/demo/components/layout/list/List.Item.js.map +1 -0
  256. package/esm/demo/components/layout/list/List.Item.module.scss +3 -0
  257. package/esm/demo/components/ui/action/Action.d.ts +8 -0
  258. package/esm/demo/components/ui/action/Action.d.ts.map +1 -0
  259. package/esm/demo/components/ui/action/Action.js +73 -0
  260. package/esm/demo/components/ui/action/Action.js.map +1 -0
  261. package/esm/demo/components/ui/action/ActionDemo.module.scss +3 -0
  262. package/esm/demo/components/ui/button/ButtonDemo.d.ts +4 -0
  263. package/esm/demo/components/ui/button/ButtonDemo.d.ts.map +1 -0
  264. package/esm/demo/components/ui/button/ButtonDemo.js +14 -0
  265. package/esm/demo/components/ui/button/ButtonDemo.js.map +1 -0
  266. package/esm/demo/components/ui/directionPad/Pad.d.ts +4 -0
  267. package/esm/demo/components/ui/directionPad/Pad.d.ts.map +1 -0
  268. package/esm/demo/components/ui/directionPad/Pad.js +27 -0
  269. package/esm/demo/components/ui/directionPad/Pad.js.map +1 -0
  270. package/esm/demo/components/ui/icons/Icons.d.ts +4 -0
  271. package/esm/demo/components/ui/icons/Icons.d.ts.map +1 -0
  272. package/esm/demo/components/ui/icons/Icons.js +14 -0
  273. package/esm/demo/components/ui/icons/Icons.js.map +1 -0
  274. package/esm/demo/components/ui/icons/Icons.module.scss +4 -0
  275. package/esm/demo/componentsMap.d.ts +13 -0
  276. package/esm/demo/componentsMap.d.ts.map +1 -0
  277. package/esm/demo/componentsMap.js +109 -0
  278. package/esm/demo/componentsMap.js.map +1 -0
  279. package/esm/demo/utils/makeVariants.d.ts +3 -0
  280. package/esm/demo/utils/makeVariants.d.ts.map +1 -0
  281. package/esm/demo/utils/makeVariants.js +11 -0
  282. package/esm/demo/utils/makeVariants.js.map +1 -0
  283. package/esm/global.scss +34 -13
  284. package/esm/index.d.ts +8 -1
  285. package/esm/index.d.ts.map +1 -1
  286. package/esm/index.js +8 -1
  287. package/esm/index.js.map +1 -1
  288. package/esm/pages/_app.d.ts.map +1 -1
  289. package/esm/pages/_app.js +5 -1
  290. package/esm/pages/_app.js.map +1 -1
  291. package/esm/pages/react-miui.d.ts +4 -0
  292. package/esm/pages/react-miui.d.ts.map +1 -0
  293. package/esm/pages/react-miui.js +6 -0
  294. package/esm/pages/react-miui.js.map +1 -0
  295. package/esm/types.d.ts +4 -0
  296. package/esm/types.d.ts.map +1 -0
  297. package/esm/types.js +2 -0
  298. package/esm/types.js.map +1 -0
  299. package/package.json +9 -7
  300. package/src/components/form/Checkbox.module.scss +13 -6
  301. package/src/components/form/Toggle.module.scss +46 -0
  302. package/src/components/form/Toggle.tsx +33 -0
  303. package/src/components/icons/Back.tsx +15 -0
  304. package/src/components/icons/Checkmark.tsx +5 -2
  305. package/src/components/icons/Icon.tsx +30 -0
  306. package/src/components/layout/header/Header.module.scss +89 -0
  307. package/src/components/layout/header/Header.tsx +65 -0
  308. package/src/components/layout/header/HeaderIconAction.module.scss +22 -0
  309. package/src/components/layout/header/HeaderIconAction.tsx +49 -0
  310. package/src/components/layout/header/StickyHeader.module.scss +18 -0
  311. package/src/components/layout/header/StickyHeader.tsx +54 -0
  312. package/src/components/layout/list/Item.module.scss +23 -0
  313. package/src/components/layout/list/Item.tsx +50 -0
  314. package/src/components/layout/list/List.module.scss +4 -0
  315. package/src/components/layout/list/List.tsx +11 -0
  316. package/src/components/ui/action/Action.module.scss +26 -0
  317. package/src/components/ui/action/Action.tsx +58 -0
  318. package/src/components/ui/action/EqualActions.module.scss +6 -0
  319. package/src/components/ui/action/EqualActions.tsx +30 -0
  320. package/src/components/ui/button/Button.module.scss +25 -0
  321. package/src/components/ui/button/Button.tsx +25 -0
  322. package/src/components/ui/directionPad/Button.tsx +15 -0
  323. package/src/components/ui/directionPad/Middle.tsx +16 -0
  324. package/src/components/ui/directionPad/Pad.module.scss +45 -0
  325. package/src/components/ui/directionPad/Pad.tsx +35 -0
  326. package/src/demo/Demo.tsx +2 -1
  327. package/src/demo/Main.module.scss +13 -0
  328. package/src/demo/Main.tsx +53 -10
  329. package/src/demo/Menu.module.scss +30 -8
  330. package/src/demo/Menu.tsx +33 -7
  331. package/src/demo/components/form/Checkbox.tsx +7 -3
  332. package/src/demo/components/form/Toggle.module.scss +5 -0
  333. package/src/demo/components/form/Toggle.tsx +59 -0
  334. package/src/demo/components/layout/header/Header.tsx +119 -0
  335. package/src/demo/components/layout/header/StickyHeader.tsx +85 -0
  336. package/src/demo/components/layout/list/List.Item.module.scss +3 -0
  337. package/src/demo/components/layout/list/List.Item.tsx +23 -0
  338. package/src/demo/components/ui/action/Action.tsx +112 -0
  339. package/src/demo/components/ui/action/ActionDemo.module.scss +3 -0
  340. package/src/demo/components/ui/button/ButtonDemo.tsx +18 -0
  341. package/src/demo/components/ui/directionPad/Pad.tsx +40 -0
  342. package/src/demo/components/ui/icons/Icons.module.scss +4 -0
  343. package/src/demo/components/ui/icons/Icons.tsx +25 -0
  344. package/src/demo/componentsMap.ts +144 -0
  345. package/src/demo/utils/makeVariants.ts +13 -0
  346. package/src/global.scss +34 -13
  347. package/src/index.ts +11 -1
  348. package/src/pages/_app.tsx +7 -1
  349. package/src/pages/react-miui.tsx +12 -0
  350. package/src/types.ts +7 -0
  351. package/.postcssrc +0 -9
  352. package/src/pages/index.html +0 -14
@@ -0,0 +1,27 @@
1
+ import React from "react";
2
+ import { Icon } from "../../icons/Icon";
3
+ import styles from "./Action.module.scss";
4
+ const Action = (props) => {
5
+ const { icon, label, href, to, Link, ...restProps } = props;
6
+ let iconElem = icon;
7
+ if (typeof icon === "string") {
8
+ iconElem = React.createElement(Icon, { name: icon });
9
+ }
10
+ const labelElem = label ? React.createElement("div", { className: styles.label }, label) : null;
11
+ const content = (React.createElement(React.Fragment, null,
12
+ React.createElement("div", { className: styles.action }, iconElem),
13
+ labelElem));
14
+ if (to) {
15
+ if (!Link) {
16
+ throw new TypeError("`to` prop given without `Link` component");
17
+ }
18
+ return React.createElement(Link, { href: to, ...restProps },
19
+ React.createElement("a", { className: styles.a }, content));
20
+ }
21
+ if (href) {
22
+ return React.createElement("a", { href: href, className: styles.a, ...restProps }, content);
23
+ }
24
+ return (React.createElement("button", { onClick: props.onClick, className: styles.button }, content));
25
+ };
26
+ export { Action };
27
+ //# sourceMappingURL=Action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Action.js","sourceRoot":"","sources":["../../../../src/components/ui/action/Action.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAgB1C,MAAM,MAAM,GAAqB,CAAC,KAAK,EAAE,EAAE;IACvC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAC;IAE5D,IAAI,QAAQ,GAAc,IAAI,CAAC;IAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC1B,QAAQ,GAAG,oBAAC,IAAI,IAAC,IAAI,EAAE,IAAY,GAAI,CAAC;KAC3C;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,6BAAK,SAAS,EAAE,MAAM,CAAC,KAAK,IAAG,KAAK,CAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7E,MAAM,OAAO,GAAG,CACZ;QACI,6BAAK,SAAS,EAAE,MAAM,CAAC,MAAM,IAAG,QAAQ,CAAO;QAC9C,SAAS,CACX,CACN,CAAC;IAEF,IAAI,EAAE,EAAE;QACJ,IAAI,CAAC,IAAI,EAAE;YACP,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;SACnE;QAED,OAAO,oBAAC,IAAI,IAAC,IAAI,EAAE,EAAE,KAAM,SAAS;YAAE,2BAAG,SAAS,EAAE,MAAM,CAAC,CAAC,IAAG,OAAO,CAAK,CAAO,CAAC;KACtF;IAED,IAAI,IAAI,EAAE;QACN,OAAO,2BAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,KAAM,SAAS,IAAG,OAAO,CAAK,CAAC;KAC3E;IAED,OAAO,CACH,gCAAQ,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,IACnD,OAAO,CACH,CACZ,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,26 @@
1
+ .action {
2
+ height: calc(102px / var(--ratio-dimensions));
3
+ width: calc(102px / var(--ratio-dimensions));
4
+ border-radius: 100px;
5
+ border: calc(1px / var(--ratio-border)) solid var(--button-border);
6
+ background: white;
7
+ padding: 0;
8
+ display: flex;
9
+ align-items: center;
10
+ justify-content: center;
11
+ }
12
+
13
+ .a {
14
+ display: inline-block;
15
+ vertical-align: middle;
16
+ }
17
+
18
+ .button {
19
+ border: none;
20
+ padding: 0;
21
+ background: none;
22
+ display: inline-flex;
23
+ flex-direction: column;
24
+ align-items: center;
25
+ gap: calc(18px / var(--ratio-dimensions));
26
+ }
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ interface Props {
3
+ className?: string;
4
+ }
5
+ declare const EqualActions: React.FC<Props>;
6
+ export { EqualActions };
7
+ //# sourceMappingURL=EqualActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EqualActions.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/action/EqualActions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,KAAK;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiBjC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { Action } from "./Action";
3
+ import styles from "./EqualActions.module.scss";
4
+ import classnames from "classnames";
5
+ const EqualActions = (props) => {
6
+ React.Children.forEach(props.children, (child) => {
7
+ if (!child || typeof child !== "object" || !("type" in child) || child.type !== Action) {
8
+ throw new TypeError("Every child of EqualActions must be an Action component");
9
+ }
10
+ });
11
+ const style = {
12
+ "--actions-count": React.Children.count(props.children),
13
+ };
14
+ return (React.createElement("div", { className: classnames(styles.actions, props.className), style: style }, props.children));
15
+ };
16
+ export { EqualActions };
17
+ //# sourceMappingURL=EqualActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EqualActions.js","sourceRoot":"","sources":["../../../../src/components/ui/action/EqualActions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,UAAU,MAAM,YAAY,CAAC;AAMpC,MAAM,YAAY,GAAoB,CAAC,KAAK,EAAE,EAAE;IAC5C,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAC7C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE;YACpF,MAAM,IAAI,SAAS,CAAC,yDAAyD,CAAC,CAAC;SAClF;IACL,CAAC,CAAC,CAAC;IAGH,MAAM,KAAK,GAAG;QACV,iBAAiB,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;KACnC,CAAC;IAEzB,OAAO,CACH,6BAAK,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,IACpE,KAAK,CAAC,QAAQ,CACb,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ .actions {
2
+ --actions-count: 1;
3
+ display: inline-grid;
4
+ grid-template-columns: repeat(var(--actions-count), 1fr);
5
+ gap: calc(56px / var(--ratio-dimensions));
6
+ }
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ interface Props {
3
+ disabled?: boolean;
4
+ variant?: "inline" | "outline";
5
+ }
6
+ declare const Button: React.FC<Props>;
7
+ export { Button };
8
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,KAAK;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAClC;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAW3B,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import styles from "./Button.module.scss";
3
+ import classnames from "classnames";
4
+ import { makeVariants } from "../../../demo/utils/makeVariants";
5
+ const Button = (props) => {
6
+ const variants = makeVariants(props.variant);
7
+ const cls = classnames(styles.btn, {
8
+ [styles["btn--inline"]]: variants.includes("inline"),
9
+ [styles["btn--outline"]]: variants.includes("outline"),
10
+ });
11
+ return (React.createElement("button", { className: cls, disabled: props.disabled }, props.children));
12
+ };
13
+ export { Button };
14
+ //# sourceMappingURL=Button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAOhE,MAAM,MAAM,GAAoB,CAAC,KAAK,EAAE,EAAE;IACtC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE;QAC/B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpD,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;KACzD,CAAC,CAAC;IAEH,OAAO,CACH,gCAAQ,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAG,KAAK,CAAC,QAAQ,CAAU,CAC9E,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,25 @@
1
+ .btn {
2
+ height: calc(118px / var(--ratio-dimensions));
3
+ background: var(--green1);
4
+ border: calc(1px / var(--ratio-border)) solid var(--green1-darker);
5
+ color: white;
6
+ border-radius: 1000px;
7
+ display: block;
8
+ width: 100%;
9
+ font-size: calc(26px / var(--ratio-font));
10
+ padding: 0 1em;
11
+
12
+ &:disabled {
13
+ opacity: 0.5;
14
+ }
15
+ }
16
+
17
+ .btn--inline {
18
+ width: auto;
19
+ }
20
+
21
+ .btn--outline {
22
+ background: white;
23
+ border-color: var(--button-border);
24
+ color: var(--grey1);
25
+ }
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ interface Props {
3
+ onClick?: () => void;
4
+ }
5
+ declare const PadButton: React.FC<Props>;
6
+ export { PadButton };
7
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,KAAK;IACX,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAI9B,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ import styles from "./Pad.module.scss";
3
+ const PadButton = (props) => {
4
+ return (React.createElement("button", { ...props, className: styles.pad__button },
5
+ React.createElement("span", { className: styles.pad__dot })));
6
+ };
7
+ export { PadButton };
8
+ //# sourceMappingURL=Button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAMvC,MAAM,SAAS,GAAoB,CAAC,KAAK,EAAE,EAAE;IACzC,OAAO,CACH,mCAAY,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW;QAAE,8BAAM,SAAS,EAAE,MAAM,CAAC,QAAQ,GAAI,CAAS,CAClG,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ interface Props {
3
+ label?: string;
4
+ onClick?: () => void;
5
+ }
6
+ declare const PadMiddle: React.FC<Props>;
7
+ export { PadMiddle };
8
+ //# sourceMappingURL=Middle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Middle.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Middle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,KAAK;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAI9B,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ import styles from "./Pad.module.scss";
3
+ const PadMiddle = (props) => {
4
+ return (React.createElement("button", { onClick: props.onClick, className: styles.pad__middle }, props.label));
5
+ };
6
+ export { PadMiddle };
7
+ //# sourceMappingURL=Middle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Middle.js","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Middle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAOvC,MAAM,SAAS,GAAoB,CAAC,KAAK,EAAE,EAAE;IACzC,OAAO,CACH,gCAAQ,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,IAAG,KAAK,CAAC,KAAK,CAAU,CACxF,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from "react";
2
+ interface Props {
3
+ onUpPress?: () => void;
4
+ onDownPress?: () => void;
5
+ onLeftPress?: () => void;
6
+ onRightPress?: () => void;
7
+ onMiddlePress?: () => void;
8
+ middleLabel?: string;
9
+ }
10
+ declare const Pad: React.FC<Props>;
11
+ export { Pad as DirectionPad };
12
+ //# sourceMappingURL=Pad.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pad.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Pad.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,UAAU,KAAK;IACX,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,QAAA,MAAM,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgBxB,CAAC;AAEF,OAAO,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from "react";
2
+ import { PadButton as Button } from "./Button.js";
3
+ import { PadMiddle as Middle } from "./Middle.js";
4
+ import styles from "./Pad.module.scss";
5
+ const Pad = (props) => {
6
+ return (React.createElement("div", { className: styles.pad },
7
+ React.createElement("div", { className: styles.pad__line },
8
+ React.createElement(Button, { onClick: props.onUpPress })),
9
+ React.createElement("div", { className: styles.pad__line },
10
+ React.createElement(Button, { onClick: props.onLeftPress }),
11
+ React.createElement(Middle, { onClick: props.onMiddlePress, label: props.middleLabel }),
12
+ React.createElement(Button, { onClick: props.onRightPress })),
13
+ React.createElement("div", { className: styles.pad__line },
14
+ React.createElement(Button, { onClick: props.onDownPress }))));
15
+ };
16
+ export { Pad as DirectionPad };
17
+ //# sourceMappingURL=Pad.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Pad.js","sourceRoot":"","sources":["../../../../src/components/ui/directionPad/Pad.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,SAAS,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAWvC,MAAM,GAAG,GAAoB,CAAC,KAAK,EAAE,EAAE;IACnC,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG;QACtB,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC5B,oBAAC,MAAM,IAAC,OAAO,EAAE,KAAK,CAAC,SAAS,GAAI,CAClC;QACN,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC5B,oBAAC,MAAM,IAAC,OAAO,EAAE,KAAK,CAAC,WAAW,GAAI;YACtC,oBAAC,MAAM,IAAC,OAAO,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,EAAE,KAAK,CAAC,WAAW,GAAI;YAClE,oBAAC,MAAM,IAAC,OAAO,EAAE,KAAK,CAAC,YAAY,GAAI,CACrC;QACN,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC5B,oBAAC,MAAM,IAAC,OAAO,EAAE,KAAK,CAAC,WAAW,GAAI,CACpC,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC"}
@@ -0,0 +1,45 @@
1
+ .pad {
2
+ display: flex;
3
+ flex-direction: column;
4
+ align-items: center;
5
+ justify-content: center;
6
+ height: 150px;
7
+ border-radius: 666px;
8
+ width: 150px;
9
+ border: 1px solid #aaa;
10
+ background: white;
11
+
12
+ &__line {
13
+ display: flex;
14
+ }
15
+
16
+ &__button {
17
+ height: 50px;
18
+ width: 50px;
19
+ margin: 0;
20
+ border-radius: 666px;
21
+ border: none;
22
+ display: block;
23
+ background: none;
24
+ }
25
+
26
+ &__middle {
27
+ display: block;
28
+ margin: 0;
29
+ height: 50px;
30
+ width: 50px;
31
+ border: 1px solid #999;
32
+ box-sizing: border-box;
33
+ border-radius: 666px;
34
+ background: none;
35
+ }
36
+
37
+ &__dot {
38
+ display: block;
39
+ width: 4px;
40
+ height: 4px;
41
+ border-radius: 666px;
42
+ background: black;
43
+ margin: auto;
44
+ }
45
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"Demo.d.ts","sourceRoot":"","sources":["../../src/demo/Demo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAOjB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Demo.d.ts","sourceRoot":"","sources":["../../src/demo/Demo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAO1B,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAOjB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
package/esm/demo/Demo.js CHANGED
@@ -2,9 +2,10 @@ import React from "react";
2
2
  import styles from "./Demo.module.scss";
3
3
  import { Menu } from "./Menu";
4
4
  import { Main } from "./Main";
5
+ import { componentsMap } from "./componentsMap";
5
6
  const Demo = (props) => {
6
7
  return (React.createElement("div", { className: styles.container },
7
- React.createElement(Menu, null),
8
+ React.createElement(Menu, { list: componentsMap }),
8
9
  React.createElement(Main, null)));
9
10
  };
10
11
  export { Demo };
@@ -1 +1 @@
1
- {"version":3,"file":"Demo.js","sourceRoot":"","sources":["../../src/demo/Demo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,IAAI,GAAa,CAAC,KAAK,EAAE,EAAE;IAC7B,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;QAC5B,oBAAC,IAAI,OAAG;QACR,oBAAC,IAAI,OAAG,CACN,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Demo.js","sourceRoot":"","sources":["../../src/demo/Demo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,MAAM,IAAI,GAAa,CAAC,KAAK,EAAE,EAAE;IAC7B,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;QAC5B,oBAAC,IAAI,IAAC,IAAI,EAAE,aAAa,GAAI;QAC7B,oBAAC,IAAI,OAAG,CACN,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Main.d.ts","sourceRoot":"","sources":["../../src/demo/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAcxC,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EA+BjB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Main.d.ts","sourceRoot":"","sources":["../../src/demo/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AA2CrD,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EA6CjB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
package/esm/demo/Main.js CHANGED
@@ -1,28 +1,56 @@
1
- import React, { useState } from "react";
1
+ import React, { useCallback, useState } from "react";
2
2
  import classnames from "classnames";
3
3
  import styles from "./Main.module.scss";
4
- import { CheckboxDemo } from "./components/form/Checkbox";
5
4
  import { safeUseHash } from "./utils/safeUseHash";
6
- const componentsMap = {
7
- checkbox: CheckboxDemo,
5
+ import { componentsMap } from "./componentsMap";
6
+ const getComponentByHash = (hash) => {
7
+ const parts = hash.split("/");
8
+ let obj = componentsMap, objItem;
9
+ while (parts.length) {
10
+ const first = parts.shift();
11
+ objItem = obj === null || obj === void 0 ? void 0 : obj[first];
12
+ if (!objItem) {
13
+ return null;
14
+ }
15
+ obj = objItem.children;
16
+ }
17
+ if (objItem === null || objItem === void 0 ? void 0 : objItem.Component) {
18
+ return {
19
+ name: objItem.name,
20
+ Component: objItem.Component,
21
+ };
22
+ }
23
+ return null;
8
24
  };
9
25
  const Main = (props) => {
10
26
  const [bg, setBg] = useState("white");
11
27
  const hash = safeUseHash();
12
28
  const hashWithoutHash = hash.substr(1);
13
- const Component = componentsMap[hashWithoutHash];
14
- if (!Component) {
29
+ const info = getComponentByHash(hashWithoutHash);
30
+ const handleTransparentBg = useCallback(() => {
31
+ setBg("transparent");
32
+ }, []);
33
+ const handleWhiteBg = useCallback(() => {
34
+ setBg("white");
35
+ }, []);
36
+ const handleMobileBg = useCallback(() => {
37
+ setBg("mobile");
38
+ }, []);
39
+ if (!info) {
15
40
  return (React.createElement("div", { className: styles.container },
16
41
  React.createElement("h1", { className: styles.header }, "Hi there"),
17
42
  "This is poor man's StoryBook."));
18
43
  }
44
+ const Component = info.Component;
19
45
  const componentCls = classnames(styles.component, {
20
46
  [styles["component--transparent"]]: bg === "transparent",
47
+ [styles["component--mobile"]]: bg === "mobile",
21
48
  });
22
49
  return (React.createElement("div", { className: styles.container },
23
- React.createElement("h1", { className: styles.header }, hash),
24
- React.createElement("button", { onClick: () => { setBg("transparent"); } }, "Transparent"),
25
- React.createElement("button", { onClick: () => { setBg("white"); } }, "White"),
50
+ React.createElement("h1", { className: styles.header }, info.name),
51
+ React.createElement("button", { onClick: handleTransparentBg }, "Transparent"),
52
+ React.createElement("button", { onClick: handleWhiteBg }, "White"),
53
+ React.createElement("button", { onClick: handleMobileBg }, "Mobile"),
26
54
  React.createElement("div", { className: componentCls },
27
55
  React.createElement(Component, null))));
28
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Main.js","sourceRoot":"","sources":["../../src/demo/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAIlD,MAAM,aAAa,GAA2D;IAC1E,QAAQ,EAAE,YAAY;CACzB,CAAC;AAEF,MAAM,IAAI,GAAa,CAAC,KAAK,EAAE,EAAE;IAC7B,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAK,OAAO,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IAEjD,IAAI,CAAC,SAAS,EAAE;QACZ,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC5B,4BAAI,SAAS,EAAE,MAAM,CAAC,MAAM,eAAe;4CAEzC,CACT,CAAC;KACL;IAED,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE;QAC9C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,EAAE,KAAK,aAAa;KAC3D,CAAC,CAAC;IAEH,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;QAC5B,4BAAI,SAAS,EAAE,MAAM,CAAC,MAAM,IAAG,IAAI,CAAM;QACzC,gCAAQ,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,kBAAsB;QACtE,gCAAQ,OAAO,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAgB;QAE1D,6BAAK,SAAS,EAAE,YAAY;YACxB,oBAAC,SAAS,OAAG,CACX,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Main.js","sourceRoot":"","sources":["../../src/demo/Main.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,UAAU,MAAM,YAAY,CAAC;AAKpC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAShD,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAwB,EAAE;IAC9D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,GAAG,GAAuB,aAAa,EACvC,OAA+B,CAAC;IAEpC,OAAO,KAAK,CAAC,MAAM,EAAE;QACjB,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QAC7B,OAAO,GAAG,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAG,KAAK,CAAC,CAAC;QAEvB,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,IAAI,CAAC;SACf;QACD,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;KAC1B;IAED,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,SAAS,EAAE;QACpB,OAAO;YACH,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS,EAAE,OAAO,CAAC,SAAS;SAC/B,CAAC;KACL;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,IAAI,GAAa,CAAC,KAAK,EAAE,EAAE;IAC7B,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAK,OAAO,CAAC,CAAC;IAE1C,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,kBAAkB,CAAC,eAAe,CAAC,CAAC;IAEjD,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,EAAE;QACzC,KAAK,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAI,CAAC,IAAI,EAAE;QACP,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;YAC5B,4BAAI,SAAS,EAAE,MAAM,CAAC,MAAM,eAAe;4CAEzC,CACT,CAAC;KACL;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAEjC,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE;QAC9C,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,EAAE,KAAK,aAAa;QACxD,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,EAAE,EAAE,KAAK,QAAQ;KACjD,CAAC,CAAC;IAEH,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS;QAC5B,4BAAI,SAAS,EAAE,MAAM,CAAC,MAAM,IAAG,IAAI,CAAC,IAAI,CAAM;QAC9C,gCAAQ,OAAO,EAAE,mBAAmB,kBAAsB;QAC1D,gCAAQ,OAAO,EAAE,aAAa,YAAgB;QAC9C,gCAAQ,OAAO,EAAE,cAAc,aAAiB;QAEhD,6BAAK,SAAS,EAAE,YAAY;YACxB,oBAAC,SAAS,OAAG,CACX,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -8,10 +8,23 @@
8
8
  .component {
9
9
  padding: 20px;
10
10
  flex: 1;
11
+ overflow: auto;
11
12
 
12
13
  &--transparent {
13
14
  background-position: 0px 0px, 10px 10px;
14
15
  background-size: 20px 20px;
15
16
  background-image: linear-gradient(45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%, #eee 100%),linear-gradient(45deg, #eee 25%, white 25%, white 75%, #eee 75%, #eee 100%);
16
17
  }
18
+
19
+ &--mobile {
20
+ border-radius: 20px;
21
+ max-width: 400px;
22
+ width: 100%;
23
+ padding: 0;
24
+ margin: 20px 0;
25
+ align-self: center;
26
+ border: 10px solid black;
27
+ border-top-width: 30px;
28
+ position: relative;
29
+ }
17
30
  }
@@ -1,4 +1,9 @@
1
1
  import React from "react";
2
- declare const Menu: React.FC;
2
+ import type { componentsMap } from "./componentsMap";
3
+ interface Props {
4
+ ancestors?: string[];
5
+ list: typeof componentsMap;
6
+ }
7
+ declare const Menu: React.FC<Props>;
3
8
  export { Menu };
4
9
  //# sourceMappingURL=Menu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/demo/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAOjB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/demo/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAErD,UAAU,KAAK;IACX,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,IAAI,EAAE,OAAO,aAAa,CAAC;CAC9B;AAED,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAuBzB,CAAC;AAMF,OAAO,EAAE,IAAI,EAAE,CAAC"}
package/esm/demo/Menu.js CHANGED
@@ -1,9 +1,25 @@
1
1
  import React from "react";
2
2
  import styles from "./Menu.module.scss";
3
- const Menu = () => {
4
- return (React.createElement("div", { className: styles.menu },
5
- React.createElement("a", { href: "#" }, "Main"),
6
- React.createElement("a", { href: "#checkbox" }, "Checkbox")));
3
+ const Menu = (props) => {
4
+ const cmp = Object.entries(props.list).map(([urlHash, component]) => {
5
+ const label = component.name;
6
+ const children = `children` in component && component.children
7
+ ? React.createElement(Menu, { ancestors: [...props.ancestors, urlHash], list: component.children })
8
+ : null;
9
+ return (React.createElement("li", { key: urlHash },
10
+ React.createElement("a", { href: "#" + [...props.ancestors, urlHash].join("/") }, label),
11
+ children));
12
+ });
13
+ const contents = React.createElement("ul", null, cmp);
14
+ if (!props.ancestors.length) {
15
+ cmp.unshift(React.createElement("li", { key: "--main" },
16
+ React.createElement("a", { href: "#" }, "Main")));
17
+ return React.createElement("menu", { className: styles.menu }, contents);
18
+ }
19
+ return contents;
20
+ };
21
+ Menu.defaultProps = {
22
+ ancestors: [],
7
23
  };
8
24
  export { Menu };
9
25
  //# sourceMappingURL=Menu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/demo/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,MAAM,IAAI,GAAa,GAAG,EAAE;IACxB,OAAO,CACH,6BAAK,SAAS,EAAE,MAAM,CAAC,IAAI;QACvB,2BAAG,IAAI,EAAE,GAAG,WAAU;QACtB,2BAAG,IAAI,EAAE,WAAW,eAAc,CAChC,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/demo/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAQxC,MAAM,IAAI,GAAoB,CAAC,KAAK,EAAE,EAAE;IACpC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE;QAChE,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC;QAC7B,MAAM,QAAQ,GAAG,UAAU,IAAI,SAAS,IAAI,SAAS,CAAC,QAAQ;YAC1D,CAAC,CAAC,oBAAC,IAAI,IAAC,SAAS,EAAE,CAAC,GAAG,KAAK,CAAC,SAAU,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAI;YAC/E,CAAC,CAAC,IAAI,CAAC;QAEX,OAAO,CACH,4BAAI,GAAG,EAAE,OAAO;YACZ,2BAAG,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,SAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAG,KAAK,CAAK;YACnE,QAAQ,CACR,CACR,CAAC;IACN,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,gCAAK,GAAG,CAAM,CAAC;IAEhC,IAAI,CAAC,KAAK,CAAC,SAAU,CAAC,MAAM,EAAE;QAC1B,GAAG,CAAC,OAAO,CAAC,4BAAI,GAAG,EAAE,QAAQ;YAAE,2BAAG,IAAI,EAAE,GAAG,WAAU,CAAK,CAAC,CAAC;QAC5D,OAAO,8BAAM,SAAS,EAAE,MAAM,CAAC,IAAI,IAAG,QAAQ,CAAQ,CAAC;KAC1D;IAED,OAAO,QAAQ,CAAC;AACpB,CAAC,CAAC;AAEF,IAAI,CAAC,YAAY,GAAG;IAChB,SAAS,EAAE,EAAE;CAChB,CAAC;AAEF,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1,19 +1,41 @@
1
1
  .menu {
2
- display: block;
3
- padding: 10px;
2
+ margin: 0;
3
+ padding: 0;
4
4
  border-right: 1px solid black;
5
5
 
6
- a {
6
+ ul {
7
+ margin: 0 0 0 15px;
8
+ padding: 0;
9
+ }
10
+
11
+ li {
12
+ padding: 0;
13
+ margin: 0;
14
+ list-style-type: none;
15
+ }
16
+
17
+ > ul {
18
+ margin: 0;
7
19
  display: block;
20
+ }
21
+
22
+ > ul > li > a {
8
23
  padding: 10px;
9
- background: var(--active-bg);
10
- border-radius: 5px;
24
+ text-transform: uppercase;
25
+ font-size: 16px;
26
+ }
27
+
28
+ a {
29
+ padding: 5px 10px;
30
+ display: block;
11
31
  color: black;
12
32
  text-decoration: none;
13
- text-transform: uppercase;
33
+ font-size: 14px;
14
34
 
15
- + a {
16
- margin-top: 10px;
35
+ &:hover {
36
+ background: var(--active-bg);
17
37
  }
38
+
39
+ --focus-bg-set: var(--focus-color);
18
40
  }
19
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/form/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAGxC,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAKzB,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"Checkbox.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/form/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgC,MAAM,OAAO,CAAC;AAIrD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAQzB,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1,8 +1,9 @@
1
- import React, { useState } from "react";
2
- import { Checkbox } from "../../../components/form/Checkbox";
1
+ import React, { useCallback, useState } from "react";
2
+ import { Checkbox } from "../../../index.js";
3
3
  const CheckboxDemo = (props) => {
4
4
  const [v, setV] = useState(false);
5
- return (React.createElement(Checkbox, { name: "a", onChange: () => { setV(!v); }, checked: v }, "I want something something"));
5
+ const handleToggle = useCallback(() => { setV((prevV) => !prevV); }, []);
6
+ return (React.createElement(Checkbox, { name: "a", onChange: handleToggle, checked: v }, "I want something something"));
6
7
  };
7
8
  export { CheckboxDemo };
8
9
  //# sourceMappingURL=Checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../../src/demo/components/form/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,MAAM,YAAY,GAAa,CAAC,KAAK,EAAE,EAAE;IACrC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,CACH,oBAAC,QAAQ,IAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,iCAAuC,CACxG,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"Checkbox.js","sourceRoot":"","sources":["../../../../src/demo/components/form/Checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,YAAY,GAAa,CAAC,KAAK,EAAE,EAAE;IACrC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElC,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEzE,OAAO,CACH,oBAAC,QAAQ,IAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,iCAAuC,CACjG,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import React from "react";
2
+ declare const ToggleDemo: React.VFC;
3
+ export { ToggleDemo };
4
+ //# sourceMappingURL=Toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../../src/demo/components/form/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2C,MAAM,OAAO,CAAC;AAShE,QAAA,MAAM,UAAU,EAAE,KAAK,CAAC,GA+CvB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,40 @@
1
+ import React, { useCallback, useEffect, useState } from "react";
2
+ import { Toggle } from "../../../components/form/Toggle";
3
+ import { List } from "../../../components/layout/list/List";
4
+ import { Item } from "../../../components/layout/list/Item";
5
+ import styles from "./Toggle.module.scss";
6
+ const handleNoop = () => undefined;
7
+ const ToggleDemo = () => {
8
+ const [state, ss] = useState(null);
9
+ useEffect(() => {
10
+ setTimeout(() => { ss(true); }, 1000);
11
+ }, []);
12
+ const handleToggle = useCallback(() => {
13
+ if (state == null) {
14
+ return;
15
+ }
16
+ ss(null);
17
+ setTimeout(() => {
18
+ ss(!state);
19
+ }, 1000);
20
+ }, [state]);
21
+ return (React.createElement(List, null,
22
+ React.createElement(Item, null,
23
+ React.createElement("div", { className: styles.row },
24
+ React.createElement("span", null, "Off"),
25
+ React.createElement(Toggle, { onChange: handleNoop, state: false }))),
26
+ React.createElement(Item, null,
27
+ React.createElement("div", { className: styles.row },
28
+ React.createElement("span", null, "On"),
29
+ React.createElement(Toggle, { onChange: handleNoop, state: true }))),
30
+ React.createElement(Item, null,
31
+ React.createElement("div", { className: styles.row },
32
+ React.createElement("span", null, "Undetermined"),
33
+ React.createElement(Toggle, { onChange: handleNoop, state: null }))),
34
+ React.createElement(Item, null,
35
+ React.createElement("div", { className: styles.row },
36
+ React.createElement("span", null, "Dynamic"),
37
+ React.createElement(Toggle, { onChange: handleToggle, state: state })))));
38
+ };
39
+ export { ToggleDemo };
40
+ //# sourceMappingURL=Toggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../../../../src/demo/components/form/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,sCAAsC,CAAC;AAE5D,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAE1C,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC;AAEnC,MAAM,UAAU,GAAc,GAAG,EAAE;IAC/B,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAiB,IAAI,CAAC,CAAC;IAEnD,SAAS,CAAC,GAAG,EAAE;QAEX,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,KAAK,IAAI,IAAI,EAAE;YACf,OAAO;SACV;QACD,EAAE,CAAC,IAAI,CAAC,CAAC;QACT,UAAU,CAAC,GAAG,EAAE;YACZ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAEf,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAEZ,OAAO,CACH,oBAAC,IAAI;QACD,oBAAC,IAAI;YACD,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG;gBACtB,wCAAgB;gBAChB,oBAAC,MAAM,IAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,GAAI,CAC5C,CACH;QACP,oBAAC,IAAI;YACD,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG;gBACtB,uCAAe;gBACf,oBAAC,MAAM,IAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,GAAI,CAC3C,CACH;QACP,oBAAC,IAAI;YACD,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG;gBACtB,iDAAyB;gBACzB,oBAAC,MAAM,IAAC,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,GAAI,CAC3C,CACH;QACP,oBAAC,IAAI;YACD,6BAAK,SAAS,EAAE,MAAM,CAAC,GAAG;gBACtB,4CAAoB;gBACpB,oBAAC,MAAM,IAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,GAAI,CAC9C,CACH,CACJ,CACV,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC"}