@character-foundry/character-foundry 0.1.9-dev.1765913722 → 0.1.9-dev.1765933047

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.
Files changed (61) hide show
  1. package/dist/app-framework.cjs +1 -1
  2. package/dist/app-framework.cjs.map +1 -1
  3. package/dist/app-framework.js +1 -1
  4. package/dist/app-framework.js.map +1 -1
  5. package/dist/charx.cjs +27 -22
  6. package/dist/charx.cjs.map +1 -1
  7. package/dist/charx.d.cts +368 -207
  8. package/dist/charx.d.ts +368 -207
  9. package/dist/charx.js +27 -22
  10. package/dist/charx.js.map +1 -1
  11. package/dist/exporter.cjs +27 -22
  12. package/dist/exporter.cjs.map +1 -1
  13. package/dist/exporter.d.cts +368 -207
  14. package/dist/exporter.d.ts +368 -207
  15. package/dist/exporter.js +27 -22
  16. package/dist/exporter.js.map +1 -1
  17. package/dist/federation.d.cts +368 -207
  18. package/dist/federation.d.ts +368 -207
  19. package/dist/index.cjs +33 -23
  20. package/dist/index.cjs.map +1 -1
  21. package/dist/index.d.cts +708 -423
  22. package/dist/index.d.ts +708 -423
  23. package/dist/index.js +33 -23
  24. package/dist/index.js.map +1 -1
  25. package/dist/loader.cjs +33 -23
  26. package/dist/loader.cjs.map +1 -1
  27. package/dist/loader.d.cts +564 -318
  28. package/dist/loader.d.ts +564 -318
  29. package/dist/loader.js +33 -23
  30. package/dist/loader.js.map +1 -1
  31. package/dist/lorebook.cjs +5 -5
  32. package/dist/lorebook.cjs.map +1 -1
  33. package/dist/lorebook.d.cts +674 -381
  34. package/dist/lorebook.d.ts +674 -381
  35. package/dist/lorebook.js +5 -5
  36. package/dist/lorebook.js.map +1 -1
  37. package/dist/normalizer.cjs +33 -23
  38. package/dist/normalizer.cjs.map +1 -1
  39. package/dist/normalizer.d.cts +896 -560
  40. package/dist/normalizer.d.ts +896 -560
  41. package/dist/normalizer.js +33 -23
  42. package/dist/normalizer.js.map +1 -1
  43. package/dist/png.cjs +27 -22
  44. package/dist/png.cjs.map +1 -1
  45. package/dist/png.d.cts +512 -312
  46. package/dist/png.d.ts +512 -312
  47. package/dist/png.js +27 -22
  48. package/dist/png.js.map +1 -1
  49. package/dist/schemas.cjs +27 -22
  50. package/dist/schemas.cjs.map +1 -1
  51. package/dist/schemas.d.cts +1444 -896
  52. package/dist/schemas.d.ts +1444 -896
  53. package/dist/schemas.js +27 -22
  54. package/dist/schemas.js.map +1 -1
  55. package/dist/voxta.cjs +27 -22
  56. package/dist/voxta.cjs.map +1 -1
  57. package/dist/voxta.d.cts +564 -318
  58. package/dist/voxta.d.ts +564 -318
  59. package/dist/voxta.js +27 -22
  60. package/dist/voxta.js.map +1 -1
  61. package/package.json +7 -7
package/dist/loader.cjs CHANGED
@@ -487,22 +487,24 @@ var ExtractedAssetSchema = import_zod.z.object({
487
487
  mimeType: import_zod.z.string()
488
488
  });
489
489
  var CCv2LorebookEntrySchema = import_zod2.z.object({
490
- keys: import_zod2.z.array(import_zod2.z.string()),
490
+ keys: import_zod2.z.array(import_zod2.z.string()).optional(),
491
+ // Some tools use 'key' instead
491
492
  content: import_zod2.z.string(),
492
- enabled: import_zod2.z.boolean(),
493
- insertion_order: import_zod2.z.number().int(),
494
- // Optional fields
493
+ enabled: import_zod2.z.boolean().default(true),
494
+ // Default to enabled if missing
495
+ insertion_order: import_zod2.z.number().int().default(0),
496
+ // Optional fields - be lenient with nulls since wild data has them
495
497
  extensions: import_zod2.z.record(import_zod2.z.unknown()).optional(),
496
- case_sensitive: import_zod2.z.boolean().optional(),
498
+ case_sensitive: import_zod2.z.boolean().nullable().optional(),
497
499
  name: import_zod2.z.string().optional(),
498
500
  priority: import_zod2.z.number().int().optional(),
499
501
  id: import_zod2.z.number().int().optional(),
500
502
  comment: import_zod2.z.string().optional(),
501
- selective: import_zod2.z.boolean().optional(),
503
+ selective: import_zod2.z.boolean().nullable().optional(),
502
504
  secondary_keys: import_zod2.z.array(import_zod2.z.string()).optional(),
503
- constant: import_zod2.z.boolean().optional(),
504
- position: import_zod2.z.enum(["before_char", "after_char"]).optional()
505
- });
505
+ constant: import_zod2.z.boolean().nullable().optional(),
506
+ position: import_zod2.z.union([import_zod2.z.enum(["before_char", "after_char"]), import_zod2.z.number().int()]).nullable().optional()
507
+ }).passthrough();
506
508
  var CCv2CharacterBookSchema = import_zod2.z.object({
507
509
  name: import_zod2.z.string().optional(),
508
510
  description: import_zod2.z.string().optional(),
@@ -550,31 +552,34 @@ function getV2Data(card) {
550
552
  return card;
551
553
  }
552
554
  var CCv3LorebookEntrySchema = import_zod3.z.object({
553
- keys: import_zod3.z.array(import_zod3.z.string()),
555
+ keys: import_zod3.z.array(import_zod3.z.string()).optional(),
556
+ // Some tools use 'key' instead
554
557
  content: import_zod3.z.string(),
555
- enabled: import_zod3.z.boolean(),
556
- insertion_order: import_zod3.z.number().int(),
557
- // Optional fields
558
- case_sensitive: import_zod3.z.boolean().optional(),
558
+ enabled: import_zod3.z.boolean().default(true),
559
+ // Default to enabled if missing
560
+ insertion_order: import_zod3.z.number().int().default(0),
561
+ // Optional fields - be lenient with nulls since wild data has them
562
+ case_sensitive: import_zod3.z.boolean().nullable().optional(),
559
563
  name: import_zod3.z.string().optional(),
560
564
  priority: import_zod3.z.number().int().optional(),
561
565
  id: import_zod3.z.number().int().optional(),
562
566
  comment: import_zod3.z.string().optional(),
563
- selective: import_zod3.z.boolean().optional(),
567
+ selective: import_zod3.z.boolean().nullable().optional(),
564
568
  secondary_keys: import_zod3.z.array(import_zod3.z.string()).optional(),
565
- constant: import_zod3.z.boolean().optional(),
566
- position: import_zod3.z.enum(["before_char", "after_char"]).optional(),
569
+ constant: import_zod3.z.boolean().nullable().optional(),
570
+ position: import_zod3.z.union([import_zod3.z.enum(["before_char", "after_char"]), import_zod3.z.number().int()]).nullable().optional(),
567
571
  extensions: import_zod3.z.record(import_zod3.z.unknown()).optional(),
568
- // v3 specific
572
+ // v3 specific - also lenient with types since SillyTavern uses numbers for enums
569
573
  automation_id: import_zod3.z.string().optional(),
570
- role: import_zod3.z.enum(["system", "user", "assistant"]).optional(),
574
+ role: import_zod3.z.union([import_zod3.z.enum(["system", "user", "assistant"]), import_zod3.z.number().int()]).nullable().optional(),
571
575
  group: import_zod3.z.string().optional(),
572
576
  scan_frequency: import_zod3.z.number().int().nonnegative().optional(),
573
- probability: import_zod3.z.number().min(0).max(1).optional(),
577
+ probability: import_zod3.z.number().min(0).max(100).optional(),
578
+ // Some tools use 0-100 instead of 0-1
574
579
  use_regex: import_zod3.z.boolean().optional(),
575
580
  depth: import_zod3.z.number().int().nonnegative().optional(),
576
- selective_logic: import_zod3.z.enum(["AND", "NOT"]).optional()
577
- });
581
+ selective_logic: import_zod3.z.union([import_zod3.z.enum(["AND", "NOT"]), import_zod3.z.number().int()]).optional()
582
+ }).passthrough();
578
583
  var CCv3CharacterBookSchema = import_zod3.z.object({
579
584
  name: import_zod3.z.string().optional(),
580
585
  description: import_zod3.z.string().optional(),
@@ -7771,6 +7776,11 @@ var DELTA_MAX_TOTAL_SIZE = 500 * 1024 * 1024;
7771
7776
  var DELTA_MAX_FILE_SIZE = 50 * 1024 * 1024;
7772
7777
 
7773
7778
  // ../normalizer/dist/index.js
7779
+ function normalizePosition(position) {
7780
+ if (position === void 0 || position === null) return "before_char";
7781
+ if (typeof position === "string") return position;
7782
+ return position;
7783
+ }
7774
7784
  function convertLorebookEntry(entry, index) {
7775
7785
  return {
7776
7786
  keys: entry.keys || [],
@@ -7786,7 +7796,7 @@ function convertLorebookEntry(entry, index) {
7786
7796
  selective: entry.selective ?? false,
7787
7797
  secondary_keys: entry.secondary_keys || [],
7788
7798
  constant: entry.constant ?? false,
7789
- position: entry.position || "before_char"
7799
+ position: normalizePosition(entry.position)
7790
7800
  };
7791
7801
  }
7792
7802
  function convertCharacterBook(book) {