@sogni-ai/sogni-intelligence-client 3.2.3 → 3.4.0

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 (139) hide show
  1. package/dist/client/SogniClientWrapper.d.ts +1 -0
  2. package/dist/client/SogniClientWrapper.d.ts.map +1 -1
  3. package/dist/client/SogniClientWrapper.js +13 -5
  4. package/dist/client/SogniClientWrapper.js.map +1 -1
  5. package/dist/contracts/imagePrompt.d.ts +1 -1
  6. package/dist/contracts/imagePrompt.d.ts.map +1 -1
  7. package/dist/contracts/imagePrompt.js +7 -0
  8. package/dist/contracts/imagePrompt.js.map +1 -1
  9. package/dist/contracts/index.d.ts +1 -1
  10. package/dist/contracts/index.d.ts.map +1 -1
  11. package/dist/contracts/index.js +3 -1
  12. package/dist/contracts/index.js.map +1 -1
  13. package/dist/contracts/toolPromptMarkers.d.ts +2 -0
  14. package/dist/contracts/toolPromptMarkers.d.ts.map +1 -1
  15. package/dist/contracts/toolPromptMarkers.js +4 -1
  16. package/dist/contracts/toolPromptMarkers.js.map +1 -1
  17. package/dist/index.d.ts +1 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +3 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/media/vendorModelPremium.d.ts +1 -1
  22. package/dist/media/vendorModelPremium.d.ts.map +1 -1
  23. package/dist/media/vendorModelPremium.js +3 -1
  24. package/dist/media/vendorModelPremium.js.map +1 -1
  25. package/dist/media/videoSettings.d.ts +22 -1
  26. package/dist/media/videoSettings.d.ts.map +1 -1
  27. package/dist/media/videoSettings.js +99 -1
  28. package/dist/media/videoSettings.js.map +1 -1
  29. package/dist/openai-tools/_manifests.generated.d.ts.map +1 -1
  30. package/dist/openai-tools/_manifests.generated.js +20 -14
  31. package/dist/openai-tools/_manifests.generated.js.map +1 -1
  32. package/dist/openai-tools/generation-tools.json +20 -14
  33. package/dist/public-skill-runtime/index.d.ts +9 -1
  34. package/dist/public-skill-runtime/index.d.ts.map +1 -1
  35. package/dist/public-skill-runtime/index.js +25 -4
  36. package/dist/public-skill-runtime/index.js.map +1 -1
  37. package/dist/schemas/billing/spend-gate.schema.json +58 -37
  38. package/dist/schemas/events/run-event.schema.json +17 -6
  39. package/dist/schemas/tools/animate_photo.schema.json +3 -3
  40. package/dist/schemas/tools/extend_video.schema.json +1 -0
  41. package/dist/schemas/tools/generate_image.schema.json +1 -0
  42. package/dist/schemas/tools/generate_video.schema.json +6 -5
  43. package/dist/schemas/tools/replace_video_segment.schema.json +1 -0
  44. package/dist/schemas/tools/sound_to_video.schema.json +4 -3
  45. package/dist/schemas/tools/video_to_video.schema.json +4 -3
  46. package/dist/skills/asset_reference_management/modelRefRegistry.d.ts.map +1 -1
  47. package/dist/skills/asset_reference_management/modelRefRegistry.js +24 -0
  48. package/dist/skills/asset_reference_management/modelRefRegistry.js.map +1 -1
  49. package/dist/skills/asset_reference_management/types.d.ts +1 -1
  50. package/dist/skills/asset_reference_management/types.d.ts.map +1 -1
  51. package/dist/tools/definitions/animate-photo/definition.js +2 -2
  52. package/dist/tools/definitions/animate-photo/definition.js.map +1 -1
  53. package/dist/tools/definitions/extend-video/definition.js +1 -1
  54. package/dist/tools/definitions/extend-video/definition.js.map +1 -1
  55. package/dist/tools/definitions/generate-image/definition.js +1 -1
  56. package/dist/tools/definitions/generate-image/definition.js.map +1 -1
  57. package/dist/tools/definitions/generate-video/definition.d.ts.map +1 -1
  58. package/dist/tools/definitions/generate-video/definition.js +18 -7
  59. package/dist/tools/definitions/generate-video/definition.js.map +1 -1
  60. package/dist/tools/definitions/replace-video-segment/definition.js +1 -1
  61. package/dist/tools/definitions/replace-video-segment/definition.js.map +1 -1
  62. package/dist/tools/definitions/sound-to-video/definition.js +3 -3
  63. package/dist/tools/definitions/sound-to-video/definition.js.map +1 -1
  64. package/dist/tools/definitions/video-to-video/definition.js +4 -4
  65. package/dist/tools/definitions/video-to-video/definition.js.map +1 -1
  66. package/dist/tools/index.d.ts +4 -0
  67. package/dist/tools/index.d.ts.map +1 -1
  68. package/dist/tools/index.js +11 -2
  69. package/dist/tools/index.js.map +1 -1
  70. package/dist/tools/shared/happyhorsePolicyErrors.d.ts +30 -0
  71. package/dist/tools/shared/happyhorsePolicyErrors.d.ts.map +1 -0
  72. package/dist/tools/shared/happyhorsePolicyErrors.js +175 -0
  73. package/dist/tools/shared/happyhorsePolicyErrors.js.map +1 -0
  74. package/dist/tools/shared/happyhorseReferences.d.ts +24 -0
  75. package/dist/tools/shared/happyhorseReferences.d.ts.map +1 -0
  76. package/dist/tools/shared/happyhorseReferences.js +52 -0
  77. package/dist/tools/shared/happyhorseReferences.js.map +1 -0
  78. package/dist/tools/shared/modelRegistry.d.ts.map +1 -1
  79. package/dist/tools/shared/modelRegistry.js +6 -0
  80. package/dist/tools/shared/modelRegistry.js.map +1 -1
  81. package/dist/utils/helpers.d.ts +1 -0
  82. package/dist/utils/helpers.d.ts.map +1 -1
  83. package/dist/utils/helpers.js +30 -0
  84. package/dist/utils/helpers.js.map +1 -1
  85. package/dist-esm/client/SogniClientWrapper.js +13 -5
  86. package/dist-esm/client/SogniClientWrapper.js.map +1 -1
  87. package/dist-esm/contracts/imagePrompt.js +7 -0
  88. package/dist-esm/contracts/imagePrompt.js.map +1 -1
  89. package/dist-esm/contracts/index.js +1 -1
  90. package/dist-esm/contracts/index.js.map +1 -1
  91. package/dist-esm/contracts/toolPromptMarkers.js +3 -0
  92. package/dist-esm/contracts/toolPromptMarkers.js.map +1 -1
  93. package/dist-esm/index.js +1 -1
  94. package/dist-esm/index.js.map +1 -1
  95. package/dist-esm/media/vendorModelPremium.js +3 -1
  96. package/dist-esm/media/vendorModelPremium.js.map +1 -1
  97. package/dist-esm/media/videoSettings.js +97 -0
  98. package/dist-esm/media/videoSettings.js.map +1 -1
  99. package/dist-esm/openai-tools/_manifests.generated.js +20 -14
  100. package/dist-esm/openai-tools/_manifests.generated.js.map +1 -1
  101. package/dist-esm/openai-tools/generation-tools.json +20 -14
  102. package/dist-esm/public-skill-runtime/index.js +22 -3
  103. package/dist-esm/public-skill-runtime/index.js.map +1 -1
  104. package/dist-esm/schemas/billing/spend-gate.schema.json +58 -37
  105. package/dist-esm/schemas/events/run-event.schema.json +17 -6
  106. package/dist-esm/schemas/tools/animate_photo.schema.json +3 -3
  107. package/dist-esm/schemas/tools/extend_video.schema.json +1 -0
  108. package/dist-esm/schemas/tools/generate_image.schema.json +1 -0
  109. package/dist-esm/schemas/tools/generate_video.schema.json +6 -5
  110. package/dist-esm/schemas/tools/replace_video_segment.schema.json +1 -0
  111. package/dist-esm/schemas/tools/sound_to_video.schema.json +4 -3
  112. package/dist-esm/schemas/tools/video_to_video.schema.json +4 -3
  113. package/dist-esm/skills/asset_reference_management/modelRefRegistry.js +24 -0
  114. package/dist-esm/skills/asset_reference_management/modelRefRegistry.js.map +1 -1
  115. package/dist-esm/tools/definitions/animate-photo/definition.js +2 -2
  116. package/dist-esm/tools/definitions/animate-photo/definition.js.map +1 -1
  117. package/dist-esm/tools/definitions/extend-video/definition.js +1 -1
  118. package/dist-esm/tools/definitions/extend-video/definition.js.map +1 -1
  119. package/dist-esm/tools/definitions/generate-image/definition.js +1 -1
  120. package/dist-esm/tools/definitions/generate-image/definition.js.map +1 -1
  121. package/dist-esm/tools/definitions/generate-video/definition.js +19 -8
  122. package/dist-esm/tools/definitions/generate-video/definition.js.map +1 -1
  123. package/dist-esm/tools/definitions/replace-video-segment/definition.js +1 -1
  124. package/dist-esm/tools/definitions/replace-video-segment/definition.js.map +1 -1
  125. package/dist-esm/tools/definitions/sound-to-video/definition.js +3 -3
  126. package/dist-esm/tools/definitions/sound-to-video/definition.js.map +1 -1
  127. package/dist-esm/tools/definitions/video-to-video/definition.js +4 -4
  128. package/dist-esm/tools/definitions/video-to-video/definition.js.map +1 -1
  129. package/dist-esm/tools/index.js +3 -0
  130. package/dist-esm/tools/index.js.map +1 -1
  131. package/dist-esm/tools/shared/happyhorsePolicyErrors.js +168 -0
  132. package/dist-esm/tools/shared/happyhorsePolicyErrors.js.map +1 -0
  133. package/dist-esm/tools/shared/happyhorseReferences.js +46 -0
  134. package/dist-esm/tools/shared/happyhorseReferences.js.map +1 -0
  135. package/dist-esm/tools/shared/modelRegistry.js +6 -0
  136. package/dist-esm/tools/shared/modelRegistry.js.map +1 -1
  137. package/dist-esm/utils/helpers.js +29 -0
  138. package/dist-esm/utils/helpers.js.map +1 -1
  139. package/package.json +3 -3
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HappyHorseTerminalPolicyError = exports.HAPPYHORSE_INPUT_DOWNLOAD_FAILED_MESSAGE = exports.HAPPYHORSE_VENDOR_TIMEOUT_MESSAGE = exports.HAPPYHORSE_VENDOR_GENERATION_FAILED_MESSAGE = exports.HAPPYHORSE_PROVIDER_CONTENT_POLICY_MESSAGE = void 0;
4
+ exports.happyhorseTerminalPolicyPayloadFromError = happyhorseTerminalPolicyPayloadFromError;
5
+ exports.happyhorseTerminalPolicyErrorFromError = happyhorseTerminalPolicyErrorFromError;
6
+ exports.happyhorseTerminalGenerationFailurePayloadFromError = happyhorseTerminalGenerationFailurePayloadFromError;
7
+ const index_js_1 = require("../../media/index.js");
8
+ exports.HAPPYHORSE_PROVIDER_CONTENT_POLICY_MESSAGE = "HappyHorse's content check didn't pass this one, so no video came back this time. We can adjust the prompt or try a different look and give it another go.";
9
+ exports.HAPPYHORSE_VENDOR_GENERATION_FAILED_MESSAGE = "HappyHorse hit a snag partway through this one, so no media was generated. The provider did not return a specific reason — a quick retry usually clears it up. If it happens again, you can report the issue right from this message.";
10
+ exports.HAPPYHORSE_VENDOR_TIMEOUT_MESSAGE = "HappyHorse took a bit too long on this one and timed out, so no media was generated. A quick retry usually does the trick; if it times out again, you can report the issue right from this message.";
11
+ exports.HAPPYHORSE_INPUT_DOWNLOAD_FAILED_MESSAGE = "HappyHorse couldn't fetch one of the images for this video, so no media was generated. Make sure each reference image is a publicly reachable URL (or send it inline) and we'll try again.";
12
+ class HappyHorseTerminalPolicyError extends Error {
13
+ constructor(payload) {
14
+ super(payload.message);
15
+ this.name = 'HappyHorseTerminalPolicyError';
16
+ this.payload = payload;
17
+ }
18
+ }
19
+ exports.HappyHorseTerminalPolicyError = HappyHorseTerminalPolicyError;
20
+ function collectErrorText(value, seen = new WeakSet()) {
21
+ if (value === null || value === undefined)
22
+ return '';
23
+ if (typeof value === 'string')
24
+ return value;
25
+ if (typeof value === 'number' || typeof value === 'boolean') {
26
+ return String(value);
27
+ }
28
+ if (value instanceof Error) {
29
+ const cause = value.cause;
30
+ return [
31
+ value.name,
32
+ value.message,
33
+ cause ? collectErrorText(cause, seen) : '',
34
+ ].filter(Boolean).join(' ');
35
+ }
36
+ if (typeof value !== 'object')
37
+ return String(value);
38
+ if (seen.has(value))
39
+ return '';
40
+ seen.add(value);
41
+ const record = value;
42
+ const nested = Object.values(record)
43
+ .map((nestedValue) => collectErrorText(nestedValue, seen))
44
+ .filter(Boolean)
45
+ .join(' ');
46
+ try {
47
+ return `${JSON.stringify(value)} ${nested}`.trim();
48
+ }
49
+ catch {
50
+ return nested;
51
+ }
52
+ }
53
+ function extractHappyHorseFailureFields(value, seen = new WeakSet()) {
54
+ if (value && typeof value === 'object' && !seen.has(value)) {
55
+ seen.add(value);
56
+ const record = value;
57
+ const output = record.output;
58
+ if (output && typeof output === 'object') {
59
+ const out = output;
60
+ const code = typeof out.code === 'string' ? out.code : null;
61
+ const message = typeof out.message === 'string' ? out.message : null;
62
+ if (code || message)
63
+ return { code, message };
64
+ }
65
+ for (const nested of Object.values(record)) {
66
+ if (nested && typeof nested === 'object') {
67
+ const found = extractHappyHorseFailureFields(nested, seen);
68
+ if (found.code || found.message)
69
+ return found;
70
+ }
71
+ }
72
+ }
73
+ const text = collectErrorText(value);
74
+ const code = text.match(/"code"\s*:\s*"([^"]+)"/i)?.[1] ?? null;
75
+ const messageRaw = text.match(/"(?:message|Message)"\s*:\s*"((?:[^"\\]|\\.)*)"/)?.[1] ?? null;
76
+ let message = null;
77
+ if (messageRaw) {
78
+ let parsed = messageRaw;
79
+ try {
80
+ parsed = JSON.parse(`"${messageRaw}"`);
81
+ }
82
+ catch {
83
+ }
84
+ message = parsed.replace(/\s*Request id:\s*[A-Za-z0-9._-]+/i, '').trim() || null;
85
+ }
86
+ return { code, message };
87
+ }
88
+ function textHasHappyHorseContentPolicySignal(text) {
89
+ return (/\bcontent[_\s-]?policy\b/i.test(text) ||
90
+ /\bmoderation\b/i.test(text) ||
91
+ /\bsafety\s+(?:system|review|violation|violations)\b/i.test(text) ||
92
+ /\bsafety[_\s-]?violations?\b/i.test(text) ||
93
+ /\bSensitiveContentDetected\b/i.test(text) ||
94
+ /\bsensitive\s+content\b/i.test(text) ||
95
+ /\bnsfw\b/i.test(text) ||
96
+ /\bDataInspection(?:Failed|Exception)?\b/i.test(text));
97
+ }
98
+ function happyhorseTerminalPolicyPayloadFromError(error) {
99
+ if (error instanceof HappyHorseTerminalPolicyError)
100
+ return error.payload;
101
+ const text = collectErrorText(error);
102
+ if (!textHasHappyHorseContentPolicySignal(text))
103
+ return null;
104
+ if (!/\bhappy\s*horse\b/i.test(text) && !/\bhappyhorse\b/i.test(text))
105
+ return null;
106
+ const { code } = extractHappyHorseFailureFields(error);
107
+ return {
108
+ error: 'happyhorse_content_policy',
109
+ message: exports.HAPPYHORSE_PROVIDER_CONTENT_POLICY_MESSAGE,
110
+ retryPolicy: 'manual_user_confirmation',
111
+ nextAction: 'wait_for_user',
112
+ vendorErrorCode: code ?? 'HAPPYHORSE_CONTENT_POLICY',
113
+ };
114
+ }
115
+ function happyhorseTerminalPolicyErrorFromError(error) {
116
+ const payload = happyhorseTerminalPolicyPayloadFromError(error);
117
+ return payload ? new HappyHorseTerminalPolicyError(payload) : null;
118
+ }
119
+ function happyhorseTerminalGenerationFailurePayloadFromError(error) {
120
+ const premiumPayload = (0, index_js_1.vendorModelPremiumPayloadFromError)(error);
121
+ if (premiumPayload)
122
+ return premiumPayload;
123
+ const text = collectErrorText(error);
124
+ if (!/\bAll\s+\d+\s+(?:video generation|sound-to-video|video-to-video)\s+jobs failed\b/i.test(text)
125
+ && !/\bVendor task\b[\s\S]{0,140}\bstatus=failed\b/i.test(text)
126
+ && !/\bVendor (?:job|dispatch) failed\b/i.test(text)
127
+ && !/\bhappyhorse\b/i.test(text)
128
+ && !/\bhappy\s*horse\b/i.test(text)) {
129
+ return null;
130
+ }
131
+ const { code, message } = extractHappyHorseFailureFields(error);
132
+ if (message && /\bfailed to download\b/i.test(message)) {
133
+ return {
134
+ error: 'happyhorse_input_download_failed',
135
+ message: exports.HAPPYHORSE_INPUT_DOWNLOAD_FAILED_MESSAGE,
136
+ retryPolicy: 'manual_user_confirmation',
137
+ nextAction: 'wait_for_user',
138
+ vendorErrorCode: code ?? 'InvalidParameter',
139
+ vendorError: message.slice(0, 500),
140
+ };
141
+ }
142
+ if (/\b(?:timed?\s*out|timeout|deadline\s+exceeded)\b/i.test(text)) {
143
+ return {
144
+ error: 'happyhorse_generation_failed',
145
+ message: exports.HAPPYHORSE_VENDOR_TIMEOUT_MESSAGE,
146
+ retryPolicy: 'manual_user_confirmation',
147
+ nextAction: 'wait_for_user',
148
+ reportIssue: true,
149
+ reportIssueReason: 'HappyHorse provider job timed out after starting.',
150
+ vendorErrorCode: code ?? 'PROVIDER_TIMEOUT',
151
+ ...(text ? { vendorError: text.slice(0, 500) } : {}),
152
+ };
153
+ }
154
+ if (message) {
155
+ return {
156
+ error: 'happyhorse_generation_failed',
157
+ message: `HappyHorse rejected the request: ${message}`,
158
+ retryPolicy: 'manual_user_confirmation',
159
+ nextAction: 'wait_for_user',
160
+ ...(code ? { vendorErrorCode: code } : {}),
161
+ vendorError: message.slice(0, 500),
162
+ };
163
+ }
164
+ return {
165
+ error: 'happyhorse_generation_failed',
166
+ message: exports.HAPPYHORSE_VENDOR_GENERATION_FAILED_MESSAGE,
167
+ retryPolicy: 'manual_user_confirmation',
168
+ nextAction: 'wait_for_user',
169
+ reportIssue: true,
170
+ reportIssueReason: 'HappyHorse provider job failed after starting without a specific provider reason.',
171
+ ...(code ? { vendorErrorCode: code } : {}),
172
+ ...(text ? { vendorError: text.slice(0, 500) } : {}),
173
+ };
174
+ }
175
+ //# sourceMappingURL=happyhorsePolicyErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"happyhorsePolicyErrors.js","sourceRoot":"","sources":["../../../src/tools/shared/happyhorsePolicyErrors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ export interface HappyHorseReferenceLimits {
2
+ readonly images: number;
3
+ readonly videos: number;
4
+ readonly audios: number;
5
+ readonly assets: number;
6
+ }
7
+ export declare const HAPPYHORSE_REFERENCE_LIMITS: Readonly<Record<string, HappyHorseReferenceLimits>>;
8
+ export type HappyHorseReferenceLimitKind = keyof HappyHorseReferenceLimits;
9
+ export declare function getHappyHorseReferenceLimits(modelId: string | null | undefined): HappyHorseReferenceLimits | null;
10
+ export declare class HappyHorseReferenceLimitError extends Error {
11
+ readonly code: "happyhorse_reference_limit_exceeded";
12
+ readonly modelId: string;
13
+ readonly limitKind: HappyHorseReferenceLimitKind;
14
+ readonly requestedCount: number;
15
+ readonly maxCount: number;
16
+ constructor(modelId: string, limitKind: HappyHorseReferenceLimitKind, requestedCount: number, maxCount: number);
17
+ }
18
+ export interface HappyHorseReferenceCounts {
19
+ readonly images: number;
20
+ readonly videos: number;
21
+ readonly audios: number;
22
+ }
23
+ export declare function validateHappyHorseReferenceCounts(modelId: string, counts: HappyHorseReferenceCounts): void;
24
+ //# sourceMappingURL=happyhorseReferences.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"happyhorseReferences.d.ts","sourceRoot":"","sources":["../../../src/tools/shared/happyhorseReferences.ts"],"names":[],"mappings":"AAiBA,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,2BAA2B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAKxF,CAAC;AAEL,MAAM,MAAM,4BAA4B,GAAG,MAAM,yBAAyB,CAAC;AAM3E,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACjC,yBAAyB,GAAG,IAAI,CAGlC;AAED,qBAAa,6BAA8B,SAAQ,KAAK;IACtD,QAAQ,CAAC,IAAI,EAAG,qCAAqC,CAAU;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,4BAA4B,CAAC;IACjD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;gBAGxB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,4BAA4B,EACvC,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,MAAM;CAanB;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAQD,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,yBAAyB,GAChC,IAAI,CAuBN"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HappyHorseReferenceLimitError = exports.HAPPYHORSE_REFERENCE_LIMITS = void 0;
4
+ exports.getHappyHorseReferenceLimits = getHappyHorseReferenceLimits;
5
+ exports.validateHappyHorseReferenceCounts = validateHappyHorseReferenceCounts;
6
+ exports.HAPPYHORSE_REFERENCE_LIMITS = Object.freeze({
7
+ 'happyhorse-1.1-t2v': Object.freeze({ images: 0, videos: 0, audios: 0, assets: 0 }),
8
+ 'happyhorse-1.1-i2v': Object.freeze({ images: 1, videos: 0, audios: 0, assets: 1 }),
9
+ 'happyhorse-1.1-r2v': Object.freeze({ images: 9, videos: 0, audios: 0, assets: 9 }),
10
+ });
11
+ function getHappyHorseReferenceLimits(modelId) {
12
+ if (!modelId)
13
+ return null;
14
+ return exports.HAPPYHORSE_REFERENCE_LIMITS[modelId] ?? null;
15
+ }
16
+ class HappyHorseReferenceLimitError extends Error {
17
+ constructor(modelId, limitKind, requestedCount, maxCount) {
18
+ const label = limitKind === 'assets' ? 'total references' : `${limitKind.slice(0, -1)} references`;
19
+ super(`HappyHorse (${modelId}) can use up to ${maxCount} ${label} per video; this request included ${requestedCount}. ` +
20
+ 'No media was generated. Please choose fewer references or split the story into multiple clips.');
21
+ this.code = 'happyhorse_reference_limit_exceeded';
22
+ this.name = 'HappyHorseReferenceLimitError';
23
+ this.modelId = modelId;
24
+ this.limitKind = limitKind;
25
+ this.requestedCount = requestedCount;
26
+ this.maxCount = maxCount;
27
+ }
28
+ }
29
+ exports.HappyHorseReferenceLimitError = HappyHorseReferenceLimitError;
30
+ function validateHappyHorseReferenceCounts(modelId, counts) {
31
+ const limits = exports.HAPPYHORSE_REFERENCE_LIMITS[modelId];
32
+ if (!limits) {
33
+ throw new HappyHorseReferenceLimitError(modelId, 'assets', 0, 0);
34
+ }
35
+ const images = Math.max(0, Math.floor(counts.images));
36
+ const videos = Math.max(0, Math.floor(counts.videos));
37
+ const audios = Math.max(0, Math.floor(counts.audios));
38
+ if (images > limits.images) {
39
+ throw new HappyHorseReferenceLimitError(modelId, 'images', images, limits.images);
40
+ }
41
+ if (videos > limits.videos) {
42
+ throw new HappyHorseReferenceLimitError(modelId, 'videos', videos, limits.videos);
43
+ }
44
+ if (audios > limits.audios) {
45
+ throw new HappyHorseReferenceLimitError(modelId, 'audios', audios, limits.audios);
46
+ }
47
+ const total = images + videos + audios;
48
+ if (total > limits.assets) {
49
+ throw new HappyHorseReferenceLimitError(modelId, 'assets', total, limits.assets);
50
+ }
51
+ }
52
+ //# sourceMappingURL=happyhorseReferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"happyhorseReferences.js","sourceRoot":"","sources":["../../../src/tools/shared/happyhorseReferences.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"modelRegistry.d.ts","sourceRoot":"","sources":["../../../src/tools/shared/modelRegistry.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAqBD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAwDxD,CAAC;AAkBF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvD;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE3D;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,EAAE,CAE/D;AAGD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,GACvB,WAAW,EAAE,CAIf"}
1
+ {"version":3,"file":"modelRegistry.d.ts","sourceRoot":"","sources":["../../../src/tools/shared/modelRegistry.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAqBD,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CA8DxD,CAAC;AAkBF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGvD;AAGD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE3D;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,EAAE,CAE/D;AAGD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,GACvB,WAAW,EAAE,CAIf"}
@@ -19,6 +19,7 @@ exports.MODELS_BY_TOOL = {
19
19
  { key: 'gpt-image-2', displayName: 'GPT Image 2' },
20
20
  { key: 'z-turbo', displayName: 'Z-Image Turbo' },
21
21
  { key: 'z-image', displayName: 'Z-Image' },
22
+ { key: 'krea-2-turbo', displayName: 'Krea 2 Turbo' },
22
23
  { key: 'chroma-v46-flash', displayName: 'Chroma v.46 Flash' },
23
24
  { key: 'chroma-detail', displayName: 'Chroma Detail' },
24
25
  { key: 'flux1-krea', displayName: 'Flux.1 Krea' },
@@ -53,7 +54,11 @@ exports.MODELS_BY_TOOL = {
53
54
  { key: 'ltx23', displayName: 'LTX 2.3 22B' },
54
55
  { key: 'wan22', displayName: 'WAN 2.2 14B' },
55
56
  { key: 'seedance2', displayName: 'Seedance 2.0' },
57
+ { key: 'seedance2-mini', displayName: 'Seedance 2.0 Mini' },
56
58
  { key: 'seedance2-fast', displayName: 'Seedance 2.0 Fast' },
59
+ { key: 'happyhorse-1.1-t2v', displayName: 'HappyHorse 1.1 (Text to Video)' },
60
+ { key: 'happyhorse-1.1-i2v', displayName: 'HappyHorse 1.1 (Image to Video)' },
61
+ { key: 'happyhorse-1.1-r2v', displayName: 'HappyHorse 1.1 (Reference to Video)' },
57
62
  ],
58
63
  animate_photo: [
59
64
  { key: 'ltx23', displayName: 'LTX 2.3 22B' },
@@ -62,6 +67,7 @@ exports.MODELS_BY_TOOL = {
62
67
  sound_to_video: [
63
68
  { key: 'wan-s2v', displayName: 'WAN 2.2 S2V' },
64
69
  { key: 'seedance2', displayName: 'Seedance 2.0 Image+Audio' },
70
+ { key: 'seedance2-mini', displayName: 'Seedance 2.0 Mini Image+Audio' },
65
71
  { key: 'seedance2-fast', displayName: 'Seedance 2.0 Fast Image+Audio' },
66
72
  { key: 'ltx23-ia2v', displayName: 'LTX 2.3 Image+Audio' },
67
73
  { key: 'ltx23-a2v', displayName: 'LTX 2.3 Audio Only' },
@@ -1 +1 @@
1
- {"version":3,"file":"modelRegistry.js","sourceRoot":"","sources":["../../../src/tools/shared/modelRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modelRegistry.js","sourceRoot":"","sources":["../../../src/tools/shared/modelRegistry.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare function isAudioProjectConfig(config: ProjectConfig): config is A
6
6
  export declare function isWanVideoModel(modelId: string): boolean;
7
7
  export declare function isLtxVideoModel(modelId: string): boolean;
8
8
  export declare function isSeedanceVideoModel(modelId: string): boolean;
9
+ export declare function isHappyHorseVideoModel(modelId: string): boolean;
9
10
  export declare function getMaxContextImages(modelId: string): number;
10
11
  export declare function supportsContextImages(modelId: string): boolean;
11
12
  export declare function isCookieAuth(config: SogniClientConfig): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ exports.isAudioProjectConfig = isAudioProjectConfig;
7
7
  exports.isWanVideoModel = isWanVideoModel;
8
8
  exports.isLtxVideoModel = isLtxVideoModel;
9
9
  exports.isSeedanceVideoModel = isSeedanceVideoModel;
10
+ exports.isHappyHorseVideoModel = isHappyHorseVideoModel;
10
11
  exports.getMaxContextImages = getMaxContextImages;
11
12
  exports.supportsContextImages = supportsContextImages;
12
13
  exports.isCookieAuth = isCookieAuth;
@@ -49,6 +50,9 @@ function isLtxVideoModel(modelId) {
49
50
  function isSeedanceVideoModel(modelId) {
50
51
  return modelId.startsWith('seedance-2-0');
51
52
  }
53
+ function isHappyHorseVideoModel(modelId) {
54
+ return modelId.startsWith('happyhorse-1.1');
55
+ }
52
56
  function getMaxContextImages(modelId) {
53
57
  if (modelId.includes('qwen_image_edit')) {
54
58
  return 3;
@@ -296,6 +300,32 @@ function validateProjectConfig(config) {
296
300
  throw new errors_js_1.SogniValidationError('Seedance audio URL references require at least one image or video reference');
297
301
  }
298
302
  }
303
+ if (isHappyHorseVideoModel(config.modelId)) {
304
+ if (config.fps !== undefined && config.fps !== 24) {
305
+ throw new errors_js_1.SogniValidationError('HappyHorse video models require fps to be 24');
306
+ }
307
+ if (config.duration !== undefined) {
308
+ if (typeof config.duration !== 'number' || config.duration < 3 || config.duration > 15) {
309
+ throw new errors_js_1.SogniValidationError('HappyHorse video duration must be between 3 and 15 seconds');
310
+ }
311
+ }
312
+ const imageAssetCount = (config.referenceImage ? 1 : 0) +
313
+ (config.referenceImageEnd ? 1 : 0) +
314
+ referenceImageUrls.length;
315
+ const videoAssetCount = (config.referenceVideo ? 1 : 0) + referenceVideoUrls.length;
316
+ const audioAssetCount = (config.referenceAudio ? 1 : 0) +
317
+ (config.referenceAudioIdentity ? 1 : 0) +
318
+ referenceAudioUrls.length;
319
+ if (imageAssetCount > 9) {
320
+ throw new errors_js_1.SogniValidationError('HappyHorse supports at most 9 image references per request');
321
+ }
322
+ if (videoAssetCount > 0) {
323
+ throw new errors_js_1.SogniValidationError('HappyHorse does not support reference videos');
324
+ }
325
+ if (audioAssetCount > 0) {
326
+ throw new errors_js_1.SogniValidationError('HappyHorse does not support reference audios; audio is generated natively');
327
+ }
328
+ }
299
329
  }
300
330
  if (isAudioProjectConfig(config)) {
301
331
  if (config.outputFormat && !['mp3', 'flac', 'wav'].includes(config.outputFormat)) {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
@@ -780,7 +780,7 @@ export class SogniClientWrapper extends EventEmitter {
780
780
  }
781
781
  }
782
782
  getRecommendedSettings(modelId) {
783
- if (this.isSeedanceModel(modelId)) {
783
+ if (this.isSeedanceModel(modelId) || this.isHappyHorseModel(modelId)) {
784
784
  return { fps: 24 };
785
785
  }
786
786
  if (this.isWanModel(modelId)) {
@@ -815,10 +815,16 @@ export class SogniClientWrapper extends EventEmitter {
815
815
  isSeedanceModel(modelId) {
816
816
  return modelId.startsWith('seedance-2-0');
817
817
  }
818
+ isHappyHorseModel(modelId) {
819
+ return modelId.startsWith('happyhorse-1.1');
820
+ }
818
821
  getVideoDurationBounds(modelId) {
819
822
  if (this.isSeedanceModel(modelId)) {
820
823
  return { min: 4, max: 15 };
821
824
  }
825
+ if (this.isHappyHorseModel(modelId)) {
826
+ return { min: 3, max: 15 };
827
+ }
822
828
  if (this.isLtx2Model(modelId)) {
823
829
  return { min: 1, max: 20 };
824
830
  }
@@ -828,15 +834,17 @@ export class SogniClientWrapper extends EventEmitter {
828
834
  if (this.isWanModel(modelId)) {
829
835
  return 16;
830
836
  }
831
- if (this.isSeedanceModel(modelId)) {
837
+ if (this.isSeedanceModel(modelId) || this.isHappyHorseModel(modelId)) {
832
838
  return 24;
833
839
  }
834
840
  return fps;
835
841
  }
836
842
  getVideoFps(modelId, fps) {
837
- if (this.isSeedanceModel(modelId)) {
843
+ if (this.isSeedanceModel(modelId) || this.isHappyHorseModel(modelId)) {
838
844
  if (fps !== undefined && fps !== 24) {
839
- throw new SogniValidationError('Seedance video models require fps to be 24');
845
+ throw new SogniValidationError(this.isHappyHorseModel(modelId)
846
+ ? 'HappyHorse video models require fps to be 24'
847
+ : 'Seedance video models require fps to be 24');
840
848
  }
841
849
  return 24;
842
850
  }
@@ -849,7 +857,7 @@ export class SogniClientWrapper extends EventEmitter {
849
857
  if (this.isWanModel(modelId)) {
850
858
  return Math.round(duration * 16) + 1;
851
859
  }
852
- if (this.isSeedanceModel(modelId)) {
860
+ if (this.isSeedanceModel(modelId) || this.isHappyHorseModel(modelId)) {
853
861
  return Math.round(duration * 24) + 1;
854
862
  }
855
863
  let frames = Math.round(duration * fps) + 1;