@narmi/design_system 6.15.0 → 6.15.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.
Files changed (54) hide show
  1. package/dist/index.js +12 -12
  2. package/dist/index.js.map +1 -1
  3. package/dist/tokens/css/rgbColors.css +1 -1
  4. package/dist/tokens/css/rgbColors.scss +1 -1
  5. package/dist/tokens/css/tokens.css +1 -1
  6. package/dist/tokens/css/tokens.scss +1 -1
  7. package/dist/tokens/js/colors.esm.js +1 -1
  8. package/dist/tokens/js/colors.js +1 -1
  9. package/dist/tokens/js/manifest.esm.js +1 -1
  10. package/dist/tokens/js/manifest.js +1 -1
  11. package/dist/tokens/js/reactNativeWeb.js +1 -1
  12. package/dist/types/Error/index.d.ts +20 -0
  13. package/dist/types/Error/index.d.ts.map +1 -0
  14. package/dist/types/Field/FauxInput/index.d.ts +20 -0
  15. package/dist/types/Field/FauxInput/index.d.ts.map +1 -0
  16. package/dist/types/Field/Select/SelectItem.d.ts +15 -0
  17. package/dist/types/Field/Select/SelectItem.d.ts.map +1 -0
  18. package/dist/types/Field/Select/index.d.ts +24 -0
  19. package/dist/types/Field/Select/index.d.ts.map +1 -0
  20. package/dist/types/Field/Text/index.d.ts +14 -0
  21. package/dist/types/Field/Text/index.d.ts.map +1 -0
  22. package/dist/types/FieldToken/index.d.ts +23 -0
  23. package/dist/types/FieldToken/index.d.ts.map +1 -0
  24. package/dist/types/FormSection/index.d.ts +21 -0
  25. package/dist/types/FormSection/index.d.ts.map +1 -0
  26. package/dist/types/IconButton/index.d.ts +72 -0
  27. package/dist/types/IconButton/index.d.ts.map +1 -0
  28. package/dist/types/LoadingShim/index.d.ts +31 -0
  29. package/dist/types/LoadingShim/index.d.ts.map +1 -0
  30. package/dist/types/Pagination/index.d.ts +69 -0
  31. package/dist/types/Pagination/index.d.ts.map +1 -0
  32. package/dist/types/Pagination/usePagination.d.ts +39 -0
  33. package/dist/types/Pagination/usePagination.d.ts.map +1 -0
  34. package/dist/types/ResponsiveFlex/index.d.ts +52 -0
  35. package/dist/types/ResponsiveFlex/index.d.ts.map +1 -0
  36. package/dist/types/Table/util/pinning.d.ts +7 -0
  37. package/dist/types/Table/util/pinning.d.ts.map +1 -0
  38. package/dist/types/TimelineEvent/index.d.ts +75 -0
  39. package/dist/types/TimelineEvent/index.d.ts.map +1 -0
  40. package/dist/types/Toggle/index.d.ts +40 -0
  41. package/dist/types/Toggle/index.d.ts.map +1 -0
  42. package/dist/types/formatters/formatDate.d.ts +17 -0
  43. package/dist/types/formatters/formatDate.d.ts.map +1 -0
  44. package/dist/types/formatters/formatNumber.d.ts +22 -0
  45. package/dist/types/formatters/formatNumber.d.ts.map +1 -0
  46. package/dist/types/hooks/useLockBodyScroll/index.d.ts +7 -0
  47. package/dist/types/hooks/useLockBodyScroll/index.d.ts.map +1 -0
  48. package/dist/types/hooks/useSupportsAnchorPositioning/index.d.ts +12 -2
  49. package/dist/types/hooks/useSupportsAnchorPositioning/index.d.ts.map +1 -1
  50. package/dist/types/icons/iconNames.d.ts +3 -0
  51. package/dist/types/icons/iconNames.d.ts.map +1 -0
  52. package/dist/types/util/AsElement.d.ts +44 -0
  53. package/dist/types/util/AsElement.d.ts.map +1 -0
  54. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Wed, 10 Jun 2026 22:41:06 GMT
3
+ * Generated on Fri, 31 Jul 2026 18:32:56 GMT
4
4
  */
5
5
 
6
6
  :root {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Wed, 10 Jun 2026 22:41:06 GMT
3
+ * Generated on Fri, 31 Jul 2026 18:32:56 GMT
4
4
  */
5
5
 
6
6
  :root {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Wed, 10 Jun 2026 22:41:06 GMT
3
+ * Generated on Fri, 31 Jul 2026 18:32:56 GMT
4
4
  */
5
5
 
6
6
  :root {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Wed, 10 Jun 2026 22:41:06 GMT
3
+ * Generated on Fri, 31 Jul 2026 18:32:56 GMT
4
4
  */
5
5
 
6
6
  :root {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * DO NOT EDIT
3
- * Generated by style-dictionary on Wed Jun 10 2026 22:41:06 GMT+0000 (Coordinated Universal Time)
3
+ * Generated by style-dictionary on Fri Jul 31 2026 14:32:56 GMT-0400 (Eastern Daylight Time)
4
4
  * github.com/narmi/design_system/
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Do not edit directly
3
- * Generated on Wed, 10 Jun 2026 22:41:06 GMT
3
+ * Generated on Fri, 31 Jul 2026 18:32:56 GMT
4
4
  */
5
5
 
6
6
  module.exports = {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * DO NOT EDIT
3
- * Generated by style-dictionary on Wed Jun 10 2026 22:41:06 GMT+0000 (Coordinated Universal Time)
3
+ * Generated by style-dictionary on Fri Jul 31 2026 14:32:56 GMT-0400 (Eastern Daylight Time)
4
4
  * github.com/narmi/design_system/
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * DO NOT EDIT
3
- * Generated by style-dictionary on Wed Jun 10 2026 22:41:06 GMT+0000 (Coordinated Universal Time)
3
+ * Generated by style-dictionary on Fri Jul 31 2026 14:32:56 GMT-0400 (Eastern Daylight Time)
4
4
  * github.com/narmi/design_system/
5
5
  */
6
6
 
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * DO NOT EDIT
3
- * Generated by style-dictionary on Wed Jun 10 2026 22:41:06 GMT+0000 (Coordinated Universal Time)
3
+ * Generated by style-dictionary on Fri Jul 31 2026 14:32:56 GMT-0400 (Eastern Daylight Time)
4
4
  * github.com/narmi/design_system/
5
5
  */
6
6
 
@@ -0,0 +1,20 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ type MarginTop = "xxs" | "xs" | "s" | "m" | "l" | "xl" | "xxl" | "none";
4
+ export interface ErrorProps {
5
+ /**
6
+ * Error message(s) to display. Falsy values (including `null`) render
7
+ * nothing, which lets callers pass nullable state directly.
8
+ */
9
+ error?: string | string[] | null;
10
+ marginTop?: MarginTop;
11
+ }
12
+ declare const Error: {
13
+ ({ error, marginTop }: ErrorProps): React.JSX.Element;
14
+ propTypes: {
15
+ error: PropTypes.Requireable<PropTypes.Requireable<string> | PropTypes.Requireable<string[]>>;
16
+ marginTop: PropTypes.Requireable<string>;
17
+ };
18
+ };
19
+ export default Error;
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Error/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,KAAK,SAAS,GAAG,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;AAqBxE,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,QAAA,MAAM,KAAK;2BAAkC,UAAU;;;;;CAgBtD,CAAC;AASF,eAAe,KAAK,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { default as React } from 'react';
2
+ export interface FauxInputProps {
3
+ children: React.ReactNode;
4
+ /** When true, renders active (focused) border styling */
5
+ isActive?: boolean;
6
+ isDisabled?: boolean;
7
+ hasError?: boolean;
8
+ className?: string;
9
+ }
10
+ /**
11
+ * Internal presentational component.
12
+ * Renders a `<button>` styled to look like `.nds-field-input-box`.
13
+ * Used by Field.Select (and future dropdown-based Field variants)
14
+ * as the anchor/trigger element.
15
+ *
16
+ * Accepts arbitrary props (e.g. from downshift's getToggleButtonProps)
17
+ * which are spread onto the underlying `<button>`.
18
+ */
19
+ export declare const FauxInput: React.ForwardRefExoticComponent<Omit<FauxInputProps & Record<string, any>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Field/FauxInput/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAG1C,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,SAAS,6HAiCrB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { default as React } from 'react';
2
+ export interface FieldSelectItemProps {
3
+ /** The value submitted when this item is selected */
4
+ value: string;
5
+ /** Display content for the option */
6
+ children: React.ReactNode;
7
+ }
8
+ /**
9
+ * Compound child for Field.Select.
10
+ * Renders its children directly — all positioning and interaction
11
+ * is handled by the parent FieldSelect via downshift.
12
+ */
13
+ declare const FieldSelectItem: React.FC<FieldSelectItemProps>;
14
+ export default FieldSelectItem;
15
+ //# sourceMappingURL=SelectItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectItem.d.ts","sourceRoot":"","sources":["../../../../src/Field/Select/SelectItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED;;;;GAIG;AACH,QAAA,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAEnD,CAAC;AAIF,eAAe,eAAe,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { default as React } from 'react';
2
+ import { FieldProps } from '../types';
3
+ import { FieldSelectItemProps } from './SelectItem';
4
+ export interface FieldSelectProps extends Pick<FieldProps, "id" | "label" | "errors" | "isDisabled"> {
5
+ /** Currently selected value (controlled) */
6
+ value: string;
7
+ /** Called with the new value when selection changes */
8
+ onChange: (value: string) => void;
9
+ /** Placeholder text when no value is selected */
10
+ placeholder?: string;
11
+ /** Field.Select.Item elements */
12
+ children: React.ReactNode;
13
+ }
14
+ /**
15
+ * Field.Select renders a dropdown select styled consistently with Field.Text.
16
+ * It uses downshift's `useSelect` for keyboard navigation and ARIA,
17
+ * and `useDropdownLayer` for dropdown positioning.
18
+ */
19
+ export declare const FieldSelect: {
20
+ ({ label, id, value, onChange, placeholder, errors, isDisabled, children, }: FieldSelectProps): React.JSX.Element;
21
+ displayName: string;
22
+ Item: React.FC<FieldSelectItemProps>;
23
+ };
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Field/Select/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AASpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAC5C,UAAU,EACV,IAAI,GAAG,OAAO,GAAG,QAAQ,GAAG,YAAY,CACzC;IACC,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AASD;;;;GAIG;AACH,eAAO,MAAM,WAAW;iFASrB,gBAAgB;;;CA4GlB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { default as React } from 'react';
2
+ import { MaskitoOptions } from '@maskito/core';
3
+ import { FieldProps } from '../types';
4
+ export interface FieldTextProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, "onChange" | "value" | "id" | "disabled" | "aria-invalid" | "aria-describedby">, FieldProps {
5
+ value: string;
6
+ onChange: (value: string) => void;
7
+ mask?: MaskitoOptions;
8
+ }
9
+ /**
10
+ * Field.Text renders a decorative shell containing a native text input.
11
+ * It automatically handles ARIA orchestration and optional input masking.
12
+ */
13
+ export declare const FieldText: React.ForwardRefExoticComponent<FieldTextProps & React.RefAttributes<HTMLInputElement>>;
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Field/Text/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6B,MAAM,OAAO,CAAC;AASlD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,MAAM,WAAW,cACf,SACE,IAAI,CACF,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EACzC,UAAU,GACV,OAAO,GACP,IAAI,GACJ,UAAU,GACV,cAAc,GACd,kBAAkB,CACrB,EACD,UAAU;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,yFA0GrB,CAAC"}
@@ -0,0 +1,23 @@
1
+ import { default as React } from 'react';
2
+ export interface FieldTokenProps {
3
+ /** Label text of tag. */
4
+ label: string;
5
+ /**
6
+ * Callback for user dismissal action,
7
+ * called with token label as the argument
8
+ */
9
+ onDismiss?: (label: string) => void;
10
+ /** Optional value for `data-testid` attribute */
11
+ testId?: string;
12
+ /**
13
+ * Disabled state for FieldToken
14
+ */
15
+ disabled?: boolean;
16
+ }
17
+ /**
18
+ * Shared component to render "tokens" inside inputs, active filters,
19
+ * or other user selections we want to tokenize.
20
+ */
21
+ declare const FieldToken: React.ForwardRefExoticComponent<FieldTokenProps & React.RefAttributes<HTMLDivElement>>;
22
+ export default FieldToken;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/FieldToken/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,WAAW,eAAe;IAC9B,yBAAyB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,QAAA,MAAM,UAAU,wFA8Cf,CAAC;AAkBF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ export interface FormSectionProps {
4
+ /** Title of form section */
5
+ title?: string;
6
+ /** Optional content rendered below the section heading */
7
+ children?: React.ReactNode;
8
+ }
9
+ /**
10
+ * A sectioning element for forms that renders a label and line above the section
11
+ */
12
+ declare const FormSection: {
13
+ ({ title, children }: FormSectionProps): React.JSX.Element;
14
+ propTypes: {
15
+ /** Title of form section */
16
+ title: PropTypes.Requireable<string>;
17
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
18
+ };
19
+ };
20
+ export default FormSection;
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/FormSection/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,MAAM,WAAW,gBAAgB;IAC/B,4BAA4B;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,QAAA,MAAM,WAAW;0BAAyB,gBAAgB;;QAkCxD,4BAA4B;;;;CAH7B,CAAC;AAQF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ import { VALID_ICON_NAMES } from '../icons/iconNames';
4
+ import { IconName } from '../types/Icon.types';
5
+ export { VALID_ICON_NAMES };
6
+ export type IconButtonKind = "action" | "plain" | "themed";
7
+ export interface IconButtonProps {
8
+ /** Name of Narmi icon */
9
+ name: IconName;
10
+ /** Renders the icon button label */
11
+ label?: string;
12
+ /** disables the icon button when set to `true` */
13
+ disabled?: boolean;
14
+ /** style of icon button to render */
15
+ kind?: IconButtonKind;
16
+ /** type attribute for underlying HTML button element */
17
+ type?: string;
18
+ /** Optional text size of the icon in the icon button defaults different for different kinds (plain/action)*/
19
+ textSize?: "xs" | "s" | "m" | "l";
20
+ /** Click callback, with event object passed as argument */
21
+ onClick?: (event: React.MouseEvent) => void;
22
+ /** Optional value for `data-testid` attribute */
23
+ testId?: string;
24
+ /** className for adding classNames to the icon button */
25
+ className?: string;
26
+ /**
27
+ * The html element to render as the root node of `Button`.
28
+ *
29
+ * When rendering as an "a" you **MUST** pass an `href` attribute
30
+ * for the anchor to be valid.
31
+ */
32
+ as?: "a" | "button";
33
+ [x: string]: unknown;
34
+ }
35
+ /**
36
+ * Narmi style Icon Button.
37
+ *
38
+ * Icon Button renders a button with a central Narmi icon
39
+ *
40
+ */
41
+ declare const IconButton: {
42
+ ({ disabled, kind, textSize, testId, label, name, onClick, type, as, ...otherProps }: IconButtonProps): React.JSX.Element;
43
+ propTypes: {
44
+ /** Name of Narmi icon */
45
+ name: PropTypes.Validator<string>;
46
+ /** Renders the icon button label */
47
+ label: PropTypes.Requireable<string>;
48
+ /** disables the icon button when set to `true` */
49
+ disabled: PropTypes.Requireable<boolean>;
50
+ /** style of icon button to render */
51
+ kind: PropTypes.Requireable<string>;
52
+ /** type attribute for underlying HTML button element */
53
+ type: PropTypes.Requireable<string>;
54
+ /** Optional text size of the icon in the icon button defaults different for different kinds (plain/action)*/
55
+ textSize: PropTypes.Requireable<string>;
56
+ /** Click callback, with event object passed as argument */
57
+ onClick: PropTypes.Requireable<(...args: any[]) => any>;
58
+ /** Optional value for `data-testid` attribute */
59
+ testId: PropTypes.Requireable<string>;
60
+ /** className for adding classNames to the icon button */
61
+ className: PropTypes.Requireable<string>;
62
+ /**
63
+ * The html element to render as the root node of `Button`.
64
+ *
65
+ * When rendering as an "a" you **MUST** pass an `href` attribute
66
+ * for the anchor to be valid.
67
+ */
68
+ as: PropTypes.Requireable<string>;
69
+ };
70
+ };
71
+ export default IconButton;
72
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/IconButton/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,eAAe;IAC9B,yBAAyB;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,wDAAwD;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6GAA6G;IAC7G,QAAQ,CAAC,EAAE,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,2DAA2D;IAC3D,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5C,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,EAAE,CAAC,EAAE,GAAG,GAAG,QAAQ,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED;;;;;GAKG;AACH,QAAA,MAAM,UAAU;0FAWb,eAAe;;QA0BhB,yBAAyB;;QAEzB,oCAAoC;;QAEpC,kDAAkD;;QAElD,qCAAqC;;QAErC,wDAAwD;;QAExD,6GAA6G;;QAE7G,2DAA2D;;QAE3D,iDAAiD;;QAEjD,0DAA0D;;QAE1D;;;;;WAKG;;;CA1BJ,CAAC;AA8BF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ export interface LoadingShimProps {
4
+ /** Loadable content area - will render normally unless `isLoading` is true */
5
+ children?: React.ReactNode;
6
+ /** When `true`, the loading shim appears over child content */
7
+ isLoading?: boolean;
8
+ /** Optional value for `data-testid` attribute */
9
+ testId?: string;
10
+ /** Size of the loading indicator */
11
+ size?: "s" | "l";
12
+ }
13
+ /**
14
+ * Used to wrap a block of loadable content. When `isLoading` is set to true,
15
+ * the content area will have an overlay and loading animation.
16
+ */
17
+ declare const LoadingShim: {
18
+ ({ isLoading, children, testId, size, }: LoadingShimProps): React.JSX.Element;
19
+ propTypes: {
20
+ /** Loadable content area - will render normally unless `isLoading` is true */
21
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
22
+ /** When `true`, the loading shim appears over child content */
23
+ isLoading: PropTypes.Requireable<boolean>;
24
+ /** Optional value for `data-testid` attribute */
25
+ testId: PropTypes.Requireable<string>;
26
+ /** Size of the loading indicator */
27
+ size: PropTypes.Requireable<string>;
28
+ };
29
+ };
30
+ export default LoadingShim;
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/LoadingShim/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAGnC,MAAM,WAAW,gBAAgB;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,+DAA+D;IAC/D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;CAClB;AAED;;;GAGG;AACH,QAAA,MAAM,WAAW;6CAKd,gBAAgB;;QAgCjB,8EAA8E;;QAE9E,+DAA+D;;QAE/D,iDAAiD;;QAEjD,oCAAoC;;;CATrC,CAAC;AAaF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ export interface PaginationProps {
4
+ /**
5
+ * Total number of pages
6
+ * If the number of pages is 1, pagination will not render
7
+ */
8
+ totalPages?: number;
9
+ /**
10
+ * Default selected page by page number (uncontrolled)
11
+ */
12
+ defaultSelectedPage?: number;
13
+ /**
14
+ * Selected page by page number (controlled).
15
+ * In fully controlled mode, you **must** define an `onPageChange`
16
+ * handler to update the value of the `selectedPage` prop.
17
+ */
18
+ selectedPage?: number;
19
+ /**
20
+ * Callback invoked when user selects a new page via page numbers or
21
+ * previous/next arrows.
22
+ *
23
+ * Invoked with selected page number as the argument.
24
+ */
25
+ onPageChange?: (page: number) => void;
26
+ /** Optional value for `data-testid` attribute */
27
+ testId?: string;
28
+ }
29
+ /**
30
+ * Component that allows users to navigate between pages of information.
31
+ * Your application is responsible for setting the total number of pages and
32
+ * responding to the `onPageChange` callback.
33
+ *
34
+ * The component will handle which page numbers to render, next and previous arrows,
35
+ * and conditionally rendering first and last pages.
36
+ *
37
+ * If your pagination setup expects a fully controlled component, you may set `defaultSelectedPage` on every `onPageChange` call.
38
+ */
39
+ declare const Pagination: {
40
+ ({ onPageChange, totalPages, defaultSelectedPage, selectedPage: selectedPageControlled, testId, }: PaginationProps): React.JSX.Element;
41
+ propTypes: {
42
+ /**
43
+ * Total number of pages
44
+ * If the number of pages is 1, pagination will not render
45
+ */
46
+ totalPages: PropTypes.Requireable<number>;
47
+ /**
48
+ * Default selected page by page number (uncontrolled)
49
+ */
50
+ defaultSelectedPage: PropTypes.Requireable<number>;
51
+ /**
52
+ * Selected page by page number (controlled).
53
+ * In fully controlled mode, you **must** define an `onPageChange`
54
+ * handler to update the value of the `selectedPage` prop.
55
+ */
56
+ selectedPage: PropTypes.Requireable<number>;
57
+ /**
58
+ * Callback invoked when user selects a new page via page numbers or
59
+ * previous/next arrows.
60
+ *
61
+ * Invoked with selected page number as the argument.
62
+ */
63
+ onPageChange: PropTypes.Requireable<(...args: any[]) => any>;
64
+ /** Optional value for `data-testid` attribute */
65
+ testId: PropTypes.Requireable<string>;
66
+ };
67
+ };
68
+ export default Pagination;
69
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/Pagination/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,SAAS,MAAM,YAAY,CAAC;AAMnC,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,QAAA,MAAM,UAAU;uGAMb,eAAe;;QAmMhB;;;WAGG;;QAEH;;WAEG;;QAEH;;;;WAIG;;QAEH;;;;;WAKG;;QAEH,iDAAiD;;;CAzBlD,CAAC;AA6BF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,39 @@
1
+ interface UsePaginationOptions {
2
+ /** The total number of pages */
3
+ totalPages: number;
4
+ /** The selected page by page number */
5
+ selectedPageNumber?: number;
6
+ /** The size of the visible window of pages */
7
+ windowSize?: number;
8
+ }
9
+ type UsePaginationResult = {
10
+ /** List of visible pages by page number */
11
+ visiblePages: number[];
12
+ /** The page number of the currently selected page */
13
+ selectedPage: number;
14
+ /** The index of the currently selected page */
15
+ selectedIndex: number;
16
+ /** Whether to show the first page button */
17
+ showFirstPage: boolean;
18
+ /** Whether to show the last page button */
19
+ showLastPage: boolean;
20
+ /** Whether to show previous arrow */
21
+ showPrev: boolean;
22
+ /** Whether to show next arrow */
23
+ showNext: boolean;
24
+ };
25
+ /**
26
+ * Create an array of consecutive numbers from start to end (inclusive)
27
+ */
28
+ export declare const range: (start: number, end: number) => number[];
29
+ /**
30
+ * Calculate the sliding window of visible pages
31
+ */
32
+ export declare const calculateVisiblePages: (totalPages: number, selectedPage: number, windowSize: number) => number[];
33
+ /**
34
+ * Headless hook for pagination attributes.
35
+ * Creates a sliding window of visible pages with current selection centered.
36
+ */
37
+ export declare const usePagination: ({ totalPages, selectedPageNumber, windowSize, }: UsePaginationOptions) => UsePaginationResult;
38
+ export {};
39
+ //# sourceMappingURL=usePagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePagination.d.ts","sourceRoot":"","sources":["../../../src/Pagination/usePagination.ts"],"names":[],"mappings":"AAIA,UAAU,oBAAoB;IAC5B,gCAAgC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,KAAK,mBAAmB,GAAG;IACzB,2CAA2C;IAC3C,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,qDAAqD;IACrD,YAAY,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,aAAa,EAAE,OAAO,CAAC;IACvB,2CAA2C;IAC3C,YAAY,EAAE,OAAO,CAAC;IACtB,qCAAqC;IACrC,QAAQ,EAAE,OAAO,CAAC;IAClB,iCAAiC;IACjC,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,MAAM,EAAE,KAAK,MAAM,KAAG,MAAM,EACH,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,MAAM,EAClB,cAAc,MAAM,EACpB,YAAY,MAAM,KACjB,MAAM,EA4BR,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,iDAI3B,oBAAoB,KAAG,mBA0BzB,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ /** Standard Narmi breakpoint names */
4
+ export type ResponsiveFlexSize = "s" | "m" | "l" | "xl";
5
+ export type ResponsiveFlexGap = "xs" | "s" | "m" | "l" | "xl";
6
+ export type ResponsiveFlexDirection = "row" | "column";
7
+ export type FlexDirection = ResponsiveFlexDirection | "row-reverse" | "column-reverse";
8
+ export interface GetFlexDirectionArgs {
9
+ viewportMatches: Record<ResponsiveFlexSize, boolean>;
10
+ direction: ResponsiveFlexDirection;
11
+ toColumnAt?: ResponsiveFlexSize;
12
+ toRowAt?: ResponsiveFlexSize;
13
+ reverseAt?: ResponsiveFlexSize;
14
+ }
15
+ export declare const getFlexDirection: ({ viewportMatches, direction, toColumnAt, toRowAt, reverseAt, }: GetFlexDirectionArgs) => FlexDirection;
16
+ export interface ResponsiveFlexProps {
17
+ /** Implicit flex children */
18
+ children?: React.ReactNode;
19
+ /** Size of flex gap by token size (e.g. "xl") */
20
+ gapSize?: ResponsiveFlexGap;
21
+ /** Initial flex direction */
22
+ direction?: ResponsiveFlexDirection;
23
+ /** Breakpoint at which to reverse order of flex items */
24
+ reverseAt?: ResponsiveFlexSize;
25
+ /** Breakpoint at which to change flex direction to column */
26
+ toColumnAt?: ResponsiveFlexSize;
27
+ /** Breakpoint at which to change flex direction to row */
28
+ toRowAt?: ResponsiveFlexSize;
29
+ }
30
+ /**
31
+ * Responsive layout helper that allows developers to declaratively control
32
+ * how flex items behave at different standard viewport sizes.
33
+ */
34
+ declare const ResponsiveFlex: {
35
+ ({ children, direction, gapSize, reverseAt, toColumnAt, toRowAt, }: ResponsiveFlexProps): React.JSX.Element;
36
+ propTypes: {
37
+ /** Implicit flex children */
38
+ children: PropTypes.Requireable<PropTypes.ReactNodeLike[]>;
39
+ /** Size of flex gap by token size (e.g. "xl") */
40
+ gapSize: PropTypes.Requireable<string>;
41
+ /** Initial flex direction */
42
+ direction: PropTypes.Requireable<string>;
43
+ /** Breakpoint at which to reverse order of flex items */
44
+ reverseAt: PropTypes.Requireable<string>;
45
+ /** Breakpoint at which to change flex direction to column */
46
+ toColumnAt: PropTypes.Requireable<string>;
47
+ /** Breakpoint at which to change flex direction to row */
48
+ toRowAt: PropTypes.Requireable<string>;
49
+ };
50
+ };
51
+ export default ResponsiveFlex;
52
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ResponsiveFlex/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAOnC,sCAAsC;AACtC,MAAM,MAAM,kBAAkB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AACxD,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;AAC9D,MAAM,MAAM,uBAAuB,GAAG,KAAK,GAAG,QAAQ,CAAC;AACvD,MAAM,MAAM,aAAa,GACrB,uBAAuB,GACvB,aAAa,GACb,gBAAgB,CAAC;AAErB,MAAM,WAAW,oBAAoB;IACnC,eAAe,EAAE,MAAM,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACrD,SAAS,EAAE,uBAAuB,CAAC;IACnC,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,SAAS,CAAC,EAAE,kBAAkB,CAAC;CAChC;AAED,eAAO,MAAM,gBAAgB,GAAI,iEAM9B,oBAAoB,KAAG,aAiBzB,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,iDAAiD;IACjD,OAAO,CAAC,EAAE,iBAAiB,CAAC;IAC5B,8BAA8B;IAC9B,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,yDAAyD;IACzD,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,6DAA6D;IAC7D,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,0DAA0D;IAC1D,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;;GAGG;AACH,QAAA,MAAM,cAAc;wEAOjB,mBAAmB;;QAyBpB,6BAA6B;;QAE7B,iDAAiD;;QAEjD,8BAA8B;;QAE9B,yDAAyD;;QAEzD,6DAA6D;;QAE7D,0DAA0D;;;CAb3D,CAAC;AAiBF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { ColVisibilityContextProps } from './colVisibilityContext';
2
+ export type PinStatus = "start" | "end" | undefined;
3
+ /**
4
+ * Determines if a cell at a given column index is pinned.
5
+ */
6
+ export declare function getPinStatus(colIndex: number, ctx: ColVisibilityContextProps): PinStatus;
7
+ //# sourceMappingURL=pinning.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pinning.d.ts","sourceRoot":"","sources":["../../../../src/Table/util/pinning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAExE,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;AAEpD;;GAEG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,yBAAyB,GAC7B,SAAS,CAMX"}
@@ -0,0 +1,75 @@
1
+ import { default as React } from 'react';
2
+ import { default as PropTypes } from 'prop-types';
3
+ import { VALID_ICON_NAMES } from '../icons/iconNames';
4
+ import { IconName } from '../types/Icon.types';
5
+ export { VALID_ICON_NAMES };
6
+ export type TimelineEventKind = "node" | "start" | "pending";
7
+ export interface TimelineEventProps {
8
+ /**
9
+ * Timeline node variant.
10
+ */
11
+ kind?: TimelineEventKind;
12
+ /**
13
+ * Name of NDS icon to render inside the timeline node
14
+ */
15
+ icon?: IconName;
16
+ /**
17
+ * Pass an image url to render the timeline node
18
+ * as an avatar
19
+ */
20
+ imgUrl?: string;
21
+ /**
22
+ * Initial to render in the timeline node
23
+ * Overridden by:
24
+ * - icon
25
+ * - imgUrl
26
+ */
27
+ initial?: string;
28
+ /**
29
+ * Timeline event content (any JSX)
30
+ */
31
+ children?: React.ReactNode;
32
+ /**
33
+ * Hover tooltip content for the icon
34
+ */
35
+ tooltip?: string;
36
+ /** Render a custom circle node on the line */
37
+ renderNode?: () => React.ReactNode;
38
+ }
39
+ declare const TimelineEvent: {
40
+ ({ kind, icon, imgUrl, initial, tooltip, children, renderNode, }: TimelineEventProps): React.JSX.Element;
41
+ propTypes: {
42
+ /**
43
+ * Timeline node variant.
44
+ */
45
+ kind: PropTypes.Requireable<string>;
46
+ /**
47
+ * Name of NDS icon to render inside the timeline node
48
+ */
49
+ icon: PropTypes.Requireable<string>;
50
+ /**
51
+ * Pass an image url to render the timeline node
52
+ * as an avatar
53
+ */
54
+ imgUrl: PropTypes.Requireable<string>;
55
+ /**
56
+ * Initial to render in the timeline node
57
+ * Overridden by:
58
+ * - icon
59
+ * - imgUrl
60
+ */
61
+ initial: PropTypes.Requireable<string>;
62
+ /**
63
+ * Timeline event content (any JSX)
64
+ */
65
+ children: PropTypes.Requireable<NonNullable<PropTypes.ReactNodeLike>>;
66
+ /**
67
+ * Hover tooltip content for the icon
68
+ */
69
+ tooltip: PropTypes.Requireable<string>;
70
+ /** Render a custom circle node on the line */
71
+ renderNode: PropTypes.Requireable<(...args: any[]) => any>;
72
+ };
73
+ };
74
+ export default TimelineEvent;
75
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/TimelineEvent/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;CACpC;AAED,QAAA,MAAM,aAAa;sEAQhB,kBAAkB;;QAmEnB;;WAEG;;QAEH;;WAEG;;QAEH;;;WAGG;;QAEH;;;;;WAKG;;QAEH;;WAEG;;QAKH;;WAEG;;QAEH,8CAA8C;;;CAlC/C,CAAC;AAsCF,eAAe,aAAa,CAAC"}