design-react-kit 3.3.1 → 4.0.1

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/README.EN.md +35 -17
  2. package/README.md +34 -18
  3. package/package.json +152 -120
  4. package/src/Accordion/Accordion.tsx +30 -0
  5. package/src/Accordion/AccordionBody.tsx +127 -0
  6. package/src/Accordion/AccordionHeader.tsx +42 -0
  7. package/src/Alert/Alert.tsx +39 -0
  8. package/src/Avatar/AvatarContainer.tsx +22 -0
  9. package/src/Avatar/AvatarExtraText.tsx +19 -0
  10. package/src/Avatar/AvatarGroupContainer.tsx +23 -0
  11. package/src/Avatar/AvatarIcon.tsx +57 -0
  12. package/src/Avatar/AvatarPresence.tsx +24 -0
  13. package/src/Avatar/AvatarStatus.tsx +24 -0
  14. package/src/Avatar/AvatarWrapper.tsx +24 -0
  15. package/src/Badge/Badge.tsx +40 -0
  16. package/src/BottomNav/BottomNav.tsx +20 -0
  17. package/src/BottomNav/BottomNavItem.tsx +75 -0
  18. package/src/Breadcrumb/Breadcrumb.tsx +40 -0
  19. package/src/Button/Button.tsx +55 -0
  20. package/src/Callout/Callout.tsx +35 -0
  21. package/src/Callout/CalloutText.tsx +29 -0
  22. package/src/Callout/CalloutTitle.tsx +24 -0
  23. package/src/Card/Card.tsx +49 -0
  24. package/src/Card/CardBody.tsx +21 -0
  25. package/src/Card/CardCategory.tsx +48 -0
  26. package/src/Card/CardFooterCTA.tsx +19 -0
  27. package/src/Card/CardReadMore.tsx +35 -0
  28. package/src/Card/CardSignature.tsx +19 -0
  29. package/src/Card/CardTag.tsx +19 -0
  30. package/src/Card/CardTagsHeader.tsx +28 -0
  31. package/src/Card/CardText.tsx +19 -0
  32. package/src/Card/CardTitle.tsx +17 -0
  33. package/src/Chips/Chip.tsx +37 -0
  34. package/src/Chips/ChipLabel.tsx +19 -0
  35. package/src/Collapse/Collapse.tsx +100 -0
  36. package/src/CookieBar/CookieBar.tsx +19 -0
  37. package/src/CookieBar/CookieBarButton.tsx +27 -0
  38. package/src/CookieBar/CookieBarButtons.tsx +19 -0
  39. package/src/Dimmer/Dimmer.tsx +51 -0
  40. package/src/Dimmer/DimmerButtons.tsx +35 -0
  41. package/src/FontLoader/FontLoader.tsx +32 -0
  42. package/src/Forward/Forward.tsx +40 -0
  43. package/src/Grid/GridItem.tsx +23 -0
  44. package/src/Grid/GridItemText.tsx +20 -0
  45. package/src/Grid/GridItemTextWrapper.tsx +21 -0
  46. package/src/Grid/GridList.tsx +20 -0
  47. package/src/Grid/GridRow.tsx +20 -0
  48. package/src/Grid/index.ts +11 -0
  49. package/src/{components/Header/Header.js → Header/Header.tsx} +19 -24
  50. package/src/Header/HeaderBrand.tsx +90 -0
  51. package/src/Header/HeaderContent.tsx +42 -0
  52. package/src/Header/HeaderContext.tsx +9 -0
  53. package/src/Header/HeaderLinkZone.tsx +19 -0
  54. package/src/Header/HeaderRightZone.tsx +26 -0
  55. package/src/Header/HeaderSearch.tsx +33 -0
  56. package/src/Header/HeaderSocialsZone.tsx +26 -0
  57. package/src/Header/HeaderToggler.tsx +46 -0
  58. package/src/{components/Header/Headers.js → Header/Headers.tsx} +17 -22
  59. package/src/Hero/Hero.tsx +34 -0
  60. package/src/Hero/HeroBackground.tsx +25 -0
  61. package/src/Hero/HeroBody.tsx +21 -0
  62. package/src/Hero/HeroButton.tsx +19 -0
  63. package/src/Hero/HeroCategory.tsx +15 -0
  64. package/src/Hero/HeroTitle.tsx +16 -0
  65. package/src/Hero/index.ts +13 -0
  66. package/src/Icon/EmptyIcon.tsx +7 -0
  67. package/src/Icon/Icon.tsx +116 -0
  68. package/src/Icon/assets/ItArrowDown.tsx +9 -0
  69. package/src/Icon/assets/ItArrowDownCircle.tsx +9 -0
  70. package/src/Icon/assets/ItArrowDownTriangle.tsx +9 -0
  71. package/src/Icon/assets/ItArrowLeft.tsx +9 -0
  72. package/src/Icon/assets/ItArrowLeftCircle.tsx +9 -0
  73. package/src/Icon/assets/ItArrowLeftTriangle.tsx +9 -0
  74. package/src/Icon/assets/ItArrowRight.tsx +9 -0
  75. package/src/Icon/assets/ItArrowRightCircle.tsx +9 -0
  76. package/src/Icon/assets/ItArrowRightTriangle.tsx +9 -0
  77. package/src/Icon/assets/ItArrowUp.tsx +9 -0
  78. package/src/Icon/assets/ItArrowUpCircle.tsx +9 -0
  79. package/src/Icon/assets/ItArrowUpTriangle.tsx +9 -0
  80. package/src/Icon/assets/ItBan.tsx +9 -0
  81. package/src/Icon/assets/ItBehance.tsx +9 -0
  82. package/src/Icon/assets/ItBookmark.tsx +9 -0
  83. package/src/Icon/assets/ItBox.tsx +12 -0
  84. package/src/Icon/assets/ItBurger.tsx +9 -0
  85. package/src/Icon/assets/ItCalendar.tsx +9 -0
  86. package/src/Icon/assets/ItCamera.tsx +9 -0
  87. package/src/Icon/assets/ItCard.tsx +9 -0
  88. package/src/Icon/assets/ItChartLine.tsx +12 -0
  89. package/src/Icon/assets/ItCheck.tsx +9 -0
  90. package/src/Icon/assets/ItCheckCircle.tsx +9 -0
  91. package/src/Icon/assets/ItChevronLeft.tsx +8 -0
  92. package/src/Icon/assets/ItChevronRight.tsx +8 -0
  93. package/src/Icon/assets/ItClip.tsx +9 -0
  94. package/src/Icon/assets/ItClock.tsx +9 -0
  95. package/src/Icon/assets/ItClose.tsx +9 -0
  96. package/src/Icon/assets/ItCloseBig.tsx +9 -0
  97. package/src/Icon/assets/ItCloseCircle.tsx +9 -0
  98. package/src/Icon/assets/ItCodeCircle.tsx +9 -0
  99. package/src/Icon/assets/ItCollapse.tsx +8 -0
  100. package/src/Icon/assets/ItComment.tsx +9 -0
  101. package/src/Icon/assets/ItCopy.tsx +9 -0
  102. package/src/Icon/assets/ItDelete.tsx +12 -0
  103. package/src/Icon/assets/ItDesignersItalia.tsx +9 -0
  104. package/src/Icon/assets/ItDownload.tsx +9 -0
  105. package/src/Icon/assets/ItError.tsx +9 -0
  106. package/src/Icon/assets/ItExchangeCircle.tsx +9 -0
  107. package/src/Icon/assets/ItExpand.tsx +8 -0
  108. package/src/Icon/assets/ItExternalLink.tsx +9 -0
  109. package/src/Icon/assets/ItFacebook.tsx +9 -0
  110. package/src/Icon/assets/ItFacebookSquare.tsx +9 -0
  111. package/src/Icon/assets/ItFile.tsx +9 -0
  112. package/src/Icon/assets/ItFiles.tsx +9 -0
  113. package/src/Icon/assets/ItFlag.tsx +9 -0
  114. package/src/Icon/assets/ItFlickr.tsx +10 -0
  115. package/src/Icon/assets/ItFlickrSquare.tsx +9 -0
  116. package/src/Icon/assets/ItFolder.tsx +9 -0
  117. package/src/Icon/assets/ItFullscreen.tsx +11 -0
  118. package/src/Icon/assets/ItFunnel.tsx +9 -0
  119. package/src/Icon/assets/ItGithub.tsx +9 -0
  120. package/src/Icon/assets/ItHearing.tsx +9 -0
  121. package/src/Icon/assets/ItHelp.tsx +9 -0
  122. package/src/Icon/assets/ItHelpCircle.tsx +9 -0
  123. package/src/Icon/assets/ItHorn.tsx +9 -0
  124. package/src/Icon/assets/ItInbox.tsx +12 -0
  125. package/src/Icon/assets/ItInfoCircle.tsx +9 -0
  126. package/src/Icon/assets/ItInstagram.tsx +9 -0
  127. package/src/Icon/assets/ItKey.tsx +9 -0
  128. package/src/Icon/assets/ItLessCircle.tsx +12 -0
  129. package/src/Icon/assets/ItLink.tsx +9 -0
  130. package/src/Icon/assets/ItLinkedin.tsx +9 -0
  131. package/src/Icon/assets/ItLinkedinSquare.tsx +9 -0
  132. package/src/Icon/assets/ItList.tsx +9 -0
  133. package/src/Icon/assets/ItLock.tsx +12 -0
  134. package/src/Icon/assets/ItLocked.tsx +9 -0
  135. package/src/Icon/assets/ItMail.tsx +9 -0
  136. package/src/Icon/assets/ItMapMarker.tsx +9 -0
  137. package/src/Icon/assets/ItMapMarkerCircle.tsx +12 -0
  138. package/src/Icon/assets/ItMapMarkerMinus.tsx +9 -0
  139. package/src/Icon/assets/ItMapMarkerPlus.tsx +12 -0
  140. package/src/Icon/assets/ItMaximize.tsx +11 -0
  141. package/src/Icon/assets/ItMaximizeAlt.tsx +11 -0
  142. package/src/Icon/assets/ItMedium.tsx +9 -0
  143. package/src/Icon/assets/ItMediumSquare.tsx +9 -0
  144. package/src/Icon/assets/ItMinimize.tsx +11 -0
  145. package/src/Icon/assets/ItMinus.tsx +9 -0
  146. package/src/Icon/assets/ItMinusCircle.tsx +9 -0
  147. package/src/Icon/assets/ItMoreActions.tsx +9 -0
  148. package/src/Icon/assets/ItMoreItems.tsx +9 -0
  149. package/src/Icon/assets/ItNote.tsx +9 -0
  150. package/src/Icon/assets/ItOpenSource.tsx +9 -0
  151. package/src/Icon/assets/ItPa.tsx +9 -0
  152. package/src/Icon/assets/ItPasswordInvisible.tsx +9 -0
  153. package/src/Icon/assets/ItPasswordVisible.tsx +9 -0
  154. package/src/Icon/assets/ItPencil.tsx +9 -0
  155. package/src/Icon/assets/ItPiattaforme.tsx +10 -0
  156. package/src/Icon/assets/ItPin.tsx +9 -0
  157. package/src/Icon/assets/ItPlug.tsx +9 -0
  158. package/src/Icon/assets/ItPlus.tsx +9 -0
  159. package/src/Icon/assets/ItPlusCircle.tsx +9 -0
  160. package/src/Icon/assets/ItPresentation.tsx +9 -0
  161. package/src/Icon/assets/ItPrint.tsx +9 -0
  162. package/src/Icon/assets/ItRefresh.tsx +9 -0
  163. package/src/Icon/assets/ItRestore.tsx +9 -0
  164. package/src/Icon/assets/ItRss.tsx +11 -0
  165. package/src/Icon/assets/ItRssSquare.tsx +9 -0
  166. package/src/Icon/assets/ItSearch.tsx +9 -0
  167. package/src/Icon/assets/ItSettings.tsx +9 -0
  168. package/src/Icon/assets/ItShare.tsx +9 -0
  169. package/src/Icon/assets/ItSoftware.tsx +10 -0
  170. package/src/Icon/assets/ItStarFull.tsx +9 -0
  171. package/src/Icon/assets/ItStarOutline.tsx +9 -0
  172. package/src/Icon/assets/ItTeamDigitale.tsx +8 -0
  173. package/src/Icon/assets/ItTelegram.tsx +11 -0
  174. package/src/Icon/assets/ItTelephone.tsx +9 -0
  175. package/src/Icon/assets/ItTool.tsx +9 -0
  176. package/src/Icon/assets/ItTwitter.tsx +9 -0
  177. package/src/Icon/assets/ItTwitterSquare.tsx +9 -0
  178. package/src/Icon/assets/ItUnlocked.tsx +9 -0
  179. package/src/Icon/assets/ItUpload.tsx +9 -0
  180. package/src/Icon/assets/ItUser.tsx +9 -0
  181. package/src/Icon/assets/ItVideo.tsx +9 -0
  182. package/src/Icon/assets/ItWarning.tsx +9 -0
  183. package/src/Icon/assets/ItWarningCircle.tsx +9 -0
  184. package/src/Icon/assets/ItWhatsapp.tsx +9 -0
  185. package/src/Icon/assets/ItWhatsappSquare.tsx +10 -0
  186. package/src/Icon/assets/ItWifi.tsx +12 -0
  187. package/src/Icon/assets/ItYoutube.tsx +9 -0
  188. package/src/Icon/assets/ItZoomIn.tsx +9 -0
  189. package/src/Icon/assets/ItZoomOut.tsx +9 -0
  190. package/src/Icon/assets/index.tsx +504 -0
  191. package/src/Input/Input.tsx +342 -0
  192. package/src/Input/InputContainer.tsx +34 -0
  193. package/src/Input/TextArea.tsx +184 -0
  194. package/src/Input/TimeInput.tsx +303 -0
  195. package/src/Input/utils.tsx +166 -0
  196. package/src/LinkList/LinkList.tsx +65 -0
  197. package/src/LinkList/LinkListItem.tsx +98 -0
  198. package/src/Megamenu/Megamenu.tsx +37 -0
  199. package/src/Megamenu/MegamenuFooter.tsx +20 -0
  200. package/src/Megamenu/MegamenuHighlightColumn.tsx +33 -0
  201. package/src/Megamenu/MegamenuItem.tsx +27 -0
  202. package/src/Modal/Modal.tsx +79 -0
  203. package/src/Modal/ModalBody.tsx +11 -0
  204. package/src/Modal/ModalFooter.tsx +11 -0
  205. package/src/Modal/ModalHeader.tsx +70 -0
  206. package/src/Nav/Nav.tsx +56 -0
  207. package/src/Notification/Notification.tsx +60 -0
  208. package/src/Notification/NotificationContent.tsx +135 -0
  209. package/src/Notification/NotificationManager.tsx +65 -0
  210. package/src/Notification/core.tsx +46 -0
  211. package/src/Notification/index.ts +9 -0
  212. package/src/Notification/types.ts +12 -0
  213. package/src/Notification/usePosition.tsx +11 -0
  214. package/src/Pager/Pager.tsx +48 -0
  215. package/src/PasswordInput/PasswordInput.tsx +43 -0
  216. package/src/Progress/Progress.tsx +94 -0
  217. package/src/Rating/Rating.tsx +130 -0
  218. package/src/ResponsiveImage/ResponsiveImage.tsx +25 -0
  219. package/src/Section/Section.tsx +86 -0
  220. package/src/Select/Select.tsx +97 -0
  221. package/src/Select/shared.tsx +45 -0
  222. package/src/Sidebar/Sidebar.tsx +46 -0
  223. package/src/Skiplink/Skiplink.tsx +20 -0
  224. package/src/Skiplink/SkiplinkItem.tsx +29 -0
  225. package/src/Spinner/Spinner.tsx +55 -0
  226. package/src/Stepper/StepperContainer.tsx +30 -0
  227. package/src/Stepper/StepperContent.tsx +51 -0
  228. package/src/Stepper/StepperDots.tsx +21 -0
  229. package/src/Stepper/StepperHeader.tsx +19 -0
  230. package/src/Stepper/StepperHeaderElement.tsx +77 -0
  231. package/src/Stepper/StepperNav.tsx +19 -0
  232. package/src/ThumbNav/ThumbNav.tsx +37 -0
  233. package/src/ThumbNav/ThumbNavItem.tsx +35 -0
  234. package/src/Timeline/TimelinePin.tsx +67 -0
  235. package/src/Timeline/TimelineWrapper.tsx +19 -0
  236. package/src/Toggle/Toggle.tsx +29 -0
  237. package/src/Toolbar/Toolbar.tsx +28 -0
  238. package/src/Toolbar/ToolbarDividerItem.tsx +5 -0
  239. package/src/Toolbar/ToolbarItem.tsx +95 -0
  240. package/src/assets.d.ts +4 -0
  241. package/src/index.tsx +350 -0
  242. package/src/utils.tsx +26 -0
  243. package/.editorconfig +0 -18
  244. package/.eslintrc +0 -65
  245. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -32
  246. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  247. package/.github/PULL_REQUEST_TEMPLATE.md +0 -24
  248. package/AUTHORS +0 -3
  249. package/CODE_OF_CONDUCT.EN.md +0 -77
  250. package/CODE_OF_CONDUCT.md +0 -69
  251. package/dist/design-react-kit.cjs.js +0 -3698
  252. package/dist/design-react-kit.cjs.js.map +0 -1
  253. package/dist/design-react-kit.d.ts +0 -1704
  254. package/dist/design-react-kit.es.js +0 -3188
  255. package/dist/design-react-kit.es.js.map +0 -1
  256. package/dist/design-react-kit.full.js +0 -17596
  257. package/dist/design-react-kit.full.js.map +0 -1
  258. package/dist/design-react-kit.full.min.js +0 -2
  259. package/dist/design-react-kit.full.min.js.map +0 -1
  260. package/dist/design-react-kit.js +0 -13394
  261. package/dist/design-react-kit.js.map +0 -1
  262. package/dist/design-react-kit.min.js +0 -2
  263. package/dist/design-react-kit.min.js.map +0 -1
  264. package/src/Storyshots.test.js +0 -9
  265. package/src/components/Accordion/Accordion.js +0 -22
  266. package/src/components/Accordion/AccordionBody.js +0 -118
  267. package/src/components/Accordion/AccordionHeader.js +0 -37
  268. package/src/components/Autocomplete/Autocomplete.js +0 -255
  269. package/src/components/Avatar/AvatarContainer.js +0 -24
  270. package/src/components/Avatar/AvatarExtraText.js +0 -22
  271. package/src/components/Avatar/AvatarGroupContainer.js +0 -23
  272. package/src/components/Avatar/AvatarIcon.js +0 -32
  273. package/src/components/Avatar/AvatarPresence.js +0 -25
  274. package/src/components/Avatar/AvatarStatus.js +0 -25
  275. package/src/components/Avatar/AvatarWrapper.js +0 -25
  276. package/src/components/Badge/Badge.js +0 -28
  277. package/src/components/BottomNav/BottomNav.js +0 -27
  278. package/src/components/BottomNav/BottomNavItem.js +0 -69
  279. package/src/components/Button/Button.js +0 -26
  280. package/src/components/Callout/Callout.js +0 -33
  281. package/src/components/Callout/CalloutText.js +0 -37
  282. package/src/components/Callout/CalloutTitle.js +0 -27
  283. package/src/components/Card/Card.js +0 -50
  284. package/src/components/Card/CardCategory.js +0 -43
  285. package/src/components/Card/CardFooterCTA.js +0 -17
  286. package/src/components/Card/CardReadMore.js +0 -45
  287. package/src/components/Card/CardSignature.js +0 -17
  288. package/src/components/Card/CardTag.js +0 -23
  289. package/src/components/Card/CardTagsHeader.js +0 -21
  290. package/src/components/Chips/Chip.js +0 -50
  291. package/src/components/Chips/ChipLabel.js +0 -25
  292. package/src/components/Collapse/Collapse.js +0 -66
  293. package/src/components/CookieBar/CookieBar.js +0 -22
  294. package/src/components/CookieBar/CookieBarButton.js +0 -25
  295. package/src/components/CookieBar/CookieBarButtons.js +0 -23
  296. package/src/components/Dimmer/Dimmer.js +0 -38
  297. package/src/components/Dimmer/DimmerButtons.js +0 -35
  298. package/src/components/FontLoader/FontLoader.js +0 -22
  299. package/src/components/FormGroup/FormGroup.js +0 -137
  300. package/src/components/Forward/Forward.js +0 -32
  301. package/src/components/Header/HeaderBrand.js +0 -86
  302. package/src/components/Header/HeaderContent.js +0 -49
  303. package/src/components/Header/HeaderContext.js +0 -14
  304. package/src/components/Header/HeaderLinkZone.js +0 -24
  305. package/src/components/Header/HeaderRightZone.js +0 -33
  306. package/src/components/Header/HeaderSearch.js +0 -36
  307. package/src/components/Header/HeaderSocialsZone.js +0 -30
  308. package/src/components/Header/HeaderToggler.js +0 -50
  309. package/src/components/Hero/Hero.js +0 -10
  310. package/src/components/Icon/Icon.js +0 -42
  311. package/src/components/Input/Input.js +0 -261
  312. package/src/components/Input/InputContainer.js +0 -39
  313. package/src/components/Input/utils.js +0 -126
  314. package/src/components/LinkList/LinkList.js +0 -65
  315. package/src/components/LinkList/LinkListItem.js +0 -88
  316. package/src/components/Nav/Nav.js +0 -37
  317. package/src/components/Notification/Notification.js +0 -78
  318. package/src/components/Offcanvas/Offcanvas.js +0 -101
  319. package/src/components/Pager/Pager.js +0 -32
  320. package/src/components/PagerList/PagerList.js +0 -28
  321. package/src/components/PasswordInput/PasswordInput.js +0 -41
  322. package/src/components/PasswordMeter/PasswordMeter.js +0 -80
  323. package/src/components/Progress/Progress.js +0 -88
  324. package/src/components/Rating/Rating.js +0 -130
  325. package/src/components/Section/Section.js +0 -49
  326. package/src/components/Separator/Separator.js +0 -34
  327. package/src/components/Sidebar/Sidebar.js +0 -53
  328. package/src/components/Skiplink/Skiplink.js +0 -25
  329. package/src/components/Skiplink/SkiplinkItem.js +0 -25
  330. package/src/components/Spinner/Spinner.js +0 -65
  331. package/src/components/Stepper/StepperContainer.js +0 -33
  332. package/src/components/Stepper/StepperContent.js +0 -54
  333. package/src/components/Stepper/StepperDots.js +0 -27
  334. package/src/components/Stepper/StepperHeader.js +0 -27
  335. package/src/components/Stepper/StepperHeaderElement.js +0 -45
  336. package/src/components/Stepper/StepperNav.js +0 -27
  337. package/src/components/Table/Table.js +0 -68
  338. package/src/components/Timeline/TimelinePin.js +0 -59
  339. package/src/components/Timeline/TimelineWrapper.js +0 -21
  340. package/src/components/Toggle/Toggle.js +0 -27
  341. package/src/components/utils.js +0 -1
  342. package/src/index.js +0 -144
  343. package/static/favicons/android-chrome-192x192.png +0 -0
  344. package/static/favicons/android-chrome-512x512.png +0 -0
  345. package/static/favicons/apple-touch-icon.png +0 -0
  346. package/static/favicons/browserconfig.xml +0 -9
  347. package/static/favicons/favicon-16x16.png +0 -0
  348. package/static/favicons/favicon-32x32.png +0 -0
  349. package/static/favicons/favicon.ico +0 -0
  350. package/static/favicons/manifest.webmanifest +0 -21
  351. package/static/favicons/mstile-150x150.png +0 -0
  352. package/static/favicons/safari-pinned-tab.svg +0 -23
@@ -1,3188 +0,0 @@
1
- import { Util, Badge as Badge$1, Button as Button$1, Collapse as Collapse$1, NavbarBrand, Navbar, NavbarToggler, Jumbotron, Nav as Nav$1, FormGroup, Label, Input as Input$1, Card as Card$1 } from 'reactstrap';
2
- export { Alert, Breadcrumb, BreadcrumbItem, ButtonDropdown, ButtonGroup, ButtonToolbar, CardBody, CardColumns, CardDeck, CardFooter, CardGroup, CardHeader, CardImg, CardImgOverlay, CardLink, CardSubtitle, CardText, CardTitle, Carousel, CarouselCaption, CarouselControl, CarouselIndicators, CarouselItem, Col, Container, Dropdown, DropdownItem, DropdownMenu, DropdownToggle, Fade, Form, FormFeedback, FormGroup, FormText, InputGroup, InputGroupAddon, InputGroupButtonDropdown, InputGroupText, Jumbotron, Label, ListGroup, ListGroupItem, ListGroupItemHeading, ListGroupItemText, Media, Modal, ModalBody, ModalFooter, ModalHeader, NavItem, NavLink, Navbar, NavbarBrand, NavbarToggler, PaginationItem as PagerItem, PaginationLink as PagerLink, Popover, PopoverBody, PopoverHeader, PopperContent, PopperTargetHelper, Row, TabContent, TabPane, Table, Tooltip, UncontrolledAlert, UncontrolledButtonDropdown, UncontrolledCarousel, UncontrolledCollapse, UncontrolledDropdown, UncontrolledTooltip, Util } from 'reactstrap';
3
- export { default as Scrollspy } from 'react-scrollspy';
4
- import React, { Component, PureComponent, Fragment } from 'react';
5
- import PropTypes from 'prop-types';
6
- import Transition from 'react-transition-group/Transition';
7
- import { StickyProvider, Sticky } from 'react-stickup';
8
-
9
- function _defineProperty(obj, key, value) {
10
- if (key in obj) {
11
- Object.defineProperty(obj, key, {
12
- value: value,
13
- enumerable: true,
14
- configurable: true,
15
- writable: true
16
- });
17
- } else {
18
- obj[key] = value;
19
- }
20
-
21
- return obj;
22
- }
23
-
24
- function _extends() {
25
- _extends = Object.assign || function (target) {
26
- for (var i = 1; i < arguments.length; i++) {
27
- var source = arguments[i];
28
-
29
- for (var key in source) {
30
- if (Object.prototype.hasOwnProperty.call(source, key)) {
31
- target[key] = source[key];
32
- }
33
- }
34
- }
35
-
36
- return target;
37
- };
38
-
39
- return _extends.apply(this, arguments);
40
- }
41
-
42
- function _inheritsLoose(subClass, superClass) {
43
- subClass.prototype = Object.create(superClass.prototype);
44
- subClass.prototype.constructor = subClass;
45
- subClass.__proto__ = superClass;
46
- }
47
-
48
- function _objectWithoutPropertiesLoose(source, excluded) {
49
- if (source == null) return {};
50
- var target = {};
51
- var sourceKeys = Object.keys(source);
52
- var key, i;
53
-
54
- for (i = 0; i < sourceKeys.length; i++) {
55
- key = sourceKeys[i];
56
- if (excluded.indexOf(key) >= 0) continue;
57
- target[key] = source[key];
58
- }
59
-
60
- return target;
61
- }
62
-
63
- function _assertThisInitialized(self) {
64
- if (self === void 0) {
65
- throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
66
- }
67
-
68
- return self;
69
- }
70
-
71
- function createCommonjsModule(fn, module) {
72
- return module = { exports: {} }, fn(module, module.exports), module.exports;
73
- }
74
-
75
- var classnames = createCommonjsModule(function (module) {
76
- /*!
77
- Copyright (c) 2017 Jed Watson.
78
- Licensed under the MIT License (MIT), see
79
- http://jedwatson.github.io/classnames
80
- */
81
-
82
- /* global define */
83
- (function () {
84
-
85
- var hasOwn = {}.hasOwnProperty;
86
-
87
- function classNames() {
88
- var classes = [];
89
-
90
- for (var i = 0; i < arguments.length; i++) {
91
- var arg = arguments[i];
92
- if (!arg) continue;
93
- var argType = typeof arg;
94
-
95
- if (argType === 'string' || argType === 'number') {
96
- classes.push(arg);
97
- } else if (Array.isArray(arg) && arg.length) {
98
- var inner = classNames.apply(null, arg);
99
-
100
- if (inner) {
101
- classes.push(inner);
102
- }
103
- } else if (argType === 'object') {
104
- for (var key in arg) {
105
- if (hasOwn.call(arg, key) && arg[key]) {
106
- classes.push(key);
107
- }
108
- }
109
- }
110
- }
111
-
112
- return classes.join(' ');
113
- }
114
-
115
- if ( module.exports) {
116
- classNames.default = classNames;
117
- module.exports = classNames;
118
- } else {
119
- window.classNames = classNames;
120
- }
121
- })();
122
- });
123
-
124
- var propTypes = {
125
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
126
- className: PropTypes.string
127
- };
128
- var defaultProps = {
129
- tag: 'div'
130
- };
131
- function Accordion(props) {
132
- var className = props.className,
133
- Tag = props.tag,
134
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
135
-
136
- var classes = classnames('collapse-div', className);
137
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
138
- className: classes
139
- }));
140
- }
141
- Accordion.propTypes = propTypes;
142
- Accordion.defaultProps = defaultProps;
143
-
144
- var propTypes$1 = {
145
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
146
- className: PropTypes.string,
147
- active: PropTypes.bool,
148
- onToggle: PropTypes.func
149
- };
150
- var defaultProps$1 = {
151
- tag: 'button'
152
- };
153
- function AccordionHeader(props) {
154
- var className = props.className,
155
- Tag = props.tag,
156
- active = props.active,
157
- onToggle = props.onToggle,
158
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "active", "onToggle"]);
159
-
160
- var classes = classnames('collapse-header');
161
- var toggleClasses = classnames(className, {
162
- collapsed: active
163
- });
164
- return /*#__PURE__*/React.createElement("div", {
165
- className: classes
166
- }, /*#__PURE__*/React.createElement(Tag, _extends({
167
- "data-toggle": "collapse",
168
- "aria-expanded": active ? 'true' : 'false',
169
- className: toggleClasses,
170
- onClick: onToggle
171
- }, attributes)));
172
- }
173
- AccordionHeader.propTypes = propTypes$1;
174
- AccordionHeader.defaultProps = defaultProps$1;
175
-
176
- var _transitionStatusToCl;
177
- var TransitionTimeouts = Util.TransitionTimeouts,
178
- TransitionPropTypeKeys = Util.TransitionPropTypeKeys,
179
- TransitionStatuses = Util.TransitionStatuses,
180
- pick = Util.pick,
181
- omit = Util.omit;
182
-
183
- var propTypes$2 = _extends({}, Transition.propTypes, {
184
- // eslint-disable-line react/forbid-foreign-prop-types
185
- children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
186
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
187
- className: PropTypes.string,
188
- active: PropTypes.bool,
189
- onToggle: PropTypes.func
190
- });
191
-
192
- var defaultProps$2 = _extends({}, Transition.defaultProps, {
193
- timeout: TransitionTimeouts.Collapse,
194
- tag: 'div'
195
- });
196
-
197
- var transitionStatusToClassHash = (_transitionStatusToCl = {}, _transitionStatusToCl[TransitionStatuses.ENTERING] = 'collapsing', _transitionStatusToCl[TransitionStatuses.ENTERED] = 'collapse show', _transitionStatusToCl[TransitionStatuses.EXITING] = 'collapsing', _transitionStatusToCl[TransitionStatuses.EXITED] = 'collapse', _transitionStatusToCl);
198
-
199
- function getTransitionClass(status) {
200
- return transitionStatusToClassHash[status] || 'collapse';
201
- }
202
-
203
- function getHeight(node) {
204
- return node.scrollHeight;
205
- }
206
-
207
- var AccordionBody = /*#__PURE__*/function (_Component) {
208
- _inheritsLoose(AccordionBody, _Component);
209
-
210
- function AccordionBody() {
211
- var _this;
212
-
213
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
214
- args[_key] = arguments[_key];
215
- }
216
-
217
- _this = _Component.call.apply(_Component, [this].concat(args)) || this;
218
-
219
- _defineProperty(_assertThisInitialized(_this), "state", {
220
- height: null
221
- });
222
-
223
- _defineProperty(_assertThisInitialized(_this), "onEntering", function (node, isAppearing) {
224
- _this.setState({
225
- height: getHeight(node)
226
- });
227
-
228
- _this.props.onEntering(node, isAppearing);
229
- });
230
-
231
- _defineProperty(_assertThisInitialized(_this), "onEntered", function (node, isAppearing) {
232
- _this.setState({
233
- height: null
234
- });
235
-
236
- _this.props.onEntered(node, isAppearing);
237
- });
238
-
239
- _defineProperty(_assertThisInitialized(_this), "onExit", function (node) {
240
- _this.setState({
241
- height: getHeight(node)
242
- });
243
-
244
- _this.props.onExit(node);
245
- });
246
-
247
- _defineProperty(_assertThisInitialized(_this), "onExiting", function (node) {
248
- // getting this variable triggers a reflow
249
- var _unused = node.offsetHeight; // eslint-disable-line no-unused-vars
250
-
251
- _this.setState({
252
- height: 0
253
- });
254
-
255
- _this.props.onExiting(node);
256
- });
257
-
258
- _defineProperty(_assertThisInitialized(_this), "onExited", function (node) {
259
- _this.setState({
260
- height: null
261
- });
262
-
263
- _this.props.onExited(node);
264
- });
265
-
266
- return _this;
267
- }
268
-
269
- var _proto = AccordionBody.prototype;
270
-
271
- _proto.render = function render() {
272
- var _this$props = this.props,
273
- className = _this$props.className,
274
- Tag = _this$props.tag,
275
- active = _this$props.active,
276
- children = _this$props.children,
277
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "tag", "active", "children"]);
278
-
279
- var height = this.state.height;
280
- var transitionProps = pick(attributes, TransitionPropTypeKeys);
281
- var childProps = omit(attributes, TransitionPropTypeKeys);
282
- return /*#__PURE__*/React.createElement(Transition, _extends({}, transitionProps, {
283
- in: active,
284
- onEntering: this.onEntering,
285
- onEntered: this.onEntered,
286
- onExit: this.onExit,
287
- onExiting: this.onExiting,
288
- onExited: this.onExited
289
- }), function (status) {
290
- var transitionClass = getTransitionClass(status);
291
- var classes = classnames(className, transitionClass);
292
- var style = height === null ? null : {
293
- height: height
294
- };
295
- return /*#__PURE__*/React.createElement(Tag, _extends({
296
- className: classes,
297
- style: _extends({}, childProps.style, style)
298
- }, childProps), /*#__PURE__*/React.createElement("div", {
299
- className: "collapse-body"
300
- }, children));
301
- });
302
- };
303
-
304
- return AccordionBody;
305
- }(Component);
306
- AccordionBody.propTypes = propTypes$2;
307
- AccordionBody.defaultProps = defaultProps$2;
308
-
309
- var propTypes$3 = {
310
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
311
- className: PropTypes.string
312
- };
313
- var defaultProps$3 = {
314
- tag: 'div'
315
- };
316
-
317
- var AvatarContainer = function AvatarContainer(props) {
318
- var className = props.className,
319
- Tag = props.tag,
320
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
321
-
322
- var wrapperClasses = classnames('d-flex align-items-center justify-content-around flex-wrap flex-sm-nowrap', className);
323
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
324
- className: wrapperClasses
325
- }));
326
- };
327
-
328
- AvatarContainer.propTypes = propTypes$3;
329
- AvatarContainer.defaultProps = defaultProps$3;
330
-
331
- var propTypes$4 = {
332
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
333
- className: PropTypes.string,
334
- wrapperClassName: PropTypes.string
335
- };
336
- var defaultProps$4 = {
337
- tag: 'ul'
338
- };
339
-
340
- var AvatarGroupContainer = function AvatarGroupContainer(props) {
341
- var className = props.className,
342
- Tag = props.tag,
343
- wrapperClassName = props.wrapperClassName,
344
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "wrapperClassName"]);
345
-
346
- var wrapperClasses = classnames('avatar-group-stacked', wrapperClassName);
347
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
348
- className: wrapperClasses
349
- }));
350
- };
351
-
352
- AvatarGroupContainer.propTypes = propTypes$4;
353
- AvatarGroupContainer.defaultProps = defaultProps$4;
354
-
355
- var propTypes$5 = {
356
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
357
- className: PropTypes.string
358
- };
359
- var defaultProps$5 = {
360
- tag: 'div'
361
- };
362
-
363
- var AvatarExtraText = function AvatarExtraText(props) {
364
- var className = props.className,
365
- Tag = props.tag,
366
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
367
-
368
- var wrapperClass = classnames('extra-text', className);
369
- return /*#__PURE__*/React.createElement(Tag, _extends({
370
- className: wrapperClass
371
- }, attributes));
372
- };
373
-
374
- AvatarExtraText.propTypes = propTypes$5;
375
- AvatarExtraText.defaultProps = defaultProps$5;
376
-
377
- var propTypes$6 = {
378
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
379
- className: PropTypes.string,
380
- href: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
381
- color: PropTypes.string,
382
- size: PropTypes.string
383
- };
384
- var defaultProps$6 = {
385
- tag: 'div'
386
- };
387
-
388
- var AvatarIcon = function AvatarIcon(props) {
389
- var _classNames;
390
-
391
- var className = props.className,
392
- Tag = props.tag,
393
- size = props.size,
394
- href = props.href,
395
- color = props.color,
396
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "size", "href", "color"]);
397
-
398
- var typeClass = classnames('avatar', (_classNames = {}, _classNames["size-" + size] = size, _classNames["avatar-" + color] = color, _classNames));
399
-
400
- if (href) {
401
- return /*#__PURE__*/React.createElement("a", _extends({
402
- href: href
403
- }, attributes, {
404
- className: typeClass
405
- }));
406
- }
407
-
408
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
409
- className: typeClass
410
- }));
411
- };
412
-
413
- AvatarIcon.propTypes = propTypes$6;
414
- AvatarIcon.defaultProps = defaultProps$6;
415
-
416
- var propTypes$7 = {
417
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
418
- className: PropTypes.string,
419
- presence: PropTypes.string
420
- };
421
- var defaultProps$7 = {
422
- tag: 'div'
423
- };
424
-
425
- var AvatarPresence = function AvatarPresence(props) {
426
- var _classNames;
427
-
428
- var className = props.className,
429
- Tag = props.tag,
430
- presence = props.presence,
431
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "presence"]);
432
-
433
- var typeClass = classnames('avatar-presence', (_classNames = {}, _classNames["" + presence] = presence, _classNames));
434
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
435
- className: typeClass
436
- }));
437
- };
438
-
439
- AvatarPresence.propTypes = propTypes$7;
440
- AvatarPresence.defaultProps = defaultProps$7;
441
-
442
- var propTypes$8 = {
443
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
444
- className: PropTypes.string,
445
- status: PropTypes.string
446
- };
447
- var defaultProps$8 = {
448
- tag: 'div'
449
- };
450
-
451
- var AvatarStatus = function AvatarStatus(props) {
452
- var _classNames;
453
-
454
- var className = props.className,
455
- Tag = props.tag,
456
- status = props.status,
457
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "status"]);
458
-
459
- var typeClass = classnames('avatar-status', (_classNames = {}, _classNames["" + status] = status, _classNames));
460
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
461
- className: typeClass
462
- }));
463
- };
464
-
465
- AvatarStatus.propTypes = propTypes$8;
466
- AvatarStatus.defaultProps = defaultProps$8;
467
-
468
- var propTypes$9 = {
469
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
470
- className: PropTypes.string,
471
- extra: PropTypes.string
472
- };
473
- var defaultProps$9 = {
474
- tag: 'div'
475
- };
476
-
477
- var AvatarWrapper = function AvatarWrapper(props) {
478
- var _classNames;
479
-
480
- var className = props.className,
481
- Tag = props.tag,
482
- extra = props.extra,
483
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "extra"]);
484
-
485
- var wrapperClass = classnames('avatar-wrapper', className, (_classNames = {}, _classNames["avatar-extra-" + extra] = extra, _classNames));
486
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
487
- className: wrapperClass
488
- }));
489
- };
490
-
491
- AvatarWrapper.propTypes = propTypes$9;
492
- AvatarWrapper.defaultProps = defaultProps$9;
493
-
494
- var propTypes$a = {
495
- color: PropTypes.string,
496
- pill: PropTypes.bool,
497
- tag: PropTypes.string,
498
- children: PropTypes.node,
499
- cssModule: PropTypes.object,
500
- className: PropTypes.string
501
- };
502
- var defaultProps$a = {
503
- color: 'secondary',
504
- pill: false,
505
- tag: 'span'
506
- };
507
-
508
- var Badge = function Badge(props) {
509
- var children = props.children;
510
- return /*#__PURE__*/React.createElement(Badge$1, props, children);
511
- };
512
-
513
- Badge.propTypes = propTypes$a;
514
- Badge.defaultProps = defaultProps$a;
515
-
516
- var propTypes$b = _extends({}, Button$1.propTypes, {
517
- icon: PropTypes.bool
518
- });
519
-
520
- var defaultProps$b = _extends({}, Button$1.defaultProps, {
521
- icon: false
522
- });
523
-
524
- var Button = function Button(_ref) {
525
- var icon = _ref.icon,
526
- className = _ref.className,
527
- attributes = _objectWithoutPropertiesLoose(_ref, ["icon", "className"]);
528
-
529
- var classes = classnames(className, {
530
- 'btn-icon': icon
531
- });
532
- return /*#__PURE__*/React.createElement(Button$1, _extends({
533
- className: classes
534
- }, attributes));
535
- };
536
-
537
- Button.propTypes = propTypes$b;
538
- Button.defaultProps = defaultProps$b;
539
-
540
- if (typeof window === 'undefined') {
541
- global.Element = typeof Element === 'undefined' ? function () {} : Element;
542
- }
543
-
544
- var propTypes$c = {
545
- className: PropTypes.string,
546
- scrollToRef: PropTypes.shape({
547
- current: PropTypes.instanceOf(Element)
548
- })
549
- };
550
-
551
- var Forward = function Forward(_ref) {
552
- var className = _ref.className,
553
- scrollToRef = _ref.scrollToRef,
554
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "scrollToRef"]);
555
-
556
- var classes = classnames(className, 'forward');
557
- return /*#__PURE__*/React.createElement("a", _extends({
558
- className: classes,
559
- onClick: function onClick() {
560
- return scrollToRef.current.scrollIntoView({
561
- behavior: 'smooth',
562
- block: 'start'
563
- });
564
- }
565
- }, attributes));
566
- };
567
-
568
- Forward.propTypes = propTypes$c;
569
-
570
- var propTypes$d = {
571
- children: PropTypes.node,
572
- className: PropTypes.string,
573
- color: PropTypes.string,
574
- highlight: PropTypes.bool,
575
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
576
- };
577
- var defaultProps$c = {
578
- color: '',
579
- highlight: false,
580
- tag: 'div'
581
- };
582
-
583
- var Callout = function Callout(_ref) {
584
- var children = _ref.children,
585
- color = _ref.color,
586
- highlight = _ref.highlight,
587
- Tag = _ref.tag,
588
- attributes = _objectWithoutPropertiesLoose(_ref, ["children", "color", "highlight", "tag"]);
589
-
590
- var classes = classnames('callout', color, {
591
- 'callout-highlight': highlight
592
- });
593
- return /*#__PURE__*/React.createElement(Tag, _extends({
594
- className: classes
595
- }, attributes), children);
596
- };
597
-
598
- Callout.propTypes = propTypes$d;
599
- Callout.defaultProps = defaultProps$c;
600
-
601
- var propTypes$e = {
602
- bigText: PropTypes.bool,
603
- className: PropTypes.string,
604
- children: PropTypes.node,
605
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
606
- };
607
- var defaultProps$d = {
608
- bigText: false,
609
- tag: 'p'
610
- };
611
-
612
- var CalloutText = function CalloutText(_ref) {
613
- var bigText = _ref.bigText,
614
- children = _ref.children,
615
- className = _ref.className,
616
- Tag = _ref.tag,
617
- attributes = _objectWithoutPropertiesLoose(_ref, ["bigText", "children", "className", "tag"]);
618
-
619
- var classes = classnames(className, {
620
- 'callout-big-text': bigText
621
- });
622
- return /*#__PURE__*/React.createElement(Tag, _extends({
623
- className: classes
624
- }, attributes), children);
625
- };
626
-
627
- CalloutText.propTypes = propTypes$e;
628
- CalloutText.defaultProps = defaultProps$d;
629
-
630
- var propTypes$f = {
631
- children: PropTypes.node,
632
- className: PropTypes.string,
633
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
634
- };
635
- var defaultProps$e = {
636
- tag: 'div'
637
- };
638
-
639
- var CalloutTitle = function CalloutTitle(_ref) {
640
- var children = _ref.children,
641
- className = _ref.className,
642
- Tag = _ref.tag,
643
- attributes = _objectWithoutPropertiesLoose(_ref, ["children", "className", "tag"]);
644
-
645
- var classes = classnames(className, 'callout-title');
646
- return /*#__PURE__*/React.createElement(Tag, _extends({
647
- className: classes
648
- }, attributes), children);
649
- };
650
-
651
- CalloutTitle.propTypes = propTypes$f;
652
- CalloutTitle.defaultProps = defaultProps$e;
653
-
654
- var propTypes$g = _extends({}, Collapse$1.propTypes, {
655
- // eslint-disable-line react/forbid-foreign-prop-types
656
-
657
- /** Indica se il componente Collapse è usato all'interno di un componente Header */
658
- header: PropTypes.bool,
659
-
660
- /** Indica se il menu HeaderNav sia aperto o meno. Usato unicamente nel caso della HeaderNav, ovvero con navbar e header entrambi true */
661
- inOpen: PropTypes.bool,
662
-
663
- /** Funzione chiamata su click di overlay dell'HeaderNav aperto. Usato unicamente nel caso della HeaderNav, ovvero con navbar e header entrambi true */
664
- onOverlayClick: PropTypes.func
665
- });
666
-
667
- var Collapse = function Collapse(_ref) {
668
- var header = _ref.header,
669
- className = _ref.className,
670
- navbar = _ref.navbar,
671
- children = _ref.children,
672
- isOpen = _ref.isOpen,
673
- onOverlayClick = _ref.onOverlayClick,
674
- attributes = _objectWithoutPropertiesLoose(_ref, ["header", "className", "navbar", "children", "isOpen", "onOverlayClick"]);
675
-
676
- if (navbar && header) {
677
- var _classes = classnames(className, 'navbar-collapsable', {
678
- expanded: isOpen
679
- });
680
-
681
- return /*#__PURE__*/React.createElement(Collapse$1, _extends({
682
- className: _classes,
683
- navbar: navbar,
684
- style: {
685
- display: isOpen ? 'block' : 'none'
686
- }
687
- }, attributes), /*#__PURE__*/React.createElement("div", {
688
- className: "overlay",
689
- style: {
690
- display: isOpen ? 'block' : 'none'
691
- },
692
- onClick: onOverlayClick
693
- }), /*#__PURE__*/React.createElement("div", {
694
- className: "close-div sr-only"
695
- }, /*#__PURE__*/React.createElement("button", {
696
- className: "btn close-menu",
697
- type: "button"
698
- }, /*#__PURE__*/React.createElement("span", {
699
- className: "it-close"
700
- }), "close")), children);
701
- }
702
-
703
- var classes = classnames(className, {
704
- 'link-list-wrapper': header
705
- });
706
- return /*#__PURE__*/React.createElement(Collapse$1, _extends({
707
- className: classes
708
- }, attributes, {
709
- navbar: navbar,
710
- isOpen: isOpen
711
- }), children);
712
- };
713
-
714
- Collapse.propTypes = propTypes$g;
715
- Collapse.defaultProps = Collapse$1.defaultProps;
716
-
717
- /**
718
- * HeaderContext
719
- * {
720
- * type: PropTypes.oneOf([SLIM, CENTER, NAVBAR]).isRequired
721
- * }
722
- */
723
-
724
- var HeaderContext = /*#__PURE__*/React.createContext({});
725
- var SLIM = 'slim';
726
- var CENTER = 'center';
727
- var NAVBAR = 'navbar';
728
-
729
- var propTypes$h = {
730
- /** Classi addizionali per il componente Header */
731
- className: PropTypes.string,
732
- // cannot use variables above here or storybook writes the full import stacktrace
733
-
734
- /** Tipo di componente Header: può essere solamente uno di questi tre tipi */
735
- type: PropTypes.oneOf(['slim', 'center', 'navbar']).isRequired,
736
-
737
- /** Riduce la grandezza del componente Header. Funziona solamente con Header "center". */
738
- small: PropTypes.bool,
739
-
740
- /** Imposta il tema per il componente Header. Per gli Header di tipo "slim" o "center"
741
- * il valore di default è "dark". Per l'Header di tipo "nav" il tema di default è "light"
742
- * in mobile, mentre "dark" in versione desktop.
743
- */
744
- theme: PropTypes.oneOf(['', 'light', 'dark'])
745
- };
746
- var defaultProps$f = {
747
- small: false
748
- };
749
-
750
- var Header = function Header(_ref) {
751
- var _classNames;
752
-
753
- var className = _ref.className,
754
- small = _ref.small,
755
- theme = _ref.theme,
756
- type = _ref.type,
757
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "small", "theme", "type"]);
758
-
759
- // use context here as theme
760
- var classes = classnames(className, (_classNames = {}, _classNames["it-header-" + type + "-wrapper"] = type, _classNames['it-small-header'] = type === CENTER && small, _classNames["theme-" + theme] = type !== NAVBAR && theme, _classNames['theme-dark-mobile'] = type === NAVBAR && theme === 'dark', _classNames['theme-light-desk'] = type === NAVBAR && theme === 'light', _classNames));
761
- return /*#__PURE__*/React.createElement(HeaderContext.Provider, {
762
- value: {
763
- type: type
764
- }
765
- }, /*#__PURE__*/React.createElement("div", _extends({
766
- className: classes
767
- }, attributes)));
768
- };
769
-
770
- Header.propTypes = propTypes$h;
771
- Header.defaultProps = defaultProps$f;
772
-
773
- var propTypes$i = {
774
- /** Aggiunge un ombra per enfatizzare il componente rispetto alla pagina in cui è contenuto */
775
- shadow: PropTypes.bool,
776
-
777
- /** Aggiunge il comportamento "sticky" ai componenti Header contenuti */
778
- sticky: PropTypes.bool,
779
-
780
- /** Classi addizionali per il componente Headers */
781
- className: PropTypes.string
782
- };
783
- var defaultProps$g = {
784
- shadow: false,
785
- sticky: false
786
- };
787
-
788
- var Headers = function Headers(_ref) {
789
- var className = _ref.className,
790
- shadow = _ref.shadow,
791
- sticky = _ref.sticky,
792
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "shadow", "sticky"]);
793
-
794
- var classes = classnames('it-header-wrapper', {
795
- 'it-shadow': shadow,
796
- 'it-header-sticky': sticky
797
- }, className);
798
-
799
- if (!sticky) {
800
- return /*#__PURE__*/React.createElement("div", _extends({
801
- className: classes
802
- }, attributes));
803
- }
804
-
805
- return /*#__PURE__*/React.createElement(StickyProvider, null, /*#__PURE__*/React.createElement(Sticky, {
806
- style: {
807
- position: 'sticky',
808
- zIndex: 2
809
- }
810
- }, /*#__PURE__*/React.createElement("div", _extends({
811
- className: classes
812
- }, attributes))));
813
- };
814
-
815
- Headers.propTypes = propTypes$i;
816
- Headers.defaultProps = defaultProps$g;
817
-
818
- var iconSprite = 'data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctZG93biIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTcuOSAxMy4ybC01LjQgNS4zVjNoLTF2MTUuNWwtNS40LTUuMy0uNy43IDYuNiA2LjUgNi42LTYuNXpNMTIgMTl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctZG93bi1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1LjYgMTMuMmwuNy43LTQuMyA0LjMtNC4zLTQuMy43LS43IDMuMSAzLjFWN2gxdjkuMnpNMjIgMTJBMTAgMTAgMCAxMTEyIDJhMTAgMTAgMCAwMTEwIDEwem0tMSAwYTkgOSAwIDEwLTkgOSA5IDkgMCAwMDktOXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1hcnJvdy1kb3duLXRyaWFuZ2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik05LjIgMTJoNS42YTEgMSAwIDAxLjcgMS43TDEyIDE3LjNsLTMuNS0zLjZhMSAxIDAgMDEuNy0xLjd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctbGVmdCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEgMTEuNUg1LjVsNS4zLTUuNC0uNy0uN0wzLjYgMTJsNi41IDYuNi43LS43LTUuMy01LjRIMjF6TTUgMTJ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctbGVmdC1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTcuNyAxMS41SDE3djFINy44bDMgMy4xLS43LjdMNS44IDEybDQuMy00LjMuNy43ek0yMiAxMkExMCAxMCAwIDExMTIgMmExMCAxMCAwIDAxMTAgMTB6bS0xIDBhOSA5IDAgMTAtOSA5IDkgOSAwIDAwOS05eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWFycm93LWxlZnQtdHJpYW5nbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDkuMnY1LjZhMSAxIDAgMDEtMS43LjdMNi44IDEybDMuNS0zLjVhMSAxIDAgMDExLjcuN3oiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1hcnJvdy1yaWdodCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTMuOSA1LjRsLS43LjcgNS4zIDUuNEgzdjFoMTUuNWwtNS4zIDUuNC43LjcgNi42LTYuNnpNMTkgMTJ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctcmlnaHQtY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMy45IDcuN2w0LjMgNC4zLTQuMyA0LjMtLjctLjcgMy4xLTMuMUg3di0xaDkuMmwtMy0zLjF6TTIyIDEyQTEwIDEwIDAgMTExMiAyYTEwIDEwIDAgMDExMCAxMHptLTEgMGE5IDkgMCAxMC05IDkgOSA5IDAgMDA5LTl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctcmlnaHQtdHJpYW5nbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDE0LjhWOS4yYTEgMSAwIDAxMS43LS43bDMuNSAzLjUtMy41IDMuNWExIDEgMCAwMS0xLjctLjd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYXJyb3ctdXAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE4LjYgMTAuMUwxMiAzLjVsLTYuNiA2LjYuNy43IDUuNC01LjNWMjFoMVY1LjVsNS40IDUuM3pNMTIgNXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1hcnJvdy11cC1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDUuOGw0LjMgNC4zLS43LjctMy4xLTMuMVYxN2gtMVY3LjhsLTMuMSAzLS43LS43ek0yMiAxMkExMCAxMCAwIDExMTIgMmExMCAxMCAwIDAxMTAgMTB6bS0xIDBhOSA5IDAgMTAtOSA5IDkgOSAwIDAwOS05eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWFycm93LXVwLXRyaWFuZ2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNC44IDEySDkuMmExIDEgMCAwMS0uNy0xLjdMMTIgNi44bDMuNSAzLjVhMSAxIDAgMDEtLjcgMS43eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWJhbiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMkM2LjUgMiAyIDYuNSAyIDEyczQuNSAxMCAxMCAxMCAxMC00LjUgMTAtMTBTMTcuNSAyIDEyIDJ6TTUuMiAxNy42QzMuOCAxNiAzLjEgMTQgMy4xIDExLjlzLjctNC4xIDIuMS01LjdsMTIuNyAxMi43QzE0IDIyIDguMyAyMS40IDUuMiAxNy42em0xMy40LjVMNS45IDUuNGMzLjctMy4zIDkuNC0zIDEyLjcuNyAzLjEgMy40IDMuMSA4LjYgMCAxMnoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1iZWhhbmNlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBkPSJNNy44MyA1Ljc1YTggOCAwIDAxMS42LjE1IDMuMzggMy4zOCAwIDAxMS4yNC41MWMuMzQ1LjIzMy42Mi41NTQuOC45My4yMDIuNDU2LjI5OC45NTIuMjggMS40NWEyLjY4IDIuNjggMCAwMS0uNDIgMS41NCAzLjA1IDMuMDUgMCAwMS0xLjI1IDEgMi45MiAyLjkyIDAgMDExLjY4IDEuMTVjLjM5My41OS41OSAxLjI5LjU2IDJhMy4zOSAzLjM5IDAgMDEtLjMyIDEuNTkgMy4wOCAzLjA4IDAgMDEtMSAxLjExIDQuMjcgNC4yNyAwIDAxLTEuNC42NEE2IDYgMCAwMTggMThIMlY1Ljc1aDUuODN6bS0uMzUgNWEyIDIgMCAwMDEuMTktLjM1Yy4zMjgtLjI3LjUtLjY4Ny40Ni0xLjExQTEuNDcgMS40NyAwIDAwOSA4LjU0YTEuMTYgMS4xNiAwIDAwLS40Mi0uNDNBMS44IDEuOCAwIDAwOCA3LjlhMy4yNiAzLjI2IDAgMDAtLjctLjA2SDQuNzR2Mi44N2wyLjc0LjA0em0uMTUgNS4yMmMuMjUyLjAwMy41MDMtLjAyLjc1LS4wN2EyIDIgMCAwMC42Mi0uMyAxLjM5IDEuMzkgMCAwMC40NC0uNDkgMS43MyAxLjczIDAgMDAuMTYtLjhBMS42NCAxLjY0IDAgMDA5LjA5IDEzYTIuMzMgMi4zMyAwIDAwLTEuNDEtLjRINC43NHYzLjM4bDIuODktLjAxem04LjU0LS4wOGEyLjE4IDIuMTggMCAwMDEuNTguNTQgMi4yNCAyLjI0IDAgMDAxLjI1LS4zNyAxLjYgMS42IDAgMDAuNjUtLjc5aDIuMTVhNC4wNiA0LjA2IDAgMDEtMS41OCAyLjI5IDQuNjQgNC42NCAwIDAxLTIuNTguNjkgNS4yMyA1LjIzIDAgMDEtMS45LS4zMyA0IDQgMCAwMS0yLjMzLTIuNDQgNS4yNSA1LjI1IDAgMDEtLjMyLTEuODkgNS4xMiA1LjEyIDAgMDEuMzMtMS44NiA0LjE0IDQuMTQgMCAwMS45My0xLjQ5IDQuNDggNC40OCAwIDAxMS40NC0xIDQuNTkgNC41OSAwIDAxMS44NS0uMzYgNC4zMSA0LjMxIDAgMDEyIC40NEE0IDQgMCAwMTIxIDEwLjVjLjM3LjUwNS42MzYgMS4wOC43OCAxLjY5YTYuMTggNi4xOCAwIDAxLjE3IDJoLTYuMzhhMi41IDIuNSAwIDAwLjYgMS43ek0xOSAxMS4yMmExLjgzIDEuODMgMCAwMC0xLjM4LS40OSAyIDIgMCAwMC0xIC4yIDEuOCAxLjggMCAwMC0uNjIuNDkgMS42MiAxLjYyIDAgMDAtLjMzLjYyIDIuODcgMi44NyAwIDAwLS4xMS41OWg0YTIuNCAyLjQgMCAwMC0uNTYtMS40MXptLTMuOTMtNC42NWg0Ljk4djEuMjFoLTQuOThWNi41N3oiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWJvb2ttYXJrIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xOCAyMi43bC02LTYtNiA2VjJoMTJ2MjAuN3ptLTYtNy40bDUgNVYzSDd2MTcuM2w1LTV6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYm94IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMSAySDN2NGgxdjE2aDE2VjZoMVYyem0tMiAxOUg1VjZoMTR2MTV6bTEtMTZINFYzaDE2djJ6Ii8+PHBhdGggZD0iTTggOGg4djFIOHoiLz48Zz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9nPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtYnVyZ2VyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMiA1djFIMlY1ek0yIDEyLjVoMjB2LTFIMnpNMiAxOWgyMHYtMUgyeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNhbGVuZGFyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMC41IDRIMTdWM2gtMXYxSDhWM0g3djFIMy41QTEuNSAxLjUgMCAwMDIgNS41djEzQTEuNSAxLjUgMCAwMDMuNSAyMGgxN2ExLjUgMS41IDAgMDAxLjUtMS41di0xM0ExLjUgMS41IDAgMDAyMC41IDR6bS41IDE0LjVhLjUuNSAwIDAxLS41LjVoLTE3YS41LjUgMCAwMS0uNS0uNXYtMTNhLjUuNSAwIDAxLjUtLjVIN3YxaDFWNWg4djFoMVY1aDMuNWEuNS41IDAgMDEuNS41ek00IDhoMTZ2MUg0eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNhbWVyYSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjAuNSAyMGgtMTdBMS41IDEuNSAwIDAxMiAxOC41di0xMEExLjUgMS41IDAgMDEzLjUgN2g0LjNsMS41LTIuM2ExLjUgMS41IDAgMDExLjItLjdoM2ExLjUgMS41IDAgMDExLjIuN0wxNi4yIDdoNC4zQTEuNSAxLjUgMCAwMTIyIDguNXYxMGExLjUgMS41IDAgMDEtMS41IDEuNXpNMy41IDhhLjUuNSAwIDAwLS41LjV2MTBhLjUuNSAwIDAwLjUuNWgxN2EuNS41IDAgMDAuNS0uNXYtMTBhLjUuNSAwIDAwLS41LS41aC00LjhsLTEuOC0yLjgtLjQtLjJoLTNsLS40LjJMOC4zIDh6TTEyIDE4YTUgNSAwIDExNS01IDUgNSAwIDAxLTUgNXptMC05YTQgNCAwIDEwNCA0IDQgNCAwIDAwLTQtNHpNNyA1SDR2MWgzeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNhcmQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIwLjUgNWgtMTdBMS41IDEuNSAwIDAwMiA2LjV2MTFBMS41IDEuNSAwIDAwMy41IDE5aDE3YTEuNSAxLjUgMCAwMDEuNS0xLjV2LTExQTEuNSAxLjUgMCAwMDIwLjUgNXpNMyA5aDE4djNIM3ptMTggOC41YS41LjUgMCAwMS0uNS41aC0xN2EuNS41IDAgMDEtLjUtLjVWMTNoMTh6TTMgOFY2LjVhLjUuNSAwIDAxLjUtLjVoMTdhLjUuNSAwIDAxLjUuNVY4em01IDdINHYtMWg0eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNoYXJ0LWxpbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIxIDIwdjFIM1YzaDF2MTd6Ii8+PHBhdGggZD0iTTEwLjUgOS4ybDIuNSAyLjUgNi02djMuOGgxVjRoLTUuNXYxaDMuOEwxMyAxMC4zbC0yLjUtMi41LTQuMyA0LjMuNi44eiIvPjxnPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L2c+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1jaGVjayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOS42IDE2LjlMNCAxMS40bC44LS43IDQuOCA0LjggOC41LTguNC43Ljd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtY2hlY2stY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNy4xIDcuOWwuNy43LTcuOCA3LjYtNC43LTQuNi43LS43IDQgMy45ek0yMiAxMkExMCAxMCAwIDExMTIgMmExMCAxMCAwIDAxMTAgMTB6bS0xIDBhOSA5IDAgMTAtOSA5IDkgOSAwIDAwOS05eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNoZXZyb24tbGVmdCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNiAxNy4yTDkgMTEuNiAxNC42IDZsLjguNy00LjkgNC45IDQuOSA0Ljl6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1jaGV2cm9uLXJpZ2h0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik05LjggMTcuMmwtLjgtLjcgNC45LTQuOUw5IDYuN2wuOC0uNyA1LjYgNS42eiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtY2xpcCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTEgMjJhMi45IDIuOSAwIDAxLTMtM1Y2YTQgNCAwIDAxOCAwdjEwaC0xVjZhMyAzIDAgMDAtNiAwdjEzYTIgMiAwIDAwNCAwVjhhMSAxIDAgMDAtMiAwdjhoLTFWOGEyIDIgMCAwMTQgMHYxMWEyLjkgMi45IDAgMDEtMyAzeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNsb2NrIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMS41IDVoMXY3LjVIN3YtMWg0LjV6TTIyIDEyQTEwIDEwIDAgMTExMiAyYTEwIDEwIDAgMDExMCAxMHptLTEgMGE5IDkgMCAxMC05IDkgOSA5IDAgMDA5LTl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtY2xvc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjcgMTJsMy43IDMuNi0uOC44LTMuNi0zLjctMy42IDMuNy0uOC0uOCAzLjctMy42LTMuNy0zLjYuOC0uOCAzLjYgMy43IDMuNi0zLjcuOC44eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNsb3NlLWJpZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIuNyAxMmw2LjcgNi42LS44LjgtNi42LTYuNy02LjYgNi43LS44LS44IDYuNy02LjYtNi43LTYuNi44LS44IDYuNiA2LjcgNi42LTYuNy44Ljh6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtY2xvc2UtY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNi4zIDguM0wxMi42IDEybDMuNyAzLjYtLjcuNy0zLjctMy42LTMuNiAzLjYtLjctLjcgMy42LTMuNi0zLjYtMy43LjctLjcgMy42IDMuNyAzLjctMy43ek0yMiAxMkExMCAxMCAwIDExMTIgMmExMCAxMCAwIDAxMTAgMTB6bS0xIDBhOSA5IDAgMTAtOSA5IDkgOSAwIDAwOS05eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNvZGUtY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xOSAxMmwtMi45IDIuOS0uNy0uOCAyLjEtMi4xLTIuMS0yLjEuNy0uOHpNNy45IDkuMUw1IDEybDIuOSAyLjkuNy0uOEw2LjUgMTJsMi4xLTIuMXpNMjIgMTJBMTAgMTAgMCAxMTEyIDJhMTAgMTAgMCAwMTEwIDEwem0tMSAwYTkgOSAwIDEwLTkgOSA5IDkgMCAwMDktOXpNOS42IDE2LjVsMSAuMyAzLjctOS4zLS45LS4zeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNvbGxhcHNlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNi41IDE1LjRsLTQuOS00LjktNC45IDQuOS0uNy0uOEwxMS42IDlsNS42IDUuNnoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNvbW1lbnQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE5IDNINWEyIDIgMCAwMC0yIDJ2MTBhMiAyIDAgMDAyIDJoMnY1LjRsMS43LTEuNyAzLjctMy43SDE5YTIgMiAwIDAwMi0yVjVhMiAyIDAgMDAtMi0yem0xIDEyYS45LjkgMCAwMS0xIDFoLTdsLTQgNHYtNEg1YS45LjkgMCAwMS0xLTFWNWEuOS45IDAgMDExLTFoMTRhLjkuOSAwIDAxMSAxek05IDEwYS45LjkgMCAwMS0xIDEgLjkuOSAwIDAxLTEtMSAuOS45IDAgMDExLTEgLjkuOSAwIDAxMSAxem00IDBhMSAxIDAgMDEtMiAwIDEgMSAwIDAxMiAwem00IDBhMSAxIDAgMDEtMiAwIDEgMSAwIDAxMiAweiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWNvcHkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE5LjUgNEgxOHYtLjZBMS41IDEuNSAwIDAwMTYuNSAyaC0xMUExLjUgMS41IDAgMDA0IDMuNHYxNS4yQTEuNSAxLjUgMCAwMDUuNSAyMEg3di42QTEuNSAxLjUgMCAwMDguNSAyMmgxMWExLjUgMS41IDAgMDAxLjUtMS40VjUuNEExLjUgMS41IDAgMDAxOS41IDR6TTUgMTguNlYzLjRhLjUuNSAwIDAxLjUtLjRoMTFhLjUuNSAwIDAxLjUuNHYxNS4yYS41LjUgMCAwMS0uNS40aC0xMWEuNS41IDAgMDEtLjUtLjR6bTE1IDJhLjUuNSAwIDAxLS41LjRoLTExYS41LjUgMCAwMS0uNS0uNFYyMGg4LjVhMS41IDEuNSAwIDAwMS41LTEuNFY1aDEuNWEuNS41IDAgMDEuNS40eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWRlbGV0ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTUuNSA0di0uNWMwLS44LS43LTEuNS0xLjUtMS41aC00Yy0uOCAwLTEuNS43LTEuNSAxLjVWNEgzdjFoMnYxNS41YzAgLjguNyAxLjUgMS41IDEuNWgxMWMuOCAwIDEuNS0uNyAxLjUtMS41VjVoMlY0aC01LjV6bS02LS41YzAtLjMuMi0uNS41LS41aDRjLjMgMCAuNS4yLjUuNVY0aC01di0uNXptOC41IDE3YzAgLjMtLjIuNS0uNS41aC0xMWMtLjMgMC0uNS0uMi0uNS0uNVY1aDEydjE1LjV6Ii8+PHBhdGggZD0iTTExLjUgOGgxdjEwaC0xek04IDhoMXYxMEg4ek0xNSA4aDF2MTBoLTF6Ii8+PGc+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvZz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWRlc2lnbmVycy1pdGFsaWEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTguNyAyMC4ydi0xM2gzLjZ2MTMuMWwtMy42LS4xek0yMyAxMC4xaC0zLjN2Ni41YzAgLjIuMS40LjMuNnMuNC4yLjguMmgyLjFsLjIgMi44Yy0xLjIuMy0yLjEuNC0yLjguNC0xLjYgMC0yLjctLjMtMy4zLTEuMS0uNi0uNy0uOS0yLS45LTMuOXYtMTJoMy42djMuNkgyM3YyLjl6bS0xOS44IDFjLS42IDAtMS4yLS4yLTEuNi0uNi0uNC0uNC0uNi0uOS0uNi0xLjVzLjItMS4xLjYtMS41Yy40LS41LjktLjcgMS42LS43czEuMS4yIDEuNS42Yy40LjUuNiAxIC42IDEuNnMtLjIgMS4xLS42IDEuNWMtLjQuNC0uOS42LTEuNS42eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWRvd25sb2FkIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMiAxNC4yTDcuNyA5LjlsLjctLjcgMy4xIDMuMVYzaDF2OS4ybDMuMS0zIC43Ljd6bTctMi4ydjcuNWEuNS41IDAgMDEtLjUuNWgtMTNhLjUuNSAwIDAxLS41LS41VjEySDR2Ny41QTEuNSAxLjUgMCAwMDUuNSAyMWgxM2ExLjUgMS41IDAgMDAxLjUtMS41VjEyeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWVycm9yIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMS41IDE0LjJWNS43aDEuMnY4LjV6bS0uMSA0LjFoMS4ydi0xLjhoLTEuMnpNMjIgNy45djguM0wxNi4xIDIySDcuOUwyIDE2LjJWNy45TDcuOSAyaDguMnptLTEgLjRMMTUuNyAzSDguM0wzIDguM3Y3LjVMOC4zIDIxaDcuNGw1LjMtNS4yeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWV4Y2hhbmdlLWNpcmNsZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMmExMCAxMCAwIDEwMTAgMTBBMTAgMTAgMCAwMDEyIDJ6bTAgMTlhOSA5IDAgMTE5LTkgOSA5IDAgMDEtOSA5em01LjEtOC45bC44LjgtNC4zIDQuM2ExLjUgMS41IDAgMDEtMS4xLjQgMS41IDEuNSAwIDAxLTEuMS0uNEw5IDE0LjdWMTdIOHYtNGg0djFIOS43bDIuNCAyLjVoLjh6bS02LTQuNmwtNC4yIDQuNC0uOC0uOCA0LjMtNC4zYTEuNSAxLjUgMCAwMTEuMS0uNCAxLjUgMS41IDAgMDExLjEuNEwxNSA5LjNWN2gxdjRoLTR2LTFoMi4zbC0yLjQtMi41aC0uOHoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1leHBhbmQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTExLjYgMTUuNEw2IDkuOGwuNy0uOCA0LjkgNC45TDE2LjUgOWwuNy44eiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtZXh0ZXJuYWwtbGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEgM3Y2aC0xVjQuN2wtNy42IDcuNy0uOC0uOEwxOS4zIDRIMTVWM3ptLTQgMTYuNWEuNS41IDAgMDEtLjUuNWgtMTJhLjUuNSAwIDAxLS41LS41di0xMmEuNS41IDAgMDEuNS0uNUgxMlY2SDQuNUExLjUgMS41IDAgMDAzIDcuNXYxMkExLjUgMS41IDAgMDA0LjUgMjFoMTJhMS41IDEuNSAwIDAwMS41LTEuNVYxMmgtMXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1mYWNlYm9vayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTEzLjU1IDIydi05LjExaDMuMDdsLjQ2LTMuNTZoLTMuNTNWNy4wNWMwLTEgLjI5LTEuNzMgMS43Ny0xLjczaDEuODdWMi4xNEEyNS4xNCAyNS4xNCAwIDAwMTQuNDUgMmMtMi43MiAwLTQuNTggMS42Ni00LjU4IDQuN3YyLjYySDYuODF2My41N2gzLjA2VjIyaDMuNjh6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1mYWNlYm9vay1zcXVhcmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0yMCAzSDRhMSAxIDAgMDAtMSAxdjE2YTEgMSAwIDAwMSAxaDguNjN2LTYuOTVoLTIuMzd2LTIuNzRoMi4zNHYtMmEzLjI4IDMuMjggMCAwMTMuNS0zLjZjLjcwNSAwIDEuNDEuMDQgMi4xMS4xMnYyLjQ0aC0xLjQ0Yy0xLjEzIDAtMS4zNC41My0xLjM0IDEuMzJ2MS43NGgyLjdsLS4zNSAyLjcyaC0yLjM1djdIMjBhMSAxIDAgMDAxLTFWNGExIDEgMCAwMC0xLTF6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1maWxlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNC43IDJINi41QTEuNSAxLjUgMCAwMDUgMy41djE3QTEuNSAxLjUgMCAwMDYuNSAyMmgxMWExLjUgMS41IDAgMDAxLjUtMS41VjYuM3ptLjMgMS43TDE3LjMgNmgtMS44YS41LjUgMCAwMS0uNS0uNXpNMTcuNSAyMWgtMTFhLjUuNSAwIDAxLS41LS41di0xN2EuNS41IDAgMDEuNS0uNUgxNHYyLjVBMS41IDEuNSAwIDAwMTUuNSA3SDE4djEzLjVhLjUuNSAwIDAxLS41LjV6TTggOWg4djFIOHptMCAyaDh2MUg4em0wIDJoNHYxSDh6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtZmlsZXMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1LjcgMkg3LjVBMS41IDEuNSAwIDAwNiAzLjVWNGgtLjVBMS41IDEuNSAwIDAwNCA1LjV2MTVBMS41IDEuNSAwIDAwNS41IDIyaDExYTEuNSAxLjUgMCAwMDEuNS0xLjVWMjBoLjVhMS41IDEuNSAwIDAwMS41LTEuNVY2LjN6bS4zIDEuN0wxOC4zIDZoLTEuOGEuNS41IDAgMDEtLjUtLjV6bTEgMTYuOGEuNS41IDAgMDEtLjUuNWgtMTFhLjUuNSAwIDAxLS41LS41di0xNWEuNS41IDAgMDEuNS0uNUg2djEzLjVBMS41IDEuNSAwIDAwNy41IDIwSDE3em0xLjUtMS41aC0xMWEuNS41IDAgMDEtLjUtLjV2LTE1YS41LjUgMCAwMS41LS41SDE1djIuNUExLjUgMS41IDAgMDAxNi41IDdIMTl2MTEuNWEuNS41IDAgMDEtLjUuNXpNOSA5aDh2MUg5em0wIDJoOHYxSDl6bTAgMmg0djFIOXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1mbGFnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNy4xIDhsMy4zLTVINVYySDR2MjBoMXYtOWgxNS40bC0zLjMtNXpNNSA0aDEzLjZsLTIuNyA0IDIuNyA0SDVWNHoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1mbGlja3IiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxjaXJjbGUgY3g9IjYuNzMiIGN5PSIxMiIgcj0iNC43MyIvPjxjaXJjbGUgY3g9IjE3LjI3IiBjeT0iMTIiIHI9IjQuNzMiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWZsaWNrci1zcXVhcmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0yMCA0YTMuMjYgMy4yNiAwIDAwLTIuMzgtMUg2LjM4QTMuMjYgMy4yNiAwIDAwNCA0YTMuMjYgMy4yNiAwIDAwLTEgMi4zN3YxMS4yNUEzLjI2IDMuMjYgMCAwMDQgMjBhMy4yNiAzLjI2IDAgMDAyLjM5IDFoMTEuMjRBMy4zOCAzLjM4IDAgMDAyMSAxNy42MlY2LjM3QTMuMjYgMy4yNiAwIDAwMjAgNHptLTkuNTYgOS43N2EyLjUgMi41IDAgMDEtMy41MSAwIDIuNDkgMi40OSAwIDAxMC0zLjUyIDIuNSAyLjUgMCAwMTMuNTEgMCAyLjQ5IDIuNDkgMCAwMTAgMy41MnptNi42MSAwQTIuNDkgMi40OSAwIDAxMTIuODIgMTJhMi40OSAyLjQ5IDAgMDE0LjI0LTEuNzYgMi40OSAyLjQ5IDAgMDEwIDMuNTJsLS4wMS4wMXoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWZvbGRlciIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjAgNmgtOGwtMi0ySDRhMiAyIDAgMDAtMiAydjEyYTIgMiAwIDAwMiAyaDE2YTIgMiAwIDAwMi0yVjhhMiAyIDAgMDAtMi0yem0xIDEyYS45LjkgMCAwMS0xIDFINGEuOS45IDAgMDEtMS0xVjZhLjkuOSAwIDAxMS0xaDUuNmwxLjcgMS43LjMuM0gyMGEuOS45IDAgMDExIDF6TTQgOGgxNnYxSDR6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtZnVsbHNjcmVlbiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNCAyMGg0LjV2MUgzdi01LjVoMXpNMyA4LjVoMVY0aDQuNVYzSDN6TTIwIDIwaC00LjV2MUgyMXYtNS41aC0xek0xNS41IDN2MUgyMHY0LjVoMVYzeiIvPjxnPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L2c+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1mdW5uZWwiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE0IDIyaC0xdi04LjY1TDIwLjA1IDNINGw3IDEwLjM1VjIyaC0xdi04LjM1TDIuMDUgMkgyMmwtOCAxMS42NXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1naXRodWIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0xMiAyYTEwIDEwIDAgMDAtMy4xNiAxOS40OWMuNS4wOS42OC0uMjIuNjgtLjQ4di0xLjdDNi43MyAxOS45MSA2LjE0IDE4IDYuMTQgMThBMi42OSAyLjY5IDAgMDA1IDE2LjVjLS45MS0uNjIuMDctLjYxLjA3LS42MWEyLjEzIDIuMTMgMCAwMTEuNTMgMSAyLjE0IDIuMTQgMCAwMDIuOTEuODMgMi4xNiAyLjE2IDAgMDEuNjMtMS4zNGMtMi4xNC0uMjEtNC41Mi0xLjA3LTQuNTItNC45YTMuODkgMy44OSAwIDAxMS0yLjY5IDMuNTcgMy41NyAwIDAxLjEtMi42NHMuODQtLjI3IDIuNzUgMWE5LjYzIDkuNjMgMCAwMTUgMGMxLjkxLTEuMjkgMi43NS0xIDIuNzUtMSAuMzcuODM1LjQwNSAxLjc4LjEgMi42NGEzLjg5IDMuODkgMCAwMTEgMi42OWMwIDMuODQtMi4zNCA0LjY4LTQuNTcgNC45My40ODIuNDkuNzMgMS4xNjQuNjggMS44NXYyLjc1YzAgLjMzLjE4LjU4LjY5LjQ4QTEwIDEwIDAgMDAxMiAyeiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtaGVhcmluZyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjAgOWE2LjggNi44IDAgMDEtMy41IDZsLTIgMS4xYTMuMyAzLjMgMCAwMC0xLjUgMi43QTMuMiAzLjIgMCAwMTkuOCAyMmgtLjZhMy40IDMuNCAwIDAxLTMtMi4xbC45LS41QTIuMyAyLjMgMCAwMDkuMiAyMWguNmEyLjEgMi4xIDAgMDAxLjYtLjcgMiAyIDAgMDAuNi0xLjUgNCA0IDAgMDEyLTMuNWwyLTEuMkE1LjkgNS45IDAgMDAxOSA5YTYgNiAwIDAwLTYtNiA2IDYgMCAwMC00LjggMi40bC0uOC0uNkE3IDcgMCAwMTEzIDJhNyA3IDAgMDE3IDd6TTcuNSAxMkE1LjUgNS41IDAgMDAyIDYuNXYxYTQuNSA0LjUgMCAwMTAgOXYxQTUuNSA1LjUgMCAwMDcuNSAxMnpNNSAxMmEyLjkgMi45IDAgMDAtMy0zdjFhMiAyIDAgMDEwIDR2MWEyLjkgMi45IDAgMDAzLTN6bTUgMGE4IDggMCAwMC04LTh2MWE3IDcgMCAwMTAgMTR2MWE4IDggMCAwMDgtOHptNS45LjNhNC41IDQuNSAwIDAwMS4yLTMuMiA0LjUgNC41IDAgMDAtMS4yLTMuMiA0LjUgNC41IDAgMDAtMy4yLTEuNEE0LjggNC44IDAgMDA5LjUgNmwtLjMuMy4yLjNhOC44IDguOCAwIDAxMS4zIDN2LjRoLjRhMS41IDEuNSAwIDAxMCAzdjFhMi41IDIuNSAwIDAwMi41LTIuNSAyLjYgMi42IDAgMDAtMi0yLjUgOC41IDguNSAwIDAwLTEuMS0yLjYgMy45IDMuOSAwIDAxMi4yLS45IDMuNSAzLjUgMCAwMTIuNCAxIDMuNSAzLjUgMCAwMTEgMi42IDMuNSAzLjUgMCAwMS0xIDIuNnoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1oZWxwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMi44IDIyaC0xLjR2LTIuMWgxLjR6bS0uMS00LjloLTEuMmE5LjcgOS43IDAgMDEtLjEtMS43IDIuNyAyLjcgMCAwMS4zLTEuMiA1LjYgNS42IDAgMDEuNy0xLjNsMi4zLTIuMWE5LjYgOS42IDAgMDAxLjgtMi4xIDQuNSA0LjUgMCAwMC41LTIuMyAzIDMgMCAwMC0xLjEtMi42IDYuMiA2LjIgMCAwMC0zLjQtLjcgMjIuOSAyMi45IDAgMDAtMy42LjVsLTEgLjMtLjItMS4yaC4xYTE4LjEgMTguMSAwIDAxNC43LS44IDcuNCA3LjQgMCAwMTQuMyAxIDQuMiA0LjIgMCAwMTEuNCAzLjUgNSA1IDAgMDEtLjUgMi43IDguNiA4LjYgMCAwMS0xLjkgMi4yIDE5LjcgMTkuNyAwIDAwLTEuOCAxLjYgNi4yIDYuMiAwIDAwLS45IDEuMiAyLjMgMi4zIDAgMDAtLjQgMS40eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWhlbHAtY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMiAyYTEwIDEwIDAgMTAxMCAxMEExMCAxMCAwIDAwMTIgMnptMCAxOWE5IDkgMCAxMTktOSA5IDkgMCAwMS05IDl6bS0xLjItNC41SDEydjEuOGgtMS4yem00LjUtOGE0LjIgNC4yIDAgMDEtLjMgMS44IDUuNCA1LjQgMCAwMS0xLjMgMS40TDEyLjMgMTNhMi44IDIuOCAwIDAwLS40IDEuMnYuNkgxMWEzIDMgMCAwMS0uMi0xIDIuMSAyLjEgMCAwMS41LTEuMiA5IDkgMCAwMTEuNC0xLjQgNi40IDYuNCAwIDAwMS4yLTEuMyAyLjYgMi42IDAgMDAuMy0xLjQgMS43IDEuNyAwIDAwLS42LTEuNCAzLjUgMy41IDAgMDAtMi0uNEw5LjMgN2gtLjV2LS44YTEwLjIgMTAuMiAwIDAxMy0uNSA0LjkgNC45IDAgMDEyLjcuNiAyLjcgMi43IDAgMDEuOCAyLjJ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtaG9ybiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNSA5YTMgMyAwIDAwMCA2aC41TDcgMTkuM0EyLjUgMi41IDAgMDA5LjMgMjFoLjJhMS40IDEuNCAwIDAwMS4yLS42IDEuNCAxLjQgMCAwMC4yLTEuNGwtMS4zLTRoMS44bDguNiAzLjhWNC43TDExLjQgOXptNSAxMC4zYS43LjcgMCAwMS0uMS41bC0uNC4yaC0uMmExLjUgMS41IDAgMDEtMS40LTFsLTEuMy00aDEuOXpNNSAxNGEyIDIgMCAwMTAtNGg2djR6bTE0IDMuMmwtNy0zVjkuOGw3LTMuNXpNMjIgOXY2aC0xVjl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtaW5ib3giIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQgMnYxNGgzLjdsMSAyaDYuNmwxLTJIMjBWMkg0em0xNSAxM2gtMy4zbC0xIDJIOS4zbC0xLTJINVYzaDE0djEyeiIvPjxwYXRoIGQ9Ik0xOSAxN2gxdjVINHYtNWgxdjRoMTR6TTcgNWgxMHYxSDd6TTcgOGgxMHYxSDd6TTcgMTFoMTB2MUg3eiIvPjxnPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L2c+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1pbmZvLWNpcmNsZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMmExMCAxMCAwIDEwMTAgMTBBMTAgMTAgMCAwMDEyIDJ6bTAgMTlhOSA5IDAgMTE5LTkgOSA5IDAgMDEtOSA5em0tLjctMTVoMS41djJoLTEuNXptMCAzaDEuNXY5aC0xLjV6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtaW5zdGFncmFtIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBkPSJNMTIgNC42MmwtLjAxLjA4SDguMzVhNS4xMiA1LjEyIDAgMDAtMS42Ny4zMWMtLjM4LjE1LS43Mi4zODItMSAuNjgtLjI5OC4yOC0uNTMuNjItLjY4IDFhNS4xMiA1LjEyIDAgMDAtLjMgMS42OHY3LjI4Yy4wMS41Ny4xMTQgMS4xMzQuMzEgMS42Ny4xNS4zOC4zODIuNzIuNjggMSAuMjguMjk4LjYyLjUzIDEgLjY4LjUzNi4xOTYgMS4xLjMgMS42Ny4zMS45NS4wNSAxLjI0LjA1IDMuNjQuMDUgMi40IDAgMi42NC0uMDUgMy42NC0uMDVhNS4xMiA1LjEyIDAgMDAxLjY3LS4zMUEzLjA4IDMuMDggMCAwMDE5IDE3LjMxYTUuMTIgNS4xMiAwIDAwLjMtMS42OGMuMDUtLjk1LjA1LTEuMjQuMDUtMy42NCAwLTIuNC0uMDUtMi42NC0uMDUtMy42NGE1LjEyIDUuMTIgMCAwMC0uMzEtMS42NyAyLjc3IDIuNzcgMCAwMC0uNjgtMSAyLjc3IDIuNzcgMCAwMC0xLS42OCA1LjEyIDUuMTIgMCAwMC0xLjY3LS4zOEgxMnpNMTIgM3YuMDVoMy43MWE2LjkgNi45IDAgMDEyLjE5LjQyIDQuNjQgNC42NCAwIDAxMi42OCAyLjYzQTYuOSA2LjkgMCAwMTIxIDguMjljMCAuOTYuMDUgMS4yNy4wNSAzLjcxUzIxIDE0LjcxIDIxIDE1LjcxYTYuOSA2LjkgMCAwMS0uNDcgMi4yNCA0LjY0IDQuNjQgMCAwMS0yLjYzIDIuNjMgNi45IDYuOSAwIDAxLTIuMTkuNDJjLS45Ni4wNS0xLjI3LjA1LTMuNzEuMDVTOS4yOSAyMSA4LjI5IDIxYTYuOSA2LjkgMCAwMS0yLjE5LS40NyA0LjY0IDQuNjQgMCAwMS0yLjYzLTIuNjMgNi45IDYuOSAwIDAxLS40Mi0yLjE5VjEyIDguMjlhNi45IDYuOSAwIDAxLjQyLTIuMTlBNC42NCA0LjY0IDAgMDE2LjEgMy40MiA2LjkgNi45IDAgMDE4LjI5IDNIMTJ6bTAgNC4zOGE0LjYyIDQuNjIgMCAxMTAgOS4yNCA0LjYyIDQuNjIgMCAwMTAtOS4yNHpNMTIgMTVhMyAzIDAgMTAwLTYgMyAzIDAgMDAwIDZ6bTQuOC02LjcyYTEuMDggMS4wOCAwIDExMC0yLjE2IDEuMDggMS4wOCAwIDAxMCAyLjE2eiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQta2V5IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xOCAxMGEyIDIgMCAxMDIgMiAyIDIgMCAwMC0yLTJ6bTAgM2ExIDEgMCAxMTEtMSAuOS45IDAgMDEtMSAxem0tMS02YTUuMSA1LjEgMCAwMC00LjYgM0gzLjNsLTIgMiAzIDNIN3YtMWguM2wxIDFIMTF2LTFoMS40YTUuMSA1LjEgMCAwMDQuNiAzIDUgNSAwIDAwMC0xMHptMCA5YTQuMSA0LjEgMCAwMS0zLjgtMi43VjEzSDEwdjFIOC43bC0xLTFINnYxSDQuN2wtMi0yIDEtMWg5LjR2LS4zQTQuMSA0LjEgMCAwMTE3IDhhNCA0IDAgMDEwIDh6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbGVzcy1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDNhOSA5IDAgMDE2LjM2IDE1LjM2QTkgOSAwIDAxNS42NCA1LjYyIDguOTMgOC45MyAwIDAxMTIgM20wLTFhMTAgMTAgMCAxMDcuMDcgMi45M0E5LjkzIDkuOTMgMCAwMDEyIDJ6Ii8+PHJlY3QgeD0iNyIgeT0iMTEuMjUiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxLjUiIHJ4PSIuNzUiLz48Zz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9nPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbGluayIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTMuNCAxMy40bC0uNy0uN2EyLjkgMi45IDAgMDAuOS0yLjEgMi43IDIuNyAwIDAwLS45LTIuMUw5LjIgNC45YTMuMiAzLjIgMCAwMC00LjMgMCAzLjIgMy4yIDAgMDAwIDQuM0w3LjggMTJsLS43LjctMi45LTIuOGE0LjIgNC4yIDAgMDEwLTUuNyA0LjIgNC4yIDAgMDE1LjcgMGwzLjUgMy42YTMuNiAzLjYgMCAwMTEuMiAyLjggMy42IDMuNiAwIDAxLTEuMiAyLjh6bTYuNCA2LjRhNC4yIDQuMiAwIDAwMC01LjdsLTIuOS0yLjgtLjcuNyAyLjkgMi44YTMuMiAzLjIgMCAwMTAgNC4zIDMuMiAzLjIgMCAwMS00LjMgMGwtMy41LTMuNmEyLjcgMi43IDAgMDEtLjktMi4xIDIuOSAyLjkgMCAwMS45LTIuMWwtLjctLjdhMy42IDMuNiAwIDAwLTEuMiAyLjggMy42IDMuNiAwIDAwMS4yIDIuOGwzLjUgMy42YTMuOCAzLjggMCAwMDIuOCAxLjEgMy45IDMuOSAwIDAwMi45LTEuMXptLTYuNy02LjciLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1saW5rZWRpbiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTE2LjUzIDguNjhBMy45NCAzLjk0IDAgMDAxMyAxMC42MlY5SDkuMzd2MTJoMy43M3YtNS45NWMwLTEuNTcuMjktMy4wOSAyLjI0LTMuMDkgMS45NSAwIDEuOTMgMS44IDEuOTMgMy4xOVYyMUgyMXYtNi42YzAtMy4yMy0uNjktNS43Mi00LjQ3LTUuNzJ6TTUuMTYgM2EyLjE3IDIuMTcgMCAxMDIuMTYgMi4xOEEyLjE2IDIuMTYgMCAwMDUuMTYgM3pNMy4yOSA5djEySDdWOUgzLjI5em0xMy4yNC0uM0EzLjk0IDMuOTQgMCAwMDEzIDEwLjYyVjlIOS4zN3YxMmgzLjczdi01Ljk1YzAtMS41Ny4yOS0zLjA5IDIuMjQtMy4wOSAxLjk1IDAgMS45MyAxLjggMS45MyAzLjE5VjIxSDIxdi02LjZjMC0zLjIzLS42OS01LjcyLTQuNDctNS43MnYuMDJ6TTMuMjkgMjFIN1Y5SDMuMjl2MTJ6TTUuMTYgM2EyLjE3IDIuMTcgMCAxMDIuMTYgMi4xOEEyLjE2IDIuMTYgMCAwMDUuMTYgM3oiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LWxpbmtlZGluLXNxdWFyZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTE5LjY3IDNINC4zM0ExLjMyIDEuMzIgMCAwMDMgNC4zdjE1LjRBMS4zMiAxLjMyIDAgMDA0LjMzIDIxaDE1LjM0QTEuMzIgMS4zMiAwIDAwMjEgMTkuN1Y0LjNBMS4zMiAxLjMyIDAgMDAxOS42NyAzek04LjM0IDE4LjM0SDUuNjdWOS43NWgyLjY3djguNTl6TTcgOC41N0ExLjU1IDEuNTUgMCAxMTguNTUgNyAxLjU0IDEuNTQgMCAwMTcgOC41N3ptMTEuMzQgOS43N2gtMi42N3YtNC4xOGMwLTEgMC0yLjI4LTEuMzktMi4yOHMtMS42IDEuMDktMS42IDIuMjF2NC4yNUgxMFY5Ljc1aDIuNTZ2MS4xN2EyLjgzIDIuODMgMCAwMTIuNTMtMS4zOWMyLjcgMCAzLjIgMS43OCAzLjIgNC4xbC4wNSA0LjcxeiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbGlzdCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNCAxMmEuOS45IDAgMDEtMSAxIDEgMSAwIDAxMC0yIC45LjkgMCAwMTEgMXpNMyA0LjVhLjkuOSAwIDAwLTEgMSAuOS45IDAgMDAxIDEgLjkuOSAwIDAwMS0xIC45LjkgMCAwMC0xLTF6bTAgMTNhMSAxIDAgMDAwIDIgMSAxIDAgMDAwLTJ6TTYgNXYxaDE2VjV6bTAgNy41aDE2di0xSDZ6TTYgMTloMTZ2LTFINnoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1sb2NrIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xOC41IDguNUgxN1Y4QTUgNSAwIDAwNyA4di41SDUuNUExLjUgMS41IDAgMDA0IDEwdjguNUExLjUgMS41IDAgMDA1LjUgMjBoMTNhMS41IDEuNSAwIDAwMS41LTEuNVYxMGExLjUgMS41IDAgMDAtMS41LTEuNXpNOCA4YTQgNCAwIDAxOCAwdi41SDh6bTExIDEwLjVhLjUuNSAwIDAxLS41LjVoLTEzYS41LjUgMCAwMS0uNS0uNVYxMGEuNS41IDAgMDEuNS0uNWgxM2EuNS41IDAgMDEuNS41eiIvPjxwYXRoIGQ9Ik0xMiAxMy4yNWExIDEgMCAxMS0xIDEgMSAxIDAgMDExLTFtMC0xYTIgMiAwIDEwMiAyIDIgMiAwIDAwLTItMnoiLz48Zz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9nPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbG9ja2VkIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNi41IDEySDE2VjdhNCA0IDAgMDAtOCAwdjVoLS41YTEuMSAxLjEgMCAwMC0xLjEgMS4xdjYuOEExLjEgMS4xIDAgMDA3LjUgMjFoOWExLjEgMS4xIDAgMDAxLjEtMS4xdi02LjhhMS4xIDEuMSAwIDAwLTEuMS0xLjF6TTkgN2EzIDMgMCAwMTYgMHY1SDl6bTcuNiAxMi45YS4xLjEgMCAwMS0uMS4xaC05YS4xLjEgMCAwMS0uMS0uMXYtNi44aDkuMnpNMTMgMTUuNWEuOC44IDAgMDEtLjUuOHYxLjVoLTF2LTEuNWEuOC44IDAgMDEtLjUtLjggMSAxIDAgMDEyIDB6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbWFpbCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjAuNSA1aC0xN0ExLjUgMS41IDAgMDAyIDYuNXYxMUExLjUgMS41IDAgMDAzLjUgMTloMTdhMS41IDEuNSAwIDAwMS41LTEuNXYtMTFBMS41IDEuNSAwIDAwMjAuNSA1em0tLjMgMWwtNy4xIDcuMmExLjYgMS42IDAgMDEtMi4yIDBMMy44IDZ6TTMgMTcuM1Y2LjZMOC4zIDEyem0uNy43TDkgMTIuN2wxLjIgMS4yYTIuNyAyLjcgMCAwMDMuNiAwbDEuMi0xLjIgNS4zIDUuM3ptMTItNkwyMSA2LjZ2MTAuN3oiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1tYXAtbWFya2VyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMiAyMkw2LjMgMTEuNmMtMS43LTMuMS0uNi03IDIuNi04LjhzNy4xLS42IDguOCAyLjVjLjUgMSAuOCAyIC44IDMuMXMtLjMgMi4yLS44IDMuMUwxMiAyMnptMC0xOUM5IDMgNi41IDUuNSA2LjUgOC41YzAgLjkuMiAxLjkuNyAyLjdMMTIgMjBsNC44LTguOGMxLjUtMi42LjUtNi0yLjEtNy41LS44LS41LTEuOC0uNy0yLjctLjd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbWFwLW1hcmtlci1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE3LjcgNS4zQzE2IDIuMiAxMiAxLjEgOC45IDIuOHMtNC4zIDUuNy0yLjUgOC44TDEyIDIybDUuNy0xMC40Yy41LTEgLjgtMiAuOC0zLjFzLS4zLTIuMi0uOC0zLjJ6bS0uOSA1LjhMMTIgMTkuOWwtNC44LTguOGMtLjUtLjgtLjctMS43LS43LTIuN0M2LjUgNS40IDkgMyAxMiAzczUuNSAyLjUgNS41IDUuNWMwIC45LS4yIDEuOC0uNyAyLjZ6Ii8+PHBhdGggZD0iTTEyIDVjLTEuOSAwLTMuNSAxLjYtMy41IDMuNVMxMC4xIDEyIDEyIDEyczMuNS0xLjYgMy41LTMuNVMxMy45IDUgMTIgNXptMCA2Yy0xLjQgMC0yLjUtMS4xLTIuNS0yLjVTMTAuNiA2IDEyIDZzMi41IDEuMSAyLjUgMi41UzEzLjQgMTEgMTIgMTF6Ii8+PGc+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvZz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LW1hcC1tYXJrZXItbWludXMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE3LjcgNS4zQzE2IDIuMiAxMiAxLjEgOC45IDIuOHMtNC4zIDUuNy0yLjUgOC44TDEyIDIybDUuNy0xMC40Yy41LTEgLjgtMiAuOC0zLjFzLS4zLTIuMi0uOC0zLjJ6bS0uOSA1LjhMMTIgMTkuOWwtNC44LTguOGMtLjUtLjgtLjctMS43LS43LTIuN0M2LjUgNS40IDkgMyAxMiAzczUuNSAyLjUgNS41IDUuNWMwIC45LS4yIDEuOC0uNyAyLjZ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbWFwLW1hcmtlci1wbHVzIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNS4xIDIuOGMtMS0uNS0yLS44LTMuMS0uOC0zLjYgMC02LjUgMi45LTYuNSA2LjUgMCAxLjEuMyAyLjIuOCAzLjFMMTIgMjJsNS43LTEwLjRjMS43LTMuMi41LTcuMS0yLjYtOC44em0xLjcgOC4zTDEyIDE5LjlsLTQuOC04LjhjLTEuNS0yLjctLjUtNiAyLjEtNy41IDIuNy0xLjUgNi0uNSA3LjUgMi4xLjUuOC43IDEuNy43IDIuNyAwIDEtLjIgMS45LS43IDIuN3oiLz48cGF0aCBkPSJNMTIuNSA4aDN2MWgtM3YzaC0xVjloLTNWOGgzVjVoMXoiLz48Zz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9nPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbWF4aW1pemUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQuNyA0bDYuNyA2LjYtLjcuN0w0IDQuN3YzLjhIM1YzaDUuNXYxek0yMCAxOS4zbC02LjYtNi43LS43LjcgNi42IDYuN2gtMy44djFIMjF2LTUuNWgtMXpNMTUuNSAzdjFoMy44bC02LjYgNi42LjcuN0wyMCA0Ljd2My44aDFWM3pNMTAuNiAxMi42TDQgMTkuM3YtMy44SDNWMjFoNS41di0xSDQuN2w2LjctNi43eiIvPjxnPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L2c+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1tYXhpbWl6ZS1hbHQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE1LjEgMTguMWwuNy43LTMuOCAzLjktMy45LTMuOS43LS43IDIuNyAyLjd2LTcuM2gxdjcuM3pNMTguOSA4LjFsLS44LjcgMi43IDIuN2gtNy4zdjFoNy4zbC0yLjYgMi42LjcuNyAzLjgtMy44ek0xMS41IDMuMnY3LjNoMVYzLjJsMi42IDIuNi43LS43TDEyIDEuMyA4LjEgNS4xbC43Ljd6TTEwLjUgMTIuNXYtMUgzLjJsMi42LTIuNy0uNi0uN0wxLjMgMTJsMy44IDMuOC43LS43LTIuNi0yLjZ6Ii8+PGc+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvZz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LW1lZGl1bSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PHBhdGggZD0iTTUgNy42M0EuNzIuNzIgMCAwMDQuODIgN0wzLjEzIDV2LS4zaDUuMjJsNCA4Ljg0IDMuNTQtOC44NGg1VjVsLTEuNDIgMS40YS40My40MyAwIDAwLS4xNi40djEwLjEyYS40NS40NSAwIDAwLjE2LjQxbDEuNCAxLjM3di4zaC03di0uM2wxLjQ1LTEuNDFjLjE0LS4xNC4xNC0uMTguMTQtLjRWOC43MUwxMS4zNyAxOWgtLjU1TDYuMTIgOC43MXY2Ljg4YS45My45MyAwIDAwLjI2Ljc5bDEuODkgMi4yOVYxOUgyLjkxdi0uM2wxLjg5LTIuMzJhLjkyLjkyIDAgMDAuMi0uNzlWNy42M3oiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LW1lZGl1bS1zcXVhcmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0zIDNoMTh2MThIM1Yzem00LjMgMTEuMzZhLjY0LjY0IDAgMDEtLjE3LjU0bC0xLjI3IDEuNTR2LjJoMy42di0uMkw4LjE5IDE0LjlhLjY3LjY3IDAgMDEtLjE5LS41NFY5Ljc0bDMuMTYgNi45aC4zN2wyLjcxLTYuOXY1LjVjMCAuMTUgMCAuMTctLjA5LjI3bC0xIDF2LjJoNC43NHYtLjJsLS44OS0uOThhLjI3LjI3IDAgMDEtLjExLS4yN3YtNi44YS4yOC4yOCAwIDAxLjExLS4yN2wxLS45M3YtLjJoLTMuMzlMMTIuMjMgMTMgOS41MiA3LjA2SDZ2LjJsMS4xNCAxLjM2QS41LjUgMCAwMTcuMyA5djUuMzZ6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1taW5pbWl6ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMyAxNS41aDUuNVYyMWgtMXYtNC41SDN6TTcuNSA3LjVIM3YxaDUuNVYzaC0xek0xNS41IDIxaDF2LTQuNUgyMXYtMWgtNS41ek0xNi41IDcuNVYzaC0xdjUuNUgyMXYtMXoiLz48Zz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9nPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbWludXMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIwIDEyLjVINHYtMWgxNnoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1taW51cy1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuOSAxMS41aDEwdjFoLTEwek0yMiAxMkExMCAxMCAwIDExMTIgMmExMCAxMCAwIDAxMTAgMTB6bS0xIDBhOSA5IDAgMTAtOSA5IDkgOSAwIDAwOS05eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LW1vcmUtYWN0aW9ucyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNiAxMGEyIDIgMCAxMDIgMiAyIDIgMCAwMC0yLTJ6bTAgM2ExIDEgMCAwMTAtMiAxIDEgMCAwMTAgMnptNi0zYTIgMiAwIDEwMiAyIDIgMiAwIDAwLTItMnptMCAzYTEgMSAwIDExMS0xIC45LjkgMCAwMS0xIDF6bTYtM2EyIDIgMCAxMDIgMiAyIDIgMCAwMC0yLTJ6bTAgM2ExIDEgMCAxMTEtMSAuOS45IDAgMDEtMSAxeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LW1vcmUtaXRlbXMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDE4YTEgMSAwIDExLTEgMSAuOS45IDAgMDExLTFtMC0xYTIgMiAwIDEwMiAyIDIgMiAwIDAwLTItMnptMC02YTEgMSAwIDExLTEgMSAuOS45IDAgMDExLTFtMC0xYTIgMiAwIDEwMiAyIDIgMiAwIDAwLTItMnptMC02YS45LjkgMCAwMTEgMSAxIDEgMCAwMS0yIDAgLjkuOSAwIDAxMS0xbTAtMWEyIDIgMCAxMDIgMiAyIDIgMCAwMC0yLTJ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtbm90ZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTguNSA0aC0xM0ExLjUgMS41IDAgMDA0IDUuNXYxM0ExLjUgMS41IDAgMDA1LjUgMjBoMTAuMmw0LjMtNC4zVjUuNUExLjUgMS41IDAgMDAxOC41IDR6TTUgMTguNXYtMTNhLjUuNSAwIDAxLjUtLjVoMTNhLjUuNSAwIDAxLjUuNVYxNWgtMi41YTEuNSAxLjUgMCAwMC0xLjUgMS41VjE5SDUuNWEuNS41IDAgMDEtLjUtLjV6TTE4LjMgMTZMMTYgMTguM3YtMS44YS41LjUgMCAwMS41LS41ek0xNiA5SDhWOGg4em0wIDJIOHYtMWg4em0tMiAxdjFIOHYtMXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1wYSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMyAyMWgxOHYxSDN6bTAtMWgxOHYtMUgzek0yMiA5SDJsMTAtN3pNNS4yIDhoMTMuNkwxMiAzLjJ6TTYgMTh2LThINXY4em00IDB2LThIOXY4em01IDB2LThoLTF2OHptNCAwdi04aC0xdjh6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcGFzc3dvcmQtaW52aXNpYmxlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNSAxMmEzLjIgMy4yIDAgMDAtLjctMS45bC40LTEuMWE0LjIgNC4yIDAgMDExLjMgMyA0IDQgMCAwMS0zLjkgNGwuNC0xLjFBMi45IDIuOSAwIDAwMTUgMTJ6TTMuMSAxMkE5LjggOS44IDAgMDExMiA2LjVoLjRsLjQtLjlIMTJhMTAuOSAxMC45IDAgMDAtOS44IDZMMiAxMmwuMi41YTExIDExIDAgMDA2LjEgNS4zbC4zLS45QTkuOCA5LjggMCAwMTMuMSAxMnptMTguNy0uNWExMSAxMSAwIDAwLTYuMS01LjNsLS4zLjlhOS44IDkuOCAwIDAxNS41IDQuOSA5LjggOS44IDAgMDEtOC45IDUuNWgtLjRsLS40LjloLjhhMTAuOSAxMC45IDAgMDA5LjgtNmwuMi0uNHpNMTEuNSA5LjFsLjQtMS4xQTQgNCAwIDAwOCAxMmE0LjIgNC4yIDAgMDAxLjMgM2wuNC0xLjFBMy4yIDMuMiAwIDAxOSAxMmEyLjkgMi45IDAgMDEyLjUtMi45em0zLjEtNS43TDguNSAyMC4zbC45LjMgNi4xLTE2Ljl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcGFzc3dvcmQtdmlzaWJsZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEuOCAxMS41YTExIDExIDAgMDAtMTkuNiAwTDIgMTJsLjIuNWExMSAxMSAwIDAwMTkuNiAwbC4yLS41em0tOS44IDZBOS44IDkuOCAwIDAxMy4xIDEyIDkuOCA5LjggMCAwMTEyIDYuNWE5LjggOS44IDAgMDE4LjkgNS41IDkuOCA5LjggMCAwMS04LjkgNS41ek0xMiA4YTQgNCAwIDEwNCA0IDQgNCAwIDAwLTQtNHptMCA3YTMgMyAwIDExMy0zIDIuOSAyLjkgMCAwMS0zIDN6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcGVuY2lsIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMC41IDMuNWEyLjkgMi45IDAgMDAtMi4xLS45IDMuMSAzLjEgMCAwMC0yLjIuOUw0LjYgMTUuMmwtMSA1LjIgNS4yLTFMMjAuNSA3LjhhMyAzIDAgMDAwLTQuM3ptLTUuNyAyLjhsLjctLjcgMi45IDIuOS0uNy43em0tLjcuOGwxLjEgMS04LjQgOC40LTEuMS0xLjF6TTUuNyAxOC4zYS43LjcgMCAwMC0uNi0uM2wuMy0xLjUgMi4xIDIuMS0xLjUuM2EuNy43IDAgMDAtLjMtLjZ6bTIuOSAwbC0xLjEtMS4xIDguNC04LjQgMSAxLjF6TTE5LjggNy4xbC0uNy43LTIuOS0yLjkuNy0uN2EyLjIgMi4yIDAgMDExLjUtLjYgMiAyIDAgMDExLjQuNiAyLjEgMi4xIDAgMDEwIDIuOXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1waW4iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTE4LjEgMTRMMTUgMTAuM1Y0LjZMMTYuMyAySDcuN0w5IDQuNnY1LjdMNS45IDE0aDUuNnY4aDF2LTh6TTEwIDVoNHY1aC00em00LjctMmwtLjUgMUg5LjhsLS41LTF6bS01IDhoNC42bDEuNiAySDguMXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1wbHVnIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik04LjUgOS45bC0yLjggMi44LTEuMSAxLjFjLS42LjYtLjYgMS41IDAgMi4xTDYgMTcuM2wtMy44IDMuOS43LjdMNi43IDE4bDEuNCAxLjRjLjMuMy43LjQgMS4xLjQuNCAwIC44LS4yIDEuMS0uNGwxLjEtMS4xIDIuOC0yLjgtNS43LTUuNnptMSA4LjhjLS4yLjItLjUuMi0uNyAwbC0zLjUtMy41Yy0uMi0uMi0uMi0uNSAwLS43bC40LS40IDQuMiA0LjItLjQuNHptLTMuMi01LjNsMi4xLTIuMSA0LjIgNC4yLTIuMSAyLjEtNC4yLTQuMnptOS42LTguOGMtLjYtLjYtMS41LS42LTIuMSAwTDExLjMgN2wxLjQgMS40LTIuMSAyLjEuNy43IDIuMS0yLjEgMS40IDEuNC0yLjEgMi4xLjcuNyAyLjEtMi4xIDEuNSAxLjQgMi41LTIuNWMuNi0uNi42LTEuNSAwLTIuMWwtMy42LTMuNHptMi44IDQuOUwxNyAxMS4zIDEyLjcgN2wxLjgtMS44Yy4yLS4yLjUtLjIuNyAwbDMuNSAzLjVjLjIuMy4yLjYgMCAuOHpNOC41IDEyLjdsLjcuNy0uNy43LS43LS43LjctLjd6bTIuOCAyLjhsLS43LjctLjctLjcuNy0uNy43Ljd6TTE4IDYuN2wtLjctLjcgMy45LTMuOC43LjdMMTggNi43eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXBsdXMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIwIDEyLjVoLTcuNVYyMGgtMXYtNy41SDR2LTFoNy41VjRoMXY3LjVIMjB6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcGx1cy1jaXJjbGUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjQgMTEuNWg0LjV2MWgtNC41VjE3aC0xdi00LjVINi45di0xaDQuNVY3aDF6bTkuNi41QTEwIDEwIDAgMTExMiAyYTEwIDEwIDAgMDExMCAxMHptLTEgMGE5IDkgMCAxMC05IDkgOSA5IDAgMDA5LTl6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcHJlc2VudGF0aW9uIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik00IDV2MTAuNkEyLjQgMi40IDAgMDA2LjQgMThoMy4xbC0xLjEgNGgxbDEuMS00aDIuN2wxLjIgNGgxbC0xLjItNGgzLjVhMi4zIDIuMyAwIDAwMi4zLTIuM1Y1em0xNSAxMC43YTEuMyAxLjMgMCAwMS0xLjMgMS4zSDYuNEExLjQgMS40IDAgMDE1IDE1LjZWNmgxNHpNMjEgM3YxSDNWM3ptLTkgMTNhNC41IDQuNSAwIDEwLTQuNS00LjVBNC41IDQuNSAwIDAwMTIgMTZ6bS0uNS03LjlWMTFIOC42YTMuNCAzLjQgMCAwMTIuOS0yLjl6bTEgMy45VjhhMy41IDMuNSAwIDAxLS41IDcgMy40IDMuNCAwIDAxLTMuNC0zeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXByaW50IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMSA5LjVBMS41IDEuNSAwIDAwMTkuNSA4SDE3VjNIN3Y1SDQuNUExLjUgMS41IDAgMDAzIDkuNVYxNmgydjNoMnYyaDEwdi0yaDJ2LTNoMnpNOCA0aDh2NEg4ek02IDE4di00aDF2NHptMTAgMkg4di02aDh2NnptMi0yaC0xdi00aDF2NHptMi0zaC0xdi0ySDV2Mkg0VjkuNWEuNS41IDAgMDEuNS0uNWgxNWEuNS41IDAgMDEuNS41ek02IDExaDR2MUg2eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXJlZnJlc2giIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTIxIDEyYzAgNS00IDktOSA5cy05LTQtOS05IDQtOSA5LTljMi40IDAgNC43LjkgNi40IDIuNi40LjQuOC45IDEuMSAxLjRoLTR2MUgyMVYyLjVoLTFWNmMtLjMtLjQtLjYtLjctLjktMS4xQzE1LjIgMSA4LjggMSA0LjkgNC45UzEgMTUuMiA0LjkgMTkuMXMxMC4yIDMuOSAxNC4xIDBjMS45LTEuOSAyLjktNC40IDIuOS03LjFIMjF6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtcmVzdG9yZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTIgMkM5LjMgMiA2LjggMyA0LjkgNC45Yy0uMy40LS42LjctLjkgMS4xVjIuNUgzVjhoNS41VjdoLTRjLjMtLjUuNy0uOSAxLjEtMS40IDMuNS0zLjUgOS4yLTMuNiAxMi43LS4xczMuNiA5LjIuMSAxMi43LTkuMiAzLjYtMTIuNy4xQzQgMTYuNyAzIDE0LjQgMyAxMkgyYzAgNS41IDQuNSAxMCAxMCAxMHMxMC00LjUgMTAtMTBTMTcuNSAyIDEyIDJ6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtc2VhcmNoIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0yMS45IDIxLjFMMTYgMTUuM2E4LjMgOC4zIDAgMDAyLTUuMyA4IDggMCAxMC04IDggOC4zIDguMyAwIDAwNS4zLTJsNS44IDUuOXpNMTAgMTdhNyA3IDAgMTE3LTcgNyA3IDAgMDEtNyA3eiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXNldHRpbmdzIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMiA3LjVhNC41IDQuNSAwIDEwNC41IDQuNUE0LjUgNC41IDAgMDAxMiA3LjV6bTAgOGEzLjUgMy41IDAgMTEzLjUtMy41IDMuNSAzLjUgMCAwMS0zLjUgMy41em05LjgtMS42QTEyLjMgMTIuMyAwIDAwMjIgMTJhMTIuMyAxMi4zIDAgMDAtLjItMS45bC0yLjEtLjNhOC43IDguNyAwIDAwLS43LTEuN2wxLjMtMS43YTguNyA4LjcgMCAwMC0yLjctMi43TDE1LjkgNWwtMS43LS43LS4zLTIuMUwxMiAybC0xLjkuMi0uMyAyLjEtMS43LjctMS43LTEuM2E4LjcgOC43IDAgMDAtMi43IDIuN0w1IDguMWE4LjcgOC43IDAgMDAtLjcgMS43bC0yLjEuM0ExMi4zIDEyLjMgMCAwMDIgMTJhMTIuMyAxMi4zIDAgMDAuMiAxLjlsMi4xLjNhOC43IDguNyAwIDAwLjcgMS43bC0xLjMgMS43YTguNyA4LjcgMCAwMDIuNyAyLjdMOC4xIDE5bDEuNy43LjMgMi4xIDEuOS4yIDEuOS0uMi4zLTIuMSAxLjctLjcgMS43IDEuM2E4LjcgOC43IDAgMDAyLjctMi43TDE5IDE1LjlhOC43IDguNyAwIDAwLjctMS43em0tMi45LS43bC0uMi43YTMuOSAzLjkgMCAwMS0uNiAxLjVsLS4zLjYuNC41LjggMS4xYTkuMyA5LjMgMCAwMS0xLjQgMS40bC0xLjEtLjgtLjUtLjQtLjYuM2EzLjkgMy45IDAgMDEtMS41LjZsLS43LjJ2LjdsLS4yIDEuM2gtMmwtLjItMS4zdi0uN2wtLjctLjJhMy45IDMuOSAwIDAxLTEuNS0uNmwtLjYtLjMtLjUuNC0xLjEuOEE5LjMgOS4zIDAgMDE1IDE3LjZsLjgtMS4xLjQtLjUtLjMtLjZhMy45IDMuOSAwIDAxLS42LTEuNWwtLjItLjdoLS43TDMuMSAxM2EzLjQgMy40IDAgMDEtLjEtMSAzLjQgMy40IDAgMDEuMS0xbDEuMy0uMmguN2wuMi0uN2EzLjkgMy45IDAgMDEuNi0xLjVsLjMtLjYtLjQtLjVMNSA2LjQgNi40IDVsMS4xLjguNS40LjYtLjNhMy45IDMuOSAwIDAxMS41LS42bC43LS4ydi0uN2wuMi0xLjNoMmwuMiAxLjN2LjdsLjcuMmEzLjkgMy45IDAgMDExLjUuNmwuNi4zLjUtLjQgMS4xLS44QTkuMyA5LjMgMCAwMTE5IDYuNGwtLjggMS4xLS40LjUuMy42YTMuOSAzLjkgMCAwMS42IDEuNWwuMi43aC43bDEuMy4yYTMuNCAzLjQgMCAwMS4xIDEgMy40IDMuNCAwIDAxLS4xIDFsLTEuMy4yeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXNoYXJlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNy41IDE1YTIuNSAyLjUgMCAwMC0yIDFsLTcuNi0zLjRBMS4zIDEuMyAwIDAwOCAxMmExLjMgMS4zIDAgMDAtLjEtLjZMMTUuNSA4YTIuNSAyLjUgMCAxMC0uNS0xLjUgMS4zIDEuMyAwIDAwLjEuNmwtNy42IDMuNGEyLjUgMi41IDAgMTAwIDNsNy42IDMuNGExLjMgMS4zIDAgMDAtLjEuNiAyLjUgMi41IDAgMTAyLjUtMi41em0wLTEwQTEuNSAxLjUgMCAwMTE5IDYuNWExLjUgMS41IDAgMDEtMyAwQTEuNSAxLjUgMCAwMTE3LjUgNXptLTEyIDguNWExLjUgMS41IDAgMDEwLTMgMS41IDEuNSAwIDAxMCAzem0xMiA1LjVhMS41IDEuNSAwIDExMS41LTEuNSAxLjUgMS41IDAgMDEtMS41IDEuNXoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1zdGFyLWZ1bGwiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDEuN0w5LjUgOS4ySDEuNkw4IDEzLjlsLTIuNCA3LjYgNi40LTQuNyA2LjQgNC43LTIuNC03LjYgNi40LTQuN2gtNy45TDEyIDEuN3oiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC1zdGFyLW91dGxpbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDQuOWwxLjUgNC42LjIuN2g1LjdsLTQgMi45LS42LjQuMi43IDEuNSA0LjctMy45LTIuOS0uNi0uNC0uNi40LTMuOSAyLjlMOSAxNC4ybC4yLS43LS42LS40LTQtMi45aDUuN2wuMi0uN0wxMiA0LjltMC0zLjJMOS41IDkuMkgxLjZMOCAxMy45bC0yLjQgNy42IDYuNC00LjcgNi40IDQuNy0yLjQtNy42IDYuNC00LjdoLTcuOUwxMiAxLjd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtdGVhbS1kaWdpdGFsZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjMuNjQ4IDI0SC4zNTJBLjM1My4zNTMgMCAwMTAgMjMuNjQ4Vi4zNTJDMCAuMTU4LjE1OCAwIC4zNTIgMGgyMy4yOTZjLjE5NCAwIC4zNTIuMTU4LjM1Mi4zNTJ2MjMuMjk2YS4zNTMuMzUzIDAgMDEtLjM1Mi4zNTJ6TTUuODE0IDExLjc5MmExLjU5NiAxLjU5NiAwIDEwMC0zLjE5MiAxLjU5NiAxLjU5NiAwIDAwMCAzLjE5MnpNMTAgMTguOTk0VjE5aDQuNDE4QzE5LjEzIDE5IDIwIDE2LjY4NSAyMCAxMi4yNTMgMjAgNy45MyAxOC45OTUgNiAxNC40MTggNkgxMHYxMi45OTR6bTQuNDE4LTEwLjcwMmMyLjU4NiAwIDIuODM4IDEuMTEgMi44MzggMy45NTUgMCAyLjg5LS4yNTIgNC40NTUtMi44MzggNC40NTVoLTEuNzU2di04LjQxaDEuNzU2eiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtdGVsZXBob25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik01IDNoLjE4TTIwIDExLjU2QTcuNTkgNy41OSAwIDAwMTIuNDggNGgtLjA2YS40OS40OSAwIDAwLS40OS40OC41LjUgMCAwMC40OS41MUE2LjYxIDYuNjEgMCAwMTE5IDExLjYyYS41MS41MSAwIDAwLjU0LjQ2LjQ5LjQ5IDAgMDAuNDUtLjQ2cy4wMS0uMDQuMDEtLjA2eiIvPjxwYXRoIGQ9Ik0xNi45MyAxMS42OGE0LjUgNC41IDAgMDAtNC40OC00LjQ4LjUxLjUxIDAgMDAwIDEgMy41IDMuNSAwIDAxMy40OSAzLjQ5LjUuNSAwIDAwLjUuNS41MS41MSAwIDAwLjUtLjUxek0xNS42OCAyMS4xOWExMy4zMiAxMy4zMiAwIDAxLTEyLjgtMTMuMS45Mi45MiAwIDAxLjYyLS44OGMxLjc0LS41NiA0LTEgNC43LjA2YTcuMzkgNy4zOSAwIDAxLjg1IDIuOTF2LjIxYTEuNDggMS40OCAwIDAxLS43IDEuNjguODEuODEgMCAwMC0uNDkuNzEgMTIuNTUgMTIuNTUgMCAwMDMuMzggMy41MS44OC44OCAwIDAwLjQ4LS41NmMuMDktLjUzLjU4LTEgMS43LS44NWguMjFhNyA3IDAgMDEyLjg1Ljg3YzEgLjcyLjYyIDMgLjA5IDQuNzJhMSAxIDAgMDEtLjg5Ljcyek02LjU1IDcuNTJhOS41IDkuNSAwIDAwLTIuNzguNTUgMTIuNDEgMTIuNDEgMCAwMDExLjkxIDEyLjIyYy43My0yLjI2LjY2LTMuNTQuMzEtMy43OGE2LjY2IDYuNjYgMCAwMC0yLjQ2LS43MmgtLjIyYy0uMzIgMC0uNjUgMC0uNjguMTJhMS45IDEuOSAwIDAxLTEuMjcgMS4zNGwtLjIxLjA3LS4xNS0uMTVhMTMuNDQgMTMuNDQgMCAwMS0zLjktNEw3IDEzYTEuNjggMS42OCAwIDAxMS0xLjdjLjEyLS4wNy4zMy0uMTguMjUtLjc1di0uMjJhNi44NCA2Ljg0IDAgMDAtLjctMi41NGMtLjItLjE4LS41NS0uMjctMS0uMjd6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC10b29sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik03LjcgNWEzLjEgMy4xIDAgMDExLjcuNSAzLjEgMy4xIDAgMDExLjYgMyAzIDMgMCAwMC44IDIuNGw2LjMgNi4zYTEgMSAwIDAxLjIgMS4zIDEgMSAwIDAxLS44LjUuOS45IDAgMDEtLjctLjNsLTYuNC02LjRhMyAzIDAgMDAtMi4xLS44aC0uNmEyLjggMi44IDAgMDEtMi4yLTFoMi43VjYuNEg1LjFhMi43IDIuNyAwIDAxMS4xLTFBMi44IDIuOCAwIDAxNy43IDVtMC0xYTQuNiA0LjYgMCAwMC0yIC41IDQuMSA0LjEgMCAwMC0yLjEgMi45aDMuNnYyLjFIMy43YTUuNCA1LjQgMCAwMDEgMS44IDQuNCA0LjQgMCAwMDMgMS4yaC42YTIuNCAyLjQgMCAwMTEuNC41bDYuNCA2LjRhMiAyIDAgMDAxLjQuNiAxLjkgMS45IDAgMDAxLjYtLjkgMiAyIDAgMDAtLjMtMi42bC02LjMtNi4zYTEuOCAxLjggMCAwMS0uNS0xLjYgNC40IDQuNCAwIDAwLTItNEE0LjYgNC42IDAgMDA3LjcgNHoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC10d2l0dGVyIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBkPSJNOC4wOCAyMGExMC45MyAxMC45MyAwIDAwMTEtMTF2LS41YTggOCAwIDAwMS45Mi0yIDcuODUgNy44NSAwIDAxLTIuMjIuNjFBMy44OSAzLjg5IDAgMDAyMC40OCA1YTggOCAwIDAxLTIuNDguOTEgMy44NyAzLjg3IDAgMDAtNi41OSAzLjUyIDExIDExIDAgMDEtOC00IDMuODUgMy44NSAwIDAwMS4xOSA1LjE2IDMuNzYgMy43NiAwIDAxLTEuNzUtLjQ4QTMuODcgMy44NyAwIDAwNiAxMy45MWEzLjczIDMuNzMgMCAwMS0xIC4xNCA0LjMgNC4zIDAgMDEtLjczLS4wNSAzLjg3IDMuODcgMCAwMDMuNjEgMi42OCA3LjczIDcuNzMgMCAwMS00LjggMS42NiA3IDcgMCAwMS0uOTItLjA2QTEwLjkgMTAuOSAwIDAwOC4wOCAyMCIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtdHdpdHRlci1zcXVhcmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0xOS41IDIyaC0xNUEyLjUgMi41IDAgMDEyIDE5LjV2LTE1QTIuNSAyLjUgMCAwMTQuNSAyaDE1QTIuNSAyLjUgMCAwMTIyIDQuNXYxNWEyLjUgMi41IDAgMDEtMi41IDIuNXptLTkuODItNC45MkE3LjI0IDcuMjQgMCAwMDE3IDkuNzl2LS4zM2E1LjIyIDUuMjIgMCAwMDEuMjgtMS4zMyA1LjIyIDUuMjIgMCAwMS0xLjQ4LjQgMi41NiAyLjU2IDAgMDAxLjE0LTEuNDIgNC45MyA0LjkzIDAgMDEtMS42NC42MiAyLjUzIDIuNTMgMCAwMC0xLjg2LS44MSAyLjU3IDIuNTcgMCAwMC0yLjU3IDIuNTdjLjAwMy4xOTUuMDI2LjM5LjA3LjU4YTcuMjYgNy4yNiAwIDAxLTUuMzItMi42OCAyLjU5IDIuNTkgMCAwMC44IDMuNDMgMi43OCAyLjc4IDAgMDEtMS4xNi0uMzIgMi41NyAyLjU3IDAgMDAyLjA1IDIuNTIgMi40NiAyLjQ2IDAgMDEtMS4xNS4wNCAyLjU1IDIuNTUgMCAwMDIuMzkgMS43OEE1LjEzIDUuMTMgMCAwMTYuMzcgMTZhNi4wOCA2LjA4IDAgMDEtLjYxIDAgNy4yMyA3LjIzIDAgMDAzLjkyIDEuMTR2LS4wNnoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXVubG9ja2VkIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xNi41IDEySDE2VjZhNCA0IDAgMDAtOCAwdjNoMVY2YTMgMyAwIDAxNiAwdjZINy41YTEuMSAxLjEgMCAwMC0xLjEgMS4xdjYuOEExLjEgMS4xIDAgMDA3LjUgMjFoOWExLjEgMS4xIDAgMDAxLjEtMS4xdi02LjhhMS4xIDEuMSAwIDAwLTEuMS0xLjF6bS4xIDcuOWEuMS4xIDAgMDEtLjEuMWgtOWEuMS4xIDAgMDEtLjEtLjF2LTYuOGg5LjJ6TTEzIDE1LjVhLjguOCAwIDAxLS41Ljh2MS41aC0xdi0xLjVhLjguOCAwIDAxLS41LS44IDEgMSAwIDAxMiAweiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXVwbG9hZCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNOC40IDcuM2wtLjctLjdMMTIgMi4zbDQuMyA0LjMtLjcuNy0zLjEtMy4xdjkuM2gtMVY0LjJ6TTE5IDEydjcuNWEuNS41IDAgMDEtLjUuNWgtMTNhLjUuNSAwIDAxLS41LS41VjEySDR2Ny41QTEuNSAxLjUgMCAwMDUuNSAyMWgxM2ExLjUgMS41IDAgMDAxLjUtMS41VjEyeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXVzZXIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyIDEzYTQgNCAwIDAwNC00VjZhNCA0IDAgMDAtOCAwdjNhNCA0IDAgMDA0IDR6TTkgNmEzIDMgMCAwMTYgMHYzYTMgMyAwIDAxLTYgMHptMTEgMTZoLTFhNyA3IDAgMDAtMTQgMEg0YTggOCAwIDAxMTYgMHoiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC12aWRlbyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTcuNSA3LjNWNkExLjUgMS41IDAgMDAxNiA0LjVINS41QTEuNSAxLjUgMCAwMDQgNnY4YTEuNSAxLjUgMCAwMDEuNSAxLjVoMy40TDcuNCAyMWgxbDEuNi01LjVoMS44bDEuNiA1LjVoMWwtMS42LTUuNUgxNmExLjUgMS41IDAgMDAxLjUtMS41di0xLjNsNCAxLjVWNS44em0zIDUuNWwtNC0xLjVWMTRhLjUuNSAwIDAxLS41LjVINS41QS41LjUgMCAwMTUgMTRWNmEuNS41IDAgMDEuNS0uNUgxNmEuNS41IDAgMDEuNS41djIuN2w0LTEuNXpNMiA4aDF2NEgyeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXdhcm5pbmciIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEyLjUgMTdoLTFWMmgxem0wIDNoLTF2MmgxeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXdhcm5pbmctY2lyY2xlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0xMiAyYTEwIDEwIDAgMTAxMCAxMEExMCAxMCAwIDAwMTIgMnptMCAxOWE5IDkgMCAxMTktOSA5IDkgMCAwMS05IDl6bS0uNS02LjhWNS43aDEuMnY4LjV6bS0uMSAyLjNoMS4ydjEuOGgtMS4yeiIvPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXdoYXRzYXBwIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiLz48cGF0aCBkPSJNMTkuMDkgNC42M2ExMCAxMCAwIDAwLTE1LjY4IDEyTDIgMjEuOGw1LjI4LTEuMzhBMTAgMTAgMCAwMDEyIDIxLjYzYTEwIDEwIDAgMDA3LjA1LTE3aC4wNHpNMTIgMjBhOC4xOCA4LjE4IDAgMDEtNC4yMS0xLjE2bC0uMzEtLjE4LTMuMTMuODMuODQtMy4wNi0uMTktLjM2QTguMjggOC4yOCAwIDExMTIgMjB6bTQuNTQtNi4yYy0uMjUtLjEzLTEuNDctLjczLTEuNy0uODEtLjIzLS4wOC0uMzktLjEzLS41Ni4xMi0uMjQ2LjM0Ny0uNTEuNjgtLjc5IDEtLjE0LjE2LS4yOS4xOC0uNTQuMDZhNi45MiA2LjkyIDAgMDEtMi0xLjIzIDcuMjcgNy4yNyAwIDAxLTEuMzgtMS43M2MtLjE1LS4yNSAwLS4zOC4xMS0uNTFzLjI1LS4yOS4zNy0uNDNhMS41MSAxLjUxIDAgMDAuMjUtLjQyLjQ2LjQ2IDAgMDAwLS40M2MtLjA0LS4yLS41NC0xLjQyLS43NS0xLjkyLS4yMS0uNS0uNC0uNDItLjU2LS40M2gtLjQ3YTEgMSAwIDAwLS42Ny4zMUEyLjgxIDIuODEgMCAwMDcgOS40NSA0LjczIDQuNzMgMCAwMDggMTJhMTEgMTEgMCAwMDQuMjUgMy43NmMuNDY0LjIuOTM4LjM3OCAxLjQyLjUzYTMuMjggMy4yOCAwIDAwMS41Ni4wOSAyLjU0IDIuNTQgMCAwMDEuNjgtMS4xOCAyLjA5IDIuMDkgMCAwMC4xNS0xLjJjLS4wNi0uMDctLjIzLS4xMy0uNDgtLjI1bC0uMDQuMDV6Ii8+PC9zdmc+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGlkPSJpdC13aGF0c2FwcC1zcXVhcmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0xNiA4LjA3YTUuMzQgNS4zNCAwIDAwLTkuMTEgMy43NyA1LjI4IDUuMjggMCAwMC44MiAyLjg0bC4xMi4yLS41MyAyIDItLjUzLjIuMTFjLjgyLjQ5IDEuNzU2Ljc1IDIuNzEuNzVBNS4zNCA1LjM0IDAgMDAxNiA4LjA3em0tLjgzIDUuODNhMS42NiAxLjY2IDAgMDEtMS4wOC43NiAyLjIzIDIuMjMgMCAwMS0xLS4wNmMtLjIzLS4wOC0uNTMtLjE4LS45MS0uMzRhNy4xNiA3LjE2IDAgMDEtMi43OC0yLjQyIDMuMTMgMy4xMyAwIDAxLS42Ni0xLjY2IDEuODMgMS44MyAwIDAxLjU2LTEuMzQuNTkuNTkgMCAwMS40My0uMkgxMGMuMSAwIC4yMyAwIC4zNi4yNy4xMy4yNy40NSAxLjExLjQ5IDEuMTlhLjMuMyAwIDAxMCAuMjggMS4yIDEuMiAwIDAxLS4xNi4yN2MtLjA4LjEtLjE3LjIxLS4yNC4yOC0uMDcuMDctLjE3LjE3LS4wNy4zMy4yMzkuNDEzLjU0Ljc4Ny44OSAxLjExLjM4LjM0LjgxNi42MTIgMS4yOS44LjE2LjA4LjI1LjA2LjM0IDAgLjA5LS4wNi40LS40Ny41MS0uNjMuMTEtLjE2LjIxLS4xNC4zNi0uMDguMTUuMDYuOTQuNDQgMS4xLjUyLjE2LjA4LjI2LjEyLjMuMTlhMS4zNiAxLjM2IDAgMDEtLjAzLjczaC4wM3oiLz48cGF0aCBkPSJNMjEgNy4wOWE4LjI2IDguMjYgMCAwMC0uMDktMS4xNSAzLjQ5IDMuNDkgMCAwMC0xLjg1LTIuNTEgMy44OSAzLjg5IDAgMDAtMS0uMzJBOC4zNiA4LjM2IDAgMDAxNi45MSAzSDcuMDlhOC4yNiA4LjI2IDAgMDAtMS4xNS4wOUEzLjQ5IDMuNDkgMCAwMDMuNDMgNWEzLjg5IDMuODkgMCAwMC0uMzIgMUE4LjM2IDguMzYgMCAwMDMgNy4wOXY5LjgyYy4wMDMuMzg1LjAzMy43Ny4wOSAxLjE1QTMuNDkgMy40OSAwIDAwNSAyMC41N2EzLjg5IDMuODkgMCAwMDEgLjMyYy4zODQuMDYuNzcxLjA5NCAxLjE2LjFoOS44MmE4LjI2IDguMjYgMCAwMDEuMTUtLjA5IDMuNDkgMy40OSAwIDAwMi41MS0xLjg1IDMuODkgMy44OSAwIDAwLjMyLTEgOC4zNiA4LjM2IDAgMDAuMS0xLjE2VjcuNTdjLS4wNi0uMS0uMDYtLjMxLS4wNi0uNDh6bS04LjggMTEuMTdhNi4zOSA2LjM5IDAgMDEtMy4wNi0uNzhsLTMuNDEuODkuOTItMy4zMmE2LjMzIDYuMzMgMCAwMS0uODYtMy4yMSA2LjQxIDYuNDEgMCAwMTExLTQuNTMgNi4zMyA2LjMzIDAgMDExLjg4IDQuNTQgNi40MiA2LjQyIDAgMDEtNi40NyA2LjQxeiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtd2lmaSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjIgMTloLTFjMC04LjgtNy4yLTE2LTE2LTE2VjJjOS40IDAgMTcgNy42IDE3IDE3eiIvPjxwYXRoIGQ9Ik01IDd2MWM2LjEgMCAxMSA0LjkgMTEgMTFoMWMwLTYuNi01LjQtMTItMTItMTJ6TTUgMTJ2MWMzLjMgMCA2IDIuNyA2IDZoMWMwLTMuOS0zLjEtNy03LTd6TTUgMTdjLTEuMSAwLTIgLjktMiAycy45IDIgMiAyIDItLjkgMi0yLS45LTItMi0yem0wIDNjLS42IDAtMS0uNC0xLTFzLjQtMSAxLTEgMSAuNCAxIDEtLjQgMS0xIDF6Ii8+PGc+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvZz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXlvdXR1YmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjxwYXRoIGQ9Ik0yMS41NiA3LjJhMi41IDIuNSAwIDAwLTEuNzYtMS43N0MxOC4yNCA1IDEyIDUgMTIgNXMtNi4yNCAwLTcuOC40MkEyLjUgMi41IDAgMDAyLjQ0IDcuMiAyNS43MiAyNS43MiAwIDAwMiAxMmMtLjAxIDEuNjEuMTMgMy4yMTcuNDIgNC44YTIuNSAyLjUgMCAwMDEuNzggMS43N0M1Ljc2IDE5IDEyIDE5IDEyIDE5czYuMjQgMCA3LjgtLjQyYTIuNSAyLjUgMCAwMDEuNzYtMS43N0EyNS43MiAyNS43MiAwIDAwMjIgMTJhMjUuNzIgMjUuNzIgMCAwMC0uNDQtNC44ek0xMCAxNVY5bDUuMTkgM0wxMCAxNXoiLz48L3N2Zz48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgaWQ9Iml0LXpvb20taW4iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjQgOS41aDMuM3YxaC0zLjN2My4yaC0xdi0zLjJINi4ydi0xaDMuMlY2LjJoMXptMTAuNyAxMi40TDE1LjMgMTZhOC4zIDguMyAwIDAxLTUuMyAyIDggOCAwIDExOC04IDguMyA4LjMgMCAwMS0yIDUuM2w1LjkgNS44ek0xNyAxMGE3IDcgMCAxMC03IDcgNyA3IDAgMDA3LTd6Ii8+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgyNHYyNEgweiIvPjwvc3ZnPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiBpZD0iaXQtem9vbS1vdXQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTYuMiA5LjVoNy41djFINi4yem0xNC45IDEyLjRMMTUuMyAxNmE4LjMgOC4zIDAgMDEtNS4zIDIgOCA4IDAgMTE4LTggOC4zIDguMyAwIDAxLTIgNS4zbDUuOSA1Ljh6TTE3IDEwYTcgNyAwIDEwLTcgNyA3IDcgMCAwMDctN3oiLz48cGF0aCBmaWxsPSJub25lIiBkPSJNMCAwaDI0djI0SDB6Ii8+PC9zdmc+PC9kZWZzPjwvc3ZnPg==';
819
-
820
- var propTypes$j = {
821
- className: PropTypes.string,
822
- color: PropTypes.string,
823
- size: PropTypes.string,
824
- icon: PropTypes.string,
825
- padding: PropTypes.bool
826
- };
827
- var defaultProps$h = {
828
- color: '',
829
- size: '',
830
- icon: '',
831
- padding: false
832
- };
833
-
834
- var Icon = function Icon(_ref) {
835
- var _classNames;
836
-
837
- var color = _ref.color,
838
- size = _ref.size,
839
- icon = _ref.icon,
840
- className = _ref.className,
841
- padding = _ref.padding,
842
- attributes = _objectWithoutPropertiesLoose(_ref, ["color", "size", "icon", "className", "padding"]);
843
-
844
- var classes = classnames('icon', className, (_classNames = {}, _classNames["icon-" + color] = color, _classNames["icon-" + size] = size, _classNames['icon-padded'] = padding, _classNames), size);
845
- return /*#__PURE__*/React.createElement("svg", _extends({
846
- className: classes
847
- }, attributes), /*#__PURE__*/React.createElement("use", {
848
- href: iconSprite + "#" + icon
849
- }));
850
- };
851
-
852
- Icon.propTypes = propTypes$j;
853
- Icon.defaultProps = defaultProps$h;
854
-
855
- var propTypes$k = {
856
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
857
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
858
-
859
- /** Classi aggiuntive da usare per il componente HeaderBrand */
860
- className: PropTypes.string,
861
-
862
- /** Da usare per la sovrascrittura di classi predefinite */
863
- cssModule: PropTypes.object,
864
-
865
- /** Da usare con il componente Header Nav in versione "responsive" */
866
- responsive: PropTypes.bool,
867
-
868
- /** Da utilizzare per specificare URL risorsa esterna. */
869
- href: PropTypes.string,
870
-
871
- /** Icona da utilizzare nel componente. Utilizzata unicamente quando l'Header è di tipo Center. */
872
- iconName: PropTypes.string,
873
-
874
- /** Elementi React da renderizzare al proprio interno. */
875
- children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
876
- };
877
- var defaultProps$i = {
878
- tag: 'a',
879
- responsive: false
880
- };
881
-
882
- var HeaderBrand = /*#__PURE__*/function (_PureComponent) {
883
- _inheritsLoose(HeaderBrand, _PureComponent);
884
-
885
- function HeaderBrand() {
886
- return _PureComponent.apply(this, arguments) || this;
887
- }
888
-
889
- var _proto = HeaderBrand.prototype;
890
-
891
- _proto.addChildClasses = function addChildClasses(child, i) {
892
- // convention here: first item is the main title, while others subtext
893
- var className = classnames(child.props.className, 'no_toc', {
894
- 'd-none d-md-block': i
895
- } // subtext is anything but first element
896
- );
897
- var props = {
898
- className: className
899
- };
900
- return /*#__PURE__*/React.cloneElement(child, props);
901
- };
902
-
903
- _proto.render = function render() {
904
- var _this = this;
905
-
906
- var _this$props = this.props,
907
- className = _this$props.className,
908
- href = _this$props.href,
909
- iconName = _this$props.iconName,
910
- children = _this$props.children,
911
- responsive = _this$props.responsive,
912
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "href", "iconName", "children", "responsive"]);
913
-
914
- var type = this.context.type;
915
-
916
- if (type !== CENTER) {
917
- var classes = classnames('d-lg-block', className, {
918
- 'd-none': !responsive
919
- });
920
- return /*#__PURE__*/React.createElement(NavbarBrand, _extends({
921
- className: classes,
922
- href: href
923
- }, attributes), children);
924
- }
925
-
926
- return /*#__PURE__*/React.createElement("div", {
927
- className: "it-brand-wrapper"
928
- }, /*#__PURE__*/React.createElement("a", {
929
- href: href
930
- }, iconName && /*#__PURE__*/React.createElement(Icon, {
931
- icon: iconName
932
- }), /*#__PURE__*/React.createElement("div", {
933
- className: "it-brand-text"
934
- }, React.Children.map(children, function (child, i) {
935
- return _this.addChildClasses(child, i);
936
- }))));
937
- };
938
-
939
- return HeaderBrand;
940
- }(PureComponent);
941
-
942
- _defineProperty(HeaderBrand, "propTypes", propTypes$k);
943
-
944
- _defineProperty(HeaderBrand, "defaultProps", defaultProps$i);
945
-
946
- _defineProperty(HeaderBrand, "contextType", HeaderContext);
947
-
948
- var propTypes$l = {
949
- /** Classi addizionali per il componente HeaderContent */
950
- className: PropTypes.string,
951
-
952
- /** Da utilizzare per indicare che all'interno dell'Header verrà utilizzato un Megamenu */
953
- megamenu: PropTypes.bool,
954
-
955
- /** Parametro per il controllo responsive del componente: valori Bootstrap standard sono "sm", "md", "lg", "xl" */
956
- expand: PropTypes.oneOfType([PropTypes.bool, PropTypes.string])
957
- };
958
- var defaultProps$j = {};
959
-
960
- var HeaderContent = /*#__PURE__*/function (_PureComponent) {
961
- _inheritsLoose(HeaderContent, _PureComponent);
962
-
963
- function HeaderContent() {
964
- return _PureComponent.apply(this, arguments) || this;
965
- }
966
-
967
- var _proto = HeaderContent.prototype;
968
-
969
- _proto.render = function render() {
970
- var _this$props = this.props,
971
- className = _this$props.className,
972
- megamenu = _this$props.megamenu,
973
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "megamenu"]);
974
-
975
- var type = this.context.type;
976
- var classes = classnames(className, {
977
- 'it-header-slim-wrapper-content': type === SLIM,
978
- 'it-header-center-content-wrapper': type === CENTER,
979
- navbar: type === NAVBAR,
980
- 'has-megamenu': megamenu
981
- });
982
- var Content = type === NAVBAR ? /*#__PURE__*/React.createElement(Navbar, _extends({
983
- className: classes
984
- }, attributes)) : /*#__PURE__*/React.createElement("div", _extends({
985
- className: classes
986
- }, attributes));
987
- return /*#__PURE__*/React.createElement("div", {
988
- className: "container"
989
- }, /*#__PURE__*/React.createElement("div", {
990
- className: "row"
991
- }, /*#__PURE__*/React.createElement("div", {
992
- className: "col-12"
993
- }, Content)));
994
- };
995
-
996
- return HeaderContent;
997
- }(PureComponent);
998
-
999
- _defineProperty(HeaderContent, "propTypes", propTypes$l);
1000
-
1001
- _defineProperty(HeaderContent, "defaultProps", defaultProps$j);
1002
-
1003
- _defineProperty(HeaderContent, "contextType", HeaderContext);
1004
-
1005
- var propTypes$m = {
1006
- /** Classi addizionali per il componente HeaderLinkZone, applicata all'element "nav" annidato */
1007
- className: PropTypes.string
1008
- };
1009
- var defaultProps$k = {};
1010
-
1011
- var HeaderLinkZone = function HeaderLinkZone(_ref) {
1012
- var className = _ref.className,
1013
- attributes = _objectWithoutPropertiesLoose(_ref, ["className"]);
1014
-
1015
- var classes = classnames(className);
1016
- return /*#__PURE__*/React.createElement("div", {
1017
- className: "nav-mobile"
1018
- }, /*#__PURE__*/React.createElement("nav", _extends({
1019
- className: classes
1020
- }, attributes)));
1021
- };
1022
-
1023
- HeaderLinkZone.propTypes = propTypes$m;
1024
- HeaderLinkZone.defaultProps = defaultProps$k;
1025
-
1026
- var propTypes$n = {
1027
- /** Classi addizionali per il componente HeaderRightZone */
1028
- className: PropTypes.string
1029
- };
1030
- var defaultProps$l = {};
1031
-
1032
- var HeaderRightZone = /*#__PURE__*/function (_PureComponent) {
1033
- _inheritsLoose(HeaderRightZone, _PureComponent);
1034
-
1035
- function HeaderRightZone() {
1036
- return _PureComponent.apply(this, arguments) || this;
1037
- }
1038
-
1039
- var _proto = HeaderRightZone.prototype;
1040
-
1041
- _proto.render = function render() {
1042
- var _this$props = this.props,
1043
- className = _this$props.className,
1044
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className"]);
1045
-
1046
- var type = this.context.type;
1047
- var classes = classnames(className, {
1048
- // BI >= 1.3.6
1049
- 'it-header-slim-right-zone': type === SLIM,
1050
- // BI < 1.3.6
1051
- 'header-slim-right-zone': type === SLIM,
1052
- 'it-right-zone': type !== SLIM
1053
- });
1054
- return /*#__PURE__*/React.createElement("div", _extends({
1055
- className: classes
1056
- }, attributes));
1057
- };
1058
-
1059
- return HeaderRightZone;
1060
- }(PureComponent);
1061
-
1062
- _defineProperty(HeaderRightZone, "propTypes", propTypes$n);
1063
-
1064
- _defineProperty(HeaderRightZone, "defaultProps", defaultProps$l);
1065
-
1066
- _defineProperty(HeaderRightZone, "contextType", HeaderContext);
1067
-
1068
- var propTypes$o = {
1069
- /** Classi addizionali per il componente HeaderSearch */
1070
- className: PropTypes.string,
1071
-
1072
- /** Etichetta di testo da applicare all'elemento. In caso di stringa vuota non verrà mostrato alcun testo */
1073
- label: PropTypes.string,
1074
-
1075
- /** Nome dell'icona da utilizzare */
1076
- iconName: PropTypes.string,
1077
-
1078
- /** Indirizzo di indirizzamento al click dell'icona */
1079
- href: PropTypes.string
1080
- };
1081
- var defaultProps$m = {
1082
- iconName: 'it-search'
1083
- };
1084
-
1085
- var HeaderSearch = function HeaderSearch(_ref) {
1086
- var className = _ref.className,
1087
- label = _ref.label,
1088
- href = _ref.href,
1089
- iconName = _ref.iconName,
1090
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "label", "href", "iconName"]);
1091
-
1092
- var classes = classnames('it-search-wrapper', className);
1093
- return /*#__PURE__*/React.createElement("div", _extends({
1094
- className: classes
1095
- }, attributes), label && /*#__PURE__*/React.createElement("span", {
1096
- className: "d-none d-md-block"
1097
- }, label), /*#__PURE__*/React.createElement("a", {
1098
- className: "search-link rounded-icon",
1099
- "aria-label": label,
1100
- href: href
1101
- }, /*#__PURE__*/React.createElement(Icon, {
1102
- icon: iconName
1103
- })));
1104
- };
1105
-
1106
- HeaderSearch.propTypes = propTypes$o;
1107
- HeaderSearch.defaultProps = defaultProps$m;
1108
-
1109
- var propTypes$p = {
1110
- /** Classi addizionali per il componente HeaderSocialsZone, verrà applicato all'elemento wrapper più esterno. */
1111
- className: PropTypes.string,
1112
-
1113
- /** Etichetta utilizzata per presentare i social presenti. In caso di stringa vuota non verrà mostrata alcuna etichetta */
1114
- label: PropTypes.string,
1115
-
1116
- /** Utilizzato per elencare i social da mostrare */
1117
- children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node])
1118
- };
1119
- var defaultProps$n = {};
1120
-
1121
- var HeaderSocialsZone = function HeaderSocialsZone(_ref) {
1122
- var className = _ref.className,
1123
- children = _ref.children,
1124
- label = _ref.label,
1125
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "children", "label"]);
1126
-
1127
- var classes = classnames('it-socials d-none d-md-flex', className);
1128
- return /*#__PURE__*/React.createElement("div", _extends({
1129
- className: classes
1130
- }, attributes), label && /*#__PURE__*/React.createElement("span", null, label), children);
1131
- };
1132
-
1133
- HeaderSocialsZone.propTypes = propTypes$p;
1134
- HeaderSocialsZone.defaultProps = defaultProps$n;
1135
-
1136
- var propTypes$q = {
1137
- /** Tipo di elemento DOM da utilizzare: di default "a" per Header Slim, "button" per altri tipi di Header.
1138
- * Se fornito questo sovrascriverà il valore di default.
1139
- */
1140
- tag: PropTypes.string,
1141
-
1142
- /** Indica l'attributo "type" sull'elemento DOM. Di default '' per Header Slim, "button" per altri tipi di Header.
1143
- * Se fornito questo sovrascriverà il valore di default.
1144
- */
1145
- type: PropTypes.string,
1146
-
1147
- /** Classi addizionali per il componente HeaderToggler */
1148
- className: PropTypes.string
1149
- };
1150
- var defaultProps$o = {};
1151
-
1152
- var HeaderToggler = /*#__PURE__*/function (_PureComponent) {
1153
- _inheritsLoose(HeaderToggler, _PureComponent);
1154
-
1155
- function HeaderToggler() {
1156
- return _PureComponent.apply(this, arguments) || this;
1157
- }
1158
-
1159
- var _proto = HeaderToggler.prototype;
1160
-
1161
- _proto.render = function render() {
1162
- var _this$props = this.props,
1163
- className = _this$props.className,
1164
- tag = _this$props.tag,
1165
- type = _this$props.type,
1166
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "tag", "type"]);
1167
-
1168
- var HeaderType = this.context.type;
1169
- var BUTTON = 'button';
1170
- var defaultTag = HeaderType === SLIM ? 'a' : BUTTON;
1171
- var defaultType = HeaderType === SLIM ? '' : BUTTON;
1172
- var classes = classnames({
1173
- 'it-opener d-lg-none': HeaderType === SLIM,
1174
- 'custom-navbar-toggler': HeaderType === NAVBAR
1175
- }, className);
1176
- return /*#__PURE__*/React.createElement(NavbarToggler, _extends({
1177
- className: classes
1178
- }, attributes, {
1179
- tag: tag || defaultTag,
1180
- type: type || defaultType,
1181
- href: "#"
1182
- }));
1183
- };
1184
-
1185
- return HeaderToggler;
1186
- }(PureComponent);
1187
-
1188
- _defineProperty(HeaderToggler, "propTypes", propTypes$q);
1189
-
1190
- _defineProperty(HeaderToggler, "defaultProps", defaultProps$o);
1191
-
1192
- _defineProperty(HeaderToggler, "contextType", HeaderContext);
1193
-
1194
- function Hero(props) {
1195
- return /*#__PURE__*/React.createElement(Jumbotron, props);
1196
- }
1197
- Hero.defaultProps = Jumbotron.defaultProps;
1198
- Hero.propTypes = Jumbotron.propTypes;
1199
-
1200
- /*!
1201
- * Determine if an object is a Buffer
1202
- *
1203
- * @author Feross Aboukhadijeh <https://feross.org>
1204
- * @license MIT
1205
- */
1206
- // The _isBuffer check is for Safari 5-7 support, because it's missing
1207
- // Object.prototype.constructor. Remove this eventually
1208
- var isBuffer_1 = function isBuffer_1(obj) {
1209
- return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer);
1210
- };
1211
-
1212
- function isBuffer(obj) {
1213
- return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj);
1214
- } // For Node v0.10 support. Remove this eventually.
1215
-
1216
-
1217
- function isSlowBuffer(obj) {
1218
- return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0));
1219
- }
1220
-
1221
- var toString = Object.prototype.toString;
1222
- /**
1223
- * Get the native `typeof` a value.
1224
- *
1225
- * @param {*} `val`
1226
- * @return {*} Native javascript type
1227
- */
1228
-
1229
- var kindOf = function kindOf(val) {
1230
- // primitivies
1231
- if (typeof val === 'undefined') {
1232
- return 'undefined';
1233
- }
1234
-
1235
- if (val === null) {
1236
- return 'null';
1237
- }
1238
-
1239
- if (val === true || val === false || val instanceof Boolean) {
1240
- return 'boolean';
1241
- }
1242
-
1243
- if (typeof val === 'string' || val instanceof String) {
1244
- return 'string';
1245
- }
1246
-
1247
- if (typeof val === 'number' || val instanceof Number) {
1248
- return 'number';
1249
- } // functions
1250
-
1251
-
1252
- if (typeof val === 'function' || val instanceof Function) {
1253
- return 'function';
1254
- } // array
1255
-
1256
-
1257
- if (typeof Array.isArray !== 'undefined' && Array.isArray(val)) {
1258
- return 'array';
1259
- } // check for instances of RegExp and Date before calling `toString`
1260
-
1261
-
1262
- if (val instanceof RegExp) {
1263
- return 'regexp';
1264
- }
1265
-
1266
- if (val instanceof Date) {
1267
- return 'date';
1268
- } // other objects
1269
-
1270
-
1271
- var type = toString.call(val);
1272
-
1273
- if (type === '[object RegExp]') {
1274
- return 'regexp';
1275
- }
1276
-
1277
- if (type === '[object Date]') {
1278
- return 'date';
1279
- }
1280
-
1281
- if (type === '[object Arguments]') {
1282
- return 'arguments';
1283
- }
1284
-
1285
- if (type === '[object Error]') {
1286
- return 'error';
1287
- } // buffer
1288
-
1289
-
1290
- if (isBuffer_1(val)) {
1291
- return 'buffer';
1292
- } // es6: Map, WeakMap, Set, WeakSet
1293
-
1294
-
1295
- if (type === '[object Set]') {
1296
- return 'set';
1297
- }
1298
-
1299
- if (type === '[object WeakSet]') {
1300
- return 'weakset';
1301
- }
1302
-
1303
- if (type === '[object Map]') {
1304
- return 'map';
1305
- }
1306
-
1307
- if (type === '[object WeakMap]') {
1308
- return 'weakmap';
1309
- }
1310
-
1311
- if (type === '[object Symbol]') {
1312
- return 'symbol';
1313
- } // typed arrays
1314
-
1315
-
1316
- if (type === '[object Int8Array]') {
1317
- return 'int8array';
1318
- }
1319
-
1320
- if (type === '[object Uint8Array]') {
1321
- return 'uint8array';
1322
- }
1323
-
1324
- if (type === '[object Uint8ClampedArray]') {
1325
- return 'uint8clampedarray';
1326
- }
1327
-
1328
- if (type === '[object Int16Array]') {
1329
- return 'int16array';
1330
- }
1331
-
1332
- if (type === '[object Uint16Array]') {
1333
- return 'uint16array';
1334
- }
1335
-
1336
- if (type === '[object Int32Array]') {
1337
- return 'int32array';
1338
- }
1339
-
1340
- if (type === '[object Uint32Array]') {
1341
- return 'uint32array';
1342
- }
1343
-
1344
- if (type === '[object Float32Array]') {
1345
- return 'float32array';
1346
- }
1347
-
1348
- if (type === '[object Float64Array]') {
1349
- return 'float64array';
1350
- } // must be a plain object
1351
-
1352
-
1353
- return 'object';
1354
- };
1355
-
1356
- var isNumber = function isNumber(num) {
1357
- var type = kindOf(num);
1358
-
1359
- if (type === 'string') {
1360
- if (!num.trim()) return false;
1361
- } else if (type !== 'number') {
1362
- return false;
1363
- }
1364
-
1365
- return num - num + 1 >= 0;
1366
- };
1367
-
1368
- var propTypes$r = {
1369
- value: PropTypes.string,
1370
- id: PropTypes.string,
1371
- label: PropTypes.string,
1372
- infoText: PropTypes.string,
1373
- wrapperClass: PropTypes.string,
1374
- activeClass: PropTypes.string,
1375
- infoTextClass: PropTypes.string,
1376
- children: PropTypes.node
1377
- };
1378
- var defaultProps$p = {};
1379
-
1380
- var InputContainer = function InputContainer(_ref) {
1381
- var id = _ref.id,
1382
- activeClass = _ref.activeClass,
1383
- label = _ref.label,
1384
- infoTextClass = _ref.infoTextClass,
1385
- infoText = _ref.infoText,
1386
- wrapperClass = _ref.wrapperClass,
1387
- children = _ref.children;
1388
- return /*#__PURE__*/React.createElement("div", {
1389
- className: wrapperClass
1390
- }, children, /*#__PURE__*/React.createElement("label", {
1391
- htmlFor: id,
1392
- className: activeClass
1393
- }, label), /*#__PURE__*/React.createElement("small", {
1394
- className: infoTextClass
1395
- }, infoText));
1396
- };
1397
-
1398
- InputContainer.propTypes = propTypes$r;
1399
- InputContainer.defaultProps = defaultProps$p;
1400
-
1401
- var mapToCssModules = Util.mapToCssModules;
1402
-
1403
- function getFormControlClassInternal(_ref) {
1404
- var plaintext = _ref.plaintext,
1405
- staticInput = _ref.staticInput,
1406
- type = _ref.type,
1407
- addon = _ref.addon;
1408
- var formControlClass = 'form-control';
1409
-
1410
- if (plaintext || staticInput) {
1411
- return formControlClass + "-plaintext";
1412
- }
1413
-
1414
- if (type === 'file') {
1415
- return formControlClass + "-file";
1416
- }
1417
-
1418
- if (['radio', 'checkbox'].indexOf(type) > -1) {
1419
- if (addon) {
1420
- return null;
1421
- }
1422
- }
1423
-
1424
- return formControlClass;
1425
- }
1426
-
1427
- function getFormControlClass(props, cssModule) {
1428
- return mapToCssModules(getFormControlClassInternal(props), cssModule);
1429
- }
1430
- function getInfoTextControlClass(_ref2, cssModule) {
1431
- var valid = _ref2.valid,
1432
- invalid = _ref2.invalid;
1433
- return mapToCssModules(classnames({
1434
- 'form-text text-muted': valid || invalid
1435
- }), cssModule);
1436
- }
1437
- function getTag(_ref3) {
1438
- var tag = _ref3.tag,
1439
- plaintext = _ref3.plaintext,
1440
- staticInput = _ref3.staticInput,
1441
- type = _ref3.type;
1442
-
1443
- if (tag) {
1444
- return tag;
1445
- }
1446
-
1447
- if (['radio', 'checkbox'].indexOf(type) > -1) {
1448
- return 'input';
1449
- }
1450
-
1451
- if (staticInput) {
1452
- return 'p';
1453
- }
1454
-
1455
- return 'input';
1456
- }
1457
- function getClasses(className, _ref4, cssModule) {
1458
- var _classNames;
1459
-
1460
- var isFocused = _ref4.isFocused,
1461
- valid = _ref4.valid,
1462
- invalid = _ref4.invalid,
1463
- bsSize = _ref4.bsSize,
1464
- placeholder = _ref4.placeholder,
1465
- value = _ref4.value,
1466
- label = _ref4.label,
1467
- infoText = _ref4.infoText,
1468
- normalized = _ref4.normalized,
1469
- inputPassword = _ref4.inputPassword,
1470
- formControlClass = _ref4.formControlClass,
1471
- infoTextControlClass = _ref4.infoTextControlClass;
1472
- var hasPlainCondition = placeholder || label || infoText;
1473
- var baseCondition = hasPlainCondition && !normalized && !inputPassword;
1474
- var passwordOnlyCondition = inputPassword && !hasPlainCondition && !normalized;
1475
- var normalizedOnlyCondition = normalized && !hasPlainCondition && !inputPassword;
1476
- var classes = mapToCssModules(classnames(className, (_classNames = {
1477
- 'is-invalid': invalid,
1478
- 'is-valid': valid
1479
- }, _classNames["form-control-" + bsSize] = bsSize, _classNames), formControlClass), cssModule);
1480
- var wrapperClass = mapToCssModules(classnames(className, 'form-group'), cssModule);
1481
- var infoTextClass = mapToCssModules(classnames({
1482
- 'valid-feedback': valid,
1483
- 'invalid-feedback': invalid
1484
- }, infoTextControlClass), cssModule);
1485
- var inputClasses = mapToCssModules(classnames(classes, !baseCondition && {
1486
- // we can model here only if stylings
1487
- 'form-control-plaintext': normalizedOnlyCondition,
1488
- 'form-control': passwordOnlyCondition,
1489
- 'input-password': passwordOnlyCondition,
1490
- 'focus--mouse': passwordOnlyCondition || normalizedOnlyCondition
1491
- }), cssModule);
1492
- var activeClass = mapToCssModules(classnames({
1493
- active: isFocused || placeholder || value
1494
- }), cssModule);
1495
- return {
1496
- wrapperClass: wrapperClass,
1497
- inputClasses: inputClasses,
1498
- activeClass: activeClass,
1499
- infoTextClass: infoTextClass
1500
- };
1501
- }
1502
-
1503
- var deprecated = Util.deprecated,
1504
- warnOnce = Util.warnOnce;
1505
- var propTypes$s = {
1506
- children: PropTypes.node,
1507
- type: PropTypes.string,
1508
- size: PropTypes.string,
1509
- label: PropTypes.string,
1510
- placeholder: PropTypes.string,
1511
- value: PropTypes.string,
1512
- id: PropTypes.string,
1513
- infoText: PropTypes.string,
1514
- normalized: PropTypes.bool,
1515
- bsSize: PropTypes.string,
1516
- state: deprecated(PropTypes.string, 'Please use the props "valid" and "invalid" to indicate the state.'),
1517
- valid: PropTypes.bool,
1518
- invalid: PropTypes.bool,
1519
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
1520
- innerRef: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
1521
- static: deprecated(PropTypes.bool, 'Please use the prop "plaintext"'),
1522
- plaintext: PropTypes.bool,
1523
- addon: PropTypes.bool,
1524
- className: PropTypes.string,
1525
- cssModule: PropTypes.object
1526
- };
1527
- var defaultProps$q = {
1528
- type: 'text'
1529
- };
1530
-
1531
- var Input = /*#__PURE__*/function (_React$Component) {
1532
- _inheritsLoose(Input, _React$Component);
1533
-
1534
- function Input() {
1535
- var _this;
1536
-
1537
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
1538
- args[_key] = arguments[_key];
1539
- }
1540
-
1541
- _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;
1542
-
1543
- _defineProperty(_assertThisInitialized(_this), "state", {
1544
- isFocused: false,
1545
- hidden: true,
1546
- icon: true
1547
- });
1548
-
1549
- _defineProperty(_assertThisInitialized(_this), "toggleFocusLabel", function () {
1550
- _this.setState({
1551
- isFocused: true
1552
- });
1553
- });
1554
-
1555
- _defineProperty(_assertThisInitialized(_this), "toggleBlurLabel", function (e) {
1556
- if (e.target.value === '') {
1557
- _this.setState({
1558
- isFocused: !_this.state.isFocused
1559
- });
1560
- }
1561
- });
1562
-
1563
- _defineProperty(_assertThisInitialized(_this), "toggleShow", function () {
1564
- _this.setState({
1565
- hidden: !_this.state.hidden,
1566
- icon: !_this.state.icon
1567
- });
1568
- });
1569
-
1570
- return _this;
1571
- }
1572
-
1573
- var _proto = Input.prototype;
1574
-
1575
- _proto.render = function render() {
1576
- var _this$props = this.props,
1577
- id = _this$props.id,
1578
- className = _this$props.className,
1579
- cssModule = _this$props.cssModule,
1580
- type = _this$props.type,
1581
- state = _this$props.state,
1582
- tag = _this$props.tag,
1583
- addon = _this$props.addon,
1584
- staticInput = _this$props.static,
1585
- plaintext = _this$props.plaintext,
1586
- innerRef = _this$props.innerRef,
1587
- label = _this$props.label,
1588
- infoText = _this$props.infoText,
1589
- placeholder = _this$props.placeholder,
1590
- normalized = _this$props.normalized,
1591
- value = _this$props.value,
1592
- attributes = _objectWithoutPropertiesLoose(_this$props, ["id", "className", "cssModule", "type", "state", "tag", "addon", "static", "plaintext", "innerRef", "label", "infoText", "placeholder", "normalized", "value"]);
1593
-
1594
- var _this$props2 = this.props,
1595
- bsSize = _this$props2.bsSize,
1596
- valid = _this$props2.valid,
1597
- invalid = _this$props2.invalid;
1598
- var Tag = getTag({
1599
- tag: tag,
1600
- plaintext: plaintext,
1601
- staticInput: staticInput,
1602
- type: type
1603
- });
1604
- var formControlClass = getFormControlClass({
1605
- plaintext: plaintext,
1606
- staticInput: staticInput,
1607
- type: type,
1608
- addon: addon
1609
- }, cssModule);
1610
- var infoTextControlClass = getInfoTextControlClass({
1611
- valid: valid,
1612
- invalid: invalid
1613
- }, cssModule);
1614
-
1615
- if (state && valid == null && invalid == null) {
1616
- invalid = state === 'danger';
1617
- valid = state === 'success';
1618
- }
1619
-
1620
- if (attributes.size && !isNumber(attributes.size)) {
1621
- warnOnce('Please use the prop "bsSize" instead of the "size" to bootstrap\'s input sizing.');
1622
- bsSize = attributes.size;
1623
- delete attributes.size;
1624
- }
1625
-
1626
- if (Tag === 'input' || typeof tag !== 'string') {
1627
- attributes.type = type;
1628
- }
1629
-
1630
- if (attributes.children && !(plaintext || staticInput || type === 'select' || typeof Tag !== 'string' || Tag === 'select')) {
1631
- warnOnce("Input with a type of \"" + type + "\" cannot have children. Please use \"value\"/\"defaultValue\" instead.");
1632
- delete attributes.children;
1633
- }
1634
-
1635
- var inputPassword = attributes.type === 'password'; // Styling
1636
-
1637
- var _getClasses = getClasses(className, {
1638
- valid: valid,
1639
- invalid: invalid,
1640
- bsSize: bsSize,
1641
- placeholder: placeholder,
1642
- value: value,
1643
- label: label,
1644
- infoText: infoText,
1645
- normalized: normalized,
1646
- inputPassword: inputPassword,
1647
- formControlClass: formControlClass,
1648
- infoTextControlClass: infoTextControlClass,
1649
- isFocused: this.state.isFocused
1650
- }, cssModule),
1651
- activeClass = _getClasses.activeClass,
1652
- infoTextClass = _getClasses.infoTextClass,
1653
- inputClasses = _getClasses.inputClasses,
1654
- wrapperClass = _getClasses.wrapperClass; // set of attributes always shared by the Input components
1655
-
1656
-
1657
- var sharedAttributes = {
1658
- id: id,
1659
- onFocus: this.toggleFocusLabel,
1660
- onBlur: this.toggleBlurLabel,
1661
- value: value,
1662
- ref: innerRef
1663
- }; // set of attributes always shared by the wrapper component
1664
-
1665
- var containerProps = {
1666
- id: id,
1667
- activeClass: activeClass,
1668
- label: label,
1669
- infoTextClass: infoTextClass,
1670
- infoText: infoText,
1671
- wrapperClass: wrapperClass
1672
- };
1673
-
1674
- if (placeholder) {
1675
- return /*#__PURE__*/React.createElement(InputContainer, containerProps, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, sharedAttributes, {
1676
- className: inputClasses,
1677
- placeholder: placeholder
1678
- })));
1679
- }
1680
-
1681
- if (inputPassword) {
1682
- return /*#__PURE__*/React.createElement(InputContainer, containerProps, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, sharedAttributes, {
1683
- type: this.state.hidden ? 'password' : 'text',
1684
- className: inputClasses,
1685
- placeholder: placeholder
1686
- })), /*#__PURE__*/React.createElement("span", {
1687
- className: "password-icon",
1688
- "aria-hidden": "true"
1689
- }, /*#__PURE__*/React.createElement(Icon, {
1690
- size: "sm",
1691
- icon: "it-password-" + (this.state.icon ? 'visible' : 'invisible'),
1692
- className: "password-icon-visible",
1693
- onClick: this.toggleShow
1694
- })));
1695
- }
1696
-
1697
- if (normalized) {
1698
- return /*#__PURE__*/React.createElement(InputContainer, containerProps, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, sharedAttributes, {
1699
- className: inputClasses,
1700
- readOnly: true
1701
- })));
1702
- }
1703
-
1704
- if (label || infoText) {
1705
- return /*#__PURE__*/React.createElement(InputContainer, containerProps, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, sharedAttributes, {
1706
- className: inputClasses
1707
- })));
1708
- }
1709
-
1710
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
1711
- ref: innerRef,
1712
- className: inputClasses
1713
- }, sharedAttributes));
1714
- };
1715
-
1716
- return Input;
1717
- }(React.Component);
1718
-
1719
- Input.propTypes = propTypes$s;
1720
- Input.defaultProps = defaultProps$q;
1721
-
1722
- var propTypes$t = {
1723
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
1724
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
1725
-
1726
- /** Da utilizzare in caso di titolo principale della lista. Passare una componente React da mostrare come titolo */
1727
- header: PropTypes.node,
1728
-
1729
- /** Classi aggiuntive da usare per il componente lista del LinkList */
1730
- className: PropTypes.string,
1731
-
1732
- /** Classi aggiuntive da usare per il componente wrapper del LinkList */
1733
- wrapperClassName: PropTypes.string,
1734
-
1735
- /** Quando è abilitato gestisce una lista in cui ciascun elemento è composto da più componenti/elementi. */
1736
- multiline: PropTypes.bool,
1737
- sublist: PropTypes.bool,
1738
- avatar: PropTypes.bool
1739
- };
1740
- var defaultProps$r = {
1741
- tag: 'div'
1742
- };
1743
-
1744
- var LinkList = function LinkList(props) {
1745
- var className = props.className,
1746
- wrapperClassName = props.wrapperClassName,
1747
- Tag = props.tag,
1748
- multiline = props.multiline,
1749
- header = props.header,
1750
- sublist = props.sublist,
1751
- avatar = props.avatar,
1752
- attributes = _objectWithoutPropertiesLoose(props, ["className", "wrapperClassName", "tag", "multiline", "header", "sublist", "avatar"]);
1753
-
1754
- var wrapperClasses = classnames(multiline ? 'multiline' : false, 'link-list-wrapper', wrapperClassName);
1755
- var classes = classnames(className, sublist ? 'link-sublist' : 'link-list', avatar && 'avatar-group');
1756
-
1757
- if (sublist) {
1758
- return /*#__PURE__*/React.createElement(React.Fragment, null, header, /*#__PURE__*/React.createElement("ul", _extends({}, attributes, {
1759
- className: classes
1760
- })));
1761
- }
1762
-
1763
- return /*#__PURE__*/React.createElement(Tag, {
1764
- className: wrapperClasses
1765
- }, header, /*#__PURE__*/React.createElement("ul", _extends({}, attributes, {
1766
- className: classes
1767
- })));
1768
- };
1769
-
1770
- LinkList.propTypes = propTypes$t;
1771
- LinkList.defaultProps = defaultProps$r;
1772
-
1773
- var propTypes$u = {
1774
- /** Indica se l'elemento è attivo o no */
1775
- active: PropTypes.bool,
1776
-
1777
- /** Indica se l'elemento è disabilitato o no */
1778
- disabled: PropTypes.bool,
1779
-
1780
- /** Indica se l'elemento è un titolo. */
1781
- header: PropTypes.bool,
1782
-
1783
- /** Indica se l'elemento è un divisore */
1784
- divider: PropTypes.bool,
1785
-
1786
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
1787
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
1788
-
1789
- /** Classi aggiuntive da usare per il componente LinkListItem */
1790
- className: PropTypes.any,
1791
-
1792
- /** Indica il link a cui l'elemento deve puntare. */
1793
- href: PropTypes.string,
1794
-
1795
- /** Indica la taglia/grandezza dell'elemento */
1796
- size: PropTypes.string
1797
- };
1798
- var defaultProps$s = {
1799
- tag: 'a'
1800
- };
1801
-
1802
- var handleDisabledOnClick = function handleDisabledOnClick(e) {
1803
- e.preventDefault();
1804
- };
1805
-
1806
- var LinkListItem = function LinkListItem(_ref) {
1807
- var className = _ref.className,
1808
- active = _ref.active,
1809
- disabled = _ref.disabled,
1810
- header = _ref.header,
1811
- divider = _ref.divider,
1812
- href = _ref.href,
1813
- size = _ref.size,
1814
- Tag = _ref.tag,
1815
- attributes = _objectWithoutPropertiesLoose(_ref, ["className", "active", "disabled", "header", "divider", "href", "size", "tag"]);
1816
-
1817
- var classes = classnames(className, {
1818
- active: active,
1819
- disabled: disabled,
1820
- header: header,
1821
- divider: divider,
1822
- size: size
1823
- }, 'list-item'); // Prevent click event when disabled.
1824
-
1825
- if (disabled) {
1826
- attributes.onClick = handleDisabledOnClick;
1827
- }
1828
-
1829
- if (header) {
1830
- Tag = 'h3';
1831
- } else if (divider) {
1832
- Tag = 'span';
1833
- }
1834
-
1835
- if (header && href) {
1836
- return /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(Tag, null, /*#__PURE__*/React.createElement("a", _extends({
1837
- href: href || '#'
1838
- }, attributes, {
1839
- className: classes
1840
- }))));
1841
- }
1842
-
1843
- attributes.href = href;
1844
- return /*#__PURE__*/React.createElement("li", null, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
1845
- className: classes
1846
- })));
1847
- };
1848
-
1849
- LinkListItem.propTypes = propTypes$u;
1850
- LinkListItem.defaultProps = defaultProps$s;
1851
-
1852
- var propTypes$v = {
1853
- /** Renderizza i componenti NavItem al suo interno come tab. */
1854
- tabs: PropTypes.bool,
1855
-
1856
- /** Renderizza i componenti NavItem al suo interno come pills. */
1857
- pills: PropTypes.bool,
1858
-
1859
- /** Renderizza i componenti NavItem al suo interno come tab. */
1860
- card: PropTypes.bool,
1861
-
1862
- /** Se abilitato tutti i NavItem all'interno avranno la stessa larghezza */
1863
- justified: PropTypes.bool,
1864
-
1865
- /** Se abilitato i NavItem all'intero occuperanno tutto lo spazio disponibile */
1866
- fill: PropTypes.bool,
1867
-
1868
- /** Da utilizzare per rendere il componente Nav verticale. Viene abilitato automaticamente in versione mobile. Valori possibili sono `true`, `false` o `"xs"` */
1869
- vertical: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),
1870
-
1871
- /** Da utilizzare per cambiare l'allineamento all'interno della Nav. Valori possibili sono `"center"` o `"end"` per posizionare il contenuto a centro o sulla destra. */
1872
- horizontal: PropTypes.string,
1873
-
1874
- /** Se utilizzata all'interno di una navbar, impostarlo su `true`. In caso di Header Nav, impostarlo a `true` insieme a inHeader. */
1875
- navbar: PropTypes.bool,
1876
-
1877
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
1878
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
1879
- };
1880
- var defaultProps$t = {
1881
- tag: 'ul',
1882
- vertical: false
1883
- };
1884
-
1885
- var Nav = function Nav(_ref) {
1886
- var attributes = _extends({}, _ref);
1887
-
1888
- return /*#__PURE__*/React.createElement(Nav$1, attributes);
1889
- };
1890
-
1891
- Nav.propTypes = propTypes$v;
1892
- Nav.defaultProps = defaultProps$t;
1893
-
1894
- var propTypes$w = {
1895
- children: PropTypes.node,
1896
- className: PropTypes.string,
1897
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
1898
- 'aria-label': PropTypes.string
1899
- };
1900
- var defaultProps$u = {
1901
- tag: 'nav',
1902
- 'aria-label': 'pagination'
1903
- };
1904
-
1905
- var Pager = function Pager(props) {
1906
- var children = props.children,
1907
- className = props.className,
1908
- Tag = props.tag,
1909
- label = props['aria-label'];
1910
- var classes = classnames(className, 'pagination-wrapper');
1911
- return /*#__PURE__*/React.createElement(Tag, {
1912
- className: classes,
1913
- "aria-label": label
1914
- }, children);
1915
- };
1916
-
1917
- Pager.propTypes = propTypes$w;
1918
- Pager.defaultProps = defaultProps$u;
1919
-
1920
- var propTypes$x = {
1921
- className: PropTypes.string,
1922
- size: PropTypes.string,
1923
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string])
1924
- };
1925
- var defaultProps$v = {
1926
- tag: 'ul'
1927
- };
1928
-
1929
- var PagerList = function PagerList(props) {
1930
- var _classNames;
1931
-
1932
- var className = props.className,
1933
- size = props.size,
1934
- Tag = props.tag,
1935
- attributes = _objectWithoutPropertiesLoose(props, ["className", "size", "tag"]);
1936
-
1937
- var listClasses = classnames(className, 'pagination', (_classNames = {}, _classNames["pagination-" + size] = !!size, _classNames));
1938
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
1939
- className: listClasses
1940
- }));
1941
- };
1942
-
1943
- PagerList.propTypes = propTypes$x;
1944
- PagerList.defaultProps = defaultProps$v;
1945
-
1946
- var noop = function noop() {};
1947
-
1948
- var propTypes$y = {
1949
- /** La lista di id per ciascun elemento intero del Rating. La lista deve essere ordinata dal rating 1 al rating 5. */
1950
- inputs: PropTypes.arrayOf(PropTypes.string).isRequired,
1951
-
1952
- /** Il campo "label" è impostato di default su "Valuta ${n} stelle su 5", ma può essere personalizzato con questa funzione che riceve il numero input come argomento `function (n: number) => string`. */
1953
- labelTemplate: PropTypes.func,
1954
-
1955
- /** Da utilizzare in caso legenda principale del Rating. Passare una componente React da mostrare come legenda (all'interno del tag `<legend>`). It is possible also to show the legend of screen readers only */
1956
- legend: PropTypes.oneOf([PropTypes.node, PropTypes.string, PropTypes.shape({
1957
- content: PropTypes.string,
1958
- srOnly: PropTypes.bool
1959
- })]),
1960
-
1961
- /** Mostra la leggenda solo ai dispositivi screen reader */
1962
-
1963
- /** Parametro name da dare all'input */
1964
- name: PropTypes.string,
1965
-
1966
- /** Classi aggiuntive da usare per il componente wrapper del Rating */
1967
- wrapperClassName: PropTypes.string,
1968
-
1969
- /** Classi aggiuntive da usare per ciascun elemento all'interno del componente Rating */
1970
- className: PropTypes.string,
1971
-
1972
- /** Callback chiamata ad ogni cambio di valore di rating. Il nuovo valore ed il name verranno passati: `function (n, name) => void` */
1973
- onChangeRating: PropTypes.func,
1974
-
1975
- /** Rende il componente read-only */
1976
- readOnly: PropTypes.bool,
1977
-
1978
- /** Il valore corrente del componente */
1979
- value: PropTypes.number
1980
- };
1981
- var defaultProps$w = {
1982
- onChangeRating: function onChangeRating(value, name) {},
1983
- labelTemplate: function labelTemplate(value) {
1984
- return "Valuta " + value + " stelle su 5";
1985
- }
1986
- };
1987
-
1988
- var Rating = function Rating(props) {
1989
- var className = props.className,
1990
- inputs = props.inputs,
1991
- labelTemplate = props.labelTemplate,
1992
- legend = props.legend,
1993
- name = props.name,
1994
- onChangeRating = props.onChangeRating,
1995
- readOnly = props.readOnly,
1996
- value = props.value,
1997
- wrapperClassName = props.wrapperClassName,
1998
- attributes = _objectWithoutPropertiesLoose(props, ["className", "inputs", "labelTemplate", "legend", "name", "onChangeRating", "readOnly", "value", "wrapperClassName"]); // Input data
1999
- // On the DOM we have to go from 5 to 1
2000
-
2001
-
2002
- var safeInputs = (inputs || []).reverse(); // Fields
2003
-
2004
- var labelFn = labelTemplate;
2005
- var onChange = readOnly ? onChangeRating : noop;
2006
- var wrapperClasses = classnames(wrapperClassName, {
2007
- 'rating-read-only': readOnly,
2008
- 'rating-label': legend
2009
- });
2010
- var fieldClasses = classnames(className);
2011
- var extraFieldAttrs = readOnly ? {
2012
- ariaHidden: 'true'
2013
- } : {}; // Legend
2014
-
2015
- var isLegendString = typeof legend === 'string';
2016
- var isLegendObject = legend != null && typeof legend === 'object' && typeof legend.content === 'string';
2017
- var legendClass = classnames({
2018
- 'sr-only': isLegendObject && legend.srOnly
2019
- });
2020
- var legendText = isLegendObject ? legend.content : legend;
2021
- var legendContent = isLegendObject || isLegendString ? /*#__PURE__*/React.createElement("span", {
2022
- className: legendClass
2023
- }, legendText) : legend;
2024
- return /*#__PURE__*/React.createElement(FormGroup, _extends({
2025
- cssModule: {
2026
- 'form-group': 'rating'
2027
- },
2028
- tag: "fieldset",
2029
- className: wrapperClasses
2030
- }, attributes), legend && /*#__PURE__*/React.createElement("legend", null, legendContent), safeInputs.map(function (id, i) {
2031
- var currentValue = 5 - i;
2032
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Input, _extends({
2033
- type: "radio",
2034
- id: id,
2035
- name: name,
2036
- value: currentValue,
2037
- cssModule: {
2038
- 'form-control': ' '
2039
- },
2040
- className: fieldClasses,
2041
- onClick: function onClick() {
2042
- return onChange(currentValue, name);
2043
- },
2044
- checked: value === currentValue,
2045
- disabled: readOnly
2046
- }, extraFieldAttrs)), /*#__PURE__*/React.createElement(Label, {
2047
- className: "full",
2048
- for: id
2049
- }, /*#__PURE__*/React.createElement(Icon, {
2050
- icon: "it-star-full",
2051
- size: "sm"
2052
- }), /*#__PURE__*/React.createElement("span", {
2053
- className: "sr-only"
2054
- }, labelFn(5 - i))));
2055
- }));
2056
- };
2057
-
2058
- Rating.propTypes = propTypes$y;
2059
- Rating.defaultProps = defaultProps$w;
2060
-
2061
- var PasswordInput = /*#__PURE__*/function (_Component) {
2062
- _inheritsLoose(PasswordInput, _Component);
2063
-
2064
- function PasswordInput() {
2065
- var _this;
2066
-
2067
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
2068
- args[_key] = arguments[_key];
2069
- }
2070
-
2071
- _this = _Component.call.apply(_Component, [this].concat(args)) || this;
2072
-
2073
- _defineProperty(_assertThisInitialized(_this), "state", {
2074
- showPassword: false
2075
- });
2076
-
2077
- _defineProperty(_assertThisInitialized(_this), "onPasswordToggle", function () {
2078
- _this.setState(function (prevState) {
2079
- return {
2080
- showPassword: !prevState.showPassword
2081
- };
2082
- });
2083
- });
2084
-
2085
- return _this;
2086
- }
2087
-
2088
- var _proto = PasswordInput.prototype;
2089
-
2090
- _proto.render = function render() {
2091
- var showPassword = this.state.showPassword;
2092
-
2093
- var _this$props = this.props,
2094
- type = _this$props.type,
2095
- rest = _objectWithoutPropertiesLoose(_this$props, ["type"]);
2096
-
2097
- var classNames = ['btn-eye', showPassword ? 'eye-off' : 'eye-on'].join(' ');
2098
- return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement("span", {
2099
- className: classNames,
2100
- onClick: this.onPasswordToggle
2101
- }), /*#__PURE__*/React.createElement(Input, _extends({}, rest, {
2102
- type: showPassword ? 'text' : type
2103
- })));
2104
- };
2105
-
2106
- return PasswordInput;
2107
- }(Component);
2108
-
2109
- _defineProperty(PasswordInput, "defaultProps", {
2110
- type: 'password'
2111
- });
2112
-
2113
- PasswordInput.propTypes = _extends({}, Input.propTypes);
2114
-
2115
- var defaultSteps = [{
2116
- score: 0,
2117
- label: 'inserisci almeno 8 caratteri e una lettera maiuscola',
2118
- className: 'danger'
2119
- }, {
2120
- score: 1,
2121
- label: 'password troppo debole',
2122
- className: 'danger'
2123
- }, {
2124
- score: 25,
2125
- label: 'password debole',
2126
- className: 'danger'
2127
- }, {
2128
- score: 50,
2129
- label: 'password sicura',
2130
- className: 'warning'
2131
- }, {
2132
- score: 75,
2133
- label: 'password molto sicura',
2134
- className: 'success'
2135
- }];
2136
-
2137
- var PasswordMeter = /*#__PURE__*/function (_Component) {
2138
- _inheritsLoose(PasswordMeter, _Component);
2139
-
2140
- function PasswordMeter() {
2141
- return _Component.apply(this, arguments) || this;
2142
- }
2143
-
2144
- var _proto = PasswordMeter.prototype;
2145
-
2146
- _proto.render = function render() {
2147
- var _this$props = this.props,
2148
- steps = _this$props.steps,
2149
- score = _this$props.score;
2150
- var currentStep = steps.filter(function (step) {
2151
- return step.score <= score;
2152
- }).reduce(function (acc, current) {
2153
- return acc.score > current.score ? acc : current;
2154
- });
2155
- var label = currentStep.label,
2156
- className = currentStep.className;
2157
- return /*#__PURE__*/React.createElement("div", {
2158
- className: "psw-wrapper"
2159
- }, /*#__PURE__*/React.createElement("span", {
2160
- className: "psw-text text-" + className + " " + className
2161
- }, label), /*#__PURE__*/React.createElement("div", {
2162
- className: "progress rounded-0 position-relative psw-meter"
2163
- }, /*#__PURE__*/React.createElement("div", {
2164
- className: "row position-absolute w-100 m-0"
2165
- }, /*#__PURE__*/React.createElement("div", {
2166
- className: "col-3 border-left border-right border-white"
2167
- }), /*#__PURE__*/React.createElement("div", {
2168
- className: "col-3 border-left border-right border-white"
2169
- }), /*#__PURE__*/React.createElement("div", {
2170
- className: "col-3 border-left border-right border-white"
2171
- }), /*#__PURE__*/React.createElement("div", {
2172
- className: "col-3 border-left border-right border-white"
2173
- })), /*#__PURE__*/React.createElement("div", {
2174
- className: "progress-bar bg-" + className + " " + className,
2175
- style: {
2176
- width: score + "%"
2177
- }
2178
- })));
2179
- };
2180
-
2181
- return PasswordMeter;
2182
- }(Component);
2183
-
2184
- _defineProperty(PasswordMeter, "defaultProps", {
2185
- score: 0,
2186
- steps: defaultSteps
2187
- });
2188
-
2189
- PasswordMeter.propTypes = {
2190
- score: PropTypes.number,
2191
- steps: PropTypes.arrayOf(PropTypes.shape({
2192
- score: PropTypes.number,
2193
- label: PropTypes.string,
2194
- className: PropTypes.string
2195
- }))
2196
- };
2197
-
2198
- var propTypes$z = {
2199
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2200
- className: PropTypes.string
2201
- };
2202
- var defaultProps$x = {
2203
- tag: 'div'
2204
- };
2205
-
2206
- var Skiplink = function Skiplink(props) {
2207
- var className = props.className,
2208
- Tag = props.tag,
2209
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2210
-
2211
- var classes = classnames(className, 'skiplinks');
2212
- return /*#__PURE__*/React.createElement(Tag, _extends({
2213
- className: classes
2214
- }, attributes));
2215
- };
2216
-
2217
- Skiplink.propTypes = propTypes$z;
2218
- Skiplink.defaultProps = defaultProps$x;
2219
-
2220
- var propTypes$A = {
2221
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2222
- className: PropTypes.string
2223
- };
2224
- var defaultProps$y = {
2225
- tag: 'a'
2226
- };
2227
-
2228
- var SkiplinkItem = function SkiplinkItem(props) {
2229
- var className = props.className,
2230
- Tag = props.tag,
2231
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2232
-
2233
- var classes = classnames(className, 'sr-only', 'sr-only-focusable');
2234
- return /*#__PURE__*/React.createElement(Tag, _extends({
2235
- className: classes
2236
- }, attributes));
2237
- };
2238
-
2239
- SkiplinkItem.propTypes = propTypes$A;
2240
- SkiplinkItem.defaultProps = defaultProps$y;
2241
-
2242
- var Toggle = /*#__PURE__*/function (_Component) {
2243
- _inheritsLoose(Toggle, _Component);
2244
-
2245
- function Toggle() {
2246
- return _Component.apply(this, arguments) || this;
2247
- }
2248
-
2249
- var _proto = Toggle.prototype;
2250
-
2251
- _proto.render = function render() {
2252
- var _this$props = this.props,
2253
- label = _this$props.label,
2254
- rest = _objectWithoutPropertiesLoose(_this$props, ["label"]);
2255
-
2256
- return /*#__PURE__*/React.createElement("div", {
2257
- className: "toggles"
2258
- }, /*#__PURE__*/React.createElement(Label, {
2259
- check: true
2260
- }, label, /*#__PURE__*/React.createElement(Input$1, _extends({
2261
- type: "checkbox"
2262
- }, rest)), /*#__PURE__*/React.createElement("span", {
2263
- className: "lever"
2264
- })));
2265
- };
2266
-
2267
- return Toggle;
2268
- }(Component);
2269
-
2270
- Toggle.propTypes = _extends({
2271
- label: PropTypes.oneOfType([PropTypes.string, PropTypes.element])
2272
- }, Input$1.propTypes);
2273
-
2274
- var propTypes$B = {
2275
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2276
- className: PropTypes.string,
2277
- secondary: PropTypes.bool,
2278
- left: PropTypes.bool,
2279
- right: PropTypes.bool,
2280
- dark: PropTypes.bool
2281
- };
2282
- var defaultProps$z = {
2283
- tag: 'div'
2284
- };
2285
-
2286
- var Sidebar = function Sidebar(props) {
2287
- var className = props.className,
2288
- Tag = props.tag,
2289
- secondary = props.secondary,
2290
- left = props.left,
2291
- right = props.right,
2292
- dark = props.dark,
2293
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag", "secondary", "left", "right", "dark"]);
2294
-
2295
- var wrapperClasses = classnames(className, left ? 'it-line-left-side' : false, right ? 'it-line-right-side' : false, dark ? 'theme-dark' : false, 'sidebar-wrapper');
2296
- var wrapperClassesLinkList = classnames(secondary ? 'linklist-secondary' : false, 'sidebar-linklist-wrapper');
2297
-
2298
- if (secondary) {
2299
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2300
- className: wrapperClassesLinkList
2301
- }));
2302
- }
2303
-
2304
- return /*#__PURE__*/React.createElement(Tag, {
2305
- className: wrapperClasses
2306
- }, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2307
- className: wrapperClassesLinkList
2308
- })));
2309
- };
2310
-
2311
- Sidebar.propTypes = propTypes$B;
2312
- Sidebar.defaultProps = defaultProps$z;
2313
-
2314
- var propTypes$C = {
2315
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2316
- className: PropTypes.string,
2317
- value: PropTypes.number,
2318
- label: PropTypes.string,
2319
- indeterminate: PropTypes.bool,
2320
- color: PropTypes.string
2321
- };
2322
- var defaultProps$A = {
2323
- tag: 'div',
2324
- role: 'progressbar',
2325
- indeterminate: false
2326
- };
2327
-
2328
- var Progress = /*#__PURE__*/function (_React$Component) {
2329
- _inheritsLoose(Progress, _React$Component);
2330
-
2331
- function Progress() {
2332
- return _React$Component.apply(this, arguments) || this;
2333
- }
2334
-
2335
- var _proto = Progress.prototype;
2336
-
2337
- _proto.render = function render() {
2338
- var _this$props = this.props,
2339
- className = _this$props.className,
2340
- Tag = _this$props.tag,
2341
- value = _this$props.value,
2342
- label = _this$props.label,
2343
- indeterminate = _this$props.indeterminate,
2344
- color = _this$props.color,
2345
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "tag", "value", "label", "indeterminate", "color"]);
2346
-
2347
- var wrapperClasses = classnames('progress-bar-wrapper');
2348
- var secondaryWrapperClasses = classnames(className, indeterminate ? 'progress-indeterminate' : false, color ? 'progress-color' : false, 'progress');
2349
- var classes = classnames(className, 'progress-bar', color ? "bg-" + this.props.color : false);
2350
-
2351
- if (label && value) {
2352
- return /*#__PURE__*/React.createElement(Tag, {
2353
- className: wrapperClasses
2354
- }, /*#__PURE__*/React.createElement("div", {
2355
- className: "progress-bar-label"
2356
- }, /*#__PURE__*/React.createElement("span", {
2357
- className: "sr-only"
2358
- }, this.props.label), this.props.value + '%'), /*#__PURE__*/React.createElement(Tag, {
2359
- className: secondaryWrapperClasses
2360
- }, /*#__PURE__*/React.createElement("div", _extends({}, attributes, {
2361
- className: classes,
2362
- role: "progressbar",
2363
- style: {
2364
- width: this.props.value + '%'
2365
- },
2366
- "aria-valuenow": this.props.value,
2367
- "aria-valuemin": "0",
2368
- "aria-valuemax": "100"
2369
- }))));
2370
- }
2371
-
2372
- return /*#__PURE__*/React.createElement(Tag, {
2373
- className: secondaryWrapperClasses
2374
- }, /*#__PURE__*/React.createElement("div", {
2375
- className: "progress-bar-label"
2376
- }, /*#__PURE__*/React.createElement("span", {
2377
- className: "sr-only"
2378
- }, this.props.label)), /*#__PURE__*/React.createElement("div", _extends({}, attributes, {
2379
- className: classes,
2380
- role: "progressbar",
2381
- style: {
2382
- width: this.props.value + '%'
2383
- },
2384
- "aria-valuenow": this.props.value,
2385
- "aria-valuemin": "0",
2386
- "aria-valuemax": "100"
2387
- })));
2388
- };
2389
-
2390
- return Progress;
2391
- }(React.Component);
2392
-
2393
- Progress.propTypes = propTypes$C;
2394
- Progress.defaultProps = defaultProps$A;
2395
-
2396
- var propTypes$D = {
2397
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2398
- className: PropTypes.string,
2399
- active: PropTypes.bool,
2400
- small: PropTypes.bool,
2401
- double: PropTypes.bool
2402
- };
2403
- var defaultProps$B = {
2404
- tag: 'span',
2405
- active: false,
2406
- small: false,
2407
- double: false
2408
- };
2409
-
2410
- var Spinner = /*#__PURE__*/function (_React$Component) {
2411
- _inheritsLoose(Spinner, _React$Component);
2412
-
2413
- function Spinner() {
2414
- return _React$Component.apply(this, arguments) || this;
2415
- }
2416
-
2417
- var _proto = Spinner.prototype;
2418
-
2419
- _proto.render = function render() {
2420
- var _this$props = this.props,
2421
- className = _this$props.className,
2422
- Tag = _this$props.tag,
2423
- active = _this$props.active,
2424
- small = _this$props.small,
2425
- double = _this$props.double,
2426
- attributes = _objectWithoutPropertiesLoose(_this$props, ["className", "tag", "active", "small", "double"]);
2427
-
2428
- var wrapperClasses = classnames(active ? 'progress-spinner-active' : false, small ? 'size-sm' : false, double ? 'progress-spinner-double' : false, 'progress-spinner');
2429
- var innerClasses = classnames('progress-spinner-inner');
2430
- var classes = classnames(className, 'sr-only');
2431
-
2432
- if (double) {
2433
- return /*#__PURE__*/React.createElement(Tag, {
2434
- className: wrapperClasses
2435
- }, /*#__PURE__*/React.createElement("div", {
2436
- className: innerClasses
2437
- }), /*#__PURE__*/React.createElement("div", {
2438
- className: innerClasses
2439
- }), /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2440
- className: classes
2441
- }), "Caricamento..."));
2442
- }
2443
-
2444
- return /*#__PURE__*/React.createElement(Tag, {
2445
- className: wrapperClasses
2446
- }, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2447
- className: classes
2448
- }), "Caricamento..."));
2449
- };
2450
-
2451
- return Spinner;
2452
- }(React.Component);
2453
-
2454
- Spinner.propTypes = propTypes$D;
2455
- Spinner.defaultProps = defaultProps$B;
2456
-
2457
- var propTypes$E = _extends({}, Card$1.propTypes, {
2458
- teaser: PropTypes.bool,
2459
- spacing: PropTypes.bool,
2460
- noWrapper: PropTypes.bool,
2461
- wrapperClassName: PropTypes.string
2462
- });
2463
-
2464
- var defaultProps$C = _extends({}, Card$1.defaultProps, {
2465
- noWrapper: false
2466
- });
2467
-
2468
- var Card = function Card(_ref) {
2469
- var teaser = _ref.teaser,
2470
- spacing = _ref.spacing,
2471
- noWrapper = _ref.noWrapper,
2472
- wrapperClassName = _ref.wrapperClassName,
2473
- attributes = _objectWithoutPropertiesLoose(_ref, ["teaser", "spacing", "noWrapper", "wrapperClassName"]);
2474
-
2475
- var wrapperClasses = classnames('card-wrapper', wrapperClassName, {
2476
- 'card-space': spacing,
2477
- 'card-teaser-wrapper': teaser
2478
- });
2479
- var cardClasses = classnames(attributes.className, {
2480
- 'card-teaser': teaser
2481
- });
2482
-
2483
- if (noWrapper) {
2484
- return /*#__PURE__*/React.createElement(Card$1, _extends({}, attributes, {
2485
- className: cardClasses
2486
- }));
2487
- }
2488
-
2489
- return /*#__PURE__*/React.createElement("div", {
2490
- className: wrapperClasses
2491
- }, /*#__PURE__*/React.createElement(Card$1, _extends({}, attributes, {
2492
- className: cardClasses
2493
- })));
2494
- };
2495
-
2496
- Card.propTypes = propTypes$E;
2497
- Card.defaultProps = defaultProps$C;
2498
-
2499
- var propTypes$F = {
2500
- iconName: PropTypes.string,
2501
- date: PropTypes.string,
2502
- href: PropTypes.string
2503
- };
2504
-
2505
- var CardCategory = function CardCategory(props) {
2506
- var iconName = props.iconName,
2507
- date = props.date,
2508
- href = props.href,
2509
- attributes = _objectWithoutPropertiesLoose(props, ["iconName", "date", "href"]);
2510
-
2511
- var children = attributes.children,
2512
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
2513
-
2514
- var classes = classnames({
2515
- 'category-top': date || ' ',
2516
- 'categoryicon-top': iconName
2517
- }); // Simple category link
2518
-
2519
- var categoryLink = !iconName && /*#__PURE__*/React.createElement("a", {
2520
- href: href,
2521
- className: "category"
2522
- }, children);
2523
- var categoryDate = date && /*#__PURE__*/React.createElement("span", {
2524
- className: "data"
2525
- }, date); // Category with icon
2526
-
2527
- var categoryText = iconName && /*#__PURE__*/React.createElement("span", {
2528
- className: "text"
2529
- }, children);
2530
- var categoryIcon = iconName && /*#__PURE__*/React.createElement(Icon, {
2531
- icon: iconName
2532
- });
2533
- return /*#__PURE__*/React.createElement("div", _extends({
2534
- className: classes
2535
- }, rest), categoryLink, categoryIcon, categoryText, categoryDate);
2536
- };
2537
-
2538
- CardCategory.propTypes = propTypes$F;
2539
-
2540
- var propTypes$G = {
2541
- tag: PropTypes.string,
2542
- className: PropTypes.string
2543
- };
2544
- var defaultProps$D = {
2545
- tag: 'a'
2546
- };
2547
-
2548
- var CardTag = function CardTag(props) {
2549
- var className = props.className,
2550
- Tag = props.tag,
2551
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2552
-
2553
- var classes = classnames(className, 'card-tag');
2554
- return /*#__PURE__*/React.createElement(Tag, _extends({
2555
- className: classes
2556
- }, attributes));
2557
- };
2558
-
2559
- CardTag.propTypes = propTypes$G;
2560
- CardTag.defaultProps = defaultProps$D;
2561
-
2562
- var propTypes$H = {
2563
- children: PropTypes.node,
2564
- date: PropTypes.string
2565
- };
2566
-
2567
- var CardTagsHeader = function CardTagsHeader(props) {
2568
- var date = props.date,
2569
- children = props.children,
2570
- attributes = _objectWithoutPropertiesLoose(props, ["date", "children"]);
2571
-
2572
- return /*#__PURE__*/React.createElement("div", _extends({
2573
- className: "head-tags"
2574
- }, attributes), children, date && /*#__PURE__*/React.createElement("span", {
2575
- className: "data"
2576
- }, date));
2577
- };
2578
-
2579
- CardTagsHeader.propTypes = propTypes$H;
2580
-
2581
- var propTypes$I = {
2582
- className: PropTypes.string
2583
- };
2584
-
2585
- var CardSignature = function CardSignature(props) {
2586
- var className = props.className,
2587
- attributes = _objectWithoutPropertiesLoose(props, ["className"]);
2588
-
2589
- var classes = classnames(className, 'card-signature');
2590
- return /*#__PURE__*/React.createElement("span", _extends({
2591
- className: classes
2592
- }, attributes));
2593
- };
2594
-
2595
- CardSignature.propTypes = propTypes$I;
2596
-
2597
- var propTypes$J = {
2598
- className: PropTypes.string
2599
- };
2600
-
2601
- var CardFooterCTA = function CardFooterCTA(props) {
2602
- var className = props.className,
2603
- attributes = _objectWithoutPropertiesLoose(props, ["className"]);
2604
-
2605
- var classes = classnames(className, 'it-card-footer');
2606
- return /*#__PURE__*/React.createElement("div", _extends({
2607
- className: classes
2608
- }, attributes));
2609
- };
2610
-
2611
- CardFooterCTA.propTypes = propTypes$J;
2612
-
2613
- var propTypes$K = {
2614
- className: PropTypes.string,
2615
- iconName: PropTypes.string,
2616
- href: PropTypes.string,
2617
- text: PropTypes.string,
2618
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string, PropTypes.shape({
2619
- $$typeof: PropTypes.symbol,
2620
- render: PropTypes.func
2621
- }), PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.string, PropTypes.shape({
2622
- $$typeof: PropTypes.symbol,
2623
- render: PropTypes.func
2624
- })]))])
2625
- };
2626
- var defaultProps$E = {
2627
- tag: 'a',
2628
- iconName: 'it-arrow-right'
2629
- };
2630
-
2631
- var CardReadMore = function CardReadMore(props) {
2632
- var className = props.className,
2633
- text = props.text,
2634
- iconName = props.iconName,
2635
- Tag = props.tag,
2636
- href = props.href,
2637
- attributes = _objectWithoutPropertiesLoose(props, ["className", "text", "iconName", "tag", "href"]);
2638
-
2639
- var classes = classnames(className, 'read-more');
2640
- return /*#__PURE__*/React.createElement(Tag, _extends({
2641
- className: classes,
2642
- href: href
2643
- }, attributes), /*#__PURE__*/React.createElement("span", {
2644
- className: "text"
2645
- }, text), iconName && /*#__PURE__*/React.createElement(Icon, {
2646
- icon: iconName
2647
- }));
2648
- };
2649
-
2650
- CardReadMore.propTypes = propTypes$K;
2651
- CardReadMore.defaultProps = defaultProps$E;
2652
-
2653
- var propTypes$L = {
2654
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2655
- className: PropTypes.string
2656
- };
2657
- var defaultProps$F = {
2658
- tag: 'nav'
2659
- };
2660
-
2661
- var BottomNav = function BottomNav(props) {
2662
- var Tag = props.tag,
2663
- attributes = _objectWithoutPropertiesLoose(props, ["tag"]);
2664
-
2665
- var wrapperClasses = classnames('bottom-nav');
2666
- return /*#__PURE__*/React.createElement(Tag, {
2667
- className: wrapperClasses
2668
- }, /*#__PURE__*/React.createElement("ul", attributes));
2669
- };
2670
-
2671
- BottomNav.propTypes = propTypes$L;
2672
- BottomNav.defaultProps = defaultProps$F;
2673
-
2674
- var propTypes$M = {
2675
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2676
- className: PropTypes.string,
2677
- active: PropTypes.bool,
2678
- link: PropTypes.string,
2679
- label: PropTypes.string,
2680
- iconName: PropTypes.string,
2681
- srText: PropTypes.string,
2682
- alert: PropTypes.bool,
2683
- badge: PropTypes.bool
2684
- };
2685
- var defaultProps$G = {
2686
- tag: 'a',
2687
- link: '#',
2688
- iconName: 'it-comment',
2689
- srText: false
2690
- };
2691
-
2692
- var BottomNavItem = function BottomNavItem(_ref) {
2693
- var active = _ref.active,
2694
- badge = _ref.badge,
2695
- alert = _ref.alert,
2696
- link = _ref.link,
2697
- srText = _ref.srText,
2698
- iconName = _ref.iconName,
2699
- label = _ref.label,
2700
- Tag = _ref.tag,
2701
- attributes = _objectWithoutPropertiesLoose(_ref, ["active", "badge", "alert", "link", "srText", "iconName", "label", "tag"]);
2702
-
2703
- var activeClass = classnames(active ? 'active' : false);
2704
- var badgeWrapper = badge ? /*#__PURE__*/React.createElement("div", {
2705
- className: "badge-wrapper"
2706
- }, /*#__PURE__*/React.createElement("span", {
2707
- className: "bottom-nav-badge"
2708
- }, badge)) : false;
2709
- var alertWrapper = alert ? /*#__PURE__*/React.createElement("div", {
2710
- className: "badge-wrapper"
2711
- }, /*#__PURE__*/React.createElement("span", {
2712
- className: "bottom-nav-alert"
2713
- })) : false;
2714
- return /*#__PURE__*/React.createElement("li", attributes, /*#__PURE__*/React.createElement(Tag, {
2715
- href: link,
2716
- className: activeClass
2717
- }, badgeWrapper, alertWrapper, /*#__PURE__*/React.createElement(Icon, {
2718
- icon: iconName
2719
- }), /*#__PURE__*/React.createElement("span", {
2720
- className: "bottom-nav-label"
2721
- }, label, /*#__PURE__*/React.createElement("span", {
2722
- className: "sr-only"
2723
- }, srText))));
2724
- };
2725
-
2726
- BottomNavItem.propTypes = propTypes$M;
2727
- BottomNavItem.defaultProps = defaultProps$G;
2728
-
2729
- var propTypes$N = {
2730
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2731
- className: PropTypes.string
2732
- };
2733
- var defaultProps$H = {
2734
- tag: 'div'
2735
- };
2736
-
2737
- function CookieBar(props) {
2738
- var className = props.className,
2739
- Tag = props.tag,
2740
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2741
-
2742
- var wrapperClasses = classnames('cookiebar show', className);
2743
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2744
- className: wrapperClasses
2745
- }));
2746
- }
2747
-
2748
- CookieBar.propTypes = propTypes$N;
2749
- CookieBar.defaultProps = defaultProps$H;
2750
-
2751
- var propTypes$O = {
2752
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2753
- className: PropTypes.string
2754
- };
2755
- var defaultProps$I = {
2756
- tag: 'div'
2757
- };
2758
-
2759
- var CookieBarButtons = function CookieBarButtons(props) {
2760
- var className = props.className,
2761
- Tag = props.tag,
2762
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2763
-
2764
- var buttonClasses = classnames(className, 'cookiebar-buttons');
2765
- return /*#__PURE__*/React.createElement(Tag, _extends({
2766
- className: buttonClasses
2767
- }, attributes));
2768
- };
2769
-
2770
- CookieBarButtons.propTypes = propTypes$O;
2771
- CookieBarButtons.defaultProps = defaultProps$I;
2772
-
2773
- var propTypes$P = {
2774
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2775
- className: PropTypes.string
2776
- };
2777
- var defaultProps$J = {
2778
- tag: 'button'
2779
- };
2780
-
2781
- var CookieBarButton = /*#__PURE__*/function (_React$Component) {
2782
- _inheritsLoose(CookieBarButton, _React$Component);
2783
-
2784
- function CookieBarButton() {
2785
- return _React$Component.apply(this, arguments) || this;
2786
- }
2787
-
2788
- var _proto = CookieBarButton.prototype;
2789
-
2790
- _proto.render = function render() {
2791
- var _this$props = this.props,
2792
- Tag = _this$props.tag,
2793
- className = _this$props.className,
2794
- attributes = _objectWithoutPropertiesLoose(_this$props, ["tag", "className"]);
2795
-
2796
- var activeClass = classnames(className, 'cookiebar-btn');
2797
- return /*#__PURE__*/React.createElement(Tag, _extends({
2798
- href: true,
2799
- className: activeClass
2800
- }, attributes));
2801
- };
2802
-
2803
- return CookieBarButton;
2804
- }(React.Component);
2805
-
2806
- CookieBarButton.propTypes = propTypes$P;
2807
- CookieBarButton.defaultProps = defaultProps$J;
2808
-
2809
- var propTypes$Q = {
2810
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
2811
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2812
-
2813
- /** Classi aggiuntive da usare per il componente Chip */
2814
- className: PropTypes.string,
2815
-
2816
- /** Impostarlo su `true` per centrare la label all'interno */
2817
- simple: PropTypes.bool,
2818
-
2819
- /** Impostarlo su `true` per una versione più grande del componente Chip. */
2820
- large: PropTypes.bool,
2821
-
2822
- /** Impostarlo su `true` per renderizzare il componente Chip come disabilitato */
2823
- disabled: PropTypes.bool,
2824
- color: PropTypes.string
2825
- };
2826
- var defaultProps$K = {
2827
- tag: 'div',
2828
- simple: false,
2829
- large: false,
2830
- disabled: false,
2831
- color: ''
2832
- };
2833
-
2834
- var Chip = function Chip(props) {
2835
- var _classNames;
2836
-
2837
- var className = props.className,
2838
- color = props.color,
2839
- Tag = props.tag,
2840
- simple = props.simple,
2841
- large = props.large,
2842
- disabled = props.disabled,
2843
- attributes = _objectWithoutPropertiesLoose(props, ["className", "color", "tag", "simple", "large", "disabled"]);
2844
-
2845
- var classes = classnames('chip', className, (_classNames = {
2846
- 'chip-simple': simple,
2847
- 'chip-lg': large,
2848
- 'chip-disabled': disabled
2849
- }, _classNames["chip-" + color] = color, _classNames));
2850
- return /*#__PURE__*/React.createElement(Tag, _extends({
2851
- className: classes
2852
- }, attributes));
2853
- };
2854
-
2855
- Chip.propTypes = propTypes$Q;
2856
- Chip.defaultProps = defaultProps$K;
2857
-
2858
- var propTypes$R = {
2859
- /** Utilizzarlo in caso di utilizzo di componenti personalizzati */
2860
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
2861
-
2862
- /** Classi aggiuntive da usare per il componente ChipLabel */
2863
- className: PropTypes.string
2864
- };
2865
- var defaultProps$L = {
2866
- tag: 'span'
2867
- };
2868
-
2869
- var ChipLabel = function ChipLabel(props) {
2870
- var className = props.className,
2871
- Tag = props.tag,
2872
- attributes = _objectWithoutPropertiesLoose(props, ["className", "tag"]);
2873
-
2874
- var classes = classnames(className, 'chip-label');
2875
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
2876
- className: classes
2877
- }));
2878
- };
2879
-
2880
- ChipLabel.propTypes = propTypes$R;
2881
- ChipLabel.defaultProps = defaultProps$L;
2882
-
2883
- var ToolkitFontLoader = /*#__PURE__*/function (_Component) {
2884
- _inheritsLoose(ToolkitFontLoader, _Component);
2885
-
2886
- function ToolkitFontLoader() {
2887
- return _Component.apply(this, arguments) || this;
2888
- }
2889
-
2890
- var _proto = ToolkitFontLoader.prototype;
2891
-
2892
- _proto.componentDidMount = function componentDidMount() {
2893
- if (typeof window !== 'undefined') {
2894
- var WebFont = require('webfontloader');
2895
-
2896
- WebFont.load({
2897
- custom: {
2898
- families: ['Titillium Web:300,400,600,700:latin-ext', 'Lora:400,700:latin-ext', 'Roboto Mono:400,700:latin-ext']
2899
- }
2900
- });
2901
- }
2902
- };
2903
-
2904
- _proto.render = function render() {
2905
- return null;
2906
- };
2907
-
2908
- return ToolkitFontLoader;
2909
- }(Component);
2910
-
2911
- var propTypes$S = {
2912
- icon: PropTypes.string,
2913
- color: PropTypes.string,
2914
- className: PropTypes.string
2915
- };
2916
-
2917
- var Dimmer = function Dimmer(props) {
2918
- var _classNames;
2919
-
2920
- var icon = props.icon,
2921
- color = props.color,
2922
- className = props.className,
2923
- attributes = _objectWithoutPropertiesLoose(props, ["icon", "color", "className"]);
2924
-
2925
- var children = attributes.children,
2926
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
2927
-
2928
- var classes = classnames('dimmer', className, (_classNames = {}, _classNames["dimmer-" + color] = color, _classNames));
2929
- var innerClasses = classnames('dimmer-inner', className);
2930
- var dimmerIcon = icon && /*#__PURE__*/React.createElement("div", {
2931
- className: "dimmer-icon"
2932
- }, /*#__PURE__*/React.createElement(Icon, {
2933
- icon: icon
2934
- }));
2935
- return /*#__PURE__*/React.createElement("div", _extends({
2936
- className: classes
2937
- }, rest, {
2938
- style: {
2939
- display: 'flex'
2940
- }
2941
- }), /*#__PURE__*/React.createElement("div", _extends({
2942
- className: innerClasses
2943
- }, rest), dimmerIcon, children));
2944
- };
2945
-
2946
- Dimmer.propTypes = propTypes$S;
2947
-
2948
- var propTypes$T = {
2949
- color: PropTypes.string,
2950
- dark: PropTypes.string,
2951
- single: PropTypes.string,
2952
- className: PropTypes.string
2953
- };
2954
- var defaultProps$M = {
2955
- single: false,
2956
- dark: false
2957
- };
2958
-
2959
- var DimmerButtons = function DimmerButtons(props) {
2960
- var color = props.color,
2961
- dark = props.dark,
2962
- className = props.className,
2963
- single = props.single,
2964
- attributes = _objectWithoutPropertiesLoose(props, ["color", "dark", "className", "single"]);
2965
-
2966
- var children = attributes.children,
2967
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
2968
-
2969
- var classes = classnames('dimmer-buttons', className, {
2970
- 'single-button': single,
2971
- 'bg-dark': dark
2972
- });
2973
- return /*#__PURE__*/React.createElement("div", _extends({
2974
- className: classes
2975
- }, rest), children);
2976
- };
2977
-
2978
- DimmerButtons.propTypes = propTypes$T;
2979
- DimmerButtons.defaultProps = defaultProps$M;
2980
-
2981
- var Timeline = function Timeline(props) {
2982
- var className = props.className,
2983
- attributes = _objectWithoutPropertiesLoose(props, ["className"]);
2984
-
2985
- var children = attributes.children,
2986
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
2987
-
2988
- var timelineWrapper = classnames(className, 'it-timeline-wrapper');
2989
- return /*#__PURE__*/React.createElement("div", _extends({
2990
- className: timelineWrapper
2991
- }, rest), children);
2992
- };
2993
-
2994
- Timeline.propTypes = {
2995
- className: PropTypes.string
2996
- };
2997
-
2998
- var TimelinePin = function TimelinePin(props) {
2999
- var icon = props.icon,
3000
- label = props.label,
3001
- past = props.past,
3002
- now = props.now,
3003
- nowText = props.nowText,
3004
- className = props.className,
3005
- attributes = _objectWithoutPropertiesLoose(props, ["icon", "label", "past", "now", "nowText", "className"]);
3006
-
3007
- var children = attributes.children,
3008
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
3009
-
3010
- var classes = classnames('timeline-element', className);
3011
- var innerClasses = classnames('it-pin-wrapper', className, {
3012
- 'it-evidence': past,
3013
- 'it-now': now
3014
- });
3015
- var pinIcon = /*#__PURE__*/React.createElement("div", {
3016
- className: "pin-icon"
3017
- }, /*#__PURE__*/React.createElement(Icon, {
3018
- icon: icon
3019
- }));
3020
- var pinLabel = /*#__PURE__*/React.createElement("div", {
3021
- className: "pin-text"
3022
- }, /*#__PURE__*/React.createElement("span", null, label));
3023
- var pinTextNow = now && /*#__PURE__*/React.createElement("span", {
3024
- className: "it-now-label d-none d-lg-flex"
3025
- }, nowText);
3026
- return /*#__PURE__*/React.createElement("div", {
3027
- className: classes
3028
- }, pinTextNow, /*#__PURE__*/React.createElement("div", _extends({
3029
- className: innerClasses
3030
- }, rest), pinIcon, pinLabel), children);
3031
- };
3032
-
3033
- TimelinePin.defaultProps = {
3034
- icon: 'it-code-circle',
3035
- label: ' '
3036
- };
3037
- /**
3038
- * è stato necessario disabilitare il typecheck per un'incompatibilità su storybook in caso di
3039
- * un unico figlio
3040
- */
3041
-
3042
- TimelinePin.propTypes = {
3043
- className: PropTypes.string,
3044
- icon: PropTypes.string,
3045
- label: PropTypes.string,
3046
- now: PropTypes.bool,
3047
- nowText: PropTypes.string,
3048
- past: PropTypes.bool
3049
- };
3050
-
3051
- var propTypes$U = {
3052
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
3053
- classNames: PropTypes.string,
3054
- children: PropTypes.element
3055
- };
3056
- var defaultProps$N = {
3057
- tag: 'ul'
3058
- };
3059
-
3060
- var StepperHeader = function StepperHeader(props) {
3061
- var Tag = props.tag,
3062
- children = props.children,
3063
- attributes = _objectWithoutPropertiesLoose(props, ["tag", "children"]);
3064
-
3065
- var wrapperClass = classnames('steppers-header');
3066
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
3067
- className: wrapperClass
3068
- }), children);
3069
- };
3070
-
3071
- StepperHeader.propTypes = propTypes$U;
3072
- StepperHeader.defaultProps = defaultProps$N;
3073
-
3074
- var propTypes$V = {
3075
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
3076
- className: PropTypes.string,
3077
- children: PropTypes.element,
3078
- dark: PropTypes.string,
3079
- mobile: PropTypes.bool
3080
- };
3081
- var defaultProps$O = {
3082
- tag: 'div'
3083
- };
3084
-
3085
- var StepperContainer = function StepperContainer(props) {
3086
- var Tag = props.tag,
3087
- children = props.children,
3088
- mobile = props.mobile,
3089
- dark = props.dark,
3090
- attributes = _objectWithoutPropertiesLoose(props, ["tag", "children", "mobile", "dark"]);
3091
-
3092
- var wrapperClass = classnames('steppers', {
3093
- 'bg-dark': dark
3094
- }, {
3095
- 'mobile-examples': mobile
3096
- });
3097
- return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {
3098
- className: wrapperClass
3099
- }), children);
3100
- };
3101
-
3102
- StepperContainer.propTypes = propTypes$V;
3103
- StepperContainer.defaultProps = defaultProps$O;
3104
-
3105
- var propTypes$W = {
3106
- tag: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
3107
- className: PropTypes.string,
3108
- variant: PropTypes.string,
3109
- children: PropTypes.element,
3110
- icon: PropTypes.string,
3111
- iconName: PropTypes.string,
3112
- stepperNumber: PropTypes.element,
3113
- noLine: PropTypes.bool
3114
- };
3115
- var defaultProps$P = {};
3116
-
3117
- var StepperHeaderElement = function StepperHeaderElement(props) {
3118
- var Tag = props.tag,
3119
- variant = props.variant,
3120
- icon = props.icon,
3121
- iconName = props.iconName,
3122
- noLine = props.noLine,
3123
- stepperNumber = props.stepperNumber,
3124
- children = props.children,
3125
- attributes = _objectWithoutPropertiesLoose(props, ["tag", "variant", "icon", "iconName", "noLine", "stepperNumber", "children"]);
3126
-
3127
- var wrapperClasses = classnames(variant, {
3128
- 'no-line': noLine
3129
- });
3130
- var iconClass = classnames('icon', 'steppers-success');
3131
- var spanClass = classnames('steppers-number');
3132
- return /*#__PURE__*/React.createElement("li", _extends({}, attributes, {
3133
- className: wrapperClasses
3134
- }), iconName && /*#__PURE__*/React.createElement(Icon, {
3135
- icon: iconName
3136
- }), stepperNumber && /*#__PURE__*/React.createElement("span", {
3137
- className: spanClass
3138
- }, stepperNumber), children, icon && /*#__PURE__*/React.createElement(Icon, {
3139
- icon: icon,
3140
- className: iconClass
3141
- }));
3142
- };
3143
-
3144
- StepperHeaderElement.propTypes = propTypes$W;
3145
- StepperHeaderElement.defaultProps = defaultProps$P;
3146
-
3147
- var propTypes$X = {
3148
- muted: PropTypes.string,
3149
- color: PropTypes.string,
3150
- neutral: PropTypes.string,
3151
- image: PropTypes.string,
3152
- className: PropTypes.string
3153
- };
3154
-
3155
- var Section = function Section(props) {
3156
- var _classNames;
3157
-
3158
- var muted = props.muted,
3159
- color = props.color,
3160
- neutral = props.neutral,
3161
- image = props.image,
3162
- className = props.className,
3163
- attributes = _objectWithoutPropertiesLoose(props, ["muted", "color", "neutral", "image", "className"]);
3164
-
3165
- var children = attributes.children,
3166
- rest = _objectWithoutPropertiesLoose(attributes, ["children"]);
3167
-
3168
- var classes = classnames('section', className, (_classNames = {
3169
- 'section-muted': muted
3170
- }, _classNames["section-" + color] = color, _classNames['section-neutral'] = neutral, _classNames['section-image'] = image, _classNames));
3171
- var innerClasses = classnames('section-content', className);
3172
- var styleClass = {
3173
- backgroundImageClass: {
3174
- 'background-image': ["url(" + image + ")"]
3175
- }
3176
- };
3177
- return /*#__PURE__*/React.createElement("div", _extends({
3178
- className: classes,
3179
- style: styleClass.backgroundImageClass
3180
- }, rest), /*#__PURE__*/React.createElement("div", {
3181
- className: innerClasses
3182
- }, children));
3183
- };
3184
-
3185
- Section.propTypes = propTypes$X;
3186
-
3187
- export { Accordion, AccordionBody, AccordionHeader, AvatarContainer, AvatarExtraText, AvatarGroupContainer, AvatarIcon, AvatarPresence, AvatarStatus, AvatarWrapper, Badge, BottomNav, BottomNavItem, Button, Callout, CalloutText, CalloutTitle, Card, CardCategory, CardFooterCTA, CardReadMore, CardSignature, CardTag, CardTagsHeader, Chip, ChipLabel, Collapse, CookieBar, CookieBarButton, CookieBarButtons, Dimmer, DimmerButtons, ToolkitFontLoader as FontLoader, Forward, Header, HeaderBrand, HeaderContent, HeaderLinkZone, HeaderRightZone, HeaderSearch, HeaderSocialsZone, HeaderToggler, Headers, Hero, Icon, Input, LinkList, LinkListItem, Nav, Pager, PagerList, PasswordInput, PasswordMeter, Progress, Rating, Section, Sidebar, Skiplink, SkiplinkItem, Spinner, StepperContainer, StepperHeader, StepperHeaderElement, Timeline, TimelinePin, Toggle };
3188
- //# sourceMappingURL=design-react-kit.es.js.map