From 7aad2e6789137f7e96f4477ae51770ba1f4825cc Mon Sep 17 00:00:00 2001 From: Zachary Plata Date: Thu, 6 Aug 2026 14:58:30 -0500 Subject: [PATCH 1/3] feat: add hook for font databound properties --- examples/public/font_db_test.riv | Bin 0 -> 206536 bytes .../components/DataBindingTests.stories.tsx | 40 ++++++- examples/src/components/DataBindingTests.tsx | 98 +++++++++++++++ src/hooks/useViewModelInstanceFont.ts | 38 ++++++ src/index.ts | 2 + src/types.ts | 11 ++ test/useViewModelInstanceFont.test.tsx | 112 ++++++++++++++++++ 7 files changed, 300 insertions(+), 1 deletion(-) create mode 100644 examples/public/font_db_test.riv create mode 100644 src/hooks/useViewModelInstanceFont.ts create mode 100644 test/useViewModelInstanceFont.test.tsx diff --git a/examples/public/font_db_test.riv b/examples/public/font_db_test.riv new file mode 100644 index 0000000000000000000000000000000000000000..60f8c199c63f81d38ee28e91d59d30ee80b8a859 GIT binary patch literal 206536 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%0A<4wRx{BRd)_dW*e^ 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 , + play: async ({ canvasElement }) => { + const canvas = within(canvasElement); + + await waitFor(() => { + expect(canvas.getByTestId('set-font-noto-thai')).toBeTruthy(); + expect(canvas.getByTestId('set-font-noto-arabic')).toBeTruthy(); + expect(canvas.getByTestId('clear-font')).toBeTruthy(); + }, { timeout: 3000 }); + + expect(canvas.queryByTestId('current-font')).toBeNull(); + + await userEvent.click(canvas.getByTestId('set-font-noto-arabic')); + + await waitFor(() => { + expect(canvas.getByTestId('current-font').textContent).toBe( + 'Current font: Noto Sans Arabic' + ); + }, { timeout: 5000 }); + + await userEvent.click(canvas.getByTestId('clear-font')); + + await waitFor(() => { + expect(canvas.queryByTestId('current-font')).toBeNull(); + }, { timeout: 2000 }); + + await userEvent.click(canvas.getByTestId('set-font-noto-arabic')); + + await waitFor(() => { + expect(canvas.getByTestId('current-font').textContent).toBe( + 'Current font: Noto Sans Arabic' + ); + }, { timeout: 5000 }); + } +}; + export const TodoListStory: StoryObj = { name: 'Todo List Property', diff --git a/examples/src/components/DataBindingTests.tsx b/examples/src/components/DataBindingTests.tsx index 87e68da..144205c 100644 --- a/examples/src/components/DataBindingTests.tsx +++ b/examples/src/components/DataBindingTests.tsx @@ -11,7 +11,9 @@ import Rive, { useViewModelInstanceColor, useViewModelInstanceTrigger, useViewModelInstanceImage, + useViewModelInstanceFont, decodeImage, + decodeFont, ViewModelInstance, useViewModelInstanceList, useViewModelInstanceArtboard @@ -615,6 +617,102 @@ export const ImagePropertyTest = ({ src }: { src: string }) => { ); }; +const FONT_OPTIONS = [ + { + name: 'Noto Serif Thai', + url: 'https://raw.githubusercontent.com/google/fonts/main/ofl/notoserifthai/NotoSerifThai%5Bwdth%2Cwght%5D.ttf', + testId: 'set-font-noto-thai', + }, + { + name: 'Noto Sans Arabic', + url: './NotoSansArabic-VariableFont_wdth,wght.ttf', + testId: 'set-font-noto-arabic', + }, +] as const; + +export const FontPropertyTest = ({ src }: { src: string }) => { + const [currentFont, setCurrentFont] = useState(''); + const [isLoading, setIsLoading] = useState(false); + + const { rive, RiveComponent } = useRive({ + src, + stateMachines: 'State Machine 1', + autoplay: true, + autoBind: true, + }); + + const { setValue: setFont } = useViewModelInstanceFont( + 'fontProperty', + rive?.viewModelInstance + ); + + const loadFont = async (name: string, url: string) => { + if (!setFont) return; + + setIsLoading(true); + try { + const response = await fetch(url); + const fontBuffer = await response.arrayBuffer(); + const decodedFont = await decodeFont(new Uint8Array(fontBuffer)); + + setFont(decodedFont); + setCurrentFont(name); + + decodedFont.unref(); + } catch (error) { + console.error('Failed to load font:', error); + } finally { + setIsLoading(false); + } + }; + + const clearFont = () => { + if (setFont) { + setFont(null); + setCurrentFont(''); + } + }; + + return ( +
+
+ +
+ + {rive === null ? ( +
Loading…
+ ) : ( +
+ {FONT_OPTIONS.map((font) => ( + + ))} + + +
+ )} + + {currentFont && ( +
+ Current font: {currentFont} +
+ )} +
+ ); +}; + // List Property Test const TodoItemComponent = ({ diff --git a/src/hooks/useViewModelInstanceFont.ts b/src/hooks/useViewModelInstanceFont.ts new file mode 100644 index 0000000..5bee065 --- /dev/null +++ b/src/hooks/useViewModelInstanceFont.ts @@ -0,0 +1,38 @@ +import { useCallback } from 'react'; +import { ViewModelInstance, ViewModelInstanceAssetFont } from '@rive-app/canvas'; +import { UseViewModelInstanceFontResult, RiveDecodedFont } from '../types'; +import { useViewModelInstanceProperty } from './useViewModelInstanceProperty'; + +/** + * Hook for interacting with font properties of a ViewModelInstance. + * + * @param path - Path to the font property (e.g. "boundFont" or "group/titleFont") + * @param viewModelInstance - The ViewModelInstance containing the font property + * @returns An object with a setter function + */ +export default function useViewModelInstanceFont( + path: string, + viewModelInstance?: ViewModelInstance | null +): UseViewModelInstanceFontResult { + const result = useViewModelInstanceProperty( + path, + viewModelInstance, + { + getProperty: useCallback((vm, p) => vm.font(p), []), + getValue: useCallback(() => undefined, []), + defaultValue: null, + buildPropertyOperations: useCallback((safePropertyAccess) => ({ + setValue: (newValue: RiveDecodedFont | null) => { + safePropertyAccess(prop => { + // TODO: Can remove the type assertion once JS has value setter with FontWrapper + prop.value = newValue as unknown as typeof prop.value; + }); + } + }), []) + } + ); + + return { + setValue: result.setValue + }; +} diff --git a/src/index.ts b/src/index.ts index 3ea3b50..0fa232b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -11,6 +11,7 @@ import useViewModelInstanceColor from './hooks/useViewModelInstanceColor'; import useViewModelInstanceEnum from './hooks/useViewModelInstanceEnum'; import useViewModelInstanceTrigger from './hooks/useViewModelInstanceTrigger'; import useViewModelInstanceImage from './hooks/useViewModelInstanceImage'; +import useViewModelInstanceFont from './hooks/useViewModelInstanceFont'; import useViewModelInstanceList from './hooks/useViewModelInstanceList'; import useResizeCanvas from './hooks/useResizeCanvas'; import useRiveFile from './hooks/useRiveFile'; @@ -32,6 +33,7 @@ export { useViewModelInstanceEnum, useViewModelInstanceTrigger, useViewModelInstanceImage, + useViewModelInstanceFont, useViewModelInstanceList, useViewModelInstanceArtboard, RiveProps, diff --git a/src/types.ts b/src/types.ts index fe6d260..aff213f 100644 --- a/src/types.ts +++ b/src/types.ts @@ -1,4 +1,5 @@ import type { + decodeFont, decodeImage, Rive, RiveFile, @@ -213,6 +214,16 @@ export type UseViewModelInstanceImageResult = { setValue: (value: RiveRenderImage | null) => void; }; +export type RiveDecodedFont = Awaited>; + +export type UseViewModelInstanceFontResult = { + /** + * Set the value of the font. + * @param value - The decoded font to set (from `decodeFont`), or null to clear. + */ + setValue: (value: RiveDecodedFont | null) => void; +}; + export type UseViewModelInstanceListResult = { /** * The current length of the list. diff --git a/test/useViewModelInstanceFont.test.tsx b/test/useViewModelInstanceFont.test.tsx new file mode 100644 index 0000000..6cf720e --- /dev/null +++ b/test/useViewModelInstanceFont.test.tsx @@ -0,0 +1,112 @@ +import { act, renderHook } from '@testing-library/react'; + +import useViewModelInstanceFont from '../src/hooks/useViewModelInstanceFont'; + +jest.mock('@rive-app/canvas', () => ({})); + +function makeFontProperty() { + let value: unknown = undefined; + return { + on: jest.fn(), + off: jest.fn(), + set value(next: unknown) { + value = next; + }, + get value() { + return value; + }, + }; +} + +function makeViewModelInstance(fontProperty: ReturnType) { + return { + font: jest.fn(() => fontProperty), + } as any; +} + +beforeEach(() => jest.clearAllMocks()); + +describe('useViewModelInstanceFont', () => { + it('looks up the font property by path and exposes setValue', () => { + const fontProperty = makeFontProperty(); + const viewModelInstance = makeViewModelInstance(fontProperty); + + const { result } = renderHook(() => + useViewModelInstanceFont('fontProperty', viewModelInstance) + ); + + expect(viewModelInstance.font).toHaveBeenCalledWith('fontProperty'); + expect(typeof result.current.setValue).toBe('function'); + }); + + it('sets the decoded font on the property', () => { + const fontProperty = makeFontProperty(); + const viewModelInstance = makeViewModelInstance(fontProperty); + const decodedFont = { nativeFont: {}, unref: jest.fn() }; + + const { result } = renderHook(() => + useViewModelInstanceFont('titleFont', viewModelInstance) + ); + + act(() => { + result.current.setValue(decodedFont as any); + }); + + expect(fontProperty.value).toBe(decodedFont); + }); + + it('clears the font when setValue is called with null', () => { + const fontProperty = makeFontProperty(); + const viewModelInstance = makeViewModelInstance(fontProperty); + const decodedFont = { nativeFont: {}, unref: jest.fn() }; + + const { result } = renderHook(() => + useViewModelInstanceFont('fontProperty', viewModelInstance) + ); + + act(() => { + result.current.setValue(decodedFont as any); + result.current.setValue(null); + }); + + expect(fontProperty.value).toBeNull(); + }); + + it('supports nested property paths', () => { + const fontProperty = makeFontProperty(); + const viewModelInstance = makeViewModelInstance(fontProperty); + + renderHook(() => + useViewModelInstanceFont('group/titleFont', viewModelInstance) + ); + + expect(viewModelInstance.font).toHaveBeenCalledWith('group/titleFont'); + }); + + it('does not throw when setValue is called without a view model instance', () => { + const { result } = renderHook(() => + useViewModelInstanceFont('fontProperty', null) + ); + + expect(() => { + act(() => { + result.current.setValue(null); + }); + }).not.toThrow(); + }); + + it('subscribes to property changes and cleans up on unmount', () => { + const fontProperty = makeFontProperty(); + const viewModelInstance = makeViewModelInstance(fontProperty); + + const { unmount } = renderHook(() => + useViewModelInstanceFont('fontProperty', viewModelInstance) + ); + + expect(fontProperty.on).toHaveBeenCalled(); + + unmount(); + + expect(fontProperty.off).toHaveBeenCalled(); + }); +}); From 2d4422008ca436cd653c156b03495f19fc3d7afb Mon Sep 17 00:00:00 2001 From: Zachary Plata Date: Thu, 6 Aug 2026 14:59:53 -0500 Subject: [PATCH 2/3] clarify return doc --- src/hooks/useViewModelInstanceImage.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/hooks/useViewModelInstanceImage.ts b/src/hooks/useViewModelInstanceImage.ts index 43d6284..521f27d 100644 --- a/src/hooks/useViewModelInstanceImage.ts +++ b/src/hooks/useViewModelInstanceImage.ts @@ -8,7 +8,7 @@ import { useViewModelInstanceProperty } from './useViewModelInstanceProperty'; * * @param path - Path to the image property (e.g. "profileImage" or "group/avatar") * @param viewModelInstance - The ViewModelInstance containing the image property - * @returns An object with a setter function + * @returns An object with a setter function to set a new font value */ export default function useViewModelInstanceImage( path: string, From 65593e23632e80a93b45ea2d08b5e37a93b84488 Mon Sep 17 00:00:00 2001 From: Zachary Plata Date: Fri, 7 Aug 2026 09:26:41 -0500 Subject: [PATCH 3/3] fix docs --- src/hooks/useViewModelInstanceFont.ts | 2 +- src/hooks/useViewModelInstanceImage.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/hooks/useViewModelInstanceFont.ts b/src/hooks/useViewModelInstanceFont.ts index 5bee065..860ec3c 100644 --- a/src/hooks/useViewModelInstanceFont.ts +++ b/src/hooks/useViewModelInstanceFont.ts @@ -8,7 +8,7 @@ import { useViewModelInstanceProperty } from './useViewModelInstanceProperty'; * * @param path - Path to the font property (e.g. "boundFont" or "group/titleFont") * @param viewModelInstance - The ViewModelInstance containing the font property - * @returns An object with a setter function + * @returns An object with a setter function to set a new font value */ export default function useViewModelInstanceFont( path: string, diff --git a/src/hooks/useViewModelInstanceImage.ts b/src/hooks/useViewModelInstanceImage.ts index 521f27d..2f20179 100644 --- a/src/hooks/useViewModelInstanceImage.ts +++ b/src/hooks/useViewModelInstanceImage.ts @@ -8,7 +8,7 @@ import { useViewModelInstanceProperty } from './useViewModelInstanceProperty'; * * @param path - Path to the image property (e.g. "profileImage" or "group/avatar") * @param viewModelInstance - The ViewModelInstance containing the image property - * @returns An object with a setter function to set a new font value + * @returns An object with a setter function to set a new image value */ export default function useViewModelInstanceImage( path: string,