@factorialco/f0-react 1.306.4 → 1.308.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/f0.d.ts CHANGED
@@ -728,6 +728,10 @@ export declare type ButtonToggleSize = (typeof buttonToggleSizes)[number];
728
728
 
729
729
  export declare const buttonToggleSizes: readonly ["sm", "md", "lg"];
730
730
 
731
+ export declare type ButtonToggleVariant = (typeof buttonToggleVariants)[number];
732
+
733
+ export declare const buttonToggleVariants: readonly ["compact", "expanded"];
734
+
731
735
  declare type ButtonType = (typeof buttonTypes)[number];
732
736
 
733
737
  declare const buttonTypes: readonly ["button", "submit", "reset"];
@@ -2262,15 +2266,7 @@ export declare type F0ButtonProps = Omit<ButtonInternalProps, (typeof privatePro
2262
2266
 
2263
2267
  export declare const F0ButtonToggle: ForwardRefExoticComponent<F0ButtonToggleProps & RefAttributes<HTMLButtonElement>>;
2264
2268
 
2265
- export declare interface F0ButtonToggleProps {
2266
- /**
2267
- * Whether the button is in selected/active state.
2268
- */
2269
- selected?: boolean;
2270
- /**
2271
- * Callback fired when the button is selected.
2272
- */
2273
- onSelectedChange?: (selected: boolean) => void;
2269
+ declare type F0ButtonToggleInternalProps = {
2274
2270
  /**
2275
2271
  * The accessible label for the button.
2276
2272
  */
@@ -2288,7 +2284,29 @@ export declare interface F0ButtonToggleProps {
2288
2284
  * @default "md"
2289
2285
  */
2290
2286
  size?: ButtonToggleSize;
2291
- }
2287
+ /**
2288
+ * The variant of the button.
2289
+ * @default "compact"
2290
+ * "compact" - The button will only show the icon.
2291
+ * "expanded" - The button will show the icon and the label.
2292
+ */
2293
+ variant?: ButtonToggleVariant;
2294
+ /**
2295
+ * @private
2296
+ * Whether to show a border around the button toggle.
2297
+ */
2298
+ withBorder?: boolean;
2299
+ } & ({
2300
+ selected: boolean;
2301
+ onSelectedChange: (selected: boolean) => void;
2302
+ defaultSelected?: undefined;
2303
+ } | {
2304
+ defaultSelected?: boolean;
2305
+ selected?: undefined;
2306
+ onSelectedChange?: undefined;
2307
+ });
2308
+
2309
+ export declare type F0ButtonToggleProps = Omit<F0ButtonToggleInternalProps, (typeof privateProps_2)[number]>;
2292
2310
 
2293
2311
  export declare const F0Card: ForwardRefExoticComponent<F0CardProps & RefAttributes<HTMLDivElement>> & {
2294
2312
  Skeleton: ({ compact }: {
@@ -2296,7 +2314,7 @@ export declare const F0Card: ForwardRefExoticComponent<F0CardProps & RefAttribut
2296
2314
  }) => JSX_2.Element;
2297
2315
  };
2298
2316
 
2299
- export declare type F0CardProps = Omit<CardInternalProps, (typeof privateProps_2)[number]>;
2317
+ export declare type F0CardProps = Omit<CardInternalProps, (typeof privateProps_3)[number]>;
2300
2318
 
2301
2319
  /**
2302
2320
  * @experimental This is an experimental component use it at your own risk
@@ -2498,11 +2516,16 @@ export declare const F0TagCompany: ForwardRefExoticComponent<TagCompanyProps & R
2498
2516
  export declare const F0TagDot: ForwardRefExoticComponent<TagDotProps & RefAttributes<HTMLDivElement>>;
2499
2517
 
2500
2518
  export declare const F0TagList: {
2501
- <T extends TagType>({ type, tags, max, remainingCount: initialRemainingCount, layout, }: TagListProps<T>): JSX_2.Element;
2519
+ <T extends TagType>({ type, tags, max, remainingCount: initialRemainingCount, }: TagListProps<T>): JSX_2.Element;
2502
2520
  displayName: string;
2503
2521
  };
2504
2522
 
2505
- export declare const F0TagPerson: ForwardRefExoticComponent<TagPersonProps & RefAttributes<HTMLDivElement>>;
2523
+ export declare const F0TagPerson: ForwardRefExoticComponent<F0TagPersonProps & RefAttributes<HTMLDivElement>>;
2524
+
2525
+ export declare type F0TagPersonProps = {
2526
+ src?: string;
2527
+ name: string;
2528
+ };
2506
2529
 
2507
2530
  export declare const F0TagRaw: ForwardRefExoticComponent<TagRawProps & RefAttributes<HTMLDivElement>>;
2508
2531
 
@@ -3145,7 +3168,9 @@ declare const layoutVariants: (props?: ({
3145
3168
  className?: ClassValue;
3146
3169
  })) | undefined) => string;
3147
3170
 
3148
- export declare type Level = "info" | "warning" | "critical" | "positive";
3171
+ export declare type Level = (typeof levels)[number];
3172
+
3173
+ declare const levels: readonly ["info", "warning", "critical", "positive"];
3149
3174
 
3150
3175
  export declare const LineChart: ForwardRefExoticComponent<Omit<LineChartPropsBase<LineChartConfig> & {
3151
3176
  lineType?: "natural" | "linear";
@@ -3315,7 +3340,7 @@ declare type NestedResponseWithType<R extends RecordType> = {
3315
3340
 
3316
3341
  declare type NestedVariant = "basic" | "detailed";
3317
3342
 
3318
- export declare type NewColor = Extract<BaseColor, "viridian" | "malibu" | "yellow" | "purple" | "lilac" | "barbie" | "smoke" | "army" | "flubber" | "indigo" | "camel">;
3343
+ export declare type NewColor = Extract<BaseColor, (typeof tagDotColors)[number]>;
3319
3344
 
3320
3345
  export declare interface NextStepsProps {
3321
3346
  title: string;
@@ -3348,6 +3373,14 @@ declare type NumberFilterValue = {
3348
3373
  };
3349
3374
  } | undefined;
3350
3375
 
3376
+ declare interface NumericValue {
3377
+ number: number;
3378
+ units?: string;
3379
+ unitsPosition?: "left" | "right";
3380
+ decimalPlaces?: number | undefined;
3381
+ locale?: string;
3382
+ }
3383
+
3351
3384
  declare type OnBulkActionCallback<Record extends RecordType, Filters extends FiltersDefinition> = (...args: [
3352
3385
  action: BulkAction,
3353
3386
  ...Parameters<OnSelectItemsCallback<Record, Filters>>
@@ -3535,7 +3568,9 @@ export declare const PrivacyModeProvider: React_2.FC<{
3535
3568
 
3536
3569
  declare const privateProps: readonly ["append", "className", "pressed", "compact", "noTitle", "noAutoTooltip", "style"];
3537
3570
 
3538
- declare const privateProps_2: readonly ["forceVerticalMetadata", "disableOverlayLink"];
3571
+ declare const privateProps_2: readonly ["withBorder"];
3572
+
3573
+ declare const privateProps_3: readonly ["forceVerticalMetadata", "disableOverlayLink"];
3539
3574
 
3540
3575
  export declare const ProductBlankslate: ForwardRefExoticComponent<ProductBlankslateProps & RefAttributes<HTMLDivElement>>;
3541
3576
 
@@ -3895,7 +3930,11 @@ export declare interface StandardLayoutProps extends VariantProps<typeof layoutV
3895
3930
  children?: default_2.ReactNode;
3896
3931
  }
3897
3932
 
3898
- export declare type Status = "positive" | "neutral" | "negative";
3933
+ export declare type Status = (typeof statuses_2)[number];
3934
+
3935
+ declare const statuses: readonly ["neutral", "info", "positive", "warning", "critical"];
3936
+
3937
+ declare const statuses_2: readonly ["positive", "neutral", "negative"];
3899
3938
 
3900
3939
  export declare type StatusVariant = Variant;
3901
3940
 
@@ -4029,20 +4068,45 @@ declare type TableVisualizationSettings = {
4029
4068
  hidden: ColId[];
4030
4069
  };
4031
4070
 
4071
+ export declare const Tag: ({ tag }: {
4072
+ tag: TagVariant;
4073
+ }) => ReactNode;
4074
+
4032
4075
  export declare type TagAlertProps<Text extends string = string> = {
4033
4076
  text: Text extends "" ? never : Text;
4034
4077
  level: Level;
4035
4078
  };
4036
4079
 
4037
- export declare interface TagBalanceProps {
4038
- text: string;
4039
- status: Status;
4040
- }
4080
+ export declare type TagBalanceProps = {
4081
+ /**
4082
+ * Inverts the balance status color. Is useful when a negative percent mean something positive.
4083
+ */
4084
+ invertStatus?: boolean;
4085
+ /**
4086
+ * Hint text to display next to the tag (This text is not displayed when the balance is null or undefined)
4087
+ */
4088
+ hint?: string;
4089
+ /**
4090
+ * Info text to display an i icon and a tooltip next to the tag
4091
+ */
4092
+ info?: string;
4093
+ /**
4094
+ * Text to display when the balance is null or undefined
4095
+ */
4096
+ nullText?: string;
4097
+ /**
4098
+ * Amount to display next to the tag
4099
+ */
4100
+ amount?: number | NumericValue | null;
4101
+ } & ({
4102
+ percentage: number | Omit<NumericValue, "units" | "unitsPosition">;
4103
+ } | {
4104
+ percentage?: null;
4105
+ });
4041
4106
 
4042
4107
  export declare interface TagCompanyProps {
4043
- companyName: string;
4044
- companyImageUrl: string;
4045
- onClick?: () => void;
4108
+ name: string;
4109
+ src?: string;
4046
4110
  }
4047
4111
 
4048
4112
  export declare const TagCounter: {
@@ -4056,7 +4120,7 @@ declare type TagDataType<T extends string> = Omit<Extract<TagVariant, {
4056
4120
  type: T;
4057
4121
  }>, "type" | "description">;
4058
4122
 
4059
- export declare const tagDotColors: NewColor[];
4123
+ export declare const tagDotColors: ["viridian", "malibu", "yellow", "purple", "lilac", "barbie", "smoke", "army", "flubber", "indigo", "camel"];
4060
4124
 
4061
4125
  export declare type TagDotProps = {
4062
4126
  text: string;
@@ -4074,7 +4138,7 @@ export declare type TagListProps<T extends TagType> = {
4074
4138
  /**
4075
4139
  * Array of tag data corresponding to the specified type.
4076
4140
  */
4077
- tags: Array<TagTypeMapping[T] & WithTooltipDescription_2>;
4141
+ tags: Array<TagTypeMapping[T]>;
4078
4142
  /**
4079
4143
  * The maximum number of tags to display.
4080
4144
  * @default 4
@@ -4084,28 +4148,24 @@ export declare type TagListProps<T extends TagType> = {
4084
4148
  * The remaining number to display.
4085
4149
  */
4086
4150
  remainingCount?: number;
4087
- /**
4088
- * The layout of the tag list.
4089
- * - "fill" - Tags will expand to fill the available width, with overflow items shown in a counter
4090
- * - "compact" - Tags will be stacked together up to the max limit, with remaining shown in counter
4091
- * @default "compact"
4092
- */
4093
- layout?: "fill" | "compact";
4094
4151
  };
4095
4152
 
4096
- export declare interface TagPersonProps {
4097
- name: string;
4098
- avatarUrl: string;
4099
- onClick?: () => void;
4100
- }
4101
-
4102
- export declare interface TagRawProps {
4103
- text?: string;
4104
- additionalAccesibleText?: string;
4153
+ export declare type TagRawProps = {
4154
+ /**
4155
+ * The label to display in the tag or used for accessible text
4156
+ */
4157
+ text: string;
4158
+ /**
4159
+ * Additional accessible text to display in the tag
4160
+ */
4161
+ additionalAccessibleText?: string;
4162
+ } & ({
4163
+ icon: IconType;
4164
+ onlyIcon: true;
4165
+ } | {
4105
4166
  icon?: IconType;
4106
- noBorder?: boolean;
4107
- className?: string;
4108
- }
4167
+ onlyIcon?: boolean;
4168
+ });
4109
4169
 
4110
4170
  export declare interface TagStatusProps {
4111
4171
  text: string;
@@ -4114,16 +4174,15 @@ export declare interface TagStatusProps {
4114
4174
  * Sometimes you need to clarify the status for screen reader users
4115
4175
  * E.g., when showing a tooltip for sighted user, provide the tootip text to this prop because tooltips aren't accessible
4116
4176
  */
4117
- additionalAccesibleText?: string;
4177
+ additionalAccessibleText?: string;
4118
4178
  }
4119
4179
 
4120
4180
  export declare interface TagTeamProps {
4121
- teamName: string;
4122
- teamImageUrl: string;
4123
- onClick?: () => void;
4181
+ name: string;
4182
+ src?: string;
4124
4183
  }
4125
4184
 
4126
- export declare type TagType = keyof TagTypeMapping;
4185
+ export declare type TagType = (typeof tagTypes)[number];
4127
4186
 
4128
4187
  declare type TagTypeMapping = {
4129
4188
  dot: TagDataType<"dot">;
@@ -4136,7 +4195,9 @@ declare type TagTypeMapping = {
4136
4195
  raw: TagDataType<"raw">;
4137
4196
  };
4138
4197
 
4139
- declare type TagVariant = BaseTag<{
4198
+ declare const tagTypes: readonly ["dot", "person", "team", "company", "alert", "status", "balance", "raw"];
4199
+
4200
+ export declare type TagVariant = BaseTag<{
4140
4201
  type: "dot";
4141
4202
  } & TagDotProps> | BaseTag<{
4142
4203
  type: "person";
@@ -4634,7 +4695,7 @@ declare const valueDisplayRenderers: {
4634
4695
 
4635
4696
  declare type ValueDisplayVisualizationType = "table" | "card" | "list" | (string & {});
4636
4697
 
4637
- export declare type Variant = "neutral" | "info" | "positive" | "warning" | "critical";
4698
+ export declare type Variant = (typeof statuses)[number];
4638
4699
 
4639
4700
  export declare const VerticalBarChart: ForwardRefExoticComponent<Omit<ChartPropsBase<ChartConfig_2> & {
4640
4701
  label?: boolean;
@@ -4684,10 +4745,6 @@ declare interface WithTooltipDescription {
4684
4745
  description?: string;
4685
4746
  }
4686
4747
 
4687
- declare type WithTooltipDescription_2 = {
4688
- description?: string;
4689
- };
4690
-
4691
4748
  export { }
4692
4749
 
4693
4750