@prokodo/ui 0.1.14 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) hide show
  1. package/LICENSE +187 -26
  2. package/NOTICE +24 -0
  3. package/README.md +32 -302
  4. package/dist/components/RTE/RTE.client.js +0 -1
  5. package/dist/components/RTE/RTE.css +180 -68
  6. package/dist/components/RTE/RTE.js +4 -1
  7. package/dist/components/RTE/RTE.module.css +180 -68
  8. package/dist/components/RTE/RTE.module.scss.js +10 -0
  9. package/dist/components/RTE/RTE.view.js +5 -1
  10. package/dist/components/accordion/Accordion.css +120 -67
  11. package/dist/components/accordion/Accordion.js +8 -2
  12. package/dist/components/accordion/Accordion.module.css +120 -67
  13. package/dist/components/accordion/Accordion.module.scss.js +12 -5
  14. package/dist/components/accordion/Accordion.view.js +4 -4
  15. package/dist/components/animated/Animated.client.js +13 -5
  16. package/dist/components/animated/Animated.js +8 -2
  17. package/dist/components/animatedText/AnimatedText.client.js +10 -2
  18. package/dist/components/animatedText/AnimatedText.js +8 -2
  19. package/dist/components/autocomplete/Autocomplete.client.js +5 -1
  20. package/dist/components/autocomplete/Autocomplete.css +111 -95
  21. package/dist/components/autocomplete/Autocomplete.js +4 -1
  22. package/dist/components/autocomplete/Autocomplete.module.css +111 -95
  23. package/dist/components/autocomplete/Autocomplete.module.scss.js +11 -4
  24. package/dist/components/autocomplete/Autocomplete.view.js +16 -5
  25. package/dist/components/avatar/Avatar.css +11 -8
  26. package/dist/components/avatar/Avatar.js +4 -1
  27. package/dist/components/avatar/Avatar.module.css +11 -8
  28. package/dist/components/avatar/Avatar.module.scss.js +1 -0
  29. package/dist/components/avatar/Avatar.view.js +22 -15
  30. package/dist/components/base-link/BaseLink.js +4 -1
  31. package/dist/components/base-link/BaseLink.view.js +3 -0
  32. package/dist/components/button/Button.client.js +12 -16
  33. package/dist/components/button/Button.css +85 -137
  34. package/dist/components/button/Button.js +4 -1
  35. package/dist/components/button/Button.module.css +85 -137
  36. package/dist/components/button/Button.module.scss.js +15 -19
  37. package/dist/components/button/Button.view.js +8 -2
  38. package/dist/components/calendly/Calendly.css +132 -0
  39. package/dist/components/calendly/Calendly.js +8 -2
  40. package/dist/components/calendly/Calendly.module.css +132 -0
  41. package/dist/components/calendly/Calendly.module.scss.js +6 -0
  42. package/dist/components/calendly/Calendly.view.js +12 -6
  43. package/dist/components/card/Card.client.js +6 -1
  44. package/dist/components/card/Card.css +67 -32
  45. package/dist/components/card/Card.js +11 -5
  46. package/dist/components/card/Card.module.css +67 -32
  47. package/dist/components/card/Card.module.scss.js +8 -2
  48. package/dist/components/card/Card.view.js +25 -8
  49. package/dist/components/carousel/Carousel.client.js +138 -129
  50. package/dist/components/carousel/Carousel.css +8 -4
  51. package/dist/components/carousel/Carousel.js +8 -2
  52. package/dist/components/carousel/Carousel.module.css +8 -4
  53. package/dist/components/carousel/Carousel.view.js +10 -0
  54. package/dist/components/checkbox/Checkbox.css +100 -79
  55. package/dist/components/checkbox/Checkbox.js +4 -1
  56. package/dist/components/checkbox/Checkbox.module.css +100 -79
  57. package/dist/components/checkbox/Checkbox.module.scss.js +11 -4
  58. package/dist/components/checkbox/Checkbox.view.js +7 -2
  59. package/dist/components/checkbox-group/CheckboxGroup.css +39 -6
  60. package/dist/components/checkbox-group/CheckboxGroup.js +4 -1
  61. package/dist/components/checkbox-group/CheckboxGroup.module.css +39 -6
  62. package/dist/components/checkbox-group/CheckboxGroup.module.scss.js +8 -0
  63. package/dist/components/checkbox-group/CheckboxGroup.view.js +7 -2
  64. package/dist/components/chip/Chip.css +185 -61
  65. package/dist/components/chip/Chip.js +4 -1
  66. package/dist/components/chip/Chip.module.css +185 -61
  67. package/dist/components/chip/Chip.module.scss.js +13 -17
  68. package/dist/components/chip/Chip.view.js +7 -4
  69. package/dist/components/datePicker/DatePicker.client.js +211 -66
  70. package/dist/components/datePicker/DatePicker.css +940 -0
  71. package/dist/components/datePicker/DatePicker.js +4 -1
  72. package/dist/components/datePicker/DatePicker.module.css +940 -0
  73. package/dist/components/datePicker/DatePicker.module.scss.js +62 -0
  74. package/dist/components/datePicker/DatePicker.server.js +31 -1
  75. package/dist/components/datePicker/DatePicker.utils.js +103 -0
  76. package/dist/components/datePicker/DatePicker.view.js +113 -41
  77. package/dist/components/datePicker/DatePickerDialog.view.js +291 -0
  78. package/dist/components/dialog/Dialog.css +107 -132
  79. package/dist/components/dialog/Dialog.js +8 -2
  80. package/dist/components/dialog/Dialog.module.css +107 -132
  81. package/dist/components/dialog/Dialog.module.scss.js +13 -8
  82. package/dist/components/dialog/Dialog.view.js +23 -5
  83. package/dist/components/drawer/Drawer.client.js +0 -1
  84. package/dist/components/drawer/Drawer.css +8 -8
  85. package/dist/components/drawer/Drawer.js +4 -1
  86. package/dist/components/drawer/Drawer.module.css +8 -8
  87. package/dist/components/drawer/Drawer.view.js +14 -3
  88. package/dist/components/dynamic-list/DynamicList.client.js +1 -0
  89. package/dist/components/dynamic-list/DynamicList.css +20 -12
  90. package/dist/components/dynamic-list/DynamicList.js +4 -1
  91. package/dist/components/dynamic-list/DynamicList.module.css +20 -12
  92. package/dist/components/dynamic-list/DynamicList.module.scss.js +1 -0
  93. package/dist/components/dynamic-list/DynamicList.view.js +89 -44
  94. package/dist/components/form/Form.client.js +4 -1
  95. package/dist/components/form/Form.js +4 -1
  96. package/dist/components/form/Form.view.js +6 -4
  97. package/dist/components/form/FormField.client.js +59 -4
  98. package/dist/components/form/FormField.js +4 -1
  99. package/dist/components/form/FormField.server.js +10 -4
  100. package/dist/components/form/FormResponse.js +6 -3
  101. package/dist/components/grid/Grid.css +1 -1
  102. package/dist/components/grid/Grid.module.css +1 -1
  103. package/dist/components/headline/Headline.css +16 -16
  104. package/dist/components/headline/Headline.js +13 -8
  105. package/dist/components/headline/Headline.module.css +16 -16
  106. package/dist/components/headline/Headline.module.scss.js +1 -1
  107. package/dist/components/headline/Headline.variants.js +4 -1
  108. package/dist/components/icon/Icon.css +14 -14
  109. package/dist/components/icon/Icon.js +8 -2
  110. package/dist/components/icon/Icon.module.css +14 -14
  111. package/dist/components/image/Image.client.js +9 -5
  112. package/dist/components/image/Image.css +4 -3
  113. package/dist/components/image/Image.js +8 -2
  114. package/dist/components/image/Image.module.css +4 -3
  115. package/dist/components/image/Image.server.js +2 -1
  116. package/dist/components/image-text/ImageText.css +43 -14
  117. package/dist/components/image-text/ImageText.js +68 -50
  118. package/dist/components/image-text/ImageText.module.css +43 -14
  119. package/dist/components/image-text/ImageText.module.scss.js +11 -2
  120. package/dist/components/input/Input.client.js +15 -2
  121. package/dist/components/input/Input.css +197 -115
  122. package/dist/components/input/Input.js +4 -1
  123. package/dist/components/input/Input.module.css +197 -115
  124. package/dist/components/input/Input.module.scss.js +19 -3
  125. package/dist/components/input/Input.view.js +102 -63
  126. package/dist/components/input/InputValidation.js +6 -2
  127. package/dist/components/inputOTP/InputOTP.client.js +165 -0
  128. package/dist/components/inputOTP/InputOTP.css +155 -7
  129. package/dist/components/inputOTP/InputOTP.js +10 -194
  130. package/dist/components/inputOTP/InputOTP.lazy.js +12 -0
  131. package/dist/components/inputOTP/InputOTP.module.css +155 -7
  132. package/dist/components/inputOTP/InputOTP.module.scss.js +14 -0
  133. package/dist/components/inputOTP/InputOTP.server.js +32 -0
  134. package/dist/components/inputOTP/InputOTP.view.js +117 -0
  135. package/dist/components/label/Label.css +33 -14
  136. package/dist/components/label/Label.js +37 -35
  137. package/dist/components/label/Label.module.css +33 -14
  138. package/dist/components/label/Label.module.scss.js +9 -2
  139. package/dist/components/link/Link.css +13 -13
  140. package/dist/components/link/Link.js +5 -3
  141. package/dist/components/link/Link.module.css +13 -13
  142. package/dist/components/link/Link.view.js +16 -13
  143. package/dist/components/list/List.css +71 -32
  144. package/dist/components/list/List.js +74 -28
  145. package/dist/components/list/List.module.css +71 -32
  146. package/dist/components/list/List.module.scss.js +1 -1
  147. package/dist/components/loading/Loading.js +4 -1
  148. package/dist/components/loading/Loading.view.js +47 -7
  149. package/dist/components/lottie/Lottie.css +16 -0
  150. package/dist/components/lottie/Lottie.js +9 -5
  151. package/dist/components/lottie/Lottie.module.css +16 -0
  152. package/dist/components/lottie/Lottie.module.scss.js +6 -2
  153. package/dist/components/map/Map.css +130 -0
  154. package/dist/components/map/Map.js +67 -46
  155. package/dist/components/map/Map.module.css +130 -0
  156. package/dist/components/map/Map.module.scss.js +6 -0
  157. package/dist/components/pagination/Pagination.css +127 -11
  158. package/dist/components/pagination/Pagination.js +4 -1
  159. package/dist/components/pagination/Pagination.module.css +127 -11
  160. package/dist/components/pagination/Pagination.module.scss.js +12 -4
  161. package/dist/components/pagination/Pagination.view.js +16 -2
  162. package/dist/components/post-item/PostItem.css +16 -16
  163. package/dist/components/post-item/PostItem.js +4 -1
  164. package/dist/components/post-item/PostItem.module.css +16 -16
  165. package/dist/components/post-item/PostItem.view.js +14 -5
  166. package/dist/components/post-item/PostItemAuthor.js +4 -1
  167. package/dist/components/post-teaser/PostTeaser.css +13 -13
  168. package/dist/components/post-teaser/PostTeaser.js +4 -1
  169. package/dist/components/post-teaser/PostTeaser.module.css +13 -13
  170. package/dist/components/post-teaser/PostTeaser.view.js +14 -5
  171. package/dist/components/post-widget/PostWidget.css +6 -8
  172. package/dist/components/post-widget/PostWidget.js +5 -3
  173. package/dist/components/post-widget/PostWidget.module.css +6 -8
  174. package/dist/components/post-widget/PostWidget.view.js +21 -8
  175. package/dist/components/post-widget-carousel/PostWidgetCarousel.css +7 -7
  176. package/dist/components/post-widget-carousel/PostWidgetCarousel.js +8 -2
  177. package/dist/components/post-widget-carousel/PostWidgetCarousel.module.css +7 -7
  178. package/dist/components/post-widget-carousel/PostWidgetCarousel.view.js +32 -14
  179. package/dist/components/progressBar/ProgressBar.css +4 -4
  180. package/dist/components/progressBar/ProgressBar.js +8 -2
  181. package/dist/components/progressBar/ProgressBar.module.css +4 -4
  182. package/dist/components/progressBar/ProgressBar.view.js +6 -3
  183. package/dist/components/quote/Quote.css +21 -6
  184. package/dist/components/quote/Quote.js +5 -5
  185. package/dist/components/quote/Quote.module.css +21 -6
  186. package/dist/components/quote/Quote.module.scss.js +5 -0
  187. package/dist/components/rating/Rating.client.js +6 -1
  188. package/dist/components/rating/Rating.css +34 -21
  189. package/dist/components/rating/Rating.js +4 -1
  190. package/dist/components/rating/Rating.module.css +34 -21
  191. package/dist/components/rating/Rating.module.scss.js +8 -0
  192. package/dist/components/rating/Rating.view.js +4 -2
  193. package/dist/components/rich-text/RichText.client.js +55 -20
  194. package/dist/components/rich-text/RichText.css +47 -31
  195. package/dist/components/rich-text/RichText.js +8 -2
  196. package/dist/components/rich-text/RichText.module.css +47 -31
  197. package/dist/components/rich-text/RichText.server.js +3 -0
  198. package/dist/components/select/Select.client.js +303 -102
  199. package/dist/components/select/Select.css +542 -221
  200. package/dist/components/select/Select.js +8 -2
  201. package/dist/components/select/Select.module.css +542 -221
  202. package/dist/components/select/Select.module.scss.js +57 -14
  203. package/dist/components/select/Select.view.js +75 -25
  204. package/dist/components/sidenav/SideNav.client.js +24 -1
  205. package/dist/components/sidenav/SideNav.css +89 -21
  206. package/dist/components/sidenav/SideNav.js +8 -2
  207. package/dist/components/sidenav/SideNav.module.css +89 -21
  208. package/dist/components/sidenav/SideNav.module.scss.js +6 -1
  209. package/dist/components/sidenav/SideNav.view.js +69 -14
  210. package/dist/components/skeleton/Skeleton.css +7 -7
  211. package/dist/components/skeleton/Skeleton.module.css +7 -7
  212. package/dist/components/slider/Slider.client.js +11 -2
  213. package/dist/components/slider/Slider.css +177 -112
  214. package/dist/components/slider/Slider.js +4 -1
  215. package/dist/components/slider/Slider.module.css +177 -112
  216. package/dist/components/slider/Slider.module.scss.js +11 -2
  217. package/dist/components/slider/Slider.view.js +140 -90
  218. package/dist/components/snackbar/Snackbar.client.js +5 -1
  219. package/dist/components/snackbar/Snackbar.css +125 -64
  220. package/dist/components/snackbar/Snackbar.js +4 -1
  221. package/dist/components/snackbar/Snackbar.module.css +125 -64
  222. package/dist/components/snackbar/Snackbar.module.scss.js +11 -13
  223. package/dist/components/snackbar/Snackbar.view.js +2 -2
  224. package/dist/components/snackbar/SnackbarProvider.js +8 -2
  225. package/dist/components/stepper/Stepper.client.js +27 -9
  226. package/dist/components/stepper/Stepper.css +46 -11
  227. package/dist/components/stepper/Stepper.js +4 -1
  228. package/dist/components/stepper/Stepper.module.css +46 -11
  229. package/dist/components/stepper/Stepper.module.scss.js +7 -0
  230. package/dist/components/stepper/Stepper.server.js +2 -0
  231. package/dist/components/stepper/Stepper.view.js +6 -1
  232. package/dist/components/switch/Switch.css +108 -84
  233. package/dist/components/switch/Switch.js +4 -1
  234. package/dist/components/switch/Switch.module.css +108 -84
  235. package/dist/components/switch/Switch.module.scss.js +14 -12
  236. package/dist/components/switch/Switch.view.js +10 -8
  237. package/dist/components/table/Table.css +19 -14
  238. package/dist/components/table/Table.js +1 -0
  239. package/dist/components/table/Table.module.css +19 -14
  240. package/dist/components/tabs/Tabs.client.js +1 -0
  241. package/dist/components/tabs/Tabs.css +53 -27
  242. package/dist/components/tabs/Tabs.js +8 -2
  243. package/dist/components/tabs/Tabs.module.css +53 -27
  244. package/dist/components/tabs/Tabs.module.scss.js +7 -2
  245. package/dist/components/tabs/Tabs.view.js +12 -4
  246. package/dist/components/teaser/Teaser.css +5 -5
  247. package/dist/components/teaser/Teaser.js +4 -4
  248. package/dist/components/teaser/Teaser.module.css +5 -5
  249. package/dist/components/tooltip/Tooltip.client.js +140 -95
  250. package/dist/components/tooltip/Tooltip.css +46 -9
  251. package/dist/components/tooltip/Tooltip.js +10 -4
  252. package/dist/components/tooltip/Tooltip.module.css +46 -9
  253. package/dist/components/tooltip/Tooltip.module.scss.js +5 -1
  254. package/dist/components/tooltip/Tooltip.view.js +7 -1
  255. package/dist/constants/project.js +1 -1
  256. package/dist/helpers/createIsland.js +1 -0
  257. package/dist/helpers/createLazyWrapper.js +1 -0
  258. package/dist/hooks/useGoogleMaps.js +0 -1
  259. package/dist/theme.css +3269 -1588
  260. package/dist/tsconfig.build.tsbuildinfo +1 -1
  261. package/dist/types/components/RTE/RTE.d.ts +6 -1
  262. package/dist/types/components/RTE/RTE.lazy.d.ts +6 -1
  263. package/dist/types/components/RTE/RTE.view.d.ts +1 -1
  264. package/dist/types/components/accordion/Accordion.d.ts +1 -1
  265. package/dist/types/components/accordion/Accordion.lazy.d.ts +1 -1
  266. package/dist/types/components/accordion/Accordion.model.d.ts +1 -1
  267. package/dist/types/components/accordion/Accordion.view.d.ts +1 -1
  268. package/dist/types/components/autocomplete/Autocomplete.model.d.ts +2 -0
  269. package/dist/types/components/autocomplete/Autocomplete.view.d.ts +1 -1
  270. package/dist/types/components/avatar/Avatar.d.ts +1 -1
  271. package/dist/types/components/avatar/Avatar.lazy.d.ts +1 -1
  272. package/dist/types/components/avatar/Avatar.model.d.ts +1 -1
  273. package/dist/types/components/avatar/Avatar.view.d.ts +1 -1
  274. package/dist/types/components/calendly/Calendly.view.d.ts +1 -1
  275. package/dist/types/components/card/Card.model.d.ts +1 -1
  276. package/dist/types/components/card/Card.view.d.ts +1 -1
  277. package/dist/types/components/carousel/Carousel.view.d.ts +1 -1
  278. package/dist/types/components/checkbox/Checkbox.d.ts +1 -0
  279. package/dist/types/components/checkbox/Checkbox.lazy.d.ts +1 -0
  280. package/dist/types/components/checkbox/Checkbox.model.d.ts +2 -0
  281. package/dist/types/components/checkbox/Checkbox.view.d.ts +1 -1
  282. package/dist/types/components/checkbox-group/CheckboxGroup.model.d.ts +2 -0
  283. package/dist/types/components/checkbox-group/CheckboxGroup.view.d.ts +1 -1
  284. package/dist/types/components/datePicker/DatePicker.model.d.ts +70 -1
  285. package/dist/types/components/datePicker/DatePicker.utils.d.ts +10 -0
  286. package/dist/types/components/datePicker/DatePicker.view.d.ts +7 -4
  287. package/dist/types/components/datePicker/DatePickerDialog.view.d.ts +4 -0
  288. package/dist/types/components/dynamic-list/DynamicList.model.d.ts +3 -1
  289. package/dist/types/components/dynamic-list/DynamicList.view.d.ts +1 -1
  290. package/dist/types/components/form/Form.d.ts +1 -1
  291. package/dist/types/components/form/Form.lazy.d.ts +1 -1
  292. package/dist/types/components/form/Form.model.d.ts +19 -4
  293. package/dist/types/components/form/FormField.client.d.ts +2 -2
  294. package/dist/types/components/form/FormField.d.ts +1 -1
  295. package/dist/types/components/form/FormField.lazy.d.ts +1 -1
  296. package/dist/types/components/form/FormField.server.d.ts +2 -2
  297. package/dist/types/components/headline/Headline.model.d.ts +2 -2
  298. package/dist/types/components/input/Input.model.d.ts +8 -1
  299. package/dist/types/components/input/Input.view.d.ts +1 -1
  300. package/dist/types/components/inputOTP/InputOTP.client.d.ts +4 -0
  301. package/dist/types/components/inputOTP/InputOTP.d.ts +10 -3
  302. package/dist/types/components/inputOTP/InputOTP.lazy.d.ts +11 -0
  303. package/dist/types/components/inputOTP/InputOTP.model.d.ts +10 -0
  304. package/dist/types/components/inputOTP/InputOTP.server.d.ts +3 -0
  305. package/dist/types/components/inputOTP/InputOTP.view.d.ts +3 -0
  306. package/dist/types/components/inputOTP/index.d.ts +1 -1
  307. package/dist/types/components/label/Label.model.d.ts +2 -0
  308. package/dist/types/components/link/Link.model.d.ts +1 -1
  309. package/dist/types/components/link/Link.view.d.ts +1 -1
  310. package/dist/types/components/list/List.d.ts +1 -1
  311. package/dist/types/components/list/List.model.d.ts +14 -5
  312. package/dist/types/components/list/index.d.ts +1 -1
  313. package/dist/types/components/loading/Loading.model.d.ts +2 -0
  314. package/dist/types/components/loading/index.d.ts +1 -1
  315. package/dist/types/components/pagination/Pagination.model.d.ts +2 -0
  316. package/dist/types/components/pagination/Pagination.view.d.ts +1 -1
  317. package/dist/types/components/post-item/PostItem.model.d.ts +2 -1
  318. package/dist/types/components/post-teaser/PostTeaser.model.d.ts +2 -1
  319. package/dist/types/components/post-widget/PostWidget.view.d.ts +1 -1
  320. package/dist/types/components/progressBar/ProgressBar.d.ts +1 -1
  321. package/dist/types/components/progressBar/ProgressBar.lazy.d.ts +1 -1
  322. package/dist/types/components/progressBar/ProgressBar.model.d.ts +3 -2
  323. package/dist/types/components/progressBar/ProgressBar.view.d.ts +1 -1
  324. package/dist/types/components/progressBar/index.d.ts +1 -1
  325. package/dist/types/components/quote/Quote.model.d.ts +1 -1
  326. package/dist/types/components/rating/Rating.model.d.ts +2 -0
  327. package/dist/types/components/rich-text/RichText.client.d.ts +1 -1
  328. package/dist/types/components/rich-text/RichText.d.ts +1 -1
  329. package/dist/types/components/rich-text/RichText.lazy.d.ts +1 -1
  330. package/dist/types/components/rich-text/RichText.model.d.ts +1 -1
  331. package/dist/types/components/select/Select.model.d.ts +2 -0
  332. package/dist/types/components/select/Select.view.d.ts +1 -1
  333. package/dist/types/components/sidenav/SideNav.client.d.ts +1 -1
  334. package/dist/types/components/sidenav/SideNav.model.d.ts +16 -2
  335. package/dist/types/components/sidenav/SideNav.view.d.ts +1 -1
  336. package/dist/types/components/slider/Slider.model.d.ts +2 -0
  337. package/dist/types/components/snackbar/Snackbar.model.d.ts +3 -2
  338. package/dist/types/components/snackbar/Snackbar.view.d.ts +3 -2
  339. package/dist/types/components/snackbar/index.d.ts +1 -1
  340. package/dist/types/components/stepper/Stepper.d.ts +1 -0
  341. package/dist/types/components/stepper/Stepper.lazy.d.ts +1 -0
  342. package/dist/types/components/stepper/Stepper.model.d.ts +3 -0
  343. package/dist/types/components/stepper/Stepper.server.d.ts +1 -1
  344. package/dist/types/components/switch/Switch.d.ts +2 -2
  345. package/dist/types/components/switch/Switch.lazy.d.ts +2 -2
  346. package/dist/types/components/switch/Switch.model.d.ts +3 -4
  347. package/dist/types/components/tabs/Tabs.model.d.ts +2 -0
  348. package/dist/types/components/tabs/Tabs.view.d.ts +1 -1
  349. package/dist/types/components/teaser/Teaser.model.d.ts +1 -1
  350. package/dist/types/components/tooltip/Tooltip.model.d.ts +2 -0
  351. package/package.json +53 -24
@@ -1,6 +1,19 @@
1
1
  var __defProp = Object.defineProperty;
2
2
  var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
3
3
  import { jsx, jsxs } from "react/jsx-runtime";
4
+ const colorToCSS = {
5
+ // "inherit" explicitly targets the adaptive foreground token so the spinner
6
+ // stays visible regardless of light/dark mode instead of blindly inheriting
7
+ // a parent color that may match the background.
8
+ inherit: "var(--pk-color-fg)",
9
+ primary: "var(--pk-color-brand)",
10
+ secondary: "var(--pk-color-accent)",
11
+ success: "var(--pk-color-success)",
12
+ error: "var(--pk-color-error)",
13
+ info: "var(--pk-color-fg)",
14
+ warning: "var(--pk-color-warning)",
15
+ white: "var(--pk-palette-white)"
16
+ };
4
17
  const PX = {
5
18
  xs: 16,
6
19
  sm: 24,
@@ -11,9 +24,18 @@ const PX = {
11
24
  const SpinnerView = /* @__PURE__ */ __name(({
12
25
  className,
13
26
  style,
14
- size = "sm",
15
- ariaLabel = "Loading",
16
- reducedMotion
27
+ /* istanbul ignore next */
28
+ size = (
29
+ /* istanbul ignore next */
30
+ "sm"
31
+ ),
32
+ /* istanbul ignore next */
33
+ ariaLabel = (
34
+ /* istanbul ignore next */
35
+ "Loading"
36
+ ),
37
+ reducedMotion,
38
+ color
17
39
  }) => {
18
40
  const s = PX[size];
19
41
  const r = s / 2;
@@ -31,6 +53,10 @@ const SpinnerView = /* @__PURE__ */ __name(({
31
53
  width: s,
32
54
  style: {
33
55
  display: "inline-block",
56
+ ...color ? {
57
+ "--pk-loading-color": colorToCSS[color],
58
+ color: colorToCSS[color]
59
+ } : void 0,
34
60
  ...style
35
61
  },
36
62
  children: [
@@ -89,13 +115,26 @@ const SpinnerView = /* @__PURE__ */ __name(({
89
115
  const OverlayView = /* @__PURE__ */ __name(({
90
116
  className,
91
117
  style,
92
- size = "xl",
93
- ariaLabel = "Loading",
94
- show = true,
118
+ /* istanbul ignore next */
119
+ size = (
120
+ /* istanbul ignore next */
121
+ "xl"
122
+ ),
123
+ /* istanbul ignore next */
124
+ ariaLabel = (
125
+ /* istanbul ignore next */
126
+ "Loading"
127
+ ),
128
+ /* istanbul ignore next */
129
+ show = (
130
+ /* istanbul ignore next */
131
+ true
132
+ ),
95
133
  blur = 0,
96
134
  zIndex = 9999,
97
135
  reducedMotion,
98
- resolvedBackdrop
136
+ resolvedBackdrop,
137
+ color
99
138
  }) => {
100
139
  if (!show) return null;
101
140
  const bg = resolvedBackdrop === "dark" ? "rgba(0,0,0,0.5)" : "rgba(255,255,255,0.5)";
@@ -122,6 +161,7 @@ const OverlayView = /* @__PURE__ */ __name(({
122
161
  SpinnerView,
123
162
  {
124
163
  ariaLabel,
164
+ color,
125
165
  reducedMotion,
126
166
  size
127
167
  }
@@ -126,4 +126,20 @@
126
126
  */
127
127
  .prokodo-Lottie__container {
128
128
  position: relative;
129
+ width: 100%;
130
+ }
131
+ .prokodo-Lottie__placeholder {
132
+ width: 100%;
133
+ aspect-ratio: 1/1;
134
+ border-radius: var(--pk-radius-md);
135
+ background-color: var(--pk-color-surface-subtle);
136
+ animation: pulse var(--pk-timing-slow) ease-in-out infinite alternate;
137
+ }
138
+ @keyframes pulse {
139
+ from {
140
+ opacity: 1;
141
+ }
142
+ to {
143
+ opacity: 0.4;
144
+ }
129
145
  }
@@ -4,6 +4,7 @@ import { create } from "../../helpers/bem.js";
4
4
  import styles from "./Lottie.module.scss.js";
5
5
  const bem = create(styles, "Lottie");
6
6
  const DotLottieReact = lazy(
7
+ /* istanbul ignore next */
7
8
  () => import("@lottiefiles/dotlottie-react").then((mod) => ({
8
9
  default: mod.DotLottieReact
9
10
  }))
@@ -13,12 +14,15 @@ const Lottie = memo(
13
14
  const [isInView, setIsInView] = useState(false);
14
15
  const containerRef = useRef(null);
15
16
  useEffect(() => {
16
- const observer = new IntersectionObserver(([entry]) => {
17
- if ((entry == null ? void 0 : entry.isIntersecting) === true) {
18
- setIsInView(true);
19
- observer.disconnect();
17
+ const observer = new IntersectionObserver(
18
+ /* istanbul ignore next */
19
+ ([entry]) => {
20
+ if ((entry == null ? void 0 : entry.isIntersecting) === true) {
21
+ setIsInView(true);
22
+ observer.disconnect();
23
+ }
20
24
  }
21
- });
25
+ );
22
26
  const el = containerRef.current;
23
27
  if (el) observer.observe(el);
24
28
  return () => observer.disconnect();
@@ -126,4 +126,20 @@
126
126
  */
127
127
  .prokodo-Lottie__container {
128
128
  position: relative;
129
+ width: 100%;
130
+ }
131
+ .prokodo-Lottie__placeholder {
132
+ width: 100%;
133
+ aspect-ratio: 1/1;
134
+ border-radius: var(--pk-radius-md);
135
+ background-color: var(--pk-color-surface-subtle);
136
+ animation: pulse var(--pk-timing-slow) ease-in-out infinite alternate;
137
+ }
138
+ @keyframes pulse {
139
+ from {
140
+ opacity: 1;
141
+ }
142
+ to {
143
+ opacity: 0.4;
144
+ }
129
145
  }
@@ -1,6 +1,10 @@
1
+ const pulse = "pulse";
1
2
  const styles = {
2
- "prokodo-Lottie__container": "prokodo-Lottie__container"
3
+ "prokodo-Lottie__container": "prokodo-Lottie__container",
4
+ "prokodo-Lottie__placeholder": "prokodo-Lottie__placeholder",
5
+ pulse
3
6
  };
4
7
  export {
5
- styles as default
8
+ styles as default,
9
+ pulse
6
10
  };
@@ -0,0 +1,130 @@
1
+ /* stylelint-disable */
2
+ /**
3
+ * Calculates a rem-based value by a given pixel size.
4
+ */
5
+ /* stylelint-disable */
6
+ /**
7
+ * Applies flex-column and gap.
8
+ */
9
+ /*
10
+ As example (light, primary)
11
+ See defined modes in designsystem/config/gradients
12
+ */
13
+ /**
14
+ * Mixin that renders a media query that target screens that are larger than the
15
+ * given size.
16
+ */
17
+ /**
18
+ * Mixin that renders a media query that target screens that are smaller than the
19
+ * given size.
20
+ */
21
+ /**
22
+ * Mixin that renders a media query that target screens in between the given range.
23
+ */
24
+ /**
25
+ * Mixin that renders a media query that target screens that have height larger than the
26
+ * given size.
27
+ */
28
+ /**
29
+ * Mixin that renders a media query that target screens that have height smaller than the
30
+ * given size.
31
+ */
32
+ /* stylelint-disable */
33
+ /* M3/Elevation Light/1 */
34
+ /* M3/Elevation Light/2 */
35
+ /* M3/Elevation/5 */
36
+ /* M3/Elevation/1 Text */
37
+ /* Inner elevations */
38
+ /* stylelint-disable */
39
+ /**
40
+ * Visually hides an element but not removes them for screen readers.
41
+ */
42
+ /**
43
+ * The inverse of the `hidden` helper to reset a previously hidden element to be
44
+ * visible for users.
45
+ */
46
+ /**
47
+ * Creates a selector for :hover effects depending on the current user input
48
+ * device. If the input device is a mouse, this hover effect will appear.
49
+ * Keyboard and touch inputs are ignored.
50
+ *
51
+ * Example usage:
52
+ * .link {
53
+ * color: blue;
54
+ *
55
+ * @include when-hovered() {
56
+ * color: green;
57
+ * }
58
+ * }
59
+ */
60
+ /**
61
+ * Creates a selector for :active effects depending on the current user input
62
+ * device. The state applies when the input device is a mouse or keyboard. Touch
63
+ * devices will not show a pressed state.
64
+ *
65
+ * Example usage:
66
+ * .link {
67
+ * box-shadow: none;
68
+ *
69
+ * @include when-pressed() {
70
+ * box-shadow: inset 0 2px 4px grey;
71
+ * }
72
+ * }
73
+ */
74
+ /**
75
+ * Creates a selector for :focus effects depending on the current user input
76
+ * device. When the user navigates using a keyboard, the focus effect defined in
77
+ * here is applied. For other input devices they don't show up.
78
+ *
79
+ * Example usage:
80
+ * .link {
81
+ * text-decoration: none;
82
+ *
83
+ * @include when-focused() {
84
+ * text-decoration: underline;
85
+ * }
86
+ * }
87
+ */
88
+ /**
89
+ * Creates a selector for :focus-within effects depending on the current user
90
+ * input device. When the user navigates using a keyboard, the focus effect
91
+ * defined in here is applied. For other input devices they don't show up.
92
+ *
93
+ * Example usage:
94
+ * .link {
95
+ * img {
96
+ * opacity: 0.75;
97
+ *
98
+ * @include when-focused-within() {
99
+ * opacity: 1;
100
+ * }
101
+ * }
102
+ * }
103
+ */
104
+ /**
105
+ * Wrapper for media query "prefers-reduced-motion".
106
+ */
107
+ /**
108
+ * This helper hides the outline but still makes it visible for
109
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
110
+ */
111
+ /**
112
+ * This helper hides the outline but still makes it visible for
113
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
114
+ */
115
+ /**
116
+ * Renders an alternative, but application consistent focus-ring.
117
+ */
118
+ /**
119
+ * Specifies the outer layout for all contents across breakpoints. Apply this
120
+ * mixin to the container element, to center the contents on the screen within
121
+ * the layout offsets.
122
+ */
123
+ /**
124
+ * This mixin specifies basic text-styles for components that render a richtext
125
+ * content.
126
+ */
127
+ .prokodo-Map__container {
128
+ width: 100%;
129
+ height: var(--pk-map-height, 500px);
130
+ }
@@ -1,65 +1,86 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { memo, useRef, useState, useCallback, useEffect } from "react";
3
+ import { create } from "../../helpers/bem.js";
3
4
  import { isString, isArray } from "../../helpers/validations.js";
4
5
  import { useGoogleMaps } from "../../hooks/useGoogleMaps.js";
6
+ import styles from "./Map.module.scss.js";
5
7
  import { Skeleton } from "../skeleton/Skeleton.js";
8
+ const bem = create(styles, "Map");
6
9
  const Map = memo(
7
10
  ({ apiKey, mapId, center, marker, zoom = 8 }) => {
8
11
  const mapRef = useRef(null);
9
12
  const mapInstanceRef = useRef(null);
10
13
  const [isDark, setIsDark] = useState(
11
- typeof document !== "undefined" ? document.documentElement.getAttribute("data-theme") === "dark" : false
14
+ typeof document !== "undefined" ? document.documentElement.getAttribute("data-theme") === "dark" : (
15
+ /* istanbul ignore next */
16
+ false
17
+ )
12
18
  );
13
- const initMap = useCallback(() => {
14
- if (!(mapRef == null ? void 0 : mapRef.current)) return;
15
- const options = {
16
- center,
17
- zoom,
18
- mapId: isString(mapId) ? mapId : isDark === true ? "c3c70a1ea4c4b0b8" : "e5921eca3f70ade2",
19
- disableDefaultUI: true,
20
- mapTypeControl: false,
21
- fullscreenControl: false,
22
- streetViewControl: false,
23
- zoomControl: true
24
- };
25
- const map = new google.maps.Map(mapRef.current, options);
26
- mapInstanceRef.current = map;
27
- if (!isArray(marker)) return;
28
- marker.forEach((place) => {
29
- var _a, _b;
30
- if (typeof ((_a = place == null ? void 0 : place.position) == null ? void 0 : _a.lat) === "number" || typeof ((_b = place == null ? void 0 : place.position) == null ? void 0 : _b.lng) === "number")
31
- return;
32
- const content = document.createElement("img");
33
- content.src = "/images/prokodo-map-marker.webp";
34
- new google.maps.marker.AdvancedMarkerElement({
35
- map,
36
- content,
37
- ...place
19
+ const initMap = useCallback(
20
+ /* istanbul ignore next */
21
+ () => {
22
+ if (!(mapRef == null ? void 0 : mapRef.current)) return;
23
+ const options = {
24
+ center,
25
+ zoom,
26
+ mapId: isString(mapId) ? mapId : isDark === true ? "c3c70a1ea4c4b0b8" : "e5921eca3f70ade2",
27
+ disableDefaultUI: true,
28
+ mapTypeControl: false,
29
+ fullscreenControl: false,
30
+ streetViewControl: false,
31
+ zoomControl: true
32
+ };
33
+ const map = new google.maps.Map(mapRef.current, options);
34
+ mapInstanceRef.current = map;
35
+ if (!isArray(marker)) return;
36
+ marker.forEach((place) => {
37
+ var _a, _b;
38
+ if (typeof ((_a = place == null ? void 0 : place.position) == null ? void 0 : _a.lat) === "number" || typeof ((_b = place == null ? void 0 : place.position) == null ? void 0 : _b.lng) === "number")
39
+ return;
40
+ const content = document.createElement("img");
41
+ content.src = "/images/prokodo-map-marker.webp";
42
+ new google.maps.marker.AdvancedMarkerElement({
43
+ map,
44
+ content,
45
+ ...place
46
+ });
38
47
  });
39
- });
40
- }, [isDark, mapId, center, marker, zoom]);
48
+ },
49
+ [isDark, mapId, center, marker, zoom]
50
+ );
41
51
  const loaded = useGoogleMaps(apiKey, isDark);
42
- useEffect(() => {
43
- if (!loaded || mapInstanceRef.current) return;
44
- initMap();
45
- }, [loaded, initMap]);
46
- useEffect(() => {
47
- const observer = new MutationObserver(() => {
48
- const theme = document.documentElement.getAttribute("data-theme");
49
- setIsDark(theme === "dark");
50
- mapInstanceRef.current = null;
52
+ useEffect(
53
+ /* istanbul ignore next */
54
+ () => {
55
+ if (!loaded || mapInstanceRef.current) return;
51
56
  initMap();
52
- });
53
- observer.observe(document.documentElement, {
54
- attributes: true,
55
- attributeFilter: ["data-theme"]
56
- });
57
- return () => observer.disconnect();
58
- }, [initMap]);
57
+ },
58
+ [loaded, initMap]
59
+ );
60
+ useEffect(
61
+ /* istanbul ignore next */
62
+ () => {
63
+ const observer = new MutationObserver(
64
+ /* istanbul ignore next */
65
+ () => {
66
+ const theme = document.documentElement.getAttribute("data-theme");
67
+ setIsDark(theme === "dark");
68
+ mapInstanceRef.current = null;
69
+ initMap();
70
+ }
71
+ );
72
+ observer.observe(document.documentElement, {
73
+ attributes: true,
74
+ attributeFilter: ["data-theme"]
75
+ });
76
+ return () => observer.disconnect();
77
+ },
78
+ [initMap]
79
+ );
59
80
  if (!loaded) {
60
- return /* @__PURE__ */ jsx(Skeleton, { height: "500px", width: "100%" });
81
+ return /* @__PURE__ */ jsx(Skeleton, { className: bem("container") });
61
82
  }
62
- return /* @__PURE__ */ jsx("div", { ref: mapRef, style: { width: "100%", height: "500px" } });
83
+ return /* @__PURE__ */ jsx("div", { ref: mapRef, className: bem("container") });
63
84
  }
64
85
  );
65
86
  Map.displayName = "Map";
@@ -0,0 +1,130 @@
1
+ /* stylelint-disable */
2
+ /**
3
+ * Calculates a rem-based value by a given pixel size.
4
+ */
5
+ /* stylelint-disable */
6
+ /**
7
+ * Applies flex-column and gap.
8
+ */
9
+ /*
10
+ As example (light, primary)
11
+ See defined modes in designsystem/config/gradients
12
+ */
13
+ /**
14
+ * Mixin that renders a media query that target screens that are larger than the
15
+ * given size.
16
+ */
17
+ /**
18
+ * Mixin that renders a media query that target screens that are smaller than the
19
+ * given size.
20
+ */
21
+ /**
22
+ * Mixin that renders a media query that target screens in between the given range.
23
+ */
24
+ /**
25
+ * Mixin that renders a media query that target screens that have height larger than the
26
+ * given size.
27
+ */
28
+ /**
29
+ * Mixin that renders a media query that target screens that have height smaller than the
30
+ * given size.
31
+ */
32
+ /* stylelint-disable */
33
+ /* M3/Elevation Light/1 */
34
+ /* M3/Elevation Light/2 */
35
+ /* M3/Elevation/5 */
36
+ /* M3/Elevation/1 Text */
37
+ /* Inner elevations */
38
+ /* stylelint-disable */
39
+ /**
40
+ * Visually hides an element but not removes them for screen readers.
41
+ */
42
+ /**
43
+ * The inverse of the `hidden` helper to reset a previously hidden element to be
44
+ * visible for users.
45
+ */
46
+ /**
47
+ * Creates a selector for :hover effects depending on the current user input
48
+ * device. If the input device is a mouse, this hover effect will appear.
49
+ * Keyboard and touch inputs are ignored.
50
+ *
51
+ * Example usage:
52
+ * .link {
53
+ * color: blue;
54
+ *
55
+ * @include when-hovered() {
56
+ * color: green;
57
+ * }
58
+ * }
59
+ */
60
+ /**
61
+ * Creates a selector for :active effects depending on the current user input
62
+ * device. The state applies when the input device is a mouse or keyboard. Touch
63
+ * devices will not show a pressed state.
64
+ *
65
+ * Example usage:
66
+ * .link {
67
+ * box-shadow: none;
68
+ *
69
+ * @include when-pressed() {
70
+ * box-shadow: inset 0 2px 4px grey;
71
+ * }
72
+ * }
73
+ */
74
+ /**
75
+ * Creates a selector for :focus effects depending on the current user input
76
+ * device. When the user navigates using a keyboard, the focus effect defined in
77
+ * here is applied. For other input devices they don't show up.
78
+ *
79
+ * Example usage:
80
+ * .link {
81
+ * text-decoration: none;
82
+ *
83
+ * @include when-focused() {
84
+ * text-decoration: underline;
85
+ * }
86
+ * }
87
+ */
88
+ /**
89
+ * Creates a selector for :focus-within effects depending on the current user
90
+ * input device. When the user navigates using a keyboard, the focus effect
91
+ * defined in here is applied. For other input devices they don't show up.
92
+ *
93
+ * Example usage:
94
+ * .link {
95
+ * img {
96
+ * opacity: 0.75;
97
+ *
98
+ * @include when-focused-within() {
99
+ * opacity: 1;
100
+ * }
101
+ * }
102
+ * }
103
+ */
104
+ /**
105
+ * Wrapper for media query "prefers-reduced-motion".
106
+ */
107
+ /**
108
+ * This helper hides the outline but still makes it visible for
109
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
110
+ */
111
+ /**
112
+ * This helper hides the outline but still makes it visible for
113
+ * Windows high-contrast users. Use this instead of `outline: 0;`.
114
+ */
115
+ /**
116
+ * Renders an alternative, but application consistent focus-ring.
117
+ */
118
+ /**
119
+ * Specifies the outer layout for all contents across breakpoints. Apply this
120
+ * mixin to the container element, to center the contents on the screen within
121
+ * the layout offsets.
122
+ */
123
+ /**
124
+ * This mixin specifies basic text-styles for components that render a richtext
125
+ * content.
126
+ */
127
+ .prokodo-Map__container {
128
+ width: 100%;
129
+ height: var(--pk-map-height, 500px);
130
+ }
@@ -0,0 +1,6 @@
1
+ const styles = {
2
+ "prokodo-Map__container": "prokodo-Map__container"
3
+ };
4
+ export {
5
+ styles as default
6
+ };