@unisim/sdk 0.89.0 → 0.89.1

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.
@@ -1,4 +1,4 @@
1
- import type { DragEvent, KeyboardEvent, RefObject } from 'react';
1
+ import type { DragEvent, KeyboardEvent } from 'react';
2
2
  /**
3
3
  * The mechanics of a file drop target, with no opinion about how it looks.
4
4
  *
@@ -54,9 +54,18 @@ export interface FileDrop {
54
54
  tabIndex?: number;
55
55
  'aria-label'?: string;
56
56
  };
57
- /** Spread onto a visually hidden `<input type="file">`. */
57
+ /**
58
+ * Spread onto a visually hidden `<input type="file">`.
59
+ *
60
+ * ⚠️ `ref` is a CALLBACK ref, not a `RefObject`, and that is not a style
61
+ * choice. React 18 types `useRef<T>(null)` as `RefObject<T>` where `current`
62
+ * is non-null, while React 19 types it as `RefObject<T | null>`; the SDK is
63
+ * compiled once against one of them and its `.d.ts` then fails to typecheck
64
+ * in apps on the other. A `RefCallback` has no such variance, so one build
65
+ * satisfies both — and this package supports `react ^18 || ^19`.
66
+ */
58
67
  inputProps: {
59
- ref: RefObject<HTMLInputElement | null>;
68
+ ref: (el: HTMLInputElement | null) => void;
60
69
  type: 'file';
61
70
  accept?: string;
62
71
  multiple: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"useFileDrop.d.ts","sourceRoot":"","sources":["../src/useFileDrop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEhE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,IAAI,EAAE,OAAO,CAAA;IACb,2EAA2E;IAC3E,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,mCAAmC;IACnC,aAAa,EAAE;QACb,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QACnC,UAAU,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QAClC,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QACnC,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QAC9B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;QACpB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAA;QACtC,IAAI,CAAC,EAAE,QAAQ,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD,2DAA2D;IAC3D,UAAU,EAAE;QACV,GAAG,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;QACvC,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,OAAO,CAAA;QACjB,QAAQ,EAAE,CAAC,CAAC,EAAE;YAAE,MAAM,EAAE,gBAAgB,CAAA;SAAE,KAAK,IAAI,CAAA;KACpD,CAAA;CACF;AAED,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,MAAM,EACN,QAAe,EACf,aAAoB,EACpB,KAA6C,EAC7C,QAAgB,GACjB,EAAE,kBAAkB,GAAG,QAAQ,CA2E/B"}
1
+ {"version":3,"file":"useFileDrop.d.ts","sourceRoot":"","sources":["../src/useFileDrop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAErD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,kBAAkB;IACjC,kEAAkE;IAClE,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAChD,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,mEAAmE;IACnE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,4EAA4E;IAC5E,IAAI,EAAE,OAAO,CAAA;IACb,2EAA2E;IAC3E,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,mCAAmC;IACnC,aAAa,EAAE;QACb,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QACnC,UAAU,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QAClC,WAAW,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QACnC,MAAM,EAAE,CAAC,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;QAC9B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;QACpB,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAA;QACtC,IAAI,CAAC,EAAE,QAAQ,CAAA;QACf,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,YAAY,CAAC,EAAE,MAAM,CAAA;KACtB,CAAA;IACD;;;;;;;;;OASG;IACH,UAAU,EAAE;QACV,GAAG,EAAE,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI,KAAK,IAAI,CAAA;QAC1C,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,OAAO,CAAA;QACjB,QAAQ,EAAE,CAAC,CAAC,EAAE;YAAE,MAAM,EAAE,gBAAgB,CAAA;SAAE,KAAK,IAAI,CAAA;KACpD,CAAA;CACF;AAED,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,MAAM,EACN,QAAe,EACf,aAAoB,EACpB,KAA6C,EAC7C,QAAgB,GACjB,EAAE,kBAAkB,GAAG,QAAQ,CA8E/B"}
@@ -2,6 +2,9 @@
2
2
  import { useCallback, useRef, useState } from 'react';
3
3
  export function useFileDrop({ onFiles, accept, multiple = true, clickToBrowse = true, label = 'Drop files here, or click to browse', disabled = false, }) {
4
4
  const inputRef = useRef(null);
5
+ const setInputRef = useCallback((el) => {
6
+ inputRef.current = el;
7
+ }, []);
5
8
  const [over, setOver] = useState(false);
6
9
  // How many nested elements the drag is currently inside. See the note above:
7
10
  // moving between children fires leave on the old one before enter on the new,
@@ -62,7 +65,7 @@ export function useFileDrop({ onFiles, accept, multiple = true, clickToBrowse =
62
65
  : {}),
63
66
  },
64
67
  inputProps: {
65
- ref: inputRef,
68
+ ref: setInputRef,
66
69
  type: 'file',
67
70
  accept,
68
71
  multiple,
@@ -1 +1 @@
1
- {"version":3,"file":"useFileDrop.js","sourceRoot":"","sources":["../src/useFileDrop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useFileDrop.js","sourceRoot":"","sources":["../src/useFileDrop.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unisim/sdk",
3
- "version": "0.89.0",
3
+ "version": "0.89.1",
4
4
  "description": "Shared React SDK for the Universal Suite — auth, entitlements, usage telemetry, changelog, org admin.",
5
5
  "license": "MIT",
6
6
  "author": "Universal Simulation Ltd",