@larvit/log 1.4.2 → 1.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/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { SeverityNumber } from "@opentelemetry/api-logs";
1
2
  export type Metadata = {
2
3
  [key: string]: string;
3
4
  };
@@ -16,28 +17,28 @@ export type LogInt = {
16
17
  };
17
18
  export declare const LogLevels: {
18
19
  error: {
19
- otlpSeverityNumber: number;
20
- otlpSeverityText: string;
20
+ severityNumber: SeverityNumber;
21
+ severityText: string;
21
22
  };
22
23
  warn: {
23
- otlpSeverityNumber: number;
24
- otlpSeverityText: string;
24
+ severityNumber: SeverityNumber;
25
+ severityText: string;
25
26
  };
26
27
  info: {
27
- otlpSeverityNumber: number;
28
- otlpSeverityText: string;
28
+ severityNumber: SeverityNumber;
29
+ severityText: string;
29
30
  };
30
31
  verbose: {
31
- otlpSeverityNumber: number;
32
- otlpSeverityText: string;
32
+ severityNumber: SeverityNumber;
33
+ severityText: string;
33
34
  };
34
35
  debug: {
35
- otlpSeverityNumber: number;
36
- otlpSeverityText: string;
36
+ severityNumber: SeverityNumber;
37
+ severityText: string;
37
38
  };
38
39
  silly: {
39
- otlpSeverityNumber: number;
40
- otlpSeverityText: string;
40
+ severityNumber: SeverityNumber;
41
+ severityText: string;
41
42
  };
42
43
  };
43
44
  export type LogLevel = keyof typeof LogLevels;
@@ -53,69 +54,32 @@ export type LogConf = {
53
54
  format?: "text" | "json";
54
55
  logLevel?: LogLevel | "none";
55
56
  otlpAdditionalHeaders?: Record<string, string>;
57
+ otlpExportTimeoutMillis?: number;
56
58
  otlpHttpBaseURI?: string;
59
+ otlpMaxExportBatchSize?: number;
60
+ otlpMaxQueueSize?: number;
61
+ otlpScheduledDelayMillis?: number;
57
62
  parentLog?: LogInt;
58
63
  printTraceInfo?: boolean;
59
64
  spanName?: string;
60
65
  stderr?: (msg: string) => void;
61
66
  stdout?: (msg: string) => void;
62
67
  };
63
- export type OtlpAttribute = {
64
- key: string;
65
- value: {
66
- stringValue: string;
67
- };
68
- };
69
- export type OtlpSpanPayload = {
70
- resourceSpans: {
71
- resource: {
72
- attributes: OtlpAttribute[];
73
- };
74
- scopeSpans: {
75
- spans: {
76
- attributes?: OtlpAttribute[];
77
- endTimeUnixNano: string;
78
- kind: 0 | 1 | 2 | 3 | 4 | 5;
79
- name: string;
80
- parentSpanId?: string;
81
- spanId: string;
82
- startTimeUnixNano: string;
83
- traceId: string;
84
- }[];
85
- }[];
86
- }[];
87
- };
88
- export type OtlpLogPayload = {
89
- resourceLogs: {
90
- resource: {
91
- attributes: OtlpAttribute[];
92
- };
93
- scopeLogs: {
94
- logRecords: {
95
- attributes?: OtlpAttribute[];
96
- body: {
97
- stringValue: string;
98
- };
99
- severityNumber: number;
100
- severityText: string;
101
- spanId?: string;
102
- timeUnixNano: string;
103
- traceId?: string;
104
- }[];
105
- }[];
106
- }[];
107
- };
108
68
  export declare function msgJsonFormatter(conf: EntryFormatterConf): string;
109
69
  export declare function msgTextFormatter(conf: EntryFormatterConf): string;
110
70
  export declare class Log implements LogInt {
111
- #private;
71
+ private readonly otlpTracer;
72
+ private readonly otlpLogger;
73
+ private currentSpan;
74
+ private readonly otlpLoggerProvider;
112
75
  context: Metadata;
113
- otlpAdditionalHeaders: Record<string, string> | null;
114
76
  readonly conf: LogConf;
115
- readonly traceId: string;
116
- readonly spanId: string;
77
+ spanId: string;
78
+ traceId: string;
117
79
  constructor(conf?: LogConf | LogLevel | "none");
118
- clone(conf?: LogConf | LogLevel | "none"): Log;
80
+ private log;
81
+ private shouldSkipLog;
82
+ private outputToConsole;
119
83
  error(msg: string, metadata?: Metadata): void;
120
84
  warn(msg: string, metadata?: Metadata): void;
121
85
  info(msg: string, metadata?: Metadata): void;
@@ -123,7 +87,5 @@ export declare class Log implements LogInt {
123
87
  debug(msg: string, metadata?: Metadata): void;
124
88
  silly(msg: string, metadata?: Metadata): void;
125
89
  end(): void;
126
- private log;
127
- private otlpCall;
128
- private otlpCreateSpan;
90
+ clone(conf?: LogConf | LogLevel | "none"): Log;
129
91
  }
package/index.js CHANGED
@@ -1 +1 @@
1
- export const LogLevels={error:{otlpSeverityNumber:17,otlpSeverityText:"ERROR"},warn:{otlpSeverityNumber:13,otlpSeverityText:"WARN"},info:{otlpSeverityNumber:9,otlpSeverityText:"INFO"},verbose:{otlpSeverityNumber:8,otlpSeverityText:"DEBUG4"},debug:{otlpSeverityNumber:5,otlpSeverityText:"DEBUG"},silly:{otlpSeverityNumber:3,otlpSeverityText:"TRACE"}};export function msgJsonFormatter(conf){const payload=Object.assign(conf.metadata,{logLevel:conf.logLevel,msg:conf.msg,time:(new Date).toISOString()});return JSON.stringify(payload)}export function msgTextFormatter(conf){let levelOut="";if(conf.logLevel==="silly"){levelOut="sil"}else if(conf.logLevel==="debug"){levelOut="deb"}else if(conf.logLevel==="verbose"){levelOut="ver"}else if(conf.logLevel==="info"){levelOut="inf"}else if(conf.logLevel==="warn"){levelOut="war"}else if(conf.logLevel==="error"){levelOut="err"}else{throw new Error(`Invalid conf.logLevel: "${conf.logLevel}"`)}let str=`${(new Date).toISOString().substring(0,19)}Z [${levelOut}] ${conf.msg}`;const metadataStr=JSON.stringify(conf.metadata);if(metadataStr!=="{}"){str+=` ${JSON.stringify(conf.metadata)}`}return str}function generateSpanId(){const bytes=new Uint8Array(8);if(typeof crypto!=="undefined"&&crypto.getRandomValues){crypto.getRandomValues(bytes)}else{for(let i=0;i<8;i++){bytes[i]=Math.floor(Math.random()*256)}}bytes[0]|=1;return Array.from(bytes).map(byte=>byte.toString(16).padStart(2,"0")).join("")}function generateTraceId(){const bytes=new Uint8Array(16);if(typeof crypto!=="undefined"&&crypto.getRandomValues){crypto.getRandomValues(bytes)}else{for(let i=0;i<16;i++){bytes[i]=Math.floor(Math.random()*256)}}bytes[0]|=1;return Array.from(bytes).map(byte=>byte.toString(16).padStart(2,"0")).join("")}function getNsTimestamp(msTimestamp){const nanoseconds=msTimestamp*1e6;const fractionalNanoseconds=Math.floor(performance.now()%1*1e6);return nanoseconds+fractionalNanoseconds}function isFetchError(error){return typeof error==="object"&&error!==null&&"message"in error}export class Log{context;otlpAdditionalHeaders;#entryFormatter;#logLevel;#otlpHttpBaseURI;#parentLog;#printTraceInfo;#spanName;#stderr;#stdout;conf;traceId;spanId;#otlpSpanPayload;constructor(conf){if(conf===undefined){conf={}}else if(typeof conf==="string"){conf={logLevel:conf}}if(typeof conf.parentLog==="object"){for(const[key,value]of Object.entries(conf.parentLog.conf)){if(conf[key]===undefined){conf[key]=value}}}if(conf.logLevel===undefined){conf.logLevel="info"}if(conf.entryFormatter===undefined&&conf.format==="json"){conf.entryFormatter=msgJsonFormatter}else if(conf.entryFormatter===undefined){conf.entryFormatter=msgTextFormatter}if(conf.stderr===undefined){conf.stderr=console.error}if(conf.stdout===undefined){conf.stdout=console.log}this.#entryFormatter=conf.entryFormatter;this.#logLevel=conf.logLevel;this.#otlpHttpBaseURI=conf.otlpHttpBaseURI;this.#parentLog=typeof conf.parentLog==="object"?conf.parentLog:null;this.#printTraceInfo=conf.printTraceInfo===true?true:false;this.#stderr=conf.stderr;this.#stdout=conf.stdout;this.conf=conf;this.context=conf.context||{};this.otlpAdditionalHeaders=conf.otlpAdditionalHeaders;this.spanId=generateSpanId();this.traceId=generateTraceId();this.#spanName=conf.spanName||this.spanId;this.otlpCreateSpan()}clone(conf){if(conf===undefined){conf={}}else if(typeof conf==="string"){conf={logLevel:conf}}if(conf.logLevel===undefined){conf.logLevel=this.#logLevel}if(this.conf.format!=="json"&&conf.format==="json"){conf.entryFormatter=msgJsonFormatter}else{conf.entryFormatter=this.#entryFormatter}if(conf.stderr===undefined){conf.stderr=this.conf.stderr}if(conf.stdout===undefined){conf.stdout=this.conf.stdout}conf.context={...this.context,...conf.context};return new Log(conf)}error(msg,metadata){if(this.#logLevel==="none")return;this.log("error",msg,metadata)}warn(msg,metadata){if(["none","error"].includes(this.#logLevel))return;this.log("warn",msg,metadata)}info(msg,metadata){if(["none","error","warn"].includes(this.#logLevel))return;this.log("info",msg,metadata)}verbose(msg,metadata){if(["none","error","warn","info"].includes(this.#logLevel))return;this.log("verbose",msg,metadata)}debug(msg,metadata){if(["none","error","warn","info","verbose"].includes(this.#logLevel))return;this.log("debug",msg,metadata)}silly(msg,metadata){if(["none","error","warn","info","verbose","debug"].includes(this.#logLevel))return;this.log("silly",msg,metadata)}end(){this.#otlpSpanPayload.resourceSpans[0].scopeSpans[0].spans[0].endTimeUnixNano=String(getNsTimestamp(Date.now()));this.otlpCall({path:"/v1/traces",payload:this.#otlpSpanPayload})}log(logLevel,msg,metadata){const formattedMetadata=Object.assign(metadata||{},this.context);const msTimestamp=Date.now();if(this.#printTraceInfo){Object.assign(metadata,{spanId:this.spanId,traceId:this.traceId})}if(["error","warn"].includes(logLevel)){this.#stderr(this.#entryFormatter({logLevel:logLevel,metadata:formattedMetadata,msTimestamp:msTimestamp,msg:msg}))}else{this.#stdout(this.#entryFormatter({logLevel:logLevel,metadata:formattedMetadata,msTimestamp:msTimestamp,msg:msg}))}if(!this.#otlpHttpBaseURI){return}const payload={resourceLogs:[{resource:{attributes:[]},scopeLogs:[{logRecords:[{body:{stringValue:msg},severityNumber:LogLevels[logLevel].otlpSeverityNumber,severityText:LogLevels[logLevel].otlpSeverityText,timeUnixNano:String(getNsTimestamp(Date.now())),traceId:this.traceId}]}]}]};if(this.#parentLog!==null&&this.#parentLog.spanId){payload.resourceLogs[0].scopeLogs[0].logRecords[0].spanId=this.#parentLog.spanId;payload.resourceLogs[0].scopeLogs[0].logRecords[0].traceId=this.#parentLog.traceId}if(metadata&&Object.keys(metadata).length){payload.resourceLogs[0].scopeLogs[0].logRecords[0].attributes=[];for(const[key,value]of Object.entries(metadata)){payload.resourceLogs[0].scopeLogs[0].logRecords[0].attributes.push({key:key,value:{stringValue:value}})}}this.otlpCall({path:"/v1/logs",payload:payload})}async otlpCall({path,payload}){if(!this.#otlpHttpBaseURI){return true}const urlObj=new URL(this.#otlpHttpBaseURI);const url=`${urlObj.protocol}//${urlObj.username?`${urlObj.username}:${urlObj.password}@`:""}${urlObj.host}${path}`;const headers={"Content-Type":"application/json"};if(this.otlpAdditionalHeaders){Object.assign(headers,this.otlpAdditionalHeaders)}try{const res=await fetch(url,{body:JSON.stringify(payload),headers:headers,method:"POST"});if(!res.ok){const err=new Error("Non-ok return status");err.status=res.status;throw err}const resBody=await res.json();const resBodyStr=JSON.stringify(resBody);if(resBodyStr!=='{"partialSuccess":{}}'&&resBodyStr!=="{}"){throw new Error("Invalid response body from OTLP service. Expected '{\"partialSuccess\":{}}' or '{}' but got: '"+JSON.stringify(resBody)+"'")}return true}catch(err){if(isFetchError(err)){this.#stderr(this.#entryFormatter({logLevel:"error",metadata:{fetchStatus:String(err.status),url:url},msg:err.message}))}else if(err instanceof Error){this.#stderr(this.#entryFormatter({logLevel:"error",metadata:{url:url},msg:err.message}))}else{this.#stderr(this.#entryFormatter({logLevel:"error",metadata:{url:url},msg:"Unknown error sending to OTLP"}))}return false}}async otlpCreateSpan(){const msTimestamp=Date.now();const nsTimestamp=getNsTimestamp(msTimestamp);this.#otlpSpanPayload={resourceSpans:[{resource:{attributes:[]},scopeSpans:[{spans:[{endTimeUnixNano:String(nsTimestamp),kind:0,name:this.#spanName,spanId:this.spanId,startTimeUnixNano:String(nsTimestamp),traceId:this.traceId}]}]}]};if(Object.keys(this.context).length>0){this.#otlpSpanPayload.resourceSpans[0].scopeSpans[0].spans[0].attributes=[];for(const[key,value]of Object.entries(this.context)){this.#otlpSpanPayload.resourceSpans[0].scopeSpans[0].spans[0].attributes.push({key:key,value:{stringValue:String(value)}})}}if(this.#parentLog!==null&&this.#parentLog.spanId){this.#otlpSpanPayload.resourceSpans[0].scopeSpans[0].spans[0].parentSpanId=this.#parentLog.spanId}return this.otlpCall({path:"/v1/traces",payload:this.#otlpSpanPayload})}}
1
+ import{context,SpanKind,trace,TraceFlags}from"@opentelemetry/api";import{SeverityNumber}from"@opentelemetry/api-logs";import{OTLPLogExporter}from"@opentelemetry/exporter-logs-otlp-http";import{OTLPTraceExporter}from"@opentelemetry/exporter-trace-otlp-http";import{Resource}from"@opentelemetry/resources";import{BatchLogRecordProcessor}from"@opentelemetry/sdk-logs";import{LoggerProvider}from"@opentelemetry/sdk-logs";import{BatchSpanProcessor}from"@opentelemetry/sdk-trace-base";import{NodeTracerProvider}from"@opentelemetry/sdk-trace-node";export const LogLevels={error:{severityNumber:SeverityNumber.ERROR,severityText:"ERROR"},warn:{severityNumber:SeverityNumber.WARN,severityText:"WARN"},info:{severityNumber:SeverityNumber.INFO,severityText:"INFO"},verbose:{severityNumber:SeverityNumber.DEBUG,severityText:"DEBUG4"},debug:{severityNumber:SeverityNumber.DEBUG2,severityText:"DEBUG"},silly:{severityNumber:SeverityNumber.TRACE,severityText:"TRACE"}};export function msgJsonFormatter(conf){const payload=Object.assign(conf.metadata,{logLevel:conf.logLevel,msg:conf.msg,time:(new Date).toISOString()});return JSON.stringify(payload)}export function msgTextFormatter(conf){let levelOut="";if(conf.logLevel==="silly"){levelOut="sil"}else if(conf.logLevel==="debug"){levelOut="deb"}else if(conf.logLevel==="verbose"){levelOut="ver"}else if(conf.logLevel==="info"){levelOut="inf"}else if(conf.logLevel==="warn"){levelOut="war"}else if(conf.logLevel==="error"){levelOut="err"}else{throw new Error(`Invalid conf.logLevel: "${conf.logLevel}"`)}let str=`${(new Date).toISOString().substring(0,19)}Z [${levelOut}] ${conf.msg}`;const metadataStr=JSON.stringify(conf.metadata);if(metadataStr!=="{}"){str+=` ${JSON.stringify(conf.metadata)}`}return str}export class Log{otlpTracer;otlpLogger;currentSpan=null;otlpLoggerProvider;context;conf;spanId;traceId;constructor(conf){if(conf===undefined){conf={}}else if(typeof conf==="string"){conf={logLevel:conf}}if(typeof conf.parentLog==="object"){for(const[key,value]of Object.entries(conf.parentLog.conf)){if(conf[key]===undefined){conf[key]=value}}}if(conf.logLevel===undefined){conf.logLevel="info"}if(conf.entryFormatter===undefined&&conf.format==="json"){conf.entryFormatter=msgJsonFormatter}else if(conf.entryFormatter===undefined){conf.entryFormatter=msgTextFormatter}if(conf.stderr===undefined){conf.stderr=console.error}if(conf.stdout===undefined){conf.stdout=console.log}this.conf=conf;this.context=this.conf.context||{};const otlpResource=new Resource({"service.name":"larvit-log",...this.context});const traceExporter=new OTLPTraceExporter({headers:this.conf.otlpAdditionalHeaders,url:this.conf.otlpHttpBaseURI?`${this.conf.otlpHttpBaseURI}/v1/traces`:undefined});const logExporter=new OTLPLogExporter({headers:this.conf.otlpAdditionalHeaders,url:this.conf.otlpHttpBaseURI?`${this.conf.otlpHttpBaseURI}/v1/logs`:undefined});this.otlpLoggerProvider=new LoggerProvider({resource:otlpResource});this.otlpLoggerProvider.addLogRecordProcessor(new BatchLogRecordProcessor(logExporter,{exportTimeoutMillis:this.conf.otlpExportTimeoutMillis!==undefined?this.conf.otlpExportTimeoutMillis:3e3,maxExportBatchSize:this.conf.otlpMaxExportBatchSize!==undefined?this.conf.otlpMaxExportBatchSize:512,maxQueueSize:this.conf.otlpMaxQueueSize!==undefined?this.conf.otlpMaxQueueSize:2048,scheduledDelayMillis:this.conf.otlpScheduledDelayMillis!==undefined?this.conf.otlpScheduledDelayMillis:100}));this.otlpLogger=this.otlpLoggerProvider.getLogger("larvit-log");const tracerProvider=new NodeTracerProvider({resource:otlpResource,spanProcessors:[new BatchSpanProcessor(traceExporter,{exportTimeoutMillis:this.conf.otlpExportTimeoutMillis!==undefined?this.conf.otlpExportTimeoutMillis:3e3,maxExportBatchSize:this.conf.otlpMaxExportBatchSize!==undefined?this.conf.otlpMaxExportBatchSize:512,maxQueueSize:this.conf.otlpMaxQueueSize!==undefined?this.conf.otlpMaxQueueSize:2048,scheduledDelayMillis:this.conf.otlpScheduledDelayMillis!==undefined?this.conf.otlpScheduledDelayMillis:100})]});tracerProvider.register();this.otlpTracer=tracerProvider.getTracer("larvit-log");const activeContext=context.active();this.currentSpan=this.otlpTracer.startSpan(this.conf.spanName||"unnamed-span",{kind:SpanKind.INTERNAL},activeContext);this.spanId=this.currentSpan.spanContext().spanId;this.traceId=this.currentSpan.spanContext().traceId;if(this.conf.parentLog){const parentContext=trace.setSpanContext(context.active(),{isRemote:false,spanId:this.conf.parentLog.spanId,traceFlags:TraceFlags.SAMPLED,traceId:this.conf.parentLog.traceId});trace.setSpan(parentContext,this.currentSpan)}}log(logLevel,msg,metadata){if(this.shouldSkipLog(logLevel))return;const formattedMetadata={...metadata,...this.context};const msTimestamp=Date.now();this.outputToConsole(logLevel,msg,formattedMetadata,msTimestamp);if(this.currentSpan){const ctx=trace.setSpan(context.active(),this.currentSpan);context.with(ctx,()=>{this.otlpLogger.emit({attributes:formattedMetadata,body:msg,severityNumber:LogLevels[logLevel].severityNumber,severityText:LogLevels[logLevel].severityText})})}else{this.otlpLogger.emit({attributes:formattedMetadata,body:msg,severityNumber:LogLevels[logLevel].severityNumber,severityText:LogLevels[logLevel].severityText})}}shouldSkipLog(logLevel){const levels=["error","warn","info","verbose","debug","silly"];const currentLevelIndex=levels.indexOf(this.conf.logLevel);const msgLevelIndex=levels.indexOf(logLevel);return currentLevelIndex<msgLevelIndex||this.conf.logLevel==="none"}outputToConsole(logLevel,msg,metadata,msTimestamp){const output=this.conf.entryFormatter({logLevel:logLevel,metadata:metadata,msTimestamp:msTimestamp,msg:msg});if(["error","warn"].includes(logLevel)){this.conf.stderr(output)}else{this.conf.stdout(output)}}error(msg,metadata){this.log("error",msg,metadata)}warn(msg,metadata){this.log("warn",msg,metadata)}info(msg,metadata){this.log("info",msg,metadata)}verbose(msg,metadata){this.log("verbose",msg,metadata)}debug(msg,metadata){this.log("debug",msg,metadata)}silly(msg,metadata){this.log("silly",msg,metadata)}end(){if(this.currentSpan){this.currentSpan.end()}this.otlpLoggerProvider.shutdown()}clone(conf){if(conf===undefined){conf={}}else if(typeof conf==="string"){conf={logLevel:conf}}if(conf.logLevel===undefined){conf.logLevel=this.conf.logLevel}if(this.conf.format!=="json"&&conf.format==="json"){conf.entryFormatter=msgJsonFormatter}else{conf.entryFormatter=this.conf.entryFormatter}if(conf.stderr===undefined){conf.stderr=this.conf.stderr}if(conf.stdout===undefined){conf.stdout=this.conf.stdout}conf.context={...this.context,...conf.context};return new Log(conf)}}
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAqBA,MAAM,CAAC,MAAM,SAAS,GAAG;IACxB,8BAA8B;IAC9B,KAAK,EAAE;QACN,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,OAAO;KACzB;IACD,IAAI,EAAE;QACL,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,MAAM;KACxB;IACD,IAAI,EAAE;QACL,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,MAAM;KACxB;IACD,OAAO,EAAE;QACR,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,QAAQ;KAC1B;IACD,KAAK,EAAE;QACN,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,OAAO;KACzB;IACD,KAAK,EAAE;QACN,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,OAAO;KACzB;IACD,6BAA6B;CAC7B,CAAC;AA8EF,MAAM,UAAU,gBAAgB,CAAC,IAAwB;IACxD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC5C,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAC9B,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAwB;IACxD,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC/B,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACtC,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACxC,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QACrC,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QACrC,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACtC,QAAQ,GAAG,sBAAsB,CAAC;IACnC,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,GAAG,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,QAAQ,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC;IACpF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClD,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QAC1B,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC5C,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,cAAc;IACtB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAEhC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC7D,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC5C,CAAC;IACF,CAAC;IACD,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;SACtB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC/C,IAAI,CAAC,EAAE,CAAC,CAAC;AACZ,CAAC;AAED,SAAS,eAAe;IACvB,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAEjC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC7D,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC5C,CAAC;IACF,CAAC;IACD,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;SACtB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC/C,IAAI,CAAC,EAAE,CAAC,CAAC;AACZ,CAAC;AAED,kDAAkD;AAClD,SAAS,cAAc,CAAC,WAAmB;IAC1C,qEAAqE;IACrE,MAAM,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC;IAE1C,wDAAwD;IACxD,4DAA4D;IAC5D,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;IAE5E,OAAO,WAAW,GAAG,qBAAqB,CAAC;AAC5C,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,SAAS,IAAI,KAAK,CAAC;AAC1E,CAAC;AAED,MAAM,OAAO,GAAG;IACf,OAAO,CAAW;IAClB,qBAAqB,CAAgC;IAC5C,eAAe,CAAuC;IACtD,SAAS,CAAoB;IAC7B,gBAAgB,CAAS;IACzB,UAAU,CAAgB;IAC1B,eAAe,CAAU;IACzB,SAAS,CAAS;IAClB,OAAO,CAAwB;IAC/B,OAAO,CAAwB;IAC/B,IAAI,CAAU,CAAC,wCAAwC;IACvD,OAAO,CAAS;IAChB,MAAM,CAAS;IACxB,gBAAgB,CAAkB;IAElC,YAAY,IAAkC;QAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,GAAG,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAED,2CAA2C;QAC3C,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;YACxC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChE,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBACnB,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;QACxB,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACjE,IAAI,CAAC,cAAc,GAAG,gBAAgB,CAAC;QACxC,CAAC;aAAM,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YAC9C,IAAI,CAAC,cAAc,GAAG,gBAAgB,CAAC;QACxC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC7B,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;QAClC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,qBAAqB,CAAC;QACxD,IAAI,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,eAAe,EAAE,CAAC;QAEjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC;QAE9C,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAED,sDAAsD;IACtD,kEAAkE;IAC3D,KAAK,CAAC,IAAkC;QAC9C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,IAAI,GAAG,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC3B,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC3D,IAAI,CAAC,cAAc,GAAG,gBAAgB,CAAC;QACxC,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAChC,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAChC,CAAC;QAED,IAAI,CAAC,OAAO,GAAG;YACd,GAAG,IAAI,CAAC,OAAO;YACf,GAAG,IAAI,CAAC,OAAO;SACf,CAAC;QAEF,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IAEM,KAAK,CAAC,GAAW,EAAE,QAAmB;QAC5C,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM;YAAE,OAAO;QACtC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAEM,IAAI,CAAC,GAAW,EAAE,QAAmB;QAC3C,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QACvD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAEM,IAAI,CAAC,GAAW,EAAE,QAAmB;QAC3C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QAC/D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAEM,OAAO,CAAC,GAAW,EAAE,QAAmB;QAC9C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QACvE,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,GAAW,EAAE,QAAmB;QAC5C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QAClF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAEM,KAAK,CAAC,GAAW,EAAE,QAAmB;QAC5C,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QAC3F,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAClC,CAAC;IAEM,GAAG;QACT,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAEnH,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACvE,CAAC;IAEO,GAAG,CAAC,QAAkB,EAAE,GAAW,EAAE,QAAmB;QAC/D,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE/B,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACjG,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACjG,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,OAAO;QACR,CAAC;QAED,MAAM,OAAO,GAAmB;YAC/B,YAAY,EAAE,CAAC;oBACd,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;oBAC5B,SAAS,EAAE,CAAC;4BACX,UAAU,EAAE,CAAC;oCACZ,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE;oCAC1B,cAAc,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,kBAAkB;oCACtD,YAAY,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,gBAAgB;oCAClD,YAAY,EAAE,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oCAChD,OAAO,EAAE,IAAI,CAAC,OAAO;iCACrB,CAAC;yBACF,CAAC;iBACF,CAAC;SACF,CAAC;QAEF,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACxD,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACnF,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QACtF,CAAC;QAED,IAAI,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;YAC9C,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;YAEnE,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrD,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAClE,GAAG;oBACH,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE;iBAC7B,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,EACtB,IAAI,EACJ,OAAO,GAIP;QACA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACb,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,EAAG,GAAG,MAAM,CAAC,IAAI,GAAG,IAAI,EAAE,CAAC;QAE3H,MAAM,OAAO,GAAG;YACf,cAAc,EAAE,kBAAkB;SAClC,CAAC;QAEF,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBAC7B,OAAO;gBACP,MAAM,EAAE,MAAM;aACd,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,GAAG,GAAG,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAe,CAAC;gBAE9D,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAExB,MAAM,GAAG,CAAC;YACX,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAEjC,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,UAAU,KAAK,yBAAyB,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;gBACrE,MAAM,IAAI,KAAK,CAAC,gGAAgG,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;YACnJ,CAAC;YAED,OAAO,IAAI,CAAC;QACb,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACvB,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;oBACjC,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE;wBACT,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;wBAC/B,GAAG;qBACH;oBACD,GAAG,EAAE,GAAG,CAAC,OAAO;iBAChB,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;gBACjC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;oBACjC,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,EAAE,GAAG,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,OAAO;iBAChB,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACP,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;oBACjC,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,EAAE,GAAG,EAAE;oBACjB,GAAG,EAAE,+BAA+B;iBACpC,CAAC,CAAC,CAAC;YACL,CAAC;YAED,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,cAAc;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAEhD,IAAI,CAAC,gBAAgB,GAAG;YACvB,aAAa,EAAE,CAAC;oBACf,QAAQ,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;oBAC5B,UAAU,EAAE,CAAC;4BACZ,KAAK,EAAE,CAAC;oCACP,eAAe,EAAE,MAAM,CAAC,WAAW,CAAC;oCACpC,IAAI,EAAE,CAAC;oCACP,IAAI,EAAE,IAAI,CAAC,SAAS;oCACpB,MAAM,EAAE,IAAI,CAAC,MAAM;oCACnB,iBAAiB,EAAE,MAAM,CAAC,WAAW,CAAC;oCACtC,OAAO,EAAE,IAAI,CAAC,OAAO;iCACrB,CAAC;yBACF,CAAC;iBACF,CAAC;SACF,CAAC;QAEF,4BAA4B;QAC5B,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;YAE9E,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;oBAC7E,GAAG;oBACH,KAAK,EAAE;wBACN,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC;qBAC1B;iBACD,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACxD,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACrG,CAAC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC9E,CAAC;CACD"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,14 @@
1
1
  {
2
2
  "name": "@larvit/log",
3
- "version": "1.4.2",
3
+ "version": "1.5.0",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
- "packageManager": "yarn@4.5.1",
6
+ "packageManager": "yarn@4.6.0",
7
7
  "scripts": {
8
8
  "build": "rm -f index.js index.d.ts index.js.map && tsc && uglifyjs index.js -o index.js",
9
9
  "lint-fix": "eslint --fix index.ts test.ts",
10
10
  "lint": "eslint index.ts test.ts",
11
+ "publish": "npm run build && npm publish",
11
12
  "test-unit": "node --loader ts-node/esm test.ts | tap-spec",
12
13
  "test": "yarn test-unit && yarn lint"
13
14
  },
@@ -15,13 +16,13 @@
15
16
  "@larvit/eslint-config-typescript-esm": "1.2.1",
16
17
  "@randomgoods/tap-spec": "5.0.4",
17
18
  "@types/express": "5.0.0",
18
- "@types/node": "22.9.1",
19
- "@types/tape": "5.6.4",
19
+ "@types/node": "22.12.0",
20
+ "@types/tape": "5.8.1",
20
21
  "eslint": "8.57.1",
21
- "express": "5.0.0",
22
+ "express": "5.0.1",
22
23
  "tape": "5.9.0",
23
24
  "ts-node": "10.9.2",
24
- "typescript": "5.6.3",
25
+ "typescript": "5.7.3",
25
26
  "uglify-js": "3.19.3"
26
27
  },
27
28
  "publishConfig": {
@@ -40,5 +41,15 @@
40
41
  "LICENSE",
41
42
  "package.json",
42
43
  "README.md"
43
- ]
44
+ ],
45
+ "dependencies": {
46
+ "@opentelemetry/api": "1.9.0",
47
+ "@opentelemetry/api-logs": "0.57.1",
48
+ "@opentelemetry/exporter-logs-otlp-http": "0.57.1",
49
+ "@opentelemetry/exporter-trace-otlp-http": "0.57.1",
50
+ "@opentelemetry/resources": "1.30.1",
51
+ "@opentelemetry/sdk-logs": "0.57.1",
52
+ "@opentelemetry/sdk-trace-base": "1.30.1",
53
+ "@opentelemetry/sdk-trace-node": "1.30.1"
54
+ }
44
55
  }