canvacord
Advanced tools
Comparing version 6.0.0-dev.1 to 6.0.0-dev.3efa402.1628251760
@@ -17,3 +17,3 @@ /// <reference types="node" /> | ||
declare class BaseCanvas { | ||
#private; | ||
private _mimeType; | ||
loadImage: typeof loadImage; | ||
@@ -35,4 +35,35 @@ get mimeType(): CanvacordOutputFormat; | ||
declare enum BuilderReadyState { | ||
NOT_READY = 0, | ||
READY = 1 | ||
} | ||
declare class CanvasBuilder2D extends BaseCanvas { | ||
readonly width: number; | ||
readonly height: number; | ||
private _canvas; | ||
private _ctx; | ||
readonly engine = "skia"; | ||
constructor(width: number, height: number, autoInstance?: boolean); | ||
get canvas(): Canvas; | ||
get ctx(): SKRSContext2D; | ||
get readyState(): BuilderReadyState; | ||
instantiate(): this; | ||
drawImage(image: Image, dx: number, dy: number, dw?: number, dh?: number): CanvasBuilder2D; | ||
clearRect(x: number, y: number, w: number, h: number): this; | ||
drawRect(x: number, y: number, width: number, height: number): this; | ||
strokeRect(x: number, y: number, width: number, height: number): this; | ||
setColorFill(color: string): this; | ||
setColorStroke(color: string): this; | ||
toBuffer(format?: CanvacordOutputFormat): Buffer; | ||
toBufferAsync(format?: CanvacordOutputFormat): Promise<Buffer>; | ||
save(): this; | ||
restore(): this; | ||
valueOf(): { | ||
canvas: Canvas; | ||
ctx: SKRSContext2D; | ||
}; | ||
toString(): string; | ||
} | ||
declare class MemeCanvas extends BaseCanvas { | ||
constructor(); | ||
trigger(image: ImageSourceType): Promise<Buffer>; | ||
@@ -61,3 +92,2 @@ triggered(image: ImageSourceType): Promise<Buffer>; | ||
declare class UtilityCanvas extends BaseCanvas { | ||
constructor(); | ||
blur(image: ImageSourceType, pixels?: number): Promise<Buffer>; | ||
@@ -109,2 +139,2 @@ brighten(img: ImageSourceType, amount?: number): Promise<Buffer>; | ||
export { BaseCanvas, MemeCanvas, Util, UtilityCanvas }; | ||
export { BaseCanvas, BuilderReadyState, CanvasBuilder2D, MemeCanvas, Util, UtilityCanvas }; |
"use strict"; | ||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } }); | ||
}) : (function(o, m, k, k2) { | ||
if (k2 === undefined) k2 = k; | ||
o[k2] = m[k]; | ||
})); | ||
var __exportStar = (this && this.__exportStar) || function(m, exports) { | ||
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); | ||
}; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.Util = exports.UtilityCanvas = exports.MemeCanvas = exports.BaseCanvas = void 0; | ||
var BaseCanvas_1 = require("./core/BaseCanvas"); | ||
Object.defineProperty(exports, "BaseCanvas", { enumerable: true, get: function () { return BaseCanvas_1.BaseCanvas; } }); | ||
var MemeCanvas_1 = require("./core/MemeCanvas"); | ||
Object.defineProperty(exports, "MemeCanvas", { enumerable: true, get: function () { return MemeCanvas_1.MemeCanvas; } }); | ||
var UtilityCanvas_1 = require("./core/UtilityCanvas"); | ||
Object.defineProperty(exports, "UtilityCanvas", { enumerable: true, get: function () { return UtilityCanvas_1.UtilityCanvas; } }); | ||
var Util_1 = require("./Utils/Util"); | ||
Object.defineProperty(exports, "Util", { enumerable: true, get: function () { return Util_1.Util; } }); | ||
__exportStar(require("./canvas/BaseCanvas"), exports); | ||
__exportStar(require("./canvas/CanvasBuilder2D"), exports); | ||
__exportStar(require("./canvas/MemeCanvas"), exports); | ||
__exportStar(require("./canvas/UtilityCanvas"), exports); | ||
__exportStar(require("./Utils/Util"), exports); |
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); |
@@ -11,2 +11,29 @@ "use strict"; | ||
}; | ||
var __generator = (this && this.__generator) || function (thisArg, body) { | ||
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
function verb(n) { return function (v) { return step([n, v]); }; } | ||
function step(op) { | ||
if (f) throw new TypeError("Generator is already executing."); | ||
while (_) try { | ||
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
if (y = 0, t) op = [op[0] & 2, t.value]; | ||
switch (op[0]) { | ||
case 0: case 1: t = op; break; | ||
case 4: _.label++; return { value: op[1], done: false }; | ||
case 5: _.label++; y = op[1]; op = [0]; continue; | ||
case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
default: | ||
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
if (t[2]) _.ops.pop(); | ||
_.trys.pop(); continue; | ||
} | ||
op = body.call(thisArg, _); | ||
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
} | ||
}; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -17,23 +44,33 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
exports.createImage = exports.loadImage = void 0; | ||
const canvas_1 = require("@napi-rs/canvas"); | ||
const fs_1 = require("fs"); | ||
const node_fetch_1 = __importDefault(require("node-fetch")); | ||
function loadImage(source, createSkImage = true) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
if (source instanceof canvas_1.Image) | ||
return createSkImage ? source : source.src; | ||
if (typeof source === "string" && fs_1.existsSync(source)) { | ||
const data = yield fs_1.promises.readFile(source); | ||
return createSkImage ? createImage(data) : data; | ||
} | ||
else if (typeof source === "string") { | ||
const res = yield node_fetch_1.default(source); | ||
if (!res.ok) | ||
throw new Error(`Server responded with status ${res.status}`); | ||
const data = yield res.buffer(); | ||
return createSkImage ? createImage(data) : data; | ||
} | ||
else { | ||
return createSkImage ? createImage(source) : source; | ||
} | ||
var canvas_1 = require("@napi-rs/canvas"); | ||
var fs_1 = require("fs"); | ||
var node_fetch_1 = __importDefault(require("node-fetch")); | ||
function loadImage(source, createSkImage) { | ||
if (createSkImage === void 0) { createSkImage = true; } | ||
return __awaiter(this, void 0, void 0, function () { | ||
var data, res, data; | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
if (source instanceof canvas_1.Image) | ||
return [2 /*return*/, createSkImage ? source : source.src]; | ||
if (!(typeof source === "string" && fs_1.existsSync(source))) return [3 /*break*/, 2]; | ||
return [4 /*yield*/, fs_1.promises.readFile(source)]; | ||
case 1: | ||
data = _a.sent(); | ||
return [2 /*return*/, createSkImage ? createImage(data) : data]; | ||
case 2: | ||
if (!(typeof source === "string")) return [3 /*break*/, 5]; | ||
return [4 /*yield*/, node_fetch_1.default(source)]; | ||
case 3: | ||
res = _a.sent(); | ||
if (!res.ok) | ||
throw new Error("Server responded with status " + res.status); | ||
return [4 /*yield*/, res.buffer()]; | ||
case 4: | ||
data = _a.sent(); | ||
return [2 /*return*/, createSkImage ? createImage(data) : data]; | ||
case 5: return [2 /*return*/, createSkImage ? createImage(source) : source]; | ||
} | ||
}); | ||
}); | ||
@@ -43,3 +80,3 @@ } | ||
function createImage(src) { | ||
const imageConstructor = new canvas_1.Image(); | ||
var imageConstructor = new canvas_1.Image(); | ||
imageConstructor.src = src; | ||
@@ -46,0 +83,0 @@ return imageConstructor; |
@@ -11,2 +11,29 @@ "use strict"; | ||
}; | ||
var __generator = (this && this.__generator) || function (thisArg, body) { | ||
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
function verb(n) { return function (v) { return step([n, v]); }; } | ||
function step(op) { | ||
if (f) throw new TypeError("Generator is already executing."); | ||
while (_) try { | ||
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
if (y = 0, t) op = [op[0] & 2, t.value]; | ||
switch (op[0]) { | ||
case 0: case 1: t = op; break; | ||
case 4: _.label++; return { value: op[1], done: false }; | ||
case 5: _.label++; y = op[1]; op = [0]; continue; | ||
case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
default: | ||
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
if (t[2]) _.ops.pop(); | ||
_.trys.pop(); continue; | ||
} | ||
op = body.call(thisArg, _); | ||
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
} | ||
}; | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
@@ -17,16 +44,16 @@ return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
exports.Util = void 0; | ||
const emoji_parser_1 = require("@canvacord/emoji-parser"); | ||
const assets_1 = __importDefault(require("@canvacord/assets")); | ||
const loadImage_1 = require("./loadImage"); | ||
const weird_to_normal_chars_1 = require("weird-to-normal-chars"); | ||
var emoji_parser_1 = require("@canvacord/emoji-parser"); | ||
var assets_1 = __importDefault(require("@canvacord/assets")); | ||
var loadImage_1 = require("./loadImage"); | ||
var weird_to_normal_chars_1 = require("weird-to-normal-chars"); | ||
/** | ||
* Canvacord Utils | ||
*/ | ||
class Util { | ||
constructor() { | ||
var Util = /** @class */ (function () { | ||
function Util() { | ||
throw new Error("Cannot instantiate util"); | ||
} | ||
static createImage(src) { | ||
Util.createImage = function (src) { | ||
loadImage_1.createImage(src); | ||
} | ||
}; | ||
/** | ||
@@ -39,3 +66,3 @@ * Renders emoji in canvas | ||
*/ | ||
static renderEmoji(ctx, message, x, y) { | ||
Util.renderEmoji = function (ctx, message, x, y) { | ||
// @todo: fix this | ||
@@ -45,3 +72,3 @@ // eslint-disable-next-line @typescript-eslint/ban-ts-comment | ||
return emoji_parser_1.fillTextWithTwemoji(ctx, message, x, y); | ||
} | ||
}; | ||
/** | ||
@@ -51,3 +78,3 @@ * Abbreviate the given number | ||
*/ | ||
static toAbbrev(num) { | ||
Util.toAbbrev = function (num) { | ||
if (!num || isNaN(num)) | ||
@@ -57,7 +84,7 @@ return "0"; | ||
num = parseInt(num); | ||
const decPlaces = Math.pow(10, 1); | ||
const abbrev = ["K", "M", "B", "T"]; | ||
let dat = ""; | ||
for (let i = abbrev.length - 1; i >= 0; i--) { | ||
const size = Math.pow(10, (i + 1) * 3); | ||
var decPlaces = Math.pow(10, 1); | ||
var abbrev = ["K", "M", "B", "T"]; | ||
var dat = ""; | ||
for (var i = abbrev.length - 1; i >= 0; i--) { | ||
var size = Math.pow(10, (i + 1) * 3); | ||
if (size <= num) { | ||
@@ -69,3 +96,3 @@ num = Math.round((num * decPlaces) / size) / decPlaces; | ||
} | ||
dat = `${num}${abbrev[i]}`; | ||
dat = "" + num + abbrev[i]; | ||
break; | ||
@@ -75,41 +102,62 @@ } | ||
return dat; | ||
} | ||
static get assets() { | ||
return { | ||
font(name) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
if (!assets_1.default.font.loaded) | ||
yield assets_1.default.font.load(); | ||
return assets_1.default.font.get(name); | ||
}); | ||
}, | ||
image(name) { | ||
return __awaiter(this, void 0, void 0, function* () { | ||
if (!assets_1.default.image.loaded) | ||
yield assets_1.default.image.load(); | ||
return assets_1.default.image.get(name); | ||
}); | ||
} | ||
}; | ||
} | ||
static cleanText(text) { | ||
}; | ||
Object.defineProperty(Util, "assets", { | ||
get: function () { | ||
return { | ||
font: function (name) { | ||
return __awaiter(this, void 0, void 0, function () { | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
if (!!assets_1.default.font.loaded) return [3 /*break*/, 2]; | ||
return [4 /*yield*/, assets_1.default.font.load()]; | ||
case 1: | ||
_a.sent(); | ||
_a.label = 2; | ||
case 2: return [2 /*return*/, assets_1.default.font.get(name)]; | ||
} | ||
}); | ||
}); | ||
}, | ||
image: function (name) { | ||
return __awaiter(this, void 0, void 0, function () { | ||
return __generator(this, function (_a) { | ||
switch (_a.label) { | ||
case 0: | ||
if (!!assets_1.default.image.loaded) return [3 /*break*/, 2]; | ||
return [4 /*yield*/, assets_1.default.image.load()]; | ||
case 1: | ||
_a.sent(); | ||
_a.label = 2; | ||
case 2: return [2 /*return*/, assets_1.default.image.get(name)]; | ||
} | ||
}); | ||
}); | ||
} | ||
}; | ||
}, | ||
enumerable: false, | ||
configurable: true | ||
}); | ||
Util.cleanText = function (text) { | ||
return weird_to_normal_chars_1.weirdToNormalChars(text); | ||
} | ||
}; | ||
// eslint-disable-next-line @typescript-eslint/no-explicit-any | ||
static is(prop, propType) { | ||
Util.is = function (prop, propType) { | ||
if (propType === "array") | ||
return Array.isArray(prop); | ||
return typeof prop === propType; | ||
} | ||
static streamToBuffer(stream) { | ||
return new Promise((resolve, reject) => { | ||
const d = []; | ||
stream.on("data", (chunk) => d.push(chunk)); | ||
}; | ||
Util.streamToBuffer = function (stream) { | ||
return new Promise(function (resolve, reject) { | ||
var d = []; | ||
stream.on("data", function (chunk) { return d.push(chunk); }); | ||
stream.on("error", reject); | ||
stream.on("end", () => resolve(Buffer.concat(d))); | ||
stream.on("end", function () { return resolve(Buffer.concat(d)); }); | ||
}); | ||
} | ||
static noop() { } // eslint-disable-line @typescript-eslint/no-empty-function | ||
} | ||
}; | ||
Util.noop = function () { }; // eslint-disable-line @typescript-eslint/no-empty-function | ||
Util.loadImage = loadImage_1.loadImage; | ||
return Util; | ||
}()); | ||
exports.Util = Util; | ||
Util.loadImage = loadImage_1.loadImage; |
{ | ||
"name": "canvacord", | ||
"version": "6.0.0-dev.1", | ||
"version": "6.0.0-dev.3efa402.1628251760", | ||
"description": "Simple & easy to use image manipulation module for beginners.", | ||
@@ -16,5 +16,6 @@ "main": "dist/index.js", | ||
"scripts": { | ||
"build": "rimraf lib && tsc && npm run build:esm", | ||
"build": "rimraf dist && tsc && npm run build:esm", | ||
"build:check": "tsc --noEmit --incremental false", | ||
"build:esm": "gen-esm-wrapper ./dist/index.js ./dist/index.mjs", | ||
"build:bundle": "npm run build && rollup-type-bundler -e stream", | ||
"docs": "docgen --source src/*.ts src/**/*.ts --custom docs/index.yml --output docs/docs.json", | ||
@@ -28,3 +29,3 @@ "docs:test": "docgen --source src/*.ts src/**/*.ts --custom docs/index.yml", | ||
"deps:update": "npx npm-check-updates -u && yarn install", | ||
"prepublishOnly": "npm run build && rollup-type-bundler -e stream" | ||
"prepublishOnly": "npm run build:bundle" | ||
}, | ||
@@ -64,3 +65,3 @@ "homepage": "https://canvacord.js.org", | ||
"@canvacord/gif": "^1.0.2", | ||
"@napi-rs/canvas": "^0.0.12", | ||
"@napi-rs/canvas": "^0.1.1", | ||
"gifencoder": "^2.0.1", | ||
@@ -71,3 +72,3 @@ "node-fetch": "^2.6.1", | ||
"devDependencies": { | ||
"@babel/preset-env": "^7.14.8", | ||
"@babel/preset-env": "^7.14.9", | ||
"@babel/preset-typescript": "^7.14.5", | ||
@@ -78,7 +79,7 @@ "@devsnowflake/docgen": "DevSnowflake/docgen#ts-patch", | ||
"@types/jest": "^26.0.24", | ||
"@types/node": "^16.4.1", | ||
"@types/node": "^16.4.10", | ||
"@types/node-fetch": "^2.5.12", | ||
"@typescript-eslint/eslint-plugin": "^4.28.4", | ||
"@typescript-eslint/parser": "^4.28.4", | ||
"eslint": "^7.31.0", | ||
"@typescript-eslint/eslint-plugin": "^4.29.0", | ||
"@typescript-eslint/parser": "^4.29.0", | ||
"eslint": "^7.32.0", | ||
"file-type": "^16.5.2", | ||
@@ -85,0 +86,0 @@ "gen-esm-wrapper": "^1.1.2", |
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
119822
13
1635
1
+ Added@napi-rs/canvas@0.1.67(transitive)
+ Added@napi-rs/canvas-android-arm64@0.1.67(transitive)
+ Added@napi-rs/canvas-darwin-arm64@0.1.67(transitive)
+ Added@napi-rs/canvas-darwin-x64@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-arm-gnueabihf@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-arm64-gnu@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-arm64-musl@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-riscv64-gnu@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-x64-gnu@0.1.67(transitive)
+ Added@napi-rs/canvas-linux-x64-musl@0.1.67(transitive)
+ Added@napi-rs/canvas-win32-x64-msvc@0.1.67(transitive)
- Removed@napi-rs/canvas@0.0.12(transitive)
- Removed@napi-rs/canvas-android-arm64@0.0.12(transitive)
- Removed@napi-rs/canvas-darwin-arm64@0.0.12(transitive)
- Removed@napi-rs/canvas-darwin-x64@0.0.12(transitive)
- Removed@napi-rs/canvas-linux-arm-gnueabihf@0.0.12(transitive)
- Removed@napi-rs/canvas-linux-arm64-gnu@0.0.12(transitive)
- Removed@napi-rs/canvas-linux-arm64-musl@0.0.12(transitive)
- Removed@napi-rs/canvas-linux-x64-gnu@0.0.12(transitive)
- Removed@napi-rs/canvas-linux-x64-musl@0.0.12(transitive)
- Removed@napi-rs/canvas-win32-x64-msvc@0.0.12(transitive)
- Removed@napi-rs/triples@1.2.0(transitive)
- Removed@node-rs/helper@1.6.0(transitive)
Updated@napi-rs/canvas@^0.1.1