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,461 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.description.js");
4
+ require("core-js/modules/es.weak-map.js");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+ require("core-js/modules/web.dom-collections.iterator.js");
10
+ require("core-js/modules/es.array.includes.js");
11
+ require("core-js/modules/es.string.includes.js");
12
+ require("core-js/modules/es.regexp.exec.js");
13
+ require("core-js/modules/es.regexp.test.js");
14
+ require("core-js/modules/es.parse-int.js");
15
+ require("core-js/modules/es.string.trim.js");
16
+ require("core-js/modules/es.array.reduce.js");
17
+ require("core-js/modules/es.parse-float.js");
18
+ var _react = _interopRequireWildcard(require("react"));
19
+ var _propTypes = _interopRequireDefault(require("prop-types"));
20
+ var _antd = require("antd");
21
+ var _icons = require("@ant-design/icons");
22
+ var _InfoOutlined = _interopRequireDefault(require("@material-ui/icons/InfoOutlined"));
23
+ var _CustomDrawer = _interopRequireDefault(require("../../components/oa-component-drawer/CustomDrawer"));
24
+ var _CustomInput = _interopRequireDefault(require("../../components/oa-component-input/CustomInput"));
25
+ var _Typography = _interopRequireDefault(require("../../components/oa-component-typography/Typography"));
26
+ var _CustomCheckBox = _interopRequireDefault(require("../../components/oa-component-checkbox/CustomCheckBox"));
27
+ var _CustomInfo = _interopRequireDefault(require("../../components/oa-component-info/CustomInfo"));
28
+ var _styles = require("../oa-widget-spare-part/styles");
29
+ var _MaterialIcon = _interopRequireDefault(require("../../components/oa-component-icons/MaterialIcon"));
30
+ var _CustomNotification = _interopRequireDefault(require("../../components/oa-component-notification/CustomNotification"));
31
+ var _styles2 = require("./styles");
32
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
+ 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); }
34
+ 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; }
35
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
36
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
37
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
38
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
39
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
40
+ const {
41
+ Panel
42
+ } = _antd.Collapse;
43
+
44
+ /**
45
+ * A collapsible widget for adding spare parts.
46
+ *
47
+ * This component allows users to add spare parts, including specifying the cost, discount, and HSN code for each part.
48
+ * It provides functionality for searching, selecting, and submitting spare parts.
49
+ * The component also handles notifications and validations for the added spare part information.
50
+ */
51
+ function AddSparePartCollapseWidget(_ref) {
52
+ let {
53
+ items,
54
+ onSubmit,
55
+ onClose,
56
+ open,
57
+ selectedItems,
58
+ disableDiscount,
59
+ disableHsn
60
+ } = _ref;
61
+ const [filteredItems, setFilteredItems] = (0, _react.useState)([]);
62
+ const [selectedItemIds, setSelectedItemIds] = (0, _react.useState)(new Set());
63
+ const [formValues, setFormValues] = (0, _react.useState)({});
64
+ const [searchValue, setSearchValue] = (0, _react.useState)('');
65
+ const [activeKey, setActiveKey] = (0, _react.useState)([]);
66
+ const notificationRef = (0, _react.useRef)(null);
67
+ const itemRefs = (0, _react.useRef)({});
68
+ const openNotification = parameters => {
69
+ var _notificationRef$curr;
70
+ return notificationRef === null || notificationRef === void 0 || (_notificationRef$curr = notificationRef.current) === null || _notificationRef$curr === void 0 ? void 0 : _notificationRef$curr.openNotification(parameters);
71
+ };
72
+ (0, _react.useEffect)(() => {
73
+ const initialFormValues = {};
74
+ const initialSelectedItems = new Set();
75
+ selectedItems.forEach(item => {
76
+ initialFormValues[item.scopeId] = {
77
+ cost: item.cost !== null && item.cost !== undefined ? item.cost : '',
78
+ discount: item.discount !== null && item.discount !== undefined ? item.discount : '',
79
+ hsnId: item.hsnId || ''
80
+ };
81
+ initialSelectedItems.add(item.scopeId);
82
+ });
83
+ setFormValues(initialFormValues);
84
+ setSelectedItemIds(initialSelectedItems);
85
+ setActiveKey(Array.from(initialSelectedItems).map(String)); // Set initially selected items as active keys
86
+ }, [selectedItems]);
87
+ (0, _react.useEffect)(() => {
88
+ var _selectedItems$map$fi, _items$filter;
89
+ const sortedItems = [...((_selectedItems$map$fi = selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.map(item => items && items.find(i => i.id === item.scopeId)).filter(Boolean)) !== null && _selectedItems$map$fi !== void 0 ? _selectedItems$map$fi : []), ...((_items$filter = items === null || items === void 0 ? void 0 : items.filter(item => !selectedItems.some(selected => selected.scopeId === item.id))) !== null && _items$filter !== void 0 ? _items$filter : [])];
90
+ setFilteredItems(sortedItems);
91
+ }, [items, selectedItems]);
92
+
93
+ /**
94
+ * Handles changes in the search input.
95
+ *
96
+ * When the search input value is cleared, it resets the filtered items to the original list of items.
97
+ * When the search input value is not empty, it filters the items based on the search value.
98
+ *
99
+ * @param {React.ChangeEvent<HTMLInputElement>} event - The event triggered by changing the search input value.
100
+ */
101
+ const handleSearchChange = event => {
102
+ const {
103
+ value
104
+ } = event.target;
105
+ setSearchValue(value);
106
+ if (!value) {
107
+ const sortedItems = [...selectedItems.map(selectedItem => items && items.find(i => i.id === selectedItem.scopeId)).filter(Boolean), ...items.filter(item => !selectedItems.some(selected => selected.scopeId === item.id))];
108
+ setFilteredItems(sortedItems);
109
+ } else {
110
+ const val = items.filter(item => item.name.toLowerCase().includes(value.toLowerCase()));
111
+ setFilteredItems(val);
112
+ }
113
+ };
114
+
115
+ /**
116
+ * Handles item selection/deselection.
117
+ *
118
+ * When an item is selected, it adds the item to the set of selected items and expands only the newly selected item's panel.
119
+ * When an item is deselected, it removes the item from the set of selected items and collapses all panels.
120
+ *
121
+ * It also clears the search value on item selection.
122
+ *
123
+ * @param {number} itemId - The ID of the item to be selected/deselected.
124
+ */
125
+ const onSelectItem = itemId => {
126
+ const newSelectedItems = new Set(selectedItemIds);
127
+ if (newSelectedItems.has(itemId)) {
128
+ newSelectedItems.delete(itemId);
129
+ setActiveKey([]); // Collapse all panels when an item is deselected
130
+ } else {
131
+ newSelectedItems.add(itemId);
132
+ setActiveKey([String(itemId)]); // Expand only the newly selected item's panel
133
+ }
134
+ setSelectedItemIds(newSelectedItems);
135
+ setSearchValue(''); // Clear search value on item selection
136
+
137
+ const sortedItems = [...selectedItems.map(selectedItem => items && items.find(i => i.id === selectedItem.scopeId)).filter(Boolean), ...items.filter(item => !selectedItems.some(selected => selected.scopeId === item.id))];
138
+ setFilteredItems(sortedItems);
139
+ setTimeout(() => {
140
+ if (itemRefs.current[itemId]) {
141
+ itemRefs.current[itemId].scrollIntoView({
142
+ behavior: 'smooth',
143
+ block: 'center'
144
+ });
145
+ }
146
+ }, 0);
147
+ };
148
+
149
+ /**
150
+ * Checks if a given value is numeric.
151
+ *
152
+ * This function verifies if the provided value is a numeric string,
153
+ * optionally allowing two decimal places. An empty string is also
154
+ * considered valid, allowing for clearing inputs.
155
+ *
156
+ * @param {string} value - The value to check.
157
+ * @returns {boolean} - Returns true if the value is numeric or empty, otherwise false.
158
+ */
159
+
160
+ const isNumeric = value => {
161
+ if (value === '') return true;
162
+ return /^\d+(\.\d{0,2})?$/.test(value);
163
+ };
164
+
165
+ /**
166
+ * Handles changes in the fields of the items.
167
+ *
168
+ * When a field of an item is changed, it updates the form values with the new value.
169
+ * It also checks if the entered value is numeric and if not, it displays an error notification.
170
+ *
171
+ * @param {number} itemId - The ID of the item to update.
172
+ * @param {string} field - The name of the field to update.
173
+ * @param {string|number} value - The new value of the field.
174
+ */
175
+ const onFieldChange = (itemId, field, value) => {
176
+ if (field === 'hsnId' || (field === 'discount' || field === 'cost') && isNumeric(value)) {
177
+ if (field === 'discount') {
178
+ var _formValues$itemId;
179
+ if (parseInt((_formValues$itemId = formValues[itemId]) === null || _formValues$itemId === void 0 ? void 0 : _formValues$itemId.cost, 10) < parseInt(value, 10)) {
180
+ openNotification({
181
+ title: 'Error',
182
+ description: 'Discount cannot be greater than Cost.',
183
+ type: 'failure'
184
+ });
185
+ return;
186
+ }
187
+ }
188
+ const updatedFormValues = _objectSpread(_objectSpread({}, formValues), {}, {
189
+ [itemId]: _objectSpread(_objectSpread({}, formValues[itemId]), {}, {
190
+ [field]: value
191
+ })
192
+ });
193
+ setFormValues(updatedFormValues);
194
+ } else {
195
+ // openNotification({
196
+ // title: 'Error',
197
+ // description: 'Please enter only numeric values 146.',
198
+ // type: 'failure',
199
+ // });
200
+ }
201
+ };
202
+
203
+ /**
204
+ * Handles key presses on numeric fields.
205
+ *
206
+ * When a non-numeric key is pressed, it prevents the default action and displays an error notification.
207
+ *
208
+ * @param {React.KeyboardEvent} event - The event triggered by the key press.
209
+ */
210
+ const handleKeyPress = event => {
211
+ if (!/[\d.]/.test(event.key) || event.key === '.' && event.target.value.includes('.')) {
212
+ event.preventDefault();
213
+ openNotification({
214
+ title: 'Error',
215
+ description: 'Please enter only numeric values.',
216
+ type: 'failure'
217
+ });
218
+ }
219
+ };
220
+ const handlePaste = e => {
221
+ var _e$clipboardData$getD, _e$clipboardData;
222
+ const pastedData = (_e$clipboardData$getD = e === null || e === void 0 || (_e$clipboardData = e.clipboardData) === null || _e$clipboardData === void 0 || (_e$clipboardData = _e$clipboardData.getData('Text')) === null || _e$clipboardData === void 0 ? void 0 : _e$clipboardData.trim()) !== null && _e$clipboardData$getD !== void 0 ? _e$clipboardData$getD : '';
223
+
224
+ // Allow only numbers with optional decimal part (up to 2 digits after .)
225
+ const validDecimalPattern = /^\d+(\.\d{0,2})?$/;
226
+ if (!validDecimalPattern.test(pastedData)) {
227
+ e.preventDefault();
228
+ openNotification({
229
+ title: 'Invalid Paste',
230
+ description: 'Only numeric values with up to 2 decimal places are allowed.',
231
+ type: 'failure'
232
+ });
233
+ }
234
+ };
235
+
236
+ /**
237
+ * Handles the submission of the spare parts information.
238
+ *
239
+ * First, it checks if at least one scope is selected. If not, it displays an error notification.
240
+ * Then, it constructs the data to submit by combining the selected scope IDs with the corresponding form values.
241
+ * It also checks if all mandatory fields are filled. If not, it displays an error notification.
242
+ * Finally, it calls the passed onSubmit function with the data to submit.
243
+ */
244
+ const handleSubmission = () => {
245
+ if (selectedItemIds.size === 0) {
246
+ openNotification({
247
+ title: 'Error',
248
+ description: 'Please select at least one scope.',
249
+ type: 'failure'
250
+ });
251
+ return;
252
+ }
253
+ const toSubmit = Array.from(selectedItemIds).reduce((acc, itemId) => {
254
+ acc.push(_objectSpread({
255
+ scopeId: itemId
256
+ }, formValues[itemId]));
257
+ return acc;
258
+ }, []);
259
+ const allFieldsFilled = toSubmit.every(item => {
260
+ const mandatoryFields = ['cost', 'discount', 'hsnId'].filter(field => {
261
+ if (disableDiscount && field === 'discount') return false;
262
+ if (disableHsn && field === 'hsnId') return false;
263
+ return true;
264
+ });
265
+ return mandatoryFields.every(field => item[field] !== '' && item[field] !== null && item[field] !== undefined);
266
+ });
267
+ if (!allFieldsFilled) {
268
+ openNotification({
269
+ title: 'Error',
270
+ description: 'Details missing! Please check and complete all spare part information',
271
+ type: 'failure'
272
+ });
273
+ return;
274
+ }
275
+ toSubmit.every(item => {
276
+ const cost = parseFloat(item.cost);
277
+ const discount = parseFloat(item.discount);
278
+ const field = items.find(f => f.id === item.scopeId);
279
+ const fieldName = field ? field.name : "ScopeId ".concat(item.scopeId);
280
+ if (discount > cost) {
281
+ openNotification({
282
+ title: 'Error',
283
+ description: "Discount cannot be greater than cost for ".concat(fieldName),
284
+ type: 'failure'
285
+ });
286
+ return false;
287
+ }
288
+ return true;
289
+ });
290
+ onSubmit(toSubmit);
291
+ };
292
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_CustomDrawer.default, {
293
+ buttonConfig: [{
294
+ callback: handleSubmission,
295
+ label: 'Save',
296
+ type: 'primary',
297
+ htmlType: 'submit'
298
+ }],
299
+ onClose: onClose,
300
+ open: open,
301
+ title: "Add spare part",
302
+ width: 480,
303
+ className: "paddingBot"
304
+ }, /*#__PURE__*/_react.default.createElement(_styles.MainStyles, null, /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
305
+ placeholder: "Search spare part",
306
+ onChange: handleSearchChange,
307
+ value: searchValue,
308
+ style: {
309
+ marginBottom: 16
310
+ },
311
+ prefix: /*#__PURE__*/_react.default.createElement(_icons.SearchOutlined, null)
312
+ }), /*#__PURE__*/_react.default.createElement(_antd.Collapse, {
313
+ accordion: true,
314
+ activeKey: activeKey,
315
+ onChange: setActiveKey
316
+ }, filteredItems.map(item => {
317
+ var _formValues$item$id, _formValues$item$id2, _formValues$item$id3, _formValues$item$id4, _formValues$item$id5, _formValues$item$id6, _formValues$item$id7;
318
+ const isSelected = selectedItemIds.has(item.id);
319
+ const selectedItem = selectedItems && selectedItems.find(i => i.scopeId === item.id);
320
+ const isItemDisabled = selectedItem ? selectedItem.disableSelected : false;
321
+ return /*#__PURE__*/_react.default.createElement(Panel, {
322
+ header: /*#__PURE__*/_react.default.createElement("div", {
323
+ style: {
324
+ display: 'flex',
325
+ justifyContent: 'space-between'
326
+ }
327
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
328
+ className: "type-t2-700",
329
+ color: "primary-content"
330
+ }, item.name), /*#__PURE__*/_react.default.createElement(_CustomCheckBox.default, {
331
+ onClick: e => {
332
+ e.stopPropagation(); // Prevent event propagation to the panel
333
+ onSelectItem(item.id);
334
+ },
335
+ checked: isSelected,
336
+ disabled: isItemDisabled,
337
+ style: {
338
+ marginRight: 8
339
+ },
340
+ tabIndex: 0 // Make checkbox focusable
341
+ ,
342
+ role: "button" // Add ARIA role
343
+ ,
344
+ onKeyDown: e => {
345
+ if (e.key === 'Enter' || e.key === ' ') {
346
+ e.preventDefault(); // Prevent default scroll behavior
347
+ onSelectItem(item.id);
348
+ }
349
+ }
350
+ })),
351
+ key: item.id,
352
+ ref: el => {
353
+ itemRefs.current[item.id] = el;
354
+ } // Store a ref to the panel
355
+ }, /*#__PURE__*/_react.default.createElement("div", {
356
+ className: "padding-bottom-32",
357
+ onClick: e => e.stopPropagation(),
358
+ role: "button",
359
+ tabIndex: 0,
360
+ onKeyDown: e => {
361
+ if (e.key === 'Enter' || e.key === ' ') {
362
+ e.stopPropagation();
363
+ }
364
+ }
365
+ }, /*#__PURE__*/_react.default.createElement("div", {
366
+ className: "padding-bottom-4"
367
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
368
+ className: "type-b2-400",
369
+ color: "primary-content"
370
+ }, "Spare part price (without GST)")), /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
371
+ prefix: "\u20B9",
372
+ placeholder: "Enter price without GST",
373
+ onChange: e => onFieldChange(item.id, 'cost', e.target.value),
374
+ onKeyPress: handleKeyPress,
375
+ onPaste: handlePaste,
376
+ inputMode: "numeric",
377
+ pattern: "[0-9]+(\\.[0-9]{0,2})?",
378
+ value: ((_formValues$item$id = formValues[item.id]) === null || _formValues$item$id === void 0 ? void 0 : _formValues$item$id.cost) !== null && ((_formValues$item$id2 = formValues[item.id]) === null || _formValues$item$id2 === void 0 ? void 0 : _formValues$item$id2.cost) !== undefined ? (_formValues$item$id3 = formValues[item.id]) === null || _formValues$item$id3 === void 0 ? void 0 : _formValues$item$id3.cost : '',
379
+ disabled: isItemDisabled
380
+ })), !disableDiscount && /*#__PURE__*/_react.default.createElement("div", {
381
+ className: "padding-bottom-32",
382
+ onClick: e => e.stopPropagation(),
383
+ role: "button",
384
+ tabIndex: 0,
385
+ onKeyDown: e => {
386
+ if (e.key === 'Enter' || e.key === ' ') {
387
+ e.stopPropagation();
388
+ }
389
+ }
390
+ }, /*#__PURE__*/_react.default.createElement("div", {
391
+ className: "padding-bottom-4"
392
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
393
+ className: "type-b2-400",
394
+ color: "primary-content"
395
+ }, "Discount (Without GST)")), /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
396
+ prefix: "\u20B9",
397
+ placeholder: "Enter discount",
398
+ onChange: e => onFieldChange(item.id, 'discount', e.target.value),
399
+ onKeyPress: handleKeyPress,
400
+ onPaste: handlePaste,
401
+ inputMode: "numeric",
402
+ pattern: "[0-9]*",
403
+ value: ((_formValues$item$id4 = formValues[item.id]) === null || _formValues$item$id4 === void 0 ? void 0 : _formValues$item$id4.discount) !== null && ((_formValues$item$id5 = formValues[item.id]) === null || _formValues$item$id5 === void 0 ? void 0 : _formValues$item$id5.discount) !== undefined ? (_formValues$item$id6 = formValues[item.id]) === null || _formValues$item$id6 === void 0 ? void 0 : _formValues$item$id6.discount : '',
404
+ disabled: isItemDisabled
405
+ })), !disableHsn && /*#__PURE__*/_react.default.createElement("div", {
406
+ className: "padding-bottom-4",
407
+ onClick: e => e.stopPropagation(),
408
+ role: "button",
409
+ tabIndex: 0,
410
+ onKeyDown: e => {
411
+ if (e.key === 'Enter' || e.key === ' ') {
412
+ e.stopPropagation();
413
+ }
414
+ }
415
+ }, /*#__PURE__*/_react.default.createElement(_Typography.default, {
416
+ className: "type-b2-400",
417
+ color: "primary-content"
418
+ }, "HSN Code")), !disableHsn && /*#__PURE__*/_react.default.createElement(_CustomInput.default, {
419
+ placeholder: "HSN Code",
420
+ onChange: e => onFieldChange(item.id, 'hsnId', e.target.value),
421
+ value: ((_formValues$item$id7 = formValues[item.id]) === null || _formValues$item$id7 === void 0 ? void 0 : _formValues$item$id7.hsnId) || '',
422
+ disabled: isItemDisabled || disableHsn,
423
+ onClick: e => e.stopPropagation()
424
+ }));
425
+ })), /*#__PURE__*/_react.default.createElement(_styles2.StickyInfo, null, /*#__PURE__*/_react.default.createElement(_CustomInfo.default, {
426
+ description: "Note: 18% GST will be levied on the added spare part price.",
427
+ iconConfig: {
428
+ icon: /*#__PURE__*/_react.default.createElement(_MaterialIcon.default, {
429
+ color: "warning",
430
+ size: 24,
431
+ icon: _InfoOutlined.default
432
+ }),
433
+ position: 'left'
434
+ }
435
+ }))), /*#__PURE__*/_react.default.createElement(_CustomNotification.default, {
436
+ ref: notificationRef
437
+ })));
438
+ }
439
+ AddSparePartCollapseWidget.defaultProps = {
440
+ disableDiscount: false,
441
+ disableHsn: false
442
+ };
443
+ AddSparePartCollapseWidget.propTypes = {
444
+ items: _propTypes.default.arrayOf(_propTypes.default.shape({
445
+ id: _propTypes.default.number.isRequired,
446
+ name: _propTypes.default.string.isRequired
447
+ })).isRequired,
448
+ onSubmit: _propTypes.default.func.isRequired,
449
+ onClose: _propTypes.default.func.isRequired,
450
+ open: _propTypes.default.bool.isRequired,
451
+ selectedItems: _propTypes.default.arrayOf(_propTypes.default.shape({
452
+ scopeId: _propTypes.default.number.isRequired,
453
+ cost: _propTypes.default.string,
454
+ discount: _propTypes.default.string,
455
+ hsnId: _propTypes.default.string,
456
+ disableSelected: _propTypes.default.bool
457
+ })).isRequired,
458
+ disableDiscount: _propTypes.default.bool,
459
+ disableHsn: _propTypes.default.bool
460
+ };
461
+ var _default = exports.default = AddSparePartCollapseWidget;