luna-one 3.1.593 → 3.1.595

Sign up to get free protection for your applications and to get access to all the features.
Files changed (411) hide show
  1. package/dist/index.js +15 -294
  2. package/dist/luna/components/2x2/2x2.stories.js +456 -0
  3. package/dist/luna/components/2x2/2x2Documentation.mdx +77 -0
  4. package/dist/luna/components/Accordion/Accordion.stories.js +100 -0
  5. package/dist/luna/components/Accordion/AccordionDocumentation.mdx +46 -0
  6. package/dist/luna/components/AdminCategoryData/AdminCategoryData.stories.js +43 -0
  7. package/dist/luna/components/AdminCategoryData/CategoryTranslationData.js +4 -4
  8. package/dist/luna/components/AdminProductData/AdminProductData.js +4 -4
  9. package/dist/luna/components/AdminProductData/AdminProductData.stories.js +44 -0
  10. package/dist/luna/components/BlockListItems/BlockListItem.stories.js +2381 -0
  11. package/dist/luna/components/BlockListItems/BlockListItemsDocumentation.mdx +339 -0
  12. package/dist/luna/components/BrowserSupportBanner/BrowserSupportBrowser.stories.js +19 -0
  13. package/dist/luna/components/CTAButtons/CTAButtons.stories.js +142 -0
  14. package/dist/luna/components/CTAButtons/CTAButtonsDocumentation.mdx +33 -0
  15. package/dist/luna/components/Carousel/Carousel.stories.js +257 -0
  16. package/dist/luna/components/Carousel/CarouselDocumentation.mdx +161 -0
  17. package/dist/luna/components/ComparisonTable/ComparisonTable.stories.js +608 -0
  18. package/dist/luna/components/ComparisonTable/ComparisonTableDocumentation.mdx +159 -0
  19. package/dist/luna/components/CtaWithHeader/CTAHeaderText.stories.js +192 -0
  20. package/dist/luna/components/CtaWithHeader/CTAHeaderTextDocumentation.mdx +45 -0
  21. package/dist/luna/components/DataPoint/DataPoint.stories.js +235 -0
  22. package/dist/luna/components/DataPoint/DataPointDocumentation.mdx +40 -0
  23. package/dist/luna/components/EventCard/EventCard.js +3 -3
  24. package/dist/luna/components/EventCard/EventCard.stories.js +56 -0
  25. package/dist/luna/components/EventCard/EventCardDocumentation.mdx +46 -0
  26. package/dist/luna/components/FilterHero/FilterHero.stories.js +129 -0
  27. package/dist/luna/components/FilterSection/FilterSection.stories.js +174 -0
  28. package/dist/luna/{other-organisms → components}/Flyout/Flyout.js +4 -5
  29. package/dist/luna/components/Flyout/Flyout.stories.js +216 -0
  30. package/dist/luna/components/Flyout/FlyoutDocumentation.mdx +60 -0
  31. package/dist/luna/components/Footer/Footer.stories.js +418 -0
  32. package/dist/luna/components/Footer/FooterDocumentation.mdx +133 -0
  33. package/dist/{application → luna}/components/FooterHandler/FooterHandler.js +1 -1
  34. package/dist/luna/components/FullBackgroundHero/FullBackgroundHero.stories.js +574 -0
  35. package/dist/luna/components/FullBackgroundHero/FullBackgroundHeroDocumentation.mdx +94 -0
  36. package/dist/luna/components/HTMLEmbed/HTMLEmbed.stories.js +136 -0
  37. package/dist/luna/components/HTMLEmbed/HTMLEmbedDocumentation.mdx +31 -0
  38. package/dist/luna/components/Header/Header.stories.js +75 -0
  39. package/dist/luna/components/Header/HeaderDocumentation.mdx +24 -0
  40. package/dist/luna/components/IconTextList/IconTextList.stories.js +100 -0
  41. package/dist/luna/components/IconTextList/IconTextListDocumentation.mdx +46 -0
  42. package/dist/luna/components/ImageGallery/ImageGallery.stories.js +194 -0
  43. package/dist/luna/components/ImageGallery/ImageGalleryDocumentation.mdx +90 -0
  44. package/dist/luna/components/InPageJumpNav/InPageJumpNav.stories.js +104 -0
  45. package/dist/luna/components/InPageJumpNav/InPageJumpNavDocumentation.mdx +23 -0
  46. package/dist/luna/components/JobPosting/JobPosting.stories.js +76 -0
  47. package/dist/luna/components/JobPosting/JobPostingDocumentation.mdx +69 -0
  48. package/dist/luna/{other-organisms → components}/LanguageSelector/LanguageSelector.js +3 -4
  49. package/dist/luna/components/LanguageSelector/LanguageSelector.stories.js +128 -0
  50. package/dist/luna/components/LanguageSelector/LanguageSelectorDocumentation.mdx +120 -0
  51. package/dist/luna/components/LinkList/LinkList.stories.js +170 -0
  52. package/dist/luna/components/LinkList/LinkListDocumentation.mdx +54 -0
  53. package/dist/luna/components/LoadingSpinner/LoadingSpinner.stories.js +53 -0
  54. package/dist/luna/components/Login/Login.js +3 -4
  55. package/dist/luna/components/Login/Login.stories.js +86 -0
  56. package/dist/luna/components/MarketoForm/MarketoForm.stories.js +65 -0
  57. package/dist/luna/components/MarketoForm/MarketoFormDocumentation.mdx +1 -0
  58. package/dist/luna/components/MegaMenu/MegaMenu.js +6 -7
  59. package/dist/luna/components/MegaMenu/menu-generators/FullSubMenu.js +1 -1
  60. package/dist/luna/components/MegaMenu/menu-generators/PartialSubMenu.js +4 -5
  61. package/dist/luna/components/MegaMenu/menu-generators/SubMenu.js +16 -14
  62. package/dist/luna/components/MegaMenu/menu-generators/TertiaryMenu.js +13 -11
  63. package/dist/luna/components/MegaMenu/menu-generators/UncollapsedLinks.js +4 -5
  64. package/dist/luna/components/MobileLogin/MobileLogin.js +3 -4
  65. package/dist/luna/components/MobileMegaMenu/MobileMegaMenu.js +6 -6
  66. package/dist/luna/components/MobileMegaMenu/MobileMegaMenuCategory.js +9 -9
  67. package/dist/luna/components/MobileMegaMenu/MobileMegaMenuPartialCategory.js +3 -3
  68. package/dist/luna/components/MobileMegaMenu/MobileMegaMenuSubCategory.js +8 -9
  69. package/dist/luna/components/MobileNav/MobileNav.js +3 -4
  70. package/dist/luna/{other-organisms → components}/NavBar/NavMiniMenu.js +3 -4
  71. package/dist/luna/components/NavBar/NavigationBar.stories.js +2297 -0
  72. package/dist/luna/components/NavBar/NavigationBarDocumentation.mdx +245 -0
  73. package/dist/luna/{other-organisms → components}/NavBar/UtilityNav.js +5 -5
  74. package/dist/{application → luna}/components/NavBarHandler/NavBarHandler.js +1 -1
  75. package/dist/luna/components/NavBarTop/NavBarTop.js +9 -10
  76. package/dist/luna/components/NavSearch/NavSearch.js +1 -1
  77. package/dist/luna/components/NonTimeBasedListEntries/NonTimeBasedListEntries.stories.js +118 -0
  78. package/dist/luna/components/NonTimeBasedListEntries/NonTimeBasedListEntriesDocumentation.mdx +89 -0
  79. package/dist/luna/components/NonTimeBasedListEntries/NonTimeBasedListEntriesMethods.js +1 -1
  80. package/dist/luna/components/OverlayNotice/OverlayNotice.stories.js +96 -0
  81. package/dist/luna/components/OverlayNotice/OverlayNoticeDocumentation.mdx +45 -0
  82. package/dist/luna/components/ProductSummary/ProductSummary.stories.js +163 -0
  83. package/dist/luna/components/ProductsPackage/ProductsPackage.stories.js +384 -0
  84. package/dist/luna/components/ProseLayout/ProseLayout.stories.js +187 -0
  85. package/dist/luna/components/ProseLayout/ProseLayoutDocumentation.mdx +93 -0
  86. package/dist/luna/components/PullQuote/PullQuote.stories.js +556 -0
  87. package/dist/luna/components/PullQuote/PullQuoteDocumentation.mdx +60 -0
  88. package/dist/luna/components/RegionCard/RegionCard.js +4 -4
  89. package/dist/luna/components/ResourceGrid/ResourceGrid.stories.js +765 -0
  90. package/dist/luna/components/ResourceGrid/ResourceGridDocumentation.mdx +102 -0
  91. package/dist/luna/components/ScrollInPlace/ScrollInPlace.stories.js +171 -0
  92. package/dist/luna/components/ScrollInPlace/ScrollInPlaceDocumentation.mdx +123 -0
  93. package/dist/luna/components/SketchUpPricingCard/SketchUpPricingCard.stories.js +91 -0
  94. package/dist/luna/components/SlideOutFeat/SlideOutFeat.stories.js +32 -0
  95. package/dist/luna/components/StoreFrontCard/StoreFrontCard.js +1 -2
  96. package/dist/luna/components/StoreFrontCard/StoreFrontCard.stories.js +46 -0
  97. package/dist/luna/{other-organisms → components}/SubNav/SiblingsMenu.js +3 -3
  98. package/dist/luna/{other-organisms → components}/SubNav/SubNav.js +6 -7
  99. package/dist/luna/components/SuperHero/SuperHero.stories.js +806 -0
  100. package/dist/luna/components/SuperHero/SuperHeroDocumentation.mdx +57 -0
  101. package/dist/luna/components/SupportCard/SupportCard.stories.js +76 -0
  102. package/dist/luna/components/Tabs/Tabs.js +1 -2
  103. package/dist/luna/components/Tabs/Tabs.stories.js +585 -0
  104. package/dist/luna/components/Tabs/TabsDocumentation.mdx +94 -0
  105. package/dist/luna/components/TimeBasedList/TimeBasedList.stories.js +297 -0
  106. package/dist/luna/components/TimeBasedList/TimeBasedListDocumentation.mdx +123 -0
  107. package/dist/luna/components/TrainerCard/TrainerCard.stories.js +39 -0
  108. package/dist/luna/components/TrialForm/TrialFormStart/TrialFormStart.stories.js +69 -0
  109. package/dist/luna/components/VariableContentCard/VariableContentCard.js +4 -4
  110. package/dist/luna/components/Video/Video.stories.js +135 -0
  111. package/dist/luna/components/Video/VideoDocumentation.mdx +56 -0
  112. package/dist/luna/components/WaffleMenu/WaffleMenu.js +1 -1
  113. package/package.json +3 -3
  114. package/dist/application/components/HelmetHandler/HelmetHandler.js +0 -40
  115. package/dist/application/components/Loading/Loading.js +0 -22
  116. package/dist/application/components/Loading/Loading.scss +0 -10
  117. package/dist/application/components/Stack/Stack.js +0 -413
  118. package/dist/application/hooks/tests/useErrorPageData.test.js +0 -74
  119. package/dist/application/hooks/tests/useFetch.test.js +0 -70
  120. package/dist/application/hooks/tests/useFooterData.test.js +0 -106
  121. package/dist/application/hooks/tests/useFooterResponse.test.js +0 -70
  122. package/dist/application/hooks/tests/useFooterURL.test.js +0 -46
  123. package/dist/application/hooks/tests/useInnerPageNav.test.js +0 -36
  124. package/dist/application/hooks/tests/useLanguage.test.js +0 -57
  125. package/dist/application/hooks/tests/useLanguages.test.js +0 -133
  126. package/dist/application/hooks/tests/useMetadata.test.js +0 -33
  127. package/dist/application/hooks/tests/useNavResponse.test.js +0 -136
  128. package/dist/application/hooks/tests/useNavURL.test.js +0 -49
  129. package/dist/application/hooks/tests/usePageFetch.test.js +0 -203
  130. package/dist/application/hooks/tests/useRegions.test.js +0 -234
  131. package/dist/application/hooks/tests/useRoutes.test.js +0 -116
  132. package/dist/application/hooks/tests/useSiteData.test.js +0 -86
  133. package/dist/application/hooks/useErrorPageData.js +0 -59
  134. package/dist/application/hooks/useFetch.js +0 -67
  135. package/dist/application/hooks/useFooterData.js +0 -45
  136. package/dist/application/hooks/useFooterResponse.js +0 -56
  137. package/dist/application/hooks/useFooterURL.js +0 -32
  138. package/dist/application/hooks/useLanguage.js +0 -44
  139. package/dist/application/hooks/useLanguages.js +0 -66
  140. package/dist/application/hooks/useMetadata.js +0 -23
  141. package/dist/application/hooks/useNavData.js +0 -45
  142. package/dist/application/hooks/useNavResponse.js +0 -59
  143. package/dist/application/hooks/useNavURL.js +0 -41
  144. package/dist/application/hooks/usePageFetch.js +0 -109
  145. package/dist/application/hooks/useRegions.js +0 -149
  146. package/dist/application/hooks/useRoutes.js +0 -59
  147. package/dist/application/hooks/useScrollTo.js +0 -60
  148. package/dist/application/hooks/useSiteData.js +0 -58
  149. package/dist/application/methods/__mocks__/formatFooterDataMethods.js +0 -54
  150. package/dist/application/methods/formatContentSections.js +0 -130
  151. package/dist/application/methods/formatFooterDataMethods.js +0 -82
  152. package/dist/application/methods/formatMenuSiteData.js +0 -45
  153. package/dist/application/methods/formatMenus.js +0 -120
  154. package/dist/application/methods/locationRedirect.js +0 -16
  155. package/dist/application/methods/organismFormat/__mocks__/formatAnchors.js +0 -11
  156. package/dist/application/methods/organismFormat/__mocks__/formatCTAs.js +0 -10
  157. package/dist/application/methods/organismFormat/__mocks__/formatTheme.js +0 -15
  158. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatFive.js +0 -12
  159. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatFour.js +0 -12
  160. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatOne.js +0 -12
  161. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatSeven.js +0 -12
  162. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatThree.js +0 -12
  163. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatTwoA.js +0 -12
  164. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatTwoB.js +0 -12
  165. package/dist/application/methods/organismFormat/feats/__mocks__/formatFeatTwoBIcons.js +0 -14
  166. package/dist/application/methods/organismFormat/feats/__mocks__/formatPullQuote.js +0 -12
  167. package/dist/application/methods/organismFormat/feats/formatFeatFive.js +0 -39
  168. package/dist/application/methods/organismFormat/feats/formatFeatFour.js +0 -36
  169. package/dist/application/methods/organismFormat/feats/formatFeatOne.js +0 -52
  170. package/dist/application/methods/organismFormat/feats/formatFeatSeven.js +0 -193
  171. package/dist/application/methods/organismFormat/feats/formatFeatThree.js +0 -41
  172. package/dist/application/methods/organismFormat/feats/formatFeatTwoA.js +0 -37
  173. package/dist/application/methods/organismFormat/feats/formatFeatTwoAFolds.js +0 -27
  174. package/dist/application/methods/organismFormat/feats/formatFeatTwoB.js +0 -40
  175. package/dist/application/methods/organismFormat/feats/formatFeatTwoBIcons.js +0 -20
  176. package/dist/application/methods/organismFormat/feats/formatPullQuote.js +0 -49
  177. package/dist/application/methods/organismFormat/feats/tests/formatFeatFive.test.js +0 -173
  178. package/dist/application/methods/organismFormat/feats/tests/formatFeatFour.test.js +0 -140
  179. package/dist/application/methods/organismFormat/feats/tests/formatFeatOne.test.js +0 -204
  180. package/dist/application/methods/organismFormat/feats/tests/formatFeatSeven.test.js +0 -680
  181. package/dist/application/methods/organismFormat/feats/tests/formatFeatThree.test.js +0 -142
  182. package/dist/application/methods/organismFormat/feats/tests/formatFeatTwoA.test.js +0 -342
  183. package/dist/application/methods/organismFormat/feats/tests/formatFeatTwoAFolds.test.js +0 -99
  184. package/dist/application/methods/organismFormat/feats/tests/formatFeatTwoB.test.js +0 -293
  185. package/dist/application/methods/organismFormat/feats/tests/formatFeatTwoBIcons.test.js +0 -78
  186. package/dist/application/methods/organismFormat/feats/tests/formatPullQuote.test.js +0 -178
  187. package/dist/application/methods/organismFormat/formatAnchors.js +0 -16
  188. package/dist/application/methods/organismFormat/formatCTAs.js +0 -34
  189. package/dist/application/methods/organismFormat/formatTheme.js +0 -29
  190. package/dist/application/methods/organismFormat/heroes/__mocks__/formatHeroFour.js +0 -12
  191. package/dist/application/methods/organismFormat/heroes/__mocks__/formatHeroOne.js +0 -12
  192. package/dist/application/methods/organismFormat/heroes/__mocks__/formatHeroSix.js +0 -12
  193. package/dist/application/methods/organismFormat/heroes/__mocks__/formatHeroThree.js +0 -12
  194. package/dist/application/methods/organismFormat/heroes/__mocks__/formatHeroTwo.js +0 -12
  195. package/dist/application/methods/organismFormat/heroes/formatHeroFour.js +0 -39
  196. package/dist/application/methods/organismFormat/heroes/formatHeroOne.js +0 -56
  197. package/dist/application/methods/organismFormat/heroes/formatHeroSeven.js +0 -56
  198. package/dist/application/methods/organismFormat/heroes/formatHeroSix.js +0 -51
  199. package/dist/application/methods/organismFormat/heroes/formatHeroThree.js +0 -58
  200. package/dist/application/methods/organismFormat/heroes/formatHeroTwo.js +0 -42
  201. package/dist/application/methods/organismFormat/heroes/tests/formatHeroFour.test.js +0 -245
  202. package/dist/application/methods/organismFormat/heroes/tests/formatHeroOne.test.js +0 -165
  203. package/dist/application/methods/organismFormat/heroes/tests/formatHeroSeven.test.js +0 -198
  204. package/dist/application/methods/organismFormat/heroes/tests/formatHeroSix.test.js +0 -196
  205. package/dist/application/methods/organismFormat/heroes/tests/formatHeroThree.test.js +0 -185
  206. package/dist/application/methods/organismFormat/heroes/tests/formatHeroTwo.test.js +0 -205
  207. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatFive.js +0 -12
  208. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatFour.js +0 -12
  209. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatFourCards.js +0 -10
  210. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatOne.js +0 -12
  211. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatOneCards.js +0 -17
  212. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatOneV2Cards.js +0 -27
  213. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatSeven.js +0 -12
  214. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatSevenCards.js +0 -10
  215. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatSix.js +0 -12
  216. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatSixCards.js +0 -10
  217. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatThree.js +0 -12
  218. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatThreeCards.js +0 -10
  219. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatThreeV2Cards.js +0 -32
  220. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatTopSection.js +0 -23
  221. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatTwo.js +0 -12
  222. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatTwoCards.js +0 -10
  223. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatTwoV2Cards.js +0 -34
  224. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatType.js +0 -10
  225. package/dist/application/methods/organismFormat/listFeats/__mocks__/formatListFeatV2.js +0 -33
  226. package/dist/application/methods/organismFormat/listFeats/formatListFeatFive.js +0 -53
  227. package/dist/application/methods/organismFormat/listFeats/formatListFeatFiveItemsV2.js +0 -32
  228. package/dist/application/methods/organismFormat/listFeats/formatListFeatFiveV2.js +0 -39
  229. package/dist/application/methods/organismFormat/listFeats/formatListFeatFour.js +0 -35
  230. package/dist/application/methods/organismFormat/listFeats/formatListFeatFourCards.js +0 -24
  231. package/dist/application/methods/organismFormat/listFeats/formatListFeatFourDumplingsV2.js +0 -36
  232. package/dist/application/methods/organismFormat/listFeats/formatListFeatFourV2.js +0 -38
  233. package/dist/application/methods/organismFormat/listFeats/formatListFeatOne.js +0 -46
  234. package/dist/application/methods/organismFormat/listFeats/formatListFeatOneCards.js +0 -36
  235. package/dist/application/methods/organismFormat/listFeats/formatListFeatOneV2.js +0 -41
  236. package/dist/application/methods/organismFormat/listFeats/formatListFeatOneV2Cards.js +0 -64
  237. package/dist/application/methods/organismFormat/listFeats/formatListFeatSeven.js +0 -37
  238. package/dist/application/methods/organismFormat/listFeats/formatListFeatSevenCards.js +0 -46
  239. package/dist/application/methods/organismFormat/listFeats/formatListFeatSevenCardsV2.js +0 -48
  240. package/dist/application/methods/organismFormat/listFeats/formatListFeatSevenV2.js +0 -39
  241. package/dist/application/methods/organismFormat/listFeats/formatListFeatSix.js +0 -36
  242. package/dist/application/methods/organismFormat/listFeats/formatListFeatSixCards.js +0 -15
  243. package/dist/application/methods/organismFormat/listFeats/formatListFeatSixCardsV2.js +0 -16
  244. package/dist/application/methods/organismFormat/listFeats/formatListFeatSixV2.js +0 -38
  245. package/dist/application/methods/organismFormat/listFeats/formatListFeatThree.js +0 -40
  246. package/dist/application/methods/organismFormat/listFeats/formatListFeatThreeCards.js +0 -48
  247. package/dist/application/methods/organismFormat/listFeats/formatListFeatThreeV2.js +0 -40
  248. package/dist/application/methods/organismFormat/listFeats/formatListFeatThreeV2Cards.js +0 -39
  249. package/dist/application/methods/organismFormat/listFeats/formatListFeatTopSection.js +0 -33
  250. package/dist/application/methods/organismFormat/listFeats/formatListFeatTwo.js +0 -36
  251. package/dist/application/methods/organismFormat/listFeats/formatListFeatTwoCards.js +0 -34
  252. package/dist/application/methods/organismFormat/listFeats/formatListFeatTwoV2.js +0 -40
  253. package/dist/application/methods/organismFormat/listFeats/formatListFeatTwoV2Cards.js +0 -46
  254. package/dist/application/methods/organismFormat/listFeats/formatListFeatType.js +0 -27
  255. package/dist/application/methods/organismFormat/listFeats/formatListFeatV2.js +0 -21
  256. package/dist/application/methods/organismFormat/listFeats/tests/formatFeatSevenV2.test.js +0 -463
  257. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatFive.test.js +0 -89
  258. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatFiveV2.test.js +0 -238
  259. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatFour.test.js +0 -75
  260. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatFourCards.test.js +0 -65
  261. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatFourV2.test.js +0 -358
  262. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatOne.test.js +0 -98
  263. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatOneCards.test.js +0 -67
  264. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatOneV2.test.js +0 -191
  265. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatOneV2Cards.test.js +0 -87
  266. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatSeven.test.js +0 -120
  267. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatSevenCards.test.js +0 -111
  268. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatSix.test.js +0 -67
  269. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatSixCards.test.js +0 -25
  270. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatSixV2.test.js +0 -242
  271. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatThree.test.js +0 -96
  272. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatThreeCards.test.js +0 -94
  273. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatThreeV2.test.js +0 -242
  274. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatThreeV2Cards.test.js +0 -96
  275. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatTopSection.test.js +0 -63
  276. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatTwo.test.js +0 -86
  277. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatTwoCards.test.js +0 -81
  278. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatTwoV2.test.js +0 -299
  279. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatTwoV2Cards.test.js +0 -159
  280. package/dist/application/methods/organismFormat/listFeats/tests/formatListFeatV2.test.js +0 -69
  281. package/dist/application/methods/organismFormat/listFeats/tests/mockData/listFeatOneV2MockData.js +0 -125
  282. package/dist/application/methods/organismFormat/tests/formatAnchors.test.js +0 -20
  283. package/dist/application/methods/organismFormat/tests/formatCTAs.test.js +0 -109
  284. package/dist/application/methods/organismFormat/tests/formatTheme.test.js +0 -54
  285. package/dist/application/methods/tests/formatContentSections.test.js +0 -237
  286. package/dist/application/methods/tests/formatFooterDataMethods.test.js +0 -138
  287. package/dist/luna/components/MiniFeatDropdown/MiniFeatDropdown.js +0 -78
  288. package/dist/luna/components/MiniFeatDropdown/MiniFeatDropdown.scss +0 -107
  289. package/dist/luna/featurettes/CustomFeat/CustomFeat.js +0 -157
  290. package/dist/luna/featurettes/CustomFeat/CustomFeat.scss +0 -18
  291. package/dist/luna/featurettes/Feat1/Feat1.js +0 -122
  292. package/dist/luna/featurettes/Feat1/Feat1.scss +0 -110
  293. package/dist/luna/featurettes/Feat1/feat1Methods.js +0 -18
  294. package/dist/luna/featurettes/Feat1/feat1Methods.test.js +0 -21
  295. package/dist/luna/featurettes/Feat2A/Feat2A.js +0 -101
  296. package/dist/luna/featurettes/Feat2A/Feat2A.scss +0 -132
  297. package/dist/luna/featurettes/Feat2B/Feat2B.js +0 -131
  298. package/dist/luna/featurettes/Feat2B/Feat2B.scss +0 -231
  299. package/dist/luna/featurettes/Feat2B/Feat2BMethods.js +0 -75
  300. package/dist/luna/featurettes/Feat2B/Feat2BMethods.test.js +0 -38
  301. package/dist/luna/featurettes/Feat3/Feat3.js +0 -89
  302. package/dist/luna/featurettes/Feat3/Feat3.scss +0 -49
  303. package/dist/luna/featurettes/Feat4/Feat4.js +0 -95
  304. package/dist/luna/featurettes/Feat4/Feat4.scss +0 -86
  305. package/dist/luna/featurettes/Feat5/Feat5.js +0 -194
  306. package/dist/luna/featurettes/Feat5/Feat5.scss +0 -235
  307. package/dist/luna/featurettes/Feat5/Feat5Methods.js +0 -19
  308. package/dist/luna/featurettes/Feat5/Feat5Methods.test.js +0 -23
  309. package/dist/luna/featurettes/Feat7/Feat7.js +0 -79
  310. package/dist/luna/featurettes/Feat7/Feat7.scss +0 -49
  311. package/dist/luna/featurettes/Feat7/Feat7Methods.js +0 -41
  312. package/dist/luna/featurettes/Feat8/Feat8.js +0 -75
  313. package/dist/luna/featurettes/Feat8/Feat8.scss +0 -103
  314. package/dist/luna/featurettes/Feat8/feat8Methods.js +0 -18
  315. package/dist/luna/featurettes/Feat8/feat8Methods.test.js +0 -21
  316. package/dist/luna/heroes/Hero1/Hero1.js +0 -111
  317. package/dist/luna/heroes/Hero1/Hero1.scss +0 -223
  318. package/dist/luna/heroes/Hero1/Hero1Methods.js +0 -84
  319. package/dist/luna/heroes/Hero1/useWindowSize.js +0 -47
  320. package/dist/luna/heroes/Hero2/Hero2.js +0 -130
  321. package/dist/luna/heroes/Hero2/Hero2.scss +0 -165
  322. package/dist/luna/heroes/Hero3/Hero3.js +0 -246
  323. package/dist/luna/heroes/Hero3/Hero3.scss +0 -250
  324. package/dist/luna/heroes/Hero3/Hero3Methods.js +0 -37
  325. package/dist/luna/heroes/Hero4/Hero4.js +0 -175
  326. package/dist/luna/heroes/Hero4/Hero4.scss +0 -112
  327. package/dist/luna/heroes/Hero4/hero4Methods.js +0 -18
  328. package/dist/luna/heroes/Hero6/Hero6.js +0 -179
  329. package/dist/luna/heroes/Hero6/Hero6.scss +0 -127
  330. package/dist/luna/heroes/Hero7/Hero7.js +0 -118
  331. package/dist/luna/heroes/Hero7/Hero7.scss +0 -193
  332. package/dist/luna/heroes/Hero7/Hero7Methods.js +0 -39
  333. package/dist/luna/heroes/Hero7/Hero7Methods.test.js +0 -109
  334. package/dist/luna/heroes/Hero7/useWindowWidth.js +0 -40
  335. package/dist/luna/list-feats/ListFeat/ListFeat.js +0 -149
  336. package/dist/luna/list-feats/ListFeat/ListFeat.scss +0 -112
  337. package/dist/luna/list-feats/ListFeat1/ListFeat1.js +0 -91
  338. package/dist/luna/list-feats/ListFeat1/ListFeat1.scss +0 -94
  339. package/dist/luna/list-feats/ListFeat1/listFeat1Methods.js +0 -14
  340. package/dist/luna/list-feats/ListFeat1/listFeat1Methods.test.js +0 -17
  341. package/dist/luna/list-feats/ListFeat2/ListFeat2.js +0 -30
  342. package/dist/luna/list-feats/ListFeat2/ListFeat2.scss +0 -20
  343. package/dist/luna/list-feats/ListFeat2/ListFeat2Methods.js +0 -33
  344. package/dist/luna/list-feats/ListFeat2/ListFeat2Methods.test.js +0 -11
  345. package/dist/luna/list-feats/ListFeat4/ListFeat4.js +0 -34
  346. package/dist/luna/list-feats/ListFeat4/ListFeat4.scss +0 -32
  347. package/dist/luna/list-feats/ListFeat5/ListFeat5.js +0 -28
  348. package/dist/luna/list-feats/ListFeat5/ListFeat5.scss +0 -27
  349. package/dist/luna/list-feats/ListFeat5/ListFeat5Methods.js +0 -24
  350. package/dist/luna/list-feats/ListFeat6/ListFeat6.js +0 -59
  351. package/dist/luna/list-feats/ListFeat6/ListFeat6.scss +0 -34
  352. package/dist/luna/list-feats/ListFeat7/ListFeat7.js +0 -51
  353. package/dist/luna/list-feats/ListFeat7/ListFeat7.scss +0 -14
  354. package/dist/luna/list-feats/ListFeat7/ListFeat7Methods.js +0 -49
  355. package/dist/luna/list-feats/ListFeatCustom/ListFeatCustom.js +0 -25
  356. package/dist/luna/list-feats/ListFeatCustom/ListFeatCustom.scss +0 -8
  357. package/dist/luna/list-feats/methods/listFeatMethods.js +0 -119
  358. /package/dist/luna/{featurettes → components}/Accordion/Accordion.js +0 -0
  359. /package/dist/luna/{featurettes → components}/Accordion/Accordion.scss +0 -0
  360. /package/dist/luna/{featurettes → components}/Accordion/AccordionItem.js +0 -0
  361. /package/dist/luna/{other-organisms → components}/Carousel/Carousel.js +0 -0
  362. /package/dist/luna/{other-organisms → components}/Carousel/Carousel.scss +0 -0
  363. /package/dist/luna/{heroes → components}/FilterHero/FilterHero.js +0 -0
  364. /package/dist/luna/{heroes → components}/FilterHero/FilterHero.scss +0 -0
  365. /package/dist/luna/{heroes → components}/FilterHero/FilterHeroMethods.js +0 -0
  366. /package/dist/luna/{other-organisms → components}/Flyout/Flyout.scss +0 -0
  367. /package/dist/luna/{other-organisms → components}/Footer/ExportedFooter.js +0 -0
  368. /package/dist/luna/{other-organisms → components}/Footer/Footer.js +0 -0
  369. /package/dist/luna/{other-organisms → components}/Footer/Footer.scss +0 -0
  370. /package/dist/luna/{other-organisms → components}/Footer/GlobalFooter.js +0 -0
  371. /package/dist/luna/{other-organisms → components}/Footer/SectorFooter.js +0 -0
  372. /package/dist/luna/{heroes → components}/FullBackgroundHero/FullBackgroundHero.js +0 -0
  373. /package/dist/luna/{heroes → components}/FullBackgroundHero/FullBackgroundHero.scss +0 -0
  374. /package/dist/luna/{heroes → components}/FullBackgroundHero/FullBackgroundHeroMethods.js +0 -0
  375. /package/dist/luna/{featurettes → components}/IconTextList/IconTextList.js +0 -0
  376. /package/dist/luna/{featurettes → components}/IconTextList/IconTextList.scss +0 -0
  377. /package/dist/luna/{other-organisms → components}/LanguageSelector/LanguageSelector.scss +0 -0
  378. /package/dist/luna/{other-organisms → components}/MarketoForm/MarketoForm.js +0 -0
  379. /package/dist/luna/{other-organisms → components}/MarketoForm/MarketoForm.scss +0 -0
  380. /package/dist/luna/{other-organisms → components}/NavBar/NavBar.js +0 -0
  381. /package/dist/luna/{other-organisms → components}/NavBar/NavBar.scss +0 -0
  382. /package/dist/luna/{other-organisms → components}/NavBar/NavOption.js +0 -0
  383. /package/dist/luna/{other-organisms → components}/NavBar/useNavPosition.js +0 -0
  384. /package/dist/luna/{featurettes → components}/ProductsPackage/ProductsPackage.js +0 -0
  385. /package/dist/luna/{featurettes → components}/ProductsPackage/ProductsPackage.scss +0 -0
  386. /package/dist/luna/{featurettes → components}/ProductsPackage/ProductsPackageMethods.js +0 -0
  387. /package/dist/luna/{featurettes → components}/PullQuote/PullQuote.js +0 -0
  388. /package/dist/luna/{featurettes → components}/PullQuote/PullQuote.scss +0 -0
  389. /package/dist/luna/{featurettes → components}/PullQuote/ico-quote-white.svg +0 -0
  390. /package/dist/luna/{featurettes → components}/PullQuote/ico-quote.svg +0 -0
  391. /package/dist/luna/{other-organisms → components}/SubNav/SubNav.scss +0 -0
  392. /package/dist/luna/{heroes → components}/SuperHero/SuperHero.js +0 -0
  393. /package/dist/luna/{heroes → components}/SuperHero/SuperHero.scss +0 -0
  394. /package/dist/luna/{heroes → components}/SuperHero/SuperHeroMethods.js +0 -0
  395. /package/dist/luna/{heroes → components}/SuperHero/useCompareContainerHeights.js +0 -0
  396. /package/dist/{application/assets → luna}/images/carat-down.svg +0 -0
  397. /package/dist/{application/assets → luna}/images/carat-up.svg +0 -0
  398. /package/dist/{application/assets → luna}/images/close-blue.svg +0 -0
  399. /package/dist/{application/assets → luna}/images/close.svg +0 -0
  400. /package/dist/{application/assets → luna}/images/ellipses.svg +0 -0
  401. /package/dist/{application/assets → luna}/images/facebook.svg +0 -0
  402. /package/dist/{application/assets → luna}/images/favicon.ico +0 -0
  403. /package/dist/{application/assets → luna}/images/fpoBox.png +0 -0
  404. /package/dist/{application/assets → luna}/images/fpoSquare.png +0 -0
  405. /package/dist/{application/assets → luna}/images/instagram.svg +0 -0
  406. /package/dist/{application/assets → luna}/images/linkedin.svg +0 -0
  407. /package/dist/{application/assets → luna}/images/loading-mini.gif +0 -0
  408. /package/dist/{application/assets → luna}/images/trimble_logo.png +0 -0
  409. /package/dist/{application/assets → luna}/images/twitter.svg +0 -0
  410. /package/dist/{application/assets → luna}/images/youtube.svg +0 -0
  411. /package/dist/{application → luna/utils}/hooks/useInnerPageNav.js +0 -0
@@ -0,0 +1,90 @@
1
+ #### Block List Item
2
+
3
+ ###### Props -
4
+
5
+ - `content` **(required)** - object containing cards, with following props
6
+ - `cards` - array containing objects for generating cards
7
+ - `eyebrow` - string for generating card eyebrow text
8
+ - `header` - string for generating card header text
9
+ - `text` - string for generating card body text
10
+ - `cardAlignment` - boolean for changing position of card image: image-top or image-bottom options toggled by `false` and `true` respectively
11
+ - `image` - object for generating card image
12
+ - `url` - string for generating image source text
13
+ - `altText` - string for generating image accessibility text
14
+ - `src` - string source of image
15
+ - `gatsbyImage` - boolean for use with image, allows use of GatsbyImage component
16
+ - `textLink` - object for generating card text CTA
17
+ - `url` - string for generating CTA href or React Router `to`
18
+ - `text` - string for generating CTA text
19
+ - `Link` - optional - either a react-router-dom or gatsby-link component
20
+ - `button` - optional object for use when a button is desired
21
+ - `text` - string for generating button text
22
+ - `url` - string for generating CTA href or React Router `to`
23
+ - `type` - string for assigning CSS class to button
24
+ - `displayButton` - boolean for when a button is desired (required to display button)
25
+ - `bgColor` - string used for determining background-color of card - currently only `grey` is available.
26
+ - `type` **(required)** - required to render the correct type of block list - e.g. `bounded_cards`
27
+ - `motion` - boolean used to indicate whether or not motion should be used
28
+ - `paddingClass` - string containing the container padding class name
29
+
30
+ ###### Example -
31
+
32
+ ```
33
+ const CardImage = "../images/dummy-image.png";
34
+ const content = {
35
+ type: "bounded_cards",
36
+ cards: [
37
+ {
38
+ image: { src: CardImage, altText: "FPO Image" },
39
+ eyebrow: "Eyebrow Option",
40
+ header: "Trimble S9 HP",
41
+ displayButton: true,
42
+ button: {
43
+ url: "/#",
44
+ text: "Button",
45
+ },
46
+ text:
47
+ "Combines top field technologies with the highest level of accuracy and most advanced engineering features.",
48
+ },
49
+ {
50
+ image: { src: CardImage, altText: "FPO Image" },
51
+ eyebrow: "Eyebrow Option",
52
+ header: "Trimble Zephyr 3 for GIS",
53
+ displayButton: true,
54
+ button: {
55
+ url: "/#",
56
+ text: "Button",
57
+ },
58
+ },
59
+ {
60
+ image: { src: CardImage, altText: "FPO Image" },
61
+ eyebrow: "Eyebrow Option",
62
+ header: "Trimble S5",
63
+ displayButton: true,
64
+ button: {
65
+ url: "/#",
66
+ text: "Button",
67
+ },
68
+ text:
69
+ "The no nonsense workhorse that works efficiently and dependably while maintaining the highest possible accuracy",
70
+ },
71
+ {
72
+ image: { src: CardImage, altText: "FPO Image" },
73
+ eyebrow: "Eyebrow Option",
74
+ header: "Yo I am a title! Woooo",
75
+ displayButton: true,
76
+ button: {
77
+ url: "/#",
78
+ text: "Button",
79
+ },
80
+ text:
81
+ "Uncompromising performance, range, accuracy and speed.",
82
+ }
83
+ ],
84
+ cardAlignment: true,
85
+ };
86
+
87
+ return (
88
+ <ListFeat content={content} motion />
89
+ )
90
+ ```
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.Default = exports.ComponentInSitu = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _InPageJumpNav = _interopRequireDefault(require("./InPageJumpNav"));
10
+ var _InPageJumpNavDocumentation = _interopRequireDefault(require("./InPageJumpNavDocumentation.mdx"));
11
+ var pageSections = [{
12
+ title: "Overview",
13
+ link: "overview"
14
+ }, {
15
+ title: "Uses by Industry",
16
+ link: "uses"
17
+ }, {
18
+ title: "Features & Benefits",
19
+ link: "features"
20
+ }, {
21
+ title: "Complete Solutions and Lorem Ipsum",
22
+ link: "solutions"
23
+ }, {
24
+ title: "Articles",
25
+ link: "articles"
26
+ }];
27
+ var navTitle = "This page";
28
+ var _default = {
29
+ component: _InPageJumpNav["default"],
30
+ title: "MXP Components/In-Page Jump Nav",
31
+ parameters: {
32
+ docs: {
33
+ page: _InPageJumpNavDocumentation["default"]
34
+ }
35
+ }
36
+ };
37
+ exports["default"] = _default;
38
+ var Default = function Default() {
39
+ return /*#__PURE__*/_react["default"].createElement("div", {
40
+ style: {
41
+ maxWidth: "1200px",
42
+ margin: "auto",
43
+ padding: "0 32px",
44
+ display: "flex",
45
+ justifyContent: "flex-end"
46
+ }
47
+ }, /*#__PURE__*/_react["default"].createElement(_InPageJumpNav["default"], {
48
+ pageSections: pageSections
49
+ }));
50
+ };
51
+ exports.Default = Default;
52
+ var ComponentInSitu = function ComponentInSitu() {
53
+ return /*#__PURE__*/_react["default"].createElement("div", {
54
+ style: {
55
+ maxWidth: "1200px",
56
+ margin: "auto",
57
+ padding: "0 32px",
58
+ position: "relative"
59
+ }
60
+ }, /*#__PURE__*/_react["default"].createElement("div", {
61
+ id: "overview",
62
+ style: {
63
+ height: "550px",
64
+ display: "block",
65
+ backgroundColor: "#003054",
66
+ color: "#ffffff"
67
+ }
68
+ }, "OVERVIEW"), /*#__PURE__*/_react["default"].createElement("div", {
69
+ id: "uses",
70
+ style: {
71
+ height: "550px",
72
+ display: "block",
73
+ backgroundColor: "#0E416C",
74
+ color: "#ffffff"
75
+ }
76
+ }, "USES"), /*#__PURE__*/_react["default"].createElement("div", {
77
+ id: "features",
78
+ style: {
79
+ height: "550px",
80
+ display: "block",
81
+ backgroundColor: "#0063A3",
82
+ color: "#ffffff"
83
+ }
84
+ }, "FEATURES"), /*#__PURE__*/_react["default"].createElement("div", {
85
+ id: "solutions",
86
+ style: {
87
+ height: "550px",
88
+ display: "block",
89
+ backgroundColor: "#4DA2D3",
90
+ color: "#ffffff"
91
+ }
92
+ }, "SOLUTIONS"), /*#__PURE__*/_react["default"].createElement("div", {
93
+ id: "articles",
94
+ style: {
95
+ height: "550px",
96
+ display: "block",
97
+ backgroundColor: "#89C6ED",
98
+ color: "#ffffff"
99
+ }
100
+ }, "ARTICLES"), /*#__PURE__*/_react["default"].createElement(_InPageJumpNav["default"], {
101
+ pageSections: pageSections
102
+ }));
103
+ };
104
+ exports.ComponentInSitu = ComponentInSitu;
@@ -0,0 +1,23 @@
1
+ #### In-Page Jump Nav
2
+
3
+ ###### Props -
4
+
5
+ - `pageSections` - array of objects, each with `title` & `link` as strings to represent the sections on a page.
6
+
7
+ ###### Example -
8
+
9
+ ```
10
+
11
+ const pageSections = [
12
+ { title: "Overview", link: "#overview" },
13
+ { title: "Uses by Industry", link: "#uses" },
14
+ { title: "Features & Benefits", link: "#features" },
15
+ { title: "Complete Solutions and Lorem Ipsum", link: "#solutions" },
16
+ { title: "Articles", link: "#articles" },
17
+ ];
18
+
19
+
20
+ return (
21
+ <InPageJumpNav pageSections={pageSections} />
22
+ );
23
+ ```
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.JobPostingInternational = exports.JobPostingDomestic = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _JobPosting = _interopRequireDefault(require("./JobPosting"));
11
+ var _JobPostingDocumentation = _interopRequireDefault(require("./JobPostingDocumentation.mdx"));
12
+ var content = {
13
+ id: "566b0a12-33a5-55b8-801f-5065f720bc53",
14
+ jobPostingId: "JOB_POSTING_TEST",
15
+ postedDate: "19/08/2021",
16
+ node_locale: "en-US",
17
+ title: "Cloud Operations Technical Writer",
18
+ applyURL: "https://trimble2.wd2.myworkdayjobs-impl.com/TrimbleCareers/job/UK---Ipswich-England/Cloud-Operations-Technical-Writer_R30464/apply",
19
+ requisitionId: "R30464",
20
+ jobFamily: "Technical Writing",
21
+ timeType: "Full Time",
22
+ supervisoryReference: "",
23
+ compensationMinimum: 0,
24
+ compensationMidpoint: 0,
25
+ bonusEligibility: "",
26
+ country: "United Kingdom",
27
+ region: "",
28
+ municipality: "Ipswich",
29
+ description: {
30
+ description: "<div><b>Title: Cloud Operations Technical Writer </b></div><div><b>Location: UK   [Preferred: Ipswich]</b></div><div><b>Department: Trimble Cloud </b><b><i>x</i></b><b>Ops</b></div><div><b>Reports to: Service Delivery Manager</b></div><div> </div><div>Our team accelerates Trimble’s use of public cloud to deliver innovative products and services.  A key shared service offering we provide to Trimble divisions is 24x7 application operations to ensure the availability of their applications.  As Trimble and Trimble Cloud scale to meet growth in digital product delivery across Construction, Transportation, Natural Resources, Geospatial and Automony solutions, we need to ensure the applications operations team has high-quality documentation to follow when restoring service.  While the initial term of this contract is 6 months, it may be extended or converted to full-time employment.</div><div> </div><div>We are looking for you to make Trimble better!</div><div> </div><div><b>Responsibilities</b></div><ul><li><br />Assess existing technical documentation for production application support and create a rationalization plan that encompasses where documents are stored, how they should be structured, how to make the relevant info easy to find, and making sure they are complete.</li><li>Collaborate with Trimble divisions to complete a revision of the existing documentation.</li><li>Create a template or example for new divisions adopting application operation services.</li><li>Identify ways to help ensure documentation is kept up to date.<br /> </li></ul><div> </div><div><b>Required Skills / Experience</b> </div><ul><li><br />Able to quickly understand complex technical processes and translate them into documentation for technicians to use</li><li>Worked in virtual teams to collaborate on content creation</li><li>Detail-oriented with strong organizational skills, and ability to break down larger projects into multiple phases</li><li>Ability to work on multiple tasks in a day</li><li>Strong markup and collaboration skills using Google Apps, Atlassian Confluence or similar</li><li>Designed templates for documentation and ensured consistent look and feel across a suite of documents for quick understanding by the reader</li><li>Strong writing and editorial skills in English, with use of graphics or screenshots as appropriate</li><li>Ability to guide non-native English speakers to assist with the documentation process</li><li>The ability to understand complex technical concepts and clearly communicate them via documentation</li><li>Demonstrated ability to learn new processes and technologies quickly </li><li>Ability to take ownership of projects and define work with little direction after the goals have been established</li><li>Able to occasionally meet off-hours<br /> </li></ul><div> </div><div><b>Desired Skills / Experience</b></div><ul><li><br />Understanding of cloud-based technology and how it works </li><li>Working in agile environments</li><li>Exposure to software-as-a-service-operations or ITIL</li><li>Project management experience or certification</li><li>Configuring document permissions efficiently<br /> </li></ul><div> </div><div>Trimble is transforming the way the world works by delivering products and services that connect the physical and digital worlds. Core technologies in positioning, modeling, connectivity and data analytics enable customers to improve productivity, quality, safety and sustainability. From purpose-built products to enterprise lifecycle solutions, Trimble software, hardware and services are transforming a broad range of industries such as agriculture, construction, geospatial and transportation and logistics.</div><div> </div><div><i>Trimble is proud to be an Equal Opportunity and Affirmative Action Employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, status as a covered veteran in accordance with applicable federal, state and local laws, or any other protected factor. EOE/M/F/V/D</i></div><div> </div><div>#engineering</div><div>#cloud</div><div> </div><div> </div><div>Fixed-term</div><div>Contract-to-hire opportunity</div><div><br /> </div><p><span>Trimble Inc. is proud to be an Equal Opportunity and Affirmative Action Employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, status as a covered veteran in accordance with applicable federal, state and local laws, or any other protected factor. EOE/M/F/V/D</span></p>"
31
+ },
32
+ compensationClause: {
33
+ compensationClause: ""
34
+ },
35
+ eeoClause: {
36
+ eeoClause: "This is an EEO clause."
37
+ }
38
+ };
39
+ var _default = {
40
+ component: _JobPosting["default"],
41
+ title: "MXP Components/Job Posting",
42
+ parameters: {
43
+ docs: {
44
+ page: _JobPostingDocumentation["default"]
45
+ }
46
+ }
47
+ };
48
+ exports["default"] = _default;
49
+ var JobPostingInternational = function JobPostingInternational() {
50
+ return /*#__PURE__*/_react["default"].createElement(_JobPosting["default"], {
51
+ content: content
52
+ });
53
+ };
54
+ exports.JobPostingInternational = JobPostingInternational;
55
+ var JobPostingDomestic = function JobPostingDomestic() {
56
+ var contentClone = (0, _objectSpread2["default"])({}, content);
57
+ contentClone.country = "United States";
58
+ contentClone.region = "Colorado";
59
+ contentClone.municipality = "Denver";
60
+ contentClone.description = {
61
+ description: "<div><b>Title: Cloud Operations Technical Writer </b></div><div><b>Location: UK   [Preferred: Ipswich]</b></div><div><b>Department: Trimble Cloud </b><b><i>x</i></b><b>Ops</b></div><div><b>Reports to: Service Delivery Manager</b></div><div> </div><div>Our team accelerates Trimble’s use of public cloud to deliver innovative products and services.  A key shared service offering we provide to Trimble divisions is 24x7 application operations to ensure the availability of their applications.  As Trimble and Trimble Cloud scale to meet growth in digital product delivery across Construction, Transportation, Natural Resources, Geospatial and Automony solutions, we need to ensure the applications operations team has high-quality documentation to follow when restoring service.  While the initial term of this contract is 6 months, it may be extended or converted to full-time employment.</div><div> </div><div>We are looking for you to make Trimble better!</div><div> </div><div><b>Responsibilities</b></div><ul><li><br />Assess existing technical documentation for production application support and create a rationalization plan that encompasses where documents are stored, how they should be structured, how to make the relevant info easy to find, and making sure they are complete.</li><li>Collaborate with Trimble divisions to complete a revision of the existing documentation.</li><li>Create a template or example for new divisions adopting application operation services.</li><li>Identify ways to help ensure documentation is kept up to date.<br /> </li></ul><div> </div><div><b>Required Skills / Experience</b> </div><ul><li><br />Able to quickly understand complex technical processes and translate them into documentation for technicians to use</li><li>Worked in virtual teams to collaborate on content creation</li><li>Detail-oriented with strong organizational skills, and ability to break down larger projects into multiple phases</li><li>Ability to work on multiple tasks in a day</li><li>Strong markup and collaboration skills using Google Apps, Atlassian Confluence or similar</li><li>Designed templates for documentation and ensured consistent look and feel across a suite of documents for quick understanding by the reader</li><li>Strong writing and editorial skills in English, with use of graphics or screenshots as appropriate</li><li>Ability to guide non-native English speakers to assist with the documentation process</li><li>The ability to understand complex technical concepts and clearly communicate them via documentation</li><li>Demonstrated ability to learn new processes and technologies quickly </li><li>Ability to take ownership of projects and define work with little direction after the goals have been established</li><li>Able to occasionally meet off-hours<br /> </li></ul><div> </div><div><b>Desired Skills / Experience</b></div><ul><li><br />Understanding of cloud-based technology and how it works </li><li>Working in agile environments</li><li>Exposure to software-as-a-service-operations or ITIL</li><li>Project management experience or certification</li><li>Configuring document permissions efficiently<br /> </li></ul><div> </div><div>Trimble is transforming the way the world works by delivering products and services that connect the physical and digital worlds. Core technologies in positioning, modeling, connectivity and data analytics enable customers to improve productivity, quality, safety and sustainability. From purpose-built products to enterprise lifecycle solutions, Trimble software, hardware and services are transforming a broad range of industries such as agriculture, construction, geospatial and transportation and logistics.</div><div> </div><div><i>Trimble is proud to be an Equal Opportunity and Affirmative Action Employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, status as a covered veteran in accordance with applicable federal, state and local laws, or any other protected factor. EOE/M/F/V/D</i></div>"
62
+ };
63
+ contentClone.compensationMinimum = "68000";
64
+ contentClone.compensationMidpoint = "88400";
65
+ contentClone.bonusEligibility = "Yes";
66
+ contentClone.benefitsClause = {
67
+ benefitsClause: "Trimble offers comprehensive core benefits that include Medical, Dental, Vision, Life, Disability, Time off plans and retirement plans. Most of our businesses also offer tax savings plans for health, dependent care and commuter expenses as well as Paid Parental Leave and Employee Stock Purchase Plan."
68
+ };
69
+ contentClone.compensationClause = {
70
+ compensationClause: "Trimble provides the following compensation range and general description of other compensation and benefits that it in good faith believes it might pay and/or offer for this position. This compensation range is based on a full time schedule. Trimble reserves the right to ultimately pay more or less than the posted range and offer additional benefits and other compensation, depending on circumstances not related to an applicant’s sex or other status protected by local, state, or federal law."
71
+ };
72
+ return /*#__PURE__*/_react["default"].createElement(_JobPosting["default"], {
73
+ content: contentClone
74
+ });
75
+ };
76
+ exports.JobPostingDomestic = JobPostingDomestic;
@@ -0,0 +1,69 @@
1
+ #### Job Posting
2
+
3
+ ###### Props -
4
+
5
+ - All this is automated and gets queried from Workday.
6
+
7
+ * content **(required)** - object containing quotes, ctas, button
8
+ - `description` **(required)** - Object of Description of job posting,
9
+ - `description` **(required)** - string of HTML of job posting description
10
+ - `title` **(required)** - String of name of the job
11
+ - `postedDate` - String of date Posting was posted
12
+ - `timeType` - String representing full time or part time
13
+ - `jobFamily` - String representing category/family of job
14
+ - `applyURL` - String of URL to apply for job
15
+ - `compensationMidpoint` - String of compensation midpoint. Top of range.
16
+ - `compensationMinimum` - String pf compensation minimum. Bottom of range.
17
+ - `bonusEligibility` - String of yes or no
18
+ - `country` **(required)** - String of Job Country
19
+ - `region` **(required)** - String of Job (State for US)
20
+ - `municipality` **(required)** - String of Job municipality (City for US)
21
+ - `requisitionId` - String of Requisition Id
22
+ - `benefitsClause` - object consisting of string
23
+ - `benefitsClause` **(required)** - string of Benefits Clause
24
+ - `compensationClause` - object consisting of string
25
+ - `compensationClause` **(required)** - string of compensation Clause
26
+
27
+ ###### Example -
28
+
29
+ ```
30
+ const content = {
31
+ id: '566b0a12-33a5-55b8-801f-5065f720bc53',
32
+ jobPostingId: 'JOB_POSTING_TEST',
33
+ postedDate: '19/08/2021',
34
+ node_locale: 'en-US',
35
+ title: 'Cloud Operations Technical Writer',
36
+ jobPath:
37
+ 'https://trimble2.wd2.myworkdayjobs-impl.com/TrimbleCareers/job/UK---Ipswich-England/Cloud-Operations-Technical-Writer_R30464',
38
+ applyURL:
39
+ 'https://trimble2.wd2.myworkdayjobs-impl.com/TrimbleCareers/job/UK---Ipswich-England/Cloud-Operations-Technical-Writer_R30464/apply',
40
+ requisitionReference: '',
41
+ requisitionId: 'R30464',
42
+ jobFamily: 'Technical Writing',
43
+ timeType: 'Full Time',
44
+ jobType: '',
45
+ supervisoryReference: '',
46
+ compensationMinimum: 0,
47
+ compensationMidpoint: 0,
48
+ bonusEligibility: '',
49
+ country: 'United Kingdom',
50
+ region: '',
51
+ municipality: 'Ipswich',
52
+ description: {
53
+ description:
54
+ '<div><b>Title: Cloud Operations Technical Writer </b></div><div><b>Location: UK   [Preferred: Ipswich]</b></div><div><b>Department: Trimble Cloud </b><b><i>x</i></b><b>Ops</b></div><div><b>Reports to: Service Delivery Manager</b></div><div> </div><div>Our team accelerates Trimble’s use of public cloud to deliver innovative products and services.  A key shared service offering we provide to Trimble divisions is 24x7 application operations to ensure the availability of their applications.  As Trimble and Trimble Cloud scale to meet growth in digital product delivery across Construction, Transportation, Natural Resources, Geospatial and Automony solutions, we need to ensure the applications operations team has high-quality documentation to follow when restoring service.  While the initial term of this contract is 6 months, it may be extended or converted to full-time employment.</div><div> </div><div>We are looking for you to make Trimble better!</div><div> </div><div><b>Responsibilities</b></div><ul><li><br />Assess existing technical documentation for production application support and create a rationalization plan that encompasses where documents are stored, how they should be structured, how to make the relevant info easy to find, and making sure they are complete.</li><li>Collaborate with Trimble divisions to complete a revision of the existing documentation.</li><li>Create a template or example for new divisions adopting application operation services.</li><li>Identify ways to help ensure documentation is kept up to date.<br /> </li></ul><div> </div><div><b>Required Skills / Experience</b> </div><ul><li><br />Able to quickly understand complex technical processes and translate them into documentation for technicians to use</li><li>Worked in virtual teams to collaborate on content creation</li><li>Detail-oriented with strong organizational skills, and ability to break down larger projects into multiple phases</li><li>Ability to work on multiple tasks in a day</li><li>Strong markup and collaboration skills using Google Apps, Atlassian Confluence or similar</li><li>Designed templates for documentation and ensured consistent look and feel across a suite of documents for quick understanding by the reader</li><li>Strong writing and editorial skills in English, with use of graphics or screenshots as appropriate</li><li>Ability to guide non-native English speakers to assist with the documentation process</li><li>The ability to understand complex technical concepts and clearly communicate them via documentation</li><li>Demonstrated ability to learn new processes and technologies quickly </li><li>Ability to take ownership of projects and define work with little direction after the goals have been established</li><li>Able to occasionally meet off-hours<br /> </li></ul><div> </div><div><b>Desired Skills / Experience</b></div><ul><li><br />Understanding of cloud-based technology and how it works </li><li>Working in agile environments</li><li>Exposure to software-as-a-service-operations or ITIL</li><li>Project management experience or certification</li><li>Configuring document permissions efficiently<br /> </li></ul><div> </div><div>Trimble is transforming the way the world works by delivering products and services that connect the physical and digital worlds. Core technologies in positioning, modeling, connectivity and data analytics enable customers to improve productivity, quality, safety and sustainability. From purpose-built products to enterprise lifecycle solutions, Trimble software, hardware and services are transforming a broad range of industries such as agriculture, construction, geospatial and transportation and logistics.</div><div> </div><div><i>Trimble is proud to be an Equal Opportunity and Affirmative Action Employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, status as a covered veteran in accordance with applicable federal, state and local laws, or any other protected factor. EOE/M/F/V/D</i></div><div> </div><div>#engineering</div><div>#cloud</div><div> </div><div> </div><div>Fixed-term</div><div>Contract-to-hire opportunity</div><div><br /> </div><p><span>Trimble Inc. is proud to be an Equal Opportunity and Affirmative Action Employer and considers qualified applicants for employment without regard to race, gender, age, color, religion, national origin, marital status, disability, sexual orientation, status as a covered veteran in accordance with applicable federal, state and local laws, or any other protected factor. EOE/M/F/V/D</span></p>',
55
+ },
56
+ similarJobs: {
57
+ similarJobs: '',
58
+ },
59
+ compensationClause: {
60
+ compensationClause: '',
61
+ },
62
+ eeoClause: {
63
+ eeoClause: '',
64
+ },
65
+ };
66
+
67
+ return (
68
+ <JobPosting content={content} />
69
+ ```
@@ -11,11 +11,10 @@ var _react = _interopRequireWildcard(require("react"));
11
11
  require("./LanguageSelector.scss");
12
12
  var _iconGlobe = _interopRequireDefault(require("../../images/icon-globe.svg"));
13
13
  var _checkBlue = _interopRequireDefault(require("../../images/check-blue.svg"));
14
- var _lodash = require("lodash");
15
14
  var _closeIcon = _interopRequireDefault(require("../../images/close-icon.svg"));
16
15
  var _rightCaretLightGray = _interopRequireDefault(require("../../images/right-caret-light-gray.svg"));
17
16
  var _useMouse2 = _interopRequireDefault(require("../../utils/hooks/useMouse"));
18
- var _NavBar = require("..//NavBar/NavBar");
17
+ var _NavBar = require("../NavBar/NavBar");
19
18
  var _terraOne = require("terra-one");
20
19
  var LanguageSelector = function LanguageSelector(_ref) {
21
20
  var _currentSettings$lang, _labels$buttons, _labels$buttons2;
@@ -164,7 +163,7 @@ var LanguageSelector = function LanguageSelector(_ref) {
164
163
  }, /*#__PURE__*/_react["default"].createElement("div", {
165
164
  className: "luna-language-selector__body-section-item-icon"
166
165
  }, region === currentRegion && /*#__PURE__*/_react["default"].createElement("img", {
167
- id: (0, _lodash.uniqueId)("id-"),
166
+ id: (0, _react.useId)(),
168
167
  src: _checkBlue["default"],
169
168
  alt: "item selected"
170
169
  })), /*#__PURE__*/_react["default"].createElement("div", {
@@ -194,7 +193,7 @@ var LanguageSelector = function LanguageSelector(_ref) {
194
193
  }, /*#__PURE__*/_react["default"].createElement("div", {
195
194
  className: "luna-language-selector__body-section-item-icon"
196
195
  }, (language === null || language === void 0 ? void 0 : language.code) === (currentLanguage === null || currentLanguage === void 0 ? void 0 : currentLanguage.code) && /*#__PURE__*/_react["default"].createElement("img", {
197
- id: (0, _lodash.uniqueId)("id-"),
196
+ id: (0, _react.useId)(),
198
197
  src: _checkBlue["default"],
199
198
  alt: "item selected"
200
199
  })), /*#__PURE__*/_react["default"].createElement("div", {
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard")["default"];
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports["default"] = exports.MultipleRegions = exports.Default = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _LanguageSelector = _interopRequireDefault(require("./LanguageSelector"));
12
+ var _LanguageSelectorDocumentation = _interopRequireDefault(require("./LanguageSelectorDocumentation.mdx"));
13
+ var _addonActions = require("@storybook/addon-actions");
14
+ var labels = {
15
+ region: "REGION",
16
+ language: "LANGUAGE",
17
+ buttons: {
18
+ ok: "OK",
19
+ cancel: "Cancel"
20
+ }
21
+ };
22
+ var settings = {
23
+ region: "Global",
24
+ language: {
25
+ nativeField: "English",
26
+ translatableName: "",
27
+ code: "en"
28
+ }
29
+ };
30
+ var settingsWithRegion = {
31
+ region: "North America",
32
+ language: {
33
+ nativeField: "English",
34
+ translatableName: "",
35
+ code: "en"
36
+ }
37
+ };
38
+ var oneRegion = ["Global"];
39
+ var multipleRegions = ["Europe", "Middle East", "North America"];
40
+ var languages = [{
41
+ nativeField: "Deutsch",
42
+ translatableName: "German",
43
+ code: "de"
44
+ }, {
45
+ nativeField: "English",
46
+ translatableName: "",
47
+ code: "en"
48
+ }, {
49
+ nativeField: "Español",
50
+ translatableName: "Spanish",
51
+ code: "es"
52
+ }, {
53
+ nativeField: "Français",
54
+ translatableName: "French",
55
+ code: "fr"
56
+ }, {
57
+ nativeField: "Português",
58
+ translatableName: "Portuguese",
59
+ code: "pt"
60
+ }, {
61
+ nativeField: "Русский",
62
+ translatableName: "Russian",
63
+ code: "ru"
64
+ }, {
65
+ nativeField: "한국어",
66
+ translatableName: "Korean",
67
+ code: "ko"
68
+ }, {
69
+ nativeField: "简体中文",
70
+ translatableName: "Mandarin Chinese",
71
+ code: "zh"
72
+ }, {
73
+ nativeField: "普通话",
74
+ translatableName: "",
75
+ code: "tw"
76
+ }, {
77
+ nativeField: "日本語",
78
+ translatableName: "Japanese",
79
+ code: "ja"
80
+ }];
81
+ var _default = {
82
+ component: _LanguageSelector["default"],
83
+ title: "Utility Components/Language Selector",
84
+ parameters: {
85
+ docs: {
86
+ page: _LanguageSelectorDocumentation["default"]
87
+ }
88
+ }
89
+ };
90
+ exports["default"] = _default;
91
+ var Default = function Default() {
92
+ var _useState = (0, _react.useState)(false),
93
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
94
+ languageSelectorDeployed = _useState2[0],
95
+ setLanguageSelectorDeployed = _useState2[1];
96
+ var handleLanguageSelectorDeployed = function handleLanguageSelectorDeployed(languageDeployed) {
97
+ setLanguageSelectorDeployed(languageDeployed === undefined ? !languageSelectorDeployed : languageDeployed);
98
+ };
99
+ return /*#__PURE__*/_react["default"].createElement(_LanguageSelector["default"], {
100
+ labels: labels,
101
+ settings: settings,
102
+ languages: languages,
103
+ regions: oneRegion,
104
+ languageSelectorDeployed: languageSelectorDeployed,
105
+ saveLanguage: (0, _addonActions.action)("saveLanguage"),
106
+ handleLanguageSelectorDeployed: handleLanguageSelectorDeployed
107
+ });
108
+ };
109
+ exports.Default = Default;
110
+ var MultipleRegions = function MultipleRegions() {
111
+ var _useState3 = (0, _react.useState)(false),
112
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
113
+ languageSelectorDeployed = _useState4[0],
114
+ setLanguageSelectorDeployed = _useState4[1];
115
+ var handleLanguageSelectorDeployed = function handleLanguageSelectorDeployed(languageDeployed) {
116
+ setLanguageSelectorDeployed(languageDeployed === undefined ? !languageSelectorDeployed : languageDeployed);
117
+ };
118
+ return /*#__PURE__*/_react["default"].createElement(_LanguageSelector["default"], {
119
+ labels: labels,
120
+ settings: settingsWithRegion,
121
+ languages: languages,
122
+ regions: multipleRegions,
123
+ languageSelectorDeployed: languageSelectorDeployed,
124
+ saveLanguage: (0, _addonActions.action)("saveLanguage"),
125
+ handleLanguageSelectorDeployed: handleLanguageSelectorDeployed
126
+ });
127
+ };
128
+ exports.MultipleRegions = MultipleRegions;
@@ -0,0 +1,120 @@
1
+ #### Language Selector
2
+
3
+ ###### Props -
4
+
5
+ - `labels` - object containing component labels.
6
+ - `region` - string of region section title.
7
+ - `language` - string of language section title.
8
+ - `buttons` - object containing buttons labels.
9
+ - `ok` - string of confirm button.
10
+ - `cancel` - string of cancel button.
11
+ - `settings` - object containing region and language site settings.
12
+ - `region` - string to indicate the site region name.
13
+ - `language` - object containing the site language names.
14
+ - `nativeField` - string to indicate the language in its native language, untranslatable, i.e. Deutsch.
15
+ - `translatableName` - string to indicate the language in english, i.e. German.
16
+ - `code` - string of the language site code.
17
+ - `languages` - array of objects, each with `nativeField`, `translatableName` and `code` as strings to represent the language attributes.
18
+ - `regions` - array of strings, each to represent the regions name.
19
+ - `languageSelectorDeployed` - boolean used to indicate if the language selector component is deployed.
20
+ - `handleLanguageSelectorDeployed` - method used to show/hide the language selector component.
21
+ - `saveLanguage` - method used to save the new language configuration selected.
22
+
23
+ ###### Example -
24
+
25
+ ```
26
+ const labels = {
27
+ region: 'REGION',
28
+ language: 'LANGUAGE',
29
+ buttons: {
30
+ ok: 'OK',
31
+ cancel: 'Cancel',
32
+ }
33
+ };
34
+
35
+ const settings = {
36
+ region: 'Global',
37
+ language: {
38
+ nativeField: 'English',
39
+ translatableName: '',
40
+ code: 'en-US',
41
+ },
42
+ };
43
+
44
+ const regions = ['Europe', 'Middle East', 'North America'];
45
+
46
+ const languages = [
47
+ {
48
+ nativeField: 'Deutsch',
49
+ translatableName: 'German',
50
+ code: 'de',
51
+ },
52
+ {
53
+ nativeField: 'English',
54
+ translatableName: '',
55
+ code: 'en-US',
56
+ },
57
+ {
58
+ nativeField: 'Español',
59
+ translatableName: 'Spanish',
60
+ code: 'es',
61
+ },
62
+ {
63
+ nativeField: 'Français',
64
+ translatableName: 'French',
65
+ code: 'fr',
66
+ },
67
+ {
68
+ nativeField: 'Português',
69
+ translatableName: 'Portuguese',
70
+ code: 'pt',
71
+ },
72
+ {
73
+ nativeField: 'Русский',
74
+ translatableName: 'Russian',
75
+ code: 'ru-RU',
76
+ },
77
+ {
78
+ nativeField: '한국어',
79
+ translatableName: 'Korean',
80
+ code: 'ko-KR',
81
+ },
82
+ {
83
+ nativeField: '简体中文',
84
+ translatableName: 'Mandarin Chinese',
85
+ code: 'zh',
86
+ },
87
+ {
88
+ nativeField: '普通话',
89
+ translatableName: '',
90
+ code: 'zh-Hant-TW',
91
+ },
92
+ {
93
+ nativeField: '日本語',
94
+ translatableName: 'Japanese',
95
+ code: 'ja-JP',
96
+ }
97
+ ];
98
+
99
+ const [languageSelectorDeployed, setLanguageSelectorDeployed] = useState(false);
100
+
101
+ const handleLanguageSelectorDeployed = () => {
102
+ setLanguageSelectorDeployed(!languageSelectorDeployed);
103
+ };
104
+
105
+ const saveLanguage = () => {
106
+ // save language implementation here
107
+ }
108
+
109
+ return (
110
+ <LanguageSelector
111
+ labels={labels}
112
+ settings={settings}
113
+ languages={languages}
114
+ regions={regions}
115
+ languageSelectorDeployed={languageSelectorDeployed}
116
+ saveLanguage={saveLanguage}
117
+ handleLanguageSelectorDeployed={handleLanguageSelectorDeployed}
118
+ />
119
+ );
120
+ ```