@anywidget/types
Advanced tools
Comparing version
@@ -62,1 +62,10 @@ import type { IWidgetManager } from "@jupyter-widgets/base"; | ||
} | ||
interface WidgetDef<T extends ObjectHash = ObjectHash> { | ||
initialize?: Initialize<T>; | ||
render?: Render<T>; | ||
} | ||
export type AnyWidget<T extends ObjectHash = ObjectHash> = | ||
| WidgetDef<T> | ||
| (() => Awaitable<WidgetDef<T>>); |
@@ -39,2 +39,7 @@ import type { IWidgetManager } from "@jupyter-widgets/base"; | ||
} | ||
interface WidgetDef<T extends ObjectHash = ObjectHash> { | ||
initialize?: Initialize<T>; | ||
render?: Render<T>; | ||
} | ||
export type AnyWidget<T extends ObjectHash = ObjectHash> = WidgetDef<T> | (() => Awaitable<WidgetDef<T>>); | ||
export {}; |
@@ -61,1 +61,36 @@ import { describe, expectTypeOf, it } from "vitest"; | ||
}); | ||
describe("Define AnyWidget", () => { | ||
it("infers initialize and render for static widget", () => { | ||
let w = { | ||
initialize({ model }) { | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
render({ model, el }) { | ||
expectTypeOf(el).toEqualTypeOf(); | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
}; | ||
}); | ||
it("infers initialize and render for function widget", () => { | ||
let w = () => ({ | ||
initialize({ model }) { | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
render({ model, el }) { | ||
expectTypeOf(el).toEqualTypeOf(); | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
}); | ||
}); | ||
it("infers initialize and render for async function widget", () => { | ||
let w = async () => ({ | ||
initialize({ model }) { | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
render({ model, el }) { | ||
expectTypeOf(el).toEqualTypeOf(); | ||
expectTypeOf(model.get("value")).toEqualTypeOf(); | ||
}, | ||
}); | ||
}); | ||
}); |
{ | ||
"name": "@anywidget/types", | ||
"type": "module", | ||
"version": "0.1.5", | ||
"version": "0.1.6", | ||
"description": "utility types for anywidget", | ||
@@ -18,4 +18,4 @@ "main": "dist/index.js", | ||
"dependencies": { | ||
"@jupyter-widgets/base": "^6.0.6" | ||
"@jupyter-widgets/base": "^6.0.7" | ||
} | ||
} |
@@ -19,4 +19,4 @@ # @anywidget/types | ||
/** @type {import("@anywidget/types").AnyWidget<Model>} */ | ||
export default { | ||
/** @type {import("@anywidget/types").Initialize<Model>} */ | ||
initialize({ model }) { | ||
@@ -26,3 +26,2 @@ let value = model.get("value"); | ||
}, | ||
/** @type {import("@anywidget/types").Render<Model>} */ | ||
render({ model, el }) { | ||
@@ -29,0 +28,0 @@ let value = model.get("value"); |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
9880
19.55%203
30.13%0
-100%41
-2.38%Updated