@economic/taco 2.59.0 → 2.60.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/taco.d.ts CHANGED
@@ -1150,6 +1150,14 @@ export declare interface DonutChartProps extends PolarChartProps {
1150
1150
  export declare interface DonutChartSegmentProps<TData extends object> extends PieChartSegmentProps<TData> {
1151
1151
  }
1152
1152
 
1153
+ declare type DotNotationJoin<K, P> = K extends string | number ? P extends string | number ? `${K}${'' extends P ? '' : '.'}${P}` : never : never;
1154
+
1155
+ export declare type DotNotationPaths<T, D extends number = 2> = [D] extends [never] ? never : T extends object ? {
1156
+ [K in keyof T]-?: K extends string | number ? `${K}` | DotNotationJoin<K, DotNotationPaths<T[K], RecursionCounter[D]>> : never;
1157
+ }[keyof T] : '';
1158
+
1159
+ export declare type DotNotationPathValue<T, P extends string> = T extends any ? P extends `${infer Key}.${infer Rest}` ? Key extends keyof T ? DotNotationPathValue<T[Key], Rest> : never : P extends keyof T ? T[P] : never : never;
1160
+
1153
1161
  export declare const Drawer: ForwardedDrawerWithStatics;
1154
1162
 
1155
1163
  declare type DrawerCloseProps = default_2.HTMLAttributes<HTMLButtonElement>;
@@ -2662,6 +2670,8 @@ export declare type RadioGroupProps = Omit<RemapReactAriaIsProperties<RadioGroup
2662
2670
  defaultValue?: RadioGroupItemValue;
2663
2671
  }>;
2664
2672
 
2673
+ declare type RecursionCounter = [never, 0, 1];
2674
+
2665
2675
  export declare type RemapReactAriaIsProperties<T> = {
2666
2676
  [K in keyof T as K extends `is${infer Rest}` ? Uncapitalize<Rest> : K]: T[K];
2667
2677
  };
@@ -3173,13 +3183,13 @@ export declare type TableColumnDataTypeProps<TType = unknown> = {
3173
3183
  export declare type TableColumnFilter = ColumnFilter;
3174
3184
 
3175
3185
  export declare type TableColumnIdentifierProps<TType = unknown> = {
3176
- [Key in keyof TType]: {
3186
+ [Key in DotNotationPaths<TType>]: {
3177
3187
  accessor: Key;
3178
3188
  id?: string;
3179
- renderer?: TableColumnRenderer<TType, TType[Key]> | undefined;
3180
- aggregate?: TableColumnRendererAggregate<TType, TType[Key]> | undefined;
3189
+ renderer?: TableColumnRenderer<TType, DotNotationPathValue<TType, Key>> | undefined;
3190
+ aggregate?: TableColumnRendererAggregate<TType, DotNotationPathValue<TType, Key>> | undefined;
3181
3191
  };
3182
- }[keyof TType] | {
3192
+ }[DotNotationPaths<TType>] | {
3183
3193
  accessor?: never;
3184
3194
  id: string;
3185
3195
  renderer?: TableColumnRenderer<TType, undefined> | undefined;
package/dist/taco.js CHANGED
@@ -37296,13 +37296,26 @@ function Body(props) {
37296
37296
  }
37297
37297
  }
37298
37298
  };
37299
- const handleMouseMove = React__default.useCallback((event) => {
37300
- var _a, _b;
37301
- const index2 = (_b = (_a = event.target) == null ? void 0 : _a.closest("tr")) == null ? void 0 : _b.getAttribute("data-row-index");
37302
- if (index2) {
37303
- tableMeta.rowActive.setRowHoverIndex(Number.parseInt(index2));
37304
- }
37305
- }, []);
37299
+ const handleMouseMove = React__default.useCallback(
37300
+ (event) => {
37301
+ var _a, _b;
37302
+ if (!(event.target instanceof HTMLElement)) {
37303
+ return;
37304
+ }
37305
+ const currentTable = (_a = ref.current) == null ? void 0 : _a.closest("table");
37306
+ const targetTable = event.target.closest("table");
37307
+ if (targetTable !== currentTable) {
37308
+ return;
37309
+ }
37310
+ const rowIndex = (_b = event.target.closest("tr[data-row-id]")) == null ? void 0 : _b.getAttribute("data-row-index");
37311
+ if (!rowIndex) {
37312
+ tableMeta.rowActive.setRowHoverIndex(void 0);
37313
+ return;
37314
+ }
37315
+ tableMeta.rowActive.setRowHoverIndex(Number(rowIndex));
37316
+ },
37317
+ [ref]
37318
+ );
37306
37319
  const handleMouseLeave = React__default.useCallback(() => tableMeta.rowActive.setRowHoverIndex(void 0), []);
37307
37320
  return /* @__PURE__ */ React__default.createElement(
37308
37321
  "tbody",
@@ -43396,19 +43409,20 @@ function Control(props) {
43396
43409
  }
43397
43410
  }, [controlRenderer]);
43398
43411
  if (typeof controlRenderer === "function") {
43399
- return React__default.cloneElement(
43400
- controlRenderer(
43401
- {
43402
- ...attributes,
43403
- setValue: (value2) => onChange(value2),
43404
- value
43405
- },
43406
- void 0,
43407
- filters
43408
- ),
43409
- { ["data-query-selector"]: querySelector, className: "focus:yt-focus" }
43412
+ const control = controlRenderer(
43413
+ {
43414
+ ...attributes,
43415
+ setValue: (value2) => onChange(value2),
43416
+ value
43417
+ },
43418
+ void 0,
43419
+ filters
43410
43420
  );
43411
- } else if (controlRenderer === "datepicker" || dataType === "datetime" || dataType === "date") {
43421
+ if (control) {
43422
+ return React__default.cloneElement(control, { ["data-query-selector"]: querySelector, className: "focus:yt-focus" });
43423
+ }
43424
+ }
43425
+ if (controlRenderer === "datepicker" || dataType === "datetime" || dataType === "date") {
43412
43426
  return /* @__PURE__ */ React__default.createElement(Datepicker, { ...attributes, onChange: (event) => onChange(event.detail), value });
43413
43427
  } else if (controlRenderer === "switch") {
43414
43428
  return /* @__PURE__ */ React__default.createElement(Switch$1, { ...attributes, className: "m-1.5", checked: Boolean(value), onChange });