@sudobility/sudojo_types 1.1.7 → 1.1.9

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.cjs CHANGED
@@ -4,8 +4,12 @@
4
4
  * TypeScript types for Sudojo API - Sudoku learning platform
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.TECHNIQUE_TITLE_TO_ID = exports.TechniqueId = void 0;
7
8
  exports.successResponse = successResponse;
8
9
  exports.errorResponse = errorResponse;
10
+ exports.techniqueToBit = techniqueToBit;
11
+ exports.hasTechnique = hasTechnique;
12
+ exports.addTechnique = addTechnique;
9
13
  /** Create a success response */
10
14
  function successResponse(data) {
11
15
  return {
@@ -22,4 +26,75 @@ function errorResponse(error) {
22
26
  timestamp: new Date().toISOString(),
23
27
  };
24
28
  }
29
+ // =============================================================================
30
+ // Technique Bitfield (matches SudokuDefines.h enum SudokuTechnique)
31
+ // =============================================================================
32
+ /**
33
+ * Technique IDs matching the solver engine's SudokuTechnique enum.
34
+ * Used as bitfield values in boards.techniques and technique_examples.techniques_bitfield.
35
+ */
36
+ var TechniqueId;
37
+ (function (TechniqueId) {
38
+ TechniqueId[TechniqueId["FULL_HOUSE"] = 1] = "FULL_HOUSE";
39
+ TechniqueId[TechniqueId["HIDDEN_SINGLE"] = 2] = "HIDDEN_SINGLE";
40
+ TechniqueId[TechniqueId["NAKED_SINGLE"] = 3] = "NAKED_SINGLE";
41
+ TechniqueId[TechniqueId["HIDDEN_PAIR"] = 4] = "HIDDEN_PAIR";
42
+ TechniqueId[TechniqueId["NAKED_PAIR"] = 5] = "NAKED_PAIR";
43
+ TechniqueId[TechniqueId["LOCKED_CANDIDATES"] = 6] = "LOCKED_CANDIDATES";
44
+ TechniqueId[TechniqueId["HIDDEN_TRIPLE"] = 7] = "HIDDEN_TRIPLE";
45
+ TechniqueId[TechniqueId["NAKED_TRIPLE"] = 8] = "NAKED_TRIPLE";
46
+ TechniqueId[TechniqueId["HIDDEN_QUAD"] = 9] = "HIDDEN_QUAD";
47
+ TechniqueId[TechniqueId["NAKED_QUAD"] = 10] = "NAKED_QUAD";
48
+ TechniqueId[TechniqueId["X_WING"] = 11] = "X_WING";
49
+ TechniqueId[TechniqueId["SWORDFISH"] = 12] = "SWORDFISH";
50
+ TechniqueId[TechniqueId["JELLYFISH"] = 13] = "JELLYFISH";
51
+ TechniqueId[TechniqueId["XY_WING"] = 14] = "XY_WING";
52
+ TechniqueId[TechniqueId["FINNED_X_WING"] = 15] = "FINNED_X_WING";
53
+ TechniqueId[TechniqueId["SQUIRMBAG"] = 16] = "SQUIRMBAG";
54
+ TechniqueId[TechniqueId["FINNED_SWORDFISH"] = 17] = "FINNED_SWORDFISH";
55
+ TechniqueId[TechniqueId["FINNED_JELLYFISH"] = 18] = "FINNED_JELLYFISH";
56
+ TechniqueId[TechniqueId["XYZ_WING"] = 19] = "XYZ_WING";
57
+ TechniqueId[TechniqueId["WXYZ_WING"] = 20] = "WXYZ_WING";
58
+ TechniqueId[TechniqueId["ALMOST_LOCKED_SETS"] = 21] = "ALMOST_LOCKED_SETS";
59
+ TechniqueId[TechniqueId["FINNED_SQUIRMBAG"] = 22] = "FINNED_SQUIRMBAG";
60
+ TechniqueId[TechniqueId["ALS_CHAIN"] = 23] = "ALS_CHAIN";
61
+ })(TechniqueId || (exports.TechniqueId = TechniqueId = {}));
62
+ /** Map technique title strings (from solver API hints.steps[].title) to TechniqueId */
63
+ exports.TECHNIQUE_TITLE_TO_ID = {
64
+ 'Full House': TechniqueId.FULL_HOUSE,
65
+ 'Hidden Single': TechniqueId.HIDDEN_SINGLE,
66
+ 'Naked Single': TechniqueId.NAKED_SINGLE,
67
+ 'Hidden Pair': TechniqueId.HIDDEN_PAIR,
68
+ 'Naked Pair': TechniqueId.NAKED_PAIR,
69
+ 'Locked Candidates': TechniqueId.LOCKED_CANDIDATES,
70
+ 'Hidden Triple': TechniqueId.HIDDEN_TRIPLE,
71
+ 'Naked Triple': TechniqueId.NAKED_TRIPLE,
72
+ 'Hidden Quad': TechniqueId.HIDDEN_QUAD,
73
+ 'Naked Quad': TechniqueId.NAKED_QUAD,
74
+ 'X-Wing': TechniqueId.X_WING,
75
+ 'Swordfish': TechniqueId.SWORDFISH,
76
+ 'Jellyfish': TechniqueId.JELLYFISH,
77
+ 'XY-Wing': TechniqueId.XY_WING,
78
+ 'Finned X-Wing': TechniqueId.FINNED_X_WING,
79
+ 'Squirmbag': TechniqueId.SQUIRMBAG,
80
+ 'Finned Swordfish': TechniqueId.FINNED_SWORDFISH,
81
+ 'Finned Jellyfish': TechniqueId.FINNED_JELLYFISH,
82
+ 'XYZ-Wing': TechniqueId.XYZ_WING,
83
+ 'WXYZ-Wing': TechniqueId.WXYZ_WING,
84
+ 'Almost Locked Sets': TechniqueId.ALMOST_LOCKED_SETS,
85
+ 'Finned Squirmbag': TechniqueId.FINNED_SQUIRMBAG,
86
+ 'ALS-Chain': TechniqueId.ALS_CHAIN,
87
+ };
88
+ /** Convert a TechniqueId to its bit position in the bitfield */
89
+ function techniqueToBit(techniqueId) {
90
+ return 1 << (techniqueId - 1);
91
+ }
92
+ /** Check if a technique is present in a bitfield */
93
+ function hasTechnique(bitfield, techniqueId) {
94
+ return (bitfield & techniqueToBit(techniqueId)) !== 0;
95
+ }
96
+ /** Add a technique to a bitfield */
97
+ function addTechnique(bitfield, techniqueId) {
98
+ return bitfield | techniqueToBit(techniqueId);
99
+ }
25
100
  //# sourceMappingURL=index.js.map
package/dist/index.d.ts CHANGED
@@ -290,4 +290,77 @@ export interface GenerateData {
290
290
  /** Always null for generate */
291
291
  hints: null;
292
292
  }
293
+ /**
294
+ * Technique IDs matching the solver engine's SudokuTechnique enum.
295
+ * Used as bitfield values in boards.techniques and technique_examples.techniques_bitfield.
296
+ */
297
+ export declare enum TechniqueId {
298
+ FULL_HOUSE = 1,
299
+ HIDDEN_SINGLE = 2,
300
+ NAKED_SINGLE = 3,
301
+ HIDDEN_PAIR = 4,
302
+ NAKED_PAIR = 5,
303
+ LOCKED_CANDIDATES = 6,
304
+ HIDDEN_TRIPLE = 7,
305
+ NAKED_TRIPLE = 8,
306
+ HIDDEN_QUAD = 9,
307
+ NAKED_QUAD = 10,
308
+ X_WING = 11,
309
+ SWORDFISH = 12,
310
+ JELLYFISH = 13,
311
+ XY_WING = 14,
312
+ FINNED_X_WING = 15,
313
+ SQUIRMBAG = 16,
314
+ FINNED_SWORDFISH = 17,
315
+ FINNED_JELLYFISH = 18,
316
+ XYZ_WING = 19,
317
+ WXYZ_WING = 20,
318
+ ALMOST_LOCKED_SETS = 21,
319
+ FINNED_SQUIRMBAG = 22,
320
+ ALS_CHAIN = 23
321
+ }
322
+ /** Map technique title strings (from solver API hints.steps[].title) to TechniqueId */
323
+ export declare const TECHNIQUE_TITLE_TO_ID: Record<string, TechniqueId>;
324
+ /** Convert a TechniqueId to its bit position in the bitfield */
325
+ export declare function techniqueToBit(techniqueId: TechniqueId): number;
326
+ /** Check if a technique is present in a bitfield */
327
+ export declare function hasTechnique(bitfield: number, techniqueId: TechniqueId): boolean;
328
+ /** Add a technique to a bitfield */
329
+ export declare function addTechnique(bitfield: number, techniqueId: TechniqueId): number;
330
+ export interface TechniqueExample {
331
+ uuid: string;
332
+ /** Board state (81-char string, current position) */
333
+ board: string;
334
+ /** Pencilmarks at this state (comma-delimited) */
335
+ pencilmarks: string | null;
336
+ /** Solution for reference */
337
+ solution: string;
338
+ /** Bitfield of all techniques applicable at this board state */
339
+ techniques_bitfield: number;
340
+ /** Primary technique (the one solver would use first) */
341
+ primary_technique: number;
342
+ /** Hint data as JSON string */
343
+ hint_data: string | null;
344
+ /** Source board UUID for reference */
345
+ source_board_uuid: string | null;
346
+ created_at: Date | null;
347
+ }
348
+ export interface TechniqueExampleCreateRequest {
349
+ board: string;
350
+ pencilmarks: Optional<string>;
351
+ solution: string;
352
+ techniques_bitfield: number;
353
+ primary_technique: number;
354
+ hint_data: Optional<string>;
355
+ source_board_uuid: Optional<string | null>;
356
+ }
357
+ export interface TechniqueExampleUpdateRequest {
358
+ board: Optional<string>;
359
+ pencilmarks: Optional<string>;
360
+ solution: Optional<string>;
361
+ techniques_bitfield: Optional<number>;
362
+ primary_technique: Optional<number>;
363
+ hint_data: Optional<string>;
364
+ source_board_uuid: Optional<string | null>;
365
+ }
293
366
  //# 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
@@ -4,8 +4,12 @@
4
4
  * TypeScript types for Sudojo API - Sudoku learning platform
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.TECHNIQUE_TITLE_TO_ID = exports.TechniqueId = void 0;
7
8
  exports.successResponse = successResponse;
8
9
  exports.errorResponse = errorResponse;
10
+ exports.techniqueToBit = techniqueToBit;
11
+ exports.hasTechnique = hasTechnique;
12
+ exports.addTechnique = addTechnique;
9
13
  /** Create a success response */
10
14
  function successResponse(data) {
11
15
  return {
@@ -22,4 +26,75 @@ function errorResponse(error) {
22
26
  timestamp: new Date().toISOString(),
23
27
  };
24
28
  }
29
+ // =============================================================================
30
+ // Technique Bitfield (matches SudokuDefines.h enum SudokuTechnique)
31
+ // =============================================================================
32
+ /**
33
+ * Technique IDs matching the solver engine's SudokuTechnique enum.
34
+ * Used as bitfield values in boards.techniques and technique_examples.techniques_bitfield.
35
+ */
36
+ var TechniqueId;
37
+ (function (TechniqueId) {
38
+ TechniqueId[TechniqueId["FULL_HOUSE"] = 1] = "FULL_HOUSE";
39
+ TechniqueId[TechniqueId["HIDDEN_SINGLE"] = 2] = "HIDDEN_SINGLE";
40
+ TechniqueId[TechniqueId["NAKED_SINGLE"] = 3] = "NAKED_SINGLE";
41
+ TechniqueId[TechniqueId["HIDDEN_PAIR"] = 4] = "HIDDEN_PAIR";
42
+ TechniqueId[TechniqueId["NAKED_PAIR"] = 5] = "NAKED_PAIR";
43
+ TechniqueId[TechniqueId["LOCKED_CANDIDATES"] = 6] = "LOCKED_CANDIDATES";
44
+ TechniqueId[TechniqueId["HIDDEN_TRIPLE"] = 7] = "HIDDEN_TRIPLE";
45
+ TechniqueId[TechniqueId["NAKED_TRIPLE"] = 8] = "NAKED_TRIPLE";
46
+ TechniqueId[TechniqueId["HIDDEN_QUAD"] = 9] = "HIDDEN_QUAD";
47
+ TechniqueId[TechniqueId["NAKED_QUAD"] = 10] = "NAKED_QUAD";
48
+ TechniqueId[TechniqueId["X_WING"] = 11] = "X_WING";
49
+ TechniqueId[TechniqueId["SWORDFISH"] = 12] = "SWORDFISH";
50
+ TechniqueId[TechniqueId["JELLYFISH"] = 13] = "JELLYFISH";
51
+ TechniqueId[TechniqueId["XY_WING"] = 14] = "XY_WING";
52
+ TechniqueId[TechniqueId["FINNED_X_WING"] = 15] = "FINNED_X_WING";
53
+ TechniqueId[TechniqueId["SQUIRMBAG"] = 16] = "SQUIRMBAG";
54
+ TechniqueId[TechniqueId["FINNED_SWORDFISH"] = 17] = "FINNED_SWORDFISH";
55
+ TechniqueId[TechniqueId["FINNED_JELLYFISH"] = 18] = "FINNED_JELLYFISH";
56
+ TechniqueId[TechniqueId["XYZ_WING"] = 19] = "XYZ_WING";
57
+ TechniqueId[TechniqueId["WXYZ_WING"] = 20] = "WXYZ_WING";
58
+ TechniqueId[TechniqueId["ALMOST_LOCKED_SETS"] = 21] = "ALMOST_LOCKED_SETS";
59
+ TechniqueId[TechniqueId["FINNED_SQUIRMBAG"] = 22] = "FINNED_SQUIRMBAG";
60
+ TechniqueId[TechniqueId["ALS_CHAIN"] = 23] = "ALS_CHAIN";
61
+ })(TechniqueId || (exports.TechniqueId = TechniqueId = {}));
62
+ /** Map technique title strings (from solver API hints.steps[].title) to TechniqueId */
63
+ exports.TECHNIQUE_TITLE_TO_ID = {
64
+ 'Full House': TechniqueId.FULL_HOUSE,
65
+ 'Hidden Single': TechniqueId.HIDDEN_SINGLE,
66
+ 'Naked Single': TechniqueId.NAKED_SINGLE,
67
+ 'Hidden Pair': TechniqueId.HIDDEN_PAIR,
68
+ 'Naked Pair': TechniqueId.NAKED_PAIR,
69
+ 'Locked Candidates': TechniqueId.LOCKED_CANDIDATES,
70
+ 'Hidden Triple': TechniqueId.HIDDEN_TRIPLE,
71
+ 'Naked Triple': TechniqueId.NAKED_TRIPLE,
72
+ 'Hidden Quad': TechniqueId.HIDDEN_QUAD,
73
+ 'Naked Quad': TechniqueId.NAKED_QUAD,
74
+ 'X-Wing': TechniqueId.X_WING,
75
+ 'Swordfish': TechniqueId.SWORDFISH,
76
+ 'Jellyfish': TechniqueId.JELLYFISH,
77
+ 'XY-Wing': TechniqueId.XY_WING,
78
+ 'Finned X-Wing': TechniqueId.FINNED_X_WING,
79
+ 'Squirmbag': TechniqueId.SQUIRMBAG,
80
+ 'Finned Swordfish': TechniqueId.FINNED_SWORDFISH,
81
+ 'Finned Jellyfish': TechniqueId.FINNED_JELLYFISH,
82
+ 'XYZ-Wing': TechniqueId.XYZ_WING,
83
+ 'WXYZ-Wing': TechniqueId.WXYZ_WING,
84
+ 'Almost Locked Sets': TechniqueId.ALMOST_LOCKED_SETS,
85
+ 'Finned Squirmbag': TechniqueId.FINNED_SQUIRMBAG,
86
+ 'ALS-Chain': TechniqueId.ALS_CHAIN,
87
+ };
88
+ /** Convert a TechniqueId to its bit position in the bitfield */
89
+ function techniqueToBit(techniqueId) {
90
+ return 1 << (techniqueId - 1);
91
+ }
92
+ /** Check if a technique is present in a bitfield */
93
+ function hasTechnique(bitfield, techniqueId) {
94
+ return (bitfield & techniqueToBit(techniqueId)) !== 0;
95
+ }
96
+ /** Add a technique to a bitfield */
97
+ function addTechnique(bitfield, techniqueId) {
98
+ return bitfield | techniqueToBit(techniqueId);
99
+ }
25
100
  //# 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;;;GAGG;;AAwNH,0CAMC;AAGD,sCAMC;AAhBD,gCAAgC;AAChC,SAAgB,eAAe,CAAI,IAAO;IACxC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,+BAA+B;AAC/B,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,KAAK;QACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAwNH,0CAMC;AAGD,sCAMC;AAoOD,wCAEC;AAGD,oCAEC;AAGD,oCAEC;AAhQD,gCAAgC;AAChC,SAAgB,eAAe,CAAI,IAAO;IACxC,OAAO;QACL,OAAO,EAAE,IAAI;QACb,IAAI;QACJ,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,+BAA+B;AAC/B,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,KAAK;QACL,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC;AAsKD,gFAAgF;AAChF,oEAAoE;AACpE,gFAAgF;AAEhF;;;GAGG;AACH,IAAY,WAwBX;AAxBD,WAAY,WAAW;IACrB,yDAAc,CAAA;IACd,+DAAiB,CAAA;IACjB,6DAAgB,CAAA;IAChB,2DAAe,CAAA;IACf,yDAAc,CAAA;IACd,uEAAqB,CAAA;IACrB,+DAAiB,CAAA;IACjB,6DAAgB,CAAA;IAChB,2DAAe,CAAA;IACf,0DAAe,CAAA;IACf,kDAAW,CAAA;IACX,wDAAc,CAAA;IACd,wDAAc,CAAA;IACd,oDAAY,CAAA;IACZ,gEAAkB,CAAA;IAClB,wDAAc,CAAA;IACd,sEAAqB,CAAA;IACrB,sEAAqB,CAAA;IACrB,sDAAa,CAAA;IACb,wDAAc,CAAA;IACd,0EAAuB,CAAA;IACvB,sEAAqB,CAAA;IACrB,wDAAc,CAAA;AAChB,CAAC,EAxBW,WAAW,2BAAX,WAAW,QAwBtB;AAED,uFAAuF;AAC1E,QAAA,qBAAqB,GAAgC;IAChE,YAAY,EAAE,WAAW,CAAC,UAAU;IACpC,eAAe,EAAE,WAAW,CAAC,aAAa;IAC1C,cAAc,EAAE,WAAW,CAAC,YAAY;IACxC,aAAa,EAAE,WAAW,CAAC,WAAW;IACtC,YAAY,EAAE,WAAW,CAAC,UAAU;IACpC,mBAAmB,EAAE,WAAW,CAAC,iBAAiB;IAClD,eAAe,EAAE,WAAW,CAAC,aAAa;IAC1C,cAAc,EAAE,WAAW,CAAC,YAAY;IACxC,aAAa,EAAE,WAAW,CAAC,WAAW;IACtC,YAAY,EAAE,WAAW,CAAC,UAAU;IACpC,QAAQ,EAAE,WAAW,CAAC,MAAM;IAC5B,WAAW,EAAE,WAAW,CAAC,SAAS;IAClC,WAAW,EAAE,WAAW,CAAC,SAAS;IAClC,SAAS,EAAE,WAAW,CAAC,OAAO;IAC9B,eAAe,EAAE,WAAW,CAAC,aAAa;IAC1C,WAAW,EAAE,WAAW,CAAC,SAAS;IAClC,kBAAkB,EAAE,WAAW,CAAC,gBAAgB;IAChD,kBAAkB,EAAE,WAAW,CAAC,gBAAgB;IAChD,UAAU,EAAE,WAAW,CAAC,QAAQ;IAChC,WAAW,EAAE,WAAW,CAAC,SAAS;IAClC,oBAAoB,EAAE,WAAW,CAAC,kBAAkB;IACpD,kBAAkB,EAAE,WAAW,CAAC,gBAAgB;IAChD,WAAW,EAAE,WAAW,CAAC,SAAS;CACnC,CAAC;AAEF,gEAAgE;AAChE,SAAgB,cAAc,CAAC,WAAwB;IACrD,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,oDAAoD;AACpD,SAAgB,YAAY,CAAC,QAAgB,EAAE,WAAwB;IACrE,OAAO,CAAC,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,oCAAoC;AACpC,SAAgB,YAAY,CAAC,QAAgB,EAAE,WAAwB;IACrE,OAAO,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;AAChD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/sudojo_types",
3
- "version": "1.1.7",
3
+ "version": "1.1.9",
4
4
  "description": "TypeScript types for Sudojo API - Sudoku learning platform",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.js",
@@ -44,11 +44,11 @@
44
44
  "author": "Sudobility",
45
45
  "license": "MIT",
46
46
  "peerDependencies": {
47
- "@sudobility/types": "^1.9.37"
47
+ "@sudobility/types": "^1.9.40"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@eslint/js": "^9.38.0",
51
- "@sudobility/types": "^1.9.37",
51
+ "@sudobility/types": "^1.9.40",
52
52
  "@typescript-eslint/eslint-plugin": "^8.46.2",
53
53
  "@typescript-eslint/parser": "^8.46.2",
54
54
  "eslint": "^9.38.0",