@sudobility/sudojo_lib 0.0.37 → 0.0.38

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.
@@ -24,4 +24,6 @@ export type { UseGamePersistenceOptions, UseGamePersistenceResult, } from './use
24
24
  export { useLocalStorage } from './useLocalStorage';
25
25
  export { useHint } from './useHint';
26
26
  export type { UseHintOptions, UseHintResult, HintBoardData, HintReceivedData, HintAccessError, } from './useHint';
27
+ export { useGamePlay } from './useGamePlay';
28
+ export type { UseGamePlayOptions, UseGamePlayResult } from './useGamePlay';
27
29
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACvE,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EACV,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC9D,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC7D,YAAY,EACV,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG/D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACvE,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,GAChB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC"}
@@ -24,4 +24,6 @@ export { useGamePersistence, useAutoSave } from './useGamePersistence';
24
24
  export { useLocalStorage } from './useLocalStorage';
25
25
  // Hint hook
26
26
  export { useHint } from './useHint';
27
+ // Game play hook (current game management)
28
+ export { useGamePlay } from './useGamePlay';
27
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAQlD,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQ9D,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAQ7D,sBAAsB;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,iBAAiB;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMpD,wCAAwC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,wDAAwD;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAO9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,yBAAyB;AACzB,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMvE,qBAAqB;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,YAAY;AACZ,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAQlD,mBAAmB;AACnB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAQ9D,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAQ7D,sBAAsB;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,iBAAiB;AACjB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAMpD,wCAAwC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,wDAAwD;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAO9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,kBAAkB;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,yBAAyB;AACzB,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAMvE,qBAAqB;AACrB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,YAAY;AACZ,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,2CAA2C;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Hook for managing the current game
3
+ *
4
+ * Provides a clean API for starting, updating, and clearing the current game.
5
+ * Includes debounced auto-save to avoid excessive localStorage writes.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * const { currentGame, startGame, updateProgress, clearGame } = useGamePlay();
10
+ *
11
+ * // Start a new game
12
+ * startGame('daily', puzzle, solution, { dailyDate: '2024-01-15' });
13
+ *
14
+ * // Update progress (debounced)
15
+ * updateProgress(inputString, pencilmarksString, isPencilMode, elapsedTime);
16
+ *
17
+ * // Clear on completion
18
+ * clearGame();
19
+ * ```
20
+ */
21
+ import type { CurrentGame, CurrentGameMeta, GameSource } from '../types/currentGame';
22
+ export interface UseGamePlayOptions {
23
+ /** Debounce delay for auto-save in ms (default: 2000) */
24
+ autoSaveDelay?: number;
25
+ }
26
+ export interface UseGamePlayResult {
27
+ /** Current game state (null if none) */
28
+ currentGame: CurrentGame | null;
29
+ /** Whether there's an active game */
30
+ hasCurrentGame: boolean;
31
+ /** Start a new game */
32
+ startGame: (source: GameSource, puzzle: string, solution: string, meta?: CurrentGameMeta) => void;
33
+ /** Update progress (debounced internally) */
34
+ updateProgress: (inputString: string, pencilmarksString: string, isPencilMode: boolean, elapsedTime: number) => void;
35
+ /** Clear current game (call on completion) */
36
+ clearGame: () => void;
37
+ }
38
+ export declare function useGamePlay(options?: UseGamePlayOptions): UseGamePlayResult;
39
+ //# sourceMappingURL=useGamePlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGamePlay.d.ts","sourceRoot":"","sources":["../../src/hooks/useGamePlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACX,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,kBAAkB;IACjC,yDAAyD;IACzD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,qCAAqC;IACrC,cAAc,EAAE,OAAO,CAAC;IACxB,uBAAuB;IACvB,SAAS,EAAE,CACT,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,eAAe,KACnB,IAAI,CAAC;IACV,6CAA6C;IAC7C,cAAc,EAAE,CACd,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,OAAO,EACrB,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IACV,8CAA8C;IAC9C,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,wBAAgB,WAAW,CACzB,OAAO,GAAE,kBAAuB,GAC/B,iBAAiB,CAwDnB"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Hook for managing the current game
3
+ *
4
+ * Provides a clean API for starting, updating, and clearing the current game.
5
+ * Includes debounced auto-save to avoid excessive localStorage writes.
6
+ *
7
+ * @example
8
+ * ```tsx
9
+ * const { currentGame, startGame, updateProgress, clearGame } = useGamePlay();
10
+ *
11
+ * // Start a new game
12
+ * startGame('daily', puzzle, solution, { dailyDate: '2024-01-15' });
13
+ *
14
+ * // Update progress (debounced)
15
+ * updateProgress(inputString, pencilmarksString, isPencilMode, elapsedTime);
16
+ *
17
+ * // Clear on completion
18
+ * clearGame();
19
+ * ```
20
+ */
21
+ import { useCallback, useEffect, useRef } from 'react';
22
+ import { useGamePlayStore } from '../stores/gamePlayStore';
23
+ // Get stable reference to store actions (doesn't change on state updates)
24
+ const getStoreActions = () => useGamePlayStore.getState();
25
+ export function useGamePlay(options = {}) {
26
+ const { autoSaveDelay = 2000 } = options;
27
+ const store = useGamePlayStore();
28
+ const timeoutRef = useRef(null);
29
+ const pendingUpdate = useRef(null);
30
+ // Debounced update - uses getState() for stable reference
31
+ const updateProgress = useCallback((inputString, pencilmarksString, isPencilMode, elapsedTime) => {
32
+ pendingUpdate.current = [
33
+ inputString,
34
+ pencilmarksString,
35
+ isPencilMode,
36
+ elapsedTime,
37
+ ];
38
+ if (timeoutRef.current) {
39
+ clearTimeout(timeoutRef.current);
40
+ }
41
+ timeoutRef.current = setTimeout(() => {
42
+ if (pendingUpdate.current) {
43
+ // Use getState() to get stable reference that doesn't trigger re-renders
44
+ getStoreActions().updateProgress(...pendingUpdate.current);
45
+ pendingUpdate.current = null;
46
+ }
47
+ }, autoSaveDelay);
48
+ }, [autoSaveDelay]);
49
+ // Flush pending updates on unmount only
50
+ useEffect(() => {
51
+ return () => {
52
+ if (timeoutRef.current) {
53
+ clearTimeout(timeoutRef.current);
54
+ }
55
+ if (pendingUpdate.current) {
56
+ // Use getState() to get stable reference that doesn't trigger re-renders
57
+ getStoreActions().updateProgress(...pendingUpdate.current);
58
+ }
59
+ };
60
+ }, []); // Empty deps - only run cleanup on actual unmount
61
+ return {
62
+ currentGame: store.currentGame,
63
+ hasCurrentGame: store.currentGame !== null,
64
+ startGame: store.startGame,
65
+ updateProgress,
66
+ clearGame: store.clearGame,
67
+ };
68
+ }
69
+ //# sourceMappingURL=useGamePlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGamePlay.js","sourceRoot":"","sources":["../../src/hooks/useGamePlay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAO3D,0EAA0E;AAC1E,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AA8B1D,MAAM,UAAU,WAAW,CACzB,UAA8B,EAAE;IAEhC,MAAM,EAAE,aAAa,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC;IACzC,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,MAAM,CAAuC,IAAI,CAAC,CAAC;IACtE,MAAM,aAAa,GAAG,MAAM,CAA2C,IAAI,CAAC,CAAC;IAE7E,0DAA0D;IAC1D,MAAM,cAAc,GAAG,WAAW,CAChC,CACE,WAAmB,EACnB,iBAAyB,EACzB,YAAqB,EACrB,WAAmB,EACnB,EAAE;QACF,aAAa,CAAC,OAAO,GAAG;YACtB,WAAW;YACX,iBAAiB;YACjB,YAAY;YACZ,WAAW;SACZ,CAAC;QAEF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QAED,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,yEAAyE;gBACzE,eAAe,EAAE,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC3D,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;YAC/B,CAAC;QACH,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,wCAAwC;IACxC,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACvB,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;YACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC1B,yEAAyE;gBACzE,eAAe,EAAE,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kDAAkD;IAE1D,OAAO;QACL,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,cAAc,EAAE,KAAK,CAAC,WAAW,KAAK,IAAI;QAC1C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,cAAc;QACd,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC;AACJ,CAAC"}
@@ -82,8 +82,10 @@ export interface UseSudokuResult {
82
82
  applyHintData: (userInput: string, pencilmarks: string | null, autoPencilmarks: boolean) => void;
83
83
  /** Get board state as string */
84
84
  getBoardString: () => string;
85
- /** Get original puzzle string */
85
+ /** Get original puzzle string (before scrambling) */
86
86
  getOriginalPuzzle: () => string;
87
+ /** Get scrambled puzzle string (what the user is playing) - use this for solver API */
88
+ getScrambledPuzzle: () => string;
87
89
  /** Get input string (user entries only) */
88
90
  getInputString: () => string;
89
91
  /** Get pencilmarks string */
@@ -1 +1 @@
1
- {"version":3,"file":"useSudoku.d.ts","sourceRoot":"","sources":["../../src/hooks/useSudoku.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSudoku.d.ts","sourceRoot":"","sources":["../../src/hooks/useSudoku.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@
14
14
  */
15
15
  import { useCallback, useMemo, useReducer } from 'react';
16
16
  import { blockOf, cellHasError, columnOf, DEFAULT_APP_SETTINGS, DEFAULT_PLAY_SETTINGS, rowOf, } from '../types/sudoku';
17
- import { cellsToInputString, cellsToPencilmarksString, cellsToStateString, NonScrambler, parsePuzzleString, scrambleBoard, Scrambler, } from '../utils/sudokuScrambler';
17
+ import { cellsToInputString, cellsToPencilmarksString, cellsToPuzzleString, cellsToStateString, NonScrambler, parsePuzzleString, scrambleBoard, Scrambler, } from '../utils/sudokuScrambler';
18
18
  // =============================================================================
19
19
  // Initial State
20
20
  // =============================================================================
@@ -603,6 +603,11 @@ export function useSudoku(options = {}) {
603
603
  const getOriginalPuzzle = useCallback(() => {
604
604
  return state.originalPuzzle;
605
605
  }, [state.originalPuzzle]);
606
+ const getScrambledPuzzle = useCallback(() => {
607
+ if (!board)
608
+ return '';
609
+ return cellsToPuzzleString(board.cells);
610
+ }, [board]);
606
611
  const getInputString = useCallback(() => {
607
612
  if (!board)
608
613
  return '';
@@ -648,6 +653,7 @@ export function useSudoku(options = {}) {
648
653
  // Utilities
649
654
  getBoardString,
650
655
  getOriginalPuzzle,
656
+ getScrambledPuzzle,
651
657
  getInputString,
652
658
  getPencilmarksString,
653
659
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useSudoku.js","sourceRoot":"","sources":["../../src/hooks/useSudoku.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSudoku.js","sourceRoot":"","sources":["../../src/hooks/useSudoku.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -23,6 +23,7 @@ export type { Product, Subscription } from './types';
23
23
  export { DEFAULT_SUBSCRIPTION } from './types';
24
24
  export type { SavedGameState, GamePersistenceKey } from './types';
25
25
  export { GAME_STORAGE_PREFIX, getGameStorageKey } from './types';
26
+ export type { GameSource, CurrentGameMeta, CurrentGame } from './types';
26
27
  export { BLOCK_SIZE, BOARD_SIZE, cloneBoard, countFilledCells, createGameBoard, getBlockCells, getBlockIndex, getBoardStateString, getColumnCells, getEmptyCells, getPencilmarksString, getRelatedCells, getRowCells, isValidPlacement, parseBoardString, stringifyBoard, TOTAL_CELLS, noScramble, scrambleBoard, autoRemovePencilmarks, clearHighlights, countMistakes, getIncorrectCells, getProgressPercentage, isBoardFilled, isCellCorrect, isGameComplete, isValueCorrect, updateCellErrors, updateCellHighlights, validateGameState, } from './utils';
27
28
  export type { ScramblerProtocol, SudokuScrambleResult } from './utils';
28
29
  export { Scrambler, NonScrambler, scrambleSudokuBoard, parsePuzzleString, cellsToPuzzleString, cellsToStateString, cellsToInputString, cellsToPencilmarksString, } from './utils';
@@ -34,7 +35,9 @@ export type { ThemePreference, ResolvedTheme } from './utils';
34
35
  export { THEME_STORAGE_KEY, getSystemTheme, resolveTheme, isValidThemePreference, } from './utils';
35
36
  export { convertPackageToProduct, parseCustomerInfo, getPeriodDisplayName, isBestValuePlan, getRevenueCatErrorMessage, } from './utils';
36
37
  export { getTechniqueIconUrl, TECHNIQUE_TO_HELP_FILE, HELP_FILE_TO_TECHNIQUE, getHelpFileUrl, getTechniqueFromHelpFile, extractBodyContent, } from './utils';
37
- export { useLevel, useLevels, useTechnique, useTechniques, useLearning, useLearningItem, useGame, useSudoku, useGameTeaching, useLevelGame, useDailyGame, useGameTimer, useGamePersistence, useAutoSave, useLocalStorage, useHint, } from './hooks';
38
- export type { UseLevelOptions, UseLevelResult, UseLevelsOptions, UseLevelsResult, UseTechniqueOptions, UseTechniqueResult, UseTechniquesOptions, UseTechniquesResult, UseLearningItemOptions, UseLearningItemResult, UseLearningOptions, UseLearningResult, UseGameOptions, UseGameResult, UseSudokuOptions, UseSudokuResult, UseGameTeachingOptions, UseGameTeachingResult, UseLevelGameOptions, UseLevelGameResult, UseDailyGameOptions, UseDailyGameResult, GameFetchStatus, UseGameTimerOptions, UseGameTimerResult, UseGamePersistenceOptions, UseGamePersistenceResult, UseHintOptions, UseHintResult, HintBoardData, HintReceivedData, HintAccessError, } from './hooks';
38
+ export { useLevel, useLevels, useTechnique, useTechniques, useLearning, useLearningItem, useGame, useSudoku, useGameTeaching, useLevelGame, useDailyGame, useGameTimer, useGamePersistence, useAutoSave, useLocalStorage, useHint, useGamePlay, } from './hooks';
39
+ export type { UseLevelOptions, UseLevelResult, UseLevelsOptions, UseLevelsResult, UseTechniqueOptions, UseTechniqueResult, UseTechniquesOptions, UseTechniquesResult, UseLearningItemOptions, UseLearningItemResult, UseLearningOptions, UseLearningResult, UseGameOptions, UseGameResult, UseSudokuOptions, UseSudokuResult, UseGameTeachingOptions, UseGameTeachingResult, UseLevelGameOptions, UseLevelGameResult, UseDailyGameOptions, UseDailyGameResult, GameFetchStatus, UseGameTimerOptions, UseGameTimerResult, UseGamePersistenceOptions, UseGamePersistenceResult, UseHintOptions, UseHintResult, HintBoardData, HintReceivedData, HintAccessError, UseGamePlayOptions, UseGamePlayResult, } from './hooks';
40
+ export { useGamePlayStore } from './stores/gamePlayStore';
41
+ export type { GamePlayState } from './stores/gamePlayStore';
39
42
  export type { Board, Challenge, Daily, Learning, Level, Technique, } from '@sudobility/sudojo_types';
40
43
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -58,5 +58,9 @@ useGamePersistence, useAutoSave,
58
58
  // Local storage
59
59
  useLocalStorage,
60
60
  // Hint
61
- useHint, } from './hooks';
61
+ useHint,
62
+ // Game play (current game management)
63
+ useGamePlay, } from './hooks';
64
+ // Stores
65
+ export { useGamePlayStore } from './stores/gamePlayStore';
62
66
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAiBH,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AAczE,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAajB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI7E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIjE,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAI/C,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjE,kCAAkC;AAClC,OAAO;AACL,kBAAkB;AAClB,UAAU,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,WAAW;AACX,qBAAqB;AACrB,UAAU,EACV,aAAa;AACb,uBAAuB;AACvB,qBAAqB,EACrB,eAAe,EACf,aAAa,EACb,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAIjB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,EAClB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,SAAS,CAAC;AAIjB,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AAEjB,iBAAiB;AACjB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEhD,qBAAqB;AACrB,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,SAAS,CAAC;AAIjB,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,sBAAsB,GACvB,MAAM,SAAS,CAAC;AAEjB,yBAAyB;AACzB,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,oBAAoB,EACpB,eAAe,EACf,yBAAyB,GAC1B,MAAM,SAAS,CAAC;AAEjB,sBAAsB;AACtB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AAEjB,QAAQ;AACR,OAAO;AACL,SAAS;AACT,QAAQ,EACR,SAAS;AACT,aAAa;AACb,YAAY,EACZ,aAAa;AACb,WAAW;AACX,WAAW,EACX,eAAe;AACf,gBAAgB;AAChB,OAAO;AACP,kCAAkC;AAClC,SAAS;AACT,WAAW;AACX,eAAe;AACf,kDAAkD;AAClD,YAAY,EACZ,YAAY;AACZ,aAAa;AACb,YAAY;AACZ,mBAAmB;AACnB,kBAAkB,EAClB,WAAW;AACX,gBAAgB;AAChB,eAAe;AACf,OAAO;AACP,OAAO,GACR,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Zustand store for current game state
3
+ *
4
+ * Persists the current game to localStorage so users can resume
5
+ * where they left off.
6
+ */
7
+ import type { CurrentGame, CurrentGameMeta, GameSource } from '../types/currentGame';
8
+ export interface GamePlayState {
9
+ /** Current game (null if none) */
10
+ currentGame: CurrentGame | null;
11
+ /** Start a new game - clears any existing game */
12
+ startGame: (source: GameSource, puzzle: string, solution: string, meta?: CurrentGameMeta) => void;
13
+ /** Update game progress (call periodically during play) */
14
+ updateProgress: (inputString: string, pencilmarksString: string, isPencilMode: boolean, elapsedTime: number) => void;
15
+ /** Clear current game (call on completion) */
16
+ clearGame: () => void;
17
+ }
18
+ export declare const useGamePlayStore: import("zustand").UseBoundStore<Omit<import("zustand").StoreApi<GamePlayState>, "setState" | "persist"> & {
19
+ setState(partial: GamePlayState | Partial<GamePlayState> | ((state: GamePlayState) => GamePlayState | Partial<GamePlayState>), replace?: false | undefined): unknown;
20
+ setState(state: GamePlayState | ((state: GamePlayState) => GamePlayState), replace: true): unknown;
21
+ persist: {
22
+ setOptions: (options: Partial<import("zustand/middleware").PersistOptions<GamePlayState, GamePlayState, unknown>>) => void;
23
+ clearStorage: () => void;
24
+ rehydrate: () => Promise<void> | void;
25
+ hasHydrated: () => boolean;
26
+ onHydrate: (fn: (state: GamePlayState) => void) => () => void;
27
+ onFinishHydration: (fn: (state: GamePlayState) => void) => () => void;
28
+ getOptions: () => Partial<import("zustand/middleware").PersistOptions<GamePlayState, GamePlayState, unknown>>;
29
+ };
30
+ }>;
31
+ //# sourceMappingURL=gamePlayStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gamePlayStore.d.ts","sourceRoot":"","sources":["../../src/stores/gamePlayStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACX,MAAM,sBAAsB,CAAC;AAE9B,MAAM,WAAW,aAAa;IAC5B,kCAAkC;IAClC,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAEhC,kDAAkD;IAClD,SAAS,EAAE,CACT,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,eAAe,KACnB,IAAI,CAAC;IAEV,2DAA2D;IAC3D,cAAc,EAAE,CACd,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,MAAM,EACzB,YAAY,EAAE,OAAO,EACrB,WAAW,EAAE,MAAM,KAChB,IAAI,CAAC;IAEV,8CAA8C;IAC9C,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAkD5B,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Zustand store for current game state
3
+ *
4
+ * Persists the current game to localStorage so users can resume
5
+ * where they left off.
6
+ */
7
+ import { create } from 'zustand';
8
+ import { persist } from 'zustand/middleware';
9
+ export const useGamePlayStore = create()(persist((set, get) => ({
10
+ currentGame: null,
11
+ startGame: (source, puzzle, solution, meta = {}) => {
12
+ const now = new Date().toISOString();
13
+ set({
14
+ currentGame: {
15
+ source,
16
+ puzzle,
17
+ solution,
18
+ meta,
19
+ inputString: '0'.repeat(81),
20
+ pencilmarksString: '',
21
+ isPencilMode: false,
22
+ elapsedTime: 0,
23
+ startedAt: now,
24
+ updatedAt: now,
25
+ },
26
+ });
27
+ },
28
+ updateProgress: (inputString, pencilmarksString, isPencilMode, elapsedTime) => {
29
+ const current = get().currentGame;
30
+ if (!current)
31
+ return;
32
+ set({
33
+ currentGame: {
34
+ ...current,
35
+ inputString,
36
+ pencilmarksString,
37
+ isPencilMode,
38
+ elapsedTime,
39
+ updatedAt: new Date().toISOString(),
40
+ },
41
+ });
42
+ },
43
+ clearGame: () => set({ currentGame: null }),
44
+ }), {
45
+ name: 'sudojo-current-game',
46
+ }));
47
+ //# sourceMappingURL=gamePlayStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gamePlayStore.js","sourceRoot":"","sources":["../../src/stores/gamePlayStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AA+B7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,EAAiB,CACrD,OAAO,CACL,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACb,WAAW,EAAE,IAAI;IAEjB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,EAAE,EAAE,EAAE;QACjD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,GAAG,CAAC;YACF,WAAW,EAAE;gBACX,MAAM;gBACN,MAAM;gBACN,QAAQ;gBACR,IAAI;gBACJ,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,iBAAiB,EAAE,EAAE;gBACrB,YAAY,EAAE,KAAK;gBACnB,WAAW,EAAE,CAAC;gBACd,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,GAAG;aACf;SACF,CAAC,CAAC;IACL,CAAC;IAED,cAAc,EAAE,CACd,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,EAAE;QACF,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC;QAClC,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,GAAG,CAAC;YACF,WAAW,EAAE;gBACX,GAAG,OAAO;gBACV,WAAW;gBACX,iBAAiB;gBACjB,YAAY;gBACZ,WAAW;gBACX,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF,CAAC,CAAC;IACL,CAAC;IAED,SAAS,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;CAC5C,CAAC,EACF;IACE,IAAI,EAAE,qBAAqB;CAC5B,CACF,CACF,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Types for the current game feature
3
+ */
4
+ /** Source of the current game */
5
+ export type GameSource = 'daily' | 'level' | 'entered';
6
+ /** Metadata for navigation back to the game */
7
+ export interface CurrentGameMeta {
8
+ /** For daily games - the date string (YYYY-MM-DD) */
9
+ dailyDate?: string;
10
+ /** For level games - the level UUID */
11
+ levelId?: string;
12
+ /** Level title for display */
13
+ levelTitle?: string;
14
+ }
15
+ /** Current game state stored in Zustand */
16
+ export interface CurrentGame {
17
+ /** Game source type */
18
+ source: GameSource;
19
+ /** Original puzzle string (81 chars) */
20
+ puzzle: string;
21
+ /** Solution string (81 chars) */
22
+ solution: string;
23
+ /** Navigation metadata */
24
+ meta: CurrentGameMeta;
25
+ /** User's current input (81 chars, '0' = empty) */
26
+ inputString: string;
27
+ /** User's pencilmarks (comma-separated format) */
28
+ pencilmarksString: string;
29
+ /** Whether pencil mode was active */
30
+ isPencilMode: boolean;
31
+ /** Elapsed time in seconds */
32
+ elapsedTime: number;
33
+ /** When the game was started (ISO string) */
34
+ startedAt: string;
35
+ /** When last updated (ISO string) */
36
+ updatedAt: string;
37
+ }
38
+ //# sourceMappingURL=currentGame.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currentGame.d.ts","sourceRoot":"","sources":["../../src/types/currentGame.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,iCAAiC;AACjC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;AAEvD,+CAA+C;AAC/C,MAAM,WAAW,eAAe;IAC9B,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,2CAA2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,uBAAuB;IACvB,MAAM,EAAE,UAAU,CAAC;IACnB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,kDAAkD;IAClD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qCAAqC;IACrC,YAAY,EAAE,OAAO,CAAC;IACtB,8BAA8B;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Types for the current game feature
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=currentGame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"currentGame.js","sourceRoot":"","sources":["../../src/types/currentGame.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -15,4 +15,5 @@ export type { Product, Subscription } from './subscription';
15
15
  export { DEFAULT_SUBSCRIPTION } from './subscription';
16
16
  export type { SavedGameState, GamePersistenceKey } from './gamePersistence';
17
17
  export { GAME_STORAGE_PREFIX, getGameStorageKey } from './gamePersistence';
18
+ export type { GameSource, CurrentGameMeta, CurrentGame } from './currentGame';
18
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,GACd,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAGxE,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,QAAQ,IAAI,eAAe,EAC3B,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG/E,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGpE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGpE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,cAAc,EACd,cAAc,EACd,aAAa,GACd,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAGxE,YAAY,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,OAAO,EACP,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,eAAe,EACf,QAAQ,IAAI,eAAe,EAC3B,gBAAgB,EAChB,sBAAsB,EACtB,cAAc,GACf,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG/E,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGpE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGpE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAGtD,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3E,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/sudojo_lib",
3
- "version": "0.0.37",
3
+ "version": "0.0.38",
4
4
  "description": "Business logic library for Sudojo app",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -68,7 +68,8 @@
68
68
  "react-dom": "^19.2.3",
69
69
  "typescript": "^5.9.3",
70
70
  "vite": "^7.1.9",
71
- "vitest": "^4.0.4"
71
+ "vitest": "^4.0.4",
72
+ "zustand": "^5.0.9"
72
73
  },
73
74
  "peerDependencies": {
74
75
  "@sudobility/di": "^1.5.25",
@@ -76,7 +77,8 @@
76
77
  "@sudobility/sudojo_types": "^1.2.5",
77
78
  "@sudobility/types": "^1.9.48",
78
79
  "@tanstack/react-query": ">=5.0.0",
79
- "react": ">=18.0.0"
80
+ "react": ">=18.0.0",
81
+ "zustand": ">=5.0.0"
80
82
  },
81
83
  "engines": {
82
84
  "node": ">=18.0.0"