react-science 20.1.0 → 20.3.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.
Files changed (44) hide show
  1. package/lib/components/button/Button.js +2 -2
  2. package/lib/components/form/components/input_groups/form.d.ts +7 -0
  3. package/lib/components/form/components/input_groups/form.d.ts.map +1 -1
  4. package/lib/components/form/components/input_groups/form.js +7 -0
  5. package/lib/components/form/components/input_groups/form.js.map +1 -1
  6. package/lib/components/form/components/layout/form.d.ts +29 -0
  7. package/lib/components/form/components/layout/form.d.ts.map +1 -0
  8. package/lib/components/form/components/layout/form.js +31 -0
  9. package/lib/components/form/components/layout/form.js.map +1 -0
  10. package/lib/components/form/components/layout/index.d.ts +1 -0
  11. package/lib/components/form/components/layout/index.d.ts.map +1 -1
  12. package/lib/components/form/components/layout/index.js +1 -1
  13. package/lib/components/form/components/layout/index.js.map +1 -1
  14. package/lib/components/header/Header.d.ts.map +1 -1
  15. package/lib/components/header/Header.js +2 -1
  16. package/lib/components/header/Header.js.map +1 -1
  17. package/lib/components/table/reorder_rows/draggable_row_tr.d.ts.map +1 -1
  18. package/lib/components/table/reorder_rows/drop_indicator.d.ts +1 -1
  19. package/lib/components/table/reorder_rows/drop_indicator.d.ts.map +1 -1
  20. package/lib/components/table/reorder_rows/drop_indicator.js.map +1 -1
  21. package/lib/components/table/reorder_rows/item_data.d.ts +1 -1
  22. package/lib/components/table/reorder_rows/item_data.d.ts.map +1 -1
  23. package/lib/components/table/reorder_rows/item_order_context.d.ts +1 -1
  24. package/lib/components/table/reorder_rows/item_order_context.d.ts.map +1 -1
  25. package/lib/components/table/use_table_scroll.js +1 -1
  26. package/lib/components/table/use_table_scroll.js.map +1 -1
  27. package/lib/components/toolbar/TooltipHelpContent.js +2 -2
  28. package/lib/components/utils/svg.d.ts.map +1 -1
  29. package/lib/components/utils/svg.js +4 -1
  30. package/lib/components/utils/svg.js.map +1 -1
  31. package/package.json +23 -26
  32. package/src/components/button/Button.tsx +2 -2
  33. package/src/components/form/components/input_groups/form.tsx +7 -0
  34. package/src/components/form/components/layout/form.tsx +60 -0
  35. package/src/components/form/components/layout/index.ts +1 -0
  36. package/src/components/header/Header.tsx +3 -2
  37. package/src/components/table/reorder_rows/draggable_row_tr.tsx +1 -1
  38. package/src/components/table/reorder_rows/drop_indicator.tsx +1 -1
  39. package/src/components/table/reorder_rows/item_data.ts +1 -1
  40. package/src/components/table/reorder_rows/item_order_context.ts +1 -1
  41. package/src/components/table/reorder_rows/use_drop_monitor.ts +1 -1
  42. package/src/components/table/use_table_scroll.ts +1 -1
  43. package/src/components/toolbar/TooltipHelpContent.tsx +3 -3
  44. package/src/components/utils/svg.ts +2 -0
@@ -43,10 +43,10 @@ const TooltipButton = styled(BlueprintButton, {
43
43
  `;
44
44
  export function Button(props) {
45
45
  const { tooltipProps = {}, children, tag, tagProps, ...buttonProps } = props;
46
- const { fill, content = '', disabled = !tooltipProps.content, ...otherToolTipProps } = tooltipProps;
46
+ const { fill, content = '', disabled = !tooltipProps.content, ...otherTooltipProps } = tooltipProps;
47
47
  const InnerButton = buttonProps.disabled
48
48
  ? TooltipAnchorButton
49
49
  : TooltipButton;
50
- return (_jsx(Tooltip, { fill: fill || buttonProps.fill, disabled: disabled, content: content, ...otherToolTipProps, renderTarget: ({ isOpen, ...targetProps }) => (_jsxs(InnerButton, { ...targetProps, ...buttonProps, isIconButton: !children && !buttonProps.text, children: [tag && (_jsx(ButtonTag, { round: true, intent: "success", ...tagProps, children: tag })), children] })) }));
50
+ return (_jsx(Tooltip, { fill: fill || buttonProps.fill, disabled: disabled, content: content, ...otherTooltipProps, renderTarget: ({ isOpen, ...targetProps }) => (_jsxs(InnerButton, { ...targetProps, ...buttonProps, isIconButton: !children && !buttonProps.text, children: [tag && (_jsx(ButtonTag, { round: true, intent: "success", ...tagProps, children: tag })), children] })) }));
51
51
  }
52
52
  //# sourceMappingURL=Button.js.map
@@ -4,5 +4,12 @@ export interface FormProps extends FormHTMLAttributes<HTMLFormElement> {
4
4
  children: ReactNode;
5
5
  layout?: Layout;
6
6
  }
7
+ /**
8
+ * @param props
9
+ * @deprecated Use `AppForm` instead.
10
+ * This component will be merged into `AppForm` and removed in a next major release.
11
+ * During migration, consider removing the `onSubmit` props.
12
+ * If you did not bound `noValidate` props, you will have to bound `domValidate` to `AppForm`.
13
+ */
7
14
  export declare function Form(props: FormProps): import("react").JSX.Element;
8
15
  //# sourceMappingURL=form.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/components/input_groups/form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhD,MAAM,WAAW,SAAU,SAAQ,kBAAkB,CAAC,eAAe,CAAC;IACpE,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,+BAYpC"}
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/components/input_groups/form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAGhD,MAAM,WAAW,SAAU,SAAQ,kBAAkB,CAAC,eAAe,CAAC;IACpE,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,SAAS,+BAYpC"}
@@ -1,6 +1,13 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
3
  import { formContext } from './form_context.js';
4
+ /**
5
+ * @param props
6
+ * @deprecated Use `AppForm` instead.
7
+ * This component will be merged into `AppForm` and removed in a next major release.
8
+ * During migration, consider removing the `onSubmit` props.
9
+ * If you did not bound `noValidate` props, you will have to bound `domValidate` to `AppForm`.
10
+ */
4
11
  export function Form(props) {
5
12
  const { children, layout = 'stacked', ...otherProps } = props;
6
13
  const contextValue = useMemo(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/components/form/components/input_groups/form.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAE9D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACvC,kBAAU,UAAU,YAAG,QAAQ,GAAQ,GAClB,CACxB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/components/form/components/input_groups/form.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAGhC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOhD;;;;;;GAMG;AACH,MAAM,UAAU,IAAI,CAAC,KAAgB;IACnC,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAE9D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,OAAO,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YACvC,kBAAU,UAAU,YAAG,QAAQ,GAAQ,GAClB,CACxB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { SyntheticEvent } from 'react';
2
+ import type { FormProps as DomFormProps } from '../input_groups/form.js';
3
+ export interface AppFormProps extends Omit<DomFormProps, 'noValidate'> {
4
+ domValidate?: boolean;
5
+ /**
6
+ * should return meta to pass to `form.handleSubmit`
7
+ */
8
+ onSubmitMeta?: (event: SyntheticEvent<HTMLFormElement, SubmitEvent>) => any;
9
+ }
10
+ /**
11
+ * Mount `form.AppForm` and `Form` with default onSubmit.
12
+ * It reduces the boilerplate code.
13
+ */
14
+ export declare const AppForm: import("react").FunctionComponent<import("react").PropsWithChildren<NoInfer<AppFormProps> & {
15
+ form: import("@tanstack/react-form").AppFieldExtendedReactFormApi<any, any, any, import("@tanstack/form-core").FormAsyncValidateOrFn<any> | undefined, any, import("@tanstack/form-core").FormAsyncValidateOrFn<any> | undefined, any, import("@tanstack/form-core").FormAsyncValidateOrFn<any> | undefined, any, import("@tanstack/form-core").FormAsyncValidateOrFn<any> | undefined, import("@tanstack/form-core").FormAsyncValidateOrFn<any> | undefined, any, {
16
+ readonly Input: typeof import("../input/input.tsx").Input;
17
+ readonly NumericInput: typeof import("../input/numeric_input.tsx").NumericInput;
18
+ readonly Checkbox: typeof import("../input/checkbox.tsx").Checkbox;
19
+ readonly Select: typeof import("../input/select.tsx").Select;
20
+ readonly Switch: typeof import("../input/switch.tsx").Switch;
21
+ readonly ColorPicker: typeof import("../input/color_picker.tsx").ColorPicker;
22
+ readonly RadioGroup: typeof import("../input/radio_group.tsx").RadioGroup;
23
+ }, {
24
+ readonly SubmitButton: typeof import("../input/submit_button.tsx").SubmitButton;
25
+ readonly ResetButton: typeof import("../input/reset_button.tsx").ResetButton;
26
+ readonly Section: typeof import("./Section.tsx").Section;
27
+ }>;
28
+ }>>;
29
+ //# sourceMappingURL=form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/form.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,KAAK,EAAE,SAAS,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGzE,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IAGH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,CAAC,eAAe,EAAE,WAAW,CAAC,KAAK,GAAG,CAAC;CAC7E;AAWD;;;GAGG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;GA8BlB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { withForm } from '../../context/use_ts_form.js';
3
+ import { Form as DomForm } from '../input_groups/form.js';
4
+ const props = { children: null };
5
+ // AppForm is a generic component for all forms
6
+ // it will not touch to values inside the form,
7
+ // and unknown is not possible.
8
+ // <AppForm form={form}> would throw an error like "unknown is not compatible with <inferred values type>"
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ const defaultValues = undefined;
11
+ /**
12
+ * Mount `form.AppForm` and `Form` with default onSubmit.
13
+ * It reduces the boilerplate code.
14
+ */
15
+ export const AppForm = withForm({
16
+ defaultValues,
17
+ props,
18
+ render: function FormRender(props) {
19
+ const { form, children, domValidate, onSubmitMeta, ...domProps } = props;
20
+ const { AppForm } = form;
21
+ return (_jsx(AppForm, { children: _jsx(DomForm, { onSubmit: (event) => {
22
+ event.preventDefault();
23
+ const meta = onSubmitMeta?.(
24
+ // onSubmit event is not typed properly.
25
+ // It uses Event instead of SubmitEvent.
26
+ event);
27
+ void form.handleSubmit(meta);
28
+ }, ...domProps, noValidate: !domValidate, children: children }) }));
29
+ },
30
+ });
31
+ //# sourceMappingURL=form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/form.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExD,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAY1D,MAAM,KAAK,GAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE/C,+CAA+C;AAC/C,+CAA+C;AAC/C,+BAA+B;AAC/B,0GAA0G;AAC1G,8DAA8D;AAC9D,MAAM,aAAa,GAAQ,SAAS,CAAC;AAErC;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;IAC9B,aAAa;IACb,KAAK;IACL,MAAM,EAAE,SAAS,UAAU,CAAC,KAAK;QAC/B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC;QACzE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;QAEzB,OAAO,CACL,KAAC,OAAO,cAEN,KAAC,OAAO,IACN,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oBAClB,KAAK,CAAC,cAAc,EAAE,CAAC;oBAEvB,MAAM,IAAI,GAAG,YAAY,EAAE;oBACzB,wCAAwC;oBACxC,wCAAwC;oBACxC,KAAqD,CACtD,CAAC;oBAEF,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC/B,CAAC,KACG,QAAQ,EACZ,UAAU,EAAE,CAAC,WAAW,YAEvB,QAAQ,GACD,GACF,CACX,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export { type Section as _Section } from './Section.js';
2
+ export { AppForm, type AppFormProps } from './form.js';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC"}
@@ -1,2 +1,2 @@
1
- export {};
1
+ export { AppForm } from './form.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/index.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/form/components/layout/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAqB,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../src/components/header/Header.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,KAAK,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAE7C,UAAU,WAAW;IACnB,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;CACpC;AAWD,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,+BAOxC"}
1
+ {"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../src/components/header/Header.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D,KAAK,UAAU,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;AAE7C,UAAU,WAAW;IACnB,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;CACpC;AAWD,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,+BAQxC"}
@@ -9,6 +9,7 @@ const HeaderContainer = styled.div `
9
9
  box-shadow: rgb(255 255 255) 0 1px 0 0 inset;
10
10
  `;
11
11
  export function Header(props) {
12
- return (_jsxs(HeaderContainer, { children: [_jsx("div", { children: props.children[0] }), _jsx("div", { children: props.children[1] })] }));
12
+ const { children } = props;
13
+ return (_jsxs(HeaderContainer, { children: [_jsx("div", { children: children[0] }), _jsx("div", { children: children[1] })] }));
13
14
  }
14
15
  //# sourceMappingURL=Header.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/header/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAWrC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAOjC,CAAC;AAEF,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,OAAO,CACL,MAAC,eAAe,eACd,wBAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAO,EAC9B,wBAAM,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAO,IACd,CACnB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/header/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAWrC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;CAOjC,CAAC;AAEF,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAC3B,OAAO,CACL,MAAC,eAAe,eACd,wBAAM,QAAQ,CAAC,CAAC,CAAC,GAAO,EACxB,wBAAM,QAAQ,CAAC,CAAC,CAAC,GAAO,IACR,CACnB,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"draggable_row_tr.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAiB1D,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,WAAW,wBAAwB,CAAC,KAAK,SAAS,OAAO;IAC7D;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAC/B;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;CACnD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,OAAO,EACvD,KAAK,EAAE,wBAAwB,CAAC,KAAK,CAAC,+BA6GvC"}
1
+ {"version":3,"file":"draggable_row_tr.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/draggable_row_tr.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAkB1D,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAQ3B,MAAM,WAAW,wBAAwB,CAAC,KAAK,SAAS,OAAO;IAC7D;;OAEG;IACH,OAAO,EAAE,qBAAqB,CAAC;IAC/B;;OAEG;IACH,GAAG,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAChB;;OAEG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAC,KAAK,CAAC,CAAC;CACnD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,SAAS,OAAO,EACvD,KAAK,EAAE,wBAAwB,CAAC,KAAK,CAAC,+BA6GvC"}
@@ -1,4 +1,4 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
1
+ import type { Edge } from '@zakodium/pdnd-esm';
2
2
  export interface TableDropIndicatorProps {
3
3
  /**
4
4
  * The edge (top or bottom) on which to render the drop indicator
@@ -1 +1 @@
1
- {"version":3,"file":"drop_indicator.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/drop_indicator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gDAAgD,CAAC;AAI3E,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;mIAU9B,CAAC"}
1
+ {"version":3,"file":"drop_indicator.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/drop_indicator.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;;;mIAU9B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"drop_indicator.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/drop_indicator.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAUrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAyB;;;sBAG/C,MAAM,CAAC,KAAK;;;;;IAK9B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,YAAY;IAC/C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,eAAe;CACxD,CAAC"}
1
+ {"version":3,"file":"drop_indicator.js","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/drop_indicator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAWrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAAyB;;;sBAG/C,MAAM,CAAC,KAAK;;;;;IAK9B,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,IAAI,YAAY;IAC/C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,eAAe;CACxD,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
2
1
  import type { Row } from '@tanstack/react-table';
2
+ import type { Edge } from '@zakodium/pdnd-esm';
3
3
  declare const itemKey: unique symbol;
4
4
  export interface ItemData {
5
5
  [itemKey]: true;
@@ -1 +1 @@
1
- {"version":3,"file":"item_data.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gDAAgD,CAAC;AAC3E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAEjD,QAAA,MAAM,OAAO,eAA4B,CAAC;AAC1C,MAAM,WAAW,QAAQ;IACvB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,WAAW,CAAC,OAAO,EACjC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,EACjB,UAAU,EAAE,MAAM,GACjB,QAAQ,CAOV;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,GACrC,IAAI,IAAI,QAAQ,CAElB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,WAAW,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,IAAI,GAAG,IAAI,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"item_data.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE/C,QAAA,MAAM,OAAO,eAA4B,CAAC;AAC1C,MAAM,WAAW,QAAQ;IACvB,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,wBAAgB,WAAW,CAAC,OAAO,EACjC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,EACjB,UAAU,EAAE,MAAM,GACjB,QAAQ,CAOV;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,GACrC,IAAI,IAAI,QAAQ,CAElB;AAED,MAAM,MAAM,kBAAkB,GAC1B;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,WAAW,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,IAAI,GAAG,IAAI,CAAA;CAAE,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
2
1
  import type { Row } from '@tanstack/react-table';
2
+ import type { Edge } from '@zakodium/pdnd-esm';
3
3
  export type ReorderItemCallback = (args: {
4
4
  startIndex: number;
5
5
  indexOfTarget: number;
@@ -1 +1 @@
1
- {"version":3,"file":"item_order_context.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gDAAgD,CAAC;AAC3E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAGjD,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,IAAI,GAAG,IAAI,CAAC;CAClC,KAAK,IAAI,CAAC;AAEX,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,gEAE5B,CAAC;AAEF,wBAAgB,YAAY,mCAM3B"}
1
+ {"version":3,"file":"item_order_context.d.ts","sourceRoot":"","sources":["../../../../src/components/table/reorder_rows/item_order_context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG/C,MAAM,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,IAAI,GAAG,IAAI,CAAC;CAClC,KAAK,IAAI,CAAC;AAEX,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrB,WAAW,EAAE,mBAAmB,CAAC;IACjC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,gEAE5B,CAAC;AAEF,wBAAgB,YAAY,mCAM3B"}
@@ -26,7 +26,7 @@ export function useTableScroll(options) {
26
26
  else {
27
27
  return {
28
28
  scrollIntoView(id, options) {
29
- const element = scrollRef.current?.querySelector(`tr[data-row-id="${id}"]`);
29
+ const element = scrollRef.current?.querySelector(`tr[data-row-id="${CSS.escape(id)}"]`);
30
30
  if (!element) {
31
31
  // eslint-disable-next-line no-console
32
32
  console.warn(`Could not scroll to row with ID ${id}, the row does not exist`);
@@ -1 +1 @@
1
- {"version":3,"file":"use_table_scroll.js","sourceRoot":"","sources":["../../../src/components/table/use_table_scroll.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,MAAM,UAAU,cAAc,CAAwB,OAqBrD;IACC,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,GACrE,OAAO,CAAC;IAEV,mBAAmB,CAAC,cAAc,EAAE,GAAG,EAAE;QACvC,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO;gBACL,cAAc,CACZ,EAAU,EACV,OAA2C;oBAE3C,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,kBAAkB;oBAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,kCAAkC;oBACjG,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;wBACpB,kFAAkF;wBAClF,sCAAsC;wBACtC,OAAO,CAAC,IAAI,CACV,mCAAmC,EAAE,0BAA0B,CAChE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBAC7C,IAAI,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BACvD,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;wBACzC,CAAC;oBACH,CAAC;gBACH,CAAC;aACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,cAAc,CACZ,EAAU,EACV,OAA2C;oBAE3C,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,aAAa,CAC9C,mBAAmB,EAAE,IAAI,CAC1B,CAAC;oBACF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,sCAAsC;wBACtC,OAAO,CAAC,IAAI,CACV,mCAAmC,EAAE,0BAA0B,CAChE,CAAC;oBACJ,CAAC;oBACD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;oBACjC,IAAI,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACvD,aAAa,CAAC,EAAE,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;aACF,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AACrE,CAAC"}
1
+ {"version":3,"file":"use_table_scroll.js","sourceRoot":"","sources":["../../../src/components/table/use_table_scroll.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,MAAM,UAAU,cAAc,CAAwB,OAqBrD;IACC,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,GACrE,OAAO,CAAC;IAEV,mBAAmB,CAAC,cAAc,EAAE,GAAG,EAAE;QACvC,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO;gBACL,cAAc,CACZ,EAAU,EACV,OAA2C;oBAE3C,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,kBAAkB;oBAC/D,MAAM,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,kCAAkC;oBACjG,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;wBACpB,kFAAkF;wBAClF,sCAAsC;wBACtC,OAAO,CAAC,IAAI,CACV,mCAAmC,EAAE,0BAA0B,CAChE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBAC7C,IAAI,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;4BACvD,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC;wBACzC,CAAC;oBACH,CAAC;gBACH,CAAC;aACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO;gBACL,cAAc,CACZ,EAAU,EACV,OAA2C;oBAE3C,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE,aAAa,CAC9C,mBAAmB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CACtC,CAAC;oBACF,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,sCAAsC;wBACtC,OAAO,CAAC,IAAI,CACV,mCAAmC,EAAE,0BAA0B,CAChE,CAAC;oBACJ,CAAC;oBACD,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;oBACjC,IAAI,OAAO,EAAE,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBACvD,aAAa,CAAC,EAAE,CAAC,CAAC;oBACpB,CAAC;gBACH,CAAC;aACF,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,cAAc,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;AACrE,CAAC"}
@@ -31,7 +31,7 @@ const ShortcutItem = styled.div `
31
31
  font-size: 0.75rem;
32
32
  font-weight: bold;
33
33
  `;
34
- const SubTitleItem = styled.div `
34
+ const SubtitleItem = styled.div `
35
35
  position: relative;
36
36
  padding-left: 15px;
37
37
  box-sizing: border-box;
@@ -86,6 +86,6 @@ function SubTitles({ items }) {
86
86
  return (_jsx("ul", { style: {
87
87
  paddingLeft: '5px',
88
88
  listStyle: 'none',
89
- }, children: items.map(({ shortcuts = [], title }) => (_jsx(SubTitleItem, { children: _jsxs(FlexContainer, { children: [_jsx(Title, { size: "0.7rem", children: title }), _jsx(ShortCuts, { shortcuts: shortcuts })] }) }, title))) }));
89
+ }, children: items.map(({ shortcuts = [], title }) => (_jsx(SubtitleItem, { children: _jsxs(FlexContainer, { children: [_jsx(Title, { size: "0.7rem", children: title }), _jsx(ShortCuts, { shortcuts: shortcuts })] }) }, title))) }));
90
90
  }
91
91
  //# sourceMappingURL=TooltipHelpContent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"svg.d.ts","sourceRoot":"","sources":["../../../src/components/utils/svg.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;CAChD;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAkCR;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAgCf"}
1
+ {"version":3,"file":"svg.d.ts","sourceRoot":"","sources":["../../../src/components/utils/svg.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAC;CAChD;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAoCR;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,aAAa,EACnB,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAgCf"}
@@ -18,7 +18,10 @@ export function exportSVG(base, options = {}) {
18
18
  }
19
19
  }
20
20
  if (addBackground) {
21
- const background = document.createElementNS('http://www.w3.org/2000/svg', 'rect');
21
+ const background = document.createElementNS(
22
+ // XML namespaces are immutable. This false-positive is fixed in eslint-plugin-unicorn v66.
23
+ // eslint-disable-next-line unicorn/prefer-https
24
+ 'http://www.w3.org/2000/svg', 'rect');
22
25
  background.setAttribute('x', '0');
23
26
  background.setAttribute('y', '0');
24
27
  background.setAttribute('width', '100%');
@@ -1 +1 @@
1
- {"version":3,"file":"svg.js","sourceRoot":"","sources":["../../../src/components/utils/svg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"svg.js","sourceRoot":"","sources":["../../../src/components/utils/svg.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-science",
3
- "version": "20.1.0",
3
+ "version": "20.3.0",
4
4
  "description": "React components to build scientific applications UI",
5
5
  "type": "module",
6
6
  "exports": {
@@ -23,7 +23,7 @@
23
23
  "createData": "npm run prepack && node scripts/createData",
24
24
  "dev": "echo Use npm run dev-app or npm run storybook && exit 1",
25
25
  "dev-app": "vite --open /pages/demo.html",
26
- "eslint": "eslint . --cache --max-warnings=39",
26
+ "eslint": "eslint . --cache --max-warnings=45",
27
27
  "eslint-fix": "npm run eslint -- --fix",
28
28
  "playwright": "npm run playwright-ct -- --project chromium && npm run playwright-e2e -- --project chromium",
29
29
  "playwright-ct": "playwright test -c playwright-ct.config.mts",
@@ -56,16 +56,13 @@
56
56
  "react-dom": "^18.3.1 || ^19.2.7"
57
57
  },
58
58
  "dependencies": {
59
- "@atlaskit/pragmatic-drag-and-drop": "^1.8.1",
60
- "@atlaskit/pragmatic-drag-and-drop-auto-scroll": "^2.1.5",
61
- "@atlaskit/pragmatic-drag-and-drop-hitbox": "^1.2.0",
62
59
  "@emotion/styled": "^11.14.1",
63
60
  "@radix-ui/react-use-controllable-state": "^1.2.3",
64
61
  "@tanstack/react-form": "^1.33.0",
65
62
  "@tanstack/react-store": "^0.11.0",
66
63
  "@tanstack/react-table": "^8.21.3",
67
- "@tanstack/react-virtual": "^3.14.2",
68
- "@zakodium/pdnd-esm": "^1.0.2",
64
+ "@tanstack/react-virtual": "^3.14.3",
65
+ "@zakodium/pdnd-esm": "^1.1.0",
69
66
  "d3-scale-chromatic": "^3.1.0",
70
67
  "react-d3-utils": "^3.1.2",
71
68
  "react-dropzone": "^15.0.0",
@@ -81,38 +78,38 @@
81
78
  "@blueprintjs/icons": "6.11.0",
82
79
  "@blueprintjs/select": "6.3.0",
83
80
  "@floating-ui/react": "^0.27.19",
84
- "@playwright/experimental-ct-react": "^1.60.0",
85
- "@playwright/test": "^1.60.0",
86
- "@storybook/addon-docs": "^10.4.3",
87
- "@storybook/react-vite": "^10.4.3",
88
- "@tanstack/react-query": "^5.101.0",
81
+ "@playwright/experimental-ct-react": "^1.61.1",
82
+ "@playwright/test": "^1.61.1",
83
+ "@storybook/addon-docs": "^10.4.6",
84
+ "@storybook/react-vite": "^10.4.6",
85
+ "@tanstack/react-query": "^5.101.1",
89
86
  "@types/babel__core": "^7.20.5",
90
87
  "@types/d3-scale-chromatic": "^3.1.0",
91
88
  "@types/node": "^24.13.1",
92
89
  "@types/react": "^18.3.31",
93
90
  "@types/react-dom": "^18.3.7",
94
91
  "@types/tinycolor2": "^1.4.6",
95
- "@vitejs/plugin-react": "^6.0.2",
96
- "@vitest/coverage-v8": "^4.1.8",
92
+ "@vitejs/plugin-react": "^6.0.3",
93
+ "@vitest/coverage-v8": "^4.1.9",
97
94
  "@zakodium/tsconfig": "^1.0.5",
98
95
  "biologic-converter": "^1.0.0",
99
96
  "cheminfo-font": "^1.27.0",
100
97
  "cheminfo-types": "^1.15.0",
101
98
  "cross-env": "^10.1.0",
102
99
  "eslint": "^9.39.4",
103
- "eslint-config-zakodium": "^20.0.0",
104
- "eslint-plugin-storybook": "^10.4.3",
100
+ "eslint-config-zakodium": "^20.1.0",
101
+ "eslint-plugin-storybook": "^10.4.6",
105
102
  "fifo-logger": "2.0.1",
106
103
  "filelist-utils": "^1.11.3",
107
104
  "immer": "^11.1.8",
108
- "jcampconverter": "^12.3.3",
109
- "ml-gsd": "^14.1.0",
110
- "ml-peak-shape-generator": "^5.1.0",
111
- "ml-signal-processing": "^2.2.1",
112
- "ml-spectra-processing": "^14.29.0",
105
+ "jcampconverter": "^12.4.0",
106
+ "ml-gsd": "^14.2.0",
107
+ "ml-peak-shape-generator": "^5.2.0",
108
+ "ml-signal-processing": "^2.2.2",
109
+ "ml-spectra-processing": "^14.29.1",
113
110
  "ms-spectrum": "^3.10.1",
114
111
  "netcdfjs": "^4.0.0",
115
- "postcss-styled-syntax": "^0.7.1",
112
+ "postcss-styled-syntax": "^0.7.2",
116
113
  "prettier": "^3.8.4",
117
114
  "react": "18.3.1",
118
115
  "react-dom": "18.3.1",
@@ -122,15 +119,15 @@
122
119
  "react-plot": "^3.1.2",
123
120
  "rimraf": "^6.1.3",
124
121
  "spc-parser": "^2.0.0",
125
- "storybook": "^10.4.3",
122
+ "storybook": "^10.4.6",
126
123
  "stylelint": "^17.13.0",
127
124
  "stylelint-config-standard": "^40.0.0",
128
125
  "typescript": "^6.0.3",
129
- "vite": "^8.0.16",
130
- "vitest": "^4.1.8",
126
+ "vite": "=8.0.16",
127
+ "vitest": "^4.1.9",
131
128
  "wdf-parser": "^1.0.0"
132
129
  },
133
130
  "volta": {
134
- "node": "24.16.0"
131
+ "node": "24.18.0"
135
132
  }
136
133
  }
@@ -81,7 +81,7 @@ export function Button(props: ButtonProps) {
81
81
  fill,
82
82
  content = '',
83
83
  disabled = !tooltipProps.content,
84
- ...otherToolTipProps
84
+ ...otherTooltipProps
85
85
  } = tooltipProps;
86
86
 
87
87
  const InnerButton = buttonProps.disabled
@@ -93,7 +93,7 @@ export function Button(props: ButtonProps) {
93
93
  fill={fill || buttonProps.fill}
94
94
  disabled={disabled}
95
95
  content={content}
96
- {...otherToolTipProps}
96
+ {...otherTooltipProps}
97
97
  renderTarget={({ isOpen, ...targetProps }) => (
98
98
  <InnerButton
99
99
  {...targetProps}
@@ -9,6 +9,13 @@ export interface FormProps extends FormHTMLAttributes<HTMLFormElement> {
9
9
  layout?: Layout;
10
10
  }
11
11
 
12
+ /**
13
+ * @param props
14
+ * @deprecated Use `AppForm` instead.
15
+ * This component will be merged into `AppForm` and removed in a next major release.
16
+ * During migration, consider removing the `onSubmit` props.
17
+ * If you did not bound `noValidate` props, you will have to bound `domValidate` to `AppForm`.
18
+ */
12
19
  export function Form(props: FormProps) {
13
20
  const { children, layout = 'stacked', ...otherProps } = props;
14
21
 
@@ -0,0 +1,60 @@
1
+ import type { SyntheticEvent } from 'react';
2
+
3
+ import { withForm } from '../../context/use_ts_form.js';
4
+ import type { FormProps as DomFormProps } from '../input_groups/form.js';
5
+ import { Form as DomForm } from '../input_groups/form.js';
6
+
7
+ export interface AppFormProps extends Omit<DomFormProps, 'noValidate'> {
8
+ domValidate?: boolean;
9
+ /**
10
+ * should return meta to pass to `form.handleSubmit`
11
+ */
12
+ // Generic meta-result is not possible with higher order component pattern
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
+ onSubmitMeta?: (event: SyntheticEvent<HTMLFormElement, SubmitEvent>) => any;
15
+ }
16
+
17
+ const props: AppFormProps = { children: null };
18
+
19
+ // AppForm is a generic component for all forms
20
+ // it will not touch to values inside the form,
21
+ // and unknown is not possible.
22
+ // <AppForm form={form}> would throw an error like "unknown is not compatible with <inferred values type>"
23
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
24
+ const defaultValues: any = undefined;
25
+
26
+ /**
27
+ * Mount `form.AppForm` and `Form` with default onSubmit.
28
+ * It reduces the boilerplate code.
29
+ */
30
+ export const AppForm = withForm({
31
+ defaultValues,
32
+ props,
33
+ render: function FormRender(props) {
34
+ const { form, children, domValidate, onSubmitMeta, ...domProps } = props;
35
+ const { AppForm } = form;
36
+
37
+ return (
38
+ <AppForm>
39
+ {/* eslint-disable-next-line @typescript-eslint/no-deprecated */}
40
+ <DomForm
41
+ onSubmit={(event) => {
42
+ event.preventDefault();
43
+
44
+ const meta = onSubmitMeta?.(
45
+ // onSubmit event is not typed properly.
46
+ // It uses Event instead of SubmitEvent.
47
+ event as SyntheticEvent<HTMLFormElement, SubmitEvent>,
48
+ );
49
+
50
+ void form.handleSubmit(meta);
51
+ }}
52
+ {...domProps}
53
+ noValidate={!domValidate}
54
+ >
55
+ {children}
56
+ </DomForm>
57
+ </AppForm>
58
+ );
59
+ },
60
+ });
@@ -1 +1,2 @@
1
1
  export { type Section as _Section } from './Section.js';
2
+ export { AppForm, type AppFormProps } from './form.js';
@@ -19,10 +19,11 @@ const HeaderContainer = styled.div`
19
19
  `;
20
20
 
21
21
  export function Header(props: HeaderProps) {
22
+ const { children } = props;
22
23
  return (
23
24
  <HeaderContainer>
24
- <div>{props.children[0]}</div>
25
- <div>{props.children[1]}</div>
25
+ <div>{children[0]}</div>
26
+ <div>{children[1]}</div>
26
27
  </HeaderContainer>
27
28
  );
28
29
  }
@@ -1,5 +1,5 @@
1
- import type { ElementDragPayload } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
2
1
  import type { Row, RowData } from '@tanstack/react-table';
2
+ import type { ElementDragPayload } from '@zakodium/pdnd-esm';
3
3
  import {
4
4
  attachClosestEdge,
5
5
  combine,
@@ -1,6 +1,6 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
2
1
  import { Colors } from '@blueprintjs/core';
3
2
  import styled from '@emotion/styled';
3
+ import type { Edge } from '@zakodium/pdnd-esm';
4
4
 
5
5
  export interface TableDropIndicatorProps {
6
6
  /**
@@ -1,5 +1,5 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
2
1
  import type { Row } from '@tanstack/react-table';
2
+ import type { Edge } from '@zakodium/pdnd-esm';
3
3
 
4
4
  const itemKey = Symbol('table-item-data');
5
5
  export interface ItemData {
@@ -1,5 +1,5 @@
1
- import type { Edge } from '@atlaskit/pragmatic-drag-and-drop-hitbox/types';
2
1
  import type { Row } from '@tanstack/react-table';
2
+ import type { Edge } from '@zakodium/pdnd-esm';
3
3
  import { createContext, useContext } from 'react';
4
4
 
5
5
  export type ReorderItemCallback = (args: {
@@ -1,4 +1,4 @@
1
- import type { ElementDragPayload } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
1
+ import type { ElementDragPayload } from '@zakodium/pdnd-esm';
2
2
  import {
3
3
  autoScrollForElements,
4
4
  combine,
@@ -63,7 +63,7 @@ export function useTableScroll<TData extends RowData>(options: {
63
63
  options?: TableVirtualScrollIntoViewOptions,
64
64
  ) {
65
65
  const element = scrollRef.current?.querySelector(
66
- `tr[data-row-id="${id}"]`,
66
+ `tr[data-row-id="${CSS.escape(id)}"]`,
67
67
  );
68
68
  if (!element) {
69
69
  // eslint-disable-next-line no-console
@@ -40,7 +40,7 @@ const ShortcutItem = styled.div`
40
40
  font-weight: bold;
41
41
  `;
42
42
 
43
- const SubTitleItem = styled.div`
43
+ const SubtitleItem = styled.div`
44
44
  position: relative;
45
45
  padding-left: 15px;
46
46
  box-sizing: border-box;
@@ -158,12 +158,12 @@ function SubTitles({ items }: { items: TooltipItem[] }) {
158
158
  }}
159
159
  >
160
160
  {items.map(({ shortcuts = [], title }) => (
161
- <SubTitleItem key={title}>
161
+ <SubtitleItem key={title}>
162
162
  <FlexContainer>
163
163
  <Title size="0.7rem">{title}</Title>
164
164
  <ShortCuts shortcuts={shortcuts} />
165
165
  </FlexContainer>
166
- </SubTitleItem>
166
+ </SubtitleItem>
167
167
  ))}
168
168
  </ul>
169
169
  );
@@ -60,6 +60,8 @@ export function exportSVG(
60
60
 
61
61
  if (addBackground) {
62
62
  const background = document.createElementNS(
63
+ // XML namespaces are immutable. This false-positive is fixed in eslint-plugin-unicorn v66.
64
+ // eslint-disable-next-line unicorn/prefer-https
63
65
  'http://www.w3.org/2000/svg',
64
66
  'rect',
65
67
  );