@sudobility/sudojo_types 1.2.18 → 1.2.20

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.
package/dist/index.js CHANGED
@@ -558,4 +558,438 @@ export function noScramble(puzzle, solution) {
558
558
  reverseDigitMapping: identityMapping,
559
559
  };
560
560
  }
561
+ // =============================================================================
562
+ // Solver Utilities (shared between frontend and backend)
563
+ // =============================================================================
564
+ /**
565
+ * Check if all cells are filled (no empty cells remaining).
566
+ * A cell is considered filled if either the original puzzle has a digit
567
+ * or the user has entered a digit.
568
+ *
569
+ * @param original - 81-char original puzzle string (0 = empty)
570
+ * @param user - 81-char user input string (0 = no input)
571
+ * @returns true if all 81 cells have a non-zero digit
572
+ *
573
+ * @example
574
+ * ```typescript
575
+ * const original = '530070000...'; // partial puzzle
576
+ * const user = '000000000...'; // no user input yet
577
+ * isBoardFilled(original, user); // false
578
+ * ```
579
+ */
580
+ export function isBoardFilled(original, user) {
581
+ for (let i = 0; i < TOTAL_CELLS; i++) {
582
+ const originalChar = original[i] || '0';
583
+ const userChar = user[i] || '0';
584
+ const actualChar = userChar !== '0' ? userChar : originalChar;
585
+ if (actualChar === '0')
586
+ return false;
587
+ }
588
+ return true;
589
+ }
590
+ /**
591
+ * Check if all cells are filled AND match the solution.
592
+ * Useful for validating that a puzzle is correctly solved.
593
+ *
594
+ * @param original - 81-char original puzzle string (0 = empty)
595
+ * @param user - 81-char user input string (0 = no input)
596
+ * @param solution - 81-char solution string
597
+ * @returns true if board is filled and all values match solution
598
+ *
599
+ * @example
600
+ * ```typescript
601
+ * isBoardSolved(original, userInput, solution); // true if correctly solved
602
+ * ```
603
+ */
604
+ export function isBoardSolved(original, user, solution) {
605
+ for (let i = 0; i < TOTAL_CELLS; i++) {
606
+ const originalChar = original[i] || '0';
607
+ const userChar = user[i] || '0';
608
+ const solutionChar = solution[i] || '0';
609
+ const actualChar = userChar !== '0' ? userChar : originalChar;
610
+ if (actualChar === '0')
611
+ return false;
612
+ if (actualChar !== solutionChar)
613
+ return false;
614
+ }
615
+ return true;
616
+ }
617
+ /**
618
+ * Get the current board state by merging original puzzle and user input.
619
+ * For each cell, returns the user's input if non-zero, otherwise the original value.
620
+ *
621
+ * @param original - 81-char original puzzle string (0 = empty)
622
+ * @param user - 81-char user input string (0 = no input)
623
+ * @returns 81-char string representing current board state
624
+ *
625
+ * @example
626
+ * ```typescript
627
+ * const original = '530070000...';
628
+ * const user = '006000000...';
629
+ * getMergedBoardState(original, user); // '536070000...'
630
+ * ```
631
+ */
632
+ export function getMergedBoardState(original, user) {
633
+ let result = '';
634
+ for (let i = 0; i < TOTAL_CELLS; i++) {
635
+ const originalChar = original[i] || '0';
636
+ const userChar = user[i] || '0';
637
+ result += userChar !== '0' ? userChar : originalChar;
638
+ }
639
+ return result;
640
+ }
641
+ /**
642
+ * Check for "Invalid Pencilmarks" error in hint steps.
643
+ * This indicates the solver detected inconsistent pencilmarks.
644
+ *
645
+ * @param steps - Array of hint steps from solver response
646
+ * @returns true if any step has title "Invalid Pencilmarks"
647
+ *
648
+ * @example
649
+ * ```typescript
650
+ * if (hasInvalidPencilmarksStep(response.data.hints.steps)) {
651
+ * throw new Error('Invalid pencilmarks detected');
652
+ * }
653
+ * ```
654
+ */
655
+ export function hasInvalidPencilmarksStep(steps) {
656
+ if (!steps)
657
+ return false;
658
+ return steps.some(step => step.title === 'Invalid Pencilmarks');
659
+ }
660
+ /**
661
+ * Check if pencilmarks string has actual content (not just empty commas).
662
+ * Pencilmarks are stored as comma-separated values like "123,45,9,,...".
663
+ * An "empty" pencilmarks string would be all commas: ",,,,,...".
664
+ *
665
+ * @param pencilmarks - Comma-separated pencilmarks string
666
+ * @returns true if there are actual pencilmark values
667
+ *
668
+ * @example
669
+ * ```typescript
670
+ * hasPencilmarkContent('123,45,,9,'); // true
671
+ * hasPencilmarkContent(',,,,,,,,'); // false
672
+ * hasPencilmarkContent(''); // false
673
+ * ```
674
+ */
675
+ export function hasPencilmarkContent(pencilmarks) {
676
+ return pencilmarks.replace(/,/g, '').length > 0;
677
+ }
678
+ // Reverse lookup map from TechniqueId to title (computed once)
679
+ const TECHNIQUE_ID_TO_TITLE = Object.fromEntries(Object.entries(TECHNIQUE_TITLE_TO_ID).map(([title, id]) => [id, title]));
680
+ /**
681
+ * Get the technique title/name from its ID.
682
+ * Inverse of TECHNIQUE_TITLE_TO_ID lookup.
683
+ *
684
+ * @param techniqueId - The technique ID number
685
+ * @returns The technique title, or "Technique {id}" if unknown
686
+ *
687
+ * @example
688
+ * ```typescript
689
+ * getTechniqueNameById(1); // "Full House"
690
+ * getTechniqueNameById(14); // "XY-Wing"
691
+ * getTechniqueNameById(999); // "Technique 999"
692
+ * ```
693
+ */
694
+ export function getTechniqueNameById(techniqueId) {
695
+ return TECHNIQUE_ID_TO_TITLE[techniqueId] ?? `Technique ${techniqueId}`;
696
+ }
697
+ // =============================================================================
698
+ // Board State Constants
699
+ // =============================================================================
700
+ /**
701
+ * Empty board string (81 zeros) representing no user input.
702
+ * Used as default value for user input in solver APIs.
703
+ */
704
+ export const EMPTY_BOARD = '0'.repeat(81);
705
+ /**
706
+ * Empty pencilmarks string (80 commas = 81 empty elements).
707
+ * Used as default value for pencilmarks in solver APIs.
708
+ */
709
+ export const EMPTY_PENCILMARKS = ','.repeat(80);
710
+ // =============================================================================
711
+ // Cell Notation Utilities
712
+ // =============================================================================
713
+ /**
714
+ * Format a cell position in R1C1 notation (1-indexed for human readability).
715
+ *
716
+ * @param row - Row index (0-8)
717
+ * @param col - Column index (0-8)
718
+ * @returns String like "R1C1" for top-left, "R9C9" for bottom-right
719
+ *
720
+ * @example
721
+ * ```typescript
722
+ * cellName(0, 0); // "R1C1"
723
+ * cellName(4, 4); // "R5C5"
724
+ * cellName(8, 8); // "R9C9"
725
+ * ```
726
+ */
727
+ export function cellName(row, col) {
728
+ return `R${row + 1}C${col + 1}`;
729
+ }
730
+ /**
731
+ * Format multiple cell positions as a comma-separated list in R1C1 notation.
732
+ *
733
+ * @param cells - Array of [row, col] pairs
734
+ * @returns String like "R1C1, R2C3, R5C5"
735
+ *
736
+ * @example
737
+ * ```typescript
738
+ * cellList([[0, 0], [1, 2], [4, 4]]); // "R1C1, R2C3, R5C5"
739
+ * ```
740
+ */
741
+ export function cellList(cells) {
742
+ return cells.map(([row, col]) => cellName(row ?? 0, col ?? 0)).join(', ');
743
+ }
744
+ /**
745
+ * Get the block index (0-8) for a given cell position.
746
+ * Blocks are numbered left-to-right, top-to-bottom:
747
+ * ```
748
+ * 0 1 2
749
+ * 3 4 5
750
+ * 6 7 8
751
+ * ```
752
+ *
753
+ * @param row - Row index (0-8)
754
+ * @param col - Column index (0-8)
755
+ * @returns Block index (0-8)
756
+ *
757
+ * @example
758
+ * ```typescript
759
+ * getBlockIndex(0, 0); // 0 (top-left block)
760
+ * getBlockIndex(4, 4); // 4 (center block)
761
+ * getBlockIndex(8, 8); // 8 (bottom-right block)
762
+ * ```
763
+ */
764
+ export function getBlockIndex(row, col) {
765
+ return Math.floor(row / BLOCK_SIZE) * BLOCK_SIZE + Math.floor(col / BLOCK_SIZE);
766
+ }
767
+ /**
768
+ * Get the block number (1-9) for a given cell position.
769
+ * Same as getBlockIndex but 1-indexed for human readability.
770
+ *
771
+ * @param row - Row index (0-8)
772
+ * @param col - Column index (0-8)
773
+ * @returns Block number (1-9)
774
+ */
775
+ export function getBlockNumber(row, col) {
776
+ return getBlockIndex(row, col) + 1;
777
+ }
778
+ /**
779
+ * Convert a flat cell index (0-80) to row and column.
780
+ *
781
+ * @param index - Flat index (0-80)
782
+ * @returns [row, col] tuple (both 0-8)
783
+ *
784
+ * @example
785
+ * ```typescript
786
+ * indexToRowCol(0); // [0, 0]
787
+ * indexToRowCol(40); // [4, 4]
788
+ * indexToRowCol(80); // [8, 8]
789
+ * ```
790
+ */
791
+ export function indexToRowCol(index) {
792
+ return [Math.floor(index / BOARD_SIZE), index % BOARD_SIZE];
793
+ }
794
+ /**
795
+ * Convert row and column to a flat cell index (0-80).
796
+ *
797
+ * @param row - Row index (0-8)
798
+ * @param col - Column index (0-8)
799
+ * @returns Flat index (0-80)
800
+ *
801
+ * @example
802
+ * ```typescript
803
+ * rowColToIndex(0, 0); // 0
804
+ * rowColToIndex(4, 4); // 40
805
+ * rowColToIndex(8, 8); // 80
806
+ * ```
807
+ */
808
+ export function rowColToIndex(row, col) {
809
+ return row * BOARD_SIZE + col;
810
+ }
811
+ // =============================================================================
812
+ // Time Formatting Utilities
813
+ // =============================================================================
814
+ /**
815
+ * Format seconds as MM:SS or HH:MM:SS.
816
+ *
817
+ * @param seconds - Total seconds to format
818
+ * @returns Formatted time string
819
+ *
820
+ * @example
821
+ * ```typescript
822
+ * formatTime(65); // "01:05"
823
+ * formatTime(3661); // "01:01:01"
824
+ * formatTime(0); // "00:00"
825
+ * ```
826
+ */
827
+ export function formatTime(seconds) {
828
+ const hours = Math.floor(seconds / 3600);
829
+ const minutes = Math.floor((seconds % 3600) / 60);
830
+ const secs = seconds % 60;
831
+ if (hours > 0) {
832
+ return `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;
833
+ }
834
+ return `${minutes.toString().padStart(2, '0')}:${secs.toString().padStart(2, '0')}`;
835
+ }
836
+ /**
837
+ * Parse MM:SS or HH:MM:SS time string to seconds.
838
+ *
839
+ * @param timeString - Time string in MM:SS or HH:MM:SS format
840
+ * @returns Total seconds, or 0 if invalid format
841
+ *
842
+ * @example
843
+ * ```typescript
844
+ * parseTime("01:05"); // 65
845
+ * parseTime("01:01:01"); // 3661
846
+ * parseTime("invalid"); // 0
847
+ * ```
848
+ */
849
+ export function parseTime(timeString) {
850
+ const parts = timeString.split(':').map(p => parseInt(p, 10));
851
+ if (parts.some(isNaN))
852
+ return 0;
853
+ if (parts.length === 2) {
854
+ return (parts[0] ?? 0) * 60 + (parts[1] ?? 0);
855
+ }
856
+ else if (parts.length === 3) {
857
+ return (parts[0] ?? 0) * 3600 + (parts[1] ?? 0) * 60 + (parts[2] ?? 0);
858
+ }
859
+ return 0;
860
+ }
861
+ /**
862
+ * Format a set of digits like {1, 2, 3} for display.
863
+ *
864
+ * @param digits - String or array of digits
865
+ * @returns Formatted string like "{1, 2, 3}"
866
+ *
867
+ * @example
868
+ * ```typescript
869
+ * formatDigits("123"); // "{1, 2, 3}"
870
+ * formatDigits([1, 2, 3]); // "{1, 2, 3}"
871
+ * ```
872
+ */
873
+ export function formatDigits(digits) {
874
+ const arr = typeof digits === 'string' ? digits.split('') : digits.map(String);
875
+ return `{${arr.join(', ')}}`;
876
+ }
877
+ // =============================================================================
878
+ // UUID Validation Utilities
879
+ // =============================================================================
880
+ /** UUID regex pattern (lowercase or uppercase) */
881
+ const UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
882
+ /**
883
+ * Check if a string is a valid UUID format.
884
+ *
885
+ * @param id - String to validate
886
+ * @returns true if valid UUID format
887
+ *
888
+ * @example
889
+ * ```typescript
890
+ * isValidUUID('123e4567-e89b-12d3-a456-426614174000'); // true
891
+ * isValidUUID('not-a-uuid'); // false
892
+ * ```
893
+ */
894
+ export function isValidUUID(id) {
895
+ return UUID_PATTERN.test(id);
896
+ }
897
+ /**
898
+ * Validate a UUID and throw if invalid.
899
+ *
900
+ * @param uuid - UUID string to validate
901
+ * @param name - Optional name for error message (e.g., "Board UUID")
902
+ * @returns The validated UUID string
903
+ * @throws Error if UUID is missing or invalid format
904
+ *
905
+ * @example
906
+ * ```typescript
907
+ * const id = validateUUID(params.id, 'Board UUID'); // throws if invalid
908
+ * ```
909
+ */
910
+ export function validateUUID(uuid, name = 'UUID') {
911
+ if (!uuid) {
912
+ throw new Error(`${name} is required`);
913
+ }
914
+ if (!isValidUUID(uuid)) {
915
+ throw new Error(`Invalid ${name} format: "${uuid}". Expected UUID format (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)`);
916
+ }
917
+ return uuid;
918
+ }
919
+ // =============================================================================
920
+ // Technique URL Utilities
921
+ // =============================================================================
922
+ /**
923
+ * Convert technique title to icon filename/URL path.
924
+ *
925
+ * @param title - Technique title (e.g., "Full House", "X-Wing")
926
+ * @returns Icon URL path (e.g., "/technique.full.house.svg")
927
+ *
928
+ * @example
929
+ * ```typescript
930
+ * getTechniqueIconUrl("Full House"); // "/technique.full.house.svg"
931
+ * getTechniqueIconUrl("X-Wing"); // "/technique.x.wing.svg"
932
+ * getTechniqueIconUrl("XY-Wing"); // "/technique.xy.wing.svg"
933
+ * ```
934
+ */
935
+ export function getTechniqueIconUrl(title) {
936
+ const normalized = title
937
+ .toLowerCase()
938
+ .replace(/\s+/g, '.') // spaces to dots
939
+ .replace(/-/g, '.'); // hyphens to dots
940
+ return `/technique.${normalized}.svg`;
941
+ }
942
+ /** Map technique titles to HTML help file paths */
943
+ export const TECHNIQUE_TO_HELP_FILE = {
944
+ 'Full House': 'Full_House.html',
945
+ 'Naked Single': 'Naked_Single.html',
946
+ 'Hidden Single': 'Hidden_Single.html',
947
+ 'Naked Pair': 'Naked_Pair.html',
948
+ 'Hidden Pair': 'Hidden_Pair.html',
949
+ 'Locked Candidates': 'Locked_Candidates.html',
950
+ 'Naked Triple': 'Naked_Triple.html',
951
+ 'Hidden Triple': 'Hidden_Triple.html',
952
+ 'Naked Quad': 'Naked_Quad.html',
953
+ 'Hidden Quad': 'Hidden_Quad.html',
954
+ 'X-Wing': 'X-Wing.html',
955
+ 'Swordfish': 'Swordfish.html',
956
+ 'Jellyfish': 'Jellyfish.html',
957
+ 'Squirmbag': 'Squirmbag.html',
958
+ 'XY-Wing': 'XY-Wing.html',
959
+ 'XYZ-Wing': 'XYZ-Wing.html',
960
+ 'WXYZ-Wing': 'WXYZ-Wing.html',
961
+ 'Finned X-Wing': 'Finned_X-Wing.html',
962
+ 'Finned Swordfish': 'Finned_Swordfish.html',
963
+ 'Finned Jellyfish': 'Finned_Jellyfish.html',
964
+ 'Finned Squirmbag': 'Finned_Squirmbag.html',
965
+ 'Almost Locked Sets': 'Almost_Locked_Sets.html',
966
+ 'ALS Chain': 'ALS-Chain.html',
967
+ 'ALS-Chain': 'ALS-Chain.html',
968
+ };
969
+ /** Reverse mapping: HTML file name (lowercase) -> technique title */
970
+ export const HELP_FILE_TO_TECHNIQUE = Object.fromEntries(Object.entries(TECHNIQUE_TO_HELP_FILE).map(([title, file]) => [file.toLowerCase(), title]));
971
+ /**
972
+ * Get help file URL for a technique.
973
+ *
974
+ * @param techniqueTitle - Technique title
975
+ * @returns Help file URL path (e.g., "/help/Full_House.html")
976
+ */
977
+ export function getHelpFileUrl(techniqueTitle) {
978
+ const fileName = TECHNIQUE_TO_HELP_FILE[techniqueTitle];
979
+ if (fileName) {
980
+ return `/help/${fileName}`;
981
+ }
982
+ // Generate filename from title (spaces to underscores, preserve hyphens)
983
+ const generatedFileName = `${techniqueTitle.replace(/\s+/g, '_')}.html`;
984
+ return `/help/${generatedFileName}`;
985
+ }
986
+ /**
987
+ * Get technique title from help file name.
988
+ *
989
+ * @param fileName - Help file name (e.g., "Full_House.html")
990
+ * @returns Technique title or undefined if not found
991
+ */
992
+ export function getTechniqueFromHelpFile(fileName) {
993
+ return HELP_FILE_TO_TECHNIQUE[fileName.toLowerCase()];
994
+ }
561
995
  //# 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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/sudojo_types",
3
- "version": "1.2.18",
3
+ "version": "1.2.20",
4
4
  "description": "TypeScript types for Sudojo API - Sudoku learning platform",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",