oa-componentbook 0.0.0-sit1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/README.md +92 -0
  2. package/build/MockData.js +2311 -0
  3. package/build/components/oa-component-accordion/Accordion.js +195 -0
  4. package/build/components/oa-component-accordion/styles.js +13 -0
  5. package/build/components/oa-component-auto-complete/CustomAutoComplete.js +167 -0
  6. package/build/components/oa-component-bar-chart/BarChart.js +295 -0
  7. package/build/components/oa-component-bread-crumb/CustomBreadCrumb.js +47 -0
  8. package/build/components/oa-component-button/CustomButton.js +108 -0
  9. package/build/components/oa-component-button/styles.js +41 -0
  10. package/build/components/oa-component-checkbox/CustomCheckBox.js +115 -0
  11. package/build/components/oa-component-checkbox/styles.js +12 -0
  12. package/build/components/oa-component-count-card/CustomCountCard.js +74 -0
  13. package/build/components/oa-component-count-card/styles.js +12 -0
  14. package/build/components/oa-component-datepicker/CustomDatePicker.js +134 -0
  15. package/build/components/oa-component-demo-border-radius/BorderRadiusDemo.js +35 -0
  16. package/build/components/oa-component-demo-border-radius/styles.js +12 -0
  17. package/build/components/oa-component-demo-color-variables/ColorVariablesDemo.js +34 -0
  18. package/build/components/oa-component-demo-color-variables/styles.js +12 -0
  19. package/build/components/oa-component-demo-elevation/ElevationDemo.js +22 -0
  20. package/build/components/oa-component-demo-elevation/styles.js +12 -0
  21. package/build/components/oa-component-demo-spacing/SpacingScales.js +26 -0
  22. package/build/components/oa-component-demo-spacing/styles.js +259 -0
  23. package/build/components/oa-component-drawer/CustomDrawer.js +178 -0
  24. package/build/components/oa-component-drawer/styles.js +16 -0
  25. package/build/components/oa-component-dropdown/CustomDropdown.js +102 -0
  26. package/build/components/oa-component-dropdown/customClass.css +9 -0
  27. package/build/components/oa-component-dropdown/styles.js +12 -0
  28. package/build/components/oa-component-feedback-form/FeedbackForm.js +75 -0
  29. package/build/components/oa-component-feedback-tooltip/FeedbackTooltip.js +69 -0
  30. package/build/components/oa-component-form-item/CustomFormItem.js +74 -0
  31. package/build/components/oa-component-header/CustomHeader.js +104 -0
  32. package/build/components/oa-component-header/styles.js +12 -0
  33. package/build/components/oa-component-icons/CustomIcon.js +92 -0
  34. package/build/components/oa-component-icons/MaterialIcon.js +70 -0
  35. package/build/components/oa-component-icons/SizedSvg.js +42 -0
  36. package/build/components/oa-component-info/CustomInfo.js +119 -0
  37. package/build/components/oa-component-info/styles.js +15 -0
  38. package/build/components/oa-component-input/CustomInput.js +131 -0
  39. package/build/components/oa-component-input-number/CustomInputNumber.js +140 -0
  40. package/build/components/oa-component-lable/CustomLable.js +37 -0
  41. package/build/components/oa-component-lable/styles.js +12 -0
  42. package/build/components/oa-component-loader/CustomLoader.js +66 -0
  43. package/build/components/oa-component-modal/CustomModal.js +153 -0
  44. package/build/components/oa-component-modal/styles.js +14 -0
  45. package/build/components/oa-component-notification/CustomNotification.js +152 -0
  46. package/build/components/oa-component-notification/styles.js +12 -0
  47. package/build/components/oa-component-notification/usage-example.md +44 -0
  48. package/build/components/oa-component-pagination/CustomPagination.js +111 -0
  49. package/build/components/oa-component-pagination/styles.js +12 -0
  50. package/build/components/oa-component-popover/CustomPopover.js +58 -0
  51. package/build/components/oa-component-progress-bar/CustomProgressBar.js +68 -0
  52. package/build/components/oa-component-progress-bar/styles.js +12 -0
  53. package/build/components/oa-component-radio/CustomRadio.js +112 -0
  54. package/build/components/oa-component-radio/styles.js +13 -0
  55. package/build/components/oa-component-rating/CustomRating.js +13 -0
  56. package/build/components/oa-component-select/CustomSelect.js +432 -0
  57. package/build/components/oa-component-steps/CustomSteps.js +117 -0
  58. package/build/components/oa-component-steps/styles.js +12 -0
  59. package/build/components/oa-component-table/CustomTable.js +300 -0
  60. package/build/components/oa-component-table/CustomTableV1.js +610 -0
  61. package/build/components/oa-component-table/styles.js +14 -0
  62. package/build/components/oa-component-table/stylesV1.js +19 -0
  63. package/build/components/oa-component-tabs/CustomTabs.js +102 -0
  64. package/build/components/oa-component-tabs/styles.js +13 -0
  65. package/build/components/oa-component-tag/CustomTag.js +66 -0
  66. package/build/components/oa-component-tag/styles.js +75 -0
  67. package/build/components/oa-component-textarea/CustomTextArea.js +74 -0
  68. package/build/components/oa-component-textarea/styles.js +16 -0
  69. package/build/components/oa-component-timeline/CustomTimeline.js +65 -0
  70. package/build/components/oa-component-timeline/styles.js +15 -0
  71. package/build/components/oa-component-timepicker/CustomTimePicker.js +104 -0
  72. package/build/components/oa-component-toggle/CustomToggle.js +111 -0
  73. package/build/components/oa-component-toggle/styles.js +43 -0
  74. package/build/components/oa-component-tooltip/CustomTooltip.js +70 -0
  75. package/build/components/oa-component-typography/Typography.js +58 -0
  76. package/build/components/oa-component-typography/styles.js +13 -0
  77. package/build/components/oa-component-upload/CustomUpload.js +332 -0
  78. package/build/components/oa-component-upload/styles.js +13 -0
  79. package/build/components/oa-component-viewer/CustomViewer.js +273 -0
  80. package/build/components/oa-component-viewer/styles.js +14 -0
  81. package/build/constants/ratingConstants.js +194 -0
  82. package/build/dev/oa-component-document-viewer/CustomDocumentViewer.js +367 -0
  83. package/build/dev/oa-component-document-viewer/styles.js +12 -0
  84. package/build/dev/oa-component-timeline/CustomTimeline.js +53 -0
  85. package/build/dev/oa-component-timeline/styles.js +15 -0
  86. package/build/dev/oa-component-upload/CustomUpload.js +285 -0
  87. package/build/dev/oa-component-upload/styles.js +13 -0
  88. package/build/dev/oa-component-viewer/CustomViewer.js +326 -0
  89. package/build/dev/oa-component-viewer/styles.js +14 -0
  90. package/build/dev/oa-widget-document-modal/DocumentSideModal.js +166 -0
  91. package/build/dev/oa-widget-document-modal/styles.js +12 -0
  92. package/build/dev/oa-widget-document-side-drawer/DocumentSideDrawer.js +196 -0
  93. package/build/dev/oa-widget-document-side-drawer/styles.js +12 -0
  94. package/build/dev/oa-widget-document-upload-card/DocUploadCardWidget.js +179 -0
  95. package/build/dev/oa-widget-document-upload-card/styles.js +13 -0
  96. package/build/global-css/BorderRadius.js +22 -0
  97. package/build/global-css/ColorVariables.js +26 -0
  98. package/build/global-css/ColorVariablesMap.js +29 -0
  99. package/build/global-css/CustomDropDownThemes.js +31 -0
  100. package/build/global-css/Elevation.js +35 -0
  101. package/build/global-css/GlobalCss.js +26 -0
  102. package/build/global-css/GridLayout.js +25 -0
  103. package/build/global-css/SpacingScales.js +11 -0
  104. package/build/global-css/Typographies.js +26 -0
  105. package/build/global-css/TypographiesMap.js +71 -0
  106. package/build/global-css/color-options.js +8 -0
  107. package/build/global-css/commonStyles.js +11 -0
  108. package/build/global-css/tooltip-placement-option.js +8 -0
  109. package/build/global-css/typography-options.js +8 -0
  110. package/build/images/AC.png +0 -0
  111. package/build/images/Car.png +0 -0
  112. package/build/images/Cooler.png +0 -0
  113. package/build/images/Default.png +0 -0
  114. package/build/images/Footwear.png +0 -0
  115. package/build/images/Furniture.png +0 -0
  116. package/build/images/Glasses.png +0 -0
  117. package/build/images/HA.png +0 -0
  118. package/build/images/Laptop.png +0 -0
  119. package/build/images/Luggage.png +0 -0
  120. package/build/images/Microwave.png +0 -0
  121. package/build/images/Mobile.png +0 -0
  122. package/build/images/PdfSampleImage.png +0 -0
  123. package/build/images/Refrigerator.png +0 -0
  124. package/build/images/Shirts.png +0 -0
  125. package/build/images/Tablets.png +0 -0
  126. package/build/images/Television.png +0 -0
  127. package/build/images/TwoWheeler.png +0 -0
  128. package/build/images/Wallet.png +0 -0
  129. package/build/images/WashingMachine.png +0 -0
  130. package/build/images/WaterPurifier.png +0 -0
  131. package/build/images/Wearable.png +0 -0
  132. package/build/images/ajax-loader.gif +0 -0
  133. package/build/images/astronaut_emptystate.png +0 -0
  134. package/build/images/caution.svg +3 -0
  135. package/build/images/close.svg +3 -0
  136. package/build/images/current-location.svg +3 -0
  137. package/build/images/delete.svg +8 -0
  138. package/build/images/exportGrp01.png +0 -0
  139. package/build/images/exportGrp02.png +0 -0
  140. package/build/images/exportGrp03.png +0 -0
  141. package/build/images/hand-icon.svg +4 -0
  142. package/build/images/iphone.svg +9 -0
  143. package/build/images/left-icon.svg +28 -0
  144. package/build/images/map_pointer.svg +25 -0
  145. package/build/images/modal-img.svg +8 -0
  146. package/build/images/oaChat.svg +5 -0
  147. package/build/images/offer.svg +3 -0
  148. package/build/images/oneassist-logo.png +0 -0
  149. package/build/images/outOfStock.png +0 -0
  150. package/build/images/right-icon.svg +28 -0
  151. package/build/images/search_ic.svg +3 -0
  152. package/build/images/search_not_found.svg +7 -0
  153. package/build/images/upload.svg +8 -0
  154. package/build/images/zoom.svg +4 -0
  155. package/build/index.js +763 -0
  156. package/build/layout/DetailDataLayout/DetailDataLayout.js +20 -0
  157. package/build/layout/DetailDataLayout/components/Form.js +22 -0
  158. package/build/layout/DetailDataLayout/components/Header.js +32 -0
  159. package/build/layout/DetailDataLayout/style.css +9 -0
  160. package/build/layout/DetailDataLayout/styles.js +12 -0
  161. package/build/layout/EntityOverviewLayout/EntityOverviewLayout.js +235 -0
  162. package/build/layout/EntityOverviewLayout/reducer/entityOverviewLayoutReducer.js +63 -0
  163. package/build/layout/EntityOverviewLayout/styles.js +13 -0
  164. package/build/layout/GenricLayOut/GenricLayOut.js +2293 -0
  165. package/build/layout/GenricLayOut/components/AppliedFilters.js +84 -0
  166. package/build/layout/GenricLayOut/components/CardList.js +34 -0
  167. package/build/layout/GenricLayOut/components/DropdownSearch.js +48 -0
  168. package/build/layout/GenricLayOut/components/Header.js +74 -0
  169. package/build/layout/GenricLayOut/components/Modal.js +85 -0
  170. package/build/layout/GenricLayOut/components/ProfileSection.js +87 -0
  171. package/build/layout/GenricLayOut/components/Search.js +51 -0
  172. package/build/layout/GenricLayOut/components/StaticFilter.css +73 -0
  173. package/build/layout/GenricLayOut/components/StaticFilter.js +37 -0
  174. package/build/layout/GenricLayOut/reducer/layoutReducer.js +294 -0
  175. package/build/layout/GenricLayOut/resolver/staticConfigResolver.js +98 -0
  176. package/build/layout/GenricLayOut/styles.js +25 -0
  177. package/build/layout/paymentAndConsent/CancelScreen.js +46 -0
  178. package/build/layout/paymentAndConsent/ConsentCard.js +68 -0
  179. package/build/layout/paymentAndConsent/DetailsCard.js +75 -0
  180. package/build/layout/paymentAndConsent/DetailsList.js +38 -0
  181. package/build/layout/paymentAndConsent/Header.js +33 -0
  182. package/build/layout/paymentAndConsent/InProgressScreen.js +46 -0
  183. package/build/layout/paymentAndConsent/Loader.js +21 -0
  184. package/build/layout/paymentAndConsent/Modal.js +28 -0
  185. package/build/layout/paymentAndConsent/PaymentAndConsent.js +22 -0
  186. package/build/layout/paymentAndConsent/PaymentCard.js +83 -0
  187. package/build/layout/paymentAndConsent/Section.js +34 -0
  188. package/build/layout/paymentAndConsent/SuccessScreen.js +46 -0
  189. package/build/layout/paymentAndConsent/TimeLineCard.js +28 -0
  190. package/build/layout/paymentAndConsent/TncList.js +32 -0
  191. package/build/layout/paymentAndConsent/style.js +12 -0
  192. package/build/utils/common.js +20 -0
  193. package/build/utils/download-file.js +23 -0
  194. package/build/utils/fix-decimal-places.js +24 -0
  195. package/build/utils/get-uuid.js +41 -0
  196. package/build/utils/hex-to-rgb.js +30 -0
  197. package/build/utils/index.js +78 -0
  198. package/build/utils/random-generators.js +19 -0
  199. package/build/utils/rupee-formatters.js +69 -0
  200. package/build/utils/type-checkers.js +16 -0
  201. package/build/widgets/oa-form-widget/FormWidget.js +544 -0
  202. package/build/widgets/oa-form-widget/FormWidgetStyle.js +18 -0
  203. package/build/widgets/oa-widget-add-spare-part/AddSparePartCollapseWidget.js +461 -0
  204. package/build/widgets/oa-widget-add-spare-part/AddSparePartWidget.js +355 -0
  205. package/build/widgets/oa-widget-add-spare-part/styles.js +12 -0
  206. package/build/widgets/oa-widget-address/AddressWidget.js +55 -0
  207. package/build/widgets/oa-widget-address/styles.js +13 -0
  208. package/build/widgets/oa-widget-approval/ApprovalWidget.js +200 -0
  209. package/build/widgets/oa-widget-approval/ApprovalWidgetNew.js +492 -0
  210. package/build/widgets/oa-widget-approval/styles.js +13 -0
  211. package/build/widgets/oa-widget-chat/ChatWidget.js +261 -0
  212. package/build/widgets/oa-widget-chat/styles.js +17 -0
  213. package/build/widgets/oa-widget-close-claim/CloseClaimWidget.js +256 -0
  214. package/build/widgets/oa-widget-close-claim/styles.js +12 -0
  215. package/build/widgets/oa-widget-collapsible-key-value/CollapsibleKeyValueWidget.js +395 -0
  216. package/build/widgets/oa-widget-collapsible-key-value/styles.js +16 -0
  217. package/build/widgets/oa-widget-content-panel/ContentPanel.js +82 -0
  218. package/build/widgets/oa-widget-content-panel/styles.js +12 -0
  219. package/build/widgets/oa-widget-custom-details/CustomDetails.js +41 -0
  220. package/build/widgets/oa-widget-customer-rating-card/CustomerRatingCard.js +147 -0
  221. package/build/widgets/oa-widget-customer-rating-card/styles.js +12 -0
  222. package/build/widgets/oa-widget-date-dropdown/DateDropDown.js +385 -0
  223. package/build/widgets/oa-widget-date-dropdown/styles.js +12 -0
  224. package/build/widgets/oa-widget-detailcard/MembershipDetailCard.js +182 -0
  225. package/build/widgets/oa-widget-detailcard/styles.js +12 -0
  226. package/build/widgets/oa-widget-document-upload/DocUploadWidget.js +264 -0
  227. package/build/widgets/oa-widget-document-upload/styles.js +13 -0
  228. package/build/widgets/oa-widget-document-upload-card/DocUploadCardWidget.js +178 -0
  229. package/build/widgets/oa-widget-document-upload-card/styles.js +13 -0
  230. package/build/widgets/oa-widget-dropdown-search-input/DropdownSearchInput.js +200 -0
  231. package/build/widgets/oa-widget-dropdown-search-input/styles.js +12 -0
  232. package/build/widgets/oa-widget-feedback/FeedbackWidget.js +83 -0
  233. package/build/widgets/oa-widget-feedback/styles.js +13 -0
  234. package/build/widgets/oa-widget-form/CustomFormWidget.js +51 -0
  235. package/build/widgets/oa-widget-form/styles.js +12 -0
  236. package/build/widgets/oa-widget-googlerating/GoogleRating.js +55 -0
  237. package/build/widgets/oa-widget-googlerating/styles.js +12 -0
  238. package/build/widgets/oa-widget-guide/GuideWidget.js +70 -0
  239. package/build/widgets/oa-widget-guide/GuideWidgetStyle.js +12 -0
  240. package/build/widgets/oa-widget-header/CustomHeaderWidget.js +98 -0
  241. package/build/widgets/oa-widget-header/styles.js +12 -0
  242. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationDeleteBiker.js +24 -0
  243. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModal.js +34 -0
  244. package/build/widgets/oa-widget-hub-automation-modal/HubAutomationModalStyle.js +13 -0
  245. package/build/widgets/oa-widget-image-carousel/ImageCarouselWidget.js +256 -0
  246. package/build/widgets/oa-widget-image-carousel/styles.js +23 -0
  247. package/build/widgets/oa-widget-image-gallery/FullscreenViewer.js +169 -0
  248. package/build/widgets/oa-widget-image-gallery/ImageGallery.js +87 -0
  249. package/build/widgets/oa-widget-image-gallery/ThumbnailGrid.js +146 -0
  250. package/build/widgets/oa-widget-image-gallery/imageCache.js +15 -0
  251. package/build/widgets/oa-widget-image-gallery/imageGalleryStyle.js +16 -0
  252. package/build/widgets/oa-widget-input-pattern-pin/CustomPinPatternCaptureWidget.js +395 -0
  253. package/build/widgets/oa-widget-input-pattern-pin/styles.js +12 -0
  254. package/build/widgets/oa-widget-item-info-card/InfoCardListWidget.js +60 -0
  255. package/build/widgets/oa-widget-item-info-card/ItemInfoCardWidget.js +77 -0
  256. package/build/widgets/oa-widget-item-info-card/styles.css +50 -0
  257. package/build/widgets/oa-widget-item-info-card/styles.js +14 -0
  258. package/build/widgets/oa-widget-key-value/KeyValueWidget.js +121 -0
  259. package/build/widgets/oa-widget-key-value/styles.js +14 -0
  260. package/build/widgets/oa-widget-kpi/KPICardWidget.js +86 -0
  261. package/build/widgets/oa-widget-kpi/styles.js +12 -0
  262. package/build/widgets/oa-widget-location-access/LocationAccessWidget.js +92 -0
  263. package/build/widgets/oa-widget-location-access/styles.js +12 -0
  264. package/build/widgets/oa-widget-map-base-location/AddressDetails.js +84 -0
  265. package/build/widgets/oa-widget-map-base-location/AddressForm.js +106 -0
  266. package/build/widgets/oa-widget-map-base-location/CustomModalComponent.js +58 -0
  267. package/build/widgets/oa-widget-map-base-location/MapBaseLocation.js +93 -0
  268. package/build/widgets/oa-widget-map-base-location/MapComponent.js +167 -0
  269. package/build/widgets/oa-widget-map-base-location/styles.js +12 -0
  270. package/build/widgets/oa-widget-membershipcard/MembershipCard.js +266 -0
  271. package/build/widgets/oa-widget-membershipcard/styles.js +13 -0
  272. package/build/widgets/oa-widget-multiple-collapse-with-slots/MultipleCollapseWithSlots.js +85 -0
  273. package/build/widgets/oa-widget-multiple-collapse-with-slots/checkactive.svg +8 -0
  274. package/build/widgets/oa-widget-multiple-collapse-with-slots/checkhover.svg +8 -0
  275. package/build/widgets/oa-widget-multiple-collapse-with-slots/styles.js +16 -0
  276. package/build/widgets/oa-widget-notes/NotesWidget.js +135 -0
  277. package/build/widgets/oa-widget-notes/styles.js +13 -0
  278. package/build/widgets/oa-widget-pincode-base-location/PincodeBaseLocation.js +281 -0
  279. package/build/widgets/oa-widget-pincode-base-location/styles.js +12 -0
  280. package/build/widgets/oa-widget-plan-card/PlanCard.js +183 -0
  281. package/build/widgets/oa-widget-plan-card/styles.js +13 -0
  282. package/build/widgets/oa-widget-preview/Preview.js +172 -0
  283. package/build/widgets/oa-widget-preview/ZoomImageComponent.js +95 -0
  284. package/build/widgets/oa-widget-preview/styles.js +12 -0
  285. package/build/widgets/oa-widget-profile-data/ProfileDataWidget.js +117 -0
  286. package/build/widgets/oa-widget-profile-data/styles.js +13 -0
  287. package/build/widgets/oa-widget-progressive-steps/ProgressiveStepsWidget.js +362 -0
  288. package/build/widgets/oa-widget-progressive-steps/styles.js +12 -0
  289. package/build/widgets/oa-widget-reimbursement-breakup/ReimbursementBreakupWidget.js +141 -0
  290. package/build/widgets/oa-widget-reimbursement-breakup/styles.js +12 -0
  291. package/build/widgets/oa-widget-repair-service/RepairServiceWidget.js +79 -0
  292. package/build/widgets/oa-widget-repair-service/styles.js +12 -0
  293. package/build/widgets/oa-widget-reupload-drawer/ReUploadDrawer.js +164 -0
  294. package/build/widgets/oa-widget-send-payment-link/SendPaymentLinkWidget.js +224 -0
  295. package/build/widgets/oa-widget-send-payment-link/styles.js +15 -0
  296. package/build/widgets/oa-widget-servicecard/ServiceCard.js +185 -0
  297. package/build/widgets/oa-widget-servicecard/styles.js +13 -0
  298. package/build/widgets/oa-widget-sidebar/SidebarWidget.js +105 -0
  299. package/build/widgets/oa-widget-sidebar/components/Header.js +33 -0
  300. package/build/widgets/oa-widget-sidebar/sidebar.css +0 -0
  301. package/build/widgets/oa-widget-sidebar/styles.js +13 -0
  302. package/build/widgets/oa-widget-spare-part/SparePartsCollapseWidget.js +127 -0
  303. package/build/widgets/oa-widget-spare-part/SparePartsWidget.js +294 -0
  304. package/build/widgets/oa-widget-spare-part/styles.js +18 -0
  305. package/build/widgets/oa-widget-stage-timeline/StageTimelineWidget.js +159 -0
  306. package/build/widgets/oa-widget-stage-timeline/styles.js +29 -0
  307. package/build/widgets/oa-widget-track-shipment/TrackShipmentWidget.js +232 -0
  308. package/build/widgets/oa-widget-track-shipment/styles.js +13 -0
  309. package/build/widgets/oa-widget-track-shipment-list/TrackShipmentWidgetList.js +103 -0
  310. package/build/widgets/oa-widget-track-shipment-list/fn.js +81 -0
  311. package/build/widgets/oa-widget-track-shipment-list/styles.js +13 -0
  312. package/build/widgets/oa-widget-upload-download/UploadDownloadWidget.js +167 -0
  313. package/build/widgets/oa-widget-upload-download/styles.js +14 -0
  314. package/build/widgets/oa-widget-user-management/UserManagementWidget.js +352 -0
  315. package/build/widgets/oa-widget-user-management/styles.js +15 -0
  316. package/build/widgets/oa-widget-view-history/ViewHistoryWidget.js +181 -0
  317. package/build/widgets/oa-widget-view-history/styles.js +12 -0
  318. package/build/widgets/oa-widget-view-previous-description/ViewPreviousDescriptionWidget.js +188 -0
  319. package/build/widgets/oa-widget-view-previous-description/styles.js +16 -0
  320. package/package.json +100 -0
@@ -0,0 +1,183 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _CheckCircle = _interopRequireDefault(require("@material-ui/icons/CheckCircle"));
12
+ var _FlashOn = _interopRequireDefault(require("@material-ui/icons/FlashOn"));
13
+ var _InfoOutlined = _interopRequireDefault(require("@material-ui/icons/InfoOutlined"));
14
+ var _reactMarkdown = _interopRequireDefault(require("react-markdown"));
15
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
16
+ var _CustomModal = _interopRequireDefault(require("../../components/oa-component-modal/CustomModal"));
17
+ var _styles = require("./styles");
18
+ var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
19
+ var _CustomTooltip = _interopRequireDefault(require("../../components/oa-component-tooltip/CustomTooltip"));
20
+ var _CustomButton = _interopRequireDefault(require("../../components/oa-component-button/CustomButton"));
21
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
23
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
24
+ /**
25
+ * PlanCard component renders a card with plan details.
26
+ * It displays the plan heading, heading2, heading3, price, subText, benefits and buttons.
27
+ * The benefits are displayed as a list of items.
28
+ * The buttons are displayed as a list of items.
29
+ * The component also renders a modal with the title "See All Benefits" and lists all the benefits.
30
+ * The modal is displayed when the user clicks on the "See All Benefits" button.
31
+ * @param {object} props - The props object.
32
+ * @param {string} props['data-test'] - The data-test attribute.
33
+ * @param {object} props.cardData - The card data.
34
+ * @param {string} props.cardData.heading1 - The heading1 of the card.
35
+ * @param {string} props.cardData.heading2 - The heading2 of the card.
36
+ * @param {string} props.cardData.heading3 - The heading3 of the card.
37
+ * @param {string} props.cardData.topRightText - The top right text of the card.
38
+ * @param {string} props.cardData.iconLink - The icon link of the card.
39
+ * @param {array} props.cardData.annotatedTexts - The annotated texts of the card.
40
+ * @param {array} props.cardData.buttons - The buttons of the card.
41
+ * @param {function} props.onClickofSeeBenefits - The callback function when the user clicks on the "See All Benefits" button.
42
+ */
43
+ function PlanCard(_ref) {
44
+ var _cardData$iconLink, _cardData$buttons, _cardData$buttons2, _cardData$buttons$0$i, _cardData$buttons$;
45
+ let {
46
+ 'data-test': dataTest,
47
+ cardData,
48
+ onClickofSeeBenefits
49
+ } = _ref;
50
+ const [isModalVisible, setIsModalVisible] = (0, _react.useState)(false);
51
+ const handleCancel = () => {
52
+ setIsModalVisible(false);
53
+ };
54
+ const showModal = () => {
55
+ onClickofSeeBenefits();
56
+ setIsModalVisible(true);
57
+ };
58
+ return /*#__PURE__*/_react.default.createElement(_styles.PlanCardStyle, {
59
+ "data-test": dataTest
60
+ }, /*#__PURE__*/_react.default.createElement("div", {
61
+ className: "planCard"
62
+ }, /*#__PURE__*/_react.default.createElement("div", {
63
+ className: "damage-protection-plan"
64
+ }, /*#__PURE__*/_react.default.createElement("div", {
65
+ className: "plan-container"
66
+ }, /*#__PURE__*/_react.default.createElement("div", {
67
+ className: "planHeader"
68
+ }, /*#__PURE__*/_react.default.createElement("div", null, (cardData === null || cardData === void 0 ? void 0 : cardData.heading1) && /*#__PURE__*/_react.default.createElement(_Typography.default, {
69
+ className: "type-t1-500",
70
+ color: "primary-content"
71
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData === null || cardData === void 0 ? void 0 : cardData.heading1)), (cardData === null || cardData === void 0 ? void 0 : cardData.topRightText) && /*#__PURE__*/_react.default.createElement("span", {
72
+ className: "top-right-text"
73
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData === null || cardData === void 0 ? void 0 : cardData.topRightText)), /*#__PURE__*/_react.default.createElement("div", null, cardData.heading2 && /*#__PURE__*/_react.default.createElement("div", {
74
+ className: "padding-top-8"
75
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
76
+ className: "type-b1-400",
77
+ color: "primary-content"
78
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.heading2))), cardData.heading3 && /*#__PURE__*/_react.default.createElement("div", {
79
+ className: "padding-top-8 flexMin"
80
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
81
+ className: "type-b2-400",
82
+ color: "secondary-content"
83
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.heading3)), (cardData === null || cardData === void 0 ? void 0 : cardData.heading3TooltipText) && /*#__PURE__*/_react.default.createElement(_CustomTooltip.default, {
84
+ isDisplayed: true,
85
+ title: /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.heading3TooltipText)
86
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
87
+ icon: _InfoOutlined.default,
88
+ color: "primary",
89
+ size: 20
90
+ }))))), (cardData === null || cardData === void 0 || (_cardData$iconLink = cardData.iconLink) === null || _cardData$iconLink === void 0 ? void 0 : _cardData$iconLink.length) > 0 && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("img", {
91
+ src: cardData === null || cardData === void 0 ? void 0 : cardData.iconLink,
92
+ alt: "category"
93
+ }))), /*#__PURE__*/_react.default.createElement("div", {
94
+ className: "planContent"
95
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
96
+ className: "price"
97
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
98
+ className: "type-h3-500",
99
+ color: "primary-content"
100
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.text)), ' ', cardData.strikethroughText && /*#__PURE__*/_react.default.createElement(_Typography.default, {
101
+ className: "type-b2-400",
102
+ color: "placeholder-text"
103
+ }, /*#__PURE__*/_react.default.createElement("strike", null, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.strikethroughText))), ' ', cardData.inlineText && /*#__PURE__*/_react.default.createElement(_Typography.default, {
104
+ color: "positive",
105
+ className: "type-button-500"
106
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.inlineText))), cardData.subText && /*#__PURE__*/_react.default.createElement("div", {
107
+ className: "padding-top-8"
108
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
109
+ className: "type-b2-400",
110
+ color: "secondary-content"
111
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData.subText)))), /*#__PURE__*/_react.default.createElement("div", {
112
+ className: "benefits"
113
+ }, cardData.annotatedTexts.map((item, index) => /*#__PURE__*/_react.default.createElement("div", {
114
+ className: "benefit-item"
115
+ }, item.iconType === 'LIGHTNING' && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("ul", null, item.texts.map((benefit, i) => /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
116
+ icon: _FlashOn.default,
117
+ size: 20,
118
+ color: "tags"
119
+ }), /*#__PURE__*/_react.default.createElement(_Typography.default, {
120
+ className: "type-b2-400",
121
+ color: "primary-content"
122
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, benefit)))))), item.iconType === 'VERIFIED' && /*#__PURE__*/_react.default.createElement("ul", null, item.texts.map((benefit, i) => /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
123
+ icon: _CheckCircle.default,
124
+ size: 20,
125
+ color: "positive"
126
+ }), /*#__PURE__*/_react.default.createElement(_Typography.default, {
127
+ className: "type-b2-400",
128
+ color: "primary-content"
129
+ }, /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, benefit)))))))), (cardData === null || cardData === void 0 || (_cardData$buttons = cardData.buttons) === null || _cardData$buttons === void 0 || (_cardData$buttons = _cardData$buttons[0]) === null || _cardData$buttons === void 0 || (_cardData$buttons = _cardData$buttons.value) === null || _cardData$buttons === void 0 ? void 0 : _cardData$buttons.text) && /*#__PURE__*/_react.default.createElement("div", {
130
+ className: "flexEnd"
131
+ }, /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
132
+ label: /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, cardData === null || cardData === void 0 || (_cardData$buttons2 = cardData.buttons) === null || _cardData$buttons2 === void 0 || (_cardData$buttons2 = _cardData$buttons2[0]) === null || _cardData$buttons2 === void 0 || (_cardData$buttons2 = _cardData$buttons2.value) === null || _cardData$buttons2 === void 0 ? void 0 : _cardData$buttons2.text),
133
+ className: "action-button",
134
+ onClick: showModal,
135
+ type: "secondary",
136
+ size: "large"
137
+ })))), /*#__PURE__*/_react.default.createElement(_styles.BenfitsModalStyle, null, /*#__PURE__*/_react.default.createElement(_CustomModal.default, {
138
+ title: "See All Benefits",
139
+ open: isModalVisible,
140
+ onCancel: handleCancel,
141
+ footer: null,
142
+ className: "seeAllBenefits",
143
+ centered: true
144
+ }, /*#__PURE__*/_react.default.createElement("ul", null, (_cardData$buttons$0$i = cardData === null || cardData === void 0 || (_cardData$buttons$ = cardData.buttons[0]) === null || _cardData$buttons$ === void 0 || (_cardData$buttons$ = _cardData$buttons$.infoPoints) === null || _cardData$buttons$ === void 0 ? void 0 : _cardData$buttons$.map((item, index) => /*#__PURE__*/_react.default.createElement("li", null, /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
145
+ icon: _CheckCircle.default,
146
+ size: 20,
147
+ color: "positive"
148
+ }), /*#__PURE__*/_react.default.createElement(_reactMarkdown.default, null, item)))) !== null && _cardData$buttons$0$i !== void 0 ? _cardData$buttons$0$i : 'No Benfits Found'))))));
149
+ }
150
+ PlanCard.propTypes = {
151
+ 'data-test': _propTypes.default.string,
152
+ onClickofSeeBenefits: _propTypes.default.func,
153
+ cardData: _propTypes.default.shape({
154
+ heading1: _propTypes.default.string.isRequired,
155
+ heading2: _propTypes.default.string.isRequired,
156
+ heading3: _propTypes.default.string.isRequired,
157
+ heading3TooltipText: _propTypes.default.string,
158
+ text: _propTypes.default.string.isRequired,
159
+ strikethroughText: _propTypes.default.string.isRequired,
160
+ inlineText: _propTypes.default.string.isRequired,
161
+ subText: _propTypes.default.string.isRequired,
162
+ topRightText: _propTypes.default.string,
163
+ // Optional
164
+ iconLink: _propTypes.default.string,
165
+ // Optional
166
+ annotatedTexts: _propTypes.default.arrayOf(_propTypes.default.shape({
167
+ texts: _propTypes.default.arrayOf(_propTypes.default.string.isRequired).isRequired,
168
+ iconType: _propTypes.default.string // Optional
169
+ })).isRequired,
170
+ buttons: _propTypes.default.arrayOf(_propTypes.default.shape({
171
+ id: _propTypes.default.number.isRequired,
172
+ value: _propTypes.default.shape({
173
+ text: _propTypes.default.string.isRequired
174
+ }).isRequired,
175
+ infoPoints: _propTypes.default.arrayOf(_propTypes.default.string.isRequired).isRequired
176
+ })).isRequired
177
+ }).isRequired
178
+ };
179
+ PlanCard.defaultProps = {
180
+ 'data-test': null,
181
+ onClickofSeeBenefits: () => {}
182
+ };
183
+ var _default = exports.default = PlanCard;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.PlanCardStyle = exports.BenfitsModalStyle = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _templateObject, _templateObject2;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
11
+ var _default = exports.default = {};
12
+ const PlanCardStyle = exports.PlanCardStyle = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n .planCard{\n border-radius: 12px;\n border: 1px solid var(--color-divider);\n background: #FFF;\n box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.14);\n padding: 36px 16px 24px;\n position: relative;\n overflow: hidden;\n }\n .top-right-text{\n border-radius: 4px;\n background: var(--color-positive);\n color: var(--color-primary-background);\n font-size: 14px;\n font-style: normal;\n font-weight: 500;\n line-height: 20px; \n padding: 4px;\n position: absolute;\n right: 0;\n top: 0;\n }\n .flexMin{\n display: flex;\n gap: 4px;\n }\n .planContent{\n display: flex;\n flex-direction: column;\n gap: 16px;\n }\n .price{\n display: flex;\n gap: 8px;\n align-items: center;\n }\n ul{\n list-style: none;\n list-style-position: inside;\n padding: 0;\n margin: 0;\n }\n .planHeader{\n display: flex;\n gap: 16px;\n padding: 0 0 16px;\n }\n ul li{\n display: flex;\n align-items: flex-start;\n gap: 8px;\n padding: 0 0 8px;\n }\n .flexMin svg{\n cursor: pointer;\n } \n .flexEnd{\n display: flex;\n justify-content: end;\n }\n .benefits{\n display: flex;\n gap: 16px;\n flex-direction: column;\n }\n \n"])));
13
+ const BenfitsModalStyle = exports.BenfitsModalStyle = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n}\n .seeAllBenefits ul li{\n display: flex !important;\n gap: 8px !important;\n padding: 0 0 16px !important;\n }\n .seeAllBenefits ul {\n list-style: none !important;\n list-style-position: inside !important;\n padding: 0 !important;\n }\n\n"])));
@@ -0,0 +1,172 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = Preview;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _ZoomImageComponent = _interopRequireDefault(require("./ZoomImageComponent"));
12
+ var _leftIcon = _interopRequireDefault(require("../../images/left-icon.svg"));
13
+ var _rightIcon = _interopRequireDefault(require("../../images/right-icon.svg"));
14
+ var _zoom = _interopRequireDefault(require("../../images/zoom.svg"));
15
+ var _close = _interopRequireDefault(require("../../images/close.svg"));
16
+ var _utils = require("../../utils");
17
+ var _styles = require("./styles");
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
+ /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
22
+ /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */
23
+
24
+ /**
25
+ * Preview component for displaying a carousel of images and videos.
26
+ *
27
+ * Props:
28
+ * - srcArray: An array of media objects containing `src`, `text`, and `type` ('image' or 'video').
29
+ * - initialImageIndex: The initial index of the media to be displayed.
30
+ *
31
+ * State:
32
+ * - currentImageIndex: Index of the currently displayed media.
33
+ * - selectedMedia: URL of the currently selected media.
34
+ * - isModalOpen: Boolean indicating if the zoom modal is open.
35
+ *
36
+ * Behavior:
37
+ * - Allows navigation between media items using left and right icons.
38
+ * - Supports zooming into an image by opening a modal.
39
+ * - Provides keyboard accessibility for navigating and selecting media.
40
+ */
41
+ function Preview(_ref) {
42
+ var _srcArray$initialImag, _srcArray$currentImag;
43
+ let {
44
+ srcArray = [],
45
+ // Array of media (images/videos)
46
+ initialImageIndex = 0 // The starting index of the image/video
47
+ } = _ref;
48
+ const [currentImageIndex, setCurrentImageIndex] = (0, _react.useState)(initialImageIndex);
49
+ const [selectedMedia, setSelectedMedia] = (0, _react.useState)(((_srcArray$initialImag = srcArray[initialImageIndex]) === null || _srcArray$initialImag === void 0 ? void 0 : _srcArray$initialImag.src) || '');
50
+ const [isModalOpen, setModalOpen] = (0, _react.useState)(false);
51
+ const isSingleMedia = srcArray.length <= 1;
52
+ const isVideo = ((_srcArray$currentImag = srcArray[currentImageIndex]) === null || _srcArray$currentImag === void 0 ? void 0 : _srcArray$currentImag.type) === 'video';
53
+ (0, _react.useEffect)(() => {
54
+ var _srcArray$currentImag2;
55
+ setSelectedMedia((_srcArray$currentImag2 = srcArray[currentImageIndex]) === null || _srcArray$currentImag2 === void 0 ? void 0 : _srcArray$currentImag2.src);
56
+ }, [currentImageIndex, srcArray]);
57
+
58
+ /**
59
+ * Navigates to the previous media item in the carousel.
60
+ * Updates the `currentImageIndex` to the previous index, wrapping around
61
+ * if necessary to cycle through the media items.
62
+ */
63
+ const handlePrevious = () => {
64
+ const newIndex = (currentImageIndex - 1 + srcArray.length) % srcArray.length;
65
+ setCurrentImageIndex(newIndex);
66
+ };
67
+
68
+ /**
69
+ * Navigates to the next media item in the carousel.
70
+ * Updates the `currentImageIndex` to the next index, wrapping around
71
+ * if necessary to cycle through the media items.
72
+ */
73
+ const handleNext = () => {
74
+ const newIndex = (currentImageIndex + 1) % srcArray.length;
75
+ setCurrentImageIndex(newIndex);
76
+ };
77
+ const handleZoom = () => setModalOpen(true);
78
+ const handleCancel = () => setModalOpen(false);
79
+ return /*#__PURE__*/_react.default.createElement(_styles.ImgPreviewStyles, null, /*#__PURE__*/_react.default.createElement("div", {
80
+ className: "mainStylePreview"
81
+ }, !isSingleMedia && /*#__PURE__*/_react.default.createElement("img", {
82
+ className: "left-icon",
83
+ onClick: handlePrevious,
84
+ src: _leftIcon.default,
85
+ alt: "Previous",
86
+ role: "button",
87
+ tabIndex: 0,
88
+ onKeyDown: e => {
89
+ if (e.key === 'Enter' || e.key === ' ') {
90
+ handlePrevious();
91
+ }
92
+ }
93
+ }), selectedMedia && /*#__PURE__*/_react.default.createElement("div", {
94
+ className: isSingleMedia ? 'singleVideoselected' : 'selected'
95
+ }, isVideo ? /*#__PURE__*/_react.default.createElement("video", {
96
+ src: selectedMedia,
97
+ controls: true,
98
+ muted: false
99
+ }, /*#__PURE__*/_react.default.createElement("track", {
100
+ kind: "captions"
101
+ })) : /*#__PURE__*/_react.default.createElement("div", {
102
+ className: "imgContainerHeight"
103
+ }, /*#__PURE__*/_react.default.createElement("img", {
104
+ src: selectedMedia,
105
+ alt: "Selected Media"
106
+ })), !isVideo && /*#__PURE__*/_react.default.createElement("img", {
107
+ onClick: handleZoom,
108
+ src: _zoom.default,
109
+ className: "zoomIn",
110
+ alt: "Zoom Icon",
111
+ role: "button",
112
+ tabIndex: 0,
113
+ onKeyDown: e => {
114
+ if (e.key === 'Enter' || e.key === ' ') {
115
+ handleZoom();
116
+ }
117
+ }
118
+ })), !isSingleMedia && /*#__PURE__*/_react.default.createElement("img", {
119
+ className: "right-icon",
120
+ onClick: handleNext,
121
+ src: _rightIcon.default,
122
+ alt: "Next",
123
+ role: "button",
124
+ tabIndex: 0,
125
+ onKeyDown: e => {
126
+ if (e.key === 'Enter' || e.key === ' ') {
127
+ handleNext();
128
+ }
129
+ }
130
+ }), !isSingleMedia && /*#__PURE__*/_react.default.createElement("ul", {
131
+ className: "imgContainer"
132
+ }, srcArray.map((media, index) => /*#__PURE__*/_react.default.createElement("li", {
133
+ key: "media-".concat((0, _utils.getUUID)()),
134
+ className: "imgArea"
135
+ }, media.type === 'video' ? /*#__PURE__*/_react.default.createElement("video", {
136
+ className: currentImageIndex === index ? 'selected-thumbnail' : '',
137
+ src: media.src,
138
+ onClick: () => setCurrentImageIndex(index)
139
+ }, ' ', /*#__PURE__*/_react.default.createElement("track", {
140
+ kind: "captions"
141
+ })) : /*#__PURE__*/_react.default.createElement("img", {
142
+ className: currentImageIndex === index ? 'selected-thumbnail' : '',
143
+ src: media.src,
144
+ alt: "Thumbnail ".concat(index),
145
+ onClick: () => setCurrentImageIndex(index),
146
+ onKeyDown: e => {
147
+ if (e.key === 'Enter' || e.key === ' ') {
148
+ // Add keyboard support
149
+ setCurrentImageIndex(index);
150
+ }
151
+ }
152
+ }), /*#__PURE__*/_react.default.createElement("span", {
153
+ className: currentImageIndex === index ? 'selected-thumb' : ''
154
+ }, media.text)))), selectedMedia && /*#__PURE__*/_react.default.createElement(_ZoomImageComponent.default, {
155
+ isModalOpen: isModalOpen,
156
+ handleCancel: handleCancel,
157
+ selectedMedia: selectedMedia,
158
+ closeIcon: _close.default,
159
+ isVideo: isVideo
160
+ })));
161
+ }
162
+ Preview.propTypes = {
163
+ srcArray: _propTypes.default.arrayOf(_propTypes.default.shape({
164
+ src: _propTypes.default.string.isRequired,
165
+ text: _propTypes.default.string,
166
+ type: _propTypes.default.oneOf(['image', 'video'])
167
+ })).isRequired,
168
+ initialImageIndex: _propTypes.default.number
169
+ };
170
+ Preview.defaultProps = {
171
+ initialImageIndex: 0
172
+ };
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.weak-map.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ var _antd = require("antd");
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _propTypes = _interopRequireDefault(require("prop-types"));
12
+ var _styles = require("./styles");
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ /* eslint-disable jsx-a11y/no-noninteractive-element-to-interactive-role */
17
+
18
+ /**
19
+ * ZoomMediaComponent
20
+ *
21
+ * @param {boolean} isModalOpen - Indicates whether the Modal should be visible or not
22
+ * @param {function} handleCancel - Callback for when the Modal should be closed
23
+ * @param {string} selectedMedia - URL of the selected media (image or video)
24
+ * @param {string} closeIcon - URL of the close icon
25
+ * @param {boolean} isVideo - Whether the selected media is a video or not
26
+ *
27
+ * @returns {React.ReactElement} - A JSX element representing the ZoomModal
28
+ *
29
+ * The ZoomModal displays the selected media (image or video) in a Modal.
30
+ * The Modal is only visible when `isModalOpen` is true.
31
+ * The Modal can be closed by clicking on the close icon in the top right or by pressing the Escape key.
32
+ * The Modal can also be closed by calling the `handleCancel` callback.
33
+ * The selected media is displayed in the Modal with a double click handler that toggles the zoom view.
34
+ * The zoom view is only enabled on mobile devices.
35
+ * The selected media is rendered as an image if `isVideo` is false, otherwise it is rendered as a video.
36
+ */
37
+ function ZoomMediaComponent(_ref) {
38
+ let {
39
+ isModalOpen,
40
+ handleCancel,
41
+ selectedMedia,
42
+ closeIcon,
43
+ isVideo
44
+ } = _ref;
45
+ const [zoomView, setZoomView] = (0, _react.useState)(false);
46
+ const isMobileDevice = window.innerWidth <= 600;
47
+
48
+ /**
49
+ * Toggles the zoom view state for the media in the modal.
50
+ * Updates the `zoomView` state to either enable or disable the zoom effect.
51
+ */
52
+ const handleZoomModal = () => {
53
+ setZoomView(prev => !prev);
54
+ };
55
+ return /*#__PURE__*/_react.default.createElement(_styles.ImgPreviewStyles, null, /*#__PURE__*/_react.default.createElement(_antd.Modal, {
56
+ className: "zoomModal",
57
+ visible: isModalOpen,
58
+ onCancel: handleCancel,
59
+ width: 1024,
60
+ footer: null
61
+ }, /*#__PURE__*/_react.default.createElement("img", {
62
+ src: closeIcon,
63
+ onClick: handleCancel,
64
+ className: "closedIcon",
65
+ alt: "Close Icon",
66
+ role: "button",
67
+ tabIndex: 0,
68
+ onKeyDown: e => {
69
+ if (e.key === 'Enter' || e.key === ' ') {
70
+ handleCancel();
71
+ }
72
+ }
73
+ }), /*#__PURE__*/_react.default.createElement("div", null, isVideo ? /*#__PURE__*/_react.default.createElement("video", {
74
+ className: zoomView ? 'zoomActive' : '',
75
+ onDoubleClick: isMobileDevice ? handleZoomModal : null,
76
+ controls: true,
77
+ src: selectedMedia
78
+ }, /*#__PURE__*/_react.default.createElement("track", {
79
+ kind: "captions"
80
+ })) : /*#__PURE__*/_react.default.createElement("img", {
81
+ className: zoomView ? 'zoomActive' : 'modalImg',
82
+ onDoubleClick: isMobileDevice ? handleZoomModal : null,
83
+ src: selectedMedia,
84
+ alt: "Selected",
85
+ role: "presentation"
86
+ }))));
87
+ }
88
+ ZoomMediaComponent.propTypes = {
89
+ isModalOpen: _propTypes.default.bool.isRequired,
90
+ handleCancel: _propTypes.default.func.isRequired,
91
+ selectedMedia: _propTypes.default.string.isRequired,
92
+ closeIcon: _propTypes.default.string.isRequired,
93
+ isVideo: _propTypes.default.bool.isRequired
94
+ };
95
+ var _default = exports.default = ZoomMediaComponent;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.ImgPreviewStyles = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _templateObject;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
11
+ var _default = exports.default = {};
12
+ const ImgPreviewStyles = exports.ImgPreviewStyles = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n.mainStylePreview .selected {\n width: 302px;\n margin: 0 auto;\n height: 56vh;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.singleVideoselected{\n max-width: 360px;\n width: 100%;\n margin: 0 auto;\n height: calc(100vh - 101px);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.imgContainer {\n display: flex;\n overflow-x: auto;\n background-color: #fafafa;\n box-shadow: 0 -2px 8px 0 rgb(0 0 0 / 12%);\n padding: 16px;\n position: absolute;\n bottom: 0;\n right: 0;\n left: 0;\n}\n.imgArea {\n margin-right: 20px;\n list-style: none;\n width: 116px;\n}\n.imgArea img,\n.imgArea video {\n width: 116px !important;\n height: 116px;\n cursor: pointer;\n border-radius: 4px;\n}\n.imgArea video {\n border: 1px solid var(--color-divider);\n}\n.imgArea span {\n display: block;\n text-align: center;\n margin: 4px 0 0;\n color: var(--color-primary-content);\n}\n.mainStylePreview .selected img {\n width: 100%;\n}\n.mainStylePreview .selected img.zoomIn,\n.mismatchDrawer .ovrScroll .deicePic .zoomIn {\n width: auto;\n position: absolute;\n cursor: pointer;\n opacity: 0.8;\n}\n.left-icon {\n position: absolute;\n top: 35%;\n font-size: 30px;\n cursor: pointer;\n left: 40px;\n}\n.right-icon {\n position: absolute;\n top: 35%;\n right: 40px;\n font-size: 30px;\n cursor: pointer;\n}\n.zoomModal .ant-modal-body {\n height: 420px;\n overflow-x: auto;\n margin: 16px 0 0;\n}\n.zoomModal .closedIcon {\n display: none;\n}\n.modalImg {\n width: 100%;\n}\n .imgContainerHeight{\n height: 260px;\n display: flex;\n }\n.imgContainer .selected-thumbnail {\n border: 2px solid var(--color-primary);\n}\n.imgContainer .selected-thumb {\n color: var(--color-primary);\n}\n.imgContainer span {\n width: 116px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.mainStylePreview .selected video {\n height: 260px;\n width: 100%;\n }\n .singleVideoselected img:first-child{\n width: 100%;\n margin: 0 auto;\n display: block;\n }\n .singleVideoselected .zoomIn{\n position: absolute;\n }\n.singleVideoselected video {\n height: 440px;\n width: 100%;\n}\n@media screen and (max-width: 600px) {\n .zoomModal .ant-modal-content {\n position: fixed !important;\n }\n .imgContainerHeight{\n height: auto;}\n}\n\n\n"])));
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = ProfileDataWidget;
7
+ require("core-js/modules/es.string.trim.js");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
11
+ var _styles = require("./styles");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ /* eslint-disable */
14
+
15
+ function ProfileDataWidget(_ref) {
16
+ let {
17
+ image,
18
+ title,
19
+ line1,
20
+ line2,
21
+ line3,
22
+ line4,
23
+ line5,
24
+ alignProfile
25
+ } = _ref;
26
+ // Determine what to display in the icon
27
+ const getIconContent = () => {
28
+ if (!(image !== null && image !== void 0 && image.visible)) return null;
29
+ if (image.imageType === "source" && image.imageFile) {
30
+ return /*#__PURE__*/_react.default.createElement("img", {
31
+ src: image.imageFile,
32
+ alt: "Profile",
33
+ style: {
34
+ width: "100%",
35
+ height: "100%",
36
+ borderRadius: "50%",
37
+ objectFit: "cover"
38
+ }
39
+ });
40
+ }
41
+ if (image.imageType === "letterIcon") {
42
+ const letter = title !== null && title !== void 0 && title.label ? title.label.charAt(0).toUpperCase() : "";
43
+ return letter;
44
+ }
45
+ return null;
46
+ };
47
+ const resolveToken = token => "var(--color-".concat(String(token || "").trim(), ")");
48
+ return /*#__PURE__*/_react.default.createElement(_styles.ProfileDataContainer, {
49
+ alignProfile: alignProfile
50
+ }, (image === null || image === void 0 ? void 0 : image.visible) && /*#__PURE__*/_react.default.createElement(_styles.ProfileIcon, {
51
+ style: {
52
+ backgroundColor: resolveToken(image === null || image === void 0 ? void 0 : image.bgColor),
53
+ color: resolveToken(image === null || image === void 0 ? void 0 : image.color)
54
+ }
55
+ }, getIconContent()), /*#__PURE__*/_react.default.createElement(_styles.ProfileInfo, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
56
+ color: (title === null || title === void 0 ? void 0 : title.color) || "primary-content",
57
+ typography: (title === null || title === void 0 ? void 0 : title.typography) || "type-h3-500",
58
+ className: "company-name"
59
+ }, (title === null || title === void 0 ? void 0 : title.label) || ""), /*#__PURE__*/_react.default.createElement("div", {
60
+ className: "company-details"
61
+ }, line1 && /*#__PURE__*/_react.default.createElement(_Typography.default, {
62
+ color: line1.color || "secondary-content",
63
+ typography: line1.typography || "type-b1-400"
64
+ }, line1.label || ""), line2 && /*#__PURE__*/_react.default.createElement(_Typography.default, {
65
+ color: line2.color || "secondary-content",
66
+ typography: line2.typography || "type-b1-400"
67
+ }, line2.label || ""), line3 && /*#__PURE__*/_react.default.createElement(_Typography.default, {
68
+ color: line3.color || "secondary-content",
69
+ typography: line3.typography || "type-b1-400"
70
+ }, line3.label || ""), line4 && /*#__PURE__*/_react.default.createElement(_Typography.default, {
71
+ color: line4.color || "secondary-content",
72
+ typography: line4.typography || "type-b1-400"
73
+ }, line4.label || ""), line5 && /*#__PURE__*/_react.default.createElement(_Typography.default, {
74
+ color: line5.color || "secondary-content",
75
+ typography: line5.typography || "type-b1-400"
76
+ }, line5.label || ""))));
77
+ }
78
+ ProfileDataWidget.propTypes = {
79
+ image: _propTypes.default.shape({
80
+ visible: _propTypes.default.bool,
81
+ imageType: _propTypes.default.oneOf(["source", "letterIcon"]),
82
+ imageFile: _propTypes.default.string,
83
+ color: _propTypes.default.string,
84
+ bgColor: _propTypes.default.string
85
+ }),
86
+ title: _propTypes.default.shape({
87
+ label: _propTypes.default.string,
88
+ typography: _propTypes.default.string,
89
+ color: _propTypes.default.string
90
+ }),
91
+ line1: _propTypes.default.shape({
92
+ label: _propTypes.default.string,
93
+ typography: _propTypes.default.string,
94
+ color: _propTypes.default.string
95
+ }),
96
+ line2: _propTypes.default.shape({
97
+ label: _propTypes.default.string,
98
+ typography: _propTypes.default.string,
99
+ color: _propTypes.default.string
100
+ }),
101
+ line3: _propTypes.default.shape({
102
+ label: _propTypes.default.string,
103
+ typography: _propTypes.default.string,
104
+ color: _propTypes.default.string
105
+ }),
106
+ line4: _propTypes.default.shape({
107
+ label: _propTypes.default.string,
108
+ typography: _propTypes.default.string,
109
+ color: _propTypes.default.string
110
+ }),
111
+ line5: _propTypes.default.shape({
112
+ label: _propTypes.default.string,
113
+ typography: _propTypes.default.string,
114
+ color: _propTypes.default.string
115
+ }),
116
+ alignProfile: _propTypes.default.string
117
+ };
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ProfileInfo = exports.ProfileIcon = exports.ProfileDataContainer = void 0;
7
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
8
+ var _templateObject, _templateObject2, _templateObject3;
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
11
+ const ProfileDataContainer = exports.ProfileDataContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: flex;\n align-items: flex-start;\n gap: 24px;\n padding: ", ";\n background: ", ";\n border-radius: ", ";\n margin: ", ";\n box-shadow: ", ";\n border: ", ";\n max-width: ", ";\n justify-content: ", ";\n\n @media (max-width: 768px) {\n flex-direction: column;\n align-items: center;\n text-align: center;\n gap: 16px;\n margin: ", ";\n padding: 24px;\n }\n"])), props => props.alignProfile === 'center' ? '32px' : '32px', props => props.alignProfile === 'center' ? 'transparent' : '#ffffff', props => props.alignProfile === 'center' ? '0' : '12px', props => props.alignProfile === 'center' ? '24px auto' : '24px', props => props.alignProfile === 'center' ? 'none' : '0 2px 8px rgba(0, 0, 0, 0.1)', props => props.alignProfile === 'center' ? 'none' : '1px solid #f0f0f0', props => props.alignProfile === 'center' ? '600px' : 'none', props => props.alignProfile === 'center' ? 'center' : 'flex-start', props => props.alignProfile === 'center' ? '16px auto' : '16px');
12
+ const ProfileIcon = exports.ProfileIcon = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n width: 100px;\n height: 100px;\n border-radius: 50%;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 48px;\n font-weight: 700;\n flex-shrink: 0;\n box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);\n\n @media (max-width: 768px) {\n width: 80px;\n height: 80px;\n font-size: 36px;\n }\n"])));
13
+ const ProfileInfo = exports.ProfileInfo = _styledComponents.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n flex: 1;\n display: flex;\n flex-direction: column;\n gap: 12px;\n\n .company-name {\n margin-bottom: 4px;\n font-size: 24px;\n font-weight: 700;\n color: #333333;\n }\n\n .company-details {\n display: flex;\n flex-direction: column;\n gap: 8px;\n\n .ant-typography {\n font-size: 14px;\n line-height: 1.5;\n color: #666666;\n }\n }\n"])));