@layerfi/components 0.1.102-alpha.5 → 0.1.102-alpha.6

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.
@@ -5602,7 +5602,7 @@ var import_react12 = require("react");
5602
5602
  var import_react10 = require("react");
5603
5603
 
5604
5604
  // package.json
5605
- var version = "0.1.102-alpha.5";
5605
+ var version = "0.1.102-alpha.6";
5606
5606
 
5607
5607
  // src/models/APIError.ts
5608
5608
  var APIError = class _APIError extends Error {
@@ -11437,9 +11437,10 @@ function Modal({
11437
11437
  flexBlock,
11438
11438
  onOpenChange,
11439
11439
  children,
11440
+ "aria-label": ariaLabel,
11440
11441
  role
11441
11442
  }) {
11442
- return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(ModalOverlay, { isOpen, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(InternalModal, { flexBlock, size, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Dialog, { role: role != null ? role : "dialog", children }) }) });
11443
+ return /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(ModalOverlay, { isOpen, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(InternalModal, { flexBlock, size, children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(Dialog, { role: role != null ? role : "dialog", "aria-label": ariaLabel, children }) }) });
11443
11444
  }
11444
11445
 
11445
11446
  // src/components/ui/Modal/ModalSlots.tsx
@@ -11521,8 +11522,8 @@ var import_react_aria_components7 = require("react-aria-components");
11521
11522
  var import_jsx_runtime67 = require("react/jsx-runtime");
11522
11523
  var HEADING_CLASS_NAME = "Layer__UI__Heading";
11523
11524
  var Heading2 = (0, import_react40.forwardRef)((_a, ref) => {
11524
- var _b = _a, { align, pbe, size, variant, weight } = _b, restProps = __objRest(_b, ["align", "pbe", "size", "variant", "weight"]);
11525
- const dataProperties = toDataProperties({ pbe, size, align, variant, weight });
11525
+ var _b = _a, { align, pie, pbe, size, variant, weight } = _b, restProps = __objRest(_b, ["align", "pie", "pbe", "size", "variant", "weight"]);
11526
+ const dataProperties = toDataProperties({ pbe, pie, size, align, variant, weight });
11526
11527
  return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
11527
11528
  import_react_aria_components7.Heading,
11528
11529
  __spreadProps(__spreadValues(__spreadValues({}, restProps), dataProperties), {
@@ -15978,9 +15979,13 @@ function keyLoader2(previousPageData, {
15978
15979
  access_token: accessToken,
15979
15980
  apiUrl,
15980
15981
  businessId,
15981
- query
15982
+ query,
15983
+ isEnabled
15982
15984
  }) {
15983
15985
  var _a;
15986
+ if (!isEnabled) {
15987
+ return;
15988
+ }
15984
15989
  if (accessToken && apiUrl) {
15985
15990
  return {
15986
15991
  accessToken,
@@ -16010,7 +16015,7 @@ var ListCustomersSWRResponse = class {
16010
16015
  return this.swrResponse.error !== void 0;
16011
16016
  }
16012
16017
  };
16013
- function useListCustomers({ query }) {
16018
+ function useListCustomers({ query, isEnabled = true } = {}) {
16014
16019
  const { data } = useAuth();
16015
16020
  const { businessId } = useLayerContext();
16016
16021
  const swrResponse = (0, import_infinite2.default)(
@@ -16018,7 +16023,8 @@ function useListCustomers({ query }) {
16018
16023
  previousPageData,
16019
16024
  __spreadProps(__spreadValues({}, data), {
16020
16025
  businessId,
16021
- query
16026
+ query,
16027
+ isEnabled
16022
16028
  })
16023
16029
  ),
16024
16030
  ({
@@ -16047,6 +16053,9 @@ function useListCustomers({ query }) {
16047
16053
  );
16048
16054
  return new ListCustomersSWRResponse(swrResponse);
16049
16055
  }
16056
+ function usePreloadCustomers(parameters) {
16057
+ useListCustomers(parameters);
16058
+ }
16050
16059
 
16051
16060
  // src/features/vendors/api/useListVendors.ts
16052
16061
  var import_infinite3 = __toESM(require("swr/infinite"));
@@ -16134,9 +16143,13 @@ function keyLoader3(previousPageData, {
16134
16143
  access_token: accessToken,
16135
16144
  apiUrl,
16136
16145
  businessId,
16137
- query
16146
+ query,
16147
+ isEnabled
16138
16148
  }) {
16139
16149
  var _a;
16150
+ if (!isEnabled) {
16151
+ return;
16152
+ }
16140
16153
  if (accessToken && apiUrl) {
16141
16154
  return {
16142
16155
  accessToken,
@@ -16166,7 +16179,7 @@ var ListVendorsSWRResponse = class {
16166
16179
  return this.swrResponse.error !== void 0;
16167
16180
  }
16168
16181
  };
16169
- function useListVendors({ query }) {
16182
+ function useListVendors({ query, isEnabled = true } = {}) {
16170
16183
  const { data } = useAuth();
16171
16184
  const { businessId } = useLayerContext();
16172
16185
  const swrResponse = (0, import_infinite3.default)(
@@ -16174,7 +16187,8 @@ function useListVendors({ query }) {
16174
16187
  previousPageData,
16175
16188
  __spreadProps(__spreadValues({}, data), {
16176
16189
  businessId,
16177
- query
16190
+ query,
16191
+ isEnabled
16178
16192
  })
16179
16193
  ),
16180
16194
  ({
@@ -16203,6 +16217,9 @@ function useListVendors({ query }) {
16203
16217
  );
16204
16218
  return new ListVendorsSWRResponse(swrResponse);
16205
16219
  }
16220
+ function usePreloadVendors(parameters) {
16221
+ useListVendors(parameters);
16222
+ }
16206
16223
 
16207
16224
  // src/components/ui/Input/Input.tsx
16208
16225
  var import_react69 = require("react");
@@ -17073,9 +17090,11 @@ var Square = (0, import_react82.forwardRef)(
17073
17090
  );
17074
17091
 
17075
17092
  // src/features/tags/components/TagSelector.tsx
17093
+ var import_lucide_react7 = require("lucide-react");
17076
17094
  var import_jsx_runtime127 = require("react/jsx-runtime");
17077
17095
  var TAG_SELECTOR_CLASS_NAMES = {
17078
- LAYOUT_GROUP: "Layer__TagSelectorLayoutGroup"
17096
+ LAYOUT_GROUP: "Layer__TagSelectorLayoutGroup",
17097
+ CHECK_ICON: "Layer__TagSelectorCheckIcon"
17079
17098
  };
17080
17099
  function TagSelectorLayoutGroup({ children }) {
17081
17100
  return /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_react_aria_components15.Group, { className: TAG_SELECTOR_CLASS_NAMES.LAYOUT_GROUP, children });
@@ -17154,9 +17173,7 @@ function TagSelectorSelection({
17154
17173
  Span,
17155
17174
  {
17156
17175
  slot: "value",
17157
- weight: "bold",
17158
17176
  ellipsis: true,
17159
- size: "lg",
17160
17177
  nonAria: true,
17161
17178
  children: valueLabel
17162
17179
  }
@@ -17327,7 +17344,10 @@ function TagSelector({
17327
17344
  {
17328
17345
  id: valueId,
17329
17346
  textValue: `${definitionLabel} ${valueLabel}`,
17330
- children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Span, { slot: "label", weight: "bold", children: valueLabel })
17347
+ children: /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(HStack, { gap: "2xs", children: [
17348
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(import_lucide_react7.Check, { size: 16, className: TAG_SELECTOR_CLASS_NAMES.CHECK_ICON }),
17349
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Span, { slot: "label", weight: "bold", children: valueLabel })
17350
+ ] })
17331
17351
  },
17332
17352
  valueId
17333
17353
  ) })
@@ -20356,7 +20376,7 @@ var import_date_fns21 = require("date-fns");
20356
20376
 
20357
20377
  // src/components/domain/transactions/searchField/TransactionsSearchField.tsx
20358
20378
  var import_react_aria_components17 = require("react-aria-components");
20359
- var import_lucide_react7 = require("lucide-react");
20379
+ var import_lucide_react8 = require("lucide-react");
20360
20380
 
20361
20381
  // src/components/ui/SearchField/MinimalSearchField.tsx
20362
20382
  var import_react_aria_components16 = require("react-aria-components");
@@ -20380,7 +20400,7 @@ var CLASS_NAME9 = "Layer__TransactionsSearchField";
20380
20400
  function TransactionsSearchField(_a) {
20381
20401
  var _b = _a, { slot } = _b, restProps = __objRest(_b, ["slot"]);
20382
20402
  return /* @__PURE__ */ (0, import_jsx_runtime160.jsxs)(import_react_aria_components17.Group, { slot, className: CLASS_NAME9, children: [
20383
- /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(VStack, { slot: "icon", align: "center", justify: "center", children: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(import_lucide_react7.Search, { size: 14 }) }),
20403
+ /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(VStack, { slot: "icon", align: "center", justify: "center", children: /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(import_lucide_react8.Search, { size: 14 }) }),
20384
20404
  /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(
20385
20405
  MinimalSearchField,
20386
20406
  __spreadProps(__spreadValues({}, restProps), {
@@ -20521,7 +20541,7 @@ var DropdownMenu = ({ children, ariaLabel, slots, slotProps }) => {
20521
20541
  };
20522
20542
 
20523
20543
  // src/components/BankTransactions/BankTransactionsUploadMenu.tsx
20524
- var import_lucide_react12 = require("lucide-react");
20544
+ var import_lucide_react13 = require("lucide-react");
20525
20545
 
20526
20546
  // src/components/UploadTransactions/UploadTransactions.tsx
20527
20547
  var import_react113 = require("react");
@@ -20968,7 +20988,7 @@ var CustomAccountForm = ({ initialAccountName, onCancel, onSuccess }) => {
20968
20988
  var import_react108 = require("react");
20969
20989
  var import_react_dropzone = require("react-dropzone");
20970
20990
  var import_classnames53 = __toESM(require("classnames"));
20971
- var import_lucide_react8 = require("lucide-react");
20991
+ var import_lucide_react9 = require("lucide-react");
20972
20992
  var import_jsx_runtime167 = require("react/jsx-runtime");
20973
20993
  var VALID_EXTENSIONS = [".csv"];
20974
20994
  var VALID_FILE_TYPES = ["text/csv", "text/plain", "application/vnd.ms-excel"];
@@ -20993,19 +21013,19 @@ var FileRow = ({ file, onClearFile, asDropTarget }) => {
20993
21013
  return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(VStack, { className: "Layer__csv-upload__file-row Layer__csv-upload__file-row--drop-target", children: [
20994
21014
  /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(HStack, { children: [
20995
21015
  /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Spacer, {}),
20996
- /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(IconButton, { icon: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(CloseIcon_default, { size: 16 }), onClick: onClearFile })
21016
+ /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Button2, { variant: "ghost", inset: true, icon: true, onClick: onClearFile, children: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(CloseIcon_default, { size: 16 }) })
20997
21017
  ] }),
20998
21018
  /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(HStack, { align: "center", justify: "center", gap: "xs", children: [
20999
- /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_lucide_react8.FileSpreadsheet, { size: 24 }),
21019
+ /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_lucide_react9.FileSpreadsheet, { size: 24 }),
21000
21020
  /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(P, { size: "md", children: file.name })
21001
21021
  ] })
21002
21022
  ] });
21003
21023
  }
21004
21024
  return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(HStack, { align: "center", gap: "xs", className: "Layer__csv-upload__file-row", children: [
21005
- /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_lucide_react8.FileSpreadsheet, { size: 24 }),
21025
+ /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_lucide_react9.FileSpreadsheet, { size: 24 }),
21006
21026
  /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(P, { size: "md", children: file.name }),
21007
21027
  /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Spacer, {}),
21008
- /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(IconButton, { icon: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(CloseIcon_default, { size: 16 }), onClick: onClearFile })
21028
+ /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(Button2, { variant: "ghost", inset: true, icon: true, onClick: onClearFile, children: /* @__PURE__ */ (0, import_jsx_runtime167.jsx)(CloseIcon_default, { size: 16 }) })
21009
21029
  ] });
21010
21030
  };
21011
21031
  var CsvUpload = ({ file, onFileSelected, replaceDropTarget = false }) => {
@@ -21106,7 +21126,7 @@ var Separator = ({ mbs, mbe }) => {
21106
21126
  };
21107
21127
 
21108
21128
  // src/components/CsvUpload/DownloadCsvTemplateButton.tsx
21109
- var import_lucide_react9 = require("lucide-react");
21129
+ var import_lucide_react10 = require("lucide-react");
21110
21130
  var import_jsx_runtime169 = require("react/jsx-runtime");
21111
21131
  var DownloadCsvTemplateButton = ({ children, className, csvProps, fileName = "template.csv" }) => {
21112
21132
  const { headers, rows = [] } = csvProps;
@@ -21133,7 +21153,7 @@ var DownloadCsvTemplateButton = ({ children, className, csvProps, fileName = "te
21133
21153
  {
21134
21154
  className,
21135
21155
  variant: "secondary" /* secondary */,
21136
- rightIcon: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_lucide_react9.FileDownIcon, { size: 12 }),
21156
+ rightIcon: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_lucide_react10.FileDownIcon, { size: 12 }),
21137
21157
  onClick: handleDownload,
21138
21158
  tooltip: "Need help? Download an example CSV",
21139
21159
  children
@@ -21142,7 +21162,7 @@ var DownloadCsvTemplateButton = ({ children, className, csvProps, fileName = "te
21142
21162
  };
21143
21163
 
21144
21164
  // src/components/CsvUpload/CopyTemplateHeadersButtonGroup.tsx
21145
- var import_lucide_react10 = require("lucide-react");
21165
+ var import_lucide_react11 = require("lucide-react");
21146
21166
  var import_classnames54 = __toESM(require("classnames"));
21147
21167
  var import_jsx_runtime170 = require("react/jsx-runtime");
21148
21168
  var copyTextToClipboard = (text) => {
@@ -21154,7 +21174,7 @@ var CopyTemplateHeadersButtonGroup = ({ headers, className }) => {
21154
21174
  Button,
21155
21175
  {
21156
21176
  onClick: () => copyTextToClipboard(headers[key]),
21157
- rightIcon: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(import_lucide_react10.CopyIcon, { strokeWidth: 1, size: 12 }),
21177
+ rightIcon: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(import_lucide_react11.CopyIcon, { strokeWidth: 1, size: 12 }),
21158
21178
  variant: "secondary" /* secondary */,
21159
21179
  children: headers[key]
21160
21180
  },
@@ -21385,7 +21405,7 @@ function UploadTransactionsUploadCsvStep({ selectedAccount, onSelectAccount, sel
21385
21405
 
21386
21406
  // src/components/UploadTransactions/UploadTransactionsValidateCsvStep.tsx
21387
21407
  var import_react111 = require("react");
21388
- var import_lucide_react11 = require("lucide-react");
21408
+ var import_lucide_react12 = require("lucide-react");
21389
21409
 
21390
21410
  // src/hooks/customAccounts/useCreateCustomAccountTransactions.ts
21391
21411
  var import_mutation12 = __toESM(require("swr/mutation"));
@@ -21645,7 +21665,7 @@ function UploadTransactionsValidateCsvStep({ parseCsvResponse, selectedAccountId
21645
21665
  Button,
21646
21666
  {
21647
21667
  onClick: onClickReupload,
21648
- rightIcon: /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(import_lucide_react11.RefreshCcw, { size: 12 }),
21668
+ rightIcon: /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(import_lucide_react12.RefreshCcw, { size: 12 }),
21649
21669
  variant: "primary" /* primary */,
21650
21670
  children: "Reupload"
21651
21671
  }
@@ -21675,12 +21695,29 @@ function UploadTransactionsConfirmationStep({ onRestartFlow, uploadedTransaction
21675
21695
  }
21676
21696
  ),
21677
21697
  /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Separator, {}),
21678
- /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(HStack, { gap: "xs", children: [
21698
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(HStack, { gap: "xs", className: "Layer__upload-transactions__confirmation-step__button-row", children: [
21679
21699
  /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Spacer, {}),
21680
- /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Button, { onClick: goRestartFlow, variant: "secondary" /* secondary */, rightIcon: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(UploadCloud_default, { size: 12 }), children: "Upload another file" }),
21681
- /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Button, { onClick: () => {
21682
- void next();
21683
- }, rightIcon: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(ChevronRight_default, {}), children: "I\u2019m done uploading transactions" })
21700
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
21701
+ Button,
21702
+ {
21703
+ onClick: goRestartFlow,
21704
+ variant: "secondary" /* secondary */,
21705
+ rightIcon: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(UploadCloud_default, { size: 12 }),
21706
+ className: "Layer__upload-transactions__confirmation-step__button-row-item",
21707
+ children: "Upload another file"
21708
+ }
21709
+ ),
21710
+ /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
21711
+ Button,
21712
+ {
21713
+ onClick: () => {
21714
+ void next();
21715
+ },
21716
+ rightIcon: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(ChevronRight_default, {}),
21717
+ className: "Layer__upload-transactions__confirmation-step__button-row-item",
21718
+ children: "I\u2019m done uploading transactions"
21719
+ }
21720
+ )
21684
21721
  ] })
21685
21722
  ] });
21686
21723
  }
@@ -21690,11 +21727,11 @@ var import_jsx_runtime175 = require("react/jsx-runtime");
21690
21727
  function UploadTransactionsHeader({ currentStep, isValid: isValid2 }) {
21691
21728
  if (currentStep === 2 /* Confirmation */) return null;
21692
21729
  return /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(VStack, { gap: "xs", children: [
21693
- /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(Heading2, { level: 1, children: [
21730
+ /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(Heading2, { level: 1, size: "xl", pie: "2xl", children: [
21694
21731
  currentStep === 0 /* UploadCsv */ && "Upload transactions",
21695
21732
  currentStep === 1 /* ValidateCsv */ && (isValid2 ? "Review transactions" : "Some transactions couldn't be parsed")
21696
21733
  ] }),
21697
- /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(Heading2, { level: 2, pbe: "xl", size: "2xs", variant: "subtle", weight: "normal", children: [
21734
+ /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)(Heading2, { level: 2, pbe: "xl", size: "xs", variant: "subtle", weight: "normal", children: [
21698
21735
  currentStep === 0 /* UploadCsv */ && "Import a file of transactions from your bank account or credit card",
21699
21736
  currentStep === 1 /* ValidateCsv */ && (isValid2 ? "All transactions were parsed successfully. Click \u201CUpload transactions\u201D to finalize the import." : "We found formatting errors in some transactions. Please correct the highlighted rows in your file and reupload it.")
21700
21737
  ] })
@@ -21774,7 +21811,7 @@ function BankTransactionsUploadModalContent({ onClose }) {
21774
21811
  ] });
21775
21812
  }
21776
21813
  function BankTransactionsUploadModal({ isOpen, onOpenChange }) {
21777
- return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(Modal, { flexBlock: true, isOpen, onOpenChange, size: "lg", children: ({ close: close2 }) => /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(BankTransactionsUploadModalContent, { onClose: close2 }) });
21814
+ return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(Modal, { flexBlock: true, isOpen, onOpenChange, size: "lg", "aria-label": "Upload transactions", children: ({ close: close2 }) => /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(BankTransactionsUploadModalContent, { onClose: close2 }) });
21778
21815
  }
21779
21816
 
21780
21817
  // src/components/BankTransactions/BankTransactionsUploadMenu.tsx
@@ -21797,7 +21834,7 @@ var BankTransactionsUploadMenu = () => {
21797
21834
  /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(VStack, { className: "Layer__bank-transactions__header-menu__upload-transactions-icon", children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(UploadCloud_default, { size: 16 }) }),
21798
21835
  /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(Text, { size: "sm" /* sm */, children: "Upload transactions manually" }),
21799
21836
  /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(Spacer, {}),
21800
- /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(import_lucide_react12.ChevronRight, { size: 12 })
21837
+ /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(import_lucide_react13.ChevronRight, { size: 12 })
21801
21838
  ] }, "upload-txns") })
21802
21839
  ]
21803
21840
  }
@@ -21995,7 +22032,7 @@ var Inbox = (_a) => {
21995
22032
  var Inbox_default = Inbox;
21996
22033
 
21997
22034
  // src/components/BankTransactions/BankTransactionsTableEmptyState.tsx
21998
- var import_lucide_react13 = require("lucide-react");
22035
+ var import_lucide_react14 = require("lucide-react");
21999
22036
  var import_jsx_runtime180 = require("react/jsx-runtime");
22000
22037
  function BankTransactionsTableEmptyStates({
22001
22038
  hasVisibleTransactions,
@@ -22036,7 +22073,7 @@ function BankTransactionsTableEmptyStates({
22036
22073
  status: "info" /* info */,
22037
22074
  title: "No transactions found",
22038
22075
  description: "Try adjusting your search filters",
22039
- icon: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(import_lucide_react13.SearchX, {})
22076
+ icon: /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(import_lucide_react14.SearchX, {})
22040
22077
  }
22041
22078
  );
22042
22079
  }
@@ -22057,17 +22094,17 @@ var BankTransactions = (_a) => {
22057
22094
  var _b = _a, {
22058
22095
  onError,
22059
22096
  showTags = false,
22060
- showCustomerVendor = false,
22061
22097
  mode
22062
22098
  } = _b, props = __objRest(_b, [
22063
22099
  "onError",
22064
22100
  "showTags",
22065
- "showCustomerVendor",
22066
22101
  "mode"
22067
22102
  ]);
22068
22103
  usePreloadTagDimensions({ isEnabled: showTags });
22104
+ usePreloadCustomers({ isEnabled: false });
22105
+ usePreloadVendors({ isEnabled: false });
22069
22106
  const contextData = useAugmentedBankTransactions({ monthlyView: props.monthlyView });
22070
- return /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(ErrorBoundary, { onError, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionsContext.Provider, { value: contextData, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(LegacyModeProvider, { overrideMode: mode, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionTagVisibilityProvider, { showTags, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionCustomerVendorVisibilityProvider, { showCustomerVendor, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionsContent, __spreadValues({}, props)) }) }) }) }) });
22107
+ return /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(ErrorBoundary, { onError, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionsContext.Provider, { value: contextData, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(LegacyModeProvider, { overrideMode: mode, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionTagVisibilityProvider, { showTags, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionCustomerVendorVisibilityProvider, { showCustomerVendor: false, children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(BankTransactionsContent, __spreadValues({}, props)) }) }) }) }) });
22071
22108
  };
22072
22109
  var BankTransactionsContent = ({
22073
22110
  asWidget = false,
@@ -22473,7 +22510,7 @@ var IntegrationsQuickbooksItemThumbFooter = ({ quickbooksUiState }) => {
22473
22510
  };
22474
22511
 
22475
22512
  // src/components/Integrations/IntegrationsQuickbooksItemThumb/IntegrationsQuickbooksItemThumb.tsx
22476
- var import_lucide_react14 = require("lucide-react");
22513
+ var import_lucide_react15 = require("lucide-react");
22477
22514
 
22478
22515
  // src/components/Integrations/IntegrationsQuickbooksItemThumb/IntegrationsQuickbooksUnlinkConfirmationModal.tsx
22479
22516
  var import_react120 = require("react");
@@ -22509,7 +22546,7 @@ var getBadgeConfig = (quickbooksUiState, hasSynced) => {
22509
22546
  return {
22510
22547
  variant: "error" /* ERROR */,
22511
22548
  text: "Retry Sync",
22512
- icon: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(import_lucide_react14.AlertCircle, { size: 12 })
22549
+ icon: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(import_lucide_react15.AlertCircle, { size: 12 })
22513
22550
  };
22514
22551
  }
22515
22552
  case "Connected" /* Connected */:
@@ -22517,7 +22554,7 @@ var getBadgeConfig = (quickbooksUiState, hasSynced) => {
22517
22554
  return {
22518
22555
  variant: "success" /* SUCCESS */,
22519
22556
  text: "Synced",
22520
- icon: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(import_lucide_react14.CheckIcon, { size: 12 })
22557
+ icon: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(import_lucide_react15.CheckIcon, { size: 12 })
22521
22558
  };
22522
22559
  }
22523
22560
  default:
@@ -34018,7 +34055,6 @@ var BankTransactionsWithLinkedAccounts = ({
34018
34055
  showDescriptions = true,
34019
34056
  showLedgerBalance = true,
34020
34057
  showReceiptUploads = true,
34021
- showCustomerVendor = false,
34022
34058
  showTags = false,
34023
34059
  showTooltips = false,
34024
34060
  showUnlinkItem = false,
@@ -34048,7 +34084,6 @@ var BankTransactionsWithLinkedAccounts = ({
34048
34084
  asWidget: true,
34049
34085
  showDescriptions,
34050
34086
  showReceiptUploads,
34051
- showCustomerVendor,
34052
34087
  showTags,
34053
34088
  showTooltips,
34054
34089
  showUploadOptions,
@@ -5570,7 +5570,7 @@ import { useState as useState5 } from "react";
5570
5570
  import { useReducer, useEffect as useEffect2 } from "react";
5571
5571
 
5572
5572
  // package.json
5573
- var version = "0.1.102-alpha.5";
5573
+ var version = "0.1.102-alpha.6";
5574
5574
 
5575
5575
  // src/models/APIError.ts
5576
5576
  var APIError = class _APIError extends Error {
@@ -11448,9 +11448,10 @@ function Modal({
11448
11448
  flexBlock,
11449
11449
  onOpenChange,
11450
11450
  children,
11451
+ "aria-label": ariaLabel,
11451
11452
  role
11452
11453
  }) {
11453
- return /* @__PURE__ */ jsx64(ModalOverlay, { isOpen, onOpenChange, children: /* @__PURE__ */ jsx64(InternalModal, { flexBlock, size, children: /* @__PURE__ */ jsx64(Dialog, { role: role != null ? role : "dialog", children }) }) });
11454
+ return /* @__PURE__ */ jsx64(ModalOverlay, { isOpen, onOpenChange, children: /* @__PURE__ */ jsx64(InternalModal, { flexBlock, size, children: /* @__PURE__ */ jsx64(Dialog, { role: role != null ? role : "dialog", "aria-label": ariaLabel, children }) }) });
11454
11455
  }
11455
11456
 
11456
11457
  // src/components/ui/Modal/ModalSlots.tsx
@@ -11532,8 +11533,8 @@ import { Heading as ReactAriaHeading } from "react-aria-components";
11532
11533
  import { jsx as jsx67 } from "react/jsx-runtime";
11533
11534
  var HEADING_CLASS_NAME = "Layer__UI__Heading";
11534
11535
  var Heading2 = forwardRef9((_a, ref) => {
11535
- var _b = _a, { align, pbe, size, variant, weight } = _b, restProps = __objRest(_b, ["align", "pbe", "size", "variant", "weight"]);
11536
- const dataProperties = toDataProperties({ pbe, size, align, variant, weight });
11536
+ var _b = _a, { align, pie, pbe, size, variant, weight } = _b, restProps = __objRest(_b, ["align", "pie", "pbe", "size", "variant", "weight"]);
11537
+ const dataProperties = toDataProperties({ pbe, pie, size, align, variant, weight });
11537
11538
  return /* @__PURE__ */ jsx67(
11538
11539
  ReactAriaHeading,
11539
11540
  __spreadProps(__spreadValues(__spreadValues({}, restProps), dataProperties), {
@@ -16014,9 +16015,13 @@ function keyLoader2(previousPageData, {
16014
16015
  access_token: accessToken,
16015
16016
  apiUrl,
16016
16017
  businessId,
16017
- query
16018
+ query,
16019
+ isEnabled
16018
16020
  }) {
16019
16021
  var _a;
16022
+ if (!isEnabled) {
16023
+ return;
16024
+ }
16020
16025
  if (accessToken && apiUrl) {
16021
16026
  return {
16022
16027
  accessToken,
@@ -16046,7 +16051,7 @@ var ListCustomersSWRResponse = class {
16046
16051
  return this.swrResponse.error !== void 0;
16047
16052
  }
16048
16053
  };
16049
- function useListCustomers({ query }) {
16054
+ function useListCustomers({ query, isEnabled = true } = {}) {
16050
16055
  const { data } = useAuth();
16051
16056
  const { businessId } = useLayerContext();
16052
16057
  const swrResponse = useSWRInfinite2(
@@ -16054,7 +16059,8 @@ function useListCustomers({ query }) {
16054
16059
  previousPageData,
16055
16060
  __spreadProps(__spreadValues({}, data), {
16056
16061
  businessId,
16057
- query
16062
+ query,
16063
+ isEnabled
16058
16064
  })
16059
16065
  ),
16060
16066
  ({
@@ -16083,6 +16089,9 @@ function useListCustomers({ query }) {
16083
16089
  );
16084
16090
  return new ListCustomersSWRResponse(swrResponse);
16085
16091
  }
16092
+ function usePreloadCustomers(parameters) {
16093
+ useListCustomers(parameters);
16094
+ }
16086
16095
 
16087
16096
  // src/features/vendors/api/useListVendors.ts
16088
16097
  import useSWRInfinite3 from "swr/infinite";
@@ -16170,9 +16179,13 @@ function keyLoader3(previousPageData, {
16170
16179
  access_token: accessToken,
16171
16180
  apiUrl,
16172
16181
  businessId,
16173
- query
16182
+ query,
16183
+ isEnabled
16174
16184
  }) {
16175
16185
  var _a;
16186
+ if (!isEnabled) {
16187
+ return;
16188
+ }
16176
16189
  if (accessToken && apiUrl) {
16177
16190
  return {
16178
16191
  accessToken,
@@ -16202,7 +16215,7 @@ var ListVendorsSWRResponse = class {
16202
16215
  return this.swrResponse.error !== void 0;
16203
16216
  }
16204
16217
  };
16205
- function useListVendors({ query }) {
16218
+ function useListVendors({ query, isEnabled = true } = {}) {
16206
16219
  const { data } = useAuth();
16207
16220
  const { businessId } = useLayerContext();
16208
16221
  const swrResponse = useSWRInfinite3(
@@ -16210,7 +16223,8 @@ function useListVendors({ query }) {
16210
16223
  previousPageData,
16211
16224
  __spreadProps(__spreadValues({}, data), {
16212
16225
  businessId,
16213
- query
16226
+ query,
16227
+ isEnabled
16214
16228
  })
16215
16229
  ),
16216
16230
  ({
@@ -16239,6 +16253,9 @@ function useListVendors({ query }) {
16239
16253
  );
16240
16254
  return new ListVendorsSWRResponse(swrResponse);
16241
16255
  }
16256
+ function usePreloadVendors(parameters) {
16257
+ useListVendors(parameters);
16258
+ }
16242
16259
 
16243
16260
  // src/components/ui/Input/Input.tsx
16244
16261
  import { forwardRef as forwardRef13 } from "react";
@@ -17130,9 +17147,11 @@ var Square = forwardRef18(
17130
17147
  );
17131
17148
 
17132
17149
  // src/features/tags/components/TagSelector.tsx
17150
+ import { Check as Check3 } from "lucide-react";
17133
17151
  import { jsx as jsx127, jsxs as jsxs77 } from "react/jsx-runtime";
17134
17152
  var TAG_SELECTOR_CLASS_NAMES = {
17135
- LAYOUT_GROUP: "Layer__TagSelectorLayoutGroup"
17153
+ LAYOUT_GROUP: "Layer__TagSelectorLayoutGroup",
17154
+ CHECK_ICON: "Layer__TagSelectorCheckIcon"
17136
17155
  };
17137
17156
  function TagSelectorLayoutGroup({ children }) {
17138
17157
  return /* @__PURE__ */ jsx127(Group, { className: TAG_SELECTOR_CLASS_NAMES.LAYOUT_GROUP, children });
@@ -17211,9 +17230,7 @@ function TagSelectorSelection({
17211
17230
  Span,
17212
17231
  {
17213
17232
  slot: "value",
17214
- weight: "bold",
17215
17233
  ellipsis: true,
17216
- size: "lg",
17217
17234
  nonAria: true,
17218
17235
  children: valueLabel
17219
17236
  }
@@ -17384,7 +17401,10 @@ function TagSelector({
17384
17401
  {
17385
17402
  id: valueId,
17386
17403
  textValue: `${definitionLabel} ${valueLabel}`,
17387
- children: /* @__PURE__ */ jsx127(Span, { slot: "label", weight: "bold", children: valueLabel })
17404
+ children: /* @__PURE__ */ jsxs77(HStack, { gap: "2xs", children: [
17405
+ /* @__PURE__ */ jsx127(Check3, { size: 16, className: TAG_SELECTOR_CLASS_NAMES.CHECK_ICON }),
17406
+ /* @__PURE__ */ jsx127(Span, { slot: "label", weight: "bold", children: valueLabel })
17407
+ ] })
17388
17408
  },
17389
17409
  valueId
17390
17410
  ) })
@@ -21066,7 +21086,7 @@ var FileRow = ({ file, onClearFile, asDropTarget }) => {
21066
21086
  return /* @__PURE__ */ jsxs103(VStack, { className: "Layer__csv-upload__file-row Layer__csv-upload__file-row--drop-target", children: [
21067
21087
  /* @__PURE__ */ jsxs103(HStack, { children: [
21068
21088
  /* @__PURE__ */ jsx166(Spacer, {}),
21069
- /* @__PURE__ */ jsx166(IconButton, { icon: /* @__PURE__ */ jsx166(CloseIcon_default, { size: 16 }), onClick: onClearFile })
21089
+ /* @__PURE__ */ jsx166(Button2, { variant: "ghost", inset: true, icon: true, onClick: onClearFile, children: /* @__PURE__ */ jsx166(CloseIcon_default, { size: 16 }) })
21070
21090
  ] }),
21071
21091
  /* @__PURE__ */ jsxs103(HStack, { align: "center", justify: "center", gap: "xs", children: [
21072
21092
  /* @__PURE__ */ jsx166(FileSpreadsheet, { size: 24 }),
@@ -21078,7 +21098,7 @@ var FileRow = ({ file, onClearFile, asDropTarget }) => {
21078
21098
  /* @__PURE__ */ jsx166(FileSpreadsheet, { size: 24 }),
21079
21099
  /* @__PURE__ */ jsx166(P, { size: "md", children: file.name }),
21080
21100
  /* @__PURE__ */ jsx166(Spacer, {}),
21081
- /* @__PURE__ */ jsx166(IconButton, { icon: /* @__PURE__ */ jsx166(CloseIcon_default, { size: 16 }), onClick: onClearFile })
21101
+ /* @__PURE__ */ jsx166(Button2, { variant: "ghost", inset: true, icon: true, onClick: onClearFile, children: /* @__PURE__ */ jsx166(CloseIcon_default, { size: 16 }) })
21082
21102
  ] });
21083
21103
  };
21084
21104
  var CsvUpload = ({ file, onFileSelected, replaceDropTarget = false }) => {
@@ -21753,12 +21773,29 @@ function UploadTransactionsConfirmationStep({ onRestartFlow, uploadedTransaction
21753
21773
  }
21754
21774
  ),
21755
21775
  /* @__PURE__ */ jsx173(Separator, {}),
21756
- /* @__PURE__ */ jsxs107(HStack, { gap: "xs", children: [
21776
+ /* @__PURE__ */ jsxs107(HStack, { gap: "xs", className: "Layer__upload-transactions__confirmation-step__button-row", children: [
21757
21777
  /* @__PURE__ */ jsx173(Spacer, {}),
21758
- /* @__PURE__ */ jsx173(Button, { onClick: goRestartFlow, variant: "secondary" /* secondary */, rightIcon: /* @__PURE__ */ jsx173(UploadCloud_default, { size: 12 }), children: "Upload another file" }),
21759
- /* @__PURE__ */ jsx173(Button, { onClick: () => {
21760
- void next();
21761
- }, rightIcon: /* @__PURE__ */ jsx173(ChevronRight_default, {}), children: "I\u2019m done uploading transactions" })
21778
+ /* @__PURE__ */ jsx173(
21779
+ Button,
21780
+ {
21781
+ onClick: goRestartFlow,
21782
+ variant: "secondary" /* secondary */,
21783
+ rightIcon: /* @__PURE__ */ jsx173(UploadCloud_default, { size: 12 }),
21784
+ className: "Layer__upload-transactions__confirmation-step__button-row-item",
21785
+ children: "Upload another file"
21786
+ }
21787
+ ),
21788
+ /* @__PURE__ */ jsx173(
21789
+ Button,
21790
+ {
21791
+ onClick: () => {
21792
+ void next();
21793
+ },
21794
+ rightIcon: /* @__PURE__ */ jsx173(ChevronRight_default, {}),
21795
+ className: "Layer__upload-transactions__confirmation-step__button-row-item",
21796
+ children: "I\u2019m done uploading transactions"
21797
+ }
21798
+ )
21762
21799
  ] })
21763
21800
  ] });
21764
21801
  }
@@ -21768,11 +21805,11 @@ import { jsx as jsx174, jsxs as jsxs108 } from "react/jsx-runtime";
21768
21805
  function UploadTransactionsHeader({ currentStep, isValid: isValid2 }) {
21769
21806
  if (currentStep === 2 /* Confirmation */) return null;
21770
21807
  return /* @__PURE__ */ jsxs108(VStack, { gap: "xs", children: [
21771
- /* @__PURE__ */ jsxs108(Heading2, { level: 1, children: [
21808
+ /* @__PURE__ */ jsxs108(Heading2, { level: 1, size: "xl", pie: "2xl", children: [
21772
21809
  currentStep === 0 /* UploadCsv */ && "Upload transactions",
21773
21810
  currentStep === 1 /* ValidateCsv */ && (isValid2 ? "Review transactions" : "Some transactions couldn't be parsed")
21774
21811
  ] }),
21775
- /* @__PURE__ */ jsxs108(Heading2, { level: 2, pbe: "xl", size: "2xs", variant: "subtle", weight: "normal", children: [
21812
+ /* @__PURE__ */ jsxs108(Heading2, { level: 2, pbe: "xl", size: "xs", variant: "subtle", weight: "normal", children: [
21776
21813
  currentStep === 0 /* UploadCsv */ && "Import a file of transactions from your bank account or credit card",
21777
21814
  currentStep === 1 /* ValidateCsv */ && (isValid2 ? "All transactions were parsed successfully. Click \u201CUpload transactions\u201D to finalize the import." : "We found formatting errors in some transactions. Please correct the highlighted rows in your file and reupload it.")
21778
21815
  ] })
@@ -21852,7 +21889,7 @@ function BankTransactionsUploadModalContent({ onClose }) {
21852
21889
  ] });
21853
21890
  }
21854
21891
  function BankTransactionsUploadModal({ isOpen, onOpenChange }) {
21855
- return /* @__PURE__ */ jsx175(Modal, { flexBlock: true, isOpen, onOpenChange, size: "lg", children: ({ close: close2 }) => /* @__PURE__ */ jsx175(BankTransactionsUploadModalContent, { onClose: close2 }) });
21892
+ return /* @__PURE__ */ jsx175(Modal, { flexBlock: true, isOpen, onOpenChange, size: "lg", "aria-label": "Upload transactions", children: ({ close: close2 }) => /* @__PURE__ */ jsx175(BankTransactionsUploadModalContent, { onClose: close2 }) });
21856
21893
  }
21857
21894
 
21858
21895
  // src/components/BankTransactions/BankTransactionsUploadMenu.tsx
@@ -22135,17 +22172,17 @@ var BankTransactions = (_a) => {
22135
22172
  var _b = _a, {
22136
22173
  onError,
22137
22174
  showTags = false,
22138
- showCustomerVendor = false,
22139
22175
  mode
22140
22176
  } = _b, props = __objRest(_b, [
22141
22177
  "onError",
22142
22178
  "showTags",
22143
- "showCustomerVendor",
22144
22179
  "mode"
22145
22180
  ]);
22146
22181
  usePreloadTagDimensions({ isEnabled: showTags });
22182
+ usePreloadCustomers({ isEnabled: false });
22183
+ usePreloadVendors({ isEnabled: false });
22147
22184
  const contextData = useAugmentedBankTransactions({ monthlyView: props.monthlyView });
22148
- return /* @__PURE__ */ jsx180(ErrorBoundary, { onError, children: /* @__PURE__ */ jsx180(BankTransactionsContext.Provider, { value: contextData, children: /* @__PURE__ */ jsx180(LegacyModeProvider, { overrideMode: mode, children: /* @__PURE__ */ jsx180(BankTransactionTagVisibilityProvider, { showTags, children: /* @__PURE__ */ jsx180(BankTransactionCustomerVendorVisibilityProvider, { showCustomerVendor, children: /* @__PURE__ */ jsx180(BankTransactionsContent, __spreadValues({}, props)) }) }) }) }) });
22185
+ return /* @__PURE__ */ jsx180(ErrorBoundary, { onError, children: /* @__PURE__ */ jsx180(BankTransactionsContext.Provider, { value: contextData, children: /* @__PURE__ */ jsx180(LegacyModeProvider, { overrideMode: mode, children: /* @__PURE__ */ jsx180(BankTransactionTagVisibilityProvider, { showTags, children: /* @__PURE__ */ jsx180(BankTransactionCustomerVendorVisibilityProvider, { showCustomerVendor: false, children: /* @__PURE__ */ jsx180(BankTransactionsContent, __spreadValues({}, props)) }) }) }) }) });
22149
22186
  };
22150
22187
  var BankTransactionsContent = ({
22151
22188
  asWidget = false,
@@ -34131,7 +34168,6 @@ var BankTransactionsWithLinkedAccounts = ({
34131
34168
  showDescriptions = true,
34132
34169
  showLedgerBalance = true,
34133
34170
  showReceiptUploads = true,
34134
- showCustomerVendor = false,
34135
34171
  showTags = false,
34136
34172
  showTooltips = false,
34137
34173
  showUnlinkItem = false,
@@ -34161,7 +34197,6 @@ var BankTransactionsWithLinkedAccounts = ({
34161
34197
  asWidget: true,
34162
34198
  showDescriptions,
34163
34199
  showReceiptUploads,
34164
- showCustomerVendor,
34165
34200
  showTags,
34166
34201
  showTooltips,
34167
34202
  showUploadOptions,
package/dist/index.css CHANGED
@@ -4432,6 +4432,7 @@ tbody .Layer__table__empty-row:first-child {
4432
4432
  border-top-right-radius: var(--border-radius-2xs);
4433
4433
  }
4434
4434
  .Layer__UI__Button {
4435
+ all: unset;
4435
4436
  display: inline-grid;
4436
4437
  grid-template-rows: minmax(0, 1fr);
4437
4438
  grid-auto-columns: auto;
@@ -4497,9 +4498,6 @@ tbody .Layer__table__empty-row:first-child {
4497
4498
  background-color: transparent;
4498
4499
  color: var(--button-fg-disabled);
4499
4500
  }
4500
- .Layer__UI__Button[data-variant=outlined][data-hovered]:not([data-pressed]) {
4501
- border-color: var(--button-border-color-ghost-active);
4502
- }
4503
4501
  .Layer__UI__Button[data-variant=outlined][data-pressed]:not([data-focus-visible]) {
4504
4502
  border-color: var(--button-border-color-ghost-active);
4505
4503
  outline: 2px solid var(--outline-default);
@@ -4770,8 +4768,6 @@ tbody .Layer__table__empty-row:first-child {
4770
4768
  z-index: 100;
4771
4769
  inset: 0;
4772
4770
  display: grid;
4773
- max-block-size: 100lvh;
4774
- max-inline-size: 100lvi;
4775
4771
  background: rgba(0, 0, 0, 0.5);
4776
4772
  place-items: center;
4777
4773
  }
@@ -4782,10 +4778,8 @@ tbody .Layer__table__empty-row:first-child {
4782
4778
  animation-duration: 150ms;
4783
4779
  }
4784
4780
  .Layer__Modal {
4785
- block-size: min(42rem, 90svb);
4786
- max-block-size: 90svb;
4787
- inline-size: min(36rem, 90svi);
4788
- max-inline-size: 90svi;
4781
+ block-size: min(42rem, 90%);
4782
+ inline-size: min(36rem, 90%);
4789
4783
  }
4790
4784
  .Layer__Modal[data-entering] {
4791
4785
  animation-duration: 300ms;
@@ -4797,7 +4791,7 @@ tbody .Layer__table__empty-row:first-child {
4797
4791
  block-size: auto;
4798
4792
  }
4799
4793
  .Layer__Modal[data-size=lg] {
4800
- inline-size: min(42rem, 90svi);
4794
+ inline-size: min(42rem, 90%);
4801
4795
  }
4802
4796
  .Layer__Dialog {
4803
4797
  display: flex;
@@ -5213,33 +5207,63 @@ tbody .Layer__table__empty-row:first-child {
5213
5207
  .Layer__UI__Heading[data-pbe="3xs"] {
5214
5208
  padding-block-end: var(--spacing-3xs);
5215
5209
  }
5210
+ .Layer__UI__Heading[data-pie="3xs"] {
5211
+ padding-inline-end: var(--spacing-3xs);
5212
+ }
5216
5213
  .Layer__UI__Heading[data-pbe="2xs"] {
5217
5214
  padding-block-end: var(--spacing-2xs);
5218
5215
  }
5216
+ .Layer__UI__Heading[data-pie="2xs"] {
5217
+ padding-inline-end: var(--spacing-2xs);
5218
+ }
5219
5219
  .Layer__UI__Heading[data-pbe=xs] {
5220
5220
  padding-block-end: var(--spacing-xs);
5221
5221
  }
5222
+ .Layer__UI__Heading[data-pie=xs] {
5223
+ padding-inline-end: var(--spacing-xs);
5224
+ }
5222
5225
  .Layer__UI__Heading[data-pbe=sm] {
5223
5226
  padding-block-end: var(--spacing-sm);
5224
5227
  }
5228
+ .Layer__UI__Heading[data-pie=sm] {
5229
+ padding-inline-end: var(--spacing-sm);
5230
+ }
5225
5231
  .Layer__UI__Heading[data-pbe=md] {
5226
5232
  padding-block-end: var(--spacing-md);
5227
5233
  }
5234
+ .Layer__UI__Heading[data-pie=md] {
5235
+ padding-inline-end: var(--spacing-md);
5236
+ }
5228
5237
  .Layer__UI__Heading[data-pbe=lg] {
5229
5238
  padding-block-end: var(--spacing-lg);
5230
5239
  }
5240
+ .Layer__UI__Heading[data-pie=lg] {
5241
+ padding-inline-end: var(--spacing-lg);
5242
+ }
5231
5243
  .Layer__UI__Heading[data-pbe=xl] {
5232
5244
  padding-block-end: var(--spacing-xl);
5233
5245
  }
5246
+ .Layer__UI__Heading[data-pie=xl] {
5247
+ padding-inline-end: var(--spacing-xl);
5248
+ }
5234
5249
  .Layer__UI__Heading[data-pbe="2xl"] {
5235
5250
  padding-block-end: var(--spacing-2xl);
5236
5251
  }
5252
+ .Layer__UI__Heading[data-pie="2xl"] {
5253
+ padding-inline-end: var(--spacing-2xl);
5254
+ }
5237
5255
  .Layer__UI__Heading[data-pbe="3xl"] {
5238
5256
  padding-block-end: var(--spacing-3xl);
5239
5257
  }
5258
+ .Layer__UI__Heading[data-pie="3xl"] {
5259
+ padding-inline-end: var(--spacing-3xl);
5260
+ }
5240
5261
  .Layer__UI__Heading[data-pbe="5xl"] {
5241
5262
  padding-block-end: var(--spacing-5xl);
5242
5263
  }
5264
+ .Layer__UI__Heading[data-pie="5xl"] {
5265
+ padding-inline-end: var(--spacing-5xl);
5266
+ }
5243
5267
  .Layer__UI__Heading[data-size="2xs"] {
5244
5268
  font-size: var(--text-heading-2xs);
5245
5269
  }
@@ -7459,7 +7483,7 @@ tbody .Layer__table__empty-row:first-child {
7459
7483
  flex: auto;
7460
7484
  }
7461
7485
  .Layer__upload-transactions .Layer__upload-transactions__select-account-name-input .Layer__select__control {
7462
- width: 24rem;
7486
+ max-width: 24rem;
7463
7487
  }
7464
7488
  .Layer__upload-transactions .Layer__upload-transactions__select-account-name-input--error .Layer__select__control {
7465
7489
  box-shadow: 0 0 0 1px var(--color-base-300), 0 0 0 2px var(--color-danger);
@@ -7484,7 +7508,7 @@ tbody .Layer__table__empty-row:first-child {
7484
7508
  display: flex;
7485
7509
  justify-content: space-between;
7486
7510
  }
7487
- @container (max-width: 576px) {
7511
+ @container (max-width: 36rem) {
7488
7512
  .Layer__upload-transactions .Layer__upload-transactions__template-section__button-row {
7489
7513
  flex-direction: column;
7490
7514
  }
@@ -7492,16 +7516,24 @@ tbody .Layer__table__empty-row:first-child {
7492
7516
  width: 100%;
7493
7517
  }
7494
7518
  }
7519
+ @container (max-width: 30rem) {
7520
+ .Layer__upload-transactions .Layer__upload-transactions__confirmation-step__button-row {
7521
+ flex-direction: column;
7522
+ }
7523
+ .Layer__upload-transactions .Layer__upload-transactions__confirmation-step__button-row > .Layer__upload-transactions__confirmation-step__button-row-item {
7524
+ width: 100%;
7525
+ }
7526
+ }
7495
7527
  .Layer__upload-transactions .Layer__upload-transactions__confirmation-step__data-state .Layer__data-state__description {
7496
7528
  margin-bottom: 0;
7497
7529
  }
7498
7530
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__cell--date,
7499
7531
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__header-cell--date {
7500
- min-width: 120px;
7532
+ min-width: 7.5rem;
7501
7533
  }
7502
7534
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__cell--amount,
7503
7535
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__header-cell--amount {
7504
- min-width: 120px;
7536
+ min-width: 7.5rem;
7505
7537
  }
7506
7538
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__cell--amount .Layer__csv-upload__validate-csv-table__header-cell-content,
7507
7539
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__header-cell--amount .Layer__csv-upload__validate-csv-table__header-cell-content {
@@ -7514,12 +7546,16 @@ tbody .Layer__table__empty-row:first-child {
7514
7546
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__cell--description,
7515
7547
  .Layer__upload-transactions .Layer__upload-transactions__preview_table .Layer__csv-upload__validate-csv-table__header-cell--description {
7516
7548
  flex: 3 1 0;
7549
+ min-width: 12rem;
7517
7550
  }
7518
7551
  .Layer__TagSelectorLayoutGroup {
7519
7552
  display: grid;
7520
7553
  grid-template-columns: repeat(2, minmax(0, 1fr));
7521
7554
  gap: var(--spacing-xs);
7522
7555
  }
7556
+ .Layer__ListBoxItem:not([data-disabled]) .Layer__TagSelectorCheckIcon {
7557
+ visibility: hidden;
7558
+ }
7523
7559
  .Layer__Public,
7524
7560
  .Layer__Public::before,
7525
7561
  .Layer__Public::after,
package/dist/index.d.ts CHANGED
@@ -1567,9 +1567,8 @@ declare module '@layerfi/components/components/BankTransactions/BankTransactions
1567
1567
  export interface BankTransactionsWithErrorProps extends BankTransactionsProps {
1568
1568
  onError?: (error: LayerError) => void;
1569
1569
  showTags?: boolean;
1570
- showCustomerVendor?: boolean;
1571
1570
  }
1572
- export const BankTransactions: ({ onError, showTags, showCustomerVendor, mode, ...props }: BankTransactionsWithErrorProps) => import("react/jsx-runtime").JSX.Element;
1571
+ export const BankTransactions: ({ onError, showTags, mode, ...props }: BankTransactionsWithErrorProps) => import("react/jsx-runtime").JSX.Element;
1573
1572
 
1574
1573
  }
1575
1574
  declare module '@layerfi/components/components/BankTransactions/BankTransactionsHeader' {
@@ -5148,9 +5147,9 @@ declare module '@layerfi/components/components/ui/Modal/Modal' {
5148
5147
  const Dialog: import("react").ForwardRefExoticComponent<Omit<DialogProps, "className"> & import("react").RefAttributes<HTMLElement>>;
5149
5148
  type AllowedModalOverlayProps = Pick<ComponentProps<typeof ModalOverlay>, 'isOpen' | 'onOpenChange'>;
5150
5149
  type AllowedInternalModalProps = Pick<ComponentProps<typeof InternalModal>, 'flexBlock' | 'size'>;
5151
- type AllowedDialogProps = Pick<ComponentProps<typeof Dialog>, 'children' | 'role'>;
5150
+ type AllowedDialogProps = Pick<ComponentProps<typeof Dialog>, 'children' | 'role' | 'aria-label'>;
5152
5151
  export type ModalProps = AllowedModalOverlayProps & AllowedInternalModalProps & AllowedDialogProps;
5153
- export function Modal({ isOpen, size, flexBlock, onOpenChange, children, role, }: ModalProps): import("react/jsx-runtime").JSX.Element;
5152
+ export function Modal({ isOpen, size, flexBlock, onOpenChange, children, 'aria-label': ariaLabel, role, }: ModalProps): import("react/jsx-runtime").JSX.Element;
5154
5153
  export {};
5155
5154
 
5156
5155
  }
@@ -5169,6 +5168,7 @@ declare module '@layerfi/components/components/ui/Modal/ModalSlots' {
5169
5168
  export const ModalHeading: import("react").ForwardRefExoticComponent<Omit<Omit<Omit<Omit<import("react-aria-components").HeadingProps & import("react").RefAttributes<HTMLHeadingElement>, "className"> & {
5170
5169
  align?: "center";
5171
5170
  pbe?: import("@layerfi/components/components/ui/sharedUITypes").Spacing;
5171
+ pie?: import("@layerfi/components/components/ui/sharedUITypes").Spacing;
5172
5172
  size?: "2xs" | "xs" | "sm" | "lg" | "xl";
5173
5173
  variant?: "subtle";
5174
5174
  weight?: "normal" | "bold";
@@ -5303,6 +5303,7 @@ declare module '@layerfi/components/components/ui/Typography/Heading' {
5303
5303
  type HeadingDataProps = {
5304
5304
  align?: 'center';
5305
5305
  pbe?: Spacing;
5306
+ pie?: Spacing;
5306
5307
  size?: '2xs' | 'xs' | 'sm' | 'lg' | 'xl';
5307
5308
  variant?: 'subtle';
5308
5309
  weight?: 'normal' | 'bold';
@@ -6194,8 +6195,10 @@ declare module '@layerfi/components/features/customers/api/useListCustomers' {
6194
6195
  }
6195
6196
  type UseListCustomersParams = {
6196
6197
  query?: string;
6198
+ isEnabled?: boolean;
6197
6199
  };
6198
- export function useListCustomers({ query }: UseListCustomersParams): ListCustomersSWRResponse;
6200
+ export function useListCustomers({ query, isEnabled }?: UseListCustomersParams): ListCustomersSWRResponse;
6201
+ export function usePreloadCustomers(parameters?: UseListCustomersParams): void;
6199
6202
  export {};
6200
6203
 
6201
6204
  }
@@ -6515,8 +6518,10 @@ declare module '@layerfi/components/features/vendors/api/useListVendors' {
6515
6518
  }
6516
6519
  type UseListVendorsParameters = {
6517
6520
  query?: string;
6521
+ isEnabled?: boolean;
6518
6522
  };
6519
- export function useListVendors({ query }: UseListVendorsParameters): ListVendorsSWRResponse;
6523
+ export function useListVendors({ query, isEnabled }?: UseListVendorsParameters): ListVendorsSWRResponse;
6524
+ export function usePreloadVendors(parameters?: UseListVendorsParameters): void;
6520
6525
  export {};
6521
6526
 
6522
6527
  }
@@ -10219,7 +10224,6 @@ declare module '@layerfi/components/views/BankTransactionsWithLinkedAccounts/Ban
10219
10224
  showDescriptions?: boolean;
10220
10225
  showLedgerBalance?: boolean;
10221
10226
  showReceiptUploads?: boolean;
10222
- showCustomerVendor?: boolean;
10223
10227
  showTags?: boolean;
10224
10228
  showTooltips?: boolean;
10225
10229
  showUnlinkItem?: boolean;
@@ -10231,7 +10235,7 @@ declare module '@layerfi/components/views/BankTransactionsWithLinkedAccounts/Ban
10231
10235
  mobileComponent?: MobileComponentType;
10232
10236
  stringOverrides?: BankTransactionsWithLinkedAccountsStringOverrides;
10233
10237
  }
10234
- export const BankTransactionsWithLinkedAccounts: ({ title, showTitle, elevatedLinkedAccounts, mode, showBreakConnection, showDescriptions, showLedgerBalance, showReceiptUploads, showCustomerVendor, showTags, showTooltips, showUnlinkItem, showUploadOptions, mobileComponent, stringOverrides, }: BankTransactionsWithLinkedAccountsProps) => import("react/jsx-runtime").JSX.Element;
10238
+ export const BankTransactionsWithLinkedAccounts: ({ title, showTitle, elevatedLinkedAccounts, mode, showBreakConnection, showDescriptions, showLedgerBalance, showReceiptUploads, showTags, showTooltips, showUnlinkItem, showUploadOptions, mobileComponent, stringOverrides, }: BankTransactionsWithLinkedAccountsProps) => import("react/jsx-runtime").JSX.Element;
10235
10239
  export {};
10236
10240
 
10237
10241
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@layerfi/components",
3
- "version": "0.1.102-alpha.5",
3
+ "version": "0.1.102-alpha.6",
4
4
  "description": "Layer React Components",
5
5
  "main": "dist/cjs/index.cjs",
6
6
  "module": "dist/esm/index.mjs",