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,395 @@
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 = CustomPinPatternCaptureWidget;
8
+ require("core-js/modules/web.dom-collections.iterator.js");
9
+ require("core-js/modules/es.json.stringify.js");
10
+ require("core-js/modules/es.string.trim.js");
11
+ require("core-js/modules/es.symbol.description.js");
12
+ var _react = _interopRequireWildcard(require("react"));
13
+ var _propTypes = _interopRequireDefault(require("prop-types"));
14
+ var _reactPatternLock = _interopRequireDefault(require("react-pattern-lock"));
15
+ var _antd = require("antd");
16
+ var _styles = require("./styles");
17
+ var _CustomButton = _interopRequireDefault(require("../../components/oa-component-button/CustomButton"));
18
+ var _CustomInput = _interopRequireDefault(require("../../components/oa-component-input/CustomInput"));
19
+ var _CustomModal = _interopRequireDefault(require("../../components/oa-component-modal/CustomModal"));
20
+ var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
21
+ var _modalImg = _interopRequireDefault(require("../../images/modal-img.svg"));
22
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
23
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
24
+ 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); }
25
+ 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; }
26
+ /**
27
+ * CustomPinPatternCaptureWidget is a component for capturing and verifying a
28
+ * user's PIN or pattern input. It supports both PIN and pattern modes, allowing
29
+ * users to either enter a PIN or draw a pattern. The component handles the
30
+ * input, confirmation, and validation process, providing feedback for mismatches
31
+ * and options to reset the input. It offers configurable options such as showing
32
+ * numbers on pattern dots and disabling grey dots. The component also ensures
33
+ * that the user's PIN or pattern is securely handled and used only for device
34
+ * condition checks during repairs.
35
+ *
36
+ * Props:
37
+ * - type: string indicating the type of input ('pin' or 'pattern').
38
+ * - initialPattern: array for initializing the pattern.
39
+ * - prePoluatedPattern: array for pre-populating the pattern input.
40
+ * - showButtons: boolean for displaying action buttons.
41
+ * - finalPattern: function to handle the final pattern submission.
42
+ * - showNumbersOnDots: boolean for displaying numbers on pattern dots.
43
+ * - greyDisabledDots: boolean for styling disabled dots in grey.
44
+ */
45
+ function CustomPinPatternCaptureWidget(_ref) {
46
+ var _increaseValueIndexby;
47
+ let {
48
+ type,
49
+ initialPattern = [],
50
+ prePoPulatedPattern,
51
+ showButtons,
52
+ finalPatternOrPassword,
53
+ showNumbersOnDots,
54
+ greyDisabledDots,
55
+ heading,
56
+ hideFooter,
57
+ showSequence,
58
+ minAllowedlength,
59
+ onStep2Cancel
60
+ } = _ref;
61
+ const [pin, setPin] = (0, _react.useState)('');
62
+ const decreaseValueIndexbyOne = array => array.map(num => num - 1);
63
+ const increaseValueIndexbyOne = array => {
64
+ const newArray = array;
65
+ return newArray.map(num => num + 1);
66
+ };
67
+ const [form] = _antd.Form.useForm();
68
+ const [confirmPin, setConfirmPin] = (0, _react.useState)('');
69
+ const [pinError, setPinError] = (0, _react.useState)(false);
70
+ const [pattern, setPattern] = (0, _react.useState)((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []);
71
+ const [isPatternConfirmed, setIsPatternConfirmed] = (0, _react.useState)(false);
72
+ const [savedPattern, setSavedPattern] = (0, _react.useState)((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []); // for prepopulating pattern
73
+ const [step, setStep] = (0, _react.useState)('input'); // for managing pattern input/confirm steps
74
+ const [step1Pattern, setStep1Pattern] = (0, _react.useState)([]);
75
+ const [patternMismatch, setPatternMismatch] = (0, _react.useState)(false);
76
+ const [prePopulatedPattern, setprePopulatedPattern] = (0, _react.useState)((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []);
77
+ const [modalInfo, setModalInfo] = (0, _react.useState)({
78
+ heading: '',
79
+ type: '',
80
+ description: ''
81
+ });
82
+ (0, _react.useEffect)(() => {
83
+ setprePopulatedPattern((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []);
84
+ setPattern((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []);
85
+ setSavedPattern((prePoPulatedPattern === null || prePoPulatedPattern === void 0 ? void 0 : prePoPulatedPattern.length) > 0 ? decreaseValueIndexbyOne(prePoPulatedPattern) : []);
86
+ }, [prePoPulatedPattern]);
87
+
88
+ /**
89
+ * Validates the PIN form and handles the submission of the PIN to the parent component.
90
+ * It checks if the PIN length is at least 4 characters, and if the confirm PIN matches the PIN.
91
+ * If the PIN is valid, it calls the finalPatternOrPassword callback with the PIN as the first argument.
92
+ */
93
+ const handlePinSave = () => {
94
+ form.validateFields().then(values => {
95
+ // Passing the form data upto the parent.
96
+ if (values.confirmPin.length < minAllowedlength) {
97
+ form.setFields([{
98
+ name: 'pin',
99
+ errors: ['Pin/Pattern must be at least 4 characters long']
100
+ }]);
101
+ return;
102
+ }
103
+ if (values.pin !== values.confirmPin) {
104
+ form.setFields([{
105
+ name: 'confirmPin',
106
+ errors: ['Confirm Pin/Password does not match']
107
+ }]);
108
+ return;
109
+ }
110
+ finalPatternOrPassword(values.confirmPin, 'pin');
111
+ // This resets the form upon confirm.
112
+ form.resetFields();
113
+ }).catch(error => console.log(error));
114
+ };
115
+
116
+ // Pattern handling
117
+ const handlePatternComplete = patternArray => {};
118
+
119
+ // Pattern handling
120
+ const handleSubmitPatternComplete = () => {
121
+ if (pattern.length < minAllowedlength) {
122
+ setModalInfo({
123
+ heading: 'Short Pattern',
124
+ type: 'short-pattern',
125
+ description: 'The pattern you have entered is too short. Please redraw pattern.'
126
+ });
127
+ setPatternMismatch(true);
128
+ return;
129
+ }
130
+ if (step === 'input') {
131
+ setSavedPattern(pattern);
132
+ setStep('confirm');
133
+ setPattern([]);
134
+ } else if (step === 'confirm') {
135
+ if (JSON.stringify(savedPattern) === JSON.stringify(pattern)) {
136
+ finalPatternOrPassword(increaseValueIndexbyOne(pattern), 'pattern');
137
+ } else {
138
+ setPatternMismatch(true);
139
+ setModalInfo({
140
+ heading: 'Pattern Mismatch',
141
+ type: 'pattern-mismatch',
142
+ description: 'The pattern you have entered is not matching. Please redraw pattern.'
143
+ });
144
+ }
145
+ }
146
+ };
147
+
148
+ /**
149
+ * Resets the state of the pattern input/confirm flow.
150
+ *
151
+ * When called, it resets the following state variables:
152
+ *
153
+ * - `pattern`: resets to an empty array
154
+ * - `patternMismatch`: resets to false
155
+ * - `prepopulatedPattern`: resets to an empty array
156
+ * - `step`: resets to 'input'
157
+ * - `isPatternConfirmed`: resets to false
158
+ * - `savedPattern`: resets to the `initialPattern` prop
159
+ * - `step1Pattern`: resets to an empty array
160
+ *
161
+ * This is useful when the user wants to start over with a new pattern.
162
+ */
163
+ const handleReset = () => {
164
+ setPattern([]);
165
+ setModalInfo({
166
+ heading: '',
167
+ type: '',
168
+ description: ''
169
+ });
170
+ setPatternMismatch(false);
171
+ setprePopulatedPattern([]);
172
+ setStep('input');
173
+ setIsPatternConfirmed(false);
174
+ setSavedPattern(initialPattern); // for prepopulating pattern
175
+ setStep1Pattern([]);
176
+ };
177
+ // Helper to render numbers on dots
178
+ const renderNumbersOnDots = () => {
179
+ if (!showNumbersOnDots) return null;
180
+ const gridSize = 3; // Assuming 3x3 grid
181
+ const numbers = Array.from({
182
+ length: gridSize * gridSize
183
+ }, (_, index) => index + 1);
184
+ return /*#__PURE__*/_react.default.createElement("div", {
185
+ className: "numbers-overlay"
186
+ }, numbers.map((num, index) => /*#__PURE__*/_react.default.createElement("span", {
187
+ className: pattern.indexOf(index) > -1 ? 'activedotoverlay dot-number' : 'dot-number',
188
+ key: num
189
+ }, /*#__PURE__*/_react.default.createElement("span", null, num))));
190
+ };
191
+
192
+ /**
193
+ * Helper function to check if a field has at least the minimum allowed length.
194
+ * If the length is less than the minimum allowed length, it sets an error on the field.
195
+ * @param {String} field - The name of the field to check.
196
+ */
197
+ const checkIfMinLength = field => {
198
+ if (form.getFieldValue(field).length && form.getFieldValue(field).length < minAllowedlength) {
199
+ form.setFields([{
200
+ name: field,
201
+ errors: ['Pin/Pattern must be at least 4 characters long']
202
+ }]);
203
+ }
204
+ };
205
+ /**
206
+ * Cancels the mismatch modal and resets the state.
207
+ *
208
+ * This callback is passed to the mismatch modal and is called when the user clicks the cancel button.
209
+ *
210
+ * When called, it resets the following state variables:
211
+ * - `patternMismatch`: resets to false
212
+ * - `step`: resets to 'input'
213
+ * - `pattern`: resets to an empty array
214
+ * - `isPatternConfirmed`: resets to false
215
+ * - `savedPattern`: resets to the `initialPattern` prop
216
+ * - `step1Pattern`: resets to an empty array
217
+ *
218
+ * This is useful when the user wants to cancel the mismatch modal and start over with a new pattern.
219
+ */
220
+ const onCancelOfMisMatchModal = () => {
221
+ setPatternMismatch(false);
222
+ setModalInfo({
223
+ heading: '',
224
+ type: '',
225
+ description: ''
226
+ });
227
+ setStep('input');
228
+ setPattern([]);
229
+ setIsPatternConfirmed(false);
230
+ setSavedPattern(initialPattern); // for prepopulating pattern
231
+ setStep1Pattern([]);
232
+ };
233
+ // const onCancelOfShortPatternModal = () => {
234
+ // setPattern([]);
235
+ // setPatternMismatch(false);
236
+ // setModalInfo({
237
+ // heading: '',
238
+ // type: '',
239
+ // description: '',
240
+ // })
241
+ // };
242
+
243
+ return /*#__PURE__*/_react.default.createElement(_styles.StyleContainer, null, type === 'pin' ? /*#__PURE__*/_react.default.createElement(_antd.Form, {
244
+ form: form,
245
+ layout: "vertical"
246
+ }, /*#__PURE__*/_react.default.createElement("div", {
247
+ className: "flexAlignPattern"
248
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
249
+ className: "padding-bottom-32 alignLeft"
250
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
251
+ className: "type-t2-700",
252
+ color: "primary-content"
253
+ }, heading.length === 0 ? 'Enter Pin/Password' : heading)), /*#__PURE__*/_react.default.createElement(_antd.Form.Item, {
254
+ name: "pin",
255
+ className: "margin-bottom-32",
256
+ rules: [{
257
+ required: true,
258
+ message: 'Required'
259
+ }]
260
+ }, /*#__PURE__*/_react.default.createElement("div", {
261
+ className: "padding-bottom-4"
262
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
263
+ color: "primary-content"
264
+ }, "Enter Pin/Password", /*#__PURE__*/_react.default.createElement(_Typography.default, {
265
+ color: "negative"
266
+ }, "*"))), /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
267
+ onBlur: e => {
268
+ const trimmedValue = e.target.value.trim();
269
+ form.setFieldsValue({
270
+ pin: trimmedValue
271
+ });
272
+ checkIfMinLength('pin');
273
+ }
274
+ })), /*#__PURE__*/_react.default.createElement(_antd.Form.Item, {
275
+ name: "confirmPin",
276
+ className: "margin-bottom-32",
277
+ rules: [{
278
+ required: true,
279
+ message: 'Required'
280
+ }]
281
+ }, /*#__PURE__*/_react.default.createElement("div", {
282
+ className: "padding-bottom-4"
283
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
284
+ color: "primary-content"
285
+ }, "Re-enter Pin/Password", /*#__PURE__*/_react.default.createElement(_Typography.default, {
286
+ color: "negative"
287
+ }, "*"))), /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
288
+ onBlur: e => {
289
+ const trimmedValue = e.target.value.trim();
290
+ form.setFieldsValue({
291
+ confirmPin: trimmedValue
292
+ });
293
+ checkIfMinLength('confirmPin');
294
+ }
295
+ }))), /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
296
+ type: "primary",
297
+ onClick: handlePinSave,
298
+ label: "Save",
299
+ size: "large"
300
+ }))) : /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
301
+ className: "flexAlignPattern"
302
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
303
+ className: "padding-bottom-8 padding-top-48"
304
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
305
+ color: "primary-content",
306
+ className: "type-t2-700"
307
+ }, heading.length === 0 && (step === 'input' ? 'Draw lock screen pattern' : 'Draw lock screen pattern again'), heading && heading.length > 0 ? heading : '')), showSequence && /*#__PURE__*/_react.default.createElement(_Typography.default, {
308
+ className: "type-b3-400",
309
+ color: "placeholder-text"
310
+ }, "Sequence: \xA0", (_increaseValueIndexby = increaseValueIndexbyOne(pattern)) === null || _increaseValueIndexby === void 0 ? void 0 : _increaseValueIndexby.map((num, i) => {
311
+ const isLastElement = i === pattern.length - 1; // Check if it's the last element
312
+
313
+ if (isLastElement) {
314
+ return /*#__PURE__*/_react.default.createElement("span", {
315
+ key: num
316
+ }, num); // Use 'num' as key, no arrow for the last element
317
+ }
318
+ return /*#__PURE__*/_react.default.createElement("span", {
319
+ key: num
320
+ }, num, /*#__PURE__*/_react.default.createElement("em", null, "\u2192"), ' ');
321
+ }))), /*#__PURE__*/_react.default.createElement("div", {
322
+ className: greyDisabledDots ? 'greyDisabledDots' : ''
323
+ }, /*#__PURE__*/_react.default.createElement("div", {
324
+ className: "posRelative"
325
+ }, /*#__PURE__*/_react.default.createElement(_reactPatternLock.default, {
326
+ width: 300,
327
+ size: 3,
328
+ connectorThickness: 2,
329
+ allowJumping: true,
330
+ path: (prePopulatedPattern === null || prePopulatedPattern === void 0 ? void 0 : prePopulatedPattern.length) > 0 ? prePopulatedPattern : pattern // Prepopulate pattern
331
+ ,
332
+ onChange: patternArray => setPattern(patternArray),
333
+ onFinish: () => handlePatternComplete(pattern),
334
+ disabled: (prePopulatedPattern === null || prePopulatedPattern === void 0 ? void 0 : prePopulatedPattern.length) > 0
335
+ }), renderNumbersOnDots())), /*#__PURE__*/_react.default.createElement("div", null, showButtons && /*#__PURE__*/_react.default.createElement("div", {
336
+ className: "buttonAlign"
337
+ }, /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
338
+ type: "text-only",
339
+ onClick: step === 'confirm' ? () => {
340
+ handleReset();
341
+ onStep2Cancel();
342
+ } : handleReset,
343
+ label: step === 'confirm' ? 'Cancel' : 'Reset',
344
+ size: "large"
345
+ }), /*#__PURE__*/_react.default.createElement(_CustomButton.default, {
346
+ type: "primary",
347
+ onClick: handleSubmitPatternComplete,
348
+ disabled: !(pattern !== null && pattern !== void 0 && pattern.length) || (prePopulatedPattern === null || prePopulatedPattern === void 0 ? void 0 : prePopulatedPattern.length) > 0,
349
+ label: step === 'confirm' ? 'Save' : 'Next',
350
+ size: "large"
351
+ })), !hideFooter && /*#__PURE__*/_react.default.createElement("div", {
352
+ className: "textInfo"
353
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
354
+ className: "type-b3-400",
355
+ color: "secondary-content"
356
+ }, "Note: Your device PIN/Pattern is 100% secure with us. It will only be used to check your device condition during repair."))))), /*#__PURE__*/_react.default.createElement(_CustomModal.default, {
357
+ buttonConfig: [{
358
+ callback: onCancelOfMisMatchModal,
359
+ label: 'Redraw pattern',
360
+ type: 'primary'
361
+ }],
362
+ imgSrc: _modalImg.default,
363
+ open: patternMismatch,
364
+ onCancel: handleReset,
365
+ title: modalInfo === null || modalInfo === void 0 ? void 0 : modalInfo.heading
366
+ }, modalInfo === null || modalInfo === void 0 ? void 0 : modalInfo.description));
367
+ }
368
+ CustomPinPatternCaptureWidget.propTypes = {
369
+ type: _propTypes.default.string,
370
+ initialPattern: _propTypes.default.array,
371
+ prePoPulatedPattern: _propTypes.default.array,
372
+ showButtons: _propTypes.default.bool,
373
+ finalPatternOrPassword: _propTypes.default.func,
374
+ showNumbersOnDots: _propTypes.default.bool,
375
+ greyDisabledDots: _propTypes.default.bool,
376
+ heading: _propTypes.default.string,
377
+ hideFooter: _propTypes.default.bool,
378
+ showSequence: _propTypes.default.bool,
379
+ minAllowedlength: _propTypes.default.number,
380
+ onStep2Cancel: _propTypes.default.func
381
+ };
382
+ CustomPinPatternCaptureWidget.defaultProps = {
383
+ type: 'pattern',
384
+ initialPattern: '',
385
+ prePoPulatedPattern: [],
386
+ showButtons: true,
387
+ finalPatternOrPassword: () => {},
388
+ showNumbersOnDots: false,
389
+ greyDisabledDots: false,
390
+ heading: '',
391
+ hideFooter: false,
392
+ showSequence: true,
393
+ minAllowedlength: 0,
394
+ onStep2Cancel: () => {}
395
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.StyleContainer = 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 StyleContainer = exports.StyleContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n max-width: 600px;\n width: 100%;\n margin: 0 auto;\n text-align: center;\n position: relative;\n.react-pattern-lock__pattern-wrapper.error .react-pattern-lock__point-wrapper.selected .react-pattern-lock__point .react-pattern-lock__point-inner {\n background: black !important;\n}\n .pattern-container {\n position: relative;\n }\n .numbers-overlay {\n position: absolute;\n top: 0;\n left: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-wrap: wrap;\n right: 0;\n width: 300px;\n height: 300px;\n margin: 0 auto;\n }\n .dot-number {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 100px;\n height: 100px;\n }\n .react-pattern-lock__point-wrapper{\n z-index: 9;\n }\n.flexAlignPattern{\n display: flex;\n flex-direction: column;\n justify-content: space-between;\n height: calc(100vh - 0px);\n gap: 24px;\n}\n .flexAlignPattern .ant-form-item{\n text-align: left;\n }\n .ant-form-item-explain-error{\n color: var(--color-negative) !important;\n }\n .cancelIcon{\n position: absolute;\n right: 16px;\n cursor: pointer;\n }\n.react-pattern-lock__pattern-wrapper .selected .react-pattern-lock__point .react-pattern-lock__point-inner {\n background: #0275DA !important;\n min-width: 20px !important;\n min-height: 20px !important;\n}\n .react-pattern-lock__point-inner{\n background: #0275DA;\n min-width: 20px !important;\n min-height: 20px !important;\n }\n\n .posRelative{\n position: relative;\n }\n .disabled .react-pattern-lock__point .react-pattern-lock__point-inner {\n background: var(--color-placeholder-text) !important;\n min-width: 12px !important;\n min-height: 12px !important;\n z-index: 2;\n}\n .greyDisabledDots .react-pattern-lock__point-inner{\n background: var(--color-placeholder-text);\n } \n .dot-number span{\n width: 16px;\n height: 16px;\n background: var(--color-divider);\n z-index: 2;\n font-size: 11px;\n font-style: normal;\n font-weight: 700;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 50%;\n color: #717171;\n line-height: 0;\n z-index: 9;\n }\n .activedotoverlay span{\n background: #0275DA;\n color: #fff;\n }\n.react-pattern-lock__pattern-wrapper.error .react-pattern-lock__connector-wrapper .react-pattern-lock__connector {\n background: black !important;\n}\n .buttonAlign{\n display: flex;\n justify-content: space-between;\n gap: 16px;\n padding: 0 24px;\n }\n .buttonAlign button{\n width: 100%;\n }\n .textInfo{\n padding: 12px;\n border-top: 1px solid #D9D9D9;\n text-align: left;\n margin: 32px 0 0;\n text-align: left;\n }\n .alignLeft{\n text-align: left;\n }\n .selected .react-pattern-lock__point{\n width: 28px !important;\n height: 28px !important;\n background: #DEF1FB !important;\n border-radius: 50% !important;\n }\n.react-pattern-lock__pattern-wrapper{\nmargin: 0 auto;}\n.react-pattern-lock__pattern-wrapper .react-pattern-lock__connector-wrapper .react-pattern-lock__connector {\n background: #0275DA !important;\n}\n @media screen and (-webkit-min-device-pixel-ratio: 0) {\n @supports (-webkit-overflow-scrolling: touch) {\n .react-pattern-lock__pattern-wrapper{\n width: 274px !important;\n height: 274px !important;\n }\n}\n }\n"])));
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.assign.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ require("core-js/modules/es.array.reduce.js");
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
12
+ var _ItemInfoCardWidget = _interopRequireDefault(require("./ItemInfoCardWidget"));
13
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
14
+ var _ColorVariablesMap = _interopRequireDefault(require("../../global-css/ColorVariablesMap"));
15
+ var _styles = require("./styles");
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } // widgets/oa-widget-item-info-card-list/InfoCardListWidget.js
18
+ const SUCCESS_GREEN = '#00875A';
19
+ function InfoCardListWidget(_ref) {
20
+ let {
21
+ items,
22
+ bordered,
23
+ customStyle
24
+ } = _ref;
25
+ const total = items.reduce((sum, item) => sum + Number(item.props.value || 0), 0);
26
+ return /*#__PURE__*/_react.default.createElement(_styles.Container, {
27
+ bordered: bordered,
28
+ style: customStyle
29
+ }, items.map(item => /*#__PURE__*/_react.default.createElement(_ItemInfoCardWidget.default, _extends({
30
+ key: item.key
31
+ }, item.props))), /*#__PURE__*/_react.default.createElement(_styles.TotalRow, null, /*#__PURE__*/_react.default.createElement(_Typography.default, {
32
+ typography: "type-t1-500",
33
+ style: {
34
+ color: _ColorVariablesMap.default['--color-positive']
35
+ }
36
+ }, "Order Total"), /*#__PURE__*/_react.default.createElement(_Typography.default, {
37
+ typography: "type-t1-500",
38
+ style: {
39
+ color: _ColorVariablesMap.default['--color-positive']
40
+ }
41
+ }, "\u20B9", total.toLocaleString())));
42
+ }
43
+ InfoCardListWidget.propTypes = {
44
+ /** all of your info-card items (must have .key and .props.value) */
45
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
46
+ key: _propTypes.default.string.isRequired,
47
+ props: _propTypes.default.shape({
48
+ value: _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.string]).isRequired
49
+ }).isRequired
50
+ })).isRequired,
51
+ /** if true, the outer container gets a light grey border */
52
+ bordered: _propTypes.default.bool,
53
+ /** optional style object you can use to tweak margin/layout */
54
+ customStyle: _propTypes.default.object
55
+ };
56
+ InfoCardListWidget.defaultProps = {
57
+ bordered: false,
58
+ customStyle: {}
59
+ };
60
+ var _default = exports.default = InfoCardListWidget;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ require("core-js/modules/es.symbol.description.js");
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _propTypes = _interopRequireDefault(require("prop-types"));
10
+ var _styles = require("./styles");
11
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ /* eslint-disable */
14
+
15
+ /**
16
+ * A simple info card that displays an image, title, subtitle, description, and value.
17
+ */
18
+ function ItemInfoCardWidget(_ref) {
19
+ let {
20
+ title,
21
+ value,
22
+ subTitle,
23
+ description,
24
+ image,
25
+ subText,
26
+ subDescription
27
+ } = _ref;
28
+ return /*#__PURE__*/_react.default.createElement(_styles.ItemInfoCard, null, /*#__PURE__*/_react.default.createElement("div", {
29
+ className: "productBox"
30
+ }, /*#__PURE__*/_react.default.createElement("div", {
31
+ className: "iconAndtextSec"
32
+ }, image && /*#__PURE__*/_react.default.createElement("div", {
33
+ className: "productIcon"
34
+ }, /*#__PURE__*/_react.default.createElement("img", {
35
+ src: image,
36
+ alt: title,
37
+ className: "product-image"
38
+ })), /*#__PURE__*/_react.default.createElement("div", {
39
+ className: "product-info"
40
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
41
+ typography: "type-t2-700",
42
+ color: "primary-content"
43
+ }, title), subTitle && /*#__PURE__*/_react.default.createElement("div", {
44
+ className: "margin-top-4 margin-bottom-12"
45
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
46
+ typography: "type-b2-400",
47
+ color: "secondary-content"
48
+ }, subTitle)), description && /*#__PURE__*/_react.default.createElement(_Typography.default, {
49
+ typography: "type-b2-400",
50
+ color: "secondary-content"
51
+ }, description), subDescription && /*#__PURE__*/_react.default.createElement("div", {
52
+ className: "margion-top-4"
53
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
54
+ typography: "type-b2-400",
55
+ color: "secondary-content"
56
+ }, subDescription)))), /*#__PURE__*/_react.default.createElement(_Typography.default, {
57
+ typography: "type-t2-700",
58
+ color: "primary-content"
59
+ }, "\u20B9", value), subText && /*#__PURE__*/_react.default.createElement(_Typography.default, {
60
+ typography: "type-button-500",
61
+ color: "secondary-content"
62
+ }, subText)));
63
+ }
64
+ ItemInfoCardWidget.propTypes = {
65
+ image: _propTypes.default.string,
66
+ title: _propTypes.default.string.isRequired,
67
+ value: _propTypes.default.number.isRequired,
68
+ subTitle: _propTypes.default.string,
69
+ subText: _propTypes.default.string,
70
+ description: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number])
71
+ };
72
+ ItemInfoCardWidget.defaultProps = {
73
+ image: null,
74
+ subTitle: "",
75
+ description: ""
76
+ };
77
+ var _default = exports.default = ItemInfoCardWidget;
@@ -0,0 +1,50 @@
1
+ .product-card {
2
+ display: flex;
3
+ align-items: flex-start;
4
+ gap: 12px;
5
+ padding: 12px;
6
+ border-radius: 12px;
7
+ background-color: #f9f9f9;
8
+ width: 100%;
9
+ max-width: 480px;
10
+ }
11
+
12
+ .product-image {
13
+ width: 64px;
14
+ height: 64px;
15
+ border-radius: 8px;
16
+ object-fit: cover;
17
+ }
18
+
19
+ .product-info {
20
+ flex: 1;
21
+ }
22
+
23
+ .product-title-price {
24
+ display: flex;
25
+ justify-content: space-between;
26
+ align-items: center;
27
+ }
28
+
29
+ .product-title {
30
+ font-size: 16px;
31
+ font-weight: 600;
32
+ margin: 0;
33
+ }
34
+
35
+ .product-price {
36
+ font-weight: bold;
37
+ color: #111;
38
+ }
39
+
40
+ .product-specs {
41
+ color: #666;
42
+ margin-top: 2px;
43
+ }
44
+
45
+ .product-sku {
46
+ color: #999;
47
+ font-size: 12px;
48
+ margin-top: 2px;
49
+ }
50
+
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = exports.TotalRow = exports.ItemInfoCard = exports.Container = 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 Container = exports.Container = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n background: #ffffff;\n border-radius: 12px;\n display: flex;\n flex-direction: column;\n gap: 12px;\n"])));
12
+ const TotalRow = exports.TotalRow = _styledComponents.default.div(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["\n display: flex;\n justify-content: space-between;\n align-items: flex-start;\n border-top: 1px solid #e0e0e0;\n padding: 16px 16px 0 16px;\n margin: 0 0 0 -16px;\n width: calc(100% + 32px);\n\n\n .gstAndCost{display: flex;\n flex-direction: column;\n align-items: flex-end;\n justify-content: center;}\n"])));
13
+ const ItemInfoCard = exports.ItemInfoCard = _styledComponents.default.div(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["\n.productBox{width:100%; display:flex; flex-direction:row; justify-content: space-between; padding:12px 0;}\n.productIcon{border-radius: 12px; background: #F6F6F6; width:80px; height:80px; display:flex; align-items:center; justify-content:center;}\n.productIcon img{height:64px;}\n.iconAndtextSec{display:flex; flex-direction:row; gap:12px; width:calc(100% - 88px);}\n.product-info {display: flex; flex-direction: column; width: calc(100% - 92px);}\n"])));
14
+ var _default = exports.default = {};