@design-edito/tools 0.1.65 → 0.1.66
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/agnostic/arrays/index.js +7 -7
- package/agnostic/arrays/random-pick/index.js +4 -4
- package/agnostic/colors/index.js +9 -9
- package/agnostic/css/index.js +8 -8
- package/agnostic/css/styles-set/index.js +4 -4
- package/agnostic/errors/index.js +2 -2
- package/agnostic/html/index.js +9 -9
- package/agnostic/html/sanitize/index.js +4 -4
- package/agnostic/html/selector-to-element/index.js +4 -4
- package/agnostic/html/string-to-nodes/index.js +5 -5
- package/agnostic/misc/assert/index.js +3 -3
- package/agnostic/misc/index.js +15 -15
- package/agnostic/misc/logs/index.js +2 -2
- package/agnostic/misc/lorem-ipsum/index.js +8 -8
- package/agnostic/numbers/index.js +4 -4
- package/agnostic/objects/index.js +8 -8
- package/agnostic/optim/index.js +3 -3
- package/agnostic/strings/index.js +3 -3
- package/agnostic/time/index.js +3 -3
- package/chunks/chunk-2KT7AKRW.js +17 -0
- package/chunks/chunk-3UM5CZA5.js +18 -0
- package/chunks/chunk-662SOZWA.js +19 -0
- package/chunks/chunk-6EIF24H5.js +35 -0
- package/chunks/chunk-6IZ5HUJJ.js +21 -0
- package/chunks/chunk-7Z7CKAOH.js +98 -0
- package/chunks/chunk-BGZ5OVVN.js +20 -0
- package/chunks/chunk-C3ZKLONL.js +21 -0
- package/chunks/chunk-C7SRAQMW.js +29 -0
- package/chunks/chunk-CM6AHRTS.js +16 -0
- package/chunks/chunk-CQEDNACN.js +28 -0
- package/chunks/chunk-D33KC6NN.js +18 -0
- package/chunks/chunk-D47ZPEUU.js +22 -0
- package/chunks/chunk-E3GK7YZ7.js +65 -0
- package/chunks/chunk-E4FJHD5R.js +67 -0
- package/chunks/chunk-FCLAFRIW.js +177 -0
- package/chunks/chunk-G2M3VECP.js +20 -0
- package/chunks/chunk-G3HAKMUB.js +79 -0
- package/chunks/chunk-HALUZA2X.js +16 -0
- package/chunks/chunk-KN23H4CI.js +20 -0
- package/chunks/chunk-LNSDOGTR.js +63 -0
- package/chunks/chunk-LSOHLSF5.js +32 -0
- package/chunks/chunk-MXGGOCLX.js +56 -0
- package/chunks/chunk-NAP2XNYN.js +23 -0
- package/chunks/chunk-P2H6PV4O.js +26 -0
- package/chunks/chunk-P5OGBBGM.js +37 -0
- package/chunks/chunk-PENYZ6S7.js +31 -0
- package/chunks/chunk-PSP2DKDH.js +151 -0
- package/chunks/chunk-RCWLMVSZ.js +164 -0
- package/chunks/chunk-RDQJSWRC.js +127 -0
- package/chunks/chunk-T2T5BYTW.js +18 -0
- package/chunks/chunk-U7R6TPHR.js +15 -0
- package/chunks/chunk-UNHNZAVP.js +18 -0
- package/chunks/chunk-VQUF2TSY.js +191 -0
- package/chunks/chunk-W6JPRXQ4.js +16 -0
- package/chunks/chunk-WR64YJNW.js +20 -0
- package/chunks/chunk-WRRA3BN4.js +31 -0
- package/chunks/chunk-X244JGZD.js +69 -0
- package/chunks/chunk-X5HMM3LD.js +35 -0
- package/chunks/chunk-XJ23DJY4.js +173 -0
- package/chunks/chunk-YCSC7QNV.js +30 -0
- package/chunks/chunk-YE67BQQN.js +4072 -0
- package/chunks/chunk-YEYXAV23.js +16 -0
- package/chunks/chunk-Z4PVE6SR.js +21 -0
- package/chunks/chunk-ZMMNN3QA.js +16 -0
- package/node/@aws-s3/index.js +3 -3
- package/node/@aws-s3/storage/file/index.js +4 -4
- package/node/@aws-s3/storage/index.js +3 -3
- package/node/@google-cloud/index.js +9 -9
- package/node/@google-cloud/storage/bucket/index.js +4 -4
- package/node/@google-cloud/storage/file/index.js +14 -14
- package/node/@google-cloud/storage/file/revoke-signed-urls/index.js +2 -2
- package/node/@google-cloud/storage/index.js +9 -9
- package/node/cloud-storage/index.js +12 -12
- package/node/cloud-storage/operations/index.js +8 -8
- package/node/encryption/index.js +3 -3
- package/node/ftps/file/index.js +4 -4
- package/node/ftps/index.js +2 -2
- package/node/images/index.js +34 -34
- package/node/images/prepare/index.js +34 -34
- package/node/images/transform/_utils/color-schema/index.js +2 -2
- package/node/images/transform/_utils/positions/index.js +2 -2
- package/node/images/transform/blur/index.js +2 -2
- package/node/images/transform/brighten/index.js +2 -2
- package/node/images/transform/compose/index.js +4 -4
- package/node/images/transform/extend/index.js +3 -3
- package/node/images/transform/extract/index.js +2 -2
- package/node/images/transform/flatten/index.js +3 -3
- package/node/images/transform/flip/index.js +2 -2
- package/node/images/transform/flop/index.js +2 -2
- package/node/images/transform/frame/backgrounds/create-line-background/index.js +2 -2
- package/node/images/transform/frame/backgrounds/create-tile-background/index.js +2 -2
- package/node/images/transform/frame/index.js +6 -6
- package/node/images/transform/hue-rotate/index.js +2 -2
- package/node/images/transform/index.js +33 -33
- package/node/images/transform/lighten/index.js +2 -2
- package/node/images/transform/lineate-levels/index.js +2 -2
- package/node/images/transform/modulate/index.js +2 -2
- package/node/images/transform/normalize/index.js +2 -2
- package/node/images/transform/operations/_utils/frame/backgrounds/create-line-background/index.js +3 -3
- package/node/images/transform/operations/_utils/frame/create-color-palette/index.js +4 -4
- package/node/images/transform/operations/_utils/frame/index.js +7 -7
- package/node/images/transform/resize/index.js +3 -3
- package/node/images/transform/rotate/index.js +2 -2
- package/node/images/transform/saturate/index.js +2 -2
- package/node/images/transform/scale/index.js +3 -3
- package/node/sftp/file/index.js +4 -4
- package/node/sftp/index.js +2 -2
- package/package.json +10 -11
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import {
|
|
2
|
+
extractColorsFromImage
|
|
3
|
+
} from "./chunk-ZRWVPWQC.js";
|
|
4
|
+
import {
|
|
5
|
+
clamp
|
|
6
|
+
} from "./chunk-OSAXBA7G.js";
|
|
7
|
+
import {
|
|
8
|
+
lightenColor
|
|
9
|
+
} from "./chunk-U57Q62IN.js";
|
|
10
|
+
import {
|
|
11
|
+
saturateColor
|
|
12
|
+
} from "./chunk-MB7HWF22.js";
|
|
13
|
+
import {
|
|
14
|
+
complementColor
|
|
15
|
+
} from "./chunk-2POD3TAX.js";
|
|
16
|
+
import {
|
|
17
|
+
shuffle
|
|
18
|
+
} from "./chunk-VJJIYJMY.js";
|
|
19
|
+
|
|
20
|
+
// src/node/images/transform/operations/_utils/frame/create-color-palette/index.ts
|
|
21
|
+
function densifyPalette(RGBColors, types, ligthenIntensity, saturateIntensity) {
|
|
22
|
+
const densifiedPalette = [];
|
|
23
|
+
const complementaryRGBColors = RGBColors.map((color) => complementColor(color));
|
|
24
|
+
if (!types) {
|
|
25
|
+
return RGBColors;
|
|
26
|
+
}
|
|
27
|
+
if (types.includes("default")) {
|
|
28
|
+
densifiedPalette.push(...RGBColors);
|
|
29
|
+
}
|
|
30
|
+
if (types.includes("default-lighten")) {
|
|
31
|
+
densifiedPalette.push(...RGBColors.map((RGBColor) => lightenColor(RGBColor, ligthenIntensity || 0)));
|
|
32
|
+
}
|
|
33
|
+
if (types.includes("default-saturate")) {
|
|
34
|
+
densifiedPalette.push(...RGBColors.map((RGBColor) => saturateColor(RGBColor, saturateIntensity)));
|
|
35
|
+
}
|
|
36
|
+
if (types.includes("complementary")) {
|
|
37
|
+
densifiedPalette.push(...complementaryRGBColors);
|
|
38
|
+
}
|
|
39
|
+
if (types.includes("complementary-lighten")) {
|
|
40
|
+
densifiedPalette.push(...complementaryRGBColors.map((RGBColor) => lightenColor(RGBColor, ligthenIntensity || 0)));
|
|
41
|
+
}
|
|
42
|
+
if (types.includes("complementary-saturate")) {
|
|
43
|
+
densifiedPalette.push(...RGBColors.map((RGBColor) => saturateColor(RGBColor, saturateIntensity)));
|
|
44
|
+
}
|
|
45
|
+
return densifiedPalette;
|
|
46
|
+
}
|
|
47
|
+
function createColorPalette(image, createPalette) {
|
|
48
|
+
if (!createPalette) {
|
|
49
|
+
return [
|
|
50
|
+
[0, 0, 0],
|
|
51
|
+
[0, 0, 0],
|
|
52
|
+
[0, 0, 0],
|
|
53
|
+
[0, 0, 0],
|
|
54
|
+
[0, 0, 0]
|
|
55
|
+
];
|
|
56
|
+
}
|
|
57
|
+
const colorPalette = [];
|
|
58
|
+
if ("extract" in createPalette && createPalette.extract) {
|
|
59
|
+
colorPalette.push(
|
|
60
|
+
...extractColorsFromImage(
|
|
61
|
+
{
|
|
62
|
+
buffer: image.buffer,
|
|
63
|
+
dimensions: image.dimensions,
|
|
64
|
+
nbChannels: image.nbChannels
|
|
65
|
+
},
|
|
66
|
+
createPalette.extract.nbColor
|
|
67
|
+
)
|
|
68
|
+
);
|
|
69
|
+
}
|
|
70
|
+
if ("use" in createPalette && createPalette.use) {
|
|
71
|
+
colorPalette.push(...createPalette.use.RGBColors);
|
|
72
|
+
}
|
|
73
|
+
if ("densify" in createPalette && createPalette.densify) {
|
|
74
|
+
colorPalette.push(
|
|
75
|
+
...densifyPalette(
|
|
76
|
+
colorPalette,
|
|
77
|
+
createPalette.densify.types,
|
|
78
|
+
createPalette.densify.ligthenIntensity,
|
|
79
|
+
createPalette.densify.saturateIntensity
|
|
80
|
+
)
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
if ("compose" in createPalette && createPalette.compose) {
|
|
84
|
+
if ("nbColor" in createPalette.compose) {
|
|
85
|
+
const maxNbColor = createPalette.compose.nbColor ? clamp(createPalette.compose.nbColor, 0, colorPalette.length) : colorPalette.length;
|
|
86
|
+
colorPalette.splice(0, maxNbColor);
|
|
87
|
+
}
|
|
88
|
+
if ("mix" in createPalette.compose) {
|
|
89
|
+
return shuffle(colorPalette);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return colorPalette;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export {
|
|
96
|
+
densifyPalette,
|
|
97
|
+
createColorPalette
|
|
98
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
upload_exports
|
|
3
|
+
} from "./chunk-H7LDIXVY.js";
|
|
4
|
+
import {
|
|
5
|
+
download_exports
|
|
6
|
+
} from "./chunk-XF5QBETN.js";
|
|
7
|
+
import {
|
|
8
|
+
__export
|
|
9
|
+
} from "./chunk-NZLE2WMY.js";
|
|
10
|
+
|
|
11
|
+
// src/node/cloud-storage/operations/index.ts
|
|
12
|
+
var operations_exports = {};
|
|
13
|
+
__export(operations_exports, {
|
|
14
|
+
Download: () => download_exports,
|
|
15
|
+
Upload: () => upload_exports
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
operations_exports
|
|
20
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
OperationNames
|
|
3
|
+
} from "./chunk-MOVLLUDL.js";
|
|
4
|
+
import {
|
|
5
|
+
esm_default
|
|
6
|
+
} from "./chunk-YE67BQQN.js";
|
|
7
|
+
|
|
8
|
+
// src/node/images/transform/extract/index.ts
|
|
9
|
+
var extractSchema = esm_default.object({
|
|
10
|
+
name: esm_default.literal(OperationNames.Extract),
|
|
11
|
+
params: esm_default.object({
|
|
12
|
+
width: esm_default.number(),
|
|
13
|
+
height: esm_default.number(),
|
|
14
|
+
left: esm_default.number(),
|
|
15
|
+
top: esm_default.number()
|
|
16
|
+
})
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export {
|
|
20
|
+
extractSchema
|
|
21
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import {
|
|
2
|
+
register
|
|
3
|
+
} from "./chunk-P2H6PV4O.js";
|
|
4
|
+
|
|
5
|
+
// src/agnostic/arrays/random-pick/index.ts
|
|
6
|
+
function randomPick(arr, exclude = []) {
|
|
7
|
+
const filteredArr = [...arr].filter((elt) => !exclude.includes(elt));
|
|
8
|
+
const length = filteredArr.length;
|
|
9
|
+
if (length === 0) throw register.getError("impossible-to-pick-in-array" /* IMPOSSIBLE_TO_PICK_IN_ARRAY */, arr);
|
|
10
|
+
const pos = Math.floor(Math.random() * length);
|
|
11
|
+
const found = filteredArr[pos];
|
|
12
|
+
return found;
|
|
13
|
+
}
|
|
14
|
+
function randomPickMany(howMuch, arr, exclude = []) {
|
|
15
|
+
const grindedArr = [...arr];
|
|
16
|
+
const pickedSelection = [];
|
|
17
|
+
for (let i = 0; i < howMuch; i++) {
|
|
18
|
+
const picked = randomPick(grindedArr, exclude);
|
|
19
|
+
const indexOfPicked = grindedArr.indexOf(picked);
|
|
20
|
+
grindedArr.splice(indexOfPicked, 1);
|
|
21
|
+
pickedSelection.push(picked);
|
|
22
|
+
}
|
|
23
|
+
return pickedSelection;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export {
|
|
27
|
+
randomPick,
|
|
28
|
+
randomPickMany
|
|
29
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
OperationNames
|
|
3
|
+
} from "./chunk-MOVLLUDL.js";
|
|
4
|
+
import {
|
|
5
|
+
esm_default
|
|
6
|
+
} from "./chunk-YE67BQQN.js";
|
|
7
|
+
|
|
8
|
+
// src/node/images/transform/brighten/index.ts
|
|
9
|
+
var brightenSchema = esm_default.object({
|
|
10
|
+
name: esm_default.literal(OperationNames.Brighten),
|
|
11
|
+
params: esm_default.number().min(0)
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
brightenSchema
|
|
16
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Sanitize
|
|
3
|
+
} from "./chunk-RDQJSWRC.js";
|
|
4
|
+
import {
|
|
5
|
+
register
|
|
6
|
+
} from "./chunk-P2H6PV4O.js";
|
|
7
|
+
|
|
8
|
+
// src/agnostic/html/string-to-nodes/index.ts
|
|
9
|
+
function stringToNodes(dirtyStr, options) {
|
|
10
|
+
const actualDocument = options?.documentObj ?? window.document;
|
|
11
|
+
if (actualDocument === null) throw register.getError("no-window-document-on-runtime-please-provide" /* NO_DOCUMENT_PLEASE_PROVIDE */, "See documentObj in the options object");
|
|
12
|
+
const sanitizeOptions = {
|
|
13
|
+
...options?.sanitize,
|
|
14
|
+
documentObj: options?.sanitize?.documentObj ?? options?.documentObj
|
|
15
|
+
};
|
|
16
|
+
const str = options?.sanitize !== void 0 ? Sanitize.sanitize(dirtyStr, sanitizeOptions) : dirtyStr;
|
|
17
|
+
const wrapperDiv = actualDocument.createElement("div");
|
|
18
|
+
wrapperDiv.innerHTML = str;
|
|
19
|
+
const nodes = Array.from(wrapperDiv.childNodes).filter((node) => {
|
|
20
|
+
const allowedNodeTypes = [Node.ELEMENT_NODE, Node.TEXT_NODE];
|
|
21
|
+
return allowedNodeTypes.includes(node.nodeType);
|
|
22
|
+
});
|
|
23
|
+
return nodes;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export {
|
|
27
|
+
stringToNodes
|
|
28
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
OperationNames
|
|
3
|
+
} from "./chunk-MOVLLUDL.js";
|
|
4
|
+
import {
|
|
5
|
+
esm_default
|
|
6
|
+
} from "./chunk-YE67BQQN.js";
|
|
7
|
+
|
|
8
|
+
// src/node/images/transform/rotate/index.ts
|
|
9
|
+
var rotateSchema = esm_default.object({
|
|
10
|
+
name: esm_default.literal(OperationNames.Rotate),
|
|
11
|
+
params: esm_default.object({
|
|
12
|
+
angle: esm_default.number()
|
|
13
|
+
})
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
export {
|
|
17
|
+
rotateSchema
|
|
18
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import {
|
|
2
|
+
esm_default
|
|
3
|
+
} from "./chunk-YE67BQQN.js";
|
|
4
|
+
|
|
5
|
+
// src/node/images/transform/_utils/positions/index.ts
|
|
6
|
+
var positionSchema = esm_default.union([
|
|
7
|
+
esm_default.number().min(0),
|
|
8
|
+
esm_default.string()
|
|
9
|
+
]).optional();
|
|
10
|
+
var positionsSchema = esm_default.object({
|
|
11
|
+
top: positionSchema,
|
|
12
|
+
left: positionSchema,
|
|
13
|
+
bottom: positionSchema,
|
|
14
|
+
right: positionSchema,
|
|
15
|
+
translateX: positionSchema,
|
|
16
|
+
translateY: positionSchema
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export {
|
|
20
|
+
positionSchema,
|
|
21
|
+
positionsSchema
|
|
22
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import {
|
|
2
|
+
esm_default
|
|
3
|
+
} from "./chunk-YE67BQQN.js";
|
|
4
|
+
|
|
5
|
+
// src/node/images/transform/frame/backgrounds/create-tile-background/index.ts
|
|
6
|
+
var TransitionNames = [
|
|
7
|
+
"linear",
|
|
8
|
+
"ease-in-quad",
|
|
9
|
+
"ease-out-quad",
|
|
10
|
+
"ease-in-out-quad",
|
|
11
|
+
"ease-in-cubic",
|
|
12
|
+
"ease-out-cubic",
|
|
13
|
+
"ease-in-out-cubic",
|
|
14
|
+
"ease-in-quart",
|
|
15
|
+
"ease-out-quart",
|
|
16
|
+
"ease-in-out-quart",
|
|
17
|
+
"ease-in-quint",
|
|
18
|
+
"ease-out-quint",
|
|
19
|
+
"ease-in-out-quint",
|
|
20
|
+
"ease-in-sine",
|
|
21
|
+
"ease-out-sine",
|
|
22
|
+
"ease-in-out-sine",
|
|
23
|
+
"ease-in-expo",
|
|
24
|
+
"ease-out-expo",
|
|
25
|
+
"ease-in-out-expo",
|
|
26
|
+
"ease-in-circ",
|
|
27
|
+
"ease-out-circ",
|
|
28
|
+
"ease-in-out-circ",
|
|
29
|
+
"ease-in-back",
|
|
30
|
+
"ease-out-back",
|
|
31
|
+
"ease-in-out-back",
|
|
32
|
+
"ease-in-elastic",
|
|
33
|
+
"ease-out-elastic",
|
|
34
|
+
"ease-in-out-elastic",
|
|
35
|
+
"ease-in-bounce",
|
|
36
|
+
"ease-out-bounce",
|
|
37
|
+
"ease-in-out-bounce"
|
|
38
|
+
];
|
|
39
|
+
var createTileBackgroundSchema = esm_default.object({
|
|
40
|
+
type: esm_default.literal("tile"),
|
|
41
|
+
params: esm_default.object({
|
|
42
|
+
coverageRatio: esm_default.number(),
|
|
43
|
+
densityA: esm_default.object({
|
|
44
|
+
min: esm_default.number(),
|
|
45
|
+
max: esm_default.number()
|
|
46
|
+
}),
|
|
47
|
+
densityB: esm_default.object({
|
|
48
|
+
min: esm_default.number(),
|
|
49
|
+
max: esm_default.number()
|
|
50
|
+
}),
|
|
51
|
+
format: esm_default.enum([
|
|
52
|
+
"random",
|
|
53
|
+
"default",
|
|
54
|
+
"portrait",
|
|
55
|
+
"landscape"
|
|
56
|
+
]),
|
|
57
|
+
xEasing: esm_default.enum(TransitionNames),
|
|
58
|
+
yEasing: esm_default.enum(TransitionNames)
|
|
59
|
+
})
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
export {
|
|
63
|
+
TransitionNames,
|
|
64
|
+
createTileBackgroundSchema
|
|
65
|
+
};
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Outcome
|
|
3
|
+
} from "./chunk-JMU5PDBD.js";
|
|
4
|
+
import {
|
|
5
|
+
Errors
|
|
6
|
+
} from "./chunk-2KT7AKRW.js";
|
|
7
|
+
|
|
8
|
+
// src/agnostic/misc/assert/index.ts
|
|
9
|
+
var Assert;
|
|
10
|
+
((Assert2) => {
|
|
11
|
+
function makeSuccess(label) {
|
|
12
|
+
const formattedLabel = label.split("\n").join("\n ");
|
|
13
|
+
console.info(`\u2705 SUCCESS:
|
|
14
|
+
${formattedLabel}`);
|
|
15
|
+
}
|
|
16
|
+
function makeFailure(label) {
|
|
17
|
+
const formattedLabel = label.split("\n").join("\n ");
|
|
18
|
+
throw new Error(`\u{1F6AB} FAILURE:
|
|
19
|
+
${formattedLabel}`);
|
|
20
|
+
}
|
|
21
|
+
async function assert(label, assertion) {
|
|
22
|
+
if (typeof assertion === "boolean") return assertion ? Outcome.makeSuccess(label) : Outcome.makeFailure(label);
|
|
23
|
+
else if (typeof assertion === "function") {
|
|
24
|
+
try {
|
|
25
|
+
const result = await assertion();
|
|
26
|
+
if (result === false) return Outcome.makeFailure(label);
|
|
27
|
+
else return Outcome.makeSuccess(label);
|
|
28
|
+
} catch (err) {
|
|
29
|
+
const errStr = Errors.unknownToString(err);
|
|
30
|
+
return Outcome.makeFailure(`${label} / ${errStr}`);
|
|
31
|
+
}
|
|
32
|
+
} else {
|
|
33
|
+
let assertions;
|
|
34
|
+
if (Array.isArray(assertion)) {
|
|
35
|
+
assertions = [...assertion].map((a, p) => [`${p}`, a]);
|
|
36
|
+
} else if (assertion instanceof Map) {
|
|
37
|
+
assertions = Array.from(assertion);
|
|
38
|
+
} else {
|
|
39
|
+
assertions = Object.entries(assertion);
|
|
40
|
+
}
|
|
41
|
+
const allAsserted = await Promise.all(assertions.map(([innerLabel, innerAssertion]) => {
|
|
42
|
+
const fullLabel = `${label} / ${innerLabel}`;
|
|
43
|
+
const asserted = assert(fullLabel, innerAssertion);
|
|
44
|
+
return asserted;
|
|
45
|
+
}));
|
|
46
|
+
const allSuccess = allAsserted.every((asserted) => asserted.success);
|
|
47
|
+
if (allSuccess) return Outcome.makeSuccess(allAsserted.map((e) => e.payload).join("\n"));
|
|
48
|
+
const failures = allAsserted.filter((asserted) => asserted.success === false);
|
|
49
|
+
const failuresStr = failures.map((failure) => failure.error).join("\n ");
|
|
50
|
+
return Outcome.makeFailure(failuresStr);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
Assert2.assert = assert;
|
|
54
|
+
async function assertVerbose(label, assertion) {
|
|
55
|
+
const asserted = await assert(label, assertion);
|
|
56
|
+
if (asserted?.success) {
|
|
57
|
+
makeSuccess(asserted.payload);
|
|
58
|
+
return asserted;
|
|
59
|
+
}
|
|
60
|
+
return makeFailure(asserted.error);
|
|
61
|
+
}
|
|
62
|
+
Assert2.assertVerbose = assertVerbose;
|
|
63
|
+
})(Assert || (Assert = {}));
|
|
64
|
+
|
|
65
|
+
export {
|
|
66
|
+
Assert
|
|
67
|
+
};
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
import {
|
|
2
|
+
frame
|
|
3
|
+
} from "./chunk-RCWLMVSZ.js";
|
|
4
|
+
import {
|
|
5
|
+
frameSchema
|
|
6
|
+
} from "./chunk-X244JGZD.js";
|
|
7
|
+
import {
|
|
8
|
+
compose
|
|
9
|
+
} from "./chunk-AWVQJNGX.js";
|
|
10
|
+
import {
|
|
11
|
+
scale
|
|
12
|
+
} from "./chunk-JRYI4VBX.js";
|
|
13
|
+
import {
|
|
14
|
+
flopSchema
|
|
15
|
+
} from "./chunk-UNHNZAVP.js";
|
|
16
|
+
import {
|
|
17
|
+
lineateLevelsSchema
|
|
18
|
+
} from "./chunk-6EIF24H5.js";
|
|
19
|
+
import {
|
|
20
|
+
saturateSchema
|
|
21
|
+
} from "./chunk-ZMMNN3QA.js";
|
|
22
|
+
import {
|
|
23
|
+
rotateSchema
|
|
24
|
+
} from "./chunk-D33KC6NN.js";
|
|
25
|
+
import {
|
|
26
|
+
scaleSchema
|
|
27
|
+
} from "./chunk-NAP2XNYN.js";
|
|
28
|
+
import {
|
|
29
|
+
resizeSchema
|
|
30
|
+
} from "./chunk-LSOHLSF5.js";
|
|
31
|
+
import {
|
|
32
|
+
extendSchema
|
|
33
|
+
} from "./chunk-WRRA3BN4.js";
|
|
34
|
+
import {
|
|
35
|
+
brightenSchema
|
|
36
|
+
} from "./chunk-CM6AHRTS.js";
|
|
37
|
+
import {
|
|
38
|
+
flipSchema
|
|
39
|
+
} from "./chunk-T2T5BYTW.js";
|
|
40
|
+
import {
|
|
41
|
+
hueRotateSchema
|
|
42
|
+
} from "./chunk-YEYXAV23.js";
|
|
43
|
+
import {
|
|
44
|
+
flattenSchema
|
|
45
|
+
} from "./chunk-Z4PVE6SR.js";
|
|
46
|
+
import {
|
|
47
|
+
modulateSchema
|
|
48
|
+
} from "./chunk-6IZ5HUJJ.js";
|
|
49
|
+
import {
|
|
50
|
+
normalizeSchema
|
|
51
|
+
} from "./chunk-662SOZWA.js";
|
|
52
|
+
import {
|
|
53
|
+
lightenSchema
|
|
54
|
+
} from "./chunk-W6JPRXQ4.js";
|
|
55
|
+
import {
|
|
56
|
+
composeSchema
|
|
57
|
+
} from "./chunk-G3HAKMUB.js";
|
|
58
|
+
import {
|
|
59
|
+
blurSchema
|
|
60
|
+
} from "./chunk-3UM5CZA5.js";
|
|
61
|
+
import {
|
|
62
|
+
extractSchema
|
|
63
|
+
} from "./chunk-C3ZKLONL.js";
|
|
64
|
+
import {
|
|
65
|
+
OperationNames
|
|
66
|
+
} from "./chunk-MOVLLUDL.js";
|
|
67
|
+
import {
|
|
68
|
+
esm_default
|
|
69
|
+
} from "./chunk-YE67BQQN.js";
|
|
70
|
+
import {
|
|
71
|
+
Outcome
|
|
72
|
+
} from "./chunk-JMU5PDBD.js";
|
|
73
|
+
import {
|
|
74
|
+
unknownToString
|
|
75
|
+
} from "./chunk-FENXVJYO.js";
|
|
76
|
+
import {
|
|
77
|
+
__export
|
|
78
|
+
} from "./chunk-NZLE2WMY.js";
|
|
79
|
+
|
|
80
|
+
// src/node/images/transform/index.ts
|
|
81
|
+
var transform_exports = {};
|
|
82
|
+
__export(transform_exports, {
|
|
83
|
+
apply: () => apply,
|
|
84
|
+
isOperation: () => isOperation,
|
|
85
|
+
transform: () => transform
|
|
86
|
+
});
|
|
87
|
+
import sharp from "sharp";
|
|
88
|
+
var operationSchema = esm_default.union([
|
|
89
|
+
// areaComposeSchema,
|
|
90
|
+
blurSchema,
|
|
91
|
+
brightenSchema,
|
|
92
|
+
composeSchema,
|
|
93
|
+
extendSchema,
|
|
94
|
+
extractSchema,
|
|
95
|
+
flattenSchema,
|
|
96
|
+
flipSchema,
|
|
97
|
+
flopSchema,
|
|
98
|
+
frameSchema,
|
|
99
|
+
hueRotateSchema,
|
|
100
|
+
lightenSchema,
|
|
101
|
+
lineateLevelsSchema,
|
|
102
|
+
modulateSchema,
|
|
103
|
+
normalizeSchema,
|
|
104
|
+
resizeSchema,
|
|
105
|
+
rotateSchema,
|
|
106
|
+
saturateSchema,
|
|
107
|
+
scaleSchema
|
|
108
|
+
]);
|
|
109
|
+
function isOperation(operation) {
|
|
110
|
+
try {
|
|
111
|
+
return Outcome.makeSuccess(operationSchema.parse(operation));
|
|
112
|
+
} catch (err) {
|
|
113
|
+
return Outcome.makeFailure(unknownToString(err));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
async function transform(imageBuffer, operations, checkValidOperations) {
|
|
117
|
+
let sharpInstance = sharp(imageBuffer);
|
|
118
|
+
const needsValidation = checkValidOperations ?? false;
|
|
119
|
+
for (const operation of operations) {
|
|
120
|
+
const _isOperation = isOperation(operation);
|
|
121
|
+
if (!needsValidation || _isOperation.success) {
|
|
122
|
+
console.log("Images:Transform:Operation:Start", operation.name);
|
|
123
|
+
sharpInstance = await apply(sharpInstance, operation);
|
|
124
|
+
console.log("Images:Transform:Operation:Done", operation.name);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
return sharpInstance.toBuffer();
|
|
128
|
+
}
|
|
129
|
+
async function apply(sharpInstance, operation) {
|
|
130
|
+
switch (operation.name) {
|
|
131
|
+
case OperationNames.Blur:
|
|
132
|
+
return sharpInstance.blur(operation.params.sigma);
|
|
133
|
+
case OperationNames.Brighten:
|
|
134
|
+
return sharpInstance.blur(operation.params);
|
|
135
|
+
case OperationNames.Compose:
|
|
136
|
+
return compose(sharpInstance, operation.params);
|
|
137
|
+
case OperationNames.Extend:
|
|
138
|
+
return sharpInstance.extend(operation.params);
|
|
139
|
+
case OperationNames.Extract:
|
|
140
|
+
return sharpInstance.extract(operation.params);
|
|
141
|
+
case OperationNames.Flip:
|
|
142
|
+
return sharpInstance.flip(operation.params.flip);
|
|
143
|
+
case OperationNames.Flop:
|
|
144
|
+
return sharpInstance.flop(operation.params.flop);
|
|
145
|
+
case OperationNames.Frame:
|
|
146
|
+
return frame(sharpInstance, operation.params);
|
|
147
|
+
case OperationNames.Flatten:
|
|
148
|
+
return sharpInstance.flatten(operation.params);
|
|
149
|
+
case OperationNames.HueRotate:
|
|
150
|
+
return sharpInstance.modulate({ hue: operation.params });
|
|
151
|
+
case OperationNames.Lighten:
|
|
152
|
+
return sharpInstance.modulate({ lightness: operation.params });
|
|
153
|
+
case OperationNames.LineateLevels:
|
|
154
|
+
return sharpInstance.linear(operation.params.multiplier, operation.params.offset);
|
|
155
|
+
case OperationNames.Modulate:
|
|
156
|
+
return sharpInstance.modulate(operation.params);
|
|
157
|
+
case OperationNames.Normalize:
|
|
158
|
+
return sharpInstance.normalize(operation.params);
|
|
159
|
+
case OperationNames.Resize:
|
|
160
|
+
return sharpInstance.resize(operation.params);
|
|
161
|
+
case OperationNames.Rotate:
|
|
162
|
+
return sharpInstance.rotate(operation.params.angle);
|
|
163
|
+
case OperationNames.Saturate:
|
|
164
|
+
return sharpInstance.modulate({ saturation: operation.params });
|
|
165
|
+
case OperationNames.Scale:
|
|
166
|
+
return scale(sharpInstance, operation.params);
|
|
167
|
+
default:
|
|
168
|
+
return sharpInstance;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export {
|
|
173
|
+
isOperation,
|
|
174
|
+
transform,
|
|
175
|
+
apply,
|
|
176
|
+
transform_exports
|
|
177
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
bucket_exports
|
|
3
|
+
} from "./chunk-XSVBWVVC.js";
|
|
4
|
+
import {
|
|
5
|
+
file_exports
|
|
6
|
+
} from "./chunk-MXGGOCLX.js";
|
|
7
|
+
import {
|
|
8
|
+
__export
|
|
9
|
+
} from "./chunk-NZLE2WMY.js";
|
|
10
|
+
|
|
11
|
+
// src/node/@google-cloud/storage/index.ts
|
|
12
|
+
var storage_exports = {};
|
|
13
|
+
__export(storage_exports, {
|
|
14
|
+
Bucket: () => bucket_exports,
|
|
15
|
+
File: () => file_exports
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
export {
|
|
19
|
+
storage_exports
|
|
20
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import {
|
|
2
|
+
positionsSchema
|
|
3
|
+
} from "./chunk-D47ZPEUU.js";
|
|
4
|
+
import {
|
|
5
|
+
colorSchema
|
|
6
|
+
} from "./chunk-U7R6TPHR.js";
|
|
7
|
+
import {
|
|
8
|
+
OperationNames
|
|
9
|
+
} from "./chunk-MOVLLUDL.js";
|
|
10
|
+
import {
|
|
11
|
+
esm_default
|
|
12
|
+
} from "./chunk-YE67BQQN.js";
|
|
13
|
+
|
|
14
|
+
// src/node/images/transform/compose/index.ts
|
|
15
|
+
var composeSchema = esm_default.object({
|
|
16
|
+
name: esm_default.literal(OperationNames.Compose),
|
|
17
|
+
params: esm_default.object({
|
|
18
|
+
background: esm_default.optional(colorSchema),
|
|
19
|
+
images: esm_default.array(
|
|
20
|
+
esm_default.object({
|
|
21
|
+
input: esm_default.union([
|
|
22
|
+
esm_default.custom((val) => Buffer.isBuffer(val)),
|
|
23
|
+
esm_default.object({
|
|
24
|
+
mode: esm_default.literal("fill"),
|
|
25
|
+
nbChannels: esm_default.optional(esm_default.literal(3).or(esm_default.literal(4))),
|
|
26
|
+
background: colorSchema
|
|
27
|
+
}),
|
|
28
|
+
esm_default.object({
|
|
29
|
+
mode: esm_default.literal("gradient"),
|
|
30
|
+
angleDeg: esm_default.number(),
|
|
31
|
+
colorStops: esm_default.array(
|
|
32
|
+
esm_default.object({
|
|
33
|
+
color: colorSchema,
|
|
34
|
+
offsetPercent: esm_default.number()
|
|
35
|
+
})
|
|
36
|
+
)
|
|
37
|
+
})
|
|
38
|
+
]),
|
|
39
|
+
dimensions: esm_default.object({
|
|
40
|
+
widthPx: esm_default.number().min(1).optional(),
|
|
41
|
+
heightPx: esm_default.number().min(1).optional()
|
|
42
|
+
}).optional(),
|
|
43
|
+
positions: positionsSchema.optional(),
|
|
44
|
+
tile: esm_default.optional(esm_default.boolean()),
|
|
45
|
+
blend: esm_default.optional(esm_default.enum([
|
|
46
|
+
"clear",
|
|
47
|
+
"source",
|
|
48
|
+
"over",
|
|
49
|
+
"in",
|
|
50
|
+
"out",
|
|
51
|
+
"atop",
|
|
52
|
+
"dest",
|
|
53
|
+
"dest-over",
|
|
54
|
+
"dest-in",
|
|
55
|
+
"dest-out",
|
|
56
|
+
"dest-atop",
|
|
57
|
+
"xor",
|
|
58
|
+
"add",
|
|
59
|
+
"saturate",
|
|
60
|
+
"multiply",
|
|
61
|
+
"screen",
|
|
62
|
+
"overlay",
|
|
63
|
+
"darken",
|
|
64
|
+
"lighten",
|
|
65
|
+
"color-dodge",
|
|
66
|
+
"color-burn",
|
|
67
|
+
"hard-light",
|
|
68
|
+
"soft-light",
|
|
69
|
+
"difference",
|
|
70
|
+
"exclusion"
|
|
71
|
+
]))
|
|
72
|
+
})
|
|
73
|
+
)
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
export {
|
|
78
|
+
composeSchema
|
|
79
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
file_exports
|
|
3
|
+
} from "./chunk-WR64YJNW.js";
|
|
4
|
+
import {
|
|
5
|
+
__export
|
|
6
|
+
} from "./chunk-NZLE2WMY.js";
|
|
7
|
+
|
|
8
|
+
// src/node/@aws-s3/storage/index.ts
|
|
9
|
+
var storage_exports = {};
|
|
10
|
+
__export(storage_exports, {
|
|
11
|
+
File: () => file_exports
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
export {
|
|
15
|
+
storage_exports
|
|
16
|
+
};
|