@node-i3x/app 0.8.4 → 0.8.6

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/cli.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import{createRequire as $}from"module";import{Command as j}from"commander";import{cosmiconfig as M}from"cosmiconfig";import{load as C}from"js-yaml";var w={endpoint:"opc.tcp://localhost:4840",port:8080,host:"0.0.0.0",securityMode:"Auto",securityPolicy:"Auto",optimizedClient:"auto",publishIntervalMs:1e3,samplingIntervalMs:250,logLevel:"info",preload:!0,preloadStrict:!1,readOnly:!1,requireAuth:!1,experimental:!1};function s(e){return process.env[e]}function v(e){let i=process.env[e];return i?parseInt(i,10):void 0}function h(e){let i=process.env[e];if(i)return i==="1"||i.toLowerCase()==="true"}function D(){let e={},i=s("NODE_I3X_OPCUA_ENDPOINT")??s("NODE_I3X_ENDPOINT");i&&(e.endpoint=i);let t=v("NODE_I3X_PORT");t!==void 0&&(e.port=t);let r=s("NODE_I3X_HOST");r&&(e.host=r);let c=s("NODE_I3X_OPCUA_SECURITY_MODE");c&&(e.securityMode=c);let o=s("NODE_I3X_OPCUA_SECURITY_POLICY");o&&(e.securityPolicy=o);let a=s("NODE_I3X_PKI_FOLDER");a&&(e.pkiFolder=a);let m=s("NODE_I3X_CERTIFICATE_SUBJECT");m&&(e.certificateSubject=m);let u=s("NODE_I3X_OPCUA_OPTIMIZED_CLIENT");(u==="auto"||u==="disabled")&&(e.optimizedClient=u);let d=v("NODE_I3X_PUBLISH_INTERVAL_MS");d!==void 0&&(e.publishIntervalMs=d);let p=v("NODE_I3X_SAMPLING_INTERVAL_MS");p!==void 0&&(e.samplingIntervalMs=p);let g=s("NODE_I3X_LOG_LEVEL");g&&(e.logLevel=g);let y=h("NODE_I3X_PRELOAD");y!==void 0&&(e.preload=y);let I=h("NODE_I3X_PRELOAD_STRICT");I!==void 0&&(e.preloadStrict=I);let f=s("NODE_I3X_OPCUA_USERNAME");f&&(e.username=f);let n=s("NODE_I3X_OPCUA_PASSWORD");n&&(e.password=n);let E=h("NODE_I3X_READ_ONLY");E!==void 0&&(e.readOnly=E);let S=h("NODE_I3X_REQUIRE_AUTH");S!==void 0&&(e.requireAuth=S);let O=h("NODE_I3X_EXPERIMENTAL");O!==void 0&&(e.experimental=O);let _=s("NODE_I3X_API_KEY");return _&&(e.apiKey=_),e}async function P(e,i){let t={},r=M("i3x",{searchPlaces:["i3x.config.yml","i3x.config.yaml","i3x.config.json",".i3xrc",".i3xrc.json",".i3xrc.yml",".i3xrc.yaml","package.json"],loaders:{".yml":(o,a)=>C(a),".yaml":(o,a)=>C(a)}});try{let o=i?await r.load(i):await r.search();o&&!o.isEmpty&&(t=o.config)}catch(o){console.debug(`No config file loaded: ${o.message}`)}let c=D();return{...w,...t,...c,...e}}import{randomBytes as U}from"crypto";import{consoleLogger as L,createI3xStack as T}from"@node-i3x/core";import{OpcUaClient as k,OpcUaDataSourceAdapter as R}from"@node-i3x/opcua-connector";import{createApp as X}from"@node-i3x/rest-server";function A(e,i,t){let r=["",` i3X Server v${e}`,"",` OPC UA: ${i.endpoint}`,` REST: http://${i.host}:${i.port}`,` Auth: ${i.apiKey?`Bearer${i.requireAuth?" (required)":""}`:"none (open)"}`];t!==void 0&&r.push(` Model: ${t} nodes`),r.push(""),r.push(" Press Ctrl+C to stop"),r.push("");let o=Math.max(...r.map(d=>d.length))+2,a="-".repeat(o),m=` +${a}+`,u=` +${a}+`;console.log(m);for(let d of r)console.log(` |${d.padEnd(o)}|`);console.log(u),console.log()}function l(e,i,t){let r={type:"progress",phase:e,message:i,timestamp:Date.now(),...t};typeof process.send=="function"&&process.send(r)}async function b(e,i){let t=L;l("initializing","Creating OPC UA client...");let r=new k({endpointUrl:e.endpoint,securityMode:e.securityMode,securityPolicy:e.securityPolicy,pkiFolder:e.pkiFolder,certificateSubject:e.certificateSubject,optimizedClient:e.optimizedClient,username:e.username,password:e.password},t),c=new R(r,t),{modelService:o,valueService:a,historyService:m,subscriptionService:u,typeService:d}=T(c,t,{publishIntervalMs:e.publishIntervalMs,samplingIntervalMs:e.samplingIntervalMs});l("creating-rest","Creating REST API server...");let p=e.apiKey;if(p==="auto"&&(p=`i3x_sk_${U(16).toString("hex")}`),e.requireAuth&&!p&&(t.error('requireAuth is enabled but no apiKey is configured. Set --api-key <key> (or "auto") to enable Bearer token authentication, or disable requireAuth.'),process.exit(1)),p){let n=e.requireAuth?"enforced":"enabled";t.info(`API authentication ${n} (Bearer token)`)}let g=await X({dataSource:c,modelService:o,typeService:d,valueService:a,historyService:m,subscriptionService:u,logger:t,readOnly:e.readOnly,apiKey:p,experimental:e.experimental,getOpcuaStats:()=>r.getStats()}),y=!1,I=async()=>{if(t.info("Shutting down..."),y)try{await g.close()}catch(n){t.debug(`Failed to close http server: ${n.message}`)}try{await u.close()}catch(n){t.debug(`Failed to close subscription service: ${n.message}`)}try{await c.disconnect()}catch(n){t.debug(`Failed to disconnect datasource: ${n.message}`)}process.exit(0)};process.on("SIGINT",I),process.on("SIGTERM",I),l("connecting",`Connecting to ${e.endpoint}...`),await c.connect(),l("connected","OPC UA session established");let f;if(e.preload)try{l("preloading-model","Preloading object model..."),f=(await o.preloadModel()).nodesById.size,l("model-loaded",`Model loaded: ${f} nodes`,{nodeCount:f}),l("preloading-types","Preloading type definitions..."),await d.preloadTypes(),l("types-loaded","Type definitions loaded")}catch(n){l("error",`Model preload failed: ${String(n)}`),t.error(`Model preload failed: ${String(n)}`),e.preloadStrict&&process.exit(1)}l("starting-http","Starting HTTP server..."),await g.listen({port:e.port,host:e.host}),y=!0,l("ready",`Server listening on ${e.host}:${e.port}`,{port:e.port,host:e.host,apiKey:p,opcuaStartupStats:r.getStats()}),A(i,e,f)}var q=$(import.meta.url),x=q("../package.json"),N=new j;N.name("i3x").description("Expose OPC UA servers as i3X REST APIs").version(x.version).option("-e, --endpoint <url>","OPC UA endpoint URL").option("-p, --port <port>","REST API port",parseInt).option("-H, --host <host>","REST API bind address").option("--security-mode <mode>","OPC UA security mode (None, Sign, SignAndEncrypt, Auto)").option("--security-policy <policy>","OPC UA security policy (e.g. Basic256Sha256)").option("--pki-folder <path>","PKI folder for certificate storage").option("--certificate-subject <subject>","X.500 subject for the client certificate (e.g. /CN=my-app/O=Acme/OU=user@acme.com)").option("--optimized-client <mode>","Optimized client: auto | disabled").option("--publish-interval <ms>","OPC UA publishing interval in milliseconds",parseInt).option("--sampling-interval <ms>","OPC UA sampling interval in milliseconds",parseInt).option("--log-level <level>","Log level: debug | info | warn | error").option("--no-preload","Skip model preload on startup").option("--preload-strict","Exit if model preload fails").option("--username <user>","OPC UA username for UserName identity token").option("--password <pass>","OPC UA password for UserName identity token").option("--read-only","Disable write operations (advertise read-only capabilities)").option("--experimental","Enable experimental convenience and extension routes").option("--require-auth","Require Bearer token auth (exit if no apiKey is configured)").option("--api-key <key>",'API key for Bearer token auth (use "auto" to generate)').option("-c, --config <path>","Path to config file").action(async e=>{let i={};e.endpoint&&(i.endpoint=e.endpoint),e.port!==void 0&&(i.port=e.port),e.host&&(i.host=e.host),e.securityMode&&(i.securityMode=e.securityMode),e.securityPolicy&&(i.securityPolicy=e.securityPolicy),e.pkiFolder&&(i.pkiFolder=e.pkiFolder),e.certificateSubject&&(i.certificateSubject=e.certificateSubject),e.optimizedClient&&(i.optimizedClient=e.optimizedClient),e.publishInterval!==void 0&&(i.publishIntervalMs=e.publishInterval),e.samplingInterval!==void 0&&(i.samplingIntervalMs=e.samplingInterval),e.logLevel&&(i.logLevel=e.logLevel),e.preload===!1&&(i.preload=!1),e.preloadStrict&&(i.preloadStrict=!0),e.username&&(i.username=e.username),e.password&&(i.password=e.password),e.readOnly&&(i.readOnly=!0),e.experimental&&(i.experimental=!0),e.requireAuth&&(i.requireAuth=!0),e.apiKey&&(i.apiKey=e.apiKey);let t=await P(i,e.config);await b(t,x.version)});N.parse();
2
+ import{createRequire as $}from"module";import{Command as j}from"commander";import{cosmiconfig as w}from"cosmiconfig";import{load as C}from"js-yaml";var M={endpoint:"opc.tcp://localhost:4840",port:8080,host:"0.0.0.0",securityMode:"Auto",securityPolicy:"Auto",optimizedClient:"auto",publishIntervalMs:1e3,samplingIntervalMs:250,logLevel:"info",preload:!0,preloadStrict:!1,readOnly:!1,requireAuth:!0,experimental:!1};function s(e){return process.env[e]}function v(e){let t=process.env[e];return t?parseInt(t,10):void 0}function h(e){let t=process.env[e];if(t)return t==="1"||t.toLowerCase()==="true"}function D(){let e={},t=s("NODE_I3X_OPCUA_ENDPOINT")??s("NODE_I3X_ENDPOINT");t&&(e.endpoint=t);let i=v("NODE_I3X_PORT");i!==void 0&&(e.port=i);let r=s("NODE_I3X_HOST");r&&(e.host=r);let c=s("NODE_I3X_OPCUA_SECURITY_MODE");c&&(e.securityMode=c);let o=s("NODE_I3X_OPCUA_SECURITY_POLICY");o&&(e.securityPolicy=o);let a=s("NODE_I3X_PKI_FOLDER");a&&(e.pkiFolder=a);let m=s("NODE_I3X_CERTIFICATE_SUBJECT");m&&(e.certificateSubject=m);let u=s("NODE_I3X_OPCUA_OPTIMIZED_CLIENT");(u==="auto"||u==="disabled")&&(e.optimizedClient=u);let d=v("NODE_I3X_PUBLISH_INTERVAL_MS");d!==void 0&&(e.publishIntervalMs=d);let p=v("NODE_I3X_SAMPLING_INTERVAL_MS");p!==void 0&&(e.samplingIntervalMs=p);let g=s("NODE_I3X_LOG_LEVEL");g&&(e.logLevel=g);let y=h("NODE_I3X_PRELOAD");y!==void 0&&(e.preload=y);let I=h("NODE_I3X_PRELOAD_STRICT");I!==void 0&&(e.preloadStrict=I);let f=s("NODE_I3X_OPCUA_USERNAME");f&&(e.username=f);let n=s("NODE_I3X_OPCUA_PASSWORD");n&&(e.password=n);let E=h("NODE_I3X_READ_ONLY");E!==void 0&&(e.readOnly=E);let S=h("NODE_I3X_REQUIRE_AUTH");S!==void 0&&(e.requireAuth=S);let O=h("NODE_I3X_EXPERIMENTAL");O!==void 0&&(e.experimental=O);let _=s("NODE_I3X_API_KEY");return _&&(e.apiKey=_),e}async function A(e,t){let i={},r=w("i3x",{searchPlaces:["i3x.config.yml","i3x.config.yaml","i3x.config.json",".i3xrc",".i3xrc.json",".i3xrc.yml",".i3xrc.yaml","package.json"],loaders:{".yml":(o,a)=>C(a),".yaml":(o,a)=>C(a)}});try{let o=t?await r.load(t):await r.search();o&&!o.isEmpty&&(i=o.config)}catch(o){console.debug(`No config file loaded: ${o.message}`)}let c=D();return{...M,...i,...c,...e}}import{randomBytes as U}from"crypto";import{consoleLogger as L,createI3xStack as T}from"@node-i3x/core";import{OpcUaClient as k,OpcUaDataSourceAdapter as R}from"@node-i3x/opcua-connector";import{createApp as X}from"@node-i3x/rest-server";function P(e,t,i){let r=["",` i3X Server v${e}`,"",` OPC UA: ${t.endpoint}`,` REST: http://${t.host==="0.0.0.0"?"localhost":t.host}:${t.port}`,` Auth: ${t.apiKey?`Bearer${t.requireAuth?" (required)":""}`:"none (open)"}`];i!==void 0&&r.push(` Model: ${i} nodes`),r.push(""),r.push(" Press Ctrl+C to stop"),r.push("");let o=Math.max(...r.map(d=>d.length))+2,a="-".repeat(o),m=` +${a}+`,u=` +${a}+`;console.log(m);for(let d of r)console.log(` |${d.padEnd(o)}|`);console.log(u),console.log()}function l(e,t,i){let r={type:"progress",phase:e,message:t,timestamp:Date.now(),...i};typeof process.send=="function"&&process.send(r)}async function b(e,t){let i=L;l("initializing","Creating OPC UA client...");let r=new k({endpointUrl:e.endpoint,securityMode:e.securityMode,securityPolicy:e.securityPolicy,pkiFolder:e.pkiFolder,certificateSubject:e.certificateSubject,optimizedClient:e.optimizedClient,username:e.username,password:e.password},i),c=new R(r,i),{modelService:o,valueService:a,historyService:m,subscriptionService:u,typeService:d}=T(c,i,{publishIntervalMs:e.publishIntervalMs,samplingIntervalMs:e.samplingIntervalMs});l("creating-rest","Creating REST API server...");let p=e.apiKey;if(p==="auto"&&(p=`i3x_sk_${U(16).toString("hex")}`),e.requireAuth&&!p&&(i.error('requireAuth is enabled but no apiKey is configured. Set --api-key <key> (or "auto") to enable Bearer token authentication, or disable requireAuth.'),process.exit(1)),p){let n=e.requireAuth?"enforced":"enabled";i.info(`API authentication ${n} (Bearer token)`)}let g=await X({dataSource:c,modelService:o,typeService:d,valueService:a,historyService:m,subscriptionService:u,logger:i,readOnly:e.readOnly,apiKey:p,requireAuth:e.requireAuth,experimental:e.experimental,getOpcuaStats:()=>r.getStats()}),y=!1,I=async()=>{if(i.info("Shutting down..."),y)try{await g.close()}catch(n){i.debug(`Failed to close http server: ${n.message}`)}try{await u.close()}catch(n){i.debug(`Failed to close subscription service: ${n.message}`)}try{await c.disconnect()}catch(n){i.debug(`Failed to disconnect datasource: ${n.message}`)}process.exit(0)};process.on("SIGINT",I),process.on("SIGTERM",I),l("connecting",`Connecting to ${e.endpoint}...`),await c.connect(),l("connected","OPC UA session established");let f;if(e.preload)try{l("preloading-model","Preloading object model..."),f=(await o.preloadModel()).nodesById.size,l("model-loaded",`Model loaded: ${f} nodes`,{nodeCount:f}),l("preloading-types","Preloading type definitions..."),await d.preloadTypes(),l("types-loaded","Type definitions loaded")}catch(n){l("error",`Model preload failed: ${String(n)}`),i.error(`Model preload failed: ${String(n)}`),e.preloadStrict&&process.exit(1)}l("starting-http","Starting HTTP server..."),await g.listen({port:e.port,host:e.host}),y=!0,l("ready",`Server listening on ${e.host}:${e.port}`,{port:e.port,host:e.host,apiKey:p,opcuaStartupStats:r.getStats()}),P(t,e,f)}var q=$(import.meta.url),x=q("../package.json"),N=new j;N.name("i3x").description("Expose OPC UA servers as i3X REST APIs").version(x.version).option("-e, --endpoint <url>","OPC UA endpoint URL").option("-p, --port <port>","REST API port",parseInt).option("-H, --host <host>","REST API bind address").option("--security-mode <mode>","OPC UA security mode (None, Sign, SignAndEncrypt, Auto)").option("--security-policy <policy>","OPC UA security policy (e.g. Basic256Sha256)").option("--pki-folder <path>","PKI folder for certificate storage").option("--certificate-subject <subject>","X.500 subject for the client certificate (e.g. /CN=my-app/O=Acme/OU=user@acme.com)").option("--optimized-client <mode>","Optimized client: auto | disabled").option("--publish-interval <ms>","OPC UA publishing interval in milliseconds",parseInt).option("--sampling-interval <ms>","OPC UA sampling interval in milliseconds",parseInt).option("--log-level <level>","Log level: debug | info | warn | error").option("--no-preload","Skip model preload on startup").option("--preload-strict","Exit if model preload fails").option("--username <user>","OPC UA username for UserName identity token").option("--password <pass>","OPC UA password for UserName identity token").option("--read-only","Disable write operations (advertise read-only capabilities)").option("--experimental","Enable experimental convenience and extension routes").option("--no-require-auth","Allow requests without Bearer token when apiKey is configured").option("--api-key <key>",'API key for Bearer token auth (use "auto" to generate)').option("-c, --config <path>","Path to config file").action(async e=>{let t={};e.endpoint&&(t.endpoint=e.endpoint),e.port!==void 0&&(t.port=e.port),e.host&&(t.host=e.host),e.securityMode&&(t.securityMode=e.securityMode),e.securityPolicy&&(t.securityPolicy=e.securityPolicy),e.pkiFolder&&(t.pkiFolder=e.pkiFolder),e.certificateSubject&&(t.certificateSubject=e.certificateSubject),e.optimizedClient&&(t.optimizedClient=e.optimizedClient),e.publishInterval!==void 0&&(t.publishIntervalMs=e.publishInterval),e.samplingInterval!==void 0&&(t.samplingIntervalMs=e.samplingInterval),e.logLevel&&(t.logLevel=e.logLevel),e.preload===!1&&(t.preload=!1),e.preloadStrict&&(t.preloadStrict=!0),e.username&&(t.username=e.username),e.password&&(t.password=e.password),e.readOnly&&(t.readOnly=!0),e.experimental&&(t.experimental=!0),e.requireAuth===!1&&(t.requireAuth=!1),e.apiKey&&(t.apiKey=e.apiKey);let i=await A(t,e.config);await b(i,x.version)});N.parse();
3
3
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli.ts","../src/config.ts","../src/server.ts","../src/banner.ts"],"mappings":"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","names":["createRequire","Command","cosmiconfig","loadYaml","DEFAULTS","envStr","key","envInt","v","envBool","fromEnv","result","endpoint","port","host","securityMode","securityPolicy","pkiFolder","certSubject","optimizedClient","publishInterval","samplingInterval","logLevel","preload","preloadStrict","username","password","readOnly","requireAuth","experimental","apiKey","resolveConfig","cliArgs","configPath","fileConfig","explorer","_filepath","content","err","envConfig","randomBytes","consoleLogger","createI3xStack","OpcUaClient","OpcUaDataSourceAdapter","createApp","printBanner","version","config","nodeCount","lines","width","l","hr","top","bot","line","sendProgress","phase","message","extra","msg","startServer","config","version","logger","consoleLogger","opcuaClient","OpcUaClient","dataSource","OpcUaDataSourceAdapter","modelService","valueService","historyService","subscriptionService","typeService","createI3xStack","apiKey","randomBytes","mode","app","createApp","isListening","shutdown","err","nodeCount","printBanner","require","createRequire","pkg","program","Command","opts","cliArgs","config","resolveConfig","startServer"]}
1
+ {"version":3,"sources":["../src/cli.ts","../src/config.ts","../src/server.ts","../src/banner.ts"],"mappings":"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","names":["createRequire","Command","cosmiconfig","loadYaml","DEFAULTS","envStr","key","envInt","v","envBool","fromEnv","result","endpoint","port","host","securityMode","securityPolicy","pkiFolder","certSubject","optimizedClient","publishInterval","samplingInterval","logLevel","preload","preloadStrict","username","password","readOnly","requireAuth","experimental","apiKey","resolveConfig","cliArgs","configPath","fileConfig","explorer","_filepath","content","err","envConfig","randomBytes","consoleLogger","createI3xStack","OpcUaClient","OpcUaDataSourceAdapter","createApp","printBanner","version","config","nodeCount","lines","width","l","hr","top","bot","line","sendProgress","phase","message","extra","msg","startServer","config","version","logger","consoleLogger","opcuaClient","OpcUaClient","dataSource","OpcUaDataSourceAdapter","modelService","valueService","historyService","subscriptionService","typeService","createI3xStack","apiKey","randomBytes","mode","app","createApp","isListening","shutdown","err","nodeCount","printBanner","require","createRequire","pkg","program","Command","opts","cliArgs","config","resolveConfig","startServer"]}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{cosmiconfig as P}from"cosmiconfig";import{load as v}from"js-yaml";var A={endpoint:"opc.tcp://localhost:4840",port:8080,host:"0.0.0.0",securityMode:"Auto",securityPolicy:"Auto",optimizedClient:"auto",publishIntervalMs:1e3,samplingIntervalMs:250,logLevel:"info",preload:!0,preloadStrict:!1,readOnly:!1,requireAuth:!1,experimental:!1};function s(e){return process.env[e]}function E(e){let t=process.env[e];return t?parseInt(t,10):void 0}function _(e){let t=process.env[e];if(t)return t==="1"||t.toLowerCase()==="true"}function b(){let e={},t=s("NODE_I3X_OPCUA_ENDPOINT")??s("NODE_I3X_ENDPOINT");t&&(e.endpoint=t);let r=E("NODE_I3X_PORT");r!==void 0&&(e.port=r);let o=s("NODE_I3X_HOST");o&&(e.host=o);let d=s("NODE_I3X_OPCUA_SECURITY_MODE");d&&(e.securityMode=d);let n=s("NODE_I3X_OPCUA_SECURITY_POLICY");n&&(e.securityPolicy=n);let a=s("NODE_I3X_PKI_FOLDER");a&&(e.pkiFolder=a);let m=s("NODE_I3X_CERTIFICATE_SUBJECT");m&&(e.certificateSubject=m);let u=s("NODE_I3X_OPCUA_OPTIMIZED_CLIENT");(u==="auto"||u==="disabled")&&(e.optimizedClient=u);let c=E("NODE_I3X_PUBLISH_INTERVAL_MS");c!==void 0&&(e.publishIntervalMs=c);let p=E("NODE_I3X_SAMPLING_INTERVAL_MS");p!==void 0&&(e.samplingIntervalMs=p);let g=s("NODE_I3X_LOG_LEVEL");g&&(e.logLevel=g);let I=_("NODE_I3X_PRELOAD");I!==void 0&&(e.preload=I);let y=_("NODE_I3X_PRELOAD_STRICT");y!==void 0&&(e.preloadStrict=y);let f=s("NODE_I3X_OPCUA_USERNAME");f&&(e.username=f);let i=s("NODE_I3X_OPCUA_PASSWORD");i&&(e.password=i);let h=_("NODE_I3X_READ_ONLY");h!==void 0&&(e.readOnly=h);let S=_("NODE_I3X_REQUIRE_AUTH");S!==void 0&&(e.requireAuth=S);let O=_("NODE_I3X_EXPERIMENTAL");O!==void 0&&(e.experimental=O);let C=s("NODE_I3X_API_KEY");return C&&(e.apiKey=C),e}async function N(e,t){let r={},o=P("i3x",{searchPlaces:["i3x.config.yml","i3x.config.yaml","i3x.config.json",".i3xrc",".i3xrc.json",".i3xrc.yml",".i3xrc.yaml","package.json"],loaders:{".yml":(n,a)=>v(a),".yaml":(n,a)=>v(a)}});try{let n=t?await o.load(t):await o.search();n&&!n.isEmpty&&(r=n.config)}catch(n){console.debug(`No config file loaded: ${n.message}`)}let d=b();return{...A,...r,...d,...e}}import{randomBytes as D}from"crypto";import{consoleLogger as M,createI3xStack as T}from"@node-i3x/core";import{OpcUaClient as L,OpcUaDataSourceAdapter as w}from"@node-i3x/opcua-connector";import{createApp as X}from"@node-i3x/rest-server";function x(e,t,r){let o=["",` i3X Server v${e}`,"",` OPC UA: ${t.endpoint}`,` REST: http://${t.host}:${t.port}`,` Auth: ${t.apiKey?`Bearer${t.requireAuth?" (required)":""}`:"none (open)"}`];r!==void 0&&o.push(` Model: ${r} nodes`),o.push(""),o.push(" Press Ctrl+C to stop"),o.push("");let n=Math.max(...o.map(c=>c.length))+2,a="-".repeat(n),m=` +${a}+`,u=` +${a}+`;console.log(m);for(let c of o)console.log(` |${c.padEnd(n)}|`);console.log(u),console.log()}function l(e,t,r){let o={type:"progress",phase:e,message:t,timestamp:Date.now(),...r};typeof process.send=="function"&&process.send(o)}async function $(e,t){let r=M;l("initializing","Creating OPC UA client...");let o=new L({endpointUrl:e.endpoint,securityMode:e.securityMode,securityPolicy:e.securityPolicy,pkiFolder:e.pkiFolder,certificateSubject:e.certificateSubject,optimizedClient:e.optimizedClient,username:e.username,password:e.password},r),d=new w(o,r),{modelService:n,valueService:a,historyService:m,subscriptionService:u,typeService:c}=T(d,r,{publishIntervalMs:e.publishIntervalMs,samplingIntervalMs:e.samplingIntervalMs});l("creating-rest","Creating REST API server...");let p=e.apiKey;if(p==="auto"&&(p=`i3x_sk_${D(16).toString("hex")}`),e.requireAuth&&!p&&(r.error('requireAuth is enabled but no apiKey is configured. Set --api-key <key> (or "auto") to enable Bearer token authentication, or disable requireAuth.'),process.exit(1)),p){let i=e.requireAuth?"enforced":"enabled";r.info(`API authentication ${i} (Bearer token)`)}let g=await X({dataSource:d,modelService:n,typeService:c,valueService:a,historyService:m,subscriptionService:u,logger:r,readOnly:e.readOnly,apiKey:p,experimental:e.experimental,getOpcuaStats:()=>o.getStats()}),I=!1,y=async()=>{if(r.info("Shutting down..."),I)try{await g.close()}catch(i){r.debug(`Failed to close http server: ${i.message}`)}try{await u.close()}catch(i){r.debug(`Failed to close subscription service: ${i.message}`)}try{await d.disconnect()}catch(i){r.debug(`Failed to disconnect datasource: ${i.message}`)}process.exit(0)};process.on("SIGINT",y),process.on("SIGTERM",y),l("connecting",`Connecting to ${e.endpoint}...`),await d.connect(),l("connected","OPC UA session established");let f;if(e.preload)try{l("preloading-model","Preloading object model..."),f=(await n.preloadModel()).nodesById.size,l("model-loaded",`Model loaded: ${f} nodes`,{nodeCount:f}),l("preloading-types","Preloading type definitions..."),await c.preloadTypes(),l("types-loaded","Type definitions loaded")}catch(i){l("error",`Model preload failed: ${String(i)}`),r.error(`Model preload failed: ${String(i)}`),e.preloadStrict&&process.exit(1)}l("starting-http","Starting HTTP server..."),await g.listen({port:e.port,host:e.host}),I=!0,l("ready",`Server listening on ${e.host}:${e.port}`,{port:e.port,host:e.host,apiKey:p,opcuaStartupStats:o.getStats()}),x(t,e,f)}export{N as resolveConfig,$ as startServer};
1
+ import{cosmiconfig as A}from"cosmiconfig";import{load as v}from"js-yaml";var P={endpoint:"opc.tcp://localhost:4840",port:8080,host:"0.0.0.0",securityMode:"Auto",securityPolicy:"Auto",optimizedClient:"auto",publishIntervalMs:1e3,samplingIntervalMs:250,logLevel:"info",preload:!0,preloadStrict:!1,readOnly:!1,requireAuth:!0,experimental:!1};function s(e){return process.env[e]}function E(e){let t=process.env[e];return t?parseInt(t,10):void 0}function _(e){let t=process.env[e];if(t)return t==="1"||t.toLowerCase()==="true"}function b(){let e={},t=s("NODE_I3X_OPCUA_ENDPOINT")??s("NODE_I3X_ENDPOINT");t&&(e.endpoint=t);let r=E("NODE_I3X_PORT");r!==void 0&&(e.port=r);let o=s("NODE_I3X_HOST");o&&(e.host=o);let d=s("NODE_I3X_OPCUA_SECURITY_MODE");d&&(e.securityMode=d);let n=s("NODE_I3X_OPCUA_SECURITY_POLICY");n&&(e.securityPolicy=n);let a=s("NODE_I3X_PKI_FOLDER");a&&(e.pkiFolder=a);let m=s("NODE_I3X_CERTIFICATE_SUBJECT");m&&(e.certificateSubject=m);let u=s("NODE_I3X_OPCUA_OPTIMIZED_CLIENT");(u==="auto"||u==="disabled")&&(e.optimizedClient=u);let c=E("NODE_I3X_PUBLISH_INTERVAL_MS");c!==void 0&&(e.publishIntervalMs=c);let p=E("NODE_I3X_SAMPLING_INTERVAL_MS");p!==void 0&&(e.samplingIntervalMs=p);let g=s("NODE_I3X_LOG_LEVEL");g&&(e.logLevel=g);let I=_("NODE_I3X_PRELOAD");I!==void 0&&(e.preload=I);let y=_("NODE_I3X_PRELOAD_STRICT");y!==void 0&&(e.preloadStrict=y);let f=s("NODE_I3X_OPCUA_USERNAME");f&&(e.username=f);let i=s("NODE_I3X_OPCUA_PASSWORD");i&&(e.password=i);let h=_("NODE_I3X_READ_ONLY");h!==void 0&&(e.readOnly=h);let S=_("NODE_I3X_REQUIRE_AUTH");S!==void 0&&(e.requireAuth=S);let O=_("NODE_I3X_EXPERIMENTAL");O!==void 0&&(e.experimental=O);let C=s("NODE_I3X_API_KEY");return C&&(e.apiKey=C),e}async function N(e,t){let r={},o=A("i3x",{searchPlaces:["i3x.config.yml","i3x.config.yaml","i3x.config.json",".i3xrc",".i3xrc.json",".i3xrc.yml",".i3xrc.yaml","package.json"],loaders:{".yml":(n,a)=>v(a),".yaml":(n,a)=>v(a)}});try{let n=t?await o.load(t):await o.search();n&&!n.isEmpty&&(r=n.config)}catch(n){console.debug(`No config file loaded: ${n.message}`)}let d=b();return{...P,...r,...d,...e}}import{randomBytes as D}from"crypto";import{consoleLogger as M,createI3xStack as T}from"@node-i3x/core";import{OpcUaClient as L,OpcUaDataSourceAdapter as w}from"@node-i3x/opcua-connector";import{createApp as X}from"@node-i3x/rest-server";function x(e,t,r){let o=["",` i3X Server v${e}`,"",` OPC UA: ${t.endpoint}`,` REST: http://${t.host==="0.0.0.0"?"localhost":t.host}:${t.port}`,` Auth: ${t.apiKey?`Bearer${t.requireAuth?" (required)":""}`:"none (open)"}`];r!==void 0&&o.push(` Model: ${r} nodes`),o.push(""),o.push(" Press Ctrl+C to stop"),o.push("");let n=Math.max(...o.map(c=>c.length))+2,a="-".repeat(n),m=` +${a}+`,u=` +${a}+`;console.log(m);for(let c of o)console.log(` |${c.padEnd(n)}|`);console.log(u),console.log()}function l(e,t,r){let o={type:"progress",phase:e,message:t,timestamp:Date.now(),...r};typeof process.send=="function"&&process.send(o)}async function $(e,t){let r=M;l("initializing","Creating OPC UA client...");let o=new L({endpointUrl:e.endpoint,securityMode:e.securityMode,securityPolicy:e.securityPolicy,pkiFolder:e.pkiFolder,certificateSubject:e.certificateSubject,optimizedClient:e.optimizedClient,username:e.username,password:e.password},r),d=new w(o,r),{modelService:n,valueService:a,historyService:m,subscriptionService:u,typeService:c}=T(d,r,{publishIntervalMs:e.publishIntervalMs,samplingIntervalMs:e.samplingIntervalMs});l("creating-rest","Creating REST API server...");let p=e.apiKey;if(p==="auto"&&(p=`i3x_sk_${D(16).toString("hex")}`),e.requireAuth&&!p&&(r.error('requireAuth is enabled but no apiKey is configured. Set --api-key <key> (or "auto") to enable Bearer token authentication, or disable requireAuth.'),process.exit(1)),p){let i=e.requireAuth?"enforced":"enabled";r.info(`API authentication ${i} (Bearer token)`)}let g=await X({dataSource:d,modelService:n,typeService:c,valueService:a,historyService:m,subscriptionService:u,logger:r,readOnly:e.readOnly,apiKey:p,requireAuth:e.requireAuth,experimental:e.experimental,getOpcuaStats:()=>o.getStats()}),I=!1,y=async()=>{if(r.info("Shutting down..."),I)try{await g.close()}catch(i){r.debug(`Failed to close http server: ${i.message}`)}try{await u.close()}catch(i){r.debug(`Failed to close subscription service: ${i.message}`)}try{await d.disconnect()}catch(i){r.debug(`Failed to disconnect datasource: ${i.message}`)}process.exit(0)};process.on("SIGINT",y),process.on("SIGTERM",y),l("connecting",`Connecting to ${e.endpoint}...`),await d.connect(),l("connected","OPC UA session established");let f;if(e.preload)try{l("preloading-model","Preloading object model..."),f=(await n.preloadModel()).nodesById.size,l("model-loaded",`Model loaded: ${f} nodes`,{nodeCount:f}),l("preloading-types","Preloading type definitions..."),await c.preloadTypes(),l("types-loaded","Type definitions loaded")}catch(i){l("error",`Model preload failed: ${String(i)}`),r.error(`Model preload failed: ${String(i)}`),e.preloadStrict&&process.exit(1)}l("starting-http","Starting HTTP server..."),await g.listen({port:e.port,host:e.host}),I=!0,l("ready",`Server listening on ${e.host}:${e.port}`,{port:e.port,host:e.host,apiKey:p,opcuaStartupStats:o.getStats()}),x(t,e,f)}export{N as resolveConfig,$ as startServer};
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/config.ts","../src/server.ts","../src/banner.ts"],"mappings":"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","names":["cosmiconfig","loadYaml","DEFAULTS","envStr","key","envInt","v","envBool","fromEnv","result","endpoint","port","host","securityMode","securityPolicy","pkiFolder","certSubject","optimizedClient","publishInterval","samplingInterval","logLevel","preload","preloadStrict","username","password","readOnly","requireAuth","experimental","apiKey","resolveConfig","cliArgs","configPath","fileConfig","explorer","_filepath","content","err","envConfig","randomBytes","consoleLogger","createI3xStack","OpcUaClient","OpcUaDataSourceAdapter","createApp","printBanner","version","config","nodeCount","lines","width","l","hr","top","bot","line","sendProgress","phase","message","extra","msg","startServer","config","version","logger","consoleLogger","opcuaClient","OpcUaClient","dataSource","OpcUaDataSourceAdapter","modelService","valueService","historyService","subscriptionService","typeService","createI3xStack","apiKey","randomBytes","mode","app","createApp","isListening","shutdown","err","nodeCount","printBanner"]}
1
+ {"version":3,"sources":["../src/config.ts","../src/server.ts","../src/banner.ts"],"mappings":"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","names":["cosmiconfig","loadYaml","DEFAULTS","envStr","key","envInt","v","envBool","fromEnv","result","endpoint","port","host","securityMode","securityPolicy","pkiFolder","certSubject","optimizedClient","publishInterval","samplingInterval","logLevel","preload","preloadStrict","username","password","readOnly","requireAuth","experimental","apiKey","resolveConfig","cliArgs","configPath","fileConfig","explorer","_filepath","content","err","envConfig","randomBytes","consoleLogger","createI3xStack","OpcUaClient","OpcUaDataSourceAdapter","createApp","printBanner","version","config","nodeCount","lines","width","l","hr","top","bot","line","sendProgress","phase","message","extra","msg","startServer","config","version","logger","consoleLogger","opcuaClient","OpcUaClient","dataSource","OpcUaDataSourceAdapter","modelService","valueService","historyService","subscriptionService","typeService","createI3xStack","apiKey","randomBytes","mode","app","createApp","isListening","shutdown","err","nodeCount","printBanner"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node-i3x/app",
3
- "version": "0.8.4",
3
+ "version": "0.8.6",
4
4
  "description": "i3X CLI -- expose OPC UA servers as i3X REST APIs",
5
5
  "license": "AGPL-3.0-or-later OR LicenseRef-Sterfive-Commercial",
6
6
  "author": "Sterfive SAS <contact@sterfive.com> (https://sterfive.com)",
@@ -40,9 +40,9 @@
40
40
  "typecheck": "tsc --noEmit"
41
41
  },
42
42
  "dependencies": {
43
- "@node-i3x/core": "0.8.4",
44
- "@node-i3x/opcua-connector": "0.8.4",
45
- "@node-i3x/rest-server": "0.8.4",
43
+ "@node-i3x/core": "0.8.6",
44
+ "@node-i3x/opcua-connector": "0.8.6",
45
+ "@node-i3x/rest-server": "0.8.6",
46
46
  "commander": "^15.0.0",
47
47
  "cosmiconfig": "^9.0.2",
48
48
  "fastify": "^5.8.5",