@stackone/olap 0.3.0 → 0.5.0

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.d.mts CHANGED
@@ -126,4 +126,38 @@ declare class OlapClient implements IOlapClient {
126
126
  recordStep(stepResult: StepResult, options?: OlapOptions): Promise<void>;
127
127
  }
128
128
  //#endregion
129
- export { type ActionResult, type IOlapClient, OlapClient, type OlapOptions, type StepResult };
129
+ //#region src/olap/olapClientManager.d.ts
130
+ declare const buildOlapClientInstance: ({
131
+ getKafkaClient,
132
+ getS3Client,
133
+ kafkaClientConfig,
134
+ s3ClientConfig,
135
+ logger
136
+ }?: {
137
+ getKafkaClient?: KafkaClientBuilder;
138
+ getS3Client?: S3ClientBuilder;
139
+ kafkaClientConfig?: KafkaClientConfig;
140
+ s3ClientConfig?: S3ClientConfig;
141
+ logger?: ILogger;
142
+ }) => IOlapClient;
143
+ declare class OlapClientManager {
144
+ private static olapClientInstance;
145
+ static getInstance({
146
+ getKafkaClient,
147
+ getS3Client,
148
+ kafkaClientConfig,
149
+ s3ClientConfig,
150
+ logger,
151
+ getOlapClient
152
+ }?: {
153
+ getKafkaClient?: KafkaClientBuilder;
154
+ getS3Client?: S3ClientBuilder;
155
+ kafkaClientConfig?: KafkaClientConfig;
156
+ s3ClientConfig?: S3ClientConfig;
157
+ logger?: ILogger;
158
+ getOlapClient?: typeof buildOlapClientInstance;
159
+ }): IOlapClient;
160
+ static resetInstance(): void;
161
+ }
162
+ //#endregion
163
+ export { type ActionResult, type IOlapClient, OlapClient, OlapClientManager, type OlapOptions, type StepResult };
package/dist/index.d.ts CHANGED
@@ -126,4 +126,38 @@ declare class OlapClient implements IOlapClient {
126
126
  recordStep(stepResult: StepResult, options?: OlapOptions): Promise<void>;
127
127
  }
128
128
  //#endregion
129
- export { type ActionResult, type IOlapClient, OlapClient, type OlapOptions, type StepResult };
129
+ //#region src/olap/olapClientManager.d.ts
130
+ declare const buildOlapClientInstance: ({
131
+ getKafkaClient,
132
+ getS3Client,
133
+ kafkaClientConfig,
134
+ s3ClientConfig,
135
+ logger
136
+ }?: {
137
+ getKafkaClient?: KafkaClientBuilder;
138
+ getS3Client?: S3ClientBuilder;
139
+ kafkaClientConfig?: KafkaClientConfig;
140
+ s3ClientConfig?: S3ClientConfig;
141
+ logger?: ILogger;
142
+ }) => IOlapClient;
143
+ declare class OlapClientManager {
144
+ private static olapClientInstance;
145
+ static getInstance({
146
+ getKafkaClient,
147
+ getS3Client,
148
+ kafkaClientConfig,
149
+ s3ClientConfig,
150
+ logger,
151
+ getOlapClient
152
+ }?: {
153
+ getKafkaClient?: KafkaClientBuilder;
154
+ getS3Client?: S3ClientBuilder;
155
+ kafkaClientConfig?: KafkaClientConfig;
156
+ s3ClientConfig?: S3ClientConfig;
157
+ logger?: ILogger;
158
+ getOlapClient?: typeof buildOlapClientInstance;
159
+ }): IOlapClient;
160
+ static resetInstance(): void;
161
+ }
162
+ //#endregion
163
+ export { type ActionResult, type IOlapClient, OlapClient, OlapClientManager, type OlapOptions, type StepResult };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const c=s(require(`@aws-sdk/client-s3`)),l=s(require(`kafkajs`));var u=class{#s3Client;#logger;constructor(e,t){this.#s3Client=e,this.#logger=t,this.#s3Client||this.#logger?.warning({message:`No s3 client provided, advanced sink will not function`,category:`AdvancedSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[S3] Sent to bucket ${e}: ${r}`,context:{bucket:e,payload:t},category:`S3Sink`}),await Promise.resolve()}};const d=(e,t)=>{try{let t=new c.S3Client(e);return t??void 0}catch(e){let n=e;t?.error({message:`Error building s3 client: ${n.message}`,error:n,code:`BuildS3ClientError`,category:`buildS3Client`});return}},f=(e,t)=>{try{let t=new l.Kafka(e);return t??void 0}catch(e){let n=e;t?.error({message:`Error building kafka client: ${n.message}`,error:n,code:`BuildKafkaClientError`,category:`buildKafkaClient`});return}};var p=class{#kafka;#logger;constructor(e,t){this.#kafka=e,this.#logger=t,this.#kafka||this.#logger?.warning({message:`No kafka client provided, logs sink will not function`,category:`LogsSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[Kafka] Sent to topic ${e}: ${r}`,context:{topic:e,payload:t},category:`KafkaSink`}),await Promise.resolve()}};const m={logs:{enabled:!0},advanced:{enabled:!1,ttl:7,errorsOnly:!1}};function h(e){return{...m,...e}}var g=class{#kafkaClient;#s3Client;#logger;#logsSink;#advancedSink;name=`OlapClient`;constructor({getKafkaClient:e=f,getS3Client:t=d,kafkaClientConfig:n,s3ClientConfig:r,logger:i}={}){this.#kafkaClient=e(n,i),this.#s3Client=t(r,i),this.#logger=i,this.#logsSink=new p(this.#kafkaClient,this.#logger),this.#advancedSink=new u(this.#s3Client,this.#logger)}async recordAction(e,t){let{logs:n,advanced:r}=h(t);if(n?.enabled)try{await this.#logsSink?.send(`actions`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`actions`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}async recordStep(e,t){let{logs:n,advanced:r}=h(t);if(n?.enabled)try{await this.#logsSink?.send(`steps`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`steps`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}};exports.OlapClient=g;
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const c=s(require(`@aws-sdk/client-s3`)),l=s(require(`kafkajs`));var u=class{#s3Client;#logger;constructor(e,t){this.#s3Client=e,this.#logger=t,this.#s3Client||this.#logger?.warning({message:`No s3 client provided, advanced sink will not function`,category:`AdvancedSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[S3] Sent to bucket ${e}: ${r}`,context:{bucket:e,payload:t},category:`S3Sink`}),await Promise.resolve()}};const d=(e,t)=>{try{let t=new c.S3Client(e);return t??void 0}catch(e){let n=e;t?.error({message:`Error building s3 client: ${n.message}`,error:n,code:`BuildS3ClientError`,category:`buildS3Client`});return}},f=(e,t)=>{try{let t=new l.Kafka(e);return t??void 0}catch(e){let n=e;t?.error({message:`Error building kafka client: ${n.message}`,error:n,code:`BuildKafkaClientError`,category:`buildKafkaClient`});return}};var p=class{#kafka;#logger;constructor(e,t){this.#kafka=e,this.#logger=t,this.#kafka||this.#logger?.warning({message:`No kafka client provided, logs sink will not function`,category:`LogsSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[Kafka] Sent to topic ${e}: ${r}`,context:{topic:e,payload:t},category:`KafkaSink`}),await Promise.resolve()}};const m={logs:{enabled:!0},advanced:{enabled:!1,ttl:7,errorsOnly:!1}};function h(e){return{...m,...e}}var g=class{#kafkaClient;#s3Client;#logger;#logsSink;#advancedSink;name=`OlapClient`;constructor({getKafkaClient:e=f,getS3Client:t=d,kafkaClientConfig:n,s3ClientConfig:r,logger:i}={}){this.#kafkaClient=e(n,i),this.#s3Client=t(r,i),this.#logger=i,this.#logsSink=new p(this.#kafkaClient,this.#logger),this.#advancedSink=new u(this.#s3Client,this.#logger)}async recordAction(e,t){let{logs:n,advanced:r}=h(t);if(n?.enabled)try{await this.#logsSink?.send(`actions`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`actions`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}async recordStep(e,t){let{logs:n,advanced:r}=h(t);if(n?.enabled)try{await this.#logsSink?.send(`steps`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`steps`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}};const _=({getKafkaClient:e=f,getS3Client:t=d,kafkaClientConfig:n,s3ClientConfig:r,logger:i}={})=>new g({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:r,logger:i});var v=class{static olapClientInstance=null;static getInstance({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:r,logger:i,getOlapClient:a=_}={}){return this.olapClientInstance??=a({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:r,logger:i}),this.olapClientInstance}static resetInstance(){this.olapClientInstance=null}};exports.OlapClient=g,exports.OlapClientManager=v;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{S3Client as e}from"@aws-sdk/client-s3";import{Kafka as t}from"kafkajs";var n=class{#s3Client;#logger;constructor(e,t){this.#s3Client=e,this.#logger=t,this.#s3Client||this.#logger?.warning({message:`No s3 client provided, advanced sink will not function`,category:`AdvancedSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[S3] Sent to bucket ${e}: ${r}`,context:{bucket:e,payload:t},category:`S3Sink`}),await Promise.resolve()}};const r=(t,n)=>{try{let n=new e(t);return n??void 0}catch(e){let t=e;n?.error({message:`Error building s3 client: ${t.message}`,error:t,code:`BuildS3ClientError`,category:`buildS3Client`});return}},i=(e,n)=>{try{let n=new t(e);return n??void 0}catch(e){let t=e;n?.error({message:`Error building kafka client: ${t.message}`,error:t,code:`BuildKafkaClientError`,category:`buildKafkaClient`});return}};var a=class{#kafka;#logger;constructor(e,t){this.#kafka=e,this.#logger=t,this.#kafka||this.#logger?.warning({message:`No kafka client provided, logs sink will not function`,category:`LogsSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[Kafka] Sent to topic ${e}: ${r}`,context:{topic:e,payload:t},category:`KafkaSink`}),await Promise.resolve()}};const o={logs:{enabled:!0},advanced:{enabled:!1,ttl:7,errorsOnly:!1}};function s(e){return{...o,...e}}var c=class{#kafkaClient;#s3Client;#logger;#logsSink;#advancedSink;name=`OlapClient`;constructor({getKafkaClient:e=i,getS3Client:t=r,kafkaClientConfig:o,s3ClientConfig:s,logger:c}={}){this.#kafkaClient=e(o,c),this.#s3Client=t(s,c),this.#logger=c,this.#logsSink=new a(this.#kafkaClient,this.#logger),this.#advancedSink=new n(this.#s3Client,this.#logger)}async recordAction(e,t){let{logs:n,advanced:r}=s(t);if(n?.enabled)try{await this.#logsSink?.send(`actions`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`actions`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}async recordStep(e,t){let{logs:n,advanced:r}=s(t);if(n?.enabled)try{await this.#logsSink?.send(`steps`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`steps`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}};export{c as OlapClient};
1
+ import{S3Client as e}from"@aws-sdk/client-s3";import{Kafka as t}from"kafkajs";var n=class{#s3Client;#logger;constructor(e,t){this.#s3Client=e,this.#logger=t,this.#s3Client||this.#logger?.warning({message:`No s3 client provided, advanced sink will not function`,category:`AdvancedSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[S3] Sent to bucket ${e}: ${r}`,context:{bucket:e,payload:t},category:`S3Sink`}),await Promise.resolve()}};const r=(t,n)=>{try{let n=new e(t);return n??void 0}catch(e){let t=e;n?.error({message:`Error building s3 client: ${t.message}`,error:t,code:`BuildS3ClientError`,category:`buildS3Client`});return}},i=(e,n)=>{try{let n=new t(e);return n??void 0}catch(e){let t=e;n?.error({message:`Error building kafka client: ${t.message}`,error:t,code:`BuildKafkaClientError`,category:`buildKafkaClient`});return}};var a=class{#kafka;#logger;constructor(e,t){this.#kafka=e,this.#logger=t,this.#kafka||this.#logger?.warning({message:`No kafka client provided, logs sink will not function`,category:`LogsSink`})}async send(e,t,n){let r=(()=>{try{return JSON.stringify(t)}catch{return`[Unserializable payload]`}})();this.#logger?.info({message:`[Kafka] Sent to topic ${e}: ${r}`,context:{topic:e,payload:t},category:`KafkaSink`}),await Promise.resolve()}};const o={logs:{enabled:!0},advanced:{enabled:!1,ttl:7,errorsOnly:!1}};function s(e){return{...o,...e}}var c=class{#kafkaClient;#s3Client;#logger;#logsSink;#advancedSink;name=`OlapClient`;constructor({getKafkaClient:e=i,getS3Client:t=r,kafkaClientConfig:o,s3ClientConfig:s,logger:c}={}){this.#kafkaClient=e(o,c),this.#s3Client=t(s,c),this.#logger=c,this.#logsSink=new a(this.#kafkaClient,this.#logger),this.#advancedSink=new n(this.#s3Client,this.#logger)}async recordAction(e,t){let{logs:n,advanced:r}=s(t);if(n?.enabled)try{await this.#logsSink?.send(`actions`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`actions`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}async recordStep(e,t){let{logs:n,advanced:r}=s(t);if(n?.enabled)try{await this.#logsSink?.send(`steps`,e,n)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to kafka: ${e.message}`,category:`OlapClient`,error:e})}if(r?.enabled)try{await this.#advancedSink?.send(`steps`,e,r)}catch(e){this.#logger?.warning({message:`[OlapClient] Error sending to s3: ${e.message}`,category:`OlapClient`,error:e})}}};const l=({getKafkaClient:e=i,getS3Client:t=r,kafkaClientConfig:n,s3ClientConfig:a,logger:o}={})=>new c({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:a,logger:o});var u=class{static olapClientInstance=null;static getInstance({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:r,logger:i,getOlapClient:a=l}={}){return this.olapClientInstance??=a({getKafkaClient:e,getS3Client:t,kafkaClientConfig:n,s3ClientConfig:r,logger:i}),this.olapClientInstance}static resetInstance(){this.olapClientInstance=null}};export{c as OlapClient,u as OlapClientManager};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackone/olap",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",