@pixelated-tech/components 3.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (400) hide show
  1. package/README.md +231 -0
  2. package/dist/components/buzzwordbingo/buzzwordbingo.css +42 -0
  3. package/dist/components/buzzwordbingo/buzzwordbingo.js +35 -0
  4. package/dist/components/callout/callout.js +95 -0
  5. package/dist/components/callout/callout.scss +331 -0
  6. package/dist/components/carousel/carousel.css +178 -0
  7. package/dist/components/carousel/carousel.drag.js +203 -0
  8. package/dist/components/carousel/carousel.js +124 -0
  9. package/dist/components/cms/calendly.js +20 -0
  10. package/dist/components/cms/cloudinary.image.js +132 -0
  11. package/dist/components/cms/cloudinary.js +106 -0
  12. package/dist/components/cms/contentful.delivery.js +247 -0
  13. package/dist/components/cms/contentful.items.components.js +243 -0
  14. package/dist/components/cms/contentful.items.css +131 -0
  15. package/dist/components/cms/contentful.management.js +254 -0
  16. package/dist/components/cms/flickr.js +160 -0
  17. package/dist/components/cms/google.reviews.components.js +36 -0
  18. package/dist/components/cms/google.reviews.functions.js +26 -0
  19. package/dist/components/cms/gravatar.components.js +41 -0
  20. package/dist/components/cms/gravatar.functions.js +52 -0
  21. package/dist/components/cms/hubspot.components.js +45 -0
  22. package/dist/components/cms/hubspot.js +34 -0
  23. package/dist/components/cms/instagram.components.js +40 -0
  24. package/dist/components/cms/instagram.functions.js +67 -0
  25. package/dist/components/cms/wordpress.components.js +47 -0
  26. package/dist/components/cms/wordpress.css +55 -0
  27. package/dist/components/cms/wordpress.functions.js +49 -0
  28. package/dist/components/config/config.client.js +22 -0
  29. package/dist/components/config/config.example.js +70 -0
  30. package/dist/components/config/config.js +53 -0
  31. package/dist/components/config/config.server.js +11 -0
  32. package/dist/components/config/config.types.js +2 -0
  33. package/dist/components/general/css.js +60 -0
  34. package/dist/components/general/headers.css +16 -0
  35. package/dist/components/general/headers.js +27 -0
  36. package/dist/components/general/image.js +81 -0
  37. package/dist/components/general/layout.js +147 -0
  38. package/dist/components/general/layout.scss +47 -0
  39. package/dist/components/general/loading.js +36 -0
  40. package/dist/components/general/loading.scss +80 -0
  41. package/dist/components/general/microinteractions.css +229 -0
  42. package/dist/components/general/microinteractions.js +87 -0
  43. package/dist/components/general/modal.css +65 -0
  44. package/dist/components/general/modal.js +52 -0
  45. package/dist/components/general/table.css +73 -0
  46. package/dist/components/general/table.js +108 -0
  47. package/dist/components/linkedin/pixelated.linkedin.js +180 -0
  48. package/dist/components/linkedin/pixelated.linkedin1.js +102 -0
  49. package/dist/components/linkedin/pixelated.linkedin2.js +92 -0
  50. package/dist/components/markdown/markdown.css +12 -0
  51. package/dist/components/markdown/markdown.js +39 -0
  52. package/dist/components/menu/menu-accordion.css +198 -0
  53. package/dist/components/menu/menu-accordion.js +183 -0
  54. package/dist/components/menu/menu-expando.css +127 -0
  55. package/dist/components/menu/menu-expando.js +48 -0
  56. package/dist/components/menu/menu-simple.css +76 -0
  57. package/dist/components/menu/menu-simple.js +56 -0
  58. package/dist/components/nerdjoke/nerdjoke.css +69 -0
  59. package/dist/components/nerdjoke/nerdjoke.js +95 -0
  60. package/dist/components/pagebuilder/components/ComponentPropertiesForm.js +15 -0
  61. package/dist/components/pagebuilder/components/ComponentSelector.js +67 -0
  62. package/dist/components/pagebuilder/components/ComponentTree.js +95 -0
  63. package/dist/components/pagebuilder/components/PageBuilderUI.js +48 -0
  64. package/dist/components/pagebuilder/components/PageEngine.js +97 -0
  65. package/dist/components/pagebuilder/components/SaveLoadSection.js +168 -0
  66. package/dist/components/pagebuilder/components/pagebuilder.scss +123 -0
  67. package/dist/components/pagebuilder/form/form.css +101 -0
  68. package/dist/components/pagebuilder/form/form.js +455 -0
  69. package/dist/components/pagebuilder/form/form.submit.js +65 -0
  70. package/dist/components/pagebuilder/form/formcomponents.js +359 -0
  71. package/dist/components/pagebuilder/form/formvalidations.js +80 -0
  72. package/dist/components/pagebuilder/lib/componentGeneration.js +105 -0
  73. package/dist/components/pagebuilder/lib/componentMap.js +32 -0
  74. package/dist/components/pagebuilder/lib/componentMetadata.js +146 -0
  75. package/dist/components/pagebuilder/lib/pageStorageContentful.js +142 -0
  76. package/dist/components/pagebuilder/lib/pageStorageLocal.js +143 -0
  77. package/dist/components/pagebuilder/lib/pageStorageTypes.js +1 -0
  78. package/dist/components/pagebuilder/lib/propTypeIntrospection.js +177 -0
  79. package/dist/components/pagebuilder/lib/types.js +4 -0
  80. package/dist/components/pagebuilder/lib/usePageBuilder.js +234 -0
  81. package/dist/components/recipe/recipe.css +107 -0
  82. package/dist/components/recipe/recipe.js +161 -0
  83. package/dist/components/resume/resume.css +162 -0
  84. package/dist/components/resume/resume.js +195 -0
  85. package/dist/components/seo/404.css +25 -0
  86. package/dist/components/seo/404.js +32 -0
  87. package/dist/components/seo/googleanalytics.js +70 -0
  88. package/dist/components/seo/googlemap.js +15 -0
  89. package/dist/components/seo/googlesearch.css +30 -0
  90. package/dist/components/seo/googlesearch.js +37 -0
  91. package/dist/components/seo/metadata.js +156 -0
  92. package/dist/components/seo/sitemap.js +171 -0
  93. package/dist/components/shoppingcart/ebay.components.js +203 -0
  94. package/dist/components/shoppingcart/ebay.css +131 -0
  95. package/dist/components/shoppingcart/ebay.functions.js +240 -0
  96. package/dist/components/shoppingcart/paypal.js +169 -0
  97. package/dist/components/shoppingcart/shoppingcart.components.js +257 -0
  98. package/dist/components/shoppingcart/shoppingcart.css +122 -0
  99. package/dist/components/shoppingcart/shoppingcart.functions.js +324 -0
  100. package/dist/components/sidepanel/sidepanel.css +129 -0
  101. package/dist/components/sidepanel/sidepanel.js +54 -0
  102. package/dist/components/socialcard/socialcard.css +118 -0
  103. package/dist/components/socialcard/socialcard.js +317 -0
  104. package/dist/components/tiles/tiles.css +77 -0
  105. package/dist/components/tiles/tiles.js +38 -0
  106. package/dist/components/timeline/timeline.css +139 -0
  107. package/dist/components/timeline/timeline.js +28 -0
  108. package/dist/components/utilities/api.js +36 -0
  109. package/dist/components/utilities/functions.js +98 -0
  110. package/dist/components/yelp/yelp.js +50 -0
  111. package/dist/css/pixelated.font.scss +68 -0
  112. package/dist/css/pixelated.global.css +548 -0
  113. package/dist/css/pixelated.grid.scss +82 -0
  114. package/dist/data/404-data.json +104 -0
  115. package/dist/data/buzzwords.js +28 -0
  116. package/dist/data/form.json +370 -0
  117. package/dist/data/recipes.json +1917 -0
  118. package/dist/data/references.json +139 -0
  119. package/dist/data/requests.json +137 -0
  120. package/dist/data/resume.json +2577 -0
  121. package/dist/data/routes.json +184 -0
  122. package/dist/data/routes2.json +117 -0
  123. package/dist/data/shipping.to.json +422 -0
  124. package/dist/index.js +78 -0
  125. package/dist/index.server.js +35 -0
  126. package/dist/types/components/buzzwordbingo/buzzwordbingo.d.ts +26 -0
  127. package/dist/types/components/buzzwordbingo/buzzwordbingo.d.ts.map +1 -0
  128. package/dist/types/components/callout/callout.d.ts +53 -0
  129. package/dist/types/components/callout/callout.d.ts.map +1 -0
  130. package/dist/types/components/carousel/carousel.d.ts +28 -0
  131. package/dist/types/components/carousel/carousel.d.ts.map +1 -0
  132. package/dist/types/components/carousel/carousel.drag.d.ts +12 -0
  133. package/dist/types/components/carousel/carousel.drag.d.ts.map +1 -0
  134. package/dist/types/components/cms/calendly.d.ts +11 -0
  135. package/dist/types/components/cms/calendly.d.ts.map +1 -0
  136. package/dist/types/components/cms/cloudinary.d.ts +27 -0
  137. package/dist/types/components/cms/cloudinary.d.ts.map +1 -0
  138. package/dist/types/components/cms/cloudinary.image.d.ts +56 -0
  139. package/dist/types/components/cms/cloudinary.image.d.ts.map +1 -0
  140. package/dist/types/components/cms/contentful.delivery.d.ts +149 -0
  141. package/dist/types/components/cms/contentful.delivery.d.ts.map +1 -0
  142. package/dist/types/components/cms/contentful.items.components.d.ts +38 -0
  143. package/dist/types/components/cms/contentful.items.components.d.ts.map +1 -0
  144. package/dist/types/components/cms/contentful.management.d.ts +71 -0
  145. package/dist/types/components/cms/contentful.management.d.ts.map +1 -0
  146. package/dist/types/components/cms/flickr.d.ts +39 -0
  147. package/dist/types/components/cms/flickr.d.ts.map +1 -0
  148. package/dist/types/components/cms/google.reviews.components.d.ts +7 -0
  149. package/dist/types/components/cms/google.reviews.components.d.ts.map +1 -0
  150. package/dist/types/components/cms/google.reviews.functions.d.ts +25 -0
  151. package/dist/types/components/cms/google.reviews.functions.d.ts.map +1 -0
  152. package/dist/types/components/cms/gravatar.components.d.ts +26 -0
  153. package/dist/types/components/cms/gravatar.components.d.ts.map +1 -0
  154. package/dist/types/components/cms/gravatar.functions.d.ts +53 -0
  155. package/dist/types/components/cms/gravatar.functions.d.ts.map +1 -0
  156. package/dist/types/components/cms/hubspot.components.d.ts +15 -0
  157. package/dist/types/components/cms/hubspot.components.d.ts.map +1 -0
  158. package/dist/types/components/cms/hubspot.d.ts +18 -0
  159. package/dist/types/components/cms/hubspot.d.ts.map +1 -0
  160. package/dist/types/components/cms/instagram.components.d.ts +10 -0
  161. package/dist/types/components/cms/instagram.components.d.ts.map +1 -0
  162. package/dist/types/components/cms/instagram.functions.d.ts +63 -0
  163. package/dist/types/components/cms/instagram.functions.d.ts.map +1 -0
  164. package/dist/types/components/cms/wordpress.components.d.ts +11 -0
  165. package/dist/types/components/cms/wordpress.components.d.ts.map +1 -0
  166. package/dist/types/components/cms/wordpress.functions.d.ts +28 -0
  167. package/dist/types/components/cms/wordpress.functions.d.ts.map +1 -0
  168. package/dist/types/components/config/config.client.d.ts +13 -0
  169. package/dist/types/components/config/config.client.d.ts.map +1 -0
  170. package/dist/types/components/config/config.d.ts +12 -0
  171. package/dist/types/components/config/config.d.ts.map +1 -0
  172. package/dist/types/components/config/config.example.d.ts +4 -0
  173. package/dist/types/components/config/config.example.d.ts.map +1 -0
  174. package/dist/types/components/config/config.server.d.ts +7 -0
  175. package/dist/types/components/config/config.server.d.ts.map +1 -0
  176. package/dist/types/components/config/config.types.d.ts +84 -0
  177. package/dist/types/components/config/config.types.d.ts.map +1 -0
  178. package/dist/types/components/general/css.d.ts +3 -0
  179. package/dist/types/components/general/css.d.ts.map +1 -0
  180. package/dist/types/components/general/headers.d.ts +19 -0
  181. package/dist/types/components/general/headers.d.ts.map +1 -0
  182. package/dist/types/components/general/image.d.ts +3 -0
  183. package/dist/types/components/general/image.d.ts.map +1 -0
  184. package/dist/types/components/general/layout.d.ts +73 -0
  185. package/dist/types/components/general/layout.d.ts.map +1 -0
  186. package/dist/types/components/general/loading.d.ts +11 -0
  187. package/dist/types/components/general/loading.d.ts.map +1 -0
  188. package/dist/types/components/general/microinteractions.d.ts +20 -0
  189. package/dist/types/components/general/microinteractions.d.ts.map +1 -0
  190. package/dist/types/components/general/modal.d.ts +8 -0
  191. package/dist/types/components/general/modal.d.ts.map +1 -0
  192. package/dist/types/components/general/table.d.ts +12 -0
  193. package/dist/types/components/general/table.d.ts.map +1 -0
  194. package/dist/types/components/linkedin/pixelated.linkedin.d.ts +2 -0
  195. package/dist/types/components/linkedin/pixelated.linkedin.d.ts.map +1 -0
  196. package/dist/types/components/linkedin/pixelated.linkedin1.d.ts +2 -0
  197. package/dist/types/components/linkedin/pixelated.linkedin1.d.ts.map +1 -0
  198. package/dist/types/components/linkedin/pixelated.linkedin2.d.ts +2 -0
  199. package/dist/types/components/linkedin/pixelated.linkedin2.d.ts.map +1 -0
  200. package/dist/types/components/markdown/markdown.d.ts +12 -0
  201. package/dist/types/components/markdown/markdown.d.ts.map +1 -0
  202. package/dist/types/components/menu/menu-accordion.d.ts +44 -0
  203. package/dist/types/components/menu/menu-accordion.d.ts.map +1 -0
  204. package/dist/types/components/menu/menu-expando.d.ts +20 -0
  205. package/dist/types/components/menu/menu-expando.d.ts.map +1 -0
  206. package/dist/types/components/menu/menu-simple.d.ts +28 -0
  207. package/dist/types/components/menu/menu-simple.d.ts.map +1 -0
  208. package/dist/types/components/nerdjoke/nerdjoke.d.ts +23 -0
  209. package/dist/types/components/nerdjoke/nerdjoke.d.ts.map +1 -0
  210. package/dist/types/components/pagebuilder/components/ComponentPropertiesForm.d.ts +11 -0
  211. package/dist/types/components/pagebuilder/components/ComponentPropertiesForm.d.ts.map +1 -0
  212. package/dist/types/components/pagebuilder/components/ComponentSelector.d.ts +15 -0
  213. package/dist/types/components/pagebuilder/components/ComponentSelector.d.ts.map +1 -0
  214. package/dist/types/components/pagebuilder/components/ComponentTree.d.ts +17 -0
  215. package/dist/types/components/pagebuilder/components/ComponentTree.d.ts.map +1 -0
  216. package/dist/types/components/pagebuilder/components/PageBuilderUI.d.ts +10 -0
  217. package/dist/types/components/pagebuilder/components/PageBuilderUI.d.ts.map +1 -0
  218. package/dist/types/components/pagebuilder/components/PageEngine.d.ts +23 -0
  219. package/dist/types/components/pagebuilder/components/PageEngine.d.ts.map +1 -0
  220. package/dist/types/components/pagebuilder/components/SaveLoadSection.d.ts +12 -0
  221. package/dist/types/components/pagebuilder/components/SaveLoadSection.d.ts.map +1 -0
  222. package/dist/types/components/pagebuilder/form/form.d.ts +46 -0
  223. package/dist/types/components/pagebuilder/form/form.d.ts.map +1 -0
  224. package/dist/types/components/pagebuilder/form/form.submit.d.ts +3 -0
  225. package/dist/types/components/pagebuilder/form/form.submit.d.ts.map +1 -0
  226. package/dist/types/components/pagebuilder/form/formcomponents.d.ts +205 -0
  227. package/dist/types/components/pagebuilder/form/formcomponents.d.ts.map +1 -0
  228. package/dist/types/components/pagebuilder/form/formvalidations.d.ts +29 -0
  229. package/dist/types/components/pagebuilder/form/formvalidations.d.ts.map +1 -0
  230. package/dist/types/components/pagebuilder/lib/componentGeneration.d.ts +17 -0
  231. package/dist/types/components/pagebuilder/lib/componentGeneration.d.ts.map +1 -0
  232. package/dist/types/components/pagebuilder/lib/componentMap.d.ts +25 -0
  233. package/dist/types/components/pagebuilder/lib/componentMap.d.ts.map +1 -0
  234. package/dist/types/components/pagebuilder/lib/componentMetadata.d.ts +22 -0
  235. package/dist/types/components/pagebuilder/lib/componentMetadata.d.ts.map +1 -0
  236. package/dist/types/components/pagebuilder/lib/pageStorageContentful.d.ts +25 -0
  237. package/dist/types/components/pagebuilder/lib/pageStorageContentful.d.ts.map +1 -0
  238. package/dist/types/components/pagebuilder/lib/pageStorageLocal.d.ts +23 -0
  239. package/dist/types/components/pagebuilder/lib/pageStorageLocal.d.ts.map +1 -0
  240. package/dist/types/components/pagebuilder/lib/pageStorageTypes.d.ts +25 -0
  241. package/dist/types/components/pagebuilder/lib/pageStorageTypes.d.ts.map +1 -0
  242. package/dist/types/components/pagebuilder/lib/propTypeIntrospection.d.ts +24 -0
  243. package/dist/types/components/pagebuilder/lib/propTypeIntrospection.d.ts.map +1 -0
  244. package/dist/types/components/pagebuilder/lib/types.d.ts +34 -0
  245. package/dist/types/components/pagebuilder/lib/types.d.ts.map +1 -0
  246. package/dist/types/components/pagebuilder/lib/usePageBuilder.d.ts +24 -0
  247. package/dist/types/components/pagebuilder/lib/usePageBuilder.d.ts.map +1 -0
  248. package/dist/types/components/recipe/recipe.d.ts +66 -0
  249. package/dist/types/components/recipe/recipe.d.ts.map +1 -0
  250. package/dist/types/components/resume/resume.d.ts +85 -0
  251. package/dist/types/components/resume/resume.d.ts.map +1 -0
  252. package/dist/types/components/seo/404.d.ts +10 -0
  253. package/dist/types/components/seo/404.d.ts.map +1 -0
  254. package/dist/types/components/seo/googleanalytics.d.ts +23 -0
  255. package/dist/types/components/seo/googleanalytics.d.ts.map +1 -0
  256. package/dist/types/components/seo/googlemap.d.ts +15 -0
  257. package/dist/types/components/seo/googlemap.d.ts.map +1 -0
  258. package/dist/types/components/seo/googlesearch.d.ts +10 -0
  259. package/dist/types/components/seo/googlesearch.d.ts.map +1 -0
  260. package/dist/types/components/seo/metadata.d.ts +35 -0
  261. package/dist/types/components/seo/metadata.d.ts.map +1 -0
  262. package/dist/types/components/seo/sitemap.d.ts +47 -0
  263. package/dist/types/components/seo/sitemap.d.ts.map +1 -0
  264. package/dist/types/components/shoppingcart/ebay.components.d.ts +46 -0
  265. package/dist/types/components/shoppingcart/ebay.components.d.ts.map +1 -0
  266. package/dist/types/components/shoppingcart/ebay.functions.d.ts +76 -0
  267. package/dist/types/components/shoppingcart/ebay.functions.d.ts.map +1 -0
  268. package/dist/types/components/shoppingcart/paypal.d.ts +16 -0
  269. package/dist/types/components/shoppingcart/paypal.d.ts.map +1 -0
  270. package/dist/types/components/shoppingcart/shoppingcart.components.d.ts +35 -0
  271. package/dist/types/components/shoppingcart/shoppingcart.components.d.ts.map +1 -0
  272. package/dist/types/components/shoppingcart/shoppingcart.functions.d.ts +89 -0
  273. package/dist/types/components/shoppingcart/shoppingcart.functions.d.ts.map +1 -0
  274. package/dist/types/components/sidepanel/sidepanel.d.ts +18 -0
  275. package/dist/types/components/sidepanel/sidepanel.d.ts.map +1 -0
  276. package/dist/types/components/socialcard/socialcard.d.ts +20 -0
  277. package/dist/types/components/socialcard/socialcard.d.ts.map +1 -0
  278. package/dist/types/components/tiles/tiles.d.ts +28 -0
  279. package/dist/types/components/tiles/tiles.d.ts.map +1 -0
  280. package/dist/types/components/timeline/timeline.d.ts +31 -0
  281. package/dist/types/components/timeline/timeline.d.ts.map +1 -0
  282. package/dist/types/components/utilities/api.d.ts +16 -0
  283. package/dist/types/components/utilities/api.d.ts.map +1 -0
  284. package/dist/types/components/utilities/functions.d.ts +11 -0
  285. package/dist/types/components/utilities/functions.d.ts.map +1 -0
  286. package/dist/types/components/yelp/yelp.d.ts +5 -0
  287. package/dist/types/components/yelp/yelp.d.ts.map +1 -0
  288. package/dist/types/data/buzzwords.d.ts +2 -0
  289. package/dist/types/data/buzzwords.d.ts.map +1 -0
  290. package/dist/types/index.d.ts +76 -0
  291. package/dist/types/index.d.ts.map +1 -0
  292. package/dist/types/index.server.d.ts +30 -0
  293. package/dist/types/index.server.d.ts.map +1 -0
  294. package/dist/types/stories/buzzword-bingo.stories.d.ts +13 -0
  295. package/dist/types/stories/buzzword-bingo.stories.d.ts.map +1 -0
  296. package/dist/types/stories/callout.many.stories.d.ts +8 -0
  297. package/dist/types/stories/callout.many.stories.d.ts.map +1 -0
  298. package/dist/types/stories/callout.stories.d.ts +69 -0
  299. package/dist/types/stories/callout.stories.d.ts.map +1 -0
  300. package/dist/types/stories/carousel-hero.stories.d.ts +22 -0
  301. package/dist/types/stories/carousel-hero.stories.d.ts.map +1 -0
  302. package/dist/types/stories/carousel-reviews.stories.d.ts +38 -0
  303. package/dist/types/stories/carousel-reviews.stories.d.ts.map +1 -0
  304. package/dist/types/stories/carousel-workportfolio.stories.d.ts +22 -0
  305. package/dist/types/stories/carousel-workportfolio.stories.d.ts.map +1 -0
  306. package/dist/types/stories/carousel.stories.d.ts +41 -0
  307. package/dist/types/stories/carousel.stories.d.ts.map +1 -0
  308. package/dist/types/stories/cms.contentful.item.stories.d.ts +21 -0
  309. package/dist/types/stories/cms.contentful.item.stories.d.ts.map +1 -0
  310. package/dist/types/stories/cms.contentful.items.stories.d.ts +20 -0
  311. package/dist/types/stories/cms.contentful.items.stories.d.ts.map +1 -0
  312. package/dist/types/stories/cms.contentful.stories.d.ts +9 -0
  313. package/dist/types/stories/cms.contentful.stories.d.ts.map +1 -0
  314. package/dist/types/stories/cms.google.reviews.stories.d.ts +11 -0
  315. package/dist/types/stories/cms.google.reviews.stories.d.ts.map +1 -0
  316. package/dist/types/stories/cms.gravatar.stories.d.ts +88 -0
  317. package/dist/types/stories/cms.gravatar.stories.d.ts.map +1 -0
  318. package/dist/types/stories/cms.instagram.stories.d.ts +16 -0
  319. package/dist/types/stories/cms.instagram.stories.d.ts.map +1 -0
  320. package/dist/types/stories/cms.wordpress.stories.d.ts +26 -0
  321. package/dist/types/stories/cms.wordpress.stories.d.ts.map +1 -0
  322. package/dist/types/stories/general.headers.stories.d.ts +27 -0
  323. package/dist/types/stories/general.headers.stories.d.ts.map +1 -0
  324. package/dist/types/stories/general.loading.stories.d.ts +11 -0
  325. package/dist/types/stories/general.loading.stories.d.ts.map +1 -0
  326. package/dist/types/stories/general.microinteractions.stories.d.ts +9 -0
  327. package/dist/types/stories/general.microinteractions.stories.d.ts.map +1 -0
  328. package/dist/types/stories/general.modal.stories.d.ts +9 -0
  329. package/dist/types/stories/general.modal.stories.d.ts.map +1 -0
  330. package/dist/types/stories/general.table.stories.d.ts +15 -0
  331. package/dist/types/stories/general.table.stories.d.ts.map +1 -0
  332. package/dist/types/stories/layout.stories.d.ts +299 -0
  333. package/dist/types/stories/layout.stories.d.ts.map +1 -0
  334. package/dist/types/stories/markdown.stories.d.ts +13 -0
  335. package/dist/types/stories/markdown.stories.d.ts.map +1 -0
  336. package/dist/types/stories/menu-accordion.stories.d.ts +34 -0
  337. package/dist/types/stories/menu-accordion.stories.d.ts.map +1 -0
  338. package/dist/types/stories/menu-simple.stories.d.ts +43 -0
  339. package/dist/types/stories/menu-simple.stories.d.ts.map +1 -0
  340. package/dist/types/stories/nerdjoke.stories.d.ts +10 -0
  341. package/dist/types/stories/nerdjoke.stories.d.ts.map +1 -0
  342. package/dist/types/stories/pagebuilder.form-builder.stories.d.ts +10 -0
  343. package/dist/types/stories/pagebuilder.form-builder.stories.d.ts.map +1 -0
  344. package/dist/types/stories/pagebuilder.form-engine.stories.d.ts +16 -0
  345. package/dist/types/stories/pagebuilder.form-engine.stories.d.ts.map +1 -0
  346. package/dist/types/stories/pagebuilder.form-extractor.stories.d.ts +10 -0
  347. package/dist/types/stories/pagebuilder.form-extractor.stories.d.ts.map +1 -0
  348. package/dist/types/stories/pagebuilder.stories.d.ts +29 -0
  349. package/dist/types/stories/pagebuilder.stories.d.ts.map +1 -0
  350. package/dist/types/stories/pagebuilder.usageguide.stories.d.ts +29 -0
  351. package/dist/types/stories/pagebuilder.usageguide.stories.d.ts.map +1 -0
  352. package/dist/types/stories/pageengine.stories.d.ts +32 -0
  353. package/dist/types/stories/pageengine.stories.d.ts.map +1 -0
  354. package/dist/types/stories/recipe.stories.d.ts +16 -0
  355. package/dist/types/stories/recipe.stories.d.ts.map +1 -0
  356. package/dist/types/stories/resume.stories.d.ts +283 -0
  357. package/dist/types/stories/resume.stories.d.ts.map +1 -0
  358. package/dist/types/stories/seo.404.stories.d.ts +18 -0
  359. package/dist/types/stories/seo.404.stories.d.ts.map +1 -0
  360. package/dist/types/stories/seo.googleanalytics.stories.d.ts +12 -0
  361. package/dist/types/stories/seo.googleanalytics.stories.d.ts.map +1 -0
  362. package/dist/types/stories/seo.googlesearch.stories.d.ts +12 -0
  363. package/dist/types/stories/seo.googlesearch.stories.d.ts.map +1 -0
  364. package/dist/types/stories/seo.metadata.stories.d.ts +25 -0
  365. package/dist/types/stories/seo.metadata.stories.d.ts.map +1 -0
  366. package/dist/types/stories/seo.sitemap.stories.d.ts +8 -0
  367. package/dist/types/stories/seo.sitemap.stories.d.ts.map +1 -0
  368. package/dist/types/stories/shoppingcart.ebay.item.stories.d.ts +21 -0
  369. package/dist/types/stories/shoppingcart.ebay.item.stories.d.ts.map +1 -0
  370. package/dist/types/stories/shoppingcart.ebay.items.stories.d.ts +21 -0
  371. package/dist/types/stories/shoppingcart.ebay.items.stories.d.ts.map +1 -0
  372. package/dist/types/stories/shoppingcart.stories.d.ts +9 -0
  373. package/dist/types/stories/shoppingcart.stories.d.ts.map +1 -0
  374. package/dist/types/stories/sidepanel.stories.d.ts +85 -0
  375. package/dist/types/stories/sidepanel.stories.d.ts.map +1 -0
  376. package/dist/types/stories/socialcard.stories.d.ts +81 -0
  377. package/dist/types/stories/socialcard.stories.d.ts.map +1 -0
  378. package/dist/types/stories/tiles.stories.d.ts +9 -0
  379. package/dist/types/stories/tiles.stories.d.ts.map +1 -0
  380. package/dist/types/stories/timeline.stories.d.ts +19 -0
  381. package/dist/types/stories/timeline.stories.d.ts.map +1 -0
  382. package/dist/types/tests/pixelated.api.test.d.ts +2 -0
  383. package/dist/types/tests/pixelated.api.test.d.ts.map +1 -0
  384. package/dist/types/tests/pixelated.callout.test.d.ts +2 -0
  385. package/dist/types/tests/pixelated.callout.test.d.ts.map +1 -0
  386. package/dist/types/tests/pixelated.carousel.test.d.ts +2 -0
  387. package/dist/types/tests/pixelated.carousel.test.d.ts.map +1 -0
  388. package/dist/types/tests/pixelated.menu-accordion.test.d.ts +2 -0
  389. package/dist/types/tests/pixelated.menu-accordion.test.d.ts.map +1 -0
  390. package/dist/types/tests/pixelated.menu-simple.test.d.ts +2 -0
  391. package/dist/types/tests/pixelated.menu-simple.test.d.ts.map +1 -0
  392. package/dist/types/tests/pixelated.nerdjoke.test.d.ts +2 -0
  393. package/dist/types/tests/pixelated.nerdjoke.test.d.ts.map +1 -0
  394. package/dist/types/tests/pixelated.recipe.test.d.ts +2 -0
  395. package/dist/types/tests/pixelated.recipe.test.d.ts.map +1 -0
  396. package/dist/types/tests/pixelated.resume.test.d.ts +2 -0
  397. package/dist/types/tests/pixelated.resume.test.d.ts.map +1 -0
  398. package/dist/types/tests/pixelated.socialcard.test.d.ts +2 -0
  399. package/dist/types/tests/pixelated.socialcard.test.d.ts.map +1 -0
  400. package/package.json +136 -0
@@ -0,0 +1,180 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React, { useState, useEffect } from 'react';
3
+ /*
4
+ TODO #6 Finish LinkedIn Integration to show recommendations
5
+ */
6
+ /*
7
+ https://www.linkedin.com/company/pixelatedtech
8
+ https://www.linkedin.com/company/106825397/admin/dashboard/
9
+
10
+ https://developer.linkedin.com/
11
+ https://www.linkedin.com/developers/apps/222241632/products?refreshKey=1743873578146
12
+ https://learn.microsoft.com/en-us/linkedin/shared/integrations/people/reputation-guides/recommendation
13
+ https://learn.microsoft.com/en-us/answers/questions/1021872/how-do-i-get-access-to-this-linkedin-api-connectio
14
+
15
+ https://github.com/jsushank17/LinkedIN-Rest-API-with-React-JS-and-Express/blob/master/CustomLinkedIN.jsx
16
+ https://reintech.io/blog/integrating-linkedin-testimonials-on-your-website
17
+
18
+ */
19
+ export function LinkedIn() {
20
+ const debug = true;
21
+ const [accessToken, setAccessToken] = useState();
22
+ const [recommendations, setRecommendations] = useState();
23
+ const proxyURL = 'https://proxy.pixelated.tech/prod/proxy?url=';
24
+ let codeParam, stateParam, myHref;
25
+ if (typeof window !== 'undefined') {
26
+ const urlParams = new URLSearchParams(window.location.search);
27
+ codeParam = urlParams.get('code');
28
+ stateParam = urlParams.get('state');
29
+ myHref = window.location.origin;
30
+ }
31
+ const LinkedInApi = {
32
+ clientID: '78sh51y6nl3xe8',
33
+ clientSecret: 'WPL_AP1.dug4iQXjl3VjEGG0.tok/0A==',
34
+ appID: '222241632',
35
+ redirectUrl: `${myHref}/linkedin`,
36
+ state: '96573480', // epoch time for Monday, January 22, 1973 12:58:00 PM GMT-05:00
37
+ oAuthUrl: 'https://www.linkedin.com/oauth/v2/authorization',
38
+ oAuthResponseType: 'code',
39
+ oAuthScope: 'w_member_social',
40
+ tokenUrl: 'https://www.linkedin.com/oauth/v2/accessToken',
41
+ // recommendUrl : 'https://api.linkedin.com/v2/recommendations/urn:li:recommendation:(urn:li:person:brianwhaley)',
42
+ recommendUrl: 'https://api.linkedin.com/v2/recommendation',
43
+ meUrl: 'https://api.linkedin.com/v2/me',
44
+ };
45
+ async function fetchOAuth() {
46
+ if (debug)
47
+ console.log("Fetching LinkedIn oAuth Token");
48
+ const oAuthParams = new URLSearchParams({
49
+ response_type: LinkedInApi.oAuthResponseType,
50
+ client_id: LinkedInApi.clientID,
51
+ state: LinkedInApi.state,
52
+ scope: encodeURIComponent(LinkedInApi.oAuthScope),
53
+ redirect_uri: LinkedInApi.redirectUrl
54
+ });
55
+ const fullOAuthURL = /* proxyURL + */ LinkedInApi.oAuthUrl + "?" + oAuthParams.toString();
56
+ try {
57
+ if (debug)
58
+ console.log("OAuth URL : ", fullOAuthURL);
59
+ window.location.href = fullOAuthURL;
60
+ }
61
+ catch (err) {
62
+ console.log("Error Fetching OAuth Token : ", err);
63
+ }
64
+ }
65
+ async function fetchAccessToken() {
66
+ if (accessToken)
67
+ return;
68
+ if (debug)
69
+ console.log("Fetching LinkedIn Access Token");
70
+ const fullTokenURL = proxyURL + LinkedInApi.tokenUrl;
71
+ try {
72
+ if (debug)
73
+ console.log("oAuth Code : ", codeParam);
74
+ if (debug)
75
+ console.log("Access Token URL : ", fullTokenURL);
76
+ const tokenRequestBody = new URLSearchParams({
77
+ 'grant_type': 'authorization_code',
78
+ 'code': codeParam,
79
+ 'redirect_uri': LinkedInApi.redirectUrl,
80
+ 'client_id': LinkedInApi.clientID,
81
+ 'client_secret': LinkedInApi.clientSecret
82
+ });
83
+ if (debug)
84
+ console.log("FETCHBODY : ", tokenRequestBody.toString());
85
+ if (debug)
86
+ console.log("FETCHBODY LENGTH : ", tokenRequestBody.toString().length);
87
+ const tokenResponse = await fetch(fullTokenURL, {
88
+ method: "POST",
89
+ headers: {
90
+ "Content-Type": "application/x-www-form-urlencoded",
91
+ // "Content-Length" : tokenRequestBody.toString().length ,
92
+ },
93
+ body: tokenRequestBody
94
+ });
95
+ if (tokenResponse.ok) {
96
+ const tokenData = await tokenResponse.json();
97
+ console.log(await tokenData);
98
+ setAccessToken(tokenData.access_token);
99
+ if (debug)
100
+ console.log("Access Token : ", await tokenData);
101
+ }
102
+ else {
103
+ console.error(`HTTP Error : Status: ${tokenResponse.status}`);
104
+ // Optionally, throw an error to be caught later
105
+ throw new Error(`HTTP Error : Status: ${tokenResponse.status}`);
106
+ }
107
+ }
108
+ catch (err) {
109
+ console.log("Error Fetching Access Token : ", err);
110
+ }
111
+ return;
112
+ }
113
+ async function fetchRecommendations() {
114
+ if (!accessToken || recommendations)
115
+ return;
116
+ if (debug)
117
+ console.log("Fetching LinkedIn Recommendations");
118
+ const recommendParams = new URLSearchParams({
119
+ // "q": "received-recommendations",
120
+ // oauth2_access_token: accessToken,
121
+ "q": "recipient",
122
+ "statusFilters": "List(VISIBLE)",
123
+ });
124
+ const fullRecommendsURL = proxyURL + LinkedInApi.recommendUrl + "?" + recommendParams.toString();
125
+ try {
126
+ console.log("RECOMMEND URL : ", fullRecommendsURL);
127
+ console.log("ACCESS TOKEN : ", accessToken);
128
+ const recommendResponse = await fetch(fullRecommendsURL, {
129
+ method: 'GET',
130
+ headers: {
131
+ Authorization: `Bearer ${accessToken}`,
132
+ 'X-Restli-Protocol-Version': '2.0.0',
133
+ },
134
+ /* body: new URLSearchParams({
135
+ "recommendee": "urn:li:person:ro87f5eyg_",
136
+ "status": "VISIBLE",
137
+ }) */
138
+ });
139
+ console.log("RECOMMEND RESPONSE : ", recommendResponse);
140
+ const recommendData = await recommendResponse.json();
141
+ if (recommendData.elements)
142
+ setRecommendations(recommendData.elements);
143
+ if (debug)
144
+ console.log("Recommendations : ", await recommendData);
145
+ }
146
+ catch (err) {
147
+ console.log("Error Fetching LinkedIn Recommendations : ", err);
148
+ }
149
+ }
150
+ useEffect(() => {
151
+ if (codeParam && stateParam) {
152
+ if (debug)
153
+ console.log("oAuth Code Is Present");
154
+ if (accessToken) {
155
+ if (debug)
156
+ console.log("Access Token Is Present");
157
+ if (!recommendations) {
158
+ if (debug)
159
+ console.log("No Recommendations Are Present");
160
+ fetchRecommendations();
161
+ }
162
+ else {
163
+ if (debug)
164
+ console.log("Recommendations Already Retrieved");
165
+ }
166
+ }
167
+ else if (!accessToken) {
168
+ if (debug)
169
+ console.log("No Access Token Is Present");
170
+ fetchAccessToken();
171
+ }
172
+ }
173
+ else {
174
+ if (debug)
175
+ console.log("No oAuth Code Present");
176
+ fetchOAuth();
177
+ }
178
+ }, [accessToken]);
179
+ return (_jsx("div", { children: _jsx("div", { children: recommendations ? _jsx("div", { children: JSON.stringify(recommendations) }) : _jsx("p", { children: "Loading..." }) }) }));
180
+ }
@@ -0,0 +1,102 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React, { useState, useEffect } from 'react';
3
+ export function LinkedIn() {
4
+ const [data, setData] = useState(null);
5
+ const proxyURL = 'https://proxy.pixelated.tech/prod/proxy?url=';
6
+ const urlParams = new URLSearchParams(window.location.search);
7
+ const codeParam = urlParams.get('code');
8
+ const LinkedInApi = {
9
+ clientID: '78sh51y6nl3xe8',
10
+ clientSecret: 'WPL_AP1.dug4iQXjl3VjEGG0.tok/0A==',
11
+ appID: '222241632',
12
+ // redirectUrl: 'https://www.pixelated.tech/linkedin',
13
+ redirectUrl: 'http://localhost:6006',
14
+ tokenUrl: 'https://www.linkedin.com/oauth/v2/accessToken',
15
+ oAuthUrl: 'https://www.linkedin.com/oauth/v2/authorization',
16
+ oAuthResponseType: 'code',
17
+ oAuthScope: 'r_basicprofile', // 'r_liteprofile r_emailaddress w_member_social',
18
+ recommendUrl: 'https://api.linkedin.com/v2/recommendations/urn:li:recommendation:(urn:li:person:brianwhaley)',
19
+ meUrl: 'https://api.linkedin.com/v2/me',
20
+ state: '96573480' // epoch time for Monday, January 22, 1973 12:58:00 PM GMT-05:00
21
+ };
22
+ const oAuthParams = new URLSearchParams({
23
+ response_type: LinkedInApi.oAuthResponseType,
24
+ client_id: LinkedInApi.clientID,
25
+ state: LinkedInApi.state,
26
+ scope: LinkedInApi.oAuthScope,
27
+ redirect_uri: LinkedInApi.redirectUrl
28
+ });
29
+ const fullOAuthURL = proxyURL + LinkedInApi.oAuthUrl + "?" + oAuthParams.toString();
30
+ const recommendParams = new URLSearchParams({
31
+ q: 'received',
32
+ oauth2_access_token: codeParam
33
+ });
34
+ const fullRecommendsURL = proxyURL + LinkedInApi.recommendUrl + "?" + recommendParams.toString();
35
+ async function fetchOAuth() {
36
+ console.log("Fetching LinkedIn oAuth Token");
37
+ try {
38
+ console.log("OAuth URL : ", fullOAuthURL);
39
+ // const oAuthPromise = await fetch(fullOAuthURL, { method: 'GET' });
40
+ // const oAuthPromise = await fetch(LinkedInApi.oAuthUrl + "?" + oAuthParams.toString(), { method: 'GET' });
41
+ window.location.href = fullOAuthURL;
42
+ // console.log(await oAuthPromise);
43
+ // const response = await oAuthPromise.response;
44
+ // console.log(await response);
45
+ }
46
+ catch (err) {
47
+ console.log("Error : ", err);
48
+ }
49
+ }
50
+ async function fetchAccessToken() {
51
+ console.log("Fetching LinkedIn Access Token");
52
+ try {
53
+ const fullTokenURL = proxyURL + LinkedInApi.tokenUrl;
54
+ console.log("Access Token URL : ", fullTokenURL);
55
+ const tokenPromise = await fetch(fullTokenURL, {
56
+ method: 'POST',
57
+ headers: {
58
+ 'Content-Type': 'application/x-www-form-urlencoded',
59
+ 'grant_type': 'authorization_code',
60
+ // 'grant_type' : 'client_credentials',
61
+ 'code': codeParam,
62
+ 'redirect_uri': LinkedInApi.redirectUrl,
63
+ 'client_id': LinkedInApi.clientID,
64
+ 'client_secret': LinkedInApi.clientSecret
65
+ }
66
+ });
67
+ console.log(tokenPromise);
68
+ const response = await tokenPromise.response;
69
+ console.log(await response);
70
+ console.log("Access Token : ", await response.data);
71
+ }
72
+ catch (err) {
73
+ console.log("Error : ", err);
74
+ }
75
+ }
76
+ async function fetchRecommendations() {
77
+ console.log("Fetching LinkedIn Recommendations");
78
+ try {
79
+ console.log(fullRecommendsURL);
80
+ const recommendPromise = await fetch(fullRecommendsURL, { method: 'GET' });
81
+ console.log(await recommendPromise);
82
+ const response = await recommendPromise.response;
83
+ console.log(await response);
84
+ console.log(await response.body);
85
+ setData(await response.body);
86
+ }
87
+ catch (err) {
88
+ console.log("Error : ", err);
89
+ }
90
+ }
91
+ useEffect(() => {
92
+ if (codeParam) {
93
+ console.log("Access Token Is Present");
94
+ fetchAccessToken()
95
+ .then(fetchRecommendations());
96
+ }
97
+ else {
98
+ fetchOAuth();
99
+ }
100
+ }, []);
101
+ return (_jsxs("div", { children: [_jsx("div", { children: _jsx("a", { href: fullOAuthURL, children: "Click it!" }) }), _jsx("div", { children: data ? _jsx("div", { children: JSON.stringify(data) }) : _jsx("p", { children: "Loading..." }) })] }));
102
+ }
@@ -0,0 +1,92 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import React, { useEffect, useState } from 'react';
3
+ // CONFIG: Replace with your values
4
+ const CLIENT_ID = '78sh51y6nl3xe8';
5
+ const CLIENT_SECRET = 'WPL_AP1.dug4iQXjl3VjEGG0.tok/0A==';
6
+ const REDIRECT_URI = 'http://localhost:6006/?path=/story/linkedin--linked-in-recommendations';
7
+ const STATE = '96573480'; // Any random string
8
+ const SCOPES = 'r_liteprofile';
9
+ const proxyUrl = 'https://proxy.pixelated.tech/prod/proxy?url=';
10
+ export function LinkedInAuthRecommendations() {
11
+ const debug = true;
12
+ const [accessToken, setAccessToken] = useState(null);
13
+ const [recommendations, setRecommendations] = useState([]);
14
+ const [error, setError] = useState(null);
15
+ // Step 1: Redirect user to LinkedIn login
16
+ const initiateLogin = () => {
17
+ if (debug)
18
+ console.log("Initiating Login");
19
+ // const url = encodeURI(`https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=${CLIENT_ID}&redirect_uri=${encodeURIComponent(REDIRECT_URI)}&state=${STATE}&scope=${encodeURIComponent(SCOPES)}`);
20
+ const authUrl = `${proxyUrl}https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=${CLIENT_ID}&redirect_uri=${encodeURIComponent(REDIRECT_URI)}&state=${STATE}&scope=${encodeURIComponent(SCOPES)}`;
21
+ window.location.href = authUrl;
22
+ };
23
+ // Step 2: Handle LinkedIn redirect and get access token
24
+ useEffect(() => {
25
+ if (debug)
26
+ console.log("Handling redirect and getting access token");
27
+ const urlParams = new URLSearchParams(window.location.search);
28
+ const code = urlParams.get('code');
29
+ const state = urlParams.get('state');
30
+ if (code && state === STATE) {
31
+ // Step 3: Exchange code for access token
32
+ if (debug)
33
+ console.log("Exchanging code for access token : ", code);
34
+ const fetchAccessToken = async () => {
35
+ try {
36
+ const response = await fetch(`${proxyUrl}https://www.linkedin.com/oauth/v2/accessToken`, {
37
+ method: 'POST',
38
+ headers: {
39
+ 'Content-Type': 'application/x-www-form-urlencoded',
40
+ },
41
+ body: new URLSearchParams({
42
+ grant_type: 'authorization_code',
43
+ code,
44
+ redirect_uri: REDIRECT_URI,
45
+ client_id: CLIENT_ID,
46
+ client_secret: CLIENT_SECRET, // Only safe on server
47
+ }),
48
+ });
49
+ const data = await response.json();
50
+ setAccessToken(data.access_token);
51
+ }
52
+ catch (err) {
53
+ console.log(err);
54
+ setError('Failed to get access token');
55
+ }
56
+ };
57
+ fetchAccessToken();
58
+ }
59
+ }, []);
60
+ // Step 4: Call LinkedIn API to get recommendations (hypothetical)
61
+ useEffect(() => {
62
+ const fetchRecommendations = async () => {
63
+ if (!accessToken)
64
+ return;
65
+ if (debug)
66
+ console.log("Calling LinkedIn API");
67
+ try {
68
+ const response = await fetch(`${proxyUrl}https://api.linkedin.com/v2/recommendations`, {
69
+ headers: {
70
+ Authorization: `Bearer ${accessToken}`,
71
+ 'X-Restli-Protocol-Version': '2.0.0',
72
+ },
73
+ });
74
+ const data = await response.json();
75
+ setRecommendations(data.elements || []);
76
+ }
77
+ catch (err) {
78
+ console.log(err);
79
+ setError('Failed to fetch recommendations');
80
+ }
81
+ };
82
+ fetchRecommendations();
83
+ }, [accessToken]);
84
+ // UI
85
+ if (error)
86
+ return _jsxs("p", { className: "text-red-500", children: ["Error: ", error] });
87
+ if (!accessToken) {
88
+ return (_jsx("div", { className: "p-4", children: _jsx("button", { onClick: initiateLogin, className: "px-4 py-2 bg-blue-600 text-white rounded", children: "Login with LinkedIn" }) }));
89
+ }
90
+ return (_jsxs("div", { className: "p-4", children: [_jsx("h2", { className: "text-xl font-bold mb-2", children: "LinkedIn Recommendations" }), recommendations.length === 0 ? (_jsx("p", { children: "No recommendations found." })) : (_jsx("ul", { className: "space-y-4", children: recommendations.map((rec, index) => (_jsxs("li", { className: "p-4 border rounded shadow", children: [_jsx("p", { className: "font-semibold", children: rec.recommender?.name || 'Unknown' }), _jsx("p", { children: rec.text })] }, index))) }))] }));
91
+ }
92
+ ;
@@ -0,0 +1,12 @@
1
+ /* ========================================
2
+ =============== MARKDOWN ===============
3
+ ======================================== */
4
+
5
+ .markdown,
6
+ .markdown * {
7
+ margin: 20px 0;
8
+ }
9
+
10
+ .markdown li {
11
+ margin: 0;
12
+ }
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import PropTypes from "prop-types";
3
+ import { SmartImage } from "../cms/cloudinary.image";
4
+ import { usePixelatedConfig } from "../config/config.client";
5
+ import "./markdown.css";
6
+ /* ========== MARKDOWN ========== */
7
+ Markdown.propTypes = {
8
+ markdowndata: PropTypes.string.isRequired,
9
+ };
10
+ export function Markdown(props) {
11
+ function markdownParser(text) {
12
+ const config = usePixelatedConfig();
13
+ const toHTML = text
14
+ .replace(/^#{6}\s(.*$)/gim, '<h6>$1</h6>') // h6 tag
15
+ .replace(/^#{5}\s(.*$)/gim, '<h5>$1</h5>') // h5 tag
16
+ .replace(/^#{4}\s(.*$)/gim, '<h4>$1</h4>') // h4 tag
17
+ .replace(/^#{3}\s(.*$)/gim, '<h3>$1</h3>') // h3 tag
18
+ .replace(/^#{2}\s(.*$)/gim, '<h2>$1</h2>') // h2 tag
19
+ .replace(/^#{1}\s(.*$)/gim, '<h1>$1</h1>') // h1 tag
20
+ .replace(/(=|-|\*){3}/gim, '<hr />') // horizontal rule
21
+ // .replace(/!\[(.*?)\]\((.*?)\)/gim, "<img alt='$1' title='$1' src='$2' />") // images
22
+ .replace(/!\[(.*?)\]\((.*?)\)/gim, _jsx(SmartImage, { alt: '$1', title: '$1', src: '$2', cloudinaryEnv: config?.cloudinary?.product_env, cloudinaryDomain: config?.cloudinary?.baseUrl, cloudinaryTransforms: config?.cloudinary?.transforms })) // images
23
+ .replace(/\[([^[]+)\]\((.*)\)/gim, '<a href="$2">$1</a>') // links
24
+ .replace(/^\*{1}\s+(.*$)/gim, '<ul><li>$1</li></ul>') // unordered list
25
+ .replace(/<\/ul>\s?<ul>/g, '') // duplicate unordered list
26
+ .replace(/^\d+\.\s+(.*$)/gim, '<ol><li>$1</li></ol>') // ordered list
27
+ .replace(/<\/ol>\s?<ol>/g, '') // duplicate ordered list
28
+ .replace(/:"(.*?)":/gim, '<q>$1</q>') // quote
29
+ .replace(/^> (.*$)/gim, '<blockquote>$1</blockquote>') // blockquote
30
+ .replace(/`(.*?)`/gim, '<code>$1</code>') // inline code
31
+ .replace(/\*{2}(.*?)\*{2}/gim, '<b>$1</b>') // bold text
32
+ .replace(/\*{1}(.*?)\*{1}/gim, '<i>$1</i>') // italic text
33
+ .replace(/~{2}(.*?)~{2}/gim, '<b>$1</b>') // strikethrough
34
+ .replace(/(^[A-z].+)/gim, '<p>$1</p>') // paragraphs
35
+ ;
36
+ return toHTML.trim(); // using trim method to remove whitespace
37
+ }
38
+ return (_jsx("div", { className: "section-container", children: _jsx("div", { className: "markdown", dangerouslySetInnerHTML: { __html: markdownParser(props.markdowndata) } }) }));
39
+ }
@@ -0,0 +1,198 @@
1
+
2
+ /* ========================================
3
+ ===== SLIDING PANEL MENU =====
4
+ ======================================== */
5
+
6
+ .panelMenuButton {
7
+ /* background-color: rgba(255,255,255,0.7); */
8
+ /* display: none; */
9
+ /* display: inline; */
10
+ margin: 0px 10px 0px 0px;
11
+ padding: 5px;
12
+ text-align: center;
13
+ width: 35px;
14
+
15
+ /* .rounded; */
16
+ -moz-border-radius: 5px;
17
+ -webkit-border-radius: 5px;
18
+ border-radius: 5px;
19
+ }
20
+
21
+ @media screen and (max-width: 480px) {
22
+ .panelMenuButton {
23
+ display: inline;
24
+ }
25
+ }
26
+
27
+ .panelMenuHeader {
28
+ background-color: #336699;
29
+ /* background-image: url(/images/pix/pix-bg.gif); */
30
+ color: #FFFFFF;
31
+ padding: 15px;
32
+ /* .rounded; */
33
+ -moz-border-radius: 5px;
34
+ -webkit-border-radius: 5px;
35
+ border-radius: 5px;
36
+ }
37
+
38
+
39
+ /* ========================================
40
+ ============ ACCORDION MENU ============
41
+ ======================================== */
42
+
43
+ .accordionMenuWrapper {
44
+ /* background: #FFF; */
45
+ background: rgba(150, 190, 250, 0.7);
46
+ border-right: 1px solid #ccc;
47
+ height: auto;
48
+ /* height: 100%; */
49
+ position: fixed;
50
+ left: 0px;
51
+ top: 60px;
52
+ width: 220px;
53
+ z-index: 1000;
54
+ padding: 5px;
55
+ }
56
+
57
+ .accordionIn {
58
+ left: 0px;
59
+ transition: transform 0.5s ease-out 0.0s;
60
+ transform: translateX(0px);
61
+ }
62
+
63
+ .accordionOut {
64
+ left: 0px;
65
+ transition: transform 0.5s ease-out 0.0s;
66
+ transform: translateX(-250px);
67
+ }
68
+
69
+ .accordionDown {
70
+ top: 60px;
71
+ transition: transform 0.5s ease-out 0.0s;
72
+ transform: translateY(0px);
73
+ }
74
+
75
+ .accordionUp {
76
+ /* bottom: 0px; */
77
+ top: 60px;
78
+ transition: transform 0.55s ease-out 0.0s;
79
+ transform: translateY(-150%);
80
+ }
81
+
82
+ .accordionMenu,
83
+ .accordionMenu ul {
84
+ /* ALL LIST LEVELS */
85
+ display: inline-block;
86
+ list-style-type: none;
87
+ padding: 0;
88
+ width: 200px;
89
+ }
90
+
91
+ .accordionMenu li {
92
+ /* ALL LIST ITEM LEVELS */
93
+ border-bottom: 1px solid #FFF;
94
+ }
95
+
96
+ .accordionMenu li:first-child {
97
+ /* ALL LIST ITEM LEVELS */
98
+ border-top: 1px solid #FFF;
99
+ }
100
+
101
+ .accordionMenu a {
102
+ color: #000;
103
+ display: block;
104
+ text-decoration: none;
105
+ }
106
+
107
+ /* ===== LEVEL 1 ===== */
108
+
109
+ .accordionMenu > ul {
110
+ margin: 0px 0px 0px 5px;
111
+ padding: 0;
112
+ width: 200px;
113
+ }
114
+
115
+ .accordionMenu > ul > li > a {
116
+ /* this is the button */
117
+ color: black;
118
+ background: #CCC;
119
+ /* background-image: url(/images/pix/pix-bg-lite.jpg); */
120
+ font-weight: bold;
121
+ height: 30px;
122
+ line-height:30px;
123
+ padding-left: 10px;
124
+ }
125
+
126
+ .accordionMenu > ul > li > a:hover {
127
+ background: #EDD;
128
+ /* background-image: url(/images/pix/pix-bg-sm-bw.gif); */
129
+ }
130
+
131
+
132
+ .panelMenuButton .hamburger{
133
+ /* the tricks */
134
+ display: block;
135
+ -webkit-transform: scaleX(1.75);
136
+ -moz-transform: scaleX(1.75);
137
+ -o-transform: caleX(1.75);
138
+ transform: scaleX(1.75);
139
+ writing-mode: vertical-lr;
140
+ transform: scaleX(1.75);
141
+ /* optional */
142
+ font-size: 8pt;
143
+ cursor: pointer;
144
+ font-weight: 900;
145
+ color: #CCC;
146
+ }
147
+ /* hamburger hover style */
148
+ /* .accordionMenu .hamburger:hover {
149
+ color: #FFC75F;
150
+ } */
151
+
152
+ /* ===== LEVEL 2 ===== */
153
+
154
+ .accordionMenu > ul > ul {
155
+ margin: 0px 0px 0px 20px;
156
+ padding: 0;
157
+ width: 180px;
158
+ }
159
+
160
+ .menuHide {
161
+ animation: hide 0.25s linear;
162
+ animation-fill-mode: forwards;
163
+ }
164
+ .menuShow {
165
+ animation: show 0.25s linear;
166
+ animation-fill-mode: forwards;
167
+ }
168
+ @keyframes hide {
169
+ 0% { opacity: 1; display: inline-block; }
170
+ 99% { display: inline-block; }
171
+ 100% { opacity: 0; display: none;}
172
+ }
173
+ @keyframes show {
174
+ 0% { opacity: 0; display: none; }
175
+ 1% { display: inline-block; }
176
+ 100% { opacity: 1; display: inline-block;}
177
+ }
178
+
179
+
180
+ .accordionMenu ul > ul > li:first-child {
181
+ /* ALL LIST ITEM LEVELS */
182
+ border-top: 0px;
183
+ }
184
+
185
+ .accordionMenu > ul > ul > li > a {
186
+ /* this is the button */
187
+ color: black;
188
+ background: #CCC;
189
+ /* background-image: url(/images/pix/pix-bg-lite.jpg); */
190
+ font-weight: bold;
191
+ height: 30px;
192
+ line-height:30px;
193
+ }
194
+
195
+ .accordionMenu > ul > ul > li > a:hover {
196
+ background: #EDD;
197
+ /* background-image: url(/images/pix/pix-bg-sm-bw.gif); */
198
+ }