@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/index.cjs CHANGED
@@ -604,22 +604,24 @@ var ExtractedAssetSchema = import_zod.z.object({
604
604
  mimeType: import_zod.z.string()
605
605
  });
606
606
  var CCv2LorebookEntrySchema = import_zod2.z.object({
607
- keys: import_zod2.z.array(import_zod2.z.string()),
607
+ keys: import_zod2.z.array(import_zod2.z.string()).optional(),
608
+ // Some tools use 'key' instead
608
609
  content: import_zod2.z.string(),
609
- enabled: import_zod2.z.boolean(),
610
- insertion_order: import_zod2.z.number().int(),
611
- // Optional fields
610
+ enabled: import_zod2.z.boolean().default(true),
611
+ // Default to enabled if missing
612
+ insertion_order: import_zod2.z.number().int().default(0),
613
+ // Optional fields - be lenient with nulls since wild data has them
612
614
  extensions: import_zod2.z.record(import_zod2.z.unknown()).optional(),
613
- case_sensitive: import_zod2.z.boolean().optional(),
615
+ case_sensitive: import_zod2.z.boolean().nullable().optional(),
614
616
  name: import_zod2.z.string().optional(),
615
617
  priority: import_zod2.z.number().int().optional(),
616
618
  id: import_zod2.z.number().int().optional(),
617
619
  comment: import_zod2.z.string().optional(),
618
- selective: import_zod2.z.boolean().optional(),
620
+ selective: import_zod2.z.boolean().nullable().optional(),
619
621
  secondary_keys: import_zod2.z.array(import_zod2.z.string()).optional(),
620
- constant: import_zod2.z.boolean().optional(),
621
- position: import_zod2.z.enum(["before_char", "after_char"]).optional()
622
- });
622
+ constant: import_zod2.z.boolean().nullable().optional(),
623
+ position: import_zod2.z.union([import_zod2.z.enum(["before_char", "after_char"]), import_zod2.z.number().int()]).nullable().optional()
624
+ }).passthrough();
623
625
  var CCv2CharacterBookSchema = import_zod2.z.object({
624
626
  name: import_zod2.z.string().optional(),
625
627
  description: import_zod2.z.string().optional(),
@@ -667,31 +669,34 @@ function getV2Data(card) {
667
669
  return card;
668
670
  }
669
671
  var CCv3LorebookEntrySchema = import_zod3.z.object({
670
- keys: import_zod3.z.array(import_zod3.z.string()),
672
+ keys: import_zod3.z.array(import_zod3.z.string()).optional(),
673
+ // Some tools use 'key' instead
671
674
  content: import_zod3.z.string(),
672
- enabled: import_zod3.z.boolean(),
673
- insertion_order: import_zod3.z.number().int(),
674
- // Optional fields
675
- case_sensitive: import_zod3.z.boolean().optional(),
675
+ enabled: import_zod3.z.boolean().default(true),
676
+ // Default to enabled if missing
677
+ insertion_order: import_zod3.z.number().int().default(0),
678
+ // Optional fields - be lenient with nulls since wild data has them
679
+ case_sensitive: import_zod3.z.boolean().nullable().optional(),
676
680
  name: import_zod3.z.string().optional(),
677
681
  priority: import_zod3.z.number().int().optional(),
678
682
  id: import_zod3.z.number().int().optional(),
679
683
  comment: import_zod3.z.string().optional(),
680
- selective: import_zod3.z.boolean().optional(),
684
+ selective: import_zod3.z.boolean().nullable().optional(),
681
685
  secondary_keys: import_zod3.z.array(import_zod3.z.string()).optional(),
682
- constant: import_zod3.z.boolean().optional(),
683
- position: import_zod3.z.enum(["before_char", "after_char"]).optional(),
686
+ constant: import_zod3.z.boolean().nullable().optional(),
687
+ position: import_zod3.z.union([import_zod3.z.enum(["before_char", "after_char"]), import_zod3.z.number().int()]).nullable().optional(),
684
688
  extensions: import_zod3.z.record(import_zod3.z.unknown()).optional(),
685
- // v3 specific
689
+ // v3 specific - also lenient with types since SillyTavern uses numbers for enums
686
690
  automation_id: import_zod3.z.string().optional(),
687
- role: import_zod3.z.enum(["system", "user", "assistant"]).optional(),
691
+ role: import_zod3.z.union([import_zod3.z.enum(["system", "user", "assistant"]), import_zod3.z.number().int()]).nullable().optional(),
688
692
  group: import_zod3.z.string().optional(),
689
693
  scan_frequency: import_zod3.z.number().int().nonnegative().optional(),
690
- probability: import_zod3.z.number().min(0).max(1).optional(),
694
+ probability: import_zod3.z.number().min(0).max(100).optional(),
695
+ // Some tools use 0-100 instead of 0-1
691
696
  use_regex: import_zod3.z.boolean().optional(),
692
697
  depth: import_zod3.z.number().int().nonnegative().optional(),
693
- selective_logic: import_zod3.z.enum(["AND", "NOT"]).optional()
694
- });
698
+ selective_logic: import_zod3.z.union([import_zod3.z.enum(["AND", "NOT"]), import_zod3.z.number().int()]).optional()
699
+ }).passthrough();
695
700
  var CCv3CharacterBookSchema = import_zod3.z.object({
696
701
  name: import_zod3.z.string().optional(),
697
702
  description: import_zod3.z.string().optional(),
@@ -8369,6 +8374,11 @@ var DELTA_MAX_TOTAL_SIZE = 500 * 1024 * 1024;
8369
8374
  var DELTA_MAX_FILE_SIZE = 50 * 1024 * 1024;
8370
8375
 
8371
8376
  // ../normalizer/dist/index.js
8377
+ function normalizePosition(position) {
8378
+ if (position === void 0 || position === null) return "before_char";
8379
+ if (typeof position === "string") return position;
8380
+ return position;
8381
+ }
8372
8382
  function convertLorebookEntry(entry, index) {
8373
8383
  return {
8374
8384
  keys: entry.keys || [],
@@ -8384,7 +8394,7 @@ function convertLorebookEntry(entry, index) {
8384
8394
  selective: entry.selective ?? false,
8385
8395
  secondary_keys: entry.secondary_keys || [],
8386
8396
  constant: entry.constant ?? false,
8387
- position: entry.position || "before_char"
8397
+ position: normalizePosition(entry.position)
8388
8398
  };
8389
8399
  }
8390
8400
  function convertCharacterBook(book) {