@tap-payments/os-micro-frontend-shared 0.1.491 → 0.1.492-test.2
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.
- package/build/{chunk-HQMP5K4E.js → chunk-7JK4Z6IQ.js} +1 -1
- package/build/{chunk-ZTFNCBDJ.js → chunk-C5QNPNNY.js} +1 -1
- package/build/chunk-DSXKDOAD.js +1 -0
- package/build/chunk-LKNVJTYP.js +1 -0
- package/build/chunk-VRUT6M23.js +1 -0
- package/build/components/ActionMenu/ActionMenuDropDown.d.ts +1 -1
- package/build/components/ActionMenu/ActionMenuItem.d.ts +1 -1
- package/build/components/ActionMenu/type.d.ts +1 -1
- package/build/components/Amount/TotalAmount/TotalAmount.d.ts +1 -1
- package/build/components/Amount/index.js +1 -1
- package/build/components/AmountConversionFilter/AmountConversionFilter.d.ts +1 -1
- package/build/components/AmountConversionFilter/index.js +1 -1
- package/build/components/AmountInput/AmountInput.d.ts +1 -1
- package/build/components/AmountInput/index.js +1 -1
- package/build/components/AmountStatusChip/AmountStatusChip.d.ts +1 -1
- package/build/components/AmountStatusChip/style.d.ts +1 -1
- package/build/components/AnimatedSpinnerIcon/style.d.ts +0 -1
- package/build/components/AppServices/AppServices.d.ts +1 -1
- package/build/components/AppServices/index.js +1 -1
- package/build/components/AppServicesBar/AppServicesBar.d.ts +1 -1
- package/build/components/AppServicesBar/index.js +1 -1
- package/build/components/AppWindowWrapper/headers/AppWindowHeader/type.d.ts +1 -1
- package/build/components/AuthenticationTypeChip/AuthenticationTypeChip.d.ts +1 -1
- package/build/components/Autocomplete/Autocomplete.d.ts +1 -1
- package/build/components/BrandLogo/index.js +1 -1
- package/build/components/Chip/style.d.ts +0 -1
- package/build/components/CopyImage/index.js +1 -1
- package/build/components/CountBadge/style.d.ts +0 -1
- package/build/components/CountryFilter/index.js +1 -1
- package/build/components/CurrencyFilter/CurrencyFilter.d.ts +1 -1
- package/build/components/CurrencyFilter/index.js +1 -1
- package/build/components/Customer/CustomerForms/CustomerEmailForm.d.ts +1 -1
- package/build/components/Customer/CustomerForms/CustomerFullInfo.d.ts +1 -1
- package/build/components/Customer/CustomerForms/CustomerFullInfoForm.d.ts +1 -1
- package/build/components/Customer/CustomerForms/CustomerPhoneNumberForm.d.ts +1 -1
- package/build/components/Customer/index.js +1 -1
- package/build/components/DateFilter/DateFilter.d.ts +1 -1
- package/build/components/DateFilter/index.js +1 -1
- package/build/components/DeviceIcon/DeviceIcon.d.ts +1 -1
- package/build/components/DeviceIcon/style.d.ts +1 -1
- package/build/components/Dialog/style.d.ts +0 -1
- package/build/components/Discount/DiscountDropdown/DiscountDropdown.d.ts +1 -1
- package/build/components/Discount/DiscountRateDropdown/DiscountRateDropdown.d.ts +1 -1
- package/build/components/Discount/TotalDiscount/TotalDiscount.d.ts +1 -1
- package/build/components/Discount/index.js +1 -1
- package/build/components/Discount/utils.d.ts +1 -1
- package/build/components/DropdownButton/type.d.ts +1 -1
- package/build/components/FileInputPreview/index.js +1 -1
- package/build/components/FileInputPreview/type.d.ts +1 -1
- package/build/components/FileInputPreview/utils.d.ts +1 -1
- package/build/components/FilePreview/type.d.ts +1 -1
- package/build/components/FileUploader/type.d.ts +1 -1
- package/build/components/FilterDropdown/components/FlatMerchantsListMenu/style.d.ts +1 -1
- package/build/components/FilterDropdown/components/MerchantsFilterItem/type.d.ts +1 -1
- package/build/components/FilterDropdown/components/MerchantsFilterItem/utils.d.ts +2 -2
- package/build/components/FilterDropdown/components/RetailersItem/RetailersItem.d.ts +1 -1
- package/build/components/FilterDropdown/index.js +1 -1
- package/build/components/FilterDropdown/type.d.ts +1 -1
- package/build/components/Filters/index.js +1 -1
- package/build/components/FlagDetails/index.js +1 -1
- package/build/components/FlippingCard/style.d.ts +0 -1
- package/build/components/ImageWrapper/ImageWrapper.d.ts +0 -1
- package/build/components/InputBase/AmountInputBase/AmountInputBase.d.ts +1 -1
- package/build/components/InputBase/AmountInputBase/CurrencyList/CurrencyList.d.ts +1 -1
- package/build/components/InputBase/PhoneInputBase/CountriesList/CountriesList.d.ts +1 -1
- package/build/components/InputBase/PhoneInputBase/PhoneInputBase.d.ts +1 -1
- package/build/components/InputBase/SelectBase/DefaultClearIcon.d.ts +5 -0
- package/build/components/InputBase/SelectBase/DefaultSelectIcon.d.ts +5 -0
- package/build/components/InputBase/SelectBase/SelectBase.d.ts +11 -1
- package/build/components/InputBase/SelectBase/SelectBaseMultiple.d.ts +7 -1
- package/build/components/InputBase/SelectBase/hasSelectionValue.d.ts +2 -0
- package/build/components/InputBase/index.js +1 -1
- package/build/components/Inputs/CountriesDropDown/CountriesDropdown.d.ts +1 -1
- package/build/components/Inputs/SearchInput/SearchInput.d.ts +1 -1
- package/build/components/JSONViewer/components/JSONSearchBar/styles.d.ts +0 -1
- package/build/components/JSONViewer/style.d.ts +0 -1
- package/build/components/LanguageDropdown/index.js +1 -1
- package/build/components/LeftPeekRightExpandingChip/style.d.ts +0 -1
- package/build/components/ListColumnFilter/ListColumnFilter.d.ts +1 -1
- package/build/components/ListColumnFilter/index.js +1 -1
- package/build/components/MainContainer/MainContainer.d.ts +1 -1
- package/build/components/MaskedText/type.d.ts +1 -1
- package/build/components/MerchantCurrencyDropdown/MerchantCurrencyDropdown.d.ts +1 -1
- package/build/components/MerchantCurrencyDropdown/index.js +1 -1
- package/build/components/MerchantLogo/index.js +1 -1
- package/build/components/MerchantLogo/style.d.ts +1 -1
- package/build/components/MerchantsDropdown/BrandItem.d.ts +1 -1
- package/build/components/MerchantsDropdown/EntityItem.d.ts +1 -1
- package/build/components/MerchantsDropdown/EntityList.d.ts +1 -1
- package/build/components/MerchantsDropdown/MerchantItem.d.ts +2 -2
- package/build/components/MerchantsDropdown/MerchantsList.d.ts +1 -1
- package/build/components/MerchantsDropdown/hooks.d.ts +1 -1
- package/build/components/MerchantsDropdown/index.js +1 -1
- package/build/components/MerchantsDropdown/type.d.ts +1 -1
- package/build/components/MultiSelectDropdownButton/components/StatusButton.d.ts +1 -1
- package/build/components/MultiSelectDropdownButton/type.d.ts +1 -1
- package/build/components/MultiSelectStatusButton/style.d.ts +1 -1
- package/build/components/MultiSelectStatusButton/type.d.ts +1 -1
- package/build/components/NestedDropdown/NestedDropdown.d.ts +1 -1
- package/build/components/NestedDropdown/NestedMenuItem.d.ts +1 -1
- package/build/components/NestedDropdown/types.d.ts +1 -1
- package/build/components/PartnersFilter/index.js +1 -1
- package/build/components/PaymentSourceFilter/AuthenticationMode.d.ts +1 -1
- package/build/components/PaymentSourceFilter/PaymentInitiated.d.ts +2 -2
- package/build/components/PaymentSourceFilter/PaymentMethod.d.ts +1 -1
- package/build/components/PaymentSourceFilter/PaymentMethods.d.ts +1 -1
- package/build/components/PaymentSourceFilter/PaymentSchemes.d.ts +1 -1
- package/build/components/PaymentSourceFilter/PaymentSourceFilter.d.ts +3 -3
- package/build/components/PaymentSourceFilter/index.js +1 -1
- package/build/components/PhoneFilter/PhoneFilter.d.ts +1 -1
- package/build/components/PhoneFilter/index.js +1 -1
- package/build/components/RFH/Inputs/AmountInput/type.d.ts +1 -1
- package/build/components/RFH/Inputs/FormInput/FormInput.d.ts +1 -1
- package/build/components/RFH/Inputs/FormSelect/FormSelect.d.ts +2 -2
- package/build/components/RFH/Inputs/FormSelect/type.d.ts +1 -1
- package/build/components/RFH/Inputs/MultiSelect/MultiSelect.d.ts +0 -4
- package/build/components/RFH/Inputs/MultiSelect/style.d.ts +3 -0
- package/build/components/RFH/Inputs/PhoneInput/PhoneInput.d.ts +1 -1
- package/build/components/RFH/index.js +1 -1
- package/build/components/RangeCalender/components/Hijri/Hijri.d.ts +1 -1
- package/build/components/RangeCalender/components/Timezone/Timezone.d.ts +1 -1
- package/build/components/RangeCalender/components/Timezone/components/EntitiesTimezone.d.ts +1 -1
- package/build/components/RangeCalender/components/Timezone/components/UserTimezone.d.ts +1 -1
- package/build/components/RangeCalender/index.js +1 -1
- package/build/components/RangeCalender/type.d.ts +1 -1
- package/build/components/ReceiptsViewer/ReceiptsViewer.d.ts +1 -1
- package/build/components/ReceiptsViewer/index.js +1 -1
- package/build/components/ReceiptsViewer/type.d.ts +1 -1
- package/build/components/ReferenceTypeFilter/ReferenceTypeFilter.d.ts +1 -1
- package/build/components/ReferenceTypeFilter/index.js +1 -1
- package/build/components/RightLeftExpandingCenterChip/style.d.ts +0 -1
- package/build/components/SalesChannelFilter/SalesChannelFilter.d.ts +1 -1
- package/build/components/SalesChannelFilter/index.js +1 -1
- package/build/components/Sandbox/Sandbox.d.ts +1 -1
- package/build/components/SearchButton/styles.d.ts +0 -1
- package/build/components/SelectDropdown/index.js +1 -1
- package/build/components/SelectWithSearch/SelectWithSearch.d.ts +1 -1
- package/build/components/SelectWithSearch/index.js +1 -1
- package/build/components/SelectWithSearch/type.d.ts +7 -2
- package/build/components/StatusBar/StatusBar.d.ts +1 -1
- package/build/components/StatusBar/type.d.ts +2 -2
- package/build/components/StatusButton/type.d.ts +1 -1
- package/build/components/StatusChipWithCopy/StatusChipWithCopy.d.ts +2 -2
- package/build/components/StatusChipWithCopy/utils.d.ts +1 -1
- package/build/components/StatusFilter/StatusFilter.d.ts +2 -2
- package/build/components/StatusFilter/index.js +1 -1
- package/build/components/StatusFilter/utils.d.ts +1 -1
- package/build/components/StatusGroupChips/style.d.ts +1 -1
- package/build/components/StatusGroupChips/type.d.ts +1 -1
- package/build/components/StatusIcons/AuthIcons/constants.d.ts +1 -1
- package/build/components/StatusIcons/AuthIcons/style.d.ts +0 -1
- package/build/components/StatusIcons/AuthIcons/type.d.ts +1 -1
- package/build/components/StatusIcons/AuthorizationAutoIcons/style.d.ts +0 -1
- package/build/components/StatusIcons/AuthorizationAutoIcons/type.d.ts +1 -1
- package/build/components/StatusIcons/AuthorizedIcon/AuthorizedIcon.d.ts +2 -2
- package/build/components/StatusIcons/ChargeStatusIcon/ChargeStatusIcon.d.ts +2 -2
- package/build/components/StatusIcons/ChargeStatusIcon/style.d.ts +0 -1
- package/build/components/StatusIcons/DestinationIcon/DestinationIcon.d.ts +1 -1
- package/build/components/StatusIcons/DeviceIcon/DeviceIcon.d.ts +1 -1
- package/build/components/StatusIcons/GeographyIcon/style.d.ts +1 -1
- package/build/components/StatusIcons/IssuerIcon/style.d.ts +1 -1
- package/build/components/StatusIcons/IssuerIcon/type.d.ts +1 -1
- package/build/components/StatusIcons/PayoutIcon/PayoutIcon.d.ts +2 -2
- package/build/components/StatusIcons/RefundIcon/RefundIcon.d.ts +2 -2
- package/build/components/StatusIcons/SourceIcons/style.d.ts +0 -1
- package/build/components/StatusIcons/SourceIcons/type.d.ts +1 -1
- package/build/components/StatusIcons/index.js +1 -1
- package/build/components/TableCells/CustomCells/ActionCell/components/ActionsColumn.d.ts +1 -1
- package/build/components/TableCells/CustomCells/ActionCell/constant.d.ts +1 -1
- package/build/components/TableCells/CustomCells/ActionCell/style.d.ts +1 -2
- package/build/components/TableCells/CustomCells/AgreementCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/AmountCell/components/ConversionTypeLabel.d.ts +1 -1
- package/build/components/TableCells/CustomCells/AmountCell/components/CurrencyInfo.d.ts +1 -1
- package/build/components/TableCells/CustomCells/AmountCell/style.d.ts +1 -1
- package/build/components/TableCells/CustomCells/AmountCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/ApplicationStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/AuthenticationCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/AuthenticationStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/AuthenticationTypeCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/BalanceCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/BalanceCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/ChannelsCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/CheckoutStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/CustomerCell/style.d.ts +1 -1
- package/build/components/TableCells/CustomCells/DateCell/DateCell.d.ts +1 -1
- package/build/components/TableCells/CustomCells/DestinationCell/styled.d.ts +1 -1
- package/build/components/TableCells/CustomCells/DestinationCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/DestinationStatusCell/constant.d.ts +1 -1
- package/build/components/TableCells/CustomCells/DestinationStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/DueDateCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/IDButton/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/IntentsStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/InvoiceStatusCell/ChargeStatusIcon.d.ts +1 -1
- package/build/components/TableCells/CustomCells/InvoiceStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/OrdersCell/OrdersCellSheet.d.ts +1 -1
- package/build/components/TableCells/CustomCells/PaymentAgreementCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/PayoutReportCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/PayoutStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/ProductsCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/ReferenceCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/RefundChargeCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/RefundStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/RefundStatusCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/SalesChannelCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/SalesChannelCell/type.d.ts +1 -1
- package/build/components/TableCells/CustomCells/SalesChannelCell/utils.d.ts +1 -1
- package/build/components/TableCells/CustomCells/SegmentsCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/SourceCell/components/AuthenticationMode/AuthenticationMode.d.ts +1 -1
- package/build/components/TableCells/CustomCells/StatusCell/constant.d.ts +1 -1
- package/build/components/TableCells/CustomCells/StatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/TextWithChipCell/TextWithChipCell.d.ts +2 -2
- package/build/components/TableCells/CustomCells/TokenStatusCell/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/style.d.ts +0 -1
- package/build/components/TableCells/CustomCells/type.d.ts +2 -2
- package/build/components/TableCells/index.js +1 -1
- package/build/components/TableHeader/TableHeader.d.ts +1 -1
- package/build/components/TableHeader/TableModeButton.d.ts +1 -1
- package/build/components/TableHeader/TableView/ColumnItem.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useColumnItem.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useCreateViewDialog.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useCustomTableViews.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useOriginalColumns.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useViewColumns.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useViewsManager.d.ts +1 -1
- package/build/components/TableHeader/TableView/hooks/useViewsMenu.d.ts +1 -1
- package/build/components/TableHeader/TableView/types.d.ts +1 -1
- package/build/components/TableHeader/TableView/utils/columnState.d.ts +1 -1
- package/build/components/TableHeader/TableView/utils/customTableViews.d.ts +1 -1
- package/build/components/TableHeader/TableView/utils/layoutTransform.d.ts +1 -1
- package/build/components/TableHeader/TableView/utils/templateToColumnsView.d.ts +1 -1
- package/build/components/TableHeader/TableView/utils/viewMenu.d.ts +1 -1
- package/build/components/TableHeader/index.js +1 -1
- package/build/components/TableHeader/type.d.ts +3 -3
- package/build/components/TableReports/components/DownloadButton/style.d.ts +0 -1
- package/build/components/TableReports/index.js +1 -1
- package/build/components/TableReports/style.d.ts +0 -1
- package/build/components/TooltipChip/TooltipChip.d.ts +2 -2
- package/build/components/TooltipChip/style.d.ts +1 -1
- package/build/components/TreeDropdown/TreeNodeItem/style.d.ts +1 -1
- package/build/components/TreeDropdown/index.js +1 -1
- package/build/components/TreeDropdown/type.d.ts +1 -1
- package/build/components/VAT/TotalVAT/TotalVAT.d.ts +1 -1
- package/build/components/VAT/VATDropdown/VATDropdown.d.ts +1 -1
- package/build/components/VAT/VATRateDropdown/VATRateDropdown.d.ts +1 -1
- package/build/components/VAT/index.js +1 -1
- package/build/components/VAT/utils.d.ts +1 -1
- package/build/components/VerificationIcon/index.js +1 -1
- package/build/components/ViewColumnRadioFilter/index.js +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/components/SheetViewTableHeaderCell.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/components/SheetViewTableLoading.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/components/SheetViewTableNoData.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/components/SheetViewTableRowLoading.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/components/VirtualTable.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/features/resize/hooks/useColumnResizeWithPinned.d.ts +13 -13
- package/build/components/VirtualTables/SheetViewVirtualTable/features/resize/types/index.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/features/resize/utils/resize.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/hooks/usePinnedColumns.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/hooks/usePinnedColumnsWidths.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/hooks/useVirtualTableContainer.d.ts +1 -1
- package/build/components/VirtualTables/SheetViewVirtualTable/types.d.ts +1 -1
- package/build/components/VirtualTables/VirtualTable/VirtualTable.d.ts +1 -1
- package/build/components/VirtualTables/VirtualTableWithCard/VirtualTableWithCard.d.ts +1 -1
- package/build/components/VirtualTables/components/ColumnFilter/Inputs/Inputs.d.ts +1 -1
- package/build/components/VirtualTables/components/ColumnFilter/List/List.d.ts +1 -1
- package/build/components/VirtualTables/components/ColumnFilter/type.d.ts +1 -1
- package/build/components/VirtualTables/components/ColumnSort/ColumnSort.d.ts +1 -1
- package/build/components/VirtualTables/components/TableFooter/TableFooter.d.ts +1 -1
- package/build/components/VirtualTables/components/TableHeader/components/TableCell/TableCell.d.ts +2 -2
- package/build/components/VirtualTables/components/TableHeader/type.d.ts +1 -1
- package/build/components/VirtualTables/components/TableLoading.d.ts +1 -1
- package/build/components/VirtualTables/components/TableNoData.d.ts +1 -1
- package/build/components/VirtualTables/components/TableNoDataWithCard.d.ts +1 -1
- package/build/components/VirtualTables/components/TableRow.d.ts +1 -1
- package/build/components/VirtualTables/components/TableRowLoading.d.ts +1 -1
- package/build/components/VirtualTables/components/style.d.ts +0 -1
- package/build/components/VirtualTables/components/virtualScroll/ListItemWrapper.d.ts +1 -1
- package/build/components/VirtualTables/hooks/useColumnFilter.d.ts +1 -1
- package/build/components/WindowSideBar/index.js +1 -1
- package/build/components/index.js +1 -1
- package/build/constants/segment.d.ts +1 -1
- package/build/constants/timezones.d.ts +1 -1
- package/build/demo/TapOSIconsGallery/style.d.ts +1 -1
- package/build/docs/.storybook/story-utils.d.ts +19 -0
- package/build/docs/.storybook/story-utils.js +96 -0
- package/build/hooks/useAppsInfo.d.ts +3 -3
- package/build/hooks/useIsParameterSelected.d.ts +1 -1
- package/build/hooks/useSelectedMerchantDetails.d.ts +2 -2
- package/build/hooks/useToast.d.ts +1 -1
- package/build/index.js +1 -1
- package/build/theme/theme.d.ts +1 -1
- package/build/theme/typography.d.ts +1 -1
- package/build/types/appEvents.d.ts +1 -1
- package/build/types/apps.d.ts +1 -1
- package/build/types/cell.d.ts +2 -2
- package/build/types/document.d.ts +1 -1
- package/build/types/invoice.d.ts +1 -1
- package/build/types/refund.d.ts +1 -1
- package/build/types/table.d.ts +2 -2
- package/build/types/toggleOptions.d.ts +1 -1
- package/build/types/views.d.ts +1 -1
- package/build/utils/billing.d.ts +1 -1
- package/build/utils/columns.d.ts +1 -1
- package/build/utils/conversion.d.ts +1 -1
- package/build/utils/currency.d.ts +1 -1
- package/build/utils/day.d.ts +1 -1
- package/build/utils/entity.d.ts +1 -1
- package/build/utils/error.d.ts +1 -1
- package/build/utils/file.d.ts +1 -1
- package/build/utils/freshdesk.d.ts +1 -1
- package/build/utils/language.d.ts +1 -1
- package/build/utils/localStorage.d.ts +1 -1
- package/build/utils/merchant.d.ts +1 -1
- package/build/utils/merchantSource.d.ts +1 -1
- package/build/utils/navigation.d.ts +3 -3
- package/build/utils/segment.d.ts +1 -1
- package/build/utils/skeletonColumns.d.ts +1 -1
- package/build/utils/table.d.ts +1 -1
- package/build/utils/views.d.ts +1 -1
- package/docs/.storybook/main.ts +23 -0
- package/docs/.storybook/preview.tsx +106 -0
- package/docs/.storybook/story-utils.tsx +196 -0
- package/docs/01-overview.md +158 -0
- package/docs/02-setup.md +326 -0
- package/docs/03-architecture.md +438 -0
- package/docs/04-component-guide.md +133 -0
- package/docs/05-component-development.md +173 -0
- package/docs/README.md +38 -0
- package/docs/stories/components/Accordion.stories.tsx +302 -0
- package/docs/stories/components/AccordionAdapter.stories.tsx +201 -0
- package/docs/stories/components/AccountDropdown.stories.tsx +113 -0
- package/docs/stories/components/AnimatedSpinnerIcon.stories.tsx +54 -0
- package/docs/stories/components/BackgroundAnimation.stories.tsx +139 -0
- package/docs/stories/components/BetaBanner.stories.tsx +170 -0
- package/docs/stories/components/Button.stories.tsx +132 -0
- package/docs/stories/components/CardEmptyState.stories.tsx +43 -0
- package/docs/stories/components/CardHeadline.stories.tsx +208 -0
- package/docs/stories/components/Chip.stories.tsx +106 -0
- package/docs/stories/components/CircularProgressWithLabel.stories.tsx +111 -0
- package/docs/stories/components/Collapse.stories.tsx +100 -0
- package/docs/stories/components/CountBadge.stories.tsx +115 -0
- package/docs/stories/components/CountryFlag.stories.tsx +91 -0
- package/docs/stories/components/CurrencySymbol.stories.tsx +108 -0
- package/docs/stories/components/DeviceIcon.stories.tsx +122 -0
- package/docs/stories/components/Dialog.stories.tsx +270 -0
- package/docs/stories/components/DisplayAmount.stories.tsx +102 -0
- package/docs/stories/components/DockButton.stories.tsx +118 -0
- package/docs/stories/components/ExpandableSideBar.stories.tsx +120 -0
- package/docs/stories/components/FlippingCard.stories.tsx +122 -0
- package/docs/stories/components/HeatMap.stories.tsx +199 -0
- package/docs/stories/components/IconWithBadge.stories.tsx +136 -0
- package/docs/stories/components/JSONViewer.stories.tsx +92 -0
- package/docs/stories/components/LeftPeekRightExpandingChip.stories.tsx +127 -0
- package/docs/stories/components/Loader.stories.tsx +116 -0
- package/docs/stories/components/NoInternet.stories.tsx +43 -0
- package/docs/stories/components/ProgressBar.stories.tsx +99 -0
- package/docs/stories/components/ProgressRing.stories.tsx +139 -0
- package/docs/stories/components/SimpleDialog.stories.tsx +170 -0
- package/docs/stories/components/Skeleton.stories.tsx +253 -0
- package/docs/stories/components/StatusButton.stories.tsx +84 -0
- package/docs/stories/components/StatusChip.stories.tsx +149 -0
- package/docs/stories/components/StatusLabel.stories.tsx +85 -0
- package/docs/stories/components/Text.stories.tsx +110 -0
- package/docs/stories/components/Toaster.stories.tsx +65 -0
- package/docs/stories/components/Tooltip.stories.tsx +218 -0
- package/docs/stories/components/TooltipChip.stories.tsx +104 -0
- package/docs/stories/components/WindowAppIcon.stories.tsx +76 -0
- package/docs/stories/components/inputs/ActionMenu.stories.tsx +125 -0
- package/docs/stories/components/inputs/AmountInput.stories.tsx +103 -0
- package/docs/stories/components/inputs/Autocomplete.stories.tsx +209 -0
- package/docs/stories/components/inputs/Calender.stories.tsx +105 -0
- package/docs/stories/components/inputs/Checkbox.stories.tsx +78 -0
- package/docs/stories/components/inputs/ColorPicker.stories.tsx +160 -0
- package/docs/stories/components/inputs/CopyImage.stories.tsx +116 -0
- package/docs/stories/components/inputs/CountryFilter.stories.tsx +100 -0
- package/docs/stories/components/inputs/CurrencyFilter.stories.tsx +140 -0
- package/docs/stories/components/inputs/DateFilter.stories.tsx +144 -0
- package/docs/stories/components/inputs/DropdownButton.stories.tsx +187 -0
- package/docs/stories/components/inputs/DropdownMenu.stories.tsx +282 -0
- package/docs/stories/components/inputs/FormSelect.stories.tsx +235 -0
- package/docs/stories/components/inputs/IOSSwitch.stories.tsx +95 -0
- package/docs/stories/components/inputs/Input.stories.tsx +121 -0
- package/docs/stories/components/inputs/InputNumber.stories.tsx +163 -0
- package/docs/stories/components/inputs/MerchantCurrencyDropdown.stories.tsx +192 -0
- package/docs/stories/components/inputs/MultiSelect.stories.tsx +369 -0
- package/docs/stories/components/inputs/MultiSelectWithSearch.stories.tsx +141 -0
- package/docs/stories/components/inputs/NestedDropdown.stories.tsx +143 -0
- package/docs/stories/components/inputs/OTPInput.stories.tsx +140 -0
- package/docs/stories/components/inputs/PartnersFilter.stories.tsx +114 -0
- package/docs/stories/components/inputs/RadioButton.stories.tsx +135 -0
- package/docs/stories/components/inputs/RadioGroup.stories.tsx +145 -0
- package/docs/stories/components/inputs/RangeCalender.stories.tsx +179 -0
- package/docs/stories/components/inputs/SearchListInput.stories.tsx +87 -0
- package/docs/stories/components/inputs/SelectDropdown.stories.tsx +153 -0
- package/docs/stories/components/inputs/SelectWithSearch.stories.tsx +290 -0
- package/docs/stories/components/inputs/Timepicker.stories.tsx +91 -0
- package/docs/stories/components/inputs/ToggleButtons.stories.tsx +242 -0
- package/package.json +4 -3
- package/build/chunk-CC4HU4H6.js +0 -1
- package/build/chunk-NET3U5QO.js +0 -1
- package/build/chunk-QLEUEVEZ.js +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { AppDetails, UserApp } from '
|
|
1
|
+
import { AppDetails, UserApp } from '@types';
|
|
2
2
|
export declare const getApp: (apps: UserApp[], appCode: string) => UserApp | undefined;
|
|
3
|
-
export declare const getService: (services: UserApp['app_services'], serviceCode: string) => import("
|
|
3
|
+
export declare const getService: (services: UserApp['app_services'], serviceCode: string) => import("@types").AppService | undefined;
|
|
4
4
|
export declare const openNewAppAttrs: ({ appCode, serviceCode, sandboxMode, payload, segmentId, numberOfOpenedApps, }: Pick<AppDetails, "appCode" | "serviceCode" | "payload"> & {
|
|
5
5
|
sandboxMode?: boolean | undefined;
|
|
6
6
|
numberOfOpenedApps: number;
|
|
7
7
|
segmentId: string;
|
|
8
8
|
}) => {
|
|
9
|
-
payload?: (Record<string, any> & Omit<import("
|
|
9
|
+
payload?: (Record<string, any> & Omit<import("@types").DefaultServicePayload, never> & object) | undefined;
|
|
10
10
|
segmentId: string;
|
|
11
11
|
appCode: string;
|
|
12
12
|
serviceCode: string;
|
package/build/utils/segment.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SelectedSegment, Segment, SegmentData } from '
|
|
1
|
+
import { SelectedSegment, Segment, SegmentData } from '@types';
|
|
2
2
|
export declare const getSegmentData: (segments: Segment[], activeSegmentId: string, activeSegments: SelectedSegment[]) => SegmentData;
|
|
3
3
|
export declare const getBusinessSegmentConfig: ({ merchantsIds, options }: {
|
|
4
4
|
merchantsIds: string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IColumnProps } from '
|
|
1
|
+
import type { IColumnProps } from '@types';
|
|
2
2
|
export declare const DEFAULT_SKELETON_WIDTHS: string[];
|
|
3
3
|
export declare const generateSkeletonColumns: (staticWidths?: string[]) => IColumnProps[];
|
|
4
4
|
export declare const getProcessedColumns: <T = unknown>(columns: readonly IColumnProps<T>[], isLoading: boolean, defaultSkeleton: boolean) => IColumnProps<T>[];
|
package/build/utils/table.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TableCellWidthProps, TableMode, TableNavigation } from '
|
|
1
|
+
import { TableCellWidthProps, TableMode, TableNavigation } from '@types';
|
|
2
2
|
export declare const getColumnWidthPercentage: (widthInPx: number, options?: {
|
|
3
3
|
isFirst?: boolean;
|
|
4
4
|
isLast?: boolean;
|
package/build/utils/views.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import type { Template } from '../components/TableHeader';
|
|
1
|
+
import type { Template } from '../src/components/TableHeader';
|
|
2
2
|
export declare const updateViewsSelection: (templates: Template[], columnsSelection: Record<string, boolean>) => Template[];
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { StorybookConfig } from '@storybook/react-vite'
|
|
2
|
+
// vite-tsconfig-paths plugin so all @components, @theme, @types, etc. aliases work inside stories
|
|
3
|
+
import tsconfigPaths from 'vite-tsconfig-paths'
|
|
4
|
+
import { mergeConfig } from 'vite'
|
|
5
|
+
|
|
6
|
+
const config: StorybookConfig = {
|
|
7
|
+
stories: ['../stories/**/*.stories.@(ts|tsx|mdx)'],
|
|
8
|
+
addons: ['@storybook/addon-a11y', '@storybook/addon-docs'],
|
|
9
|
+
|
|
10
|
+
framework: {
|
|
11
|
+
name: '@storybook/react-vite',
|
|
12
|
+
options: {},
|
|
13
|
+
},
|
|
14
|
+
|
|
15
|
+
// Resolve the same path aliases used in tsconfig.json (@components, @theme, etc.)
|
|
16
|
+
viteFinal: async (config) => {
|
|
17
|
+
return mergeConfig(config, {
|
|
18
|
+
plugins: [tsconfigPaths()],
|
|
19
|
+
})
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export default config
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import type { Preview, Decorator } from '@storybook/react-vite'
|
|
3
|
+
import CssBaseline from '@mui/material/CssBaseline'
|
|
4
|
+
import { appTheme } from '../../src/theme'
|
|
5
|
+
import { ThemeMode } from '../../src/types/theme'
|
|
6
|
+
import MUIThemeProvider from '../../src/components/MUIThemeProvider'
|
|
7
|
+
import { initReactI18next } from 'react-i18next'
|
|
8
|
+
import i18n from 'i18next'
|
|
9
|
+
|
|
10
|
+
// ---------------------------------------------------------------------------
|
|
11
|
+
// Minimal i18n setup so components that call useTranslation() don't crash.
|
|
12
|
+
// Stories that need real translations can override this in their decorator.
|
|
13
|
+
// ---------------------------------------------------------------------------
|
|
14
|
+
if (!i18n.isInitialized) {
|
|
15
|
+
i18n.use(initReactI18next).init({
|
|
16
|
+
lng: 'en',
|
|
17
|
+
fallbackLng: 'en',
|
|
18
|
+
resources: { en: { translation: {} } },
|
|
19
|
+
interpolation: { escapeValue: false },
|
|
20
|
+
})
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
// Toolbar: Theme (light / dark) + Direction (ltr / rtl)
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
export const globalTypes = {
|
|
27
|
+
themeMode: {
|
|
28
|
+
name: 'Theme',
|
|
29
|
+
description: 'MUI theme mode',
|
|
30
|
+
defaultValue: 'light',
|
|
31
|
+
toolbar: {
|
|
32
|
+
icon: 'circlehollow',
|
|
33
|
+
items: [
|
|
34
|
+
{ value: 'light', title: 'Light', icon: 'sun' },
|
|
35
|
+
{ value: 'dark', title: 'Dark', icon: 'moon' },
|
|
36
|
+
],
|
|
37
|
+
dynamicTitle: true,
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
direction: {
|
|
41
|
+
name: 'Direction',
|
|
42
|
+
description: 'Text direction (LTR / RTL)',
|
|
43
|
+
defaultValue: 'ltr',
|
|
44
|
+
toolbar: {
|
|
45
|
+
icon: 'menu',
|
|
46
|
+
items: [
|
|
47
|
+
{ value: 'ltr', title: 'LTR' },
|
|
48
|
+
{ value: 'rtl', title: 'RTL' },
|
|
49
|
+
],
|
|
50
|
+
dynamicTitle: true,
|
|
51
|
+
},
|
|
52
|
+
},
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
// Global decorator — wraps every story with the correct MUI theme
|
|
57
|
+
// ---------------------------------------------------------------------------
|
|
58
|
+
const withMUITheme: Decorator = (Story, context) => {
|
|
59
|
+
const mode = (context.globals.themeMode as ThemeMode) ?? ThemeMode.LIGHT
|
|
60
|
+
const direction = (context.globals.direction as 'ltr' | 'rtl') ?? 'ltr'
|
|
61
|
+
const theme = appTheme(mode, direction)
|
|
62
|
+
|
|
63
|
+
return (
|
|
64
|
+
<MUIThemeProvider theme={theme}>
|
|
65
|
+
<CssBaseline />
|
|
66
|
+
<div dir={direction} style={{ padding: '1.5rem' }}>
|
|
67
|
+
<Story />
|
|
68
|
+
</div>
|
|
69
|
+
</MUIThemeProvider>
|
|
70
|
+
)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const preview: Preview = {
|
|
74
|
+
decorators: [withMUITheme],
|
|
75
|
+
|
|
76
|
+
parameters: {
|
|
77
|
+
// Default backgrounds synced with the theme selector
|
|
78
|
+
backgrounds: {
|
|
79
|
+
options: {
|
|
80
|
+
light: { name: 'light', value: '#ffffff' },
|
|
81
|
+
dark: { name: 'dark', value: '#121212' }
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
|
|
85
|
+
controls: {
|
|
86
|
+
// Show default values in the Controls panel
|
|
87
|
+
expanded: true,
|
|
88
|
+
// Sort alphabetically for easier scanning
|
|
89
|
+
sort: 'alpha',
|
|
90
|
+
matchers: {
|
|
91
|
+
color: /(color|background|bg|fill)$/i,
|
|
92
|
+
date: /date$/i,
|
|
93
|
+
},
|
|
94
|
+
},
|
|
95
|
+
|
|
96
|
+
actions: { argTypesRegex: '^on[A-Z].*' },
|
|
97
|
+
},
|
|
98
|
+
|
|
99
|
+
initialGlobals: {
|
|
100
|
+
backgrounds: {
|
|
101
|
+
value: 'light'
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export default preview
|
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* story-utils.tsx
|
|
3
|
+
*
|
|
4
|
+
* Shared layout primitives for .stories.tsx files.
|
|
5
|
+
* Import from any story:
|
|
6
|
+
* import { StoryTable, StoryFlexRow, ... } from '../../.storybook/story-utils'
|
|
7
|
+
*
|
|
8
|
+
* All components use MUI sx + theme tokens so they adapt to the
|
|
9
|
+
* light/dark toolbar toggle in preview.tsx automatically.
|
|
10
|
+
*
|
|
11
|
+
* Rule: add exports here only when a pattern appears in 2+ stories.
|
|
12
|
+
*
|
|
13
|
+
* CONVENTION — stateful stories (render + useState):
|
|
14
|
+
* When a story uses a `render` function with `useState`, Storybook cannot
|
|
15
|
+
* auto-generate useful "Show code" output. Always add an explicit source
|
|
16
|
+
* override so developers can copy real usage:
|
|
17
|
+
*
|
|
18
|
+
* parameters: {
|
|
19
|
+
* docs: {
|
|
20
|
+
* source: {
|
|
21
|
+
* language: 'tsx',
|
|
22
|
+
* code: `...clean minimal snippet...`.trim(),
|
|
23
|
+
* },
|
|
24
|
+
* },
|
|
25
|
+
* },
|
|
26
|
+
*/
|
|
27
|
+
import React from 'react'
|
|
28
|
+
import Box, { type BoxProps } from '@mui/material/Box'
|
|
29
|
+
import Stack, { type StackProps } from '@mui/material/Stack'
|
|
30
|
+
import Typography, { type TypographyProps } from '@mui/material/Typography'
|
|
31
|
+
|
|
32
|
+
// ─── Spacing tokens ──────────────────────────────────────────────────────────
|
|
33
|
+
// Named constants so story authors never write magic numbers.
|
|
34
|
+
// Values map to theme.spacing() units (1 unit = 8px by default in MUI).
|
|
35
|
+
export const STORY_SPACING = {
|
|
36
|
+
cell: 2, // 16px — cell padding
|
|
37
|
+
labelRight: 3, // 24px — right-pad on row/column label cells
|
|
38
|
+
section: 4, // 32px — gap between table and hint text
|
|
39
|
+
} as const
|
|
40
|
+
|
|
41
|
+
// ─── Table primitives ─────────────────────────────────────────────────────────
|
|
42
|
+
|
|
43
|
+
export function StoryTable({ children, sx, ...rest }: BoxProps) {
|
|
44
|
+
return (
|
|
45
|
+
<Box
|
|
46
|
+
component="table"
|
|
47
|
+
sx={[
|
|
48
|
+
{
|
|
49
|
+
width: '100%',
|
|
50
|
+
borderCollapse: 'separate',
|
|
51
|
+
borderSpacing: '0 10px',
|
|
52
|
+
fontSize: '1rem',
|
|
53
|
+
tableLayout: 'auto',
|
|
54
|
+
},
|
|
55
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
56
|
+
]}
|
|
57
|
+
{...rest}
|
|
58
|
+
>
|
|
59
|
+
{children}
|
|
60
|
+
</Box>
|
|
61
|
+
)
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export function StoryThead({ children, sx, ...rest }: BoxProps) {
|
|
65
|
+
return (
|
|
66
|
+
<Box component="thead" sx={sx} {...rest}>
|
|
67
|
+
{children}
|
|
68
|
+
</Box>
|
|
69
|
+
)
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export function StoryTbody({ children, sx, ...rest }: BoxProps) {
|
|
73
|
+
return (
|
|
74
|
+
<Box component="tbody" sx={sx} {...rest}>
|
|
75
|
+
{children}
|
|
76
|
+
</Box>
|
|
77
|
+
)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export function StoryRow({ children, sx, ...rest }: BoxProps) {
|
|
81
|
+
return (
|
|
82
|
+
<Box
|
|
83
|
+
component="tr"
|
|
84
|
+
sx={[
|
|
85
|
+
(theme) => ({
|
|
86
|
+
'&:hover td': {
|
|
87
|
+
backgroundColor: theme.palette.action.hover,
|
|
88
|
+
},
|
|
89
|
+
}),
|
|
90
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
91
|
+
]}
|
|
92
|
+
{...rest}
|
|
93
|
+
>
|
|
94
|
+
{children}
|
|
95
|
+
</Box>
|
|
96
|
+
)
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// `first` targets the leftmost header cell (row label column) — left-aligned.
|
|
100
|
+
export function StoryHeaderCell({ first = false, children, sx, ...rest }: BoxProps & { first?: boolean }) {
|
|
101
|
+
return (
|
|
102
|
+
<Box
|
|
103
|
+
component="th"
|
|
104
|
+
sx={[
|
|
105
|
+
(theme) => ({
|
|
106
|
+
padding: first ? theme.spacing(0.5, STORY_SPACING.labelRight, 0.5, 0) : theme.spacing(0.5, STORY_SPACING.cell),
|
|
107
|
+
fontWeight: theme.typography.fontWeightMedium,
|
|
108
|
+
fontSize: '1.1rem',
|
|
109
|
+
color: theme.palette.text.primary,
|
|
110
|
+
whiteSpace: 'nowrap',
|
|
111
|
+
textAlign: 'left',
|
|
112
|
+
}),
|
|
113
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
114
|
+
]}
|
|
115
|
+
{...rest}
|
|
116
|
+
>
|
|
117
|
+
{children}
|
|
118
|
+
</Box>
|
|
119
|
+
)
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
export function StoryRowLabel({ children, sx, ...rest }: BoxProps) {
|
|
123
|
+
return (
|
|
124
|
+
<Box
|
|
125
|
+
component="th"
|
|
126
|
+
sx={[
|
|
127
|
+
(theme) => ({
|
|
128
|
+
textAlign: 'left',
|
|
129
|
+
padding: theme.spacing(STORY_SPACING.cell, STORY_SPACING.labelRight, STORY_SPACING.cell, 0),
|
|
130
|
+
fontWeight: theme.typography.fontWeightRegular,
|
|
131
|
+
fontSize: '1.1rem',
|
|
132
|
+
color: theme.palette.text.primary,
|
|
133
|
+
verticalAlign: 'middle',
|
|
134
|
+
whiteSpace: 'nowrap',
|
|
135
|
+
}),
|
|
136
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
137
|
+
]}
|
|
138
|
+
{...rest}
|
|
139
|
+
>
|
|
140
|
+
{children}
|
|
141
|
+
</Box>
|
|
142
|
+
)
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export function StoryCell({ children, sx, ...rest }: BoxProps) {
|
|
146
|
+
return (
|
|
147
|
+
<Box
|
|
148
|
+
component="td"
|
|
149
|
+
sx={[
|
|
150
|
+
(theme) => ({
|
|
151
|
+
padding: theme.spacing(STORY_SPACING.cell),
|
|
152
|
+
textAlign: 'center',
|
|
153
|
+
verticalAlign: 'middle',
|
|
154
|
+
borderBottom: `1px solid ${theme.palette.divider}`,
|
|
155
|
+
}),
|
|
156
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
157
|
+
]}
|
|
158
|
+
{...rest}
|
|
159
|
+
>
|
|
160
|
+
{children}
|
|
161
|
+
</Box>
|
|
162
|
+
)
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
// ─── Flex row ─────────────────────────────────────────────────────────────────
|
|
166
|
+
|
|
167
|
+
// Default spacing={3} = 24px. Pass spacing={1} (8px) for tighter layouts.
|
|
168
|
+
export function StoryFlexRow({ children, sx, ...rest }: StackProps) {
|
|
169
|
+
return (
|
|
170
|
+
<Stack direction="row" alignItems="center" spacing={3} sx={sx} {...rest}>
|
|
171
|
+
{children}
|
|
172
|
+
</Stack>
|
|
173
|
+
)
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
// ─── Hint text ────────────────────────────────────────────────────────────────
|
|
177
|
+
|
|
178
|
+
export function StoryHint({ children, sx, ...rest }: TypographyProps) {
|
|
179
|
+
return (
|
|
180
|
+
<Typography
|
|
181
|
+
variant="caption"
|
|
182
|
+
align="center"
|
|
183
|
+
sx={[
|
|
184
|
+
(theme) => ({
|
|
185
|
+
display: 'block',
|
|
186
|
+
mt: STORY_SPACING.section,
|
|
187
|
+
color: theme.palette.text.secondary,
|
|
188
|
+
}),
|
|
189
|
+
...(Array.isArray(sx) ? sx : [sx]),
|
|
190
|
+
]}
|
|
191
|
+
{...rest}
|
|
192
|
+
>
|
|
193
|
+
{children}
|
|
194
|
+
</Typography>
|
|
195
|
+
)
|
|
196
|
+
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
# Project Overview
|
|
2
|
+
|
|
3
|
+
## OS Micro Frontend Shared
|
|
4
|
+
|
|
5
|
+
React component library for Tap Payments providing unified UI components, hooks, and utilities for micro frontend applications.
|
|
6
|
+
|
|
7
|
+
## Core Capabilities
|
|
8
|
+
|
|
9
|
+
- **UI Components**: 100+ production-ready components (buttons, tables, dialogs, forms, filters)
|
|
10
|
+
- **Data Virtualization**: High-performance virtual tables for large datasets with infinite scroll
|
|
11
|
+
- **Form Management**: React Hook Form integration with validation schemas
|
|
12
|
+
- **Theme System**: MUI-based theming with dark/light mode and RTL/LTR support
|
|
13
|
+
- **Hooks & Utilities**: Custom React hooks and helper functions for common tasks
|
|
14
|
+
- **Type Safety**: Comprehensive TypeScript definitions for all exports
|
|
15
|
+
|
|
16
|
+
## Key Features
|
|
17
|
+
|
|
18
|
+
| Feature | Description |
|
|
19
|
+
| -------------------- | ---------------------------------------------------------------- |
|
|
20
|
+
| Component Library | 100+ React components organized by feature and use case |
|
|
21
|
+
| Virtual Tables | react-window based tables for 1000+ rows with optimal rendering |
|
|
22
|
+
| Form Components | React Hook Form wrappers with Yup validation support |
|
|
23
|
+
| Theme Support | Dark/light mode, RTL/LTR direction, customizable MUI theme |
|
|
24
|
+
| ESM Only | Modern ES modules for optimal tree-shaking |
|
|
25
|
+
| Peer Dependencies | Prevents version conflicts and bundle bloat |
|
|
26
|
+
| TypeScript | Full type safety with .d.ts files for all exports |
|
|
27
|
+
| Path Aliases | Clean imports in source code with build-time resolution |
|
|
28
|
+
|
|
29
|
+
## Package Information
|
|
30
|
+
|
|
31
|
+
| Attribute | Description | Value |
|
|
32
|
+
| -------------- | -------------------------------------------------------- | -------------------------------------------------------- |
|
|
33
|
+
| Package Name | NPM package identifier | `@tap-payments/os-micro-frontend-shared` |
|
|
34
|
+
| Type | Module format and purpose | React Component Library (ESM) |
|
|
35
|
+
| Registry | Package distribution | npm (public) |
|
|
36
|
+
| Import Example | How to use in your app | `import { Button, useToast } from '@tap-payments/...'` |
|
|
37
|
+
|
|
38
|
+
## Key Features & Capabilities
|
|
39
|
+
|
|
40
|
+
### Component Library
|
|
41
|
+
- **100+ React components** organized by feature
|
|
42
|
+
- MUI-based with custom styling
|
|
43
|
+
- Supports dark/light themes
|
|
44
|
+
- RTL/LTR direction support
|
|
45
|
+
- Memoized for performance
|
|
46
|
+
|
|
47
|
+
### Virtual Tables
|
|
48
|
+
- High-performance virtualized lists
|
|
49
|
+
- Infinite scroll support
|
|
50
|
+
- Sheet view and standard table views
|
|
51
|
+
- Column resizing and filtering
|
|
52
|
+
|
|
53
|
+
### Form Components
|
|
54
|
+
- React Hook Form integration (`RFH/` folder)
|
|
55
|
+
- Input components with validation
|
|
56
|
+
- Yup schema support
|
|
57
|
+
|
|
58
|
+
### Utility Modules
|
|
59
|
+
- API utilities, date/currency formatting
|
|
60
|
+
- Local storage helpers
|
|
61
|
+
- Validation utilities
|
|
62
|
+
- Error handling
|
|
63
|
+
|
|
64
|
+
## Tech Stack
|
|
65
|
+
|
|
66
|
+
| Technology | Purpose | Version |
|
|
67
|
+
| --------------------------- | -------------------------------------------- | ------- |
|
|
68
|
+
| React | UI framework and component architecture | 18.x |
|
|
69
|
+
| TypeScript | Type safety and developer experience | 5.0.x |
|
|
70
|
+
| MUI (Material-UI) | Component base and design system | 5.x |
|
|
71
|
+
| Emotion | CSS-in-JS styling with theme support | 11.x |
|
|
72
|
+
| React Hook Form | Form state management and validation | 7.x |
|
|
73
|
+
| Yup | Schema validation for forms | 1.x |
|
|
74
|
+
| react-window | List virtualization for performance | 1.8.x |
|
|
75
|
+
| Framer Motion | Animations and transitions | 10.x |
|
|
76
|
+
| Vite | Build tool and dev server | 6.x |
|
|
77
|
+
|
|
78
|
+
## Architecture
|
|
79
|
+
|
|
80
|
+
**Module Pattern**:
|
|
81
|
+
|
|
82
|
+
```mermaid
|
|
83
|
+
flowchart LR
|
|
84
|
+
A[Consumer App] --> B[Package Entry]
|
|
85
|
+
B --> C[Module Index]
|
|
86
|
+
C --> D[Components / Hooks / Utils]
|
|
87
|
+
B --> E[Theme]
|
|
88
|
+
E --> F[MUI Components]
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**Responsibilities**:
|
|
92
|
+
|
|
93
|
+
- **Components**: UI elements with props interface and styled components
|
|
94
|
+
- **Hooks**: Custom React hooks for state management and side effects
|
|
95
|
+
- **Utils**: Pure functions for formatting, validation, and data manipulation
|
|
96
|
+
- **Types**: TypeScript interfaces and type definitions
|
|
97
|
+
- **Constants**: Static configuration values and enums
|
|
98
|
+
- **Theme**: MUI theme factory with palette, typography, and component overrides
|
|
99
|
+
|
|
100
|
+
## Component Categories
|
|
101
|
+
|
|
102
|
+
### Virtual Tables (Performance-Critical)
|
|
103
|
+
- `VirtualTable` - Main virtualized table for 1000+ rows
|
|
104
|
+
- `SheetViewVirtualTable` - Spreadsheet-style with inline editing
|
|
105
|
+
|
|
106
|
+
### Forms & Inputs (React Hook Form)
|
|
107
|
+
- `RFHInput`, `RFHSelect`, `RFHCheckbox` - Form-integrated inputs
|
|
108
|
+
- `RFHDatePicker` - Date selection with validation
|
|
109
|
+
- Yup schema validation support
|
|
110
|
+
|
|
111
|
+
### Dialogs & Modals
|
|
112
|
+
- `Dialog`, `SimpleDialog` - Modal overlays
|
|
113
|
+
- `ConfirmDialog` - Confirmation with provider pattern
|
|
114
|
+
- `Window`, `WindowBackdrop` - Floating window system
|
|
115
|
+
|
|
116
|
+
### Filters & Dropdowns
|
|
117
|
+
- `FilterDropdown` - Multi-select filtering
|
|
118
|
+
- `DateFilter`, `StatusFilter`, `CurrencyFilter` - Domain filters
|
|
119
|
+
- `TreeDropdown` - Hierarchical selection
|
|
120
|
+
|
|
121
|
+
### Layout & Structure
|
|
122
|
+
- `AppWindowWrapper` - Full-page layout container
|
|
123
|
+
- `MainContainer` - Content wrapper
|
|
124
|
+
- `ExpandableSideBar` - Collapsible navigation
|
|
125
|
+
|
|
126
|
+
### Status & Feedback
|
|
127
|
+
- `StatusChip` - Status badges
|
|
128
|
+
- `Loader`, `Toaster` - Loading and notifications
|
|
129
|
+
- `ProgressBar`, `Error` - Progress and error states
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
## Use Cases
|
|
133
|
+
|
|
134
|
+
1. **Micro Frontend UI**: Shared components ensure consistent design across all Tap Payments apps
|
|
135
|
+
2. **Large Data Tables**: Virtual tables handle 10,000+ rows with smooth scrolling performance
|
|
136
|
+
3. **Form Management**: RHF components with validation reduce boilerplate in consumer apps
|
|
137
|
+
4. **Theme Consistency**: Centralized MUI theme ensures brand consistency and supports dark mode
|
|
138
|
+
5. **Type Safety**: TypeScript definitions catch errors at compile time across all consuming apps
|
|
139
|
+
|
|
140
|
+
## Import Patterns
|
|
141
|
+
|
|
142
|
+
```typescript
|
|
143
|
+
// Main entry - everything
|
|
144
|
+
import { Button, VirtualTable, useToast } from '@tap-payments/os-micro-frontend-shared'
|
|
145
|
+
|
|
146
|
+
// Specific modules - better tree-shaking
|
|
147
|
+
import { Button } from '@tap-payments/os-micro-frontend-shared/components'
|
|
148
|
+
import { useToast } from '@tap-payments/os-micro-frontend-shared/hooks'
|
|
149
|
+
import { formatCurrency } from '@tap-payments/os-micro-frontend-shared/utils'
|
|
150
|
+
import type { Column } from '@tap-payments/os-micro-frontend-shared/types'
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
## Next Steps
|
|
154
|
+
|
|
155
|
+
- [Setup Guide](./02-setup.md) - Installation and development commands
|
|
156
|
+
- [Architecture](./03-architecture.md) - Detailed system design
|
|
157
|
+
- [Component Guide](./04-component-guide.md) - Component catalog and selection
|
|
158
|
+
- [Building Components](./05-component-development.md) - How to create new components
|