@nlabs/reaktor 1.10.0 → 1.12.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 (43) hide show
  1. package/README.md +4 -0
  2. package/docs/GENERATION.md +135 -0
  3. package/lib/actions/contentGeneration.d.ts +30 -1
  4. package/lib/actions/contentGeneration.js +103 -16
  5. package/lib/actions/databaseAccounts.d.ts +14 -0
  6. package/lib/actions/databaseAccounts.js +211 -0
  7. package/lib/actions/databaseProvisioningLease.d.ts +6 -0
  8. package/lib/actions/databaseProvisioningLease.js +166 -0
  9. package/lib/actions/higgsfield.d.ts +2 -0
  10. package/lib/actions/higgsfield.js +7 -1
  11. package/lib/actions/imageGeneration.d.ts +5 -1
  12. package/lib/actions/imageGeneration.js +13 -2
  13. package/lib/actions/index.d.ts +3 -0
  14. package/lib/actions/index.js +4 -1
  15. package/lib/actions/openaiResponseSession.d.ts +60 -0
  16. package/lib/actions/openaiResponseSession.js +248 -0
  17. package/lib/actions/videoGeneration.d.ts +5 -1
  18. package/lib/actions/videoGeneration.js +13 -2
  19. package/lib/adapters/higgsfieldAdapter.d.ts +21 -15
  20. package/lib/adapters/higgsfieldAdapter.js +24 -11
  21. package/lib/adapters/higgsfieldModelCatalog.d.ts +10 -0
  22. package/lib/adapters/higgsfieldModelCatalog.js +5363 -0
  23. package/lib/adapters/higgsfieldModels.d.ts +2 -0
  24. package/lib/adapters/higgsfieldModels.js +37 -0
  25. package/lib/index.d.ts +4 -0
  26. package/lib/index.js +4 -1
  27. package/lib/objectTypes/contentGeneration.js +26 -3
  28. package/lib/objectTypes/imageGeneration.js +3 -2
  29. package/lib/objectTypes/videoGeneration.js +2 -1
  30. package/lib/types/databaseCredentials.types.d.ts +30 -0
  31. package/lib/types/databaseCredentials.types.js +3 -0
  32. package/lib/types/index.d.ts +1 -0
  33. package/lib/types/index.js +2 -1
  34. package/lib/utils/databaseCredentials.d.ts +5 -0
  35. package/lib/utils/databaseCredentials.js +100 -0
  36. package/lib/utils/generationCallback.d.ts +23 -0
  37. package/lib/utils/generationCallback.js +49 -0
  38. package/lib/utils/index.d.ts +3 -0
  39. package/lib/utils/index.js +4 -1
  40. package/lib/utils/secretDatabase.d.ts +8 -0
  41. package/lib/utils/secretDatabase.js +153 -0
  42. package/lib/utils/testUtils.js +10 -2
  43. package/package.json +12 -10
@@ -113,19 +113,32 @@ export const validateSoulImageInput = (input)=>parseWith(SoulImageInputSchema, i
113
113
  export const validateSeedanceVideoInput = (input)=>parseWith(SeedanceVideoInputSchema, input);
114
114
  export const validateSeedanceReferenceVideoInput = (input)=>parseWith(SeedanceReferenceVideoInputSchema, input);
115
115
  export const validateMarketingStudioImageInput = (input)=>parseWith(MarketingStudioImageInputSchema, input);
116
- export const parseHiggsfieldWebhookPayload = (body)=>{
117
- const record = body;
118
- const requestId = String(record?.request_id || '');
119
- const status = String(record?.status || '');
120
- if (!requestId || !status) {
121
- throw new HiggsfieldValidationError('Higgsfield webhook payload is missing request_id or status.');
116
+ const WebhookMediaSchema = z.object({
117
+ content_type: z.string().max(128).optional(),
118
+ url: z.string().url().max(8192).optional()
119
+ });
120
+ const HiggsfieldWebhookSchema = z.object({
121
+ error: z.string().max(4096).nullable().optional(),
122
+ payload: z.object({
123
+ images: z.array(WebhookMediaSchema).max(100).optional(),
124
+ video: WebhookMediaSchema.optional()
125
+ }).nullable().optional(),
126
+ request_id: z.string().regex(/^[a-zA-Z0-9_-]{1,200}$/),
127
+ status: z.enum([
128
+ 'completed',
129
+ 'failed',
130
+ 'nsfw'
131
+ ])
132
+ });
133
+ /** Validates the documented envelope only; callers must authenticate and reconcile before settlement. */ export const parseHiggsfieldWebhookPayload = (body)=>{
134
+ const parsed = HiggsfieldWebhookSchema.safeParse(body);
135
+ if (!parsed.success) {
136
+ throw new HiggsfieldValidationError('Invalid Higgsfield webhook envelope.');
122
137
  }
123
138
  return {
124
- error: record?.error ?? null,
125
- payload: record?.payload,
126
- request_id: requestId,
127
- status
139
+ ...parsed.data,
140
+ error: parsed.data.error ?? null
128
141
  };
129
142
  };
130
143
 
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3IvcGFja2FnZXMvcmVha3Rvci9zcmMvYWRhcHRlcnMvaGlnZ3NmaWVsZEFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjYtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVXNlIGlzIHN1YmplY3QgdG8gdGhlIGFjY29tcGFueWluZyBjb21tZXJjaWFsIExJQ0VOU0UuXG4gKi9cbmltcG9ydCB7en0gZnJvbSAnem9kJztcblxuZXhwb3J0IGNsYXNzIEhpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZpZWxkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0hpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFNvdWxJbWFnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnOToxNicsICcxNjo5JywgJzQ6MycsICczOjQnLCAnMToxJywgJzI6MycsICczOjInXSkub3B0aW9uYWwoKSxcbiAgYmF0Y2hTaXplOiB6LnVuaW9uKFt6LmxpdGVyYWwoMSksIHoubGl0ZXJhbCg0KV0pLm9wdGlvbmFsKCksXG4gIGVuaGFuY2VQcm9tcHQ6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKS5taW4oMSksXG4gIHJlc29sdXRpb246IHouZW51bShbJzcyMHAnLCAnMTA4MHAnXSkub3B0aW9uYWwoKSxcbiAgc2VlZDogei5udW1iZXIoKS5pbnQoKS5taW4oMSkubWF4KDFfMDAwXzAwMCkub3B0aW9uYWwoKSxcbiAgc3R5bGVJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5jb25zdCBTZWVkYW5jZVZpZGVvSW5wdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGR1cmF0aW9uOiB6Lm51bWJlcigpLmludCgpLm1pbig0KS5tYXgoMzApLm9wdGlvbmFsKCksXG4gIGVuZEltYWdlVXJsOiB6LnN0cmluZygpLnVybCgpLm9wdGlvbmFsKCksXG4gIGdlbmVyYXRlQXVkaW86IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGltYWdlVXJsOiB6LnN0cmluZygpLnVybCgpLFxuICBvdXRwdXRGb3JtYXQ6IHouZW51bShbJ21wNCcsICdtb3YnXSkub3B0aW9uYWwoKSxcbiAgcHJvbXB0OiB6LnN0cmluZygpLm1pbigxKS5vcHRpb25hbCgpLFxuICByZXNvbHV0aW9uOiB6LmVudW0oWyc0ODBwJywgJzcyMHAnXSkub3B0aW9uYWwoKVxufSkubG9vc2UoKTtcblxuY29uc3QgU2VlZGFuY2VSZWZlcmVuY2VWaWRlb0lucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnMTY6OScsICc0OjMnLCAnMToxJywgJzM6NCcsICc5OjE2JywgJzIxOjknXSksXG4gIGF1ZGlvVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDEwKS5vcHRpb25hbCgpLFxuICBkdXJhdGlvbjogei5udW1iZXIoKS5pbnQoKS5taW4oNCkubWF4KDMwKS5vcHRpb25hbCgpLFxuICBnZW5lcmF0ZUF1ZGlvOiB6LmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICBpbWFnZVVybHM6IHouYXJyYXkoei5zdHJpbmcoKS51cmwoKSkubWluKDEpLm1heCgzMCkub3B0aW9uYWwoKSxcbiAgb3V0cHV0Rm9ybWF0OiB6LmVudW0oWydtcDQnLCAnbW92J10pLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKS5taW4oMSkub3B0aW9uYWwoKSxcbiAgcmVzb2x1dGlvbjogei5lbnVtKFsnNDgwcCcsICc3MjBwJ10pLm9wdGlvbmFsKCksXG4gIHZpZGVvVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDEwKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5jb25zdCBNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnYXV0bycsICcxOjEnLCAnMzoyJywgJzI6MycsICc0OjMnLCAnMzo0JywgJzE2OjknLCAnOToxNicsICcyMTo5J10pLm9wdGlvbmFsKCksXG4gIGVuaGFuY2VQcm9tcHQ6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGltYWdlVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDE2KS5vcHRpb25hbCgpLFxuICBwcmVzZXRJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm9tcHQ6IHouc3RyaW5nKCkubWluKDEpLm1heCg1MDAwKSxcbiAgcXVhbGl0eTogei5lbnVtKFsnbG93JywgJ21lZGl1bScsICdoaWdoJ10pLm9wdGlvbmFsKCksXG4gIHJlc29sdXRpb246IHouZW51bShbJzFrJywgJzJrJywgJzRrJ10pLm9wdGlvbmFsKClcbn0pLmxvb3NlKCk7XG5cbmV4cG9ydCB0eXBlIFNvdWxJbWFnZUlucHV0ID0gei5pbmZlcjx0eXBlb2YgU291bEltYWdlSW5wdXRTY2hlbWE+O1xuZXhwb3J0IHR5cGUgU2VlZGFuY2VWaWRlb0lucHV0ID0gei5pbmZlcjx0eXBlb2YgU2VlZGFuY2VWaWRlb0lucHV0U2NoZW1hPjtcbmV4cG9ydCB0eXBlIFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dCA9IHouaW5mZXI8dHlwZW9mIFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dFNjaGVtYT47XG5leHBvcnQgdHlwZSBNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0ID0gei5pbmZlcjx0eXBlb2YgTWFya2V0aW5nU3R1ZGlvSW1hZ2VJbnB1dFNjaGVtYT47XG5cbmNvbnN0IHBhcnNlV2l0aCA9IDxUPihzY2hlbWE6IHouWm9kVHlwZTxUPiwgaW5wdXQ6IHVua25vd24pOiBUID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gc2NoZW1hLnBhcnNlKGlucHV0KTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChpc3N1ZSkgPT4gYCR7aXNzdWUucGF0aC5qb2luKCcuJyl9OiAke2lzc3VlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBIaWdnc2ZpZWxkVmFsaWRhdGlvbkVycm9yKGBIaWdnc2ZpZWxkIGlucHV0IHZhbGlkYXRpb24gZmFpbGVkOiAke2ZpZWxkRXJyb3JzfWApO1xuICAgIH1cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlU291bEltYWdlSW5wdXQgPSAoaW5wdXQ6IHVua25vd24pOiBTb3VsSW1hZ2VJbnB1dCA9PiBwYXJzZVdpdGgoU291bEltYWdlSW5wdXRTY2hlbWEsIGlucHV0KTtcbmV4cG9ydCBjb25zdCB2YWxpZGF0ZVNlZWRhbmNlVmlkZW9JbnB1dCA9IChpbnB1dDogdW5rbm93bik6IFNlZWRhbmNlVmlkZW9JbnB1dCA9PlxuICBwYXJzZVdpdGgoU2VlZGFuY2VWaWRlb0lucHV0U2NoZW1hLCBpbnB1dCk7XG5leHBvcnQgY29uc3QgdmFsaWRhdGVTZWVkYW5jZVJlZmVyZW5jZVZpZGVvSW5wdXQgPSAoaW5wdXQ6IHVua25vd24pOiBTZWVkYW5jZVJlZmVyZW5jZVZpZGVvSW5wdXQgPT5cbiAgcGFyc2VXaXRoKFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dFNjaGVtYSwgaW5wdXQpO1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlTWFya2V0aW5nU3R1ZGlvSW1hZ2VJbnB1dCA9IChpbnB1dDogdW5rbm93bik6IE1hcmtldGluZ1N0dWRpb0ltYWdlSW5wdXQgPT5cbiAgcGFyc2VXaXRoKE1hcmtldGluZ1N0dWRpb0ltYWdlSW5wdXRTY2hlbWEsIGlucHV0KTtcblxuZXhwb3J0IGludGVyZmFjZSBIaWdnc2ZpZWxkV2ViaG9va1BheWxvYWQge1xuICBlcnJvcj86IHN0cmluZyB8IG51bGw7XG4gIHBheWxvYWQ/OiB7XG4gICAgaW1hZ2VzPzoge3VybD86IHN0cmluZzsgY29udGVudF90eXBlPzogc3RyaW5nfVtdO1xuICAgIHZpZGVvPzoge3VybD86IHN0cmluZzsgY29udGVudF90eXBlPzogc3RyaW5nfTtcbiAgfTtcbiAgcmVxdWVzdF9pZDogc3RyaW5nO1xuICBzdGF0dXM6IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IHBhcnNlSGlnZ3NmaWVsZFdlYmhvb2tQYXlsb2FkID0gKGJvZHk6IHVua25vd24pOiBIaWdnc2ZpZWxkV2ViaG9va1BheWxvYWQgPT4ge1xuICBjb25zdCByZWNvcmQgPSBib2R5IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgbnVsbDtcbiAgY29uc3QgcmVxdWVzdElkID0gU3RyaW5nKHJlY29yZD8ucmVxdWVzdF9pZCB8fCAnJyk7XG4gIGNvbnN0IHN0YXR1cyA9IFN0cmluZyhyZWNvcmQ/LnN0YXR1cyB8fCAnJyk7XG5cbiAgaWYoIXJlcXVlc3RJZCB8fCAhc3RhdHVzKSB7XG4gICAgdGhyb3cgbmV3IEhpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3IoJ0hpZ2dzZmllbGQgd2ViaG9vayBwYXlsb2FkIGlzIG1pc3NpbmcgcmVxdWVzdF9pZCBvciBzdGF0dXMuJyk7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGVycm9yOiAocmVjb3JkPy5lcnJvciBhcyBzdHJpbmcgfCBudWxsIHwgdW5kZWZpbmVkKSA/PyBudWxsLFxuICAgIHBheWxvYWQ6IHJlY29yZD8ucGF5bG9hZCBhcyBIaWdnc2ZpZWxkV2ViaG9va1BheWxvYWRbJ3BheWxvYWQnXSxcbiAgICByZXF1ZXN0X2lkOiByZXF1ZXN0SWQsXG4gICAgc3RhdHVzXG4gIH07XG59O1xuIl0sIm5hbWVzIjpbInoiLCJIaWdnc2ZpZWxkVmFsaWRhdGlvbkVycm9yIiwiRXJyb3IiLCJtZXNzYWdlIiwiZmllbGQiLCJuYW1lIiwiU291bEltYWdlSW5wdXRTY2hlbWEiLCJvYmplY3QiLCJhc3BlY3RSYXRpbyIsImVudW0iLCJvcHRpb25hbCIsImJhdGNoU2l6ZSIsInVuaW9uIiwibGl0ZXJhbCIsImVuaGFuY2VQcm9tcHQiLCJib29sZWFuIiwicHJvbXB0Iiwic3RyaW5nIiwibWluIiwicmVzb2x1dGlvbiIsInNlZWQiLCJudW1iZXIiLCJpbnQiLCJtYXgiLCJzdHlsZUlkIiwibG9vc2UiLCJTZWVkYW5jZVZpZGVvSW5wdXRTY2hlbWEiLCJkdXJhdGlvbiIsImVuZEltYWdlVXJsIiwidXJsIiwiZ2VuZXJhdGVBdWRpbyIsImltYWdlVXJsIiwib3V0cHV0Rm9ybWF0IiwiU2VlZGFuY2VSZWZlcmVuY2VWaWRlb0lucHV0U2NoZW1hIiwiYXVkaW9VcmxzIiwiYXJyYXkiLCJpbWFnZVVybHMiLCJ2aWRlb1VybHMiLCJNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0U2NoZW1hIiwicHJlc2V0SWQiLCJxdWFsaXR5IiwicGFyc2VXaXRoIiwic2NoZW1hIiwiaW5wdXQiLCJwYXJzZSIsImVycm9yIiwiWm9kRXJyb3IiLCJmaWVsZEVycm9ycyIsImlzc3VlcyIsIm1hcCIsImlzc3VlIiwicGF0aCIsImpvaW4iLCJ2YWxpZGF0ZVNvdWxJbWFnZUlucHV0IiwidmFsaWRhdGVTZWVkYW5jZVZpZGVvSW5wdXQiLCJ2YWxpZGF0ZVNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dCIsInZhbGlkYXRlTWFya2V0aW5nU3R1ZGlvSW1hZ2VJbnB1dCIsInBhcnNlSGlnZ3NmaWVsZFdlYmhvb2tQYXlsb2FkIiwiYm9keSIsInJlY29yZCIsInJlcXVlc3RJZCIsIlN0cmluZyIsInJlcXVlc3RfaWQiLCJzdGF0dXMiLCJwYXlsb2FkIl0sIm1hcHBpbmdzIjoiQUFBQTs7O0NBR0MsR0FDRCxTQUFRQSxDQUFDLFFBQU8sTUFBTTtBQUV0QixP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
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L3JlYWt0b3IvcGFja2FnZXMvcmVha3Rvci9zcmMvYWRhcHRlcnMvaGlnZ3NmaWVsZEFkYXB0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjYtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC4gVXNlIGlzIHN1YmplY3QgdG8gdGhlIGFjY29tcGFueWluZyBjb21tZXJjaWFsIExJQ0VOU0UuXG4gKi9cbmltcG9ydCB7en0gZnJvbSAnem9kJztcblxuZXhwb3J0IGNsYXNzIEhpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZpZWxkPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gJ0hpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3InO1xuICB9XG59XG5cbmNvbnN0IFNvdWxJbWFnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnOToxNicsICcxNjo5JywgJzQ6MycsICczOjQnLCAnMToxJywgJzI6MycsICczOjInXSkub3B0aW9uYWwoKSxcbiAgYmF0Y2hTaXplOiB6LnVuaW9uKFt6LmxpdGVyYWwoMSksIHoubGl0ZXJhbCg0KV0pLm9wdGlvbmFsKCksXG4gIGVuaGFuY2VQcm9tcHQ6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKS5taW4oMSksXG4gIHJlc29sdXRpb246IHouZW51bShbJzcyMHAnLCAnMTA4MHAnXSkub3B0aW9uYWwoKSxcbiAgc2VlZDogei5udW1iZXIoKS5pbnQoKS5taW4oMSkubWF4KDFfMDAwXzAwMCkub3B0aW9uYWwoKSxcbiAgc3R5bGVJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5jb25zdCBTZWVkYW5jZVZpZGVvSW5wdXRTY2hlbWEgPSB6Lm9iamVjdCh7XG4gIGR1cmF0aW9uOiB6Lm51bWJlcigpLmludCgpLm1pbig0KS5tYXgoMzApLm9wdGlvbmFsKCksXG4gIGVuZEltYWdlVXJsOiB6LnN0cmluZygpLnVybCgpLm9wdGlvbmFsKCksXG4gIGdlbmVyYXRlQXVkaW86IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGltYWdlVXJsOiB6LnN0cmluZygpLnVybCgpLFxuICBvdXRwdXRGb3JtYXQ6IHouZW51bShbJ21wNCcsICdtb3YnXSkub3B0aW9uYWwoKSxcbiAgcHJvbXB0OiB6LnN0cmluZygpLm1pbigxKS5vcHRpb25hbCgpLFxuICByZXNvbHV0aW9uOiB6LmVudW0oWyc0ODBwJywgJzcyMHAnXSkub3B0aW9uYWwoKVxufSkubG9vc2UoKTtcblxuY29uc3QgU2VlZGFuY2VSZWZlcmVuY2VWaWRlb0lucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnMTY6OScsICc0OjMnLCAnMToxJywgJzM6NCcsICc5OjE2JywgJzIxOjknXSksXG4gIGF1ZGlvVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDEwKS5vcHRpb25hbCgpLFxuICBkdXJhdGlvbjogei5udW1iZXIoKS5pbnQoKS5taW4oNCkubWF4KDMwKS5vcHRpb25hbCgpLFxuICBnZW5lcmF0ZUF1ZGlvOiB6LmJvb2xlYW4oKS5vcHRpb25hbCgpLFxuICBpbWFnZVVybHM6IHouYXJyYXkoei5zdHJpbmcoKS51cmwoKSkubWluKDEpLm1heCgzMCkub3B0aW9uYWwoKSxcbiAgb3V0cHV0Rm9ybWF0OiB6LmVudW0oWydtcDQnLCAnbW92J10pLm9wdGlvbmFsKCksXG4gIHByb21wdDogei5zdHJpbmcoKS5taW4oMSkub3B0aW9uYWwoKSxcbiAgcmVzb2x1dGlvbjogei5lbnVtKFsnNDgwcCcsICc3MjBwJ10pLm9wdGlvbmFsKCksXG4gIHZpZGVvVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDEwKS5vcHRpb25hbCgpXG59KS5sb29zZSgpO1xuXG5jb25zdCBNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0U2NoZW1hID0gei5vYmplY3Qoe1xuICBhc3BlY3RSYXRpbzogei5lbnVtKFsnYXV0bycsICcxOjEnLCAnMzoyJywgJzI6MycsICc0OjMnLCAnMzo0JywgJzE2OjknLCAnOToxNicsICcyMTo5J10pLm9wdGlvbmFsKCksXG4gIGVuaGFuY2VQcm9tcHQ6IHouYm9vbGVhbigpLm9wdGlvbmFsKCksXG4gIGltYWdlVXJsczogei5hcnJheSh6LnN0cmluZygpLnVybCgpKS5taW4oMSkubWF4KDE2KS5vcHRpb25hbCgpLFxuICBwcmVzZXRJZDogei5zdHJpbmcoKS5vcHRpb25hbCgpLFxuICBwcm9tcHQ6IHouc3RyaW5nKCkubWluKDEpLm1heCg1MDAwKSxcbiAgcXVhbGl0eTogei5lbnVtKFsnbG93JywgJ21lZGl1bScsICdoaWdoJ10pLm9wdGlvbmFsKCksXG4gIHJlc29sdXRpb246IHouZW51bShbJzFrJywgJzJrJywgJzRrJ10pLm9wdGlvbmFsKClcbn0pLmxvb3NlKCk7XG5cbmV4cG9ydCB0eXBlIFNvdWxJbWFnZUlucHV0ID0gei5pbmZlcjx0eXBlb2YgU291bEltYWdlSW5wdXRTY2hlbWE+O1xuZXhwb3J0IHR5cGUgU2VlZGFuY2VWaWRlb0lucHV0ID0gei5pbmZlcjx0eXBlb2YgU2VlZGFuY2VWaWRlb0lucHV0U2NoZW1hPjtcbmV4cG9ydCB0eXBlIFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dCA9IHouaW5mZXI8dHlwZW9mIFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dFNjaGVtYT47XG5leHBvcnQgdHlwZSBNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0ID0gei5pbmZlcjx0eXBlb2YgTWFya2V0aW5nU3R1ZGlvSW1hZ2VJbnB1dFNjaGVtYT47XG5cbmNvbnN0IHBhcnNlV2l0aCA9IDxUPihzY2hlbWE6IHouWm9kVHlwZTxUPiwgaW5wdXQ6IHVua25vd24pOiBUID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gc2NoZW1hLnBhcnNlKGlucHV0KTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIGlmKGVycm9yIGluc3RhbmNlb2Ygei5ab2RFcnJvcikge1xuICAgICAgY29uc3QgZmllbGRFcnJvcnMgPSBlcnJvci5pc3N1ZXMubWFwKChpc3N1ZSkgPT4gYCR7aXNzdWUucGF0aC5qb2luKCcuJyl9OiAke2lzc3VlLm1lc3NhZ2V9YCkuam9pbignLCAnKTtcbiAgICAgIHRocm93IG5ldyBIaWdnc2ZpZWxkVmFsaWRhdGlvbkVycm9yKGBIaWdnc2ZpZWxkIGlucHV0IHZhbGlkYXRpb24gZmFpbGVkOiAke2ZpZWxkRXJyb3JzfWApO1xuICAgIH1cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlU291bEltYWdlSW5wdXQgPSAoaW5wdXQ6IHVua25vd24pOiBTb3VsSW1hZ2VJbnB1dCA9PiBwYXJzZVdpdGgoU291bEltYWdlSW5wdXRTY2hlbWEsIGlucHV0KTtcbmV4cG9ydCBjb25zdCB2YWxpZGF0ZVNlZWRhbmNlVmlkZW9JbnB1dCA9IChpbnB1dDogdW5rbm93bik6IFNlZWRhbmNlVmlkZW9JbnB1dCA9PlxuICBwYXJzZVdpdGgoU2VlZGFuY2VWaWRlb0lucHV0U2NoZW1hLCBpbnB1dCk7XG5leHBvcnQgY29uc3QgdmFsaWRhdGVTZWVkYW5jZVJlZmVyZW5jZVZpZGVvSW5wdXQgPSAoaW5wdXQ6IHVua25vd24pOiBTZWVkYW5jZVJlZmVyZW5jZVZpZGVvSW5wdXQgPT5cbiAgcGFyc2VXaXRoKFNlZWRhbmNlUmVmZXJlbmNlVmlkZW9JbnB1dFNjaGVtYSwgaW5wdXQpO1xuZXhwb3J0IGNvbnN0IHZhbGlkYXRlTWFya2V0aW5nU3R1ZGlvSW1hZ2VJbnB1dCA9IChpbnB1dDogdW5rbm93bik6IE1hcmtldGluZ1N0dWRpb0ltYWdlSW5wdXQgPT5cbiAgcGFyc2VXaXRoKE1hcmtldGluZ1N0dWRpb0ltYWdlSW5wdXRTY2hlbWEsIGlucHV0KTtcblxuY29uc3QgV2ViaG9va01lZGlhU2NoZW1hID0gei5vYmplY3Qoe1xuICBjb250ZW50X3R5cGU6IHouc3RyaW5nKCkubWF4KDEyOCkub3B0aW9uYWwoKSxcbiAgdXJsOiB6LnN0cmluZygpLnVybCgpLm1heCg4MTkyKS5vcHRpb25hbCgpXG59KTtcbmNvbnN0IEhpZ2dzZmllbGRXZWJob29rU2NoZW1hID0gei5vYmplY3Qoe1xuICBlcnJvcjogei5zdHJpbmcoKS5tYXgoNDA5NikubnVsbGFibGUoKS5vcHRpb25hbCgpLFxuICBwYXlsb2FkOiB6Lm9iamVjdCh7XG4gICAgaW1hZ2VzOiB6LmFycmF5KFdlYmhvb2tNZWRpYVNjaGVtYSkubWF4KDEwMCkub3B0aW9uYWwoKSxcbiAgICB2aWRlbzogV2ViaG9va01lZGlhU2NoZW1hLm9wdGlvbmFsKClcbiAgfSkubnVsbGFibGUoKS5vcHRpb25hbCgpLFxuICByZXF1ZXN0X2lkOiB6LnN0cmluZygpLnJlZ2V4KC9eW2EtekEtWjAtOV8tXXsxLDIwMH0kLyksXG4gIHN0YXR1czogei5lbnVtKFsnY29tcGxldGVkJywgJ2ZhaWxlZCcsICduc2Z3J10pXG59KTtcblxuZXhwb3J0IHR5cGUgSGlnZ3NmaWVsZFdlYmhvb2tQYXlsb2FkID0gei5vdXRwdXQ8dHlwZW9mIEhpZ2dzZmllbGRXZWJob29rU2NoZW1hPjtcblxuLyoqIFZhbGlkYXRlcyB0aGUgZG9jdW1lbnRlZCBlbnZlbG9wZSBvbmx5OyBjYWxsZXJzIG11c3QgYXV0aGVudGljYXRlIGFuZCByZWNvbmNpbGUgYmVmb3JlIHNldHRsZW1lbnQuICovXG5leHBvcnQgY29uc3QgcGFyc2VIaWdnc2ZpZWxkV2ViaG9va1BheWxvYWQgPSAoYm9keTogdW5rbm93bik6IEhpZ2dzZmllbGRXZWJob29rUGF5bG9hZCA9PiB7XG4gIGNvbnN0IHBhcnNlZCA9IEhpZ2dzZmllbGRXZWJob29rU2NoZW1hLnNhZmVQYXJzZShib2R5KTtcbiAgaWYoIXBhcnNlZC5zdWNjZXNzKSB7XG4gICAgdGhyb3cgbmV3IEhpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3IoJ0ludmFsaWQgSGlnZ3NmaWVsZCB3ZWJob29rIGVudmVsb3BlLicpO1xuICB9XG4gIHJldHVybiB7Li4ucGFyc2VkLmRhdGEsIGVycm9yOiBwYXJzZWQuZGF0YS5lcnJvciA/PyBudWxsfTtcbn07XG4iXSwibmFtZXMiOlsieiIsIkhpZ2dzZmllbGRWYWxpZGF0aW9uRXJyb3IiLCJFcnJvciIsIm1lc3NhZ2UiLCJmaWVsZCIsIm5hbWUiLCJTb3VsSW1hZ2VJbnB1dFNjaGVtYSIsIm9iamVjdCIsImFzcGVjdFJhdGlvIiwiZW51bSIsIm9wdGlvbmFsIiwiYmF0Y2hTaXplIiwidW5pb24iLCJsaXRlcmFsIiwiZW5oYW5jZVByb21wdCIsImJvb2xlYW4iLCJwcm9tcHQiLCJzdHJpbmciLCJtaW4iLCJyZXNvbHV0aW9uIiwic2VlZCIsIm51bWJlciIsImludCIsIm1heCIsInN0eWxlSWQiLCJsb29zZSIsIlNlZWRhbmNlVmlkZW9JbnB1dFNjaGVtYSIsImR1cmF0aW9uIiwiZW5kSW1hZ2VVcmwiLCJ1cmwiLCJnZW5lcmF0ZUF1ZGlvIiwiaW1hZ2VVcmwiLCJvdXRwdXRGb3JtYXQiLCJTZWVkYW5jZVJlZmVyZW5jZVZpZGVvSW5wdXRTY2hlbWEiLCJhdWRpb1VybHMiLCJhcnJheSIsImltYWdlVXJscyIsInZpZGVvVXJscyIsIk1hcmtldGluZ1N0dWRpb0ltYWdlSW5wdXRTY2hlbWEiLCJwcmVzZXRJZCIsInF1YWxpdHkiLCJwYXJzZVdpdGgiLCJzY2hlbWEiLCJpbnB1dCIsInBhcnNlIiwiZXJyb3IiLCJab2RFcnJvciIsImZpZWxkRXJyb3JzIiwiaXNzdWVzIiwibWFwIiwiaXNzdWUiLCJwYXRoIiwiam9pbiIsInZhbGlkYXRlU291bEltYWdlSW5wdXQiLCJ2YWxpZGF0ZVNlZWRhbmNlVmlkZW9JbnB1dCIsInZhbGlkYXRlU2VlZGFuY2VSZWZlcmVuY2VWaWRlb0lucHV0IiwidmFsaWRhdGVNYXJrZXRpbmdTdHVkaW9JbWFnZUlucHV0IiwiV2ViaG9va01lZGlhU2NoZW1hIiwiY29udGVudF90eXBlIiwiSGlnZ3NmaWVsZFdlYmhvb2tTY2hlbWEiLCJudWxsYWJsZSIsInBheWxvYWQiLCJpbWFnZXMiLCJ2aWRlbyIsInJlcXVlc3RfaWQiLCJyZWdleCIsInN0YXR1cyIsInBhcnNlSGlnZ3NmaWVsZFdlYmhvb2tQYXlsb2FkIiwiYm9keSIsInBhcnNlZCIsInNhZmVQYXJzZSIsInN1Y2Nlc3MiLCJkYXRhIl0sIm1hcHBpbmdzIjoiQUFBQTs7O0NBR0MsR0FDRCxTQUFRQSxDQUFDLFFBQU8sTUFBTTtBQUV0QixPQUFPLE1BQU1DLGtDQUFrQ0M7O0lBQzdDLFlBQVlDLE9BQWUsRUFBRSxBQUFPQyxLQUFjLENBQUU7UUFDbEQsS0FBSyxDQUFDRCxlQUQ0QkMsUUFBQUE7UUFFbEMsSUFBSSxDQUFDQyxJQUFJLEdBQUc7SUFDZDtBQUNGO0FBRUEsTUFBTUMsdUJBQXVCTixFQUFFTyxNQUFNLENBQUM7SUFDcENDLGFBQWFSLEVBQUVTLElBQUksQ0FBQztRQUFDO1FBQVE7UUFBUTtRQUFPO1FBQU87UUFBTztRQUFPO0tBQU0sRUFBRUMsUUFBUTtJQUNqRkMsV0FBV1gsRUFBRVksS0FBSyxDQUFDO1FBQUNaLEVBQUVhLE9BQU8sQ0FBQztRQUFJYixFQUFFYSxPQUFPLENBQUM7S0FBRyxFQUFFSCxRQUFRO0lBQ3pESSxlQUFlZCxFQUFFZSxPQUFPLEdBQUdMLFFBQVE7SUFDbkNNLFFBQVFoQixFQUFFaUIsTUFBTSxHQUFHQyxHQUFHLENBQUM7SUFDdkJDLFlBQVluQixFQUFFUyxJQUFJLENBQUM7UUFBQztRQUFRO0tBQVEsRUFBRUMsUUFBUTtJQUM5Q1UsTUFBTXBCLEVBQUVxQixNQUFNLEdBQUdDLEdBQUcsR0FBR0osR0FBRyxDQUFDLEdBQUdLLEdBQUcsQ0FBQyxXQUFXYixRQUFRO0lBQ3JEYyxTQUFTeEIsRUFBRWlCLE1BQU0sR0FBR1AsUUFBUTtBQUM5QixHQUFHZSxLQUFLO0FBRVIsTUFBTUMs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
@@ -0,0 +1,10 @@
1
+ /** Official public API catalog snapshot, verified 2026-09-22. Refresh from model-specific documentation. */
2
+ export interface HiggsfieldModel {
3
+ id: string;
4
+ kind: 'image' | 'video';
5
+ name: string;
6
+ schema: Record<string, unknown>;
7
+ source: string;
8
+ }
9
+ export declare const HIGGSFIELD_MODELS: HiggsfieldModel[];
10
+ export declare const getHiggsfieldModel: (id: string) => HiggsfieldModel;