@gmitch215/tinyimg 1.1.0 → 1.2.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.
- package/README.md +141 -10
- package/dist/image.d.ts +116 -2
- package/dist/image.d.ts.map +1 -1
- package/dist/image.js +222 -8
- package/dist/image.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/text.js +1 -1
- package/dist/text.js.map +1 -1
- package/dist/tinyimg.wasm +0 -0
- package/dist/transform.d.ts +7 -0
- package/dist/transform.d.ts.map +1 -1
- package/dist/transform.js +104 -14
- package/dist/transform.js.map +1 -1
- package/dist/types.d.ts +166 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +9 -1
- package/dist/types.js.map +1 -1
- package/dist/wasm.d.ts +58 -0
- package/dist/wasm.d.ts.map +1 -1
- package/dist/wasm.js +22 -4
- package/dist/wasm.js.map +1 -1
- package/package.json +6 -6
package/dist/transform.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { COMPRESSION, Image, mimeFor } from './image.js';
|
|
2
|
-
import { readSource } from './types.js';
|
|
2
|
+
import { Err, TinyImgBudgetError, readSource } from './types.js';
|
|
3
3
|
const ORDER = [
|
|
4
4
|
'crop',
|
|
5
5
|
'resize or fit',
|
|
@@ -70,21 +70,32 @@ export async function transform(module, source, options = {}) {
|
|
|
70
70
|
return passed;
|
|
71
71
|
const image = await Image.open(module, bytes);
|
|
72
72
|
try {
|
|
73
|
+
image.autoOrient();
|
|
73
74
|
apply(image, options);
|
|
74
75
|
let decided = image.decide();
|
|
75
|
-
const
|
|
76
|
+
const mode = options.admission;
|
|
77
|
+
const guarded = options.budgetMs !== undefined && mode !== undefined;
|
|
78
|
+
const scale = options.platformScale ?? 1;
|
|
79
|
+
const room = options.budgetMs === undefined ? undefined : options.budgetMs / scale;
|
|
80
|
+
const price = (format, level) => guarded
|
|
81
|
+
? encodeUpperMs(module, FORMAT_ID[format], decided, options, level)
|
|
82
|
+
: module.exports.tiny_encode_cost_at(FORMAT_ID[format], decided.output.width, decided.output.height, COMPRESSION.indexOf(level)) / 1000;
|
|
83
|
+
const format = chooseFormat(module, image, options, decided, guarded
|
|
84
|
+
? (candidate) => (decided.costUpperMs + price(candidate, 'auto')) * scale
|
|
85
|
+
: undefined);
|
|
76
86
|
let compression = options.compression;
|
|
77
|
-
if (options.budgetMs !== undefined) {
|
|
78
|
-
const
|
|
87
|
+
if (options.budgetMs !== undefined && mode !== 'strict') {
|
|
88
|
+
const budget = guarded ? room : options.budgetMs;
|
|
89
|
+
const priced = (level) => price(format, level);
|
|
79
90
|
if (compression === undefined && priced('none') < priced('default')) {
|
|
80
91
|
for (const level of ['default', 'fast', 'none']) {
|
|
81
92
|
compression = level;
|
|
82
|
-
if (
|
|
93
|
+
if (budget - priced(level) > 0)
|
|
83
94
|
break;
|
|
84
95
|
}
|
|
85
96
|
}
|
|
86
97
|
const encodeMs = priced(compression ?? 'auto');
|
|
87
|
-
image.budget(Math.max(0.001,
|
|
98
|
+
image.budget(Math.max(0.001, budget - encodeMs), guarded ? 'upper' : 'point');
|
|
88
99
|
decided = image.decide();
|
|
89
100
|
}
|
|
90
101
|
const encode = {
|
|
@@ -97,13 +108,65 @@ export async function transform(module, source, options = {}) {
|
|
|
97
108
|
...(options.effort === undefined ? {} : { effort: options.effort }),
|
|
98
109
|
...(compression === undefined ? {} : { compression })
|
|
99
110
|
};
|
|
100
|
-
const
|
|
111
|
+
const giveBack = async (error) => {
|
|
112
|
+
const info = await module.probe(bytes);
|
|
113
|
+
if (info.format === 'unknown' || info.format !== format) {
|
|
114
|
+
error.message = `${error.message}; cannot pass the source through because the output is ${format} and the source is ${info.format}`;
|
|
115
|
+
throw error;
|
|
116
|
+
}
|
|
117
|
+
const turned = info.orientation >= 5;
|
|
118
|
+
const view = bytes.buffer instanceof ArrayBuffer
|
|
119
|
+
? bytes
|
|
120
|
+
: new Uint8Array(bytes);
|
|
121
|
+
return result(view, info.format, turned ? info.height : info.width, turned ? info.width : info.height, false, ['passthrough']);
|
|
122
|
+
};
|
|
123
|
+
if (guarded) {
|
|
124
|
+
const verdict = image.admit(options.budgetMs, {
|
|
125
|
+
mode: mode === 'strict' ? 'strict' : 'degrade',
|
|
126
|
+
format,
|
|
127
|
+
platformScale: scale,
|
|
128
|
+
...(options.quality === undefined ? {} : { quality: options.quality }),
|
|
129
|
+
...(options.lossless === undefined ? {} : { lossless: options.lossless }),
|
|
130
|
+
...(options.effort === undefined ? {} : { effort: options.effort }),
|
|
131
|
+
...(compression === undefined ? {} : { compression })
|
|
132
|
+
});
|
|
133
|
+
if (verdict.decision === 'reject' && mode !== 'degrade') {
|
|
134
|
+
const error = boundError(module, verdict, options.budgetMs);
|
|
135
|
+
if (mode === 'strict')
|
|
136
|
+
throw error;
|
|
137
|
+
return giveBack(error);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
const dropped = module.alphaDropped();
|
|
141
|
+
let pending;
|
|
142
|
+
if (guarded)
|
|
143
|
+
module.exports.tiny_work_set_limit(Math.max(1, Math.ceil(room * 1000)));
|
|
144
|
+
try {
|
|
145
|
+
pending = image.bytes(format, encode);
|
|
146
|
+
}
|
|
147
|
+
finally {
|
|
148
|
+
if (guarded)
|
|
149
|
+
module.exports.tiny_work_set_limit(0);
|
|
150
|
+
}
|
|
151
|
+
const lost = module.alphaDropped() !== dropped;
|
|
152
|
+
let data;
|
|
153
|
+
try {
|
|
154
|
+
data = await pending;
|
|
155
|
+
}
|
|
156
|
+
catch (error) {
|
|
157
|
+
if (guarded && error instanceof TinyImgBudgetError) {
|
|
158
|
+
error.message = `the work counters passed the ${options.budgetMs} ms budget; ${error.message}`;
|
|
159
|
+
if (mode === 'passthrough')
|
|
160
|
+
return giveBack(error);
|
|
161
|
+
}
|
|
162
|
+
throw error;
|
|
163
|
+
}
|
|
101
164
|
const gave_up = compression !== undefined &&
|
|
102
165
|
compression !== 'default' &&
|
|
103
166
|
options.compression === undefined
|
|
104
167
|
? [...decided.degraded, 'compression']
|
|
105
168
|
: decided.degraded;
|
|
106
|
-
return result(data, format, decided.output.width, decided.output.height, image.sourceFrames > 1, gave_up);
|
|
169
|
+
return result(data, format, decided.output.width, decided.output.height, image.sourceFrames > 1, lost ? [...gave_up, 'alpha'] : gave_up);
|
|
107
170
|
}
|
|
108
171
|
finally {
|
|
109
172
|
image.dispose();
|
|
@@ -166,18 +229,21 @@ async function passThrough(module, bytes, options) {
|
|
|
166
229
|
const wanted = asked === 'auto' ? (module.has('webp') ? 'webp' : 'jpeg') : asked;
|
|
167
230
|
if (wanted !== undefined && wanted !== info.format)
|
|
168
231
|
return undefined;
|
|
232
|
+
const turned = info.orientation >= 5;
|
|
233
|
+
const shownWidth = turned ? info.height : info.width;
|
|
234
|
+
const shownHeight = turned ? info.width : info.height;
|
|
169
235
|
const width = options.width;
|
|
170
236
|
const height = options.height;
|
|
171
|
-
if (width !== undefined && width <
|
|
237
|
+
if (width !== undefined && width < shownWidth)
|
|
172
238
|
return undefined;
|
|
173
|
-
if (height !== undefined && height <
|
|
239
|
+
if (height !== undefined && height < shownHeight)
|
|
174
240
|
return undefined;
|
|
175
241
|
if (width !== undefined && height !== undefined)
|
|
176
242
|
return undefined;
|
|
177
243
|
const view = bytes.buffer instanceof ArrayBuffer
|
|
178
244
|
? bytes
|
|
179
245
|
: new Uint8Array(bytes);
|
|
180
|
-
return result(view, info.format,
|
|
246
|
+
return result(view, info.format, shownWidth, shownHeight);
|
|
181
247
|
}
|
|
182
248
|
const FORMAT_ID = {
|
|
183
249
|
png: 1,
|
|
@@ -190,14 +256,16 @@ const FORMAT_ID = {
|
|
|
190
256
|
heif: 8
|
|
191
257
|
};
|
|
192
258
|
const AUTO_ORDER = ['webp', 'jpeg'];
|
|
193
|
-
function chooseFormat(module, image, options, decided) {
|
|
259
|
+
function chooseFormat(module, image, options, decided, bound) {
|
|
194
260
|
const asked = options.format;
|
|
195
261
|
if (asked !== undefined && asked !== 'auto')
|
|
196
262
|
return asked;
|
|
197
263
|
const budget = options.budgetMs;
|
|
198
264
|
const { width, height } = decided.output;
|
|
199
|
-
const cost = (format) =>
|
|
200
|
-
|
|
265
|
+
const cost = (format) => bound
|
|
266
|
+
? bound(format)
|
|
267
|
+
: decided.estimateMs +
|
|
268
|
+
module.exports.tiny_encode_cost(FORMAT_ID[format], width, height) / 1000;
|
|
201
269
|
if (asked === 'auto') {
|
|
202
270
|
if (budget === undefined) {
|
|
203
271
|
return module.has('webp') ? 'webp' : 'jpeg';
|
|
@@ -211,6 +279,28 @@ function chooseFormat(module, image, options, decided) {
|
|
|
211
279
|
}
|
|
212
280
|
return source;
|
|
213
281
|
}
|
|
282
|
+
function encodeUpperMs(module, format, decided, options, level) {
|
|
283
|
+
const opts = module.alloc(8);
|
|
284
|
+
try {
|
|
285
|
+
const view = module.view();
|
|
286
|
+
view.setUint8(opts, options.quality ?? 0);
|
|
287
|
+
view.setUint8(opts + 1, options.lossless ? 1 : 0);
|
|
288
|
+
view.setUint8(opts + 2, COMPRESSION.indexOf(level));
|
|
289
|
+
view.setUint8(opts + 3, decided.output.channels);
|
|
290
|
+
view.setUint8(opts + 4, options.effort === 'fast' ? 1 : 0);
|
|
291
|
+
return (module.exports.tiny_encode_cost_upper_for(format, decided.output.width, decided.output.height, opts) / 1000);
|
|
292
|
+
}
|
|
293
|
+
finally {
|
|
294
|
+
module.free(opts);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
function boundError(module, admission, budgetMs) {
|
|
298
|
+
const error = new TinyImgBudgetError(Err.budget, module.errorName(Err.budget), `the upper bound ${admission.costUpperMs} ms is over the ${budgetMs} ms budget ` +
|
|
299
|
+
`(point estimate ${admission.costMs} ms, margin ${admission.marginMs} ms)`);
|
|
300
|
+
error.reason = 'bound';
|
|
301
|
+
error.admission = admission;
|
|
302
|
+
return error;
|
|
303
|
+
}
|
|
214
304
|
function result(data, format, width, height, flattened = false, degraded = []) {
|
|
215
305
|
const contentType = mimeFor(format);
|
|
216
306
|
return {
|
package/dist/transform.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/ts/transform.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../src/ts/transform.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -110,6 +110,39 @@ export interface TransformOptions {
|
|
|
110
110
|
* is a decision, and this option does not overrule it.
|
|
111
111
|
*/
|
|
112
112
|
budgetMs?: number;
|
|
113
|
+
/**
|
|
114
|
+
* What to do when `budgetMs` cannot be met. Read only beside `budgetMs`.
|
|
115
|
+
*
|
|
116
|
+
* - `'degrade'` takes the planner's levers, judged on the calibrated upper bound rather than
|
|
117
|
+
* the point estimate, and runs the cheapest request that results.
|
|
118
|
+
* - `'strict'` throws {@link TinyImgBudgetError} when the upper bound is over budget, and
|
|
119
|
+
* gives nothing up.
|
|
120
|
+
* - `'passthrough'` degrades as far as the ladder goes, and when even that does not fit
|
|
121
|
+
* returns the source bytes unchanged with `'passthrough'` in `degraded`.
|
|
122
|
+
*
|
|
123
|
+
* Leaving this unset keeps `budgetMs` exactly as it behaved before the option existed: the
|
|
124
|
+
* point estimate, no bound and no guard, so an existing caller sees no change. Naming
|
|
125
|
+
* `'degrade'` is the opt-in to the bound and the guard.
|
|
126
|
+
*
|
|
127
|
+
* Whatever the mode, an admitted request that turns out heavier than predicted stops itself
|
|
128
|
+
* when the work counted so far passes the budget: `'passthrough'` then returns the source,
|
|
129
|
+
* and the other two throw {@link TinyImgBudgetError}. The guard counts work rather than
|
|
130
|
+
* reading a clock, because a Worker's timers do not advance while code runs.
|
|
131
|
+
*
|
|
132
|
+
* A passthrough needs the output format to be the source's own, or none to be asked for;
|
|
133
|
+
* otherwise the same error is thrown and says why.
|
|
134
|
+
*
|
|
135
|
+
* The bound is a calibrated prediction under exchangeability, not a guarantee, and it is
|
|
136
|
+
* relative to the machine it was calibrated on; see {@link TransformOptions.platformScale}.
|
|
137
|
+
*/
|
|
138
|
+
admission?: 'degrade' | 'strict' | 'passthrough';
|
|
139
|
+
/**
|
|
140
|
+
* How much slower the machine running this is than the one the cost model was calibrated on.
|
|
141
|
+
* 1 means the same machine and is the default. A Worker ran the same module 1.90 times slower
|
|
142
|
+
* at the median and 2.4 to 4.7 times slower on cheap requests, so pass your own measured
|
|
143
|
+
* factor. The library never supplies one.
|
|
144
|
+
*/
|
|
145
|
+
platformScale?: number;
|
|
113
146
|
/** Quality for a lossy format, 1 through 100. */
|
|
114
147
|
quality?: number;
|
|
115
148
|
/**
|
|
@@ -125,7 +158,7 @@ export interface TransformOptions {
|
|
|
125
158
|
lossless?: boolean;
|
|
126
159
|
/** Write a progressive or interlaced stream. */
|
|
127
160
|
progressive?: boolean;
|
|
128
|
-
/**
|
|
161
|
+
/** Accepted for the encoders that write metadata. A transformation's output carries none. */
|
|
129
162
|
metadata?: MetadataPolicy;
|
|
130
163
|
}
|
|
131
164
|
/** A rectangle in pixels. */
|
|
@@ -166,6 +199,14 @@ export interface ImageInfo {
|
|
|
166
199
|
hasAlpha: boolean;
|
|
167
200
|
/** Whether this is a progressive JPEG, which cannot stream a region. */
|
|
168
201
|
progressive: boolean;
|
|
202
|
+
/**
|
|
203
|
+
* The orientation, 1 through 8, or 1 when there is none.
|
|
204
|
+
*
|
|
205
|
+
* Read from a JPEG's EXIF or an AVIF's `irot` and `imir` properties; every other format
|
|
206
|
+
* reports 1. `width` and `height` are the
|
|
207
|
+
* stored extent, so a value of 5 through 8 means the image displays with them swapped.
|
|
208
|
+
*/
|
|
209
|
+
orientation: number;
|
|
169
210
|
}
|
|
170
211
|
/** Decoded samples, with the extent they describe. */
|
|
171
212
|
export interface RawImage {
|
|
@@ -216,14 +257,29 @@ export interface PlanDecision {
|
|
|
216
257
|
/**
|
|
217
258
|
* What running this plan is expected to cost in milliseconds, before any encoder.
|
|
218
259
|
*
|
|
219
|
-
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
222
|
-
*
|
|
260
|
+
* A point estimate and not a promise: the rates behind it were timed on one machine. Over a
|
|
261
|
+
* held-out half of the calibration corpus its median absolute decode error is 1% for BMP, 7%
|
|
262
|
+
* for PNG, 9% for JPEG and AVIF, 16% for GIF, 17% for WebP and 57% for TIFF (which it prices
|
|
263
|
+
* from one multiplier although the compression coding spans 5x), and single requests spread
|
|
264
|
+
* wider; {@link PlanDecision.costUpperMs} is the
|
|
265
|
+
* bound for a question about whether work fits. Neither substitutes for measuring, which
|
|
266
|
+
* {@link TinyImgModule.measure} does.
|
|
223
267
|
*
|
|
224
268
|
* 0 when the source header could not be read.
|
|
225
269
|
*/
|
|
226
270
|
estimateMs: number;
|
|
271
|
+
/**
|
|
272
|
+
* A calibrated upper bound on {@link PlanDecision.estimateMs}, in the same unit, never below it.
|
|
273
|
+
*
|
|
274
|
+
* The decode phase scaled by a per-format factor from the 95th percentile of measured over
|
|
275
|
+
* estimated time on held-out calibration cells. A prediction bound under exchangeability, not
|
|
276
|
+
* a guarantee, and relative to the machine those cells were timed on (darwin, native node,
|
|
277
|
+
* the shipping module): a Worker runs the same module about 1.9x slower at the median, so
|
|
278
|
+
* scale it by your own machine factor before admitting work against a CPU limit.
|
|
279
|
+
*
|
|
280
|
+
* 0 when the source header could not be read.
|
|
281
|
+
*/
|
|
282
|
+
costUpperMs: number;
|
|
227
283
|
/**
|
|
228
284
|
* What the planner gave up to fit a budget, by name.
|
|
229
285
|
*
|
|
@@ -237,6 +293,94 @@ export interface PlanDecision {
|
|
|
237
293
|
*/
|
|
238
294
|
degraded: string[];
|
|
239
295
|
}
|
|
296
|
+
/**
|
|
297
|
+
* Whether a request fits a CPU budget, and the numbers behind the answer.
|
|
298
|
+
*
|
|
299
|
+
* Every figure is in milliseconds and already multiplied by the machine factor the caller gave,
|
|
300
|
+
* so `marginMs` is comparable to the budget as it was passed in. The upper bound is a prediction
|
|
301
|
+
* under exchangeability on the machine the model was calibrated on, not a guarantee.
|
|
302
|
+
*/
|
|
303
|
+
export interface Admission {
|
|
304
|
+
/**
|
|
305
|
+
* `'admit'` when the request fits as it is, `'degraded'` when it fits after the levers in
|
|
306
|
+
* `degraded`, and `'reject'` when it does not fit and, in degrade mode, no lever makes it.
|
|
307
|
+
*/
|
|
308
|
+
decision: 'admit' | 'degraded' | 'reject';
|
|
309
|
+
/** Point estimate of decode, resample and encode. */
|
|
310
|
+
costMs: number;
|
|
311
|
+
/** The calibrated upper bound on the same. */
|
|
312
|
+
costUpperMs: number;
|
|
313
|
+
/** The encoder's share of `costMs`. */
|
|
314
|
+
encodeMs: number;
|
|
315
|
+
/** The encoder's share of `costUpperMs`. */
|
|
316
|
+
encodeUpperMs: number;
|
|
317
|
+
/** Budget minus `costUpperMs`; negative when over. */
|
|
318
|
+
marginMs: number;
|
|
319
|
+
/** The levers the figures assume, as {@link PlanDecision.degraded} names them. */
|
|
320
|
+
degraded: string[];
|
|
321
|
+
}
|
|
322
|
+
/** What removed a candidate from a {@link Selection}, in the order the checks run. */
|
|
323
|
+
export type SelectReason = 'none' | 'format' | 'alpha' | 'uncharacterized' | 'peak' | 'quality' | 'budget';
|
|
324
|
+
/** One way of running a request that {@link Image.select} looked at. */
|
|
325
|
+
export interface SelectCandidate {
|
|
326
|
+
/** The output container. */
|
|
327
|
+
format: ImageFormat;
|
|
328
|
+
/** The encoder quality to write at; 0 for a format that takes none. */
|
|
329
|
+
quality: number;
|
|
330
|
+
/** Whether the coding is lossless. */
|
|
331
|
+
lossless: boolean;
|
|
332
|
+
/** What removed it, or `'none'` when it met every limit. */
|
|
333
|
+
reason: SelectReason;
|
|
334
|
+
/** Calibrated upper bound on decode, resample and encode, times `platformScale`; 0 when removed before it was priced. */
|
|
335
|
+
costUpperMs: number;
|
|
336
|
+
/** Upper bound on the heap the plan's run uses, in bytes. */
|
|
337
|
+
peakBytes: number;
|
|
338
|
+
/** Predicted PSNR against the undegraded output, from the fifth percentiles; undefined when unknown. */
|
|
339
|
+
db: number | undefined;
|
|
340
|
+
/** Predicted median encoded bytes for the whole output; undefined when unknown. */
|
|
341
|
+
bytes: number | undefined;
|
|
342
|
+
}
|
|
343
|
+
/** The candidate {@link Image.select} chose. */
|
|
344
|
+
export interface SelectChoice extends SelectCandidate {
|
|
345
|
+
/** Position in the plan's lattice, which {@link Image.bytesFor} runs. */
|
|
346
|
+
candidate: number;
|
|
347
|
+
/** Predicted median PSNR in dB, composed like `db`; undefined when unknown. */
|
|
348
|
+
dbMedian: number | undefined;
|
|
349
|
+
}
|
|
350
|
+
/** How often a fifth-percentile prediction held on images that were not in the fit. */
|
|
351
|
+
export interface SelectCoverage {
|
|
352
|
+
/** For the decode lever's table, at this source format; 0 when not measured. */
|
|
353
|
+
lever: number;
|
|
354
|
+
/** For the encoder's table, at the chosen format; 0 when not measured. */
|
|
355
|
+
encode: number;
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* What {@link Image.select} decided, and what it looked at.
|
|
359
|
+
*
|
|
360
|
+
* The predicted figures are table medians and percentiles measured on other images, so they are a
|
|
361
|
+
* prediction under exchangeability and not a guarantee. `db` is the PSNR against what this plan
|
|
362
|
+
* produces with no lever given up, composed from the lever's and the encoder's fifth percentiles;
|
|
363
|
+
* its measured out-of-sample coverage is in `coverage`. `bytes` is a median over 99 opaque images
|
|
364
|
+
* and says more about the order of two formats than about this image's size.
|
|
365
|
+
*/
|
|
366
|
+
export interface Selection {
|
|
367
|
+
/** Whether a candidate met every limit. When false, `reason` says which check the nearest miss failed. */
|
|
368
|
+
feasible: boolean;
|
|
369
|
+
/** The check the nearest miss failed; `'none'` when feasible. */
|
|
370
|
+
reason: SelectReason;
|
|
371
|
+
/** The choice; undefined when not feasible. */
|
|
372
|
+
choice: SelectChoice | undefined;
|
|
373
|
+
/** Width of the output image. */
|
|
374
|
+
width: number;
|
|
375
|
+
/** Height of the output image. */
|
|
376
|
+
height: number;
|
|
377
|
+
/** Whether the source was treated as having alpha, which makes `db` pessimistic and `bytes` omit the alpha plane. */
|
|
378
|
+
alpha: boolean;
|
|
379
|
+
/** Measured held-out coverage, 0 to 1, of the lever's fifth percentile for this source format. */
|
|
380
|
+
coverage: SelectCoverage;
|
|
381
|
+
/** Every candidate looked at, in search order. */
|
|
382
|
+
considered: SelectCandidate[];
|
|
383
|
+
}
|
|
240
384
|
/**
|
|
241
385
|
* A failed call.
|
|
242
386
|
*
|
|
@@ -298,6 +442,21 @@ export declare class TinyImgPlanError extends TinyImgError {
|
|
|
298
442
|
/** The error's class, for a caller matching on it without instanceof. */
|
|
299
443
|
readonly name = "TinyImgPlanError";
|
|
300
444
|
}
|
|
445
|
+
/**
|
|
446
|
+
* The request was over its CPU budget: refused up front in strict mode, or stopped part way by the
|
|
447
|
+
* work counters.
|
|
448
|
+
*
|
|
449
|
+
* `reason` says which. `admission` carries the numbers when the refusal came from the bound; a stop
|
|
450
|
+
* part way has the code `-15` from the module and no decision to report.
|
|
451
|
+
*/
|
|
452
|
+
export declare class TinyImgBudgetError extends TinyImgError {
|
|
453
|
+
/** The error's class, for a caller matching on it without instanceof. */
|
|
454
|
+
readonly name = "TinyImgBudgetError";
|
|
455
|
+
/** `'bound'` when the upper bound was over budget, `'work'` when the work counters stopped it. */
|
|
456
|
+
reason: 'bound' | 'work';
|
|
457
|
+
/** The decision and the numbers, set when `reason` is `'bound'`. */
|
|
458
|
+
admission?: Admission;
|
|
459
|
+
}
|
|
301
460
|
/** Error codes, mirroring `enum TinyImageError`. */
|
|
302
461
|
export declare const Err: {
|
|
303
462
|
/** The call succeeded. */
|
|
@@ -330,6 +489,8 @@ export declare const Err: {
|
|
|
330
489
|
readonly notFound: -13;
|
|
331
490
|
/** The plan is full, or holds an operation it cannot combine. */
|
|
332
491
|
readonly plan: -14;
|
|
492
|
+
/** The work clock passed the limit and the operation stopped itself. */
|
|
493
|
+
readonly budget: -15;
|
|
333
494
|
};
|
|
334
495
|
/**
|
|
335
496
|
* Builds the error for a code.
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/ts/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/ts/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -29,6 +29,11 @@ export class TinyImgBlobError extends TinyImgError {
|
|
|
29
29
|
export class TinyImgPlanError extends TinyImgError {
|
|
30
30
|
name = 'TinyImgPlanError';
|
|
31
31
|
}
|
|
32
|
+
export class TinyImgBudgetError extends TinyImgError {
|
|
33
|
+
name = 'TinyImgBudgetError';
|
|
34
|
+
reason = 'work';
|
|
35
|
+
admission;
|
|
36
|
+
}
|
|
32
37
|
export const Err = {
|
|
33
38
|
ok: 0,
|
|
34
39
|
null: -1,
|
|
@@ -44,7 +49,8 @@ export const Err = {
|
|
|
44
49
|
blobMissing: -11,
|
|
45
50
|
noChannel: -12,
|
|
46
51
|
notFound: -13,
|
|
47
|
-
plan: -14
|
|
52
|
+
plan: -14,
|
|
53
|
+
budget: -15
|
|
48
54
|
};
|
|
49
55
|
export function errorFor(code, codeName, context) {
|
|
50
56
|
switch (code) {
|
|
@@ -68,6 +74,8 @@ export function errorFor(code, codeName, context) {
|
|
|
68
74
|
return new TinyImgBlobError(code, codeName, context);
|
|
69
75
|
case Err.plan:
|
|
70
76
|
return new TinyImgPlanError(code, codeName, context);
|
|
77
|
+
case Err.budget:
|
|
78
|
+
return new TinyImgBudgetError(code, codeName, context);
|
|
71
79
|
default:
|
|
72
80
|
return new TinyImgError(code, codeName, context);
|
|
73
81
|
}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/ts/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/ts/types.ts"],"names":[],"mappings":"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"}
|