@powerlines/plugin-napi-rs 0.2.28 → 0.2.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./types/targets.cjs`),t=require(`./helpers/format-path.cjs`),n=require(`./node_modules/.pnpm/@stryke_convert@0.7.2/node_modules/@stryke/convert/dist/to-array.cjs`);let r=require(`@stryke/path/append`),i=require(`powerlines/plugin-utils`),a=require(`@napi-rs/cli`),o=require(`@stryke/type-checks/is-string`),s=require(`defu`);const c=(c={})=>[{name:`napi-rs`,config(){return{napi:{dts:`binding.d.ts`,jsBinding:`binding.js`,outputDir:this.config.root,platform:!0,strip:!1,...c}}},async configResolved(){!this.config.napi.target&&this.additionalArgs.target&&((0,o.isString)(this.additionalArgs.target)||Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0)?this.config.napi.target=(0,a.parseTriple)(Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0?this.additionalArgs.target[0]:String(this.additionalArgs.target)):this.config.napi.target=(0,o.isString)(this.config.napi.target)?(0,a.parseTriple)(this.config.napi.target):this.config.napi.target,this.config.napi.targets||(this.additionalArgs.targets&&((0,o.isString)(this.additionalArgs.targets)||Array.isArray(this.additionalArgs.targets)&&this.additionalArgs.targets.length>0)?this.config.napi.targets=n.toArray(this.additionalArgs.targets).map(e=>(0,a.parseTriple)(e)):this.config.napi.targets=e.DEFAULT_TARGETS.map(e=>(0,a.parseTriple)(e))),!this.config.napi.profile&&this.additionalArgs.profile&&((0,o.isString)(this.additionalArgs.profile)||Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0)&&(this.config.napi.profile=Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0?this.additionalArgs.profile[0]:String(this.additionalArgs.profile)),!this.config.napi.release&&this.additionalArgs.release&&(this.config.napi.release=!!this.additionalArgs.release),!this.config.napi.configPath&&this.additionalArgs.configPath&&((0,o.isString)(this.additionalArgs.configPath)||Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0)&&(this.config.napi.configPath=Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0?this.additionalArgs.configPath[0]:String(this.additionalArgs.configPath)),!this.config.napi.manifestPath&&this.additionalArgs.manifestPath&&((0,o.isString)(this.additionalArgs.manifestPath)||Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0)&&(this.config.napi.manifestPath=Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0?this.additionalArgs.manifestPath[0]:String(this.additionalArgs.manifestPath)),!this.config.napi.npmDir&&this.additionalArgs.npmDir&&((0,o.isString)(this.additionalArgs.npmDir)||Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0)&&(this.config.napi.npmDir=Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0?this.additionalArgs.npmDir[0]:String(this.additionalArgs.npmDir)),this.config.napi.packageJsonPath||(this.additionalArgs.packageJsonPath&&((0,o.isString)(this.additionalArgs.packageJsonPath)||Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0)&&(this.config.napi.packageJsonPath=Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0?this.additionalArgs.packageJsonPath[0]:String(this.additionalArgs.packageJsonPath)),this.config.napi.packageJsonPath||(this.config.napi.packageJsonPath=(0,r.appendPath)(this.config.root,`package.json`))),this.config.napi.target?.platform===`wasm`&&(this.dependencies[`@napi-rs/wasm-runtime`]=`^1.1.4`);let t={},i={};this.fs.existsSync(this.config.napi.packageJsonPath)&&(t=JSON.parse(await this.fs.read(this.config.napi.packageJsonPath)||`{}`)),i={...t},t.napi={binaryName:this.config.napi.binaryName,packageName:this.config.napi.packageName,targets:this.config.napi.targets?.map(e=>e.triple),npmClient:this.config.napi.npmClient,constEnum:this.config.napi.constEnum,dtsHeader:this.config.napi.dtsHeader,dtsHeaderFile:this.config.napi.dtsHeaderFile,...t.napi,wasm:this.config.napi.target?.platform===`wasm`?(0,s.defu)(t.napi?.wasm??{},this.config.napi.wasm??{},{initialMemory:16384}):void 0},JSON.stringify(t)!==JSON.stringify(i)&&await this.fs.write(this.config.napi.packageJsonPath,JSON.stringify(t,null,2))},async prepare(){this.debug(`Preparing the N-API Rust runtime artifacts for the Powerlines project.`),this.napi=new a.NapiCli,this.config.napi.npmDir&&await this.napi.createNpmDirs({cwd:(0,r.appendPath)(this.config.root,this.config.cwd),npmDir:t.formatPath(this,this.config.napi.npmDir),configPath:t.formatPath(this,this.config.napi.configPath),packageJsonPath:t.formatPath(this,this.config.napi.packageJsonPath)})},async build(){this.debug(`Building the N-API Rust runtime artifacts for the Powerlines project.`);let{task:e}=await this.napi.build({cwd:(0,r.appendPath)(this.config.root,this.config.cwd),package:this.config.napi.packageName,outputDir:t.formatPath(this,this.config.napi.outputDir),configPath:t.formatPath(this,this.config.napi.configPath),manifestPath:t.formatPath(this,this.config.napi.manifestPath),packageJsonPath:t.formatPath(this,this.config.napi.packageJsonPath),target:this.config.napi.target?.triple,profile:this.config.napi.profile,release:this.config.napi.release??this.config.mode===`production`,features:this.config.napi.features,noDefaultFeatures:this.config.napi.noDefaultFeatures,strip:this.config.napi.strip,platform:this.config.napi.platform,noDtsHeader:this.config.napi.noDtsHeader,jsBinding:this.config.napi.jsBinding,dts:this.config.napi.dts,dtsCache:this.config.napi.dtsCache??!this.config.skipCache,verbose:(0,i.isVerbose)(this)}),n=await e;for(let e of n){let t=await this.fs.read(e.path);t&&await this.fs.write(e.path,t)}}}];exports.default=c,exports.plugin=c;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./types/targets.cjs`),t=require(`./helpers/format-path.cjs`);let n=require(`@stryke/path/append`),r=require(`powerlines/plugin-utils`),i=require(`@napi-rs/cli`),a=require(`@stryke/convert/to-array`),o=require(`@stryke/type-checks/is-string`),s=require(`defu`);const c=(c={})=>[{name:`napi-rs`,config(){return{napi:{dts:`binding.d.ts`,jsBinding:`binding.js`,outputDir:this.config.root,platform:!0,strip:!1,...c}}},async configResolved(){!this.config.napi.target&&this.additionalArgs.target&&((0,o.isString)(this.additionalArgs.target)||Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0)?this.config.napi.target=(0,i.parseTriple)(Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0?this.additionalArgs.target[0]:String(this.additionalArgs.target)):this.config.napi.target=(0,o.isString)(this.config.napi.target)?(0,i.parseTriple)(this.config.napi.target):this.config.napi.target,this.config.napi.targets||(this.additionalArgs.targets&&((0,o.isString)(this.additionalArgs.targets)||Array.isArray(this.additionalArgs.targets)&&this.additionalArgs.targets.length>0)?this.config.napi.targets=(0,a.toArray)(this.additionalArgs.targets).map(e=>(0,i.parseTriple)(e)):this.config.napi.targets=e.DEFAULT_TARGETS.map(e=>(0,i.parseTriple)(e))),!this.config.napi.profile&&this.additionalArgs.profile&&((0,o.isString)(this.additionalArgs.profile)||Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0)&&(this.config.napi.profile=Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0?this.additionalArgs.profile[0]:String(this.additionalArgs.profile)),!this.config.napi.release&&this.additionalArgs.release&&(this.config.napi.release=!!this.additionalArgs.release),!this.config.napi.configPath&&this.additionalArgs.configPath&&((0,o.isString)(this.additionalArgs.configPath)||Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0)&&(this.config.napi.configPath=Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0?this.additionalArgs.configPath[0]:String(this.additionalArgs.configPath)),!this.config.napi.manifestPath&&this.additionalArgs.manifestPath&&((0,o.isString)(this.additionalArgs.manifestPath)||Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0)&&(this.config.napi.manifestPath=Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0?this.additionalArgs.manifestPath[0]:String(this.additionalArgs.manifestPath)),!this.config.napi.npmDir&&this.additionalArgs.npmDir&&((0,o.isString)(this.additionalArgs.npmDir)||Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0)&&(this.config.napi.npmDir=Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0?this.additionalArgs.npmDir[0]:String(this.additionalArgs.npmDir)),this.config.napi.packageJsonPath||(this.additionalArgs.packageJsonPath&&((0,o.isString)(this.additionalArgs.packageJsonPath)||Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0)&&(this.config.napi.packageJsonPath=Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0?this.additionalArgs.packageJsonPath[0]:String(this.additionalArgs.packageJsonPath)),this.config.napi.packageJsonPath||(this.config.napi.packageJsonPath=(0,n.appendPath)(this.config.root,`package.json`))),this.config.napi.target?.platform===`wasm`&&(this.dependencies[`@napi-rs/wasm-runtime`]=`^1.1.4`);let t={},r={};this.fs.existsSync(this.config.napi.packageJsonPath)&&(t=JSON.parse(await this.fs.read(this.config.napi.packageJsonPath)||`{}`)),r={...t},t.napi={binaryName:this.config.napi.binaryName,packageName:this.config.napi.packageName,targets:this.config.napi.targets?.map(e=>e.triple),npmClient:this.config.napi.npmClient,constEnum:this.config.napi.constEnum,dtsHeader:this.config.napi.dtsHeader,dtsHeaderFile:this.config.napi.dtsHeaderFile,...t.napi,wasm:this.config.napi.target?.platform===`wasm`?(0,s.defu)(t.napi?.wasm??{},this.config.napi.wasm??{},{initialMemory:16384}):void 0},JSON.stringify(t)!==JSON.stringify(r)&&await this.fs.write(this.config.napi.packageJsonPath,JSON.stringify(t,null,2))},async prepare(){this.debug(`Preparing the N-API Rust runtime artifacts for the Powerlines project.`),this.napi=new i.NapiCli,this.config.napi.npmDir&&await this.napi.createNpmDirs({cwd:(0,n.appendPath)(this.config.root,this.config.cwd),npmDir:t.formatPath(this,this.config.napi.npmDir),configPath:t.formatPath(this,this.config.napi.configPath),packageJsonPath:t.formatPath(this,this.config.napi.packageJsonPath)})},async build(){this.debug(`Building the N-API Rust runtime artifacts for the Powerlines project.`);let{task:e}=await this.napi.build({cwd:(0,n.appendPath)(this.config.root,this.config.cwd),package:this.config.napi.packageName,outputDir:t.formatPath(this,this.config.napi.outputDir),configPath:t.formatPath(this,this.config.napi.configPath),manifestPath:t.formatPath(this,this.config.napi.manifestPath),packageJsonPath:t.formatPath(this,this.config.napi.packageJsonPath),target:this.config.napi.target?.triple,profile:this.config.napi.profile,release:this.config.napi.release??this.config.mode===`production`,features:this.config.napi.features,noDefaultFeatures:this.config.napi.noDefaultFeatures,strip:this.config.napi.strip,platform:this.config.napi.platform,noDtsHeader:this.config.napi.noDtsHeader,jsBinding:this.config.napi.jsBinding,dts:this.config.napi.dts,dtsCache:this.config.napi.dtsCache??!this.config.skipCache,verbose:(0,r.isVerbose)(this)}),i=await e;for(let e of i){let t=await this.fs.read(e.path);t&&await this.fs.write(e.path,t)}}}];exports.default=c,exports.plugin=c;
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import{DEFAULT_TARGETS as e}from"./types/targets.mjs";import{formatPath as t}from"./helpers/format-path.mjs";import{toArray as n}from"./node_modules/.pnpm/@stryke_convert@0.7.2/node_modules/@stryke/convert/dist/to-array.mjs";import{appendPath as r}from"@stryke/path/append";import{isVerbose as i}from"powerlines/plugin-utils";import{NapiCli as a,parseTriple as o}from"@napi-rs/cli";import{isString as s}from"@stryke/type-checks/is-string";import{defu as c}from"defu";const l=(l={})=>[{name:`napi-rs`,config(){return{napi:{dts:`binding.d.ts`,jsBinding:`binding.js`,outputDir:this.config.root,platform:!0,strip:!1,...l}}},async configResolved(){!this.config.napi.target&&this.additionalArgs.target&&(s(this.additionalArgs.target)||Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0)?this.config.napi.target=o(Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0?this.additionalArgs.target[0]:String(this.additionalArgs.target)):this.config.napi.target=s(this.config.napi.target)?o(this.config.napi.target):this.config.napi.target,this.config.napi.targets||(this.additionalArgs.targets&&(s(this.additionalArgs.targets)||Array.isArray(this.additionalArgs.targets)&&this.additionalArgs.targets.length>0)?this.config.napi.targets=n(this.additionalArgs.targets).map(e=>o(e)):this.config.napi.targets=e.map(e=>o(e))),!this.config.napi.profile&&this.additionalArgs.profile&&(s(this.additionalArgs.profile)||Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0)&&(this.config.napi.profile=Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0?this.additionalArgs.profile[0]:String(this.additionalArgs.profile)),!this.config.napi.release&&this.additionalArgs.release&&(this.config.napi.release=!!this.additionalArgs.release),!this.config.napi.configPath&&this.additionalArgs.configPath&&(s(this.additionalArgs.configPath)||Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0)&&(this.config.napi.configPath=Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0?this.additionalArgs.configPath[0]:String(this.additionalArgs.configPath)),!this.config.napi.manifestPath&&this.additionalArgs.manifestPath&&(s(this.additionalArgs.manifestPath)||Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0)&&(this.config.napi.manifestPath=Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0?this.additionalArgs.manifestPath[0]:String(this.additionalArgs.manifestPath)),!this.config.napi.npmDir&&this.additionalArgs.npmDir&&(s(this.additionalArgs.npmDir)||Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0)&&(this.config.napi.npmDir=Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0?this.additionalArgs.npmDir[0]:String(this.additionalArgs.npmDir)),this.config.napi.packageJsonPath||(this.additionalArgs.packageJsonPath&&(s(this.additionalArgs.packageJsonPath)||Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0)&&(this.config.napi.packageJsonPath=Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0?this.additionalArgs.packageJsonPath[0]:String(this.additionalArgs.packageJsonPath)),this.config.napi.packageJsonPath||(this.config.napi.packageJsonPath=r(this.config.root,`package.json`))),this.config.napi.target?.platform===`wasm`&&(this.dependencies[`@napi-rs/wasm-runtime`]=`^1.1.4`);let t={},i={};this.fs.existsSync(this.config.napi.packageJsonPath)&&(t=JSON.parse(await this.fs.read(this.config.napi.packageJsonPath)||`{}`)),i={...t},t.napi={binaryName:this.config.napi.binaryName,packageName:this.config.napi.packageName,targets:this.config.napi.targets?.map(e=>e.triple),npmClient:this.config.napi.npmClient,constEnum:this.config.napi.constEnum,dtsHeader:this.config.napi.dtsHeader,dtsHeaderFile:this.config.napi.dtsHeaderFile,...t.napi,wasm:this.config.napi.target?.platform===`wasm`?c(t.napi?.wasm??{},this.config.napi.wasm??{},{initialMemory:16384}):void 0},JSON.stringify(t)!==JSON.stringify(i)&&await this.fs.write(this.config.napi.packageJsonPath,JSON.stringify(t,null,2))},async prepare(){this.debug(`Preparing the N-API Rust runtime artifacts for the Powerlines project.`),this.napi=new a,this.config.napi.npmDir&&await this.napi.createNpmDirs({cwd:r(this.config.root,this.config.cwd),npmDir:t(this,this.config.napi.npmDir),configPath:t(this,this.config.napi.configPath),packageJsonPath:t(this,this.config.napi.packageJsonPath)})},async build(){this.debug(`Building the N-API Rust runtime artifacts for the Powerlines project.`);let{task:e}=await this.napi.build({cwd:r(this.config.root,this.config.cwd),package:this.config.napi.packageName,outputDir:t(this,this.config.napi.outputDir),configPath:t(this,this.config.napi.configPath),manifestPath:t(this,this.config.napi.manifestPath),packageJsonPath:t(this,this.config.napi.packageJsonPath),target:this.config.napi.target?.triple,profile:this.config.napi.profile,release:this.config.napi.release??this.config.mode===`production`,features:this.config.napi.features,noDefaultFeatures:this.config.napi.noDefaultFeatures,strip:this.config.napi.strip,platform:this.config.napi.platform,noDtsHeader:this.config.napi.noDtsHeader,jsBinding:this.config.napi.jsBinding,dts:this.config.napi.dts,dtsCache:this.config.napi.dtsCache??!this.config.skipCache,verbose:i(this)}),n=await e;for(let e of n){let t=await this.fs.read(e.path);t&&await this.fs.write(e.path,t)}}}];export{l as default,l as plugin};
1
+ import{DEFAULT_TARGETS as e}from"./types/targets.mjs";import{formatPath as t}from"./helpers/format-path.mjs";import{appendPath as n}from"@stryke/path/append";import{isVerbose as r}from"powerlines/plugin-utils";import{NapiCli as i,parseTriple as a}from"@napi-rs/cli";import{toArray as o}from"@stryke/convert/to-array";import{isString as s}from"@stryke/type-checks/is-string";import{defu as c}from"defu";const l=(l={})=>[{name:`napi-rs`,config(){return{napi:{dts:`binding.d.ts`,jsBinding:`binding.js`,outputDir:this.config.root,platform:!0,strip:!1,...l}}},async configResolved(){!this.config.napi.target&&this.additionalArgs.target&&(s(this.additionalArgs.target)||Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0)?this.config.napi.target=a(Array.isArray(this.additionalArgs.target)&&this.additionalArgs.target.length>0?this.additionalArgs.target[0]:String(this.additionalArgs.target)):this.config.napi.target=s(this.config.napi.target)?a(this.config.napi.target):this.config.napi.target,this.config.napi.targets||(this.additionalArgs.targets&&(s(this.additionalArgs.targets)||Array.isArray(this.additionalArgs.targets)&&this.additionalArgs.targets.length>0)?this.config.napi.targets=o(this.additionalArgs.targets).map(e=>a(e)):this.config.napi.targets=e.map(e=>a(e))),!this.config.napi.profile&&this.additionalArgs.profile&&(s(this.additionalArgs.profile)||Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0)&&(this.config.napi.profile=Array.isArray(this.additionalArgs.profile)&&this.additionalArgs.profile.length>0?this.additionalArgs.profile[0]:String(this.additionalArgs.profile)),!this.config.napi.release&&this.additionalArgs.release&&(this.config.napi.release=!!this.additionalArgs.release),!this.config.napi.configPath&&this.additionalArgs.configPath&&(s(this.additionalArgs.configPath)||Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0)&&(this.config.napi.configPath=Array.isArray(this.additionalArgs.configPath)&&this.additionalArgs.configPath.length>0?this.additionalArgs.configPath[0]:String(this.additionalArgs.configPath)),!this.config.napi.manifestPath&&this.additionalArgs.manifestPath&&(s(this.additionalArgs.manifestPath)||Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0)&&(this.config.napi.manifestPath=Array.isArray(this.additionalArgs.manifestPath)&&this.additionalArgs.manifestPath.length>0?this.additionalArgs.manifestPath[0]:String(this.additionalArgs.manifestPath)),!this.config.napi.npmDir&&this.additionalArgs.npmDir&&(s(this.additionalArgs.npmDir)||Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0)&&(this.config.napi.npmDir=Array.isArray(this.additionalArgs.npmDir)&&this.additionalArgs.npmDir.length>0?this.additionalArgs.npmDir[0]:String(this.additionalArgs.npmDir)),this.config.napi.packageJsonPath||(this.additionalArgs.packageJsonPath&&(s(this.additionalArgs.packageJsonPath)||Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0)&&(this.config.napi.packageJsonPath=Array.isArray(this.additionalArgs.packageJsonPath)&&this.additionalArgs.packageJsonPath.length>0?this.additionalArgs.packageJsonPath[0]:String(this.additionalArgs.packageJsonPath)),this.config.napi.packageJsonPath||(this.config.napi.packageJsonPath=n(this.config.root,`package.json`))),this.config.napi.target?.platform===`wasm`&&(this.dependencies[`@napi-rs/wasm-runtime`]=`^1.1.4`);let t={},r={};this.fs.existsSync(this.config.napi.packageJsonPath)&&(t=JSON.parse(await this.fs.read(this.config.napi.packageJsonPath)||`{}`)),r={...t},t.napi={binaryName:this.config.napi.binaryName,packageName:this.config.napi.packageName,targets:this.config.napi.targets?.map(e=>e.triple),npmClient:this.config.napi.npmClient,constEnum:this.config.napi.constEnum,dtsHeader:this.config.napi.dtsHeader,dtsHeaderFile:this.config.napi.dtsHeaderFile,...t.napi,wasm:this.config.napi.target?.platform===`wasm`?c(t.napi?.wasm??{},this.config.napi.wasm??{},{initialMemory:16384}):void 0},JSON.stringify(t)!==JSON.stringify(r)&&await this.fs.write(this.config.napi.packageJsonPath,JSON.stringify(t,null,2))},async prepare(){this.debug(`Preparing the N-API Rust runtime artifacts for the Powerlines project.`),this.napi=new i,this.config.napi.npmDir&&await this.napi.createNpmDirs({cwd:n(this.config.root,this.config.cwd),npmDir:t(this,this.config.napi.npmDir),configPath:t(this,this.config.napi.configPath),packageJsonPath:t(this,this.config.napi.packageJsonPath)})},async build(){this.debug(`Building the N-API Rust runtime artifacts for the Powerlines project.`);let{task:e}=await this.napi.build({cwd:n(this.config.root,this.config.cwd),package:this.config.napi.packageName,outputDir:t(this,this.config.napi.outputDir),configPath:t(this,this.config.napi.configPath),manifestPath:t(this,this.config.napi.manifestPath),packageJsonPath:t(this,this.config.napi.packageJsonPath),target:this.config.napi.target?.triple,profile:this.config.napi.profile,release:this.config.napi.release??this.config.mode===`production`,features:this.config.napi.features,noDefaultFeatures:this.config.napi.noDefaultFeatures,strip:this.config.napi.strip,platform:this.config.napi.platform,noDtsHeader:this.config.napi.noDtsHeader,jsBinding:this.config.napi.jsBinding,dts:this.config.napi.dts,dtsCache:this.config.napi.dtsCache??!this.config.skipCache,verbose:r(this)}),i=await e;for(let e of i){let t=await this.fs.read(e.path);t&&await this.fs.write(e.path,t)}}}];export{l as default,l as plugin};
2
2
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.tsx"],"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 { NapiCli, parseTriple } from \"@napi-rs/cli\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { defu } from \"defu\";\nimport { Plugin } from \"powerlines\";\nimport { isVerbose } from \"powerlines/plugin-utils\";\nimport { formatPath } from \"./helpers/format-path\";\nimport { DEFAULT_TARGETS } from \"./types\";\nimport type { NapiPluginContext, NapiPluginOptions } from \"./types/plugin\";\n\nexport type * from \"./types\";\n\ndeclare module \"powerlines\" {\n interface Config {\n napi?: NapiPluginOptions;\n }\n}\n\n/**\n * A Powerlines plugin for integrating with N-API Rust modules, providing features such as automatic generation of bindings and runtime integration with N-API Rust modules.\n *\n * @see https://napi.rs/docs\n */\nexport const plugin = <TContext extends NapiPluginContext = NapiPluginContext>(\n options: NapiPluginOptions = {}\n) => {\n return [\n {\n name: \"napi-rs\",\n config() {\n return {\n napi: {\n dts: \"binding.d.ts\",\n jsBinding: \"binding.js\",\n outputDir: this.config.root,\n platform: true,\n strip: false,\n ...options\n }\n };\n },\n async configResolved() {\n if (\n !this.config.napi.target &&\n this.additionalArgs.target &&\n (isString(this.additionalArgs.target) ||\n (Array.isArray(this.additionalArgs.target) &&\n this.additionalArgs.target.length > 0))\n ) {\n this.config.napi.target = parseTriple(\n (Array.isArray(this.additionalArgs.target) &&\n this.additionalArgs.target.length > 0\n ? this.additionalArgs.target[0]\n : String(this.additionalArgs.target))!\n );\n } else {\n this.config.napi.target = isString(this.config.napi.target)\n ? parseTriple(this.config.napi.target)\n : this.config.napi.target;\n }\n\n if (!this.config.napi.targets) {\n if (\n this.additionalArgs.targets &&\n (isString(this.additionalArgs.targets) ||\n (Array.isArray(this.additionalArgs.targets) &&\n this.additionalArgs.targets.length > 0))\n ) {\n this.config.napi.targets = toArray(this.additionalArgs.targets).map(\n (target: string) => parseTriple(target)\n );\n } else {\n this.config.napi.targets = DEFAULT_TARGETS.map(target =>\n parseTriple(target)\n );\n }\n }\n\n if (\n !this.config.napi.profile &&\n this.additionalArgs.profile &&\n (isString(this.additionalArgs.profile) ||\n (Array.isArray(this.additionalArgs.profile) &&\n this.additionalArgs.profile.length > 0))\n ) {\n this.config.napi.profile = (\n Array.isArray(this.additionalArgs.profile) &&\n this.additionalArgs.profile.length > 0\n ? this.additionalArgs.profile[0]\n : String(this.additionalArgs.profile)\n )!;\n }\n\n if (!this.config.napi.release && this.additionalArgs.release) {\n this.config.napi.release = Boolean(this.additionalArgs.release);\n }\n\n if (\n !this.config.napi.configPath &&\n this.additionalArgs.configPath &&\n (isString(this.additionalArgs.configPath) ||\n (Array.isArray(this.additionalArgs.configPath) &&\n this.additionalArgs.configPath.length > 0))\n ) {\n this.config.napi.configPath = (\n Array.isArray(this.additionalArgs.configPath) &&\n this.additionalArgs.configPath.length > 0\n ? this.additionalArgs.configPath[0]\n : String(this.additionalArgs.configPath)\n )!;\n }\n\n if (\n !this.config.napi.manifestPath &&\n this.additionalArgs.manifestPath &&\n (isString(this.additionalArgs.manifestPath) ||\n (Array.isArray(this.additionalArgs.manifestPath) &&\n this.additionalArgs.manifestPath.length > 0))\n ) {\n this.config.napi.manifestPath = (\n Array.isArray(this.additionalArgs.manifestPath) &&\n this.additionalArgs.manifestPath.length > 0\n ? this.additionalArgs.manifestPath[0]\n : String(this.additionalArgs.manifestPath)\n )!;\n }\n\n if (\n !this.config.napi.npmDir &&\n this.additionalArgs.npmDir &&\n (isString(this.additionalArgs.npmDir) ||\n (Array.isArray(this.additionalArgs.npmDir) &&\n this.additionalArgs.npmDir.length > 0))\n ) {\n this.config.napi.npmDir = (\n Array.isArray(this.additionalArgs.npmDir) &&\n this.additionalArgs.npmDir.length > 0\n ? this.additionalArgs.npmDir[0]\n : String(this.additionalArgs.npmDir)\n )!;\n }\n\n if (!this.config.napi.packageJsonPath) {\n if (\n this.additionalArgs.packageJsonPath &&\n (isString(this.additionalArgs.packageJsonPath) ||\n (Array.isArray(this.additionalArgs.packageJsonPath) &&\n this.additionalArgs.packageJsonPath.length > 0))\n ) {\n this.config.napi.packageJsonPath = (\n Array.isArray(this.additionalArgs.packageJsonPath) &&\n this.additionalArgs.packageJsonPath.length > 0\n ? this.additionalArgs.packageJsonPath[0]\n : String(this.additionalArgs.packageJsonPath)\n )!;\n }\n\n if (!this.config.napi.packageJsonPath) {\n this.config.napi.packageJsonPath = appendPath(\n this.config.root,\n \"package.json\"\n );\n }\n }\n\n if (this.config.napi.target?.platform === \"wasm\") {\n this.dependencies[\"@napi-rs/wasm-runtime\"] = \"^1.1.4\";\n }\n\n let packageJson = {} as Record<string, any>;\n let originalPackageJson = {} as Record<string, any>;\n\n if (this.fs.existsSync(this.config.napi.packageJsonPath)) {\n packageJson = JSON.parse(\n (await this.fs.read(this.config.napi.packageJsonPath)) || \"{}\"\n );\n }\n\n originalPackageJson = { ...packageJson };\n packageJson.napi = {\n binaryName: this.config.napi.binaryName,\n packageName: this.config.napi.packageName,\n targets: this.config.napi.targets?.map(target => target.triple),\n npmClient: this.config.napi.npmClient,\n constEnum: this.config.napi.constEnum,\n dtsHeader: this.config.napi.dtsHeader,\n dtsHeaderFile: this.config.napi.dtsHeaderFile,\n ...packageJson.napi,\n wasm:\n this.config.napi.target?.platform === \"wasm\"\n ? defu(\n packageJson.napi?.wasm ?? {},\n this.config.napi.wasm ?? {},\n { initialMemory: 16384 }\n )\n : undefined\n };\n\n if (\n JSON.stringify(packageJson) !== JSON.stringify(originalPackageJson)\n ) {\n await this.fs.write(\n this.config.napi.packageJsonPath,\n JSON.stringify(packageJson, null, 2)\n );\n }\n },\n async prepare() {\n this.debug(\n `Preparing the N-API Rust runtime artifacts for the Powerlines project.`\n );\n\n this.napi = new NapiCli();\n\n if (this.config.napi.npmDir) {\n await this.napi.createNpmDirs({\n cwd: appendPath(this.config.root, this.config.cwd),\n npmDir: formatPath(this, this.config.napi.npmDir),\n configPath: formatPath(this, this.config.napi.configPath),\n packageJsonPath: formatPath(this, this.config.napi.packageJsonPath)\n });\n }\n },\n async build() {\n this.debug(\n `Building the N-API Rust runtime artifacts for the Powerlines project.`\n );\n\n const { task } = await this.napi.build({\n cwd: appendPath(this.config.root, this.config.cwd),\n package: this.config.napi.packageName,\n outputDir: formatPath(this, this.config.napi.outputDir),\n configPath: formatPath(this, this.config.napi.configPath),\n manifestPath: formatPath(this, this.config.napi.manifestPath),\n packageJsonPath: formatPath(this, this.config.napi.packageJsonPath),\n target: this.config.napi.target?.triple,\n profile: this.config.napi.profile,\n release:\n this.config.napi.release ?? this.config.mode === \"production\",\n features: this.config.napi.features,\n noDefaultFeatures: this.config.napi.noDefaultFeatures,\n strip: this.config.napi.strip,\n platform: this.config.napi.platform,\n noDtsHeader: this.config.napi.noDtsHeader,\n jsBinding: this.config.napi.jsBinding,\n dts: this.config.napi.dts,\n dtsCache: this.config.napi.dtsCache ?? !this.config.skipCache,\n verbose: isVerbose(this)\n });\n\n const outputs = await task;\n for (const output of outputs) {\n const code = await this.fs.read(output.path);\n if (code) {\n await this.fs.write(output.path, code);\n }\n }\n }\n }\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.tsx"],"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 { NapiCli, parseTriple } from \"@napi-rs/cli\";\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { appendPath } from \"@stryke/path/append\";\nimport { isString } from \"@stryke/type-checks/is-string\";\nimport { defu } from \"defu\";\nimport { Plugin } from \"powerlines\";\nimport { isVerbose } from \"powerlines/plugin-utils\";\nimport { formatPath } from \"./helpers/format-path\";\nimport { DEFAULT_TARGETS } from \"./types\";\nimport type { NapiPluginContext, NapiPluginOptions } from \"./types/plugin\";\n\nexport type * from \"./types\";\n\ndeclare module \"powerlines\" {\n interface Config {\n napi?: NapiPluginOptions;\n }\n}\n\n/**\n * A Powerlines plugin for integrating with N-API Rust modules, providing features such as automatic generation of bindings and runtime integration with N-API Rust modules.\n *\n * @see https://napi.rs/docs\n */\nexport const plugin = <TContext extends NapiPluginContext = NapiPluginContext>(\n options: NapiPluginOptions = {}\n) => {\n return [\n {\n name: \"napi-rs\",\n config() {\n return {\n napi: {\n dts: \"binding.d.ts\",\n jsBinding: \"binding.js\",\n outputDir: this.config.root,\n platform: true,\n strip: false,\n ...options\n }\n };\n },\n async configResolved() {\n if (\n !this.config.napi.target &&\n this.additionalArgs.target &&\n (isString(this.additionalArgs.target) ||\n (Array.isArray(this.additionalArgs.target) &&\n this.additionalArgs.target.length > 0))\n ) {\n this.config.napi.target = parseTriple(\n (Array.isArray(this.additionalArgs.target) &&\n this.additionalArgs.target.length > 0\n ? this.additionalArgs.target[0]\n : String(this.additionalArgs.target))!\n );\n } else {\n this.config.napi.target = isString(this.config.napi.target)\n ? parseTriple(this.config.napi.target)\n : this.config.napi.target;\n }\n\n if (!this.config.napi.targets) {\n if (\n this.additionalArgs.targets &&\n (isString(this.additionalArgs.targets) ||\n (Array.isArray(this.additionalArgs.targets) &&\n this.additionalArgs.targets.length > 0))\n ) {\n this.config.napi.targets = toArray(this.additionalArgs.targets).map(\n (target: string) => parseTriple(target)\n );\n } else {\n this.config.napi.targets = DEFAULT_TARGETS.map(target =>\n parseTriple(target)\n );\n }\n }\n\n if (\n !this.config.napi.profile &&\n this.additionalArgs.profile &&\n (isString(this.additionalArgs.profile) ||\n (Array.isArray(this.additionalArgs.profile) &&\n this.additionalArgs.profile.length > 0))\n ) {\n this.config.napi.profile = (\n Array.isArray(this.additionalArgs.profile) &&\n this.additionalArgs.profile.length > 0\n ? this.additionalArgs.profile[0]\n : String(this.additionalArgs.profile)\n )!;\n }\n\n if (!this.config.napi.release && this.additionalArgs.release) {\n this.config.napi.release = Boolean(this.additionalArgs.release);\n }\n\n if (\n !this.config.napi.configPath &&\n this.additionalArgs.configPath &&\n (isString(this.additionalArgs.configPath) ||\n (Array.isArray(this.additionalArgs.configPath) &&\n this.additionalArgs.configPath.length > 0))\n ) {\n this.config.napi.configPath = (\n Array.isArray(this.additionalArgs.configPath) &&\n this.additionalArgs.configPath.length > 0\n ? this.additionalArgs.configPath[0]\n : String(this.additionalArgs.configPath)\n )!;\n }\n\n if (\n !this.config.napi.manifestPath &&\n this.additionalArgs.manifestPath &&\n (isString(this.additionalArgs.manifestPath) ||\n (Array.isArray(this.additionalArgs.manifestPath) &&\n this.additionalArgs.manifestPath.length > 0))\n ) {\n this.config.napi.manifestPath = (\n Array.isArray(this.additionalArgs.manifestPath) &&\n this.additionalArgs.manifestPath.length > 0\n ? this.additionalArgs.manifestPath[0]\n : String(this.additionalArgs.manifestPath)\n )!;\n }\n\n if (\n !this.config.napi.npmDir &&\n this.additionalArgs.npmDir &&\n (isString(this.additionalArgs.npmDir) ||\n (Array.isArray(this.additionalArgs.npmDir) &&\n this.additionalArgs.npmDir.length > 0))\n ) {\n this.config.napi.npmDir = (\n Array.isArray(this.additionalArgs.npmDir) &&\n this.additionalArgs.npmDir.length > 0\n ? this.additionalArgs.npmDir[0]\n : String(this.additionalArgs.npmDir)\n )!;\n }\n\n if (!this.config.napi.packageJsonPath) {\n if (\n this.additionalArgs.packageJsonPath &&\n (isString(this.additionalArgs.packageJsonPath) ||\n (Array.isArray(this.additionalArgs.packageJsonPath) &&\n this.additionalArgs.packageJsonPath.length > 0))\n ) {\n this.config.napi.packageJsonPath = (\n Array.isArray(this.additionalArgs.packageJsonPath) &&\n this.additionalArgs.packageJsonPath.length > 0\n ? this.additionalArgs.packageJsonPath[0]\n : String(this.additionalArgs.packageJsonPath)\n )!;\n }\n\n if (!this.config.napi.packageJsonPath) {\n this.config.napi.packageJsonPath = appendPath(\n this.config.root,\n \"package.json\"\n );\n }\n }\n\n if (this.config.napi.target?.platform === \"wasm\") {\n this.dependencies[\"@napi-rs/wasm-runtime\"] = \"^1.1.4\";\n }\n\n let packageJson = {} as Record<string, any>;\n let originalPackageJson = {} as Record<string, any>;\n\n if (this.fs.existsSync(this.config.napi.packageJsonPath)) {\n packageJson = JSON.parse(\n (await this.fs.read(this.config.napi.packageJsonPath)) || \"{}\"\n );\n }\n\n originalPackageJson = { ...packageJson };\n packageJson.napi = {\n binaryName: this.config.napi.binaryName,\n packageName: this.config.napi.packageName,\n targets: this.config.napi.targets?.map(target => target.triple),\n npmClient: this.config.napi.npmClient,\n constEnum: this.config.napi.constEnum,\n dtsHeader: this.config.napi.dtsHeader,\n dtsHeaderFile: this.config.napi.dtsHeaderFile,\n ...packageJson.napi,\n wasm:\n this.config.napi.target?.platform === \"wasm\"\n ? defu(\n packageJson.napi?.wasm ?? {},\n this.config.napi.wasm ?? {},\n { initialMemory: 16384 }\n )\n : undefined\n };\n\n if (\n JSON.stringify(packageJson) !== JSON.stringify(originalPackageJson)\n ) {\n await this.fs.write(\n this.config.napi.packageJsonPath,\n JSON.stringify(packageJson, null, 2)\n );\n }\n },\n async prepare() {\n this.debug(\n `Preparing the N-API Rust runtime artifacts for the Powerlines project.`\n );\n\n this.napi = new NapiCli();\n\n if (this.config.napi.npmDir) {\n await this.napi.createNpmDirs({\n cwd: appendPath(this.config.root, this.config.cwd),\n npmDir: formatPath(this, this.config.napi.npmDir),\n configPath: formatPath(this, this.config.napi.configPath),\n packageJsonPath: formatPath(this, this.config.napi.packageJsonPath)\n });\n }\n },\n async build() {\n this.debug(\n `Building the N-API Rust runtime artifacts for the Powerlines project.`\n );\n\n const { task } = await this.napi.build({\n cwd: appendPath(this.config.root, this.config.cwd),\n package: this.config.napi.packageName,\n outputDir: formatPath(this, this.config.napi.outputDir),\n configPath: formatPath(this, this.config.napi.configPath),\n manifestPath: formatPath(this, this.config.napi.manifestPath),\n packageJsonPath: formatPath(this, this.config.napi.packageJsonPath),\n target: this.config.napi.target?.triple,\n profile: this.config.napi.profile,\n release:\n this.config.napi.release ?? this.config.mode === \"production\",\n features: this.config.napi.features,\n noDefaultFeatures: this.config.napi.noDefaultFeatures,\n strip: this.config.napi.strip,\n platform: this.config.napi.platform,\n noDtsHeader: this.config.napi.noDtsHeader,\n jsBinding: this.config.napi.jsBinding,\n dts: this.config.napi.dts,\n dtsCache: this.config.napi.dtsCache ?? !this.config.skipCache,\n verbose: isVerbose(this)\n });\n\n const outputs = await task;\n for (const output of outputs) {\n const code = await this.fs.read(output.path);\n if (code) {\n await this.fs.write(output.path, code);\n }\n }\n }\n }\n ] as Plugin<TContext>[];\n};\n\nexport default plugin;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerlines/plugin-napi-rs",
3
- "version": "0.2.28",
3
+ "version": "0.2.30",
4
4
  "private": false,
5
5
  "description": "A package containing a Powerlines plugin for integrating with N-API Rust modules.",
6
6
  "keywords": ["napi-rs", "powerlines", "storm-software", "powerlines-plugin"],
@@ -137,22 +137,22 @@
137
137
  "@alloy-js/markdown": "0.23.0-dev.1",
138
138
  "@alloy-js/typescript": "0.23.0-dev.4",
139
139
  "@napi-rs/cli": "^3.6.2",
140
- "@powerlines/plugin-alloy": "^0.26.71",
141
- "@powerlines/plugin-automd": "^0.1.452",
142
- "@powerlines/plugin-plugin": "^0.12.403",
143
- "@stryke/fs": "^0.33.69",
144
- "@stryke/path": "^0.28.1",
145
- "@stryke/string-format": "^0.17.12",
146
- "@stryke/type-checks": "^0.6.4",
147
- "@stryke/types": "^0.11.6",
140
+ "@powerlines/plugin-alloy": "^0.26.73",
141
+ "@powerlines/plugin-automd": "^0.1.454",
142
+ "@powerlines/plugin-plugin": "^0.12.405",
143
+ "@stryke/convert": "^0.7.3",
144
+ "@stryke/fs": "^0.33.70",
145
+ "@stryke/path": "^0.28.2",
146
+ "@stryke/string-format": "^0.17.13",
147
+ "@stryke/type-checks": "^0.6.5",
148
+ "@stryke/types": "^0.12.0",
148
149
  "automd": "^0.4.3",
149
150
  "defu": "^6.1.7",
150
- "powerlines": "^0.45.3"
151
+ "powerlines": "^0.46.1"
151
152
  },
152
153
  "devDependencies": { "@types/node": "^25.6.0" },
153
154
  "peerDependencies": { "@napi-rs/wasm-runtime": ">=1.1.4" },
154
155
  "peerDependenciesMeta": { "@napi-rs/wasm-runtime": { "optional": true } },
155
156
  "publishConfig": { "access": "public" },
156
- "inlinedDependencies": { "@stryke/convert": "0.7.2" },
157
- "gitHead": "8bd8d3c0e34fa7d04dafa0f05d740e5246a713cb"
157
+ "gitHead": "de70be13e6fd973ea0b1c56b8915223dcfb4a708"
158
158
  }
@@ -1 +0,0 @@
1
- function e(e){return e??=[],Array.isArray(e)?e:[e]}exports.toArray=e;
@@ -1,2 +0,0 @@
1
- function e(e){return e??=[],Array.isArray(e)?e:[e]}export{e as toArray};
2
- //# sourceMappingURL=to-array.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"to-array.mjs","names":[],"sources":["../../../../../../../../../../node_modules/.pnpm/@stryke+convert@0.7.2/node_modules/@stryke/convert/dist/to-array.mjs"],"sourcesContent":["//#region src/to-array.ts\n/**\n* Convert `Arrayable<T>` to `Array<T>`\n*\n* @param array - The `Arrayable<T>` to convert\n* @returns An `Array<T>` containing the elements of the input\n*/\nfunction toArray(array) {\n\tarray = array ?? [];\n\treturn Array.isArray(array) ? array : [array];\n}\n\n//#endregion\nexport { toArray };\n//# sourceMappingURL=to-array.mjs.map"],"x_google_ignoreList":[0],"mappings":"AAOA,SAAS,EAAQ,EAAO,CAEvB,MADA,KAAkB,EAAC,CACZ,MAAM,QAAQ,EAAO,CAAE,EAAS,CAAA,EAAM"}