@caratlogic/design-system 0.1.25 → 0.1.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/components/molecules/CompanyCard/CompanyCard.d.ts +9 -0
  2. package/dist/components/molecules/CompanyCard/CompanyCard.d.ts.map +1 -0
  3. package/dist/components/molecules/CompanyCard/CompanyCard.parts.d.ts +4 -0
  4. package/dist/components/molecules/CompanyCard/CompanyCard.parts.d.ts.map +1 -0
  5. package/dist/components/molecules/CompanyCard/CompanyCard.types.d.ts +32 -0
  6. package/dist/components/molecules/CompanyCard/CompanyCard.types.d.ts.map +1 -0
  7. package/dist/components/molecules/CompanyCard/CompanyCard.utils.d.ts +4 -0
  8. package/dist/components/molecules/CompanyCard/CompanyCard.utils.d.ts.map +1 -0
  9. package/dist/components/molecules/CompanyCard/index.d.ts +3 -0
  10. package/dist/components/molecules/CompanyCard/index.d.ts.map +1 -0
  11. package/dist/components/molecules/DateInput/DateInput.d.ts +1 -1
  12. package/dist/components/molecules/DateInput/DateInput.d.ts.map +1 -1
  13. package/dist/components/molecules/DateInput/DateInput.types.d.ts +7 -0
  14. package/dist/components/molecules/DateInput/DateInput.types.d.ts.map +1 -1
  15. package/dist/components/molecules/FilterSelect/FilterMultiSelect.d.ts +8 -0
  16. package/dist/components/molecules/FilterSelect/FilterMultiSelect.d.ts.map +1 -1
  17. package/dist/components/molecules/InvoiceComboBox/InvoiceComboBox.d.ts.map +1 -1
  18. package/dist/components/molecules/InvoiceComboBox/InvoiceComboBox.utils.d.ts +4 -0
  19. package/dist/components/molecules/InvoiceComboBox/InvoiceComboBox.utils.d.ts.map +1 -1
  20. package/dist/components/molecules/SegmentedControl/SegmentedControl.d.ts +7 -5
  21. package/dist/components/molecules/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  22. package/dist/components/molecules/SegmentedControl/SegmentedControl.types.d.ts +11 -4
  23. package/dist/components/molecules/SegmentedControl/SegmentedControl.types.d.ts.map +1 -1
  24. package/dist/components/molecules/SegmentedControl/SegmentedControl.utils.d.ts +9 -0
  25. package/dist/components/molecules/SegmentedControl/SegmentedControl.utils.d.ts.map +1 -0
  26. package/dist/components/molecules/SegmentedControl/index.d.ts +1 -1
  27. package/dist/components/molecules/SegmentedControl/index.d.ts.map +1 -1
  28. package/dist/index.cjs.js +141 -59
  29. package/dist/index.cjs.js.map +1 -1
  30. package/dist/index.d.ts +1 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.esm.js +141 -60
  33. package/dist/index.esm.js.map +1 -1
  34. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { CompanyCardProps } from './CompanyCard.types';
3
+ export type { CompanyCardProps, CompanyCardTaxNumber } from './CompanyCard.types';
4
+ /**
5
+ * A business contact at a glance: avatar + name, email / phone / tax number,
6
+ * then the address. Data-only — the app formats each value before passing it.
7
+ */
8
+ export declare function CompanyCard({ name, subtitle, email, phone, taxNumber, address, viewHref, viewLabel, title, icon, emptyLabel, className, }: CompanyCardProps): ReactElement;
9
+ //# sourceMappingURL=CompanyCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompanyCard.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/CompanyCard/CompanyCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAO1C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAElF;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,EACR,SAA0B,EAC1B,KAAiB,EACjB,IAAmD,EACnD,UAA2B,EAC3B,SAAS,GACV,EAAE,gBAAgB,GAAG,YAAY,CAyDjC"}
@@ -0,0 +1,4 @@
1
+ import type { ReactElement } from 'react';
2
+ import type { CompanyCardFieldProps } from './CompanyCard.types';
3
+ export declare function CompanyCardField({ label, children, emptyLabel, className, }: CompanyCardFieldProps): ReactElement;
4
+ //# sourceMappingURL=CompanyCard.parts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompanyCard.parts.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/CompanyCard/CompanyCard.parts.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEjE,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,QAAQ,EACR,UAAU,EACV,SAAS,GACV,EAAE,qBAAqB,GAAG,YAAY,CAiBtC"}
@@ -0,0 +1,32 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface CompanyCardTaxNumber {
3
+ /** e.g. "GSTIN" for Indian contacts, "VAT Number" otherwise. */
4
+ label: string;
5
+ value?: string;
6
+ }
7
+ export interface CompanyCardProps {
8
+ /** Display name, e.g. "Riddhesh Shah & Diamonds (JDVY)". */
9
+ name: string;
10
+ /** Secondary line under the name, e.g. "Riddhesh Shah · Udaipur, India". */
11
+ subtitle?: string;
12
+ email?: string;
13
+ phone?: string;
14
+ taxNumber?: CompanyCardTaxNumber;
15
+ /** One-line formatted address. */
16
+ address?: string;
17
+ /** Opens the contact in a new tab from the header link. */
18
+ viewHref?: string;
19
+ viewLabel?: string;
20
+ title?: string;
21
+ icon?: ReactNode;
22
+ /** Shown for any field without a value. */
23
+ emptyLabel?: string;
24
+ className?: string;
25
+ }
26
+ export interface CompanyCardFieldProps {
27
+ label: string;
28
+ children?: ReactNode;
29
+ emptyLabel: string;
30
+ className?: string;
31
+ }
32
+ //# sourceMappingURL=CompanyCard.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompanyCard.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/CompanyCard/CompanyCard.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,kCAAkC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,4 @@
1
+ /** `—` is the placeholder the apps' display helpers return for a missing value. */
2
+ export declare function hasValue(value?: string | null): value is string;
3
+ export declare function getInitial(name: string): string;
4
+ //# sourceMappingURL=CompanyCard.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompanyCard.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/CompanyCard/CompanyCard.utils.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,IAAI,MAAM,CAG/D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C"}
@@ -0,0 +1,3 @@
1
+ export { CompanyCard } from './CompanyCard';
2
+ export type { CompanyCardProps, CompanyCardTaxNumber } from './CompanyCard';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/CompanyCard/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
@@ -5,5 +5,5 @@ import './date-range-picker.css';
5
5
  * Date field that can be typed or picked. The text box takes a masked
6
6
  * `DD/MM/YYYY` entry; the trailing button opens the same calendar as before.
7
7
  */
8
- export declare function DateInput({ value, onChange, onBlur, name, id, className, min, max, disabled, placeholder, ariaLabel, }: DateInputProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function DateInput({ value, onChange, onBlur, name, id, className, min, max, disabled, placeholder, ariaLabel, align, }: DateInputProps): import("react/jsx-runtime").JSX.Element;
9
9
  //# sourceMappingURL=DateInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DateInput/DateInput.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,4CAA4C,CAAC;AACpD,OAAO,yBAAyB,CAAC;AAEjC;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,EAAE,EACF,SAAS,EACT,GAAG,EACH,GAAG,EACH,QAAQ,EACR,WAAyB,EACzB,SAAS,GACV,EAAE,cAAc,2CA+HhB"}
1
+ {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DateInput/DateInput.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,4CAA4C,CAAC;AACpD,OAAO,yBAAyB,CAAC;AAEjC;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,EAAE,EACF,SAAS,EACT,GAAG,EACH,GAAG,EACH,QAAQ,EACR,WAAyB,EACzB,SAAS,EACT,KAAe,GAChB,EAAE,cAAc,2CA+HhB"}
@@ -13,6 +13,13 @@ export interface DateInputProps {
13
13
  placeholder?: string;
14
14
  /** Accessible name for the text field when there is no visible label. */
15
15
  ariaLabel?: string;
16
+ /**
17
+ * Which edge of the field the calendar lines up with. Default `start`.
18
+ * Use `end` for a field sitting at the right of its container, where a
19
+ * start-aligned calendar would overflow and get shifted by collision
20
+ * detection into looking misaligned.
21
+ */
22
+ align?: 'start' | 'center' | 'end';
16
23
  }
17
24
  export type UseDateInputParams = Pick<DateInputProps, 'value' | 'onChange' | 'onBlur' | 'min' | 'max' | 'disabled'>;
18
25
  export interface UseDateInputResult {
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DateInput/DateInput.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,cAAc,EACd,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,UAAU,CAC7D,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,gBAAgB,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE,aAAa,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChE,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACxC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,uBAAuB,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"DateInput.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/DateInput/DateInput.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,IAAI,CAAC;IAC3C,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8EAA8E;IAC9E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;CACpC;AAED,MAAM,MAAM,kBAAkB,GAAG,IAAI,CACnC,cAAc,EACd,OAAO,GAAG,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,GAAG,UAAU,CAC7D,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,2EAA2E;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1C,gBAAgB,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACjE,aAAa,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAChE,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,IAAI,CAAC;IACxC,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,uBAAuB,EAAE,OAAO,CAAC;IACjC,uBAAuB,EAAE,OAAO,CAAC;IACjC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -13,6 +13,14 @@ export interface FilterMultiSelectProps {
13
13
  options: FilterMultiSelectOption[];
14
14
  triggerClassName?: string;
15
15
  contentClassName?: string;
16
+ /** Class on the scrolling option list, e.g. to cap its height. */
17
+ listClassName?: string;
18
+ /**
19
+ * Required when the dropdown sits inside a modal overlay such as `SlideOut`.
20
+ * That overlay disables pointer events outside itself, which otherwise leaves
21
+ * this popover visible but unscrollable.
22
+ */
23
+ modal?: boolean;
16
24
  }
17
25
  /**
18
26
  * Multi-select filter dropdown — Popover + checkbox list, matching the
@@ -1 +1 @@
1
- {"version":3,"file":"FilterMultiSelect.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/FilterSelect/FilterMultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAW3C,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAwExD,CAAC"}
1
+ {"version":3,"file":"FilterMultiSelect.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/FilterSelect/FilterMultiSelect.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAW3C,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACnC,OAAO,EAAE,uBAAuB,EAAE,CAAC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CA0ExD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"InvoiceComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/InvoiceComboBox/InvoiceComboBox.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAEjC,wBAAgB,eAAe,CAAC,EAC9B,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,iBAAwC,EACxC,SAAS,EACT,QAAgB,EAChB,KAAK,EACL,YAAmB,EACnB,aAAa,GACd,EAAE,oBAAoB,2CAsFtB"}
1
+ {"version":3,"file":"InvoiceComboBox.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/InvoiceComboBox/InvoiceComboBox.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AAEjC,wBAAgB,eAAe,CAAC,EAC9B,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,iBAAwC,EACxC,SAAS,EACT,QAAgB,EAChB,KAAK,EACL,YAAmB,EACnB,aAAa,GACd,EAAE,oBAAoB,2CA6FtB"}
@@ -1,4 +1,8 @@
1
1
  import type { Invoice } from '@/types/invoice';
2
2
  export declare function formatInvoiceLabel(invoice: Invoice): string;
3
3
  export declare function formatCurrency(amount: number, currency?: string): string;
4
+ /** The currency the invoice was issued in; `baseCurrency` is only its ledger currency. */
5
+ export declare function getInvoiceCurrency(invoice: Invoice): string;
6
+ export declare function getInvoiceCompany(invoice: Invoice): string;
7
+ export declare function getInvoiceLocation(invoice: Invoice): string;
4
8
  //# sourceMappingURL=InvoiceComboBox.utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InvoiceComboBox.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/InvoiceComboBox/InvoiceComboBox.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAM3D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAKxE"}
1
+ {"version":3,"file":"InvoiceComboBox.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/InvoiceComboBox/InvoiceComboBox.utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAE/C,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAM3D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAKxE;AAED,0FAA0F;AAC1F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAG3D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAM3D"}
@@ -1,12 +1,14 @@
1
+ import type { ReactElement } from 'react';
1
2
  import type { SegmentedControlProps } from './SegmentedControl.types';
2
- export type { SegmentedControlOption, SegmentedControlProps, } from './SegmentedControl.types';
3
+ export type { SegmentedControlOption, SegmentedControlOptionLayout, SegmentedControlProps, SegmentedControlVariant, } from './SegmentedControl.types';
3
4
  /**
4
- * Pill-shaped segmented control with N equally-sized buttons. The active
5
- * segment lifts forward with a white bg + subtle shadow; inactive segments
6
- * blend into the muted container background.
5
+ * Pill-shaped segmented control. The active segment lifts forward with a card
6
+ * bg, primary border and subtle shadow; inactive segments blend into the muted
7
+ * container background. Giving options a `description` makes the default
8
+ * segments taller, with the icon in a badge.
7
9
  *
8
10
  * Single source of truth for "two-or-more mutually exclusive views" toggles
9
11
  * (e.g. Owned / Memo on the ownership form).
10
12
  */
11
- export declare function SegmentedControl<V extends string = string>({ value, onChange, options, ariaLabel, className, disabled, variant, }: SegmentedControlProps<V>): import("react/jsx-runtime").JSX.Element;
13
+ export declare function SegmentedControl<V extends string = string>({ value, onChange, options, ariaLabel, className, disabled, variant, optionLayout, }: SegmentedControlProps<V>): ReactElement;
12
14
  //# sourceMappingURL=SegmentedControl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedControl.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/SegmentedControl.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EAC1D,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,QAAQ,EACR,OAAmB,GACpB,EAAE,qBAAqB,CAAC,CAAC,CAAC,2CAsD1B"}
1
+ {"version":3,"file":"SegmentedControl.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/SegmentedControl.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAUtE,YAAY,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,EAC1D,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,SAAS,EACT,QAAQ,EACR,OAAmB,EACnB,YAAwB,GACzB,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,YAAY,CAmCzC"}
@@ -1,8 +1,13 @@
1
1
  import type { ReactNode } from 'react';
2
+ export type SegmentedControlVariant = 'default' | 'bordered';
3
+ /** Where an option's description sits relative to its label. */
4
+ export type SegmentedControlOptionLayout = 'inline' | 'stacked';
2
5
  export interface SegmentedControlOption<V extends string = string> {
3
6
  value: V;
4
7
  label: ReactNode;
5
8
  icon?: ReactNode;
9
+ /** Secondary text, e.g. "Invoice currency" or a rate. Makes the `default` segment taller and puts the icon in a badge. */
10
+ description?: ReactNode;
6
11
  disabled?: boolean;
7
12
  }
8
13
  export interface SegmentedControlProps<V extends string = string> {
@@ -13,10 +18,12 @@ export interface SegmentedControlProps<V extends string = string> {
13
18
  className?: string;
14
19
  disabled?: boolean;
15
20
  /**
16
- * `default` — active segment lifts forward with white bg + shadow (muted inactive text).
17
- * `bordered` — active segment additionally carries a primary border and inactive
18
- * labels stay full-contrast (`text-foreground`). Matches the Figma "Advance Tabs" style.
21
+ * `default` — equal-width segments; the active one lifts forward with a primary border (muted inactive text).
22
+ * `bordered` — segments size to their content and inactive labels stay
23
+ * full-contrast (`text-foreground`). Matches the Figma "Advance Tabs" style.
19
24
  */
20
- variant?: 'default' | 'bordered';
25
+ variant?: SegmentedControlVariant;
26
+ /** Description beside the label (`inline`) or under it (`stacked`, default). */
27
+ optionLayout?: SegmentedControlOptionLayout;
21
28
  }
22
29
  //# sourceMappingURL=SegmentedControl.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SegmentedControl.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/SegmentedControl.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC/D,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC9D,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CAClC"}
1
+ {"version":3,"file":"SegmentedControl.types.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/SegmentedControl.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,UAAU,CAAC;AAE7D,gEAAgE;AAChE,MAAM,MAAM,4BAA4B,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEhE,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC/D,KAAK,EAAE,CAAC,CAAC;IACT,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0HAA0H;IAC1H,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM;IAC9D,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,OAAO,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;OAIG;IACH,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,gFAAgF;IAChF,YAAY,CAAC,EAAE,4BAA4B,CAAC;CAC7C"}
@@ -0,0 +1,9 @@
1
+ import type { SegmentedControlOptionLayout, SegmentedControlVariant } from './SegmentedControl.types';
2
+ /** Options with a description get the taller layout with an icon badge (default variant only). */
3
+ export declare function hasDetails(variant: SegmentedControlVariant, hasDescription: boolean): boolean;
4
+ export declare function getListClassName(variant: SegmentedControlVariant, detailed: boolean): string;
5
+ export declare function getSegmentClassName(variant: SegmentedControlVariant, isActive: boolean, isDisabled: boolean, detailed?: boolean): string;
6
+ export declare function getIconClassName(detailed: boolean, isActive: boolean): string;
7
+ export declare function getContentClassName(layout: SegmentedControlOptionLayout): string;
8
+ export declare function getDescriptionClassName(isActive: boolean): string;
9
+ //# sourceMappingURL=SegmentedControl.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SegmentedControl.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/SegmentedControl.utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAElC,kGAAkG;AAClG,wBAAgB,UAAU,CAAC,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,OAAO,GAAG,OAAO,CAE7F;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,CAK5F;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,uBAAuB,EAChC,QAAQ,EAAE,OAAO,EACjB,UAAU,EAAE,OAAO,EACnB,QAAQ,UAAQ,GACf,MAAM,CAiBR;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,CAQ7E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,4BAA4B,GAAG,MAAM,CAIhF;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,CAEjE"}
@@ -1,3 +1,3 @@
1
1
  export { SegmentedControl } from './SegmentedControl';
2
- export type { SegmentedControlOption, SegmentedControlProps, } from './SegmentedControl';
2
+ export type { SegmentedControlOption, SegmentedControlOptionLayout, SegmentedControlProps, SegmentedControlVariant, } from './SegmentedControl';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/SegmentedControl/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,qBAAqB,EACrB,uBAAuB,GACxB,MAAM,oBAAoB,CAAC"}