@topazlabs/mcp 0.1.3 → 0.1.4
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/api/models.d.ts +3 -3
- package/dist/api/models.d.ts.map +1 -1
- package/dist/api/models.js +4 -4
- package/dist/api/models.js.map +1 -1
- package/dist/server.js +1 -1
- package/dist/tools/enhance.js +5 -5
- package/dist/tools/enhance.js.map +1 -1
- package/package.json +1 -1
package/dist/api/models.d.ts
CHANGED
|
@@ -6,11 +6,11 @@ export interface ModelInfo {
|
|
|
6
6
|
}
|
|
7
7
|
export declare const ENHANCE_MODELS: Record<EnhanceModel, ModelInfo>;
|
|
8
8
|
export declare function isGenerativeEnhanceModel(model: string): model is EnhanceGenerativeModel;
|
|
9
|
-
/**
|
|
10
|
-
export declare const
|
|
9
|
+
/** 2K width threshold for default upscaling */
|
|
10
|
+
export declare const DEFAULT_TARGET_WIDTH = 2048;
|
|
11
11
|
/**
|
|
12
12
|
* Auto-select model based on image dimensions.
|
|
13
|
-
* Under
|
|
13
|
+
* Under 2K → Wonder (best for low-res), 2K+ → Standard V2.
|
|
14
14
|
*/
|
|
15
15
|
export declare function autoSelectModel(imageWidth: number): {
|
|
16
16
|
model: EnhanceModel;
|
package/dist/api/models.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/api/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAmD1D,CAAC;AAUF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,sBAAsB,CAEjC;AAED
|
|
1
|
+
{"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/api/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,WAAW,SAAS;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAmD1D,CAAC;AAUF,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,sBAAsB,CAEjC;AAED,+CAA+C;AAC/C,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG;IACnD,KAAK,EAAE,YAAY,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;CAC1B,CAKA"}
|
package/dist/api/models.js
CHANGED
|
@@ -60,14 +60,14 @@ const GENERATIVE_ENHANCE_MODELS = new Set([
|
|
|
60
60
|
export function isGenerativeEnhanceModel(model) {
|
|
61
61
|
return GENERATIVE_ENHANCE_MODELS.has(model);
|
|
62
62
|
}
|
|
63
|
-
/**
|
|
64
|
-
export const
|
|
63
|
+
/** 2K width threshold for default upscaling */
|
|
64
|
+
export const DEFAULT_TARGET_WIDTH = 2048;
|
|
65
65
|
/**
|
|
66
66
|
* Auto-select model based on image dimensions.
|
|
67
|
-
* Under
|
|
67
|
+
* Under 2K → Wonder (best for low-res), 2K+ → Standard V2.
|
|
68
68
|
*/
|
|
69
69
|
export function autoSelectModel(imageWidth) {
|
|
70
|
-
if (imageWidth <
|
|
70
|
+
if (imageWidth < DEFAULT_TARGET_WIDTH) {
|
|
71
71
|
return { model: "Wonder", faceEnhancement: false };
|
|
72
72
|
}
|
|
73
73
|
return { model: "Standard V2", faceEnhancement: true };
|
package/dist/api/models.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/api/models.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,aAAa,EAAE;QACb,WAAW,EAAE,sCAAsC;QACnD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,gBAAgB;KAC1B;IACD,mBAAmB,EAAE;QACnB,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,yBAAyB;KACnC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,uDAAuD;QACpE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,iCAAiC;KAC3C;IACD,kBAAkB,EAAE;QAClB,WAAW,EAAE,sDAAsD;QACnE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,qCAAqC;KAC/C;IACD,aAAa,EAAE;QACb,WAAW,EAAE,uCAAuC;QACpD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,2CAA2C;KACrD;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,iCAAiC;QAC9C,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,2BAA2B;KACrC;IACD,aAAa,EAAE;QACb,WAAW,EAAE,mDAAmD;QAChE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,4BAA4B;KACtC;IACD,cAAc,EAAE;QACd,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,6BAA6B;KACvC;IACD,MAAM,EAAE;QACN,WAAW,EAAE,0DAA0D;QACvE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,6BAA6B;KACvC;IACD,KAAK,EAAE;QACL,WAAW,EAAE,0CAA0C;QACvD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,wCAAwC;KAClD;CACF,CAAC;AAEF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAS;IAChD,UAAU;IACV,aAAa;IACb,cAAc;IACd,QAAQ;IACR,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,wBAAwB,CACtC,KAAa;IAEb,OAAO,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/api/models.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,cAAc,GAAoC;IAC7D,aAAa,EAAE;QACb,WAAW,EAAE,sCAAsC;QACnD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,gBAAgB;KAC1B;IACD,mBAAmB,EAAE;QACnB,WAAW,EAAE,2CAA2C;QACxD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,yBAAyB;KACnC;IACD,GAAG,EAAE;QACH,WAAW,EAAE,uDAAuD;QACpE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,iCAAiC;KAC3C;IACD,kBAAkB,EAAE;QAClB,WAAW,EAAE,sDAAsD;QACnE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,qCAAqC;KAC/C;IACD,aAAa,EAAE;QACb,WAAW,EAAE,uCAAuC;QACpD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,2CAA2C;KACrD;IACD,QAAQ,EAAE;QACR,WAAW,EAAE,iCAAiC;QAC9C,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,2BAA2B;KACrC;IACD,aAAa,EAAE;QACb,WAAW,EAAE,mDAAmD;QAChE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,4BAA4B;KACtC;IACD,cAAc,EAAE;QACd,WAAW,EAAE,wCAAwC;QACrD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,6BAA6B;KACvC;IACD,MAAM,EAAE;QACN,WAAW,EAAE,0DAA0D;QACvE,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,6BAA6B;KACvC;IACD,KAAK,EAAE;QACL,WAAW,EAAE,0CAA0C;QACvD,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,wCAAwC;KAClD;CACF,CAAC;AAEF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAS;IAChD,UAAU;IACV,aAAa;IACb,cAAc;IACd,QAAQ;IACR,OAAO;CACR,CAAC,CAAC;AAEH,MAAM,UAAU,wBAAwB,CACtC,KAAa;IAEb,OAAO,yBAAyB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB;IAIhD,IAAI,UAAU,GAAG,oBAAoB,EAAE,CAAC;QACtC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AACzD,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -55,7 +55,7 @@ export function createServer() {
|
|
|
55
55
|
scale: z.number().min(0.1).max(16).optional(),
|
|
56
56
|
})
|
|
57
57
|
.optional()
|
|
58
|
-
.describe("Output size. {width, height} for exact, {width} or {height} for proportional, {scale} for multiplier. Blank auto-upscales to
|
|
58
|
+
.describe("Output size. {width, height} for exact, {width} or {height} for proportional, {scale} for multiplier. Blank auto-upscales to 2K."),
|
|
59
59
|
model: z
|
|
60
60
|
.string()
|
|
61
61
|
.optional()
|
package/dist/tools/enhance.js
CHANGED
|
@@ -4,15 +4,15 @@ import * as path from "node:path";
|
|
|
4
4
|
import sharp from "sharp";
|
|
5
5
|
import { loadImage } from "../lib/fetch-url.js";
|
|
6
6
|
import { readImageFile } from "../api/client.js";
|
|
7
|
-
import { autoSelectModel, ENHANCE_MODELS,
|
|
7
|
+
import { autoSelectModel, ENHANCE_MODELS, DEFAULT_TARGET_WIDTH } from "../api/models.js";
|
|
8
8
|
/** Parse the size parameter into target pixel dimensions. */
|
|
9
9
|
export function resolveSize(size, origWidth, origHeight) {
|
|
10
10
|
if (!size || Object.keys(size).length === 0) {
|
|
11
|
-
// Default: if under
|
|
12
|
-
if (origWidth <
|
|
13
|
-
const scale =
|
|
11
|
+
// Default: if under 2K, upscale to 2K width proportionally. Otherwise keep at 1x.
|
|
12
|
+
if (origWidth < DEFAULT_TARGET_WIDTH) {
|
|
13
|
+
const scale = DEFAULT_TARGET_WIDTH / origWidth;
|
|
14
14
|
return {
|
|
15
|
-
width:
|
|
15
|
+
width: DEFAULT_TARGET_WIDTH,
|
|
16
16
|
height: Math.round(origHeight * scale),
|
|
17
17
|
};
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enhance.js","sourceRoot":"","sources":["../../src/tools/enhance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAe,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"enhance.js","sourceRoot":"","sources":["../../src/tools/enhance.ts"],"names":[],"mappings":"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"}
|