@unoff/ui 1.21.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 (322) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +880 -0
  3. package/dist/assets/Accordion.css +1 -0
  4. package/dist/assets/ActionsItem.css +1 -0
  5. package/dist/assets/ActionsList.css +1 -0
  6. package/dist/assets/Avatar.css +1 -0
  7. package/dist/assets/Bar.css +1 -0
  8. package/dist/assets/Button.css +1 -0
  9. package/dist/assets/Card.css +1 -0
  10. package/dist/assets/Chip.css +1 -0
  11. package/dist/assets/ColorChip.css +1 -0
  12. package/dist/assets/ColorItem.css +1 -0
  13. package/dist/assets/Consent.css +1 -0
  14. package/dist/assets/Dialog.css +1 -0
  15. package/dist/assets/DraggableItem.css +1 -0
  16. package/dist/assets/DraggableWindow.css +1 -0
  17. package/dist/assets/Drawer.css +1 -0
  18. package/dist/assets/Dropdown.css +1 -0
  19. package/dist/assets/Dropzone.css +1 -0
  20. package/dist/assets/FormItem.css +1 -0
  21. package/dist/assets/Icon.css +1 -0
  22. package/dist/assets/IconChip.css +1 -0
  23. package/dist/assets/Input.css +1 -0
  24. package/dist/assets/InputsBar.css +1 -0
  25. package/dist/assets/KeyboardShortcutItem.css +1 -0
  26. package/dist/assets/Knob.css +1 -0
  27. package/dist/assets/Layout.css +1 -0
  28. package/dist/assets/List.css +1 -0
  29. package/dist/assets/MembersList.css +1 -0
  30. package/dist/assets/Menu.css +1 -0
  31. package/dist/assets/Message.css +1 -0
  32. package/dist/assets/MultipleSlider.css +1 -0
  33. package/dist/assets/Notification.css +1 -0
  34. package/dist/assets/Popin.css +1 -0
  35. package/dist/assets/Section.css +1 -0
  36. package/dist/assets/SectionTitle.css +1 -0
  37. package/dist/assets/Select.css +1 -0
  38. package/dist/assets/SemanticMessage.css +1 -0
  39. package/dist/assets/SimpleItem.css +1 -0
  40. package/dist/assets/SimpleSlider.css +1 -0
  41. package/dist/assets/SortableList.css +1 -0
  42. package/dist/assets/Tabs.css +1 -0
  43. package/dist/assets/Text.css +1 -0
  44. package/dist/assets/Thumbnail.css +1 -0
  45. package/dist/assets/Tooltip.css +1 -0
  46. package/dist/assets/styles/icons/icons.css +1 -0
  47. package/dist/assets/styles/icons/styles/figma.css +1 -0
  48. package/dist/assets/styles/icons/styles/framer.css +1 -0
  49. package/dist/assets/styles/icons/styles/penpot.css +1 -0
  50. package/dist/assets/styles/icons/styles/sketch.css +1 -0
  51. package/dist/assets/styles/layouts.css +1 -0
  52. package/dist/assets/styles/texts/styles/figma.css +1 -0
  53. package/dist/assets/styles/texts/styles/framer.css +1 -0
  54. package/dist/assets/styles/texts/styles/penpot.css +1 -0
  55. package/dist/assets/styles/texts/styles/sketch.css +1 -0
  56. package/dist/assets/styles/texts/texts.css +1 -0
  57. package/dist/assets/styles/tokens/figma-types.css +1 -0
  58. package/dist/assets/styles/tokens/framer-types.css +1 -0
  59. package/dist/assets/styles/tokens/modules/figma-colors.css +1 -0
  60. package/dist/assets/styles/tokens/modules/figma-types.css +1 -0
  61. package/dist/assets/styles/tokens/modules/framer-colors.css +1 -0
  62. package/dist/assets/styles/tokens/modules/framer-types.css +1 -0
  63. package/dist/assets/styles/tokens/modules/globals.css +1 -0
  64. package/dist/assets/styles/tokens/modules/penpot-colors.css +1 -0
  65. package/dist/assets/styles/tokens/modules/penpot-types.css +1 -0
  66. package/dist/assets/styles/tokens/modules/sketch-colors.css +1 -0
  67. package/dist/assets/styles/tokens/modules/sketch-types.css +1 -0
  68. package/dist/assets/styles/tokens/penpot-types.css +1 -0
  69. package/dist/assets/styles/tokens/sketch-types.css +1 -0
  70. package/dist/components/actions/accordion/Accordion.d.ts +59 -0
  71. package/dist/components/actions/accordion/Accordion.d.ts.map +1 -0
  72. package/dist/components/actions/accordion/Accordion.js +104 -0
  73. package/dist/components/actions/accordion/Accordion.js.map +1 -0
  74. package/dist/components/actions/button/Button.d.ts +148 -0
  75. package/dist/components/actions/button/Button.d.ts.map +1 -0
  76. package/dist/components/actions/button/Button.figma.d.ts +2 -0
  77. package/dist/components/actions/button/Button.figma.d.ts.map +1 -0
  78. package/dist/components/actions/button/Button.figma.js +43 -0
  79. package/dist/components/actions/button/Button.figma.js.map +1 -0
  80. package/dist/components/actions/button/Button.js +306 -0
  81. package/dist/components/actions/button/Button.js.map +1 -0
  82. package/dist/components/actions/card/Card.d.ts +39 -0
  83. package/dist/components/actions/card/Card.d.ts.map +1 -0
  84. package/dist/components/actions/card/Card.js +99 -0
  85. package/dist/components/actions/card/Card.js.map +1 -0
  86. package/dist/components/actions/knob/Knob.d.ts +93 -0
  87. package/dist/components/actions/knob/Knob.d.ts.map +1 -0
  88. package/dist/components/actions/knob/Knob.js +179 -0
  89. package/dist/components/actions/knob/Knob.js.map +1 -0
  90. package/dist/components/actions/menu/Menu.d.ts +104 -0
  91. package/dist/components/actions/menu/Menu.d.ts.map +1 -0
  92. package/dist/components/actions/menu/Menu.js +200 -0
  93. package/dist/components/actions/menu/Menu.js.map +1 -0
  94. package/dist/components/assets/avatar/Avatar.d.ts +30 -0
  95. package/dist/components/assets/avatar/Avatar.d.ts.map +1 -0
  96. package/dist/components/assets/avatar/Avatar.js +54 -0
  97. package/dist/components/assets/avatar/Avatar.js.map +1 -0
  98. package/dist/components/assets/icon/Icon.d.ts +28 -0
  99. package/dist/components/assets/icon/Icon.d.ts.map +1 -0
  100. package/dist/components/assets/icon/Icon.figma.d.ts +2 -0
  101. package/dist/components/assets/icon/Icon.figma.d.ts.map +1 -0
  102. package/dist/components/assets/icon/Icon.figma.js +27 -0
  103. package/dist/components/assets/icon/Icon.figma.js.map +1 -0
  104. package/dist/components/assets/icon/Icon.js +35 -0
  105. package/dist/components/assets/icon/Icon.js.map +1 -0
  106. package/dist/components/assets/section-title/SectionTitle.d.ts +22 -0
  107. package/dist/components/assets/section-title/SectionTitle.d.ts.map +1 -0
  108. package/dist/components/assets/section-title/SectionTitle.js +42 -0
  109. package/dist/components/assets/section-title/SectionTitle.js.map +1 -0
  110. package/dist/components/assets/text/Text.d.ts +34 -0
  111. package/dist/components/assets/text/Text.d.ts.map +1 -0
  112. package/dist/components/assets/text/Text.js +35 -0
  113. package/dist/components/assets/text/Text.js.map +1 -0
  114. package/dist/components/assets/thumbnail/Thumbnail.d.ts +25 -0
  115. package/dist/components/assets/thumbnail/Thumbnail.d.ts.map +1 -0
  116. package/dist/components/assets/thumbnail/Thumbnail.js +67 -0
  117. package/dist/components/assets/thumbnail/Thumbnail.js.map +1 -0
  118. package/dist/components/dialogs/consent/Consent.d.ts +85 -0
  119. package/dist/components/dialogs/consent/Consent.d.ts.map +1 -0
  120. package/dist/components/dialogs/consent/Consent.js +402 -0
  121. package/dist/components/dialogs/consent/Consent.js.map +1 -0
  122. package/dist/components/dialogs/dialog/Dialog.d.ts +81 -0
  123. package/dist/components/dialogs/dialog/Dialog.d.ts.map +1 -0
  124. package/dist/components/dialogs/dialog/Dialog.js +58 -0
  125. package/dist/components/dialogs/dialog/Dialog.js.map +1 -0
  126. package/dist/components/dialogs/message/Message.d.ts +25 -0
  127. package/dist/components/dialogs/message/Message.d.ts.map +1 -0
  128. package/dist/components/dialogs/message/Message.js +141 -0
  129. package/dist/components/dialogs/message/Message.js.map +1 -0
  130. package/dist/components/dialogs/notification/Notification.d.ts +22 -0
  131. package/dist/components/dialogs/notification/Notification.d.ts.map +1 -0
  132. package/dist/components/dialogs/notification/Notification.js +38 -0
  133. package/dist/components/dialogs/notification/Notification.js.map +1 -0
  134. package/dist/components/dialogs/semantic-message/SemanticMessage.d.ts +40 -0
  135. package/dist/components/dialogs/semantic-message/SemanticMessage.d.ts.map +1 -0
  136. package/dist/components/dialogs/semantic-message/SemanticMessage.js +71 -0
  137. package/dist/components/dialogs/semantic-message/SemanticMessage.js.map +1 -0
  138. package/dist/components/inputs/dropdown/Dropdown.d.ts +123 -0
  139. package/dist/components/inputs/dropdown/Dropdown.d.ts.map +1 -0
  140. package/dist/components/inputs/dropdown/Dropdown.figma.d.ts +2 -0
  141. package/dist/components/inputs/dropdown/Dropdown.figma.d.ts.map +1 -0
  142. package/dist/components/inputs/dropdown/Dropdown.figma.js +28 -0
  143. package/dist/components/inputs/dropdown/Dropdown.figma.js.map +1 -0
  144. package/dist/components/inputs/dropdown/Dropdown.js +307 -0
  145. package/dist/components/inputs/dropdown/Dropdown.js.map +1 -0
  146. package/dist/components/inputs/dropzone/Dropzone.d.ts +78 -0
  147. package/dist/components/inputs/dropzone/Dropzone.d.ts.map +1 -0
  148. package/dist/components/inputs/dropzone/Dropzone.js +222 -0
  149. package/dist/components/inputs/dropzone/Dropzone.js.map +1 -0
  150. package/dist/components/inputs/input/Input.d.ts +203 -0
  151. package/dist/components/inputs/input/Input.d.ts.map +1 -0
  152. package/dist/components/inputs/input/Input.figma.d.ts +2 -0
  153. package/dist/components/inputs/input/Input.figma.d.ts.map +1 -0
  154. package/dist/components/inputs/input/Input.figma.js +35 -0
  155. package/dist/components/inputs/input/Input.figma.js.map +1 -0
  156. package/dist/components/inputs/input/Input.js +713 -0
  157. package/dist/components/inputs/input/Input.js.map +1 -0
  158. package/dist/components/inputs/inputs-bar/InputsBar.d.ts +18 -0
  159. package/dist/components/inputs/inputs-bar/InputsBar.d.ts.map +1 -0
  160. package/dist/components/inputs/inputs-bar/InputsBar.js +15 -0
  161. package/dist/components/inputs/inputs-bar/InputsBar.js.map +1 -0
  162. package/dist/components/inputs/multiple-slider/MultipleSlider.d.ts +125 -0
  163. package/dist/components/inputs/multiple-slider/MultipleSlider.d.ts.map +1 -0
  164. package/dist/components/inputs/multiple-slider/MultipleSlider.js +417 -0
  165. package/dist/components/inputs/multiple-slider/MultipleSlider.js.map +1 -0
  166. package/dist/components/inputs/multiple-slider/actions/addStop.d.ts +8 -0
  167. package/dist/components/inputs/multiple-slider/actions/addStop.d.ts.map +1 -0
  168. package/dist/components/inputs/multiple-slider/actions/deleteStop.d.ts +8 -0
  169. package/dist/components/inputs/multiple-slider/actions/deleteStop.d.ts.map +1 -0
  170. package/dist/components/inputs/multiple-slider/actions/shiftLeftStop.d.ts +5 -0
  171. package/dist/components/inputs/multiple-slider/actions/shiftLeftStop.d.ts.map +1 -0
  172. package/dist/components/inputs/multiple-slider/actions/shiftRightStop.d.ts +5 -0
  173. package/dist/components/inputs/multiple-slider/actions/shiftRightStop.d.ts.map +1 -0
  174. package/dist/components/inputs/select/Select.d.ts +112 -0
  175. package/dist/components/inputs/select/Select.d.ts.map +1 -0
  176. package/dist/components/inputs/select/Select.js +313 -0
  177. package/dist/components/inputs/select/Select.js.map +1 -0
  178. package/dist/components/inputs/simple-slider/SimpleSlider.d.ts +93 -0
  179. package/dist/components/inputs/simple-slider/SimpleSlider.d.ts.map +1 -0
  180. package/dist/components/inputs/simple-slider/SimpleSlider.js +166 -0
  181. package/dist/components/inputs/simple-slider/SimpleSlider.js.map +1 -0
  182. package/dist/components/lists/actions-item/ActionsItem.d.ts +64 -0
  183. package/dist/components/lists/actions-item/ActionsItem.d.ts.map +1 -0
  184. package/dist/components/lists/actions-item/ActionsItem.js +115 -0
  185. package/dist/components/lists/actions-item/ActionsItem.js.map +1 -0
  186. package/dist/components/lists/actions-list/ActionsList.d.ts +79 -0
  187. package/dist/components/lists/actions-list/ActionsList.d.ts.map +1 -0
  188. package/dist/components/lists/actions-list/ActionsList.js +384 -0
  189. package/dist/components/lists/actions-list/ActionsList.js.map +1 -0
  190. package/dist/components/lists/color-item/ColorItem.d.ts +27 -0
  191. package/dist/components/lists/color-item/ColorItem.d.ts.map +1 -0
  192. package/dist/components/lists/color-item/ColorItem.js +70 -0
  193. package/dist/components/lists/color-item/ColorItem.js.map +1 -0
  194. package/dist/components/lists/draggable-item/DraggableItem.d.ts +110 -0
  195. package/dist/components/lists/draggable-item/DraggableItem.d.ts.map +1 -0
  196. package/dist/components/lists/draggable-item/DraggableItem.js +176 -0
  197. package/dist/components/lists/draggable-item/DraggableItem.js.map +1 -0
  198. package/dist/components/lists/keyboard-shortcut-item/KeyboardShortcutItem.d.ts +19 -0
  199. package/dist/components/lists/keyboard-shortcut-item/KeyboardShortcutItem.d.ts.map +1 -0
  200. package/dist/components/lists/keyboard-shortcut-item/KeyboardShortcutItem.js +75 -0
  201. package/dist/components/lists/keyboard-shortcut-item/KeyboardShortcutItem.js.map +1 -0
  202. package/dist/components/lists/members-list/MembersList.d.ts +32 -0
  203. package/dist/components/lists/members-list/MembersList.d.ts.map +1 -0
  204. package/dist/components/lists/members-list/MembersList.js +117 -0
  205. package/dist/components/lists/members-list/MembersList.js.map +1 -0
  206. package/dist/components/lists/sortable-list/SortableList.d.ts +103 -0
  207. package/dist/components/lists/sortable-list/SortableList.d.ts.map +1 -0
  208. package/dist/components/lists/sortable-list/SortableList.js +148 -0
  209. package/dist/components/lists/sortable-list/SortableList.js.map +1 -0
  210. package/dist/components/lists/tabs/Tabs.d.ts +48 -0
  211. package/dist/components/lists/tabs/Tabs.d.ts.map +1 -0
  212. package/dist/components/lists/tabs/Tabs.figma.d.ts +2 -0
  213. package/dist/components/lists/tabs/Tabs.figma.d.ts.map +1 -0
  214. package/dist/components/lists/tabs/Tabs.figma.js +31 -0
  215. package/dist/components/lists/tabs/Tabs.figma.js.map +1 -0
  216. package/dist/components/lists/tabs/Tabs.js +165 -0
  217. package/dist/components/lists/tabs/Tabs.js.map +1 -0
  218. package/dist/components/slots/bar/Bar.d.ts +65 -0
  219. package/dist/components/slots/bar/Bar.d.ts.map +1 -0
  220. package/dist/components/slots/bar/Bar.js +100 -0
  221. package/dist/components/slots/bar/Bar.js.map +1 -0
  222. package/dist/components/slots/draggable-window/DraggableWindow.d.ts +25 -0
  223. package/dist/components/slots/draggable-window/DraggableWindow.d.ts.map +1 -0
  224. package/dist/components/slots/draggable-window/DraggableWindow.js +100 -0
  225. package/dist/components/slots/draggable-window/DraggableWindow.js.map +1 -0
  226. package/dist/components/slots/drawer/Drawer.d.ts +78 -0
  227. package/dist/components/slots/drawer/Drawer.d.ts.map +1 -0
  228. package/dist/components/slots/drawer/Drawer.js +148 -0
  229. package/dist/components/slots/drawer/Drawer.js.map +1 -0
  230. package/dist/components/slots/form-item/FormItem.d.ts +52 -0
  231. package/dist/components/slots/form-item/FormItem.d.ts.map +1 -0
  232. package/dist/components/slots/form-item/FormItem.js +89 -0
  233. package/dist/components/slots/form-item/FormItem.js.map +1 -0
  234. package/dist/components/slots/layout/Layout.d.ts +34 -0
  235. package/dist/components/slots/layout/Layout.d.ts.map +1 -0
  236. package/dist/components/slots/layout/Layout.js +45 -0
  237. package/dist/components/slots/layout/Layout.js.map +1 -0
  238. package/dist/components/slots/list/List.d.ts +49 -0
  239. package/dist/components/slots/list/List.d.ts.map +1 -0
  240. package/dist/components/slots/list/List.js +55 -0
  241. package/dist/components/slots/list/List.js.map +1 -0
  242. package/dist/components/slots/popin/Popin.d.ts +85 -0
  243. package/dist/components/slots/popin/Popin.d.ts.map +1 -0
  244. package/dist/components/slots/popin/Popin.js +182 -0
  245. package/dist/components/slots/popin/Popin.js.map +1 -0
  246. package/dist/components/slots/section/Section.d.ts +32 -0
  247. package/dist/components/slots/section/Section.d.ts.map +1 -0
  248. package/dist/components/slots/section/Section.js +49 -0
  249. package/dist/components/slots/section/Section.js.map +1 -0
  250. package/dist/components/slots/simple-item/SimpleItem.d.ts +45 -0
  251. package/dist/components/slots/simple-item/SimpleItem.d.ts.map +1 -0
  252. package/dist/components/slots/simple-item/SimpleItem.js +100 -0
  253. package/dist/components/slots/simple-item/SimpleItem.js.map +1 -0
  254. package/dist/components/tags/chip/Chip.d.ts +43 -0
  255. package/dist/components/tags/chip/Chip.d.ts.map +1 -0
  256. package/dist/components/tags/chip/Chip.figma.d.ts +2 -0
  257. package/dist/components/tags/chip/Chip.figma.d.ts.map +1 -0
  258. package/dist/components/tags/chip/Chip.figma.js +18 -0
  259. package/dist/components/tags/chip/Chip.figma.js.map +1 -0
  260. package/dist/components/tags/chip/Chip.js +88 -0
  261. package/dist/components/tags/chip/Chip.js.map +1 -0
  262. package/dist/components/tags/color-chip/ColorChip.d.ts +36 -0
  263. package/dist/components/tags/color-chip/ColorChip.d.ts.map +1 -0
  264. package/dist/components/tags/color-chip/ColorChip.js +39 -0
  265. package/dist/components/tags/color-chip/ColorChip.js.map +1 -0
  266. package/dist/components/tags/icon-chip/IconChip.d.ts +42 -0
  267. package/dist/components/tags/icon-chip/IconChip.d.ts.map +1 -0
  268. package/dist/components/tags/icon-chip/IconChip.js +54 -0
  269. package/dist/components/tags/icon-chip/IconChip.js.map +1 -0
  270. package/dist/components/tags/tooltip/Tooltip.d.ts +25 -0
  271. package/dist/components/tags/tooltip/Tooltip.d.ts.map +1 -0
  272. package/dist/components/tags/tooltip/Tooltip.js +72 -0
  273. package/dist/components/tags/tooltip/Tooltip.js.map +1 -0
  274. package/dist/do-classnames-DSDFCvzy.js +5 -0
  275. package/dist/do-classnames-DSDFCvzy.js.map +1 -0
  276. package/dist/do-map-2nhWP1KI.js +8 -0
  277. package/dist/do-map-2nhWP1KI.js.map +1 -0
  278. package/dist/index.d.ts +61 -0
  279. package/dist/index.d.ts.map +1 -0
  280. package/dist/index.js +113 -0
  281. package/dist/index.js.map +1 -0
  282. package/dist/index_react-CmuCVQet.js +13799 -0
  283. package/dist/index_react-CmuCVQet.js.map +1 -0
  284. package/dist/styles/icons/icons.module.js +115 -0
  285. package/dist/styles/icons/icons.module.js.map +1 -0
  286. package/dist/styles/layouts.module.js +37 -0
  287. package/dist/styles/layouts.module.js.map +1 -0
  288. package/dist/styles/texts/texts.module.js +23 -0
  289. package/dist/styles/texts/texts.module.js.map +1 -0
  290. package/dist/styles/tokens/modules/figma-colors.module.js +9 -0
  291. package/dist/styles/tokens/modules/figma-colors.module.js.map +1 -0
  292. package/dist/styles/tokens/modules/figma-types.module.js +9 -0
  293. package/dist/styles/tokens/modules/figma-types.module.js.map +1 -0
  294. package/dist/styles/tokens/modules/framer-colors.module.js +9 -0
  295. package/dist/styles/tokens/modules/framer-colors.module.js.map +1 -0
  296. package/dist/styles/tokens/modules/framer-types.module.js +9 -0
  297. package/dist/styles/tokens/modules/framer-types.module.js.map +1 -0
  298. package/dist/styles/tokens/modules/globals.module.js +9 -0
  299. package/dist/styles/tokens/modules/globals.module.js.map +1 -0
  300. package/dist/styles/tokens/modules/penpot-colors.module.js +9 -0
  301. package/dist/styles/tokens/modules/penpot-colors.module.js.map +1 -0
  302. package/dist/styles/tokens/modules/penpot-types.module.js +9 -0
  303. package/dist/styles/tokens/modules/penpot-types.module.js.map +1 -0
  304. package/dist/styles/tokens/modules/sketch-colors.module.js +9 -0
  305. package/dist/styles/tokens/modules/sketch-colors.module.js.map +1 -0
  306. package/dist/styles/tokens/modules/sketch-types.module.js +9 -0
  307. package/dist/styles/tokens/modules/sketch-types.module.js.map +1 -0
  308. package/dist/tests/setup.d.ts +2 -0
  309. package/dist/tests/setup.d.ts.map +1 -0
  310. package/dist/types/consent.types.d.ts +10 -0
  311. package/dist/types/consent.types.d.ts.map +1 -0
  312. package/dist/types/consent.types.js +2 -0
  313. package/dist/types/consent.types.js.map +1 -0
  314. package/dist/types/icon.types.d.ts +2 -0
  315. package/dist/types/icon.types.d.ts.map +1 -0
  316. package/dist/types/icon.types.js +2 -0
  317. package/dist/types/icon.types.js.map +1 -0
  318. package/dist/types/list.types.d.ts +14 -0
  319. package/dist/types/list.types.d.ts.map +1 -0
  320. package/dist/types/list.types.js +2 -0
  321. package/dist/types/list.types.js.map +1 -0
  322. package/package.json +108 -0
@@ -0,0 +1,182 @@
1
+ import '../../../assets/Popin.css';
2
+ import { jsxs as t, jsx as i } from "react/jsx-runtime";
3
+ import o from "../../../styles/texts/texts.module.js";
4
+ import A from "../../tags/chip/Chip.js";
5
+ import N from "../../inputs/select/Select.js";
6
+ import { Icon as _ } from "../../assets/icon/Icon.js";
7
+ import s from "../../actions/button/Button.js";
8
+ import { t as l } from "../../../do-classnames-DSDFCvzy.js";
9
+ const O = (m) => {
10
+ const {
11
+ id: a,
12
+ type: d = "POPIN",
13
+ title: p,
14
+ actions: e,
15
+ select: r,
16
+ indicator: c,
17
+ tag: u,
18
+ isLoading: n = !1,
19
+ isMessage: y = !1,
20
+ children: v,
21
+ onClose: f
22
+ } = m;
23
+ return /* @__PURE__ */ t(
24
+ "div",
25
+ {
26
+ id: a,
27
+ className: l(["popin", d === "PANEL" && "popin--panel"]),
28
+ role: d === "PANEL" ? "complementary" : "dialog",
29
+ "aria-modal": "true",
30
+ "aria-labelledby": a ? `${a}-title` : void 0,
31
+ "aria-label": a ? void 0 : p,
32
+ children: [
33
+ /* @__PURE__ */ t(
34
+ "div",
35
+ {
36
+ className: "popin__header",
37
+ role: "presentation",
38
+ children: [
39
+ /* @__PURE__ */ t(
40
+ "div",
41
+ {
42
+ className: "popin__title",
43
+ role: "presentation",
44
+ children: [
45
+ /* @__PURE__ */ i(
46
+ "span",
47
+ {
48
+ id: `${a}-title`,
49
+ className: l([
50
+ o.type,
51
+ o["type--large"],
52
+ o["type--bold"],
53
+ o["type--truncated"]
54
+ ]),
55
+ children: p
56
+ }
57
+ ),
58
+ u != null && /* @__PURE__ */ i(A, { children: u })
59
+ ]
60
+ }
61
+ ),
62
+ /* @__PURE__ */ i(
63
+ s,
64
+ {
65
+ type: "icon",
66
+ icon: "close",
67
+ action: f
68
+ }
69
+ )
70
+ ]
71
+ }
72
+ ),
73
+ /* @__PURE__ */ i(
74
+ "div",
75
+ {
76
+ className: l([
77
+ "popin__content",
78
+ n && "popin__content--loading",
79
+ y && "popin__content--message"
80
+ ]),
81
+ role: "region",
82
+ "aria-busy": n,
83
+ children: n ? /* @__PURE__ */ i(
84
+ _,
85
+ {
86
+ type: "PICTO",
87
+ iconName: "spinner",
88
+ role: "status"
89
+ }
90
+ ) : v
91
+ }
92
+ ),
93
+ (e !== void 0 || c !== void 0) && /* @__PURE__ */ t(
94
+ "div",
95
+ {
96
+ className: "popin__footer",
97
+ role: "toolbar",
98
+ children: [
99
+ /* @__PURE__ */ t(
100
+ "div",
101
+ {
102
+ className: "popin__extra",
103
+ role: "group",
104
+ children: [
105
+ c !== void 0 && /* @__PURE__ */ i(
106
+ "div",
107
+ {
108
+ className: o.label,
109
+ role: "status",
110
+ children: c
111
+ }
112
+ ),
113
+ r !== void 0 && /* @__PURE__ */ i(
114
+ N,
115
+ {
116
+ id: "tertiary-action",
117
+ type: "CHECK_BOX",
118
+ name: "abstract-action-name",
119
+ label: r.label,
120
+ isChecked: r.state,
121
+ action: r.action
122
+ }
123
+ )
124
+ ]
125
+ }
126
+ ),
127
+ /* @__PURE__ */ t(
128
+ "div",
129
+ {
130
+ className: "popin__actions",
131
+ role: "group",
132
+ children: [
133
+ e?.secondary !== void 0 && /* @__PURE__ */ i(
134
+ s,
135
+ {
136
+ type: "secondary",
137
+ label: e.secondary.label,
138
+ isLoading: e.secondary.state === "LOADING",
139
+ isDisabled: e.secondary.state === "DISABLED",
140
+ feature: e.secondary.feature === void 0 ? "SECONDARY_ACTION" : e.secondary.feature,
141
+ isAutofocus: e.secondary.isAutofocus === void 0 ? !1 : e.secondary.isAutofocus,
142
+ action: e.secondary.action
143
+ }
144
+ ),
145
+ e?.destructive !== void 0 && /* @__PURE__ */ i(
146
+ s,
147
+ {
148
+ type: "destructive",
149
+ label: e.destructive.label,
150
+ isLoading: e.destructive.state === "LOADING",
151
+ isDisabled: e.destructive.state === "DISABLED",
152
+ feature: e.destructive.feature === void 0 ? "DESTRUCTIVE_ACTION" : e.destructive.feature,
153
+ isAutofocus: e.destructive.isAutofocus === void 0 ? !1 : e.destructive.isAutofocus,
154
+ action: e.destructive.action
155
+ }
156
+ ),
157
+ e?.primary !== void 0 && /* @__PURE__ */ i(
158
+ s,
159
+ {
160
+ type: "primary",
161
+ label: e.primary.label,
162
+ isLoading: e.primary.state === "LOADING",
163
+ isDisabled: e.primary.state === "DISABLED",
164
+ feature: e.primary.feature === void 0 ? "PRIMARY_ACTION" : e.primary.feature,
165
+ isAutofocus: e.primary.isAutofocus === void 0 ? !1 : e.primary.isAutofocus,
166
+ action: e.primary.action
167
+ }
168
+ )
169
+ ]
170
+ }
171
+ )
172
+ ]
173
+ }
174
+ )
175
+ ]
176
+ }
177
+ );
178
+ };
179
+ export {
180
+ O as default
181
+ };
182
+ //# sourceMappingURL=Popin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popin.js","sources":["../../../../src/components/slots/popin/Popin.tsx"],"sourcesContent":["import texts from '@styles/texts/texts.module.scss'\nimport Chip from '@components/tags/chip/Chip'\nimport Select from '@components/inputs/select/Select'\nimport Icon from '@components/assets/icon/Icon'\nimport Button from '@components/actions/button/Button'\nimport { doClassnames } from '@a_ng_d/figmug-utils'\nimport './popin.scss'\n\nexport interface PopInProps {\n /**\n * HTML id attribute\n */\n id?: string\n /**\n * Type of popin layout\n * @default 'POPIN'\n */\n type?: 'POPIN' | 'PANEL'\n /**\n * Title text\n */\n title: string\n /**\n * Optional tag to display next to the title\n */\n tag?: string\n /**\n * Configuration for action buttons\n */\n actions?: {\n /** Primary action button */\n primary?: {\n label: string\n state?: 'DEFAULT' | 'DISABLED' | 'LOADING'\n isAutofocus?: boolean\n feature?: string\n action: React.MouseEventHandler & React.KeyboardEventHandler\n }\n /** Destructive action button */\n destructive?: {\n label: string\n state?: 'DEFAULT' | 'DISABLED' | 'LOADING'\n feature?: string\n isAutofocus?: boolean\n action: React.ReactEventHandler | (() => void)\n }\n /** Secondary action button */\n secondary?: {\n label: string\n state?: 'DEFAULT' | 'DISABLED' | 'LOADING'\n feature?: string\n isAutofocus?: boolean\n action: React.MouseEventHandler & React.KeyboardEventHandler\n }\n }\n /**\n * Select/checkbox configuration\n */\n select?: {\n /** Label text */\n label: string\n /** Current state */\n state: boolean\n /** Change handler */\n action: React.ChangeEventHandler<HTMLInputElement> | undefined\n }\n /**\n * Optional indicator text\n */\n indicator?: string\n /**\n * Whether the popin is in loading state\n * @default false\n */\n isLoading?: boolean\n /**\n * Whether to use message layout\n * @default false\n */\n isMessage?: boolean\n /**\n * Popin content\n */\n children?: React.ReactNode\n /**\n * Close handler\n */\n onClose: React.MouseEventHandler & React.KeyboardEventHandler\n}\n\nconst PopIn = (props: PopInProps) => {\n const {\n id,\n type = 'POPIN',\n title,\n actions,\n select,\n indicator,\n tag,\n isLoading = false,\n isMessage = false,\n children,\n onClose,\n } = props\n\n return (\n <div\n id={id}\n className={doClassnames(['popin', type === 'PANEL' && 'popin--panel'])}\n role={type === 'PANEL' ? 'complementary' : 'dialog'}\n aria-modal=\"true\"\n aria-labelledby={id ? `${id}-title` : undefined}\n aria-label={!id ? title : undefined}\n >\n <div\n className=\"popin__header\"\n role=\"presentation\"\n >\n <div\n className=\"popin__title\"\n role=\"presentation\"\n >\n <span\n id={`${id}-title`}\n className={doClassnames([\n texts.type,\n texts['type--large'],\n texts['type--bold'],\n texts['type--truncated'],\n ])}\n >\n {title}\n </span>\n {tag != undefined && <Chip>{tag}</Chip>}\n </div>\n <Button\n type=\"icon\"\n icon=\"close\"\n action={onClose}\n />\n </div>\n <div\n className={doClassnames([\n 'popin__content',\n isLoading && 'popin__content--loading',\n isMessage && 'popin__content--message',\n ])}\n role=\"region\"\n aria-busy={isLoading}\n >\n {isLoading ? (\n <Icon\n type=\"PICTO\"\n iconName=\"spinner\"\n role=\"status\"\n />\n ) : (\n children\n )}\n </div>\n {(actions !== undefined || indicator !== undefined) && (\n <div\n className=\"popin__footer\"\n role=\"toolbar\"\n >\n <div\n className=\"popin__extra\"\n role=\"group\"\n >\n {indicator !== undefined && (\n <div\n className={texts.label}\n role=\"status\"\n >\n {indicator}\n </div>\n )}\n {select !== undefined && (\n <Select\n id=\"tertiary-action\"\n type=\"CHECK_BOX\"\n name=\"abstract-action-name\"\n label={select.label}\n isChecked={select.state}\n action={select.action}\n />\n )}\n </div>\n <div\n className=\"popin__actions\"\n role=\"group\"\n >\n {actions?.secondary !== undefined && (\n <Button\n type=\"secondary\"\n label={actions.secondary.label}\n isLoading={actions.secondary.state === 'LOADING'}\n isDisabled={actions.secondary.state === 'DISABLED'}\n feature={\n actions.secondary.feature === undefined\n ? 'SECONDARY_ACTION'\n : actions.secondary.feature\n }\n isAutofocus={\n actions.secondary.isAutofocus === undefined\n ? false\n : actions.secondary.isAutofocus\n }\n action={actions.secondary.action}\n />\n )}\n {actions?.destructive !== undefined && (\n <Button\n type=\"destructive\"\n label={actions.destructive.label}\n isLoading={actions.destructive.state === 'LOADING'}\n isDisabled={actions.destructive.state === 'DISABLED'}\n feature={\n actions.destructive.feature === undefined\n ? 'DESTRUCTIVE_ACTION'\n : actions.destructive.feature\n }\n isAutofocus={\n actions.destructive.isAutofocus === undefined\n ? false\n : actions.destructive.isAutofocus\n }\n action={actions.destructive.action}\n />\n )}\n {actions?.primary !== undefined && (\n <Button\n type=\"primary\"\n label={actions.primary.label}\n isLoading={actions.primary.state === 'LOADING'}\n isDisabled={actions.primary.state === 'DISABLED'}\n feature={\n actions.primary.feature === undefined\n ? 'PRIMARY_ACTION'\n : actions.primary.feature\n }\n isAutofocus={\n actions.primary.isAutofocus === undefined\n ? false\n : actions.primary.isAutofocus\n }\n action={actions.primary.action}\n />\n )}\n </div>\n </div>\n )}\n </div>\n )\n}\n\nexport default PopIn\n"],"names":["PopIn","props","id","type","title","actions","select","indicator","tag","isLoading","isMessage","children","onClose","jsxs","doClassnames","jsx","texts","Chip","Button","Icon","Select"],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { default as React } from 'react';
2
+
3
+ export interface SectionProps {
4
+ /**
5
+ * HTML id attribute
6
+ */
7
+ id?: string;
8
+ /**
9
+ * Title element for the section
10
+ */
11
+ title?: React.ReactNode;
12
+ /**
13
+ * Array of body content configurations
14
+ */
15
+ body: Array<{
16
+ /** Content node */
17
+ node?: React.ReactNode;
18
+ /** Spacing modifier */
19
+ spacingModifier?: 'LARGE' | 'TIGHT' | 'NONE';
20
+ }>;
21
+ /**
22
+ * Array of border positions
23
+ */
24
+ border?: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'>;
25
+ }
26
+ export default class Section extends React.Component<SectionProps> {
27
+ setBorder: (orientation: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'> | undefined) => {
28
+ [key: string]: React.CSSProperties;
29
+ };
30
+ render(): import("react/jsx-runtime").JSX.Element;
31
+ }
32
+ //# sourceMappingURL=Section.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.d.ts","sourceRoot":"","sources":["../../../../src/components/slots/section/Section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,gBAAgB,CAAA;AAEvB,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB;;OAEG;IACH,IAAI,EAAE,KAAK,CAAC;QACV,mBAAmB;QACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACtB,uBAAuB;QACvB,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;KAC7C,CAAC,CAAA;IACF;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAA;CACpD;AAED,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC;IAChE,SAAS,gBACM,MAAM,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC,GAAG,SAAS;;MAapE;IAED,MAAM;CAiCP"}
@@ -0,0 +1,49 @@
1
+ import '../../../assets/Section.css';
2
+ import { jsxs as n, jsx as d } from "react/jsx-runtime";
3
+ import c from "react";
4
+ import { t as l } from "../../../do-classnames-DSDFCvzy.js";
5
+ class g extends c.Component {
6
+ setBorder = (s) => {
7
+ const r = "var(--section-border)", o = {};
8
+ return s && s.forEach((e) => {
9
+ e === "TOP" && (o.borderTop = r), e === "LEFT" && (o.borderLeft = r), e === "BOTTOM" && (o.borderBottom = r), e === "RIGHT" && (o.borderRight = r);
10
+ }), o;
11
+ };
12
+ render() {
13
+ const { id: s, title: r, border: o, body: e } = this.props;
14
+ return /* @__PURE__ */ n(
15
+ "div",
16
+ {
17
+ id: s,
18
+ className: "section",
19
+ style: {
20
+ ...this.setBorder(o)
21
+ },
22
+ role: "region",
23
+ children: [
24
+ r && /* @__PURE__ */ d("div", { role: "presentation", children: r }),
25
+ e.map(
26
+ (i, t) => (i.node !== void 0 || i.node !== null) && /* @__PURE__ */ d(
27
+ "div",
28
+ {
29
+ className: l([
30
+ "section__child",
31
+ i.spacingModifier === "LARGE" && "section__child--large",
32
+ i.spacingModifier === "TIGHT" && "section__child--tight",
33
+ i.spacingModifier === "NONE" && "section__child--none"
34
+ ]),
35
+ role: "group",
36
+ children: i.node
37
+ },
38
+ t
39
+ )
40
+ )
41
+ ]
42
+ }
43
+ );
44
+ }
45
+ }
46
+ export {
47
+ g as default
48
+ };
49
+ //# sourceMappingURL=Section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Section.js","sources":["../../../../src/components/slots/section/Section.tsx"],"sourcesContent":["import React from 'react'\nimport { doClassnames } from '@a_ng_d/figmug-utils'\nimport './section.scss'\n\nexport interface SectionProps {\n /**\n * HTML id attribute\n */\n id?: string\n /**\n * Title element for the section\n */\n title?: React.ReactNode\n /**\n * Array of body content configurations\n */\n body: Array<{\n /** Content node */\n node?: React.ReactNode\n /** Spacing modifier */\n spacingModifier?: 'LARGE' | 'TIGHT' | 'NONE'\n }>\n /**\n * Array of border positions\n */\n border?: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'>\n}\n\nexport default class Section extends React.Component<SectionProps> {\n setBorder = (\n orientation: Array<'TOP' | 'LEFT' | 'BOTTOM' | 'RIGHT'> | undefined\n ) => {\n const property = 'var(--section-border)' as React.CSSProperties\n const styles: { [key: string]: React.CSSProperties } = {}\n\n if (!orientation) return styles\n orientation.forEach((entry) => {\n if (entry === 'TOP') styles.borderTop = property\n if (entry === 'LEFT') styles.borderLeft = property\n if (entry === 'BOTTOM') styles.borderBottom = property\n if (entry === 'RIGHT') styles.borderRight = property\n })\n return styles\n }\n\n render() {\n const { id, title, border, body } = this.props\n\n return (\n <div\n id={id}\n className=\"section\"\n style={{\n ...this.setBorder(border),\n }}\n role=\"region\"\n >\n {title && <div role=\"presentation\">{title}</div>}\n {body.map(\n (item, index) =>\n (item.node !== undefined || item.node !== null) && (\n <div\n key={index}\n className={doClassnames([\n 'section__child',\n item.spacingModifier === 'LARGE' && 'section__child--large',\n item.spacingModifier === 'TIGHT' && 'section__child--tight',\n item.spacingModifier === 'NONE' && 'section__child--none',\n ])}\n role=\"group\"\n >\n {item.node}\n </div>\n )\n )}\n </div>\n )\n }\n}\n"],"names":["Section","React","orientation","property","styles","entry","id","title","border","body","jsxs","jsx","item","index","doClassnames"],"mappings":";;;AA4BA,MAAqBA,UAAgBC,EAAM,UAAwB;AAAA,EACjE,YAAY,CACVC,MACG;AACH,UAAMC,IAAW,yBACXC,IAAiD,CAAA;AAEvD,WAAKF,KACLA,EAAY,QAAQ,CAACG,MAAU;AAC7B,MAAIA,MAAU,UAAOD,EAAO,YAAYD,IACpCE,MAAU,WAAQD,EAAO,aAAaD,IACtCE,MAAU,aAAUD,EAAO,eAAeD,IAC1CE,MAAU,YAASD,EAAO,cAAcD;AAAA,IAC9C,CAAC,GACMC;AAAA,EACT;AAAA,EAEA,SAAS;AACP,UAAM,EAAE,IAAAE,GAAI,OAAAC,GAAO,QAAAC,GAAQ,MAAAC,EAAA,IAAS,KAAK;AAEzC,WACE,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,IAAAJ;AAAA,QACA,WAAU;AAAA,QACV,OAAO;AAAA,UACL,GAAG,KAAK,UAAUE,CAAM;AAAA,QAAA;AAAA,QAE1B,MAAK;AAAA,QAEJ,UAAA;AAAA,UAAAD,KAAS,gBAAAI,EAAC,OAAA,EAAI,MAAK,gBAAgB,UAAAJ,GAAM;AAAA,UACzCE,EAAK;AAAA,YACJ,CAACG,GAAMC,OACJD,EAAK,SAAS,UAAaA,EAAK,SAAS,SACxC,gBAAAD;AAAA,cAAC;AAAA,cAAA;AAAA,gBAEC,WAAWG,EAAa;AAAA,kBACtB;AAAA,kBACAF,EAAK,oBAAoB,WAAW;AAAA,kBACpCA,EAAK,oBAAoB,WAAW;AAAA,kBACpCA,EAAK,oBAAoB,UAAU;AAAA,gBAAA,CACpC;AAAA,gBACD,MAAK;AAAA,gBAEJ,UAAAA,EAAK;AAAA,cAAA;AAAA,cATDC;AAAA,YAAA;AAAA,UAUP;AAAA,QAEN;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
@@ -0,0 +1,45 @@
1
+ import { default as React } from 'react';
2
+
3
+ export interface SimpleItemProps {
4
+ /**
5
+ * HTML id attribute
6
+ */
7
+ id?: string;
8
+ /**
9
+ * Content for the left section
10
+ */
11
+ leftPartSlot: React.ReactNode;
12
+ /**
13
+ * Content for the right section
14
+ */
15
+ rightPartSlot?: React.ReactNode;
16
+ /**
17
+ * Whether to render as a list item
18
+ * @default true
19
+ */
20
+ isListItem?: boolean;
21
+ /**
22
+ * Whether the item is clickable
23
+ * @default false
24
+ */
25
+ isInteractive?: boolean;
26
+ /**
27
+ * Whether to use transparent background
28
+ * @default false
29
+ */
30
+ isTransparent?: boolean;
31
+ /**
32
+ * Vertical alignment mode
33
+ * @default 'DEFAULT'
34
+ */
35
+ alignment?: 'DEFAULT' | 'CENTER' | 'BASELINE';
36
+ /**
37
+ * Click handler
38
+ */
39
+ action?: React.MouseEventHandler<HTMLLIElement | HTMLElement> & React.KeyboardEventHandler<HTMLLIElement | HTMLElement>;
40
+ }
41
+ export default class SimpleItem extends React.Component<SimpleItemProps> {
42
+ static defaultProps: Partial<SimpleItemProps>;
43
+ render(): import("react/jsx-runtime").JSX.Element;
44
+ }
45
+ //# sourceMappingURL=SimpleItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleItem.d.ts","sourceRoot":"","sources":["../../../../src/components/slots/simple-item/SimpleItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,oBAAoB,CAAA;AAE3B,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IACX;;OAEG;IACH,YAAY,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B;;OAEG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC/B;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAA;IAC7C;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,aAAa,GAAG,WAAW,CAAC,GAC3D,KAAK,CAAC,oBAAoB,CAAC,aAAa,GAAG,WAAW,CAAC,CAAA;CAC1D;AAED,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK,CAAC,SAAS,CAAC,eAAe,CAAC;IACtE,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,eAAe,CAAC,CAK5C;IAED,MAAM;CAgFP"}
@@ -0,0 +1,100 @@
1
+ import '../../../assets/SimpleItem.css';
2
+ import { jsxs as m, jsx as r } from "react/jsx-runtime";
3
+ import c from "react";
4
+ import { t as o } from "../../../do-classnames-DSDFCvzy.js";
5
+ class h extends c.Component {
6
+ static defaultProps = {
7
+ isListItem: !0,
8
+ isInteractive: !1,
9
+ isTransparent: !1,
10
+ alignment: "DEFAULT"
11
+ };
12
+ render() {
13
+ const {
14
+ id: n,
15
+ leftPartSlot: a,
16
+ rightPartSlot: l,
17
+ isListItem: p,
18
+ isInteractive: e,
19
+ isTransparent: d,
20
+ alignment: i,
21
+ action: s
22
+ } = this.props;
23
+ return p ? /* @__PURE__ */ m(
24
+ "li",
25
+ {
26
+ "data-id": n,
27
+ className: o([
28
+ "simple-item",
29
+ i === "CENTER" && "simple-item--centered",
30
+ i === "BASELINE" && "simple-item--baseline",
31
+ e && "simple-item--interactive",
32
+ d && "simple-item--transparent"
33
+ ]),
34
+ tabIndex: e ? 0 : -1,
35
+ onMouseDown: e ? s : void 0,
36
+ onKeyDown: (t) => {
37
+ (t.key === " " || t.key === "Enter") && e && s?.(t), t.key === "Escape" && e && t.target.blur();
38
+ },
39
+ role: e ? "button" : "listitem",
40
+ children: [
41
+ /* @__PURE__ */ r(
42
+ "div",
43
+ {
44
+ className: "simple-item__left",
45
+ role: "presentation",
46
+ children: a
47
+ }
48
+ ),
49
+ /* @__PURE__ */ r(
50
+ "div",
51
+ {
52
+ className: "simple-item__right",
53
+ role: "presentation",
54
+ children: l
55
+ }
56
+ )
57
+ ]
58
+ }
59
+ ) : /* @__PURE__ */ m(
60
+ "div",
61
+ {
62
+ "data-id": n,
63
+ className: o([
64
+ "simple-item",
65
+ i === "CENTER" && "simple-item--centered",
66
+ i === "BASELINE" && "simple-item--baseline",
67
+ e && "simple-item--interactive"
68
+ ]),
69
+ tabIndex: e ? 0 : -1,
70
+ onMouseDown: e ? s : void 0,
71
+ onKeyDown: (t) => {
72
+ (t.key === " " || t.key === "Enter") && e && s?.(t), t.key === "Escape" && e && t.target.blur();
73
+ },
74
+ role: e ? "button" : "group",
75
+ children: [
76
+ /* @__PURE__ */ r(
77
+ "div",
78
+ {
79
+ className: "simple-item__left",
80
+ role: "presentation",
81
+ children: a
82
+ }
83
+ ),
84
+ /* @__PURE__ */ r(
85
+ "div",
86
+ {
87
+ className: "simple-item__right",
88
+ role: "presentation",
89
+ children: l
90
+ }
91
+ )
92
+ ]
93
+ }
94
+ );
95
+ }
96
+ }
97
+ export {
98
+ h as default
99
+ };
100
+ //# sourceMappingURL=SimpleItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleItem.js","sources":["../../../../src/components/slots/simple-item/SimpleItem.tsx"],"sourcesContent":["import React from 'react'\nimport { doClassnames } from '@a_ng_d/figmug-utils'\nimport './simple-item.scss'\n\nexport interface SimpleItemProps {\n /**\n * HTML id attribute\n */\n id?: string\n /**\n * Content for the left section\n */\n leftPartSlot: React.ReactNode\n /**\n * Content for the right section\n */\n rightPartSlot?: React.ReactNode\n /**\n * Whether to render as a list item\n * @default true\n */\n isListItem?: boolean\n /**\n * Whether the item is clickable\n * @default false\n */\n isInteractive?: boolean\n /**\n * Whether to use transparent background\n * @default false\n */\n isTransparent?: boolean\n /**\n * Vertical alignment mode\n * @default 'DEFAULT'\n */\n alignment?: 'DEFAULT' | 'CENTER' | 'BASELINE'\n /**\n * Click handler\n */\n action?: React.MouseEventHandler<HTMLLIElement | HTMLElement> &\n React.KeyboardEventHandler<HTMLLIElement | HTMLElement>\n}\n\nexport default class SimpleItem extends React.Component<SimpleItemProps> {\n static defaultProps: Partial<SimpleItemProps> = {\n isListItem: true,\n isInteractive: false,\n isTransparent: false,\n alignment: 'DEFAULT',\n }\n\n render() {\n const {\n id,\n leftPartSlot,\n rightPartSlot,\n isListItem,\n isInteractive,\n isTransparent,\n alignment,\n action,\n } = this.props\n\n if (isListItem)\n return (\n <li\n data-id={id}\n className={doClassnames([\n 'simple-item',\n alignment === 'CENTER' && 'simple-item--centered',\n alignment === 'BASELINE' && 'simple-item--baseline',\n isInteractive && 'simple-item--interactive',\n isTransparent && 'simple-item--transparent',\n ])}\n tabIndex={isInteractive ? 0 : -1}\n onMouseDown={isInteractive ? action : undefined}\n onKeyDown={(e) => {\n if ((e.key === ' ' || e.key === 'Enter') && isInteractive)\n action?.(e)\n if (e.key === 'Escape' && isInteractive)\n (e.target as HTMLElement).blur()\n }}\n role={isInteractive ? 'button' : 'listitem'}\n >\n <div\n className=\"simple-item__left\"\n role=\"presentation\"\n >\n {leftPartSlot}\n </div>\n <div\n className=\"simple-item__right\"\n role=\"presentation\"\n >\n {rightPartSlot}\n </div>\n </li>\n )\n return (\n <div\n data-id={id}\n className={doClassnames([\n 'simple-item',\n alignment === 'CENTER' && 'simple-item--centered',\n alignment === 'BASELINE' && 'simple-item--baseline',\n isInteractive && 'simple-item--interactive',\n ])}\n tabIndex={isInteractive ? 0 : -1}\n onMouseDown={isInteractive ? action : undefined}\n onKeyDown={(e) => {\n if ((e.key === ' ' || e.key === 'Enter') && isInteractive) action?.(e)\n if (e.key === 'Escape' && isInteractive)\n (e.target as HTMLElement).blur()\n }}\n role={isInteractive ? 'button' : 'group'}\n >\n <div\n className=\"simple-item__left\"\n role=\"presentation\"\n >\n {leftPartSlot}\n </div>\n <div\n className=\"simple-item__right\"\n role=\"presentation\"\n >\n {rightPartSlot}\n </div>\n </div>\n )\n }\n}\n"],"names":["SimpleItem","React","id","leftPartSlot","rightPartSlot","isListItem","isInteractive","isTransparent","alignment","action","jsxs","doClassnames","e","jsx"],"mappings":";;;AA4CA,MAAqBA,UAAmBC,EAAM,UAA2B;AAAA,EACvE,OAAO,eAAyC;AAAA,IAC9C,YAAY;AAAA,IACZ,eAAe;AAAA,IACf,eAAe;AAAA,IACf,WAAW;AAAA,EAAA;AAAA,EAGb,SAAS;AACP,UAAM;AAAA,MACJ,IAAAC;AAAA,MACA,cAAAC;AAAA,MACA,eAAAC;AAAA,MACA,YAAAC;AAAA,MACA,eAAAC;AAAA,MACA,eAAAC;AAAA,MACA,WAAAC;AAAA,MACA,QAAAC;AAAA,IAAA,IACE,KAAK;AAET,WAAIJ,IAEA,gBAAAK;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAASR;AAAA,QACT,WAAWS,EAAa;AAAA,UACtB;AAAA,UACAH,MAAc,YAAY;AAAA,UAC1BA,MAAc,cAAc;AAAA,UAC5BF,KAAiB;AAAA,UACjBC,KAAiB;AAAA,QAAA,CAClB;AAAA,QACD,UAAUD,IAAgB,IAAI;AAAA,QAC9B,aAAaA,IAAgBG,IAAS;AAAA,QACtC,WAAW,CAACG,MAAM;AAChB,WAAKA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,YAAYN,KAC1CG,IAASG,CAAC,GACRA,EAAE,QAAQ,YAAYN,KACvBM,EAAE,OAAuB,KAAA;AAAA,QAC9B;AAAA,QACA,MAAMN,IAAgB,WAAW;AAAA,QAEjC,UAAA;AAAA,UAAA,gBAAAO;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAV;AAAA,YAAA;AAAA,UAAA;AAAA,UAEH,gBAAAU;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAT;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA,IAIJ,gBAAAM;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAASR;AAAA,QACT,WAAWS,EAAa;AAAA,UACtB;AAAA,UACAH,MAAc,YAAY;AAAA,UAC1BA,MAAc,cAAc;AAAA,UAC5BF,KAAiB;AAAA,QAAA,CAClB;AAAA,QACD,UAAUA,IAAgB,IAAI;AAAA,QAC9B,aAAaA,IAAgBG,IAAS;AAAA,QACtC,WAAW,CAACG,MAAM;AAChB,WAAKA,EAAE,QAAQ,OAAOA,EAAE,QAAQ,YAAYN,SAAwBM,CAAC,GACjEA,EAAE,QAAQ,YAAYN,KACvBM,EAAE,OAAuB,KAAA;AAAA,QAC9B;AAAA,QACA,MAAMN,IAAgB,WAAW;AAAA,QAEjC,UAAA;AAAA,UAAA,gBAAAO;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAV;AAAA,YAAA;AAAA,UAAA;AAAA,UAEH,gBAAAU;AAAA,YAAC;AAAA,YAAA;AAAA,cACC,WAAU;AAAA,cACV,MAAK;AAAA,cAEJ,UAAAT;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAGN;AACF;"}
@@ -0,0 +1,43 @@
1
+
2
+ export interface ChipProps {
3
+ /**
4
+ * Visual state of the chip
5
+ * @default 'ACTIVE'
6
+ */
7
+ state?: 'ACTIVE' | 'INACTIVE' | 'ON_BACKGROUND';
8
+ /**
9
+ * Content for the left slot
10
+ */
11
+ leftSlot?: React.ReactElement;
12
+ /**
13
+ * Content for the right slot
14
+ */
15
+ rightSlot?: React.ReactElement;
16
+ /**
17
+ * Text content of the chip
18
+ */
19
+ children?: React.ReactNode;
20
+ /**
21
+ * Whether the chip is displayed alone (adds padding)
22
+ * @default false
23
+ */
24
+ isSolo?: boolean;
25
+ /**
26
+ * Preview tooltip configuration
27
+ */
28
+ preview?: {
29
+ /** Preview image URL */
30
+ image: string;
31
+ /** Preview text */
32
+ text: string | React.ReactNode;
33
+ /** Preview position */
34
+ pin?: 'TOP' | 'BOTTOM';
35
+ };
36
+ /**
37
+ * Click handler
38
+ */
39
+ action?: React.MouseEventHandler & React.KeyboardEventHandler<HTMLDivElement>;
40
+ }
41
+ declare const Chip: (props: ChipProps) => import("react/jsx-runtime").JSX.Element;
42
+ export default Chip;
43
+ //# sourceMappingURL=Chip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip.d.ts","sourceRoot":"","sources":["../../../../src/components/tags/chip/Chip.tsx"],"names":[],"mappings":";AAIA,OAAO,aAAa,CAAA;AAEpB,MAAM,WAAW,SAAS;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,eAAe,CAAA;IAC/C;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,YAAY,CAAA;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,YAAY,CAAA;IAC9B;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE;QACR,wBAAwB;QACxB,KAAK,EAAE,MAAM,CAAA;QACb,mBAAmB;QACnB,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAA;QAC9B,uBAAuB;QACvB,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAA;KACvB,CAAA;IACD;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAA;CAC9E;AAED,QAAA,MAAM,IAAI,UAAW,SAAS,4CA+E7B,CAAA;AAED,eAAe,IAAI,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Chip.figma.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip.figma.d.ts","sourceRoot":"","sources":["../../../../src/components/tags/chip/Chip.figma.tsx"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { i as t } from "../../../index_react-CmuCVQet.js";
3
+ import e from "./Chip.js";
4
+ t.figma.connect(
5
+ e,
6
+ "https://www.figma.com/design/QlBdsfEcaUsGBzqA20xbNi/Unoff?node-id=276:83",
7
+ {
8
+ props: {
9
+ state: t.figma.enum("state", {
10
+ ACTIVE: "ACTIVE",
11
+ INACTIVE: "INACTIVE",
12
+ TRANSPARENT: "ON_BACKGROUND"
13
+ })
14
+ },
15
+ example: (i) => /* @__PURE__ */ a(e, { state: i.state, children: "Label" })
16
+ }
17
+ );
18
+ //# sourceMappingURL=Chip.figma.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip.figma.js","sources":["../../../../src/components/tags/chip/Chip.figma.tsx"],"sourcesContent":["import { figma } from '@figma/code-connect'\nimport Chip from './Chip'\n\nfigma.connect(\n Chip,\n 'https://www.figma.com/design/QlBdsfEcaUsGBzqA20xbNi/Unoff?node-id=276:83',\n {\n props: {\n state: figma.enum('state', {\n ACTIVE: 'ACTIVE',\n INACTIVE: 'INACTIVE',\n TRANSPARENT: 'ON_BACKGROUND',\n }),\n },\n example: (props) => <Chip state={props.state}>Label</Chip>,\n }\n)\n"],"names":["figma","Chip","props","jsx"],"mappings":";;;AAGAA,EAAAA,MAAM;AAAA,EACJC;AAAA,EACA;AAAA,EACA;AAAA,IACE,OAAO;AAAA,MACL,OAAOD,EAAAA,MAAM,KAAK,SAAS;AAAA,QACzB,QAAQ;AAAA,QACR,UAAU;AAAA,QACV,aAAa;AAAA,MAAA,CACd;AAAA,IAAA;AAAA,IAEH,SAAS,CAACE,MAAU,gBAAAC,EAACF,KAAK,OAAOC,EAAM,OAAO,UAAA,QAAA,CAAK;AAAA,EAAA;AAEvD;"}
@@ -0,0 +1,88 @@
1
+ import '../../../assets/Chip.css';
2
+ import { jsxs as f, jsx as n } from "react/jsx-runtime";
3
+ import { useState as p } from "react";
4
+ import a from "../../../styles/texts/texts.module.js";
5
+ import { t as d } from "../../../do-classnames-DSDFCvzy.js";
6
+ import h from "../tooltip/Tooltip.js";
7
+ const _ = (o) => {
8
+ const { children: l, state: r = "ACTIVE", isSolo: v = !1, preview: e, action: i } = o, [c, s] = p(!1);
9
+ return /* @__PURE__ */ f(
10
+ "div",
11
+ {
12
+ className: d([
13
+ "chip",
14
+ r === "INACTIVE" && "chip--inactive",
15
+ r === "ON_BACKGROUND" && "chip--on-background",
16
+ v && "chip--solo",
17
+ (i !== void 0 || e !== void 0) && "chip--interactive"
18
+ ]),
19
+ onMouseDown: (t) => {
20
+ if (i) i(t);
21
+ else return;
22
+ },
23
+ onMouseEnter: () => {
24
+ e !== void 0 && s(!0);
25
+ },
26
+ onMouseLeave: () => {
27
+ e !== void 0 && s(!1);
28
+ },
29
+ onKeyDown: (t) => {
30
+ if (i && (t.key === "Enter" || t.key === " ")) i(t);
31
+ else return;
32
+ },
33
+ onFocus: () => {
34
+ e !== void 0 && s(!0);
35
+ },
36
+ onBlur: () => {
37
+ e !== void 0 && s(!1);
38
+ },
39
+ tabIndex: i !== void 0 || e !== void 0 ? 0 : -1,
40
+ role: i !== void 0 || e !== void 0 ? "button" : void 0,
41
+ "aria-pressed": i !== void 0 ? r === "ACTIVE" : void 0,
42
+ "aria-disabled": r === "INACTIVE" ? !0 : void 0,
43
+ children: [
44
+ o.leftSlot && /* @__PURE__ */ n(
45
+ "div",
46
+ {
47
+ className: "chip__left-slot",
48
+ role: "presentation",
49
+ children: o.leftSlot
50
+ }
51
+ ),
52
+ l !== void 0 && /* @__PURE__ */ n(
53
+ "div",
54
+ {
55
+ className: d([
56
+ "chip__text",
57
+ a.type,
58
+ a["type--truncated"]
59
+ ]),
60
+ role: "presentation",
61
+ children: l
62
+ }
63
+ ),
64
+ o.rightSlot && /* @__PURE__ */ n(
65
+ "div",
66
+ {
67
+ className: "chip__right-slot",
68
+ role: "presentation",
69
+ children: o.rightSlot
70
+ }
71
+ ),
72
+ c && /* @__PURE__ */ n(
73
+ h,
74
+ {
75
+ pin: e?.pin || "BOTTOM",
76
+ type: "WITH_IMAGE",
77
+ image: e?.image,
78
+ children: e?.text
79
+ }
80
+ )
81
+ ]
82
+ }
83
+ );
84
+ };
85
+ export {
86
+ _ as default
87
+ };
88
+ //# sourceMappingURL=Chip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chip.js","sources":["../../../../src/components/tags/chip/Chip.tsx"],"sourcesContent":["import { useState } from 'react'\nimport texts from '@styles/texts/texts.module.scss'\nimport { doClassnames } from '@a_ng_d/figmug-utils'\nimport Tooltip from '../tooltip/Tooltip'\nimport './chip.scss'\n\nexport interface ChipProps {\n /**\n * Visual state of the chip\n * @default 'ACTIVE'\n */\n state?: 'ACTIVE' | 'INACTIVE' | 'ON_BACKGROUND'\n /**\n * Content for the left slot\n */\n leftSlot?: React.ReactElement\n /**\n * Content for the right slot\n */\n rightSlot?: React.ReactElement\n /**\n * Text content of the chip\n */\n children?: React.ReactNode\n /**\n * Whether the chip is displayed alone (adds padding)\n * @default false\n */\n isSolo?: boolean\n /**\n * Preview tooltip configuration\n */\n preview?: {\n /** Preview image URL */\n image: string\n /** Preview text */\n text: string | React.ReactNode\n /** Preview position */\n pin?: 'TOP' | 'BOTTOM'\n }\n /**\n * Click handler\n */\n action?: React.MouseEventHandler & React.KeyboardEventHandler<HTMLDivElement>\n}\n\nconst Chip = (props: ChipProps) => {\n const { children, state = 'ACTIVE', isSolo = false, preview, action } = props\n const [isPreviewVisible, setIsPreviewVisible] = useState(false)\n\n return (\n <div\n className={doClassnames([\n 'chip',\n state === 'INACTIVE' && 'chip--inactive',\n state === 'ON_BACKGROUND' && 'chip--on-background',\n isSolo && 'chip--solo',\n (action !== undefined || preview !== undefined) && 'chip--interactive',\n ])}\n onMouseDown={(e) => {\n if (action) action(e)\n else return undefined\n }}\n onMouseEnter={() => {\n if (preview !== undefined) setIsPreviewVisible(true)\n }}\n onMouseLeave={() => {\n if (preview !== undefined) setIsPreviewVisible(false)\n }}\n onKeyDown={(e) => {\n if (action && (e.key === 'Enter' || e.key === ' ')) action(e)\n else return undefined\n }}\n onFocus={() => {\n if (preview !== undefined) setIsPreviewVisible(true)\n }}\n onBlur={() => {\n if (preview !== undefined) setIsPreviewVisible(false)\n }}\n tabIndex={action !== undefined || preview !== undefined ? 0 : -1}\n role={\n action !== undefined || preview !== undefined ? 'button' : undefined\n }\n aria-pressed={action !== undefined ? state === 'ACTIVE' : undefined}\n aria-disabled={state === 'INACTIVE' ? true : undefined}\n >\n {props.leftSlot && (\n <div\n className=\"chip__left-slot\"\n role=\"presentation\"\n >\n {props.leftSlot}\n </div>\n )}\n {children !== undefined && (\n <div\n className={doClassnames([\n 'chip__text',\n texts.type,\n texts['type--truncated'],\n ])}\n role=\"presentation\"\n >\n {children}\n </div>\n )}\n {props.rightSlot && (\n <div\n className=\"chip__right-slot\"\n role=\"presentation\"\n >\n {props.rightSlot}\n </div>\n )}\n {isPreviewVisible && (\n <Tooltip\n pin={preview?.pin || 'BOTTOM'}\n type=\"WITH_IMAGE\"\n image={preview?.image}\n >\n {preview?.text}\n </Tooltip>\n )}\n </div>\n )\n}\n\nexport default Chip\n"],"names":["Chip","props","children","state","isSolo","preview","action","isPreviewVisible","setIsPreviewVisible","useState","jsxs","doClassnames","e","jsx","texts","Tooltip"],"mappings":";;;;;AA8CA,MAAMA,IAAO,CAACC,MAAqB;AACjC,QAAM,EAAE,UAAAC,GAAU,OAAAC,IAAQ,UAAU,QAAAC,IAAS,IAAO,SAAAC,GAAS,QAAAC,MAAWL,GAClE,CAACM,GAAkBC,CAAmB,IAAIC,EAAS,EAAK;AAE9D,SACE,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAa;AAAA,QACtB;AAAA,QACAR,MAAU,cAAc;AAAA,QACxBA,MAAU,mBAAmB;AAAA,QAC7BC,KAAU;AAAA,SACTE,MAAW,UAAaD,MAAY,WAAc;AAAA,MAAA,CACpD;AAAA,MACD,aAAa,CAACO,MAAM;AAClB,YAAIN,KAAeM,CAAC;AAAA,YACf;AAAA,MACP;AAAA,MACA,cAAc,MAAM;AAClB,QAAIP,MAAY,UAAWG,EAAoB,EAAI;AAAA,MACrD;AAAA,MACA,cAAc,MAAM;AAClB,QAAIH,MAAY,UAAWG,EAAoB,EAAK;AAAA,MACtD;AAAA,MACA,WAAW,CAACI,MAAM;AAChB,YAAIN,MAAWM,EAAE,QAAQ,WAAWA,EAAE,QAAQ,QAAaA,CAAC;AAAA,YACvD;AAAA,MACP;AAAA,MACA,SAAS,MAAM;AACb,QAAIP,MAAY,UAAWG,EAAoB,EAAI;AAAA,MACrD;AAAA,MACA,QAAQ,MAAM;AACZ,QAAIH,MAAY,UAAWG,EAAoB,EAAK;AAAA,MACtD;AAAA,MACA,UAAUF,MAAW,UAAaD,MAAY,SAAY,IAAI;AAAA,MAC9D,MACEC,MAAW,UAAaD,MAAY,SAAY,WAAW;AAAA,MAE7D,gBAAcC,MAAW,SAAYH,MAAU,WAAW;AAAA,MAC1D,iBAAeA,MAAU,aAAa,KAAO;AAAA,MAE5C,UAAA;AAAA,QAAAF,EAAM,YACL,gBAAAY;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,MAAK;AAAA,YAEJ,UAAAZ,EAAM;AAAA,UAAA;AAAA,QAAA;AAAA,QAGVC,MAAa,UACZ,gBAAAW;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAWF,EAAa;AAAA,cACtB;AAAA,cACAG,EAAM;AAAA,cACNA,EAAM,iBAAiB;AAAA,YAAA,CACxB;AAAA,YACD,MAAK;AAAA,YAEJ,UAAAZ;AAAA,UAAA;AAAA,QAAA;AAAA,QAGJD,EAAM,aACL,gBAAAY;AAAA,UAAC;AAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,MAAK;AAAA,YAEJ,UAAAZ,EAAM;AAAA,UAAA;AAAA,QAAA;AAAA,QAGVM,KACC,gBAAAM;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,KAAKV,GAAS,OAAO;AAAA,YACrB,MAAK;AAAA,YACL,OAAOA,GAAS;AAAA,YAEf,UAAAA,GAAS;AAAA,UAAA;AAAA,QAAA;AAAA,MACZ;AAAA,IAAA;AAAA,EAAA;AAIR;"}