@powerlines/plugin-satori 0.1.362 → 0.1.365

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.
@@ -0,0 +1,29 @@
1
+ //#region \0rolldown/runtime.js
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
+ key = keys[i];
12
+ if (!__hasOwnProp.call(to, key) && key !== except) {
13
+ __defProp(to, key, {
14
+ get: ((k) => from[k]).bind(null, key),
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ }
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
+ value: mod,
24
+ enumerable: true
25
+ }) : target, mod));
26
+
27
+ //#endregion
28
+
29
+ exports.__toESM = __toESM;
@@ -0,0 +1,3 @@
1
+ import "node:module";
2
+
3
+ export { };
package/dist/index.cjs ADDED
@@ -0,0 +1,59 @@
1
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
2
+ const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
3
+ let _stryke_convert_to_array = require("@stryke/convert/to-array");
4
+ let _stryke_fs_exists = require("@stryke/fs/exists");
5
+ let _stryke_fs_list_files = require("@stryke/fs/list-files");
6
+ let _stryke_path_file_path_fns = require("@stryke/path/file-path-fns");
7
+ let _stryke_path_join_paths = require("@stryke/path/join-paths");
8
+ let _stryke_path_replace = require("@stryke/path/replace");
9
+ let defu = require("defu");
10
+ defu = require_runtime.__toESM(defu);
11
+ let powerlines_plugin_utils = require("powerlines/plugin-utils");
12
+ let satori = require("satori");
13
+ satori = require_runtime.__toESM(satori);
14
+
15
+ //#region src/index.ts
16
+ /**
17
+ * A Powerlines plugin to use Untyped for code generation based on user-defined schemas.
18
+ *
19
+ * @param options - The plugin options.
20
+ * @returns A Powerlines plugin instance.
21
+ */
22
+ const plugin = (options) => {
23
+ return {
24
+ name: "satori",
25
+ config() {
26
+ return { satori: {
27
+ defaultOptions: {},
28
+ width: 1200,
29
+ height: 630,
30
+ fonts: [],
31
+ ...options
32
+ } };
33
+ },
34
+ async configResolved() {
35
+ if (!this.config.satori.path) throw new Error("The Powerlines Satori plugin requires a `path` option to be specified.");
36
+ this.config.satori.inputs = (await Promise.all((0, _stryke_convert_to_array.toArray)(this.config.satori.path).map(async (path) => {
37
+ if (path.includes("*")) return (0, _stryke_fs_list_files.listFiles)((0, powerlines_plugin_utils.replacePathTokens)(this, path));
38
+ return (0, powerlines_plugin_utils.replacePathTokens)(this, path);
39
+ }))).flat().filter((path) => path && ["jsx", "tsx"].includes((0, _stryke_path_file_path_fns.findFileExtensionSafe)(path)) && (0, _stryke_fs_exists.existsSync)(path));
40
+ },
41
+ async prepare() {
42
+ await Promise.all(this.config.satori.inputs.map(async (input) => {
43
+ try {
44
+ const mod = await this.resolver.import(input);
45
+ if (mod && mod.default) {
46
+ const result = await (0, satori.default)(mod.default, (0, defu.default)(mod.options ?? {}, this.config.satori.defaultOptions));
47
+ if (result) await this.fs.write(this.config.satori.outputPath ? (0, _stryke_path_join_paths.joinPaths)(this.config.satori.outputPath, (0, _stryke_path_replace.replacePath)(input, (0, _stryke_path_join_paths.joinPaths)(this.workspaceConfig.workspaceRoot, this.config.root))) : input.replace((0, _stryke_path_file_path_fns.findFileExtensionSafe)(input), "svg"), result);
48
+ }
49
+ } catch (error) {
50
+ this.debug(`Failed to load Satori schema from ${input}: ${error.message}`);
51
+ }
52
+ }));
53
+ }
54
+ };
55
+ };
56
+
57
+ //#endregion
58
+ exports.default = plugin;
59
+ exports.plugin = plugin;
@@ -0,0 +1,20 @@
1
+ import { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig } from "./types/plugin.cjs";
2
+ import { SatoriComponentModule, __ΩSatoriComponentModule } from "./types/module.cjs";
3
+ import { Plugin } from "powerlines";
4
+
5
+ //#region src/index.d.ts
6
+ declare module "powerlines" {
7
+ interface Config {
8
+ satori?: SatoriPluginOptions;
9
+ }
10
+ }
11
+ /**
12
+ * A Powerlines plugin to use Untyped for code generation based on user-defined schemas.
13
+ *
14
+ * @param options - The plugin options.
15
+ * @returns A Powerlines plugin instance.
16
+ */
17
+ declare const plugin: <TContext extends SatoriPluginContext = SatoriPluginContext>(options: SatoriPluginOptions) => Plugin<TContext>;
18
+ //#endregion
19
+ export { SatoriComponentModule, SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriComponentModule, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig, plugin as default, plugin };
20
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.ts"],"mappings":";;;;;;YAsCY,MAAA;IACR,MAAA,GAAS,mBAAA;EAAA;AAAA;;;;;;;cAUA,MAAA,oBACM,mBAAA,GAAsB,mBAAA,EAEvC,OAAA,EAAS,mBAAA,KACR,MAAA,CAAO,QAAA"}
@@ -0,0 +1,20 @@
1
+ import { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig } from "./types/plugin.mjs";
2
+ import { SatoriComponentModule, __ΩSatoriComponentModule } from "./types/module.mjs";
3
+ import { Plugin } from "powerlines";
4
+
5
+ //#region src/index.d.ts
6
+ declare module "powerlines" {
7
+ interface Config {
8
+ satori?: SatoriPluginOptions;
9
+ }
10
+ }
11
+ /**
12
+ * A Powerlines plugin to use Untyped for code generation based on user-defined schemas.
13
+ *
14
+ * @param options - The plugin options.
15
+ * @returns A Powerlines plugin instance.
16
+ */
17
+ declare const plugin: <TContext extends SatoriPluginContext = SatoriPluginContext>(options: SatoriPluginOptions) => Plugin<TContext>;
18
+ //#endregion
19
+ export { SatoriComponentModule, SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriComponentModule, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig, plugin as default, plugin };
20
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/index.ts"],"mappings":";;;;;;YAsCY,MAAA;IACR,MAAA,GAAS,mBAAA;EAAA;AAAA;;;;;;;cAUA,MAAA,oBACM,mBAAA,GAAsB,mBAAA,EAEvC,OAAA,EAAS,mBAAA,KACR,MAAA,CAAO,QAAA"}
package/dist/index.mjs ADDED
@@ -0,0 +1,55 @@
1
+ import { toArray } from "@stryke/convert/to-array";
2
+ import { existsSync } from "@stryke/fs/exists";
3
+ import { listFiles } from "@stryke/fs/list-files";
4
+ import { findFileExtensionSafe } from "@stryke/path/file-path-fns";
5
+ import { joinPaths } from "@stryke/path/join-paths";
6
+ import { replacePath } from "@stryke/path/replace";
7
+ import defu from "defu";
8
+ import { replacePathTokens } from "powerlines/plugin-utils";
9
+ import satori from "satori";
10
+
11
+ //#region src/index.ts
12
+ /**
13
+ * A Powerlines plugin to use Untyped for code generation based on user-defined schemas.
14
+ *
15
+ * @param options - The plugin options.
16
+ * @returns A Powerlines plugin instance.
17
+ */
18
+ const plugin = (options) => {
19
+ return {
20
+ name: "satori",
21
+ config() {
22
+ return { satori: {
23
+ defaultOptions: {},
24
+ width: 1200,
25
+ height: 630,
26
+ fonts: [],
27
+ ...options
28
+ } };
29
+ },
30
+ async configResolved() {
31
+ if (!this.config.satori.path) throw new Error("The Powerlines Satori plugin requires a `path` option to be specified.");
32
+ this.config.satori.inputs = (await Promise.all(toArray(this.config.satori.path).map(async (path) => {
33
+ if (path.includes("*")) return listFiles(replacePathTokens(this, path));
34
+ return replacePathTokens(this, path);
35
+ }))).flat().filter((path) => path && ["jsx", "tsx"].includes(findFileExtensionSafe(path)) && existsSync(path));
36
+ },
37
+ async prepare() {
38
+ await Promise.all(this.config.satori.inputs.map(async (input) => {
39
+ try {
40
+ const mod = await this.resolver.import(input);
41
+ if (mod && mod.default) {
42
+ const result = await satori(mod.default, defu(mod.options ?? {}, this.config.satori.defaultOptions));
43
+ if (result) await this.fs.write(this.config.satori.outputPath ? joinPaths(this.config.satori.outputPath, replacePath(input, joinPaths(this.workspaceConfig.workspaceRoot, this.config.root))) : input.replace(findFileExtensionSafe(input), "svg"), result);
44
+ }
45
+ } catch (error) {
46
+ this.debug(`Failed to load Satori schema from ${input}: ${error.message}`);
47
+ }
48
+ }));
49
+ }
50
+ };
51
+ };
52
+
53
+ //#endregion
54
+ export { plugin as default, plugin };
55
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Powerlines\n\n This code was released as part of the Powerlines project. Powerlines\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/powerlines.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/powerlines\n Documentation: https://docs.stormsoftware.com/projects/powerlines\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { existsSync } from \"@stryke/fs/exists\";\nimport { listFiles } from \"@stryke/fs/list-files\";\nimport { findFileExtensionSafe } from \"@stryke/path/file-path-fns\";\nimport { joinPaths } from \"@stryke/path/join-paths\";\nimport { replacePath } from \"@stryke/path/replace\";\nimport defu from \"defu\";\nimport type { Plugin } from \"powerlines\";\nimport { replacePathTokens } from \"powerlines/plugin-utils\";\nimport satori from \"satori\";\nimport { SatoriComponentModule } from \"./types/module\";\nimport {\n SatoriPluginContext,\n SatoriPluginOptions,\n SatoriPluginUserConfig\n} from \"./types/plugin\";\n\nexport * from \"./types\";\n\ndeclare module \"powerlines\" {\n interface Config {\n satori?: SatoriPluginOptions;\n }\n}\n\n/**\n * A Powerlines plugin to use Untyped for code generation based on user-defined schemas.\n *\n * @param options - The plugin options.\n * @returns A Powerlines plugin instance.\n */\nexport const plugin = <\n TContext extends SatoriPluginContext = SatoriPluginContext\n>(\n options: SatoriPluginOptions\n): Plugin<TContext> => {\n return {\n name: \"satori\",\n config() {\n return {\n satori: {\n defaultOptions: {},\n width: 1200,\n height: 630,\n fonts: [],\n ...options\n }\n } as Partial<SatoriPluginUserConfig>;\n },\n async configResolved() {\n if (!this.config.satori.path) {\n throw new Error(\n \"The Powerlines Satori plugin requires a \\`path\\` option to be specified.\"\n );\n }\n\n this.config.satori.inputs = (\n await Promise.all(\n toArray(this.config.satori.path).map(async path => {\n if (path.includes(\"*\")) {\n return listFiles(replacePathTokens(this, path));\n }\n\n return replacePathTokens(this, path);\n })\n )\n )\n .flat()\n .filter(\n path =>\n path &&\n [\"jsx\", \"tsx\"].includes(findFileExtensionSafe(path)) &&\n existsSync(path)\n );\n },\n async prepare() {\n await Promise.all(\n this.config.satori.inputs.map(async input => {\n try {\n const mod =\n await this.resolver.import<SatoriComponentModule>(input);\n if (mod && mod.default) {\n const result = await satori(\n mod.default,\n defu(mod.options ?? {}, this.config.satori.defaultOptions)\n );\n if (result) {\n await this.fs.write(\n this.config.satori.outputPath\n ? joinPaths(\n this.config.satori.outputPath,\n replacePath(\n input,\n joinPaths(\n this.workspaceConfig.workspaceRoot,\n this.config.root\n )\n )\n )\n : input.replace(findFileExtensionSafe(input), \"svg\"),\n result\n );\n }\n }\n } catch (error) {\n this.debug(\n `Failed to load Satori schema from ${input}: ${(error as Error).message}`\n );\n }\n })\n );\n }\n };\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;;;;;;;;;AAiDA,MAAa,UAGX,YACqB;AACrB,QAAO;EACL,MAAM;EACN,SAAS;AACP,UAAO,EACL,QAAQ;IACN,gBAAgB,EAAE;IAClB,OAAO;IACP,QAAQ;IACR,OAAO,EAAE;IACT,GAAG;IACJ,EACF;;EAEH,MAAM,iBAAiB;AACrB,OAAI,CAAC,KAAK,OAAO,OAAO,KACtB,OAAM,IAAI,MACR,yEACD;AAGH,QAAK,OAAO,OAAO,UACjB,MAAM,QAAQ,IACZ,QAAQ,KAAK,OAAO,OAAO,KAAK,CAAC,IAAI,OAAM,SAAQ;AACjD,QAAI,KAAK,SAAS,IAAI,CACpB,QAAO,UAAU,kBAAkB,MAAM,KAAK,CAAC;AAGjD,WAAO,kBAAkB,MAAM,KAAK;KACpC,CACH,EAEA,MAAM,CACN,QACC,SACE,QACA,CAAC,OAAO,MAAM,CAAC,SAAS,sBAAsB,KAAK,CAAC,IACpD,WAAW,KAAK,CACnB;;EAEL,MAAM,UAAU;AACd,SAAM,QAAQ,IACZ,KAAK,OAAO,OAAO,OAAO,IAAI,OAAM,UAAS;AAC3C,QAAI;KACF,MAAM,MACJ,MAAM,KAAK,SAAS,OAA8B,MAAM;AAC1D,SAAI,OAAO,IAAI,SAAS;MACtB,MAAM,SAAS,MAAM,OACnB,IAAI,SACJ,KAAK,IAAI,WAAW,EAAE,EAAE,KAAK,OAAO,OAAO,eAAe,CAC3D;AACD,UAAI,OACF,OAAM,KAAK,GAAG,MACZ,KAAK,OAAO,OAAO,aACf,UACE,KAAK,OAAO,OAAO,YACnB,YACE,OACA,UACE,KAAK,gBAAgB,eACrB,KAAK,OAAO,KACb,CACF,CACF,GACD,MAAM,QAAQ,sBAAsB,MAAM,EAAE,MAAM,EACtD,OACD;;aAGE,OAAO;AACd,UAAK,MACH,qCAAqC,MAAM,IAAK,MAAgB,UACjE;;KAEH,CACH;;EAEJ"}
File without changes
@@ -0,0 +1,3 @@
1
+ import { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig } from "./plugin.cjs";
2
+ import { SatoriComponentModule, __ΩSatoriComponentModule } from "./module.cjs";
3
+ export { SatoriComponentModule, SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriComponentModule, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig };
@@ -0,0 +1,3 @@
1
+ import { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig } from "./plugin.mjs";
2
+ import { SatoriComponentModule, __ΩSatoriComponentModule } from "./module.mjs";
3
+ export { SatoriComponentModule, SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriComponentModule, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig };
@@ -0,0 +1 @@
1
+ export { };
File without changes
@@ -0,0 +1,12 @@
1
+ import { SatoriOptions } from "satori";
2
+ import { ReactNode } from "react";
3
+
4
+ //#region src/types/module.d.ts
5
+ interface SatoriComponentModule {
6
+ default: ReactNode;
7
+ options?: SatoriOptions;
8
+ }
9
+ declare type __ΩSatoriComponentModule = any[];
10
+ //#endregion
11
+ export { SatoriComponentModule, __ΩSatoriComponentModule };
12
+ //# sourceMappingURL=module.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.cts","names":[],"sources":["../../src/types/module.ts"],"mappings":";;;;UAqBiB,qBAAA;EACf,OAAA,EAAS,SAAA;EACT,OAAA,GAAU,aAAA;AAAA;AAAA"}
@@ -0,0 +1,12 @@
1
+ import { SatoriOptions } from "satori";
2
+ import { ReactNode } from "react";
3
+
4
+ //#region src/types/module.d.ts
5
+ interface SatoriComponentModule {
6
+ default: ReactNode;
7
+ options?: SatoriOptions;
8
+ }
9
+ declare type __ΩSatoriComponentModule = any[];
10
+ //#endregion
11
+ export { SatoriComponentModule, __ΩSatoriComponentModule };
12
+ //# sourceMappingURL=module.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.mts","names":[],"sources":["../../src/types/module.ts"],"mappings":";;;;UAqBiB,qBAAA;EACf,OAAA,EAAS,SAAA;EACT,OAAA,GAAU,aAAA;AAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export { };
File without changes
@@ -0,0 +1,46 @@
1
+ import { PluginContext, ResolvedConfig, UserConfig } from "powerlines";
2
+ import { SatoriOptions } from "satori";
3
+
4
+ //#region src/types/plugin.d.ts
5
+ interface SatoriPluginOptions {
6
+ /**
7
+ * A path or glob pattern (or an array of paths and glob patterns) to files that have a Satori component default export.
8
+ */
9
+ path: string | string[];
10
+ /**
11
+ * The path for the generated Satori output images
12
+ *
13
+ * @remarks
14
+ * By default, it will generate the output files alongside each satori component file.
15
+ */
16
+ outputPath?: string;
17
+ /**
18
+ * Default Satori options to apply to all components.
19
+ *
20
+ * @remarks
21
+ * These options can be overridden by individual component modules that export their own options.
22
+ */
23
+ defaultOptions?: Partial<SatoriOptions>;
24
+ }
25
+ interface SatoriPluginUserConfig extends UserConfig {
26
+ satori?: Omit<SatoriPluginOptions, "defaultOptions"> & Required<Pick<SatoriPluginOptions, "defaultOptions">>;
27
+ }
28
+ interface SatoriPluginResolvedConfig extends ResolvedConfig {
29
+ satori: Omit<SatoriPluginOptions, "defaultOptions"> & Required<Pick<SatoriPluginOptions, "defaultOptions">> & {
30
+ /**
31
+ * An array of resolved input file paths containing Satori components.
32
+ *
33
+ * @remarks
34
+ * These paths are determined based on the {@link SatoriPluginOptions.path} option provided in the plugin configuration. These are **not** glob patterns, but the actual resolved file paths.
35
+ */
36
+ inputs: string[];
37
+ };
38
+ }
39
+ type SatoriPluginContext<TResolvedConfig extends SatoriPluginResolvedConfig = SatoriPluginResolvedConfig> = PluginContext<TResolvedConfig>;
40
+ declare type __ΩSatoriPluginOptions = any[];
41
+ declare type __ΩSatoriPluginUserConfig = any[];
42
+ declare type __ΩSatoriPluginResolvedConfig = any[];
43
+ declare type __ΩSatoriPluginContext = any[];
44
+ //#endregion
45
+ export { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig };
46
+ //# sourceMappingURL=plugin.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.cts","names":[],"sources":["../../src/types/plugin.ts"],"mappings":";;;;UAqBiB,mBAAA;;AAAjB;;EAIE,IAAA;EAgBwB;;;;;;EARxB,UAAA;EAQsC;AAGxC;;;;;EAHE,cAAA,GAAiB,OAAA,CAAQ,aAAA;AAAA;AAAA,UAGV,sBAAA,SAA+B,UAAA;EAC9C,MAAA,GAAS,IAAA,CAAK,mBAAA,sBACZ,QAAA,CAAS,IAAA,CAAK,mBAAA;AAAA;AAAA,UAGD,0BAAA,SAAmC,cAAA;EAClD,MAAA,EAAQ,IAAA,CAAK,mBAAA,sBACX,QAAA,CAAS,IAAA,CAAK,mBAAA;IANhB;;;;;;IAaI,MAAA;EAAA;AAAA;AAAA,KAIM,mBAAA,yBACc,0BAAA,GACtB,0BAAA,IACA,aAAA,CAAc,eAAA;AAAA"}
@@ -0,0 +1,46 @@
1
+ import { SatoriOptions } from "satori";
2
+ import { PluginContext, ResolvedConfig, UserConfig } from "powerlines";
3
+
4
+ //#region src/types/plugin.d.ts
5
+ interface SatoriPluginOptions {
6
+ /**
7
+ * A path or glob pattern (or an array of paths and glob patterns) to files that have a Satori component default export.
8
+ */
9
+ path: string | string[];
10
+ /**
11
+ * The path for the generated Satori output images
12
+ *
13
+ * @remarks
14
+ * By default, it will generate the output files alongside each satori component file.
15
+ */
16
+ outputPath?: string;
17
+ /**
18
+ * Default Satori options to apply to all components.
19
+ *
20
+ * @remarks
21
+ * These options can be overridden by individual component modules that export their own options.
22
+ */
23
+ defaultOptions?: Partial<SatoriOptions>;
24
+ }
25
+ interface SatoriPluginUserConfig extends UserConfig {
26
+ satori?: Omit<SatoriPluginOptions, "defaultOptions"> & Required<Pick<SatoriPluginOptions, "defaultOptions">>;
27
+ }
28
+ interface SatoriPluginResolvedConfig extends ResolvedConfig {
29
+ satori: Omit<SatoriPluginOptions, "defaultOptions"> & Required<Pick<SatoriPluginOptions, "defaultOptions">> & {
30
+ /**
31
+ * An array of resolved input file paths containing Satori components.
32
+ *
33
+ * @remarks
34
+ * These paths are determined based on the {@link SatoriPluginOptions.path} option provided in the plugin configuration. These are **not** glob patterns, but the actual resolved file paths.
35
+ */
36
+ inputs: string[];
37
+ };
38
+ }
39
+ type SatoriPluginContext<TResolvedConfig extends SatoriPluginResolvedConfig = SatoriPluginResolvedConfig> = PluginContext<TResolvedConfig>;
40
+ declare type __ΩSatoriPluginOptions = any[];
41
+ declare type __ΩSatoriPluginUserConfig = any[];
42
+ declare type __ΩSatoriPluginResolvedConfig = any[];
43
+ declare type __ΩSatoriPluginContext = any[];
44
+ //#endregion
45
+ export { SatoriPluginContext, SatoriPluginOptions, SatoriPluginResolvedConfig, SatoriPluginUserConfig, __ΩSatoriPluginContext, __ΩSatoriPluginOptions, __ΩSatoriPluginResolvedConfig, __ΩSatoriPluginUserConfig };
46
+ //# sourceMappingURL=plugin.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.mts","names":[],"sources":["../../src/types/plugin.ts"],"mappings":";;;;UAqBiB,mBAAA;;AAAjB;;EAIE,IAAA;EAgBwB;;;;;;EARxB,UAAA;EAQsC;AAGxC;;;;;EAHE,cAAA,GAAiB,OAAA,CAAQ,aAAA;AAAA;AAAA,UAGV,sBAAA,SAA+B,UAAA;EAC9C,MAAA,GAAS,IAAA,CAAK,mBAAA,sBACZ,QAAA,CAAS,IAAA,CAAK,mBAAA;AAAA;AAAA,UAGD,0BAAA,SAAmC,cAAA;EAClD,MAAA,EAAQ,IAAA,CAAK,mBAAA,sBACX,QAAA,CAAS,IAAA,CAAK,mBAAA;IANhB;;;;;;IAaI,MAAA;EAAA;AAAA;AAAA,KAIM,mBAAA,yBACc,0BAAA,GACtB,0BAAA,IACA,aAAA,CAAc,eAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export { };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-satori",
3
- "version": "0.1.362",
3
+ "version": "0.1.365",
4
4
  "type": "module",
5
5
  "description": "A Powerlines plugin to use Satori to generate SVG files from jsx/tsx components.",
6
6
  "repository": {
@@ -117,17 +117,17 @@
117
117
  "@stryke/types": "^0.11.1",
118
118
  "defu": "^6.1.4",
119
119
  "jiti": "^2.6.1",
120
- "powerlines": "^0.42.4",
120
+ "powerlines": "^0.42.7",
121
121
  "satori": "^0.18.4"
122
122
  },
123
123
  "devDependencies": {
124
- "@powerlines/plugin-plugin": "^0.12.314",
125
- "@storm-software/config": "^1.135.40",
124
+ "@powerlines/plugin-plugin": "^0.12.317",
125
+ "@storm-software/config": "^1.136.0",
126
126
  "@types/node": "^25.5.0",
127
127
  "@types/react": "^19.2.14",
128
128
  "@types/react-dom": "^19.2.3"
129
129
  },
130
130
  "publishConfig": { "access": "public" },
131
131
  "types": "./dist/index.d.cts",
132
- "gitHead": "c3243c1ec0fbacb4afd4bd3db20432f443334076"
132
+ "gitHead": "8c25b27c36407abbd22351d8a9afba5bce5abc08"
133
133
  }