logixlysia 6.9.0 → 6.9.2

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/loki.js CHANGED
@@ -1,4 +1,4 @@
1
- import{c as Z,d as z,e as $,f as x,g as B,j as C}from"./shared/Logixlysia-bw4306mt.js";import"./shared/Logixlysia-nrt7tysy.js";var R=(q={})=>{let P=q.url??z("LOKI_URL");if(!P)throw $("Loki","missing URL. Set LOKI_URL or pass url to createLokiTransport()");let G=q.serviceName??z("LOKI_SERVICE_NAME")??z("OTEL_SERVICE_NAME")??"logixlysia",V=q.username??z("LOKI_USERNAME"),X=q.password??z("LOKI_PASSWORD"),Y=q.tenantId??z("LOKI_TENANT_ID"),F={"Content-Type":"application/json"};if(V&&X)F.Authorization=`Basic ${Buffer.from(`${V}:${X}`).toString("base64")}`;if(Y)F["X-Scope-OrgID"]=Y;return B({body:(H)=>{let K=new Map;for(let A of H){let D=K.get(A.level);if(D)D.push(A);else K.set(A.level,[A])}let J=[...K.entries()].map(([A,D])=>({stream:{...q.labels,level:A,service_name:G},values:D.map((M)=>[x(M.timestamp),JSON.stringify({...M.meta,message:C(M)})])}));return JSON.stringify({streams:J})},headers:F,name:"Loki",options:q,url:`${Z(P)}/loki/api/v1/push`})};export{R as createLokiTransport};
1
+ import{c as Z,d as z,e as $,f as x,g as B,j as C}from"./shared/Logixlysia-jvphdjgs.js";import"./shared/Logixlysia-nrt7tysy.js";var R=(q={})=>{let P=q.url??z("LOKI_URL");if(!P)throw $("Loki","missing URL. Set LOKI_URL or pass url to createLokiTransport()");let G=q.serviceName??z("LOKI_SERVICE_NAME")??z("OTEL_SERVICE_NAME")??"logixlysia",V=q.username??z("LOKI_USERNAME"),X=q.password??z("LOKI_PASSWORD"),Y=q.tenantId??z("LOKI_TENANT_ID"),F={"Content-Type":"application/json"};if(V&&X)F.Authorization=`Basic ${Buffer.from(`${V}:${X}`).toString("base64")}`;if(Y)F["X-Scope-OrgID"]=Y;return B({body:(H)=>{let K=new Map;for(let A of H){let D=K.get(A.level);if(D)D.push(A);else K.set(A.level,[A])}let J=[...K.entries()].map(([A,D])=>({stream:{...q.labels,level:A,service_name:G},values:D.map((M)=>[x(M.timestamp),JSON.stringify({...M.meta,message:C(M)})])}));return JSON.stringify({streams:J})},headers:F,name:"Loki",options:q,url:`${Z(P)}/loki/api/v1/push`})};export{R as createLokiTransport};
2
2
 
3
3
  //# debugId=922553A2805CE7FE64756E2164756E21
4
4
  //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2xva2kudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0IHtcbiAgdHlwZSBBZGFwdGVyVHJhbnNwb3J0LFxuICB0eXBlIEJhdGNoVHJhbnNwb3J0T3B0aW9ucyxcbiAgY3JlYXRlSHR0cFRyYW5zcG9ydCxcbiAgZGVmYXVsdEJvZHksXG4gIGVudlN0cmluZyxcbiAgdHlwZSBMb2dFbnRyeSxcbiAgc3RyaXBUcmFpbGluZ1NsYXNoZXMsXG4gIHRvVW5peE5hbm9zLFxuICB0cmFuc3BvcnRFcnJvclxufSBmcm9tICcuL2FkYXB0ZXJzL3NoYXJlZCdcbmltcG9ydCB0eXBlIHsgTG9nTGV2ZWwgfSBmcm9tICcuL2ludGVyZmFjZXMnXG5cbmV4cG9ydCBpbnRlcmZhY2UgTG9raVRyYW5zcG9ydE9wdGlvbnMgZXh0ZW5kcyBCYXRjaFRyYW5zcG9ydE9wdGlvbnMge1xuICAvKipcbiAgICogRXh0cmEgc3RhdGljIHN0cmVhbSBsYWJlbHMuIEtlZXAgdGhlc2UgbG93LWNhcmRpbmFsaXR5IOKAlCBwZXItcmVxdWVzdFxuICAgKiB2YWx1ZXMgYmVsb25nIGluIHRoZSBsb2cgbGluZSwgbm90IGluIGxhYmVscy5cbiAgICovXG4gIGxhYmVscz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz5cbiAgLyoqXG4gICAqIEJhc2ljLWF1dGggcGFzc3dvcmQgb3IgQVBJIHRva2VuIChHcmFmYW5hIENsb3VkKS5cbiAgICogRmFsbHMgYmFjayB0byBgTE9LSV9QQVNTV09SRGAuXG4gICAqL1xuICBwYXNzd29yZD86IHN0cmluZ1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGBzZXJ2aWNlX25hbWVgIHN0cmVhbSBsYWJlbC5cbiAgICogRmFsbHMgYmFjayB0byBgTE9LSV9TRVJWSUNFX05BTUVgLCB0aGVuIGBPVEVMX1NFUlZJQ0VfTkFNRWAuXG4gICAqIEBkZWZhdWx0ICdsb2dpeGx5c2lhJ1xuICAgKi9cbiAgc2VydmljZU5hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFRlbmFudCBJRCBzZW50IGFzIHRoZSBgWC1TY29wZS1PcmdJRGAgaGVhZGVyIChtdWx0aS10ZW5hbnQgTG9raSkuXG4gICAqIEZhbGxzIGJhY2sgdG8gYExPS0lfVEVOQU5UX0lEYC5cbiAgICovXG4gIHRlbmFudElkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBMb2tpIGJhc2UgVVJMLCBlLmcuIGBodHRwOi8vbG9jYWxob3N0OjMxMDBgIG9yIGEgR3JhZmFuYSBDbG91ZCBwdXNoIFVSTFxuICAgKiBiYXNlLiBUaGUgYWRhcHRlciBhcHBlbmRzIGAvbG9raS9hcGkvdjEvcHVzaGAuXG4gICAqIEZhbGxzIGJhY2sgdG8gdGhlIGBMT0tJX1VSTGAgZW52aXJvbm1lbnQgdmFyaWFibGUuXG4gICAqL1xuICB1cmw/OiBzdHJpbmdcbiAgLyoqXG4gICAqIEJhc2ljLWF1dGggdXNlcm5hbWUgKEdyYWZhbmEgQ2xvdWQgaW5zdGFuY2UgSUQpLlxuICAgKiBGYWxscyBiYWNrIHRvIGBMT0tJX1VTRVJOQU1FYC5cbiAgICovXG4gIHVzZXJuYW1lPzogc3RyaW5nXG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRyYW5zcG9ydCB0aGF0IHB1c2hlcyBsb2dzIHRvIEdyYWZhbmEgTG9raS4gU3RyZWFtcyBhcmUgbGFiZWxlZFxuICogd2l0aCBgc2VydmljZV9uYW1lYCBhbmQgYGxldmVsYCAocGx1cyB5b3VyIHN0YXRpYyBsYWJlbHMpOyB0aGUgbG9nIGxpbmUgaXNcbiAqIHRoZSBtZXNzYWdlIGFuZCBmdWxsIG1ldGEgb2JqZWN0IGFzIEpTT04sIHJlYWR5IGZvciBMb2dRTCdzIGB8IGpzb25gLlxuICpcbiAqIEB0aHJvd3MgV2hlbiBubyBVUkwgaXMgY29uZmlndXJlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZUxva2lUcmFuc3BvcnQgPSAoXG4gIG9wdGlvbnM6IExva2lUcmFuc3BvcnRPcHRpb25zID0ge31cbik6IEFkYXB0ZXJUcmFuc3BvcnQgPT4ge1xuICBjb25zdCByYXdVcmwgPSBvcHRpb25zLnVybCA/PyBlbnZTdHJpbmcoJ0xPS0lfVVJMJylcbiAgaWYgKCFyYXdVcmwpIHtcbiAgICB0aHJvdyB0cmFuc3BvcnRFcnJvcihcbiAgICAgICdMb2tpJyxcbiAgICAgICdtaXNzaW5nIFVSTC4gU2V0IExPS0lfVVJMIG9yIHBhc3MgdXJsIHRvIGNyZWF0ZUxva2lUcmFuc3BvcnQoKSdcbiAgICApXG4gIH1cbiAgY29uc3Qgc2VydmljZU5hbWUgPVxuICAgIG9wdGlvbnMuc2VydmljZU5hbWUgPz9cbiAgICBlbnZTdHJpbmcoJ0xPS0lfU0VSVklDRV9OQU1FJykgPz9cbiAgICBlbnZTdHJpbmcoJ09URUxfU0VSVklDRV9OQU1FJykgPz9cbiAgICAnbG9naXhseXNpYSdcbiAgY29uc3QgdXNlcm5hbWUgPSBvcHRpb25zLnVzZXJuYW1lID8/IGVudlN0cmluZygnTE9LSV9VU0VSTkFNRScpXG4gIGNvbnN0IHBhc3N3b3JkID0gb3B0aW9ucy5wYXNzd29yZCA/PyBlbnZTdHJpbmcoJ0xPS0lfUEFTU1dPUkQnKVxuICBjb25zdCB0ZW5hbnRJZCA9IG9wdGlvbnMudGVuYW50SWQgPz8gZW52U3RyaW5nKCdMT0tJX1RFTkFOVF9JRCcpXG5cbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHtcbiAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gIH1cbiAgaWYgKHVzZXJuYW1lICYmIHBhc3N3b3JkKSB7XG4gICAgaGVhZGVycy5BdXRob3JpemF0aW9uID0gYEJhc2ljICR7QnVmZmVyLmZyb20oXG4gICAgICBgJHt1c2VybmFtZX06JHtwYXNzd29yZH1gXG4gICAgKS50b1N0cmluZygnYmFzZTY0Jyl9YFxuICB9XG4gIGlmICh0ZW5hbnRJZCkge1xuICAgIGhlYWRlcnNbJ1gtU2NvcGUtT3JnSUQnXSA9IHRlbmFudElkXG4gIH1cblxuICBjb25zdCBib2R5ID0gKGVudHJpZXM6IExvZ0VudHJ5W10pOiBzdHJpbmcgPT4ge1xuICAgIGNvbnN0IGJ5TGV2ZWwgPSBuZXcgTWFwPExvZ0xldmVsLCBMb2dFbnRyeVtdPigpXG4gICAgZm9yIChjb25zdCBlbnRyeSBvZiBlbnRyaWVzKSB7XG4gICAgICBjb25zdCBidWNrZXQgPSBieUxldmVsLmdldChlbnRyeS5sZXZlbClcbiAgICAgIGlmIChidWNrZXQpIHtcbiAgICAgICAgYnVja2V0LnB1c2goZW50cnkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBieUxldmVsLnNldChlbnRyeS5sZXZlbCwgW2VudHJ5XSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBzdHJlYW1zID0gWy4uLmJ5TGV2ZWwuZW50cmllcygpXS5tYXAoKFtsZXZlbCwgbGV2ZWxFbnRyaWVzXSkgPT4gKHtcbiAgICAgIHN0cmVhbToge1xuICAgICAgICAuLi5vcHRpb25zLmxhYmVscyxcbiAgICAgICAgbGV2ZWwsXG4gICAgICAgIHNlcnZpY2VfbmFtZTogc2VydmljZU5hbWVcbiAgICAgIH0sXG4gICAgICB2YWx1ZXM6IGxldmVsRW50cmllcy5tYXAoZW50cnkgPT4gW1xuICAgICAgICB0b1VuaXhOYW5vcyhlbnRyeS50aW1lc3RhbXApLFxuICAgICAgICBKU09OLnN0cmluZ2lmeSh7IC4uLmVudHJ5Lm1ldGEsIG1lc3NhZ2U6IGRlZmF1bHRCb2R5KGVudHJ5KSB9KVxuICAgICAgXSlcbiAgICB9KSlcblxuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh7IHN0cmVhbXMgfSlcbiAgfVxuXG4gIHJldHVybiBjcmVhdGVIdHRwVHJhbnNwb3J0KHtcbiAgICBib2R5LFxuICAgIGhlYWRlcnMsXG4gICAgbmFtZTogJ0xva2knLFxuICAgIG9wdGlvbnMsXG4gICAgdXJsOiBgJHtzdHJpcFRyYWlsaW5nU2xhc2hlcyhyYXdVcmwpfS9sb2tpL2FwaS92MS9wdXNoYFxuICB9KVxufVxuXG5leHBvcnQgdHlwZSB7IEFkYXB0ZXJUcmFuc3BvcnQgfSBmcm9tICcuL2FkYXB0ZXJzL3NoYXJlZCdcbiIKICBdLAogICJtYXBwaW5ncyI6ICJ5SEF1RE8sVUFBTSxFQUFzQixDQUNqQyxFQUFnQyxDQUFDLElBQ1osQ0FDckIsSUFBTSxFQUFTLEVBQVEsS0FBTyxFQUFVLFVBQVUsRUFDbEQsR0FBSSxDQUFDLEVBQ0gsTUFBTSxFQUNKLE9BQ0EsZ0VBQ0YsRUFFRixJQUFNLEVBQ0osRUFBUSxhQUNSLEVBQVUsbUJBQW1CLEdBQzdCLEVBQVUsbUJBQW1CLEdBQzdCLGFBQ0ksRUFBVyxFQUFRLFVBQVksRUFBVSxlQUFlLEVBQ3hELEVBQVcsRUFBUSxVQUFZLEVBQVUsZUFBZSxFQUN4RCxFQUFXLEVBQVEsVUFBWSxFQUFVLGdCQUFnQixFQUV6RCxFQUFrQyxDQUN0QyxlQUFnQixrQkFDbEIsRUFDQSxHQUFJLEdBQVksRUFDZCxFQUFRLGNBQWdCLFNBQVMsT0FBTyxLQUN0QyxHQUFHLEtBQVksR0FDakIsRUFBRSxTQUFTLFFBQVEsSUFFckIsR0FBSSxFQUNGLEVBQVEsaUJBQW1CLEVBNkI3QixPQUFPLEVBQW9CLENBQ3pCLEtBM0JXLENBQUMsSUFBZ0MsQ0FDNUMsSUFBTSxFQUFVLElBQUksSUFDcEIsUUFBVyxLQUFTLEVBQVMsQ0FDM0IsSUFBTSxFQUFTLEVBQVEsSUFBSSxFQUFNLEtBQUssRUFDdEMsR0FBSSxFQUNGLEVBQU8sS0FBSyxDQUFLLEVBRWpCLE9BQVEsSUFBSSxFQUFNLE1BQU8sQ0FBQyxDQUFLLENBQUMsRUFJcEMsSUFBTSxFQUFVLENBQUMsR0FBRyxFQUFRLFFBQVEsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFPLE1BQW1CLENBQ3JFLE9BQVEsSUFDSCxFQUFRLE9BQ1gsUUFDQSxhQUFjLENBQ2hCLEVBQ0EsT0FBUSxFQUFhLElBQUksS0FBUyxDQUNoQyxFQUFZLEVBQU0sU0FBUyxFQUMzQixLQUFLLFVBQVUsSUFBSyxFQUFNLEtBQU0sUUFBUyxFQUFZLENBQUssQ0FBRSxDQUFDLENBQy9ELENBQUMsQ0FDSCxFQUFFLEVBRUYsT0FBTyxLQUFLLFVBQVUsQ0FBRSxTQUFRLENBQUMsR0FLakMsVUFDQSxLQUFNLE9BQ04sVUFDQSxJQUFLLEdBQUcsRUFBcUIsQ0FBTSxvQkFDckMsQ0FBQyIsCiAgImRlYnVnSWQiOiAiOTIyNTUzQTI4MDVDRTdGRTY0NzU2RTIxNjQ3NTZFMjEiLAogICJuYW1lcyI6IFtdCn0=
package/dist/otlp.js CHANGED
@@ -1,4 +1,4 @@
1
- import{a as $}from"./shared/Logixlysia-tmhwvse9.js";import{c as Q,d as F,e as Z}from"./shared/Logixlysia-bw4306mt.js";import"./shared/Logixlysia-nrt7tysy.js";var Y="/v1/logs",z=(j)=>{try{return decodeURIComponent(j)}catch{return j}},I=(j)=>{let B={};for(let D of j.split(",")){let K=D.indexOf("=");if(K<=0)continue;let X=D.slice(0,K).trim();if(X)B[X]=z(D.slice(K+1).trim())}return B},J=(j)=>{if(j)return`${Q(j)}${Y}`;let B=F("OTEL_EXPORTER_OTLP_LOGS_ENDPOINT");if(B)return B;let D=F("OTEL_EXPORTER_OTLP_ENDPOINT");if(D)return`${Q(D)}${Y}`;throw Z("OTLP","missing endpoint. Set OTEL_EXPORTER_OTLP_ENDPOINT (or OTEL_EXPORTER_OTLP_LOGS_ENDPOINT) or pass endpoint to createOtlpTransport()")},V=(j={})=>{let B=F("OTEL_EXPORTER_OTLP_LOGS_HEADERS")??F("OTEL_EXPORTER_OTLP_HEADERS");return $({headers:{...B?I(B):{},...j.headers},name:"OTLP",options:j,resourceAttributes:j.resourceAttributes??{},serviceName:j.serviceName??F("OTEL_SERVICE_NAME")??"logixlysia",url:J(j.endpoint)})};export{V as createOtlpTransport};
1
+ import{a as $}from"./shared/Logixlysia-a59b921j.js";import{c as Q,d as F,e as Z}from"./shared/Logixlysia-jvphdjgs.js";import"./shared/Logixlysia-nrt7tysy.js";var Y="/v1/logs",z=(j)=>{try{return decodeURIComponent(j)}catch{return j}},I=(j)=>{let B={};for(let D of j.split(",")){let K=D.indexOf("=");if(K<=0)continue;let X=D.slice(0,K).trim();if(X)B[X]=z(D.slice(K+1).trim())}return B},J=(j)=>{if(j)return`${Q(j)}${Y}`;let B=F("OTEL_EXPORTER_OTLP_LOGS_ENDPOINT");if(B)return B;let D=F("OTEL_EXPORTER_OTLP_ENDPOINT");if(D)return`${Q(D)}${Y}`;throw Z("OTLP","missing endpoint. Set OTEL_EXPORTER_OTLP_ENDPOINT (or OTEL_EXPORTER_OTLP_LOGS_ENDPOINT) or pass endpoint to createOtlpTransport()")},V=(j={})=>{let B=F("OTEL_EXPORTER_OTLP_LOGS_HEADERS")??F("OTEL_EXPORTER_OTLP_HEADERS");return $({headers:{...B?I(B):{},...j.headers},name:"OTLP",options:j,resourceAttributes:j.resourceAttributes??{},serviceName:j.serviceName??F("OTEL_SERVICE_NAME")??"logixlysia",url:J(j.endpoint)})};export{V as createOtlpTransport};
2
2
 
3
3
  //# debugId=3A3E64CBF313FEC564756E2164756E21
4
4
  //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL290bHAudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0IHsgY3JlYXRlT3RscENvcmUgfSBmcm9tICcuL2FkYXB0ZXJzL290bHAtY29yZSdcbmltcG9ydCB7XG4gIHR5cGUgQWRhcHRlclRyYW5zcG9ydCxcbiAgdHlwZSBCYXRjaFRyYW5zcG9ydE9wdGlvbnMsXG4gIGVudlN0cmluZyxcbiAgc3RyaXBUcmFpbGluZ1NsYXNoZXMsXG4gIHRyYW5zcG9ydEVycm9yXG59IGZyb20gJy4vYWRhcHRlcnMvc2hhcmVkJ1xuXG5jb25zdCBMT0dTX1BBVEggPSAnL3YxL2xvZ3MnXG5cbi8qKiBXM0MgQmFnZ2FnZSB2YWx1ZXMgYXJlIHBlcmNlbnQtZW5jb2RlZDsga2VlcCB0aGUgcmF3IHZhbHVlIGlmIGRlY29kaW5nIGZhaWxzLiAqL1xuY29uc3QgZGVjb2RlSGVhZGVyVmFsdWUgPSAodmFsdWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudCh2YWx1ZSlcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHZhbHVlXG4gIH1cbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIHN0YW5kYXJkIGBPVEVMX0VYUE9SVEVSX09UTFBfSEVBREVSU2AgZm9ybWF0IChgaz12LGsyPXYyYCxcbiAqIFczQyBCYWdnYWdlKTogc3BsaXQgb24gdGhlIGZpcnN0IGA9YCwgcGVyY2VudC1kZWNvZGUgdmFsdWVzLCBhbGxvdyBlbXB0eVxuICogdmFsdWVzLlxuICovXG5jb25zdCBwYXJzZUhlYWRlcnNFbnYgPSAocmF3OiBzdHJpbmcpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0+IHtcbiAgY29uc3QgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9XG4gIGZvciAoY29uc3QgcGFpciBvZiByYXcuc3BsaXQoJywnKSkge1xuICAgIGNvbnN0IHNlcGFyYXRvciA9IHBhaXIuaW5kZXhPZignPScpXG4gICAgaWYgKHNlcGFyYXRvciA8PSAwKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCBrZXkgPSBwYWlyLnNsaWNlKDAsIHNlcGFyYXRvcikudHJpbSgpXG4gICAgaWYgKGtleSkge1xuICAgICAgaGVhZGVyc1trZXldID0gZGVjb2RlSGVhZGVyVmFsdWUocGFpci5zbGljZShzZXBhcmF0b3IgKyAxKS50cmltKCkpXG4gICAgfVxuICB9XG4gIHJldHVybiBoZWFkZXJzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3RscFRyYW5zcG9ydE9wdGlvbnMgZXh0ZW5kcyBCYXRjaFRyYW5zcG9ydE9wdGlvbnMge1xuICAvKipcbiAgICogT1RMUCBIVFRQIGJhc2UgVVJMIOKAlCB0aGUgYWRhcHRlciBhcHBlbmRzIGAvdjEvbG9nc2AuIEZvciBhIGxvY2FsXG4gICAqIGNvbGxlY3RvciB0aGlzIGlzIHR5cGljYWxseSBgaHR0cDovL2xvY2FsaG9zdDo0MzE4YC5cbiAgICogRmFsbHMgYmFjayB0byBgT1RFTF9FWFBPUlRFUl9PVExQX0xPR1NfRU5EUE9JTlRgICh1c2VkIGFzLWlzLCBwZXIgdGhlXG4gICAqIE9wZW5UZWxlbWV0cnkgc3BlYyksIHRoZW4gYE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVGAgKHdpdGggYC92MS9sb2dzYFxuICAgKiBhcHBlbmRlZCkuXG4gICAqL1xuICBlbmRwb2ludD86IHN0cmluZ1xuICAvKipcbiAgICogRXh0cmEgcmVxdWVzdCBoZWFkZXJzLCBlLmcuIHZlbmRvciBhdXRoLiBNZXJnZWQgb3ZlciBoZWFkZXJzIHBhcnNlZCBmcm9tXG4gICAqIGBPVEVMX0VYUE9SVEVSX09UTFBfTE9HU19IRUFERVJTYCwgdGhlbiBgT1RFTF9FWFBPUlRFUl9PVExQX0hFQURFUlNgXG4gICAqIChgaz12LGsyPXYyYCkuXG4gICAqL1xuICBoZWFkZXJzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICAvKiogRXh0cmEgT1RMUCByZXNvdXJjZSBhdHRyaWJ1dGVzIG1lcmdlZCBuZXh0IHRvIGBzZXJ2aWNlLm5hbWVgLiAqL1xuICByZXNvdXJjZUF0dHJpYnV0ZXM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgYHNlcnZpY2UubmFtZWAgcmVzb3VyY2UgYXR0cmlidXRlLlxuICAgKiBGYWxscyBiYWNrIHRvIGBPVEVMX1NFUlZJQ0VfTkFNRWAuXG4gICAqIEBkZWZhdWx0ICdsb2dpeGx5c2lhJ1xuICAgKi9cbiAgc2VydmljZU5hbWU/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBSZXNvbHZlcyB0aGUgbG9ncyBVUkwgd2l0aCB0aGUgc3BlYydzIHByZWNlZGVuY2U6IGFuIGV4cGxpY2l0IG9wdGlvbiwgdGhlblxuICogdGhlIHNpZ25hbC1zcGVjaWZpYyBlbmRwb2ludCAodXNlZCBhcy1pcyksIHRoZW4gdGhlIGdlbmVyaWMgZW5kcG9pbnQgKHdpdGhcbiAqIHRoZSBsb2dzIHBhdGggYXBwZW5kZWQpLlxuICovXG5jb25zdCByZXNvbHZlTG9nc1VybCA9IChlbmRwb2ludE9wdGlvbjogc3RyaW5nIHwgdW5kZWZpbmVkKTogc3RyaW5nID0+IHtcbiAgaWYgKGVuZHBvaW50T3B0aW9uKSB7XG4gICAgcmV0dXJuIGAke3N0cmlwVHJhaWxpbmdTbGFzaGVzKGVuZHBvaW50T3B0aW9uKX0ke0xPR1NfUEFUSH1gXG4gIH1cbiAgY29uc3QgbG9nc0VuZHBvaW50ID0gZW52U3RyaW5nKCdPVEVMX0VYUE9SVEVSX09UTFBfTE9HU19FTkRQT0lOVCcpXG4gIGlmIChsb2dzRW5kcG9pbnQpIHtcbiAgICByZXR1cm4gbG9nc0VuZHBvaW50XG4gIH1cbiAgY29uc3QgZ2VuZXJpY0VuZHBvaW50ID0gZW52U3RyaW5nKCdPVEVMX0VYUE9SVEVSX09UTFBfRU5EUE9JTlQnKVxuICBpZiAoZ2VuZXJpY0VuZHBvaW50KSB7XG4gICAgcmV0dXJuIGAke3N0cmlwVHJhaWxpbmdTbGFzaGVzKGdlbmVyaWNFbmRwb2ludCl9JHtMT0dTX1BBVEh9YFxuICB9XG4gIHRocm93IHRyYW5zcG9ydEVycm9yKFxuICAgICdPVExQJyxcbiAgICAnbWlzc2luZyBlbmRwb2ludC4gU2V0IE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVCAob3IgT1RFTF9FWFBPUlRFUl9PVExQX0xPR1NfRU5EUE9JTlQpIG9yIHBhc3MgZW5kcG9pbnQgdG8gY3JlYXRlT3RscFRyYW5zcG9ydCgpJ1xuICApXG59XG5cbi8qKlxuICogQ3JlYXRlcyBhIHRyYW5zcG9ydCB0aGF0IHNoaXBzIGxvZ3MgdG8gYW55IE9UTFAvSFRUUCBsb2dzIGVuZHBvaW50IGFzIEpTT05cbiAqIChgRXhwb3J0TG9nc1NlcnZpY2VSZXF1ZXN0YCkg4oCUIE9wZW5UZWxlbWV0cnkgQ29sbGVjdG9ycywgR3JhZmFuYSBDbG91ZCxcbiAqIE5ldyBSZWxpYywgSG9uZXljb21iLCBTaWdOb3osIGFuZCBldmVyeSBvdGhlciBPVExQLWNvbXBhdGlibGUgYmFja2VuZC5cbiAqIE1ldGEgZmllbGRzIGJlY29tZSBkb3Qtbm90YXRpb24gbG9nIGF0dHJpYnV0ZXMgKGByZXF1ZXN0Lm1ldGhvZGAsXG4gKiBgY29udGV4dC5yZXF1ZXN0SWRgLCDigKYpLlxuICpcbiAqIEB0aHJvd3MgV2hlbiBubyBlbmRwb2ludCBpcyBjb25maWd1cmVkLlxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlT3RscFRyYW5zcG9ydCA9IChcbiAgb3B0aW9uczogT3RscFRyYW5zcG9ydE9wdGlvbnMgPSB7fVxuKTogQWRhcHRlclRyYW5zcG9ydCA9PiB7XG4gIGNvbnN0IGhlYWRlcnNFbnYgPVxuICAgIGVudlN0cmluZygnT1RFTF9FWFBPUlRFUl9PVExQX0xPR1NfSEVBREVSUycpID8/XG4gICAgZW52U3RyaW5nKCdPVEVMX0VYUE9SVEVSX09UTFBfSEVBREVSUycpXG5cbiAgcmV0dXJuIGNyZWF0ZU90bHBDb3JlKHtcbiAgICBoZWFkZXJzOiB7XG4gICAgICAuLi4oaGVhZGVyc0VudiA/IHBhcnNlSGVhZGVyc0VudihoZWFkZXJzRW52KSA6IHt9KSxcbiAgICAgIC4uLm9wdGlvbnMuaGVhZGVyc1xuICAgIH0sXG4gICAgbmFtZTogJ09UTFAnLFxuICAgIG9wdGlvbnMsXG4gICAgcmVzb3VyY2VBdHRyaWJ1dGVzOiBvcHRpb25zLnJlc291cmNlQXR0cmlidXRlcyA/PyB7fSxcbiAgICBzZXJ2aWNlTmFtZTpcbiAgICAgIG9wdGlvbnMuc2VydmljZU5hbWUgPz8gZW52U3RyaW5nKCdPVEVMX1NFUlZJQ0VfTkFNRScpID8/ICdsb2dpeGx5c2lhJyxcbiAgICB1cmw6IHJlc29sdmVMb2dzVXJsKG9wdGlvbnMuZW5kcG9pbnQpXG4gIH0pXG59XG5cbmV4cG9ydCB0eXBlIHsgQWRhcHRlclRyYW5zcG9ydCB9IGZyb20gJy4vYWRhcHRlcnMvc2hhcmVkJ1xuIgogIF0sCiAgIm1hcHBpbmdzIjogImtKQVNBLFVBQU0sUUFBWSxXQUdaLEVBQW9CLENBQUMsSUFBMEIsQ0FDbkQsR0FBSSxDQUNGLE9BQU8sbUJBQW1CLENBQUssRUFDL0IsS0FBTSxDQUNOLE9BQU8sSUFTTCxFQUFrQixDQUFDLElBQXdDLENBQy9ELElBQU0sRUFBa0MsQ0FBQyxFQUN6QyxRQUFXLEtBQVEsRUFBSSxNQUFNLEdBQUcsRUFBRyxDQUNqQyxJQUFNLEVBQVksRUFBSyxRQUFRLEdBQUcsRUFDbEMsR0FBSSxHQUFhLEVBQ2YsU0FFRixJQUFNLEVBQU0sRUFBSyxNQUFNLEVBQUcsQ0FBUyxFQUFFLEtBQUssRUFDMUMsR0FBSSxFQUNGLEVBQVEsR0FBTyxFQUFrQixFQUFLLE1BQU0sRUFBWSxDQUFDLEVBQUUsS0FBSyxDQUFDLEVBR3JFLE9BQU8sR0FpQ0gsRUFBaUIsQ0FBQyxJQUErQyxDQUNyRSxHQUFJLEVBQ0YsTUFBTyxHQUFHLEVBQXFCLENBQWMsSUFBSSxJQUVuRCxJQUFNLEVBQWUsRUFBVSxrQ0FBa0MsRUFDakUsR0FBSSxFQUNGLE9BQU8sRUFFVCxJQUFNLEVBQWtCLEVBQVUsNkJBQTZCLEVBQy9ELEdBQUksRUFDRixNQUFPLEdBQUcsRUFBcUIsQ0FBZSxJQUFJLElBRXBELE1BQU0sRUFDSixPQUNBLG1JQUNGLEdBWVcsRUFBc0IsQ0FDakMsRUFBZ0MsQ0FBQyxJQUNaLENBQ3JCLElBQU0sRUFDSixFQUFVLGlDQUFpQyxHQUMzQyxFQUFVLDRCQUE0QixFQUV4QyxPQUFPLEVBQWUsQ0FDcEIsUUFBUyxJQUNILEVBQWEsRUFBZ0IsQ0FBVSxFQUFJLENBQUMsS0FDN0MsRUFBUSxPQUNiLEVBQ0EsS0FBTSxPQUNOLFVBQ0EsbUJBQW9CLEVBQVEsb0JBQXNCLENBQUMsRUFDbkQsWUFDRSxFQUFRLGFBQWUsRUFBVSxtQkFBbUIsR0FBSyxhQUMzRCxJQUFLLEVBQWUsRUFBUSxRQUFRLENBQ3RDLENBQUMiLAogICJkZWJ1Z0lkIjogIjNBM0U2NENCRjMxM0ZFQzU2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
package/dist/posthog.js CHANGED
@@ -1,4 +1,4 @@
1
- import{c as z,d as q,e as G,g as J,h as Q,i as R,j as W}from"./shared/Logixlysia-bw4306mt.js";import"./shared/Logixlysia-nrt7tysy.js";var B="https://us.i.posthog.com",O="logixlysia_log",P="logixlysia-server",V="context.userId",w=(j={})=>{let x=j.apiKey??q("POSTHOG_API_KEY");if(!x)throw G("PostHog","missing API key. Set POSTHOG_API_KEY or pass apiKey to createPostHogTransport()");let X=z(j.host??q("POSTHOG_HOST")??B),Y=j.eventName??O,Z=j.distinctId??P,$=j.distinctIdField??V,u=(k)=>{let b=R(k.meta,$);if(typeof b==="string"&&b.length>0)return b;if(typeof b==="number")return String(b);return Z};return J({body:(k)=>JSON.stringify({api_key:x,batch:k.map((b)=>({distinct_id:u(b),event:Y,properties:{...Q(b.meta),level:b.level,message:W(b)},timestamp:b.timestamp.toISOString()}))}),headers:{"Content-Type":"application/json"},name:"PostHog",options:j,url:`${X}/batch/`})};export{w as createPostHogTransport};
1
+ import{c as z,d as q,e as G,g as J,h as Q,i as R,j as W}from"./shared/Logixlysia-jvphdjgs.js";import"./shared/Logixlysia-nrt7tysy.js";var B="https://us.i.posthog.com",O="logixlysia_log",P="logixlysia-server",V="context.userId",w=(j={})=>{let x=j.apiKey??q("POSTHOG_API_KEY");if(!x)throw G("PostHog","missing API key. Set POSTHOG_API_KEY or pass apiKey to createPostHogTransport()");let X=z(j.host??q("POSTHOG_HOST")??B),Y=j.eventName??O,Z=j.distinctId??P,$=j.distinctIdField??V,u=(k)=>{let b=R(k.meta,$);if(typeof b==="string"&&b.length>0)return b;if(typeof b==="number")return String(b);return Z};return J({body:(k)=>JSON.stringify({api_key:x,batch:k.map((b)=>({distinct_id:u(b),event:Y,properties:{...Q(b.meta),level:b.level,message:W(b)},timestamp:b.timestamp.toISOString()}))}),headers:{"Content-Type":"application/json"},name:"PostHog",options:j,url:`${X}/batch/`})};export{w as createPostHogTransport};
2
2
 
3
3
  //# debugId=984257E89B9A59EA64756E2164756E21
4
4
  //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL3Bvc3Rob2cudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiaW1wb3J0IHtcbiAgdHlwZSBBZGFwdGVyVHJhbnNwb3J0LFxuICB0eXBlIEJhdGNoVHJhbnNwb3J0T3B0aW9ucyxcbiAgY3JlYXRlSHR0cFRyYW5zcG9ydCxcbiAgZGVmYXVsdEJvZHksXG4gIGVudlN0cmluZyxcbiAgZmxhdHRlbk1ldGEsXG4gIGdldFBhdGgsXG4gIHR5cGUgTG9nRW50cnksXG4gIHN0cmlwVHJhaWxpbmdTbGFzaGVzLFxuICB0cmFuc3BvcnRFcnJvclxufSBmcm9tICcuL2FkYXB0ZXJzL3NoYXJlZCdcblxuY29uc3QgREVGQVVMVF9IT1NUID0gJ2h0dHBzOi8vdXMuaS5wb3N0aG9nLmNvbSdcbmNvbnN0IERFRkFVTFRfRVZFTlRfTkFNRSA9ICdsb2dpeGx5c2lhX2xvZydcbmNvbnN0IERFRkFVTFRfRElTVElOQ1RfSUQgPSAnbG9naXhseXNpYS1zZXJ2ZXInXG5jb25zdCBERUZBVUxUX0RJU1RJTkNUX0lEX0ZJRUxEID0gJ2NvbnRleHQudXNlcklkJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFBvc3RIb2dUcmFuc3BvcnRPcHRpb25zIGV4dGVuZHMgQmF0Y2hUcmFuc3BvcnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFBvc3RIb2cgcHJvamVjdCBBUEkga2V5IChgcGhjX+KApmApLlxuICAgKiBGYWxscyBiYWNrIHRvIHRoZSBgUE9TVEhPR19BUElfS0VZYCBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAgICovXG4gIGFwaUtleT86IHN0cmluZ1xuICAvKipcbiAgICogU3RhdGljIGBkaXN0aW5jdF9pZGAgdXNlZCB3aGVuIHtAbGluayBkaXN0aW5jdElkRmllbGR9IHJlc29sdmVzIHRvXG4gICAqIG5vdGhpbmcg4oCUIGUuZy4gYSBzZXJ2aWNlIG5hbWUgZm9yIGEgYmFja2VuZCBhY3RpbmcgYXMgb25lIGlkZW50aXR5LlxuICAgKiBAZGVmYXVsdCAnbG9naXhseXNpYS1zZXJ2ZXInXG4gICAqL1xuICBkaXN0aW5jdElkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBEb3Qtbm90YXRpb24gbWV0YSBwYXRoIHJlc29sdmVkIHBlciBsb2cgdG8gdGhlIGV2ZW50J3MgYGRpc3RpbmN0X2lkYCxcbiAgICogbGlua2luZyBsb2dzIHRvIFBvc3RIb2cgcGVyc29ucy4gUG9wdWxhdGUgaXQgdmlhXG4gICAqIGBsb2cubWVyZ2VDb250ZXh0KHsgdXNlcklkIH0pYC5cbiAgICogQGRlZmF1bHQgJ2NvbnRleHQudXNlcklkJ1xuICAgKi9cbiAgZGlzdGluY3RJZEZpZWxkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBjYXB0dXJlZCBldmVudC5cbiAgICogQGRlZmF1bHQgJ2xvZ2l4bHlzaWFfbG9nJ1xuICAgKi9cbiAgZXZlbnROYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiBQb3N0SG9nIGluc3RhbmNlIFVSTDogYGh0dHBzOi8vdXMuaS5wb3N0aG9nLmNvbWAgKFVTKSxcbiAgICogYGh0dHBzOi8vZXUuaS5wb3N0aG9nLmNvbWAgKEVVKSwgb3IgYSBzZWxmLWhvc3RlZCBpbnN0YW5jZS5cbiAgICogRmFsbHMgYmFjayB0byBgUE9TVEhPR19IT1NUYC5cbiAgICogQGRlZmF1bHQgJ2h0dHBzOi8vdXMuaS5wb3N0aG9nLmNvbSdcbiAgICovXG4gIGhvc3Q/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgdHJhbnNwb3J0IHRoYXQgY2FwdHVyZXMgbG9ncyBhcyBQb3N0SG9nIGV2ZW50cyB2aWEgdGhlIGJhdGNoIEFQSS5cbiAqIE1ldGEgZmllbGRzIGJlY29tZSBkb3Qtbm90YXRpb24gZXZlbnQgcHJvcGVydGllcyAoYHJlcXVlc3QubWV0aG9kYCxcbiAqIGBjb250ZXh0LnJlcXVlc3RJZGAsIOKApikgdXNhYmxlIGluIGZpbHRlcnMsIGluc2lnaHRzLCBhbmQgY29ob3J0cy4gTG9nc1xuICogY2FycnlpbmcgYSBgdXNlcklkYCBpbiB0aGUgcmVxdWVzdCBjb250ZXh0IGFyZSBsaW5rZWQgdG8gUG9zdEhvZyBwZXJzb25zLlxuICpcbiAqIEB0aHJvd3MgV2hlbiBubyBBUEkga2V5IGlzIGNvbmZpZ3VyZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVQb3N0SG9nVHJhbnNwb3J0ID0gKFxuICBvcHRpb25zOiBQb3N0SG9nVHJhbnNwb3J0T3B0aW9ucyA9IHt9XG4pOiBBZGFwdGVyVHJhbnNwb3J0ID0+IHtcbiAgY29uc3QgYXBpS2V5ID0gb3B0aW9ucy5hcGlLZXkgPz8gZW52U3RyaW5nKCdQT1NUSE9HX0FQSV9LRVknKVxuICBpZiAoIWFwaUtleSkge1xuICAgIHRocm93IHRyYW5zcG9ydEVycm9yKFxuICAgICAgJ1Bvc3RIb2cnLFxuICAgICAgJ21pc3NpbmcgQVBJIGtleS4gU2V0IFBPU1RIT0dfQVBJX0tFWSBvciBwYXNzIGFwaUtleSB0byBjcmVhdGVQb3N0SG9nVHJhbnNwb3J0KCknXG4gICAgKVxuICB9XG4gIGNvbnN0IGhvc3QgPSBzdHJpcFRyYWlsaW5nU2xhc2hlcyhcbiAgICBvcHRpb25zLmhvc3QgPz8gZW52U3RyaW5nKCdQT1NUSE9HX0hPU1QnKSA/PyBERUZBVUxUX0hPU1RcbiAgKVxuICBjb25zdCBldmVudE5hbWUgPSBvcHRpb25zLmV2ZW50TmFtZSA/PyBERUZBVUxUX0VWRU5UX05BTUVcbiAgY29uc3QgZGlzdGluY3RJZCA9IG9wdGlvbnMuZGlzdGluY3RJZCA/PyBERUZBVUxUX0RJU1RJTkNUX0lEXG4gIGNvbnN0IGRpc3RpbmN0SWRGaWVsZCA9IG9wdGlvbnMuZGlzdGluY3RJZEZpZWxkID8/IERFRkFVTFRfRElTVElOQ1RfSURfRklFTERcblxuICBjb25zdCBkaXN0aW5jdElkRm9yID0gKGVudHJ5OiBMb2dFbnRyeSk6IHN0cmluZyA9PiB7XG4gICAgY29uc3QgcmVzb2x2ZWQgPSBnZXRQYXRoKGVudHJ5Lm1ldGEsIGRpc3RpbmN0SWRGaWVsZClcbiAgICBpZiAodHlwZW9mIHJlc29sdmVkID09PSAnc3RyaW5nJyAmJiByZXNvbHZlZC5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gcmVzb2x2ZWRcbiAgICB9XG4gICAgaWYgKHR5cGVvZiByZXNvbHZlZCA9PT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBTdHJpbmcocmVzb2x2ZWQpXG4gICAgfVxuICAgIHJldHVybiBkaXN0aW5jdElkXG4gIH1cblxuICByZXR1cm4gY3JlYXRlSHR0cFRyYW5zcG9ydCh7XG4gICAgYm9keTogZW50cmllcyA9PlxuICAgICAgSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICBhcGlfa2V5OiBhcGlLZXksXG4gICAgICAgIGJhdGNoOiBlbnRyaWVzLm1hcChlbnRyeSA9PiAoe1xuICAgICAgICAgIGRpc3RpbmN0X2lkOiBkaXN0aW5jdElkRm9yKGVudHJ5KSxcbiAgICAgICAgICBldmVudDogZXZlbnROYW1lLFxuICAgICAgICAgIC8vIE1ldGEgZmlyc3Qgc28gbGV2ZWwvbWVzc2FnZSBhbHdheXMgd2luIG9uIGNvbGxpc2lvbi5cbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAuLi5mbGF0dGVuTWV0YShlbnRyeS5tZXRhKSxcbiAgICAgICAgICAgIGxldmVsOiBlbnRyeS5sZXZlbCxcbiAgICAgICAgICAgIG1lc3NhZ2U6IGRlZmF1bHRCb2R5KGVudHJ5KVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdGltZXN0YW1wOiBlbnRyeS50aW1lc3RhbXAudG9JU09TdHJpbmcoKVxuICAgICAgICB9KSlcbiAgICAgIH0pLFxuICAgIGhlYWRlcnM6IHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyB9LFxuICAgIG5hbWU6ICdQb3N0SG9nJyxcbiAgICBvcHRpb25zLFxuICAgIHVybDogYCR7aG9zdH0vYmF0Y2gvYFxuICB9KVxufVxuXG5leHBvcnQgdHlwZSB7IEFkYXB0ZXJUcmFuc3BvcnQgfSBmcm9tICcuL2FkYXB0ZXJzL3NoYXJlZCdcbiIKICBdLAogICJtYXBwaW5ncyI6ICJnSUFhQSxVQUFNLEVBQWUsMkJBQ2YsRUFBcUIsaUJBQ3JCLEVBQXNCLG9CQUN0QixFQUE0QixpQkEyQ3JCLEVBQXlCLENBQ3BDLEVBQW1DLENBQUMsSUFDZixDQUNyQixJQUFNLEVBQVMsRUFBUSxRQUFVLEVBQVUsaUJBQWlCLEVBQzVELEdBQUksQ0FBQyxFQUNILE1BQU0sRUFDSixVQUNBLGlGQUNGLEVBRUYsSUFBTSxFQUFPLEVBQ1gsRUFBUSxNQUFRLEVBQVUsY0FBYyxHQUFLLENBQy9DLEVBQ00sRUFBWSxFQUFRLFdBQWEsRUFDakMsRUFBYSxFQUFRLFlBQWMsRUFDbkMsRUFBa0IsRUFBUSxpQkFBbUIsRUFFN0MsRUFBZ0IsQ0FBQyxJQUE0QixDQUNqRCxJQUFNLEVBQVcsRUFBUSxFQUFNLEtBQU0sQ0FBZSxFQUNwRCxHQUFJLE9BQU8sSUFBYSxVQUFZLEVBQVMsT0FBUyxFQUNwRCxPQUFPLEVBRVQsR0FBSSxPQUFPLElBQWEsU0FDdEIsT0FBTyxPQUFPLENBQVEsRUFFeEIsT0FBTyxHQUdULE9BQU8sRUFBb0IsQ0FDekIsS0FBTSxLQUNKLEtBQUssVUFBVSxDQUNiLFFBQVMsRUFDVCxNQUFPLEVBQVEsSUFBSSxNQUFVLENBQzNCLFlBQWEsRUFBYyxDQUFLLEVBQ2hDLE1BQU8sRUFFUCxXQUFZLElBQ1AsRUFBWSxFQUFNLElBQUksRUFDekIsTUFBTyxFQUFNLE1BQ2IsUUFBUyxFQUFZLENBQUssQ0FDNUIsRUFDQSxVQUFXLEVBQU0sVUFBVSxZQUFZLENBQ3pDLEVBQUUsQ0FDSixDQUFDLEVBQ0gsUUFBUyxDQUFFLGVBQWdCLGtCQUFtQixFQUM5QyxLQUFNLFVBQ04sVUFDQSxJQUFLLEdBQUcsVUFDVixDQUFDIiwKICAiZGVidWdJZCI6ICI5ODQyNTdFODlCOUE1OUVBNjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==
package/dist/sentry.js CHANGED
@@ -1,4 +1,4 @@
1
- import{d as F,e as K,g as W,h as B,i as M,j as U}from"./shared/Logixlysia-bw4306mt.js";import"./shared/Logixlysia-nrt7tysy.js";var j=1000,L=16,N=/^[0-9a-f]{32}$/i,R={DEBUG:"debug",ERROR:"error",INFO:"info",WARNING:"warn"},w=(z)=>{if(typeof z==="boolean")return{type:"boolean",value:z};if(typeof z==="number")return Number.isInteger(z)?{type:"integer",value:z}:{type:"double",value:z};return{type:"string",value:z}},C=()=>{let z=new Uint8Array(L);crypto.getRandomValues(z);let G="";for(let J of z)G+=J.toString(16).padStart(2,"0");return G},D=(z)=>{let G=M(z.meta,"context.trace_id");if(typeof G==="string"&&N.test(G))return G.toLowerCase();return C()},P=(z)=>{try{return new URL(z)}catch{}},T=(z,G)=>{if(!z)return"could not be parsed as a URL";if(!z.username)return"missing public key";if(!G)return"missing project id";return"is invalid"},_=(z)=>{let G=P(z),J=G?.pathname.split("/").filter(Boolean)??[],Q=J.at(-1);if(!(G?.username&&Q))throw K("Sentry",`invalid DSN (expected https://<public-key>@<host>/<project-id>; ${T(G,Q)})`);let X=J.slice(0,-1).join("/");return{envelopeUrl:`${G.protocol}//${G.host}${X?`/${X}`:""}/api/${Q}/envelope/`,publicKey:G.username}},A=(z={})=>{let G=z.dsn??F("SENTRY_DSN");if(!G)throw K("Sentry","missing DSN. Set SENTRY_DSN or pass dsn to createSentryTransport()");let{envelopeUrl:J,publicKey:Q}=_(G),X=z.environment??F("SENTRY_ENVIRONMENT"),O=z.release??F("SENTRY_RELEASE"),$={};if(X)$["sentry.environment"]=w(X);if(O)$["sentry.release"]=w(O);for(let[H,q]of Object.entries(z.tags??{}))$[H]=w(q);return W({body:(H)=>{let q=H.map((Z)=>{let V={...$};for(let[Y,k]of Object.entries(B(Z.meta)))V[Y]=w(k);return{attributes:V,body:U(Z),level:R[Z.level],timestamp:Z.timestamp.getTime()/j,trace_id:D(Z)}});return[JSON.stringify({dsn:G,sent_at:new Date().toISOString()}),JSON.stringify({content_type:"application/vnd.sentry.items.log+json",item_count:q.length,type:"log"}),JSON.stringify({items:q})].join(`
1
+ import{d as F,e as K,g as W,h as B,i as M,j as U}from"./shared/Logixlysia-jvphdjgs.js";import"./shared/Logixlysia-nrt7tysy.js";var j=1000,L=16,N=/^[0-9a-f]{32}$/i,R={DEBUG:"debug",ERROR:"error",INFO:"info",WARNING:"warn"},w=(z)=>{if(typeof z==="boolean")return{type:"boolean",value:z};if(typeof z==="number")return Number.isInteger(z)?{type:"integer",value:z}:{type:"double",value:z};return{type:"string",value:z}},C=()=>{let z=new Uint8Array(L);crypto.getRandomValues(z);let G="";for(let J of z)G+=J.toString(16).padStart(2,"0");return G},D=(z)=>{let G=M(z.meta,"context.trace_id");if(typeof G==="string"&&N.test(G))return G.toLowerCase();return C()},P=(z)=>{try{return new URL(z)}catch{}},T=(z,G)=>{if(!z)return"could not be parsed as a URL";if(!z.username)return"missing public key";if(!G)return"missing project id";return"is invalid"},_=(z)=>{let G=P(z),J=G?.pathname.split("/").filter(Boolean)??[],Q=J.at(-1);if(!(G?.username&&Q))throw K("Sentry",`invalid DSN (expected https://<public-key>@<host>/<project-id>; ${T(G,Q)})`);let X=J.slice(0,-1).join("/");return{envelopeUrl:`${G.protocol}//${G.host}${X?`/${X}`:""}/api/${Q}/envelope/`,publicKey:G.username}},A=(z={})=>{let G=z.dsn??F("SENTRY_DSN");if(!G)throw K("Sentry","missing DSN. Set SENTRY_DSN or pass dsn to createSentryTransport()");let{envelopeUrl:J,publicKey:Q}=_(G),X=z.environment??F("SENTRY_ENVIRONMENT"),O=z.release??F("SENTRY_RELEASE"),$={};if(X)$["sentry.environment"]=w(X);if(O)$["sentry.release"]=w(O);for(let[H,q]of Object.entries(z.tags??{}))$[H]=w(q);return W({body:(H)=>{let q=H.map((Z)=>{let V={...$};for(let[Y,k]of Object.entries(B(Z.meta)))V[Y]=w(k);return{attributes:V,body:U(Z),level:R[Z.level],timestamp:Z.timestamp.getTime()/j,trace_id:D(Z)}});return[JSON.stringify({dsn:G,sent_at:new Date().toISOString()}),JSON.stringify({content_type:"application/vnd.sentry.items.log+json",item_count:q.length,type:"log"}),JSON.stringify({items:q})].join(`
2
2
  `)},headers:{"Content-Type":"application/x-sentry-envelope","X-Sentry-Auth":`Sentry sentry_version=7, sentry_client=logixlysia, sentry_key=${Q}`},name:"Sentry",options:z,url:J})};export{A as createSentryTransport};
3
3
 
4
4
  //# debugId=64FDDB9917611E2764756E2164756E21
@@ -1,4 +1,4 @@
1
- import{b as F,f as G,g as K,h as Q,j as W}from"./Logixlysia-bw4306mt.js";var Z=(j)=>{if(typeof j==="boolean")return{boolValue:j};if(typeof j==="number")return Number.isInteger(j)?{intValue:String(j)}:{doubleValue:j};return{stringValue:j}},D=(j)=>Object.entries(j).map(([z,C])=>({key:z,value:Z(C)})),q=(j)=>{let z=D({"service.name":j.serviceName,...j.resourceAttributes});return K({body:(X)=>JSON.stringify({resourceLogs:[{resource:{attributes:z},scopeLogs:[{logRecords:X.map((m)=>({attributes:D(Q(m.meta)),body:{stringValue:W(m)},severityNumber:F[m.level],severityText:m.level,timeUnixNano:G(m.timestamp)})),scope:{name:"logixlysia"}}]}]}),headers:{"Content-Type":"application/json",...j.headers},name:j.name,options:j.options,url:j.url})};
1
+ import{b as F,f as G,g as K,h as Q,j as W}from"./Logixlysia-jvphdjgs.js";var Z=(j)=>{if(typeof j==="boolean")return{boolValue:j};if(typeof j==="number")return Number.isInteger(j)?{intValue:String(j)}:{doubleValue:j};return{stringValue:j}},D=(j)=>Object.entries(j).map(([z,C])=>({key:z,value:Z(C)})),q=(j)=>{let z=D({"service.name":j.serviceName,...j.resourceAttributes});return K({body:(X)=>JSON.stringify({resourceLogs:[{resource:{attributes:z},scopeLogs:[{logRecords:X.map((m)=>({attributes:D(Q(m.meta)),body:{stringValue:W(m)},severityNumber:F[m.level],severityText:m.level,timeUnixNano:G(m.timestamp)})),scope:{name:"logixlysia"}}]}]}),headers:{"Content-Type":"application/json",...j.headers},name:j.name,options:j.options,url:j.url})};
2
2
  export{q as a};
3
3
 
4
4
  //# debugId=C118941166709A6264756E2164756E21
@@ -0,0 +1,5 @@
1
+ import{k as B}from"./Logixlysia-nrt7tysy.js";var v={DEBUG:5,ERROR:17,INFO:9,WARNING:13},g=2000,F=20,U=32,b=2,D=5000,N=5000,x=250,O=0.5,P=30000,I=1000,L=429,S=500,c=200,M=3,E=($)=>{let J=$.length;while(J>0&&$[J-1]==="/")J-=1;return $.slice(0,J)},o=($)=>{let J=process.env[$];return J&&J.length>0?J:void 0},X=($,J,K)=>Error(`[logixlysia] ${$} transport: ${J}`,K),A=($,J)=>{let K;try{K=new URL(J)}catch(Z){throw X($,`invalid endpoint URL '${J}'`,{cause:Z})}if(K.protocol!=="http:"&&K.protocol!=="https:")throw X($,`endpoint must use http or https, got '${K.protocol}'`);return K.toString()},y=1000000n,l=($)=>String(BigInt($.getTime())*y),h=($)=>new Promise((J)=>{setTimeout(J,$)}),T=($)=>{let J=Number.parseInt($,10);if(Number.isFinite(J)&&J>=0)return J*I;let K=Date.parse($);return Number.isNaN(K)?void 0:K-Date.now()},w=($,J)=>{let K=$?.headers.get("retry-after"),Z=K?T(K):void 0;if(Z!==void 0)return Math.min(Math.max(Z,0),P);return x*(J+1)*(O+Math.random())},Y=async($,J)=>{let K=async(G,j)=>{if(J>=$.retries)throw G;return await h(j),Y($,J+1)},Z;try{Z=await fetch($.url,{body:$.body,headers:$.headers,method:"POST",redirect:"error",signal:AbortSignal.timeout($.timeout)})}catch(G){return K(G instanceof Error?G:Error(`[logixlysia] ${$.name} transport: request failed`,{cause:G}),w(void 0,J))}if(Z.ok){try{await Z.body?.cancel()}catch{}return}let k=B((await Z.text().catch(()=>"")).slice(0,c)),z=Error(`[logixlysia] ${$.name} transport: HTTP ${Z.status}${k?` — ${k}`:""}`);if(!(Z.status===L||Z.status>=S))throw z;return K(z,w(Z,J))},f=($)=>Y($,0),R=($,J)=>{let K=0;return(Z)=>{if(J){try{J(Z)}catch{}return}let k=Date.now();if(k-K<D)return;K=k,console.error(`[logixlysia] ${$} transport failed:`,Z)}},_=($)=>{let J=[],K,Z=Promise.resolve(),k=0,z=R($.name,$.onError),C=$.maxPendingBatches??U,G=(W)=>{if(k>=C)return z(Error(`[logixlysia] ${$.name} transport: ${k} batches pending; batch of ${W.length} dropped`)),Z;k+=1;let V=Z.then(()=>$.send(W));return Z=V.catch(()=>{return}).then(()=>{k-=1}),V},j=()=>{if(K)clearTimeout(K),K=void 0;if(J.length===0)return Z;let W=J;return J=[],G(W).then(()=>Z)},q=()=>{j().catch(z)};return{flush:j,push:(W)=>{if(J.push(W),J.length>=$.maxBatchSize)return j();if(!K)K=setTimeout(q,$.flushIntervalMs),K.unref?.()}}},s=($)=>{let J=$.options.retries??b,K=$.options.timeout??N,Z=A($.name,$.url),k=_({flushIntervalMs:$.options.flushIntervalMs??g,maxBatchSize:$.options.maxBatchSize??F,maxPendingBatches:$.options.maxPendingBatches,name:$.name,onError:$.options.onError,send:(z)=>f({body:$.body(z),headers:$.headers,name:$.name,retries:J,timeout:K,url:Z})});return{flush:k.flush,log:(z,C,G)=>k.push({level:z,message:C,meta:G??{},timestamp:new Date})}},Q=($)=>typeof $==="object"&&$!==null&&!Array.isArray($)&&!($ instanceof Date),H=($,J,K,Z)=>{if(J===null||J===void 0)return;if(typeof J==="string"||typeof J==="number"||typeof J==="boolean"){$[K]=J;return}if(J instanceof Date){$[K]=J.toISOString();return}if(Q(J)&&Z<M){for(let[k,z]of Object.entries(J))H($,z,K?`${K}.${k}`:k,Z+1);return}try{$[K]=JSON.stringify(J)}catch{$[K]=String(J)}},i=($)=>{let J={};return H(J,$,"",0),J},a=($,J)=>{let K=$;for(let Z of J.split(".")){if(!Q(K))return;K=K[Z]}return K},p=($)=>{if($.message)return $.message;let{request:J}=$.meta;if(Q(J)){let K=typeof J.method==="string"?J.method:"",Z=typeof J.url==="string"?J.url:"",k=Z;try{k=new URL(Z).pathname}catch{}let z=`${K} ${k}`.trim();if(z)return z}return $.level};
2
+ export{v as b,E as c,o as d,X as e,l as f,s as g,i as h,a as i,p as j};
3
+
4
+ //# debugId=EFDDFB57ADED3DAB64756E2164756E21
5
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2FkYXB0ZXJzL3NoYXJlZC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICJpbXBvcnQgdHlwZSB7IExvZ0xldmVsLCBUcmFuc3BvcnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJ1xuaW1wb3J0IHsgc2FuaXRpemVMb2dUZXh0IH0gZnJvbSAnLi4vdXRpbHMvc2FuaXRpemUnXG5cbi8qKiBPcGVuVGVsZW1ldHJ5IHNldmVyaXR5IG51bWJlcnMgZm9yIGVhY2ggTG9naXhseXNpYSBsb2cgbGV2ZWwuICovXG5leHBvcnQgY29uc3QgT1RFTF9TRVZFUklUWTogUmVjb3JkPExvZ0xldmVsLCBudW1iZXI+ID0ge1xuICBERUJVRzogNSxcbiAgRVJST1I6IDE3LFxuICBJTkZPOiA5LFxuICBXQVJOSU5HOiAxM1xufVxuXG5jb25zdCBERUZBVUxUX0ZMVVNIX0lOVEVSVkFMX01TID0gMjAwMFxuY29uc3QgREVGQVVMVF9NQVhfQkFUQ0hfU0laRSA9IDIwXG5jb25zdCBERUZBVUxUX01BWF9QRU5ESU5HX0JBVENIRVMgPSAzMlxuY29uc3QgREVGQVVMVF9SRVRSSUVTID0gMlxuY29uc3QgUkVQT1JUX0lOVEVSVkFMX01TID0gNTAwMFxuY29uc3QgREVGQVVMVF9USU1FT1VUX01TID0gNTAwMFxuY29uc3QgUkVUUllfQkFTRV9ERUxBWV9NUyA9IDI1MFxuY29uc3QgUkVUUllfSklUVEVSX01JTiA9IDAuNVxuY29uc3QgTUFYX1JFVFJZX0FGVEVSX01TID0gMzBfMDAwXG5jb25zdCBNSUxMSVNfUEVSX1NFQ09ORCA9IDEwMDBcbmNvbnN0IEhUVFBfVE9PX01BTllfUkVRVUVTVFMgPSA0MjlcbmNvbnN0IEhUVFBfU0VSVkVSX0VSUk9SX01JTiA9IDUwMFxuY29uc3QgRVJST1JfQk9EWV9QUkVWSUVXX0xFTkdUSCA9IDIwMFxuY29uc3QgRkxBVFRFTl9NQVhfREVQVEggPSAzXG5cbmV4cG9ydCBpbnRlcmZhY2UgQmF0Y2hUcmFuc3BvcnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIE1heCB0aW1lIChtcykgYW4gZW50cnkgd2FpdHMgaW4gdGhlIGJ1ZmZlciBiZWZvcmUgaXQgaXMgc2VudC5cbiAgICogQGRlZmF1bHQgMjAwMFxuICAgKi9cbiAgZmx1c2hJbnRlcnZhbE1zPzogbnVtYmVyXG4gIC8qKlxuICAgKiBFbnRyaWVzIGJ1ZmZlcmVkIGJlZm9yZSBhbiBpbW1lZGlhdGUgZmx1c2gsIHJlZ2FyZGxlc3Mgb2YgdGhlIGludGVydmFsLlxuICAgKiBAZGVmYXVsdCAyMFxuICAgKi9cbiAgbWF4QmF0Y2hTaXplPzogbnVtYmVyXG4gIC8qKlxuICAgKiBCYXRjaGVzIGFsbG93ZWQgdG8gYmUgd2FpdGluZyBvbiB0aGUgYmFja2VuZCBhdCBvbmNlLiBPbmNlIHRoZSBsaW1pdCBpc1xuICAgKiByZWFjaGVkLCBuZXcgYmF0Y2hlcyBhcmUgZHJvcHBlZCBhbmQgcmVwb3J0ZWQgaW5zdGVhZCBvZiBidWZmZXJlZCwgc28gYW5cbiAgICogdW5yZWFjaGFibGUgYmFja2VuZCBjYW5ub3QgZ3JvdyBtZW1vcnkgd2l0aG91dCBib3VuZC5cbiAgICogQGRlZmF1bHQgMzJcbiAgICovXG4gIG1heFBlbmRpbmdCYXRjaGVzPzogbnVtYmVyXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGJhdGNoIGZhaWxzIGFmdGVyIHJldHJpZXMsIG9yIGlzIGRyb3BwZWQgYmVjYXVzZSB0b29cbiAgICogbWFueSBiYXRjaGVzIGFyZSBwZW5kaW5nLiBXaGVuIG9taXR0ZWQsIGZhaWx1cmVzIGdvIHRvIHN0ZGVyciwgcmF0ZVxuICAgKiBsaW1pdGVkIHRvIG9uY2UgZXZlcnkgNSBzZWNvbmRzLiBQYXNzIHRoZSBzYW1lIGZ1bmN0aW9uIHlvdSBnaXZlXG4gICAqIGBjb25maWcub25FcnJvcmAgdG8gc2VlIHRyYW5zcG9ydCBmYWlsdXJlcyBpbiBvbmUgcGxhY2UuXG4gICAqL1xuICBvbkVycm9yPzogKGVycm9yOiB1bmtub3duKSA9PiB2b2lkXG4gIC8qKlxuICAgKiBSZXRyeSBhdHRlbXB0cyBvbiBuZXR3b3JrIGVycm9ycywgNDI5LCBhbmQgNXh4IHJlc3BvbnNlcy5cbiAgICogQGRlZmF1bHQgMlxuICAgKi9cbiAgcmV0cmllcz86IG51bWJlclxuICAvKipcbiAgICogUGVyLXJlcXVlc3QgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gICAqIEBkZWZhdWx0IDUwMDBcbiAgICovXG4gIHRpbWVvdXQ/OiBudW1iZXJcbn1cblxuLyoqIEEge0BsaW5rIFRyYW5zcG9ydH0gdGhhdCBiYXRjaGVzIGVudHJpZXMgYW5kIGNhbiBiZSBmbHVzaGVkIG9uIGRlbWFuZC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRhcHRlclRyYW5zcG9ydCBleHRlbmRzIFRyYW5zcG9ydCB7XG4gIC8qKiBTZW5kcyBhbnkgYnVmZmVyZWQgZW50cmllcyBpbW1lZGlhdGVseS4gQ2FsbCBiZWZvcmUgcHJvY2VzcyBleGl0LiAqL1xuICBmbHVzaDogKCkgPT4gUHJvbWlzZTx2b2lkPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ0VudHJ5IHtcbiAgbGV2ZWw6IExvZ0xldmVsXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICBtZXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICB0aW1lc3RhbXA6IERhdGVcbn1cblxuLyoqIE5vcm1hbGl6ZXMgYSBiYXNlIFVSTCBieSBkcm9wcGluZyB0cmFpbGluZyBzbGFzaGVzLiAqL1xuZXhwb3J0IGNvbnN0IHN0cmlwVHJhaWxpbmdTbGFzaGVzID0gKHVybDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgbGV0IGVuZCA9IHVybC5sZW5ndGhcbiAgd2hpbGUgKGVuZCA+IDAgJiYgdXJsW2VuZCAtIDFdID09PSAnLycpIHtcbiAgICBlbmQgLT0gMVxuICB9XG4gIHJldHVybiB1cmwuc2xpY2UoMCwgZW5kKVxufVxuXG4vKiogUmVhZHMgYSBub24tZW1wdHkgZW52aXJvbm1lbnQgdmFyaWFibGUsIG9yIGB1bmRlZmluZWRgLiAqL1xuZXhwb3J0IGNvbnN0IGVudlN0cmluZyA9IChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHByb2Nlc3MuZW52W25hbWVdXG4gIHJldHVybiB2YWx1ZSAmJiB2YWx1ZS5sZW5ndGggPiAwID8gdmFsdWUgOiB1bmRlZmluZWRcbn1cblxuLyoqIEEgY29uZmlndXJhdGlvbiBlcnJvciBmb3IgdGhlIG5hbWVkIGFkYXB0ZXIsIHRocm93biBhdCBjcmVhdGlvbiB0aW1lLiAqL1xuZXhwb3J0IGNvbnN0IHRyYW5zcG9ydEVycm9yID0gKFxuICBhZGFwdGVyOiBzdHJpbmcsXG4gIGRldGFpbDogc3RyaW5nLFxuICBvcHRpb25zPzogRXJyb3JPcHRpb25zXG4pOiBFcnJvciA9PiBuZXcgRXJyb3IoYFtsb2dpeGx5c2lhXSAke2FkYXB0ZXJ9IHRyYW5zcG9ydDogJHtkZXRhaWx9YCwgb3B0aW9ucylcblxuLyoqIFBhcnNlcyBhIGZ1bGx5IGJ1aWx0IGVuZHBvaW50IG9uY2UsIGF0IGNvbnN0cnVjdGlvbiwgc28gYSBiYWQgZW52IHZhciBmYWlscyBoZXJlIHJhdGhlciB0aGFuIG9uIHRoZSBmaXJzdCBmbHVzaC4gKi9cbmV4cG9ydCBjb25zdCByZXNvbHZlRW5kcG9pbnQgPSAobmFtZTogc3RyaW5nLCB1cmw6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGxldCBwYXJzZWQ6IFVSTFxuICB0cnkge1xuICAgIHBhcnNlZCA9IG5ldyBVUkwodXJsKVxuICB9IGNhdGNoIChjYXVzZSkge1xuICAgIHRocm93IHRyYW5zcG9ydEVycm9yKG5hbWUsIGBpbnZhbGlkIGVuZHBvaW50IFVSTCAnJHt1cmx9J2AsIHsgY2F1c2UgfSlcbiAgfVxuICBpZiAocGFyc2VkLnByb3RvY29sICE9PSAnaHR0cDonICYmIHBhcnNlZC5wcm90b2NvbCAhPT0gJ2h0dHBzOicpIHtcbiAgICB0aHJvdyB0cmFuc3BvcnRFcnJvcihcbiAgICAgIG5hbWUsXG4gICAgICBgZW5kcG9pbnQgbXVzdCB1c2UgaHR0cCBvciBodHRwcywgZ290ICcke3BhcnNlZC5wcm90b2NvbH0nYFxuICAgIClcbiAgfVxuICByZXR1cm4gcGFyc2VkLnRvU3RyaW5nKClcbn1cblxuY29uc3QgTkFOT1NfUEVSX01JTExJID0gMV8wMDBfMDAwblxuXG4vKiogVW5peC1lcG9jaCBuYW5vc2Vjb25kcyBhcyBhIHN0cmluZywgdGhlIHRpbWVzdGFtcCBzaGFwZSBPVExQIGFuZCBMb2tpIGV4cGVjdC4gKi9cbmV4cG9ydCBjb25zdCB0b1VuaXhOYW5vcyA9IChkYXRlOiBEYXRlKTogc3RyaW5nID0+XG4gIFN0cmluZyhCaWdJbnQoZGF0ZS5nZXRUaW1lKCkpICogTkFOT1NfUEVSX01JTExJKVxuXG5jb25zdCBzbGVlcCA9IChtczogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiA9PlxuICBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKVxuICB9KVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvc3RXaXRoUmV0cnlJbnB1dCB7XG4gIGJvZHk6IHN0cmluZ1xuICBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gIC8qKiBBZGFwdGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlcywgZS5nLiAnQXhpb20nLiAqL1xuICBuYW1lOiBzdHJpbmdcbiAgcmV0cmllczogbnVtYmVyXG4gIHRpbWVvdXQ6IG51bWJlclxuICB1cmw6IHN0cmluZ1xufVxuXG5jb25zdCBwYXJzZVJldHJ5QWZ0ZXJNcyA9ICh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3Qgc2Vjb25kcyA9IE51bWJlci5wYXJzZUludCh2YWx1ZSwgMTApXG4gIGlmIChOdW1iZXIuaXNGaW5pdGUoc2Vjb25kcykgJiYgc2Vjb25kcyA+PSAwKSB7XG4gICAgcmV0dXJuIHNlY29uZHMgKiBNSUxMSVNfUEVSX1NFQ09ORFxuICB9XG4gIGNvbnN0IGF0ID0gRGF0ZS5wYXJzZSh2YWx1ZSlcbiAgcmV0dXJuIE51bWJlci5pc05hTihhdCkgPyB1bmRlZmluZWQgOiBhdCAtIERhdGUubm93KClcbn1cblxuLyoqXG4gKiBIb3cgbG9uZyB0byB3YWl0IGJlZm9yZSB0aGUgbmV4dCBhdHRlbXB0OiB0aGUgc2VydmVyJ3MgYFJldHJ5LUFmdGVyYFxuICogKGRlbHRhLXNlY29uZHMgb3IgSFRUUC1kYXRlLCBjYXBwZWQgYXQgMzAgcykgd2hlbiBpdCBzZW50IGEgdXNhYmxlIG9uZSxcbiAqIG90aGVyd2lzZSBqaXR0ZXJlZCBsaW5lYXIgYmFja29mZi5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlc29sdmVSZXRyeURlbGF5ID0gKFxuICByZXNwb25zZTogUmVzcG9uc2UgfCB1bmRlZmluZWQsXG4gIGF0dGVtcHQ6IG51bWJlclxuKTogbnVtYmVyID0+IHtcbiAgY29uc3QgaGVhZGVyID0gcmVzcG9uc2U/LmhlYWRlcnMuZ2V0KCdyZXRyeS1hZnRlcicpXG4gIGNvbnN0IHJldHJ5QWZ0ZXJNcyA9IGhlYWRlciA/IHBhcnNlUmV0cnlBZnRlck1zKGhlYWRlcikgOiB1bmRlZmluZWRcbiAgaWYgKHJldHJ5QWZ0ZXJNcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIE1hdGgubWluKE1hdGgubWF4KHJldHJ5QWZ0ZXJNcywgMCksIE1BWF9SRVRSWV9BRlRFUl9NUylcbiAgfVxuICByZXR1cm4gKFxuICAgIFJFVFJZX0JBU0VfREVMQVlfTVMgKiAoYXR0ZW1wdCArIDEpICogKFJFVFJZX0pJVFRFUl9NSU4gKyBNYXRoLnJhbmRvbSgpKVxuICApXG59XG5cbmNvbnN0IGF0dGVtcHRQb3N0ID0gYXN5bmMgKFxuICBpbnB1dDogUG9zdFdpdGhSZXRyeUlucHV0LFxuICBhdHRlbXB0OiBudW1iZXJcbik6IFByb21pc2U8dm9pZD4gPT4ge1xuICBjb25zdCByZXRyeU9yUmV0aHJvdyA9IGFzeW5jIChcbiAgICBlcnJvcjogRXJyb3IsXG4gICAgZGVsYXlNczogbnVtYmVyXG4gICk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmIChhdHRlbXB0ID49IGlucHV0LnJldHJpZXMpIHtcbiAgICAgIHRocm93IGVycm9yXG4gICAgfVxuICAgIGF3YWl0IHNsZWVwKGRlbGF5TXMpXG4gICAgcmV0dXJuIGF0dGVtcHRQb3N0KGlucHV0LCBhdHRlbXB0ICsgMSlcbiAgfVxuXG4gIGxldCByZXNwb25zZTogUmVzcG9uc2VcbiAgdHJ5IHtcbiAgICByZXNwb25zZSA9IGF3YWl0IGZldGNoKGlucHV0LnVybCwge1xuICAgICAgYm9keTogaW5wdXQuYm9keSxcbiAgICAgIGhlYWRlcnM6IGlucHV0LmhlYWRlcnMsXG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIHJlZGlyZWN0OiAnZXJyb3InLFxuICAgICAgc2lnbmFsOiBBYm9ydFNpZ25hbC50aW1lb3V0KGlucHV0LnRpbWVvdXQpXG4gICAgfSlcbiAgfSBjYXRjaCAoZmV0Y2hFcnJvcikge1xuICAgIHJldHVybiByZXRyeU9yUmV0aHJvdyhcbiAgICAgIGZldGNoRXJyb3IgaW5zdGFuY2VvZiBFcnJvclxuICAgICAgICA/IGZldGNoRXJyb3JcbiAgICAgICAgOiBuZXcgRXJyb3IoYFtsb2dpeGx5c2lhXSAke2lucHV0Lm5hbWV9IHRyYW5zcG9ydDogcmVxdWVzdCBmYWlsZWRgLCB7XG4gICAgICAgICAgICBjYXVzZTogZmV0Y2hFcnJvclxuICAgICAgICAgIH0pLFxuICAgICAgcmVzb2x2ZVJldHJ5RGVsYXkodW5kZWZpbmVkLCBhdHRlbXB0KVxuICAgIClcbiAgfVxuICBpZiAocmVzcG9uc2Uub2spIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgcmVzcG9uc2UuYm9keT8uY2FuY2VsKClcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIE5vdGhpbmcgdG8gcmVsZWFzZSB3aGVuIHRoZSBib2R5IGlzIGFscmVhZHkgY29uc3VtZWQgb3IgY2xvc2VkLlxuICAgIH1cbiAgICByZXR1cm5cbiAgfVxuICBjb25zdCBkZXRhaWwgPSBzYW5pdGl6ZUxvZ1RleHQoXG4gICAgKGF3YWl0IHJlc3BvbnNlLnRleHQoKS5jYXRjaCgoKSA9PiAnJykpLnNsaWNlKDAsIEVSUk9SX0JPRFlfUFJFVklFV19MRU5HVEgpXG4gIClcbiAgY29uc3QgaHR0cEVycm9yID0gbmV3IEVycm9yKFxuICAgIGBbbG9naXhseXNpYV0gJHtpbnB1dC5uYW1lfSB0cmFuc3BvcnQ6IEhUVFAgJHtyZXNwb25zZS5zdGF0dXN9JHtcbiAgICAgIGRldGFpbCA/IGAg4oCUICR7ZGV0YWlsfWAgOiAnJ1xuICAgIH1gXG4gIClcbiAgY29uc3QgcmV0cnlhYmxlID1cbiAgICByZXNwb25zZS5zdGF0dXMgPT09IEhUVFBfVE9PX01BTllfUkVRVUVTVFMgfHxcbiAgICByZXNwb25zZS5zdGF0dXMgPj0gSFRUUF9TRVJWRVJfRVJST1JfTUlOXG4gIGlmICghcmV0cnlhYmxlKSB7XG4gICAgdGhyb3cgaHR0cEVycm9yXG4gIH1cbiAgcmV0dXJuIHJldHJ5T3JSZXRocm93KGh0dHBFcnJvciwgcmVzb2x2ZVJldHJ5RGVsYXkocmVzcG9uc2UsIGF0dGVtcHQpKVxufVxuXG4vKipcbiAqIFBPU1RzIGEgcGF5bG9hZCwgcmV0cnlpbmcgb24gbmV0d29yayBlcnJvcnMsIDQyOSwgYW5kIDV4eCByZXNwb25zZXMgd2l0aFxuICogaml0dGVyZWQgbGluZWFyIGJhY2tvZmYsIG9yIHRoZSBzZXJ2ZXIncyBgUmV0cnktQWZ0ZXJgIHdoZW4gaXQgc2VuZHMgb25lLlxuICogTm9uLXJldHJ5YWJsZSBIVFRQIGVycm9ycyAoNHh4IGV4Y2VwdCA0MjkpIHRocm93IGltbWVkaWF0ZWx5LlxuICovXG5leHBvcnQgY29uc3QgcG9zdFdpdGhSZXRyeSA9IChpbnB1dDogUG9zdFdpdGhSZXRyeUlucHV0KTogUHJvbWlzZTx2b2lkPiA9PlxuICBhdHRlbXB0UG9zdChpbnB1dCwgMClcblxuZXhwb3J0IGludGVyZmFjZSBCYXRjaFF1ZXVlIHtcbiAgZmx1c2g6ICgpID0+IFByb21pc2U8dm9pZD5cbiAgcHVzaDogKGVudHJ5OiBMb2dFbnRyeSkgPT4gUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZFxufVxuXG4vKipcbiAqIFJvdXRlcyBhIGJhdGNoIGZhaWx1cmUgdG8gdGhlIGFkYXB0ZXIncyBgb25FcnJvcmAgaG9vaywgb3Ig4oCUIHdoZW4gbm8gaG9vayBpc1xuICogY29uZmlndXJlZCDigJQgdG8gc3RkZXJyIGF0IG1vc3Qgb25jZSBwZXIgaW50ZXJ2YWwsIHNvIGEgYmFja2VuZCB0aGF0IGZhaWxzIG9uXG4gKiBldmVyeSBiYXRjaCBjYW5ub3QgZmxvb2QgdGhlIGNvbnNvbGUuXG4gKi9cbmNvbnN0IGNyZWF0ZVF1ZXVlUmVwb3J0ZXIgPSAoXG4gIG5hbWU6IHN0cmluZyxcbiAgb25FcnJvcj86IChlcnJvcjogdW5rbm93bikgPT4gdm9pZFxuKTogKChlcnJvcjogdW5rbm93bikgPT4gdm9pZCkgPT4ge1xuICBsZXQgbGFzdFJlcG9ydGVkQXQgPSAwXG5cbiAgcmV0dXJuIGVycm9yID0+IHtcbiAgICBpZiAob25FcnJvcikge1xuICAgICAgdHJ5IHtcbiAgICAgICAgb25FcnJvcihlcnJvcilcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICAvLyBTd2FsbG93IGVycm9ycyB0aHJvd24gYnkgdGhlIGhvb2sgaXRzZWxmLlxuICAgICAgfVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKVxuICAgIGlmIChub3cgLSBsYXN0UmVwb3J0ZWRBdCA8IFJFUE9SVF9JTlRFUlZBTF9NUykge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGxhc3RSZXBvcnRlZEF0ID0gbm93XG4gICAgY29uc29sZS5lcnJvcihgW2xvZ2l4bHlzaWFdICR7bmFtZX0gdHJhbnNwb3J0IGZhaWxlZDpgLCBlcnJvcilcbiAgfVxufVxuXG4vKipcbiAqIEJ1ZmZlcnMgZW50cmllcyBhbmQgc2VuZHMgdGhlbSBpbiBiYXRjaGVzOiBpbW1lZGlhdGVseSBvbmNlIGBtYXhCYXRjaFNpemVgXG4gKiBpcyByZWFjaGVkICh0aGUgcmV0dXJuZWQgcHJvbWlzZSBwcm9wYWdhdGVzIHNlbmQgZXJyb3JzIHRvIHRoZSBjYWxsZXIpLCBvclxuICogYWZ0ZXIgYGZsdXNoSW50ZXJ2YWxNc2AgdmlhIGFuIHVucmVmJ2VkIHRpbWVyIChlcnJvcnMgZ28gdG8gYG9uRXJyb3JgIHNpbmNlXG4gKiBubyBjYWxsZXIgaXMgYXdhaXRpbmcpLlxuICpcbiAqIE9ubHkgb25lIHNlbmQgcnVucyBhdCBhIHRpbWUsIHNvIGJhdGNoZXMgcmVhY2ggdGhlIGJhY2tlbmQgaW4gdGhlIG9yZGVyIHRoZXlcbiAqIHdlcmUgYnVmZmVyZWQsIGFuZCBgZmx1c2goKWAgcmVzb2x2ZXMgb25jZSBldmVyeSBiYXRjaCBxdWV1ZWQgYmVmb3JlIGl0IGhhc1xuICogc2V0dGxlZC4gQmF0Y2hlcyBxdWV1ZWQgYmV5b25kIGBtYXhQZW5kaW5nQmF0Y2hlc2AgYXJlIGRyb3BwZWQgYW5kIHJlcG9ydGVkLlxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlQmF0Y2hRdWV1ZSA9IChpbnB1dDoge1xuICBmbHVzaEludGVydmFsTXM6IG51bWJlclxuICBtYXhCYXRjaFNpemU6IG51bWJlclxuICBtYXhQZW5kaW5nQmF0Y2hlcz86IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbiAgb25FcnJvcj86IChlcnJvcjogdW5rbm93bikgPT4gdm9pZFxuICBzZW5kOiAoZW50cmllczogTG9nRW50cnlbXSkgPT4gUHJvbWlzZTx2b2lkPlxufSk6IEJhdGNoUXVldWUgPT4ge1xuICBsZXQgYnVmZmVyOiBMb2dFbnRyeVtdID0gW11cbiAgbGV0IHRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IHVuZGVmaW5lZFxuICBsZXQgdGFpbDogUHJvbWlzZTx2b2lkPiA9IFByb21pc2UucmVzb2x2ZSgpXG4gIGxldCBwZW5kaW5nID0gMFxuXG4gIGNvbnN0IHJlcG9ydCA9IGNyZWF0ZVF1ZXVlUmVwb3J0ZXIoaW5wdXQubmFtZSwgaW5wdXQub25FcnJvcilcbiAgY29uc3QgbWF4UGVuZGluZ0JhdGNoZXMgPVxuICAgIGlucHV0Lm1heFBlbmRpbmdCYXRjaGVzID8/IERFRkFVTFRfTUFYX1BFTkRJTkdfQkFUQ0hFU1xuXG4gIGNvbnN0IGVucXVldWVTZW5kID0gKGVudHJpZXM6IExvZ0VudHJ5W10pOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICBpZiAocGVuZGluZyA+PSBtYXhQZW5kaW5nQmF0Y2hlcykge1xuICAgICAgcmVwb3J0KFxuICAgICAgICBuZXcgRXJyb3IoXG4gICAgICAgICAgYFtsb2dpeGx5c2lhXSAke2lucHV0Lm5hbWV9IHRyYW5zcG9ydDogJHtwZW5kaW5nfSBiYXRjaGVzIHBlbmRpbmc7IGJhdGNoIG9mICR7ZW50cmllcy5sZW5ndGh9IGRyb3BwZWRgXG4gICAgICAgIClcbiAgICAgIClcbiAgICAgIHJldHVybiB0YWlsXG4gICAgfVxuICAgIHBlbmRpbmcgKz0gMVxuICAgIGNvbnN0IHNlbmQgPSB0YWlsLnRoZW4oKCkgPT4gaW5wdXQuc2VuZChlbnRyaWVzKSlcbiAgICAvLyBTd2FsbG93IHRoZSBmYWlsdXJlIG9uIHRoZSBjaGFpbiBpdHNlbGYgc28gb25lIGJhZCBiYXRjaCBjYW5ub3QgcG9pc29uXG4gICAgLy8gdGhlIGJhdGNoZXMgYWZ0ZXIgaXQ7IHRoZSBjYWxsZXIgb2YgZW5xdWV1ZVNlbmQgc3RpbGwgc2VlcyB0aGUgcmVqZWN0aW9uLlxuICAgIHRhaWwgPSBzZW5kXG4gICAgICAuY2F0Y2goKCkgPT4gdW5kZWZpbmVkKVxuICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICBwZW5kaW5nIC09IDFcbiAgICAgIH0pXG4gICAgcmV0dXJuIHNlbmRcbiAgfVxuXG4gIGNvbnN0IGZsdXNoID0gKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmICh0aW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVyKVxuICAgICAgdGltZXIgPSB1bmRlZmluZWRcbiAgICB9XG4gICAgaWYgKGJ1ZmZlci5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybiB0YWlsXG4gICAgfVxuICAgIGNvbnN0IGVudHJpZXMgPSBidWZmZXJcbiAgICBidWZmZXIgPSBbXVxuICAgIHJldHVybiBlbnF1ZXVlU2VuZChlbnRyaWVzKS50aGVuKCgpID0+IHRhaWwpXG4gIH1cblxuICBjb25zdCBmbHVzaEZyb21UaW1lciA9ICgpOiB2b2lkID0+IHtcbiAgICBmbHVzaCgpLmNhdGNoKHJlcG9ydClcbiAgfVxuXG4gIGNvbnN0IHB1c2ggPSAoZW50cnk6IExvZ0VudHJ5KTogUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZCA9PiB7XG4gICAgYnVmZmVyLnB1c2goZW50cnkpXG4gICAgaWYgKGJ1ZmZlci5sZW5ndGggPj0gaW5wdXQubWF4QmF0Y2hTaXplKSB7XG4gICAgICByZXR1cm4gZmx1c2goKVxuICAgIH1cbiAgICBpZiAoIXRpbWVyKSB7XG4gICAgICB0aW1lciA9IHNldFRpbWVvdXQoZmx1c2hGcm9tVGltZXIsIGlucHV0LmZsdXNoSW50ZXJ2YWxNcylcbiAgICAgIHRpbWVyLnVucmVmPy4oKVxuICAgIH1cbiAgfVxuXG4gIHJldHVybiB7IGZsdXNoLCBwdXNoIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBIdHRwVHJhbnNwb3J0SW5wdXQge1xuICAvKiogQnVpbGRzIHRoZSByZXF1ZXN0IGJvZHkgZm9yIGEgZmx1c2hlZCBiYXRjaC4gKi9cbiAgYm9keTogKGVudHJpZXM6IExvZ0VudHJ5W10pID0+IHN0cmluZ1xuICBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gIC8qKiBBZGFwdGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlcywgZS5nLiAnQXhpb20nLiAqL1xuICBuYW1lOiBzdHJpbmdcbiAgb3B0aW9uczogQmF0Y2hUcmFuc3BvcnRPcHRpb25zXG4gIHVybDogc3RyaW5nXG59XG5cbi8qKlxuICogVGhlIGNvbW1vbiBhZGFwdGVyIHNoYXBlOiBhIGJhdGNoIHF1ZXVlIHdob3NlIGZsdXNoZXMgUE9TVCB0byBhIGZpeGVkIFVSTFxuICogd2l0aCByZXRyeSwgZXhwb3NlZCBhcyBhbiB7QGxpbmsgQWRhcHRlclRyYW5zcG9ydH0uXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVIdHRwVHJhbnNwb3J0ID0gKFxuICBpbnB1dDogSHR0cFRyYW5zcG9ydElucHV0XG4pOiBBZGFwdGVyVHJhbnNwb3J0ID0+IHtcbiAgY29uc3QgcmV0cmllcyA9IGlucHV0Lm9wdGlvbnMucmV0cmllcyA/PyBERUZBVUxUX1JFVFJJRVNcbiAgY29uc3QgdGltZW91dCA9IGlucHV0Lm9wdGlvbnMudGltZW91dCA/PyBERUZBVUxUX1RJTUVPVVRfTVNcbiAgY29uc3QgdXJsID0gcmVzb2x2ZUVuZHBvaW50KGlucHV0Lm5hbWUsIGlucHV0LnVybClcblxuICBjb25zdCBxdWV1ZSA9IGNyZWF0ZUJhdGNoUXVldWUoe1xuICAgIGZsdXNoSW50ZXJ2YWxNczogaW5wdXQub3B0aW9ucy5mbHVzaEludGVydmFsTXMgPz8gREVGQVVMVF9GTFVTSF9JTlRFUlZBTF9NUyxcbiAgICBtYXhCYXRjaFNpemU6IGlucHV0Lm9wdGlvbnMubWF4QmF0Y2hTaXplID8/IERFRkFVTFRfTUFYX0JBVENIX1NJWkUsXG4gICAgbWF4UGVuZGluZ0JhdGNoZXM6IGlucHV0Lm9wdGlvbnMubWF4UGVuZGluZ0JhdGNoZXMsXG4gICAgbmFtZTogaW5wdXQubmFtZSxcbiAgICBvbkVycm9yOiBpbnB1dC5vcHRpb25zLm9uRXJyb3IsXG4gICAgc2VuZDogZW50cmllcyA9PlxuICAgICAgcG9zdFdpdGhSZXRyeSh7XG4gICAgICAgIGJvZHk6IGlucHV0LmJvZHkoZW50cmllcyksXG4gICAgICAgIGhlYWRlcnM6IGlucHV0LmhlYWRlcnMsXG4gICAgICAgIG5hbWU6IGlucHV0Lm5hbWUsXG4gICAgICAgIHJldHJpZXMsXG4gICAgICAgIHRpbWVvdXQsXG4gICAgICAgIHVybFxuICAgICAgfSlcbiAgfSlcblxuICByZXR1cm4ge1xuICAgIGZsdXNoOiBxdWV1ZS5mbHVzaCxcbiAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YSkgPT5cbiAgICAgIHF1ZXVlLnB1c2goeyBsZXZlbCwgbWVzc2FnZSwgbWV0YTogbWV0YSA/PyB7fSwgdGltZXN0YW1wOiBuZXcgRGF0ZSgpIH0pXG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgRmxhdFZhbHVlID0gYm9vbGVhbiB8IG51bWJlciB8IHN0cmluZ1xuXG5jb25zdCBpc1BsYWluT2JqZWN0ID0gKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPT5cbiAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICB2YWx1ZSAhPT0gbnVsbCAmJlxuICAhQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiZcbiAgISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpXG5cbmNvbnN0IGZsYXR0ZW5JbnRvID0gKFxuICBvdXQ6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4sXG4gIHZhbHVlOiB1bmtub3duLFxuICBwcmVmaXg6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlclxuKTogdm9pZCA9PiB7XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuXG4gIH1cbiAgaWYgKFxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgfHxcbiAgICB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8XG4gICAgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbidcbiAgKSB7XG4gICAgb3V0W3ByZWZpeF0gPSB2YWx1ZVxuICAgIHJldHVyblxuICB9XG4gIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICBvdXRbcHJlZml4XSA9IHZhbHVlLnRvSVNPU3RyaW5nKClcbiAgICByZXR1cm5cbiAgfVxuICBpZiAoaXNQbGFpbk9iamVjdCh2YWx1ZSkgJiYgZGVwdGggPCBGTEFUVEVOX01BWF9ERVBUSCkge1xuICAgIGZvciAoY29uc3QgW2tleSwgY2hpbGRdIG9mIE9iamVjdC5lbnRyaWVzKHZhbHVlKSkge1xuICAgICAgZmxhdHRlbkludG8ob3V0LCBjaGlsZCwgcHJlZml4ID8gYCR7cHJlZml4fS4ke2tleX1gIDoga2V5LCBkZXB0aCArIDEpXG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHRyeSB7XG4gICAgb3V0W3ByZWZpeF0gPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSlcbiAgfSBjYXRjaCB7XG4gICAgb3V0W3ByZWZpeF0gPSBTdHJpbmcodmFsdWUpXG4gIH1cbn1cblxuLyoqXG4gKiBGbGF0dGVucyBhIHRyYW5zcG9ydCBtZXRhIG9iamVjdCBpbnRvIGRvdC1ub3RhdGlvbiBzY2FsYXIga2V5c1xuICogKGByZXF1ZXN0Lm1ldGhvZGAsIGBjb250ZXh0LnJlcXVlc3RJZGAsIOKApikuIFZhbHVlcyBuZXN0ZWQgZGVlcGVyIHRoYW4gdGhyZWVcbiAqIGxldmVscyDigJQgYW5kIGFycmF5cyDigJQgYXJlIEpTT04tc3RyaW5naWZpZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBmbGF0dGVuTWV0YSA9IChcbiAgbWV0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbik6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4gPT4ge1xuICBjb25zdCBvdXQ6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4gPSB7fVxuICBmbGF0dGVuSW50byhvdXQsIG1ldGEsICcnLCAwKVxuICByZXR1cm4gb3V0XG59XG5cbi8qKiBSZWFkcyBhIGRvdC1ub3RhdGlvbiBwYXRoIChlLmcuIGBjb250ZXh0LnVzZXJJZGApIGZyb20gYSBtZXRhIG9iamVjdC4gKi9cbmV4cG9ydCBjb25zdCBnZXRQYXRoID0gKFxuICBtZXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgcGF0aDogc3RyaW5nXG4pOiB1bmtub3duID0+IHtcbiAgbGV0IGN1cnJlbnQ6IHVua25vd24gPSBtZXRhXG4gIGZvciAoY29uc3Qgc2VnbWVudCBvZiBwYXRoLnNwbGl0KCcuJykpIHtcbiAgICBpZiAoIWlzUGxhaW5PYmplY3QoY3VycmVudCkpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjdXJyZW50ID0gY3VycmVudFtzZWdtZW50XVxuICB9XG4gIHJldHVybiBjdXJyZW50XG59XG5cbi8qKlxuICogRmFsbGJhY2sgbG9nIGJvZHkgZm9yIGFjY2VzcyBsb2dzLCB3aG9zZSBgbWVzc2FnZWAgaXMgZW1wdHk6XG4gKiBgR0VUIC9wYXRoYCBkZXJpdmVkIGZyb20gdGhlIHJlcXVlc3QgbWV0YS5cbiAqL1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRCb2R5ID0gKGVudHJ5OiBMb2dFbnRyeSk6IHN0cmluZyA9PiB7XG4gIGlmIChlbnRyeS5tZXNzYWdlKSB7XG4gICAgcmV0dXJuIGVudHJ5Lm1lc3NhZ2VcbiAgfVxuICBjb25zdCB7IHJlcXVlc3QgfSA9IGVudHJ5Lm1ldGFcbiAgaWYgKGlzUGxhaW5PYmplY3QocmVxdWVzdCkpIHtcbiAgICBjb25zdCBtZXRob2QgPSB0eXBlb2YgcmVxdWVzdC5tZXRob2QgPT09ICdzdHJpbmcnID8gcmVxdWVzdC5tZXRob2QgOiAnJ1xuICAgIGNvbnN0IHVybCA9IHR5cGVvZiByZXF1ZXN0LnVybCA9PT0gJ3N0cmluZycgPyByZXF1ZXN0LnVybCA6ICcnXG4gICAgbGV0IHBhdGggPSB1cmxcbiAgICB0cnkge1xuICAgICAgcGF0aCA9IG5ldyBVUkwodXJsKS5wYXRobmFtZVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gS2VlcCB0aGUgcmF3IFVSTCB3aGVuIGl0IGRvZXMgbm90IHBhcnNlLlxuICAgIH1cbiAgICBjb25zdCBib2R5ID0gYCR7bWV0aG9kfSAke3BhdGh9YC50cmltKClcbiAgICBpZiAoYm9keSkge1xuICAgICAgcmV0dXJuIGJvZHlcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGVudHJ5LmxldmVsXG59XG4iCiAgXSwKICAibWFwcGluZ3MiOiAiNkNBSU8sSUFBTSxFQUEwQyxDQUNyRCxNQUFPLEVBQ1AsTUFBTyxHQUNQLEtBQU0sRUFDTixRQUFTLEVBQ1gsRUFFTSxFQUE0QixLQUM1QixFQUF5QixHQUN6QixFQUE4QixHQUM5QixFQUFrQixFQUNsQixFQUFxQixLQUNyQixFQUFxQixLQUNyQixFQUFzQixJQUN0QixFQUFtQixJQUNuQixFQUFxQixNQUNyQixFQUFvQixLQUNwQixFQUF5QixJQUN6QixFQUF3QixJQUN4QixFQUE0QixJQUM1QixFQUFvQixFQXFEYixFQUF1QixDQUFDLElBQXdCLENBQzNELElBQUksRUFBTSxFQUFJLE9BQ2QsTUFBTyxFQUFNLEdBQUssRUFBSSxFQUFNLEtBQU8sSUFDakMsR0FBTyxFQUVULE9BQU8sRUFBSSxNQUFNLEVBQUcsQ0FBRyxHQUlaLEVBQVksQ0FBQyxJQUFxQyxDQUM3RCxJQUFNLEVBQVEsUUFBUSxJQUFJLEdBQzFCLE9BQU8sR0FBUyxFQUFNLE9BQVMsRUFBSSxFQUFRLFFBSWhDLEVBQWlCLENBQzVCLEVBQ0EsRUFDQSxJQUNjLE1BQU0sZ0JBQWdCLGdCQUFzQixJQUFVLENBQU8sRUFHaEUsRUFBa0IsQ0FBQyxFQUFjLElBQXdCLENBQ3BFLElBQUksRUFDSixHQUFJLENBQ0YsRUFBUyxJQUFJLElBQUksQ0FBRyxFQUNwQixNQUFPLEVBQU8sQ0FDZCxNQUFNLEVBQWUsRUFBTSx5QkFBeUIsS0FBUSxDQUFFLE9BQU0sQ0FBQyxFQUV2RSxHQUFJLEVBQU8sV0FBYSxTQUFXLEVBQU8sV0FBYSxTQUNyRCxNQUFNLEVBQ0osRUFDQSx5Q0FBeUMsRUFBTyxXQUNsRCxFQUVGLE9BQU8sRUFBTyxTQUFTLEdBR25CLEVBQWtCLFNBR1gsRUFBYyxDQUFDLElBQzFCLE9BQU8sT0FBTyxFQUFLLFFBQVEsQ0FBQyxFQUFJLENBQWUsRUFFM0MsRUFBUSxDQUFDLElBQ2IsSUFBSSxRQUFRLEtBQVcsQ0FDckIsV0FBVyxFQUFTLENBQUUsRUFDdkIsRUFZRyxFQUFvQixDQUFDLElBQXNDLENBQy9ELElBQU0sRUFBVSxPQUFPLFNBQVMsRUFBTyxFQUFFLEVBQ3pDLEdBQUksT0FBTyxTQUFTLENBQU8sR0FBSyxHQUFXLEVBQ3pDLE9BQU8sRUFBVSxFQUVuQixJQUFNLEVBQUssS0FBSyxNQUFNLENBQUssRUFDM0IsT0FBTyxPQUFPLE1BQU0sQ0FBRSxFQUFJLE9BQVksRUFBSyxLQUFLLElBQUksR0FRekMsRUFBb0IsQ0FDL0IsRUFDQSxJQUNXLENBQ1gsSUFBTSxFQUFTLEdBQVUsUUFBUSxJQUFJLGFBQWEsRUFDNUMsRUFBZSxFQUFTLEVBQWtCLENBQU0sRUFBSSxPQUMxRCxHQUFJLElBQWlCLE9BQ25CLE9BQU8sS0FBSyxJQUFJLEtBQUssSUFBSSxFQUFjLENBQUMsRUFBRyxDQUFrQixFQUUvRCxPQUNFLEdBQXVCLEVBQVUsSUFBTSxFQUFtQixLQUFLLE9BQU8sSUFJcEUsRUFBYyxNQUNsQixFQUNBLElBQ2tCLENBQ2xCLElBQU0sRUFBaUIsTUFDckIsRUFDQSxJQUNrQixDQUNsQixHQUFJLEdBQVcsRUFBTSxRQUNuQixNQUFNLEVBR1IsT0FEQSxNQUFNLEVBQU0sQ0FBTyxFQUNaLEVBQVksRUFBTyxFQUFVLENBQUMsR0FHbkMsRUFDSixHQUFJLENBQ0YsRUFBVyxNQUFNLE1BQU0sRUFBTSxJQUFLLENBQ2hDLEtBQU0sRUFBTSxLQUNaLFFBQVMsRUFBTSxRQUNmLE9BQVEsT0FDUixTQUFVLFFBQ1YsT0FBUSxZQUFZLFFBQVEsRUFBTSxPQUFPLENBQzNDLENBQUMsRUFDRCxNQUFPLEVBQVksQ0FDbkIsT0FBTyxFQUNMLGFBQXNCLE1BQ2xCLEVBQ0ksTUFBTSxnQkFBZ0IsRUFBTSxpQ0FBa0MsQ0FDaEUsTUFBTyxDQUNULENBQUMsRUFDTCxFQUFrQixPQUFXLENBQU8sQ0FDdEMsRUFFRixHQUFJLEVBQVMsR0FBSSxDQUNmLEdBQUksQ0FDRixNQUFNLEVBQVMsTUFBTSxPQUFPLEVBQzVCLEtBQU0sRUFHUixPQUVGLElBQU0sRUFBUyxHQUNaLE1BQU0sRUFBUyxLQUFLLEVBQUUsTUFBTSxJQUFNLEVBQUUsR0FBRyxNQUFNLEVBQUcsQ0FBeUIsQ0FDNUUsRUFDTSxFQUFnQixNQUNwQixnQkFBZ0IsRUFBTSx3QkFBd0IsRUFBUyxTQUNyRCxFQUFTLE1BQUssSUFBVyxJQUU3QixFQUlBLEdBQUksRUFGRixFQUFTLFNBQVcsR0FDcEIsRUFBUyxRQUFVLEdBRW5CLE1BQU0sRUFFUixPQUFPLEVBQWUsRUFBVyxFQUFrQixFQUFVLENBQU8sQ0FBQyxHQVExRCxFQUFnQixDQUFDLElBQzVCLEVBQVksRUFBTyxDQUFDLEVBWWhCLEVBQXNCLENBQzFCLEVBQ0EsSUFDK0IsQ0FDL0IsSUFBSSxFQUFpQixFQUVyQixNQUFPLEtBQVMsQ0FDZCxHQUFJLEVBQVMsQ0FDWCxHQUFJLENBQ0YsRUFBUSxDQUFLLEVBQ2IsS0FBTSxFQUdSLE9BR0YsSUFBTSxFQUFNLEtBQUssSUFBSSxFQUNyQixHQUFJLEVBQU0sRUFBaUIsRUFDekIsT0FFRixFQUFpQixFQUNqQixRQUFRLE1BQU0sZ0JBQWdCLHNCQUEwQixDQUFLLElBY3BELEVBQW1CLENBQUMsSUFPZixDQUNoQixJQUFJLEVBQXFCLENBQUMsRUFDdEIsRUFDQSxFQUFzQixRQUFRLFFBQVEsRUFDdEMsRUFBVSxFQUVSLEVBQVMsRUFBb0IsRUFBTSxLQUFNLEVBQU0sT0FBTyxFQUN0RCxFQUNKLEVBQU0sbUJBQXFCLEVBRXZCLEVBQWMsQ0FBQyxJQUF1QyxDQUMxRCxHQUFJLEdBQVcsRUFNYixPQUxBLEVBQ00sTUFDRixnQkFBZ0IsRUFBTSxtQkFBbUIsK0JBQXFDLEVBQVEsZ0JBQ3hGLENBQ0YsRUFDTyxFQUVULEdBQVcsRUFDWCxJQUFNLEVBQU8sRUFBSyxLQUFLLElBQU0sRUFBTSxLQUFLLENBQU8sQ0FBQyxFQVFoRCxPQUxBLEVBQU8sRUFDSixNQUFNLElBQUcsQ0FBRyxPQUFTLEVBQ3JCLEtBQUssSUFBTSxDQUNWLEdBQVcsRUFDWixFQUNJLEdBR0gsRUFBUSxJQUFxQixDQUNqQyxHQUFJLEVBQ0YsYUFBYSxDQUFLLEVBQ2xCLEVBQVEsT0FFVixHQUFJLEVBQU8sU0FBVyxFQUNwQixPQUFPLEVBRVQsSUFBTSxFQUFVLEVBRWhCLE9BREEsRUFBUyxDQUFDLEVBQ0gsRUFBWSxDQUFPLEVBQUUsS0FBSyxJQUFNLENBQUksR0FHdkMsRUFBaUIsSUFBWSxDQUNqQyxFQUFNLEVBQUUsTUFBTSxDQUFNLEdBY3RCLE1BQU8sQ0FBRSxRQUFPLEtBWEgsQ0FBQyxJQUErQyxDQUUzRCxHQURBLEVBQU8sS0FBSyxDQUFLLEVBQ2IsRUFBTyxRQUFVLEVBQU0sYUFDekIsT0FBTyxFQUFNLEVBRWYsR0FBSSxDQUFDLEVBQ0gsRUFBUSxXQUFXLEVBQWdCLEVBQU0sZUFBZSxFQUN4RCxFQUFNLFFBQVEsRUFJRyxHQWlCVixFQUFzQixDQUNqQyxJQUNxQixDQUNyQixJQUFNLEVBQVUsRUFBTSxRQUFRLFNBQVcsRUFDbkMsRUFBVSxFQUFNLFFBQVEsU0FBVyxFQUNuQyxFQUFNLEVBQWdCLEVBQU0sS0FBTSxFQUFNLEdBQUcsRUFFM0MsRUFBUSxFQUFpQixDQUM3QixnQkFBaUIsRUFBTSxRQUFRLGlCQUFtQixFQUNsRCxhQUFjLEVBQU0sUUFBUSxjQUFnQixFQUM1QyxrQkFBbUIsRUFBTSxRQUFRLGtCQUNqQyxLQUFNLEVBQU0sS0FDWixRQUFTLEVBQU0sUUFBUSxRQUN2QixLQUFNLEtBQ0osRUFBYyxDQUNaLEtBQU0sRUFBTSxLQUFLLENBQU8sRUFDeEIsUUFBUyxFQUFNLFFBQ2YsS0FBTSxFQUFNLEtBQ1osVUFDQSxVQUNBLEtBQ0YsQ0FBQyxDQUNMLENBQUMsRUFFRCxNQUFPLENBQ0wsTUFBTyxFQUFNLE1BQ2IsSUFBSyxDQUFDLEVBQU8sRUFBUyxJQUNwQixFQUFNLEtBQUssQ0FBRSxRQUFPLFVBQVMsS0FBTSxHQUFRLENBQUMsRUFBRyxVQUFXLElBQUksSUFBTyxDQUFDLENBQzFFLEdBS0ksRUFBZ0IsQ0FBQyxJQUNyQixPQUFPLElBQVUsVUFDakIsSUFBVSxNQUNWLENBQUMsTUFBTSxRQUFRLENBQUssR0FDcEIsRUFBRSxhQUFpQixNQUVmLEVBQWMsQ0FDbEIsRUFDQSxFQUNBLEVBQ0EsSUFDUyxDQUNULEdBQUksSUFBVSxNQUFRLElBQVUsT0FDOUIsT0FFRixHQUNFLE9BQU8sSUFBVSxVQUNqQixPQUFPLElBQVUsVUFDakIsT0FBTyxJQUFVLFVBQ2pCLENBQ0EsRUFBSSxHQUFVLEVBQ2QsT0FFRixHQUFJLGFBQWlCLEtBQU0sQ0FDekIsRUFBSSxHQUFVLEVBQU0sWUFBWSxFQUNoQyxPQUVGLEdBQUksRUFBYyxDQUFLLEdBQUssRUFBUSxFQUFtQixDQUNyRCxRQUFZLEVBQUssS0FBVSxPQUFPLFFBQVEsQ0FBSyxFQUM3QyxFQUFZLEVBQUssRUFBTyxFQUFTLEdBQUcsS0FBVSxJQUFRLEVBQUssRUFBUSxDQUFDLEVBRXRFLE9BRUYsR0FBSSxDQUNGLEVBQUksR0FBVSxLQUFLLFVBQVUsQ0FBSyxFQUNsQyxLQUFNLENBQ04sRUFBSSxHQUFVLE9BQU8sQ0FBSyxJQVNqQixFQUFjLENBQ3pCLElBQzhCLENBQzlCLElBQU0sRUFBaUMsQ0FBQyxFQUV4QyxPQURBLEVBQVksRUFBSyxFQUFNLEdBQUksQ0FBQyxFQUNyQixHQUlJLEVBQVUsQ0FDckIsRUFDQSxJQUNZLENBQ1osSUFBSSxFQUFtQixFQUN2QixRQUFXLEtBQVcsRUFBSyxNQUFNLEdBQUcsRUFBRyxDQUNyQyxHQUFJLENBQUMsRUFBYyxDQUFPLEVBQ3hCLE9BRUYsRUFBVSxFQUFRLEdBRXBCLE9BQU8sR0FPSSxFQUFjLENBQUMsSUFBNEIsQ0FDdEQsR0FBSSxFQUFNLFFBQ1IsT0FBTyxFQUFNLFFBRWYsSUFBUSxXQUFZLEVBQU0sS0FDMUIsR0FBSSxFQUFjLENBQU8sRUFBRyxDQUMxQixJQUFNLEVBQVMsT0FBTyxFQUFRLFNBQVcsU0FBVyxFQUFRLE9BQVMsR0FDL0QsRUFBTSxPQUFPLEVBQVEsTUFBUSxTQUFXLEVBQVEsSUFBTSxHQUN4RCxFQUFPLEVBQ1gsR0FBSSxDQUNGLEVBQU8sSUFBSSxJQUFJLENBQUcsRUFBRSxTQUNwQixLQUFNLEVBR1IsSUFBTSxFQUFPLEdBQUcsS0FBVSxJQUFPLEtBQUssRUFDdEMsR0FBSSxFQUNGLE9BQU8sRUFHWCxPQUFPLEVBQU0iLAogICJkZWJ1Z0lkIjogIkVGRERGQjU3QURFRDNEQUI2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "logixlysia",
3
- "version": "6.9.0",
3
+ "version": "6.9.2",
4
4
  "description": "🦊 Logixlysia is a logger for Elysia",
5
5
  "keywords": [
6
6
  "logixlysia",
@@ -1,5 +0,0 @@
1
- import{k as w}from"./Logixlysia-nrt7tysy.js";var d={DEBUG:5,ERROR:17,INFO:9,WARNING:13},q=2000,g=20,F=32,U=2,b=5000,D=5000,N=250,x=0.5,O=30000,P=1000,I=429,L=500,S=200,c=3,m=($)=>{let J=$.length;while(J>0&&$[J-1]==="/")J-=1;return $.slice(0,J)},E=($)=>{let J=process.env[$];return J&&J.length>0?J:void 0},v=($,J)=>Error(`[logixlysia] ${$} transport: ${J}`),M=1000000n,o=($)=>String(BigInt($.getTime())*M),A=($)=>new Promise((J)=>{setTimeout(J,$)}),y=($)=>{let J=Number.parseInt($,10);if(Number.isFinite(J)&&J>=0)return J*P;let K=Date.parse($);return Number.isNaN(K)?void 0:K-Date.now()},X=($,J)=>{let K=$?.headers.get("retry-after"),Z=K?y(K):void 0;if(Z!==void 0)return Math.min(Math.max(Z,0),O);return N*(J+1)*(x+Math.random())},B=async($,J)=>{let K=async(G,j)=>{if(J>=$.retries)throw G;return await A(j),B($,J+1)},Z;try{Z=await fetch($.url,{body:$.body,headers:$.headers,method:"POST",signal:AbortSignal.timeout($.timeout)})}catch(G){return K(G instanceof Error?G:Error(`[logixlysia] ${$.name} transport: request failed`,{cause:G}),X(void 0,J))}if(Z.ok){try{await Z.body?.cancel()}catch{}return}let k=w((await Z.text().catch(()=>"")).slice(0,S)),z=Error(`[logixlysia] ${$.name} transport: HTTP ${Z.status}${k?` — ${k}`:""}`);if(!(Z.status===I||Z.status>=L))throw z;return K(z,X(Z,J))},h=($)=>B($,0),T=($,J)=>{let K=0;return(Z)=>{if(J){try{J(Z)}catch{}return}let k=Date.now();if(k-K<b)return;K=k,console.error(`[logixlysia] ${$} transport failed:`,Z)}},f=($)=>{let J=[],K,Z=Promise.resolve(),k=0,z=T($.name,$.onError),C=$.maxPendingBatches??F,G=(W)=>{if(k>=C)return z(Error(`[logixlysia] ${$.name} transport: ${k} batches pending; batch of ${W.length} dropped`)),Z;k+=1;let V=Z.then(()=>$.send(W));return Z=V.catch(()=>{return}).then(()=>{k-=1}),V},j=()=>{if(K)clearTimeout(K),K=void 0;if(J.length===0)return Z;let W=J;return J=[],G(W).then(()=>Z)},H=()=>{j().catch(z)};return{flush:j,push:(W)=>{if(J.push(W),J.length>=$.maxBatchSize)return j();if(!K)K=setTimeout(H,$.flushIntervalMs),K.unref?.()}}},s=($)=>{let J=$.options.retries??U,K=$.options.timeout??D,Z=f({flushIntervalMs:$.options.flushIntervalMs??q,maxBatchSize:$.options.maxBatchSize??g,maxPendingBatches:$.options.maxPendingBatches,name:$.name,onError:$.options.onError,send:(k)=>h({body:$.body(k),headers:$.headers,name:$.name,retries:J,timeout:K,url:$.url})});return{flush:Z.flush,log:(k,z,C)=>Z.push({level:k,message:z,meta:C??{},timestamp:new Date})}},Q=($)=>typeof $==="object"&&$!==null&&!Array.isArray($)&&!($ instanceof Date),Y=($,J,K,Z)=>{if(J===null||J===void 0)return;if(typeof J==="string"||typeof J==="number"||typeof J==="boolean"){$[K]=J;return}if(J instanceof Date){$[K]=J.toISOString();return}if(Q(J)&&Z<c){for(let[k,z]of Object.entries(J))Y($,z,K?`${K}.${k}`:k,Z+1);return}try{$[K]=JSON.stringify(J)}catch{$[K]=String(J)}},l=($)=>{let J={};return Y(J,$,"",0),J},a=($,J)=>{let K=$;for(let Z of J.split(".")){if(!Q(K))return;K=K[Z]}return K},i=($)=>{if($.message)return $.message;let{request:J}=$.meta;if(Q(J)){let K=typeof J.method==="string"?J.method:"",Z=typeof J.url==="string"?J.url:"",k=Z;try{k=new URL(Z).pathname}catch{}let z=`${K} ${k}`.trim();if(z)return z}return $.level};
2
- export{d as b,m as c,E as d,v as e,o as f,s as g,l as h,a as i,i as j};
3
-
4
- //# debugId=5398640F8763F20E64756E2164756E21
5
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2FkYXB0ZXJzL3NoYXJlZC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICJpbXBvcnQgdHlwZSB7IExvZ0xldmVsLCBUcmFuc3BvcnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzJ1xuaW1wb3J0IHsgc2FuaXRpemVMb2dUZXh0IH0gZnJvbSAnLi4vdXRpbHMvc2FuaXRpemUnXG5cbi8qKiBPcGVuVGVsZW1ldHJ5IHNldmVyaXR5IG51bWJlcnMgZm9yIGVhY2ggTG9naXhseXNpYSBsb2cgbGV2ZWwuICovXG5leHBvcnQgY29uc3QgT1RFTF9TRVZFUklUWTogUmVjb3JkPExvZ0xldmVsLCBudW1iZXI+ID0ge1xuICBERUJVRzogNSxcbiAgRVJST1I6IDE3LFxuICBJTkZPOiA5LFxuICBXQVJOSU5HOiAxM1xufVxuXG5jb25zdCBERUZBVUxUX0ZMVVNIX0lOVEVSVkFMX01TID0gMjAwMFxuY29uc3QgREVGQVVMVF9NQVhfQkFUQ0hfU0laRSA9IDIwXG5jb25zdCBERUZBVUxUX01BWF9QRU5ESU5HX0JBVENIRVMgPSAzMlxuY29uc3QgREVGQVVMVF9SRVRSSUVTID0gMlxuY29uc3QgUkVQT1JUX0lOVEVSVkFMX01TID0gNTAwMFxuY29uc3QgREVGQVVMVF9USU1FT1VUX01TID0gNTAwMFxuY29uc3QgUkVUUllfQkFTRV9ERUxBWV9NUyA9IDI1MFxuY29uc3QgUkVUUllfSklUVEVSX01JTiA9IDAuNVxuY29uc3QgTUFYX1JFVFJZX0FGVEVSX01TID0gMzBfMDAwXG5jb25zdCBNSUxMSVNfUEVSX1NFQ09ORCA9IDEwMDBcbmNvbnN0IEhUVFBfVE9PX01BTllfUkVRVUVTVFMgPSA0MjlcbmNvbnN0IEhUVFBfU0VSVkVSX0VSUk9SX01JTiA9IDUwMFxuY29uc3QgRVJST1JfQk9EWV9QUkVWSUVXX0xFTkdUSCA9IDIwMFxuY29uc3QgRkxBVFRFTl9NQVhfREVQVEggPSAzXG5cbmV4cG9ydCBpbnRlcmZhY2UgQmF0Y2hUcmFuc3BvcnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIE1heCB0aW1lIChtcykgYW4gZW50cnkgd2FpdHMgaW4gdGhlIGJ1ZmZlciBiZWZvcmUgaXQgaXMgc2VudC5cbiAgICogQGRlZmF1bHQgMjAwMFxuICAgKi9cbiAgZmx1c2hJbnRlcnZhbE1zPzogbnVtYmVyXG4gIC8qKlxuICAgKiBFbnRyaWVzIGJ1ZmZlcmVkIGJlZm9yZSBhbiBpbW1lZGlhdGUgZmx1c2gsIHJlZ2FyZGxlc3Mgb2YgdGhlIGludGVydmFsLlxuICAgKiBAZGVmYXVsdCAyMFxuICAgKi9cbiAgbWF4QmF0Y2hTaXplPzogbnVtYmVyXG4gIC8qKlxuICAgKiBCYXRjaGVzIGFsbG93ZWQgdG8gYmUgd2FpdGluZyBvbiB0aGUgYmFja2VuZCBhdCBvbmNlLiBPbmNlIHRoZSBsaW1pdCBpc1xuICAgKiByZWFjaGVkLCBuZXcgYmF0Y2hlcyBhcmUgZHJvcHBlZCBhbmQgcmVwb3J0ZWQgaW5zdGVhZCBvZiBidWZmZXJlZCwgc28gYW5cbiAgICogdW5yZWFjaGFibGUgYmFja2VuZCBjYW5ub3QgZ3JvdyBtZW1vcnkgd2l0aG91dCBib3VuZC5cbiAgICogQGRlZmF1bHQgMzJcbiAgICovXG4gIG1heFBlbmRpbmdCYXRjaGVzPzogbnVtYmVyXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBhIGJhdGNoIGZhaWxzIGFmdGVyIHJldHJpZXMsIG9yIGlzIGRyb3BwZWQgYmVjYXVzZSB0b29cbiAgICogbWFueSBiYXRjaGVzIGFyZSBwZW5kaW5nLiBXaGVuIG9taXR0ZWQsIGZhaWx1cmVzIGdvIHRvIHN0ZGVyciwgcmF0ZVxuICAgKiBsaW1pdGVkIHRvIG9uY2UgZXZlcnkgNSBzZWNvbmRzLiBQYXNzIHRoZSBzYW1lIGZ1bmN0aW9uIHlvdSBnaXZlXG4gICAqIGBjb25maWcub25FcnJvcmAgdG8gc2VlIHRyYW5zcG9ydCBmYWlsdXJlcyBpbiBvbmUgcGxhY2UuXG4gICAqL1xuICBvbkVycm9yPzogKGVycm9yOiB1bmtub3duKSA9PiB2b2lkXG4gIC8qKlxuICAgKiBSZXRyeSBhdHRlbXB0cyBvbiBuZXR3b3JrIGVycm9ycywgNDI5LCBhbmQgNXh4IHJlc3BvbnNlcy5cbiAgICogQGRlZmF1bHQgMlxuICAgKi9cbiAgcmV0cmllcz86IG51bWJlclxuICAvKipcbiAgICogUGVyLXJlcXVlc3QgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gICAqIEBkZWZhdWx0IDUwMDBcbiAgICovXG4gIHRpbWVvdXQ/OiBudW1iZXJcbn1cblxuLyoqIEEge0BsaW5rIFRyYW5zcG9ydH0gdGhhdCBiYXRjaGVzIGVudHJpZXMgYW5kIGNhbiBiZSBmbHVzaGVkIG9uIGRlbWFuZC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRhcHRlclRyYW5zcG9ydCBleHRlbmRzIFRyYW5zcG9ydCB7XG4gIC8qKiBTZW5kcyBhbnkgYnVmZmVyZWQgZW50cmllcyBpbW1lZGlhdGVseS4gQ2FsbCBiZWZvcmUgcHJvY2VzcyBleGl0LiAqL1xuICBmbHVzaDogKCkgPT4gUHJvbWlzZTx2b2lkPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvZ0VudHJ5IHtcbiAgbGV2ZWw6IExvZ0xldmVsXG4gIG1lc3NhZ2U6IHN0cmluZ1xuICBtZXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICB0aW1lc3RhbXA6IERhdGVcbn1cblxuLyoqIE5vcm1hbGl6ZXMgYSBiYXNlIFVSTCBieSBkcm9wcGluZyB0cmFpbGluZyBzbGFzaGVzLiAqL1xuZXhwb3J0IGNvbnN0IHN0cmlwVHJhaWxpbmdTbGFzaGVzID0gKHVybDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgbGV0IGVuZCA9IHVybC5sZW5ndGhcbiAgd2hpbGUgKGVuZCA+IDAgJiYgdXJsW2VuZCAtIDFdID09PSAnLycpIHtcbiAgICBlbmQgLT0gMVxuICB9XG4gIHJldHVybiB1cmwuc2xpY2UoMCwgZW5kKVxufVxuXG4vKiogUmVhZHMgYSBub24tZW1wdHkgZW52aXJvbm1lbnQgdmFyaWFibGUsIG9yIGB1bmRlZmluZWRgLiAqL1xuZXhwb3J0IGNvbnN0IGVudlN0cmluZyA9IChuYW1lOiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQgPT4ge1xuICBjb25zdCB2YWx1ZSA9IHByb2Nlc3MuZW52W25hbWVdXG4gIHJldHVybiB2YWx1ZSAmJiB2YWx1ZS5sZW5ndGggPiAwID8gdmFsdWUgOiB1bmRlZmluZWRcbn1cblxuLyoqIEEgY29uZmlndXJhdGlvbiBlcnJvciBmb3IgdGhlIG5hbWVkIGFkYXB0ZXIsIHRocm93biBhdCBjcmVhdGlvbiB0aW1lLiAqL1xuZXhwb3J0IGNvbnN0IHRyYW5zcG9ydEVycm9yID0gKGFkYXB0ZXI6IHN0cmluZywgZGV0YWlsOiBzdHJpbmcpOiBFcnJvciA9PlxuICBuZXcgRXJyb3IoYFtsb2dpeGx5c2lhXSAke2FkYXB0ZXJ9IHRyYW5zcG9ydDogJHtkZXRhaWx9YClcblxuY29uc3QgTkFOT1NfUEVSX01JTExJID0gMV8wMDBfMDAwblxuXG4vKiogVW5peC1lcG9jaCBuYW5vc2Vjb25kcyBhcyBhIHN0cmluZywgdGhlIHRpbWVzdGFtcCBzaGFwZSBPVExQIGFuZCBMb2tpIGV4cGVjdC4gKi9cbmV4cG9ydCBjb25zdCB0b1VuaXhOYW5vcyA9IChkYXRlOiBEYXRlKTogc3RyaW5nID0+XG4gIFN0cmluZyhCaWdJbnQoZGF0ZS5nZXRUaW1lKCkpICogTkFOT1NfUEVSX01JTExJKVxuXG5jb25zdCBzbGVlcCA9IChtczogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiA9PlxuICBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKVxuICB9KVxuXG5leHBvcnQgaW50ZXJmYWNlIFBvc3RXaXRoUmV0cnlJbnB1dCB7XG4gIGJvZHk6IHN0cmluZ1xuICBoZWFkZXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG4gIC8qKiBBZGFwdGVyIG5hbWUgdXNlZCBpbiBlcnJvciBtZXNzYWdlcywgZS5nLiAnQXhpb20nLiAqL1xuICBuYW1lOiBzdHJpbmdcbiAgcmV0cmllczogbnVtYmVyXG4gIHRpbWVvdXQ6IG51bWJlclxuICB1cmw6IHN0cmluZ1xufVxuXG5jb25zdCBwYXJzZVJldHJ5QWZ0ZXJNcyA9ICh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHwgdW5kZWZpbmVkID0+IHtcbiAgY29uc3Qgc2Vjb25kcyA9IE51bWJlci5wYXJzZUludCh2YWx1ZSwgMTApXG4gIGlmIChOdW1iZXIuaXNGaW5pdGUoc2Vjb25kcykgJiYgc2Vjb25kcyA+PSAwKSB7XG4gICAgcmV0dXJuIHNlY29uZHMgKiBNSUxMSVNfUEVSX1NFQ09ORFxuICB9XG4gIGNvbnN0IGF0ID0gRGF0ZS5wYXJzZSh2YWx1ZSlcbiAgcmV0dXJuIE51bWJlci5pc05hTihhdCkgPyB1bmRlZmluZWQgOiBhdCAtIERhdGUubm93KClcbn1cblxuLyoqXG4gKiBIb3cgbG9uZyB0byB3YWl0IGJlZm9yZSB0aGUgbmV4dCBhdHRlbXB0OiB0aGUgc2VydmVyJ3MgYFJldHJ5LUFmdGVyYFxuICogKGRlbHRhLXNlY29uZHMgb3IgSFRUUC1kYXRlLCBjYXBwZWQgYXQgMzAgcykgd2hlbiBpdCBzZW50IGEgdXNhYmxlIG9uZSxcbiAqIG90aGVyd2lzZSBqaXR0ZXJlZCBsaW5lYXIgYmFja29mZi5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlc29sdmVSZXRyeURlbGF5ID0gKFxuICByZXNwb25zZTogUmVzcG9uc2UgfCB1bmRlZmluZWQsXG4gIGF0dGVtcHQ6IG51bWJlclxuKTogbnVtYmVyID0+IHtcbiAgY29uc3QgaGVhZGVyID0gcmVzcG9uc2U/LmhlYWRlcnMuZ2V0KCdyZXRyeS1hZnRlcicpXG4gIGNvbnN0IHJldHJ5QWZ0ZXJNcyA9IGhlYWRlciA/IHBhcnNlUmV0cnlBZnRlck1zKGhlYWRlcikgOiB1bmRlZmluZWRcbiAgaWYgKHJldHJ5QWZ0ZXJNcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIE1hdGgubWluKE1hdGgubWF4KHJldHJ5QWZ0ZXJNcywgMCksIE1BWF9SRVRSWV9BRlRFUl9NUylcbiAgfVxuICByZXR1cm4gKFxuICAgIFJFVFJZX0JBU0VfREVMQVlfTVMgKiAoYXR0ZW1wdCArIDEpICogKFJFVFJZX0pJVFRFUl9NSU4gKyBNYXRoLnJhbmRvbSgpKVxuICApXG59XG5cbmNvbnN0IGF0dGVtcHRQb3N0ID0gYXN5bmMgKFxuICBpbnB1dDogUG9zdFdpdGhSZXRyeUlucHV0LFxuICBhdHRlbXB0OiBudW1iZXJcbik6IFByb21pc2U8dm9pZD4gPT4ge1xuICBjb25zdCByZXRyeU9yUmV0aHJvdyA9IGFzeW5jIChcbiAgICBlcnJvcjogRXJyb3IsXG4gICAgZGVsYXlNczogbnVtYmVyXG4gICk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIGlmIChhdHRlbXB0ID49IGlucHV0LnJldHJpZXMpIHtcbiAgICAgIHRocm93IGVycm9yXG4gICAgfVxuICAgIGF3YWl0IHNsZWVwKGRlbGF5TXMpXG4gICAgcmV0dXJuIGF0dGVtcHRQb3N0KGlucHV0LCBhdHRlbXB0ICsgMSlcbiAgfVxuXG4gIGxldCByZXNwb25zZTogUmVzcG9uc2VcbiAgdHJ5IHtcbiAgICByZXNwb25zZSA9IGF3YWl0IGZldGNoKGlucHV0LnVybCwge1xuICAgICAgYm9keTogaW5wdXQuYm9keSxcbiAgICAgIGhlYWRlcnM6IGlucHV0LmhlYWRlcnMsXG4gICAgICBtZXRob2Q6ICdQT1NUJyxcbiAgICAgIHNpZ25hbDogQWJvcnRTaWduYWwudGltZW91dChpbnB1dC50aW1lb3V0KVxuICAgIH0pXG4gIH0gY2F0Y2ggKGZldGNoRXJyb3IpIHtcbiAgICByZXR1cm4gcmV0cnlPclJldGhyb3coXG4gICAgICBmZXRjaEVycm9yIGluc3RhbmNlb2YgRXJyb3JcbiAgICAgICAgPyBmZXRjaEVycm9yXG4gICAgICAgIDogbmV3IEVycm9yKGBbbG9naXhseXNpYV0gJHtpbnB1dC5uYW1lfSB0cmFuc3BvcnQ6IHJlcXVlc3QgZmFpbGVkYCwge1xuICAgICAgICAgICAgY2F1c2U6IGZldGNoRXJyb3JcbiAgICAgICAgICB9KSxcbiAgICAgIHJlc29sdmVSZXRyeURlbGF5KHVuZGVmaW5lZCwgYXR0ZW1wdClcbiAgICApXG4gIH1cbiAgaWYgKHJlc3BvbnNlLm9rKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHJlc3BvbnNlLmJvZHk/LmNhbmNlbCgpXG4gICAgfSBjYXRjaCB7XG4gICAgICAvLyBOb3RoaW5nIHRvIHJlbGVhc2Ugd2hlbiB0aGUgYm9keSBpcyBhbHJlYWR5IGNvbnN1bWVkIG9yIGNsb3NlZC5cbiAgICB9XG4gICAgcmV0dXJuXG4gIH1cbiAgY29uc3QgZGV0YWlsID0gc2FuaXRpemVMb2dUZXh0KFxuICAgIChhd2FpdCByZXNwb25zZS50ZXh0KCkuY2F0Y2goKCkgPT4gJycpKS5zbGljZSgwLCBFUlJPUl9CT0RZX1BSRVZJRVdfTEVOR1RIKVxuICApXG4gIGNvbnN0IGh0dHBFcnJvciA9IG5ldyBFcnJvcihcbiAgICBgW2xvZ2l4bHlzaWFdICR7aW5wdXQubmFtZX0gdHJhbnNwb3J0OiBIVFRQICR7cmVzcG9uc2Uuc3RhdHVzfSR7XG4gICAgICBkZXRhaWwgPyBgIOKAlCAke2RldGFpbH1gIDogJydcbiAgICB9YFxuICApXG4gIGNvbnN0IHJldHJ5YWJsZSA9XG4gICAgcmVzcG9uc2Uuc3RhdHVzID09PSBIVFRQX1RPT19NQU5ZX1JFUVVFU1RTIHx8XG4gICAgcmVzcG9uc2Uuc3RhdHVzID49IEhUVFBfU0VSVkVSX0VSUk9SX01JTlxuICBpZiAoIXJldHJ5YWJsZSkge1xuICAgIHRocm93IGh0dHBFcnJvclxuICB9XG4gIHJldHVybiByZXRyeU9yUmV0aHJvdyhodHRwRXJyb3IsIHJlc29sdmVSZXRyeURlbGF5KHJlc3BvbnNlLCBhdHRlbXB0KSlcbn1cblxuLyoqXG4gKiBQT1NUcyBhIHBheWxvYWQsIHJldHJ5aW5nIG9uIG5ldHdvcmsgZXJyb3JzLCA0MjksIGFuZCA1eHggcmVzcG9uc2VzIHdpdGhcbiAqIGppdHRlcmVkIGxpbmVhciBiYWNrb2ZmLCBvciB0aGUgc2VydmVyJ3MgYFJldHJ5LUFmdGVyYCB3aGVuIGl0IHNlbmRzIG9uZS5cbiAqIE5vbi1yZXRyeWFibGUgSFRUUCBlcnJvcnMgKDR4eCBleGNlcHQgNDI5KSB0aHJvdyBpbW1lZGlhdGVseS5cbiAqL1xuZXhwb3J0IGNvbnN0IHBvc3RXaXRoUmV0cnkgPSAoaW5wdXQ6IFBvc3RXaXRoUmV0cnlJbnB1dCk6IFByb21pc2U8dm9pZD4gPT5cbiAgYXR0ZW1wdFBvc3QoaW5wdXQsIDApXG5cbmV4cG9ydCBpbnRlcmZhY2UgQmF0Y2hRdWV1ZSB7XG4gIGZsdXNoOiAoKSA9PiBQcm9taXNlPHZvaWQ+XG4gIHB1c2g6IChlbnRyeTogTG9nRW50cnkpID0+IFByb21pc2U8dm9pZD4gfCB1bmRlZmluZWRcbn1cblxuLyoqXG4gKiBSb3V0ZXMgYSBiYXRjaCBmYWlsdXJlIHRvIHRoZSBhZGFwdGVyJ3MgYG9uRXJyb3JgIGhvb2ssIG9yIOKAlCB3aGVuIG5vIGhvb2sgaXNcbiAqIGNvbmZpZ3VyZWQg4oCUIHRvIHN0ZGVyciBhdCBtb3N0IG9uY2UgcGVyIGludGVydmFsLCBzbyBhIGJhY2tlbmQgdGhhdCBmYWlscyBvblxuICogZXZlcnkgYmF0Y2ggY2Fubm90IGZsb29kIHRoZSBjb25zb2xlLlxuICovXG5jb25zdCBjcmVhdGVRdWV1ZVJlcG9ydGVyID0gKFxuICBuYW1lOiBzdHJpbmcsXG4gIG9uRXJyb3I/OiAoZXJyb3I6IHVua25vd24pID0+IHZvaWRcbik6ICgoZXJyb3I6IHVua25vd24pID0+IHZvaWQpID0+IHtcbiAgbGV0IGxhc3RSZXBvcnRlZEF0ID0gMFxuXG4gIHJldHVybiBlcnJvciA9PiB7XG4gICAgaWYgKG9uRXJyb3IpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIG9uRXJyb3IoZXJyb3IpXG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgLy8gU3dhbGxvdyBlcnJvcnMgdGhyb3duIGJ5IHRoZSBob29rIGl0c2VsZi5cbiAgICAgIH1cbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IG5vdyA9IERhdGUubm93KClcbiAgICBpZiAobm93IC0gbGFzdFJlcG9ydGVkQXQgPCBSRVBPUlRfSU5URVJWQUxfTVMpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBsYXN0UmVwb3J0ZWRBdCA9IG5vd1xuICAgIGNvbnNvbGUuZXJyb3IoYFtsb2dpeGx5c2lhXSAke25hbWV9IHRyYW5zcG9ydCBmYWlsZWQ6YCwgZXJyb3IpXG4gIH1cbn1cblxuLyoqXG4gKiBCdWZmZXJzIGVudHJpZXMgYW5kIHNlbmRzIHRoZW0gaW4gYmF0Y2hlczogaW1tZWRpYXRlbHkgb25jZSBgbWF4QmF0Y2hTaXplYFxuICogaXMgcmVhY2hlZCAodGhlIHJldHVybmVkIHByb21pc2UgcHJvcGFnYXRlcyBzZW5kIGVycm9ycyB0byB0aGUgY2FsbGVyKSwgb3JcbiAqIGFmdGVyIGBmbHVzaEludGVydmFsTXNgIHZpYSBhbiB1bnJlZidlZCB0aW1lciAoZXJyb3JzIGdvIHRvIGBvbkVycm9yYCBzaW5jZVxuICogbm8gY2FsbGVyIGlzIGF3YWl0aW5nKS5cbiAqXG4gKiBPbmx5IG9uZSBzZW5kIHJ1bnMgYXQgYSB0aW1lLCBzbyBiYXRjaGVzIHJlYWNoIHRoZSBiYWNrZW5kIGluIHRoZSBvcmRlciB0aGV5XG4gKiB3ZXJlIGJ1ZmZlcmVkLCBhbmQgYGZsdXNoKClgIHJlc29sdmVzIG9uY2UgZXZlcnkgYmF0Y2ggcXVldWVkIGJlZm9yZSBpdCBoYXNcbiAqIHNldHRsZWQuIEJhdGNoZXMgcXVldWVkIGJleW9uZCBgbWF4UGVuZGluZ0JhdGNoZXNgIGFyZSBkcm9wcGVkIGFuZCByZXBvcnRlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZUJhdGNoUXVldWUgPSAoaW5wdXQ6IHtcbiAgZmx1c2hJbnRlcnZhbE1zOiBudW1iZXJcbiAgbWF4QmF0Y2hTaXplOiBudW1iZXJcbiAgbWF4UGVuZGluZ0JhdGNoZXM/OiBudW1iZXJcbiAgbmFtZTogc3RyaW5nXG4gIG9uRXJyb3I/OiAoZXJyb3I6IHVua25vd24pID0+IHZvaWRcbiAgc2VuZDogKGVudHJpZXM6IExvZ0VudHJ5W10pID0+IFByb21pc2U8dm9pZD5cbn0pOiBCYXRjaFF1ZXVlID0+IHtcbiAgbGV0IGJ1ZmZlcjogTG9nRW50cnlbXSA9IFtdXG4gIGxldCB0aW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWRcbiAgbGV0IHRhaWw6IFByb21pc2U8dm9pZD4gPSBQcm9taXNlLnJlc29sdmUoKVxuICBsZXQgcGVuZGluZyA9IDBcblxuICBjb25zdCByZXBvcnQgPSBjcmVhdGVRdWV1ZVJlcG9ydGVyKGlucHV0Lm5hbWUsIGlucHV0Lm9uRXJyb3IpXG4gIGNvbnN0IG1heFBlbmRpbmdCYXRjaGVzID1cbiAgICBpbnB1dC5tYXhQZW5kaW5nQmF0Y2hlcyA/PyBERUZBVUxUX01BWF9QRU5ESU5HX0JBVENIRVNcblxuICBjb25zdCBlbnF1ZXVlU2VuZCA9IChlbnRyaWVzOiBMb2dFbnRyeVtdKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gICAgaWYgKHBlbmRpbmcgPj0gbWF4UGVuZGluZ0JhdGNoZXMpIHtcbiAgICAgIHJlcG9ydChcbiAgICAgICAgbmV3IEVycm9yKFxuICAgICAgICAgIGBbbG9naXhseXNpYV0gJHtpbnB1dC5uYW1lfSB0cmFuc3BvcnQ6ICR7cGVuZGluZ30gYmF0Y2hlcyBwZW5kaW5nOyBiYXRjaCBvZiAke2VudHJpZXMubGVuZ3RofSBkcm9wcGVkYFxuICAgICAgICApXG4gICAgICApXG4gICAgICByZXR1cm4gdGFpbFxuICAgIH1cbiAgICBwZW5kaW5nICs9IDFcbiAgICBjb25zdCBzZW5kID0gdGFpbC50aGVuKCgpID0+IGlucHV0LnNlbmQoZW50cmllcykpXG4gICAgLy8gU3dhbGxvdyB0aGUgZmFpbHVyZSBvbiB0aGUgY2hhaW4gaXRzZWxmIHNvIG9uZSBiYWQgYmF0Y2ggY2Fubm90IHBvaXNvblxuICAgIC8vIHRoZSBiYXRjaGVzIGFmdGVyIGl0OyB0aGUgY2FsbGVyIG9mIGVucXVldWVTZW5kIHN0aWxsIHNlZXMgdGhlIHJlamVjdGlvbi5cbiAgICB0YWlsID0gc2VuZFxuICAgICAgLmNhdGNoKCgpID0+IHVuZGVmaW5lZClcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgcGVuZGluZyAtPSAxXG4gICAgICB9KVxuICAgIHJldHVybiBzZW5kXG4gIH1cblxuICBjb25zdCBmbHVzaCA9ICgpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICBpZiAodGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lcilcbiAgICAgIHRpbWVyID0gdW5kZWZpbmVkXG4gICAgfVxuICAgIGlmIChidWZmZXIubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdGFpbFxuICAgIH1cbiAgICBjb25zdCBlbnRyaWVzID0gYnVmZmVyXG4gICAgYnVmZmVyID0gW11cbiAgICByZXR1cm4gZW5xdWV1ZVNlbmQoZW50cmllcykudGhlbigoKSA9PiB0YWlsKVxuICB9XG5cbiAgY29uc3QgZmx1c2hGcm9tVGltZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgZmx1c2goKS5jYXRjaChyZXBvcnQpXG4gIH1cblxuICBjb25zdCBwdXNoID0gKGVudHJ5OiBMb2dFbnRyeSk6IFByb21pc2U8dm9pZD4gfCB1bmRlZmluZWQgPT4ge1xuICAgIGJ1ZmZlci5wdXNoKGVudHJ5KVxuICAgIGlmIChidWZmZXIubGVuZ3RoID49IGlucHV0Lm1heEJhdGNoU2l6ZSkge1xuICAgICAgcmV0dXJuIGZsdXNoKClcbiAgICB9XG4gICAgaWYgKCF0aW1lcikge1xuICAgICAgdGltZXIgPSBzZXRUaW1lb3V0KGZsdXNoRnJvbVRpbWVyLCBpbnB1dC5mbHVzaEludGVydmFsTXMpXG4gICAgICB0aW1lci51bnJlZj8uKClcbiAgICB9XG4gIH1cblxuICByZXR1cm4geyBmbHVzaCwgcHVzaCB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHR0cFRyYW5zcG9ydElucHV0IHtcbiAgLyoqIEJ1aWxkcyB0aGUgcmVxdWVzdCBib2R5IGZvciBhIGZsdXNoZWQgYmF0Y2guICovXG4gIGJvZHk6IChlbnRyaWVzOiBMb2dFbnRyeVtdKSA9PiBzdHJpbmdcbiAgaGVhZGVyczogUmVjb3JkPHN0cmluZywgc3RyaW5nPlxuICAvKiogQWRhcHRlciBuYW1lIHVzZWQgaW4gZXJyb3IgbWVzc2FnZXMsIGUuZy4gJ0F4aW9tJy4gKi9cbiAgbmFtZTogc3RyaW5nXG4gIG9wdGlvbnM6IEJhdGNoVHJhbnNwb3J0T3B0aW9uc1xuICB1cmw6IHN0cmluZ1xufVxuXG4vKipcbiAqIFRoZSBjb21tb24gYWRhcHRlciBzaGFwZTogYSBiYXRjaCBxdWV1ZSB3aG9zZSBmbHVzaGVzIFBPU1QgdG8gYSBmaXhlZCBVUkxcbiAqIHdpdGggcmV0cnksIGV4cG9zZWQgYXMgYW4ge0BsaW5rIEFkYXB0ZXJUcmFuc3BvcnR9LlxuICovXG5leHBvcnQgY29uc3QgY3JlYXRlSHR0cFRyYW5zcG9ydCA9IChcbiAgaW5wdXQ6IEh0dHBUcmFuc3BvcnRJbnB1dFxuKTogQWRhcHRlclRyYW5zcG9ydCA9PiB7XG4gIGNvbnN0IHJldHJpZXMgPSBpbnB1dC5vcHRpb25zLnJldHJpZXMgPz8gREVGQVVMVF9SRVRSSUVTXG4gIGNvbnN0IHRpbWVvdXQgPSBpbnB1dC5vcHRpb25zLnRpbWVvdXQgPz8gREVGQVVMVF9USU1FT1VUX01TXG5cbiAgY29uc3QgcXVldWUgPSBjcmVhdGVCYXRjaFF1ZXVlKHtcbiAgICBmbHVzaEludGVydmFsTXM6IGlucHV0Lm9wdGlvbnMuZmx1c2hJbnRlcnZhbE1zID8/IERFRkFVTFRfRkxVU0hfSU5URVJWQUxfTVMsXG4gICAgbWF4QmF0Y2hTaXplOiBpbnB1dC5vcHRpb25zLm1heEJhdGNoU2l6ZSA/PyBERUZBVUxUX01BWF9CQVRDSF9TSVpFLFxuICAgIG1heFBlbmRpbmdCYXRjaGVzOiBpbnB1dC5vcHRpb25zLm1heFBlbmRpbmdCYXRjaGVzLFxuICAgIG5hbWU6IGlucHV0Lm5hbWUsXG4gICAgb25FcnJvcjogaW5wdXQub3B0aW9ucy5vbkVycm9yLFxuICAgIHNlbmQ6IGVudHJpZXMgPT5cbiAgICAgIHBvc3RXaXRoUmV0cnkoe1xuICAgICAgICBib2R5OiBpbnB1dC5ib2R5KGVudHJpZXMpLFxuICAgICAgICBoZWFkZXJzOiBpbnB1dC5oZWFkZXJzLFxuICAgICAgICBuYW1lOiBpbnB1dC5uYW1lLFxuICAgICAgICByZXRyaWVzLFxuICAgICAgICB0aW1lb3V0LFxuICAgICAgICB1cmw6IGlucHV0LnVybFxuICAgICAgfSlcbiAgfSlcblxuICByZXR1cm4ge1xuICAgIGZsdXNoOiBxdWV1ZS5mbHVzaCxcbiAgICBsb2c6IChsZXZlbCwgbWVzc2FnZSwgbWV0YSkgPT5cbiAgICAgIHF1ZXVlLnB1c2goeyBsZXZlbCwgbWVzc2FnZSwgbWV0YTogbWV0YSA/PyB7fSwgdGltZXN0YW1wOiBuZXcgRGF0ZSgpIH0pXG4gIH1cbn1cblxuZXhwb3J0IHR5cGUgRmxhdFZhbHVlID0gYm9vbGVhbiB8IG51bWJlciB8IHN0cmluZ1xuXG5jb25zdCBpc1BsYWluT2JqZWN0ID0gKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPT5cbiAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxuICB2YWx1ZSAhPT0gbnVsbCAmJlxuICAhQXJyYXkuaXNBcnJheSh2YWx1ZSkgJiZcbiAgISh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpXG5cbmNvbnN0IGZsYXR0ZW5JbnRvID0gKFxuICBvdXQ6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4sXG4gIHZhbHVlOiB1bmtub3duLFxuICBwcmVmaXg6IHN0cmluZyxcbiAgZGVwdGg6IG51bWJlclxuKTogdm9pZCA9PiB7XG4gIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuXG4gIH1cbiAgaWYgKFxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgfHxcbiAgICB0eXBlb2YgdmFsdWUgPT09ICdudW1iZXInIHx8XG4gICAgdHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbidcbiAgKSB7XG4gICAgb3V0W3ByZWZpeF0gPSB2YWx1ZVxuICAgIHJldHVyblxuICB9XG4gIGlmICh2YWx1ZSBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICBvdXRbcHJlZml4XSA9IHZhbHVlLnRvSVNPU3RyaW5nKClcbiAgICByZXR1cm5cbiAgfVxuICBpZiAoaXNQbGFpbk9iamVjdCh2YWx1ZSkgJiYgZGVwdGggPCBGTEFUVEVOX01BWF9ERVBUSCkge1xuICAgIGZvciAoY29uc3QgW2tleSwgY2hpbGRdIG9mIE9iamVjdC5lbnRyaWVzKHZhbHVlKSkge1xuICAgICAgZmxhdHRlbkludG8ob3V0LCBjaGlsZCwgcHJlZml4ID8gYCR7cHJlZml4fS4ke2tleX1gIDoga2V5LCBkZXB0aCArIDEpXG4gICAgfVxuICAgIHJldHVyblxuICB9XG4gIHRyeSB7XG4gICAgb3V0W3ByZWZpeF0gPSBKU09OLnN0cmluZ2lmeSh2YWx1ZSlcbiAgfSBjYXRjaCB7XG4gICAgb3V0W3ByZWZpeF0gPSBTdHJpbmcodmFsdWUpXG4gIH1cbn1cblxuLyoqXG4gKiBGbGF0dGVucyBhIHRyYW5zcG9ydCBtZXRhIG9iamVjdCBpbnRvIGRvdC1ub3RhdGlvbiBzY2FsYXIga2V5c1xuICogKGByZXF1ZXN0Lm1ldGhvZGAsIGBjb250ZXh0LnJlcXVlc3RJZGAsIOKApikuIFZhbHVlcyBuZXN0ZWQgZGVlcGVyIHRoYW4gdGhyZWVcbiAqIGxldmVscyDigJQgYW5kIGFycmF5cyDigJQgYXJlIEpTT04tc3RyaW5naWZpZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBmbGF0dGVuTWV0YSA9IChcbiAgbWV0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbik6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4gPT4ge1xuICBjb25zdCBvdXQ6IFJlY29yZDxzdHJpbmcsIEZsYXRWYWx1ZT4gPSB7fVxuICBmbGF0dGVuSW50byhvdXQsIG1ldGEsICcnLCAwKVxuICByZXR1cm4gb3V0XG59XG5cbi8qKiBSZWFkcyBhIGRvdC1ub3RhdGlvbiBwYXRoIChlLmcuIGBjb250ZXh0LnVzZXJJZGApIGZyb20gYSBtZXRhIG9iamVjdC4gKi9cbmV4cG9ydCBjb25zdCBnZXRQYXRoID0gKFxuICBtZXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgcGF0aDogc3RyaW5nXG4pOiB1bmtub3duID0+IHtcbiAgbGV0IGN1cnJlbnQ6IHVua25vd24gPSBtZXRhXG4gIGZvciAoY29uc3Qgc2VnbWVudCBvZiBwYXRoLnNwbGl0KCcuJykpIHtcbiAgICBpZiAoIWlzUGxhaW5PYmplY3QoY3VycmVudCkpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjdXJyZW50ID0gY3VycmVudFtzZWdtZW50XVxuICB9XG4gIHJldHVybiBjdXJyZW50XG59XG5cbi8qKlxuICogRmFsbGJhY2sgbG9nIGJvZHkgZm9yIGFjY2VzcyBsb2dzLCB3aG9zZSBgbWVzc2FnZWAgaXMgZW1wdHk6XG4gKiBgR0VUIC9wYXRoYCBkZXJpdmVkIGZyb20gdGhlIHJlcXVlc3QgbWV0YS5cbiAqL1xuZXhwb3J0IGNvbnN0IGRlZmF1bHRCb2R5ID0gKGVudHJ5OiBMb2dFbnRyeSk6IHN0cmluZyA9PiB7XG4gIGlmIChlbnRyeS5tZXNzYWdlKSB7XG4gICAgcmV0dXJuIGVudHJ5Lm1lc3NhZ2VcbiAgfVxuICBjb25zdCB7IHJlcXVlc3QgfSA9IGVudHJ5Lm1ldGFcbiAgaWYgKGlzUGxhaW5PYmplY3QocmVxdWVzdCkpIHtcbiAgICBjb25zdCBtZXRob2QgPSB0eXBlb2YgcmVxdWVzdC5tZXRob2QgPT09ICdzdHJpbmcnID8gcmVxdWVzdC5tZXRob2QgOiAnJ1xuICAgIGNvbnN0IHVybCA9IHR5cGVvZiByZXF1ZXN0LnVybCA9PT0gJ3N0cmluZycgPyByZXF1ZXN0LnVybCA6ICcnXG4gICAgbGV0IHBhdGggPSB1cmxcbiAgICB0cnkge1xuICAgICAgcGF0aCA9IG5ldyBVUkwodXJsKS5wYXRobmFtZVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gS2VlcCB0aGUgcmF3IFVSTCB3aGVuIGl0IGRvZXMgbm90IHBhcnNlLlxuICAgIH1cbiAgICBjb25zdCBib2R5ID0gYCR7bWV0aG9kfSAke3BhdGh9YC50cmltKClcbiAgICBpZiAoYm9keSkge1xuICAgICAgcmV0dXJuIGJvZHlcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGVudHJ5LmxldmVsXG59XG4iCiAgXSwKICAibWFwcGluZ3MiOiAiNkNBSU8sSUFBTSxFQUEwQyxDQUNyRCxNQUFPLEVBQ1AsTUFBTyxHQUNQLEtBQU0sRUFDTixRQUFTLEVBQ1gsRUFFTSxFQUE0QixLQUM1QixFQUF5QixHQUN6QixFQUE4QixHQUM5QixFQUFrQixFQUNsQixFQUFxQixLQUNyQixFQUFxQixLQUNyQixFQUFzQixJQUN0QixFQUFtQixJQUNuQixFQUFxQixNQUNyQixFQUFvQixLQUNwQixFQUF5QixJQUN6QixFQUF3QixJQUN4QixFQUE0QixJQUM1QixFQUFvQixFQXFEYixFQUF1QixDQUFDLElBQXdCLENBQzNELElBQUksRUFBTSxFQUFJLE9BQ2QsTUFBTyxFQUFNLEdBQUssRUFBSSxFQUFNLEtBQU8sSUFDakMsR0FBTyxFQUVULE9BQU8sRUFBSSxNQUFNLEVBQUcsQ0FBRyxHQUlaLEVBQVksQ0FBQyxJQUFxQyxDQUM3RCxJQUFNLEVBQVEsUUFBUSxJQUFJLEdBQzFCLE9BQU8sR0FBUyxFQUFNLE9BQVMsRUFBSSxFQUFRLFFBSWhDLEVBQWlCLENBQUMsRUFBaUIsSUFDMUMsTUFBTSxnQkFBZ0IsZ0JBQXNCLEdBQVEsRUFFcEQsRUFBa0IsU0FHWCxFQUFjLENBQUMsSUFDMUIsT0FBTyxPQUFPLEVBQUssUUFBUSxDQUFDLEVBQUksQ0FBZSxFQUUzQyxFQUFRLENBQUMsSUFDYixJQUFJLFFBQVEsS0FBVyxDQUNyQixXQUFXLEVBQVMsQ0FBRSxFQUN2QixFQVlHLEVBQW9CLENBQUMsSUFBc0MsQ0FDL0QsSUFBTSxFQUFVLE9BQU8sU0FBUyxFQUFPLEVBQUUsRUFDekMsR0FBSSxPQUFPLFNBQVMsQ0FBTyxHQUFLLEdBQVcsRUFDekMsT0FBTyxFQUFVLEVBRW5CLElBQU0sRUFBSyxLQUFLLE1BQU0sQ0FBSyxFQUMzQixPQUFPLE9BQU8sTUFBTSxDQUFFLEVBQUksT0FBWSxFQUFLLEtBQUssSUFBSSxHQVF6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UUFBWSxFQUFLLEtBQVUsT0FBTyxRQUFRLENBQUssRUFDN0MsRUFBWSxFQUFLLEVBQU8sRUFBUyxHQUFHLEtBQVUsSUFBUSxFQUFLLEVBQVEsQ0FBQyxFQUV0RSxPQUVGLEdBQUksQ0FDRixFQUFJLEdBQVUsS0FBSyxVQUFVLENBQUssRUFDbEMsS0FBTSxDQUNOLEVBQUksR0FBVSxPQUFPLENBQUssSUFTakIsRUFBYyxDQUN6QixJQUM4QixDQUM5QixJQUFNLEVBQWlDLENBQUMsRUFFeEMsT0FEQSxFQUFZLEVBQUssRUFBTSxHQUFJLENBQUMsRUFDckIsR0FJSSxFQUFVLENBQ3JCLEVBQ0EsSUFDWSxDQUNaLElBQUksRUFBbUIsRUFDdkIsUUFBVyxLQUFXLEVBQUssTUFBTSxHQUFHLEVBQUcsQ0FDckMsR0FBSSxDQUFDLEVBQWMsQ0FBTyxFQUN4QixPQUVGLEVBQVUsRUFBUSxHQUVwQixPQUFPLEdBT0ksRUFBYyxDQUFDLElBQTRCLENBQ3RELEdBQUksRUFBTSxRQUNSLE9BQU8sRUFBTSxRQUVmLElBQVEsV0FBWSxFQUFNLEtBQzFCLEdBQUksRUFBYyxDQUFPLEVBQUcsQ0FDMUIsSUFBTSxFQUFTLE9BQU8sRUFBUSxTQUFXLFNBQVcsRUFBUSxPQUFTLEdBQy9ELEVBQU0sT0FBTyxFQUFRLE1BQVEsU0FBVyxFQUFRLElBQU0sR0FDeEQsRUFBTyxFQUNYLEdBQUksQ0FDRixFQUFPLElBQUksSUFBSSxDQUFHLEVBQUUsU0FDcEIsS0FBTSxFQUdSLElBQU0sRUFBTyxHQUFHLEtBQVUsSUFBTyxLQUFLLEVBQ3RDLEdBQUksRUFDRixPQUFPLEVBR1gsT0FBTyxFQUFNIiwKICAiZGVidWdJZCI6ICI1Mzk4NjQwRjg3NjNGMjBFNjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==